@rocicorp/zero 0.25.0-canary.1 → 0.25.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.
Files changed (166) hide show
  1. package/out/{chunk-AIPM77UE.js → chunk-QZSBDHTA.js} +509 -311
  2. package/out/chunk-QZSBDHTA.js.map +7 -0
  3. package/out/{chunk-55BOUNXO.js → chunk-YTVU4GOY.js} +19 -3
  4. package/out/{chunk-55BOUNXO.js.map → chunk-YTVU4GOY.js.map} +3 -3
  5. package/out/react.js +44 -25
  6. package/out/react.js.map +2 -2
  7. package/out/shared/src/error.d.ts +4 -0
  8. package/out/shared/src/error.d.ts.map +1 -0
  9. package/out/shared/src/error.js +70 -0
  10. package/out/shared/src/error.js.map +1 -0
  11. package/out/solid.js +44 -18
  12. package/out/solid.js.map +2 -2
  13. package/out/zero/package.json +3 -2
  14. package/out/zero/src/zero-out.d.ts +3 -0
  15. package/out/zero/src/zero-out.d.ts.map +1 -0
  16. package/out/zero/src/zero-out.js +13 -0
  17. package/out/zero/src/zero-out.js.map +1 -0
  18. package/out/zero-cache/src/custom/fetch.js +3 -3
  19. package/out/zero-cache/src/custom/fetch.js.map +1 -1
  20. package/out/zero-cache/src/scripts/decommission.d.ts +50 -0
  21. package/out/zero-cache/src/scripts/decommission.d.ts.map +1 -0
  22. package/out/zero-cache/src/scripts/decommission.js +51 -0
  23. package/out/zero-cache/src/scripts/decommission.js.map +1 -0
  24. package/out/zero-cache/src/server/inspector-delegate.d.ts.map +1 -1
  25. package/out/zero-cache/src/server/inspector-delegate.js +2 -1
  26. package/out/zero-cache/src/server/inspector-delegate.js.map +1 -1
  27. package/out/zero-cache/src/services/mutagen/pusher.d.ts +17 -21
  28. package/out/zero-cache/src/services/mutagen/pusher.d.ts.map +1 -1
  29. package/out/zero-cache/src/services/mutagen/pusher.js +4 -4
  30. package/out/zero-cache/src/services/mutagen/pusher.js.map +1 -1
  31. package/out/zero-cache/src/services/view-syncer/drain-coordinator.d.ts +1 -0
  32. package/out/zero-cache/src/services/view-syncer/drain-coordinator.d.ts.map +1 -1
  33. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js +5 -0
  34. package/out/zero-cache/src/services/view-syncer/drain-coordinator.js.map +1 -1
  35. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts +7 -0
  36. package/out/zero-cache/src/services/view-syncer/view-syncer.d.ts.map +1 -1
  37. package/out/zero-cache/src/services/view-syncer/view-syncer.js +24 -1
  38. package/out/zero-cache/src/services/view-syncer/view-syncer.js.map +1 -1
  39. package/out/zero-cache/src/types/streams.d.ts +1 -1
  40. package/out/zero-cache/src/types/streams.d.ts.map +1 -1
  41. package/out/zero-cache/src/types/streams.js +19 -9
  42. package/out/zero-cache/src/types/streams.js.map +1 -1
  43. package/out/zero-cache/src/types/subscription.d.ts +16 -1
  44. package/out/zero-cache/src/types/subscription.d.ts.map +1 -1
  45. package/out/zero-cache/src/types/subscription.js +41 -5
  46. package/out/zero-cache/src/types/subscription.js.map +1 -1
  47. package/out/zero-cache/src/workers/syncer.d.ts.map +1 -1
  48. package/out/zero-cache/src/workers/syncer.js +1 -3
  49. package/out/zero-cache/src/workers/syncer.js.map +1 -1
  50. package/out/zero-client/src/client/connection-manager.d.ts +21 -5
  51. package/out/zero-client/src/client/connection-manager.d.ts.map +1 -1
  52. package/out/zero-client/src/client/connection-status-enum.d.ts +2 -0
  53. package/out/zero-client/src/client/connection-status-enum.d.ts.map +1 -1
  54. package/out/zero-client/src/client/connection.d.ts +11 -3
  55. package/out/zero-client/src/client/connection.d.ts.map +1 -1
  56. package/out/zero-client/src/client/error.d.ts +33 -161
  57. package/out/zero-client/src/client/error.d.ts.map +1 -1
  58. package/out/zero-client/src/client/mutation-tracker.d.ts.map +1 -1
  59. package/out/zero-client/src/client/options.d.ts +9 -16
  60. package/out/zero-client/src/client/options.d.ts.map +1 -1
  61. package/out/zero-client/src/client/query-manager.d.ts.map +1 -1
  62. package/out/zero-client/src/client/zero-rep.d.ts +2 -0
  63. package/out/zero-client/src/client/zero-rep.d.ts.map +1 -1
  64. package/out/zero-client/src/client/zero.d.ts.map +1 -1
  65. package/out/zero-client/src/mod.d.ts +4 -1
  66. package/out/zero-client/src/mod.d.ts.map +1 -1
  67. package/out/zero-client/src/types/query-result.d.ts +23 -0
  68. package/out/zero-client/src/types/query-result.d.ts.map +1 -0
  69. package/out/zero-protocol/src/application-error.d.ts +33 -0
  70. package/out/zero-protocol/src/application-error.d.ts.map +1 -0
  71. package/out/zero-protocol/src/application-error.js +37 -0
  72. package/out/zero-protocol/src/application-error.js.map +1 -0
  73. package/out/zero-protocol/src/custom-queries.d.ts +27 -95
  74. package/out/zero-protocol/src/custom-queries.d.ts.map +1 -1
  75. package/out/zero-protocol/src/custom-queries.js +9 -24
  76. package/out/zero-protocol/src/custom-queries.js.map +1 -1
  77. package/out/zero-protocol/src/down.d.ts +7 -9
  78. package/out/zero-protocol/src/down.d.ts.map +1 -1
  79. package/out/zero-protocol/src/error.d.ts +42 -0
  80. package/out/zero-protocol/src/error.d.ts.map +1 -1
  81. package/out/zero-protocol/src/error.js +7 -0
  82. package/out/zero-protocol/src/error.js.map +1 -1
  83. package/out/zero-protocol/src/mutations-patch.d.ts +3 -0
  84. package/out/zero-protocol/src/mutations-patch.d.ts.map +1 -1
  85. package/out/zero-protocol/src/poke.d.ts +2 -0
  86. package/out/zero-protocol/src/poke.d.ts.map +1 -1
  87. package/out/zero-protocol/src/protocol-version.d.ts +1 -1
  88. package/out/zero-protocol/src/protocol-version.d.ts.map +1 -1
  89. package/out/zero-protocol/src/protocol-version.js +2 -1
  90. package/out/zero-protocol/src/protocol-version.js.map +1 -1
  91. package/out/zero-protocol/src/push.d.ts +7 -0
  92. package/out/zero-protocol/src/push.d.ts.map +1 -1
  93. package/out/zero-protocol/src/push.js +1 -0
  94. package/out/zero-protocol/src/push.js.map +1 -1
  95. package/out/zero-react/src/mod.d.ts +5 -1
  96. package/out/zero-react/src/mod.d.ts.map +1 -1
  97. package/out/zero-react/src/use-query.d.ts +1 -21
  98. package/out/zero-react/src/use-query.d.ts.map +1 -1
  99. package/out/zero-react/src/zero-provider.d.ts.map +1 -1
  100. package/out/zero-server/src/mod.d.ts +5 -4
  101. package/out/zero-server/src/mod.d.ts.map +1 -1
  102. package/out/zero-server/src/mod.js +5 -4
  103. package/out/zero-server/src/mod.js.map +1 -1
  104. package/out/zero-server/src/process-mutations.d.ts.map +1 -1
  105. package/out/zero-server/src/process-mutations.js +181 -68
  106. package/out/zero-server/src/process-mutations.js.map +1 -1
  107. package/out/zero-server/src/queries/process-queries.d.ts +4 -3
  108. package/out/zero-server/src/queries/process-queries.d.ts.map +1 -1
  109. package/out/zero-server/src/queries/process-queries.js +85 -19
  110. package/out/zero-server/src/queries/process-queries.js.map +1 -1
  111. package/out/zero-solid/src/mod.d.ts +8 -0
  112. package/out/zero-solid/src/mod.d.ts.map +1 -1
  113. package/out/zero-solid/src/solid-view.d.ts +3 -23
  114. package/out/zero-solid/src/solid-view.d.ts.map +1 -1
  115. package/out/zero-solid/src/use-query.d.ts +1 -1
  116. package/out/zero-solid/src/use-query.d.ts.map +1 -1
  117. package/out/zero-solid/src/use-zero.d.ts +1 -0
  118. package/out/zero-solid/src/use-zero.d.ts.map +1 -1
  119. package/out/zero.js +4 -2
  120. package/out/zql/src/planner/planner-builder.d.ts +2 -1
  121. package/out/zql/src/planner/planner-builder.d.ts.map +1 -1
  122. package/out/zql/src/planner/planner-builder.js +6 -6
  123. package/out/zql/src/planner/planner-builder.js.map +1 -1
  124. package/out/zql/src/planner/planner-connection.d.ts +9 -3
  125. package/out/zql/src/planner/planner-connection.d.ts.map +1 -1
  126. package/out/zql/src/planner/planner-connection.js +38 -82
  127. package/out/zql/src/planner/planner-connection.js.map +1 -1
  128. package/out/zql/src/planner/planner-debug.d.ts +37 -7
  129. package/out/zql/src/planner/planner-debug.d.ts.map +1 -1
  130. package/out/zql/src/planner/planner-debug.js +131 -80
  131. package/out/zql/src/planner/planner-debug.js.map +1 -1
  132. package/out/zql/src/planner/planner-fan-in.d.ts +5 -3
  133. package/out/zql/src/planner/planner-fan-in.d.ts.map +1 -1
  134. package/out/zql/src/planner/planner-fan-in.js +41 -23
  135. package/out/zql/src/planner/planner-fan-in.js.map +1 -1
  136. package/out/zql/src/planner/planner-fan-out.d.ts +5 -3
  137. package/out/zql/src/planner/planner-fan-out.d.ts.map +1 -1
  138. package/out/zql/src/planner/planner-fan-out.js +22 -5
  139. package/out/zql/src/planner/planner-fan-out.js.map +1 -1
  140. package/out/zql/src/planner/planner-graph.d.ts +2 -2
  141. package/out/zql/src/planner/planner-graph.d.ts.map +1 -1
  142. package/out/zql/src/planner/planner-graph.js +17 -48
  143. package/out/zql/src/planner/planner-graph.js.map +1 -1
  144. package/out/zql/src/planner/planner-join.d.ts +61 -6
  145. package/out/zql/src/planner/planner-join.d.ts.map +1 -1
  146. package/out/zql/src/planner/planner-join.js +148 -65
  147. package/out/zql/src/planner/planner-join.js.map +1 -1
  148. package/out/zql/src/planner/planner-node.d.ts +29 -2
  149. package/out/zql/src/planner/planner-node.d.ts.map +1 -1
  150. package/out/zql/src/planner/planner-source.d.ts +1 -1
  151. package/out/zql/src/planner/planner-source.d.ts.map +1 -1
  152. package/out/zql/src/planner/planner-source.js +2 -2
  153. package/out/zql/src/planner/planner-source.js.map +1 -1
  154. package/out/zql/src/planner/planner-terminus.d.ts +4 -3
  155. package/out/zql/src/planner/planner-terminus.d.ts.map +1 -1
  156. package/out/zql/src/planner/planner-terminus.js +4 -4
  157. package/out/zql/src/planner/planner-terminus.js.map +1 -1
  158. package/out/zql/src/query/error.d.ts +4 -0
  159. package/out/zql/src/query/error.d.ts.map +1 -0
  160. package/out/zql/src/query/error.js +9 -0
  161. package/out/zql/src/query/error.js.map +1 -0
  162. package/out/zql/src/query/named.d.ts.map +1 -1
  163. package/out/zql/src/query/named.js +9 -1
  164. package/out/zql/src/query/named.js.map +1 -1
  165. package/package.json +3 -2
  166. package/out/chunk-AIPM77UE.js.map +0 -7
