@seedprotocol/query 0.7.9-next.1177.ga3e08ed → 0.7.9-next.1189.g5e63267

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.
@@ -1,36 +1,36 @@
1
1
  import { o as e, r as t, t as n } from "./types-BjCYpItx.js";
2
2
  import { BaseArweaveClient as r, isKnownArweaveGatewayHostname as i, readArweaveContentResponse as a } from "@seedprotocol/arweave";
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, isNumericEasType as m, keepAttestationsFromRefAttester as h, pickLatestPropertyAttestationsByRefAndSchema as g, setSchemaUidForSchemaDefinition as _, withExcludeRevokedFilter as v } from "@seedprotocol/eas";
4
- import y from "pluralize";
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
+ import b from "pluralize";
5
5
  import { sha256 as ee } from "@noble/hashes/sha256";
6
6
  import { bytesToHex as te, utf8ToBytes as ne } from "@noble/hashes/utils";
7
7
  //#region src/arweaveUrl.ts
8
- function b(e) {
8
+ function x(e) {
9
9
  return `https://${r.getHost()}/${e}`;
10
10
  }
11
11
  //#endregion
12
12
  //#region src/listRelationKey.ts
13
13
  var re = /^(.+?)([A-Z][a-zA-Z]+)Ids$/;
14
- function x(e) {
14
+ function S(e) {
15
15
  let t = re.exec(e);
16
16
  if (t) {
17
17
  let e = t[1];
18
- if (e) return y(e);
18
+ if (e) return b(e);
19
19
  }
20
20
  if (e.endsWith("_ids")) {
21
21
  let t = e.slice(0, -4), n = t.split("_").filter(Boolean);
22
22
  if (n.length >= 2) {
23
23
  let e = n[0];
24
- return e.endsWith("s") ? e : y(e);
24
+ return e.endsWith("s") ? e : b(e);
25
25
  }
26
- return y(t);
26
+ return b(t);
27
27
  }
28
28
  return e;
29
29
  }
30
30
  function ie(e, t) {
31
- for (let n of Object.keys(e)) n !== t && x(n) === t && delete e[n];
31
+ for (let n of Object.keys(e)) n !== t && S(n) === t && delete e[n];
32
32
  }
33
- function S(e) {
33
+ function C(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,49 +42,49 @@ function S(e) {
42
42
  }
43
43
  //#endregion
44
44
  //#region src/imageRelationEnrichment.ts
45
- function C(e) {
45
+ function w(e) {
46
46
  let t = e.storageTransactionId ?? e.storage_transaction_id;
47
47
  if (t && typeof t == "string" && t.trim()) try {
48
- e.arweaveUrl = b(t.trim());
48
+ e.arweaveUrl = x(t.trim());
49
49
  } catch {}
50
50
  }
51
- var ae = C, w = /* @__PURE__ */ new Set([
51
+ var ae = w, T = /* @__PURE__ */ new Set([
52
52
  "html",
53
53
  "file",
54
54
  "json"
55
- ]), oe = w, se = "_feedFieldStorageModels", ce = "_feedListElementStorageModels";
56
- function T(e) {
55
+ ]), oe = T, se = "_feedFieldStorageModels", ce = "_feedListElementStorageModels";
56
+ function E(e) {
57
57
  return e.trim().toLowerCase();
58
58
  }
59
- function E(e) {
60
- return w.has(T(e));
59
+ function D(e) {
60
+ return T.has(E(e));
61
61
  }
62
- var le = E;
62
+ var le = D;
63
63
  function ue(e) {
64
- let t = T(e);
64
+ let t = E(e);
65
65
  return t === "html" ? 0 : t === "file" ? 1 : t === "json" ? 2 : 99;
66
66
  }
67
67
  var de = ue;
68
- function D(e) {
68
+ function O(e) {
69
69
  let t = e[se];
70
70
  if (typeof t == "object" && t && !Array.isArray(t)) return t;
71
71
  }
72
- var fe = D;
73
- function O(e) {
72
+ var fe = O;
73
+ function k(e) {
74
74
  let t = e[ce];
75
75
  if (typeof t == "object" && t && !Array.isArray(t)) return t;
76
76
  }
77
- var pe = O;
78
- function k(e, t, n) {
79
- let r = T(n), i = D(e);
77
+ var pe = k;
78
+ function A(e, t, n) {
79
+ let r = E(n), i = O(e);
80
80
  i || (i = {}, e[se] = i), i[t] = r;
81
81
  }
82
- var me = k;
83
- function A(e, t, n) {
84
- let r = O(e);
85
- r || (r = {}, e[ce] = r), r[t] = n.map(T);
82
+ var me = A;
83
+ function j(e, t, n) {
84
+ let r = k(e);
85
+ r || (r = {}, e[ce] = r), r[t] = n.map(E);
86
86
  }
87
- var he = A, ge = [
87
+ var he = j, ge = [
88
88
  "html",
89
89
  "Html",
90
90
  "body",
@@ -123,28 +123,28 @@ async function ye(e, t) {
123
123
  return null;
124
124
  }
125
125
  }
126
- var be = 32e6, j = /* @__PURE__ */ new Map(), M = 0, N = /* @__PURE__ */ new Map();
126
+ var be = 32e6, M = /* @__PURE__ */ new Map(), N = 0, P = /* @__PURE__ */ new Map();
127
127
  function xe() {
128
- j.clear(), M = 0, N.clear();
128
+ M.clear(), N = 0, P.clear();
129
129
  }
130
130
  function Se(e, t) {
131
131
  if (!(t.length > be)) {
132
- j.set(e, t), M += t.length;
133
- for (let [e, t] of j) {
134
- if (M <= be) break;
135
- j.delete(e), M -= t.length;
132
+ M.set(e, t), N += t.length;
133
+ for (let [e, t] of M) {
134
+ if (N <= be) break;
135
+ M.delete(e), N -= t.length;
136
136
  }
137
137
  }
138
138
  }
139
139
  async function Ce(e) {
140
- let t = new URL(e.trim()).pathname.replace(/^\//, ""), n = j.get(t);
141
- if (n !== void 0) return j.delete(t), j.set(t, n), n;
142
- let r = N.get(t);
140
+ let t = new URL(e.trim()).pathname.replace(/^\//, ""), n = M.get(t);
141
+ if (n !== void 0) return M.delete(t), M.set(t, n), n;
142
+ let r = P.get(t);
143
143
  if (r) return r;
144
- let i = ye(e, t).then((e) => (e !== null && N.get(t) === i && Se(t, e), e)).finally(() => {
145
- N.get(t) === i && N.delete(t);
144
+ let i = ye(e, t).then((e) => (e !== null && P.get(t) === i && Se(t, e), e)).finally(() => {
145
+ P.get(t) === i && P.delete(t);
146
146
  });
147
- return N.set(t, i), i;
147
+ return P.set(t, i), i;
148
148
  }
149
149
  async function we(e, t, n) {
150
150
  if (n) try {
@@ -163,11 +163,11 @@ async function Ee(e, t) {
163
163
  for (; n < e.length;) await e[n++]();
164
164
  }));
165
165
  }
166
- async function P(e, t) {
166
+ async function De(e, t) {
167
167
  let n = t?.readStorageBody, r = [];
168
168
  for (let t of e) {
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);
169
+ let e = /* @__PURE__ */ new Set([...ge]), i = O(t);
170
+ if (i) for (let [t, n] of Object.entries(i)) D(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 () => {
@@ -175,13 +175,13 @@ async function P(e, t) {
175
175
  r !== null && (t[i] = r);
176
176
  });
177
177
  }
178
- let a = O(t);
178
+ let a = k(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 (!E(i[t])) continue;
184
+ if (!D(i[t])) continue;
185
185
  let o = a[t];
186
186
  typeof o == "string" && r.push(async () => {
187
187
  let r = await we(e, o, n);
@@ -192,7 +192,7 @@ async function P(e, t) {
192
192
  }
193
193
  await Ee(r, Te);
194
194
  }
195
- var De = P;
195
+ var Oe = De;
196
196
  //#endregion
197
197
  //#region src/parseEasPropertyMetadata.ts
198
198
  function F(e) {
@@ -219,29 +219,29 @@ function F(e) {
219
219
  metadata: n[0].value
220
220
  };
221
221
  }
222
- var Oe = F;
222
+ var ke = F;
223
223
  //#endregion
224
224
  //#region src/parseEasRelationPropertyName.ts
225
- function I(e) {
225
+ function Ae(e) {
226
226
  let [t, n, r] = e.split("_");
227
227
  if (!t || !n) return null;
228
228
  let i = r === "ids";
229
229
  return {
230
- propertyName: i ? t.endsWith("s") ? t : y(t) : t,
230
+ propertyName: i ? t.endsWith("s") ? t : b(t) : t,
231
231
  modelName: n,
232
232
  isList: i
233
233
  };
234
234
  }
235
235
  //#endregion
236
236
  //#region src/source/remote.ts
237
- function ke(e, t) {
237
+ function je(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 Ae() {
244
+ function Me() {
245
245
  return {
246
246
  kind: "remote",
247
247
  async getSeedByUid(e) {
@@ -255,7 +255,7 @@ function Ae() {
255
255
  return await f(e, n.limit, n.skip, { uidPrefix: t });
256
256
  },
257
257
  async listSeedsBySchemaNameForMonth(e, t, n) {
258
- let { startTs: r, endTs: i } = ke(t, n), a = v({ AND: [{ schema: { is: { schemaNames: { some: { name: { equals: e } } } } } }, { timeCreated: {
258
+ let { startTs: r, endTs: i } = je(t, n), a = y({ AND: [{ schema: { is: { schemaNames: { some: { name: { equals: e } } } } } }, { timeCreated: {
259
259
  gte: r,
260
260
  lt: i
261
261
  } }] }), { itemSeeds: c } = await o.getEasClient().request(s, {
@@ -288,13 +288,13 @@ function Ae() {
288
288
  }
289
289
  };
290
290
  }
291
- var je = null;
292
- function L() {
293
- return je ||= Ae(), je;
291
+ var Ne = null;
292
+ function I() {
293
+ return Ne ||= Me(), Ne;
294
294
  }
295
295
  //#endregion
296
296
  //#region src/assembleSeeds.ts
297
- var R = "image", z = ["0x0000000000000000000000000000000000000000000000000000000000000020"], Me = /* @__PURE__ */ new Set([
297
+ var L = "image", R = ["0x0000000000000000000000000000000000000000000000000000000000000020"], Pe = /* @__PURE__ */ new Set([
298
298
  "seedUid",
299
299
  "SeedUid",
300
300
  "timeCreated",
@@ -305,8 +305,8 @@ var R = "image", z = ["0x0000000000000000000000000000000000000000000000000000000
305
305
  "storageTransactionId",
306
306
  "storageProviderTransactionId",
307
307
  "versionUid"
308
- ]), B = (e) => e.replace(/_([a-z])/g, (e, t) => t.toUpperCase());
309
- function Ne() {
308
+ ]), z = (e) => e.replace(/_([a-z])/g, (e, t) => t.toUpperCase());
309
+ function Fe() {
310
310
  return {
311
311
  seedUidToModelType: /* @__PURE__ */ new Map(),
312
312
  relatedSeedUids: /* @__PURE__ */ new Set(),
@@ -319,7 +319,7 @@ function Ne() {
319
319
  requestedSeedUids: /* @__PURE__ */ new Set()
320
320
  };
321
321
  }
322
- function V(e) {
322
+ function B(e) {
323
323
  let t = [];
324
324
  for (let n of e.requestedSeedUids) {
325
325
  let r = e.assembledItems.get(n);
@@ -327,17 +327,17 @@ function V(e) {
327
327
  }
328
328
  return t;
329
329
  }
330
- function H(e, t) {
330
+ function V(e, t) {
331
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);
332
332
  }
333
- function Pe(e, t, n) {
333
+ function Ie(e, t, n) {
334
334
  e.relatedSeedUids.add(n);
335
335
  let r = e.versionUidToSeedUid.get(t.refUID);
336
336
  if (!r) return;
337
337
  let i = e.relatedSeedUidsBySeedUid.get(r) ?? /* @__PURE__ */ new Set();
338
338
  i.add(n), e.relatedSeedUidsBySeedUid.set(r, i);
339
339
  }
340
- async function Fe(e, t) {
340
+ async function Le(e, t) {
341
341
  let n = F(t.decodedDataJson);
342
342
  if (!n.ok) {
343
343
  let { id: e, refUID: r, schemaId: i } = t;
@@ -347,43 +347,45 @@ async function Fe(e, t) {
347
347
  let r = n.metadata, i = r.name;
348
348
  if (!i) return;
349
349
  let a = t.schemaId;
350
- _({
350
+ v({
351
351
  text: i,
352
352
  schemaUid: a
353
353
  });
354
- let o = !1, s = !1, l = r.type, u = (l === "bytes32" || l === "bytes32[]") && i !== "storage_transaction_id" && i !== "storage_provider_transaction_id", d = !u && (i.endsWith("_id") || i.endsWith("_ids")) && i !== "storage_transaction_id" && i !== "storage_provider_transaction_id";
354
+ let o = !1, s = !1, l = r.type;
355
+ if (m(l, r.value)) return;
356
+ let u = (l === "bytes32" || l === "bytes32[]") && i !== "storage_transaction_id" && i !== "storage_provider_transaction_id", d = !u && (i.endsWith("_id") || i.endsWith("_ids")) && i !== "storage_transaction_id" && i !== "storage_provider_transaction_id";
355
357
  if (u || d) {
356
358
  if (o = !0, Array.isArray(r.value)) {
357
359
  if (s = !0, d) {
358
- let e = I(i);
360
+ let e = Ae(i);
359
361
  e && (i = e.propertyName);
360
362
  }
361
363
  r.value.forEach((n) => {
362
- z.includes(n) || Pe(e, t, n);
364
+ R.includes(n) || Ie(e, t, n);
363
365
  });
364
- } else z.includes(r.value) || Pe(e, t, r.value);
366
+ } else R.includes(r.value) || Ie(e, t, r.value);
365
367
  }
366
368
  let f = r.value;
367
- o && s && Array.isArray(f) ? f = f.map((e) => String(e)) : typeof f != "string" && (f = (m(l) ? c(f) : void 0) ?? JSON.stringify(f));
369
+ o && s && Array.isArray(f) ? f = f.map((e) => String(e)) : typeof f != "string" && (f = (h(l) ? c(f) : void 0) ?? JSON.stringify(f));
368
370
  let p = e.versionUidToSeedUid.get(t.refUID);
369
371
  if (!p) return;
370
- let h = e.assembledItems.get(p) || {};
371
- h[i] = f;
372
- let g = B(i);
373
- g !== i && (h[g] = f), e.assembledItems.set(p, h);
372
+ let g = e.assembledItems.get(p) || {};
373
+ g[i] = f;
374
+ let _ = z(i);
375
+ _ !== i && (g[_] = f), e.assembledItems.set(p, g);
374
376
  }
375
- function Ie(e) {
377
+ function Re(e) {
376
378
  let t = /* @__PURE__ */ new Map();
377
379
  for (let [n, r] of e) (r.versionUid !== void 0 || r.asOf !== void 0) && t.set(n.toLowerCase(), r);
378
380
  return t;
379
381
  }
380
- function Le(e, t) {
382
+ function ze(e, t) {
381
383
  let n = t.asOf, r = n === void 0 ? e : e.filter((e) => e.timeCreated <= n);
382
384
  if (t.versionUid === void 0) return [...r].sort((e, t) => t.timeCreated - e.timeCreated)[0];
383
385
  let i = t.versionUid.toLowerCase();
384
386
  return r.find((e) => e.id.toLowerCase() === i);
385
387
  }
386
- async function Re(e, t, n, r = {}) {
388
+ async function Be(e, t, n, r = {}) {
387
389
  let i = [];
388
390
  for (let n = 0; n < t.length; n++) {
389
391
  let r = t[n];
@@ -397,7 +399,7 @@ async function Re(e, t, n, r = {}) {
397
399
  });
398
400
  }
399
401
  if (i.length === 0) return;
400
- let a = new Set(i), o = r.versions ? r.versions.filter((e) => a.has(e.refUID)) : await n.getVersionsForSeeds(i, { includeRevoked: !0 }), s = h(o, t), c = s.filter((e) => e.revoked !== !0);
402
+ let a = new Set(i), o = r.versions ? r.versions.filter((e) => a.has(e.refUID)) : await n.getVersionsForSeeds(i, { includeRevoked: !0 }), s = g(o, t), c = s.filter((e) => e.revoked !== !0);
401
403
  if (r.dropSeedsWithOnlyRevokedVersions) {
402
404
  let t = new Set(c.map((e) => e.refUID));
403
405
  for (let n of s) {
@@ -415,7 +417,7 @@ async function Re(e, t, n, r = {}) {
415
417
  for (let t of i) {
416
418
  let n = r.pins?.get(t.toLowerCase());
417
419
  if (!n) continue;
418
- let i = Le(e.versionsBySeedUid.get(t) ?? [], n);
420
+ let i = ze(e.versionsBySeedUid.get(t) ?? [], n);
419
421
  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
422
  }
421
423
  for (let [t, n] of e.versionsBySeedUid.entries()) {
@@ -424,61 +426,61 @@ async function Re(e, t, n, r = {}) {
424
426
  r && (l.push(r.id), e.latestVersionUidsBySeedUid.set(t, r.id));
425
427
  }
426
428
  if (l.length === 0) return;
427
- let d = h(await n.getPropertiesForVersionUids(l), c).filter((e) => {
429
+ let d = g(await n.getPropertiesForVersionUids(l), c).filter((e) => {
428
430
  let t = u.get(e.refUID);
429
431
  return t === void 0 || e.timeCreated <= t;
430
- }), f = g(d);
431
- for (let t = 0; t < f.length; t++) await Fe(e, f[t]);
432
+ }), f = _(d);
433
+ for (let t = 0; t < f.length; t++) await Le(e, f[t]);
432
434
  }
433
- function ze(e) {
434
- for (let [, t] of V(e)) {
435
- let n = Object.keys(t).filter((e) => !e.startsWith("_") && !Me.has(e));
435
+ function Ve(e) {
436
+ for (let [, t] of B(e)) {
437
+ let n = Object.keys(t).filter((e) => !e.startsWith("_") && !Pe.has(e));
436
438
  for (let r of n) {
437
- let n = t[r], i = S(n);
439
+ let n = t[r], i = C(n);
438
440
  if (i !== n && Array.isArray(i) && (t[r] = i, n = i), Array.isArray(n)) {
439
441
  let i = n;
440
- if (!i.some((t) => typeof t == "string" && !z.includes(t) && e.assembledItems.has(t))) continue;
442
+ if (!i.some((t) => typeof t == "string" && !R.includes(t) && e.assembledItems.has(t))) continue;
441
443
  let a = [], o = [], s = !1;
442
444
  for (let t of i) {
443
- if (typeof t != "string" || z.includes(t)) {
445
+ if (typeof t != "string" || R.includes(t)) {
444
446
  a.push(String(t)), o.push("unknown");
445
447
  continue;
446
448
  }
447
449
  let n = e.seedUidToModelType.get(t) ?? "unknown";
448
- if (n === R) {
449
- a.push(t), o.push(R);
450
+ if (n === L) {
451
+ a.push(t), o.push(L);
450
452
  continue;
451
453
  }
452
454
  let r = e.assembledItems.get(t), i = r?.storageTransactionId ?? r?.storage_transaction_id;
453
455
  if (i && typeof i == "string" && i.trim()) try {
454
- a.push(b(i)), o.push(n), s = !0;
456
+ a.push(x(i)), o.push(n), s = !0;
455
457
  } catch {
456
458
  a.push(t), o.push(n);
457
459
  }
458
460
  else a.push(t), o.push(n);
459
461
  }
460
462
  if (s) {
461
- let e = x(r);
462
- if (t[e] = a, A(t, e, o), ie(t, e), e !== r) {
463
+ let e = S(r);
464
+ if (t[e] = a, j(t, e, o), ie(t, e), e !== r) {
463
465
  delete t[r];
464
- let e = B(r);
466
+ let e = z(r);
465
467
  e !== r && delete t[e];
466
468
  }
467
469
  }
468
470
  } else if (typeof n == "string") {
469
- if (z.includes(n) || !e.assembledItems.has(n)) continue;
471
+ if (R.includes(n) || !e.assembledItems.has(n)) continue;
470
472
  let i = e.assembledItems.get(n);
471
- if (e.seedUidToModelType.get(n) === R) continue;
473
+ if (e.seedUidToModelType.get(n) === L) continue;
472
474
  let a = i?.storageTransactionId ?? i?.storage_transaction_id;
473
475
  if (a && typeof a == "string" && a.trim()) try {
474
476
  let i = r.endsWith("_id") ? r.replace(/_id$/, "") : r;
475
- t[i] = b(a);
477
+ t[i] = x(a);
476
478
  let o = e.seedUidToModelType.get(n) ?? "unknown";
477
- k(t, i, o);
478
- let s = B(i);
479
- if (s !== i && k(t, s, o), i !== r) {
479
+ A(t, i, o);
480
+ let s = z(i);
481
+ if (s !== i && A(t, s, o), i !== r) {
480
482
  delete t[r];
481
- let e = B(r);
483
+ let e = z(r);
482
484
  e !== r && delete t[e];
483
485
  }
484
486
  } catch {}
@@ -486,15 +488,15 @@ function ze(e) {
486
488
  }
487
489
  }
488
490
  }
489
- function Be(e) {
490
- for (let [, t] of V(e)) {
491
- let n = Object.keys(t).filter((e) => !e.startsWith("_") && !Me.has(e));
491
+ function He(e) {
492
+ for (let [, t] of B(e)) {
493
+ let n = Object.keys(t).filter((e) => !e.startsWith("_") && !Pe.has(e));
492
494
  for (let r of n) {
493
- let n = t[r], i = S(n);
495
+ let n = t[r], i = C(n);
494
496
  i !== n && Array.isArray(i) && (t[r] = i, n = i);
495
497
  let a = Array.isArray(n), o = a ? n : [n], s = [], c = !1;
496
498
  for (let t of o) {
497
- if (typeof t != "string" || z.includes(t)) {
499
+ if (typeof t != "string" || R.includes(t)) {
498
500
  s.push(t);
499
501
  continue;
500
502
  }
@@ -504,9 +506,9 @@ function Be(e) {
504
506
  continue;
505
507
  }
506
508
  let r = n?.storageTransactionId ?? n?.storage_transaction_id;
507
- if (e.seedUidToModelType.get(t) === R) {
509
+ if (e.seedUidToModelType.get(t) === L) {
508
510
  let e = { ...n };
509
- H(e, t), e.schemaName = R, C(e), s.push(e), c = !0;
511
+ V(e, t), e.schemaName = L, w(e), s.push(e), c = !0;
510
512
  continue;
511
513
  }
512
514
  if (r && typeof r == "string" && r.trim()) {
@@ -514,23 +516,23 @@ function Be(e) {
514
516
  continue;
515
517
  }
516
518
  let i = { ...n };
517
- H(i, t), s.push(i), c = !0;
519
+ V(i, t), s.push(i), c = !0;
518
520
  }
519
521
  if (c) {
520
- let e = a ? x(r) : r.endsWith("_id") ? r.replace(/_id$/, "") : r;
522
+ let e = a ? S(r) : r.endsWith("_id") ? r.replace(/_id$/, "") : r;
521
523
  if (t[e] = a ? s : s[0], ie(t, e), e !== r) {
522
524
  delete t[r];
523
- let e = B(r);
525
+ let e = z(r);
524
526
  e !== r && delete t[e];
525
527
  }
526
528
  }
527
529
  }
528
530
  }
529
531
  }
530
- function Ve(e, t) {
531
- return V(e).map(([n, r]) => {
532
+ function Ue(e, t) {
533
+ return B(e).map(([n, r]) => {
532
534
  let i = e.latestVersionUidsBySeedUid.get(n) ?? "";
533
- i && (r.versionUid = i), H(r, n);
535
+ i && (r.versionUid = i), V(r, n);
534
536
  let a = typeof r.timeCreated == "number" ? r.timeCreated : 0, o = typeof r.attester == "string" ? r.attester : typeof r.Attester == "string" ? r.Attester : void 0;
535
537
  return {
536
538
  seedUid: n,
@@ -542,48 +544,48 @@ function Ve(e, t) {
542
544
  };
543
545
  });
544
546
  }
545
- function He(e, t, n) {
547
+ function We(e, t, n) {
546
548
  let r = [t, ...n ? e.relatedSeedUidsBySeedUid.get(t) ?? [] : []], i = r.map((t) => e.latestVersionUidsBySeedUid.get(t)).filter((e) => !!e);
547
549
  return {
548
550
  refUIDs: [...r, ...i],
549
551
  ids: r
550
552
  };
551
553
  }
552
- async function U(e, t, n, r = L(), i) {
553
- return Ue(t, n, r, {
554
+ async function H(e, t, n, r = I(), i) {
555
+ return U(t, n, r, {
554
556
  schemaName: e,
555
557
  versions: i?.versions
556
558
  });
557
559
  }
558
- async function Ue(e, n, r, i = {}) {
559
- let a = t(n), o = n?.hydrateStorage !== !1, s = Ne();
560
+ async function U(e, n, r, i = {}) {
561
+ let a = t(n), o = n?.hydrateStorage !== !1, s = Fe();
560
562
  for (let t of e) t && s.requestedSeedUids.add(t.id);
561
- await Re(s, e, r, {
563
+ await Be(s, e, r, {
562
564
  dropSeedsWithOnlyRevokedVersions: !0,
563
565
  versions: i.versions,
564
- pins: i.pins && Ie(i.pins)
566
+ pins: i.pins && Re(i.pins)
565
567
  });
566
568
  let c = Array.from(s.relatedSeedUids).filter((e) => !s.assembledItems.has(e) && !s.droppedSeedUids.has(e));
567
569
  if (a !== "uids" && c.length > 0) {
568
570
  let [e, t] = await Promise.all([r.getSeedsByUids(c), r.getVersionsForSeeds(c, { includeRevoked: !0 })]);
569
- await Re(s, e, r, { versions: t });
571
+ await Be(s, e, r, { versions: t });
570
572
  }
571
- a !== "uids" && ze(s), a === "expand" && Be(s);
572
- let l = Ve(s, i.schemaName);
573
- o && await P(l.map((e) => e.data), r.readStorageBody ? { readStorageBody: r.readStorageBody.bind(r) } : void 0);
573
+ a !== "uids" && Ve(s), a === "expand" && He(s);
574
+ let l = Ue(s, i.schemaName);
575
+ o && await De(l.map((e) => e.data), r.readStorageBody ? { readStorageBody: r.readStorageBody.bind(r) } : void 0);
574
576
  let u = a !== "uids";
575
577
  return {
576
578
  records: l,
577
- dependencies: new Map(l.map((e) => [e.seedUid, He(s, e.seedUid, u)]))
579
+ dependencies: new Map(l.map((e) => [e.seedUid, We(s, e.seedUid, u)]))
578
580
  };
579
581
  }
580
- async function We(e, t, n, r = L()) {
581
- return (await U(e, t, n, r)).records;
582
+ async function Ge(e, t, n, r = I()) {
583
+ return (await H(e, t, n, r)).records;
582
584
  }
583
585
  //#endregion
584
586
  //#region src/changelog.ts
585
- var Ge = (e) => e.replace(/_([a-z])/g, (e, t) => t.toUpperCase());
586
- function Ke(e, t) {
587
+ var Ke = (e) => e.replace(/_([a-z])/g, (e, t) => t.toUpperCase());
588
+ function W(e, t) {
587
589
  if (Object.is(e, t)) return !0;
588
590
  if (e === void 0 || t === void 0) return !1;
589
591
  if (e === null || t === null) return e === t;
@@ -601,23 +603,24 @@ function qe(e) {
601
603
  if (!r) return null;
602
604
  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;
603
605
  if ((a || o) && (s = !0, Array.isArray(n.value) && (l = !0, o))) {
604
- let e = I(r);
606
+ let e = Ae(r);
605
607
  e?.isList && (r = e.propertyName);
606
608
  }
607
609
  let u = n.value;
608
- s && l && Array.isArray(u) ? u = u.map((e) => String(e)) : typeof u != "string" && (u = (m(i) ? c(u) : void 0) ?? JSON.stringify(u));
609
- let d = Ge(r);
610
+ 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 = Ke(r);
610
612
  return {
611
613
  propertyName: r,
612
614
  value: u,
613
- camelName: d === r ? void 0 : d
615
+ camelName: d === r ? void 0 : d,
616
+ ...m(i, n.value) && { removed: !0 }
614
617
  };
615
618
  }
616
619
  function Je(e) {
617
620
  let t = {};
618
621
  for (let n of e) {
619
622
  let e = qe(n);
620
- e && (t[e.propertyName] = e.value, e.camelName && (t[e.camelName] = e.value));
623
+ e && !e.removed && (t[e.propertyName] = e.value, e.camelName && (t[e.camelName] = e.value));
621
624
  }
622
625
  return t;
623
626
  }
@@ -625,7 +628,7 @@ function Ye(e) {
625
628
  let t = [], n = {};
626
629
  for (let r of e) {
627
630
  let e = r.data, i = /* @__PURE__ */ new Set([...Object.keys(n), ...Object.keys(e)]), a = [];
628
- for (let t of i) Ke(n[t], e[t]) || a.push(t);
631
+ for (let t of i) W(n[t], e[t]) || a.push(t);
629
632
  a.sort(), t.push({
630
633
  type: "version",
631
634
  at: r.at,
@@ -644,8 +647,8 @@ function Xe(e) {
644
647
  if (!t) continue;
645
648
  let i = [t.propertyName];
646
649
  t.camelName && i.push(t.camelName);
647
- let a = n.has(t.propertyName) ? n.get(t.propertyName) : void 0, o = t.value;
648
- Ke(a, o) || r.push({
650
+ let a = n.has(t.propertyName) ? n.get(t.propertyName) : void 0, o = t.removed ? void 0 : t.value;
651
+ W(a, o) || r.push({
649
652
  type: "property",
650
653
  at: e.timeCreated,
651
654
  versionUid: e.refUID,
@@ -667,13 +670,13 @@ function Ze(e, t) {
667
670
  }
668
671
  //#endregion
669
672
  //#region src/assembleChangelog.ts
670
- async function Qe(e, t, n = L()) {
671
- let r = t?.changelog ?? {}, i = r.granularity ?? "version", [a, o] = await Promise.all([n.getSeedByUid(e), n.getVersionsForSeed(e)]), s = [...h(o, a ? [a] : [])].sort((e, t) => e.timeCreated - t.timeCreated);
673
+ async function Qe(e, t, n = I()) {
674
+ 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);
672
675
  if (s.length === 0) return {
673
676
  latestVersionUid: "",
674
677
  changelog: []
675
678
  };
676
- let c = s[s.length - 1].id, l = s.map((e) => e.id), u = h(await n.getPropertiesForVersionUids(l), s), d;
679
+ let c = s[s.length - 1].id, l = s.map((e) => e.id), u = g(await n.getPropertiesForVersionUids(l), s), d;
677
680
  if (i === "property") d = Xe(u);
678
681
  else {
679
682
  let e = /* @__PURE__ */ new Map();
@@ -683,7 +686,7 @@ async function Qe(e, t, n = L()) {
683
686
  }
684
687
  let t = [];
685
688
  for (let n of s) {
686
- let r = e.get(n.id) ?? [], i = g(r);
689
+ let r = e.get(n.id) ?? [], i = _(r);
687
690
  t.push({
688
691
  versionUid: n.id,
689
692
  at: n.timeCreated,
@@ -722,13 +725,14 @@ function it() {
722
725
  function at() {
723
726
  let e = rt(), 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;
724
727
  o = r ? !1 : i ? !0 : !a;
725
- let s = e.CACHE_BACKGROUND_REFRESH === "true", c = parseInt(e.CACHE_REFRESH_INTERVAL || "300", 10);
728
+ let s = e.CACHE_BACKGROUND_REFRESH === "true", c = parseInt(e.CACHE_REFRESH_INTERVAL || "300", 10), l = Math.max(0, parseInt(e.CACHE_MAX_AGE || "0", 10) || 0);
726
729
  return {
727
730
  ttl: t,
728
731
  cacheDir: n,
729
732
  enabled: o,
730
733
  backgroundRefresh: s,
731
734
  refreshInterval: c,
735
+ maxAge: l,
732
736
  freezeRecords: it()
733
737
  };
734
738
  }
@@ -827,6 +831,7 @@ var ft = class {
827
831
  memoryCache;
828
832
  persistent;
829
833
  config;
834
+ collectionChecks = /* @__PURE__ */ new Map();
830
835
  stats = {
831
836
  hits: 0,
832
837
  misses: 0,
@@ -903,11 +908,24 @@ var ft = class {
903
908
  async clearItem(e, t) {
904
909
  this.memoryCache.clearItem(e, t), await this.persistent?.clearItem(e, t);
905
910
  }
911
+ markCollectionChecked(e, t) {
912
+ this.collectionChecks.set(e, {
913
+ at: Date.now(),
914
+ etag: t
915
+ });
916
+ }
917
+ async getCheckedCollection(e, t, n, r) {
918
+ let i = this.collectionChecks.get(e);
919
+ if (!i || Date.now() - i.at >= r * 1e3) return null;
920
+ let a = await this.getCollection(t, n);
921
+ return a?.etag === i.etag ? a : null;
922
+ }
906
923
  async clearCollection(e) {
924
+ for (let t of this.collectionChecks.keys()) t.startsWith(`${e}\n`) && this.collectionChecks.delete(t);
907
925
  this.memoryCache.clearCollection(e), await this.persistent?.clearCollection(e);
908
926
  }
909
927
  async clearAll() {
910
- this.memoryCache.clearAll(), await this.persistent?.clearAll();
928
+ this.collectionChecks.clear(), this.memoryCache.clearAll(), await this.persistent?.clearAll();
911
929
  }
912
930
  async withRefreshLock(e, t) {
913
931
  return this.memoryCache.withRefreshLock(e, t);
@@ -936,7 +954,7 @@ var ft = class {
936
954
  };
937
955
  }
938
956
  }, pt = null;
939
- function W() {
957
+ function G() {
940
958
  return pt ||= new ft(at()), pt;
941
959
  }
942
960
  function mt() {
@@ -948,16 +966,16 @@ function ht(e, t) {
948
966
  ...e
949
967
  }, t);
950
968
  }
951
- function G() {
969
+ function K() {
952
970
  return Math.floor(Date.now() / 1e3);
953
971
  }
954
- function K(e) {
972
+ function q(e) {
955
973
  return e - 600;
956
974
  }
957
975
  function gt(e, t) {
958
- return K(t) - e.checkedAt > 600;
976
+ return q(t) - e.checkedAt > 600;
959
977
  }
960
- var q = (e) => `${e.id}:${e.revocationTime}`;
978
+ var J = (e) => `${e.id}:${e.revocationTime}`;
961
979
  async function _t(e, t, n) {
962
980
  if (!e.listChangesSince) return null;
963
981
  if (t.size === 0) return {
@@ -977,13 +995,13 @@ async function _t(e, t, n) {
977
995
  ids: [...i.keys()],
978
996
  since: n.checkedAt
979
997
  }), s = new Set(n.seenChangeKeys), c = /* @__PURE__ */ new Set();
980
- for (let e of o) if (!s.has(q(e))) {
998
+ for (let e of o) if (!s.has(J(e))) {
981
999
  for (let t of r.get(e.refUID) ?? []) c.add(t);
982
1000
  for (let t of i.get(e.id) ?? []) c.add(t);
983
1001
  }
984
1002
  return {
985
1003
  changed: c,
986
- seenChangeKeys: o.map(q)
1004
+ seenChangeKeys: o.map(J)
987
1005
  };
988
1006
  }
989
1007
  async function vt(e, t) {
@@ -1006,7 +1024,7 @@ async function vt(e, t) {
1006
1024
  });
1007
1025
  for (let [e, i] of t) {
1008
1026
  let t = new Set(i.dependencies.refUIDs), a = new Set(i.dependencies.ids), o = new Set(i.seenChangeKeys), c = [];
1009
- 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));
1027
+ for (let r of s) r.timeCreated <= i.checkedAt && r.revocationTime <= i.checkedAt || (t.has(r.refUID) || a.has(r.id)) && (c.push(J(r)), o.has(J(r)) || n.add(e));
1010
1028
  r.set(e, c);
1011
1029
  }
1012
1030
  return {
@@ -1016,26 +1034,26 @@ async function vt(e, t) {
1016
1034
  }
1017
1035
  //#endregion
1018
1036
  //#region src/source/registry.ts
1019
- var J = null;
1037
+ var Y = null;
1020
1038
  function yt(e) {
1021
1039
  if (e.kind !== "local") throw Error("[query] registerLocalQuerySource expects a source with kind: \"local\"");
1022
- J = e;
1040
+ Y = e;
1023
1041
  }
1024
1042
  function bt() {
1025
- J = null;
1043
+ Y = null;
1026
1044
  }
1027
1045
  function xt() {
1028
- return J;
1046
+ return Y;
1029
1047
  }
1030
1048
  function St() {
1031
- return J != null;
1049
+ return Y != null;
1032
1050
  }
1033
1051
  //#endregion
1034
1052
  //#region src/source/resolve.ts
1035
- function Y(e = "remote") {
1053
+ function X(e = "remote") {
1036
1054
  if (e === "remote") return {
1037
1055
  mode: "remote",
1038
- dataSource: L(),
1056
+ dataSource: I(),
1039
1057
  useQueryCache: !0
1040
1058
  };
1041
1059
  let t = xt();
@@ -1053,21 +1071,21 @@ function Y(e = "remote") {
1053
1071
  useQueryCache: !1
1054
1072
  } : {
1055
1073
  mode: "auto",
1056
- dataSource: L(),
1074
+ dataSource: I(),
1057
1075
  useQueryCache: !0
1058
1076
  };
1059
1077
  }
1060
- function X(e) {
1078
+ function Z(e) {
1061
1079
  return e ?? "remote";
1062
1080
  }
1063
1081
  //#endregion
1064
1082
  //#region src/api.ts
1065
- var Z = {
1083
+ var Q = {
1066
1084
  refUIDs: [],
1067
1085
  ids: []
1068
1086
  };
1069
- function Q(e, t) {
1070
- return !t || e?.cache === !1 ? !1 : W().enabled;
1087
+ function $(e, t) {
1088
+ return !t || e?.cache === !1 ? !1 : G().enabled;
1071
1089
  }
1072
1090
  function Ct(e) {
1073
1091
  return e === "data+changelog" || e === "changelog";
@@ -1076,7 +1094,7 @@ function wt(e) {
1076
1094
  return e !== "changelog";
1077
1095
  }
1078
1096
  async function Tt(e, t, n, r, i) {
1079
- return U(e, await i.listSeedsBySchemaName(e, {
1097
+ return H(e, await i.listSeedsBySchemaName(e, {
1080
1098
  limit: t,
1081
1099
  skip: n
1082
1100
  }), r, i);
@@ -1093,142 +1111,157 @@ async function Et(e, t, n) {
1093
1111
  dataSource: t,
1094
1112
  useQueryCache: !1
1095
1113
  };
1096
- let i = L();
1114
+ let i = I();
1097
1115
  return {
1098
1116
  assembled: await n(i),
1099
1117
  dataSource: i,
1100
1118
  useQueryCache: !0
1101
1119
  };
1102
1120
  }
1103
- async function $(e, t, n, r = []) {
1104
- await W().writeThroughItems(e.records.map((i) => ({
1121
+ async function Dt(e, t, n, r = []) {
1122
+ await G().writeThroughItems(e.records.map((i) => ({
1105
1123
  record: i,
1106
1124
  optionsKey: t,
1107
- dependencies: e.dependencies.get(i.seedUid) ?? Z,
1108
- checkedAt: K(n),
1125
+ dependencies: e.dependencies.get(i.seedUid) ?? Q,
1126
+ checkedAt: q(n),
1109
1127
  seenChangeKeys: r,
1110
1128
  lastUpdated: n
1111
1129
  })));
1112
1130
  }
1113
- async function Dt(e, t, n, r, i) {
1114
- let a = W(), o = G(), s = await a.getCollection(e, r), c = await i.listSeedsBySchemaName(e, {
1131
+ function Ot(e) {
1132
+ let t = /* @__PURE__ */ new Map();
1133
+ for (let n of e.items) {
1134
+ let r = e.meta[n.seedUid]?.dependencies ?? Q;
1135
+ t.set(n.seedUid, {
1136
+ refUIDs: r.refUIDs,
1137
+ ids: r.ids.filter((e) => e !== n.seedUid)
1138
+ });
1139
+ }
1140
+ return t;
1141
+ }
1142
+ async function kt(e, t, n, r, i) {
1143
+ let a = G(), o = K(), s = await a.getCollection(e, r), c = s ? Ot(s) : void 0, [l, u] = await Promise.all([i.listSeedsBySchemaName(e, {
1115
1144
  limit: t,
1116
1145
  skip: 0
1117
- }), l = new Map(s?.items.map((e) => [e.seedUid, e]) ?? []), u = /* @__PURE__ */ new Set(), d = [];
1118
- if (s) {
1119
- let e = /* @__PURE__ */ new Map();
1120
- for (let t of c) {
1121
- let n = s.meta[t.id];
1122
- l.has(t.id) && e.set(t.id, n?.dependencies ?? Z);
1123
- }
1124
- let t = await _t(i, e, s);
1125
- t ? (u = t.changed, d = t.seenChangeKeys) : u = new Set(e.keys());
1126
- }
1127
- let f = c.filter((e) => !l.has(e.id) || u.has(e.id)), p = f.length > 0 ? await U(e, f, n, i) : {
1146
+ }), s && c ? _t(i, c, s) : void 0]), d = new Map(s?.items.map((e) => [e.seedUid, e]) ?? []), f = /* @__PURE__ */ new Set(), p = [];
1147
+ 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 H(e, m, n, i) : {
1128
1149
  records: [],
1129
1150
  dependencies: /* @__PURE__ */ new Map()
1130
- }, m = new Map(p.records.map((e) => [e.seedUid, e])), h = [], g = {};
1131
- for (let e of c) {
1132
- let t = m.get(e.id);
1133
- t ? (h.push(t), g[e.id] = {
1134
- dependencies: p.dependencies.get(e.id) ?? Z,
1151
+ }, g = new Map(h.records.map((e) => [e.seedUid, e])), _ = [], v = {};
1152
+ for (let e of l) {
1153
+ let t = g.get(e.id);
1154
+ t ? (_.push(t), v[e.id] = {
1155
+ dependencies: h.dependencies.get(e.id) ?? Q,
1135
1156
  builtAt: o
1136
- }) : s && !u.has(e.id) && l.has(e.id) && (h.push(l.get(e.id)), g[e.id] = s.meta[e.id] ?? {
1137
- dependencies: Z,
1157
+ }) : s && !f.has(e.id) && d.has(e.id) && (_.push(d.get(e.id)), v[e.id] = s.meta[e.id] ?? {
1158
+ dependencies: Q,
1138
1159
  builtAt: o
1139
1160
  });
1140
1161
  }
1141
- let _ = !!s && p.records.length === 0 && h.length === s.items.length && h.every((e, t) => e === s.items[t]);
1142
- if (s && _ && !gt(s, o)) return {
1143
- items: h,
1162
+ let y = !!s && h.records.length === 0 && _.length === s.items.length && _.every((e, t) => e === s.items[t]);
1163
+ if (s && y && !gt(s, o)) return {
1164
+ items: _,
1144
1165
  limit: t,
1145
1166
  skip: 0,
1146
1167
  etag: s.etag
1147
1168
  };
1148
1169
  s && a.recordRefresh();
1149
- let v = await a.setCollection(e, r, {
1150
- items: h,
1151
- meta: g,
1152
- checkedAt: K(o),
1153
- seenChangeKeys: d,
1170
+ let b = await a.setCollection(e, r, {
1171
+ items: _,
1172
+ meta: v,
1173
+ checkedAt: q(o),
1174
+ seenChangeKeys: p,
1154
1175
  lastUpdated: s?.lastUpdated ?? o
1155
1176
  });
1156
- return await $(p, r, o, d), {
1157
- items: v ? [...v.items] : h,
1177
+ return await Dt(h, r, o, p), {
1178
+ items: b ? [...b.items] : _,
1158
1179
  limit: t,
1159
1180
  skip: 0,
1160
- etag: v?.etag
1181
+ etag: b?.etag
1161
1182
  };
1162
1183
  }
1163
- var Ot = 4;
1164
- function kt(e) {
1184
+ var At = 4;
1185
+ function jt(e) {
1165
1186
  let t = e.trim().toLowerCase().replace(/^0x/, "");
1166
- return t.length < Ot || t.length > 64 || !/^[0-9a-f]+$/.test(t) ? null : `0x${t}`;
1187
+ return t.length < At || t.length > 64 || !/^[0-9a-f]+$/.test(t) ? null : `0x${t}`;
1167
1188
  }
1168
- async function At(t, r) {
1189
+ async function Mt(t, r) {
1169
1190
  await e();
1170
- let i = r?.limit ?? 100, a = r?.skip ?? 0, o = X(r?.source), s = Y(o), c = n(r), l = null;
1171
- if (r?.uidPrefix !== void 0 && (l = kt(r.uidPrefix), !l)) return {
1191
+ 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 = jt(r.uidPrefix), !l)) return {
1172
1193
  items: [],
1173
1194
  limit: i,
1174
1195
  skip: a
1175
1196
  };
1176
- let u = async (e) => l ? U(t, await e.listSeedsByUidPrefix(t, l, {
1197
+ let u = async (e) => l ? H(t, await e.listSeedsByUidPrefix(t, l, {
1177
1198
  limit: i,
1178
1199
  skip: a
1179
1200
  }), r, e) : Tt(t, i, a, r, e);
1180
- if (!l && Q(r, s.useQueryCache) && a === 0 && s.dataSource.kind === "remote") {
1181
- let e = `${t}\n${c}\n${i}`;
1182
- return W().withRefreshLock(e, () => Dt(t, i, r, c, s.dataSource));
1201
+ if (!l && $(r, s.useQueryCache) && a === 0 && s.dataSource.kind === "remote") {
1202
+ let e = G(), n = `${t}\n${c}\n${i}`, a = r?.maxAge ?? e.getConfig().maxAge ?? 0;
1203
+ return e.withRefreshLock(n, async () => {
1204
+ if (a > 0) {
1205
+ let r = await e.getCheckedCollection(n, t, c, a);
1206
+ if (r) return {
1207
+ items: [...r.items],
1208
+ limit: i,
1209
+ skip: 0,
1210
+ etag: r.etag
1211
+ };
1212
+ }
1213
+ let o = await kt(t, i, r, c, s.dataSource);
1214
+ return o.etag && e.markCollectionChecked(n, o.etag), o;
1215
+ });
1183
1216
  }
1184
- let d = G(), { assembled: f, dataSource: p, useQueryCache: m } = await Et(o, s.dataSource, (e) => u(e));
1185
- return Q(r, m) && p.kind === "remote" && await $(f, c, d), {
1217
+ let d = K(), { assembled: f, dataSource: p, useQueryCache: m } = await Et(o, s.dataSource, (e) => u(e));
1218
+ return $(r, m) && p.kind === "remote" && await Dt(f, c, d), {
1186
1219
  items: f.records,
1187
1220
  limit: i,
1188
1221
  skip: a
1189
1222
  };
1190
1223
  }
1191
- async function jt(e, t) {
1192
- let n = W(), r = /* @__PURE__ */ new Map();
1224
+ async function Nt(e, t) {
1225
+ let n = G(), r = /* @__PURE__ */ new Map();
1193
1226
  await Promise.all(e.map(async ({ seedUid: e, optionsKey: t }) => {
1194
1227
  let i = await n.getItem(e, t);
1195
1228
  i && r.set(e, i);
1196
1229
  }));
1197
1230
  let i = /* @__PURE__ */ new Map();
1198
1231
  if (r.size === 0) return i;
1199
- let a = G(), o = /* @__PURE__ */ new Map();
1232
+ let a = K(), o = /* @__PURE__ */ new Map();
1200
1233
  for (let [e, t] of r) o.set(e, t);
1201
1234
  let s = await vt(t, o);
1202
1235
  for (let [e, t] of r) !s || s.changed.has(e) ? await n.clearItem(e, t.optionsKey) : (gt(t, a) && await n.setItem({
1203
1236
  ...t,
1204
- checkedAt: K(a),
1237
+ checkedAt: q(a),
1205
1238
  seenChangeKeys: s.seenChangeKeys.get(e) ?? []
1206
1239
  }), i.set(e, t.record));
1207
1240
  return i;
1208
1241
  }
1209
- async function Mt(e, t, n) {
1210
- return (await jt([{
1242
+ async function Pt(e, t, n) {
1243
+ return (await Nt([{
1211
1244
  seedUid: e,
1212
1245
  optionsKey: t
1213
1246
  }], n)).get(e) ?? null;
1214
1247
  }
1215
- function Nt(e) {
1248
+ function Ft(e) {
1216
1249
  if (e?.versionUid !== void 0 || e?.asOf !== void 0) return {
1217
1250
  versionUid: e.versionUid,
1218
1251
  asOf: e.asOf
1219
1252
  };
1220
1253
  }
1221
- async function Pt(t, r) {
1254
+ async function It(t, r) {
1222
1255
  if (await e(), !t || typeof t != "string" || t.trim() === "") return null;
1223
- let i = t.trim(), a = r?.include ?? "data", o = X(r?.source), s = Y(o), c = n(r), l = s.dataSource, u = s.useQueryCache;
1224
- if (Q(r, u) && l.kind === "remote") {
1225
- let e = await Mt(i, c, l);
1256
+ let i = t.trim(), a = r?.include ?? "data", o = Z(r?.source), s = X(o), c = n(r), l = s.dataSource, u = s.useQueryCache;
1257
+ if ($(r, u) && l.kind === "remote") {
1258
+ let e = await Pt(i, c, l);
1226
1259
  if (e) return e;
1227
1260
  }
1228
- let d = (e) => Promise.all([e.getSeedByUid(i), e.getVersionsForSeeds([i], { includeRevoked: !0 })]), f = G(), [p, m] = await d(l);
1261
+ let d = (e) => Promise.all([e.getSeedByUid(i), e.getVersionsForSeeds([i], { includeRevoked: !0 })]), f = K(), [p, m] = await d(l);
1229
1262
  if (!p && o === "auto" && l.kind === "local") {
1230
- if (l = L(), u = !0, Q(r, u)) {
1231
- let e = await Mt(i, c, l);
1263
+ if (l = I(), u = !0, $(r, u)) {
1264
+ let e = await Pt(i, c, l);
1232
1265
  if (e) return e;
1233
1266
  }
1234
1267
  [p, m] = await d(l);
@@ -1239,8 +1272,8 @@ async function Pt(t, r) {
1239
1272
  let g = null, _ = {
1240
1273
  refUIDs: [i],
1241
1274
  ids: [i]
1242
- }, v = Nt(r), y = async () => {
1243
- let e = await Ue([p], r, l, {
1275
+ }, v = Ft(r), y = async () => {
1276
+ let e = await U([p], r, l, {
1244
1277
  schemaName: h,
1245
1278
  versions: m,
1246
1279
  pins: v && /* @__PURE__ */ new Map([[i, v]])
@@ -1271,12 +1304,12 @@ async function Pt(t, r) {
1271
1304
  ids: _.ids
1272
1305
  };
1273
1306
  }
1274
- if (g && Q(r, u) && l.kind === "remote") {
1275
- let e = await W().setItem({
1307
+ if (g && $(r, u) && l.kind === "remote") {
1308
+ let e = await G().setItem({
1276
1309
  record: g,
1277
1310
  optionsKey: c,
1278
1311
  dependencies: _,
1279
- checkedAt: K(f),
1312
+ checkedAt: q(f),
1280
1313
  seenChangeKeys: [],
1281
1314
  lastUpdated: f
1282
1315
  });
@@ -1284,7 +1317,7 @@ async function Pt(t, r) {
1284
1317
  }
1285
1318
  return g;
1286
1319
  }
1287
- async function Ft(t, r) {
1320
+ async function Lt(t, r) {
1288
1321
  await e();
1289
1322
  let i = /* @__PURE__ */ new Map();
1290
1323
  for (let e of t) {
@@ -1296,16 +1329,16 @@ async function Ft(t, r) {
1296
1329
  if (a.length === 0) return /* @__PURE__ */ new Map();
1297
1330
  let o = /* @__PURE__ */ new Map();
1298
1331
  for (let [e, t] of r?.pins ?? []) {
1299
- let n = Nt(t);
1332
+ let n = Ft(t);
1300
1333
  n && o.set(e.trim().toLowerCase(), n);
1301
1334
  }
1302
1335
  let s = (e) => n({
1303
1336
  ...r,
1304
1337
  ...o.get(e)
1305
- }), c = X(r?.source), l = Y(c), u = /* @__PURE__ */ new Map(), d = async (e, t, n) => {
1306
- let i = Q(r, t) && e.kind === "remote", a = n;
1338
+ }), c = Z(r?.source), l = X(c), u = /* @__PURE__ */ new Map(), d = async (e, t, n) => {
1339
+ let i = $(r, t) && e.kind === "remote", a = n;
1307
1340
  if (i) {
1308
- let t = await jt(n.map((e) => ({
1341
+ let t = await Nt(n.map((e) => ({
1309
1342
  seedUid: e,
1310
1343
  optionsKey: s(e)
1311
1344
  })), e);
@@ -1313,21 +1346,21 @@ async function Ft(t, r) {
1313
1346
  a = n.filter((e) => !t.has(e));
1314
1347
  }
1315
1348
  if (a.length === 0) return [];
1316
- 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 Ue(a.map((e) => f.get(e)).filter((e) => !!e?.schema?.schemaNames?.[0]?.name), r, e, {
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 U(a.map((e) => f.get(e)).filter((e) => !!e?.schema?.schemaNames?.[0]?.name), r, e, {
1317
1350
  versions: d,
1318
1351
  pins: o
1319
1352
  });
1320
1353
  for (let e of m.records) {
1321
1354
  let t = e;
1322
1355
  if (i) {
1323
- let n = await W().setItem({
1356
+ let n = await G().setItem({
1324
1357
  record: e,
1325
1358
  optionsKey: s(e.seedUid.toLowerCase()),
1326
1359
  dependencies: m.dependencies.get(e.seedUid) ?? {
1327
1360
  refUIDs: [e.seedUid],
1328
1361
  ids: [e.seedUid]
1329
1362
  },
1330
- checkedAt: K(c),
1363
+ checkedAt: q(c),
1331
1364
  seenChangeKeys: [],
1332
1365
  lastUpdated: c
1333
1366
  });
@@ -1337,7 +1370,7 @@ async function Ft(t, r) {
1337
1370
  }
1338
1371
  return p;
1339
1372
  }, f = await d(l.dataSource, l.useQueryCache, a);
1340
- f.length > 0 && c === "auto" && l.dataSource.kind === "local" && await d(L(), !0, f);
1373
+ f.length > 0 && c === "auto" && l.dataSource.kind === "local" && await d(I(), !0, f);
1341
1374
  let p = /* @__PURE__ */ new Map();
1342
1375
  for (let [e, t] of i) {
1343
1376
  let n = u.get(e);
@@ -1345,12 +1378,12 @@ async function Ft(t, r) {
1345
1378
  }
1346
1379
  return p;
1347
1380
  }
1348
- async function It(t, r, i, a) {
1381
+ async function Rt(t, r, i, a) {
1349
1382
  await e();
1350
- let o = X(a?.source), s = Y(o), c = async (e) => U(t, await e.listSeedsBySchemaNameForMonth(t, r, i), a, e), l = G(), { assembled: u, dataSource: d, useQueryCache: f } = await Et(o, s.dataSource, c);
1351
- return Q(a, f) && d.kind === "remote" && await $(u, n(a), l), u.records;
1383
+ let o = Z(a?.source), s = X(o), c = async (e) => H(t, await e.listSeedsBySchemaNameForMonth(t, r, i), a, e), l = K(), { assembled: u, dataSource: d, useQueryCache: f } = await Et(o, s.dataSource, c);
1384
+ return $(a, f) && d.kind === "remote" && await Dt(u, n(a), l), u.records;
1352
1385
  }
1353
1386
  //#endregion
1354
- export { S as $, Oe as A, D as B, Xe as C, L as D, Ae as E, oe as F, me as G, le as H, w as I, A as J, he as K, de as L, P as M, ve as N, I as O, xe as P, ie as Q, fe as R, qe as S, We as T, E as U, O as V, ue as W, ae as X, C as Y, x as Z, at as _, It as a, Je as b, bt as c, yt as d, b as et, ht as f, lt as g, ft as h, At as i, De as j, F as k, xt as l, mt as m, Ft as n, X as o, W as p, k as q, kt as r, Y as s, Pt as t, St as u, Qe as v, Ye as w, Ke as x, Ze as y, pe as z };
1387
+ export { C as $, ke as A, O as B, Xe as C, I as D, Me as E, oe as F, me as G, le as H, T as I, j as J, he as K, de as L, De as M, ve as N, Ae as O, xe as P, ie as Q, fe as R, qe as S, Ge as T, D as U, k as V, ue as W, ae as X, w as Y, S as Z, at as _, Rt as a, Je as b, bt as c, yt as d, x as et, ht as f, lt as g, ft as h, Mt as i, Oe as j, F as k, xt as l, mt as m, Lt as n, Z as o, G as p, A as q, jt as r, X as s, It as t, St as u, Qe as v, Ye as w, W as x, Ze as y, pe as z };
1355
1388
 
1356
- //# sourceMappingURL=src-C3XmoANA.js.map
1389
+ //# sourceMappingURL=src-BnsF-Zyi.js.map