@getcirrus/pds 0.8.0 → 0.9.0
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/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +77 -3
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -439,6 +439,13 @@ declare class AccountDurableObject extends DurableObject<PDSEnv> {
|
|
|
439
439
|
* Used for partial sync and migration.
|
|
440
440
|
*/
|
|
441
441
|
rpcGetBlocks(cids: string[]): Promise<Uint8Array>;
|
|
442
|
+
/**
|
|
443
|
+
* RPC method: Get record with proof as CAR file.
|
|
444
|
+
* Returns the commit block and all MST blocks needed to verify
|
|
445
|
+
* the existence (or non-existence) of a record.
|
|
446
|
+
* Used by com.atproto.sync.getRecord for record verification.
|
|
447
|
+
*/
|
|
448
|
+
rpcGetRecordProof(collection: string, rkey: string): Promise<Uint8Array>;
|
|
442
449
|
/**
|
|
443
450
|
* RPC method: Import repo from CAR file
|
|
444
451
|
* This is used for account migration - importing an existing repository
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/storage.ts","../src/oauth-storage.ts","../src/blobs.ts","../src/types.ts","../src/account-do.ts","../src/index.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;;;;cAUa,iBAAA,SACJ,kBAAA,YACG;EAFC,QAAA,GAAA;EAIa,WAAA,CAAA,GAAA,EAAA,UAAA;EA2FA;;;;EAiCR,UAAA,CAAA,aAAA,CAAA,EAAA,OAAA,CAAA,EAAA,IAAA;EAQG;;;EAcL,OAAA,CAAA,CAAA,EAvDE,OAuDF,CAvDU,GAuDV,GAAA,IAAA,CAAA;EAAM;;;EAU8C,MAAA,CAAA,CAAA,EApDnD,OAoDmD,CAAA,MAAA,GAAA,IAAA,CAAA;EAArC;;;EAmB4B,MAAA,CAAA,CAAA,EA7D1C,OA6D0C,CAAA,MAAA,CAAA;EAYpC;;;EAoBmB,OAAA,CAAA,CAAA,EAnFxB,OAmFwB,CAAA,MAAA,CAAA;EAWf;;;EA6CT,QAAA,CAAA,GAAA,EAnIG,GAmIH,CAAA,EAnIS,OAmIT,CAnIiB,UAmIjB,GAAA,IAAA,CAAA;EAUI;;;EAoCF,GAAA,CAAA,GAAA,EAnKJ,GAmKI,CAAA,EAnKE,OAmKF,CAAA,OAAA,CAAA;EAUe;;;EA2JtB,SAAA,CAAA,IAAA,EA9TU,GA8TV,EAAA,CAAA,EA9TkB,OA8TlB,CAAA;IA8BI,MAAA,EA5VgC,QA4VhC;IA3fR,OAAA,EA+J2D,GA/J3D,EAAA;EACG,CAAA,CAAA;EAAW;;;gBAiLF,YAAY,0BAA0B;EC/K9C;;;EAuG0C,OAAA,CAAA,MAAA,EDoFhC,QCpFgC,EAAA,GAAA,EAAA,MAAA,CAAA,EDoFR,OCpFQ,CAAA,IAAA,CAAA;EAgBb;;;EAsClB,UAAA,CAAA,GAAA,EDkDD,GClDC,EAAA,GAAA,EAAA,MAAA,CAAA,EDkDkB,OClDlB,CAAA,IAAA,CAAA;EAAY;;;EAiDoB,WAAA,CAAA,MAAA,EDY7B,UCZ6B,CAAA,EDYhB,OCZgB,CAAA,IAAA,CAAA;EAAR;;;EA4CF,WAAA,CAAA,CAAA,EDGxB,OCHwB,CAAA,MAAA,CAAA;EAAiB;;;EAwCtB,OAAA,CAAA,CAAA,ED3BvB,OC2BuB,CAAA,IAAA,CAAA;EAAU;;;EAuCb,WAAA,CAAA,CAAA,EDxDhB,OCwDgB,CAAA,MAAA,CAAA;EAWG;;;oBDzDhB;;;AEvSzB;0CFyT+C;;;AGpT/C;EAkBiC,SAAA,CAAA,CAAA,EH0Sb,OG1Sa,CAAA,OAAA,CAAA;EAAvB;;;8BHoTyB;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/storage.ts","../src/oauth-storage.ts","../src/blobs.ts","../src/types.ts","../src/account-do.ts","../src/index.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DurableObject, env, waitUntil } from "cloudflare:workers";
|
|
2
|
-
import { BlockMap, ReadableBlockstore, Repo, WriteOpAction, blocksToCarFile, readCarWithRoot } from "@atproto/repo";
|
|
2
|
+
import { BlockMap, ReadableBlockstore, Repo, WriteOpAction, blocksToCarFile, getRecords, readCarWithRoot } from "@atproto/repo";
|
|
3
3
|
import { Secp256k1Keypair, randomStr, verifySignature } from "@atproto/crypto";
|
|
4
4
|
import { CID, asCid, isBlobRef } from "@atproto/lex-data";
|
|
5
5
|
import { now } from "@atcute/tid";
|
|
@@ -7,7 +7,7 @@ import { decode, encode, fromBytes, isBytes, toBytes, toCidLink } from "@atcute/
|
|
|
7
7
|
import { CODEC_RAW, create, fromString, toString } from "@atcute/cid";
|
|
8
8
|
import { Hono } from "hono";
|
|
9
9
|
import { cors } from "hono/cors";
|
|
10
|
-
import { isDid, isHandle } from "@atcute/lexicons/syntax";
|
|
10
|
+
import { isDid, isHandle, isNsid, isRecordKey } from "@atcute/lexicons/syntax";
|
|
11
11
|
import { SignJWT, base64url, jwtVerify } from "jose";
|
|
12
12
|
import { compare, compare as compare$1 } from "bcryptjs";
|
|
13
13
|
import { ATProtoOAuthProvider } from "@getcirrus/oauth-provider";
|
|
@@ -1365,6 +1365,30 @@ var AccountDurableObject = class extends DurableObject {
|
|
|
1365
1365
|
return blocksToCarFile(root, blocks);
|
|
1366
1366
|
}
|
|
1367
1367
|
/**
|
|
1368
|
+
* RPC method: Get record with proof as CAR file.
|
|
1369
|
+
* Returns the commit block and all MST blocks needed to verify
|
|
1370
|
+
* the existence (or non-existence) of a record.
|
|
1371
|
+
* Used by com.atproto.sync.getRecord for record verification.
|
|
1372
|
+
*/
|
|
1373
|
+
async rpcGetRecordProof(collection, rkey) {
|
|
1374
|
+
const storage = await this.getStorage();
|
|
1375
|
+
const root = await storage.getRoot();
|
|
1376
|
+
if (!root) throw new Error("No repository root found");
|
|
1377
|
+
const carChunks = [];
|
|
1378
|
+
for await (const chunk of getRecords(storage, root, [{
|
|
1379
|
+
collection,
|
|
1380
|
+
rkey
|
|
1381
|
+
}])) carChunks.push(chunk);
|
|
1382
|
+
const totalLength = carChunks.reduce((acc, chunk) => acc + chunk.length, 0);
|
|
1383
|
+
const result = new Uint8Array(totalLength);
|
|
1384
|
+
let offset = 0;
|
|
1385
|
+
for (const chunk of carChunks) {
|
|
1386
|
+
result.set(chunk, offset);
|
|
1387
|
+
offset += chunk.length;
|
|
1388
|
+
}
|
|
1389
|
+
return result;
|
|
1390
|
+
}
|
|
1391
|
+
/**
|
|
1368
1392
|
* RPC method: Import repo from CAR file
|
|
1369
1393
|
* This is used for account migration - importing an existing repository
|
|
1370
1394
|
* from another PDS.
|
|
@@ -2753,6 +2777,55 @@ async function getBlob(c, _accountDO) {
|
|
|
2753
2777
|
}
|
|
2754
2778
|
});
|
|
2755
2779
|
}
|
|
2780
|
+
async function getRecord$1(c, accountDO) {
|
|
2781
|
+
const did = c.req.query("did");
|
|
2782
|
+
const collection = c.req.query("collection");
|
|
2783
|
+
const rkey = c.req.query("rkey");
|
|
2784
|
+
if (!did) return c.json({
|
|
2785
|
+
error: "InvalidRequest",
|
|
2786
|
+
message: "Missing required parameter: did"
|
|
2787
|
+
}, 400);
|
|
2788
|
+
if (!collection) return c.json({
|
|
2789
|
+
error: "InvalidRequest",
|
|
2790
|
+
message: "Missing required parameter: collection"
|
|
2791
|
+
}, 400);
|
|
2792
|
+
if (!rkey) return c.json({
|
|
2793
|
+
error: "InvalidRequest",
|
|
2794
|
+
message: "Missing required parameter: rkey"
|
|
2795
|
+
}, 400);
|
|
2796
|
+
if (!isDid(did)) return c.json({
|
|
2797
|
+
error: "InvalidRequest",
|
|
2798
|
+
message: "Invalid DID format"
|
|
2799
|
+
}, 400);
|
|
2800
|
+
if (!isNsid(collection)) return c.json({
|
|
2801
|
+
error: "InvalidRequest",
|
|
2802
|
+
message: "Invalid collection format (must be NSID)"
|
|
2803
|
+
}, 400);
|
|
2804
|
+
if (!isRecordKey(rkey)) return c.json({
|
|
2805
|
+
error: "InvalidRequest",
|
|
2806
|
+
message: "Invalid rkey format"
|
|
2807
|
+
}, 400);
|
|
2808
|
+
if (did !== c.env.DID) return c.json({
|
|
2809
|
+
error: "RepoNotFound",
|
|
2810
|
+
message: `Repository not found for DID: ${did}`
|
|
2811
|
+
}, 404);
|
|
2812
|
+
try {
|
|
2813
|
+
const carBytes = await accountDO.rpcGetRecordProof(collection, rkey);
|
|
2814
|
+
return new Response(carBytes, {
|
|
2815
|
+
status: 200,
|
|
2816
|
+
headers: {
|
|
2817
|
+
"Content-Type": "application/vnd.ipld.car",
|
|
2818
|
+
"Content-Length": carBytes.length.toString()
|
|
2819
|
+
}
|
|
2820
|
+
});
|
|
2821
|
+
} catch (err) {
|
|
2822
|
+
console.error("Error getting record proof:", err);
|
|
2823
|
+
return c.json({
|
|
2824
|
+
error: "InternalServerError",
|
|
2825
|
+
message: "Failed to get record proof"
|
|
2826
|
+
}, 500);
|
|
2827
|
+
}
|
|
2828
|
+
}
|
|
2756
2829
|
|
|
2757
2830
|
//#endregion
|
|
2758
2831
|
//#region src/validation.ts
|
|
@@ -3925,7 +3998,7 @@ function renderPasskeyErrorPage(error, description) {
|
|
|
3925
3998
|
|
|
3926
3999
|
//#endregion
|
|
3927
4000
|
//#region package.json
|
|
3928
|
-
var version = "0.
|
|
4001
|
+
var version = "0.9.0";
|
|
3929
4002
|
|
|
3930
4003
|
//#endregion
|
|
3931
4004
|
//#region src/index.ts
|
|
@@ -4056,6 +4129,7 @@ app.get("/xrpc/com.atproto.sync.getBlocks", (c) => getBlocks(c, getAccountDO(c.e
|
|
|
4056
4129
|
app.get("/xrpc/com.atproto.sync.getBlob", (c) => getBlob(c, getAccountDO(c.env)));
|
|
4057
4130
|
app.get("/xrpc/com.atproto.sync.listRepos", (c) => listRepos(c, getAccountDO(c.env)));
|
|
4058
4131
|
app.get("/xrpc/com.atproto.sync.listBlobs", (c) => listBlobs(c, getAccountDO(c.env)));
|
|
4132
|
+
app.get("/xrpc/com.atproto.sync.getRecord", (c) => getRecord$1(c, getAccountDO(c.env)));
|
|
4059
4133
|
app.get("/xrpc/com.atproto.sync.subscribeRepos", async (c) => {
|
|
4060
4134
|
if (c.req.header("Upgrade") !== "websocket") return c.json({
|
|
4061
4135
|
error: "InvalidRequest",
|