@@ -1,8 +1,27 @@
1
1
  import { assert } from "../../shared/src/asserts.js";
2
2
  import * as v from "../../shared/src/valita.js";
3
3
  import { MutationAlreadyProcessedError } from "../../zero-cache/src/services/mutagen/error.js";
4
+ import { ApplicationError, isApplicationError, wrapWithApplicationError, } from "../../zero-protocol/src/application-error.js";
5
+ import { ErrorKind } from "../../zero-protocol/src/error-kind.js";
6
+ import { ErrorOrigin } from "../../zero-protocol/src/error-origin.js";
7
+ import { ErrorReason } from "../../zero-protocol/src/error-reason.js";
4
8
  import { pushBodySchema, pushParamsSchema, } from "../../zero-protocol/src/push.js";
5
9
  import { createLogContext } from "./logging.js";
10
+ import { getErrorDetails, getErrorMessage } from "../../shared/src/error.js";
11
+ const applicationErrorWrapper = async (fn) => {
12
+ try {
13
+ return await fn();
14
+ }
15
+ catch (error) {
16
+ if (error instanceof DatabaseTransactionError ||
17
+ error instanceof OutOfOrderMutation ||
18
+ error instanceof MutationAlreadyProcessedError ||
19
+ isApplicationError(error)) {
20
+ throw error;
21
+ }
22
+ throw wrapWithApplicationError(error);
23
+ }
24
+ };
6
25
  export async function handleMutationRequest(cb, queryOrQueryString, body, logLevel) {
7
26
  if (logLevel === undefined) {
8
27
  if (queryOrQueryString instanceof Request && typeof body === 'string') {
@@ -12,81 +31,146 @@ export async function handleMutationRequest(cb, queryOrQueryString, body, logLev
12
31
  logLevel = 'info';
13
32
  }
14
33
  }
15
- let queryString;
16
- if (queryOrQueryString instanceof Request) {
17
- const url = new URL(queryOrQueryString.url);
18
- queryString = url.searchParams;
19
- body = await queryOrQueryString.json();
34
+ const lc = createLogContext(logLevel).withContext('PushProcessor');
35
+ let mutationIDs = [];
36
+ let req;
37
+ try {
38
+ let rawBody;
39
+ if (queryOrQueryString instanceof Request) {
40
+ rawBody = await queryOrQueryString.json();
41
+ }
42
+ else {
43
+ rawBody = body;
44
+ }
45
+ req = v.parse(rawBody, pushBodySchema);
46
+ mutationIDs = req.mutations.map(m => ({
47
+ id: m.id,
48
+ clientID: m.clientID,
49
+ }));
20
50
  }
21
- else {
22
- queryString = queryOrQueryString;
51
+ catch (error) {
52
+ lc.error?.('Failed to parse push body', error);
53
+ const message = `Failed to parse push body: ${getErrorMessage(error)}`;
54
+ const details = getErrorDetails(error);
55
+ return {
56
+ kind: ErrorKind.PushFailed,
57
+ origin: ErrorOrigin.Server,
58
+ reason: ErrorReason.Parse,
59
+ message,
60
+ mutationIDs,
61
+ ...(details ? { details } : {}),
62
+ };
23
63
  }
24
- const req = v.parse(body, pushBodySchema);
25
- if (queryString instanceof URLSearchParams) {
26
- queryString = Object.fromEntries(queryString);
64
+ let queryParams;
65
+ try {
66
+ let queryString;
67
+ if (queryOrQueryString instanceof Request) {
68
+ const url = new URL(queryOrQueryString.url);
69
+ queryString = url.searchParams;
70
+ }
71
+ else {
72
+ queryString = queryOrQueryString;
73
+ }
74
+ if (queryString instanceof URLSearchParams) {
75
+ queryString = Object.fromEntries(queryString);
76
+ }
77
+ queryParams = v.parse(queryString, pushParamsSchema, 'passthrough');
27
78
  }
28
- const queryParams = v.parse(queryString, pushParamsSchema, 'passthrough');
29
- if (req.pushVersion !== 1) {
79
+ catch (error) {
80
+ lc.error?.('Failed to parse push query parameters', error);
81
+ const message = `Failed to parse push query parameters: ${getErrorMessage(error)}`;
82
+ const details = getErrorDetails(error);
30
83
  return {
31
- error: 'unsupportedPushVersion',
84
+ kind: ErrorKind.PushFailed,
85
+ origin: ErrorOrigin.Server,
86
+ reason: ErrorReason.Parse,
87
+ message,
88
+ mutationIDs,
89
+ ...(details ? { details } : {}),
32
90
  };
33
91
  }
34
- const transactor = new Transactor(req, queryParams, logLevel);
92
+ if (req.pushVersion !== 1) {
93
+ const response = {
94
+ kind: ErrorKind.PushFailed,
95
+ origin: ErrorOrigin.Server,
96
+ reason: ErrorReason.UnsupportedPushVersion,
97
+ mutationIDs,
98
+ message: `Unsupported push version: ${req.pushVersion}`,
99
+ };
100
+ return response;
101
+ }
35
102
  const responses = [];
36
- for (const m of req.mutations) {
37
- assert(m.type === 'custom', 'Expected custom mutation');
38
- const res = await cb((dbProvider, innerCb) => transactor.transact(dbProvider, m, innerCb), m);
39
- responses.push(res);
40
- // We only stop processing if the mutation is out of order.
41
- // If the mutation has already been processed or if it returns an application error,
42
- // we continue processing the next mutation.
43
- if ('error' in res.result && res.result.error === 'oooMutation') {
44
- break;
103
+ let processedCount = 0;
104
+ try {
105
+ const transactor = new Transactor(req, queryParams, lc);
106
+ for (const m of req.mutations) {
107
+ assert(m.type === 'custom', 'Expected custom mutation');
108
+ const transactProxy = (dbProvider, innerCb) => transactor.transact(dbProvider, m, (tx, name, args) => applicationErrorWrapper(() => innerCb(tx, name, args)));
109
+ try {
110
+ const res = await applicationErrorWrapper(() => cb(transactProxy, m));
111
+ responses.push(res);
112
+ processedCount++;
113
+ }
114
+ catch (error) {
115
+ if (!isApplicationError(error)) {
116
+ throw error;
117
+ }
118
+ lc.warn?.(`Application error processing mutation ${m.id} for client ${m.clientID}`, error);
119
+ responses.push(makeAppErrorResponse(m, error));
120
+ processedCount++;
121
+ }
45
122
  }
123
+ return {
124
+ mutations: responses,
125
+ };
126
+ }
127
+ catch (error) {
128
+ lc.error?.('Failed to process push request', error);
129
+ // only include mutationIDs for mutations that were not processed
130
+ const unprocessedMutationIDs = mutationIDs.slice(processedCount);
131
+ const message = getErrorMessage(error);
132
+ const details = getErrorDetails(error);
133
+ return {
134
+ kind: ErrorKind.PushFailed,
135
+ origin: ErrorOrigin.Server,
136
+ reason: error instanceof OutOfOrderMutation
137
+ ? ErrorReason.OutOfOrderMutation
138
+ : error instanceof DatabaseTransactionError
139
+ ? ErrorReason.Database
140
+ : ErrorReason.Internal,
141
+ message,
142
+ mutationIDs: unprocessedMutationIDs,
143
+ ...(details ? { details } : {}),
144
+ };
46
145
  }
47
- return {
48
- mutations: responses,
49
- };
50
146
  }
51
147
  class Transactor {
52
148
  #req;
53
149
  #params;
54
150
  #lc;
55
- constructor(req, params, logLevel) {
151
+ constructor(req, params, lc) {
56
152
  this.#req = req;
57
153
  this.#params = params;
58
- this.#lc = createLogContext(logLevel).withContext('PushProcessor');
154
+ this.#lc = lc;
59
155
  }
60
156
  transact = async (dbProvider, mutation, cb) => {
61
- let caughtError = undefined;
157
+ let appError = undefined;
62
158
  for (;;) {
63
159
  try {
64
- const ret = await this.#transactImpl(dbProvider, mutation, cb, caughtError);
65
- // The first time through we caught an error.
66
- // We want to report that error as it was an application
67
- // level error.
68
- if (caughtError !== undefined) {
69
- this.#lc.warn?.(`Mutation ${mutation.id} for client ${mutation.clientID} was retried after an error: ${caughtError}`);
70
- return makeAppErrorResponse(mutation, caughtError);
160
+ const ret = await this.#transactImpl(dbProvider, mutation, cb, appError);
161
+ if (appError !== undefined) {
162
+ this.#lc.warn?.(`Mutation ${mutation.id} for client ${mutation.clientID} was retried after an error`, appError);
163
+ return makeAppErrorResponse(mutation, appError);
71
164
  }
72
165
  return ret;
73
166
  }
74
- catch (e) {
75
- if (e instanceof OutOfOrderMutation) {
76
- this.#lc.error?.(e);
77
- return {
78
- id: {
79
- clientID: mutation.clientID,
80
- id: mutation.id,
81
- },
82
- result: {
83
- error: 'oooMutation',
84
- details: e.message,
85
- },
86
- };
167
+ catch (error) {
168
+ if (error instanceof OutOfOrderMutation) {
169
+ this.#lc.error?.(error);
170
+ throw error;
87
171
  }
88
- if (e instanceof MutationAlreadyProcessedError) {
89
- this.#lc.warn?.(e);
172
+ if (error instanceof MutationAlreadyProcessedError) {
173
+ this.#lc.warn?.(error);
90
174
  return {
91
175
  id: {
92
176
  clientID: mutation.clientID,
@@ -94,31 +178,43 @@ class Transactor {
94
178
  },
95
179
  result: {
96
180
  error: 'alreadyProcessed',
97
- details: e.message,
181
+ details: error.message,
98
182
  },
99
183
  };
100
184
  }
101
- // We threw an error while running in error mode.
102
- // Re-throw the error and stop processing any further
103
- // mutations as all subsequent mutations will fail by being
104
- // out of order.
105
- if (caughtError !== undefined) {
106
- throw e;
185
+ if (isApplicationError(error)) {
186
+ appError = error;
187
+ this.#lc.warn?.(`Application error processing mutation ${mutation.id} for client ${mutation.clientID}`, appError);
188
+ continue;
189
+ }
190
+ if (error instanceof DatabaseTransactionError) {
191
+ this.#lc.error?.(`Database error processing mutation ${mutation.id} for client ${mutation.clientID}`, error);
192
+ }
193
+ else {
194
+ this.#lc.error?.(`Unexpected error processing mutation ${mutation.id} for client ${mutation.clientID}`, error);
107
195
  }
108
- caughtError = e;
109
- this.#lc.error?.(`Unexpected error processing mutation ${mutation.id} for client ${mutation.clientID}`, e);
196
+ throw error;
110
197
  }
111
198
  }
112
199
  };
113
- #transactImpl(dbProvider, mutation, cb, caughtError) {
114
- return dbProvider.transaction(async (dbTx, transactionHooks) => {
200
+ #transactImpl(dbProvider, mutation, cb, appError) {
201
+ let transactionPhase = 'open';
202
+ return dbProvider
203
+ .transaction(async (dbTx, transactionHooks) => {
204
+ // update the transaction phase to 'execute' after the transaction is opened
205
+ transactionPhase = 'execute';
115
206
  await this.#checkAndIncrementLastMutationID(transactionHooks, mutation.clientID, mutation.id);
116
- if (caughtError === undefined) {
117
- await cb(dbTx, mutation.name, mutation.args[0]);
207
+ if (appError === undefined) {
208
+ try {
209
+ await cb(dbTx, mutation.name, mutation.args[0]);
210
+ }
211
+ catch (appError) {
212
+ throw wrapWithApplicationError(appError);
213
+ }
118
214
  }
119
215
  else {
120
- const appError = makeAppErrorResponse(mutation, caughtError);
121
- await transactionHooks.writeMutationResult(appError);
216
+ const mutationResult = makeAppErrorResponse(mutation, appError);
217
+ await transactionHooks.writeMutationResult(mutationResult);
122
218
  }
123
219
  return {
124
220
  id: {
@@ -132,6 +228,14 @@ class Transactor {
132
228
  clientGroupID: this.#req.clientGroupID,
133
229
  clientID: mutation.clientID,
134
230
  mutationID: mutation.id,
231
+ })
232
+ .catch(error => {
233
+ if (isApplicationError(error) ||
234
+ error instanceof OutOfOrderMutation ||
235
+ error instanceof MutationAlreadyProcessedError) {
236
+ throw error;
237
+ }
238
+ throw new DatabaseTransactionError(transactionPhase, { cause: error });
135
239
  });
136
240
  }
137
241
  async #checkAndIncrementLastMutationID(transactionHooks, clientID, receivedMutationID) {
@@ -149,7 +253,7 @@ export class OutOfOrderMutation extends Error {
149
253
  super(`Client ${clientID} sent mutation ID ${receivedMutationID} but expected ${lastMutationID}`);
150
254
  }
151
255
  }
152
- function makeAppErrorResponse(m, e) {
256
+ function makeAppErrorResponse(m, error) {
153
257
  return {
154
258
  id: {
155
259
  clientID: m.clientID,
@@ -157,7 +261,8 @@ function makeAppErrorResponse(m, e) {
157
261
  },
158
262
  result: {
159
263
  error: 'app',
160
- details: e instanceof Error ? e.message : 'exception was not of type `Error`',
264
+ message: error.message,
265
+ ...(error.details ? { details: error.details } : {}),
161
266
  },
162
267
  };
163
268
  }
@@ -184,4 +289,12 @@ mutators, name) {
184
289
  assert(typeof mutator === 'function', () => `could not find mutator ${name}`);
185
290
  return mutator;
186
291
  }
292
+ class DatabaseTransactionError extends Error {
293
+ constructor(phase, options) {
294
+ super(phase === 'open'
295
+ ? `Failed to open database transaction: ${getErrorMessage(options?.cause)}`
296
+ : `Database transaction failed after opening: ${getErrorMessage(options?.cause)}`, options);
297
+ this.name = 'DatabaseTransactionError';
298
+ }
299
+ }
187
300
  //# sourceMappingURL=process-mutations.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-mutations.js","sourceRoot":"","sources":["../../../../zero-server/src/process-mutations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"process-mutations.js","sourceRoot":"","sources":["../../../../zero-server/src/process-mutations.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
+ import type { LogLevel } from '@rocicorp/logger';
1
2
  import type { ReadonlyJSONValue } from '../../../shared/src/json.ts';
2
- import { type AnyQuery } from '../../../zql/src/query/query-impl.ts';
3
+ import type { MaybePromise } from '../../../shared/src/types.ts';
3
4
  import { type TransformResponseMessage } from '../../../zero-protocol/src/custom-queries.ts';
4
5
  import type { Schema } from '../../../zero-schema/src/builder/schema-builder.ts';
5
- import type { MaybePromise } from '../../../shared/src/types.ts';
6
+ import type { AnyQuery } from '../../../zql/src/query/query-impl.ts';
6
7
  /**
7
8
  * Invokes the callback `cb` for each query in the request or JSON body.
8
9
  * The callback should return a Query or Promise<Query> that is the transformed result.
@@ -13,5 +14,5 @@ import type { MaybePromise } from '../../../shared/src/types.ts';
13
14
  */
14
15
  export declare function handleGetQueriesRequest<S extends Schema>(cb: (name: string, args: readonly ReadonlyJSONValue[]) => MaybePromise<{
15
16
  query: AnyQuery;
16
- }>, schema: S, requestOrJsonBody: Request | ReadonlyJSONValue): Promise<TransformResponseMessage>;
17
+ }>, schema: S, requestOrJsonBody: Request | ReadonlyJSONValue, logLevel?: LogLevel): Promise<TransformResponseMessage>;
17
18
  //# sourceMappingURL=process-queries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-queries.d.ts","sourceRoot":"","sources":["../../../../../zero-server/src/queries/process-queries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAC,KAAK,QAAQ,EAAC,MAAM,sCAAsC,CAAC;AAEnE,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,8CAA8C,CAAC;AACtD,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oDAAoD,CAAC;AAG/E,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAE/D;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAC5D,EAAE,EAAE,CACF,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,SAAS,iBAAiB,EAAE,KAC/B,YAAY,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAA;CAAC,CAAC,EACpC,MAAM,EAAE,CAAC,EACT,iBAAiB,EAAE,OAAO,GAAG,iBAAiB,GAC7C,OAAO,CAAC,wBAAwB,CAAC,CAwBnC"}
1
+ {"version":3,"file":"process-queries.d.ts","sourceRoot":"","sources":["../../../../../zero-server/src/queries/process-queries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAE/C,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,8BAA8B,CAAC;AAG/D,OAAO,EAIL,KAAK,wBAAwB,EAC9B,MAAM,8CAA8C,CAAC;AAItD,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,oDAAoD,CAAC;AAG/E,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,sCAAsC,CAAC;AAGnE;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAC5D,EAAE,EAAE,CACF,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,SAAS,iBAAiB,EAAE,KAC/B,YAAY,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAA;CAAC,CAAC,EACpC,MAAM,EAAE,CAAC,EACT,iBAAiB,EAAE,OAAO,GAAG,iBAAiB,EAC9C,QAAQ,CAAC,EAAE,QAAQ,GAClB,OAAO,CAAC,wBAAwB,CAAC,CA0FnC"}
@@ -1,8 +1,13 @@
1
- import {} from "../../../zql/src/query/query-impl.js";
1
+ import { getErrorDetails, getErrorMessage } from "../../../shared/src/error.js";
2
2
  import * as v from "../../../shared/src/valita.js";
3
+ import { mapAST } from "../../../zero-protocol/src/ast.js";
3
4
  import { transformRequestMessageSchema, } from "../../../zero-protocol/src/custom-queries.js";
5
+ import { ErrorKind } from "../../../zero-protocol/src/error-kind.js";
6
+ import { ErrorOrigin } from "../../../zero-protocol/src/error-origin.js";
7
+ import { ErrorReason } from "../../../zero-protocol/src/error-reason.js";
4
8
  import { clientToServer } from "../../../zero-schema/src/name-mapper.js";
5
- import { mapAST } from "../../../zero-protocol/src/ast.js";
9
+ import { QueryParseError } from "../../../zql/src/query/error.js";
10
+ import { createLogContext } from "../logging.js";
6
11
  /**
7
12
  * Invokes the callback `cb` for each query in the request or JSON body.
8
13
  * The callback should return a Query or Promise<Query> that is the transformed result.
@@ -11,24 +16,85 @@ import { mapAST } from "../../../zero-protocol/src/ast.js";
11
16
  *
12
17
  * If you need to limit concurrency, you can use a library like `p-limit` to wrap the `cb` function.
13
18
  */
14
- export async function handleGetQueriesRequest(cb, schema, requestOrJsonBody) {
15
- const nameMapper = clientToServer(schema.tables);
16
- let body;
17
- if (requestOrJsonBody instanceof Request) {
18
- body = await requestOrJsonBody.json();
19
+ export async function handleGetQueriesRequest(cb, schema, requestOrJsonBody, logLevel) {
20
+ const lc = createLogContext(logLevel ?? 'info').withContext('GetQueries');
21
+ let parsed;
22
+ let queryIDs = [];
23
+ try {
24
+ let body;
25
+ if (requestOrJsonBody instanceof Request) {
26
+ body = await requestOrJsonBody.json();
27
+ }
28
+ else {
29
+ body = requestOrJsonBody;
30
+ }
31
+ parsed = v.parse(body, transformRequestMessageSchema);
32
+ queryIDs = parsed[1].map(r => r.id);
33
+ }
34
+ catch (error) {
35
+ lc.error?.('Failed to parse get queries request', error);
36
+ const message = `Failed to parse get queries request: ${getErrorMessage(error)}`;
37
+ const details = getErrorDetails(error);
38
+ return [
39
+ 'transformFailed',
40
+ {
41
+ kind: ErrorKind.TransformFailed,
42
+ origin: ErrorOrigin.Server,
43
+ reason: ErrorReason.Parse,
44
+ message,
45
+ queryIDs,
46
+ ...(details ? { details } : {}),
47
+ },
48
+ ];
49
+ }
50
+ try {
51
+ const nameMapper = clientToServer(schema.tables);
52
+ const responses = await Promise.all(parsed[1].map(async (req) => {
53
+ let finalQuery;
54
+ try {
55
+ const result = await cb(req.name, req.args);
56
+ finalQuery = result.query;
57
+ }
58
+ catch (error) {
59
+ const message = getErrorMessage(error);
60
+ const details = getErrorDetails(error);
61
+ return {
62
+ error: error instanceof QueryParseError ? 'parse' : 'app',
63
+ id: req.id,
64
+ name: req.name,
65
+ message,
66
+ ...(details ? { details } : {}),
67
+ };
68
+ }
69
+ try {
70
+ const ast = mapAST(finalQuery.ast, nameMapper);
71
+ return {
72
+ id: req.id,
73
+ name: req.name,
74
+ ast,
75
+ };
76
+ }
77
+ catch (error) {
78
+ lc.error?.('Failed to map AST', error);
79
+ throw error;
80
+ }
81
+ }));
82
+ return ['transformed', responses];
19
83
  }
20
- else {
21
- body = requestOrJsonBody;
84
+ catch (e) {
85
+ const message = getErrorMessage(e);
86
+ const details = getErrorDetails(e);
87
+ return [
88
+ 'transformFailed',
89
+ {
90
+ kind: ErrorKind.TransformFailed,
91
+ origin: ErrorOrigin.Server,
92
+ reason: ErrorReason.Internal,
93
+ message,
94
+ queryIDs,
95
+ ...(details ? { details } : {}),
96
+ },
97
+ ];
22
98
  }
23
- const parsed = v.parse(body, transformRequestMessageSchema);
24
- const responses = await Promise.all(parsed[1].map(async (req) => {
25
- const { query } = await cb(req.name, req.args);
26
- return {
27
- id: req.id,
28
- name: req.name,
29
- ast: mapAST(query.ast, nameMapper),
30
- };
31
- }));
32
- return ['transformed', responses];
33
99
  }
34
100
  //# sourceMappingURL=process-queries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"process-queries.js","sourceRoot":"","sources":["../../../../../zero-server/src/queries/process-queries.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,MAAM,sCAAsC,CAAC;AACnE,OAAO,KAAK,CAAC,MAAM,+BAA+B,CAAC;AACnD,OAAO,EACL,6BAA6B,GAE9B,MAAM,8CAA8C,CAAC;AAEtD,OAAO,EAAC,cAAc,EAAC,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AAGzD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,EAGoC,EACpC,MAAS,EACT,iBAA8C;IAE9C,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAEjD,IAAI,IAAuB,CAAC;IAC5B,IAAI,iBAAiB,YAAY,OAAO,EAAE,CAAC;QACzC,IAAI,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,iBAAiB,CAAC;IAC3B,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,6BAA6B,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAC,GAAG,EAAC,EAAE;QACxB,MAAM,EAAC,KAAK,EAAC,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;QAE7C,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,UAAU,CAAC;SACnC,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"process-queries.js","sourceRoot":"","sources":["../../../../../zero-server/src/queries/process-queries.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,11 @@
1
+ export type { Expand } from '../../shared/src/expand.ts';
2
+ export type { ConnectionState } from '../../zero-client/src/client/connection-manager.ts';
3
+ export { ConnectionStatus } from '../../zero-client/src/client/connection-status.ts';
4
+ export type { AuthError, NeedsAuthReason, ZeroError, ZeroErrorKind, } from '../../zero-client/src/client/error.ts';
5
+ export type { QueryResultDetails } from '../../zero-client/src/types/query-result.ts';
6
+ export type { PrimaryKey } from '../../zero-protocol/src/primary-key.ts';
7
+ export type { HumanReadable } from '../../zql/src/query/query.ts';
8
+ export type { ResultType } from '../../zql/src/query/typed-view.ts';
1
9
  export { createQuery, useQuery, type CreateQueryOptions, type UseQueryOptions, } from './use-query.ts';
2
10
  export { useZeroConnectionState } from './use-zero-connection-state.ts';
3
11
  export { useZeroOnline } from './use-zero-online.ts';
@@ -1 +1 @@
1
- {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../zero-solid/src/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,QAAQ,EACR,KAAK,kBAAkB,EACvB,KAAK,eAAe,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAC,sBAAsB,EAAC,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAC,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../zero-solid/src/mod.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,MAAM,EAAC,MAAM,4BAA4B,CAAC;AACvD,YAAY,EAAC,eAAe,EAAC,MAAM,oDAAoD,CAAC;AACxF,OAAO,EAAC,gBAAgB,EAAC,MAAM,mDAAmD,CAAC;AACnF,YAAY,EACV,SAAS,EACT,eAAe,EACf,SAAS,EACT,aAAa,GACd,MAAM,uCAAuC,CAAC;AAC/C,YAAY,EAAC,kBAAkB,EAAC,MAAM,6CAA6C,CAAC;AACpF,YAAY,EAAC,UAAU,EAAC,MAAM,wCAAwC,CAAC;AACvE,YAAY,EAAC,aAAa,EAAC,MAAM,8BAA8B,CAAC;AAChE,YAAY,EAAC,UAAU,EAAC,MAAM,mCAAmC,CAAC;AAClE,OAAO,EACL,WAAW,EACX,QAAQ,EACR,KAAK,kBAAkB,EACvB,KAAK,eAAe,GACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAC,sBAAsB,EAAC,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAC,MAAM,eAAe,CAAC"}
@@ -1,36 +1,16 @@
1
1
  import { type SetStoreFunction } from 'solid-js/store';
2
2
  import { type Change, type Entry, type Format, type Input, type Output, type Query, type Schema, type TTL } from '../../zero-client/src/mod.js';
3
- import type { ReadonlyJSONValue } from '../../shared/src/json.ts';
3
+ import type { QueryResultDetails } from '../../zero-client/src/types/query-result.ts';
4
4
  import type { ErroredQuery } from '../../zero-protocol/src/custom-queries.ts';
5
- export type QueryResultDetails = Readonly<{
6
- type: 'complete';
7
- } | {
8
- type: 'unknown';
9
- } | QueryErrorDetails>;
10
- type QueryErrorDetails = {
11
- type: 'error';
12
- refetch: () => void;
13
- error: {
14
- type: 'app';
15
- queryName: string;
16
- details: ReadonlyJSONValue;
17
- } | {
18
- type: 'http';
19
- queryName: string;
20
- status: number;
21
- details: ReadonlyJSONValue;
22
- };
23
- };
24
5
  export type State = [Entry, QueryResultDetails];
25
6
  export declare const COMPLETE: QueryResultDetails;
26
7
  export declare const UNKNOWN: QueryResultDetails;
27
8
  export declare class SolidView implements Output {
28
9
  #private;
29
- constructor(input: Input, onTransactionCommit: (cb: () => void) => void, format: Format, onDestroy: () => void, queryComplete: true | ErroredQuery | Promise<true>, updateTTL: (ttl: TTL) => void, setState: SetStoreFunction<State>, refetch: () => void);
10
+ constructor(input: Input, onTransactionCommit: (cb: () => void) => void, format: Format, onDestroy: () => void, queryComplete: true | ErroredQuery | Promise<true>, updateTTL: (ttl: TTL) => void, setState: SetStoreFunction<State>, retry: () => void);
30
11
  destroy(): void;
31
12
  push(change: Change): void;
32
13
  updateTTL(ttl: TTL): void;
33
14
  }
34
- export declare function createSolidViewFactory(setState: SetStoreFunction<State>, refetch?: () => void): <TSchema extends Schema, TTable extends keyof TSchema["tables"] & string, TReturn>(_query: Query<TSchema, TTable, TReturn>, input: Input, format: Format, onDestroy: () => void, onTransactionCommit: (cb: () => void) => void, queryComplete: true | ErroredQuery | Promise<true>, updateTTL: (ttl: TTL) => void) => SolidView;
35
- export {};
15
+ export declare function createSolidViewFactory(setState: SetStoreFunction<State>, retry?: () => void): <TSchema extends Schema, TTable extends keyof TSchema["tables"] & string, TReturn>(_query: Query<TSchema, TTable, TReturn>, input: Input, format: Format, onDestroy: () => void, onTransactionCommit: (cb: () => void) => void, queryComplete: true | ErroredQuery | Promise<true>, updateTTL: (ttl: TTL) => void) => SolidView;
36
16
  //# sourceMappingURL=solid-view.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"solid-view.d.ts","sourceRoot":"","sources":["../../../../zero-solid/src/solid-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAEL,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,KAAK,EAEV,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,MAAM,EAEX,KAAK,GAAG,EAGT,MAAM,8BAA8B,CAAC;AAEtC,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,2CAA2C,CAAC;AAE5E,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CACrC;IACE,IAAI,EAAE,UAAU,CAAC;CAClB,GACD;IACE,IAAI,EAAE,SAAS,CAAC;CACjB,GACD,iBAAiB,CACpB,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,EACD;QACE,IAAI,EAAE,KAAK,CAAC;QACZ,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,iBAAiB,CAAC;KAC5B,GACD;QACE,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,iBAAiB,CAAC;KAC5B,CAAC;CACP,CAAC;AAEF,MAAM,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;AAEhD,eAAO,MAAM,QAAQ,EAAE,kBAAsD,CAAC;AAC9E,eAAO,MAAM,OAAO,EAAE,kBAAqD,CAAC;AAE5E,qBAAa,SAAU,YAAW,MAAM;;gBAqBpC,KAAK,EAAE,KAAK,EACZ,mBAAmB,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,EAC7C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,IAAI,EACrB,aAAa,EAAE,IAAI,GAAG,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,EAClD,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAC7B,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,EACjC,OAAO,EAAE,MAAM,IAAI;IAuErB,OAAO,IAAI,IAAI;IA2Bf,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAoD1B,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;CAG1B;AA8CD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,EACjC,OAAO,CAAC,EAAE,MAAM,IAAI,IAGlB,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,UAEC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,SAChC,KAAK,UACJ,MAAM,aACH,MAAM,IAAI,uBACA,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,iBAC9B,IAAI,GAAG,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,aACvC,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,eAiBhC"}
1
+ {"version":3,"file":"solid-view.d.ts","sourceRoot":"","sources":["../../../../zero-solid/src/solid-view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,gBAAgB,EAAC,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAEL,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,MAAM,EACX,KAAK,KAAK,EAEV,KAAK,MAAM,EACX,KAAK,KAAK,EACV,KAAK,MAAM,EAEX,KAAK,GAAG,EAGT,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EAEV,kBAAkB,EACnB,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,2CAA2C,CAAC;AAG5E,MAAM,MAAM,KAAK,GAAG,CAAC,KAAK,EAAE,kBAAkB,CAAC,CAAC;AAEhD,eAAO,MAAM,QAAQ,EAAE,kBAAsD,CAAC;AAC9E,eAAO,MAAM,OAAO,EAAE,kBAAqD,CAAC;AAE5E,qBAAa,SAAU,YAAW,MAAM;;gBAqBpC,KAAK,EAAE,KAAK,EACZ,mBAAmB,EAAE,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,EAC7C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,MAAM,IAAI,EACrB,aAAa,EAAE,IAAI,GAAG,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,EAClD,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAC7B,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,EACjC,KAAK,EAAE,MAAM,IAAI;IAiEnB,OAAO,IAAI,IAAI;IA2Bf,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAoD1B,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;CAG1B;AA8CD,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,gBAAgB,CAAC,KAAK,CAAC,EACjC,KAAK,CAAC,EAAE,MAAM,IAAI,IAGhB,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,UAEC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,SAChC,KAAK,UACJ,MAAM,aACH,MAAM,IAAI,uBACA,CAAC,EAAE,EAAE,MAAM,IAAI,KAAK,IAAI,iBAC9B,IAAI,GAAG,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,aACvC,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,eAiBhC"}
@@ -2,7 +2,7 @@ import { type Accessor } from 'solid-js';
2
2
  import type { Schema } from '../../zero-schema/src/builder/schema-builder.ts';
3
3
  import type { HumanReadable, Query } from '../../zql/src/query/query.ts';
4
4
  import { type TTL } from '../../zql/src/query/ttl.ts';
5
- import { type QueryResultDetails } from './solid-view.ts';
5
+ import type { QueryResultDetails } from '../../zero-client/src/types/query-result.ts';
6
6
  export type QueryResult<TReturn> = readonly [
7
7
  Accessor<HumanReadable<TReturn>>,
8
8
  Accessor<QueryResultDetails>
@@ -1 +1 @@
1
- {"version":3,"file":"use-query.d.ts","sourceRoot":"","sources":["../../../../zero-solid/src/use-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,KAAK,QAAQ,EAAC,MAAM,UAAU,CAAC;AAGhF,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,iDAAiD,CAAC;AAC5E,OAAO,KAAK,EAAC,aAAa,EAAE,KAAK,EAAC,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAiB,KAAK,GAAG,EAAC,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAGL,KAAK,kBAAkB,EAGxB,MAAM,iBAAiB,CAAC;AAGzB,MAAM,MAAM,WAAW,CAAC,OAAO,IAAI,SAAS;IAC1C,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAChC,QAAQ,CAAC,kBAAkB,CAAC;CAC7B,CAAC;AAGF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC;CACvB,CAAC;AAGF;;GAEG;AACH,wBAAgB,WAAW,CACzB,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,EAEP,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,EACtD,OAAO,CAAC,EAAE,kBAAkB,GAAG,QAAQ,CAAC,kBAAkB,CAAC,GAC1D,WAAW,CAAC,OAAO,CAAC,CAEtB;AAED,wBAAgB,QAAQ,CACtB,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,EAEP,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,EACtD,OAAO,CAAC,EAAE,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC,GACpD,WAAW,CAAC,OAAO,CAAC,CAyEtB"}
1
+ {"version":3,"file":"use-query.d.ts","sourceRoot":"","sources":["../../../../zero-solid/src/use-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAA0C,KAAK,QAAQ,EAAC,MAAM,UAAU,CAAC;AAGhF,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,iDAAiD,CAAC;AAC5E,OAAO,KAAK,EAAC,aAAa,EAAE,KAAK,EAAC,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAiB,KAAK,GAAG,EAAC,MAAM,4BAA4B,CAAC;AAQpE,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,6CAA6C,CAAC;AAEpF,MAAM,MAAM,WAAW,CAAC,OAAO,IAAI,SAAS;IAC1C,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAChC,QAAQ,CAAC,kBAAkB,CAAC;CAC7B,CAAC;AAGF;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,CAAC,EAAE,GAAG,GAAG,SAAS,CAAC;CACvB,CAAC;AAGF;;GAEG;AACH,wBAAgB,WAAW,CACzB,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,EAEP,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,EACtD,OAAO,CAAC,EAAE,kBAAkB,GAAG,QAAQ,CAAC,kBAAkB,CAAC,GAC1D,WAAW,CAAC,OAAO,CAAC,CAEtB;AAED,wBAAgB,QAAQ,CACtB,OAAO,SAAS,MAAM,EACtB,MAAM,SAAS,MAAM,OAAO,CAAC,QAAQ,CAAC,GAAG,MAAM,EAC/C,OAAO,EAEP,WAAW,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,EACtD,OAAO,CAAC,EAAE,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAC,GACpD,WAAW,CAAC,OAAO,CAAC,CAyEtB"}