@voltro/database 0.25.0 → 0.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -186,7 +186,7 @@ var r = (e) => {
186
186
  enumValues: t
187
187
  })
188
188
  };
189
- }, ae = () => a("boolean"), oe = () => a("timestamp"), se = () => a("date"), ce = () => a("json"), le = () => a("bytes"), l = (e, t) => new i({
189
+ }, ae = () => a("boolean"), oe = () => a("timestamp"), se = () => a("date"), ce = () => a("json"), le = () => a("bytes"), ue = (e, t) => new i({
190
190
  type: "reference",
191
191
  nullable: !1,
192
192
  unique: !1,
@@ -196,13 +196,13 @@ var r = (e) => {
196
196
  refOnUpdate: t?.onUpdate ?? "noAction",
197
197
  fkAutoIndex: t?.index ?? !0,
198
198
  ...t?.orphanPolicy ? { orphanPolicy: t.orphanPolicy } : {}
199
- }), u = () => new i({
199
+ }), l = () => new i({
200
200
  type: "text",
201
201
  nullable: !0,
202
202
  unique: !1,
203
203
  hasDefault: !1,
204
204
  dropped: !0
205
- }), d = (e, t) => {
205
+ }), u = (e, t) => {
206
206
  if (!Number.isInteger(e) || e <= 0) throw Error(`vector(${String(e)}): dimension must be a positive integer (the embedding length, e.g. vector(1536)).`);
207
207
  return new i({
208
208
  type: "vector",
@@ -212,13 +212,13 @@ var r = (e) => {
212
212
  vectorDim: e,
213
213
  vectorPrecision: t?.precision ?? "float32"
214
214
  });
215
- }, ue = (e) => new i({
215
+ }, de = (e) => new i({
216
216
  type: "array",
217
217
  nullable: !1,
218
218
  unique: !1,
219
219
  hasDefault: !1,
220
220
  arrayElement: e.__definition().type
221
- }), de = () => a("interval"), fe = (e, t = 4326) => new i({
221
+ }), fe = () => a("interval"), pe = (e, t = 4326) => new i({
222
222
  type: "text",
223
223
  nullable: !1,
224
224
  unique: !1,
@@ -228,7 +228,7 @@ var r = (e) => {
228
228
  geomKind: e,
229
229
  srid: t
230
230
  }
231
- }), pe = (e, t = 4326) => new i({
231
+ }), me = (e, t = 4326) => new i({
232
232
  type: "text",
233
233
  nullable: !1,
234
234
  unique: !1,
@@ -238,44 +238,51 @@ var r = (e) => {
238
238
  geomKind: e,
239
239
  srid: t
240
240
  }
241
- }), me = (e) => new i({
241
+ }), he = (e) => new i({
242
242
  type: "raw",
243
243
  nullable: !1,
244
244
  unique: !1,
245
245
  hasDefault: !1,
246
246
  rawDdl: e
247
- }), f = (e) => {
247
+ }), d = (e) => {
248
248
  let t = {};
249
249
  for (let [n, r] of Object.entries(e)) t[n] = r.__definition();
250
250
  return t;
251
- }, p = /* @__PURE__ */ new Map(), he = (e, t) => {
251
+ }, f = /* @__PURE__ */ new WeakMap(), p = (e) => typeof e == "object" && e ? f.get(e) : void 0, ge = (e, t = {}) => {
252
+ let n = s();
253
+ return f.set(n, {
254
+ target: e,
255
+ orphanPolicy: t.orphanPolicy ?? "keep",
256
+ onSoftDelete: t.onSoftDelete ?? !1
257
+ }), n;
258
+ }, m = /* @__PURE__ */ new Map(), _e = (e, t) => {
252
259
  if (t.from === t.to) throw Error(`declareEnumRename('${e}'): \`from\` and \`to\` are both '${t.from}' — a rename must change the value.`);
253
- let n = p.get(e) ?? [];
260
+ let n = m.get(e) ?? [];
254
261
  for (let r of n) {
255
262
  if (r.from === t.from && r.to === t.to) return;
256
263
  if (r.from === t.from && r.to !== t.to) throw Error(`declareEnumRename('${e}'): value '${t.from}' is already declared as renamed to '${r.to}', cannot also rename it to '${t.to}'.`);
257
264
  }
258
- n.push(t), p.set(e, n);
259
- }, ge = (e) => p.get(e) ?? [], _e = () => p, ve = () => {
260
- p.clear();
261
- }, ye = 63, be = 60, m = [], h = (e) => {
262
- m.includes(e) || m.push(e);
263
- }, xe = () => {
264
- let e = m.slice();
265
- return m.length = 0, e;
266
- }, Se = /^[a-zA-Z_][a-zA-Z0-9_]*$/, g = (e, t) => {
265
+ n.push(t), m.set(e, n);
266
+ }, ve = (e) => m.get(e) ?? [], ye = () => m, be = () => {
267
+ m.clear();
268
+ }, xe = 63, Se = 60, h = [], g = (e) => {
269
+ h.includes(e) || h.push(e);
270
+ }, Ce = () => {
271
+ let e = h.slice();
272
+ return h.length = 0, e;
273
+ }, we = /^[a-zA-Z_][a-zA-Z0-9_]*$/, _ = (e, t) => {
267
274
  if (t.length === 0) throw Error(`${e} cannot be empty.`);
268
- if (!Se.test(t)) throw Error(`${e} '${t}' contains characters outside [A-Za-z0-9_] or starts with a digit. Dialect-portable identifiers must match /^[a-zA-Z_][a-zA-Z0-9_]*$/.`);
269
- }, _ = (e) => {
270
- if (g("table name", e), e.length > 63) throw Error(`table name '${e}' is ${e.length} chars — exceeds the 63-byte cross-dialect limit (Postgres floor). Shorten the name; long table names also cascade into auto-named indexes and FK constraints that would themselves exceed the limit.`);
271
- e.length > 60 && h(`table name '${e}' is ${e.length} chars — ${63 - e.length} from the Postgres 63-byte limit. Auto-named indexes on this table will run out of room fast.`);
272
- }, v = (e, t) => {
273
- if (g("column name", t), t.length > 63) throw Error(`column '${t}' on table '${e}' is ${t.length} chars — exceeds the 63-byte cross-dialect limit (Postgres floor). Rename it.`);
274
- t.length > 60 && h(`column '${t}' on table '${e}' is ${t.length} chars — close to the 63-byte limit.`);
275
- }, y = (e, t, n, r) => {
276
- if (g("index name", t), t.length > 63) throw Error(n ? `auto-named index '${t}' on table '${e}' is ${t.length} chars — exceeds the 63-byte cross-dialect limit (Postgres floor). Supply an explicit short name: .index('<shortName>', ${JSON.stringify([...r])}).` : `index name '${t}' on table '${e}' is ${t.length} chars — exceeds the 63-byte cross-dialect limit (Postgres floor). Shorten it.`);
277
- t.length > 60 && h(`index '${t}' on table '${e}' is ${t.length} chars — ${63 - t.length} from the 63-byte limit. ${n ? `Consider .index('<shortName>', ${JSON.stringify([...r])}) before it grows.` : ""}`);
278
- }, b = (e, t) => {
275
+ if (!we.test(t)) throw Error(`${e} '${t}' contains characters outside [A-Za-z0-9_] or starts with a digit. Dialect-portable identifiers must match /^[a-zA-Z_][a-zA-Z0-9_]*$/.`);
276
+ }, v = (e) => {
277
+ if (_("table name", e), e.length > 63) throw Error(`table name '${e}' is ${e.length} chars — exceeds the 63-byte cross-dialect limit (Postgres floor). Shorten the name; long table names also cascade into auto-named indexes and FK constraints that would themselves exceed the limit.`);
278
+ e.length > 60 && g(`table name '${e}' is ${e.length} chars — ${63 - e.length} from the Postgres 63-byte limit. Auto-named indexes on this table will run out of room fast.`);
279
+ }, y = (e, t) => {
280
+ if (_("column name", t), t.length > 63) throw Error(`column '${t}' on table '${e}' is ${t.length} chars — exceeds the 63-byte cross-dialect limit (Postgres floor). Rename it.`);
281
+ t.length > 60 && g(`column '${t}' on table '${e}' is ${t.length} chars — close to the 63-byte limit.`);
282
+ }, b = (e, t, n, r) => {
283
+ if (_("index name", t), t.length > 63) throw Error(n ? `auto-named index '${t}' on table '${e}' is ${t.length} chars — exceeds the 63-byte cross-dialect limit (Postgres floor). Supply an explicit short name: .index('<shortName>', ${JSON.stringify([...r])}).` : `index name '${t}' on table '${e}' is ${t.length} chars — exceeds the 63-byte cross-dialect limit (Postgres floor). Shorten it.`);
284
+ t.length > 60 && g(`index '${t}' on table '${e}' is ${t.length} chars — ${63 - t.length} from the 63-byte limit. ${n ? `Consider .index('<shortName>', ${JSON.stringify([...r])}) before it grows.` : ""}`);
285
+ }, x = (e, t) => {
279
286
  if (e.length === 0) throw Error(`typeid prefix on table '${t.tableName}' cannot be empty.`);
280
287
  if (!/^[a-z][a-z0-9_]*$/.test(e)) {
281
288
  let n = t.kind === "derived" ? "the derived prefix doesn't match typeid's required shape — supply an explicit one via id({ prefix: '...' })." : "the prefix must match typeid's required shape /^[a-z][a-z0-9_]*$/.";
@@ -285,35 +292,35 @@ var r = (e) => {
285
292
  let n = t.kind === "derived" ? "shorten the table name, or supply an explicit short prefix via id({ prefix: '...' })." : "pick a shorter prefix.";
286
293
  throw Error(`typeid prefix '${e}' on table '${t.tableName}' is ${e.length} chars — exceeds the 63-byte limit; ${n}`);
287
294
  }
288
- e.length > 60 && h(`typeid prefix '${e}' on table '${t.tableName}' is ${e.length} chars — close to the 63-byte limit. Generated ids will be even longer (prefix + '_' + 26).`);
289
- }, Ce = 1704067200000n, we = 10n, x = 12n, S = (1n << we) - 1n, C = (1n << x) - 1n, w = x, T = 22n, E = () => {
295
+ e.length > 60 && g(`typeid prefix '${e}' on table '${t.tableName}' is ${e.length} chars — close to the 63-byte limit. Generated ids will be even longer (prefix + '_' + 26).`);
296
+ }, Te = 1704067200000n, Ee = 10n, S = 12n, C = (1n << Ee) - 1n, w = (1n << S) - 1n, T = S, E = 22n, D = () => {
290
297
  let e = process.env.SNOWFLAKE_MACHINE_ID;
291
298
  if (e === void 0 || e === "") return 0n;
292
299
  let t = BigInt(e);
293
- if (t < 0n || t > S) throw Error(`SNOWFLAKE_MACHINE_ID out of range: ${e}. Must be 0..${S}.`);
300
+ if (t < 0n || t > C) throw Error(`SNOWFLAKE_MACHINE_ID out of range: ${e}. Must be 0..${C}.`);
294
301
  return t;
295
- }, D = () => ({
302
+ }, O = () => ({
296
303
  lastMs: 0n,
297
304
  sequence: 0n,
298
- machineId: E()
299
- }), O, k = () => (O === void 0 && (O = D()), O), Te = () => {
300
- O = D();
301
- }, A = () => BigInt(Date.now()), Ee = (e) => {
305
+ machineId: D()
306
+ }), k, De = () => (k === void 0 && (k = O()), k), Oe = () => {
307
+ k = O();
308
+ }, A = () => BigInt(Date.now()), ke = (e) => {
302
309
  let t = A();
303
310
  for (; t <= e;) t = A();
304
311
  return t;
305
312
  }, j = () => {
306
- let e = k(), t = A();
307
- t === e.lastMs ? (e.sequence = e.sequence + 1n & C, e.sequence === 0n && (t = Ee(e.lastMs), e.lastMs = t)) : (e.sequence = 0n, e.lastMs = t);
308
- let n = t - Ce;
313
+ let e = De(), t = A();
314
+ t === e.lastMs ? (e.sequence = e.sequence + 1n & w, e.sequence === 0n && (t = ke(e.lastMs), e.lastMs = t)) : (e.sequence = 0n, e.lastMs = t);
315
+ let n = t - Te;
309
316
  if (n < 0n) throw Error("Snowflake timestamp before configured epoch (2024-01-01). System clock is wrong.");
310
- return (n << T | e.machineId << w | e.sequence).toString();
317
+ return (n << E | e.machineId << T | e.sequence).toString();
311
318
  }, M = (e) => {
312
319
  let t = e.toLowerCase();
313
320
  if (t.startsWith("_")) throw Error(`cannot derive a typeid prefix for table '${e}' (table names starting with '_' are not valid typeid prefixes). Pick an explicit prefix via id({ prefix: '...' }) or use a different scheme like id({ scheme: 'numeric' }) for internal tables.`);
314
321
  if (!/^[a-z][a-z0-9_]*$/.test(t)) throw Error(`cannot derive a typeid prefix from table name '${e}' (must match [a-z][a-z0-9_]*). Pick an explicit prefix via id({ prefix: '...' }).`);
315
322
  let n = t.endsWith("ies") && t.length > 3 ? t.slice(0, -3) + "y" : t.endsWith("ses") || t.endsWith("xes") || t.endsWith("zes") || t.endsWith("shes") || t.endsWith("ches") ? t.slice(0, -2) : t.endsWith("s") && t.length > 1 ? t.slice(0, -1) : t;
316
- return b(n, {
323
+ return x(n, {
317
324
  kind: "derived",
318
325
  tableName: e
319
326
  }), n;
@@ -322,7 +329,7 @@ var r = (e) => {
322
329
  kind: "typeid",
323
330
  prefix: M(t)
324
331
  };
325
- if ("prefix" in e && !("scheme" in e)) return b(e.prefix, {
332
+ if ("prefix" in e && !("scheme" in e)) return x(e.prefix, {
326
333
  kind: "explicit",
327
334
  tableName: t
328
335
  }), {
@@ -333,7 +340,7 @@ var r = (e) => {
333
340
  switch (e.scheme) {
334
341
  case "typeid": {
335
342
  let n = e.prefix ?? M(t);
336
- return e.prefix !== void 0 && b(e.prefix, {
343
+ return e.prefix !== void 0 && x(e.prefix, {
337
344
  kind: "explicit",
338
345
  tableName: t
339
346
  }), {
@@ -349,7 +356,7 @@ var r = (e) => {
349
356
  generate: e.generate
350
357
  };
351
358
  }
352
- }, De = (n, r) => {
359
+ }, Ae = (n, r) => {
353
360
  switch (n.kind) {
354
361
  case "typeid": return e(n.prefix).toString();
355
362
  case "ulid": return t();
@@ -358,13 +365,13 @@ var r = (e) => {
358
365
  case "custom": return n.generate(r);
359
366
  }
360
367
  }, P = (e) => ({
361
- fields: f(e.fields),
368
+ fields: d(e.fields),
362
369
  ...e.id === void 0 ? {} : { id: e.id },
363
370
  ...e.requires === void 0 ? {} : { requires: e.requires },
364
371
  ...e.indexes === void 0 ? {} : { indexes: e.indexes },
365
372
  ...e.behaviors === void 0 ? {} : { behaviors: e.behaviors },
366
373
  ...e.policies === void 0 ? {} : { policies: e.policies }
367
- }), Oe = P, F = (e) => {
374
+ }), je = P, F = (e) => {
368
375
  let t = /* @__PURE__ */ new Set(), n = [], r = (e) => {
369
376
  let i = e.id ?? e;
370
377
  if (!t.has(i)) {
@@ -374,7 +381,7 @@ var r = (e) => {
374
381
  };
375
382
  for (let t of e) r(t);
376
383
  return n;
377
- }, ke = (e, ...t) => {
384
+ }, Me = (e, ...t) => {
378
385
  if (t.length === 0) throw Error(`jsonIndex("${e}"): at least one path segment is required`);
379
386
  let n = (r) => ({
380
387
  jsonPath: {
@@ -385,14 +392,14 @@ var r = (e) => {
385
392
  numeric: () => n(!0)
386
393
  });
387
394
  return n(!1);
388
- }, Ae = (e = "cosine", t = "float32") => {
395
+ }, Ne = (e = "cosine", t = "float32") => {
389
396
  let n = t === "half" ? "halfvec" : "vector";
390
397
  switch (e) {
391
398
  case "cosine": return `${n}_cosine_ops`;
392
399
  case "l2": return `${n}_l2_ops`;
393
400
  case "inner": return `${n}_ip_ops`;
394
401
  }
395
- }, je = [
402
+ }, Pe = [
396
403
  "id",
397
404
  "tenantId",
398
405
  "createdAt",
@@ -401,7 +408,7 @@ var r = (e) => {
401
408
  "updatedBy",
402
409
  "deletedAt",
403
410
  "deletedBy"
404
- ], I = (e) => e.id ?? `<anonymous mixin: ${Object.keys(e.fields).join(", ")}>`, L = (e, t) => `${e}_${t.join("_")}_idx`, Me = (e, t) => `${e}_${t.join("_")}_uq`, R = (e, t, n, r, i) => {
411
+ ], I = (e) => e.id ?? `<anonymous mixin: ${Object.keys(e.fields).join(", ")}>`, L = (e, t) => `${e}_${t.join("_")}_idx`, Fe = (e, t) => `${e}_${t.join("_")}_uq`, R = (e, t, n, r, i) => {
405
412
  if (n !== "hnsw") return;
406
413
  if (r.length !== 1) throw Error(`hnsw index '${t}' on table '${e}' must cover exactly one vector column — got ${r.length} fields. pgvector's HNSW access method indexes a single vector column.`);
407
414
  let a = r[0];
@@ -409,7 +416,7 @@ var r = (e) => {
409
416
  let o = i[a];
410
417
  if (o === void 0) throw Error(`hnsw index '${t}' on table '${e}' references unknown column '${a}'.`);
411
418
  if (o.type !== "vector") throw Error(`hnsw index '${t}' on table '${e}' requires a vector() column — column '${a}' is '${o.type}'. HNSW is the pgvector approximate-nearest-neighbour method and only applies to vectors.`);
412
- }, Ne = (e, t) => {
419
+ }, Ie = (e, t) => {
413
420
  let n;
414
421
  for (let [r, i] of Object.entries(e)) i.type === "id" && i.idScheme === void 0 && (n === void 0 && (n = { ...e }), n[r] = {
415
422
  ...i,
@@ -427,13 +434,14 @@ var r = (e) => {
427
434
  appliedUniques: e.appliedUniques,
428
435
  appliedFullText: e.appliedFullText,
429
436
  appliedChecks: e.appliedChecks,
437
+ appliedPluginRefs: e.appliedPluginRefs ?? [],
430
438
  appliedPrimaryKey: t,
431
439
  ...e.previousTableName === void 0 ? {} : { previousTableName: e.previousTableName },
432
440
  ...e.insertSchema === void 0 ? {} : { insertSchema: e.insertSchema },
433
441
  ...e.validatePatchSchema === void 0 ? {} : { validatePatchSchema: e.validatePatchSchema },
434
442
  fullTextIndex: ((t, n, r) => {
435
443
  if (n.length === 0) throw Error(`fullTextIndex '${t}' on '${e.tableName}' has no columns.`);
436
- if (y(e.tableName, t, !1, n), e.appliedFullText.some((e) => e.name === t)) throw Error(`duplicate full-text index '${t}' on table '${e.tableName}'.`);
444
+ if (b(e.tableName, t, !1, n), e.appliedFullText.some((e) => e.name === t)) throw Error(`duplicate full-text index '${t}' on table '${e.tableName}'.`);
437
445
  return z({
438
446
  ...e,
439
447
  tableName: e.tableName,
@@ -463,12 +471,12 @@ var r = (e) => {
463
471
  for (let t of n) for (let [n, a] of Object.entries(t.fields)) {
464
472
  let o = i.get(n);
465
473
  if (o !== void 0) throw Error(`mixin collision on column '${n}' in table '${e.tableName}': '${I(o)}' and '${I(t)}' both define it. If they're the same mixin reached via different paths, set a shared 'id' on both. If they're genuinely different concerns, rename one of the columns.`);
466
- v(e.tableName, n), r[n] = a, i.set(n, t);
474
+ y(e.tableName, n), r[n] = a, i.set(n, t);
467
475
  }
468
476
  let a = [...e.appliedIndexes];
469
477
  for (let t of n) for (let n of t.indexes ?? []) {
470
478
  let t = n.name ?? L(e.tableName, n.fields);
471
- a.some((e) => e.name === t) || (y(e.tableName, t, n.name === void 0, n.fields), R(e.tableName, t, n.kind, n.fields, r), a.push({
479
+ a.some((e) => e.name === t) || (b(e.tableName, t, n.name === void 0, n.fields), R(e.tableName, t, n.kind, n.fields, r), a.push({
472
480
  name: t,
473
481
  fields: n.fields,
474
482
  ...n.kind === void 0 ? {} : { kind: n.kind },
@@ -494,7 +502,7 @@ var r = (e) => {
494
502
  let n, r, i, a = Array.isArray(t[0]);
495
503
  if (a ? (r = t[0], i = t[1], n = L(e.tableName, r)) : (n = t[0], r = t[1], i = t[2]), r.length === 0) throw Error(`index '${n}' on table '${e.tableName}' has no fields — an index must cover at least one column.`);
496
504
  let o = r.filter((e) => typeof e == "string");
497
- if (y(e.tableName, n, a, o), R(e.tableName, n, i?.kind, r, e.fields), e.appliedIndexes.some((e) => e.name === n)) throw t.length === 1 ? Error(`duplicate auto-named index '${n}' on table '${e.tableName}' — you've called .index(${JSON.stringify(r)}) twice. Pass an explicit name to the second one if both are intended (rare).`) : Error(`duplicate index '${n}' on table '${e.tableName}': each index name must be unique within a table.`);
505
+ if (b(e.tableName, n, a, o), R(e.tableName, n, i?.kind, r, e.fields), e.appliedIndexes.some((e) => e.name === n)) throw t.length === 1 ? Error(`duplicate auto-named index '${n}' on table '${e.tableName}' — you've called .index(${JSON.stringify(r)}) twice. Pass an explicit name to the second one if both are intended (rare).`) : Error(`duplicate index '${n}' on table '${e.tableName}': each index name must be unique within a table.`);
498
506
  return z({
499
507
  ...e,
500
508
  tableName: e.tableName,
@@ -519,7 +527,7 @@ var r = (e) => {
519
527
  expressionIndex: ((t, n, r) => {
520
528
  if (n.length === 0) throw Error(`expressionIndex '${t}' on table '${e.tableName}' has no fields — an index must cover at least one column or expression.`);
521
529
  let i = n.filter((e) => typeof e == "string");
522
- if (y(e.tableName, t, !1, i), R(e.tableName, t, r?.kind, n, e.fields), e.appliedIndexes.some((e) => e.name === t)) throw Error(`duplicate index '${t}' on table '${e.tableName}': each index name must be unique within a table.`);
530
+ if (b(e.tableName, t, !1, i), R(e.tableName, t, r?.kind, n, e.fields), e.appliedIndexes.some((e) => e.name === t)) throw Error(`duplicate index '${t}' on table '${e.tableName}': each index name must be unique within a table.`);
523
531
  return z({
524
532
  ...e,
525
533
  tableName: e.tableName,
@@ -543,8 +551,8 @@ var r = (e) => {
543
551
  }),
544
552
  unique: ((...t) => {
545
553
  let n, r, i, a = Array.isArray(t[0]);
546
- if (a ? (r = t[0], i = t[1], n = Me(e.tableName, r)) : (n = t[0], r = t[1], i = t[2]), r.length === 0) throw Error(`unique '${n}' on table '${e.tableName}' has no fields — a UNIQUE constraint must cover at least one column.`);
547
- if (y(e.tableName, n, a, r), e.appliedUniques.some((e) => e.name === n)) throw Error(a ? `duplicate auto-named UNIQUE '${n}' on table '${e.tableName}' — you've called .unique(${JSON.stringify(r)}) twice. Pass an explicit name to the second one if both are intended (very rare).` : `duplicate UNIQUE '${n}' on table '${e.tableName}': each constraint name must be unique within a table.`);
554
+ if (a ? (r = t[0], i = t[1], n = Fe(e.tableName, r)) : (n = t[0], r = t[1], i = t[2]), r.length === 0) throw Error(`unique '${n}' on table '${e.tableName}' has no fields — a UNIQUE constraint must cover at least one column.`);
555
+ if (b(e.tableName, n, a, r), e.appliedUniques.some((e) => e.name === n)) throw Error(a ? `duplicate auto-named UNIQUE '${n}' on table '${e.tableName}' — you've called .unique(${JSON.stringify(r)}) twice. Pass an explicit name to the second one if both are intended (very rare).` : `duplicate UNIQUE '${n}' on table '${e.tableName}': each constraint name must be unique within a table.`);
548
556
  return z({
549
557
  ...e,
550
558
  tableName: e.tableName,
@@ -567,7 +575,7 @@ var r = (e) => {
567
575
  uniqueActive: ((...t) => {
568
576
  let n, r, i, a = Array.isArray(t[0]);
569
577
  if (a ? (r = t[0], i = t[1], n = L(e.tableName, r)) : (n = t[0], r = t[1], i = t[2]), r.length === 0) throw Error(`uniqueActive '${n}' on table '${e.tableName}' has no fields — a partial UNIQUE must cover at least one column.`);
570
- if (y(e.tableName, n, a, r), e.appliedIndexes.some((e) => e.name === n)) throw Error(`duplicate index '${n}' on table '${e.tableName}': each index name must be unique within a table (uniqueActive shares the index namespace).`);
578
+ if (b(e.tableName, n, a, r), e.appliedIndexes.some((e) => e.name === n)) throw Error(`duplicate index '${n}' on table '${e.tableName}': each index name must be unique within a table (uniqueActive shares the index namespace).`);
571
579
  let o = i?.where ?? "\"deletedAt\" IS NULL";
572
580
  return z({
573
581
  ...e,
@@ -591,7 +599,7 @@ var r = (e) => {
591
599
  }),
592
600
  check: ((t, n) => {
593
601
  if (n.trim().length === 0) throw Error(`CHECK '${t}' on table '${e.tableName}' has an empty expression.`);
594
- if (y(e.tableName, t, !1, []), e.appliedChecks.some((e) => e.name === t)) throw Error(`duplicate CHECK '${t}' on table '${e.tableName}': each constraint name must be unique within a table.`);
602
+ if (b(e.tableName, t, !1, []), e.appliedChecks.some((e) => e.name === t)) throw Error(`duplicate CHECK '${t}' on table '${e.tableName}': each constraint name must be unique within a table.`);
595
603
  return z({
596
604
  ...e,
597
605
  tableName: e.tableName,
@@ -612,7 +620,7 @@ var r = (e) => {
612
620
  }),
613
621
  renamedFrom: ((t) => {
614
622
  if (t === e.tableName) throw Error(`renamedFrom('${t}') on table '${e.tableName}' names the table itself — drop the marker, there is nothing to rename.`);
615
- return _(t), z({
623
+ return v(t), z({
616
624
  ...e,
617
625
  previousTableName: t
618
626
  });
@@ -685,13 +693,20 @@ var r = (e) => {
685
693
  validatePatchSchema: n.partial(t)
686
694
  }))
687
695
  };
688
- }, Pe = (e, t) => {
689
- _(e);
690
- let n = Ne(f(t), e);
691
- for (let t of Object.keys(n)) v(e, t);
696
+ }, Le = (e, t) => {
697
+ v(e);
698
+ let n = Object.entries(t).flatMap(([e, t]) => {
699
+ let n = p(t);
700
+ return n === void 0 ? [] : [{
701
+ column: e,
702
+ ...n
703
+ }];
704
+ }), r = Ie(d(t), e);
705
+ for (let t of Object.keys(r)) y(e, t);
692
706
  return z({
707
+ appliedPluginRefs: n,
693
708
  tableName: e,
694
- fields: n,
709
+ fields: r,
695
710
  isReactive: !0,
696
711
  appliedMixins: [],
697
712
  appliedIndexes: [],
@@ -699,7 +714,7 @@ var r = (e) => {
699
714
  appliedFullText: [],
700
715
  appliedChecks: []
701
716
  });
702
- }, Fe = (e) => e === "sqlite" || e === "turso", B = (e, t) => {
717
+ }, B = (e) => e === "sqlite" || e === "turso", V = (e, t) => {
703
718
  switch (t) {
704
719
  case "mysql":
705
720
  case "mariadb": return `\`${e}\``;
@@ -708,51 +723,51 @@ var r = (e) => {
708
723
  case "sqlite":
709
724
  case "turso": return `"${e}"`;
710
725
  }
711
- }, V = Symbol.for("@voltro/database/tableRegistry"), H = globalThis, U = H[V] ?? (H[V] = /* @__PURE__ */ new Map()), W = (e) => {
712
- let t = U.get(e.tableName);
726
+ }, H = Symbol.for("@voltro/database/tableRegistry"), U = globalThis, W = U[H] ?? (U[H] = /* @__PURE__ */ new Map()), G = (e) => {
727
+ let t = W.get(e.tableName);
713
728
  if (t === void 0) {
714
- U.set(e.tableName, e);
729
+ W.set(e.tableName, e);
715
730
  return;
716
731
  }
717
732
  if (t !== e) throw Error(`duplicate table '${e.tableName}' registration: two different table descriptors claim the same name. Rename one or import the shared module that defines it.`);
718
- }, Ie = (e) => {
719
- U.get(e.tableName) === void 0 && U.set(e.tableName, e);
720
- }, G = (e) => U.get(e), Le = (e) => {
721
- let t = U.get(e);
733
+ }, Re = (e) => {
734
+ W.get(e.tableName) === void 0 && W.set(e.tableName, e);
735
+ }, K = (e) => W.get(e), ze = (e) => {
736
+ let t = W.get(e);
722
737
  if (t === void 0) throw Error(`table '${e}' is not registered. Register it by wrapping it in \`databaseHandle({ ... })\` (the usual path) or call \`registerTable(t)\` explicitly before this runs. Note a \`queryFor(t)\` query carries its own source table, so eager-loads don't hit this — this error means a reconstructed descriptor or by-name tooling reached an unregistered table.`);
723
738
  return t;
724
- }, Re = () => [...U.values()], ze = () => {
725
- U.clear();
726
- }, Be = (e) => U.get(e)?.isReactive !== !1, Ve = (e) => ({
739
+ }, Be = () => [...W.values()], Ve = () => {
740
+ W.clear();
741
+ }, He = (e) => W.get(e)?.isReactive !== !1, Ue = (e) => ({
727
742
  op: "count",
728
743
  alias: e ?? "count"
729
- }), He = (e, t) => ({
744
+ }), We = (e, t) => ({
730
745
  op: "count-distinct",
731
746
  column: e,
732
747
  alias: t ?? `count_distinct_${e}`
733
- }), Ue = (e, t) => ({
748
+ }), Ge = (e, t) => ({
734
749
  op: "sum",
735
750
  column: e,
736
751
  alias: t ?? `sum_${e}`
737
- }), We = (e, t) => ({
752
+ }), Ke = (e, t) => ({
738
753
  op: "avg",
739
754
  column: e,
740
755
  alias: t ?? `avg_${e}`
741
- }), Ge = (e, t) => ({
756
+ }), qe = (e, t) => ({
742
757
  op: "min",
743
758
  column: e,
744
759
  alias: t ?? `min_${e}`
745
- }), Ke = (e, t) => ({
760
+ }), Je = (e, t) => ({
746
761
  op: "max",
747
762
  column: e,
748
763
  alias: t ?? `max_${e}`
749
- }), qe = (e, t) => ({
764
+ }), Ye = (e, t) => ({
750
765
  op: "column",
751
766
  column: e,
752
767
  alias: t ?? e
753
- }), K = (e) => (...t) => {
768
+ }), q = (e) => (...t) => {
754
769
  if (t.length < 2) throw Error(`${e}: requires at least two queries`);
755
- return Y({
770
+ return X({
756
771
  table: t[0].descriptor.table,
757
772
  predicate: void 0,
758
773
  order: [],
@@ -764,55 +779,55 @@ var r = (e) => {
764
779
  queries: t.map((e) => e.descriptor)
765
780
  }
766
781
  });
767
- }, Je = K("union"), Ye = K("union-all"), Xe = K("intersect"), Ze = K("except"), q = (e) => ({ over: (t) => ({
782
+ }, Xe = q("union"), Ze = q("union-all"), Qe = q("intersect"), $e = q("except"), J = (e) => ({ over: (t) => ({
768
783
  ...e,
769
784
  window: t
770
- }) }), Qe = (e = "rowNumber") => q({
785
+ }) }), et = (e = "rowNumber") => J({
771
786
  op: "window-row-number",
772
787
  alias: e
773
- }), $e = (e = "rank") => q({
788
+ }), tt = (e = "rank") => J({
774
789
  op: "window-rank",
775
790
  alias: e
776
- }), et = (e = "denseRank") => q({
791
+ }), nt = (e = "denseRank") => J({
777
792
  op: "window-dense-rank",
778
793
  alias: e
779
- }), tt = (e, t = 1, n) => q({
794
+ }), rt = (e, t = 1, n) => J({
780
795
  op: "window-lag",
781
796
  column: e,
782
797
  alias: n ?? `lag_${e}`,
783
798
  offset: t
784
- }), nt = (e, t = 1, n) => q({
799
+ }), it = (e, t = 1, n) => J({
785
800
  op: "window-lead",
786
801
  column: e,
787
802
  alias: n ?? `lead_${e}`,
788
803
  offset: t
789
- }), rt = (e, t) => q({
804
+ }), at = (e, t) => J({
790
805
  op: "window-sum-over",
791
806
  column: e,
792
807
  alias: t ?? `sum_${e}_over`
793
- }), it = (e, t) => q({
808
+ }), ot = (e, t) => J({
794
809
  op: "window-avg-over",
795
810
  column: e,
796
811
  alias: t ?? `avg_${e}_over`
797
- }), J = (e, t, n) => {
798
- let r = n?.find((e) => e.name === t) ?? G(e)?.appliedFullText?.find((e) => e.name === t);
812
+ }), Y = (e, t, n) => {
813
+ let r = n?.find((e) => e.name === t) ?? K(e)?.appliedFullText?.find((e) => e.name === t);
799
814
  if (r === void 0) throw Error(`.matching('${t}', ...): no full-text index named '${t}' is declared on table '${e}'. Declare it with \`table(...).fullTextIndex('${t}', [columns])\` first.`);
800
815
  return {
801
816
  columns: r.columns,
802
817
  ...r.config === void 0 ? {} : { config: r.config },
803
818
  ...r.weights === void 0 ? {} : { weights: r.weights }
804
819
  };
805
- }, Y = (e) => ({
820
+ }, X = (e) => ({
806
821
  descriptor: e,
807
822
  where(t) {
808
823
  let n = e.predicate ? { and: [e.predicate, t] } : t;
809
- return Y({
824
+ return X({
810
825
  ...e,
811
826
  predicate: n
812
827
  });
813
828
  },
814
829
  orderBy(t, n = "asc") {
815
- return Y({
830
+ return X({
816
831
  ...e,
817
832
  order: [...e.order, {
818
833
  column: t,
@@ -821,37 +836,37 @@ var r = (e) => {
821
836
  });
822
837
  },
823
838
  limit(t) {
824
- return Y({
839
+ return X({
825
840
  ...e,
826
841
  take: t
827
842
  });
828
843
  },
829
844
  offset(t) {
830
- return Y({
845
+ return X({
831
846
  ...e,
832
847
  skip: t
833
848
  });
834
849
  },
835
850
  select(...t) {
836
- return Y({
851
+ return X({
837
852
  ...e,
838
853
  projection: t
839
854
  });
840
855
  },
841
856
  using(t) {
842
- return Y({
857
+ return X({
843
858
  ...e,
844
859
  usingIndex: t
845
860
  });
846
861
  },
847
862
  withDeleted() {
848
- return Y({
863
+ return X({
849
864
  ...e,
850
865
  includeDeleted: !0
851
866
  });
852
867
  },
853
868
  unscoped() {
854
- return Y({
869
+ return X({
855
870
  ...e,
856
871
  crossTenant: !0
857
872
  });
@@ -861,13 +876,13 @@ var r = (e) => {
861
876
  ...e.eager ?? {},
862
877
  ...t
863
878
  };
864
- return Y({
879
+ return X({
865
880
  ...e,
866
881
  eager: n
867
882
  });
868
883
  },
869
884
  count() {
870
- return Y({
885
+ return X({
871
886
  ...e,
872
887
  projection: void 0,
873
888
  aggregations: [{
@@ -881,15 +896,15 @@ var r = (e) => {
881
896
  ...t,
882
897
  alias: e
883
898
  }));
884
- return Y({
899
+ return X({
885
900
  ...e,
886
901
  projection: void 0,
887
902
  aggregations: n
888
903
  });
889
904
  },
890
905
  matching(t, n) {
891
- let r = J(e.table, t, e.fullTextIndexes);
892
- return Y({
906
+ let r = Y(e.table, t, e.fullTextIndexes);
907
+ return X({
893
908
  ...e,
894
909
  fullTextSearch: {
895
910
  indexName: t,
@@ -903,7 +918,7 @@ var r = (e) => {
903
918
  rankBy(t) {
904
919
  let n = e.fullTextSearch;
905
920
  if (n === void 0) throw Error(".rankBy() requires a preceding .matching(...) clause — there is no full-text search to rank on this query.");
906
- return Y({
921
+ return X({
907
922
  ...e,
908
923
  fullTextSearch: {
909
924
  ...n,
@@ -922,7 +937,7 @@ var r = (e) => {
922
937
  distance: r?.distance ?? "cosine",
923
938
  ...e.annClause?.ef === void 0 ? {} : { ef: e.annClause.ef }
924
939
  };
925
- return Y({
940
+ return X({
926
941
  ...e,
927
942
  annClause: i
928
943
  });
@@ -934,7 +949,7 @@ var r = (e) => {
934
949
  distance: "cosine",
935
950
  ...e.annClause?.ef === void 0 ? {} : { ef: e.annClause.ef }
936
951
  };
937
- return Y({
952
+ return X({
938
953
  ...e,
939
954
  annClause: r,
940
955
  take: n
@@ -947,7 +962,7 @@ var r = (e) => {
947
962
  column: "",
948
963
  distance: "cosine"
949
964
  };
950
- return Y({
965
+ return X({
951
966
  ...e,
952
967
  annClause: {
953
968
  ...n,
@@ -956,22 +971,22 @@ var r = (e) => {
956
971
  });
957
972
  },
958
973
  use(t) {
959
- return Y({ ...t(e) });
974
+ return X({ ...t(e) });
960
975
  },
961
976
  distinct() {
962
- return Y({
977
+ return X({
963
978
  ...e,
964
979
  distinct: !0
965
980
  });
966
981
  },
967
982
  distinctOn(t) {
968
- return Y({
983
+ return X({
969
984
  ...e,
970
985
  distinctOn: [...t]
971
986
  });
972
987
  },
973
988
  as(t) {
974
- return Y({
989
+ return X({
975
990
  ...e,
976
991
  alias: t
977
992
  });
@@ -983,7 +998,7 @@ var r = (e) => {
983
998
  alias: n,
984
999
  on: r
985
1000
  }];
986
- return Y({
1001
+ return X({
987
1002
  ...e,
988
1003
  joins: a
989
1004
  });
@@ -995,7 +1010,7 @@ var r = (e) => {
995
1010
  alias: n,
996
1011
  on: r
997
1012
  }];
998
- return Y({
1013
+ return X({
999
1014
  ...e,
1000
1015
  joins: a
1001
1016
  });
@@ -1005,7 +1020,7 @@ var r = (e) => {
1005
1020
  outputKey: e,
1006
1021
  source: t
1007
1022
  }));
1008
- return Y({
1023
+ return X({
1009
1024
  ...e,
1010
1025
  projection: void 0,
1011
1026
  joinedProjection: n
@@ -1014,7 +1029,7 @@ var r = (e) => {
1014
1029
  withCte(t, n) {
1015
1030
  let r = e.ctes ?? [];
1016
1031
  if (r.some((e) => e.name === t)) throw Error(`Query.withCte: duplicate CTE name '${t}'`);
1017
- return Y({
1032
+ return X({
1018
1033
  ...e,
1019
1034
  ctes: [...r, {
1020
1035
  name: t,
@@ -1025,7 +1040,7 @@ var r = (e) => {
1025
1040
  recursiveCte(t, n) {
1026
1041
  let r = e.ctes ?? [];
1027
1042
  if (r.some((e) => e.name === t)) throw Error(`Query.recursiveCte: duplicate CTE name '${t}'`);
1028
- return Y({
1043
+ return X({
1029
1044
  ...e,
1030
1045
  ctes: [...r, {
1031
1046
  name: t,
@@ -1036,20 +1051,20 @@ var r = (e) => {
1036
1051
  },
1037
1052
  groupBy(t) {
1038
1053
  let n = e.groupBy ? [...e.groupBy, ...t] : [...t];
1039
- return Y({
1054
+ return X({
1040
1055
  ...e,
1041
1056
  groupBy: n
1042
1057
  });
1043
1058
  },
1044
1059
  having(t) {
1045
1060
  let n = e.having ? { and: [e.having, t] } : t;
1046
- return Y({
1061
+ return X({
1047
1062
  ...e,
1048
1063
  having: n
1049
1064
  });
1050
1065
  },
1051
1066
  exists() {
1052
- return Y({
1067
+ return X({
1053
1068
  ...e,
1054
1069
  projection: void 0,
1055
1070
  aggregations: [{
@@ -1060,8 +1075,8 @@ var r = (e) => {
1060
1075
  });
1061
1076
  }
1062
1077
  });
1063
- function X(e) {
1064
- return Y({
1078
+ function Z(e) {
1079
+ return X({
1065
1080
  table: e.tableName,
1066
1081
  predicate: void 0,
1067
1082
  order: [],
@@ -1072,7 +1087,7 @@ function X(e) {
1072
1087
  sourceTable: e
1073
1088
  });
1074
1089
  }
1075
- var at = (e, t, n) => Z(e, "id", t, n), Z = (e, t, n, r, i = "asc") => {
1090
+ var st = (e, t, n) => Q(e, "id", t, n), Q = (e, t, n, r, i = "asc") => {
1076
1091
  let a = [...e.order.filter((e) => e.column !== t), {
1077
1092
  column: t,
1078
1093
  direction: i
@@ -1087,21 +1102,21 @@ var at = (e, t, n) => Z(e, "id", t, n), Z = (e, t, n, r, i = "asc") => {
1087
1102
  order: a,
1088
1103
  take: r
1089
1104
  };
1090
- }, ot = (e) => {
1105
+ }, ct = (e) => {
1091
1106
  let t = {};
1092
- for (let [n, r] of Object.entries(e)) W(r), t[n] = X(r);
1107
+ for (let [n, r] of Object.entries(e)) G(r), t[n] = Z(r);
1093
1108
  return t;
1094
- }, st = (e) => e.isView === !0, ct = (e, t, n) => {
1095
- if (_(e), n.trim().length === 0) throw Error(`view('${e}', …): the SELECT body is empty — a view must define a query.`);
1096
- let r = f(t);
1097
- for (let t of Object.keys(r)) v(e, t);
1109
+ }, lt = (e) => e.isView === !0, ut = (e, t, n) => {
1110
+ if (v(e), n.trim().length === 0) throw Error(`view('${e}', …): the SELECT body is empty — a view must define a query.`);
1111
+ let r = d(t);
1112
+ for (let t of Object.keys(r)) y(e, t);
1098
1113
  return {
1099
1114
  tableName: e,
1100
1115
  fields: r,
1101
1116
  isView: !0,
1102
1117
  viewSelect: n
1103
1118
  };
1104
- }, lt = (e) => X({
1119
+ }, dt = (e) => Z({
1105
1120
  ...e,
1106
1121
  isReactive: !1,
1107
1122
  appliedMixins: [],
@@ -1109,8 +1124,8 @@ var at = (e, t, n) => Z(e, "id", t, n), Z = (e, t, n, r, i = "asc") => {
1109
1124
  appliedUniques: [],
1110
1125
  appliedFullText: [],
1111
1126
  appliedChecks: []
1112
- }), ut = (e, t, n = null) => {
1113
- let r = n === null ? B(e.tableName, t) : `${B(n, t)}.${B(e.tableName, t)}`, i = e.viewSelect.trim();
1127
+ }), ft = (e, t, n = null) => {
1128
+ let r = n === null ? V(e.tableName, t) : `${V(n, t)}.${V(e.tableName, t)}`, i = e.viewSelect.trim();
1114
1129
  switch (t) {
1115
1130
  case "postgres":
1116
1131
  case "mysql":
@@ -1119,16 +1134,16 @@ var at = (e, t, n) => Z(e, "id", t, n), Z = (e, t, n, r, i = "asc") => {
1119
1134
  case "sqlite":
1120
1135
  case "turso": return `DROP VIEW IF EXISTS ${r};\nCREATE VIEW ${r} AS ${i};`;
1121
1136
  }
1122
- }, dt = /^[A-Za-z_][A-Za-z0-9_]*$/, ft = (e) => "$" + e.map((e) => typeof e == "number" ? `[${e}]` : dt.test(e) ? `.${e}` : `."${e.replace(/"/g, "\\\"")}"`).join(""), pt = (e) => "{" + e.map((e) => {
1137
+ }, pt = /^[A-Za-z_][A-Za-z0-9_]*$/, mt = (e) => "$" + e.map((e) => typeof e == "number" ? `[${e}]` : pt.test(e) ? `.${e}` : `."${e.replace(/"/g, "\\\"")}"`).join(""), ht = (e) => "{" + e.map((e) => {
1123
1138
  let t = String(e);
1124
1139
  return /^[A-Za-z0-9_]+$/.test(t) ? t : `"${t.replace(/(["\\])/g, "\\$1")}"`;
1125
- }).join(",") + "}", Q = (e, t, n, r = {}) => {
1126
- let i = B(e, n), a = r.numeric ?? !1;
1140
+ }).join(",") + "}", gt = (e, t, n, r = {}) => {
1141
+ let i = V(e, n), a = r.numeric ?? !1;
1127
1142
  if (n === "postgres") {
1128
- let e = `(${i} #>> '${pt(t)}'::text[])`;
1143
+ let e = `(${i} #>> '${ht(t)}'::text[])`;
1129
1144
  return a ? `${e}::numeric` : e;
1130
1145
  }
1131
- let o = ft(t);
1146
+ let o = mt(t);
1132
1147
  switch (n) {
1133
1148
  case "mysql":
1134
1149
  case "mariadb": {
@@ -1145,10 +1160,10 @@ var at = (e, t, n) => Z(e, "id", t, n), Z = (e, t, n, r, i = "asc") => {
1145
1160
  return a ? `CAST(${e} AS REAL)` : e;
1146
1161
  }
1147
1162
  }
1148
- }, mt = (e) => {
1163
+ }, _t = (e) => {
1149
1164
  if (!e.id || e.id.length === 0) throw Error("migration: `id` is required + must be non-empty");
1150
1165
  if (!e.up || !e.down) throw Error(`migration ${e.id}: both \`up\` and \`down\` must be functions`);
1151
1166
  return e;
1152
- }, ht = /^\d{8}_\d{6}_[a-z0-9_]+\.ts$/, gt = (e) => typeof e == "object" && !!e && "id" in e && "up" in e && "down" in e && typeof e.id == "string" && typeof e.up == "function" && typeof e.down == "function", $ = /* @__PURE__ */ new Set(["voltro_isr_cache"]), _t = (e) => $.has(e) || e.startsWith("_voltro_") || e.startsWith("_cloud_") || e.startsWith("cluster_"), vt = /__dropped_\d{14}$/, yt = (e) => vt.test(e);
1167
+ }, vt = /^\d{8}_\d{6}_[a-z0-9_]+\.ts$/, yt = (e) => typeof e == "object" && !!e && "id" in e && "up" in e && "down" in e && typeof e.id == "string" && typeof e.up == "function" && typeof e.down == "function", $ = /* @__PURE__ */ new Set(["voltro_isr_cache"]), bt = (e) => $.has(e) || e.startsWith("_voltro_") || e.startsWith("_cloud_") || e.startsWith("cluster_"), xt = /__dropped_\d{14}$/, St = (e) => xt.test(e);
1153
1168
  //#endregion
1154
- export { N as $, Qe as A, me as At, W as B, Ke as C, pe as Ct, X as D, ce as Dt, at as E, de as Et, Re as F, oe as Ft, ke as G, Fe as H, ze as I, d as It, Oe as J, Pe as K, Ie as L, rt as M, l as Mt, Je as N, r as Nt, $e as O, f as Ot, Ye as P, s as Pt, De as Q, G as R, nt as S, fe as St, Z as T, ee as Tt, B as U, Le as V, je as W, F as X, P as Y, M as Z, ot as _, le as _t, gt as a, v as at, Xe as b, c as bt, st as c, b as ct, ut as d, he as dt, j as et, We as f, ge as ft, He as g, ae as gt, Ve as h, re as ht, ht as i, xe as it, Ue as j, te as jt, J as k, ne as kt, lt as l, _e as lt, qe as m, ue as mt, _t as n, ye as nt, mt as o, y as ot, it as p, i as pt, Ae as q, yt as r, be as rt, Q as s, _ as st, $ as t, Te as tt, ct as u, ve as ut, et as v, se as vt, Ge as w, o as wt, tt as x, u as xt, Ze as y, ie as yt, Be as z };
1169
+ export { N as $, et as A, d as At, G as B, Je as C, l as Ct, Z as D, ee as Dt, st as E, o as Et, Be as F, r as Ft, Me as G, B as H, Ve as I, s as It, je as J, Le as K, Re as L, oe as Lt, at as M, he as Mt, Xe as N, te as Nt, tt as O, fe as Ot, Ze as P, ue as Pt, Ae as Q, K as R, u as Rt, it as S, c as St, Q as T, me as Tt, V as U, ze as V, Pe as W, F as X, P as Y, M as Z, ct as _, re as _t, yt as a, y as at, Qe as b, se as bt, lt as c, x as ct, ft as d, _e as dt, j as et, Ke as f, ve as ft, We as g, de as gt, Ue as h, i as ht, vt as i, Ce as it, Ge as j, ne as jt, Y as k, ce as kt, dt as l, ye as lt, Ye as m, p as mt, bt as n, xe as nt, _t as o, b as ot, ot as p, ge as pt, Ne as q, St as r, Se as rt, gt as s, v as st, $ as t, Oe as tt, ut as u, be as ut, nt as v, ae as vt, qe as w, pe as wt, rt as x, ie as xt, $e as y, le as yt, He as z };