@framedash/cli 0.1.2 → 0.1.4
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/README.md +42 -7
- package/dist/commands/alerts.d.ts.map +1 -1
- package/dist/commands/alerts.js +2 -1
- package/dist/commands/alerts.js.map +1 -1
- package/dist/commands/auth.d.ts.map +1 -1
- package/dist/commands/auth.js +25 -2
- package/dist/commands/auth.js.map +1 -1
- package/dist/commands/login.d.ts +2 -0
- package/dist/commands/login.d.ts.map +1 -0
- package/dist/commands/login.js +142 -0
- package/dist/commands/login.js.map +1 -0
- package/dist/commands/logout.d.ts +2 -0
- package/dist/commands/logout.d.ts.map +1 -0
- package/dist/commands/logout.js +79 -0
- package/dist/commands/logout.js.map +1 -0
- package/dist/commands/map-capture.d.ts +2 -1
- package/dist/commands/map-capture.d.ts.map +1 -1
- package/dist/commands/map-capture.js +38 -9
- package/dist/commands/map-capture.js.map +1 -1
- package/dist/commands/projects.d.ts +2 -0
- package/dist/commands/projects.d.ts.map +1 -0
- package/dist/commands/projects.js +26 -0
- package/dist/commands/projects.js.map +1 -0
- package/dist/commands/query.d.ts.map +1 -1
- package/dist/commands/query.js +12 -0
- package/dist/commands/query.js.map +1 -1
- package/dist/commands/run-profile-test.d.ts.map +1 -1
- package/dist/commands/run-profile-test.js +143 -26
- package/dist/commands/run-profile-test.js.map +1 -1
- package/dist/commands/threshold-profiles.d.ts +2 -0
- package/dist/commands/threshold-profiles.d.ts.map +1 -0
- package/dist/commands/threshold-profiles.js +24 -0
- package/dist/commands/threshold-profiles.js.map +1 -0
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/config.d.ts +42 -1
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +44 -14
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/create-client.d.ts +25 -7
- package/dist/lib/create-client.d.ts.map +1 -1
- package/dist/lib/create-client.js +160 -33
- package/dist/lib/create-client.js.map +1 -1
- package/dist/lib/formatters.js +109 -1
- package/dist/lib/formatters.js.map +1 -1
- package/dist/lib/oauth/loopback-server.d.ts +27 -0
- package/dist/lib/oauth/loopback-server.d.ts.map +1 -0
- package/dist/lib/oauth/loopback-server.js +164 -0
- package/dist/lib/oauth/loopback-server.js.map +1 -0
- package/dist/lib/oauth/manager.d.ts +36 -0
- package/dist/lib/oauth/manager.d.ts.map +1 -0
- package/dist/lib/oauth/manager.js +130 -0
- package/dist/lib/oauth/manager.js.map +1 -0
- package/dist/lib/oauth/pkce.d.ts +15 -0
- package/dist/lib/oauth/pkce.d.ts.map +1 -0
- package/dist/lib/oauth/pkce.js +24 -0
- package/dist/lib/oauth/pkce.js.map +1 -0
- package/dist/lib/oauth/token-endpoint.d.ts +39 -0
- package/dist/lib/oauth/token-endpoint.d.ts.map +1 -0
- package/dist/lib/oauth/token-endpoint.js +117 -0
- package/dist/lib/oauth/token-endpoint.js.map +1 -0
- package/dist/lib/oauth/token-store.d.ts +34 -0
- package/dist/lib/oauth/token-store.d.ts.map +1 -0
- package/dist/lib/oauth/token-store.js +164 -0
- package/dist/lib/oauth/token-store.js.map +1 -0
- package/dist/lib/run-command.js +2 -2
- package/dist/lib/run-command.js.map +1 -1
- package/dist/lib/run-profile-test-lib.d.ts +39 -0
- package/dist/lib/run-profile-test-lib.d.ts.map +1 -1
- package/dist/lib/run-profile-test-lib.js +47 -0
- package/dist/lib/run-profile-test-lib.js.map +1 -1
- package/dist/lib/uploader.d.ts +14 -1
- package/dist/lib/uploader.d.ts.map +1 -1
- package/dist/lib/uploader.js +26 -12
- package/dist/lib/uploader.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-command.js","sourceRoot":"","sources":["../../src/lib/run-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,SAAS,EAAE,MAAM,WAAW,CAAC;AAE5D,OAAO,EAEN,cAAc,EACd,aAAa,EACb,2BAA2B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAiBzC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC/B,IAAoB,EACpB,OAA+C;IAE/C,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;QACzC,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE,EAAE,GAAG,cAAc,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;QAC/C,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,KAAK;KAChD,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,OAAO;IACR,CAAC;IAED,MAAM,WAAW,GAAG,MAAsD,CAAC;IAE3E,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,UAAU,GAAG,2BAA2B,CAAC,WAAW,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAc,EAAE,GAAG,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;QAC3D,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"run-command.js","sourceRoot":"","sources":["../../src/lib/run-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,SAAS,EAAE,MAAM,WAAW,CAAC;AAE5D,OAAO,EAEN,cAAc,EACd,aAAa,EACb,2BAA2B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAiBzC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC/B,IAAoB,EACpB,OAA+C;IAE/C,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC;QACzC,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,OAAO,EAAE,EAAE,GAAG,cAAc,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;QAC/C,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,KAAK;KAChD,CAAC,CAAC;IAEH,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,OAAO;IACR,CAAC;IAED,MAAM,WAAW,GAAG,MAAsD,CAAC;IAE3E,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,UAAU,GAAG,2BAA2B,CAAC,WAAW,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAc,EAAE,GAAG,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;QAC3D,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACnE,MAAM,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;IACrE,CAAC;SAAM,CAAC;QACP,MAAM,MAAM,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACjF,MAAM,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC;IACrE,CAAC;AACF,CAAC;AAID;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC9B,IAAY,EACZ,IAAY,EACZ,WAA0B;IAE1B,OAAO,KAAK,EAAE,IAAc,EAAiB,EAAE;QAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAE3B,IAAI,CAAC,UAAU,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACnE,GAAG,CAAC,IAAI,CAAC,CAAC;YACV,OAAO;QACR,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC;YAC7C,KAAK,CAAC,WAAW,IAAI,gBAAgB,UAAU,EAAE,CAAC,CAAC;YACnD,GAAG,CAAC,IAAI,CAAC,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChB,OAAO;QACR,CAAC;QAED,+EAA+E;QAC/E,MAAM,WAAW,CAAC,UAAU,CAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC;AACH,CAAC"}
|
|
@@ -58,6 +58,45 @@ export declare function resolveProfileIdentity(flags: IdentityInputs, git: GitFa
|
|
|
58
58
|
* branch/commit/scenario and stamps an empty ci.* tag.
|
|
59
59
|
*/
|
|
60
60
|
export declare function buildSessionEnv(identity: ProfileIdentity): Record<string, string>;
|
|
61
|
+
/** Result of validating a "seconds" CLI option value. */
|
|
62
|
+
export type SecondsValidation = {
|
|
63
|
+
value: number;
|
|
64
|
+
} | {
|
|
65
|
+
error: string;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* Validate a seconds-valued option. Returns the parsed number, or an error
|
|
69
|
+
* message describing why it is invalid (the caller adds the --flag prefix and
|
|
70
|
+
* decides how to surface it). A non-string value (unset, or the boolean parseArgs
|
|
71
|
+
* yields for a value-less flag) falls back to `fallback`. With `allowZero` the
|
|
72
|
+
* value may be 0 (used by --command-timeout, where 0 disables the bound);
|
|
73
|
+
* otherwise it must be strictly positive (as --ingest-timeout / --poll-interval
|
|
74
|
+
* require).
|
|
75
|
+
*/
|
|
76
|
+
export declare function validateSeconds(value: string | boolean | undefined, fallback: number, opts?: {
|
|
77
|
+
allowZero?: boolean;
|
|
78
|
+
max?: number;
|
|
79
|
+
}): SecondsValidation;
|
|
80
|
+
/**
|
|
81
|
+
* Platform-specific plan for terminating a launched process TREE by pid. A plain
|
|
82
|
+
* kill of the direct child orphans its grandchildren (a Unity/UE5 player launched
|
|
83
|
+
* via the shell spawns helper processes that survive), so on win32 we shell out
|
|
84
|
+
* to `taskkill /T /F` (whole tree, forced) and on POSIX we signal the child's
|
|
85
|
+
* process GROUP (the negative pid, valid because the child is spawned detached
|
|
86
|
+
* into its own group). Pure so the argv/decision is unit-testable without
|
|
87
|
+
* spawning anything.
|
|
88
|
+
*/
|
|
89
|
+
export type TreeKillPlan = {
|
|
90
|
+
platform: "win32";
|
|
91
|
+
command: "taskkill";
|
|
92
|
+
args: string[];
|
|
93
|
+
} | {
|
|
94
|
+
platform: "posix";
|
|
95
|
+
groupPid: number;
|
|
96
|
+
} | {
|
|
97
|
+
platform: "noop";
|
|
98
|
+
};
|
|
99
|
+
export declare function planTreeKill(platform: NodeJS.Platform, pid: number | undefined): TreeKillPlan;
|
|
61
100
|
/** Minimal shape of a builds-list row (mirrors apps/web BuildInfo). */
|
|
62
101
|
export interface BuildListEntry {
|
|
63
102
|
build_id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-profile-test-lib.d.ts","sourceRoot":"","sources":["../../src/lib/run-profile-test-lib.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,YAAY,uBAAuB,CAAC;AACjD,eAAO,MAAM,cAAc,yBAAyB,CAAC;AACrD,eAAO,MAAM,cAAc,yBAAyB,CAAC;AACrD,eAAO,MAAM,iBAAiB,4BAA4B,CAAC;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,4GAKnB,CAAC;AAEX,8DAA8D;AAC9D,MAAM,WAAW,eAAe;IAC/B,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iEAAiE;IACjE,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,6EAA6E;AAC7E,MAAM,WAAW,cAAc;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,gFAAgF;AAChF,MAAM,WAAW,YAAY;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CAChB;AAUD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACrC,KAAK,EAAE,cAAc,EACrB,GAAG,EAAE,YAAY,GACf,eAAe,GAAG,IAAI,CAUxB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMjF;AAED,uEAAuE;AACvE,MAAM,WAAW,cAAc;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC9B;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC9B,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,GAAG,SAAS,EAC3C,OAAO,EAAE,MAAM,GACb,MAAM,CAKR;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC/B,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,GAAG,SAAS,EAC3C,OAAO,EAAE,MAAM,EACf,aAAa,SAAI,GACf,OAAO,CAET;AAED,mFAAmF;AACnF,MAAM,WAAW,iBAAiB;IACjC,gDAAgD;IAChD,WAAW,EAAE,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAC7C,sCAAsC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,sEAAsE;IACtE,GAAG,EAAE,MAAM,MAAM,CAAC;IAClB,wDAAwD;IACxD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACnC;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAmB7E"}
|
|
1
|
+
{"version":3,"file":"run-profile-test-lib.d.ts","sourceRoot":"","sources":["../../src/lib/run-profile-test-lib.ts"],"names":[],"mappings":"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"}
|
|
@@ -68,6 +68,53 @@ export function buildSessionEnv(identity) {
|
|
|
68
68
|
env[ENV_TEST_SCENARIO] = identity.scenario;
|
|
69
69
|
return env;
|
|
70
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* Validate a seconds-valued option. Returns the parsed number, or an error
|
|
73
|
+
* message describing why it is invalid (the caller adds the --flag prefix and
|
|
74
|
+
* decides how to surface it). A non-string value (unset, or the boolean parseArgs
|
|
75
|
+
* yields for a value-less flag) falls back to `fallback`. With `allowZero` the
|
|
76
|
+
* value may be 0 (used by --command-timeout, where 0 disables the bound);
|
|
77
|
+
* otherwise it must be strictly positive (as --ingest-timeout / --poll-interval
|
|
78
|
+
* require).
|
|
79
|
+
*/
|
|
80
|
+
export function validateSeconds(value, fallback, opts = {}) {
|
|
81
|
+
if (typeof value !== "string")
|
|
82
|
+
return { value: fallback };
|
|
83
|
+
const baseError = opts.allowZero
|
|
84
|
+
? "must be a non-negative number of seconds (0 disables the bound)"
|
|
85
|
+
: "must be a positive number of seconds";
|
|
86
|
+
// Reject empty / whitespace explicitly: Number("") and Number(" ") are 0, which
|
|
87
|
+
// would silently DISABLE the bound under allowZero (a fail-closed footgun for a
|
|
88
|
+
// mistyped --command-timeout= value), so treat a blank value as invalid.
|
|
89
|
+
const trimmed = value.trim();
|
|
90
|
+
if (trimmed === "")
|
|
91
|
+
return { error: baseError };
|
|
92
|
+
const n = Number(trimmed);
|
|
93
|
+
const minOk = opts.allowZero ? n >= 0 : n > 0;
|
|
94
|
+
if (!Number.isFinite(n) || !minOk)
|
|
95
|
+
return { error: baseError };
|
|
96
|
+
// Guard against a value so large that timeoutMs overflows setTimeout's signed
|
|
97
|
+
// 32-bit delay, which Node clamps to 1ms -- an "effectively unbounded" input
|
|
98
|
+
// would then fire almost immediately and kill the run at once.
|
|
99
|
+
if (opts.max !== undefined && n > opts.max) {
|
|
100
|
+
return { error: `must be at most ${opts.max} seconds` };
|
|
101
|
+
}
|
|
102
|
+
return { value: n };
|
|
103
|
+
}
|
|
104
|
+
export function planTreeKill(platform, pid) {
|
|
105
|
+
// A missing, non-integer, or non-positive pid is UNSAFE to kill: on POSIX,
|
|
106
|
+
// process.kill(0, sig) signals the caller's OWN process group and kill(-1, sig)
|
|
107
|
+
// signals every process the user owns, either of which could take down this CLI
|
|
108
|
+
// or the CI runner itself. Refuse to act rather than risk it.
|
|
109
|
+
if (typeof pid !== "number" || !Number.isInteger(pid) || pid <= 0) {
|
|
110
|
+
return { platform: "noop" };
|
|
111
|
+
}
|
|
112
|
+
if (platform === "win32") {
|
|
113
|
+
return { platform: "win32", command: "taskkill", args: ["/pid", String(pid), "/t", "/f"] };
|
|
114
|
+
}
|
|
115
|
+
// Negative pid targets the whole process group (see detached spawn in the command).
|
|
116
|
+
return { platform: "posix", groupPid: -pid };
|
|
117
|
+
}
|
|
71
118
|
/**
|
|
72
119
|
* The perf-bearing event count currently reported for a build_id, or 0 when the
|
|
73
120
|
* build is absent (or the row has no usable count). Normalizes the value with
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-profile-test-lib.js","sourceRoot":"","sources":["../../src/lib/run-profile-test-lib.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,oBAAoB,CAAC;AACjD,MAAM,CAAC,MAAM,cAAc,GAAG,sBAAsB,CAAC;AACrD,MAAM,CAAC,MAAM,cAAc,GAAG,sBAAsB,CAAC;AACrD,MAAM,CAAC,MAAM,iBAAiB,GAAG,yBAAyB,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC/B,YAAY;IACZ,cAAc;IACd,cAAc;IACd,iBAAiB;CACR,CAAC;AA4BX,SAAS,KAAK,CAAC,KAAc;IAC5B,6EAA6E;IAC7E,0DAA0D;IAC1D,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAC;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AACjD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACrC,KAAqB,EACrB,GAAiB;IAEjB,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC;IAC/C,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC1B,OAAO;QACN,OAAO;QACP,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;QAChD,MAAM;QACN,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC;KAC/B,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,QAAyB;IACxD,MAAM,GAAG,GAA2B,EAAE,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;IACzE,IAAI,QAAQ,CAAC,MAAM;QAAE,GAAG,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC3D,IAAI,QAAQ,CAAC,MAAM;QAAE,GAAG,CAAC,cAAc,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC3D,IAAI,QAAQ,CAAC,QAAQ;QAAE,GAAG,CAAC,iBAAiB,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC;IAClE,OAAO,GAAG,CAAC;AACZ,CAAC;AAaD;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC9B,MAA2C,EAC3C,OAAe;IAEf,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,CAAC,CAAC;IACrC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACvC,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC/B,MAA2C,EAC3C,OAAe,EACf,aAAa,GAAG,CAAC;IAEjB,OAAO,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,aAAa,CAAC;AACzD,CAAC;AA0BD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAuB;IAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;IAC7C,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,OAAO,IAAI,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;QACV,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC;QACvB,IAAI,CAAC;YACJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YACxC,IAAI,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;QAClF,CAAC;QAAC,MAAM,CAAC;YACR,yEAAyE;QAC1E,CAAC;QACD,qEAAqE;QACrE,4EAA4E;QAC5E,wDAAwD;QACxD,MAAM,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACxC,IAAI,SAAS,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QACjC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IACxD,CAAC;AACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"run-profile-test-lib.js","sourceRoot":"","sources":["../../src/lib/run-profile-test-lib.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/uploader.d.ts
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
import type { MapCaptureMetadata } from "./metadata.js";
|
|
2
|
+
import type { OAuthTokenManager } from "./oauth/manager.js";
|
|
3
|
+
/**
|
|
4
|
+
* Upload credential: a project API key (X-API-Key) or the process-shared
|
|
5
|
+
* OAuth token manager (Authorization: Bearer, refreshed via the same
|
|
6
|
+
* rotation state every other client in this process uses).
|
|
7
|
+
*/
|
|
8
|
+
export type UploadCredential = {
|
|
9
|
+
kind: "api-key";
|
|
10
|
+
apiKey: string;
|
|
11
|
+
} | {
|
|
12
|
+
kind: "oauth";
|
|
13
|
+
manager: OAuthTokenManager;
|
|
14
|
+
};
|
|
2
15
|
export type UploadOptions = {
|
|
3
16
|
metadata: MapCaptureMetadata;
|
|
4
17
|
imagePath: string;
|
|
5
|
-
|
|
18
|
+
credential: UploadCredential;
|
|
6
19
|
projectId: string;
|
|
7
20
|
baseUrl: string;
|
|
8
21
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uploader.d.ts","sourceRoot":"","sources":["../../src/lib/uploader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"uploader.d.ts","sourceRoot":"","sources":["../../src/lib/uploader.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAY5D;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GACzB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACnC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,iBAAiB,CAAA;CAAE,CAAC;AAEjD,MAAM,MAAM,aAAa,GAAG;IAC3B,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,SAAS,CAAC;CAC9B,CAAC;AAEF;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC,CAuEjF"}
|
package/dist/lib/uploader.js
CHANGED
|
@@ -37,18 +37,32 @@ export async function uploadMapCapture(opts) {
|
|
|
37
37
|
// 308-redirect the double slash, which redirect:"manual" below now rejects.
|
|
38
38
|
const base = opts.baseUrl.replace(/\/+$/, "");
|
|
39
39
|
const url = `${base}/api/v1/maps/upload`;
|
|
40
|
-
const
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
40
|
+
const send = async (forceRefresh) => {
|
|
41
|
+
const authHeader = opts.credential.kind === "api-key"
|
|
42
|
+
? { "X-API-Key": opts.credential.apiKey }
|
|
43
|
+
: {
|
|
44
|
+
Authorization: `Bearer ${forceRefresh
|
|
45
|
+
? await opts.credential.manager.forceRefresh()
|
|
46
|
+
: await opts.credential.manager.getAccessToken()}`,
|
|
47
|
+
};
|
|
48
|
+
return fetch(url, {
|
|
49
|
+
method: "POST",
|
|
50
|
+
headers: { ...authHeader, "X-Project-Id": opts.projectId },
|
|
51
|
+
body: formData,
|
|
52
|
+
redirect: "manual",
|
|
53
|
+
signal: AbortSignal.timeout(UPLOAD_TIMEOUT_MS),
|
|
54
|
+
});
|
|
55
|
+
};
|
|
56
|
+
let response = await send(false);
|
|
57
|
+
// Mirror the API client's OAuth 401 handling: refresh once and retry once
|
|
58
|
+
// (the shared manager serializes rotation with every other client).
|
|
59
|
+
if (response.status === 401 && opts.credential.kind === "oauth") {
|
|
60
|
+
response = await send(true);
|
|
61
|
+
}
|
|
62
|
+
// Do not follow a redirect: fetch would re-send the credential header to
|
|
63
|
+
// the redirect target -- undici keeps custom headers like X-API-Key across
|
|
64
|
+
// CROSS-origin redirects (it strips only Authorization/Cookie there), and a
|
|
65
|
+
// SAME-origin redirect re-sends the Authorization: Bearer token too.
|
|
52
66
|
if (response.type === "opaqueredirect" || (response.status >= 300 && response.status < 400)) {
|
|
53
67
|
throw new Error(`Upload failed: unexpected redirect (status ${response.status || "opaque"}); refusing to resend credentials to the redirect target`);
|
|
54
68
|
}
|
package/dist/lib/uploader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uploader.js","sourceRoot":"","sources":["../../src/lib/uploader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"uploader.js","sourceRoot":"","sources":["../../src/lib/uploader.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@framedash/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.4",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -28,10 +28,10 @@
|
|
|
28
28
|
"clean": "rm -rf dist"
|
|
29
29
|
},
|
|
30
30
|
"engines": {
|
|
31
|
-
"node": ">=
|
|
31
|
+
"node": ">=20.0.0"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@framedash/api-client": "0.1.
|
|
34
|
+
"@framedash/api-client": "0.1.3",
|
|
35
35
|
"zod": "^4.3.6"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|