@socketsecurity/lib 3.0.1 → 3.0.3
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/CHANGELOG.md +24 -0
- package/dist/abort.js +60 -1
- package/dist/abort.js.map +2 -2
- package/dist/agent.js +289 -1
- package/dist/agent.js.map +2 -2
- package/dist/ansi.js +60 -1
- package/dist/ansi.js.map +2 -2
- package/dist/argv/flags.js +282 -1
- package/dist/argv/flags.js.map +2 -2
- package/dist/argv/parse.js +171 -1
- package/dist/argv/parse.js.map +2 -2
- package/dist/arrays.js +85 -1
- package/dist/arrays.js.map +2 -2
- package/dist/bin.js +419 -5
- package/dist/bin.js.map +2 -2
- package/dist/cacache.js +139 -1
- package/dist/cacache.js.map +2 -2
- package/dist/cache-with-ttl.js +223 -1
- package/dist/cache-with-ttl.js.map +2 -2
- package/dist/constants/agents.js +126 -1
- package/dist/constants/agents.js.map +2 -2
- package/dist/constants/core.d.ts +1 -1
- package/dist/constants/core.js +57 -2
- package/dist/constants/core.js.map +3 -3
- package/dist/constants/encoding.js +48 -1
- package/dist/constants/encoding.js.map +2 -2
- package/dist/constants/github.js +30 -1
- package/dist/constants/github.js.map +2 -2
- package/dist/constants/licenses.js +66 -1
- package/dist/constants/licenses.js.map +2 -2
- package/dist/constants/node.js +185 -1
- package/dist/constants/node.js.map +2 -2
- package/dist/constants/packages.js +128 -1
- package/dist/constants/packages.js.map +2 -2
- package/dist/constants/paths.js +150 -1
- package/dist/constants/paths.js.map +2 -2
- package/dist/constants/platform.js +41 -1
- package/dist/constants/platform.js.map +2 -2
- package/dist/constants/process.js +52 -1
- package/dist/constants/process.js.map +2 -2
- package/dist/constants/socket.js +102 -1
- package/dist/constants/socket.js.map +2 -2
- package/dist/constants/testing.js +36 -1
- package/dist/constants/testing.js.map +2 -2
- package/dist/constants/time.js +39 -1
- package/dist/constants/time.js.map +2 -2
- package/dist/constants/typescript.js +54 -1
- package/dist/constants/typescript.js.map +2 -2
- package/dist/cover/code.js +135 -1
- package/dist/cover/code.js.map +2 -2
- package/dist/cover/formatters.js +101 -11
- package/dist/cover/formatters.js.map +2 -2
- package/dist/cover/type.js +63 -1
- package/dist/cover/type.js.map +2 -2
- package/dist/cover/types.js +15 -1
- package/dist/cover/types.js.map +2 -2
- package/dist/debug.js +337 -2
- package/dist/debug.js.map +2 -2
- package/dist/dlx-binary.js +408 -7
- package/dist/dlx-binary.js.map +2 -2
- package/dist/dlx-package.js +278 -7
- package/dist/dlx-package.js.map +2 -2
- package/dist/dlx.js +214 -7
- package/dist/dlx.js.map +3 -3
- package/dist/effects/pulse-frames.js +64 -1
- package/dist/effects/pulse-frames.js.map +2 -2
- package/dist/effects/text-shimmer.js +174 -1
- package/dist/effects/text-shimmer.js.map +2 -2
- package/dist/effects/types.js +15 -1
- package/dist/effects/types.js.map +2 -2
- package/dist/effects/ultra.js +61 -1
- package/dist/effects/ultra.js.map +2 -2
- package/dist/env/ci.js +31 -1
- package/dist/env/ci.js.map +2 -2
- package/dist/env/debug.js +30 -1
- package/dist/env/debug.js.map +2 -2
- package/dist/env/github.js +65 -1
- package/dist/env/github.js.map +2 -2
- package/dist/env/helpers.js +47 -1
- package/dist/env/helpers.js.map +2 -2
- package/dist/env/home.js +30 -1
- package/dist/env/home.js.map +2 -2
- package/dist/env/locale.js +40 -1
- package/dist/env/locale.js.map +2 -2
- package/dist/env/node-auth-token.js +30 -1
- package/dist/env/node-auth-token.js.map +2 -2
- package/dist/env/node-env.js +30 -1
- package/dist/env/node-env.js.map +2 -2
- package/dist/env/npm.js +50 -1
- package/dist/env/npm.js.map +2 -2
- package/dist/env/package-manager.js +73 -1
- package/dist/env/package-manager.js.map +2 -2
- package/dist/env/path.js +30 -1
- package/dist/env/path.js.map +2 -2
- package/dist/env/pre-commit.js +31 -1
- package/dist/env/pre-commit.js.map +2 -2
- package/dist/env/rewire.js +72 -1
- package/dist/env/rewire.js.map +2 -2
- package/dist/env/shell.js +30 -1
- package/dist/env/shell.js.map +2 -2
- package/dist/env/socket-cli-shadow.js +51 -1
- package/dist/env/socket-cli-shadow.js.map +2 -2
- package/dist/env/socket-cli.js +86 -1
- package/dist/env/socket-cli.js.map +2 -2
- package/dist/env/socket.js +101 -1
- package/dist/env/socket.js.map +2 -2
- package/dist/env/temp-dir.js +40 -1
- package/dist/env/temp-dir.js.map +2 -2
- package/dist/env/term.js +30 -1
- package/dist/env/term.js.map +2 -2
- package/dist/env/test.js +43 -1
- package/dist/env/test.js.map +2 -2
- package/dist/env/windows.js +45 -1
- package/dist/env/windows.js.map +2 -2
- package/dist/env/xdg.js +40 -1
- package/dist/env/xdg.js.map +2 -2
- package/dist/env.js +170 -1
- package/dist/env.js.map +2 -2
- package/dist/fs.js +670 -7
- package/dist/fs.js.map +2 -2
- package/dist/functions.js +68 -1
- package/dist/functions.js.map +2 -2
- package/dist/git.js +329 -2
- package/dist/git.js.map +2 -2
- package/dist/github.js +202 -1
- package/dist/github.js.map +2 -2
- package/dist/globs.js +149 -1
- package/dist/globs.js.map +3 -3
- package/dist/http-request.js +335 -3
- package/dist/http-request.js.map +2 -2
- package/dist/index.js +69 -1
- package/dist/index.js.map +2 -2
- package/dist/ipc.js +244 -1
- package/dist/ipc.js.map +2 -2
- package/dist/json.js +73 -1
- package/dist/json.js.map +2 -2
- package/dist/links/index.js +60 -1
- package/dist/links/index.js.map +2 -2
- package/dist/logger.js +1384 -1
- package/dist/logger.js.map +2 -2
- package/dist/maintained-node-versions.js +35 -1
- package/dist/maintained-node-versions.js.map +2 -2
- package/dist/memoization.js +210 -1
- package/dist/memoization.js.map +2 -2
- package/dist/objects.js +311 -1
- package/dist/objects.js.map +2 -2
- package/dist/packages/editable.js +356 -9
- package/dist/packages/editable.js.map +2 -2
- package/dist/packages/exports.js +162 -1
- package/dist/packages/exports.js.map +2 -2
- package/dist/packages/isolation.js +187 -1
- package/dist/packages/isolation.js.map +2 -2
- package/dist/packages/licenses.js +214 -1
- package/dist/packages/licenses.js.map +2 -2
- package/dist/packages/manifest.js +190 -1
- package/dist/packages/manifest.js.map +2 -2
- package/dist/packages/normalize.js +132 -1
- package/dist/packages/normalize.js.map +2 -2
- package/dist/packages/operations.js +320 -1
- package/dist/packages/operations.js.map +2 -2
- package/dist/packages/paths.js +53 -1
- package/dist/packages/paths.js.map +2 -2
- package/dist/packages/provenance.js +178 -1
- package/dist/packages/provenance.js.map +2 -2
- package/dist/packages/specs.js +83 -1
- package/dist/packages/specs.js.map +2 -2
- package/dist/packages/validation.js +51 -1
- package/dist/packages/validation.js.map +2 -2
- package/dist/packages.js +129 -1
- package/dist/packages.js.map +2 -2
- package/dist/path.js +446 -1
- package/dist/path.js.map +2 -2
- package/dist/paths/rewire.js +79 -1
- package/dist/paths/rewire.js.map +2 -2
- package/dist/paths.js +190 -1
- package/dist/paths.js.map +2 -2
- package/dist/performance.js +216 -15
- package/dist/performance.js.map +2 -2
- package/dist/process-lock.js +287 -8
- package/dist/process-lock.js.map +2 -2
- package/dist/promise-queue.js +109 -1
- package/dist/promise-queue.js.map +2 -2
- package/dist/promises.js +267 -1
- package/dist/promises.js.map +2 -2
- package/dist/prompts/index.js +45 -1
- package/dist/prompts/index.js.map +2 -2
- package/dist/prompts.js +58 -1
- package/dist/prompts.js.map +2 -2
- package/dist/regexps.js +30 -1
- package/dist/regexps.js.map +2 -2
- package/dist/sea.js +44 -1
- package/dist/sea.js.map +2 -2
- package/dist/shadow.js +58 -1
- package/dist/shadow.js.map +2 -2
- package/dist/signal-exit.js +248 -1
- package/dist/signal-exit.js.map +3 -3
- package/dist/sorts.js +94 -1
- package/dist/sorts.js.map +3 -3
- package/dist/spawn.js +200 -1
- package/dist/spawn.js.map +2 -2
- package/dist/spinner.js +961 -1
- package/dist/spinner.js.map +2 -2
- package/dist/ssri.js +71 -1
- package/dist/ssri.js.map +2 -2
- package/dist/stdio/clear.js +82 -1
- package/dist/stdio/clear.js.map +2 -2
- package/dist/stdio/divider.js +89 -3
- package/dist/stdio/divider.js.map +2 -2
- package/dist/stdio/footer.js +94 -2
- package/dist/stdio/footer.js.map +2 -2
- package/dist/stdio/header.js +100 -2
- package/dist/stdio/header.js.map +2 -2
- package/dist/stdio/mask.js +207 -5
- package/dist/stdio/mask.js.map +2 -2
- package/dist/stdio/progress.js +209 -2
- package/dist/stdio/progress.js.map +2 -2
- package/dist/stdio/prompts.js +88 -1
- package/dist/stdio/prompts.js.map +2 -2
- package/dist/stdio/stderr.js +89 -2
- package/dist/stdio/stderr.js.map +2 -2
- package/dist/stdio/stdout.js +103 -2
- package/dist/stdio/stdout.js.map +2 -2
- package/dist/streams.js +78 -1
- package/dist/streams.js.map +2 -2
- package/dist/strings.js +251 -3
- package/dist/strings.js.map +2 -2
- package/dist/suppress-warnings.js +98 -1
- package/dist/suppress-warnings.js.map +2 -2
- package/dist/tables.js +128 -3
- package/dist/tables.js.map +2 -2
- package/dist/temporary-executor.js +53 -1
- package/dist/temporary-executor.js.map +2 -2
- package/dist/themes/context.js +71 -1
- package/dist/themes/context.js.map +2 -2
- package/dist/themes/index.js +57 -1
- package/dist/themes/index.js.map +2 -2
- package/dist/themes/themes.js +195 -1
- package/dist/themes/themes.js.map +2 -2
- package/dist/themes/types.js +15 -1
- package/dist/themes/types.js.map +2 -2
- package/dist/themes/utils.js +116 -1
- package/dist/themes/utils.js.map +2 -2
- package/dist/types.js +59 -1
- package/dist/types.js.map +2 -2
- package/dist/url.js +142 -1
- package/dist/url.js.map +2 -2
- package/dist/utils/get-ipc.js +58 -1
- package/dist/utils/get-ipc.js.map +2 -2
- package/dist/validation/json-parser.js +127 -1
- package/dist/validation/json-parser.js.map +2 -2
- package/dist/validation/types.js +15 -1
- package/dist/validation/types.js.map +2 -2
- package/dist/versions.js +154 -1
- package/dist/versions.js.map +2 -2
- package/dist/words.js +50 -1
- package/dist/words.js.map +2 -2
- package/dist/zod.js +27 -1
- package/dist/zod.js.map +2 -2
- package/package.json +1 -1
package/dist/argv/flags.js
CHANGED
|
@@ -1,3 +1,284 @@
|
|
|
1
1
|
/* Socket Lib - Built with esbuild */
|
|
2
|
-
var
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var flags_exports = {};
|
|
20
|
+
__export(flags_exports, {
|
|
21
|
+
COMMON_FLAGS: () => COMMON_FLAGS,
|
|
22
|
+
getLogLevel: () => getLogLevel,
|
|
23
|
+
isAll: () => isAll,
|
|
24
|
+
isChanged: () => isChanged,
|
|
25
|
+
isCoverage: () => isCoverage,
|
|
26
|
+
isDebug: () => isDebug,
|
|
27
|
+
isDryRun: () => isDryRun,
|
|
28
|
+
isFix: () => isFix,
|
|
29
|
+
isForce: () => isForce,
|
|
30
|
+
isHelp: () => isHelp,
|
|
31
|
+
isJson: () => isJson,
|
|
32
|
+
isQuiet: () => isQuiet,
|
|
33
|
+
isStaged: () => isStaged,
|
|
34
|
+
isUpdate: () => isUpdate,
|
|
35
|
+
isVerbose: () => isVerbose,
|
|
36
|
+
isWatch: () => isWatch
|
|
37
|
+
});
|
|
38
|
+
module.exports = __toCommonJS(flags_exports);
|
|
39
|
+
const processArg = [...process.argv];
|
|
40
|
+
function getLogLevel(input) {
|
|
41
|
+
if (isQuiet(input)) {
|
|
42
|
+
return "silent";
|
|
43
|
+
}
|
|
44
|
+
if (isDebug(input)) {
|
|
45
|
+
return "debug";
|
|
46
|
+
}
|
|
47
|
+
if (isVerbose(input)) {
|
|
48
|
+
return "verbose";
|
|
49
|
+
}
|
|
50
|
+
return "info";
|
|
51
|
+
}
|
|
52
|
+
function isAll(input) {
|
|
53
|
+
if (!input) {
|
|
54
|
+
return processArg.includes("--all");
|
|
55
|
+
}
|
|
56
|
+
if (Array.isArray(input)) {
|
|
57
|
+
return input.includes("--all");
|
|
58
|
+
}
|
|
59
|
+
return !!input.all;
|
|
60
|
+
}
|
|
61
|
+
function isChanged(input) {
|
|
62
|
+
if (!input) {
|
|
63
|
+
return processArg.includes("--changed");
|
|
64
|
+
}
|
|
65
|
+
if (Array.isArray(input)) {
|
|
66
|
+
return input.includes("--changed");
|
|
67
|
+
}
|
|
68
|
+
return !!input.changed;
|
|
69
|
+
}
|
|
70
|
+
function isCoverage(input) {
|
|
71
|
+
if (!input) {
|
|
72
|
+
return processArg.includes("--coverage") || processArg.includes("--cover");
|
|
73
|
+
}
|
|
74
|
+
if (Array.isArray(input)) {
|
|
75
|
+
return input.includes("--coverage") || input.includes("--cover");
|
|
76
|
+
}
|
|
77
|
+
return !!(input.coverage || input.cover);
|
|
78
|
+
}
|
|
79
|
+
function isDebug(input) {
|
|
80
|
+
if (!input) {
|
|
81
|
+
return processArg.includes("--debug");
|
|
82
|
+
}
|
|
83
|
+
if (Array.isArray(input)) {
|
|
84
|
+
return input.includes("--debug");
|
|
85
|
+
}
|
|
86
|
+
return !!input.debug;
|
|
87
|
+
}
|
|
88
|
+
function isDryRun(input) {
|
|
89
|
+
if (!input) {
|
|
90
|
+
return processArg.includes("--dry-run");
|
|
91
|
+
}
|
|
92
|
+
if (Array.isArray(input)) {
|
|
93
|
+
return input.includes("--dry-run");
|
|
94
|
+
}
|
|
95
|
+
return !!input["dry-run"];
|
|
96
|
+
}
|
|
97
|
+
function isFix(input) {
|
|
98
|
+
if (!input) {
|
|
99
|
+
return processArg.includes("--fix");
|
|
100
|
+
}
|
|
101
|
+
if (Array.isArray(input)) {
|
|
102
|
+
return input.includes("--fix");
|
|
103
|
+
}
|
|
104
|
+
return !!input.fix;
|
|
105
|
+
}
|
|
106
|
+
function isForce(input) {
|
|
107
|
+
if (!input) {
|
|
108
|
+
return processArg.includes("--force");
|
|
109
|
+
}
|
|
110
|
+
if (Array.isArray(input)) {
|
|
111
|
+
return input.includes("--force");
|
|
112
|
+
}
|
|
113
|
+
return !!input.force;
|
|
114
|
+
}
|
|
115
|
+
function isHelp(input) {
|
|
116
|
+
if (!input) {
|
|
117
|
+
return processArg.includes("--help") || processArg.includes("-h");
|
|
118
|
+
}
|
|
119
|
+
if (Array.isArray(input)) {
|
|
120
|
+
return input.includes("--help") || input.includes("-h");
|
|
121
|
+
}
|
|
122
|
+
return !!input.help;
|
|
123
|
+
}
|
|
124
|
+
function isJson(input) {
|
|
125
|
+
if (!input) {
|
|
126
|
+
return processArg.includes("--json");
|
|
127
|
+
}
|
|
128
|
+
if (Array.isArray(input)) {
|
|
129
|
+
return input.includes("--json");
|
|
130
|
+
}
|
|
131
|
+
return !!input.json;
|
|
132
|
+
}
|
|
133
|
+
function isQuiet(input) {
|
|
134
|
+
if (!input) {
|
|
135
|
+
return processArg.includes("--quiet") || processArg.includes("--silent");
|
|
136
|
+
}
|
|
137
|
+
if (Array.isArray(input)) {
|
|
138
|
+
return input.includes("--quiet") || input.includes("--silent");
|
|
139
|
+
}
|
|
140
|
+
return !!(input.quiet || input.silent);
|
|
141
|
+
}
|
|
142
|
+
function isStaged(input) {
|
|
143
|
+
if (!input) {
|
|
144
|
+
return processArg.includes("--staged");
|
|
145
|
+
}
|
|
146
|
+
if (Array.isArray(input)) {
|
|
147
|
+
return input.includes("--staged");
|
|
148
|
+
}
|
|
149
|
+
return !!input.staged;
|
|
150
|
+
}
|
|
151
|
+
function isUpdate(input) {
|
|
152
|
+
if (!input) {
|
|
153
|
+
return processArg.includes("--update") || processArg.includes("-u");
|
|
154
|
+
}
|
|
155
|
+
if (Array.isArray(input)) {
|
|
156
|
+
return input.includes("--update") || input.includes("-u");
|
|
157
|
+
}
|
|
158
|
+
return !!input.update;
|
|
159
|
+
}
|
|
160
|
+
function isVerbose(input) {
|
|
161
|
+
if (!input) {
|
|
162
|
+
return processArg.includes("--verbose");
|
|
163
|
+
}
|
|
164
|
+
if (Array.isArray(input)) {
|
|
165
|
+
return input.includes("--verbose");
|
|
166
|
+
}
|
|
167
|
+
return !!input.verbose;
|
|
168
|
+
}
|
|
169
|
+
function isWatch(input) {
|
|
170
|
+
if (!input) {
|
|
171
|
+
return processArg.includes("--watch") || processArg.includes("-w");
|
|
172
|
+
}
|
|
173
|
+
if (Array.isArray(input)) {
|
|
174
|
+
return input.includes("--watch") || input.includes("-w");
|
|
175
|
+
}
|
|
176
|
+
return !!input.watch;
|
|
177
|
+
}
|
|
178
|
+
const COMMON_FLAGS = {
|
|
179
|
+
all: {
|
|
180
|
+
type: "boolean",
|
|
181
|
+
default: false,
|
|
182
|
+
description: "Target all files"
|
|
183
|
+
},
|
|
184
|
+
changed: {
|
|
185
|
+
type: "boolean",
|
|
186
|
+
default: false,
|
|
187
|
+
description: "Target changed files"
|
|
188
|
+
},
|
|
189
|
+
coverage: {
|
|
190
|
+
type: "boolean",
|
|
191
|
+
default: false,
|
|
192
|
+
description: "Run with coverage"
|
|
193
|
+
},
|
|
194
|
+
cover: {
|
|
195
|
+
type: "boolean",
|
|
196
|
+
default: false,
|
|
197
|
+
description: "Run with coverage (alias)"
|
|
198
|
+
},
|
|
199
|
+
debug: {
|
|
200
|
+
type: "boolean",
|
|
201
|
+
default: false,
|
|
202
|
+
description: "Enable debug output"
|
|
203
|
+
},
|
|
204
|
+
"dry-run": {
|
|
205
|
+
type: "boolean",
|
|
206
|
+
default: false,
|
|
207
|
+
description: "Perform a dry run"
|
|
208
|
+
},
|
|
209
|
+
fix: {
|
|
210
|
+
type: "boolean",
|
|
211
|
+
default: false,
|
|
212
|
+
description: "Automatically fix issues"
|
|
213
|
+
},
|
|
214
|
+
force: {
|
|
215
|
+
type: "boolean",
|
|
216
|
+
default: false,
|
|
217
|
+
description: "Force the operation"
|
|
218
|
+
},
|
|
219
|
+
help: {
|
|
220
|
+
type: "boolean",
|
|
221
|
+
default: false,
|
|
222
|
+
short: "h",
|
|
223
|
+
description: "Show help"
|
|
224
|
+
},
|
|
225
|
+
json: {
|
|
226
|
+
type: "boolean",
|
|
227
|
+
default: false,
|
|
228
|
+
description: "Output as JSON"
|
|
229
|
+
},
|
|
230
|
+
quiet: {
|
|
231
|
+
type: "boolean",
|
|
232
|
+
default: false,
|
|
233
|
+
short: "q",
|
|
234
|
+
description: "Suppress output"
|
|
235
|
+
},
|
|
236
|
+
silent: {
|
|
237
|
+
type: "boolean",
|
|
238
|
+
default: false,
|
|
239
|
+
description: "Suppress all output"
|
|
240
|
+
},
|
|
241
|
+
staged: {
|
|
242
|
+
type: "boolean",
|
|
243
|
+
default: false,
|
|
244
|
+
description: "Target staged files"
|
|
245
|
+
},
|
|
246
|
+
update: {
|
|
247
|
+
type: "boolean",
|
|
248
|
+
default: false,
|
|
249
|
+
short: "u",
|
|
250
|
+
description: "Update snapshots/deps"
|
|
251
|
+
},
|
|
252
|
+
verbose: {
|
|
253
|
+
type: "boolean",
|
|
254
|
+
default: false,
|
|
255
|
+
short: "v",
|
|
256
|
+
description: "Verbose output"
|
|
257
|
+
},
|
|
258
|
+
watch: {
|
|
259
|
+
type: "boolean",
|
|
260
|
+
default: false,
|
|
261
|
+
short: "w",
|
|
262
|
+
description: "Watch mode"
|
|
263
|
+
}
|
|
264
|
+
};
|
|
265
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
266
|
+
0 && (module.exports = {
|
|
267
|
+
COMMON_FLAGS,
|
|
268
|
+
getLogLevel,
|
|
269
|
+
isAll,
|
|
270
|
+
isChanged,
|
|
271
|
+
isCoverage,
|
|
272
|
+
isDebug,
|
|
273
|
+
isDryRun,
|
|
274
|
+
isFix,
|
|
275
|
+
isForce,
|
|
276
|
+
isHelp,
|
|
277
|
+
isJson,
|
|
278
|
+
isQuiet,
|
|
279
|
+
isStaged,
|
|
280
|
+
isUpdate,
|
|
281
|
+
isVerbose,
|
|
282
|
+
isWatch
|
|
283
|
+
});
|
|
3
284
|
//# sourceMappingURL=flags.js.map
|
package/dist/argv/flags.js.map
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/argv/flags.ts"],
|
|
4
4
|
"sourcesContent": ["/**\n * Common flag utilities for Socket CLI applications.\n * Provides consistent flag checking across all Socket projects.\n */\n\n/**\n * Flag values object from parsed arguments.\n */\nexport interface FlagValues {\n [key: string]: unknown\n quiet?: boolean\n silent?: boolean\n verbose?: boolean\n help?: boolean\n all?: boolean\n fix?: boolean\n force?: boolean\n 'dry-run'?: boolean\n json?: boolean\n debug?: boolean\n watch?: boolean\n coverage?: boolean\n cover?: boolean\n update?: boolean\n staged?: boolean\n changed?: boolean\n}\n\nconst processArg = [...process.argv]\n\n/**\n * Accepted input types for flag checking functions.\n * Can be parsed flag values, process.argv array, or undefined (uses process.argv).\n */\nexport type FlagInput = FlagValues | string[] | readonly string[] | undefined\n\n/**\n * Get the appropriate log level based on flags.\n * Returns 'silent', 'error', 'warn', 'info', 'verbose', or 'debug'.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function getLogLevel(input?: FlagInput): string {\n if (isQuiet(input)) {\n return 'silent'\n }\n if (isDebug(input)) {\n return 'debug'\n }\n if (isVerbose(input)) {\n return 'verbose'\n }\n return 'info'\n}\n\n/**\n * Check if all flag is set.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isAll(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--all')\n }\n if (Array.isArray(input)) {\n return input.includes('--all')\n }\n return !!(input as FlagValues).all\n}\n\n/**\n * Check if changed files mode is enabled.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isChanged(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--changed')\n }\n if (Array.isArray(input)) {\n return input.includes('--changed')\n }\n return !!(input as FlagValues).changed\n}\n\n/**\n * Check if coverage mode is enabled.\n * Checks both 'coverage' and 'cover' flags.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isCoverage(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--coverage') || processArg.includes('--cover')\n }\n if (Array.isArray(input)) {\n return input.includes('--coverage') || input.includes('--cover')\n }\n return !!((input as FlagValues).coverage || (input as FlagValues).cover)\n}\n\n/**\n * Check if debug mode is enabled.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isDebug(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--debug')\n }\n if (Array.isArray(input)) {\n return input.includes('--debug')\n }\n return !!(input as FlagValues).debug\n}\n\n/**\n * Check if dry-run mode is enabled.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isDryRun(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--dry-run')\n }\n if (Array.isArray(input)) {\n return input.includes('--dry-run')\n }\n return !!(input as FlagValues)['dry-run']\n}\n\n/**\n * Check if fix/autofix mode is enabled.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isFix(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--fix')\n }\n if (Array.isArray(input)) {\n return input.includes('--fix')\n }\n return !!(input as FlagValues).fix\n}\n\n/**\n * Check if force mode is enabled.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isForce(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--force')\n }\n if (Array.isArray(input)) {\n return input.includes('--force')\n }\n return !!(input as FlagValues).force\n}\n\n/**\n * Check if help flag is set.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isHelp(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--help') || processArg.includes('-h')\n }\n if (Array.isArray(input)) {\n return input.includes('--help') || input.includes('-h')\n }\n return !!(input as FlagValues).help\n}\n\n/**\n * Check if JSON output is requested.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isJson(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--json')\n }\n if (Array.isArray(input)) {\n return input.includes('--json')\n }\n return !!(input as FlagValues).json\n}\n\n/**\n * Check if quiet/silent mode is enabled.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isQuiet(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--quiet') || processArg.includes('--silent')\n }\n if (Array.isArray(input)) {\n return input.includes('--quiet') || input.includes('--silent')\n }\n return !!((input as FlagValues).quiet || (input as FlagValues).silent)\n}\n\n/**\n * Check if staged files mode is enabled.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isStaged(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--staged')\n }\n if (Array.isArray(input)) {\n return input.includes('--staged')\n }\n return !!(input as FlagValues).staged\n}\n\n/**\n * Check if update mode is enabled (for snapshots, dependencies, etc).\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isUpdate(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--update') || processArg.includes('-u')\n }\n if (Array.isArray(input)) {\n return input.includes('--update') || input.includes('-u')\n }\n return !!(input as FlagValues).update\n}\n\n/**\n * Check if verbose mode is enabled.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isVerbose(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--verbose')\n }\n if (Array.isArray(input)) {\n return input.includes('--verbose')\n }\n return !!(input as FlagValues).verbose\n}\n\n/**\n * Check if watch mode is enabled.\n * Accepts FlagValues object, process.argv array, or undefined (uses process.argv).\n */\nexport function isWatch(input?: FlagInput): boolean {\n if (!input) {\n return processArg.includes('--watch') || processArg.includes('-w')\n }\n if (Array.isArray(input)) {\n return input.includes('--watch') || input.includes('-w')\n }\n return !!(input as FlagValues).watch\n}\n\n/**\n * Common flag definitions for parseArgs configuration.\n * Can be spread into parseArgs options for consistency.\n */\nexport const COMMON_FLAGS = {\n all: {\n type: 'boolean' as const,\n default: false,\n description: 'Target all files',\n },\n changed: {\n type: 'boolean' as const,\n default: false,\n description: 'Target changed files',\n },\n coverage: {\n type: 'boolean' as const,\n default: false,\n description: 'Run with coverage',\n },\n cover: {\n type: 'boolean' as const,\n default: false,\n description: 'Run with coverage (alias)',\n },\n debug: {\n type: 'boolean' as const,\n default: false,\n description: 'Enable debug output',\n },\n 'dry-run': {\n type: 'boolean' as const,\n default: false,\n description: 'Perform a dry run',\n },\n fix: {\n type: 'boolean' as const,\n default: false,\n description: 'Automatically fix issues',\n },\n force: {\n type: 'boolean' as const,\n default: false,\n description: 'Force the operation',\n },\n help: {\n type: 'boolean' as const,\n default: false,\n short: 'h',\n description: 'Show help',\n },\n json: {\n type: 'boolean' as const,\n default: false,\n description: 'Output as JSON',\n },\n quiet: {\n type: 'boolean' as const,\n default: false,\n short: 'q',\n description: 'Suppress output',\n },\n silent: {\n type: 'boolean' as const,\n default: false,\n description: 'Suppress all output',\n },\n staged: {\n type: 'boolean' as const,\n default: false,\n description: 'Target staged files',\n },\n update: {\n type: 'boolean' as const,\n default: false,\n short: 'u',\n description: 'Update snapshots/deps',\n },\n verbose: {\n type: 'boolean' as const,\n default: false,\n short: 'v',\n description: 'Verbose output',\n },\n watch: {\n type: 'boolean' as const,\n default: false,\n short: 'w',\n description: 'Watch mode',\n },\n}\n"],
|
|
5
|
-
"mappings": ";
|
|
6
|
-
"names": [
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
7
|
}
|
package/dist/argv/parse.js
CHANGED
|
@@ -1,3 +1,173 @@
|
|
|
1
1
|
/* Socket Lib - Built with esbuild */
|
|
2
|
-
var
|
|
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 __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var parse_exports = {};
|
|
30
|
+
__export(parse_exports, {
|
|
31
|
+
commonParseArgsConfig: () => commonParseArgsConfig,
|
|
32
|
+
getPositionalArgs: () => getPositionalArgs,
|
|
33
|
+
hasFlag: () => hasFlag,
|
|
34
|
+
parseArgs: () => parseArgs,
|
|
35
|
+
parseArgsWithDefaults: () => parseArgsWithDefaults
|
|
36
|
+
});
|
|
37
|
+
module.exports = __toCommonJS(parse_exports);
|
|
38
|
+
var import_yargs_parser = __toESM(require("../external/yargs-parser"));
|
|
39
|
+
function parseArgs(config = {}) {
|
|
40
|
+
const {
|
|
41
|
+
allowNegative = false,
|
|
42
|
+
allowPositionals = true,
|
|
43
|
+
args = process.argv.slice(2),
|
|
44
|
+
configuration,
|
|
45
|
+
options = {},
|
|
46
|
+
strict = true
|
|
47
|
+
} = config;
|
|
48
|
+
const yargsOptions = {
|
|
49
|
+
// Arrays of option names to treat as specific types.
|
|
50
|
+
boolean: [],
|
|
51
|
+
string: [],
|
|
52
|
+
array: [],
|
|
53
|
+
// Maps for aliases, defaults, and transformations.
|
|
54
|
+
alias: {},
|
|
55
|
+
default: {},
|
|
56
|
+
coerce: {},
|
|
57
|
+
"unknown-options-as-args": !strict,
|
|
58
|
+
"parse-numbers": false,
|
|
59
|
+
"parse-positional-numbers": false,
|
|
60
|
+
"boolean-negation": !allowNegative,
|
|
61
|
+
"halt-at-non-option": !allowPositionals,
|
|
62
|
+
configuration: {
|
|
63
|
+
// Enable kebab-case to camelCase conversion (e.g., --temp-dir → tempDir).
|
|
64
|
+
"camel-case-expansion": true,
|
|
65
|
+
// Disable dot notation to avoid confusing nested property parsing.
|
|
66
|
+
"dot-notation": false,
|
|
67
|
+
// Convert duplicate arguments into arrays automatically.
|
|
68
|
+
"duplicate-arguments-array": true,
|
|
69
|
+
// Flatten nested arrays from duplicate arguments for cleaner output.
|
|
70
|
+
"flatten-duplicate-arrays": true,
|
|
71
|
+
// Populate the '--' key with arguments after the -- separator.
|
|
72
|
+
"populate--": true,
|
|
73
|
+
// Allow short option grouping like -abc for -a -b -c.
|
|
74
|
+
"short-option-groups": true,
|
|
75
|
+
// Keep aliased keys in the result for flexibility.
|
|
76
|
+
"strip-aliased": false,
|
|
77
|
+
// Keep both kebab-case and camelCase keys for flexibility.
|
|
78
|
+
"strip-dashed": false,
|
|
79
|
+
...configuration
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
for (const { 0: key, 1: optionConfig } of Object.entries(options)) {
|
|
83
|
+
const {
|
|
84
|
+
coerce,
|
|
85
|
+
default: defaultValue,
|
|
86
|
+
multiple,
|
|
87
|
+
short,
|
|
88
|
+
type
|
|
89
|
+
} = optionConfig;
|
|
90
|
+
if (type === "boolean") {
|
|
91
|
+
yargsOptions.boolean?.push(key);
|
|
92
|
+
} else if (type === "string") {
|
|
93
|
+
yargsOptions.string?.push(key);
|
|
94
|
+
}
|
|
95
|
+
if (multiple) {
|
|
96
|
+
yargsOptions.array?.push(key);
|
|
97
|
+
}
|
|
98
|
+
if (short) {
|
|
99
|
+
;
|
|
100
|
+
yargsOptions.alias[short] = key;
|
|
101
|
+
}
|
|
102
|
+
if (defaultValue !== void 0) {
|
|
103
|
+
;
|
|
104
|
+
yargsOptions.default[key] = defaultValue;
|
|
105
|
+
}
|
|
106
|
+
if (coerce) {
|
|
107
|
+
;
|
|
108
|
+
yargsOptions.coerce[key] = coerce;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
const parsed = (0, import_yargs_parser.default)(args, yargsOptions);
|
|
112
|
+
const positionals = parsed._ || [];
|
|
113
|
+
const { _, ...values } = parsed;
|
|
114
|
+
const stringPositionals = positionals.map(String);
|
|
115
|
+
return {
|
|
116
|
+
values,
|
|
117
|
+
positionals: stringPositionals,
|
|
118
|
+
raw: parsed
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
function parseArgsWithDefaults(config = {}) {
|
|
122
|
+
return parseArgs({
|
|
123
|
+
strict: false,
|
|
124
|
+
allowPositionals: true,
|
|
125
|
+
...config
|
|
126
|
+
});
|
|
127
|
+
}
|
|
128
|
+
const commonParseArgsConfig = {
|
|
129
|
+
options: {
|
|
130
|
+
force: {
|
|
131
|
+
type: "boolean",
|
|
132
|
+
short: "f",
|
|
133
|
+
default: false
|
|
134
|
+
},
|
|
135
|
+
quiet: {
|
|
136
|
+
type: "boolean",
|
|
137
|
+
short: "q",
|
|
138
|
+
default: false
|
|
139
|
+
}
|
|
140
|
+
},
|
|
141
|
+
strict: false
|
|
142
|
+
};
|
|
143
|
+
function getPositionalArgs(startIndex = 2) {
|
|
144
|
+
const args = process.argv.slice(startIndex);
|
|
145
|
+
const positionals = [];
|
|
146
|
+
let i = 0;
|
|
147
|
+
while (i < args.length) {
|
|
148
|
+
const arg = args[i];
|
|
149
|
+
if (arg.startsWith("-")) {
|
|
150
|
+
break;
|
|
151
|
+
}
|
|
152
|
+
positionals.push(arg);
|
|
153
|
+
i++;
|
|
154
|
+
}
|
|
155
|
+
return positionals;
|
|
156
|
+
}
|
|
157
|
+
function hasFlag(flag, argv = process.argv) {
|
|
158
|
+
const flagVariants = [
|
|
159
|
+
`--${flag}`,
|
|
160
|
+
// Short flag.
|
|
161
|
+
`-${flag.charAt(0)}`
|
|
162
|
+
];
|
|
163
|
+
return flagVariants.some((variant) => argv.includes(variant));
|
|
164
|
+
}
|
|
165
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
166
|
+
0 && (module.exports = {
|
|
167
|
+
commonParseArgsConfig,
|
|
168
|
+
getPositionalArgs,
|
|
169
|
+
hasFlag,
|
|
170
|
+
parseArgs,
|
|
171
|
+
parseArgsWithDefaults
|
|
172
|
+
});
|
|
3
173
|
//# sourceMappingURL=parse.js.map
|
package/dist/argv/parse.js.map
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/argv/parse.ts"],
|
|
4
4
|
"sourcesContent": ["/**\n * Argument parsing utilities for CLI applications.\n * Uses yargs-parser internally for robust argument parsing with Node.js parseArgs-compatible API.\n */\n\nimport yargsParser from '../external/yargs-parser'\n\n/**\n * Yargs parser options interface.\n */\ninterface YargsOptions {\n // Array of option names that should be treated as booleans.\n boolean?: string[] | undefined\n // Array of option names that should be treated as strings.\n string?: string[] | undefined\n // Array of option names that should accept multiple values.\n array?: string[] | undefined\n // Map of short aliases to full option names.\n alias?: Record<string, string | string[]> | undefined\n // Default values for options.\n default?: Record<string, unknown> | undefined\n // Transform functions to coerce parsed values.\n coerce?: Record<string, (value: unknown) => unknown> | undefined\n // Whether to treat unknown options as positional arguments.\n 'unknown-options-as-args'?: boolean | undefined\n // Whether to parse numeric strings as numbers.\n 'parse-numbers'?: boolean | undefined\n // Whether to parse positional arguments as numbers.\n 'parse-positional-numbers'?: boolean | undefined\n // Whether to support --no-<option> negation for booleans.\n 'boolean-negation'?: boolean | undefined\n // Whether to stop parsing options after the first positional.\n 'halt-at-non-option'?: boolean | undefined\n // Advanced yargs-parser configuration options.\n configuration?: Record<string, boolean | string> | undefined\n // Whether to throw on unknown options.\n strict?: boolean | undefined\n}\n\n/**\n * Yargs parser result interface.\n */\ninterface YargsArguments extends Record<string, unknown> {\n _: string[]\n $0?: string\n}\n\n/**\n * Options for configuring argument parsing, similar to Node.js util.parseArgs.\n */\nexport interface ParseArgsOptionsConfig {\n // Whether the option accepts multiple values (array).\n multiple?: boolean | undefined\n // Short alias for the option (single character).\n short?: string | undefined\n // Type of the option value.\n type?: 'boolean' | 'string' | undefined\n // Default value for the option.\n default?: unknown | undefined\n // Transform function to coerce parsed values.\n coerce?: (value: unknown) => unknown | undefined\n}\n\n/**\n * Configuration object for parseArgs function, similar to Node.js util.parseArgs.\n */\nexport interface ParseArgsConfig {\n // Command-line arguments to parse (defaults to process.argv.slice(2)).\n args?: readonly string[] | undefined\n // Options configuration object.\n options?: Record<string, ParseArgsOptionsConfig> | undefined\n // Whether to throw on unknown options (default: true).\n strict?: boolean | undefined\n // Whether to populate tokens array (not implemented, for API compatibility).\n tokens?: boolean | undefined\n // Whether to allow positional arguments after options.\n allowPositionals?: boolean | undefined\n // Whether to allow negative numbers as option values.\n allowNegative?: boolean | undefined\n // Advanced yargs-parser configuration passthrough.\n configuration?: Record<string, boolean | string> | undefined\n}\n\n/**\n * Result of parsing command-line arguments.\n */\nexport interface ParsedArgs<T = Record<string, unknown>> {\n // Parsed option values.\n values: T\n // Positional arguments (non-option arguments).\n positionals: string[]\n // Raw parsed arguments object from yargs-parser.\n raw: YargsArguments\n}\n\n/**\n * Parse command-line arguments with a Node.js parseArgs-compatible API.\n * Uses yargs-parser internally for robust argument parsing.\n */\nexport function parseArgs<T = Record<string, unknown>>(\n config: ParseArgsConfig = {},\n): ParsedArgs<T> {\n const {\n allowNegative = false,\n allowPositionals = true,\n args = process.argv.slice(2),\n configuration,\n options = {},\n strict = true,\n } = config\n\n // Convert parseArgs options to yargs-parser options.\n const yargsOptions: YargsOptions = {\n // Arrays of option names to treat as specific types.\n boolean: [],\n string: [],\n array: [],\n // Maps for aliases, defaults, and transformations.\n alias: {},\n default: {},\n coerce: {},\n 'unknown-options-as-args': !strict,\n 'parse-numbers': false,\n 'parse-positional-numbers': false,\n 'boolean-negation': !allowNegative,\n 'halt-at-non-option': !allowPositionals,\n configuration: {\n // Enable kebab-case to camelCase conversion (e.g., --temp-dir \u2192 tempDir).\n 'camel-case-expansion': true,\n // Disable dot notation to avoid confusing nested property parsing.\n 'dot-notation': false,\n // Convert duplicate arguments into arrays automatically.\n 'duplicate-arguments-array': true,\n // Flatten nested arrays from duplicate arguments for cleaner output.\n 'flatten-duplicate-arrays': true,\n // Populate the '--' key with arguments after the -- separator.\n 'populate--': true,\n // Allow short option grouping like -abc for -a -b -c.\n 'short-option-groups': true,\n // Keep aliased keys in the result for flexibility.\n 'strip-aliased': false,\n // Keep both kebab-case and camelCase keys for flexibility.\n 'strip-dashed': false,\n ...configuration,\n },\n }\n\n // Process each option configuration.\n for (const { 0: key, 1: optionConfig } of Object.entries(options)) {\n const {\n coerce,\n default: defaultValue,\n multiple,\n short,\n type,\n } = optionConfig\n\n // Set the option type.\n if (type === 'boolean') {\n yargsOptions.boolean?.push(key)\n } else if (type === 'string') {\n yargsOptions.string?.push(key)\n }\n\n // Handle multiple values (arrays).\n if (multiple) {\n yargsOptions.array?.push(key)\n }\n\n // Set short alias.\n if (short) {\n ;(yargsOptions.alias as Record<string, string>)[short] = key\n }\n\n // Set default value.\n if (defaultValue !== undefined) {\n ;(yargsOptions.default as Record<string, unknown>)[key] = defaultValue\n }\n\n // Set coerce function.\n if (coerce) {\n ;(yargsOptions.coerce as Record<string, unknown>)[key] = coerce\n }\n }\n\n // Parse the arguments.\n const parsed = yargsParser(args as string[], yargsOptions)\n\n // Extract positional arguments.\n const positionals = parsed._ || []\n\n // Remove the positionals array from values to match Node.js parseArgs behavior.\n const { _, ...values } = parsed\n\n // Ensure positionals are strings.\n const stringPositionals = positionals.map(String)\n\n return {\n values: values as T,\n positionals: stringPositionals,\n raw: parsed as YargsArguments,\n }\n}\n\n/**\n * Parse command-line arguments with Socket defaults.\n * Provides sensible defaults for Socket CLI applications.\n */\nexport function parseArgsWithDefaults<T = Record<string, unknown>>(\n config: ParseArgsConfig = {},\n): ParsedArgs<T> {\n return parseArgs<T>({\n strict: false,\n allowPositionals: true,\n ...config,\n })\n}\n\n/**\n * Common parseArgs configuration for Socket registry scripts.\n */\nexport const commonParseArgsConfig: ParseArgsConfig = {\n options: {\n force: {\n type: 'boolean',\n short: 'f',\n default: false,\n },\n quiet: {\n type: 'boolean',\n short: 'q',\n default: false,\n },\n },\n strict: false,\n}\n\n/**\n * Extract positional arguments from process.argv.\n * Useful for commands that accept file paths or other positional parameters.\n */\nexport function getPositionalArgs(startIndex = 2): string[] {\n const args = process.argv.slice(startIndex)\n const positionals: string[] = []\n let i = 0\n\n while (i < args.length) {\n const arg = args[i]!\n // Stop at first flag\n if (arg.startsWith('-')) {\n break\n }\n positionals.push(arg)\n i++\n }\n\n return positionals\n}\n\n/**\n * Check if a specific flag is present in argv.\n */\nexport function hasFlag(flag: string, argv = process.argv): boolean {\n const flagVariants = [\n `--${flag}`,\n // Short flag.\n `-${flag.charAt(0)}`,\n ]\n return flagVariants.some(variant => argv.includes(variant))\n}\n"],
|
|
5
|
-
"mappings": ";
|
|
6
|
-
"names": ["
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["yargsParser"]
|
|
7
7
|
}
|