@hatk/hatk 0.0.1-alpha.84 → 0.0.1-alpha.86
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/adapter.d.ts.map +1 -1
- package/dist/adapter.js +2 -0
- package/dist/cli.js +5 -1
- package/dist/config.d.ts +47 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +18 -1
- package/dist/database/db.d.ts +11 -0
- package/dist/database/db.d.ts.map +1 -1
- package/dist/database/db.js +356 -160
- package/dist/database/dialect.js +2 -2
- package/dist/database/fts.d.ts.map +1 -1
- package/dist/database/fts.js +6 -2
- package/dist/database/index.d.ts +1 -1
- package/dist/database/index.d.ts.map +1 -1
- package/dist/database/index.js +1 -1
- package/dist/database/schema.d.ts +2 -0
- package/dist/database/schema.d.ts.map +1 -1
- package/dist/database/schema.js +46 -4
- package/dist/dev-entry.d.ts.map +1 -1
- package/dist/dev-entry.js +2 -2
- package/dist/feeds.d.ts +14 -0
- package/dist/feeds.d.ts.map +1 -1
- package/dist/feeds.js +24 -13
- package/dist/hooks.d.ts +17 -0
- package/dist/hooks.d.ts.map +1 -1
- package/dist/hooks.js +26 -3
- package/dist/hydrate.d.ts +42 -0
- package/dist/hydrate.d.ts.map +1 -1
- package/dist/hydrate.js +18 -5
- package/dist/indexer.d.ts +4 -3
- package/dist/indexer.d.ts.map +1 -1
- package/dist/indexer.js +81 -64
- package/dist/lex-types.d.ts +2 -0
- package/dist/lex-types.d.ts.map +1 -1
- package/dist/main.js +26 -2
- package/dist/oauth/db.d.ts +9 -0
- package/dist/oauth/db.d.ts.map +1 -1
- package/dist/oauth/db.js +12 -0
- package/dist/opengraph.d.ts.map +1 -1
- package/dist/opengraph.js +16 -4
- package/dist/private-collections.d.ts +7 -2
- package/dist/private-collections.d.ts.map +1 -1
- package/dist/private-collections.js +9 -4
- package/dist/server.d.ts +8 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +167 -15
- package/dist/spaces/blob.d.ts +51 -0
- package/dist/spaces/blob.d.ts.map +1 -0
- package/dist/spaces/blob.js +111 -0
- package/dist/spaces/credential.d.ts +62 -0
- package/dist/spaces/credential.d.ts.map +1 -0
- package/dist/spaces/credential.js +184 -0
- package/dist/spaces/engine.d.ts +97 -0
- package/dist/spaces/engine.d.ts.map +1 -0
- package/dist/spaces/engine.js +552 -0
- package/dist/spaces/guard.d.ts +41 -0
- package/dist/spaces/guard.d.ts.map +1 -0
- package/dist/spaces/guard.js +79 -0
- package/dist/spaces/identity.d.ts +37 -0
- package/dist/spaces/identity.d.ts.map +1 -0
- package/dist/spaces/identity.js +88 -0
- package/dist/spaces/index.d.ts +55 -0
- package/dist/spaces/index.d.ts.map +1 -0
- package/dist/spaces/index.js +133 -0
- package/dist/spaces/notify.d.ts +51 -0
- package/dist/spaces/notify.d.ts.map +1 -0
- package/dist/spaces/notify.js +121 -0
- package/dist/spaces/records.d.ts +37 -0
- package/dist/spaces/records.d.ts.map +1 -0
- package/dist/spaces/records.js +63 -0
- package/dist/spaces/store.d.ts +51 -0
- package/dist/spaces/store.d.ts.map +1 -0
- package/dist/spaces/store.js +99 -0
- package/dist/spaces/uri.d.ts +60 -0
- package/dist/spaces/uri.d.ts.map +1 -0
- package/dist/spaces/uri.js +97 -0
- package/dist/spaces/verify.d.ts +39 -0
- package/dist/spaces/verify.d.ts.map +1 -0
- package/dist/spaces/verify.js +87 -0
- package/dist/spaces/viewer.d.ts +51 -0
- package/dist/spaces/viewer.d.ts.map +1 -0
- package/dist/spaces/viewer.js +167 -0
- package/dist/spaces/visibility.d.ts +57 -0
- package/dist/spaces/visibility.d.ts.map +1 -0
- package/dist/spaces/visibility.js +81 -0
- package/dist/templates/feed.tpl +4 -0
- package/dist/templates/xrpc.tpl +13 -1
- package/dist/test.d.ts +2 -0
- package/dist/test.d.ts.map +1 -1
- package/dist/test.js +8 -5
- package/dist/xrpc.d.ts +19 -3
- package/dist/xrpc.d.ts.map +1 -1
- package/dist/xrpc.js +62 -32
- package/package.json +8 -4
package/dist/indexer.d.ts
CHANGED
|
@@ -33,9 +33,10 @@ export declare function resumeCursor(liveSeq: number | null, bootCursor: string
|
|
|
33
33
|
/** Reset module cursor state between tests. */
|
|
34
34
|
export declare function _resetCursorStateForTests(): void;
|
|
35
35
|
/**
|
|
36
|
-
* Drain the write buffer
|
|
37
|
-
*
|
|
38
|
-
*
|
|
36
|
+
* Drain the write buffer instead of waiting out FLUSH_INTERVAL_MS. Lets
|
|
37
|
+
* end-to-end tests assert on rows immediately after feeding a frame — deletes
|
|
38
|
+
* included, since they are buffered alongside puts and so are covered by the
|
|
39
|
+
* same await.
|
|
39
40
|
*/
|
|
40
41
|
export declare function _flushForTests(): Promise<void>;
|
|
41
42
|
/**
|
package/dist/indexer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../src/indexer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"indexer.d.ts","sourceRoot":"","sources":["../src/indexer.ts"],"names":[],"mappings":"AA2CA,iFAAiF;AACjF,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAA;IACtC,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,CAAA;IACZ,yBAAyB;IACzB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,yBAAyB;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC7B;AAgMD,6GAA6G;AAC7G,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAEzC;AAED,6EAA6E;AAC7E,wBAAgB,UAAU,IAAI,MAAM,GAAG,IAAI,CAE1C;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAStD;AAED,uFAAuF;AACvF,wBAAgB,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,GAAG,IAAI,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAErH;AAED,+CAA+C;AAC/C,wBAAgB,yBAAyB,IAAI,IAAI,CAIhD;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAMpD;AAED;;;;;;;GAOG;AACH,iEAAiE;AACjE,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGxD;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,SAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAoFjF;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACxB,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC/B,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED,oDAAoD;AACpD,UAAU,WAAY,SAAQ,eAAe;IAC3C,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AAED;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA2B3E;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,CAkCxE;AAED,6EAA6E;AAC7E,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AAED,wEAAwE;AACxE,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAErD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,GAAG,SAAS,CAgD/D;AAED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CvG;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,OAAO,CAE3F;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAI,CAkE9D;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,UAAU,EACjB,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,EACxB,KAAK,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAc,GACrC,IAAI,CAoDN"}
|
package/dist/indexer.js
CHANGED
|
@@ -45,9 +45,10 @@ let indexerMaxRetries;
|
|
|
45
45
|
let indexerPlcUrl;
|
|
46
46
|
let maxConcurrentBackfills = 3;
|
|
47
47
|
/**
|
|
48
|
-
* Flush the write buffer —
|
|
49
|
-
* run label rules on inserted records, and
|
|
50
|
-
* threshold is reached. Emits a wide event
|
|
48
|
+
* Flush the write buffer — apply all buffered puts and deletes in arrival
|
|
49
|
+
* order, update the relay cursor, run label rules on inserted records, and
|
|
50
|
+
* trigger FTS rebuilds when the write threshold is reached. Emits a wide event
|
|
51
|
+
* with batch stats.
|
|
51
52
|
*/
|
|
52
53
|
async function flushBuffer() {
|
|
53
54
|
if (buffer.length === 0)
|
|
@@ -55,14 +56,38 @@ async function flushBuffer() {
|
|
|
55
56
|
const elapsed = timer();
|
|
56
57
|
const batch = buffer.splice(0);
|
|
57
58
|
let insertedCount = 0;
|
|
59
|
+
let deletedCount = 0;
|
|
58
60
|
const errors = [];
|
|
59
61
|
let cursorError;
|
|
60
62
|
const inserted = [];
|
|
63
|
+
const applied = [];
|
|
64
|
+
// Strictly sequential: two writes to the same URI in one batch must land in
|
|
65
|
+
// the order they arrived, so nothing here may run concurrently.
|
|
61
66
|
for (const item of batch) {
|
|
62
67
|
try {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
68
|
+
if (item.action === 'delete') {
|
|
69
|
+
await deleteRecord(item.collection, item.uri);
|
|
70
|
+
deletedCount++;
|
|
71
|
+
applied.push({
|
|
72
|
+
action: 'delete',
|
|
73
|
+
collection: item.collection,
|
|
74
|
+
uri: item.uri,
|
|
75
|
+
authorDid: item.authorDid,
|
|
76
|
+
record: null,
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
await insertRecord(item.collection, item.uri, item.cid, item.authorDid, item.record);
|
|
81
|
+
insertedCount++;
|
|
82
|
+
inserted.push(item);
|
|
83
|
+
applied.push({
|
|
84
|
+
action: 'create',
|
|
85
|
+
collection: item.collection,
|
|
86
|
+
uri: item.uri,
|
|
87
|
+
authorDid: item.authorDid,
|
|
88
|
+
record: item.record,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
66
91
|
}
|
|
67
92
|
catch (err) {
|
|
68
93
|
errors.push(err.message);
|
|
@@ -88,14 +113,9 @@ async function flushBuffer() {
|
|
|
88
113
|
value: item.record,
|
|
89
114
|
}).catch(() => { });
|
|
90
115
|
}
|
|
91
|
-
// Fire on-commit hooks for
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
collection: item.collection,
|
|
95
|
-
uri: item.uri,
|
|
96
|
-
authorDid: item.authorDid,
|
|
97
|
-
record: item.record,
|
|
98
|
-
})));
|
|
116
|
+
// Fire on-commit hooks for everything the batch applied, in the order it was
|
|
117
|
+
// applied (async, non-blocking)
|
|
118
|
+
fireOnCommitHooks(applied);
|
|
99
119
|
// Aggregate collection counts and unique DIDs for wide event
|
|
100
120
|
const collections = {};
|
|
101
121
|
const dids = new Set();
|
|
@@ -106,6 +126,7 @@ async function flushBuffer() {
|
|
|
106
126
|
emit('indexer', 'flush', {
|
|
107
127
|
batch_size: batch.length,
|
|
108
128
|
inserted_count: insertedCount,
|
|
129
|
+
deleted_count: deletedCount,
|
|
109
130
|
error_count: errors.length,
|
|
110
131
|
cursor_seq: lastSeq,
|
|
111
132
|
duration_ms: elapsed(),
|
|
@@ -125,16 +146,32 @@ async function flushBuffer() {
|
|
|
125
146
|
}
|
|
126
147
|
}
|
|
127
148
|
}
|
|
149
|
+
/**
|
|
150
|
+
* Run a flush once every flush already queued has finished.
|
|
151
|
+
*
|
|
152
|
+
* Nothing awaits the flush a full batch triggers, and the interval timer can
|
|
153
|
+
* fire while that flush is still waiting on the database. Two flushes in flight
|
|
154
|
+
* hold disjoint batches but interleave their awaits, so a write in the later
|
|
155
|
+
* batch can reach the database before one in the earlier batch — which would
|
|
156
|
+
* give back exactly the cross-batch reordering the single buffer removes.
|
|
157
|
+
* Chaining them costs nothing on an idle indexer and keeps the queue global.
|
|
158
|
+
*/
|
|
159
|
+
let flushChain = Promise.resolve();
|
|
160
|
+
function enqueueFlush() {
|
|
161
|
+
const next = flushChain.then(() => flushBuffer(), () => flushBuffer());
|
|
162
|
+
flushChain = next;
|
|
163
|
+
return next;
|
|
164
|
+
}
|
|
128
165
|
/** Schedule a flush after FLUSH_INTERVAL_MS if one isn't already pending. */
|
|
129
166
|
function scheduleFlush() {
|
|
130
167
|
if (flushTimer)
|
|
131
168
|
return;
|
|
132
|
-
flushTimer = setTimeout(
|
|
169
|
+
flushTimer = setTimeout(() => {
|
|
133
170
|
flushTimer = null;
|
|
134
|
-
|
|
171
|
+
void enqueueFlush().catch(() => { });
|
|
135
172
|
}, FLUSH_INTERVAL_MS);
|
|
136
173
|
}
|
|
137
|
-
/** Add a
|
|
174
|
+
/** Add a write to the buffer. Flushes immediately if BATCH_SIZE is reached. */
|
|
138
175
|
function bufferWrite(item) {
|
|
139
176
|
buffer.push(item);
|
|
140
177
|
if (buffer.length >= BATCH_SIZE) {
|
|
@@ -142,7 +179,7 @@ function bufferWrite(item) {
|
|
|
142
179
|
clearTimeout(flushTimer);
|
|
143
180
|
flushTimer = null;
|
|
144
181
|
}
|
|
145
|
-
|
|
182
|
+
void enqueueFlush().catch(() => { });
|
|
146
183
|
}
|
|
147
184
|
else {
|
|
148
185
|
scheduleFlush();
|
|
@@ -196,16 +233,17 @@ export function _resetCursorStateForTests() {
|
|
|
196
233
|
cursorKey = 'relay';
|
|
197
234
|
}
|
|
198
235
|
/**
|
|
199
|
-
* Drain the write buffer
|
|
200
|
-
*
|
|
201
|
-
*
|
|
236
|
+
* Drain the write buffer instead of waiting out FLUSH_INTERVAL_MS. Lets
|
|
237
|
+
* end-to-end tests assert on rows immediately after feeding a frame — deletes
|
|
238
|
+
* included, since they are buffered alongside puts and so are covered by the
|
|
239
|
+
* same await.
|
|
202
240
|
*/
|
|
203
241
|
export async function _flushForTests() {
|
|
204
242
|
if (flushTimer) {
|
|
205
243
|
clearTimeout(flushTimer);
|
|
206
244
|
flushTimer = null;
|
|
207
245
|
}
|
|
208
|
-
await
|
|
246
|
+
await enqueueFlush();
|
|
209
247
|
}
|
|
210
248
|
/**
|
|
211
249
|
* Auto-backfill a DID's repo when first seen on the firehose.
|
|
@@ -262,7 +300,14 @@ export async function triggerAutoBackfill(did, attempt = 0) {
|
|
|
262
300
|
backfillInFlight.delete(did);
|
|
263
301
|
for (const item of buffered) {
|
|
264
302
|
try {
|
|
265
|
-
|
|
303
|
+
if (item.action === 'delete') {
|
|
304
|
+
// A delete that arrived mid-backfill has to be replayed after the CAR
|
|
305
|
+
// export lands, or the export's snapshot of the record outlives it.
|
|
306
|
+
await deleteRecord(item.collection, item.uri);
|
|
307
|
+
}
|
|
308
|
+
else {
|
|
309
|
+
await insertRecord(item.collection, item.uri, item.cid, item.authorDid, item.record);
|
|
310
|
+
}
|
|
266
311
|
}
|
|
267
312
|
catch {
|
|
268
313
|
replayErrors++;
|
|
@@ -295,28 +340,6 @@ export async function triggerAutoBackfill(did, attempt = 0) {
|
|
|
295
340
|
}, delayMs);
|
|
296
341
|
}
|
|
297
342
|
}
|
|
298
|
-
/** Emit a memory diagnostics wide event every 30s for observability. */
|
|
299
|
-
function startMemoryDiagnostics() {
|
|
300
|
-
setInterval(() => {
|
|
301
|
-
const mem = process.memoryUsage();
|
|
302
|
-
let pendingBufferItems = 0;
|
|
303
|
-
for (const [, items] of pendingBuffers) {
|
|
304
|
-
pendingBufferItems += items.length;
|
|
305
|
-
}
|
|
306
|
-
emit('diagnostics', 'memory', {
|
|
307
|
-
heap_used_mb: Math.round(mem.heapUsed / 1024 / 1024),
|
|
308
|
-
heap_total_mb: Math.round(mem.heapTotal / 1024 / 1024),
|
|
309
|
-
rss_mb: Math.round(mem.rss / 1024 / 1024),
|
|
310
|
-
external_mb: Math.round(mem.external / 1024 / 1024),
|
|
311
|
-
array_buffers_mb: Math.round(mem.arrayBuffers / 1024 / 1024),
|
|
312
|
-
write_buffer_len: buffer.length,
|
|
313
|
-
pending_buffer_dids: pendingBuffers.size,
|
|
314
|
-
pending_buffer_items: pendingBufferItems,
|
|
315
|
-
backfill_in_flight: backfillInFlight.size,
|
|
316
|
-
repo_status_cache_size: repoStatusCache.size,
|
|
317
|
-
});
|
|
318
|
-
}, 30_000);
|
|
319
|
-
}
|
|
320
343
|
/**
|
|
321
344
|
* Connect to the AT Protocol relay firehose and begin indexing.
|
|
322
345
|
*
|
|
@@ -346,7 +369,6 @@ export async function configureIndexer(opts) {
|
|
|
346
369
|
}
|
|
347
370
|
log(`[indexer] Warmed repo status cache with ${statuses.length} entries`);
|
|
348
371
|
}
|
|
349
|
-
// startMemoryDiagnostics()
|
|
350
372
|
// Checkpoint the cursor on a timer regardless of write activity (see
|
|
351
373
|
// checkpointCursor). Guarded so reconnects don't stack intervals; unref'd so
|
|
352
374
|
// it never keeps the process alive.
|
|
@@ -558,19 +580,21 @@ export function applyCommit(did, ops) {
|
|
|
558
580
|
// For non-signal ops (e.g. profile updates), only process if this DID is already tracked
|
|
559
581
|
if (!hasSignalOp && repoStatus === null)
|
|
560
582
|
return;
|
|
583
|
+
/** Queue a write behind anything already queued for this DID. */
|
|
584
|
+
const enqueue = (item) => {
|
|
585
|
+
// If DID is mid-backfill, buffer instead of writing directly
|
|
586
|
+
if (pendingBuffers.has(did))
|
|
587
|
+
pendingBuffers.get(did).push(item);
|
|
588
|
+
else
|
|
589
|
+
bufferWrite(item);
|
|
590
|
+
};
|
|
561
591
|
for (const op of ops) {
|
|
562
592
|
const uri = `at://${did}/${op.collection}/${op.rkey}`;
|
|
563
593
|
if (op.action === 'delete') {
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
collection: op.collection,
|
|
569
|
-
uri,
|
|
570
|
-
authorDid: did,
|
|
571
|
-
record: null,
|
|
572
|
-
},
|
|
573
|
-
]);
|
|
594
|
+
// Buffered, not applied here: see {@link WriteBuffer}. The on-commit hook
|
|
595
|
+
// fires from the flush too, so a handler never sees a delete announced
|
|
596
|
+
// before the row is actually gone.
|
|
597
|
+
enqueue({ action: 'delete', collection: op.collection, uri, authorDid: did });
|
|
574
598
|
continue;
|
|
575
599
|
}
|
|
576
600
|
const record = op.record;
|
|
@@ -588,14 +612,7 @@ export function applyCommit(did, ops) {
|
|
|
588
612
|
});
|
|
589
613
|
continue;
|
|
590
614
|
}
|
|
591
|
-
|
|
592
|
-
// If DID is mid-backfill, buffer instead of writing directly
|
|
593
|
-
if (pendingBuffers.has(did)) {
|
|
594
|
-
pendingBuffers.get(did).push(item);
|
|
595
|
-
}
|
|
596
|
-
else {
|
|
597
|
-
bufferWrite(item);
|
|
598
|
-
}
|
|
615
|
+
enqueue({ action: 'put', collection: op.collection, uri, cid: op.cid, authorDid: did, record });
|
|
599
616
|
}
|
|
600
617
|
}
|
|
601
618
|
/**
|
package/dist/lex-types.d.ts
CHANGED
package/dist/lex-types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lex-types.d.ts","sourceRoot":"","sources":["../src/lex-types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lex-types.d.ts","sourceRoot":"","sources":["../src/lex-types.ts"],"names":[],"mappings":"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"}
|
package/dist/main.js
CHANGED
|
@@ -12,7 +12,7 @@ import { dirname, resolve } from 'node:path';
|
|
|
12
12
|
import { registerHatkResolveHook } from "./resolve-hatk.js";
|
|
13
13
|
import { log } from "./logger.js";
|
|
14
14
|
import { loadConfig } from "./config.js";
|
|
15
|
-
import { loadLexicons, storeLexicons, discoverCollections, buildSchemas } from "./database/schema.js";
|
|
15
|
+
import { validatableLexicons, loadLexicons, storeLexicons, discoverCollections, buildSchemas, } from "./database/schema.js";
|
|
16
16
|
import { discoverViews } from "./views.js";
|
|
17
17
|
import { initDatabase, getCursor, querySQL, getSqlDialect, getSchemaDump, migrateSchema } from "./database/db.js";
|
|
18
18
|
import { createAdapter } from "./database/adapter-factory.js";
|
|
@@ -37,6 +37,7 @@ import { loadOnLoginHook } from "./hooks.js";
|
|
|
37
37
|
import { enabledPushTransports, initPush, isPushEnabled } from "./push.js";
|
|
38
38
|
import { initSetup } from "./setup.js";
|
|
39
39
|
import { initServer } from "./server-init.js";
|
|
40
|
+
import { startSpaces } from "./spaces/index.js";
|
|
40
41
|
const configPath = process.argv[2] || 'hatk.config.ts';
|
|
41
42
|
const configDir = dirname(resolve(configPath));
|
|
42
43
|
registerHatkResolveHook();
|
|
@@ -47,7 +48,7 @@ configurePlc(config.plc);
|
|
|
47
48
|
configureCdn(config.cdn);
|
|
48
49
|
// 2. Load lexicons, validate schemas, and discover collections
|
|
49
50
|
const lexicons = loadLexicons(resolve(configDir, 'lexicons'));
|
|
50
|
-
const lexiconErrors = validateLexicons(
|
|
51
|
+
const lexiconErrors = validateLexicons(validatableLexicons(lexicons));
|
|
51
52
|
if (lexiconErrors) {
|
|
52
53
|
for (const [nsid, errors] of Object.entries(lexiconErrors)) {
|
|
53
54
|
for (const err of errors) {
|
|
@@ -180,6 +181,18 @@ const handler = createHandler({
|
|
|
180
181
|
oauth: config.oauth,
|
|
181
182
|
admins: config.admins,
|
|
182
183
|
onResync: runBackfillAndRestart,
|
|
184
|
+
...(config.spaces?.serviceDid
|
|
185
|
+
? {
|
|
186
|
+
spaces: {
|
|
187
|
+
serviceDid: config.spaces.serviceDid,
|
|
188
|
+
serviceFragment: config.spaces.serviceFragment ?? 'atproto_space_syncer',
|
|
189
|
+
// The origin an authority delivers to. The OAuth issuer is already
|
|
190
|
+
// the public origin an operator has had to get right, so it is the
|
|
191
|
+
// honest default rather than a second thing to configure wrong.
|
|
192
|
+
...(config.oauth?.issuer ? { publicUrl: config.oauth.issuer } : {}),
|
|
193
|
+
},
|
|
194
|
+
}
|
|
195
|
+
: {}),
|
|
183
196
|
});
|
|
184
197
|
globalThis.__hatk_callXrpc = callXrpc;
|
|
185
198
|
globalThis.__hatk_parseSessionCookie = parseSessionCookie;
|
|
@@ -236,6 +249,17 @@ else {
|
|
|
236
249
|
}
|
|
237
250
|
// 7. Run backfill in background
|
|
238
251
|
runBackfillAndRestart();
|
|
252
|
+
// 8. Follow permissioned spaces, if this instance indexes any. Started after
|
|
253
|
+
// the firehose and backfill because it is neither: a space has no stream to
|
|
254
|
+
// tail, so it is a sweep on a timer rather than a source to resume.
|
|
255
|
+
if (config.spaces) {
|
|
256
|
+
startSpaces({
|
|
257
|
+
spaces: config.spaces,
|
|
258
|
+
oauth: config.oauth,
|
|
259
|
+
plc: config.plc,
|
|
260
|
+
collections: collectionSet,
|
|
261
|
+
});
|
|
262
|
+
}
|
|
239
263
|
// Graceful shutdown
|
|
240
264
|
process.on('SIGTERM', () => {
|
|
241
265
|
log('[main] Received SIGTERM, shutting down...');
|
package/dist/oauth/db.d.ts
CHANGED
|
@@ -38,6 +38,15 @@ export declare function storeSession(did: string, data: {
|
|
|
38
38
|
tokenExpiresAt?: number;
|
|
39
39
|
}): Promise<void>;
|
|
40
40
|
export declare function getSession(did: string): Promise<any | null>;
|
|
41
|
+
/**
|
|
42
|
+
* Every DID this instance holds a PDS session for, most recently refreshed
|
|
43
|
+
* first.
|
|
44
|
+
*
|
|
45
|
+
* Space indexing reads as a member rather than as itself, so this is the set of
|
|
46
|
+
* people it could borrow a delegation from. Ordered by recency because a
|
|
47
|
+
* session refreshed lately is the one most likely to still work.
|
|
48
|
+
*/
|
|
49
|
+
export declare function listSessionDids(): Promise<string[]>;
|
|
41
50
|
export declare function deleteSession(did: string): Promise<void>;
|
|
42
51
|
export declare function storeRefreshToken(token: string, data: {
|
|
43
52
|
clientId: string;
|
package/dist/oauth/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/oauth/db.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/oauth/db.ts"],"names":[],"mappings":"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"}
|
package/dist/oauth/db.js
CHANGED
|
@@ -146,6 +146,18 @@ export async function getSession(did) {
|
|
|
146
146
|
const rows = await querySQL('SELECT * FROM _oauth_sessions WHERE did = $1', [did]);
|
|
147
147
|
return rows.length > 0 ? rows[0] : null;
|
|
148
148
|
}
|
|
149
|
+
/**
|
|
150
|
+
* Every DID this instance holds a PDS session for, most recently refreshed
|
|
151
|
+
* first.
|
|
152
|
+
*
|
|
153
|
+
* Space indexing reads as a member rather than as itself, so this is the set of
|
|
154
|
+
* people it could borrow a delegation from. Ordered by recency because a
|
|
155
|
+
* session refreshed lately is the one most likely to still work.
|
|
156
|
+
*/
|
|
157
|
+
export async function listSessionDids() {
|
|
158
|
+
const rows = (await querySQL('SELECT did FROM _oauth_sessions ORDER BY updated_at DESC, created_at DESC'));
|
|
159
|
+
return rows.map((r) => r.did);
|
|
160
|
+
}
|
|
149
161
|
export async function deleteSession(did) {
|
|
150
162
|
await runSQL('DELETE FROM _oauth_sessions WHERE did = $1', [did]);
|
|
151
163
|
}
|
package/dist/opengraph.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opengraph.d.ts","sourceRoot":"","sources":["../src/opengraph.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAE5C,4CAA4C;AAC5C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAC3B,QAAQ,CAAC,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,CAAA;QAC3C,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KACnB,CAAA;CACF;AAED,uDAAuD;AACvD,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CACpD;AAED,qDAAqD;AACrD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,UAAU,CAAA;IACnB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAA;KAAE,CAAA;IAC5D,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAChD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC,eAAe,CAAC;;;oBAA7C,gBAAgB,KAAK,OAAO,CAAC,eAAe,CAAC;EAEnG;
|
|
1
|
+
{"version":3,"file":"opengraph.d.ts","sourceRoot":"","sources":["../src/opengraph.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAE5C,4CAA4C;AAC5C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAC3B,QAAQ,CAAC,EAAE,CAAC,UAAU,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,CAAA;QAC3C,GAAG,CAAC,EAAE,MAAM,CAAA;QACZ,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KACnB,CAAA;CACF;AAED,uDAAuD;AACvD,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IACnD,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CACpD;AAED,qDAAqD;AACrD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,UAAU,CAAA;IACnB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAA;KAAE,CAAA;IAC5D,IAAI,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CAChD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC,eAAe,CAAC;;;oBAA7C,gBAAgB,KAAK,OAAO,CAAC,eAAe,CAAC;EAEnG;AAiDD,wBAAsB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyEhE;AAED,kEAAkE;AAClE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE;IACvC,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAA;CAC9D,GAAG,IAAI,CAqDP;AAED,wBAAsB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA+BrF;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAyC3E"}
|
package/dist/opengraph.js
CHANGED
|
@@ -32,6 +32,20 @@ let defaultFont = null;
|
|
|
32
32
|
const cache = new Map();
|
|
33
33
|
const CACHE_TTL = 5 * 60 * 1000;
|
|
34
34
|
const CACHE_MAX = 200;
|
|
35
|
+
/**
|
|
36
|
+
* Read a font file as an ArrayBuffer holding *only* that font's bytes.
|
|
37
|
+
*
|
|
38
|
+
* `readFileSync` returns a Buffer that, for small files, is a view into Node's
|
|
39
|
+
* shared 64 KB allocation pool — so `buffer.buffer` is the whole pool, not the
|
|
40
|
+
* font, and the font generally starts at a nonzero `byteOffset`. Handing that
|
|
41
|
+
* to satori makes it read whatever happened to be pooled before the font and
|
|
42
|
+
* reject the result with "Unsupported OpenType signature". Slice out the
|
|
43
|
+
* view's own range instead.
|
|
44
|
+
*/
|
|
45
|
+
function readFontData(fontPath) {
|
|
46
|
+
const fontData = readFileSync(fontPath);
|
|
47
|
+
return fontData.buffer.slice(fontData.byteOffset, fontData.byteOffset + fontData.byteLength);
|
|
48
|
+
}
|
|
35
49
|
function compilePath(path) {
|
|
36
50
|
const paramNames = [];
|
|
37
51
|
const re = path.replace(/:([^/]+)/g, (_, name) => {
|
|
@@ -44,8 +58,7 @@ export async function initOpengraph(ogDir) {
|
|
|
44
58
|
// Load default font
|
|
45
59
|
try {
|
|
46
60
|
const fontPath = resolve(import.meta.dirname, '..', 'fonts', 'Inter-Regular.woff');
|
|
47
|
-
|
|
48
|
-
defaultFont = { name: 'Inter', data: fontData.buffer, weight: 400, style: 'normal' };
|
|
61
|
+
defaultFont = { name: 'Inter', data: readFontData(fontPath), weight: 400, style: 'normal' };
|
|
49
62
|
log('[opengraph] loaded default font: Inter');
|
|
50
63
|
}
|
|
51
64
|
catch {
|
|
@@ -121,8 +134,7 @@ export function registerOgHandler(ogMod) {
|
|
|
121
134
|
if (!defaultFont) {
|
|
122
135
|
try {
|
|
123
136
|
const fontPath = resolve(import.meta.dirname, '..', 'fonts', 'Inter-Regular.woff');
|
|
124
|
-
|
|
125
|
-
defaultFont = { name: 'Inter', data: fontData.buffer, weight: 400, style: 'normal' };
|
|
137
|
+
defaultFont = { name: 'Inter', data: readFontData(fontPath), weight: 400, style: 'normal' };
|
|
126
138
|
}
|
|
127
139
|
catch { }
|
|
128
140
|
}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
export declare function setPrivateCollections(list: string[]): void;
|
|
2
2
|
export declare function isPrivateCollection(nsid: string | null | undefined): boolean;
|
|
3
3
|
/**
|
|
4
|
-
* The collection segment of
|
|
5
|
-
*
|
|
4
|
+
* The collection segment of a record AT-URI, in either shape.
|
|
5
|
+
*
|
|
6
|
+
* A repo record is `at://{did}/{collection}/{rkey}`; a space record is
|
|
7
|
+
* `at://{authority}/space/{type}/{skey}/{writer}/{collection}/{rkey}`, where
|
|
8
|
+
* the position a collection used to occupy holds the literal 'space'. Reading
|
|
9
|
+
* it positionally without that distinction reports every space record as
|
|
10
|
+
* belonging to a collection named 'space', which no guard would match.
|
|
6
11
|
*/
|
|
7
12
|
export declare function collectionFromUri(uri: string): string | undefined;
|
|
8
13
|
//# sourceMappingURL=private-collections.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"private-collections.d.ts","sourceRoot":"","sources":["../src/private-collections.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"private-collections.d.ts","sourceRoot":"","sources":["../src/private-collections.ts"],"names":[],"mappings":"AAWA,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAE1D;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE5E;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEjE"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { collectionFromRecordUri } from "./spaces/uri.js";
|
|
1
2
|
/**
|
|
2
3
|
* Collections that are indexed and queryable in-process but must never be
|
|
3
4
|
* served by the built-in dev.hatk.* record endpoints.
|
|
@@ -13,10 +14,14 @@ export function isPrivateCollection(nsid) {
|
|
|
13
14
|
return nsid != null && privateCollections.has(nsid);
|
|
14
15
|
}
|
|
15
16
|
/**
|
|
16
|
-
* The collection segment of
|
|
17
|
-
*
|
|
17
|
+
* The collection segment of a record AT-URI, in either shape.
|
|
18
|
+
*
|
|
19
|
+
* A repo record is `at://{did}/{collection}/{rkey}`; a space record is
|
|
20
|
+
* `at://{authority}/space/{type}/{skey}/{writer}/{collection}/{rkey}`, where
|
|
21
|
+
* the position a collection used to occupy holds the literal 'space'. Reading
|
|
22
|
+
* it positionally without that distinction reports every space record as
|
|
23
|
+
* belonging to a collection named 'space', which no guard would match.
|
|
18
24
|
*/
|
|
19
25
|
export function collectionFromUri(uri) {
|
|
20
|
-
|
|
21
|
-
return parts.length > 4 ? parts[3] : undefined;
|
|
26
|
+
return collectionFromRecordUri(uri);
|
|
22
27
|
}
|
package/dist/server.d.ts
CHANGED
|
@@ -4,6 +4,12 @@ import type { OAuthConfig } from './config.ts';
|
|
|
4
4
|
* This makes them available to callXrpc() for use in SSR and server code.
|
|
5
5
|
*/
|
|
6
6
|
export declare function registerCoreHandlers(collections: string[], oauth: OAuthConfig | null): void;
|
|
7
|
+
export interface SpaceHandlerConfig {
|
|
8
|
+
serviceDid?: string;
|
|
9
|
+
serviceFragment?: string;
|
|
10
|
+
/** The origin an authority should deliver to, when it is not the request's own. */
|
|
11
|
+
publicUrl?: string;
|
|
12
|
+
}
|
|
7
13
|
export interface HandlerConfig {
|
|
8
14
|
collections: string[];
|
|
9
15
|
publicDir: string | null;
|
|
@@ -17,6 +23,8 @@ export interface HandlerConfig {
|
|
|
17
23
|
did: string;
|
|
18
24
|
} | null;
|
|
19
25
|
onResync?: () => void;
|
|
26
|
+
/** Permissioned-space notice delivery. Absent on an instance that indexes none. */
|
|
27
|
+
spaces?: SpaceHandlerConfig;
|
|
20
28
|
}
|
|
21
29
|
/**
|
|
22
30
|
* Create a Web Standard request handler for all hatk routes.
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAsEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAsEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAuE9C;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,GAAG,IAAI,CA2M3F;AAgDD,MAAM,WAAW,kBAAkB;IACjC,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,KAAK,EAAE,WAAW,GAAG,IAAI,CAAA;IACzB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACxF,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IAC5D,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,mFAAmF;IACnF,MAAM,CAAC,EAAE,kBAAkB,CAAA;CAC5B;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CA6pC5F;AAGD,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EAAE,EACrB,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,KAAK,EAAE,WAAW,GAAG,IAAI,EACzB,MAAM,GAAE,MAAM,EAAO,EACrB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,EAC5D,QAAQ,CAAC,EAAE,MAAM,IAAI,GACpB,OAAO,WAAW,EAAE,MAAM,CAG5B"}
|