@vibes.diy/api-svc 14.1.28 → 14.1.30
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/create-handler.d.ts +2 -0
- package/create-handler.js +1 -0
- package/create-handler.js.map +1 -1
- package/intern/backend-connections-callback.js +15 -12
- package/intern/backend-connections-callback.js.map +1 -1
- package/intern/connections-providers.d.ts +5 -2
- package/intern/connections-providers.js +58 -18
- package/intern/connections-providers.js.map +1 -1
- package/intern/stored-screenshot.d.ts +7 -0
- package/intern/stored-screenshot.js +12 -0
- package/intern/stored-screenshot.js.map +1 -0
- package/package.json +11 -11
- package/public/connections-status.js +1 -1
- package/public/connections-status.js.map +1 -1
- package/public/connections-store.d.ts +8 -3
- package/public/connections-store.js +14 -7
- package/public/connections-store.js.map +1 -1
- package/public/github-setup.d.ts +1 -0
- package/public/github-setup.js +9 -6
- package/public/github-setup.js.map +1 -1
- package/public/screenshot-serve-gate.d.ts +1 -0
- package/public/screenshot-serve-gate.js +4 -0
- package/public/screenshot-serve-gate.js.map +1 -0
- package/public/serv-entry-point.js +27 -25
- package/public/serv-entry-point.js.map +1 -1
- package/public/vibe-screenshot-private.d.ts +7 -0
- package/public/vibe-screenshot-private.js +90 -0
- package/public/vibe-screenshot-private.js.map +1 -0
- package/types.d.ts +2 -0
- package/types.js.map +1 -1
- package/usage-report/inspect-db-util.d.ts +5 -0
- package/usage-report/inspect-db-util.js +18 -0
- package/usage-report/inspect-db-util.js.map +1 -0
- package/usage-report/inspect-db.js +3 -2
- package/usage-report/inspect-db.js.map +1 -1
- package/vibes-req-res-evento.js +2 -1
- package/vibes-req-res-evento.js.map +1 -1
package/create-handler.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ import { LLMRequest } from "@vibes.diy/call-ai-v2";
|
|
|
5
5
|
import { BillingIf } from "./billing.js";
|
|
6
6
|
import { WSSendProvider } from "./svc-ws-send-provider.js";
|
|
7
7
|
import { CfCacheIf, VibesApiSQLCtx } from "./types.js";
|
|
8
|
+
import type { VerifySessionToken } from "./public/github-setup.js";
|
|
8
9
|
import type { BackendControlPlaneIf, BackendOwnerApiFetch } from "./intern/backend-do-control-plane.js";
|
|
9
10
|
import { type AccessDescriptor, type UserContext, type EvtViewerGrantsChanged, type EvtRequestGrant, type EvtSocialEdge, type EvtUserNotification, type ReqMintFire, type RegisterPushTokenRequest, LLMHeaders, MsgBase, S3Api, type WorkerLoaderBinding } from "@vibes.diy/api-types";
|
|
10
11
|
import { CreateSQLPeerParams, VibesSqlite } from "@vibes.diy/api-sql";
|
|
@@ -105,6 +106,7 @@ export interface CreateHandlerParams<T extends VibesSqlite> {
|
|
|
105
106
|
accessFnSourceCache?: Map<string, string>;
|
|
106
107
|
backendControlPlane?: BackendControlPlaneIf;
|
|
107
108
|
backendOwnerApiFetch?: BackendOwnerApiFetch;
|
|
109
|
+
verifySessionToken?: VerifySessionToken;
|
|
108
110
|
}
|
|
109
111
|
export interface SVCParam {
|
|
110
112
|
readonly bindPromise?: BindPromise<Result<TriggerResult<unknown, unknown, unknown>>>;
|
package/create-handler.js
CHANGED
|
@@ -233,6 +233,7 @@ export async function createAppContext(params) {
|
|
|
233
233
|
posthogHost: envVals.POSTHOG_HOST,
|
|
234
234
|
prodiaToken: envVals.PRODIA_TOKEN,
|
|
235
235
|
clerkSecretKey: envVals.CLERK_SECRET_KEY,
|
|
236
|
+
verifySessionToken: params.verifySessionToken,
|
|
236
237
|
metaAccessToken: envVals.META_ACCESS_TOKEN,
|
|
237
238
|
metaCapiToken: envVals.META_CAPI_TOKEN,
|
|
238
239
|
metaAdAccountId: envVals.META_AD_ACCOUNT_ID,
|
package/create-handler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-handler.js","sourceRoot":"","sources":["../jsr/create-handler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create-handler.js","sourceRoot":"","sources":["../jsr/create-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { and, eq } from "drizzle-orm";
|
|
2
2
|
import { exception2Result, TxtEnDecoderSingleton } from "@adviser/cement";
|
|
3
3
|
import { CONNECTION_PROVIDERS } from "./connections-providers.js";
|
|
4
|
-
import { markGrantDead, readConnectionStatus } from "../public/connections-store.js";
|
|
4
|
+
import { markGrantDead, readConnectionStatus, unpackScopes } from "../public/connections-store.js";
|
|
5
5
|
const MAX_BODY_BYTES = 1024 * 1024;
|
|
6
6
|
function normalizeProviderUrl(provider, path) {
|
|
7
7
|
if (path.startsWith("/") === false)
|
|
@@ -28,15 +28,12 @@ function normalizeProviderUrl(provider, path) {
|
|
|
28
28
|
return undefined;
|
|
29
29
|
return u;
|
|
30
30
|
}
|
|
31
|
-
const
|
|
31
|
+
const TRANSPORTABLE_METHODS = new Set(["GET", "POST", "PUT", "PATCH", "DELETE"]);
|
|
32
32
|
const DENIED_REQUEST_HEADERS = new Set(["authorization", "cookie", "user-agent", "host", "content-length"]);
|
|
33
33
|
const refuse = (reason) => ({ ok: false, reason });
|
|
34
34
|
function byteLength(s) {
|
|
35
35
|
return TxtEnDecoderSingleton().encode(s).length;
|
|
36
36
|
}
|
|
37
|
-
function unpackScopes(packed) {
|
|
38
|
-
return packed.split(/\s+/).filter((s) => s !== "");
|
|
39
|
-
}
|
|
40
37
|
export function makeBackendConnectionsCallback(vctx, base) {
|
|
41
38
|
async function resolveActingUserId() {
|
|
42
39
|
const actingHandle = base.actingUserHandle;
|
|
@@ -62,7 +59,13 @@ export function makeBackendConnectionsCallback(vctx, base) {
|
|
|
62
59
|
if (userId === undefined)
|
|
63
60
|
return { ok: true, kind: "status", state: "absent", consented: false };
|
|
64
61
|
const nowMs = base.nowMs === undefined ? Date.now() : base.nowMs();
|
|
65
|
-
const st = await readConnectionStatus({ db: vctx.sql.db, tables: vctx.sql.tables }, {
|
|
62
|
+
const st = await readConnectionStatus({ db: vctx.sql.db, tables: vctx.sql.tables }, {
|
|
63
|
+
userId,
|
|
64
|
+
provider: providerKey,
|
|
65
|
+
ownerHandle: base.ownerHandle,
|
|
66
|
+
appSlug: base.appSlug,
|
|
67
|
+
requiredScopes: declaration.scopes,
|
|
68
|
+
}, nowMs);
|
|
66
69
|
return {
|
|
67
70
|
ok: true,
|
|
68
71
|
kind: "status",
|
|
@@ -82,16 +85,16 @@ export function makeBackendConnectionsCallback(vctx, base) {
|
|
|
82
85
|
: undefined;
|
|
83
86
|
if (provider === undefined)
|
|
84
87
|
return refuse("unknown_provider");
|
|
88
|
+
const method = typeof op?.method === "string" ? op.method.toUpperCase() : "GET";
|
|
89
|
+
if (TRANSPORTABLE_METHODS.has(method) === false)
|
|
90
|
+
return refuse("unsupported_method");
|
|
85
91
|
const path = typeof op?.path === "string" ? op.path : "";
|
|
86
92
|
const url = normalizeProviderUrl(provider, path);
|
|
87
|
-
const requiredScope = url === undefined ? undefined : provider.requiredScopeFor(url.pathname);
|
|
93
|
+
const requiredScope = url === undefined ? undefined : provider.requiredScopeFor(url.pathname, method);
|
|
88
94
|
if (url === undefined || requiredScope === undefined)
|
|
89
95
|
return refuse("unmodeled_endpoint");
|
|
90
96
|
if (declaration.scopes.includes(requiredScope) === false)
|
|
91
97
|
return refuse("scope_not_declared");
|
|
92
|
-
const method = typeof op?.method === "string" ? op.method.toUpperCase() : "GET";
|
|
93
|
-
if (ALLOWED_METHODS.has(method) === false)
|
|
94
|
-
return refuse("unsupported_method");
|
|
95
98
|
const body = typeof op?.body === "string" ? op.body : undefined;
|
|
96
99
|
if (op?.body !== undefined && op?.body !== null && body === undefined)
|
|
97
100
|
return refuse("streaming_unsupported");
|
|
@@ -113,7 +116,7 @@ export function makeBackendConnectionsCallback(vctx, base) {
|
|
|
113
116
|
return refuse("needs_consent");
|
|
114
117
|
const t_g = vctx.sql.tables.thirdPartyGrants;
|
|
115
118
|
const grant = await vctx.sql.db
|
|
116
|
-
.select({ accessToken: t_g.accessToken, status: t_g.status, expiresAt: t_g.expiresAt })
|
|
119
|
+
.select({ accessToken: t_g.accessToken, status: t_g.status, expiresAt: t_g.expiresAt, rev: t_g.rev })
|
|
117
120
|
.from(t_g)
|
|
118
121
|
.where(and(eq(t_g.userId, userId), eq(t_g.provider, providerKey), eq(t_g.revokedAt, "")))
|
|
119
122
|
.limit(1)
|
|
@@ -151,7 +154,7 @@ export function makeBackendConnectionsCallback(vctx, base) {
|
|
|
151
154
|
return refuse("upstream_error");
|
|
152
155
|
const text = rText.Ok();
|
|
153
156
|
if (provider.isCredentialRefusal(res.status, text)) {
|
|
154
|
-
const rMark = await exception2Result(() => markGrantDead({ db: vctx.sql.db, tables: vctx.sql.tables }, { userId, provider: providerKey,
|
|
157
|
+
const rMark = await exception2Result(() => markGrantDead({ db: vctx.sql.db, tables: vctx.sql.tables }, { userId, provider: providerKey, expectedRev: grant.rev, nowMs }));
|
|
155
158
|
if (rMark.isErr()) {
|
|
156
159
|
console.error(`[connections] could not mark ${providerKey} grant dead:`, rMark.Err().message);
|
|
157
160
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backend-connections-callback.js","sourceRoot":"","sources":["../../jsr/intern/backend-connections-callback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAW1E,OAAO,EAAE,oBAAoB,EAA2B,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"backend-connections-callback.js","sourceRoot":"","sources":["../../jsr/intern/backend-connections-callback.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,8 +22,11 @@ export interface ConnectionProvider {
|
|
|
22
22
|
readonly apiOrigin: string;
|
|
23
23
|
readonly userAgent: string;
|
|
24
24
|
readonly defaultAccept: string;
|
|
25
|
-
readonly requiredScopeFor: (pathname: string) => string | undefined;
|
|
26
|
-
readonly
|
|
25
|
+
readonly requiredScopeFor: (pathname: string, method: string) => string | undefined;
|
|
26
|
+
readonly scopeProbes: readonly {
|
|
27
|
+
readonly path: string;
|
|
28
|
+
readonly method: string;
|
|
29
|
+
}[];
|
|
27
30
|
readonly safeResponseHeaders: readonly string[];
|
|
28
31
|
readonly isCredentialRefusal: (status: number, body: string) => boolean;
|
|
29
32
|
readonly oauth: ConnectionOAuthPolicy;
|
|
@@ -24,7 +24,9 @@ export const CONNECTION_PROVIDERS = Object.freeze({
|
|
|
24
24
|
apiOrigin: "https://api.github.com",
|
|
25
25
|
userAgent: "vibes.diy-connections",
|
|
26
26
|
defaultAccept: "application/vnd.github+json",
|
|
27
|
-
requiredScopeFor: (pathname) => {
|
|
27
|
+
requiredScopeFor: (pathname, method) => {
|
|
28
|
+
if (method !== "GET")
|
|
29
|
+
return undefined;
|
|
28
30
|
if (pathname === "/user")
|
|
29
31
|
return "read:user";
|
|
30
32
|
if (pathname === "/user/repos")
|
|
@@ -33,7 +35,11 @@ export const CONNECTION_PROVIDERS = Object.freeze({
|
|
|
33
35
|
return GITHUB_REPO_READ_SCOPE;
|
|
34
36
|
return undefined;
|
|
35
37
|
},
|
|
36
|
-
|
|
38
|
+
scopeProbes: Object.freeze([
|
|
39
|
+
Object.freeze({ path: "/user", method: "GET" }),
|
|
40
|
+
Object.freeze({ path: "/user/repos", method: "GET" }),
|
|
41
|
+
Object.freeze({ path: "/repos/octocat/hello-world", method: "GET" }),
|
|
42
|
+
]),
|
|
37
43
|
safeResponseHeaders: Object.freeze([
|
|
38
44
|
"content-type",
|
|
39
45
|
"etag",
|
|
@@ -67,14 +73,29 @@ export const CONNECTION_PROVIDERS = Object.freeze({
|
|
|
67
73
|
apiOrigin: "https://graph.threads.com",
|
|
68
74
|
userAgent: "vibes.diy-connections",
|
|
69
75
|
defaultAccept: "application/json",
|
|
70
|
-
requiredScopeFor: (pathname) => {
|
|
71
|
-
if (
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
76
|
+
requiredScopeFor: (pathname, method) => {
|
|
77
|
+
if (method === "GET") {
|
|
78
|
+
if (pathname === "/v1.0/me")
|
|
79
|
+
return "threads_basic";
|
|
80
|
+
if (pathname === "/v1.0/me/threads")
|
|
81
|
+
return "threads_basic";
|
|
82
|
+
return undefined;
|
|
83
|
+
}
|
|
84
|
+
if (method === "POST") {
|
|
85
|
+
if (pathname === "/v1.0/me/threads")
|
|
86
|
+
return "threads_content_publish";
|
|
87
|
+
if (pathname === "/v1.0/me/threads_publish")
|
|
88
|
+
return "threads_content_publish";
|
|
89
|
+
return undefined;
|
|
90
|
+
}
|
|
75
91
|
return undefined;
|
|
76
92
|
},
|
|
77
|
-
|
|
93
|
+
scopeProbes: Object.freeze([
|
|
94
|
+
Object.freeze({ path: "/v1.0/me", method: "GET" }),
|
|
95
|
+
Object.freeze({ path: "/v1.0/me/threads", method: "GET" }),
|
|
96
|
+
Object.freeze({ path: "/v1.0/me/threads", method: "POST" }),
|
|
97
|
+
Object.freeze({ path: "/v1.0/me/threads_publish", method: "POST" }),
|
|
98
|
+
]),
|
|
78
99
|
safeResponseHeaders: Object.freeze(["content-type", "etag", "last-modified", "location", "retry-after"]),
|
|
79
100
|
isCredentialRefusal: metaCredentialRefusal,
|
|
80
101
|
oauth: Object.freeze({
|
|
@@ -99,14 +120,29 @@ export const CONNECTION_PROVIDERS = Object.freeze({
|
|
|
99
120
|
apiOrigin: "https://graph.instagram.com",
|
|
100
121
|
userAgent: "vibes.diy-connections",
|
|
101
122
|
defaultAccept: "application/json",
|
|
102
|
-
requiredScopeFor: (pathname) => {
|
|
103
|
-
if (
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
123
|
+
requiredScopeFor: (pathname, method) => {
|
|
124
|
+
if (method === "GET") {
|
|
125
|
+
if (pathname === "/v23.0/me")
|
|
126
|
+
return "instagram_business_basic";
|
|
127
|
+
if (pathname === "/v23.0/me/media")
|
|
128
|
+
return "instagram_business_basic";
|
|
129
|
+
return undefined;
|
|
130
|
+
}
|
|
131
|
+
if (method === "POST") {
|
|
132
|
+
if (pathname === "/v23.0/me/media")
|
|
133
|
+
return "instagram_business_content_publish";
|
|
134
|
+
if (pathname === "/v23.0/me/media_publish")
|
|
135
|
+
return "instagram_business_content_publish";
|
|
136
|
+
return undefined;
|
|
137
|
+
}
|
|
107
138
|
return undefined;
|
|
108
139
|
},
|
|
109
|
-
|
|
140
|
+
scopeProbes: Object.freeze([
|
|
141
|
+
Object.freeze({ path: "/v23.0/me", method: "GET" }),
|
|
142
|
+
Object.freeze({ path: "/v23.0/me/media", method: "GET" }),
|
|
143
|
+
Object.freeze({ path: "/v23.0/me/media", method: "POST" }),
|
|
144
|
+
Object.freeze({ path: "/v23.0/me/media_publish", method: "POST" }),
|
|
145
|
+
]),
|
|
110
146
|
safeResponseHeaders: Object.freeze(["content-type", "etag", "last-modified", "location", "retry-after"]),
|
|
111
147
|
isCredentialRefusal: metaCredentialRefusal,
|
|
112
148
|
oauth: Object.freeze({
|
|
@@ -131,12 +167,14 @@ export const CONNECTION_PROVIDERS = Object.freeze({
|
|
|
131
167
|
apiOrigin: "https://open.tiktokapis.com",
|
|
132
168
|
userAgent: "vibes.diy-connections",
|
|
133
169
|
defaultAccept: "application/json",
|
|
134
|
-
requiredScopeFor: (pathname) => {
|
|
170
|
+
requiredScopeFor: (pathname, method) => {
|
|
171
|
+
if (method !== "GET")
|
|
172
|
+
return undefined;
|
|
135
173
|
if (pathname === "/v2/user/info/")
|
|
136
174
|
return "user.info.basic";
|
|
137
175
|
return undefined;
|
|
138
176
|
},
|
|
139
|
-
|
|
177
|
+
scopeProbes: Object.freeze([Object.freeze({ path: "/v2/user/info/", method: "GET" })]),
|
|
140
178
|
safeResponseHeaders: Object.freeze(["content-type", "etag", "last-modified", "location", "retry-after"]),
|
|
141
179
|
isCredentialRefusal: tiktokCredentialRefusal,
|
|
142
180
|
oauth: Object.freeze({
|
|
@@ -154,12 +192,14 @@ export const CONNECTION_PROVIDERS = Object.freeze({
|
|
|
154
192
|
apiOrigin: "https://api.linkedin.com",
|
|
155
193
|
userAgent: "vibes.diy-connections",
|
|
156
194
|
defaultAccept: "application/json",
|
|
157
|
-
requiredScopeFor: (pathname) => {
|
|
195
|
+
requiredScopeFor: (pathname, method) => {
|
|
196
|
+
if (method !== "GET")
|
|
197
|
+
return undefined;
|
|
158
198
|
if (pathname === "/v2/userinfo")
|
|
159
199
|
return "profile";
|
|
160
200
|
return undefined;
|
|
161
201
|
},
|
|
162
|
-
|
|
202
|
+
scopeProbes: Object.freeze([Object.freeze({ path: "/v2/userinfo", method: "GET" })]),
|
|
163
203
|
safeResponseHeaders: Object.freeze(["content-type", "location", "retry-after", "x-li-uuid", "x-restli-gateway-error"]),
|
|
164
204
|
isCredentialRefusal: linkedinCredentialRefusal,
|
|
165
205
|
oauth: Object.freeze({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connections-providers.js","sourceRoot":"","sources":["../../jsr/intern/connections-providers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"connections-providers.js","sourceRoot":"","sources":["../../jsr/intern/connections-providers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type MetaItem } from "@vibes.diy/api-types";
|
|
2
|
+
import type { VibesApiSQLCtx } from "../types.js";
|
|
3
|
+
export interface StoredScreenshot {
|
|
4
|
+
readonly mime: string;
|
|
5
|
+
readonly body: ArrayBuffer;
|
|
6
|
+
}
|
|
7
|
+
export declare function loadStoredScreenshot(vctx: VibesApiSQLCtx, meta: MetaItem[] | undefined): Promise<StoredScreenshot | undefined>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { isFetchOkResult, isMetaScreenShot } from "@vibes.diy/api-types";
|
|
2
|
+
export async function loadStoredScreenshot(vctx, meta) {
|
|
3
|
+
const shot = (meta ?? []).find(isMetaScreenShot);
|
|
4
|
+
if (shot === undefined)
|
|
5
|
+
return undefined;
|
|
6
|
+
const fetched = await vctx.storage.fetch(shot.assetUrl);
|
|
7
|
+
if (isFetchOkResult(fetched) === false)
|
|
8
|
+
return undefined;
|
|
9
|
+
const body = await new Response(fetched.data).arrayBuffer();
|
|
10
|
+
return { mime: shot.mime, body };
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=stored-screenshot.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stored-screenshot.js","sourceRoot":"","sources":["../../jsr/intern/stored-screenshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAiB,MAAM,sBAAsB,CAAC;AAuBxF,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAoB,EACpB,IAA4B;IAE5B,MAAM,IAAI,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjD,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxD,IAAI,eAAe,CAAC,OAAO,CAAC,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC;IACzD,MAAM,IAAI,GAAG,MAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5D,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;AACnC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vibes.diy/api-svc",
|
|
3
|
-
"version": "14.1.
|
|
3
|
+
"version": "14.1.30",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./index.js",
|
|
@@ -32,18 +32,18 @@
|
|
|
32
32
|
"@libsql/client": "~0.18.0",
|
|
33
33
|
"@neondatabase/serverless": "~1.1.0",
|
|
34
34
|
"@noble/hashes": "~2.3.0",
|
|
35
|
-
"@vibes.diy/api-pkg": "14.1.
|
|
36
|
-
"@vibes.diy/api-sql": "14.1.
|
|
37
|
-
"@vibes.diy/api-types": "14.1.
|
|
38
|
-
"@vibes.diy/call-ai-v2": "14.1.
|
|
39
|
-
"@vibes.diy/identity": "14.1.
|
|
40
|
-
"@vibes.diy/prompts": "14.1.
|
|
41
|
-
"@vibes.diy/vibe-db-explorer": "14.1.
|
|
42
|
-
"@vibes.diy/vibe-runtime": "14.1.
|
|
43
|
-
"@vibes.diy/vibe-types": "14.1.
|
|
35
|
+
"@vibes.diy/api-pkg": "14.1.30",
|
|
36
|
+
"@vibes.diy/api-sql": "14.1.30",
|
|
37
|
+
"@vibes.diy/api-types": "14.1.30",
|
|
38
|
+
"@vibes.diy/call-ai-v2": "14.1.30",
|
|
39
|
+
"@vibes.diy/identity": "14.1.30",
|
|
40
|
+
"@vibes.diy/prompts": "14.1.30",
|
|
41
|
+
"@vibes.diy/vibe-db-explorer": "14.1.30",
|
|
42
|
+
"@vibes.diy/vibe-runtime": "14.1.30",
|
|
43
|
+
"@vibes.diy/vibe-types": "14.1.30",
|
|
44
44
|
"acorn": "~8.17.0",
|
|
45
45
|
"arktype": "~2.2.3",
|
|
46
|
-
"call-ai": "14.1.
|
|
46
|
+
"call-ai": "14.1.30",
|
|
47
47
|
"charwise": "~3.0.1",
|
|
48
48
|
"cookie": "~2.0.1",
|
|
49
49
|
"csv-parse": "~7.0.2",
|
|
@@ -30,7 +30,7 @@ export async function handleConnectionsStatus(request, deps) {
|
|
|
30
30
|
if (userId === undefined) {
|
|
31
31
|
return jsonResponse({ ...declarationHalf, state: "absent", ...(accountScoped ? {} : { consented: false }) }, 200);
|
|
32
32
|
}
|
|
33
|
-
const status = await readConnectionStatus({ db: deps.vctx.sql.db, tables: deps.vctx.sql.tables }, { userId, provider, ownerHandle: owner, appSlug: slug }, deps.nowMs ?? Date.now());
|
|
33
|
+
const status = await readConnectionStatus({ db: deps.vctx.sql.db, tables: deps.vctx.sql.tables }, { userId, provider, ownerHandle: owner, appSlug: slug, requiredScopes: decl?.scopes ?? [] }, deps.nowMs ?? Date.now());
|
|
34
34
|
return jsonResponse({
|
|
35
35
|
...declarationHalf,
|
|
36
36
|
state: status.state,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connections-status.js","sourceRoot":"","sources":["../../jsr/public/connections-status.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"connections-status.js","sourceRoot":"","sources":["../../jsr/public/connections-status.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,8 +18,12 @@ export interface ConnectionKey {
|
|
|
18
18
|
readonly ownerHandle: string;
|
|
19
19
|
readonly appSlug: string;
|
|
20
20
|
}
|
|
21
|
+
export interface ConnectionStatusQuestion {
|
|
22
|
+
readonly requiredScopes: readonly string[];
|
|
23
|
+
}
|
|
21
24
|
export declare function packScopes(scopes: readonly string[]): string;
|
|
22
|
-
export declare function
|
|
25
|
+
export declare function unpackScopes(packed: string): readonly string[];
|
|
26
|
+
export declare function readConnectionStatus(sql: ConnectionsSql, key: ConnectionKey & ConnectionStatusQuestion, nowMs?: number): Promise<ConnectionStatus>;
|
|
23
27
|
export interface ExpiringGrantRow {
|
|
24
28
|
readonly userId: string;
|
|
25
29
|
readonly provider: string;
|
|
@@ -79,6 +83,7 @@ export interface RefreshableGrantRow {
|
|
|
79
83
|
readonly accessToken: string;
|
|
80
84
|
readonly refreshToken: string;
|
|
81
85
|
readonly expiresAt: string;
|
|
86
|
+
readonly rev: number;
|
|
82
87
|
}
|
|
83
88
|
export declare function listGrantsRefreshableBefore(sql: ConnectionsSql, input: {
|
|
84
89
|
readonly nowIso: string;
|
|
@@ -90,7 +95,7 @@ export declare function listGrantsRefreshableBefore(sql: ConnectionsSql, input:
|
|
|
90
95
|
export interface RefreshGrantInput {
|
|
91
96
|
readonly userId: string;
|
|
92
97
|
readonly provider: string;
|
|
93
|
-
readonly
|
|
98
|
+
readonly expectedRev: number;
|
|
94
99
|
readonly accessToken: string;
|
|
95
100
|
readonly expiresAt: string;
|
|
96
101
|
readonly nowMs: number;
|
|
@@ -101,7 +106,7 @@ export declare function refreshGrant(sql: ConnectionsSql, input: RefreshGrantInp
|
|
|
101
106
|
export declare function markGrantDead(sql: ConnectionsSql, input: {
|
|
102
107
|
readonly userId: string;
|
|
103
108
|
readonly provider: string;
|
|
104
|
-
readonly
|
|
109
|
+
readonly expectedRev: number;
|
|
105
110
|
readonly nowMs: number;
|
|
106
111
|
}): Promise<{
|
|
107
112
|
readonly applied: boolean;
|
|
@@ -4,6 +4,9 @@ export const CONNECTION_EXPIRING_WINDOW_MS = 14 * 24 * 60 * 60 * 1000;
|
|
|
4
4
|
export function packScopes(scopes) {
|
|
5
5
|
return scopes.filter((s) => s !== "").join(" ");
|
|
6
6
|
}
|
|
7
|
+
export function unpackScopes(packed) {
|
|
8
|
+
return packed.split(/\s+/).filter((s) => s !== "");
|
|
9
|
+
}
|
|
7
10
|
export async function readConnectionStatus(sql, key, nowMs = Date.now()) {
|
|
8
11
|
const t_g = sql.tables.thirdPartyGrants;
|
|
9
12
|
const grant = await sql.db
|
|
@@ -19,12 +22,13 @@ export async function readConnectionStatus(sql, key, nowMs = Date.now()) {
|
|
|
19
22
|
.then((rows) => rows[0]);
|
|
20
23
|
const t_c = sql.tables.thirdPartyConsents;
|
|
21
24
|
const consent = await sql.db
|
|
22
|
-
.select({ userId: t_c.userId })
|
|
25
|
+
.select({ userId: t_c.userId, scopes: t_c.scopes })
|
|
23
26
|
.from(t_c)
|
|
24
27
|
.where(and(eq(t_c.userId, key.userId), eq(t_c.provider, key.provider), eq(t_c.ownerHandle, key.ownerHandle), eq(t_c.appSlug, key.appSlug), eq(t_c.revokedAt, "")))
|
|
25
28
|
.limit(1)
|
|
26
29
|
.then((rows) => rows[0]);
|
|
27
|
-
const
|
|
30
|
+
const held = consent === undefined ? [] : unpackScopes(consent.scopes);
|
|
31
|
+
const consented = consent !== undefined && key.requiredScopes.every((s) => held.includes(s));
|
|
28
32
|
if (grant === undefined)
|
|
29
33
|
return { provider: key.provider, state: "absent", consented };
|
|
30
34
|
const expiresAt = grant.expiresAt === "" ? undefined : grant.expiresAt;
|
|
@@ -113,6 +117,7 @@ export async function upsertGrant(sql, input) {
|
|
|
113
117
|
created: now,
|
|
114
118
|
updated: now,
|
|
115
119
|
revokedAt: "",
|
|
120
|
+
rev: 0,
|
|
116
121
|
})
|
|
117
122
|
.onConflictDoUpdate({
|
|
118
123
|
target: [t_g.userId, t_g.provider],
|
|
@@ -126,6 +131,7 @@ export async function upsertGrant(sql, input) {
|
|
|
126
131
|
status: "live",
|
|
127
132
|
updated: now,
|
|
128
133
|
revokedAt: "",
|
|
134
|
+
rev: drizzleSql `${t_g.rev} + 1`,
|
|
129
135
|
},
|
|
130
136
|
});
|
|
131
137
|
return { consentsRevoked };
|
|
@@ -164,7 +170,7 @@ export async function disconnectAccount(sql, input, nowMs = Date.now()) {
|
|
|
164
170
|
const t_g = sql.tables.thirdPartyGrants;
|
|
165
171
|
await sql.db
|
|
166
172
|
.update(t_g)
|
|
167
|
-
.set({ revokedAt: now, status: "dead", updated: now })
|
|
173
|
+
.set({ revokedAt: now, status: "dead", updated: now, rev: drizzleSql `${t_g.rev} + 1` })
|
|
168
174
|
.where(and(eq(t_g.userId, input.userId), eq(t_g.provider, input.provider), eq(t_g.revokedAt, "")));
|
|
169
175
|
const t_c = sql.tables.thirdPartyConsents;
|
|
170
176
|
await sql.db
|
|
@@ -184,6 +190,7 @@ export async function listGrantsRefreshableBefore(sql, input) {
|
|
|
184
190
|
accessToken: t.accessToken,
|
|
185
191
|
refreshToken: t.refreshToken,
|
|
186
192
|
expiresAt: t.expiresAt,
|
|
193
|
+
rev: t.rev,
|
|
187
194
|
})
|
|
188
195
|
.from(t)
|
|
189
196
|
.where(where)
|
|
@@ -195,8 +202,8 @@ export async function refreshGrant(sql, input) {
|
|
|
195
202
|
const t = sql.tables.thirdPartyGrants;
|
|
196
203
|
const rows = await sql.db
|
|
197
204
|
.update(t)
|
|
198
|
-
.set({ accessToken: input.accessToken, expiresAt: input.expiresAt, updated: now })
|
|
199
|
-
.where(and(eq(t.userId, input.userId), eq(t.provider, input.provider), eq(t.
|
|
205
|
+
.set({ accessToken: input.accessToken, expiresAt: input.expiresAt, updated: now, rev: input.expectedRev + 1 })
|
|
206
|
+
.where(and(eq(t.userId, input.userId), eq(t.provider, input.provider), eq(t.rev, input.expectedRev), eq(t.revokedAt, ""), eq(t.status, "live")))
|
|
200
207
|
.returning({ userId: t.userId });
|
|
201
208
|
return { applied: rows.length > 0 };
|
|
202
209
|
}
|
|
@@ -205,8 +212,8 @@ export async function markGrantDead(sql, input) {
|
|
|
205
212
|
const t = sql.tables.thirdPartyGrants;
|
|
206
213
|
const rows = await sql.db
|
|
207
214
|
.update(t)
|
|
208
|
-
.set({ status: "dead", updated: now })
|
|
209
|
-
.where(and(eq(t.userId, input.userId), eq(t.provider, input.provider), eq(t.
|
|
215
|
+
.set({ status: "dead", updated: now, rev: input.expectedRev + 1 })
|
|
216
|
+
.where(and(eq(t.userId, input.userId), eq(t.provider, input.provider), eq(t.rev, input.expectedRev), eq(t.revokedAt, ""), eq(t.status, "live")))
|
|
210
217
|
.returning({ userId: t.userId });
|
|
211
218
|
return { applied: rows.length > 0 };
|
|
212
219
|
}
|