@eddyskywalker/dsh-chatgpt-subscription 0.36.0 → 0.36.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/CHANGELOG.md +9 -0
- package/lib/client.js +73 -12
- package/lib/client.js.map +1 -1
- package/lib/index.js +93 -45
- package/lib/types/client/cline-pass/ClinePassComposerQuota.d.ts +5 -2
- package/lib/types/client/cline-pass/ClinePassComposerQuota.d.ts.map +1 -1
- package/lib/types/client/cline-pass/ClinePassSection.d.ts.map +1 -1
- package/lib/types/client/cline-pass/api.d.ts +21 -1
- package/lib/types/client/cline-pass/api.d.ts.map +1 -1
- package/lib/types/host/cline-pass/routes.d.ts +27 -3
- package/lib/types/host/cline-pass/routes.d.ts.map +1 -1
- package/lib/types/shared/cline-pass-contracts.d.ts +7 -0
- package/lib/types/shared/cline-pass-contracts.d.ts.map +1 -1
- package/package.json +1 -1
package/lib/index.js
CHANGED
|
@@ -59564,6 +59564,15 @@ async function readRequestJson$2(request) {
|
|
|
59564
59564
|
function firstLine$2(value, max = 200) {
|
|
59565
59565
|
return String(value ?? "").replace(/\s+/g, " ").trim().slice(0, max);
|
|
59566
59566
|
}
|
|
59567
|
+
/**
|
|
59568
|
+
* Whether the cached snapshot is too old to be trusted as the card's numbers.
|
|
59569
|
+
*
|
|
59570
|
+
* `fetchedAt` is 0 until the first read lands, which counts as stale on
|
|
59571
|
+
* purpose: a card with no numbers at all is the case that most needs the read.
|
|
59572
|
+
*/
|
|
59573
|
+
function usageStale(reading, now, ttlMs) {
|
|
59574
|
+
return reading.fetchedAt <= 0 || now - reading.fetchedAt > ttlMs;
|
|
59575
|
+
}
|
|
59567
59576
|
/** Whether one account can serve a request right now. */
|
|
59568
59577
|
function isUsable$1(account, now) {
|
|
59569
59578
|
if (account.authStatus !== void 0 && account.authStatus !== "ok") return false;
|
|
@@ -59639,8 +59648,15 @@ function projectModels$1(settings, store) {
|
|
|
59639
59648
|
};
|
|
59640
59649
|
});
|
|
59641
59650
|
}
|
|
59642
|
-
/**
|
|
59643
|
-
|
|
59651
|
+
/**
|
|
59652
|
+
* Assemble the whole status payload the Cline Pass tab renders.
|
|
59653
|
+
*
|
|
59654
|
+
* `quotaRefresh` is the single flight the caller refreshes through, when it has
|
|
59655
|
+
* one: passing it is what lets the answer say a refresh is still running behind
|
|
59656
|
+
* it. A caller that only reads (the management tools are one) omits it and gets
|
|
59657
|
+
* the cache alone, which keeps a tool call from spending the line's quota reads.
|
|
59658
|
+
*/
|
|
59659
|
+
async function getClinePassWebStatus(options, quotaRefresh) {
|
|
59644
59660
|
const { settings: settingsStore, accountPool, store } = options;
|
|
59645
59661
|
const settings = await settingsStore.read().catch(() => settingsStore.status());
|
|
59646
59662
|
const data = await accountPool.read().catch(() => null);
|
|
@@ -59676,6 +59692,7 @@ async function getClinePassWebStatus(options) {
|
|
|
59676
59692
|
catalogSynced: settings.catalogModels.length > 0,
|
|
59677
59693
|
catalogCount: settings.catalogModels.length,
|
|
59678
59694
|
usage: store.usage().accounts.length === 0 ? null : store.usage(),
|
|
59695
|
+
quotaRefreshing: quotaRefresh?.refreshing === true,
|
|
59679
59696
|
historySize: store.historySize(),
|
|
59680
59697
|
login: options.login?.current() ?? null,
|
|
59681
59698
|
settings: {
|
|
@@ -59721,10 +59738,60 @@ const CLINE_PASS_ROUTES = {
|
|
|
59721
59738
|
function registerClinePassRoutes(ctx, options) {
|
|
59722
59739
|
const { settings: settingsStore, accountPool, store, engine, fetchFn } = options;
|
|
59723
59740
|
const openBrowser = options.openBrowser ?? (() => void 0);
|
|
59741
|
+
const quotaTtlMs = options.quotaTtlMs ?? 3e5;
|
|
59742
|
+
const quotaRefresh = new QuotaRefresh();
|
|
59724
59743
|
const emitModelsUpdated = () => {
|
|
59725
59744
|
ctx.emit?.("llm/adapters-updated");
|
|
59726
59745
|
};
|
|
59727
|
-
|
|
59746
|
+
/**
|
|
59747
|
+
* Read every usable account's official quota and replace the snapshot.
|
|
59748
|
+
*
|
|
59749
|
+
* Shared by the explicit refresh action and the background one a status read
|
|
59750
|
+
* schedules, so both fan out over the same accounts and write the same shape.
|
|
59751
|
+
* Null means no account can serve right now, which only the explicit action
|
|
59752
|
+
* reports: a background refresh has nobody to tell.
|
|
59753
|
+
*/
|
|
59754
|
+
const refreshUsage = async () => {
|
|
59755
|
+
const enabled = ((await accountPool.read().catch(() => null))?.accounts ?? []).filter((account) => isUsable$1(account, Date.now()));
|
|
59756
|
+
if (enabled.length === 0) return null;
|
|
59757
|
+
const settings = await settingsStore.read();
|
|
59758
|
+
const readings = await Promise.all(enabled.map(async (account) => {
|
|
59759
|
+
const fetchedAt = Date.now();
|
|
59760
|
+
try {
|
|
59761
|
+
const credentials = await accountPool.getFreshCredential(account.id, fetchFn);
|
|
59762
|
+
const baseURL = credentials.baseURL && credentials.baseURL.trim() !== "" ? credentials.baseURL.trim() : settings.baseURL;
|
|
59763
|
+
const result = await fetchUsageLimits({
|
|
59764
|
+
fetchFn,
|
|
59765
|
+
baseURL,
|
|
59766
|
+
apiKey: bearerFor$1(credentials)
|
|
59767
|
+
});
|
|
59768
|
+
return {
|
|
59769
|
+
accountId: account.id,
|
|
59770
|
+
alias: account.alias,
|
|
59771
|
+
ok: result.ok,
|
|
59772
|
+
windows: result.limits.map((limit) => ({
|
|
59773
|
+
type: limit.type,
|
|
59774
|
+
label: clinePassWindowLabel(limit.type),
|
|
59775
|
+
percentUsed: limit.percentUsed,
|
|
59776
|
+
resetsAt: limit.resetsAt
|
|
59777
|
+
})),
|
|
59778
|
+
error: result.error,
|
|
59779
|
+
fetchedAt
|
|
59780
|
+
};
|
|
59781
|
+
} catch (error) {
|
|
59782
|
+
return {
|
|
59783
|
+
accountId: account.id,
|
|
59784
|
+
alias: account.alias,
|
|
59785
|
+
ok: false,
|
|
59786
|
+
windows: [],
|
|
59787
|
+
error: firstLine$2(error instanceof Error ? error.message : error, 240),
|
|
59788
|
+
fetchedAt
|
|
59789
|
+
};
|
|
59790
|
+
}
|
|
59791
|
+
}));
|
|
59792
|
+
return store.setUsage({ accounts: readings });
|
|
59793
|
+
};
|
|
59794
|
+
const status = async () => await getClinePassWebStatus(options, quotaRefresh);
|
|
59728
59795
|
return ctx.webServer.register({
|
|
59729
59796
|
kind: "prefix",
|
|
59730
59797
|
path: CLINE_PASS_ROUTE_PREFIX,
|
|
@@ -59733,10 +59800,13 @@ function registerClinePassRoutes(ctx, options) {
|
|
|
59733
59800
|
const path = url.pathname.replace(/^\/cline-pass\/api\/?/, "");
|
|
59734
59801
|
const method = request.method ?? "GET";
|
|
59735
59802
|
try {
|
|
59736
|
-
if (path === "" || path === "status")
|
|
59737
|
-
|
|
59738
|
-
|
|
59739
|
-
|
|
59803
|
+
if (path === "" || path === "status") {
|
|
59804
|
+
if (method === "GET" && usageStale(store.usage(), Date.now(), quotaTtlMs)) quotaRefresh.start(refreshUsage);
|
|
59805
|
+
return sendJson$2(response, 200, {
|
|
59806
|
+
ok: true,
|
|
59807
|
+
value: await status()
|
|
59808
|
+
});
|
|
59809
|
+
}
|
|
59740
59810
|
if (path === "settings") {
|
|
59741
59811
|
if (method !== "POST") return sendMethodNotAllowed$2(response);
|
|
59742
59812
|
if (!isSameOriginMutation(request)) return sendJson$2(response, 403, {
|
|
@@ -60265,50 +60335,28 @@ function registerClinePassRoutes(ctx, options) {
|
|
|
60265
60335
|
ok: false,
|
|
60266
60336
|
error: "Cross-origin request rejected."
|
|
60267
60337
|
});
|
|
60268
|
-
const
|
|
60269
|
-
|
|
60270
|
-
|
|
60271
|
-
|
|
60272
|
-
|
|
60273
|
-
const settings = await settingsStore.read();
|
|
60274
|
-
const readings = await Promise.all(enabled.map(async (account) => {
|
|
60275
|
-
const fetchedAt = Date.now();
|
|
60338
|
+
const outcome = {
|
|
60339
|
+
reading: null,
|
|
60340
|
+
cause: null
|
|
60341
|
+
};
|
|
60342
|
+
await quotaRefresh.run(async () => {
|
|
60276
60343
|
try {
|
|
60277
|
-
|
|
60278
|
-
const baseURL = credentials.baseURL && credentials.baseURL.trim() !== "" ? credentials.baseURL.trim() : settings.baseURL;
|
|
60279
|
-
const result = await fetchUsageLimits({
|
|
60280
|
-
fetchFn,
|
|
60281
|
-
baseURL,
|
|
60282
|
-
apiKey: bearerFor$1(credentials)
|
|
60283
|
-
});
|
|
60284
|
-
return {
|
|
60285
|
-
accountId: account.id,
|
|
60286
|
-
alias: account.alias,
|
|
60287
|
-
ok: result.ok,
|
|
60288
|
-
windows: result.limits.map((limit) => ({
|
|
60289
|
-
type: limit.type,
|
|
60290
|
-
label: clinePassWindowLabel(limit.type),
|
|
60291
|
-
percentUsed: limit.percentUsed,
|
|
60292
|
-
resetsAt: limit.resetsAt
|
|
60293
|
-
})),
|
|
60294
|
-
error: result.error,
|
|
60295
|
-
fetchedAt
|
|
60296
|
-
};
|
|
60344
|
+
outcome.reading = await refreshUsage();
|
|
60297
60345
|
} catch (error) {
|
|
60298
|
-
|
|
60299
|
-
|
|
60300
|
-
alias: account.alias,
|
|
60301
|
-
ok: false,
|
|
60302
|
-
windows: [],
|
|
60303
|
-
error: firstLine$2(error instanceof Error ? error.message : error, 240),
|
|
60304
|
-
fetchedAt
|
|
60305
|
-
};
|
|
60346
|
+
outcome.cause = error;
|
|
60347
|
+
throw error;
|
|
60306
60348
|
}
|
|
60307
|
-
})
|
|
60349
|
+
});
|
|
60350
|
+
if (outcome.cause !== null) throw outcome.cause;
|
|
60351
|
+
const reading = outcome.reading;
|
|
60352
|
+
if (reading === null) return sendJson$2(response, 400, {
|
|
60353
|
+
ok: false,
|
|
60354
|
+
error: "Every Cline Pass account is disabled, cooling down, or unusable. Enable one first."
|
|
60355
|
+
});
|
|
60308
60356
|
return sendJson$2(response, 200, {
|
|
60309
60357
|
ok: true,
|
|
60310
60358
|
value: {
|
|
60311
|
-
usage:
|
|
60359
|
+
usage: reading,
|
|
60312
60360
|
status: await status()
|
|
60313
60361
|
}
|
|
60314
60362
|
});
|
|
@@ -11,8 +11,11 @@ export interface ClinePassComposerQuotaProps {
|
|
|
11
11
|
*
|
|
12
12
|
* Quota follows the ACCOUNT, and a pool has several. The badge therefore shows
|
|
13
13
|
* the most-consumed window across the accounts the host has already read, which
|
|
14
|
-
* is the one that will stop the next request first
|
|
15
|
-
* read
|
|
14
|
+
* is the one that will stop the next request first. Its own 60 s poll is a plain
|
|
15
|
+
* read, so a poll never fans out one upstream call per account; only an explicit
|
|
16
|
+
* click on the badge asks the host for the forced refresh, the same POST the
|
|
17
|
+
* card's own "refresh usage" button drives — which is exactly what the shared
|
|
18
|
+
* badge's `refresh` argument is for, and what this line used to drop.
|
|
16
19
|
*/
|
|
17
20
|
export declare function ClinePassComposerQuota(props: ClinePassComposerQuotaProps): React.JSX.Element;
|
|
18
21
|
/** The line's own number picker, exported so a test can pin the rule. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClinePassComposerQuota.d.ts","sourceRoot":"","sources":["../../../../src/client/cline-pass/ClinePassComposerQuota.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAA;AAC5F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAkC,KAAK,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAC1G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AAM9E,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAA;IAC7C,kBAAkB,IAAI,IAAI,CAAA;CAC3B;AAED
|
|
1
|
+
{"version":3,"file":"ClinePassComposerQuota.d.ts","sourceRoot":"","sources":["../../../../src/client/cline-pass/ClinePassComposerQuota.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mDAAmD,CAAA;AAC5F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAChD,OAAO,EAAkC,KAAK,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAC1G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAA;AAM9E,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,aAAa,CAAC,mBAAmB,CAAC,CAAA;IAC7C,kBAAkB,IAAI,IAAI,CAAA;CAC3B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,2BAA2B,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAS5F;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,kBAAkB,GAAG,IAAI,EACjC,QAAQ,CAAC,EAAE,MAAM,GAChB,kBAAkB,GAAG,IAAI,CAe3B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClinePassSection.d.ts","sourceRoot":"","sources":["../../../../src/client/cline-pass/ClinePassSection.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ClinePassSection.d.ts","sourceRoot":"","sources":["../../../../src/client/cline-pass/ClinePassSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4D,MAAM,OAAO,CAAA;AAiChF,UAAU,KAAK;IACb,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAA;CAChC;AAoDD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAAC,YAAY,CA40BjE"}
|
|
@@ -10,6 +10,16 @@ export interface ClinePassPinResult {
|
|
|
10
10
|
warnings: string[];
|
|
11
11
|
status: ClinePassWebStatus;
|
|
12
12
|
}
|
|
13
|
+
/**
|
|
14
|
+
* Whether the host is refreshing the quota behind this answer.
|
|
15
|
+
*
|
|
16
|
+
* The field is optional by contract, because a host built before it existed
|
|
17
|
+
* answers without it. Every caller only ever compares it to `true`, so "absent"
|
|
18
|
+
* and "false" read the same — nothing is in flight — and a stale host degrades to
|
|
19
|
+
* plain polling instead of crashing. Kept as one reader so that convention lives
|
|
20
|
+
* in a single place rather than being re-derived at each call site.
|
|
21
|
+
*/
|
|
22
|
+
export declare function quotaRefreshingOf(status: ClinePassWebStatus): boolean;
|
|
13
23
|
/**
|
|
14
24
|
* The Cline Pass settings API, as the card uses it.
|
|
15
25
|
*
|
|
@@ -17,7 +27,17 @@ export interface ClinePassPinResult {
|
|
|
17
27
|
* section uses, so the shared account-pool card and this helper read alike.
|
|
18
28
|
*/
|
|
19
29
|
export declare class ClinePassApi {
|
|
20
|
-
|
|
30
|
+
/**
|
|
31
|
+
* One status read.
|
|
32
|
+
*
|
|
33
|
+
* A plain call is the GET the first paint, the 60 s poll and the composer
|
|
34
|
+
* badge use: it is cheap and never fans out one upstream request per account.
|
|
35
|
+
* `refresh` is the forced path — the same POST /usage the card's own button
|
|
36
|
+
* drives — and the host answers it with `{ usage, status }`; only the status
|
|
37
|
+
* half is returned, because every caller renders a status card rather than the
|
|
38
|
+
* raw quota payload.
|
|
39
|
+
*/
|
|
40
|
+
status(refresh?: boolean): Promise<ClinePassWebStatus>;
|
|
21
41
|
updateSettings(patch: ClinePassSettingsUpdateDto): Promise<ClinePassWebStatus>;
|
|
22
42
|
accountAction(action: ClinePassAccountAction, body?: {
|
|
23
43
|
accountId?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/client/cline-pass/api.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAC/B,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACxB,MAAM,sCAAsC,CAAA;AAI7C,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE;QAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,QAAQ,GAAG,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9F,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,EAAE,kBAAkB,CAAA;CAC3B;AAED;;;;;GAKG;AACH,qBAAa,YAAY;IACvB,MAAM,
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../../src/client/cline-pass/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,11 +6,15 @@
|
|
|
6
6
|
* a channel probe/validate/test pair, the official quota reading and the
|
|
7
7
|
* in-process request history.
|
|
8
8
|
*
|
|
9
|
-
*
|
|
9
|
+
* A status read never waits on Cline: it answers the cached quota snapshot and,
|
|
10
|
+
* when that snapshot is missing or older than the line's TTL, schedules one
|
|
11
|
+
* refresh behind the answer. The explicit refresh action still runs now, but
|
|
12
|
+
* through the same single flight, so the two cannot fan out twice at once.
|
|
10
13
|
*
|
|
11
14
|
* @module dsh-chatgpt-subscription/cline-pass-routes
|
|
12
15
|
*/
|
|
13
16
|
import type { Context } from '@deepseek-ai/cordis';
|
|
17
|
+
import { QuotaRefresh } from '../common/quota-refresh.ts';
|
|
14
18
|
import type { ClinePassAccountPool } from './account-pool.ts';
|
|
15
19
|
import type { ClinePassEngine } from './engine.ts';
|
|
16
20
|
import type { ClinePassStore } from './store.ts';
|
|
@@ -18,6 +22,14 @@ import type { ClinePassLoginManager } from './oauth.ts';
|
|
|
18
22
|
import { type ClinePassModelSettingsStore } from './token-store.ts';
|
|
19
23
|
import { openPlatformBrowser } from '../step-code/routes.ts';
|
|
20
24
|
import { type ClinePassWebStatus } from '../../shared/cline-pass-contracts.ts';
|
|
25
|
+
/**
|
|
26
|
+
* How long a quota snapshot may answer a status read before it is re-read.
|
|
27
|
+
*
|
|
28
|
+
* The card polls status, so this is what keeps the meters moving without a
|
|
29
|
+
* per-poll upstream call: a stale snapshot answers now and is replaced behind
|
|
30
|
+
* the answer.
|
|
31
|
+
*/
|
|
32
|
+
export declare const CLINE_PASS_QUOTA_TTL_MS: number;
|
|
21
33
|
export interface ClinePassRouteOptions {
|
|
22
34
|
settings: ClinePassModelSettingsStore;
|
|
23
35
|
accountPool: ClinePassAccountPool;
|
|
@@ -34,11 +46,23 @@ export interface ClinePassRouteOptions {
|
|
|
34
46
|
openBrowser?: (url: string) => void;
|
|
35
47
|
serving(): boolean;
|
|
36
48
|
conflict(): string | null;
|
|
49
|
+
/**
|
|
50
|
+
* How old a cached quota snapshot may get before a status read refreshes it
|
|
51
|
+
* behind the answer; defaults to {@link CLINE_PASS_QUOTA_TTL_MS}.
|
|
52
|
+
*/
|
|
53
|
+
quotaTtlMs?: number;
|
|
37
54
|
}
|
|
38
55
|
/** Named browser opener for deployments that want the host to launch the verification URL. */
|
|
39
56
|
export declare const openClinePassBrowser: typeof openPlatformBrowser;
|
|
40
|
-
/**
|
|
41
|
-
|
|
57
|
+
/**
|
|
58
|
+
* Assemble the whole status payload the Cline Pass tab renders.
|
|
59
|
+
*
|
|
60
|
+
* `quotaRefresh` is the single flight the caller refreshes through, when it has
|
|
61
|
+
* one: passing it is what lets the answer say a refresh is still running behind
|
|
62
|
+
* it. A caller that only reads (the management tools are one) omits it and gets
|
|
63
|
+
* the cache alone, which keeps a tool call from spending the line's quota reads.
|
|
64
|
+
*/
|
|
65
|
+
export declare function getClinePassWebStatus(options: ClinePassRouteOptions, quotaRefresh?: QuotaRefresh): Promise<ClinePassWebStatus>;
|
|
42
66
|
/** The route table, exported so the client and this file can be checked against each other. */
|
|
43
67
|
export declare const CLINE_PASS_ROUTES: {
|
|
44
68
|
readonly status: "GET";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../src/host/cline-pass/routes.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../src/host/cline-pass/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAIzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAA;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAChD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AACvD,OAAO,EAA0C,KAAK,2BAA2B,EAAE,MAAM,kBAAkB,CAAA;AAE3G,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,EAiBL,KAAK,kBAAkB,EACxB,MAAM,sCAAsC,CAAA;AAgC7C;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,QAAgB,CAAA;AA8FpD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,2BAA2B,CAAA;IACrC,WAAW,EAAE,oBAAoB,CAAA;IACjC,KAAK,EAAE,cAAc,CAAA;IACrB,MAAM,EAAE,eAAe,CAAA;IACvB,kEAAkE;IAClE,OAAO,EAAE,OAAO,KAAK,CAAA;IACrB,qEAAqE;IACrE,KAAK,CAAC,EAAE,qBAAqB,CAAA;IAC7B;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC,OAAO,IAAI,OAAO,CAAA;IAClB,QAAQ,IAAI,MAAM,GAAG,IAAI,CAAA;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,8FAA8F;AAC9F,eAAO,MAAM,oBAAoB,4BAAsB,CAAA;AAEvD;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,qBAAqB,EAC9B,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,kBAAkB,CAAC,CAmD7B;AAwBD,+FAA+F;AAC/F,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;CAAS,CAAA;AAEvC;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,qBAAqB,GAAG,MAAM,IAAI,CAsgBhG"}
|
|
@@ -127,6 +127,13 @@ export interface ClinePassWebStatus {
|
|
|
127
127
|
catalogSynced: boolean;
|
|
128
128
|
catalogCount: number;
|
|
129
129
|
usage: ClinePassUsageDto | null;
|
|
130
|
+
/**
|
|
131
|
+
* Whether a quota refresh is running behind this answer.
|
|
132
|
+
*
|
|
133
|
+
* `usage` above is the cache, not a live read; a client that sees this should
|
|
134
|
+
* read the status again shortly rather than treat the numbers as final.
|
|
135
|
+
*/
|
|
136
|
+
quotaRefreshing?: boolean;
|
|
130
137
|
historySize: number;
|
|
131
138
|
/** Latest device-code flow in this process, or null when none was started. */
|
|
132
139
|
login: ClinePassLoginFlowDto | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cline-pass-contracts.d.ts","sourceRoot":"","sources":["../../../src/shared/cline-pass-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,uBAAuB,EACvB,mBAAmB,EAEnB,qBAAqB,EACtB,MAAM,6BAA6B,CAAA;AAEpC;;;;;;;;GAQG;AAEH,eAAO,MAAM,sBAAsB,eAAe,CAAA;AAClD,eAAO,MAAM,wBAAwB,eAAe,CAAA;AACpD,eAAO,MAAM,uBAAuB,oBAAoB,CAAA;AAExD,oEAAoE;AACpE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,WAAW,CAAA;AAErD,gEAAgE;AAChE,MAAM,WAAW,0BAA0B;IACzC,QAAQ,EAAE,MAAM,CAAA;IAChB;;wCAEoC;IACpC,MAAM,EAAE,IAAI,GAAG,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,aAAa,GAAG,SAAS,CAAA;IACrE,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,kDAAkD;IAClD,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,gFAAgF;AAChF,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,wEAAwE;IACxE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,CAAA;IACrB,gEAAgE;IAChE,oBAAoB,EAAE,MAAM,CAAA;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,OAAO,CAAA;IAClB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,6DAA6D;IAC7D,OAAO,EAAE,OAAO,CAAA;IAChB,oFAAoF;IACpF,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,OAAO,EAAE,gBAAgB,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,qDAAqD;IACrD,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,cAAc,EAAE,0BAA0B,EAAE,CAAA;IAC5C,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,gFAAgF;IAChF,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAC/B;AAED,yEAAyE;AACzE,MAAM,WAAW,uBAAuB;IACtC,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,gFAAgF;IAChF,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,0CAA0C;AAC1C,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,OAAO,CAAA;IACX,OAAO,EAAE,uBAAuB,EAAE,CAAA;IAClC,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,+EAA+E;AAC/E,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,wBAAwB,EAAE,CAAA;IACpC,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,gFAAgF;AAChF,MAAM,WAAW,0BAA2B,SAAQ,qBAAqB;IACvE,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAC/B;AAED,qEAAqE;AACrE,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,CAAA;IAChE,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,MAAM,CAAA;IACvB,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAA;IACjB,8CAA8C;IAC9C,eAAe,EAAE,MAAM,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,6CAA6C;IAC7C,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,0BAA0B,EAAE,CAAA;IACtC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,gBAAgB,EAAE,uBAAuB,CAAA;CAC1C;AAED,mEAAmE;AACnE,MAAM,WAAW,kBAAkB;IACjC,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;IACf,oDAAoD;IACpD,OAAO,EAAE,OAAO,CAAA;IAChB,6EAA6E;IAC7E,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,kFAAkF;IAClF,WAAW,EAAE,OAAO,CAAA;IACpB,kEAAkE;IAClE,MAAM,EAAE,OAAO,CAAA;IACf,yEAAyE;IACzE,aAAa,EAAE,OAAO,CAAA;IACtB,IAAI,EAAE,sBAAsB,CAAA;IAC5B,MAAM,EAAE,iBAAiB,EAAE,CAAA;IAC3B,iFAAiF;IACjF,aAAa,EAAE,OAAO,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAA;IAC/B,WAAW,EAAE,MAAM,CAAA;IACnB,8EAA8E;IAC9E,KAAK,EAAE,qBAAqB,GAAG,IAAI,CAAA;IACnC,QAAQ,EAAE,oBAAoB,CAAA;CAC/B;AAED,qDAAqD;AACrD,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAA;IACf,oBAAoB,EAAE,MAAM,CAAA;IAC5B,gBAAgB,EAAE,MAAM,CAAA;IACxB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,OAAO,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,sDAAsD;AACtD,MAAM,WAAW,0BAA0B;IACzC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED,wEAAwE;AACxE,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,OAAO,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,kBAAkB,EAAE,MAAM,EAAE,CAAA;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB;AAED,2DAA2D;AAC3D,MAAM,WAAW,0BAA0B;IACzC,EAAE,EAAE,OAAO,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAA;IACpF,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;CAC1E;AAED,2DAA2D;AAC3D,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb;AAED,4DAA4D;AAC5D,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,OAAO,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,EAAE,wBAAwB,EAAE,CAAA;CAClC;AAED,iDAAiD;AACjD,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,OAAO,CAAA;IACtB,KAAK,EAAE;QACL,WAAW,EAAE,MAAM,CAAA;QACnB,YAAY,EAAE,MAAM,CAAA;QACpB,eAAe,EAAE,MAAM,CAAA;QACvB,eAAe,EAAE,MAAM,CAAA;KACxB,CAAA;IACD,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAA;CACnB;AAED,mEAAmE;AACnE,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,OAAO,CAAA;IACX,UAAU,EAAE,OAAO,CAAA;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;CACd;AAED,6CAA6C;AAC7C,MAAM,MAAM,sBAAsB,GAC9B,KAAK,GACL,MAAM,GACN,aAAa,GACb,WAAW,GACX,QAAQ,GACR,gBAAgB,GAChB,UAAU,CAAA;AAEd,wEAAwE;AACxE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAE5E;AAED,2DAA2D;AAC3D,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOzD;AAED,sEAAsE;AACtE,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAO5E;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,wBAAwB,GAAG,SAAS,GAAG,mBAAmB,GAAG,SAAS,CAiBpH"}
|
|
1
|
+
{"version":3,"file":"cline-pass-contracts.d.ts","sourceRoot":"","sources":["../../../src/shared/cline-pass-contracts.ts"],"names":[],"mappings":"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"}
|