@seedprotocol/query 0.7.5 → 0.7.6
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 +31 -5
- package/dist/api.d.ts +9 -1
- package/dist/api.d.ts.map +1 -1
- package/dist/assembleSeeds.d.ts +21 -1
- package/dist/assembleSeeds.d.ts.map +1 -1
- package/dist/cache/changes.d.ts +13 -0
- package/dist/cache/changes.d.ts.map +1 -1
- package/dist/cache/types.d.ts +2 -0
- package/dist/cache/types.d.ts.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.node.js +5 -5
- package/dist/index.node.js.map +1 -1
- package/dist/node.js +2 -2
- package/dist/{registerNodeArweave-Ceg2Bv0d.js → registerNodeArweave-rFbHhv2d.js} +2 -2
- package/dist/{registerNodeArweave-Ceg2Bv0d.js.map → registerNodeArweave-rFbHhv2d.js.map} +1 -1
- package/dist/{src-BowznSl-.js → src-D20xeLMs.js} +420 -273
- package/dist/src-D20xeLMs.js.map +1 -0
- package/dist/{types-Dx2hRPNB.js → types-BgGzWcrW.js} +7 -3
- package/dist/types-BgGzWcrW.js.map +1 -0
- package/dist/types.d.ts +17 -1
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -3
- package/dist/src-BowznSl-.js.map +0 -1
- package/dist/types-Dx2hRPNB.js.map +0 -1
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import { a as e, t } from "./types-
|
|
1
|
+
import { a as e, t } from "./types-BgGzWcrW.js";
|
|
2
2
|
import { BaseArweaveClient as n, isKnownArweaveGatewayHostname as r, readArweaveContentResponse as i } from "@seedprotocol/arweave";
|
|
3
3
|
import { EasClient as a, GET_SEEDS_LEAN as o, decodeEasNumber as s, getAttestationChangesSince as c, getItemPropertiesFromEas as l, getItemVersionsFromEas as u, getSeedsBySchemaName as d, getSeedsByUidsFromEas as f, isNumericEasType as p, keepAttestationsFromRefAttester as m, pickLatestPropertyAttestationsByRefAndSchema as h, setSchemaUidForSchemaDefinition as g, withExcludeRevokedFilter as _ } from "@seedprotocol/eas";
|
|
4
4
|
import v from "pluralize";
|
|
5
|
-
import { sha256 as
|
|
6
|
-
import { bytesToHex as
|
|
5
|
+
import { sha256 as y } from "@noble/hashes/sha256";
|
|
6
|
+
import { bytesToHex as ee, utf8ToBytes as te } from "@noble/hashes/utils";
|
|
7
7
|
//#region src/arweaveUrl.ts
|
|
8
|
-
function
|
|
8
|
+
function b(e) {
|
|
9
9
|
return `https://${n.getHost()}/${e}`;
|
|
10
10
|
}
|
|
11
11
|
//#endregion
|
|
12
12
|
//#region src/listRelationKey.ts
|
|
13
|
-
var
|
|
14
|
-
function
|
|
15
|
-
let t =
|
|
13
|
+
var ne = /^(.+?)([A-Z][a-zA-Z]+)Ids$/;
|
|
14
|
+
function x(e) {
|
|
15
|
+
let t = ne.exec(e);
|
|
16
16
|
if (t) {
|
|
17
17
|
let e = t[1];
|
|
18
18
|
if (e) return v(e);
|
|
@@ -27,10 +27,10 @@ function b(e) {
|
|
|
27
27
|
}
|
|
28
28
|
return e;
|
|
29
29
|
}
|
|
30
|
-
function
|
|
31
|
-
for (let n of Object.keys(e)) n !== t &&
|
|
30
|
+
function re(e, t) {
|
|
31
|
+
for (let n of Object.keys(e)) n !== t && x(n) === t && delete e[n];
|
|
32
32
|
}
|
|
33
|
-
function
|
|
33
|
+
function S(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,57 @@ function ie(e) {
|
|
|
42
42
|
}
|
|
43
43
|
//#endregion
|
|
44
44
|
//#region src/imageRelationEnrichment.ts
|
|
45
|
-
function
|
|
45
|
+
function C(e) {
|
|
46
46
|
let t = e.storageTransactionId ?? e.storage_transaction_id;
|
|
47
47
|
if (t && typeof t == "string" && t.trim()) try {
|
|
48
|
-
e.arweaveUrl =
|
|
48
|
+
e.arweaveUrl = b(t.trim());
|
|
49
49
|
} catch {}
|
|
50
50
|
}
|
|
51
|
-
var
|
|
51
|
+
var ie = C, w = /* @__PURE__ */ new Set([
|
|
52
52
|
"html",
|
|
53
53
|
"file",
|
|
54
54
|
"json"
|
|
55
|
-
]),
|
|
56
|
-
function
|
|
55
|
+
]), ae = w, oe = "_feedFieldStorageModels", se = "_feedListElementStorageModels";
|
|
56
|
+
function T(e) {
|
|
57
57
|
return e.trim().toLowerCase();
|
|
58
58
|
}
|
|
59
|
-
function
|
|
60
|
-
return
|
|
59
|
+
function E(e) {
|
|
60
|
+
return w.has(T(e));
|
|
61
61
|
}
|
|
62
|
-
var
|
|
63
|
-
function
|
|
64
|
-
let t =
|
|
62
|
+
var ce = E;
|
|
63
|
+
function le(e) {
|
|
64
|
+
let t = T(e);
|
|
65
65
|
return t === "html" ? 0 : t === "file" ? 1 : t === "json" ? 2 : 99;
|
|
66
66
|
}
|
|
67
|
-
var
|
|
68
|
-
function
|
|
69
|
-
let t = e[
|
|
67
|
+
var ue = le;
|
|
68
|
+
function D(e) {
|
|
69
|
+
let t = e[oe];
|
|
70
70
|
if (typeof t == "object" && t && !Array.isArray(t)) return t;
|
|
71
71
|
}
|
|
72
|
-
var
|
|
73
|
-
function
|
|
74
|
-
let t = e[
|
|
72
|
+
var de = D;
|
|
73
|
+
function O(e) {
|
|
74
|
+
let t = e[se];
|
|
75
75
|
if (typeof t == "object" && t && !Array.isArray(t)) return t;
|
|
76
76
|
}
|
|
77
|
-
var
|
|
78
|
-
function
|
|
79
|
-
let r =
|
|
80
|
-
i || (i = {}, e[
|
|
77
|
+
var fe = O;
|
|
78
|
+
function k(e, t, n) {
|
|
79
|
+
let r = T(n), i = D(e);
|
|
80
|
+
i || (i = {}, e[oe] = i), i[t] = r;
|
|
81
81
|
}
|
|
82
|
-
var
|
|
83
|
-
function
|
|
84
|
-
let r =
|
|
85
|
-
r || (r = {}, e[
|
|
82
|
+
var pe = k;
|
|
83
|
+
function me(e, t, n) {
|
|
84
|
+
let r = O(e);
|
|
85
|
+
r || (r = {}, e[se] = r), r[t] = n.map(T);
|
|
86
86
|
}
|
|
87
|
-
var
|
|
87
|
+
var he = me, ge = [
|
|
88
88
|
"html",
|
|
89
89
|
"Html",
|
|
90
90
|
"body",
|
|
91
91
|
"Body",
|
|
92
92
|
"content",
|
|
93
93
|
"Content"
|
|
94
|
-
],
|
|
95
|
-
function
|
|
94
|
+
], _e = 8e6;
|
|
95
|
+
function ve(e) {
|
|
96
96
|
let t = e.trim();
|
|
97
97
|
if (!t.startsWith("http://") && !t.startsWith("https://")) return !1;
|
|
98
98
|
try {
|
|
@@ -106,7 +106,7 @@ function ye(e) {
|
|
|
106
106
|
return !1;
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
|
-
async function
|
|
109
|
+
async function ye(e, t) {
|
|
110
110
|
try {
|
|
111
111
|
let n = await fetch(e, {
|
|
112
112
|
headers: { Accept: "text/html, text/plain, text/markdown, application/json, */*" },
|
|
@@ -116,37 +116,37 @@ async function be(e, t) {
|
|
|
116
116
|
let r = n.headers.get("content-type") ?? "";
|
|
117
117
|
if (/^(image|video|audio)\//i.test(r)) return null;
|
|
118
118
|
let { bytes: a } = await i(n, { transactionId: t });
|
|
119
|
-
if (a.byteLength >
|
|
119
|
+
if (a.byteLength > _e) return null;
|
|
120
120
|
let o = new TextDecoder("utf-8", { fatal: !1 }).decode(a);
|
|
121
121
|
return o.length === 0 || o.includes("\0") ? null : o;
|
|
122
122
|
} catch {
|
|
123
123
|
return null;
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
|
-
var
|
|
127
|
-
function
|
|
128
|
-
|
|
126
|
+
var be = 32e6, A = /* @__PURE__ */ new Map(), j = 0, M = /* @__PURE__ */ new Map();
|
|
127
|
+
function xe() {
|
|
128
|
+
A.clear(), j = 0, M.clear();
|
|
129
129
|
}
|
|
130
|
-
function
|
|
131
|
-
if (!(t.length >
|
|
132
|
-
|
|
133
|
-
for (let [e, t] of
|
|
134
|
-
if (
|
|
135
|
-
|
|
130
|
+
function Se(e, t) {
|
|
131
|
+
if (!(t.length > be)) {
|
|
132
|
+
A.set(e, t), j += t.length;
|
|
133
|
+
for (let [e, t] of A) {
|
|
134
|
+
if (j <= be) break;
|
|
135
|
+
A.delete(e), j -= t.length;
|
|
136
136
|
}
|
|
137
137
|
}
|
|
138
138
|
}
|
|
139
|
-
async function
|
|
140
|
-
let t = new URL(e.trim()).pathname.replace(/^\//, ""), n =
|
|
141
|
-
if (n !== void 0) return
|
|
142
|
-
let r =
|
|
139
|
+
async function Ce(e) {
|
|
140
|
+
let t = new URL(e.trim()).pathname.replace(/^\//, ""), n = A.get(t);
|
|
141
|
+
if (n !== void 0) return A.delete(t), A.set(t, n), n;
|
|
142
|
+
let r = M.get(t);
|
|
143
143
|
if (r) return r;
|
|
144
|
-
let i =
|
|
145
|
-
|
|
144
|
+
let i = ye(e, t).then((e) => (e !== null && M.get(t) === i && Se(t, e), e)).finally(() => {
|
|
145
|
+
M.get(t) === i && M.delete(t);
|
|
146
146
|
});
|
|
147
|
-
return
|
|
147
|
+
return M.set(t, i), i;
|
|
148
148
|
}
|
|
149
|
-
async function
|
|
149
|
+
async function we(e, t, n) {
|
|
150
150
|
if (n) try {
|
|
151
151
|
let r = await n({
|
|
152
152
|
propertyName: e,
|
|
@@ -154,48 +154,48 @@ async function Te(e, t, n) {
|
|
|
154
154
|
});
|
|
155
155
|
if (r != null && r.length > 0) return r;
|
|
156
156
|
} catch {}
|
|
157
|
-
return
|
|
157
|
+
return ve(t) ? Ce(t) : null;
|
|
158
158
|
}
|
|
159
|
-
var
|
|
160
|
-
async function
|
|
159
|
+
var Te = 8;
|
|
160
|
+
async function Ee(e, t) {
|
|
161
161
|
let n = 0;
|
|
162
162
|
await Promise.all(Array.from({ length: Math.min(t, e.length) }, async () => {
|
|
163
163
|
for (; n < e.length;) await e[n++]();
|
|
164
164
|
}));
|
|
165
165
|
}
|
|
166
|
-
async function
|
|
166
|
+
async function N(e, t) {
|
|
167
167
|
let n = t?.readStorageBody, r = [];
|
|
168
168
|
for (let t of e) {
|
|
169
|
-
let e = /* @__PURE__ */ new Set([...
|
|
170
|
-
if (i) for (let [t, n] of Object.entries(i))
|
|
169
|
+
let e = /* @__PURE__ */ new Set([...ge]), i = D(t);
|
|
170
|
+
if (i) for (let [t, n] of Object.entries(i)) E(n) && e.add(t);
|
|
171
171
|
for (let i of e) {
|
|
172
172
|
let e = t[i];
|
|
173
173
|
typeof e == "string" && e.trim() !== "" && r.push(async () => {
|
|
174
|
-
let r = await
|
|
174
|
+
let r = await we(i, e, n);
|
|
175
175
|
r !== null && (t[i] = r);
|
|
176
176
|
});
|
|
177
177
|
}
|
|
178
|
-
let a =
|
|
178
|
+
let a = O(t);
|
|
179
179
|
if (a) for (let [e, i] of Object.entries(a)) {
|
|
180
180
|
let a = t[e];
|
|
181
181
|
if (!Array.isArray(a)) continue;
|
|
182
182
|
let o = Math.min(i.length, a.length);
|
|
183
183
|
for (let t = 0; t < o; t++) {
|
|
184
|
-
if (!
|
|
184
|
+
if (!E(i[t])) continue;
|
|
185
185
|
let o = a[t];
|
|
186
186
|
typeof o == "string" && r.push(async () => {
|
|
187
|
-
let r = await
|
|
187
|
+
let r = await we(e, o, n);
|
|
188
188
|
r !== null && (a[t] = r);
|
|
189
189
|
});
|
|
190
190
|
}
|
|
191
191
|
}
|
|
192
192
|
}
|
|
193
|
-
await
|
|
193
|
+
await Ee(r, Te);
|
|
194
194
|
}
|
|
195
|
-
var
|
|
195
|
+
var De = N;
|
|
196
196
|
//#endregion
|
|
197
197
|
//#region src/parseEasPropertyMetadata.ts
|
|
198
|
-
function
|
|
198
|
+
function P(e) {
|
|
199
199
|
let t = typeof e == "string" ? e.trim() : "";
|
|
200
200
|
if (!t) return {
|
|
201
201
|
ok: !1,
|
|
@@ -219,10 +219,10 @@ function M(e) {
|
|
|
219
219
|
metadata: n[0].value
|
|
220
220
|
};
|
|
221
221
|
}
|
|
222
|
-
var
|
|
222
|
+
var Oe = P;
|
|
223
223
|
//#endregion
|
|
224
224
|
//#region src/parseEasRelationPropertyName.ts
|
|
225
|
-
function
|
|
225
|
+
function F(e) {
|
|
226
226
|
let [t, n, r] = e.split("_");
|
|
227
227
|
if (!t || !n) return null;
|
|
228
228
|
let i = r === "ids";
|
|
@@ -234,14 +234,14 @@ function je(e) {
|
|
|
234
234
|
}
|
|
235
235
|
//#endregion
|
|
236
236
|
//#region src/source/remote.ts
|
|
237
|
-
function
|
|
237
|
+
function ke(e, t) {
|
|
238
238
|
let n = new Date(e, t - 1, 1), r = new Date(e, t, 0, 23, 59, 59);
|
|
239
239
|
return {
|
|
240
240
|
startTs: Math.floor(n.getTime() / 1e3),
|
|
241
241
|
endTs: Math.floor(r.getTime() / 1e3) + 1
|
|
242
242
|
};
|
|
243
243
|
}
|
|
244
|
-
function
|
|
244
|
+
function Ae() {
|
|
245
245
|
return {
|
|
246
246
|
kind: "remote",
|
|
247
247
|
async getSeedByUid(e) {
|
|
@@ -255,7 +255,7 @@ function Ne() {
|
|
|
255
255
|
return await d(e, n.limit, n.skip, { uidPrefix: t });
|
|
256
256
|
},
|
|
257
257
|
async listSeedsBySchemaNameForMonth(e, t, n) {
|
|
258
|
-
let { startTs: r, endTs: i } =
|
|
258
|
+
let { startTs: r, endTs: i } = ke(t, n), s = _({ AND: [{ schema: { is: { schemaNames: { some: { name: { equals: e } } } } } }, { timeCreated: {
|
|
259
259
|
gte: r,
|
|
260
260
|
lt: i
|
|
261
261
|
} }] }), { itemSeeds: c } = await a.getEasClient().request(o, {
|
|
@@ -288,13 +288,13 @@ function Ne() {
|
|
|
288
288
|
}
|
|
289
289
|
};
|
|
290
290
|
}
|
|
291
|
-
var
|
|
292
|
-
function
|
|
293
|
-
return
|
|
291
|
+
var je = null;
|
|
292
|
+
function I() {
|
|
293
|
+
return je ||= Ae(), je;
|
|
294
294
|
}
|
|
295
295
|
//#endregion
|
|
296
296
|
//#region src/assembleSeeds.ts
|
|
297
|
-
var
|
|
297
|
+
var L = "image", R = ["0x0000000000000000000000000000000000000000000000000000000000000020"], Me = /* @__PURE__ */ new Set([
|
|
298
298
|
"seedUid",
|
|
299
299
|
"SeedUid",
|
|
300
300
|
"timeCreated",
|
|
@@ -305,8 +305,8 @@ var P = "image", F = ["0x0000000000000000000000000000000000000000000000000000000
|
|
|
305
305
|
"storageTransactionId",
|
|
306
306
|
"storageProviderTransactionId",
|
|
307
307
|
"versionUid"
|
|
308
|
-
]),
|
|
309
|
-
function
|
|
308
|
+
]), z = (e) => e.replace(/_([a-z])/g, (e, t) => t.toUpperCase());
|
|
309
|
+
function Ne() {
|
|
310
310
|
return {
|
|
311
311
|
seedUidToModelType: /* @__PURE__ */ new Map(),
|
|
312
312
|
relatedSeedUids: /* @__PURE__ */ new Set(),
|
|
@@ -315,21 +315,30 @@ function Ie() {
|
|
|
315
315
|
assembledItems: /* @__PURE__ */ new Map(),
|
|
316
316
|
versionsBySeedUid: /* @__PURE__ */ new Map(),
|
|
317
317
|
latestVersionUidsBySeedUid: /* @__PURE__ */ new Map(),
|
|
318
|
-
droppedSeedUids: /* @__PURE__ */ new Set()
|
|
318
|
+
droppedSeedUids: /* @__PURE__ */ new Set(),
|
|
319
|
+
requestedSeedUids: /* @__PURE__ */ new Set()
|
|
319
320
|
};
|
|
320
321
|
}
|
|
321
|
-
function
|
|
322
|
+
function B(e) {
|
|
323
|
+
let t = [];
|
|
324
|
+
for (let n of e.requestedSeedUids) {
|
|
325
|
+
let r = e.assembledItems.get(n);
|
|
326
|
+
r && t.push([n, r]);
|
|
327
|
+
}
|
|
328
|
+
return t;
|
|
329
|
+
}
|
|
330
|
+
function V(e, t) {
|
|
322
331
|
!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);
|
|
323
332
|
}
|
|
324
|
-
function
|
|
333
|
+
function Pe(e, t, n) {
|
|
325
334
|
e.relatedSeedUids.add(n);
|
|
326
335
|
let r = e.versionUidToSeedUid.get(t.refUID);
|
|
327
336
|
if (!r) return;
|
|
328
337
|
let i = e.relatedSeedUidsBySeedUid.get(r) ?? /* @__PURE__ */ new Set();
|
|
329
338
|
i.add(n), e.relatedSeedUidsBySeedUid.set(r, i);
|
|
330
339
|
}
|
|
331
|
-
async function
|
|
332
|
-
let n =
|
|
340
|
+
async function Fe(e, t) {
|
|
341
|
+
let n = P(t.decodedDataJson);
|
|
333
342
|
if (!n.ok) {
|
|
334
343
|
let { id: e, refUID: r, schemaId: i } = t;
|
|
335
344
|
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);
|
|
@@ -346,13 +355,13 @@ async function Re(e, t) {
|
|
|
346
355
|
if (u || d) {
|
|
347
356
|
if (o = !0, Array.isArray(r.value)) {
|
|
348
357
|
if (c = !0, d) {
|
|
349
|
-
let e =
|
|
358
|
+
let e = F(i);
|
|
350
359
|
e && (i = e.propertyName);
|
|
351
360
|
}
|
|
352
361
|
r.value.forEach((n) => {
|
|
353
|
-
|
|
362
|
+
R.includes(n) || Pe(e, t, n);
|
|
354
363
|
});
|
|
355
|
-
} else
|
|
364
|
+
} else R.includes(r.value) || Pe(e, t, r.value);
|
|
356
365
|
}
|
|
357
366
|
let f = r.value;
|
|
358
367
|
o && c && Array.isArray(f) ? f = f.map((e) => String(e)) : typeof f != "string" && (f = (p(l) ? s(f) : void 0) ?? JSON.stringify(f));
|
|
@@ -360,10 +369,21 @@ async function Re(e, t) {
|
|
|
360
369
|
if (!m) return;
|
|
361
370
|
let h = e.assembledItems.get(m) || {};
|
|
362
371
|
h[i] = f;
|
|
363
|
-
let _ =
|
|
372
|
+
let _ = z(i);
|
|
364
373
|
_ !== i && (h[_] = f), e.assembledItems.set(m, h);
|
|
365
374
|
}
|
|
366
|
-
|
|
375
|
+
function Ie(e) {
|
|
376
|
+
let t = /* @__PURE__ */ new Map();
|
|
377
|
+
for (let [n, r] of e) (r.versionUid !== void 0 || r.asOf !== void 0) && t.set(n.toLowerCase(), r);
|
|
378
|
+
return t;
|
|
379
|
+
}
|
|
380
|
+
function Le(e, t) {
|
|
381
|
+
let n = t.asOf, r = n === void 0 ? e : e.filter((e) => e.timeCreated <= n);
|
|
382
|
+
if (t.versionUid === void 0) return [...r].sort((e, t) => t.timeCreated - e.timeCreated)[0];
|
|
383
|
+
let i = t.versionUid.toLowerCase();
|
|
384
|
+
return r.find((e) => e.id.toLowerCase() === i);
|
|
385
|
+
}
|
|
386
|
+
async function Re(e, t, n, r = {}) {
|
|
367
387
|
let i = [];
|
|
368
388
|
for (let n = 0; n < t.length; n++) {
|
|
369
389
|
let r = t[n];
|
|
@@ -391,66 +411,74 @@ async function ze(e, t, n, r = {}) {
|
|
|
391
411
|
let i = e.versionsBySeedUid.get(r) || [];
|
|
392
412
|
e.versionsBySeedUid.set(r, [...i, n]);
|
|
393
413
|
}
|
|
394
|
-
let l = [];
|
|
414
|
+
let l = [], u = /* @__PURE__ */ new Map();
|
|
415
|
+
for (let t of i) {
|
|
416
|
+
let n = r.pins?.get(t.toLowerCase());
|
|
417
|
+
if (!n) continue;
|
|
418
|
+
let i = Le(e.versionsBySeedUid.get(t) ?? [], n);
|
|
419
|
+
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));
|
|
420
|
+
}
|
|
395
421
|
for (let [t, n] of e.versionsBySeedUid.entries()) {
|
|
396
422
|
if (e.latestVersionUidsBySeedUid.has(t)) continue;
|
|
397
423
|
let r = [...n].sort((e, t) => t.timeCreated - e.timeCreated)[0];
|
|
398
424
|
r && (l.push(r.id), e.latestVersionUidsBySeedUid.set(t, r.id));
|
|
399
425
|
}
|
|
400
426
|
if (l.length === 0) return;
|
|
401
|
-
let
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
let
|
|
406
|
-
|
|
407
|
-
|
|
427
|
+
let d = m(await n.getPropertiesForVersionUids(l), c).filter((e) => {
|
|
428
|
+
let t = u.get(e.refUID);
|
|
429
|
+
return t === void 0 || e.timeCreated <= t;
|
|
430
|
+
}), f = h(d);
|
|
431
|
+
for (let t = 0; t < f.length; t++) await Fe(e, f[t]);
|
|
432
|
+
}
|
|
433
|
+
function ze(e) {
|
|
434
|
+
for (let [, t] of B(e)) {
|
|
435
|
+
let n = Object.keys(t).filter((e) => !e.startsWith("_") && !Me.has(e));
|
|
408
436
|
for (let r of n) {
|
|
409
|
-
let n = t[r], i =
|
|
437
|
+
let n = t[r], i = S(n);
|
|
410
438
|
if (i !== n && Array.isArray(i) && (t[r] = i, n = i), Array.isArray(n)) {
|
|
411
439
|
let i = n;
|
|
412
|
-
if (!i.some((t) => typeof t == "string" && !
|
|
440
|
+
if (!i.some((t) => typeof t == "string" && !R.includes(t) && e.assembledItems.has(t))) continue;
|
|
413
441
|
let a = [], o = [], s = !1;
|
|
414
442
|
for (let t of i) {
|
|
415
|
-
if (typeof t != "string" ||
|
|
443
|
+
if (typeof t != "string" || R.includes(t)) {
|
|
416
444
|
a.push(String(t)), o.push("unknown");
|
|
417
445
|
continue;
|
|
418
446
|
}
|
|
419
447
|
let n = e.seedUidToModelType.get(t) ?? "unknown";
|
|
420
|
-
if (n ===
|
|
421
|
-
a.push(t), o.push(
|
|
448
|
+
if (n === L) {
|
|
449
|
+
a.push(t), o.push(L);
|
|
422
450
|
continue;
|
|
423
451
|
}
|
|
424
452
|
let r = e.assembledItems.get(t), i = r?.storageTransactionId ?? r?.storage_transaction_id;
|
|
425
453
|
if (i && typeof i == "string" && i.trim()) try {
|
|
426
|
-
a.push(
|
|
454
|
+
a.push(b(i)), o.push(n), s = !0;
|
|
427
455
|
} catch {
|
|
428
456
|
a.push(t), o.push(n);
|
|
429
457
|
}
|
|
430
458
|
else a.push(t), o.push(n);
|
|
431
459
|
}
|
|
432
460
|
if (s) {
|
|
433
|
-
let e =
|
|
434
|
-
if (t[e] = a,
|
|
461
|
+
let e = x(r);
|
|
462
|
+
if (t[e] = a, me(t, e, o), re(t, e), e !== r) {
|
|
435
463
|
delete t[r];
|
|
436
|
-
let e =
|
|
464
|
+
let e = z(r);
|
|
437
465
|
e !== r && delete t[e];
|
|
438
466
|
}
|
|
439
467
|
}
|
|
440
468
|
} else if (typeof n == "string") {
|
|
441
|
-
if (
|
|
469
|
+
if (R.includes(n) || !e.assembledItems.has(n)) continue;
|
|
442
470
|
let i = e.assembledItems.get(n);
|
|
443
|
-
if (e.seedUidToModelType.get(n) ===
|
|
471
|
+
if (e.seedUidToModelType.get(n) === L) continue;
|
|
444
472
|
let a = i?.storageTransactionId ?? i?.storage_transaction_id;
|
|
445
473
|
if (a && typeof a == "string" && a.trim()) try {
|
|
446
474
|
let i = r.endsWith("_id") ? r.replace(/_id$/, "") : r;
|
|
447
|
-
t[i] =
|
|
475
|
+
t[i] = b(a);
|
|
448
476
|
let o = e.seedUidToModelType.get(n) ?? "unknown";
|
|
449
|
-
|
|
450
|
-
let s =
|
|
451
|
-
if (s !== i &&
|
|
477
|
+
k(t, i, o);
|
|
478
|
+
let s = z(i);
|
|
479
|
+
if (s !== i && k(t, s, o), i !== r) {
|
|
452
480
|
delete t[r];
|
|
453
|
-
let e =
|
|
481
|
+
let e = z(r);
|
|
454
482
|
e !== r && delete t[e];
|
|
455
483
|
}
|
|
456
484
|
} catch {}
|
|
@@ -458,17 +486,15 @@ function Be(e, t) {
|
|
|
458
486
|
}
|
|
459
487
|
}
|
|
460
488
|
}
|
|
461
|
-
function
|
|
462
|
-
if (
|
|
463
|
-
|
|
464
|
-
for (let [, t] of r) {
|
|
465
|
-
let n = Object.keys(t).filter((e) => !e.startsWith("_") && !Fe.has(e));
|
|
489
|
+
function Be(e, t) {
|
|
490
|
+
if (t) for (let [, t] of B(e)) {
|
|
491
|
+
let n = Object.keys(t).filter((e) => !e.startsWith("_") && !Me.has(e));
|
|
466
492
|
for (let r of n) {
|
|
467
|
-
let n = t[r], i =
|
|
493
|
+
let n = t[r], i = S(n);
|
|
468
494
|
i !== n && Array.isArray(i) && (t[r] = i, n = i);
|
|
469
495
|
let a = Array.isArray(n), o = a ? n : [n], s = [], c = !1;
|
|
470
496
|
for (let t of o) {
|
|
471
|
-
if (typeof t != "string" ||
|
|
497
|
+
if (typeof t != "string" || R.includes(t)) {
|
|
472
498
|
s.push(t);
|
|
473
499
|
continue;
|
|
474
500
|
}
|
|
@@ -478,9 +504,9 @@ function Ve(e, t, n) {
|
|
|
478
504
|
continue;
|
|
479
505
|
}
|
|
480
506
|
let r = n?.storageTransactionId ?? n?.storage_transaction_id;
|
|
481
|
-
if (e.seedUidToModelType.get(t) ===
|
|
507
|
+
if (e.seedUidToModelType.get(t) === L) {
|
|
482
508
|
let e = { ...n };
|
|
483
|
-
|
|
509
|
+
V(e, t), e.schemaName = L, C(e), s.push(e), c = !0;
|
|
484
510
|
continue;
|
|
485
511
|
}
|
|
486
512
|
if (r && typeof r == "string" && r.trim()) {
|
|
@@ -488,66 +514,74 @@ function Ve(e, t, n) {
|
|
|
488
514
|
continue;
|
|
489
515
|
}
|
|
490
516
|
let i = { ...n };
|
|
491
|
-
|
|
517
|
+
V(i, t), s.push(i), c = !0;
|
|
492
518
|
}
|
|
493
519
|
if (c) {
|
|
494
|
-
let e = a ?
|
|
495
|
-
if (t[e] = a ? s : s[0],
|
|
520
|
+
let e = a ? x(r) : r.endsWith("_id") ? r.replace(/_id$/, "") : r;
|
|
521
|
+
if (t[e] = a ? s : s[0], re(t, e), e !== r) {
|
|
496
522
|
delete t[r];
|
|
497
|
-
let e =
|
|
523
|
+
let e = z(r);
|
|
498
524
|
e !== r && delete t[e];
|
|
499
525
|
}
|
|
500
526
|
}
|
|
501
527
|
}
|
|
502
528
|
}
|
|
503
529
|
}
|
|
504
|
-
function
|
|
505
|
-
return
|
|
530
|
+
function Ve(e, t) {
|
|
531
|
+
return B(e).map(([n, r]) => {
|
|
506
532
|
let i = e.latestVersionUidsBySeedUid.get(n) ?? "";
|
|
507
|
-
i && (r.versionUid = i),
|
|
508
|
-
let a = typeof r.timeCreated == "number" ? r.timeCreated : 0;
|
|
533
|
+
i && (r.versionUid = i), V(r, n);
|
|
534
|
+
let a = typeof r.timeCreated == "number" ? r.timeCreated : 0, o = typeof r.attester == "string" ? r.attester : typeof r.Attester == "string" ? r.Attester : void 0;
|
|
509
535
|
return {
|
|
510
536
|
seedUid: n,
|
|
511
|
-
schemaName: t,
|
|
512
|
-
attester:
|
|
537
|
+
schemaName: t ?? e.seedUidToModelType.get(n) ?? "unknown",
|
|
538
|
+
attester: o,
|
|
513
539
|
timeCreated: a,
|
|
514
540
|
versionUid: i,
|
|
515
541
|
data: r
|
|
516
542
|
};
|
|
517
543
|
});
|
|
518
544
|
}
|
|
519
|
-
function
|
|
545
|
+
function He(e, t) {
|
|
520
546
|
let n = [t, ...e.relatedSeedUidsBySeedUid.get(t) ?? []], r = n.map((t) => e.latestVersionUidsBySeedUid.get(t)).filter((e) => !!e);
|
|
521
547
|
return {
|
|
522
548
|
refUIDs: [...n, ...r],
|
|
523
549
|
ids: n
|
|
524
550
|
};
|
|
525
551
|
}
|
|
526
|
-
async function
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
dropSeedsWithOnlyRevokedVersions: !0,
|
|
552
|
+
async function H(e, t, n, r = I(), i) {
|
|
553
|
+
return U(t, n, r, {
|
|
554
|
+
schemaName: e,
|
|
530
555
|
versions: i?.versions
|
|
531
556
|
});
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
557
|
+
}
|
|
558
|
+
async function U(e, t, n, r = {}) {
|
|
559
|
+
let i = t?.expandRelations !== !1, a = t?.hydrateStorage !== !1, o = Ne();
|
|
560
|
+
for (let t of e) t && o.requestedSeedUids.add(t.id);
|
|
561
|
+
await Re(o, e, n, {
|
|
562
|
+
dropSeedsWithOnlyRevokedVersions: !0,
|
|
563
|
+
versions: r.versions,
|
|
564
|
+
pins: r.pins && Ie(r.pins)
|
|
565
|
+
});
|
|
566
|
+
let s = Array.from(o.relatedSeedUids).filter((e) => !o.assembledItems.has(e) && !o.droppedSeedUids.has(e));
|
|
567
|
+
if (s.length > 0) {
|
|
568
|
+
let [e, t] = await Promise.all([n.getSeedsByUids(s), n.getVersionsForSeeds(s, { includeRevoked: !0 })]);
|
|
569
|
+
await Re(o, e, n, { versions: t });
|
|
570
|
+
}
|
|
571
|
+
ze(o), Be(o, i);
|
|
572
|
+
let c = Ve(o, r.schemaName);
|
|
573
|
+
return a && await N(c.map((e) => e.data), n.readStorageBody ? { readStorageBody: n.readStorageBody.bind(n) } : void 0), {
|
|
574
|
+
records: c,
|
|
575
|
+
dependencies: new Map(c.map((e) => [e.seedUid, He(o, e.seedUid)]))
|
|
542
576
|
};
|
|
543
577
|
}
|
|
544
|
-
async function
|
|
545
|
-
return (await
|
|
578
|
+
async function Ue(e, t, n, r = I()) {
|
|
579
|
+
return (await H(e, t, n, r)).records;
|
|
546
580
|
}
|
|
547
581
|
//#endregion
|
|
548
582
|
//#region src/changelog.ts
|
|
549
|
-
var
|
|
550
|
-
function
|
|
583
|
+
var We = (e) => e.replace(/_([a-z])/g, (e, t) => t.toUpperCase());
|
|
584
|
+
function Ge(e, t) {
|
|
551
585
|
if (Object.is(e, t)) return !0;
|
|
552
586
|
if (e === void 0 || t === void 0) return !1;
|
|
553
587
|
if (e === null || t === null) return e === t;
|
|
@@ -558,38 +592,38 @@ function z(e, t) {
|
|
|
558
592
|
return !1;
|
|
559
593
|
}
|
|
560
594
|
}
|
|
561
|
-
function
|
|
562
|
-
let t =
|
|
595
|
+
function Ke(e) {
|
|
596
|
+
let t = P(e.decodedDataJson);
|
|
563
597
|
if (!t.ok) return null;
|
|
564
598
|
let n = t.metadata, r = n.name;
|
|
565
599
|
if (!r) return null;
|
|
566
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", c = !1, l = !1;
|
|
567
601
|
if ((a || o) && (c = !0, Array.isArray(n.value) && (l = !0, o))) {
|
|
568
|
-
let e =
|
|
602
|
+
let e = F(r);
|
|
569
603
|
e?.isList && (r = e.propertyName);
|
|
570
604
|
}
|
|
571
605
|
let u = n.value;
|
|
572
606
|
c && l && Array.isArray(u) ? u = u.map((e) => String(e)) : typeof u != "string" && (u = (p(i) ? s(u) : void 0) ?? JSON.stringify(u));
|
|
573
|
-
let d =
|
|
607
|
+
let d = We(r);
|
|
574
608
|
return {
|
|
575
609
|
propertyName: r,
|
|
576
610
|
value: u,
|
|
577
611
|
camelName: d === r ? void 0 : d
|
|
578
612
|
};
|
|
579
613
|
}
|
|
580
|
-
function
|
|
614
|
+
function qe(e) {
|
|
581
615
|
let t = {};
|
|
582
616
|
for (let n of e) {
|
|
583
|
-
let e =
|
|
617
|
+
let e = Ke(n);
|
|
584
618
|
e && (t[e.propertyName] = e.value, e.camelName && (t[e.camelName] = e.value));
|
|
585
619
|
}
|
|
586
620
|
return t;
|
|
587
621
|
}
|
|
588
|
-
function
|
|
622
|
+
function Je(e) {
|
|
589
623
|
let t = [], n = {};
|
|
590
624
|
for (let r of e) {
|
|
591
625
|
let e = r.data, i = /* @__PURE__ */ new Set([...Object.keys(n), ...Object.keys(e)]), a = [];
|
|
592
|
-
for (let t of i)
|
|
626
|
+
for (let t of i) Ge(n[t], e[t]) || a.push(t);
|
|
593
627
|
a.sort(), t.push({
|
|
594
628
|
type: "version",
|
|
595
629
|
at: r.at,
|
|
@@ -601,15 +635,15 @@ function qe(e) {
|
|
|
601
635
|
}
|
|
602
636
|
return t;
|
|
603
637
|
}
|
|
604
|
-
function
|
|
638
|
+
function Ye(e) {
|
|
605
639
|
let t = [...e].sort((e, t) => e.timeCreated === t.timeCreated ? e.id.localeCompare(t.id) : e.timeCreated - t.timeCreated), n = /* @__PURE__ */ new Map(), r = [];
|
|
606
640
|
for (let e of t) {
|
|
607
|
-
let t =
|
|
641
|
+
let t = Ke(e);
|
|
608
642
|
if (!t) continue;
|
|
609
643
|
let i = [t.propertyName];
|
|
610
644
|
t.camelName && i.push(t.camelName);
|
|
611
645
|
let a = n.has(t.propertyName) ? n.get(t.propertyName) : void 0, o = t.value;
|
|
612
|
-
|
|
646
|
+
Ge(a, o) || r.push({
|
|
613
647
|
type: "property",
|
|
614
648
|
at: e.timeCreated,
|
|
615
649
|
versionUid: e.refUID,
|
|
@@ -621,7 +655,7 @@ function Je(e) {
|
|
|
621
655
|
}
|
|
622
656
|
return r;
|
|
623
657
|
}
|
|
624
|
-
function
|
|
658
|
+
function Xe(e, t) {
|
|
625
659
|
let n = e;
|
|
626
660
|
if (typeof t?.since == "number") {
|
|
627
661
|
let e = t.since;
|
|
@@ -631,14 +665,14 @@ function Ye(e, t) {
|
|
|
631
665
|
}
|
|
632
666
|
//#endregion
|
|
633
667
|
//#region src/assembleChangelog.ts
|
|
634
|
-
async function
|
|
668
|
+
async function Ze(e, t, n = I()) {
|
|
635
669
|
let r = t?.changelog ?? {}, i = r.granularity ?? "version", [a, o] = await Promise.all([n.getSeedByUid(e), n.getVersionsForSeed(e)]), s = [...m(o, a ? [a] : [])].sort((e, t) => e.timeCreated - t.timeCreated);
|
|
636
670
|
if (s.length === 0) return {
|
|
637
671
|
latestVersionUid: "",
|
|
638
672
|
changelog: []
|
|
639
673
|
};
|
|
640
674
|
let c = s[s.length - 1].id, l = s.map((e) => e.id), u = m(await n.getPropertiesForVersionUids(l), s), d;
|
|
641
|
-
if (i === "property") d =
|
|
675
|
+
if (i === "property") d = Ye(u);
|
|
642
676
|
else {
|
|
643
677
|
let e = /* @__PURE__ */ new Map();
|
|
644
678
|
for (let t of u) {
|
|
@@ -651,40 +685,40 @@ async function Xe(e, t, n = N()) {
|
|
|
651
685
|
t.push({
|
|
652
686
|
versionUid: n.id,
|
|
653
687
|
at: n.timeCreated,
|
|
654
|
-
data:
|
|
688
|
+
data: qe(i)
|
|
655
689
|
});
|
|
656
690
|
}
|
|
657
|
-
d =
|
|
691
|
+
d = Je(t);
|
|
658
692
|
}
|
|
659
693
|
return {
|
|
660
694
|
latestVersionUid: c,
|
|
661
|
-
changelog:
|
|
695
|
+
changelog: Xe(d, r)
|
|
662
696
|
};
|
|
663
697
|
}
|
|
664
698
|
//#endregion
|
|
665
699
|
//#region src/cache/etag.ts
|
|
666
|
-
function
|
|
667
|
-
return `"${
|
|
700
|
+
function Qe(e) {
|
|
701
|
+
return `"${ee(y(te(e))).substring(0, 16)}"`;
|
|
668
702
|
}
|
|
669
|
-
function
|
|
670
|
-
return
|
|
703
|
+
function $e(e, t, n) {
|
|
704
|
+
return Qe(`${e}-${t}-${n.join(",")}`);
|
|
671
705
|
}
|
|
672
|
-
function
|
|
673
|
-
return
|
|
706
|
+
function et(e, t) {
|
|
707
|
+
return Qe(`${t}-${tt(e)}`);
|
|
674
708
|
}
|
|
675
|
-
function
|
|
709
|
+
function tt(e) {
|
|
676
710
|
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);
|
|
677
711
|
}
|
|
678
712
|
//#endregion
|
|
679
713
|
//#region src/cache/config.ts
|
|
680
|
-
function
|
|
714
|
+
function nt() {
|
|
681
715
|
return globalThis.process?.env ?? {};
|
|
682
716
|
}
|
|
683
|
-
function
|
|
684
|
-
return
|
|
717
|
+
function rt() {
|
|
718
|
+
return nt().NODE_ENV !== "production";
|
|
685
719
|
}
|
|
686
|
-
function
|
|
687
|
-
let e =
|
|
720
|
+
function it() {
|
|
721
|
+
let e = nt(), 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;
|
|
688
722
|
o = r ? !1 : i ? !0 : !a;
|
|
689
723
|
let s = e.CACHE_BACKGROUND_REFRESH === "true", c = parseInt(e.CACHE_REFRESH_INTERVAL || "300", 10);
|
|
690
724
|
return {
|
|
@@ -693,19 +727,19 @@ function V() {
|
|
|
693
727
|
enabled: o,
|
|
694
728
|
backgroundRefresh: s,
|
|
695
729
|
refreshInterval: c,
|
|
696
|
-
freezeRecords:
|
|
730
|
+
freezeRecords: rt()
|
|
697
731
|
};
|
|
698
732
|
}
|
|
699
733
|
//#endregion
|
|
700
734
|
//#region src/cache/freeze.ts
|
|
701
|
-
function
|
|
735
|
+
function at(e) {
|
|
702
736
|
if (typeof e != "object" || !e || Object.isFrozen(e) || ArrayBuffer.isView(e)) return e;
|
|
703
|
-
for (let t of Object.values(e))
|
|
737
|
+
for (let t of Object.values(e)) at(t);
|
|
704
738
|
return Object.freeze(e);
|
|
705
739
|
}
|
|
706
740
|
//#endregion
|
|
707
741
|
//#region src/cache/MemoryCache.ts
|
|
708
|
-
var
|
|
742
|
+
var ot = class {
|
|
709
743
|
collectionCache = /* @__PURE__ */ new Map();
|
|
710
744
|
itemCache = /* @__PURE__ */ new Map();
|
|
711
745
|
config;
|
|
@@ -720,7 +754,7 @@ var rt = class {
|
|
|
720
754
|
return `${e}:${t}`;
|
|
721
755
|
}
|
|
722
756
|
get freezeRecords() {
|
|
723
|
-
return this.config.freezeRecords ??
|
|
757
|
+
return this.config.freezeRecords ?? rt();
|
|
724
758
|
}
|
|
725
759
|
expired(e) {
|
|
726
760
|
return Math.floor(Date.now() / 1e3) - e > this.config.ttl;
|
|
@@ -730,7 +764,7 @@ var rt = class {
|
|
|
730
764
|
return r ? this.expired(r.lastUpdated) ? (this.collectionCache.delete(n), null) : r : null;
|
|
731
765
|
}
|
|
732
766
|
setCollection(e, t, n) {
|
|
733
|
-
if (this.freezeRecords) for (let e of n.items)
|
|
767
|
+
if (this.freezeRecords) for (let e of n.items) at(e);
|
|
734
768
|
this.collectionCache.set(this.collectionKey(e, t), n);
|
|
735
769
|
}
|
|
736
770
|
getItem(e, t) {
|
|
@@ -738,7 +772,7 @@ var rt = class {
|
|
|
738
772
|
return r ? this.expired(r.lastUpdated) ? (this.itemCache.delete(n), null) : r : null;
|
|
739
773
|
}
|
|
740
774
|
setItem(e) {
|
|
741
|
-
this.freezeRecords &&
|
|
775
|
+
this.freezeRecords && at(e.record), this.itemCache.set(this.itemKey(e.record.seedUid, e.optionsKey), e);
|
|
742
776
|
}
|
|
743
777
|
clearCollection(e) {
|
|
744
778
|
for (let t of this.collectionCache.keys()) t.startsWith(`${e}\n`) && this.collectionCache.delete(t);
|
|
@@ -775,19 +809,19 @@ var rt = class {
|
|
|
775
809
|
activeLocks: this.refreshLocks.size
|
|
776
810
|
};
|
|
777
811
|
}
|
|
778
|
-
},
|
|
779
|
-
function
|
|
780
|
-
|
|
812
|
+
}, st = () => null;
|
|
813
|
+
function ct(e) {
|
|
814
|
+
st = e;
|
|
781
815
|
}
|
|
782
|
-
function
|
|
816
|
+
function lt(e) {
|
|
783
817
|
let t = e;
|
|
784
818
|
return !!t && Array.isArray(t.items) && typeof t.meta == "object" && t.meta !== null && typeof t.checkedAt == "number" && Array.isArray(t.seenChangeKeys);
|
|
785
819
|
}
|
|
786
|
-
function
|
|
820
|
+
function ut(e) {
|
|
787
821
|
let t = e;
|
|
788
822
|
return !!t && !!t.record && !!t.dependencies && typeof t.checkedAt == "number" && Array.isArray(t.seenChangeKeys);
|
|
789
823
|
}
|
|
790
|
-
var
|
|
824
|
+
var dt = class {
|
|
791
825
|
memoryCache;
|
|
792
826
|
persistent;
|
|
793
827
|
config;
|
|
@@ -798,7 +832,7 @@ var U = class {
|
|
|
798
832
|
errors: 0
|
|
799
833
|
};
|
|
800
834
|
constructor(e, t) {
|
|
801
|
-
this.config = e, this.memoryCache = new
|
|
835
|
+
this.config = e, this.memoryCache = new ot(e), this.persistent = t === void 0 ? st(e) : t;
|
|
802
836
|
}
|
|
803
837
|
get enabled() {
|
|
804
838
|
return this.config.enabled;
|
|
@@ -812,7 +846,7 @@ var U = class {
|
|
|
812
846
|
let n = this.memoryCache.getCollection(e, t);
|
|
813
847
|
if (n) return this.stats.hits++, n;
|
|
814
848
|
let r = await this.persistent?.getCollection(e, t) ?? null;
|
|
815
|
-
return
|
|
849
|
+
return lt(r) ? (this.memoryCache.setCollection(e, t, r), this.stats.hits++, r) : (this.stats.misses++, null);
|
|
816
850
|
} catch (t) {
|
|
817
851
|
return console.error(`Error getting query collection cache for ${e}:`, t), this.stats.errors++, null;
|
|
818
852
|
}
|
|
@@ -823,7 +857,7 @@ var U = class {
|
|
|
823
857
|
let r = n.items.map((e) => ({
|
|
824
858
|
...e,
|
|
825
859
|
data: { ...e.data }
|
|
826
|
-
})), i =
|
|
860
|
+
})), i = $e(e, t, r.map((e) => et(e, t))), a = {
|
|
827
861
|
...n,
|
|
828
862
|
items: r,
|
|
829
863
|
etag: i
|
|
@@ -839,7 +873,7 @@ var U = class {
|
|
|
839
873
|
let n = this.memoryCache.getItem(e, t);
|
|
840
874
|
if (n) return this.stats.hits++, n;
|
|
841
875
|
let r = await this.persistent?.getItem(e, t) ?? null;
|
|
842
|
-
return
|
|
876
|
+
return ut(r) ? (this.memoryCache.setItem(r), this.stats.hits++, r) : (this.stats.misses++, null);
|
|
843
877
|
} catch (t) {
|
|
844
878
|
return console.error(`Error getting query item cache for ${e}:`, t), this.stats.errors++, null;
|
|
845
879
|
}
|
|
@@ -854,7 +888,7 @@ var U = class {
|
|
|
854
888
|
}, n = {
|
|
855
889
|
...e,
|
|
856
890
|
record: t,
|
|
857
|
-
etag:
|
|
891
|
+
etag: et(t, e.optionsKey)
|
|
858
892
|
};
|
|
859
893
|
return this.memoryCache.setItem(n), await this.persistent?.setItem(n), n;
|
|
860
894
|
} catch (t) {
|
|
@@ -899,30 +933,30 @@ var U = class {
|
|
|
899
933
|
errors: 0
|
|
900
934
|
};
|
|
901
935
|
}
|
|
902
|
-
},
|
|
903
|
-
function
|
|
904
|
-
return
|
|
936
|
+
}, ft = null;
|
|
937
|
+
function W() {
|
|
938
|
+
return ft ||= new dt(it()), ft;
|
|
905
939
|
}
|
|
906
|
-
function
|
|
907
|
-
|
|
940
|
+
function pt() {
|
|
941
|
+
ft = null;
|
|
908
942
|
}
|
|
909
|
-
function
|
|
910
|
-
return new
|
|
911
|
-
...
|
|
943
|
+
function mt(e, t) {
|
|
944
|
+
return new dt({
|
|
945
|
+
...it(),
|
|
912
946
|
...e
|
|
913
947
|
}, t);
|
|
914
948
|
}
|
|
915
|
-
function
|
|
949
|
+
function G() {
|
|
916
950
|
return Math.floor(Date.now() / 1e3);
|
|
917
951
|
}
|
|
918
|
-
function
|
|
952
|
+
function K(e) {
|
|
919
953
|
return e - 600;
|
|
920
954
|
}
|
|
921
|
-
function
|
|
922
|
-
return
|
|
955
|
+
function ht(e, t) {
|
|
956
|
+
return K(t) - e.checkedAt > 600;
|
|
923
957
|
}
|
|
924
|
-
var
|
|
925
|
-
async function
|
|
958
|
+
var q = (e) => `${e.id}:${e.revocationTime}`;
|
|
959
|
+
async function gt(e, t, n) {
|
|
926
960
|
if (!e.listChangesSince) return null;
|
|
927
961
|
if (t.size === 0) return {
|
|
928
962
|
changed: /* @__PURE__ */ new Set(),
|
|
@@ -941,29 +975,57 @@ async function ft(e, t, n) {
|
|
|
941
975
|
ids: [...i.keys()],
|
|
942
976
|
since: n.checkedAt
|
|
943
977
|
}), s = new Set(n.seenChangeKeys), c = /* @__PURE__ */ new Set();
|
|
944
|
-
for (let e of o) if (!s.has(
|
|
978
|
+
for (let e of o) if (!s.has(q(e))) {
|
|
945
979
|
for (let t of r.get(e.refUID) ?? []) c.add(t);
|
|
946
980
|
for (let t of i.get(e.id) ?? []) c.add(t);
|
|
947
981
|
}
|
|
948
982
|
return {
|
|
949
983
|
changed: c,
|
|
950
|
-
seenChangeKeys: o.map(
|
|
984
|
+
seenChangeKeys: o.map(q)
|
|
985
|
+
};
|
|
986
|
+
}
|
|
987
|
+
async function _t(e, t) {
|
|
988
|
+
if (!e.listChangesSince) return null;
|
|
989
|
+
let n = /* @__PURE__ */ new Set(), r = /* @__PURE__ */ new Map();
|
|
990
|
+
if (t.size === 0) return {
|
|
991
|
+
changed: n,
|
|
992
|
+
seenChangeKeys: r
|
|
993
|
+
};
|
|
994
|
+
let i = /* @__PURE__ */ new Set(), a = /* @__PURE__ */ new Set(), o = Infinity;
|
|
995
|
+
for (let e of t.values()) {
|
|
996
|
+
for (let t of e.dependencies.refUIDs) i.add(t);
|
|
997
|
+
for (let t of e.dependencies.ids) a.add(t);
|
|
998
|
+
o = Math.min(o, e.checkedAt);
|
|
999
|
+
}
|
|
1000
|
+
let s = await e.listChangesSince({
|
|
1001
|
+
refUIDs: [...i],
|
|
1002
|
+
ids: [...a],
|
|
1003
|
+
since: o
|
|
1004
|
+
});
|
|
1005
|
+
for (let [e, i] of t) {
|
|
1006
|
+
let t = new Set(i.dependencies.refUIDs), a = new Set(i.dependencies.ids), o = new Set(i.seenChangeKeys), c = [];
|
|
1007
|
+
for (let r of s) r.timeCreated <= i.checkedAt && r.revocationTime <= i.checkedAt || (t.has(r.refUID) || a.has(r.id)) && (c.push(q(r)), o.has(q(r)) || n.add(e));
|
|
1008
|
+
r.set(e, c);
|
|
1009
|
+
}
|
|
1010
|
+
return {
|
|
1011
|
+
changed: n,
|
|
1012
|
+
seenChangeKeys: r
|
|
951
1013
|
};
|
|
952
1014
|
}
|
|
953
1015
|
//#endregion
|
|
954
1016
|
//#region src/source/registry.ts
|
|
955
1017
|
var J = null;
|
|
956
|
-
function
|
|
1018
|
+
function vt(e) {
|
|
957
1019
|
if (e.kind !== "local") throw Error("[query] registerLocalQuerySource expects a source with kind: \"local\"");
|
|
958
1020
|
J = e;
|
|
959
1021
|
}
|
|
960
|
-
function
|
|
1022
|
+
function yt() {
|
|
961
1023
|
J = null;
|
|
962
1024
|
}
|
|
963
|
-
function
|
|
1025
|
+
function bt() {
|
|
964
1026
|
return J;
|
|
965
1027
|
}
|
|
966
|
-
function
|
|
1028
|
+
function xt() {
|
|
967
1029
|
return J != null;
|
|
968
1030
|
}
|
|
969
1031
|
//#endregion
|
|
@@ -971,10 +1033,10 @@ function gt() {
|
|
|
971
1033
|
function Y(e = "remote") {
|
|
972
1034
|
if (e === "remote") return {
|
|
973
1035
|
mode: "remote",
|
|
974
|
-
dataSource:
|
|
1036
|
+
dataSource: I(),
|
|
975
1037
|
useQueryCache: !0
|
|
976
1038
|
};
|
|
977
|
-
let t =
|
|
1039
|
+
let t = bt();
|
|
978
1040
|
if (e === "local") {
|
|
979
1041
|
if (!t) throw Error("[query] source: \"local\" requires registerLocalQuerySource(...) (e.g. SDK DB ready)");
|
|
980
1042
|
return {
|
|
@@ -989,7 +1051,7 @@ function Y(e = "remote") {
|
|
|
989
1051
|
useQueryCache: !1
|
|
990
1052
|
} : {
|
|
991
1053
|
mode: "auto",
|
|
992
|
-
dataSource:
|
|
1054
|
+
dataSource: I(),
|
|
993
1055
|
useQueryCache: !0
|
|
994
1056
|
};
|
|
995
1057
|
}
|
|
@@ -1003,21 +1065,21 @@ var Z = {
|
|
|
1003
1065
|
ids: []
|
|
1004
1066
|
};
|
|
1005
1067
|
function Q(e, t) {
|
|
1006
|
-
return !t || e?.cache === !1 ? !1 :
|
|
1068
|
+
return !t || e?.cache === !1 ? !1 : W().enabled;
|
|
1007
1069
|
}
|
|
1008
|
-
function
|
|
1070
|
+
function St(e) {
|
|
1009
1071
|
return e === "data+changelog" || e === "changelog";
|
|
1010
1072
|
}
|
|
1011
|
-
function
|
|
1073
|
+
function Ct(e) {
|
|
1012
1074
|
return e !== "changelog";
|
|
1013
1075
|
}
|
|
1014
|
-
async function
|
|
1015
|
-
return
|
|
1076
|
+
async function wt(e, t, n, r, i) {
|
|
1077
|
+
return H(e, await i.listSeedsBySchemaName(e, {
|
|
1016
1078
|
limit: t,
|
|
1017
1079
|
skip: n
|
|
1018
1080
|
}), r, i);
|
|
1019
1081
|
}
|
|
1020
|
-
async function
|
|
1082
|
+
async function Tt(e, t, n) {
|
|
1021
1083
|
let r = await n(t);
|
|
1022
1084
|
if (e !== "auto" || t.kind !== "local") return {
|
|
1023
1085
|
assembled: r,
|
|
@@ -1029,7 +1091,7 @@ async function bt(e, t, n) {
|
|
|
1029
1091
|
dataSource: t,
|
|
1030
1092
|
useQueryCache: !1
|
|
1031
1093
|
};
|
|
1032
|
-
let i =
|
|
1094
|
+
let i = I();
|
|
1033
1095
|
return {
|
|
1034
1096
|
assembled: await n(i),
|
|
1035
1097
|
dataSource: i,
|
|
@@ -1037,17 +1099,17 @@ async function bt(e, t, n) {
|
|
|
1037
1099
|
};
|
|
1038
1100
|
}
|
|
1039
1101
|
async function $(e, t, n, r = []) {
|
|
1040
|
-
await
|
|
1102
|
+
await W().writeThroughItems(e.records.map((i) => ({
|
|
1041
1103
|
record: i,
|
|
1042
1104
|
optionsKey: t,
|
|
1043
1105
|
dependencies: e.dependencies.get(i.seedUid) ?? Z,
|
|
1044
|
-
checkedAt:
|
|
1106
|
+
checkedAt: K(n),
|
|
1045
1107
|
seenChangeKeys: r,
|
|
1046
1108
|
lastUpdated: n
|
|
1047
1109
|
})));
|
|
1048
1110
|
}
|
|
1049
|
-
async function
|
|
1050
|
-
let a =
|
|
1111
|
+
async function Et(e, t, n, r, i) {
|
|
1112
|
+
let a = W(), o = G(), s = await a.getCollection(e, r), c = await i.listSeedsBySchemaName(e, {
|
|
1051
1113
|
limit: t,
|
|
1052
1114
|
skip: 0
|
|
1053
1115
|
}), l = new Map(s?.items.map((e) => [e.seedUid, e]) ?? []), u = /* @__PURE__ */ new Set(), d = [];
|
|
@@ -1057,10 +1119,10 @@ async function xt(e, t, n, r, i) {
|
|
|
1057
1119
|
let n = s.meta[t.id];
|
|
1058
1120
|
l.has(t.id) && e.set(t.id, n?.dependencies ?? Z);
|
|
1059
1121
|
}
|
|
1060
|
-
let t = await
|
|
1122
|
+
let t = await gt(i, e, s);
|
|
1061
1123
|
t ? (u = t.changed, d = t.seenChangeKeys) : u = new Set(e.keys());
|
|
1062
1124
|
}
|
|
1063
|
-
let f = c.filter((e) => !l.has(e.id) || u.has(e.id)), p = f.length > 0 ? await
|
|
1125
|
+
let f = c.filter((e) => !l.has(e.id) || u.has(e.id)), p = f.length > 0 ? await H(e, f, n, i) : {
|
|
1064
1126
|
records: [],
|
|
1065
1127
|
dependencies: /* @__PURE__ */ new Map()
|
|
1066
1128
|
}, m = new Map(p.records.map((e) => [e.seedUid, e])), h = [], g = {};
|
|
@@ -1075,7 +1137,7 @@ async function xt(e, t, n, r, i) {
|
|
|
1075
1137
|
});
|
|
1076
1138
|
}
|
|
1077
1139
|
let _ = !!s && p.records.length === 0 && h.length === s.items.length && h.every((e, t) => e === s.items[t]);
|
|
1078
|
-
if (s && _ && !
|
|
1140
|
+
if (s && _ && !ht(s, o)) return {
|
|
1079
1141
|
items: h,
|
|
1080
1142
|
limit: t,
|
|
1081
1143
|
skip: 0,
|
|
@@ -1085,7 +1147,7 @@ async function xt(e, t, n, r, i) {
|
|
|
1085
1147
|
let v = await a.setCollection(e, r, {
|
|
1086
1148
|
items: h,
|
|
1087
1149
|
meta: g,
|
|
1088
|
-
checkedAt:
|
|
1150
|
+
checkedAt: K(o),
|
|
1089
1151
|
seenChangeKeys: d,
|
|
1090
1152
|
lastUpdated: s?.lastUpdated ?? o
|
|
1091
1153
|
});
|
|
@@ -1096,55 +1158,75 @@ async function xt(e, t, n, r, i) {
|
|
|
1096
1158
|
etag: v?.etag
|
|
1097
1159
|
};
|
|
1098
1160
|
}
|
|
1099
|
-
var
|
|
1100
|
-
function
|
|
1161
|
+
var Dt = 4;
|
|
1162
|
+
function Ot(e) {
|
|
1101
1163
|
let t = e.trim().toLowerCase().replace(/^0x/, "");
|
|
1102
|
-
return t.length <
|
|
1164
|
+
return t.length < Dt || t.length > 64 || !/^[0-9a-f]+$/.test(t) ? null : `0x${t}`;
|
|
1103
1165
|
}
|
|
1104
|
-
async function
|
|
1166
|
+
async function kt(n, r) {
|
|
1105
1167
|
await e();
|
|
1106
1168
|
let i = r?.limit ?? 100, a = r?.skip ?? 0, o = X(r?.source), s = Y(o), c = t(r), l = null;
|
|
1107
|
-
if (r?.uidPrefix !== void 0 && (l =
|
|
1169
|
+
if (r?.uidPrefix !== void 0 && (l = Ot(r.uidPrefix), !l)) return {
|
|
1108
1170
|
items: [],
|
|
1109
1171
|
limit: i,
|
|
1110
1172
|
skip: a
|
|
1111
1173
|
};
|
|
1112
|
-
let u = async (e) => l ?
|
|
1174
|
+
let u = async (e) => l ? H(n, await e.listSeedsByUidPrefix(n, l, {
|
|
1113
1175
|
limit: i,
|
|
1114
1176
|
skip: a
|
|
1115
|
-
}), r, e) :
|
|
1177
|
+
}), r, e) : wt(n, i, a, r, e);
|
|
1116
1178
|
if (!l && Q(r, s.useQueryCache) && a === 0 && s.dataSource.kind === "remote") {
|
|
1117
1179
|
let e = `${n}\n${c}\n${i}`;
|
|
1118
|
-
return
|
|
1180
|
+
return W().withRefreshLock(e, () => Et(n, i, r, c, s.dataSource));
|
|
1119
1181
|
}
|
|
1120
|
-
let d =
|
|
1182
|
+
let d = G(), { assembled: f, dataSource: p, useQueryCache: m } = await Tt(o, s.dataSource, (e) => u(e));
|
|
1121
1183
|
return Q(r, m) && p.kind === "remote" && await $(f, c, d), {
|
|
1122
1184
|
items: f.records,
|
|
1123
1185
|
limit: i,
|
|
1124
1186
|
skip: a
|
|
1125
1187
|
};
|
|
1126
1188
|
}
|
|
1127
|
-
async function
|
|
1128
|
-
let
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1189
|
+
async function At(e, t) {
|
|
1190
|
+
let n = W(), r = /* @__PURE__ */ new Map();
|
|
1191
|
+
await Promise.all(e.map(async ({ seedUid: e, optionsKey: t }) => {
|
|
1192
|
+
let i = await n.getItem(e, t);
|
|
1193
|
+
i && r.set(e, i);
|
|
1194
|
+
}));
|
|
1195
|
+
let i = /* @__PURE__ */ new Map();
|
|
1196
|
+
if (r.size === 0) return i;
|
|
1197
|
+
let a = G(), o = /* @__PURE__ */ new Map();
|
|
1198
|
+
for (let [e, t] of r) o.set(e, t);
|
|
1199
|
+
let s = await _t(t, o);
|
|
1200
|
+
for (let [e, t] of r) !s || s.changed.has(e) ? await n.clearItem(e, t.optionsKey) : (ht(t, a) && await n.setItem({
|
|
1201
|
+
...t,
|
|
1202
|
+
checkedAt: K(a),
|
|
1203
|
+
seenChangeKeys: s.seenChangeKeys.get(e) ?? []
|
|
1204
|
+
}), i.set(e, t.record));
|
|
1205
|
+
return i;
|
|
1206
|
+
}
|
|
1207
|
+
async function jt(e, t, n) {
|
|
1208
|
+
return (await At([{
|
|
1209
|
+
seedUid: e,
|
|
1210
|
+
optionsKey: t
|
|
1211
|
+
}], n)).get(e) ?? null;
|
|
1212
|
+
}
|
|
1213
|
+
function Mt(e) {
|
|
1214
|
+
if (e?.versionUid !== void 0 || e?.asOf !== void 0) return {
|
|
1215
|
+
versionUid: e.versionUid,
|
|
1216
|
+
asOf: e.asOf
|
|
1217
|
+
};
|
|
1218
|
+
}
|
|
1219
|
+
async function Nt(n, r) {
|
|
1138
1220
|
if (await e(), !n || typeof n != "string" || n.trim() === "") return null;
|
|
1139
1221
|
let i = n.trim(), a = r?.include ?? "data", o = X(r?.source), s = Y(o), c = t(r), l = s.dataSource, u = s.useQueryCache;
|
|
1140
1222
|
if (Q(r, u) && l.kind === "remote") {
|
|
1141
|
-
let e = await
|
|
1223
|
+
let e = await jt(i, c, l);
|
|
1142
1224
|
if (e) return e;
|
|
1143
1225
|
}
|
|
1144
|
-
let d = (e) => Promise.all([e.getSeedByUid(i), e.getVersionsForSeeds([i], { includeRevoked: !0 })]), f =
|
|
1226
|
+
let d = (e) => Promise.all([e.getSeedByUid(i), e.getVersionsForSeeds([i], { includeRevoked: !0 })]), f = G(), [p, m] = await d(l);
|
|
1145
1227
|
if (!p && o === "auto" && l.kind === "local") {
|
|
1146
|
-
if (l =
|
|
1147
|
-
let e = await
|
|
1228
|
+
if (l = I(), u = !0, Q(r, u)) {
|
|
1229
|
+
let e = await jt(i, c, l);
|
|
1148
1230
|
if (e) return e;
|
|
1149
1231
|
}
|
|
1150
1232
|
[p, m] = await d(l);
|
|
@@ -1155,15 +1237,19 @@ async function Et(n, r) {
|
|
|
1155
1237
|
let g = null, _ = {
|
|
1156
1238
|
refUIDs: [i],
|
|
1157
1239
|
ids: [i]
|
|
1158
|
-
}, v = async () => {
|
|
1159
|
-
let e = await
|
|
1240
|
+
}, v = Mt(r), y = async () => {
|
|
1241
|
+
let e = await U([p], r, l, {
|
|
1242
|
+
schemaName: h,
|
|
1243
|
+
versions: m,
|
|
1244
|
+
pins: v && /* @__PURE__ */ new Map([[i, v]])
|
|
1245
|
+
}), t = e.records[0];
|
|
1160
1246
|
return t && (_ = e.dependencies.get(t.seedUid) ?? _), t ?? null;
|
|
1161
1247
|
};
|
|
1162
|
-
if (!
|
|
1248
|
+
if (!St(a)) g = await y();
|
|
1163
1249
|
else {
|
|
1164
|
-
let { latestVersionUid: e, changelog: t } = await
|
|
1165
|
-
if (
|
|
1166
|
-
let e = await
|
|
1250
|
+
let { latestVersionUid: e, changelog: t } = await Ze(i, r, l);
|
|
1251
|
+
if (Ct(a)) {
|
|
1252
|
+
let e = await y();
|
|
1167
1253
|
g = e ? {
|
|
1168
1254
|
...e,
|
|
1169
1255
|
changelog: t
|
|
@@ -1184,11 +1270,11 @@ async function Et(n, r) {
|
|
|
1184
1270
|
};
|
|
1185
1271
|
}
|
|
1186
1272
|
if (g && Q(r, u) && l.kind === "remote") {
|
|
1187
|
-
let e = await
|
|
1273
|
+
let e = await W().setItem({
|
|
1188
1274
|
record: g,
|
|
1189
1275
|
optionsKey: c,
|
|
1190
1276
|
dependencies: _,
|
|
1191
|
-
checkedAt:
|
|
1277
|
+
checkedAt: K(f),
|
|
1192
1278
|
seenChangeKeys: [],
|
|
1193
1279
|
lastUpdated: f
|
|
1194
1280
|
});
|
|
@@ -1196,12 +1282,73 @@ async function Et(n, r) {
|
|
|
1196
1282
|
}
|
|
1197
1283
|
return g;
|
|
1198
1284
|
}
|
|
1199
|
-
async function
|
|
1285
|
+
async function Pt(n, r) {
|
|
1286
|
+
await e();
|
|
1287
|
+
let i = /* @__PURE__ */ new Map();
|
|
1288
|
+
for (let e of n) {
|
|
1289
|
+
if (typeof e != "string" || e.trim() === "") continue;
|
|
1290
|
+
let t = e.trim().toLowerCase();
|
|
1291
|
+
i.has(t) || i.set(t, e.trim());
|
|
1292
|
+
}
|
|
1293
|
+
let a = [...i.keys()];
|
|
1294
|
+
if (a.length === 0) return /* @__PURE__ */ new Map();
|
|
1295
|
+
let o = /* @__PURE__ */ new Map();
|
|
1296
|
+
for (let [e, t] of r?.pins ?? []) {
|
|
1297
|
+
let n = Mt(t);
|
|
1298
|
+
n && o.set(e.trim().toLowerCase(), n);
|
|
1299
|
+
}
|
|
1300
|
+
let s = (e) => t({
|
|
1301
|
+
...r,
|
|
1302
|
+
...o.get(e)
|
|
1303
|
+
}), c = X(r?.source), l = Y(c), u = /* @__PURE__ */ new Map(), d = async (e, t, n) => {
|
|
1304
|
+
let i = Q(r, t) && e.kind === "remote", a = n;
|
|
1305
|
+
if (i) {
|
|
1306
|
+
let t = await At(n.map((e) => ({
|
|
1307
|
+
seedUid: e,
|
|
1308
|
+
optionsKey: s(e)
|
|
1309
|
+
})), e);
|
|
1310
|
+
for (let [e, n] of t) u.set(e, n);
|
|
1311
|
+
a = n.filter((e) => !t.has(e));
|
|
1312
|
+
}
|
|
1313
|
+
if (a.length === 0) return [];
|
|
1314
|
+
let c = G(), [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 U(a.map((e) => f.get(e)).filter((e) => !!e?.schema?.schemaNames?.[0]?.name), r, e, {
|
|
1315
|
+
versions: d,
|
|
1316
|
+
pins: o
|
|
1317
|
+
});
|
|
1318
|
+
for (let e of m.records) {
|
|
1319
|
+
let t = e;
|
|
1320
|
+
if (i) {
|
|
1321
|
+
let n = await W().setItem({
|
|
1322
|
+
record: e,
|
|
1323
|
+
optionsKey: s(e.seedUid.toLowerCase()),
|
|
1324
|
+
dependencies: m.dependencies.get(e.seedUid) ?? {
|
|
1325
|
+
refUIDs: [e.seedUid],
|
|
1326
|
+
ids: [e.seedUid]
|
|
1327
|
+
},
|
|
1328
|
+
checkedAt: K(c),
|
|
1329
|
+
seenChangeKeys: [],
|
|
1330
|
+
lastUpdated: c
|
|
1331
|
+
});
|
|
1332
|
+
n && (t = n.record);
|
|
1333
|
+
}
|
|
1334
|
+
u.set(e.seedUid.toLowerCase(), t);
|
|
1335
|
+
}
|
|
1336
|
+
return p;
|
|
1337
|
+
}, f = await d(l.dataSource, l.useQueryCache, a);
|
|
1338
|
+
f.length > 0 && c === "auto" && l.dataSource.kind === "local" && await d(I(), !0, f);
|
|
1339
|
+
let p = /* @__PURE__ */ new Map();
|
|
1340
|
+
for (let [e, t] of i) {
|
|
1341
|
+
let n = u.get(e);
|
|
1342
|
+
n && p.set(t, n);
|
|
1343
|
+
}
|
|
1344
|
+
return p;
|
|
1345
|
+
}
|
|
1346
|
+
async function Ft(n, r, i, a) {
|
|
1200
1347
|
await e();
|
|
1201
|
-
let o = X(a?.source), s = Y(o), c = async (e) =>
|
|
1348
|
+
let o = X(a?.source), s = Y(o), c = async (e) => H(n, await e.listSeedsBySchemaNameForMonth(n, r, i), a, e), l = G(), { assembled: u, dataSource: d, useQueryCache: f } = await Tt(o, s.dataSource, c);
|
|
1202
1349
|
return Q(a, f) && d.kind === "remote" && await $(u, t(a), l), u.records;
|
|
1203
1350
|
}
|
|
1204
1351
|
//#endregion
|
|
1205
|
-
export {
|
|
1352
|
+
export { S as $, Oe as A, D as B, Ye as C, I as D, Ae as E, ae as F, pe as G, ce as H, w as I, me as J, he as K, ue as L, N as M, ve as N, F as O, xe as P, re as Q, de as R, Ke as S, Ue as T, E as U, O as V, le as W, ie as X, C as Y, x as Z, it as _, Ft as a, qe as b, yt as c, vt as d, b as et, mt as f, ct as g, dt as h, kt as i, De as j, P as k, bt as l, pt as m, Pt as n, X as o, W as p, k as q, Ot as r, Y as s, Nt as t, xt as u, Ze as v, Je as w, Ge as x, Xe as y, fe as z };
|
|
1206
1353
|
|
|
1207
|
-
//# sourceMappingURL=src-
|
|
1354
|
+
//# sourceMappingURL=src-D20xeLMs.js.map
|