@rocicorp/zero 0.21.2025060402 → 0.21.2025061000

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.
Files changed (161) hide show
  1. package/out/analyze-query/src/bin-analyze.js +71 -12
  2. package/out/analyze-query/src/bin-analyze.js.map +1 -1
  3. package/out/{chunk-UAWIBMWA.js → chunk-5ROWRYFH.js} +58 -10
  4. package/out/chunk-5ROWRYFH.js.map +7 -0
  5. package/out/{chunk-JZAY4BJA.js → chunk-6PVWM7Y2.js} +2 -2
  6. package/out/{chunk-ZXV2IITH.js → chunk-KDQ3WYWL.js} +123 -30
  7. package/out/chunk-KDQ3WYWL.js.map +7 -0
  8. package/out/{inspector-KBNUEBWB.js → inspector-YXZYCPEX.js} +3 -3
  9. package/out/react.js +1 -1
  10. package/out/shared/src/cache.d.ts +15 -0
  11. package/out/shared/src/cache.d.ts.map +1 -0
  12. package/out/shared/src/cache.js +41 -0
  13. package/out/shared/src/cache.js.map +1 -0
  14. package/out/solid.js +3 -3
  15. package/out/zero-cache/src/auth/read-authorizer.js +1 -1
  16. package/out/zero-cache/src/auth/read-authorizer.js.map +1 -1
  17. package/out/zero-cache/src/config/zero-config.d.ts +10 -0
  18. package/out/zero-cache/src/config/zero-config.d.ts.map +1 -1
  19. package/out/zero-cache/src/config/zero-config.js +11 -2
  20. package/out/zero-cache/src/config/zero-config.js.map +1 -1
  21. package/out/zero-cache/src/custom-queries/transform-query.d.ts +31 -0
  22. package/out/zero-cache/src/custom-queries/transform-query.d.ts.map +1 -0
  23. package/out/zero-cache/src/custom-queries/transform-query.js +87 -0
  24. package/out/zero-cache/src/custom-queries/transform-query.js.map +1 -0
  25. package/out/zero-cache/src/db/pg-copy.d.ts +12 -0
  26. package/out/zero-cache/src/db/pg-copy.d.ts.map +1 -1
  27. package/out/zero-cache/src/db/pg-copy.js +51 -35
  28. package/out/zero-cache/src/db/pg-copy.js.map +1 -1
  29. package/out/zero-cache/src/db/pg-to-lite.d.ts +1 -2
  30. package/out/zero-cache/src/db/pg-to-lite.d.ts.map +1 -1
  31. package/out/zero-cache/src/db/pg-to-lite.js +12 -10
  32. package/out/zero-cache/src/db/pg-to-lite.js.map +1 -1
  33. package/out/zero-cache/src/observability/counters.d.ts +9 -8
  34. package/out/zero-cache/src/observability/counters.d.ts.map +1 -1
  35. package/out/zero-cache/src/observability/counters.js +12 -29
  36. package/out/zero-cache/src/observability/counters.js.map +1 -1
  37. package/out/zero-cache/src/observability/histograms.d.ts +8 -7
  38. package/out/zero-cache/src/observability/histograms.d.ts.map +1 -1
  39. package/out/zero-cache/src/observability/histograms.js +11 -31
  40. package/out/zero-cache/src/observability/histograms.js.map +1 -1
  41. package/out/zero-cache/src/observability/view-syncer-instruments.d.ts +1 -0
  42. package/out/zero-cache/src/observability/view-syncer-instruments.d.ts.map +1 -1
  43. package/out/zero-cache/src/observability/view-syncer-instruments.js +12 -0
  44. package/out/zero-cache/src/observability/view-syncer-instruments.js.map +1 -1
  45. package/out/zero-cache/src/server/syncer.d.ts.map +1 -1
  46. package/out/zero-cache/src/server/syncer.js +1 -1
  47. package/out/zero-cache/src/server/syncer.js.map +1 -1
  48. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts +1 -0
  49. package/out/zero-cache/src/services/change-source/pg/initial-sync.d.ts.map +1 -1
  50. package/out/zero-cache/src/services/change-source/pg/initial-sync.js +29 -29
  51. package/out/zero-cache/src/services/change-source/pg/initial-sync.js.map +1 -1
  52. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.d.ts.map +1 -1
  53. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js +0 -1
  54. package/out/zero-cache/src/services/change-source/pg/logical-replication/stream.js.map +1 -1
  55. package/out/zero-cache/src/services/mutagen/mutagen.d.ts +5 -2
  56. package/out/zero-cache/src/services/mutagen/mutagen.d.ts.map +1 -1
  57. package/out/zero-cache/src/services/mutagen/mutagen.js +21 -1
  58. package/out/zero-cache/src/services/mutagen/mutagen.js.map +1 -1
  59. package/out/zero-cache/src/services/mutagen/pusher.d.ts +5 -2
  60. package/out/zero-cache/src/services/mutagen/pusher.d.ts.map +1 -1
  61. package/out/zero-cache/src/services/mutagen/pusher.js +20 -0
  62. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  63. package/out/zero-cache/src/services/service.d.ts +5 -0
  64. package/out/zero-cache/src/services/service.d.ts.map +1 -1
  65. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts +1 -4
  66. package/out/zero-cache/src/services/view-syncer/cvr-store.d.ts.map +1 -1
  67. package/out/zero-cache/src/services/view-syncer/cvr-store.js +17 -8
  68. package/out/zero-cache/src/services/view-syncer/cvr-store.js.map +1 -1
  69. package/out/zero-cache/src/services/view-syncer/cvr.d.ts +4 -1
  70. package/out/zero-cache/src/services/view-syncer/cvr.d.ts.map +1 -1
  71. package/out/zero-cache/src/services/view-syncer/cvr.js +25 -11
  72. package/out/zero-cache/src/services/view-syncer/cvr.js.map +1 -1
  73. package/out/zero-cache/src/services/view-syncer/pipeline-driver.d.ts.map +1 -1
  74. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js +6 -7
  75. package/out/zero-cache/src/services/view-syncer/pipeline-driver.js.map +1 -1
  76. package/out/zero-cache/src/services/view-syncer/schema/cvr.d.ts +2 -5
  77. package/out/zero-cache/src/services/view-syncer/schema/cvr.d.ts.map +1 -1
  78. package/out/zero-cache/src/services/view-syncer/schema/cvr.js +0 -9
  79. package/out/zero-cache/src/services/view-syncer/schema/cvr.js.map +1 -1
  80. package/out/zero-cache/src/services/view-syncer/schema/init.d.ts.map +1 -1
  81. package/out/zero-cache/src/services/view-syncer/schema/init.js +12 -0
  82. package/out/zero-cache/src/services/view-syncer/schema/init.js.map +1 -1
  83. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +3 -2
  84. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  85. package/out/zero-cache/src/services/view-syncer/view-syncer.js +122 -29
  86. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  87. package/out/zero-cache/src/types/profiler.d.ts +13 -0
  88. package/out/zero-cache/src/types/profiler.d.ts.map +1 -0
  89. package/out/zero-cache/src/types/profiler.js +31 -0
  90. package/out/zero-cache/src/types/profiler.js.map +1 -0
  91. package/out/zero-cache/src/workers/connection.d.ts.map +1 -1
  92. package/out/zero-cache/src/workers/connection.js +1 -0
  93. package/out/zero-cache/src/workers/connection.js.map +1 -1
  94. package/out/zero-cache/src/workers/syncer.d.ts.map +1 -1
  95. package/out/zero-cache/src/workers/syncer.js +29 -12
  96. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  97. package/out/zero-client/src/client/context.d.ts +8 -3
  98. package/out/zero-client/src/client/context.d.ts.map +1 -1
  99. package/out/zero-client/src/client/query-manager.d.ts +5 -2
  100. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  101. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  102. package/out/zero-pg/src/query.d.ts.map +1 -1
  103. package/out/zero-pg/src/query.js +4 -1
  104. package/out/zero-pg/src/query.js.map +1 -1
  105. package/out/zero-protocol/src/change-desired-queries.d.ts +8 -4
  106. package/out/zero-protocol/src/change-desired-queries.d.ts.map +1 -1
  107. package/out/zero-protocol/src/connect.d.ts +8 -4
  108. package/out/zero-protocol/src/connect.d.ts.map +1 -1
  109. package/out/zero-protocol/src/custom-queries.d.ts +48 -0
  110. package/out/zero-protocol/src/custom-queries.d.ts.map +1 -0
  111. package/out/zero-protocol/src/custom-queries.js +29 -0
  112. package/out/zero-protocol/src/custom-queries.js.map +1 -0
  113. package/out/zero-protocol/src/protocol-version.d.ts +1 -1
  114. package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
  115. package/out/zero-protocol/src/protocol-version.js +2 -1
  116. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  117. package/out/zero-protocol/src/queries-patch.d.ts +12 -6
  118. package/out/zero-protocol/src/queries-patch.d.ts.map +1 -1
  119. package/out/zero-protocol/src/queries-patch.js +7 -1
  120. package/out/zero-protocol/src/queries-patch.js.map +1 -1
  121. package/out/zero-protocol/src/query-hash.d.ts +4 -0
  122. package/out/zero-protocol/src/query-hash.d.ts.map +1 -0
  123. package/out/zero-protocol/src/{ast-hash.js → query-hash.js} +5 -1
  124. package/out/zero-protocol/src/query-hash.js.map +1 -0
  125. package/out/zero-protocol/src/up.d.ts +8 -4
  126. package/out/zero-protocol/src/up.d.ts.map +1 -1
  127. package/out/zero.js +3 -3
  128. package/out/zql/src/query/named.d.ts +21 -0
  129. package/out/zql/src/query/named.d.ts.map +1 -0
  130. package/out/zql/src/query/named.js +27 -0
  131. package/out/zql/src/query/named.js.map +1 -0
  132. package/out/zql/src/query/query-impl.d.ts +12 -6
  133. package/out/zql/src/query/query-impl.d.ts.map +1 -1
  134. package/out/zql/src/query/query-impl.js +34 -21
  135. package/out/zql/src/query/query-impl.js.map +1 -1
  136. package/out/zql/src/query/query.d.ts +16 -0
  137. package/out/zql/src/query/query.d.ts.map +1 -1
  138. package/out/zql/src/query/query.js.map +1 -1
  139. package/out/zql/src/query/static-query.d.ts +3 -2
  140. package/out/zql/src/query/static-query.d.ts.map +1 -1
  141. package/out/zql/src/query/static-query.js +4 -4
  142. package/out/zql/src/query/static-query.js.map +1 -1
  143. package/out/zqlite/src/query-delegate.d.ts +2 -0
  144. package/out/zqlite/src/query-delegate.d.ts.map +1 -1
  145. package/out/zqlite/src/query-delegate.js +4 -0
  146. package/out/zqlite/src/query-delegate.js.map +1 -1
  147. package/out/zqlite/src/runtime-debug.d.ts +9 -4
  148. package/out/zqlite/src/runtime-debug.d.ts.map +1 -1
  149. package/out/zqlite/src/runtime-debug.js +43 -16
  150. package/out/zqlite/src/runtime-debug.js.map +1 -1
  151. package/out/zqlite/src/table-source.d.ts.map +1 -1
  152. package/out/zqlite/src/table-source.js +4 -5
  153. package/out/zqlite/src/table-source.js.map +1 -1
  154. package/package.json +1 -1
  155. package/out/chunk-UAWIBMWA.js.map +0 -7
  156. package/out/chunk-ZXV2IITH.js.map +0 -7
  157. package/out/zero-protocol/src/ast-hash.d.ts +0 -3
  158. package/out/zero-protocol/src/ast-hash.d.ts.map +0 -1
  159. package/out/zero-protocol/src/ast-hash.js.map +0 -1
  160. /package/out/{chunk-JZAY4BJA.js.map → chunk-6PVWM7Y2.js.map} +0 -0
  161. /package/out/{inspector-KBNUEBWB.js.map → inspector-YXZYCPEX.js.map} +0 -0
