on-zero 0.6.14 → 0.6.16

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 (163) hide show
  1. package/dist/cjs/asyncTasks.cjs +51 -0
  2. package/dist/cjs/asyncTasks.native.js +84 -0
  3. package/dist/cjs/asyncTasks.native.js.map +1 -0
  4. package/dist/cjs/cli.cjs +8 -1
  5. package/dist/cjs/cli.native.js +8 -1
  6. package/dist/cjs/cli.native.js.map +1 -1
  7. package/dist/cjs/createSchemaFromDrizzle.cjs +4 -4
  8. package/dist/cjs/createSchemaFromDrizzle.native.js +4 -4
  9. package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
  10. package/dist/cjs/createZeroDirectServer.cjs +269 -0
  11. package/dist/cjs/createZeroDirectServer.native.js +287 -0
  12. package/dist/cjs/createZeroDirectServer.native.js.map +1 -0
  13. package/dist/cjs/createZeroSQLiteServer.cjs +8 -277
  14. package/dist/cjs/createZeroSQLiteServer.native.js +8 -390
  15. package/dist/cjs/createZeroSQLiteServer.native.js.map +1 -1
  16. package/dist/cjs/createZeroSQLiteServer.test.cjs +36 -9
  17. package/dist/cjs/createZeroSQLiteServer.test.native.js +37 -9
  18. package/dist/cjs/createZeroSQLiteServer.test.native.js.map +1 -1
  19. package/dist/cjs/createZeroServer.test.cjs +79 -1
  20. package/dist/cjs/createZeroServer.test.native.js +85 -1
  21. package/dist/cjs/createZeroServer.test.native.js.map +1 -1
  22. package/dist/cjs/createZeroServerCore.cjs +28 -208
  23. package/dist/cjs/createZeroServerCore.native.js +33 -218
  24. package/dist/cjs/createZeroServerCore.native.js.map +1 -1
  25. package/dist/cjs/generate.cjs +15 -5
  26. package/dist/cjs/generate.native.js +15 -5
  27. package/dist/cjs/generate.native.js.map +1 -1
  28. package/dist/cjs/generate.test.cjs +55 -0
  29. package/dist/cjs/generate.test.native.js +55 -0
  30. package/dist/cjs/generate.test.native.js.map +1 -1
  31. package/dist/cjs/helpers/createMutators.cjs +2 -2
  32. package/dist/cjs/helpers/createMutators.native.js +2 -2
  33. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  34. package/dist/cjs/index.cjs +1 -0
  35. package/dist/cjs/index.native.js +1 -0
  36. package/dist/cjs/index.native.js.map +1 -1
  37. package/dist/cjs/server.cjs +2 -1
  38. package/dist/cjs/sqliteRuntime.cjs +318 -0
  39. package/dist/cjs/sqliteRuntime.native.js +438 -0
  40. package/dist/cjs/sqliteRuntime.native.js.map +1 -0
  41. package/dist/cjs/syncHost.cjs +26 -12
  42. package/dist/cjs/syncHost.native.js +32 -16
  43. package/dist/cjs/syncHost.native.js.map +1 -1
  44. package/dist/cjs/syncHost.test.cjs +15 -4
  45. package/dist/cjs/syncHost.test.native.js +16 -4
  46. package/dist/cjs/syncHost.test.native.js.map +1 -1
  47. package/dist/cjs/vite-plugin.cjs +2 -1
  48. package/dist/cjs/vite-plugin.native.js +2 -1
  49. package/dist/cjs/vite-plugin.native.js.map +1 -1
  50. package/dist/esm/asyncTasks.mjs +26 -0
  51. package/dist/esm/asyncTasks.mjs.map +1 -0
  52. package/dist/esm/asyncTasks.native.js +56 -0
  53. package/dist/esm/asyncTasks.native.js.map +1 -0
  54. package/dist/esm/cli.mjs +8 -1
  55. package/dist/esm/cli.mjs.map +1 -1
  56. package/dist/esm/cli.native.js +8 -1
  57. package/dist/esm/cli.native.js.map +1 -1
  58. package/dist/esm/createSchemaFromDrizzle.mjs +2 -2
  59. package/dist/esm/createSchemaFromDrizzle.native.js +2 -2
  60. package/dist/esm/createZeroDirectServer.mjs +241 -0
  61. package/dist/esm/createZeroDirectServer.mjs.map +1 -0
  62. package/dist/esm/createZeroDirectServer.native.js +256 -0
  63. package/dist/esm/createZeroDirectServer.native.js.map +1 -0
  64. package/dist/esm/createZeroSQLiteServer.mjs +3 -272
  65. package/dist/esm/createZeroSQLiteServer.mjs.map +1 -1
  66. package/dist/esm/createZeroSQLiteServer.native.js +3 -385
  67. package/dist/esm/createZeroSQLiteServer.native.js.map +1 -1
  68. package/dist/esm/createZeroSQLiteServer.test.mjs +36 -9
  69. package/dist/esm/createZeroSQLiteServer.test.mjs.map +1 -1
  70. package/dist/esm/createZeroSQLiteServer.test.native.js +37 -9
  71. package/dist/esm/createZeroSQLiteServer.test.native.js.map +1 -1
  72. package/dist/esm/createZeroServer.test.mjs +80 -2
  73. package/dist/esm/createZeroServer.test.mjs.map +1 -1
  74. package/dist/esm/createZeroServer.test.native.js +86 -2
  75. package/dist/esm/createZeroServer.test.native.js.map +1 -1
  76. package/dist/esm/createZeroServerCore.mjs +26 -205
  77. package/dist/esm/createZeroServerCore.mjs.map +1 -1
  78. package/dist/esm/createZeroServerCore.native.js +32 -216
  79. package/dist/esm/createZeroServerCore.native.js.map +1 -1
  80. package/dist/esm/generate.mjs +15 -5
  81. package/dist/esm/generate.mjs.map +1 -1
  82. package/dist/esm/generate.native.js +15 -5
  83. package/dist/esm/generate.native.js.map +1 -1
  84. package/dist/esm/generate.test.mjs +55 -1
  85. package/dist/esm/generate.test.mjs.map +1 -1
  86. package/dist/esm/generate.test.native.js +55 -1
  87. package/dist/esm/generate.test.native.js.map +1 -1
  88. package/dist/esm/helpers/createMutators.mjs +2 -2
  89. package/dist/esm/helpers/createMutators.mjs.map +1 -1
  90. package/dist/esm/helpers/createMutators.native.js +2 -2
  91. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  92. package/dist/esm/index.js +1 -0
  93. package/dist/esm/index.js.map +1 -1
  94. package/dist/esm/index.mjs +1 -0
  95. package/dist/esm/index.mjs.map +1 -1
  96. package/dist/esm/index.native.js +1 -0
  97. package/dist/esm/index.native.js.map +1 -1
  98. package/dist/esm/server.mjs +1 -0
  99. package/dist/esm/server.mjs.map +1 -1
  100. package/dist/esm/sqliteRuntime.mjs +289 -0
  101. package/dist/esm/sqliteRuntime.mjs.map +1 -0
  102. package/dist/esm/sqliteRuntime.native.js +406 -0
  103. package/dist/esm/sqliteRuntime.native.js.map +1 -0
  104. package/dist/esm/syncHost.mjs +24 -10
  105. package/dist/esm/syncHost.mjs.map +1 -1
  106. package/dist/esm/syncHost.native.js +30 -14
  107. package/dist/esm/syncHost.native.js.map +1 -1
  108. package/dist/esm/syncHost.test.mjs +15 -4
  109. package/dist/esm/syncHost.test.mjs.map +1 -1
  110. package/dist/esm/syncHost.test.native.js +16 -4
  111. package/dist/esm/syncHost.test.native.js.map +1 -1
  112. package/dist/esm/vite-plugin.mjs +2 -1
  113. package/dist/esm/vite-plugin.mjs.map +1 -1
  114. package/dist/esm/vite-plugin.native.js +2 -1
  115. package/dist/esm/vite-plugin.native.js.map +1 -1
  116. package/lint/ssr-guards.js +8 -7
  117. package/package.json +5 -6
  118. package/readme.md +13 -4
  119. package/src/asyncTasks.ts +33 -0
  120. package/src/cli.ts +7 -1
  121. package/src/createSchemaFromDrizzle.ts +2 -2
  122. package/src/createZeroDirectServer.ts +411 -0
  123. package/src/createZeroSQLiteServer.test.ts +28 -12
  124. package/src/createZeroSQLiteServer.ts +14 -481
  125. package/src/createZeroServer.test.ts +86 -2
  126. package/src/createZeroServerCore.ts +39 -343
  127. package/src/generate.test.ts +75 -1
  128. package/src/generate.ts +30 -4
  129. package/src/helpers/createMutators.ts +3 -3
  130. package/src/helpers/mutatorContext.ts +1 -1
  131. package/src/index.ts +1 -0
  132. package/src/server.ts +2 -0
  133. package/src/sqliteRuntime.ts +512 -0
  134. package/src/syncHost.test.ts +12 -5
  135. package/src/syncHost.ts +55 -16
  136. package/src/types.ts +21 -3
  137. package/src/vite-plugin.ts +1 -0
  138. package/test-fixtures/server-return-types.ts +20 -2
  139. package/types/asyncTasks.d.ts +7 -0
  140. package/types/asyncTasks.d.ts.map +1 -0
  141. package/types/createSchemaFromDrizzle.d.ts +2 -2
  142. package/types/createSchemaFromDrizzle.d.ts.map +1 -1
  143. package/types/createZeroDirectServer.d.ts +80 -0
  144. package/types/createZeroDirectServer.d.ts.map +1 -0
  145. package/types/createZeroSQLiteServer.d.ts +5 -30
  146. package/types/createZeroSQLiteServer.d.ts.map +1 -1
  147. package/types/createZeroServerCore.d.ts +30 -87
  148. package/types/createZeroServerCore.d.ts.map +1 -1
  149. package/types/generate.d.ts +2 -0
  150. package/types/generate.d.ts.map +1 -1
  151. package/types/helpers/createMutators.d.ts +3 -3
  152. package/types/helpers/createMutators.d.ts.map +1 -1
  153. package/types/index.d.ts +1 -0
  154. package/types/index.d.ts.map +1 -1
  155. package/types/server.d.ts +2 -0
  156. package/types/server.d.ts.map +1 -1
  157. package/types/sqliteRuntime.d.ts +71 -0
  158. package/types/sqliteRuntime.d.ts.map +1 -0
  159. package/types/syncHost.d.ts +10 -19
  160. package/types/syncHost.d.ts.map +1 -1
  161. package/types/types.d.ts +18 -2
  162. package/types/types.d.ts.map +1 -1
  163. package/types/vite-plugin.d.ts.map +1 -1
