openlimiter 1.2.0 → 1.3.1
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 +45 -16
- package/dist/bin.js +53 -4
- package/dist/bin.js.map +1 -1
- package/dist/cli.d.ts +110 -11
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +1064 -64
- package/dist/cli.js.map +1 -1
- package/dist/codex-device-login.d.ts +87 -0
- package/dist/codex-device-login.d.ts.map +1 -0
- package/dist/codex-device-login.js +291 -0
- package/dist/codex-device-login.js.map +1 -0
- package/dist/config.d.ts +44 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +129 -7
- package/dist/config.js.map +1 -1
- package/dist/hub-auth.d.ts +137 -0
- package/dist/hub-auth.d.ts.map +1 -0
- package/dist/hub-auth.js +280 -0
- package/dist/hub-auth.js.map +1 -0
- package/dist/hub-sync.d.ts +144 -0
- package/dist/hub-sync.d.ts.map +1 -0
- package/dist/hub-sync.js +370 -0
- package/dist/hub-sync.js.map +1 -0
- package/dist/hub.d.ts +60 -0
- package/dist/hub.d.ts.map +1 -0
- package/dist/hub.js +178 -0
- package/dist/hub.js.map +1 -0
- package/dist/index.d.ts +6 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/ingest.d.ts +26 -0
- package/dist/ingest.d.ts.map +1 -1
- package/dist/ingest.js +116 -1
- package/dist/ingest.js.map +1 -1
- package/dist/qr.d.ts.map +1 -1
- package/dist/qr.js +1 -0
- package/dist/qr.js.map +1 -1
- package/dist/session.d.ts +46 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +121 -0
- package/dist/session.js.map +1 -0
- package/dist/statusline.d.ts +14 -0
- package/dist/statusline.d.ts.map +1 -1
- package/dist/statusline.js +258 -19
- package/dist/statusline.js.map +1 -1
- package/dist/terminal.d.ts +109 -0
- package/dist/terminal.d.ts.map +1 -0
- package/dist/terminal.js +974 -0
- package/dist/terminal.js.map +1 -0
- package/package.json +4 -4
- package/dist/serve.d.ts +0 -170
- package/dist/serve.d.ts.map +0 -1
- package/dist/serve.js +0 -533
- package/dist/serve.js.map +0 -1
package/dist/config.d.ts
CHANGED
|
@@ -13,6 +13,7 @@ export type StatuslineMeters = "worst" | "all";
|
|
|
13
13
|
* `never` is how you say it does not, whatever the terminal claims.
|
|
14
14
|
*/
|
|
15
15
|
export type StatuslineColor = "auto" | "always" | "never";
|
|
16
|
+
export type StatuslineStyle = "bar" | "cells";
|
|
16
17
|
export interface StatuslineConfig {
|
|
17
18
|
/**
|
|
18
19
|
* Provider ids, in the order they should appear.
|
|
@@ -29,8 +30,11 @@ export interface StatuslineConfig {
|
|
|
29
30
|
/** False restores the single plain line released in 0.1.0. */
|
|
30
31
|
readonly bars: boolean;
|
|
31
32
|
readonly color: StatuslineColor;
|
|
33
|
+
readonly style: StatuslineStyle;
|
|
34
|
+
readonly show: readonly string[];
|
|
35
|
+
readonly hosts: Readonly<Record<string, string>>;
|
|
32
36
|
}
|
|
33
|
-
export declare const STATUSLINE_KEYS: readonly ["order", "meters", "width", "rows", "bars", "color"];
|
|
37
|
+
export declare const STATUSLINE_KEYS: readonly ["order", "meters", "width", "rows", "bars", "color", "style", "show", "hosts"];
|
|
34
38
|
export type StatuslineKey = (typeof STATUSLINE_KEYS)[number];
|
|
35
39
|
/**
|
|
36
40
|
* The narrowest and widest budget a row may be given.
|
|
@@ -72,6 +76,36 @@ export type StatuslineUpdate = {
|
|
|
72
76
|
* enough: a width of `wide` is refused rather than read as the default.
|
|
73
77
|
*/
|
|
74
78
|
export declare function setStatuslineValue(statusline: StatuslineConfig, key: string, value: string): StatuslineUpdate;
|
|
79
|
+
/**
|
|
80
|
+
* Per provider switches, and the one that matters in this release.
|
|
81
|
+
*
|
|
82
|
+
* Claude's primary source is the status line payload Claude Code hands this
|
|
83
|
+
* command, which is a documented feature and costs nothing. The network poll
|
|
84
|
+
* below exists only for the hours Claude Code is closed, it reads the token
|
|
85
|
+
* Claude Code stored, and Anthropic has written that third parties may not
|
|
86
|
+
* intermediate its credentials. That is a decision a person makes for
|
|
87
|
+
* themselves, so it is OFF until they turn it on, the row says why the bar is
|
|
88
|
+
* older than the others while it is off, and turning it on is one command.
|
|
89
|
+
*/
|
|
90
|
+
export interface ProvidersConfig {
|
|
91
|
+
readonly claude: {
|
|
92
|
+
readonly poll: boolean;
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
export declare const DEFAULT_PROVIDERS: ProvidersConfig;
|
|
96
|
+
export declare const PROVIDER_KEYS: readonly ["claude.poll"];
|
|
97
|
+
export type ProviderKey = (typeof PROVIDER_KEYS)[number];
|
|
98
|
+
export declare function isProviderKey(key: string): key is ProviderKey;
|
|
99
|
+
export declare function normalizeProviders(value: unknown): ProvidersConfig;
|
|
100
|
+
export declare function providerValueText(providers: ProvidersConfig, key: ProviderKey): string;
|
|
101
|
+
export type ProvidersUpdate = {
|
|
102
|
+
ok: true;
|
|
103
|
+
providers: ProvidersConfig;
|
|
104
|
+
} | {
|
|
105
|
+
ok: false;
|
|
106
|
+
message: string;
|
|
107
|
+
};
|
|
108
|
+
export declare function setProviderValue(providers: ProvidersConfig, key: string, value: string): ProvidersUpdate;
|
|
75
109
|
export interface ConfigConnector {
|
|
76
110
|
id: string;
|
|
77
111
|
enabled: true;
|
|
@@ -81,6 +115,7 @@ export interface OpenLimiterConfig {
|
|
|
81
115
|
version: 1;
|
|
82
116
|
connectors: readonly ConfigConnector[];
|
|
83
117
|
statusline: StatuslineConfig;
|
|
118
|
+
providers: ProvidersConfig;
|
|
84
119
|
}
|
|
85
120
|
export declare function writeConfig(config: OpenLimiterConfig, directory?: string): Promise<void>;
|
|
86
121
|
export type ConfigReadResult = {
|
|
@@ -120,4 +155,12 @@ export declare function initialize(environment: Readonly<Record<string, string |
|
|
|
120
155
|
* changed, instead of a file that claims no connector exists.
|
|
121
156
|
*/
|
|
122
157
|
export declare function defaultConfig(environment: Readonly<Record<string, string | undefined>>): OpenLimiterConfig;
|
|
158
|
+
/**
|
|
159
|
+
* The providers section, or the defaults, and never an exception.
|
|
160
|
+
*
|
|
161
|
+
* Read on the acquisition path, which runs detached and unattended, so a
|
|
162
|
+
* configuration file that cannot be read must leave the poll where it is
|
|
163
|
+
* safest: off.
|
|
164
|
+
*/
|
|
165
|
+
export declare function readProvidersConfig(directory?: string): Promise<ProvidersConfig>;
|
|
123
166
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,eAAO,MAAM,gBAAgB,4BAA4B,CAAC;AAI1D,4EAA4E;AAC5E,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,KAAK,CAAC;AAE/C;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE1D,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;IACrB,8DAA8D;IAC9D,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -9,7 +9,10 @@ export const STATUSLINE_KEYS = [
|
|
|
9
9
|
"width",
|
|
10
10
|
"rows",
|
|
11
11
|
"bars",
|
|
12
|
-
"color"
|
|
12
|
+
"color",
|
|
13
|
+
"style",
|
|
14
|
+
"show",
|
|
15
|
+
"hosts"
|
|
13
16
|
];
|
|
14
17
|
/**
|
|
15
18
|
* The narrowest and widest budget a row may be given.
|
|
@@ -27,7 +30,10 @@ export const DEFAULT_STATUSLINE = {
|
|
|
27
30
|
width: 140,
|
|
28
31
|
rows: 2,
|
|
29
32
|
bars: true,
|
|
30
|
-
color: "auto"
|
|
33
|
+
color: "auto",
|
|
34
|
+
style: "bar",
|
|
35
|
+
show: [],
|
|
36
|
+
hosts: {}
|
|
31
37
|
};
|
|
32
38
|
const connectorIds = connectors.map((connector) => connector.id);
|
|
33
39
|
/** The list of ids an error message offers back to the reader. */
|
|
@@ -58,6 +64,29 @@ function normalizeWidth(value) {
|
|
|
58
64
|
return null;
|
|
59
65
|
return value;
|
|
60
66
|
}
|
|
67
|
+
function normalizeShow(value) {
|
|
68
|
+
if (!Array.isArray(value))
|
|
69
|
+
return null;
|
|
70
|
+
const show = [];
|
|
71
|
+
for (const entry of value) {
|
|
72
|
+
if (typeof entry !== "string")
|
|
73
|
+
return null;
|
|
74
|
+
const id = entry.toLowerCase().trim();
|
|
75
|
+
if (id !== "" && !show.includes(id))
|
|
76
|
+
show.push(id);
|
|
77
|
+
}
|
|
78
|
+
return show;
|
|
79
|
+
}
|
|
80
|
+
function normalizeHosts(value) {
|
|
81
|
+
if (!isRecord(value))
|
|
82
|
+
return DEFAULT_STATUSLINE.hosts;
|
|
83
|
+
const hosts = {};
|
|
84
|
+
for (const [k, v] of Object.entries(value)) {
|
|
85
|
+
if (typeof v === "string")
|
|
86
|
+
hosts[k.toLowerCase()] = v;
|
|
87
|
+
}
|
|
88
|
+
return hosts;
|
|
89
|
+
}
|
|
61
90
|
/**
|
|
62
91
|
* Read a stored statusline section, key by key, keeping what is usable.
|
|
63
92
|
*
|
|
@@ -74,6 +103,7 @@ export function normalizeStatusline(value) {
|
|
|
74
103
|
const rows = value["rows"];
|
|
75
104
|
const bars = value["bars"];
|
|
76
105
|
const color = value["color"];
|
|
106
|
+
const style = value["style"];
|
|
77
107
|
return {
|
|
78
108
|
order: normalizeOrder(value["order"]) ?? DEFAULT_STATUSLINE.order,
|
|
79
109
|
meters: meters === "worst" || meters === "all" ? meters : DEFAULT_STATUSLINE.meters,
|
|
@@ -82,7 +112,10 @@ export function normalizeStatusline(value) {
|
|
|
82
112
|
bars: typeof bars === "boolean" ? bars : DEFAULT_STATUSLINE.bars,
|
|
83
113
|
color: color === "auto" || color === "always" || color === "never"
|
|
84
114
|
? color
|
|
85
|
-
: DEFAULT_STATUSLINE.color
|
|
115
|
+
: DEFAULT_STATUSLINE.color,
|
|
116
|
+
style: style === "bar" || style === "cells" ? style : DEFAULT_STATUSLINE.style,
|
|
117
|
+
show: normalizeShow(value["show"]) ?? DEFAULT_STATUSLINE.show,
|
|
118
|
+
hosts: normalizeHosts(value["hosts"])
|
|
86
119
|
};
|
|
87
120
|
}
|
|
88
121
|
/** One stored key, rendered the way `config get` prints it. */
|
|
@@ -98,7 +131,17 @@ export function statuslineValueText(statusline, key) {
|
|
|
98
131
|
return String(statusline.rows);
|
|
99
132
|
if (key === "bars")
|
|
100
133
|
return statusline.bars ? "true" : "false";
|
|
101
|
-
|
|
134
|
+
if (key === "color")
|
|
135
|
+
return statusline.color;
|
|
136
|
+
if (key === "style")
|
|
137
|
+
return statusline.style;
|
|
138
|
+
if (key === "show") {
|
|
139
|
+
return statusline.show.length === 0 ? "NONE" : statusline.show.join(",");
|
|
140
|
+
}
|
|
141
|
+
const entries = Object.entries(statusline.hosts);
|
|
142
|
+
return entries.length === 0
|
|
143
|
+
? "NONE"
|
|
144
|
+
: entries.map(([h, s]) => h + ":" + s).join(",");
|
|
102
145
|
}
|
|
103
146
|
export function isStatuslineKey(key) {
|
|
104
147
|
return STATUSLINE_KEYS.includes(key);
|
|
@@ -157,10 +200,70 @@ export function setStatuslineValue(statusline, key, value) {
|
|
|
157
200
|
? { ok: true, statusline: { ...statusline, bars: value === "true" } }
|
|
158
201
|
: { ok: false, message: "statusline.bars must be true or false." };
|
|
159
202
|
}
|
|
203
|
+
if (key === "style") {
|
|
204
|
+
return value === "bar" || value === "cells"
|
|
205
|
+
? { ok: true, statusline: { ...statusline, style: value } }
|
|
206
|
+
: { ok: false, message: "statusline.style must be bar or cells." };
|
|
207
|
+
}
|
|
208
|
+
if (key === "show") {
|
|
209
|
+
if (value === "" || value === "NONE" || value === "none") {
|
|
210
|
+
return { ok: true, statusline: { ...statusline, show: [] } };
|
|
211
|
+
}
|
|
212
|
+
const show = normalizeShow(value.split(",").map((entry) => entry.trim()));
|
|
213
|
+
return show === null
|
|
214
|
+
? {
|
|
215
|
+
ok: false,
|
|
216
|
+
message: "statusline.show must be a comma separated list of provider ids or NONE."
|
|
217
|
+
}
|
|
218
|
+
: { ok: true, statusline: { ...statusline, show } };
|
|
219
|
+
}
|
|
220
|
+
if (key === "hosts") {
|
|
221
|
+
if (value === "" || value === "NONE" || value === "none") {
|
|
222
|
+
return { ok: true, statusline: { ...statusline, hosts: {} } };
|
|
223
|
+
}
|
|
224
|
+
const hosts = {};
|
|
225
|
+
for (const pair of value.split(",")) {
|
|
226
|
+
const parts = pair.split(":");
|
|
227
|
+
if (parts.length === 2 && parts[0]?.trim() && parts[1]?.trim()) {
|
|
228
|
+
hosts[parts[0].trim().toLowerCase()] = parts[1].trim();
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
return { ok: true, statusline: { ...statusline, hosts } };
|
|
232
|
+
}
|
|
160
233
|
return value === "auto" || value === "always" || value === "never"
|
|
161
234
|
? { ok: true, statusline: { ...statusline, color: value } }
|
|
162
235
|
: { ok: false, message: "statusline.color must be auto, always, or never." };
|
|
163
236
|
}
|
|
237
|
+
export const DEFAULT_PROVIDERS = { claude: { poll: false } };
|
|
238
|
+
export const PROVIDER_KEYS = ["claude.poll"];
|
|
239
|
+
export function isProviderKey(key) {
|
|
240
|
+
return PROVIDER_KEYS.includes(key);
|
|
241
|
+
}
|
|
242
|
+
export function normalizeProviders(value) {
|
|
243
|
+
if (!isRecord(value))
|
|
244
|
+
return DEFAULT_PROVIDERS;
|
|
245
|
+
const claude = value["claude"];
|
|
246
|
+
const poll = isRecord(claude) ? claude["poll"] : undefined;
|
|
247
|
+
return {
|
|
248
|
+
claude: { poll: typeof poll === "boolean" ? poll : DEFAULT_PROVIDERS.claude.poll }
|
|
249
|
+
};
|
|
250
|
+
}
|
|
251
|
+
export function providerValueText(providers, key) {
|
|
252
|
+
void key;
|
|
253
|
+
return providers.claude.poll ? "true" : "false";
|
|
254
|
+
}
|
|
255
|
+
export function setProviderValue(providers, key, value) {
|
|
256
|
+
if (!isProviderKey(key)) {
|
|
257
|
+
return {
|
|
258
|
+
ok: false,
|
|
259
|
+
message: "unknown providers key. Known keys: " + PROVIDER_KEYS.join(", ") + "."
|
|
260
|
+
};
|
|
261
|
+
}
|
|
262
|
+
if (value !== "true" && value !== "false") {
|
|
263
|
+
return { ok: false, message: "providers.claude.poll must be true or false." };
|
|
264
|
+
}
|
|
265
|
+
return { ok: true, providers: { claude: { poll: value === "true" } } };
|
|
266
|
+
}
|
|
164
267
|
async function rejectSymlink(target) {
|
|
165
268
|
try {
|
|
166
269
|
if ((await lstat(target)).isSymbolicLink())
|
|
@@ -227,7 +330,8 @@ export async function readConfig(directory = resolveStateDirectory()) {
|
|
|
227
330
|
config: {
|
|
228
331
|
version: 1,
|
|
229
332
|
connectors: normalizeConnectors(document.value["connectors"]),
|
|
230
|
-
statusline: normalizeStatusline(document.value["statusline"])
|
|
333
|
+
statusline: normalizeStatusline(document.value["statusline"]),
|
|
334
|
+
providers: normalizeProviders(document.value["providers"])
|
|
231
335
|
}
|
|
232
336
|
};
|
|
233
337
|
}
|
|
@@ -259,7 +363,8 @@ export async function initialize(environment, credentialStore, promptForSecret,
|
|
|
259
363
|
const config = {
|
|
260
364
|
version: 1,
|
|
261
365
|
connectors: connectorRows(environment),
|
|
262
|
-
statusline: existing.ok ? existing.config.statusline : DEFAULT_STATUSLINE
|
|
366
|
+
statusline: existing.ok ? existing.config.statusline : DEFAULT_STATUSLINE,
|
|
367
|
+
providers: existing.ok ? existing.config.providers : DEFAULT_PROVIDERS
|
|
263
368
|
};
|
|
264
369
|
let credentialStored = false;
|
|
265
370
|
const openrouter = config.connectors.find((connector) => connector.id === "openrouter");
|
|
@@ -292,7 +397,24 @@ export function defaultConfig(environment) {
|
|
|
292
397
|
return {
|
|
293
398
|
version: 1,
|
|
294
399
|
connectors: connectorRows(environment),
|
|
295
|
-
statusline: DEFAULT_STATUSLINE
|
|
400
|
+
statusline: DEFAULT_STATUSLINE,
|
|
401
|
+
providers: DEFAULT_PROVIDERS
|
|
296
402
|
};
|
|
297
403
|
}
|
|
404
|
+
/**
|
|
405
|
+
* The providers section, or the defaults, and never an exception.
|
|
406
|
+
*
|
|
407
|
+
* Read on the acquisition path, which runs detached and unattended, so a
|
|
408
|
+
* configuration file that cannot be read must leave the poll where it is
|
|
409
|
+
* safest: off.
|
|
410
|
+
*/
|
|
411
|
+
export async function readProvidersConfig(directory) {
|
|
412
|
+
try {
|
|
413
|
+
const result = await readConfig(directory);
|
|
414
|
+
return result.ok ? result.config.providers : DEFAULT_PROVIDERS;
|
|
415
|
+
}
|
|
416
|
+
catch {
|
|
417
|
+
return DEFAULT_PROVIDERS;
|
|
418
|
+
}
|
|
419
|
+
}
|
|
298
420
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Signing in to the hub, staying signed in, and reading who is signed in.
|
|
3
|
+
*
|
|
4
|
+
* The device flow itself is nothing this build invented: a code and an
|
|
5
|
+
* address are shown, somebody types the code somewhere else, and this process
|
|
6
|
+
* polls until the hub says approved, denied or expired. The hub is the only
|
|
7
|
+
* clock that matters for expiry: it is the one thing that can say the device
|
|
8
|
+
* code has lapsed, so this build never guesses at a deadline of its own. The
|
|
9
|
+
* poll loop still carries a safety ceiling, derived from the hub's own stated
|
|
10
|
+
* lifetime, so a stubbed or misbehaving transport in a test cannot spin it
|
|
11
|
+
* forever.
|
|
12
|
+
*/
|
|
13
|
+
import { type HubTransport } from "./hub.js";
|
|
14
|
+
import { type HubSession } from "./session.js";
|
|
15
|
+
/** The sentence a hub side revocation prints, word for word. */
|
|
16
|
+
export declare const REVOKED_SENTENCE = "Signed out on the hub, run openlimiter login";
|
|
17
|
+
/** The sentence a login code the hub already consumed prints, word for word. */
|
|
18
|
+
export declare const CODE_CONSUMED_SENTENCE = "That code was already used, run openlimiter login again";
|
|
19
|
+
/** Extra polls past the hub's own stated lifetime, before this build gives up. */
|
|
20
|
+
export declare const LOGIN_SAFETY_MARGIN_POLLS = 5;
|
|
21
|
+
/**
|
|
22
|
+
* Whether Ctrl C asked this poll loop to stop.
|
|
23
|
+
*
|
|
24
|
+
* A plain `signal?.aborted === true` reads fine once, but TypeScript narrows
|
|
25
|
+
* that exact expression across the loop body, so a second identical check
|
|
26
|
+
* after an `await` is seen as comparing an already narrowed `false` against
|
|
27
|
+
* `true` and refused as unreachable. A function call has no such memory.
|
|
28
|
+
*/
|
|
29
|
+
export declare function isAborted(signal: AbortSignal | undefined): boolean;
|
|
30
|
+
export interface LoginStart {
|
|
31
|
+
readonly userCode: string;
|
|
32
|
+
readonly deviceCode: string;
|
|
33
|
+
readonly verificationUrl: string;
|
|
34
|
+
readonly intervalSeconds: number;
|
|
35
|
+
readonly expiresInSeconds: number;
|
|
36
|
+
}
|
|
37
|
+
/** Parse the device flow's opening answer, trusting nothing about its shape. */
|
|
38
|
+
export declare function parseLoginStart(body: string): LoginStart | null;
|
|
39
|
+
export type LoginPollOutcome = {
|
|
40
|
+
readonly status: "pending";
|
|
41
|
+
} | {
|
|
42
|
+
readonly status: "slow_down";
|
|
43
|
+
} | {
|
|
44
|
+
readonly status: "denied";
|
|
45
|
+
} | {
|
|
46
|
+
readonly status: "expired";
|
|
47
|
+
} | {
|
|
48
|
+
readonly status: "consumed";
|
|
49
|
+
} | {
|
|
50
|
+
readonly status: "approved";
|
|
51
|
+
readonly token: string;
|
|
52
|
+
readonly expiresAt: string;
|
|
53
|
+
readonly refreshCredential: string;
|
|
54
|
+
readonly refreshExpiresAt: string;
|
|
55
|
+
readonly deviceId: string;
|
|
56
|
+
};
|
|
57
|
+
/** Parse one poll answer, in the five shapes the contract allows. */
|
|
58
|
+
export declare function parseLoginPoll(body: string): LoginPollOutcome | null;
|
|
59
|
+
export interface GrantRenewal {
|
|
60
|
+
readonly token: string;
|
|
61
|
+
readonly expiresAt: string;
|
|
62
|
+
readonly refreshCredential: string;
|
|
63
|
+
readonly refreshExpiresAt: string;
|
|
64
|
+
}
|
|
65
|
+
/** Parse a renewal answer: a fresh token and a rotated refresh credential. */
|
|
66
|
+
export declare function parseGrantRenewal(body: string): GrantRenewal | null;
|
|
67
|
+
/**
|
|
68
|
+
* A human name for the account, read from the token if it carries one.
|
|
69
|
+
*
|
|
70
|
+
* The hub contract names no account label field at all, and a token is the
|
|
71
|
+
* one thing the approved answer definitely carries that could hold one: a
|
|
72
|
+
* JSON Web Token's own payload, unsigned and unverified here because nothing
|
|
73
|
+
* downstream trusts this label for anything but display. A token that is not
|
|
74
|
+
* a JWT, or carries no email claim, falls back to the device id, which is
|
|
75
|
+
* always there and is at least a stable name to look at with `whoami`.
|
|
76
|
+
*/
|
|
77
|
+
export declare function accountLabelFromToken(token: string, fallback: string): string;
|
|
78
|
+
export interface DeviceLoginOptions {
|
|
79
|
+
readonly environment: Readonly<Record<string, string | undefined>>;
|
|
80
|
+
readonly transport: HubTransport;
|
|
81
|
+
readonly sleep: (milliseconds: number) => Promise<void>;
|
|
82
|
+
/** Progress this process wants seen before the command itself returns. */
|
|
83
|
+
readonly emit: (line: string) => void;
|
|
84
|
+
readonly interruptSignal?: AbortSignal;
|
|
85
|
+
readonly openBrowser?: (url: string) => void;
|
|
86
|
+
readonly open: boolean;
|
|
87
|
+
}
|
|
88
|
+
export type DeviceLoginResult = {
|
|
89
|
+
readonly kind: "signed_in";
|
|
90
|
+
readonly session: HubSession;
|
|
91
|
+
} | {
|
|
92
|
+
readonly kind: "cancelled";
|
|
93
|
+
} | {
|
|
94
|
+
readonly kind: "denied";
|
|
95
|
+
} | {
|
|
96
|
+
readonly kind: "expired";
|
|
97
|
+
readonly message?: string;
|
|
98
|
+
} | {
|
|
99
|
+
readonly kind: "not_configured";
|
|
100
|
+
} | {
|
|
101
|
+
readonly kind: "error";
|
|
102
|
+
readonly message: string;
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Run the whole device flow: start, show the code, poll until an ending.
|
|
106
|
+
*
|
|
107
|
+
* `slow_down` widens the interval rather than being treated as a failure,
|
|
108
|
+
* which is the device flow's own documented way of saying "you are polling
|
|
109
|
+
* this endpoint too often". A poll that could not be sent or read is not
|
|
110
|
+
* treated as `denied` either: a network blip inside a three minute window is
|
|
111
|
+
* routine, and the loop tries again next interval rather than ending the
|
|
112
|
+
* whole sign in over it.
|
|
113
|
+
*/
|
|
114
|
+
export declare function runDeviceLogin(options: DeviceLoginOptions): Promise<DeviceLoginResult>;
|
|
115
|
+
export type RenewOutcome = {
|
|
116
|
+
readonly kind: "fresh";
|
|
117
|
+
readonly session: HubSession;
|
|
118
|
+
} | {
|
|
119
|
+
readonly kind: "renewed";
|
|
120
|
+
readonly session: HubSession;
|
|
121
|
+
} | {
|
|
122
|
+
readonly kind: "revoked";
|
|
123
|
+
} | {
|
|
124
|
+
readonly kind: "error";
|
|
125
|
+
};
|
|
126
|
+
/**
|
|
127
|
+
* Make sure a session is good for one more upload, renewing if it is not.
|
|
128
|
+
*
|
|
129
|
+
* A session inside the renewal window is used exactly as it stands: renewing
|
|
130
|
+
* early for no reason spends the one time use refresh credential for nothing.
|
|
131
|
+
* A 401 from the renewal call is read as the hub having revoked this device,
|
|
132
|
+
* never as an ordinary network failure, because the two need different
|
|
133
|
+
* endings: one clears the session and asks for a fresh sign in, the other
|
|
134
|
+
* leaves the session in place and lets the next attempt try again.
|
|
135
|
+
*/
|
|
136
|
+
export declare function ensureFreshSession(session: HubSession, now: string, environment: Readonly<Record<string, string | undefined>>, transport: HubTransport): Promise<RenewOutcome>;
|
|
137
|
+
//# sourceMappingURL=hub-auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hub-auth.d.ts","sourceRoot":"","sources":["../src/hub-auth.ts"],"names":[],"mappings":"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"}
|