@@ -23,8 +23,9 @@ import {} from "../../zql/src/query/query.js";
23
23
  import { Database } from "../../zqlite/src/db.js";
24
24
  import { runtimeDebugFlags, runtimeDebugStats, } from "../../zqlite/src/runtime-debug.js";
25
25
  import { TableSource } from "../../zqlite/src/table-source.js";
26
- import { hashOfAST } from "../../zero-protocol/src/ast-hash.js";
26
+ import { hashOfAST } from "../../zero-protocol/src/query-hash.js";
27
27
  import { computeZqlSpecs } from "../../zero-cache/src/db/lite-tables.js";
28
+ import { assert } from "../../shared/src/asserts.js";
28
29
  const options = {
29
30
  replica: zeroOptions.replica,
30
31
  ast: {
@@ -79,6 +80,19 @@ const options = {
79
80
  },
80
81
  app: appOptions,
81
82
  shard: shardOptions,
83
+ outputVendedRows: {
84
+ type: v.boolean().default(false),
85
+ desc: [
86
+ 'Whether to output the rows which were read from the replica in order to execute the analyzed query. ',
87
+ 'If the same row is read more than once it will be logged once for each time it was read.',
88
+ ],
89
+ },
90
+ outputSyncedRows: {
91
+ type: v.boolean().default(false),
92
+ desc: [
93
+ 'Whether to output the rows which would be synced to the client for the analyzed query.',
94
+ ],
95
+ },
82
96
  // This args is hidden as it is only present to:
83
97
  // 1. Parse it out of the env if it exists
84
98
  // 2. Use it to default the `cvr` to `upstream` if `cvr` is not provided
@@ -103,7 +117,9 @@ const config = {
103
117
  db: cfg.cvr.db ?? cfg.upstream.db,
104
118
  },
105
119
  };
106
- runtimeDebugFlags.trackRowsVended = true;
120
+ runtimeDebugFlags.trackRowCountsVended = true;
121
+ runtimeDebugFlags.trackRowsVended = config.outputVendedRows;
122
+ const clientGroupID = 'clientGroupIDForAnalyze';
107
123
  const lc = createSilentLogContext();
108
124
  const db = new Database(lc, config.replica.file);
109
125
  const { schema, permissions } = await loadSchemaAndPermissions(lc, config.schemaPath);
@@ -117,7 +133,7 @@ const host = {
117
133
  if (source) {
118
134
  return source;
119
135
  }
120
- source = new TableSource(lc, testLogConfig, '', db, serverTableName, Object.fromEntries(Object.entries(schema.tables[clientTableName].columns).map(([colName, column]) => [
136
+ source = new TableSource(lc, testLogConfig, clientGroupID, db, serverTableName, Object.fromEntries(Object.entries(schema.tables[clientTableName].columns).map(([colName, column]) => [
121
137
  clientToServerMapper.columnName(clientTableName, colName),
122
138
  column,
123
139
  ])), schema.tables[clientTableName].primaryKey.map(col => clientToServerMapper.columnName(clientTableName, col)));
@@ -137,7 +153,11 @@ const host = {
137
153
  addServerQuery() {
138
154
  return () => { };
139
155
  },
156
+ addCustomQuery() {
157
+ return () => { };
158
+ },
140
159
  updateServerQuery() { },
160
+ updateCustomQuery() { },
141
161
  onQueryMaterialized() { },
142
162
  onTransactionCommit() {
143
163
  return () => { };
@@ -173,16 +193,35 @@ async function runAst(ast, isTransformed) {
173
193
  if (!config.authData) {
174
194
  console.warn(chalk.yellow('No auth data provided. Permission rules will compare to `NULL` wherever an auth data field is referenced.'));
175
195
  }
176
- ast = transformAndHashQuery(lc, '', ast, permissions, authData, false).transformedAst;
196
+ ast = transformAndHashQuery(lc, clientGroupID, ast, permissions, authData, false).transformedAst;
177
197
  console.log(chalk.blue.bold('\n\n=== Query After Permissions: ===\n'));
178
198
  console.log(await formatOutput(ast.table + astToZQL(ast)));
179
199
  }
180
200
  const tableSpecs = computeZqlSpecs(lc, db);
181
201
  const pipeline = buildPipeline(ast, host);
182
202
  const start = performance.now();
203
+ if (config.outputSyncedRows) {
204
+ console.log(chalk.blue.bold('\n\n=== Synced rows: ===\n'));
205
+ }
206
+ let syncedRowCount = 0;
207
+ const rowsByTable = {};
183
208
  for (const rowChange of hydrate(pipeline, hashOfAST(ast), tableSpecs)) {
184
- // no-op, just need to consume all of the iterable returned by hydrate.
185
- rowChange;
209
+ assert(rowChange.type === 'add');
210
+ syncedRowCount++;
211
+ if (config.outputSyncedRows) {
212
+ let rows = rowsByTable[rowChange.table];
213
+ if (!rows) {
214
+ rows = [];
215
+ rowsByTable[rowChange.table] = rows;
216
+ }
217
+ rows.push(rowChange.row);
218
+ }
219
+ }
220
+ if (config.outputSyncedRows) {
221
+ for (const [source, rows] of Object.entries(rowsByTable)) {
222
+ console.log(chalk.bold(`${source}:`), rows);
223
+ }
224
+ console.log(chalk.bold('total synced rows:'), syncedRowCount);
186
225
  }
187
226
  const end = performance.now();
188
227
  return [start, end];
@@ -210,24 +249,44 @@ async function runHash(hash) {
210
249
  }
211
250
  console.log(chalk.blue.bold('=== Query Stats: ===\n'));
212
251
  showStats();
252
+ if (config.outputVendedRows) {
253
+ console.log(chalk.blue.bold('=== Vended Rows: ===\n'));
254
+ for (const source of sources.values()) {
255
+ const entries = [
256
+ ...(runtimeDebugStats
257
+ .getVendedRows()
258
+ .get(clientGroupID)
259
+ ?.get(source.table)
260
+ ?.entries() ?? []),
261
+ ];
262
+ console.log(chalk.bold(`${source.table}:`), Object.fromEntries(entries));
263
+ }
264
+ }
213
265
  console.log(chalk.blue.bold('\n\n=== Query Plans: ===\n'));
214
266
  explainQueries();
215
267
  function showStats() {
216
268
  let totalRowsConsidered = 0;
217
269
  for (const source of sources.values()) {
218
- const entires = [
219
- ...(runtimeDebugStats.getRowsVended('')?.get(source.table)?.entries() ??
220
- []),
270
+ const entries = [
271
+ ...(runtimeDebugStats
272
+ .getVendedRowCounts()
273
+ .get(clientGroupID)
274
+ ?.get(source.table)
275
+ ?.entries() ?? []),
221
276
  ];
222
- totalRowsConsidered += entires.reduce((acc, entry) => acc + entry[1], 0);
223
- console.log(chalk.bold(source.table + ' vended:'), entires);
277
+ totalRowsConsidered += entries.reduce((acc, entry) => acc + entry[1], 0);
278
+ console.log(chalk.bold(source.table + ' vended:'), Object.fromEntries(entries));
224
279
  }
225
280
  console.log(chalk.bold('total rows considered:'), colorRowsConsidered(totalRowsConsidered));
226
281
  console.log(chalk.bold('time:'), colorTime(end - start), 'ms');
227
282
  }
228
283
  function explainQueries() {
229
284
  for (const source of sources.values()) {
230
- const queries = runtimeDebugStats.getRowsVended('')?.get(source.table)?.keys() ?? [];
285
+ const queries = runtimeDebugStats
286
+ .getVendedRowCounts()
287
+ .get(clientGroupID)
288
+ ?.get(source.table)
289
+ ?.keys() ?? [];
231
290
  for (const query of queries) {
232
291
  console.log(chalk.bold('query'), query);
233
292
  console.log(db
@@ -1 +1 @@
1
- {"version":3,"file":"bin-analyze.js","sourceRoot":"","sources":["../../../../analyze-query/src/bin-analyze.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bin-analyze.js","sourceRoot":"","sources":["../../../../analyze-query/src/bin-analyze.ts"],"names":[],"mappings":"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"}
@@ -813,7 +813,7 @@ function isTwoHop(r) {
813
813
  // ../zql/src/query/query-impl.ts
814
814
  import { resolver } from "@rocicorp/resolver";
815
815
 
816
- // ../zero-protocol/src/ast-hash.ts
816
+ // ../zero-protocol/src/query-hash.ts
817
817
  var hashCache = /* @__PURE__ */ new WeakMap();
818
818
  function hashOfAST(ast) {
819
819
  const normalized = normalizeAST(ast);
@@ -825,6 +825,10 @@ function hashOfAST(ast) {
825
825
  hashCache.set(normalized, hash2);
826
826
  return hash2;
827
827
  }
828
+ function hashOfNameAndArgs(name, args) {
829
+ const argsString = JSON.stringify(args);
830
+ return h64(`${name}:${argsString}`).toString(36);
831
+ }
828
832
 
829
833
  // ../zql/src/ivm/filter-operators.ts
830
834
  var throwFilterOutput = {
@@ -3115,7 +3119,14 @@ var NotImplementedError = class extends Error {
3115
3119
  // ../zql/src/query/query-impl.ts
3116
3120
  var astSymbol = Symbol();
3117
3121
  function newQuery(delegate, schema, table) {
3118
- return new QueryImpl(delegate, schema, table, { table }, defaultFormat);
3122
+ return new QueryImpl(
3123
+ delegate,
3124
+ schema,
3125
+ table,
3126
+ { table },
3127
+ defaultFormat,
3128
+ void 0
3129
+ );
3119
3130
  }
3120
3131
  function staticParam(anchorClass, field) {
3121
3132
  return {
@@ -3136,13 +3147,28 @@ var AbstractQuery = class {
3136
3147
  #hash = "";
3137
3148
  #system;
3138
3149
  #currentJunction;
3139
- constructor(schema, tableName, ast, format, system, currentJunction) {
3150
+ customQueryID;
3151
+ constructor(schema, tableName, ast, format, system, customQueryID, currentJunction) {
3140
3152
  this.#schema = schema;
3141
3153
  this.#tableName = tableName;
3142
3154
  this.#ast = ast;
3143
3155
  this.format = format;
3144
3156
  this.#system = system;
3145
3157
  this.#currentJunction = currentJunction;
3158
+ this.customQueryID = customQueryID;
3159
+ }
3160
+ nameAndArgs(name, args) {
3161
+ return this[newQuerySymbol](
3162
+ this.#schema,
3163
+ this.#tableName,
3164
+ this.#ast,
3165
+ this.format,
3166
+ {
3167
+ name,
3168
+ args
3169
+ },
3170
+ this.#currentJunction
3171
+ );
3146
3172
  }
3147
3173
  get [astSymbol]() {
3148
3174
  return this.#ast;
@@ -3164,6 +3190,7 @@ var AbstractQuery = class {
3164
3190
  ...this.format,
3165
3191
  singular: true
3166
3192
  },
3193
+ this.customQueryID,
3167
3194
  this.#currentJunction
3168
3195
  );
3169
3196
  whereExists = (relationship, cb) => this.where(({ exists }) => exists(relationship, cb));
@@ -3189,6 +3216,7 @@ var AbstractQuery = class {
3189
3216
  relationships: {},
3190
3217
  singular: cardinality === "one"
3191
3218
  },
3219
+ this.customQueryID,
3192
3220
  void 0
3193
3221
  );
3194
3222
  if (cardinality === "one") {
@@ -3234,6 +3262,7 @@ var AbstractQuery = class {
3234
3262
  [relationship]: sq.format
3235
3263
  }
3236
3264
  },
3265
+ this.customQueryID,
3237
3266
  this.#currentJunction
3238
3267
  );
3239
3268
  }
@@ -3253,6 +3282,7 @@ var AbstractQuery = class {
3253
3282
  relationships: {},
3254
3283
  singular: secondRelation.cardinality === "one"
3255
3284
  },
3285
+ this.customQueryID,
3256
3286
  relationship
3257
3287
  )
3258
3288
  );
@@ -3305,6 +3335,7 @@ var AbstractQuery = class {
3305
3335
  [relationship]: sq.format
3306
3336
  }
3307
3337
  },
3338
+ this.customQueryID,
3308
3339
  this.#currentJunction
3309
3340
  );
3310
3341
  }
@@ -3336,6 +3367,7 @@ var AbstractQuery = class {
3336
3367
  where
3337
3368
  },
3338
3369
  this.format,
3370
+ this.customQueryID,
3339
3371
  this.#currentJunction
3340
3372
  );
3341
3373
  };
@@ -3350,6 +3382,7 @@ var AbstractQuery = class {
3350
3382
  }
3351
3383
  },
3352
3384
  this.format,
3385
+ this.customQueryID,
3353
3386
  this.#currentJunction
3354
3387
  );
3355
3388
  limit = (limit) => {
@@ -3372,6 +3405,7 @@ var AbstractQuery = class {
3372
3405
  limit
3373
3406
  },
3374
3407
  this.format,
3408
+ this.customQueryID,
3375
3409
  this.#currentJunction
3376
3410
  );
3377
3411
  };
@@ -3389,6 +3423,7 @@ var AbstractQuery = class {
3389
3423
  orderBy: [...this.#ast.orderBy ?? [], [field, direction]]
3390
3424
  },
3391
3425
  this.format,
3426
+ this.customQueryID,
3392
3427
  this.#currentJunction
3393
3428
  );
3394
3429
  };
@@ -3408,6 +3443,7 @@ var AbstractQuery = class {
3408
3443
  alias: `${SUBQ_PREFIX}${relationship}`
3409
3444
  },
3410
3445
  defaultFormat,
3446
+ this.customQueryID,
3411
3447
  void 0
3412
3448
  )
3413
3449
  );
@@ -3444,6 +3480,7 @@ var AbstractQuery = class {
3444
3480
  alias: `${SUBQ_PREFIX}zhidden_${relationship}`
3445
3481
  },
3446
3482
  defaultFormat,
3483
+ this.customQueryID,
3447
3484
  relationship
3448
3485
  )
3449
3486
  );
@@ -3525,15 +3562,23 @@ var completedAstSymbol = Symbol();
3525
3562
  var QueryImpl = class _QueryImpl extends AbstractQuery {
3526
3563
  #delegate;
3527
3564
  #system;
3528
- constructor(delegate, schema, tableName, ast = { table: tableName }, format = defaultFormat, system = "client", currentJunction) {
3529
- super(schema, tableName, ast, format, system, currentJunction);
3565
+ constructor(delegate, schema, tableName, ast = { table: tableName }, format = defaultFormat, system = "client", customQueryID, currentJunction) {
3566
+ super(
3567
+ schema,
3568
+ tableName,
3569
+ ast,
3570
+ format,
3571
+ system,
3572
+ customQueryID,
3573
+ currentJunction
3574
+ );
3530
3575
  this.#system = system;
3531
3576
  this.#delegate = delegate;
3532
3577
  }
3533
3578
  get [completedAstSymbol]() {
3534
3579
  return this._completeAst();
3535
3580
  }
3536
- [newQuerySymbol](schema, tableName, ast, format, currentJunction) {
3581
+ [newQuerySymbol](schema, tableName, ast, format, customQueryID, currentJunction) {
3537
3582
  return new _QueryImpl(
3538
3583
  this.#delegate,
3539
3584
  schema,
@@ -3541,6 +3586,7 @@ var QueryImpl = class _QueryImpl extends AbstractQuery {
3541
3586
  ast,
3542
3587
  format,
3543
3588
  this.#system,
3589
+ customQueryID,
3544
3590
  currentJunction
3545
3591
  );
3546
3592
  }
@@ -3555,16 +3601,17 @@ var QueryImpl = class _QueryImpl extends AbstractQuery {
3555
3601
  const ast = this._completeAst();
3556
3602
  const queryCompleteResolver = resolver();
3557
3603
  let queryComplete = this.#delegate.defaultQueryComplete;
3558
- const removeServerQuery = this.#delegate.addServerQuery(ast, ttl, (got) => {
3604
+ const gotCallback = (got) => {
3559
3605
  if (got) {
3560
3606
  const t1 = Date.now();
3561
3607
  this.#delegate.onQueryMaterialized(this.hash(), ast, t1 - t0);
3562
3608
  queryComplete = true;
3563
3609
  queryCompleteResolver.resolve(true);
3564
3610
  }
3565
- });
3611
+ };
3612
+ const removeServerQuery = this.customQueryID ? this.#delegate.addCustomQuery(this.customQueryID, ttl, gotCallback) : this.#delegate.addServerQuery(ast, ttl, gotCallback);
3566
3613
  const updateTTL = (newTTL) => {
3567
- this.#delegate.updateServerQuery(ast, newTTL);
3614
+ this.customQueryID ? this.#delegate.updateCustomQuery(this.customQueryID, newTTL) : this.#delegate.updateServerQuery(ast, newTTL);
3568
3615
  };
3569
3616
  const input = buildPipeline(ast, this.#delegate);
3570
3617
  let removeCommitObserver;
@@ -3688,6 +3735,7 @@ export {
3688
3735
  mapAST,
3689
3736
  mapCondition,
3690
3737
  hashOfAST,
3738
+ hashOfNameAndArgs,
3691
3739
  filterPush,
3692
3740
  ExpressionBuilder,
3693
3741
  createPredicate,
@@ -3704,4 +3752,4 @@ export {
3704
3752
  newQuerySymbol,
3705
3753
  AbstractQuery
3706
3754
  };
3707
- //# sourceMappingURL=chunk-UAWIBMWA.js.map
3755
+ //# sourceMappingURL=chunk-5ROWRYFH.js.map