@@ -24,129 +24,26 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
24
24
  }), mod);
25
25
  var createZeroServerCore_exports = {};
26
26
  __export(createZeroServerCore_exports, {
27
- createZeroServerCore: () => createZeroServerCore,
28
- resolveServerQuery: () => resolveServerQuery
27
+ createZeroServerCore: () => createZeroServerCore
29
28
  });
30
29
  module.exports = __toCommonJS(createZeroServerCore_exports);
31
- var import_zero = require("@rocicorp/zero");
32
30
  var import_server = require("@rocicorp/zero/server");
33
- var import_createPermissions = require("./createPermissions.native.js");
31
+ var import_asyncTasks = require("./asyncTasks.native.js");
32
+ var import_createZeroDirectServer = require("./createZeroDirectServer.native.js");
34
33
  var import_createMutators = require("./helpers/createMutators.native.js");
35
34
  var import_mutatorContext = require("./helpers/mutatorContext.native.js");
36
35
  var import_queryContext = require("./helpers/queryContext.native.js");
37
- var import_modelRegistry = require("./modelRegistry.native.js");
38
- var import_run = require("./run.native.js");
39
- var import_state = require("./state.native.js");
40
- var import_where = require("./where.native.js");
41
- var import_zeroRunner = require("./zeroRunner.native.js");
42
36
  function _type_of(obj) {
43
37
  "@swc/helpers - typeof";
44
38
 
45
39
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
46
40
  }
