@seedprotocol/query 0.7.9-next.1189.g5e63267 → 0.7.9-next.1306.g4ff6582
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/dist/api.d.ts +1 -1
- package/dist/bootstrap.d.ts +7 -0
- package/dist/bootstrap.d.ts.map +1 -1
- package/dist/cache/config.d.ts +0 -1
- package/dist/cache/config.d.ts.map +1 -1
- package/dist/cache/types.d.ts +1 -4
- package/dist/cache/types.d.ts.map +1 -1
- package/dist/fieldStorageModel.d.ts +0 -18
- package/dist/fieldStorageModel.d.ts.map +1 -1
- package/dist/hydrateArweaveRichText.d.ts +0 -2
- package/dist/hydrateArweaveRichText.d.ts.map +1 -1
- package/dist/imageRelationEnrichment.d.ts +0 -2
- package/dist/imageRelationEnrichment.d.ts.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.node.d.ts.map +1 -1
- package/dist/index.node.js +5 -5
- package/dist/index.node.js.map +1 -1
- package/dist/node/index.d.ts.map +1 -1
- package/dist/node/registerNodeEas.d.ts +7 -0
- package/dist/node/registerNodeEas.d.ts.map +1 -0
- package/dist/node.js +4 -5
- package/dist/node.js.map +1 -1
- package/dist/parseEasPropertyMetadata.d.ts +0 -6
- package/dist/parseEasPropertyMetadata.d.ts.map +1 -1
- package/dist/registerNodeEas-BRQjXdFD.js +107 -0
- package/dist/registerNodeEas-BRQjXdFD.js.map +1 -0
- package/dist/source/remote.d.ts +5 -0
- package/dist/source/remote.d.ts.map +1 -1
- package/dist/{src-BnsF-Zyi.js → src-C4engEq9.js} +255 -261
- package/dist/src-C4engEq9.js.map +1 -0
- package/dist/{types-BjCYpItx.js → types-CtWSwDmX.js} +25 -21
- package/dist/types-CtWSwDmX.js.map +1 -0
- package/dist/types.d.ts +2 -8
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -3
- package/dist/registerNodeArweave-VGXwzQt4.js +0 -103
- package/dist/registerNodeArweave-VGXwzQt4.js.map +0 -1
- package/dist/src-BnsF-Zyi.js.map +0 -1
- package/dist/types-BjCYpItx.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { r as e, s as t, t as n } from "./types-CtWSwDmX.js";
|
|
2
2
|
import { BaseArweaveClient as r, isKnownArweaveGatewayHostname as i, readArweaveContentResponse as a } from "@seedprotocol/arweave";
|
|
3
3
|
import { EasClient as o, GET_SEEDS_LEAN as s, decodeEasNumber as c, getAttestationChangesSince as l, getItemPropertiesFromEas as u, getItemVersionsFromEas as d, getSeedsBySchemaName as f, getSeedsByUidsFromEas as p, isEasEmptyValue as m, isNumericEasType as h, keepAttestationsFromRefAttester as g, pickLatestPropertyAttestationsByRefAndSchema as _, setSchemaUidForSchemaDefinition as v, withExcludeRevokedFilter as y } from "@seedprotocol/eas";
|
|
4
4
|
import b from "pluralize";
|
|
@@ -30,7 +30,7 @@ function S(e) {
|
|
|
30
30
|
function ie(e, t) {
|
|
31
31
|
for (let n of Object.keys(e)) n !== t && S(n) === t && delete e[n];
|
|
32
32
|
}
|
|
33
|
-
function
|
|
33
|
+
function ae(e) {
|
|
34
34
|
if (Array.isArray(e) || typeof e != "string") return e;
|
|
35
35
|
let t = e.trim();
|
|
36
36
|
if (!t.startsWith("[")) return e;
|
|
@@ -42,57 +42,56 @@ function C(e) {
|
|
|
42
42
|
}
|
|
43
43
|
//#endregion
|
|
44
44
|
//#region src/imageRelationEnrichment.ts
|
|
45
|
-
function
|
|
45
|
+
function oe(e) {
|
|
46
46
|
let t = e.storageTransactionId ?? e.storage_transaction_id;
|
|
47
47
|
if (t && typeof t == "string" && t.trim()) try {
|
|
48
48
|
e.arweaveUrl = x(t.trim());
|
|
49
49
|
} catch {}
|
|
50
50
|
}
|
|
51
|
-
|
|
51
|
+
//#endregion
|
|
52
|
+
//#region src/fieldStorageModel.ts
|
|
53
|
+
var se = /* @__PURE__ */ new Set([
|
|
52
54
|
"html",
|
|
53
55
|
"file",
|
|
54
56
|
"json"
|
|
55
|
-
]),
|
|
56
|
-
function
|
|
57
|
+
]), ce = "_feedFieldStorageModels", le = "_feedListElementStorageModels";
|
|
58
|
+
function C(e) {
|
|
57
59
|
return e.trim().toLowerCase();
|
|
58
60
|
}
|
|
59
|
-
function
|
|
60
|
-
return
|
|
61
|
+
function w(e) {
|
|
62
|
+
return se.has(C(e));
|
|
61
63
|
}
|
|
62
|
-
var le = D;
|
|
63
64
|
function ue(e) {
|
|
64
|
-
let t =
|
|
65
|
+
let t = C(e);
|
|
65
66
|
return t === "html" ? 0 : t === "file" ? 1 : t === "json" ? 2 : 99;
|
|
66
67
|
}
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
let t = e[se];
|
|
68
|
+
function T(e) {
|
|
69
|
+
let t = e[ce];
|
|
70
70
|
if (typeof t == "object" && t && !Array.isArray(t)) return t;
|
|
71
71
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
let t = e[ce];
|
|
72
|
+
function de(e) {
|
|
73
|
+
let t = e[le];
|
|
75
74
|
if (typeof t == "object" && t && !Array.isArray(t)) return t;
|
|
76
75
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
i || (i = {}, e[se] = i), i[t] = r;
|
|
76
|
+
function E(e, t, n) {
|
|
77
|
+
let r = C(n), i = T(e);
|
|
78
|
+
i || (i = {}, e[ce] = i), i[t] = r;
|
|
81
79
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
r || (r = {}, e[ce] = r), r[t] = n.map(E);
|
|
80
|
+
function fe(e, t, n) {
|
|
81
|
+
let r = de(e);
|
|
82
|
+
r || (r = {}, e[le] = r), r[t] = n.map(C);
|
|
86
83
|
}
|
|
87
|
-
|
|
84
|
+
//#endregion
|
|
85
|
+
//#region src/hydrateArweaveRichText.ts
|
|
86
|
+
var pe = [
|
|
88
87
|
"html",
|
|
89
88
|
"Html",
|
|
90
89
|
"body",
|
|
91
90
|
"Body",
|
|
92
91
|
"content",
|
|
93
92
|
"Content"
|
|
94
|
-
],
|
|
95
|
-
function
|
|
93
|
+
], me = 8e6;
|
|
94
|
+
function he(e) {
|
|
96
95
|
let t = e.trim();
|
|
97
96
|
if (!t.startsWith("http://") && !t.startsWith("https://")) return !1;
|
|
98
97
|
try {
|
|
@@ -106,7 +105,7 @@ function ve(e) {
|
|
|
106
105
|
return !1;
|
|
107
106
|
}
|
|
108
107
|
}
|
|
109
|
-
async function
|
|
108
|
+
async function ge(e, t) {
|
|
110
109
|
try {
|
|
111
110
|
let n = await fetch(e, {
|
|
112
111
|
headers: { Accept: "text/html, text/plain, text/markdown, application/json, */*" },
|
|
@@ -116,37 +115,37 @@ async function ye(e, t) {
|
|
|
116
115
|
let r = n.headers.get("content-type") ?? "";
|
|
117
116
|
if (/^(image|video|audio)\//i.test(r)) return null;
|
|
118
117
|
let { bytes: i } = await a(n, { transactionId: t });
|
|
119
|
-
if (i.byteLength >
|
|
118
|
+
if (i.byteLength > me) return null;
|
|
120
119
|
let o = new TextDecoder("utf-8", { fatal: !1 }).decode(i);
|
|
121
120
|
return o.length === 0 || o.includes("\0") ? null : o;
|
|
122
121
|
} catch {
|
|
123
122
|
return null;
|
|
124
123
|
}
|
|
125
124
|
}
|
|
126
|
-
var
|
|
127
|
-
function
|
|
128
|
-
|
|
125
|
+
var _e = 32e6, D = /* @__PURE__ */ new Map(), O = 0, k = /* @__PURE__ */ new Map();
|
|
126
|
+
function ve() {
|
|
127
|
+
D.clear(), O = 0, k.clear();
|
|
129
128
|
}
|
|
130
|
-
function
|
|
131
|
-
if (!(t.length >
|
|
132
|
-
|
|
133
|
-
for (let [e, t] of
|
|
134
|
-
if (
|
|
135
|
-
|
|
129
|
+
function ye(e, t) {
|
|
130
|
+
if (!(t.length > _e)) {
|
|
131
|
+
D.set(e, t), O += t.length;
|
|
132
|
+
for (let [e, t] of D) {
|
|
133
|
+
if (O <= _e) break;
|
|
134
|
+
D.delete(e), O -= t.length;
|
|
136
135
|
}
|
|
137
136
|
}
|
|
138
137
|
}
|
|
139
|
-
async function
|
|
140
|
-
let t = new URL(e.trim()).pathname.replace(/^\//, ""), n =
|
|
141
|
-
if (n !== void 0) return
|
|
142
|
-
let r =
|
|
138
|
+
async function be(e) {
|
|
139
|
+
let t = new URL(e.trim()).pathname.replace(/^\//, ""), n = D.get(t);
|
|
140
|
+
if (n !== void 0) return D.delete(t), D.set(t, n), n;
|
|
141
|
+
let r = k.get(t);
|
|
143
142
|
if (r) return r;
|
|
144
|
-
let i =
|
|
145
|
-
|
|
143
|
+
let i = ge(e, t).then((e) => (e !== null && k.get(t) === i && ye(t, e), e)).finally(() => {
|
|
144
|
+
k.get(t) === i && k.delete(t);
|
|
146
145
|
});
|
|
147
|
-
return
|
|
146
|
+
return k.set(t, i), i;
|
|
148
147
|
}
|
|
149
|
-
async function
|
|
148
|
+
async function xe(e, t, n) {
|
|
150
149
|
if (n) try {
|
|
151
150
|
let r = await n({
|
|
152
151
|
propertyName: e,
|
|
@@ -154,48 +153,47 @@ async function we(e, t, n) {
|
|
|
154
153
|
});
|
|
155
154
|
if (r != null && r.length > 0) return r;
|
|
156
155
|
} catch {}
|
|
157
|
-
return
|
|
156
|
+
return he(t) ? be(t) : null;
|
|
158
157
|
}
|
|
159
|
-
var
|
|
160
|
-
async function
|
|
158
|
+
var Se = 8;
|
|
159
|
+
async function Ce(e, t) {
|
|
161
160
|
let n = 0;
|
|
162
161
|
await Promise.all(Array.from({ length: Math.min(t, e.length) }, async () => {
|
|
163
162
|
for (; n < e.length;) await e[n++]();
|
|
164
163
|
}));
|
|
165
164
|
}
|
|
166
|
-
async function
|
|
165
|
+
async function we(e, t) {
|
|
167
166
|
let n = t?.readStorageBody, r = [];
|
|
168
167
|
for (let t of e) {
|
|
169
|
-
let e = /* @__PURE__ */ new Set([...
|
|
170
|
-
if (i) for (let [t, n] of Object.entries(i))
|
|
168
|
+
let e = /* @__PURE__ */ new Set([...pe]), i = T(t);
|
|
169
|
+
if (i) for (let [t, n] of Object.entries(i)) w(n) && e.add(t);
|
|
171
170
|
for (let i of e) {
|
|
172
171
|
let e = t[i];
|
|
173
172
|
typeof e == "string" && e.trim() !== "" && r.push(async () => {
|
|
174
|
-
let r = await
|
|
173
|
+
let r = await xe(i, e, n);
|
|
175
174
|
r !== null && (t[i] = r);
|
|
176
175
|
});
|
|
177
176
|
}
|
|
178
|
-
let a =
|
|
177
|
+
let a = de(t);
|
|
179
178
|
if (a) for (let [e, i] of Object.entries(a)) {
|
|
180
179
|
let a = t[e];
|
|
181
180
|
if (!Array.isArray(a)) continue;
|
|
182
181
|
let o = Math.min(i.length, a.length);
|
|
183
182
|
for (let t = 0; t < o; t++) {
|
|
184
|
-
if (!
|
|
183
|
+
if (!w(i[t])) continue;
|
|
185
184
|
let o = a[t];
|
|
186
185
|
typeof o == "string" && r.push(async () => {
|
|
187
|
-
let r = await
|
|
186
|
+
let r = await xe(e, o, n);
|
|
188
187
|
r !== null && (a[t] = r);
|
|
189
188
|
});
|
|
190
189
|
}
|
|
191
190
|
}
|
|
192
191
|
}
|
|
193
|
-
await
|
|
192
|
+
await Ce(r, Se);
|
|
194
193
|
}
|
|
195
|
-
var Oe = De;
|
|
196
194
|
//#endregion
|
|
197
195
|
//#region src/parseEasPropertyMetadata.ts
|
|
198
|
-
function
|
|
196
|
+
function A(e) {
|
|
199
197
|
let t = typeof e == "string" ? e.trim() : "";
|
|
200
198
|
if (!t) return {
|
|
201
199
|
ok: !1,
|
|
@@ -219,10 +217,9 @@ function F(e) {
|
|
|
219
217
|
metadata: n[0].value
|
|
220
218
|
};
|
|
221
219
|
}
|
|
222
|
-
var ke = F;
|
|
223
220
|
//#endregion
|
|
224
221
|
//#region src/parseEasRelationPropertyName.ts
|
|
225
|
-
function
|
|
222
|
+
function Te(e) {
|
|
226
223
|
let [t, n, r] = e.split("_");
|
|
227
224
|
if (!t || !n) return null;
|
|
228
225
|
let i = r === "ids";
|
|
@@ -234,14 +231,13 @@ function Ae(e) {
|
|
|
234
231
|
}
|
|
235
232
|
//#endregion
|
|
236
233
|
//#region src/source/remote.ts
|
|
237
|
-
function
|
|
238
|
-
let n = new Date(e, t - 1, 1), r = new Date(e, t, 0, 23, 59, 59);
|
|
234
|
+
function Ee(e, t) {
|
|
239
235
|
return {
|
|
240
|
-
startTs:
|
|
241
|
-
endTs:
|
|
236
|
+
startTs: Date.UTC(e, t - 1, 1) / 1e3,
|
|
237
|
+
endTs: Date.UTC(e, t, 1) / 1e3
|
|
242
238
|
};
|
|
243
239
|
}
|
|
244
|
-
function
|
|
240
|
+
function De() {
|
|
245
241
|
return {
|
|
246
242
|
kind: "remote",
|
|
247
243
|
async getSeedByUid(e) {
|
|
@@ -255,7 +251,7 @@ function Me() {
|
|
|
255
251
|
return await f(e, n.limit, n.skip, { uidPrefix: t });
|
|
256
252
|
},
|
|
257
253
|
async listSeedsBySchemaNameForMonth(e, t, n) {
|
|
258
|
-
let { startTs: r, endTs: i } =
|
|
254
|
+
let { startTs: r, endTs: i } = Ee(t, n), a = y({ AND: [{ schema: { is: { schemaNames: { some: { name: { equals: e } } } } } }, { timeCreated: {
|
|
259
255
|
gte: r,
|
|
260
256
|
lt: i
|
|
261
257
|
} }] }), { itemSeeds: c } = await o.getEasClient().request(s, {
|
|
@@ -288,13 +284,13 @@ function Me() {
|
|
|
288
284
|
}
|
|
289
285
|
};
|
|
290
286
|
}
|
|
291
|
-
var
|
|
292
|
-
function
|
|
293
|
-
return
|
|
287
|
+
var Oe = null;
|
|
288
|
+
function j() {
|
|
289
|
+
return Oe ||= De(), Oe;
|
|
294
290
|
}
|
|
295
291
|
//#endregion
|
|
296
292
|
//#region src/assembleSeeds.ts
|
|
297
|
-
var
|
|
293
|
+
var M = "image", N = ["0x0000000000000000000000000000000000000000000000000000000000000020"], ke = /* @__PURE__ */ new Set([
|
|
298
294
|
"seedUid",
|
|
299
295
|
"SeedUid",
|
|
300
296
|
"timeCreated",
|
|
@@ -305,8 +301,8 @@ var L = "image", R = ["0x0000000000000000000000000000000000000000000000000000000
|
|
|
305
301
|
"storageTransactionId",
|
|
306
302
|
"storageProviderTransactionId",
|
|
307
303
|
"versionUid"
|
|
308
|
-
]),
|
|
309
|
-
function
|
|
304
|
+
]), P = (e) => e.replace(/_([a-z])/g, (e, t) => t.toUpperCase());
|
|
305
|
+
function Ae() {
|
|
310
306
|
return {
|
|
311
307
|
seedUidToModelType: /* @__PURE__ */ new Map(),
|
|
312
308
|
relatedSeedUids: /* @__PURE__ */ new Set(),
|
|
@@ -319,7 +315,7 @@ function Fe() {
|
|
|
319
315
|
requestedSeedUids: /* @__PURE__ */ new Set()
|
|
320
316
|
};
|
|
321
317
|
}
|
|
322
|
-
function
|
|
318
|
+
function F(e) {
|
|
323
319
|
let t = [];
|
|
324
320
|
for (let n of e.requestedSeedUids) {
|
|
325
321
|
let r = e.assembledItems.get(n);
|
|
@@ -327,18 +323,18 @@ function B(e) {
|
|
|
327
323
|
}
|
|
328
324
|
return t;
|
|
329
325
|
}
|
|
330
|
-
function
|
|
326
|
+
function I(e, t) {
|
|
331
327
|
!e.seedUid && !e.SeedUid ? (e.seedUid = t, e.SeedUid = t) : e.seedUid && !e.SeedUid ? e.SeedUid = e.seedUid : e.SeedUid && !e.seedUid && (e.seedUid = e.SeedUid), e.attester && !e.Attester ? e.Attester = e.attester : e.Attester && !e.attester && (e.attester = e.Attester);
|
|
332
328
|
}
|
|
333
|
-
function
|
|
329
|
+
function je(e, t, n) {
|
|
334
330
|
e.relatedSeedUids.add(n);
|
|
335
331
|
let r = e.versionUidToSeedUid.get(t.refUID);
|
|
336
332
|
if (!r) return;
|
|
337
333
|
let i = e.relatedSeedUidsBySeedUid.get(r) ?? /* @__PURE__ */ new Set();
|
|
338
334
|
i.add(n), e.relatedSeedUidsBySeedUid.set(r, i);
|
|
339
335
|
}
|
|
340
|
-
async function
|
|
341
|
-
let n =
|
|
336
|
+
async function Me(e, t) {
|
|
337
|
+
let n = A(t.decodedDataJson);
|
|
342
338
|
if (!n.ok) {
|
|
343
339
|
let { id: e, refUID: r, schemaId: i } = t;
|
|
344
340
|
n.reason === "empty" ? console.warn("[query] [processItemProperty] empty decodedDataJson for property:", e, r, i) : n.reason === "parse" ? console.warn("[query] [processItemProperty] failed to parse decodedDataJson for property:", e, r, i, n.error) : console.warn("[query] [processItemProperty] invalid decodedDataJson structure for property:", e, r, i);
|
|
@@ -357,13 +353,13 @@ async function Le(e, t) {
|
|
|
357
353
|
if (u || d) {
|
|
358
354
|
if (o = !0, Array.isArray(r.value)) {
|
|
359
355
|
if (s = !0, d) {
|
|
360
|
-
let e =
|
|
356
|
+
let e = Te(i);
|
|
361
357
|
e && (i = e.propertyName);
|
|
362
358
|
}
|
|
363
359
|
r.value.forEach((n) => {
|
|
364
|
-
|
|
360
|
+
N.includes(n) || je(e, t, n);
|
|
365
361
|
});
|
|
366
|
-
} else
|
|
362
|
+
} else N.includes(r.value) || je(e, t, r.value);
|
|
367
363
|
}
|
|
368
364
|
let f = r.value;
|
|
369
365
|
o && s && Array.isArray(f) ? f = f.map((e) => String(e)) : typeof f != "string" && (f = (h(l) ? c(f) : void 0) ?? JSON.stringify(f));
|
|
@@ -371,21 +367,21 @@ async function Le(e, t) {
|
|
|
371
367
|
if (!p) return;
|
|
372
368
|
let g = e.assembledItems.get(p) || {};
|
|
373
369
|
g[i] = f;
|
|
374
|
-
let _ =
|
|
370
|
+
let _ = P(i);
|
|
375
371
|
_ !== i && (g[_] = f), e.assembledItems.set(p, g);
|
|
376
372
|
}
|
|
377
|
-
function
|
|
373
|
+
function Ne(e) {
|
|
378
374
|
let t = /* @__PURE__ */ new Map();
|
|
379
375
|
for (let [n, r] of e) (r.versionUid !== void 0 || r.asOf !== void 0) && t.set(n.toLowerCase(), r);
|
|
380
376
|
return t;
|
|
381
377
|
}
|
|
382
|
-
function
|
|
378
|
+
function Pe(e, t) {
|
|
383
379
|
let n = t.asOf, r = n === void 0 ? e : e.filter((e) => e.timeCreated <= n);
|
|
384
380
|
if (t.versionUid === void 0) return [...r].sort((e, t) => t.timeCreated - e.timeCreated)[0];
|
|
385
381
|
let i = t.versionUid.toLowerCase();
|
|
386
382
|
return r.find((e) => e.id.toLowerCase() === i);
|
|
387
383
|
}
|
|
388
|
-
async function
|
|
384
|
+
async function Fe(e, t, n, r = {}) {
|
|
389
385
|
let i = [];
|
|
390
386
|
for (let n = 0; n < t.length; n++) {
|
|
391
387
|
let r = t[n];
|
|
@@ -417,7 +413,7 @@ async function Be(e, t, n, r = {}) {
|
|
|
417
413
|
for (let t of i) {
|
|
418
414
|
let n = r.pins?.get(t.toLowerCase());
|
|
419
415
|
if (!n) continue;
|
|
420
|
-
let i =
|
|
416
|
+
let i = Pe(e.versionsBySeedUid.get(t) ?? [], n);
|
|
421
417
|
i ? (l.push(i.id), e.latestVersionUidsBySeedUid.set(t, i.id), n.asOf !== void 0 && u.set(i.id, n.asOf)) : (e.assembledItems.delete(t), e.seedUidToModelType.delete(t), e.versionsBySeedUid.delete(t), e.droppedSeedUids.add(t));
|
|
422
418
|
}
|
|
423
419
|
for (let [t, n] of e.versionsBySeedUid.entries()) {
|
|
@@ -430,25 +426,25 @@ async function Be(e, t, n, r = {}) {
|
|
|
430
426
|
let t = u.get(e.refUID);
|
|
431
427
|
return t === void 0 || e.timeCreated <= t;
|
|
432
428
|
}), f = _(d);
|
|
433
|
-
for (let t = 0; t < f.length; t++) await
|
|
429
|
+
for (let t = 0; t < f.length; t++) await Me(e, f[t]);
|
|
434
430
|
}
|
|
435
|
-
function
|
|
436
|
-
for (let [, t] of
|
|
437
|
-
let n = Object.keys(t).filter((e) => !e.startsWith("_") && !
|
|
431
|
+
function Ie(e) {
|
|
432
|
+
for (let [, t] of F(e)) {
|
|
433
|
+
let n = Object.keys(t).filter((e) => !e.startsWith("_") && !ke.has(e));
|
|
438
434
|
for (let r of n) {
|
|
439
|
-
let n = t[r], i =
|
|
435
|
+
let n = t[r], i = ae(n);
|
|
440
436
|
if (i !== n && Array.isArray(i) && (t[r] = i, n = i), Array.isArray(n)) {
|
|
441
437
|
let i = n;
|
|
442
|
-
if (!i.some((t) => typeof t == "string" && !
|
|
438
|
+
if (!i.some((t) => typeof t == "string" && !N.includes(t) && e.assembledItems.has(t))) continue;
|
|
443
439
|
let a = [], o = [], s = !1;
|
|
444
440
|
for (let t of i) {
|
|
445
|
-
if (typeof t != "string" ||
|
|
441
|
+
if (typeof t != "string" || N.includes(t)) {
|
|
446
442
|
a.push(String(t)), o.push("unknown");
|
|
447
443
|
continue;
|
|
448
444
|
}
|
|
449
445
|
let n = e.seedUidToModelType.get(t) ?? "unknown";
|
|
450
|
-
if (n ===
|
|
451
|
-
a.push(t), o.push(
|
|
446
|
+
if (n === M) {
|
|
447
|
+
a.push(t), o.push(M);
|
|
452
448
|
continue;
|
|
453
449
|
}
|
|
454
450
|
let r = e.assembledItems.get(t), i = r?.storageTransactionId ?? r?.storage_transaction_id;
|
|
@@ -461,26 +457,26 @@ function Ve(e) {
|
|
|
461
457
|
}
|
|
462
458
|
if (s) {
|
|
463
459
|
let e = S(r);
|
|
464
|
-
if (t[e] = a,
|
|
460
|
+
if (t[e] = a, fe(t, e, o), ie(t, e), e !== r) {
|
|
465
461
|
delete t[r];
|
|
466
|
-
let e =
|
|
462
|
+
let e = P(r);
|
|
467
463
|
e !== r && delete t[e];
|
|
468
464
|
}
|
|
469
465
|
}
|
|
470
466
|
} else if (typeof n == "string") {
|
|
471
|
-
if (
|
|
467
|
+
if (N.includes(n) || !e.assembledItems.has(n)) continue;
|
|
472
468
|
let i = e.assembledItems.get(n);
|
|
473
|
-
if (e.seedUidToModelType.get(n) ===
|
|
469
|
+
if (e.seedUidToModelType.get(n) === M) continue;
|
|
474
470
|
let a = i?.storageTransactionId ?? i?.storage_transaction_id;
|
|
475
471
|
if (a && typeof a == "string" && a.trim()) try {
|
|
476
472
|
let i = r.endsWith("_id") ? r.replace(/_id$/, "") : r;
|
|
477
473
|
t[i] = x(a);
|
|
478
474
|
let o = e.seedUidToModelType.get(n) ?? "unknown";
|
|
479
|
-
|
|
480
|
-
let s =
|
|
481
|
-
if (s !== i &&
|
|
475
|
+
E(t, i, o);
|
|
476
|
+
let s = P(i);
|
|
477
|
+
if (s !== i && E(t, s, o), i !== r) {
|
|
482
478
|
delete t[r];
|
|
483
|
-
let e =
|
|
479
|
+
let e = P(r);
|
|
484
480
|
e !== r && delete t[e];
|
|
485
481
|
}
|
|
486
482
|
} catch {}
|
|
@@ -488,15 +484,15 @@ function Ve(e) {
|
|
|
488
484
|
}
|
|
489
485
|
}
|
|
490
486
|
}
|
|
491
|
-
function
|
|
492
|
-
for (let [, t] of
|
|
493
|
-
let n = Object.keys(t).filter((e) => !e.startsWith("_") && !
|
|
487
|
+
function Le(e) {
|
|
488
|
+
for (let [, t] of F(e)) {
|
|
489
|
+
let n = Object.keys(t).filter((e) => !e.startsWith("_") && !ke.has(e));
|
|
494
490
|
for (let r of n) {
|
|
495
|
-
let n = t[r], i =
|
|
491
|
+
let n = t[r], i = ae(n);
|
|
496
492
|
i !== n && Array.isArray(i) && (t[r] = i, n = i);
|
|
497
493
|
let a = Array.isArray(n), o = a ? n : [n], s = [], c = !1;
|
|
498
494
|
for (let t of o) {
|
|
499
|
-
if (typeof t != "string" ||
|
|
495
|
+
if (typeof t != "string" || N.includes(t)) {
|
|
500
496
|
s.push(t);
|
|
501
497
|
continue;
|
|
502
498
|
}
|
|
@@ -506,9 +502,9 @@ function He(e) {
|
|
|
506
502
|
continue;
|
|
507
503
|
}
|
|
508
504
|
let r = n?.storageTransactionId ?? n?.storage_transaction_id;
|
|
509
|
-
if (e.seedUidToModelType.get(t) ===
|
|
505
|
+
if (e.seedUidToModelType.get(t) === M) {
|
|
510
506
|
let e = { ...n };
|
|
511
|
-
|
|
507
|
+
I(e, t), e.schemaName = M, oe(e), s.push(e), c = !0;
|
|
512
508
|
continue;
|
|
513
509
|
}
|
|
514
510
|
if (r && typeof r == "string" && r.trim()) {
|
|
@@ -516,23 +512,23 @@ function He(e) {
|
|
|
516
512
|
continue;
|
|
517
513
|
}
|
|
518
514
|
let i = { ...n };
|
|
519
|
-
|
|
515
|
+
I(i, t), s.push(i), c = !0;
|
|
520
516
|
}
|
|
521
517
|
if (c) {
|
|
522
518
|
let e = a ? S(r) : r.endsWith("_id") ? r.replace(/_id$/, "") : r;
|
|
523
519
|
if (t[e] = a ? s : s[0], ie(t, e), e !== r) {
|
|
524
520
|
delete t[r];
|
|
525
|
-
let e =
|
|
521
|
+
let e = P(r);
|
|
526
522
|
e !== r && delete t[e];
|
|
527
523
|
}
|
|
528
524
|
}
|
|
529
525
|
}
|
|
530
526
|
}
|
|
531
527
|
}
|
|
532
|
-
function
|
|
533
|
-
return
|
|
528
|
+
function Re(e, t) {
|
|
529
|
+
return F(e).map(([n, r]) => {
|
|
534
530
|
let i = e.latestVersionUidsBySeedUid.get(n) ?? "";
|
|
535
|
-
i && (r.versionUid = i),
|
|
531
|
+
i && (r.versionUid = i), I(r, n);
|
|
536
532
|
let a = typeof r.timeCreated == "number" ? r.timeCreated : 0, o = typeof r.attester == "string" ? r.attester : typeof r.Attester == "string" ? r.Attester : void 0;
|
|
537
533
|
return {
|
|
538
534
|
seedUid: n,
|
|
@@ -544,48 +540,48 @@ function Ue(e, t) {
|
|
|
544
540
|
};
|
|
545
541
|
});
|
|
546
542
|
}
|
|
547
|
-
function
|
|
543
|
+
function ze(e, t, n) {
|
|
548
544
|
let r = [t, ...n ? e.relatedSeedUidsBySeedUid.get(t) ?? [] : []], i = r.map((t) => e.latestVersionUidsBySeedUid.get(t)).filter((e) => !!e);
|
|
549
545
|
return {
|
|
550
546
|
refUIDs: [...r, ...i],
|
|
551
547
|
ids: r
|
|
552
548
|
};
|
|
553
549
|
}
|
|
554
|
-
async function
|
|
555
|
-
return
|
|
550
|
+
async function L(e, t, n, r = j(), i) {
|
|
551
|
+
return R(t, n, r, {
|
|
556
552
|
schemaName: e,
|
|
557
553
|
versions: i?.versions
|
|
558
554
|
});
|
|
559
555
|
}
|
|
560
|
-
async function
|
|
561
|
-
let a =
|
|
562
|
-
for (let
|
|
563
|
-
await
|
|
556
|
+
async function R(t, n, r, i = {}) {
|
|
557
|
+
let a = e(n), o = n?.hydrateStorage !== !1, s = Ae();
|
|
558
|
+
for (let e of t) e && s.requestedSeedUids.add(e.id);
|
|
559
|
+
await Fe(s, t, r, {
|
|
564
560
|
dropSeedsWithOnlyRevokedVersions: !0,
|
|
565
561
|
versions: i.versions,
|
|
566
|
-
pins: i.pins &&
|
|
562
|
+
pins: i.pins && Ne(i.pins)
|
|
567
563
|
});
|
|
568
564
|
let c = Array.from(s.relatedSeedUids).filter((e) => !s.assembledItems.has(e) && !s.droppedSeedUids.has(e));
|
|
569
565
|
if (a !== "uids" && c.length > 0) {
|
|
570
566
|
let [e, t] = await Promise.all([r.getSeedsByUids(c), r.getVersionsForSeeds(c, { includeRevoked: !0 })]);
|
|
571
|
-
await
|
|
567
|
+
await Fe(s, e, r, { versions: t });
|
|
572
568
|
}
|
|
573
|
-
a !== "uids" &&
|
|
574
|
-
let l =
|
|
575
|
-
o && await
|
|
569
|
+
a !== "uids" && Ie(s), a === "expand" && Le(s);
|
|
570
|
+
let l = Re(s, i.schemaName);
|
|
571
|
+
o && await we(l.map((e) => e.data), r.readStorageBody ? { readStorageBody: r.readStorageBody.bind(r) } : void 0);
|
|
576
572
|
let u = a !== "uids";
|
|
577
573
|
return {
|
|
578
574
|
records: l,
|
|
579
|
-
dependencies: new Map(l.map((e) => [e.seedUid,
|
|
575
|
+
dependencies: new Map(l.map((e) => [e.seedUid, ze(s, e.seedUid, u)]))
|
|
580
576
|
};
|
|
581
577
|
}
|
|
582
|
-
async function
|
|
583
|
-
return (await
|
|
578
|
+
async function Be(e, t, n, r = j()) {
|
|
579
|
+
return (await L(e, t, n, r)).records;
|
|
584
580
|
}
|
|
585
581
|
//#endregion
|
|
586
582
|
//#region src/changelog.ts
|
|
587
|
-
var
|
|
588
|
-
function
|
|
583
|
+
var Ve = (e) => e.replace(/_([a-z])/g, (e, t) => t.toUpperCase());
|
|
584
|
+
function z(e, t) {
|
|
589
585
|
if (Object.is(e, t)) return !0;
|
|
590
586
|
if (e === void 0 || t === void 0) return !1;
|
|
591
587
|
if (e === null || t === null) return e === t;
|
|
@@ -596,19 +592,19 @@ function W(e, t) {
|
|
|
596
592
|
return !1;
|
|
597
593
|
}
|
|
598
594
|
}
|
|
599
|
-
function
|
|
600
|
-
let t =
|
|
595
|
+
function B(e) {
|
|
596
|
+
let t = A(e.decodedDataJson);
|
|
601
597
|
if (!t.ok) return null;
|
|
602
598
|
let n = t.metadata, r = n.name;
|
|
603
599
|
if (!r) return null;
|
|
604
600
|
let i = n.type, a = (i === "bytes32" || i === "bytes32[]") && r !== "storage_transaction_id" && r !== "storage_provider_transaction_id", o = !a && (r.endsWith("_id") || r.endsWith("_ids")) && r !== "storage_transaction_id" && r !== "storage_provider_transaction_id", s = !1, l = !1;
|
|
605
601
|
if ((a || o) && (s = !0, Array.isArray(n.value) && (l = !0, o))) {
|
|
606
|
-
let e =
|
|
602
|
+
let e = Te(r);
|
|
607
603
|
e?.isList && (r = e.propertyName);
|
|
608
604
|
}
|
|
609
605
|
let u = n.value;
|
|
610
606
|
s && l && Array.isArray(u) ? u = u.map((e) => String(e)) : typeof u != "string" && (u = (h(i) ? c(u) : void 0) ?? JSON.stringify(u));
|
|
611
|
-
let d =
|
|
607
|
+
let d = Ve(r);
|
|
612
608
|
return {
|
|
613
609
|
propertyName: r,
|
|
614
610
|
value: u,
|
|
@@ -616,19 +612,19 @@ function qe(e) {
|
|
|
616
612
|
...m(i, n.value) && { removed: !0 }
|
|
617
613
|
};
|
|
618
614
|
}
|
|
619
|
-
function
|
|
615
|
+
function He(e) {
|
|
620
616
|
let t = {};
|
|
621
617
|
for (let n of e) {
|
|
622
|
-
let e =
|
|
618
|
+
let e = B(n);
|
|
623
619
|
e && !e.removed && (t[e.propertyName] = e.value, e.camelName && (t[e.camelName] = e.value));
|
|
624
620
|
}
|
|
625
621
|
return t;
|
|
626
622
|
}
|
|
627
|
-
function
|
|
623
|
+
function Ue(e) {
|
|
628
624
|
let t = [], n = {};
|
|
629
625
|
for (let r of e) {
|
|
630
626
|
let e = r.data, i = /* @__PURE__ */ new Set([...Object.keys(n), ...Object.keys(e)]), a = [];
|
|
631
|
-
for (let t of i)
|
|
627
|
+
for (let t of i) z(n[t], e[t]) || a.push(t);
|
|
632
628
|
a.sort(), t.push({
|
|
633
629
|
type: "version",
|
|
634
630
|
at: r.at,
|
|
@@ -640,15 +636,15 @@ function Ye(e) {
|
|
|
640
636
|
}
|
|
641
637
|
return t;
|
|
642
638
|
}
|
|
643
|
-
function
|
|
639
|
+
function We(e) {
|
|
644
640
|
let t = [...e].sort((e, t) => e.timeCreated === t.timeCreated ? e.id.localeCompare(t.id) : e.timeCreated - t.timeCreated), n = /* @__PURE__ */ new Map(), r = [];
|
|
645
641
|
for (let e of t) {
|
|
646
|
-
let t =
|
|
642
|
+
let t = B(e);
|
|
647
643
|
if (!t) continue;
|
|
648
644
|
let i = [t.propertyName];
|
|
649
645
|
t.camelName && i.push(t.camelName);
|
|
650
646
|
let a = n.has(t.propertyName) ? n.get(t.propertyName) : void 0, o = t.removed ? void 0 : t.value;
|
|
651
|
-
|
|
647
|
+
z(a, o) || r.push({
|
|
652
648
|
type: "property",
|
|
653
649
|
at: e.timeCreated,
|
|
654
650
|
versionUid: e.refUID,
|
|
@@ -660,7 +656,7 @@ function Xe(e) {
|
|
|
660
656
|
}
|
|
661
657
|
return r;
|
|
662
658
|
}
|
|
663
|
-
function
|
|
659
|
+
function Ge(e, t) {
|
|
664
660
|
let n = e;
|
|
665
661
|
if (typeof t?.since == "number") {
|
|
666
662
|
let e = t.since;
|
|
@@ -670,14 +666,14 @@ function Ze(e, t) {
|
|
|
670
666
|
}
|
|
671
667
|
//#endregion
|
|
672
668
|
//#region src/assembleChangelog.ts
|
|
673
|
-
async function
|
|
669
|
+
async function Ke(e, t, n = j()) {
|
|
674
670
|
let r = t?.changelog ?? {}, i = r.granularity ?? "version", [a, o] = await Promise.all([n.getSeedByUid(e), n.getVersionsForSeed(e)]), s = [...g(o, a ? [a] : [])].sort((e, t) => e.timeCreated - t.timeCreated);
|
|
675
671
|
if (s.length === 0) return {
|
|
676
672
|
latestVersionUid: "",
|
|
677
673
|
changelog: []
|
|
678
674
|
};
|
|
679
675
|
let c = s[s.length - 1].id, l = s.map((e) => e.id), u = g(await n.getPropertiesForVersionUids(l), s), d;
|
|
680
|
-
if (i === "property") d =
|
|
676
|
+
if (i === "property") d = We(u);
|
|
681
677
|
else {
|
|
682
678
|
let e = /* @__PURE__ */ new Map();
|
|
683
679
|
for (let t of u) {
|
|
@@ -690,62 +686,60 @@ async function Qe(e, t, n = I()) {
|
|
|
690
686
|
t.push({
|
|
691
687
|
versionUid: n.id,
|
|
692
688
|
at: n.timeCreated,
|
|
693
|
-
data:
|
|
689
|
+
data: He(i)
|
|
694
690
|
});
|
|
695
691
|
}
|
|
696
|
-
d =
|
|
692
|
+
d = Ue(t);
|
|
697
693
|
}
|
|
698
694
|
return {
|
|
699
695
|
latestVersionUid: c,
|
|
700
|
-
changelog:
|
|
696
|
+
changelog: Ge(d, r)
|
|
701
697
|
};
|
|
702
698
|
}
|
|
703
699
|
//#endregion
|
|
704
700
|
//#region src/cache/etag.ts
|
|
705
|
-
function
|
|
701
|
+
function qe(e) {
|
|
706
702
|
return `"${te(ee(ne(e))).substring(0, 16)}"`;
|
|
707
703
|
}
|
|
708
|
-
function
|
|
709
|
-
return
|
|
704
|
+
function Je(e, t, n) {
|
|
705
|
+
return qe(`${e}-${t}-${n.join(",")}`);
|
|
710
706
|
}
|
|
711
|
-
function
|
|
712
|
-
return
|
|
707
|
+
function Ye(e, t) {
|
|
708
|
+
return qe(`${t}-${Xe(e)}`);
|
|
713
709
|
}
|
|
714
|
-
function
|
|
710
|
+
function Xe(e) {
|
|
715
711
|
return JSON.stringify(e, (e, t) => t && typeof t == "object" && !Array.isArray(t) ? Object.fromEntries(Object.keys(t).sort().map((e) => [e, t[e]])) : t);
|
|
716
712
|
}
|
|
717
713
|
//#endregion
|
|
718
714
|
//#region src/cache/config.ts
|
|
719
|
-
function
|
|
715
|
+
function Ze() {
|
|
720
716
|
return globalThis.process?.env ?? {};
|
|
721
717
|
}
|
|
722
|
-
function
|
|
723
|
-
return
|
|
718
|
+
function Qe() {
|
|
719
|
+
return Ze().NODE_ENV !== "production";
|
|
724
720
|
}
|
|
725
|
-
function
|
|
726
|
-
let e =
|
|
721
|
+
function V() {
|
|
722
|
+
let e = Ze(), t = parseInt(e.CACHE_TTL || "3600", 10), n = e.CACHE_DIR || "./cache", r = e.CACHE_ENABLED === "false" || e.CACHE_ENABLED === "0" || e.CACHE_ENABLED === "no" || e.CACHE_ENABLED === "off", i = e.CACHE_ENABLED === "true" || e.CACHE_ENABLED === "1" || e.CACHE_ENABLED === "yes", a = e.NODE_ENV === "development", o;
|
|
727
723
|
o = r ? !1 : i ? !0 : !a;
|
|
728
|
-
let s =
|
|
724
|
+
let s = Math.max(0, parseInt(e.CACHE_MAX_AGE || "0", 10) || 0);
|
|
729
725
|
return {
|
|
730
726
|
ttl: t,
|
|
731
727
|
cacheDir: n,
|
|
732
728
|
enabled: o,
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
maxAge: l,
|
|
736
|
-
freezeRecords: it()
|
|
729
|
+
maxAge: s,
|
|
730
|
+
freezeRecords: Qe()
|
|
737
731
|
};
|
|
738
732
|
}
|
|
739
733
|
//#endregion
|
|
740
734
|
//#region src/cache/freeze.ts
|
|
741
|
-
function
|
|
735
|
+
function H(e) {
|
|
742
736
|
if (typeof e != "object" || !e || Object.isFrozen(e) || ArrayBuffer.isView(e)) return e;
|
|
743
|
-
for (let t of Object.values(e))
|
|
737
|
+
for (let t of Object.values(e)) H(t);
|
|
744
738
|
return Object.freeze(e);
|
|
745
739
|
}
|
|
746
740
|
//#endregion
|
|
747
741
|
//#region src/cache/MemoryCache.ts
|
|
748
|
-
var
|
|
742
|
+
var $e = class {
|
|
749
743
|
collectionCache = /* @__PURE__ */ new Map();
|
|
750
744
|
itemCache = /* @__PURE__ */ new Map();
|
|
751
745
|
config;
|
|
@@ -760,7 +754,7 @@ var st = class {
|
|
|
760
754
|
return `${e}:${t}`;
|
|
761
755
|
}
|
|
762
756
|
get freezeRecords() {
|
|
763
|
-
return this.config.freezeRecords ??
|
|
757
|
+
return this.config.freezeRecords ?? Qe();
|
|
764
758
|
}
|
|
765
759
|
expired(e) {
|
|
766
760
|
return Math.floor(Date.now() / 1e3) - e > this.config.ttl;
|
|
@@ -770,7 +764,7 @@ var st = class {
|
|
|
770
764
|
return r ? this.expired(r.lastUpdated) ? (this.collectionCache.delete(n), null) : r : null;
|
|
771
765
|
}
|
|
772
766
|
setCollection(e, t, n) {
|
|
773
|
-
if (this.freezeRecords) for (let e of n.items)
|
|
767
|
+
if (this.freezeRecords) for (let e of n.items) H(e);
|
|
774
768
|
this.collectionCache.set(this.collectionKey(e, t), n);
|
|
775
769
|
}
|
|
776
770
|
getItem(e, t) {
|
|
@@ -778,7 +772,7 @@ var st = class {
|
|
|
778
772
|
return r ? this.expired(r.lastUpdated) ? (this.itemCache.delete(n), null) : r : null;
|
|
779
773
|
}
|
|
780
774
|
setItem(e) {
|
|
781
|
-
this.freezeRecords &&
|
|
775
|
+
this.freezeRecords && H(e.record), this.itemCache.set(this.itemKey(e.record.seedUid, e.optionsKey), e);
|
|
782
776
|
}
|
|
783
777
|
clearCollection(e) {
|
|
784
778
|
for (let t of this.collectionCache.keys()) t.startsWith(`${e}\n`) && this.collectionCache.delete(t);
|
|
@@ -815,19 +809,19 @@ var st = class {
|
|
|
815
809
|
activeLocks: this.refreshLocks.size
|
|
816
810
|
};
|
|
817
811
|
}
|
|
818
|
-
},
|
|
819
|
-
function
|
|
820
|
-
|
|
812
|
+
}, et = () => null;
|
|
813
|
+
function tt(e) {
|
|
814
|
+
et = e;
|
|
821
815
|
}
|
|
822
|
-
function
|
|
816
|
+
function nt(e) {
|
|
823
817
|
let t = e;
|
|
824
818
|
return !!t && Array.isArray(t.items) && typeof t.meta == "object" && t.meta !== null && typeof t.checkedAt == "number" && Array.isArray(t.seenChangeKeys);
|
|
825
819
|
}
|
|
826
|
-
function
|
|
820
|
+
function rt(e) {
|
|
827
821
|
let t = e;
|
|
828
822
|
return !!t && !!t.record && !!t.dependencies && typeof t.checkedAt == "number" && Array.isArray(t.seenChangeKeys);
|
|
829
823
|
}
|
|
830
|
-
var
|
|
824
|
+
var U = class {
|
|
831
825
|
memoryCache;
|
|
832
826
|
persistent;
|
|
833
827
|
config;
|
|
@@ -839,7 +833,7 @@ var ft = class {
|
|
|
839
833
|
errors: 0
|
|
840
834
|
};
|
|
841
835
|
constructor(e, t) {
|
|
842
|
-
this.config = e, this.memoryCache = new
|
|
836
|
+
this.config = e, this.memoryCache = new $e(e), this.persistent = t === void 0 ? et(e) : t;
|
|
843
837
|
}
|
|
844
838
|
get enabled() {
|
|
845
839
|
return this.config.enabled;
|
|
@@ -853,7 +847,7 @@ var ft = class {
|
|
|
853
847
|
let n = this.memoryCache.getCollection(e, t);
|
|
854
848
|
if (n) return this.stats.hits++, n;
|
|
855
849
|
let r = await this.persistent?.getCollection(e, t) ?? null;
|
|
856
|
-
return
|
|
850
|
+
return nt(r) ? (this.memoryCache.setCollection(e, t, r), this.stats.hits++, r) : (this.stats.misses++, null);
|
|
857
851
|
} catch (t) {
|
|
858
852
|
return console.error(`Error getting query collection cache for ${e}:`, t), this.stats.errors++, null;
|
|
859
853
|
}
|
|
@@ -864,7 +858,7 @@ var ft = class {
|
|
|
864
858
|
let r = n.items.map((e) => ({
|
|
865
859
|
...e,
|
|
866
860
|
data: { ...e.data }
|
|
867
|
-
})), i =
|
|
861
|
+
})), i = Je(e, t, r.map((e) => Ye(e, t))), a = {
|
|
868
862
|
...n,
|
|
869
863
|
items: r,
|
|
870
864
|
etag: i
|
|
@@ -880,7 +874,7 @@ var ft = class {
|
|
|
880
874
|
let n = this.memoryCache.getItem(e, t);
|
|
881
875
|
if (n) return this.stats.hits++, n;
|
|
882
876
|
let r = await this.persistent?.getItem(e, t) ?? null;
|
|
883
|
-
return
|
|
877
|
+
return rt(r) ? (this.memoryCache.setItem(r), this.stats.hits++, r) : (this.stats.misses++, null);
|
|
884
878
|
} catch (t) {
|
|
885
879
|
return console.error(`Error getting query item cache for ${e}:`, t), this.stats.errors++, null;
|
|
886
880
|
}
|
|
@@ -895,7 +889,7 @@ var ft = class {
|
|
|
895
889
|
}, n = {
|
|
896
890
|
...e,
|
|
897
891
|
record: t,
|
|
898
|
-
etag:
|
|
892
|
+
etag: Ye(t, e.optionsKey)
|
|
899
893
|
};
|
|
900
894
|
return this.memoryCache.setItem(n), await this.persistent?.setItem(n), n;
|
|
901
895
|
} catch (t) {
|
|
@@ -953,16 +947,16 @@ var ft = class {
|
|
|
953
947
|
errors: 0
|
|
954
948
|
};
|
|
955
949
|
}
|
|
956
|
-
},
|
|
950
|
+
}, W = null;
|
|
957
951
|
function G() {
|
|
958
|
-
return
|
|
952
|
+
return W ||= new U(V()), W;
|
|
959
953
|
}
|
|
960
|
-
function
|
|
961
|
-
|
|
954
|
+
function it() {
|
|
955
|
+
W = null;
|
|
962
956
|
}
|
|
963
|
-
function
|
|
964
|
-
return new
|
|
965
|
-
...
|
|
957
|
+
function at(e, t) {
|
|
958
|
+
return new U({
|
|
959
|
+
...V(),
|
|
966
960
|
...e
|
|
967
961
|
}, t);
|
|
968
962
|
}
|
|
@@ -972,11 +966,11 @@ function K() {
|
|
|
972
966
|
function q(e) {
|
|
973
967
|
return e - 600;
|
|
974
968
|
}
|
|
975
|
-
function
|
|
969
|
+
function ot(e, t) {
|
|
976
970
|
return q(t) - e.checkedAt > 600;
|
|
977
971
|
}
|
|
978
972
|
var J = (e) => `${e.id}:${e.revocationTime}`;
|
|
979
|
-
async function
|
|
973
|
+
async function st(e, t, n) {
|
|
980
974
|
if (!e.listChangesSince) return null;
|
|
981
975
|
if (t.size === 0) return {
|
|
982
976
|
changed: /* @__PURE__ */ new Set(),
|
|
@@ -1004,7 +998,7 @@ async function _t(e, t, n) {
|
|
|
1004
998
|
seenChangeKeys: o.map(J)
|
|
1005
999
|
};
|
|
1006
1000
|
}
|
|
1007
|
-
async function
|
|
1001
|
+
async function ct(e, t) {
|
|
1008
1002
|
if (!e.listChangesSince) return null;
|
|
1009
1003
|
let n = /* @__PURE__ */ new Set(), r = /* @__PURE__ */ new Map();
|
|
1010
1004
|
if (t.size === 0) return {
|
|
@@ -1035,17 +1029,17 @@ async function vt(e, t) {
|
|
|
1035
1029
|
//#endregion
|
|
1036
1030
|
//#region src/source/registry.ts
|
|
1037
1031
|
var Y = null;
|
|
1038
|
-
function
|
|
1032
|
+
function lt(e) {
|
|
1039
1033
|
if (e.kind !== "local") throw Error("[query] registerLocalQuerySource expects a source with kind: \"local\"");
|
|
1040
1034
|
Y = e;
|
|
1041
1035
|
}
|
|
1042
|
-
function
|
|
1036
|
+
function ut() {
|
|
1043
1037
|
Y = null;
|
|
1044
1038
|
}
|
|
1045
|
-
function
|
|
1039
|
+
function dt() {
|
|
1046
1040
|
return Y;
|
|
1047
1041
|
}
|
|
1048
|
-
function
|
|
1042
|
+
function ft() {
|
|
1049
1043
|
return Y != null;
|
|
1050
1044
|
}
|
|
1051
1045
|
//#endregion
|
|
@@ -1053,10 +1047,10 @@ function St() {
|
|
|
1053
1047
|
function X(e = "remote") {
|
|
1054
1048
|
if (e === "remote") return {
|
|
1055
1049
|
mode: "remote",
|
|
1056
|
-
dataSource:
|
|
1050
|
+
dataSource: j(),
|
|
1057
1051
|
useQueryCache: !0
|
|
1058
1052
|
};
|
|
1059
|
-
let t =
|
|
1053
|
+
let t = dt();
|
|
1060
1054
|
if (e === "local") {
|
|
1061
1055
|
if (!t) throw Error("[query] source: \"local\" requires registerLocalQuerySource(...) (e.g. SDK DB ready)");
|
|
1062
1056
|
return {
|
|
@@ -1071,7 +1065,7 @@ function X(e = "remote") {
|
|
|
1071
1065
|
useQueryCache: !1
|
|
1072
1066
|
} : {
|
|
1073
1067
|
mode: "auto",
|
|
1074
|
-
dataSource:
|
|
1068
|
+
dataSource: j(),
|
|
1075
1069
|
useQueryCache: !0
|
|
1076
1070
|
};
|
|
1077
1071
|
}
|
|
@@ -1087,19 +1081,19 @@ var Q = {
|
|
|
1087
1081
|
function $(e, t) {
|
|
1088
1082
|
return !t || e?.cache === !1 ? !1 : G().enabled;
|
|
1089
1083
|
}
|
|
1090
|
-
function
|
|
1084
|
+
function pt(e) {
|
|
1091
1085
|
return e === "data+changelog" || e === "changelog";
|
|
1092
1086
|
}
|
|
1093
|
-
function
|
|
1087
|
+
function mt(e) {
|
|
1094
1088
|
return e !== "changelog";
|
|
1095
1089
|
}
|
|
1096
|
-
async function
|
|
1097
|
-
return
|
|
1090
|
+
async function ht(e, t, n, r, i) {
|
|
1091
|
+
return L(e, await i.listSeedsBySchemaName(e, {
|
|
1098
1092
|
limit: t,
|
|
1099
1093
|
skip: n
|
|
1100
1094
|
}), r, i);
|
|
1101
1095
|
}
|
|
1102
|
-
async function
|
|
1096
|
+
async function gt(e, t, n) {
|
|
1103
1097
|
let r = await n(t);
|
|
1104
1098
|
if (e !== "auto" || t.kind !== "local") return {
|
|
1105
1099
|
assembled: r,
|
|
@@ -1111,14 +1105,14 @@ async function Et(e, t, n) {
|
|
|
1111
1105
|
dataSource: t,
|
|
1112
1106
|
useQueryCache: !1
|
|
1113
1107
|
};
|
|
1114
|
-
let i =
|
|
1108
|
+
let i = j();
|
|
1115
1109
|
return {
|
|
1116
1110
|
assembled: await n(i),
|
|
1117
1111
|
dataSource: i,
|
|
1118
1112
|
useQueryCache: !0
|
|
1119
1113
|
};
|
|
1120
1114
|
}
|
|
1121
|
-
async function
|
|
1115
|
+
async function _t(e, t, n, r = []) {
|
|
1122
1116
|
await G().writeThroughItems(e.records.map((i) => ({
|
|
1123
1117
|
record: i,
|
|
1124
1118
|
optionsKey: t,
|
|
@@ -1128,7 +1122,7 @@ async function Dt(e, t, n, r = []) {
|
|
|
1128
1122
|
lastUpdated: n
|
|
1129
1123
|
})));
|
|
1130
1124
|
}
|
|
1131
|
-
function
|
|
1125
|
+
function vt(e) {
|
|
1132
1126
|
let t = /* @__PURE__ */ new Map();
|
|
1133
1127
|
for (let n of e.items) {
|
|
1134
1128
|
let r = e.meta[n.seedUid]?.dependencies ?? Q;
|
|
@@ -1139,13 +1133,13 @@ function Ot(e) {
|
|
|
1139
1133
|
}
|
|
1140
1134
|
return t;
|
|
1141
1135
|
}
|
|
1142
|
-
async function
|
|
1143
|
-
let a = G(), o = K(), s = await a.getCollection(e, r), c = s ?
|
|
1136
|
+
async function yt(e, t, n, r, i) {
|
|
1137
|
+
let a = G(), o = K(), s = await a.getCollection(e, r), c = s ? vt(s) : void 0, [l, u] = await Promise.all([i.listSeedsBySchemaName(e, {
|
|
1144
1138
|
limit: t,
|
|
1145
1139
|
skip: 0
|
|
1146
|
-
}), s && c ?
|
|
1140
|
+
}), s && c ? st(i, c, s) : void 0]), d = new Map(s?.items.map((e) => [e.seedUid, e]) ?? []), f = /* @__PURE__ */ new Set(), p = [];
|
|
1147
1141
|
s && c && (u ? (f = u.changed, p = u.seenChangeKeys) : f = new Set(c.keys()));
|
|
1148
|
-
let m = l.filter((e) => !d.has(e.id) || f.has(e.id)), h = m.length > 0 ? await
|
|
1142
|
+
let m = l.filter((e) => !d.has(e.id) || f.has(e.id)), h = m.length > 0 ? await L(e, m, n, i) : {
|
|
1149
1143
|
records: [],
|
|
1150
1144
|
dependencies: /* @__PURE__ */ new Map()
|
|
1151
1145
|
}, g = new Map(h.records.map((e) => [e.seedUid, e])), _ = [], v = {};
|
|
@@ -1160,7 +1154,7 @@ async function kt(e, t, n, r, i) {
|
|
|
1160
1154
|
});
|
|
1161
1155
|
}
|
|
1162
1156
|
let y = !!s && h.records.length === 0 && _.length === s.items.length && _.every((e, t) => e === s.items[t]);
|
|
1163
|
-
if (s && y && !
|
|
1157
|
+
if (s && y && !ot(s, o)) return {
|
|
1164
1158
|
items: _,
|
|
1165
1159
|
limit: t,
|
|
1166
1160
|
skip: 0,
|
|
@@ -1174,35 +1168,35 @@ async function kt(e, t, n, r, i) {
|
|
|
1174
1168
|
seenChangeKeys: p,
|
|
1175
1169
|
lastUpdated: s?.lastUpdated ?? o
|
|
1176
1170
|
});
|
|
1177
|
-
return await
|
|
1171
|
+
return await _t(h, r, o, p), {
|
|
1178
1172
|
items: b ? [...b.items] : _,
|
|
1179
1173
|
limit: t,
|
|
1180
1174
|
skip: 0,
|
|
1181
1175
|
etag: b?.etag
|
|
1182
1176
|
};
|
|
1183
1177
|
}
|
|
1184
|
-
var
|
|
1185
|
-
function
|
|
1178
|
+
var bt = 4;
|
|
1179
|
+
function xt(e) {
|
|
1186
1180
|
let t = e.trim().toLowerCase().replace(/^0x/, "");
|
|
1187
|
-
return t.length <
|
|
1181
|
+
return t.length < bt || t.length > 64 || !/^[0-9a-f]+$/.test(t) ? null : `0x${t}`;
|
|
1188
1182
|
}
|
|
1189
|
-
async function
|
|
1190
|
-
await
|
|
1183
|
+
async function St(e, r) {
|
|
1184
|
+
await t();
|
|
1191
1185
|
let i = r?.limit ?? 100, a = r?.skip ?? 0, o = Z(r?.source), s = X(o), c = n(r), l = null;
|
|
1192
|
-
if (r?.uidPrefix !== void 0 && (l =
|
|
1186
|
+
if (r?.uidPrefix !== void 0 && (l = xt(r.uidPrefix), !l)) return {
|
|
1193
1187
|
items: [],
|
|
1194
1188
|
limit: i,
|
|
1195
1189
|
skip: a
|
|
1196
1190
|
};
|
|
1197
|
-
let u = async (
|
|
1191
|
+
let u = async (t) => l ? L(e, await t.listSeedsByUidPrefix(e, l, {
|
|
1198
1192
|
limit: i,
|
|
1199
1193
|
skip: a
|
|
1200
|
-
}), r,
|
|
1194
|
+
}), r, t) : ht(e, i, a, r, t);
|
|
1201
1195
|
if (!l && $(r, s.useQueryCache) && a === 0 && s.dataSource.kind === "remote") {
|
|
1202
|
-
let
|
|
1203
|
-
return
|
|
1196
|
+
let t = G(), n = `${e}\n${c}\n${i}`, a = r?.maxAge ?? t.getConfig().maxAge ?? 0;
|
|
1197
|
+
return t.withRefreshLock(n, async () => {
|
|
1204
1198
|
if (a > 0) {
|
|
1205
|
-
let r = await
|
|
1199
|
+
let r = await t.getCheckedCollection(n, e, c, a);
|
|
1206
1200
|
if (r) return {
|
|
1207
1201
|
items: [...r.items],
|
|
1208
1202
|
limit: i,
|
|
@@ -1210,18 +1204,18 @@ async function Mt(t, r) {
|
|
|
1210
1204
|
etag: r.etag
|
|
1211
1205
|
};
|
|
1212
1206
|
}
|
|
1213
|
-
let o = await
|
|
1214
|
-
return o.etag &&
|
|
1207
|
+
let o = await yt(e, i, r, c, s.dataSource);
|
|
1208
|
+
return o.etag && t.markCollectionChecked(n, o.etag), o;
|
|
1215
1209
|
});
|
|
1216
1210
|
}
|
|
1217
|
-
let d = K(), { assembled: f, dataSource: p, useQueryCache: m } = await
|
|
1218
|
-
return $(r, m) && p.kind === "remote" && await
|
|
1211
|
+
let d = K(), { assembled: f, dataSource: p, useQueryCache: m } = await gt(o, s.dataSource, (e) => u(e));
|
|
1212
|
+
return $(r, m) && p.kind === "remote" && await _t(f, c, d), {
|
|
1219
1213
|
items: f.records,
|
|
1220
1214
|
limit: i,
|
|
1221
1215
|
skip: a
|
|
1222
1216
|
};
|
|
1223
1217
|
}
|
|
1224
|
-
async function
|
|
1218
|
+
async function Ct(e, t) {
|
|
1225
1219
|
let n = G(), r = /* @__PURE__ */ new Map();
|
|
1226
1220
|
await Promise.all(e.map(async ({ seedUid: e, optionsKey: t }) => {
|
|
1227
1221
|
let i = await n.getItem(e, t);
|
|
@@ -1231,37 +1225,37 @@ async function Nt(e, t) {
|
|
|
1231
1225
|
if (r.size === 0) return i;
|
|
1232
1226
|
let a = K(), o = /* @__PURE__ */ new Map();
|
|
1233
1227
|
for (let [e, t] of r) o.set(e, t);
|
|
1234
|
-
let s = await
|
|
1235
|
-
for (let [e, t] of r) !s || s.changed.has(e) ? await n.clearItem(e, t.optionsKey) : (
|
|
1228
|
+
let s = await ct(t, o);
|
|
1229
|
+
for (let [e, t] of r) !s || s.changed.has(e) ? await n.clearItem(e, t.optionsKey) : (ot(t, a) && await n.setItem({
|
|
1236
1230
|
...t,
|
|
1237
1231
|
checkedAt: q(a),
|
|
1238
1232
|
seenChangeKeys: s.seenChangeKeys.get(e) ?? []
|
|
1239
1233
|
}), i.set(e, t.record));
|
|
1240
1234
|
return i;
|
|
1241
1235
|
}
|
|
1242
|
-
async function
|
|
1243
|
-
return (await
|
|
1236
|
+
async function wt(e, t, n) {
|
|
1237
|
+
return (await Ct([{
|
|
1244
1238
|
seedUid: e,
|
|
1245
1239
|
optionsKey: t
|
|
1246
1240
|
}], n)).get(e) ?? null;
|
|
1247
1241
|
}
|
|
1248
|
-
function
|
|
1242
|
+
function Tt(e) {
|
|
1249
1243
|
if (e?.versionUid !== void 0 || e?.asOf !== void 0) return {
|
|
1250
1244
|
versionUid: e.versionUid,
|
|
1251
1245
|
asOf: e.asOf
|
|
1252
1246
|
};
|
|
1253
1247
|
}
|
|
1254
|
-
async function
|
|
1255
|
-
if (await
|
|
1256
|
-
let i =
|
|
1248
|
+
async function Et(e, r) {
|
|
1249
|
+
if (await t(), !e || typeof e != "string" || e.trim() === "") return null;
|
|
1250
|
+
let i = e.trim(), a = r?.include ?? "data", o = Z(r?.source), s = X(o), c = n(r), l = s.dataSource, u = s.useQueryCache;
|
|
1257
1251
|
if ($(r, u) && l.kind === "remote") {
|
|
1258
|
-
let e = await
|
|
1252
|
+
let e = await wt(i, c, l);
|
|
1259
1253
|
if (e) return e;
|
|
1260
1254
|
}
|
|
1261
1255
|
let d = (e) => Promise.all([e.getSeedByUid(i), e.getVersionsForSeeds([i], { includeRevoked: !0 })]), f = K(), [p, m] = await d(l);
|
|
1262
1256
|
if (!p && o === "auto" && l.kind === "local") {
|
|
1263
|
-
if (l =
|
|
1264
|
-
let e = await
|
|
1257
|
+
if (l = j(), u = !0, $(r, u)) {
|
|
1258
|
+
let e = await wt(i, c, l);
|
|
1265
1259
|
if (e) return e;
|
|
1266
1260
|
}
|
|
1267
1261
|
[p, m] = await d(l);
|
|
@@ -1272,18 +1266,18 @@ async function It(t, r) {
|
|
|
1272
1266
|
let g = null, _ = {
|
|
1273
1267
|
refUIDs: [i],
|
|
1274
1268
|
ids: [i]
|
|
1275
|
-
}, v =
|
|
1276
|
-
let e = await
|
|
1269
|
+
}, v = Tt(r), y = async () => {
|
|
1270
|
+
let e = await R([p], r, l, {
|
|
1277
1271
|
schemaName: h,
|
|
1278
1272
|
versions: m,
|
|
1279
1273
|
pins: v && /* @__PURE__ */ new Map([[i, v]])
|
|
1280
1274
|
}), t = e.records[0];
|
|
1281
1275
|
return t && (_ = e.dependencies.get(t.seedUid) ?? _), t ?? null;
|
|
1282
1276
|
};
|
|
1283
|
-
if (!
|
|
1277
|
+
if (!pt(a)) g = await y();
|
|
1284
1278
|
else {
|
|
1285
|
-
let { latestVersionUid: e, changelog: t } = await
|
|
1286
|
-
if (
|
|
1279
|
+
let { latestVersionUid: e, changelog: t } = await Ke(i, r, l);
|
|
1280
|
+
if (mt(a)) {
|
|
1287
1281
|
let e = await y();
|
|
1288
1282
|
g = e ? {
|
|
1289
1283
|
...e,
|
|
@@ -1317,19 +1311,19 @@ async function It(t, r) {
|
|
|
1317
1311
|
}
|
|
1318
1312
|
return g;
|
|
1319
1313
|
}
|
|
1320
|
-
async function
|
|
1321
|
-
await
|
|
1314
|
+
async function Dt(e, r) {
|
|
1315
|
+
await t();
|
|
1322
1316
|
let i = /* @__PURE__ */ new Map();
|
|
1323
|
-
for (let
|
|
1324
|
-
if (typeof
|
|
1325
|
-
let
|
|
1326
|
-
i.has(
|
|
1317
|
+
for (let t of e) {
|
|
1318
|
+
if (typeof t != "string" || t.trim() === "") continue;
|
|
1319
|
+
let e = t.trim().toLowerCase();
|
|
1320
|
+
i.has(e) || i.set(e, t.trim());
|
|
1327
1321
|
}
|
|
1328
1322
|
let a = [...i.keys()];
|
|
1329
1323
|
if (a.length === 0) return /* @__PURE__ */ new Map();
|
|
1330
1324
|
let o = /* @__PURE__ */ new Map();
|
|
1331
1325
|
for (let [e, t] of r?.pins ?? []) {
|
|
1332
|
-
let n =
|
|
1326
|
+
let n = Tt(t);
|
|
1333
1327
|
n && o.set(e.trim().toLowerCase(), n);
|
|
1334
1328
|
}
|
|
1335
1329
|
let s = (e) => n({
|
|
@@ -1338,7 +1332,7 @@ async function Lt(t, r) {
|
|
|
1338
1332
|
}), c = Z(r?.source), l = X(c), u = /* @__PURE__ */ new Map(), d = async (e, t, n) => {
|
|
1339
1333
|
let i = $(r, t) && e.kind === "remote", a = n;
|
|
1340
1334
|
if (i) {
|
|
1341
|
-
let t = await
|
|
1335
|
+
let t = await Ct(n.map((e) => ({
|
|
1342
1336
|
seedUid: e,
|
|
1343
1337
|
optionsKey: s(e)
|
|
1344
1338
|
})), e);
|
|
@@ -1346,7 +1340,7 @@ async function Lt(t, r) {
|
|
|
1346
1340
|
a = n.filter((e) => !t.has(e));
|
|
1347
1341
|
}
|
|
1348
1342
|
if (a.length === 0) return [];
|
|
1349
|
-
let c = K(), [l, d] = await Promise.all([e.getSeedsByUids(a), e.getVersionsForSeeds(a, { includeRevoked: !0 })]), f = new Map(l.map((e) => [e.id.toLowerCase(), e])), p = a.filter((e) => !f.has(e)), m = await
|
|
1343
|
+
let c = K(), [l, d] = await Promise.all([e.getSeedsByUids(a), e.getVersionsForSeeds(a, { includeRevoked: !0 })]), f = new Map(l.map((e) => [e.id.toLowerCase(), e])), p = a.filter((e) => !f.has(e)), m = await R(a.map((e) => f.get(e)).filter((e) => !!e?.schema?.schemaNames?.[0]?.name), r, e, {
|
|
1350
1344
|
versions: d,
|
|
1351
1345
|
pins: o
|
|
1352
1346
|
});
|
|
@@ -1370,7 +1364,7 @@ async function Lt(t, r) {
|
|
|
1370
1364
|
}
|
|
1371
1365
|
return p;
|
|
1372
1366
|
}, f = await d(l.dataSource, l.useQueryCache, a);
|
|
1373
|
-
f.length > 0 && c === "auto" && l.dataSource.kind === "local" && await d(
|
|
1367
|
+
f.length > 0 && c === "auto" && l.dataSource.kind === "local" && await d(j(), !0, f);
|
|
1374
1368
|
let p = /* @__PURE__ */ new Map();
|
|
1375
1369
|
for (let [e, t] of i) {
|
|
1376
1370
|
let n = u.get(e);
|
|
@@ -1378,12 +1372,12 @@ async function Lt(t, r) {
|
|
|
1378
1372
|
}
|
|
1379
1373
|
return p;
|
|
1380
1374
|
}
|
|
1381
|
-
async function
|
|
1382
|
-
await
|
|
1383
|
-
let o = Z(a?.source), s = X(o), c = async (
|
|
1384
|
-
return $(a, f) && d.kind === "remote" && await
|
|
1375
|
+
async function Ot(e, r, i, a) {
|
|
1376
|
+
await t();
|
|
1377
|
+
let o = Z(a?.source), s = X(o), c = async (t) => L(e, await t.listSeedsBySchemaNameForMonth(e, r, i), a, t), l = K(), { assembled: u, dataSource: d, useQueryCache: f } = await gt(o, s.dataSource, c);
|
|
1378
|
+
return $(a, f) && d.kind === "remote" && await _t(u, n(a), l), u.records;
|
|
1385
1379
|
}
|
|
1386
1380
|
//#endregion
|
|
1387
|
-
export {
|
|
1381
|
+
export { we as A, oe as B, We as C, j as D, De as E, de as F, ie as H, w as I, ue as L, ve as M, se as N, Te as O, T as P, E as R, B as S, Be as T, ae as U, S as V, x as W, V as _, Ot as a, He as b, ut as c, lt as d, at as f, tt as g, U as h, St as i, he as j, A as k, dt as l, it as m, Dt as n, Z as o, G as p, xt as r, X as s, Et as t, ft as u, Ke as v, Ue as w, z as x, Ge as y, fe as z };
|
|
1388
1382
|
|
|
1389
|
-
//# sourceMappingURL=src-
|
|
1383
|
+
//# sourceMappingURL=src-C4engEq9.js.map
|