47
- function resolveServerQuery(param) {
48
- var {
49
- authData,
50
- name,
51
- args,
52
- queries,
53
- permissions,
54
- validateQuery
55
- } = param;
56
- if (name.startsWith("permission.")) {
57
- var table = name.slice("permission.".length);
58
- var {
59
- objOrId
60
- } = args;
61
- var permission = (0, import_modelRegistry.getMutationsPermissions)(table);
62
- if (!permission) {
63
- throw new Error(`[permission] no permission defined for table: ${table}`);
64
- }
65
- (0, import_where.setEvaluatingPermission)(true);
66
- try {
67
- return (0, import_state.getZQL)()[table].where(function (eb) {
68
- return permissions.buildPermissionQuery(authData, eb, permission, objOrId, table);
69
- }).one();
70
- } finally {
71
- (0, import_where.setEvaluatingPermission)(false);
72
- }
73
- }
74
- if (validateQuery) {
75
- validateQuery({
76
- authData,
77
- queryName: name,
78
- params: args
79
- });
80
- }
81
- var query = (0, import_zero.mustGetQuery)(queries, name);
82
- return query.fn({
83
- args,
84
- ctx: authData
85
- });
86
- }
87
- function createAsyncTaskCollector() {
88
- var committed = [];
89
- var attempt;
90
- var completedAttempt;
91
- var current = function () {
92
- return attempt !== null && attempt !== void 0 ? attempt : committed;
93
- };
94
- var queue = new Proxy([], {
95
- deleteProperty(_target, property) {
96
- return Reflect.deleteProperty(current(), property);
97
- },
98
- get(_target, property) {
99
- var target = current();
100
- var value = Reflect.get(target, property, target);
101
- return typeof value === "function" ? value.bind(target) : value;
102
- },
103
- getOwnPropertyDescriptor(_target, property) {
104
- return Reflect.getOwnPropertyDescriptor(current(), property);
105
- },
106
- has(_target, property) {
107
- return Reflect.has(current(), property);
108
- },
109
- ownKeys() {
110
- return Reflect.ownKeys(current());
111
- },
112
- set(_target, property, value) {
113
- return Reflect.set(current(), property, value);
114
- }
115
- });
116
- var lifecycle = {
117
- beginAttempt() {
118
- attempt = [];
119
- completedAttempt = void 0;
120
- },
121
- completeAttempt() {
122
- completedAttempt = attempt;
123
- attempt = void 0;
124
- },
125
- rollbackAttempt() {
126
- attempt = void 0;
127
- completedAttempt = void 0;
128
- },
129
- commitTransaction() {
130
- if (completedAttempt) committed.push(...completedAttempt);
131
- completedAttempt = void 0;
132
- },
133
- rollbackTransaction() {
134
- attempt = void 0;
135
- completedAttempt = void 0;
136
- }
137
- };
138
- return {
139
- committed,
140
- lifecycle,
141
- queue
142
- };
143
- }
144
41
  function createZeroServerCore(param) {
145
42
  var {
146
43
  createDatabase,
147
44
  createServerActions,
148
45
  defaultAllowAdminRole = "all",
149
- defaultMutateAuthData = {},
46
+ defaultMutateAuthData,
150
47
  models,
151
48
  mutations: mutationValidators,
152
49
  persistAlreadyProcessed,
@@ -155,12 +52,20 @@ function createZeroServerCore(param) {
155
52
  validateMutation,
156
53
  validateQuery
157
54
  } = param;
158
- (0, import_state.setSchema)(schema);
159
- (0, import_state.setEnvironment)("server");
160
- var permissions = (0, import_createPermissions.createPermissions)({
161
- environment: "server",
55
+ var {
56
+ permissions,
57
+ server
58
+ } = (0, import_createZeroDirectServer.createZeroDirectServerRuntime)({
59
+ createDatabase,
60
+ createServerActions,
61
+ defaultAllowAdminRole,
62
+ defaultMutateAuthData,
63
+ models,
64
+ mutations: mutationValidators,
65
+ queries,
162
66
  schema,
163
- adminRoleMode: defaultAllowAdminRole
67
+ validateMutation,
68
+ validateQuery
164
69
  });
165
70
  var handleMutationRequest = async function (param2) {
166
71
  var {
@@ -168,10 +73,10 @@ function createZeroServerCore(param) {
168
73
  request,
169
74
  skipAsyncTasks
170
75
  } = param2;
171
- var tasks = createAsyncTaskCollector();
76
+ var tasks = (0, import_createZeroDirectServer.createAsyncTaskCollector)();
172
77
  var recoveryRequest = request.clone();
173
78
  var mutators = (0, import_createMutators.createMutators)({
174
- asyncTasks: tasks.queue,
79
+ enqueueTask: tasks.enqueueTask,
175
80
  can: permissions.can,
176
81
  createServerActions,
177
82
  environment: "server",
@@ -187,10 +92,18 @@ function createZeroServerCore(param) {
187
92
  if (parsed) await persistAlreadyProcessed(parsed);
188
93
  }
189
94
  if (!skipAsyncTasks && tasks.committed.length) {
190
- Promise.all(tasks.committed.map(function (task) {
191
- return (0, import_mutatorContext.runWithAuthScope)(authData, task);
192
- })).catch(function (err) {
193
- console.error("[push] async tasks failed", err);
95
+ var entries = tasks.committed.map(function (entry) {
96
+ return {
97
+ ...entry,
98
+ task: function () {
99
+ return (0, import_mutatorContext.runWithAuthScope)(authData, entry.task);
100
+ }
101
+ };
102
+ });
103
+ await (0, import_asyncTasks.runAsyncTaskEntries)(entries, {
104
+ background: function () {
105
+ return void 0;
106
+ }
194
107
  });
195
108
  }
196
109
  return {
@@ -207,7 +120,7 @@ function createZeroServerCore(param) {
207
120
  throw new Error("No queries registered with createZeroServer. Pass the syncedQueries registry to createZeroServer via the queries option.");
208
121
  }
209
122
  var handler = function (name, args) {
210
- return resolveServerQuery({
123
+ return (0, import_createZeroDirectServer.resolveServerQuery)({
211
124
  authData,
212
125
  name,
213
126
  args,
@@ -234,102 +147,10 @@ function createZeroServerCore(param) {
234
147
  response
235
148
  };
236
149
  };
237
- async function runTransaction(database, query2) {
238
- try {
239
- if ((0, import_mutatorContext.isInZeroMutation)()) {
240
- var {
241
- tx
242
- } = (0, import_mutatorContext.mutatorContext)();
243
- return await query2(tx);
244
- }
245
- return await database.transaction(query2, dummyTransactionInput);
246
- } catch (err) {
247
- if ((err === null || err === void 0 ? void 0 : err.name) !== "PermissionError") {
248
- console.error(`Error running transaction(): ${err}`);
249
- }
250
- throw err;
251
- }
252
- }
253
- async function transaction(query2) {
254
- return runTransaction(createDatabase(), query2);
255
- }
256
- async function runMutate(modelName, mutatorName, mutatorArg, options) {
257
- var authData = options === null || options === void 0 ? void 0 : options.authData;
258
- if (!authData) {
259
- var scoped = (0, import_mutatorContext.getScopedAuthData)();
260
- if (scoped) authData = scoped;
261
- }
262
- var tasks = createAsyncTaskCollector();
263
- var mutators = (0, import_createMutators.createMutators)({
264
- models,
265
- environment: "server",
266
- asyncTasks: tasks.queue,
267
- authData: {
268
- ...defaultMutateAuthData,
269
- ...authData
270
- },
271
- createServerActions,
272
- can: permissions.can,
273
- validateMutation,
274
- mutationValidators
275
- });
276
- var modelMutators = mutators[modelName];
277
- var mutator = modelMutators[mutatorName];
278
- await runTransaction(withTransactionLifecycle(createDatabase(), tasks.lifecycle), async function (tx) {
279
- await mutator(tx, mutatorArg);
280
- });
281
- if (tasks.committed.length) {
282
- var resolvedAuth = authData !== null && authData !== void 0 ? authData : null;
283
- var promise = Promise.all(tasks.committed.map(function (task) {
284
- return (0, import_mutatorContext.runWithAuthScope)(resolvedAuth, task);
285
- }));
286
- if (options === null || options === void 0 ? void 0 : options.awaitEffects) {
287
- await promise;
288
- } else {
289
- promise.catch(function (err) {
290
- console.error("[mutate] async tasks failed", err);
291
- });
292
- }
293
- }
294
- }
295
- var mutate = new Proxy({}, {
296
- get(_, modelName) {
297
- return new Proxy({}, {
298
- get(_2, mutatorName) {
299
- return function (arg, options) {
300
- return runMutate(modelName, mutatorName, arg, options);
301
- };
302
- }
303
- });
304
- }
305
- });
306
- function query(cb, authData) {
307
- var run = function () {
308
- return transaction(async function (tx) {
309
- return tx.run(cb((0, import_state.getZQL)()));
310
- });
311
- };
312
- if (authData !== void 0) {
313
- return (0, import_queryContext.runWithQueryContext)({
314
- authData
315
- }, run);
316
- }
317
- return run();
318
- }
319
- if (queries) {
320
- (0, import_run.setCustomQueries)(queries);
321
- }
322
- (0, import_zeroRunner.setRunner)(function (queryObj) {
323
- return transaction(async function (tx) {
324
- return tx.run(queryObj);
325
- });
326
- });
327
150
  return {
328
151
  handleMutationRequest,
329
152
  handleQueryRequest,
330
- transaction,
331
- mutate,
332
- query
153
+ ...server
333
154
  };
334
155
  }
335
156
  function withTransactionLifecycle(database, lifecycle) {
@@ -380,10 +201,4 @@ function alreadyProcessedMutations(response) {
380
201
  return !!id && (typeof id === "undefined" ? "undefined" : _type_of(id)) === "object" && typeof id.clientID === "string" && typeof id.id === "number" && !!result && (typeof result === "undefined" ? "undefined" : _type_of(result)) === "object" && result.error === "alreadyProcessed";
381
202
  });
382
203
  }
383
- var dummyTransactionInput = {
384
- clientGroupID: "unused",
385
- clientID: "unused",
386
- mutationID: 42,
387
- upstreamSchema: "unused"
388
- };
389
204
  //# sourceMappingURL=createZeroServerCore.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroServerCore_exports","__export","createZeroServerCore","resolveServerQuery","module","exports","import_zero","require","import_server","import_createPermissions","import_createMutators","import_mutatorContext","import_queryContext","import_modelRegistry","import_run","import_state","import_where","import_zeroRunner","_type_of","obj","Symbol","constructor","param","authData","name","args","queries","permissions","validateQuery","startsWith","table","slice","length","objOrId","permission","getMutationsPermissions","Error","setEvaluatingPermission","getZQL","where","eb","buildPermissionQuery","one","queryName","params","query","mustGetQuery","fn","ctx","createAsyncTaskCollector","committed","attempt","completedAttempt","current","queue","Proxy","deleteProperty","_target","property","Reflect","get","target","bind","getOwnPropertyDescriptor","has","ownKeys","set","lifecycle","beginAttempt","completeAttempt","rollbackAttempt","commitTransaction","push","rollbackTransaction","createDatabase","createServerActions","defaultAllowAdminRole","defaultMutateAuthData","models","mutations","mutationValidators","persistAlreadyProcessed","schema","validateMutation","setSchema","setEnvironment","createPermissions","environment","adminRoleMode","handleMutationRequest","param2","request","skipAsyncTasks","tasks","recoveryRequest","clone","mutators","createMutators","asyncTasks","can","processor","PushProcessor","withTransactionLifecycle","response","process","parsed","parseAlreadyProcessed","Promise","all","map","task","runWithAuthScope","catch","err","console","error","handleQueryRequest","handler","userID","id","runWithQueryContext","runTransaction","database","query2","isInZeroMutation","tx","mutatorContext","transaction","dummyTransactionInput","runMutate","modelName","mutatorName","mutatorArg","options","scoped","getScopedAuthData","modelMutators","mutator","resolvedAuth","promise","awaitEffects","mutate","_","_2","arg","cb","run","setCustomQueries","setRunner","queryObj","callback","input","hooks","result","alreadyProcessedMutations","upstreamSchema","URL","url","searchParams","body","json","clientGroupID","Array","isArray","filter","mutation","clientID","mutationID"],"sources":["../../src/createZeroServerCore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroServerCore_exports","__export","createZeroServerCore","module","exports","import_server","require","import_asyncTasks","import_createZeroDirectServer","import_createMutators","import_mutatorContext","import_queryContext","_type_of","obj","Symbol","constructor","param","createDatabase","createServerActions","defaultAllowAdminRole","defaultMutateAuthData","models","mutations","mutationValidators","persistAlreadyProcessed","queries","schema","validateMutation","validateQuery","permissions","server","createZeroDirectServerRuntime","handleMutationRequest","param2","authData","request","skipAsyncTasks","tasks","createAsyncTaskCollector","recoveryRequest","clone","mutators","createMutators","enqueueTask","can","environment","processor","PushProcessor","withTransactionLifecycle","lifecycle","response","process","parsed","parseAlreadyProcessed","committed","length","entries","map","entry","task","runWithAuthScope","runAsyncTaskEntries","background","asyncTasks","handleQueryRequest","Error","handler","name","args","resolveServerQuery","userID","id","runWithQueryContext","database","transaction","callback","input","tx","hooks","beginAttempt","result","completeAttempt","error","rollbackAttempt","commitTransaction","rollbackTransaction","alreadyProcessedMutations","upstreamSchema","URL","url","searchParams","get","body","json","clientGroupID","Array","isArray","filter","mutation"],"sources":["../../src/createZeroServerCore.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -43,6 +43,7 @@ var import_node_fs = require("node:fs");
43
43
  var import_node_path = require("node:path");
44
44
  var import_generate_helpers = require("./generate-helpers.cjs");
45
45
  const hash = s => (0, import_node_crypto.createHash)("sha256").update(s).digest("hex");
46
+ const GENERATOR_CACHE_VERSION = "1";
46
47
  const isGeneratorSourceFile = name => name.endsWith(".ts") && !name.endsWith(".d.ts") && !name.endsWith(".test.ts") && !name.endsWith(".spec.ts");
47
48
  function hashInputTree(baseDir, generatedDir) {
48
49
  const parts = [];
@@ -350,6 +351,11 @@ function extractSchemaColumns(ts, sourceFile, columns, primaryKeys) {
350
351
  }
351
352
  visit(sourceFile);
352
353
  }
354
+ function getInstantiatedPropertyType(checker, parent, name) {
355
+ const resolveProperty = Reflect.get(checker, "getTypeOfPropertyOfType");
356
+ if (typeof resolveProperty !== "function") return void 0;
357
+ return Reflect.apply(resolveProperty, checker, [parent, name]);
358
+ }
353
359
  function tsTypeToValibot(ts, checker, type, seen) {
354
360
  if (!seen) seen = /* @__PURE__ */new Set();
355
361
  const flags = type.getFlags();
@@ -398,7 +404,9 @@ function tsTypeToValibot(ts, checker, type, seen) {
398
404
  if (hasUndefined) inner = `v.optional(${inner})`;
399
405
  return inner;
400
406
  }
401
- const resolveSymbolType = prop => {
407
+ const resolveSymbolType = (parent, prop) => {
408
+ const instantiated = getInstantiatedPropertyType(checker, parent, prop.getName());
409
+ if (instantiated) return instantiated;
402
410
  if (prop.valueDeclaration) return checker.getTypeOfSymbolAtLocation(prop, prop.valueDeclaration);
403
411
  if (prop.declarations?.[0]) return checker.getTypeOfSymbolAtLocation(prop, prop.declarations[0]);
404
412
  return checker.getDeclaredTypeOfSymbol(prop);
@@ -410,7 +418,7 @@ function tsTypeToValibot(ts, checker, type, seen) {
410
418
  for (const prop of props2) {
411
419
  const name = prop.getName();
412
420
  if ((0, import_generate_helpers.shouldSkipObjectKey)(name)) continue;
413
- const propType = resolveSymbolType(prop);
421
+ const propType = resolveSymbolType(type, prop);
414
422
  const isOptional = !!(prop.getFlags() & ts.SymbolFlags.Optional);
415
423
  let val = recurse(propType);
416
424
  if (isOptional && !val.startsWith("v.optional(")) {
@@ -443,7 +451,7 @@ function tsTypeToValibot(ts, checker, type, seen) {
443
451
  for (const prop of props) {
444
452
  const name = prop.getName();
445
453
  if ((0, import_generate_helpers.shouldSkipObjectKey)(name)) continue;
446
- const propType = resolveSymbolType(prop);
454
+ const propType = resolveSymbolType(type, prop);
447
455
  const isOptional = !!(prop.getFlags() & ts.SymbolFlags.Optional);
448
456
  let val = recurse(propType);
449
457
  if (isOptional && !val.startsWith("v.optional(")) {
@@ -546,7 +554,8 @@ async function generate(options) {
546
554
  const {
547
555
  dir,
548
556
  after,
549
- silent
557
+ silent,
558
+ force
550
559
  } = options;
551
560
  const baseDir = (0, import_node_path.resolve)(dir);
552
561
  const mutationsDir = (0, import_node_path.resolve)(baseDir, "mutations");
@@ -562,7 +571,7 @@ async function generate(options) {
562
571
  }
563
572
  loadCache();
564
573
  const inputHash = hashInputTree(baseDir, generatedDir);
565
- if (generateCache.__inputHash === inputHash && (0, import_node_fs.existsSync)((0, import_node_path.resolve)(generatedDir, "models.ts"))) {
574
+ if (!force && generateCache.__generatorVersion === GENERATOR_CACHE_VERSION && generateCache.__inputHash === inputHash && (0, import_node_fs.existsSync)((0, import_node_path.resolve)(generatedDir, "models.ts"))) {
566
575
  let counts = {};
567
576
  try {
568
577
  counts = JSON.parse(generateCache.__counts || "{}");
@@ -759,6 +768,7 @@ async function generate(options) {
759
768
  if (!silent) console.error(`Error running after command: ${err}`);
760
769
  }
761
770
  }
771
+ generateCache.__generatorVersion = GENERATOR_CACHE_VERSION;
762
772
  generateCache.__inputHash = inputHash;
763
773
  generateCache.__counts = JSON.stringify({
764
774
  modelCount: allModelFiles.length,
@@ -47,6 +47,7 @@ var import_generate_helpers = require("./generate-helpers.native.js");
47
47
  var hash = function (s) {
48
48
  return (0, import_crypto.createHash)("sha256").update(s).digest("hex");
49
49
  };
50
+ var GENERATOR_CACHE_VERSION = "1";
50
51
  var isGeneratorSourceFile = function (name) {
51
52
  return name.endsWith(".ts") && !name.endsWith(".d.ts") && !name.endsWith(".test.ts") && !name.endsWith(".spec.ts");
52
53
  };
@@ -491,6 +492,11 @@ function extractSchemaColumns(ts, sourceFile, columns, primaryKeys) {
491
492
  }
492
493
  visit(sourceFile);
493
494
  }
495
+ function getInstantiatedPropertyType(checker, parent, name) {
496
+ var resolveProperty = Reflect.get(checker, "getTypeOfPropertyOfType");
497
+ if (typeof resolveProperty !== "function") return void 0;
498
+ return Reflect.apply(resolveProperty, checker, [parent, name]);
499
+ }
494
500
  function tsTypeToValibot(ts, checker, type, seen) {
495
501
  var _checker_isArrayType, _checker_isArrayLikeType;
496
502
  if (!seen) seen = /* @__PURE__ */new Set();
@@ -554,8 +560,10 @@ function tsTypeToValibot(ts, checker, type, seen) {
554
560
  if (hasUndefined) inner1 = `v.optional(${inner1})`;
555
561
  return inner1;
556
562
  }
557
- var resolveSymbolType = function (prop2) {
563
+ var resolveSymbolType = function (parent, prop2) {
558
564
  var _prop_declarations;
565
+ var instantiated = getInstantiatedPropertyType(checker, parent, prop2.getName());
566
+ if (instantiated) return instantiated;
559
567
  if (prop2.valueDeclaration) return checker.getTypeOfSymbolAtLocation(prop2, prop2.valueDeclaration);
560
568
  if ((_prop_declarations = prop2.declarations) === null || _prop_declarations === void 0 ? void 0 : _prop_declarations[0]) return checker.getTypeOfSymbolAtLocation(prop2, prop2.declarations[0]);
561
569
  return checker.getDeclaredTypeOfSymbol(prop2);
@@ -572,7 +580,7 @@ function tsTypeToValibot(ts, checker, type, seen) {
572
580
  var prop = _step.value;
573
581
  var name1 = prop.getName();
574
582
  if ((0, import_generate_helpers.shouldSkipObjectKey)(name1)) continue;
575
- var propType = resolveSymbolType(prop);
583
+ var propType = resolveSymbolType(type, prop);
576
584
  var isOptional = !!(prop.getFlags() & ts.SymbolFlags.Optional);
577
585
  var val = recurse(propType);
578
586
  if (isOptional && !val.startsWith("v.optional(")) {
@@ -628,7 +636,7 @@ function tsTypeToValibot(ts, checker, type, seen) {
628
636
  var prop1 = _step1.value;
629
637
  var name3 = prop1.getName();
630
638
  if ((0, import_generate_helpers.shouldSkipObjectKey)(name3)) continue;
631
- var propType1 = resolveSymbolType(prop1);
639
+ var propType1 = resolveSymbolType(type, prop1);
632
640
  var isOptional1 = !!(prop1.getFlags() & ts.SymbolFlags.Optional);
633
641
  var val1 = recurse(propType1);
634
642
  if (isOptional1 && !val1.startsWith("v.optional(")) {
@@ -806,7 +814,8 @@ async function generate(options) {
806
814
  var {
807
815
  dir,
808
816
  after,
809
- silent
817
+ silent,
818
+ force
810
819
  } = options;
811
820
  var baseDir = (0, import_path.resolve)(dir);
812
821
  var mutationsDir = (0, import_path.resolve)(baseDir, "mutations");
@@ -822,7 +831,7 @@ async function generate(options) {
822
831
  }
823
832
  loadCache();
824
833
  var inputHash = hashInputTree(baseDir, generatedDir);
825
- if (generateCache.__inputHash === inputHash && (0, import_fs.existsSync)((0, import_path.resolve)(generatedDir, "models.ts"))) {
834
+ if (!force && generateCache.__generatorVersion === GENERATOR_CACHE_VERSION && generateCache.__inputHash === inputHash && (0, import_fs.existsSync)((0, import_path.resolve)(generatedDir, "models.ts"))) {
826
835
  var counts = {};
827
836
  try {
828
837
  counts = JSON.parse(generateCache.__counts || "{}");
@@ -1136,6 +1145,7 @@ async function generate(options) {
1136
1145
  if (!silent) console.error(`Error running after command: ${err}`);
1137
1146
  }
1138
1147
  }
1148
+ generateCache.__generatorVersion = GENERATOR_CACHE_VERSION;
1139
1149
  generateCache.__inputHash = inputHash;
1140
1150
  generateCache.__counts = JSON.stringify({
1141
1151
  modelCount: allModelFiles.length,