on-zero 0.7.2 → 0.7.3-1784532446543

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 (260) hide show
  1. package/dist/cjs/helpers/createMutators.cjs +4 -3
  2. package/dist/cjs/helpers/createMutators.native.js +6 -3
  3. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  4. package/dist/cjs/index.cjs +0 -1
  5. package/dist/cjs/index.native.js +0 -1
  6. package/dist/cjs/index.native.js.map +1 -1
  7. package/dist/cjs/orez.cjs +227 -0
  8. package/dist/cjs/orez.native.js +314 -0
  9. package/dist/cjs/orez.native.js.map +1 -0
  10. package/dist/cjs/orez.test.cjs +211 -0
  11. package/dist/cjs/orez.test.native.js +226 -0
  12. package/dist/cjs/orez.test.native.js.map +1 -0
  13. package/dist/cjs/run.cjs +1 -1
  14. package/dist/cjs/run.native.js +1 -1
  15. package/dist/cjs/state.cjs +1 -1
  16. package/dist/cjs/state.native.js +1 -1
  17. package/dist/cjs/zeroRunner.cjs +1 -1
  18. package/dist/cjs/zeroRunner.native.js +1 -1
  19. package/dist/esm/helpers/createMutators.mjs +4 -3
  20. package/dist/esm/helpers/createMutators.mjs.map +1 -1
  21. package/dist/esm/helpers/createMutators.native.js +6 -3
  22. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  23. package/dist/esm/index.js +0 -1
  24. package/dist/esm/index.js.map +1 -1
  25. package/dist/esm/index.mjs +0 -1
  26. package/dist/esm/index.mjs.map +1 -1
  27. package/dist/esm/index.native.js +0 -1
  28. package/dist/esm/index.native.js.map +1 -1
  29. package/dist/esm/orez.mjs +202 -0
  30. package/dist/esm/orez.mjs.map +1 -0
  31. package/dist/esm/orez.native.js +286 -0
  32. package/dist/esm/orez.native.js.map +1 -0
  33. package/dist/esm/orez.test.mjs +188 -0
  34. package/dist/esm/orez.test.mjs.map +1 -0
  35. package/dist/esm/orez.test.native.js +200 -0
  36. package/dist/esm/orez.test.native.js.map +1 -0
  37. package/dist/esm/run.mjs +1 -1
  38. package/dist/esm/run.mjs.map +1 -1
  39. package/dist/esm/run.native.js +1 -1
  40. package/dist/esm/state.mjs +1 -1
  41. package/dist/esm/state.native.js +1 -1
  42. package/dist/esm/zeroRunner.mjs +1 -1
  43. package/dist/esm/zeroRunner.mjs.map +1 -1
  44. package/dist/esm/zeroRunner.native.js +1 -1
  45. package/package.json +8 -23
  46. package/readme.md +40 -65
  47. package/src/createZeroClient.tsx +1 -1
  48. package/src/helpers/createMutators.ts +6 -2
  49. package/src/index.ts +0 -1
  50. package/src/orez.test.ts +195 -0
  51. package/src/orez.ts +331 -0
  52. package/src/run.ts +1 -1
  53. package/src/state.ts +1 -1
  54. package/src/types.ts +0 -5
  55. package/src/zeroRunner.ts +1 -1
  56. package/test-fixtures/server-return-types.ts +21 -58
  57. package/types/helpers/createMutators.d.ts +2 -1
  58. package/types/helpers/createMutators.d.ts.map +1 -1
  59. package/types/httpPull/fixtureSchema.d.ts +1 -1
  60. package/types/index.d.ts +0 -1
  61. package/types/index.d.ts.map +1 -1
  62. package/types/orez.d.ts +53 -0
  63. package/types/orez.d.ts.map +1 -0
  64. package/types/orez.test.d.ts +2 -0
  65. package/types/orez.test.d.ts.map +1 -0
  66. package/types/types.d.ts +0 -4
  67. package/types/types.d.ts.map +1 -1
  68. package/dist/cjs/asyncTasks.cjs +0 -51
  69. package/dist/cjs/asyncTasks.native.js +0 -84
  70. package/dist/cjs/asyncTasks.native.js.map +0 -1
  71. package/dist/cjs/createZeroDirectServer.cjs +0 -269
  72. package/dist/cjs/createZeroDirectServer.native.js +0 -287
  73. package/dist/cjs/createZeroDirectServer.native.js.map +0 -1
  74. package/dist/cjs/createZeroSQLiteServer.cjs +0 -50
  75. package/dist/cjs/createZeroSQLiteServer.native.js +0 -58
  76. package/dist/cjs/createZeroSQLiteServer.native.js.map +0 -1
  77. package/dist/cjs/createZeroSQLiteServer.test.cjs +0 -595
  78. package/dist/cjs/createZeroSQLiteServer.test.native.js +0 -647
  79. package/dist/cjs/createZeroSQLiteServer.test.native.js.map +0 -1
  80. package/dist/cjs/createZeroServer.cjs +0 -82
  81. package/dist/cjs/createZeroServer.native.js +0 -93
  82. package/dist/cjs/createZeroServer.native.js.map +0 -1
  83. package/dist/cjs/createZeroServer.test.cjs +0 -378
  84. package/dist/cjs/createZeroServer.test.native.js +0 -448
  85. package/dist/cjs/createZeroServer.test.native.js.map +0 -1
  86. package/dist/cjs/createZeroServerCore.cjs +0 -211
  87. package/dist/cjs/createZeroServerCore.native.js +0 -355
  88. package/dist/cjs/createZeroServerCore.native.js.map +0 -1
  89. package/dist/cjs/httpPull/auth.test.cjs +0 -197
  90. package/dist/cjs/httpPull/auth.test.native.js +0 -279
  91. package/dist/cjs/httpPull/auth.test.native.js.map +0 -1
  92. package/dist/cjs/httpPull/churn.test.cjs +0 -132
  93. package/dist/cjs/httpPull/churn.test.native.js +0 -155
  94. package/dist/cjs/httpPull/churn.test.native.js.map +0 -1
  95. package/dist/cjs/httpPull/completeAck.test.cjs +0 -69
  96. package/dist/cjs/httpPull/completeAck.test.native.js +0 -76
  97. package/dist/cjs/httpPull/completeAck.test.native.js.map +0 -1
  98. package/dist/cjs/httpPull/fixtureServer.cjs +0 -340
  99. package/dist/cjs/httpPull/fixtureServer.native.js +0 -534
  100. package/dist/cjs/httpPull/fixtureServer.native.js.map +0 -1
  101. package/dist/cjs/httpPull/integration.test.cjs +0 -53
  102. package/dist/cjs/httpPull/integration.test.native.js +0 -60
  103. package/dist/cjs/httpPull/integration.test.native.js.map +0 -1
  104. package/dist/cjs/httpPull/rebase.test.cjs +0 -360
  105. package/dist/cjs/httpPull/rebase.test.native.js +0 -420
  106. package/dist/cjs/httpPull/rebase.test.native.js.map +0 -1
  107. package/dist/cjs/httpPull/relations.test.cjs +0 -107
  108. package/dist/cjs/httpPull/relations.test.native.js +0 -119
  109. package/dist/cjs/httpPull/relations.test.native.js.map +0 -1
  110. package/dist/cjs/httpPull/testHarness.cjs +0 -100
  111. package/dist/cjs/httpPull/testHarness.native.js +0 -112
  112. package/dist/cjs/httpPull/testHarness.native.js.map +0 -1
  113. package/dist/cjs/server.cjs +0 -22
  114. package/dist/cjs/server.native.js +0 -4
  115. package/dist/cjs/server.native.js.map +0 -1
  116. package/dist/cjs/sqliteRuntime.cjs +0 -318
  117. package/dist/cjs/sqliteRuntime.native.js +0 -438
  118. package/dist/cjs/sqliteRuntime.native.js.map +0 -1
  119. package/dist/cjs/syncHost.cjs +0 -179
  120. package/dist/cjs/syncHost.native.js +0 -388
  121. package/dist/cjs/syncHost.native.js.map +0 -1
  122. package/dist/cjs/syncHost.test.cjs +0 -240
  123. package/dist/cjs/syncHost.test.native.js +0 -290
  124. package/dist/cjs/syncHost.test.native.js.map +0 -1
  125. package/dist/esm/asyncTasks.mjs +0 -26
  126. package/dist/esm/asyncTasks.mjs.map +0 -1
  127. package/dist/esm/asyncTasks.native.js +0 -56
  128. package/dist/esm/asyncTasks.native.js.map +0 -1
  129. package/dist/esm/createZeroDirectServer.mjs +0 -241
  130. package/dist/esm/createZeroDirectServer.mjs.map +0 -1
  131. package/dist/esm/createZeroDirectServer.native.js +0 -256
  132. package/dist/esm/createZeroDirectServer.native.js.map +0 -1
  133. package/dist/esm/createZeroSQLiteServer.mjs +0 -24
  134. package/dist/esm/createZeroSQLiteServer.mjs.map +0 -1
  135. package/dist/esm/createZeroSQLiteServer.native.js +0 -29
  136. package/dist/esm/createZeroSQLiteServer.native.js.map +0 -1
  137. package/dist/esm/createZeroSQLiteServer.test.mjs +0 -596
  138. package/dist/esm/createZeroSQLiteServer.test.mjs.map +0 -1
  139. package/dist/esm/createZeroSQLiteServer.test.native.js +0 -645
  140. package/dist/esm/createZeroSQLiteServer.test.native.js.map +0 -1
  141. package/dist/esm/createZeroServer.mjs +0 -57
  142. package/dist/esm/createZeroServer.mjs.map +0 -1
  143. package/dist/esm/createZeroServer.native.js +0 -65
  144. package/dist/esm/createZeroServer.native.js.map +0 -1
  145. package/dist/esm/createZeroServer.test.mjs +0 -379
  146. package/dist/esm/createZeroServer.test.mjs.map +0 -1
  147. package/dist/esm/createZeroServer.test.native.js +0 -446
  148. package/dist/esm/createZeroServer.test.native.js.map +0 -1
  149. package/dist/esm/createZeroServerCore.mjs +0 -186
  150. package/dist/esm/createZeroServerCore.mjs.map +0 -1
  151. package/dist/esm/createZeroServerCore.native.js +0 -327
  152. package/dist/esm/createZeroServerCore.native.js.map +0 -1
  153. package/dist/esm/httpPull/auth.test.mjs +0 -198
  154. package/dist/esm/httpPull/auth.test.mjs.map +0 -1
  155. package/dist/esm/httpPull/auth.test.native.js +0 -277
  156. package/dist/esm/httpPull/auth.test.native.js.map +0 -1
  157. package/dist/esm/httpPull/churn.test.mjs +0 -133
  158. package/dist/esm/httpPull/churn.test.mjs.map +0 -1
  159. package/dist/esm/httpPull/churn.test.native.js +0 -153
  160. package/dist/esm/httpPull/churn.test.native.js.map +0 -1
  161. package/dist/esm/httpPull/completeAck.test.mjs +0 -70
  162. package/dist/esm/httpPull/completeAck.test.mjs.map +0 -1
  163. package/dist/esm/httpPull/completeAck.test.native.js +0 -74
  164. package/dist/esm/httpPull/completeAck.test.native.js.map +0 -1
  165. package/dist/esm/httpPull/fixtureServer.mjs +0 -315
  166. package/dist/esm/httpPull/fixtureServer.mjs.map +0 -1
  167. package/dist/esm/httpPull/fixtureServer.native.js +0 -506
  168. package/dist/esm/httpPull/fixtureServer.native.js.map +0 -1
  169. package/dist/esm/httpPull/integration.test.mjs +0 -54
  170. package/dist/esm/httpPull/integration.test.mjs.map +0 -1
  171. package/dist/esm/httpPull/integration.test.native.js +0 -58
  172. package/dist/esm/httpPull/integration.test.native.js.map +0 -1
  173. package/dist/esm/httpPull/rebase.test.mjs +0 -361
  174. package/dist/esm/httpPull/rebase.test.mjs.map +0 -1
  175. package/dist/esm/httpPull/rebase.test.native.js +0 -418
  176. package/dist/esm/httpPull/rebase.test.native.js.map +0 -1
  177. package/dist/esm/httpPull/relations.test.mjs +0 -108
  178. package/dist/esm/httpPull/relations.test.mjs.map +0 -1
  179. package/dist/esm/httpPull/relations.test.native.js +0 -117
  180. package/dist/esm/httpPull/relations.test.native.js.map +0 -1
  181. package/dist/esm/httpPull/testHarness.mjs +0 -72
  182. package/dist/esm/httpPull/testHarness.mjs.map +0 -1
  183. package/dist/esm/httpPull/testHarness.native.js +0 -81
  184. package/dist/esm/httpPull/testHarness.native.js.map +0 -1
  185. package/dist/esm/server.mjs +0 -4
  186. package/dist/esm/server.mjs.map +0 -1
  187. package/dist/esm/server.native.js +0 -2
  188. package/dist/esm/server.native.js.map +0 -1
  189. package/dist/esm/sqliteRuntime.mjs +0 -289
  190. package/dist/esm/sqliteRuntime.mjs.map +0 -1
  191. package/dist/esm/sqliteRuntime.native.js +0 -406
  192. package/dist/esm/sqliteRuntime.native.js.map +0 -1
  193. package/dist/esm/syncHost.mjs +0 -153
  194. package/dist/esm/syncHost.mjs.map +0 -1
  195. package/dist/esm/syncHost.native.js +0 -359
  196. package/dist/esm/syncHost.native.js.map +0 -1
  197. package/dist/esm/syncHost.test.mjs +0 -217
  198. package/dist/esm/syncHost.test.mjs.map +0 -1
  199. package/dist/esm/syncHost.test.native.js +0 -264
  200. package/dist/esm/syncHost.test.native.js.map +0 -1
  201. package/src/asyncTasks.ts +0 -36
  202. package/src/createZeroDirectServer.ts +0 -411
  203. package/src/createZeroSQLiteServer.test.ts +0 -614
  204. package/src/createZeroSQLiteServer.ts +0 -56
  205. package/src/createZeroServer.test.ts +0 -421
  206. package/src/createZeroServer.ts +0 -105
  207. package/src/createZeroServerCore.ts +0 -296
  208. package/src/httpPull/auth.test.ts +0 -208
  209. package/src/httpPull/churn.test.ts +0 -147
  210. package/src/httpPull/completeAck.test.ts +0 -80
  211. package/src/httpPull/fixtureServer.ts +0 -391
  212. package/src/httpPull/integration.test.ts +0 -57
  213. package/src/httpPull/rebase.test.ts +0 -368
  214. package/src/httpPull/relations.test.ts +0 -135
  215. package/src/httpPull/testHarness.ts +0 -95
  216. package/src/server.native.ts +0 -3
  217. package/src/server.ts +0 -4
  218. package/src/sqliteRuntime.ts +0 -512
  219. package/src/syncHost.test.ts +0 -223
  220. package/src/syncHost.ts +0 -294
  221. package/types/asyncTasks.d.ts +0 -11
  222. package/types/asyncTasks.d.ts.map +0 -1
  223. package/types/createZeroDirectServer.d.ts +0 -80
  224. package/types/createZeroDirectServer.d.ts.map +0 -1
  225. package/types/createZeroSQLiteServer.d.ts +0 -12
  226. package/types/createZeroSQLiteServer.d.ts.map +0 -1
  227. package/types/createZeroSQLiteServer.test.d.ts +0 -2
  228. package/types/createZeroSQLiteServer.test.d.ts.map +0 -1
  229. package/types/createZeroServer.d.ts +0 -18
  230. package/types/createZeroServer.d.ts.map +0 -1
  231. package/types/createZeroServer.test.d.ts +0 -2
  232. package/types/createZeroServer.test.d.ts.map +0 -1
  233. package/types/createZeroServerCore.d.ts +0 -256
  234. package/types/createZeroServerCore.d.ts.map +0 -1
  235. package/types/httpPull/auth.test.d.ts +0 -2
  236. package/types/httpPull/auth.test.d.ts.map +0 -1
  237. package/types/httpPull/churn.test.d.ts +0 -2
  238. package/types/httpPull/churn.test.d.ts.map +0 -1
  239. package/types/httpPull/completeAck.test.d.ts +0 -2
  240. package/types/httpPull/completeAck.test.d.ts.map +0 -1
  241. package/types/httpPull/fixtureServer.d.ts +0 -14
  242. package/types/httpPull/fixtureServer.d.ts.map +0 -1
  243. package/types/httpPull/integration.test.d.ts +0 -2
  244. package/types/httpPull/integration.test.d.ts.map +0 -1
  245. package/types/httpPull/rebase.test.d.ts +0 -2
  246. package/types/httpPull/rebase.test.d.ts.map +0 -1
  247. package/types/httpPull/relations.test.d.ts +0 -2
  248. package/types/httpPull/relations.test.d.ts.map +0 -1
  249. package/types/httpPull/testHarness.d.ts +0 -32
  250. package/types/httpPull/testHarness.d.ts.map +0 -1
  251. package/types/server.d.ts +0 -5
  252. package/types/server.d.ts.map +0 -1
  253. package/types/server.native.d.ts +0 -1
  254. package/types/server.native.d.ts.map +0 -1
  255. package/types/sqliteRuntime.d.ts +0 -71
  256. package/types/sqliteRuntime.d.ts.map +0 -1
  257. package/types/syncHost.d.ts +0 -42
  258. package/types/syncHost.d.ts.map +0 -1
  259. package/types/syncHost.test.d.ts +0 -2
  260. package/types/syncHost.test.d.ts.map +0 -1
@@ -47,7 +47,8 @@ function createMutators({
47
47
  can,
48
48
  models,
49
49
  validateMutation,
50
- mutationValidators
50
+ mutationValidators,
51
+ resolveAuthData
51
52
  }) {
52
53
  const serverActions = createServerActions?.();
53
54
  const modelMutators = (0, import_helpers.mapObject)(models, val => val.mutate || {});
@@ -57,7 +58,7 @@ function createMutators({
57
58
  tx,
58
59
  // on client, read authData dynamically to avoid stale closure during auth transitions
59
60
  // (ZeroProvider recreates Zero instance in useEffect, but mutations can run before that)
60
- authData: environment === "client" ? (0, import_state.getAuthData)() : authData,
61
+ authData: environment === "client" ? (0, import_state.getAuthData)() : resolveAuthData?.() ?? authData,
61
62
  environment,
62
63
  can,
63
64
  server: environment === "server" ? {
@@ -138,7 +139,7 @@ function createMutators({
138
139
  }
139
140
  if (validateMutation) {
140
141
  await validateMutation({
141
- authData: environment === "client" ? (0, import_state.getAuthData)() : authData,
142
+ authData: environment === "client" ? (0, import_state.getAuthData)() : resolveAuthData?.() ?? authData,
142
143
  tableName,
143
144
  mutatorName,
144
145
  args: args[1]
@@ -50,7 +50,8 @@ function createMutators(param) {
50
50
  can,
51
51
  models,
52
52
  validateMutation,
53
- mutationValidators
53
+ mutationValidators,
54
+ resolveAuthData
54
55
  } = param;
55
56
  var serverActions = createServerActions === null || createServerActions === void 0 ? void 0 : createServerActions();
56
57
  var modelMutators = (0, import_helpers.mapObject)(models, function (val) {
@@ -61,11 +62,12 @@ function createMutators(param) {
61
62
  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
62
63
  args[_key - 1] = arguments[_key];
63
64
  }
65
+ var _resolveAuthData;
64
66
  var mutationContext = {
65
67
  tx,
66
68
  // on client, read authData dynamically to avoid stale closure during auth transitions
67
69
  // (ZeroProvider recreates Zero instance in useEffect, but mutations can run before that)
68
- authData: environment === "client" ? (0, import_state.getAuthData)() : authData,
70
+ authData: environment === "client" ? (0, import_state.getAuthData)() : (_resolveAuthData = resolveAuthData === null || resolveAuthData === void 0 ? void 0 : resolveAuthData()) !== null && _resolveAuthData !== void 0 ? _resolveAuthData : authData,
69
71
  environment,
70
72
  can,
71
73
  server: environment === "server" ? {
@@ -156,8 +158,9 @@ function createMutators(param) {
156
158
  valibot.parse(validator, args[1]);
157
159
  }
158
160
  if (validateMutation) {
161
+ var _resolveAuthData;
159
162
  await validateMutation({
160
- authData: environment === "client" ? (0, import_state.getAuthData)() : authData,
163
+ authData: environment === "client" ? (0, import_state.getAuthData)() : (_resolveAuthData = resolveAuthData === null || resolveAuthData === void 0 ? void 0 : resolveAuthData()) !== null && _resolveAuthData !== void 0 ? _resolveAuthData : authData,
161
164
  tableName,
162
165
  mutatorName,
163
166
  args: args[1]
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createMutators_exports","__export","createMutators","module","exports","import_helpers","require","import_state","import_mutatorContext","param","environment","authData","createServerActions","enqueueTask","can","models","validateMutation","mutationValidators","serverActions","modelMutators","mapObject","val","mutate","withContext","fn","tx","_len","arguments","length","args","Array","_key","mutationContext","getAuthData","server","actions","runWithContext","withDevelopmentLogging","name","process","env","NODE_ENV","IS_TESTING","debug","DEBUG","startTime","performance","now","console","info","result","duration","toFixed","groupCollapsed","trace","groupEnd","error","duration1","JSON","stringify","withTimeoutGuard","timeoutMs","time","ms","minutes","timeoutId","timeoutPromise","Promise","_","reject","setTimeout","Error","race","clearTimeout","withValidation","tableName","mutatorName","_mutationValidators_tableName","validator","valibot","parse","decorateMutators","modules","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","moduleName","moduleExports","_step","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop2","_step1","fullName"],"sources":["../../../src/helpers/createMutators.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createMutators_exports","__export","createMutators","module","exports","import_helpers","require","import_state","import_mutatorContext","param","environment","authData","createServerActions","enqueueTask","can","models","validateMutation","mutationValidators","resolveAuthData","serverActions","modelMutators","mapObject","val","mutate","withContext","fn","tx","_len","arguments","length","args","Array","_key","_resolveAuthData","mutationContext","getAuthData","server","actions","runWithContext","withDevelopmentLogging","name","process","env","NODE_ENV","IS_TESTING","debug","DEBUG","startTime","performance","now","console","info","result","duration","toFixed","groupCollapsed","trace","groupEnd","error","duration1","JSON","stringify","withTimeoutGuard","timeoutMs","time","ms","minutes","timeoutId","timeoutPromise","Promise","_","reject","setTimeout","Error","race","clearTimeout","withValidation","tableName","mutatorName","_mutationValidators_tableName","validator","valibot","parse","decorateMutators","modules","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","moduleName","moduleExports","_step","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop2","_step1"],"sources":["../../../src/helpers/createMutators.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -41,7 +41,6 @@ __export(index_exports, {
41
41
  });
42
42
  module.exports = __toCommonJS(index_exports);
43
43
  __reExport(index_exports, require("./createPermissions.cjs"), module.exports);
44
- __reExport(index_exports, require("./asyncTasks.cjs"), module.exports);
45
44
  __reExport(index_exports, require("./queryRegistry.cjs"), module.exports);
46
45
  __reExport(index_exports, require("./helpers/batchQuery.cjs"), module.exports);
47
46
  __reExport(index_exports, require("./helpers/createMutators.cjs"), module.exports);
@@ -43,7 +43,6 @@ __export(index_exports, {
43
43
  });
44
44
  module.exports = __toCommonJS(index_exports);
45
45
  __reExport(index_exports, require("./createPermissions.native.js"), module.exports);
46
- __reExport(index_exports, require("./asyncTasks.native.js"), module.exports);
47
46
  __reExport(index_exports, require("./queryRegistry.native.js"), module.exports);
48
47
  __reExport(index_exports, require("./helpers/batchQuery.native.js"), module.exports);
49
48
  __reExport(index_exports, require("./helpers/createMutators.native.js"), module.exports);
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","index_exports","__export","classifyZeroRecoveryLog","import_recoverZeroClient","clearZeroClientData","import_clearZeroClientData","composeRecoveryLogSink","createZeroClient","import_createZeroClient","defineQueries","import_zero","defineQuery","ensureAuth","import_getAuth","getAuth","isRecoverableZeroStalePokeMessage","makeZeroRecovery","resetShownZeroClientError","import_showZeroClientError","setAuthData","import_state","setEnvironment","setRunner","import_zeroRunner","showZeroClientErrorOnce","module","exports","__reExport","require"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","index_exports","__export","classifyZeroRecoveryLog","import_recoverZeroClient","clearZeroClientData","import_clearZeroClientData","composeRecoveryLogSink","createZeroClient","import_createZeroClient","defineQueries","import_zero","defineQuery","ensureAuth","import_getAuth","getAuth","isRecoverableZeroStalePokeMessage","makeZeroRecovery","resetShownZeroClientError","import_showZeroClientError","setAuthData","import_state","setEnvironment","setRunner","import_zeroRunner","showZeroClientErrorOnce","module","exports","__reExport","require"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,227 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var orez_exports = {};
24
+ __export(orez_exports, {
25
+ createOrezBindings: () => createOrezBindings
26
+ });
27
+ module.exports = __toCommonJS(orez_exports);
28
+ var import_zero = require("@rocicorp/zero");
29
+ var import_bindings = require("@rocicorp/zero/bindings");
30
+ var import_server = require("@rocicorp/zero/server");
31
+ var import_helpers = require("@take-out/helpers");
32
+ var import_sync_executor = require("orez/sync-executor");
33
+ var import_createPermissions = require("./createPermissions.cjs");
34
+ var import_createMutators = require("./helpers/createMutators.cjs");
35
+ var import_mutatorContext = require("./helpers/mutatorContext.cjs");
36
+ var import_queryContext = require("./helpers/queryContext.cjs");
37
+ var import_modelRegistry = require("./modelRegistry.cjs");
38
+ var import_run = require("./run.cjs");
39
+ var import_state = require("./state.cjs");
40
+ var import_where = require("./where.cjs");
41
+ var import_zeroRunner = require("./zeroRunner.cjs");
42
+ function createOrezBindings(options) {
43
+ (0, import_state.setSchema)(options.schema, (0, import_zero.createBuilder)(options.schema));
44
+ (0, import_state.setEnvironment)("server");
45
+ if (options.queries) (0, import_run.setCustomQueries)(options.queries);
46
+ const mapClaims = options.mapClaims ?? defaultMapClaims;
47
+ const permissions = (0, import_createPermissions.createPermissions)({
48
+ environment: "server",
49
+ schema: options.schema,
50
+ adminRoleMode: options.defaultAllowAdminRole ?? "all"
51
+ });
52
+ const registry = {};
53
+ const invocation = (0, import_helpers.createAsyncContext)();
54
+ const decoratedMutators = (0, import_createMutators.createMutators)({
55
+ authData: null,
56
+ can: permissions.can,
57
+ createServerActions: options.createServerActions,
58
+ environment: "server",
59
+ models: options.models,
60
+ mutationValidators: options.mutations,
61
+ validateMutation: options.validateMutation ? async input => {
62
+ try {
63
+ await options.validateMutation(input);
64
+ } catch (error) {
65
+ throw mutationApplicationError(error);
66
+ }
67
+ } : void 0,
68
+ resolveAuthData: () => invocation.get()?.authData ?? null,
69
+ enqueueTask(task, taskOptions) {
70
+ const current = invocation.get();
71
+ if (!current) throw new Error("on-zero task scheduled outside an Orez mutation");
72
+ current.ctx.defer(() => (0, import_mutatorContext.runWithAuthScope)(current.authData, task), taskOptions);
73
+ }
74
+ });
75
+ for (const [modelName, model] of Object.entries(options.models)) {
76
+ for (const mutatorName of Object.keys(model.mutate ?? {})) {
77
+ registry[`${modelName}|${mutatorName}`] = async ({
78
+ tx,
79
+ args,
80
+ ctx
81
+ }) => {
82
+ const authData = mapClaims(ctx.claims);
83
+ const mutation = decoratedMutators[modelName]?.[mutatorName];
84
+ if (!mutation) throw new Error(`unknown on-zero mutator: ${modelName}|${mutatorName}`);
85
+ try {
86
+ await invocation.run({
87
+ authData,
88
+ ctx
89
+ }, () => mutation(tx, args));
90
+ } catch (error) {
91
+ const name = error?.name;
92
+ if (name === "MutationApplicationError") throw error;
93
+ if (name !== "PermissionError" && name !== "ValiError") throw error;
94
+ throw mutationApplicationError(error);
95
+ }
96
+ };
97
+ }
98
+ }
99
+ const bindings = {
100
+ mutators: (0, import_sync_executor.registerMutators)(registry),
101
+ async resolveQuery(name, args, claims) {
102
+ if (!options.queries) {
103
+ throw new Error("No queries registered with createOrezBindings.");
104
+ }
105
+ const authData = mapClaims(claims);
106
+ const query = await (0, import_queryContext.runWithQueryContext)({
107
+ authData
108
+ }, () => resolveServerQuery({
109
+ authData,
110
+ name,
111
+ args: args[0],
112
+ queries: options.queries,
113
+ permissions,
114
+ validateQuery: options.validateQuery
115
+ }));
116
+ return (0, import_bindings.asQueryInternals)(query).ast;
117
+ },
118
+ async transformQueryRequest({
119
+ authData,
120
+ request
121
+ }) {
122
+ if (!options.queries) {
123
+ throw new Error("No queries registered with createOrezBindings.");
124
+ }
125
+ const handler = (name, args) => resolveServerQuery({
126
+ authData,
127
+ name,
128
+ args,
129
+ queries: options.queries,
130
+ permissions,
131
+ validateQuery: options.validateQuery
132
+ });
133
+ const userID = typeof authData?.id === "string" ? authData.id : void 0;
134
+ return (0, import_queryContext.runWithQueryContext)({
135
+ authData: authData || {}
136
+ }, () => userID === void 0 ? (0, import_server.handleQueryRequest)(handler, options.schema, request) : (0, import_server.handleQueryRequest)({
137
+ handler,
138
+ schema: options.schema,
139
+ request,
140
+ userID
141
+ }));
142
+ },
143
+ server(executor) {
144
+ const transaction = (claims, work) => executor.transaction(claims, tx => work(tx));
145
+ (0, import_zeroRunner.setRunner)(query => transaction({
146
+ userID: "server"
147
+ }, tx => tx.run(query)));
148
+ const mutate = new Proxy({}, {
149
+ get(_target, modelName) {
150
+ return new Proxy({}, {
151
+ get(_inner, mutatorName) {
152
+ const handler = options.models[modelName]?.mutate?.[mutatorName];
153
+ const acceptsArgument = typeof handler === "function" && handler.length > 1;
154
+ return (argsOrOptions, optionsForArgument) => {
155
+ const args = acceptsArgument ? argsOrOptions : null;
156
+ const mutateOptions = acceptsArgument ? optionsForArgument : argsOrOptions;
157
+ const scoped = mutateOptions?.authData ?? (0, import_mutatorContext.getScopedAuthData)();
158
+ const claims = authToClaims(scoped);
159
+ return executor.execute(`${modelName}|${mutatorName}`, args, claims);
160
+ };
161
+ }
162
+ });
163
+ }
164
+ });
165
+ return {
166
+ mutate,
167
+ transaction,
168
+ query(claims, work) {
169
+ return (0, import_queryContext.runWithQueryContext)({
170
+ authData: mapClaims(claims)
171
+ }, () => executor.query(claims, tx => tx.run(work((0, import_state.getZQL)()))));
172
+ }
173
+ };
174
+ }
175
+ };
176
+ return bindings;
177
+ }
178
+ function resolveServerQuery({
179
+ authData,
180
+ name,
181
+ args,
182
+ queries,
183
+ permissions,
184
+ validateQuery
185
+ }) {
186
+ if (name.startsWith("permission.")) {
187
+ const table = name.slice("permission.".length);
188
+ const {
189
+ objOrId
190
+ } = args;
191
+ const permission = (0, import_modelRegistry.getMutationsPermissions)(table);
192
+ if (!permission) throw new Error(`[permission] no permission defined for table: ${table}`);
193
+ (0, import_where.setEvaluatingPermission)(true);
194
+ try {
195
+ return (0, import_state.getZQL)()[table].where(eb => permissions.buildPermissionQuery(authData, eb, permission, objOrId, table)).one();
196
+ } finally {
197
+ (0, import_where.setEvaluatingPermission)(false);
198
+ }
199
+ }
200
+ validateQuery?.({
201
+ authData,
202
+ queryName: name,
203
+ params: args
204
+ });
205
+ return (0, import_zero.mustGetQuery)(queries, name).fn({
206
+ args,
207
+ ctx: authData
208
+ });
209
+ }
210
+ function defaultMapClaims(claims) {
211
+ return {
212
+ ...claims,
213
+ id: typeof claims.id === "string" ? claims.id : claims.userID
214
+ };
215
+ }
216
+ function authToClaims(authData) {
217
+ const data = authData ?? {};
218
+ const userID = typeof data.id === "string" ? data.id : "server";
219
+ return {
220
+ ...data,
221
+ userID
222
+ };
223
+ }
224
+ function mutationApplicationError(error) {
225
+ const message = error instanceof Error ? error.message : String(error);
226
+ return new import_sync_executor.MutationApplicationError(message, message);
227
+ }
@@ -0,0 +1,314 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var orez_exports = {};
26
+ __export(orez_exports, {
27
+ createOrezBindings: () => createOrezBindings
28
+ });
29
+ module.exports = __toCommonJS(orez_exports);
30
+ var import_zero = require("@rocicorp/zero");
31
+ var import_bindings = require("@rocicorp/zero/bindings");
32
+ var import_server = require("@rocicorp/zero/server");
33
+ var import_helpers = require("@take-out/helpers");
34
+ var import_sync_executor = require("orez/sync-executor");
35
+ var import_createPermissions = require("./createPermissions.native.js");
36
+ var import_createMutators = require("./helpers/createMutators.native.js");
37
+ var import_mutatorContext = require("./helpers/mutatorContext.native.js");
38
+ var import_queryContext = require("./helpers/queryContext.native.js");
39
+ var import_modelRegistry = require("./modelRegistry.native.js");
40
+ var import_run = require("./run.native.js");
41
+ var import_state = require("./state.native.js");
42
+ var import_where = require("./where.native.js");
43
+ var import_zeroRunner = require("./zeroRunner.native.js");
44
+ function _instanceof(left, right) {
45
+ if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
46
+ return !!right[Symbol.hasInstance](left);
47
+ } else {
48
+ return left instanceof right;
49
+ }
50
+ }
51
+ function createOrezBindings(options) {
52
+ (0, import_state.setSchema)(options.schema, (0, import_zero.createBuilder)(options.schema));
53
+ (0, import_state.setEnvironment)("server");
54
+ if (options.queries) (0, import_run.setCustomQueries)(options.queries);
55
+ var _options_mapClaims;
56
+ var mapClaims = (_options_mapClaims = options.mapClaims) !== null && _options_mapClaims !== void 0 ? _options_mapClaims : defaultMapClaims;
57
+ var _options_defaultAllowAdminRole;
58
+ var permissions = (0, import_createPermissions.createPermissions)({
59
+ environment: "server",
60
+ schema: options.schema,
61
+ adminRoleMode: (_options_defaultAllowAdminRole = options.defaultAllowAdminRole) !== null && _options_defaultAllowAdminRole !== void 0 ? _options_defaultAllowAdminRole : "all"
62
+ });
63
+ var registry = {};
64
+ var invocation = (0, import_helpers.createAsyncContext)();
65
+ var decoratedMutators = (0, import_createMutators.createMutators)({
66
+ authData: null,
67
+ can: permissions.can,
68
+ createServerActions: options.createServerActions,
69
+ environment: "server",
70
+ models: options.models,
71
+ mutationValidators: options.mutations,
72
+ validateMutation: options.validateMutation ? async function (input) {
73
+ try {
74
+ await options.validateMutation(input);
75
+ } catch (error) {
76
+ throw mutationApplicationError(error);
77
+ }
78
+ } : void 0,
79
+ resolveAuthData: function () {
80
+ var _invocation_get;
81
+ var _invocation_get_authData;
82
+ return (_invocation_get_authData = (_invocation_get = invocation.get()) === null || _invocation_get === void 0 ? void 0 : _invocation_get.authData) !== null && _invocation_get_authData !== void 0 ? _invocation_get_authData : null;
83
+ },
84
+ enqueueTask(task, taskOptions) {
85
+ var current = invocation.get();
86
+ if (!current) throw new Error("on-zero task scheduled outside an Orez mutation");
87
+ current.ctx.defer(function () {
88
+ return (0, import_mutatorContext.runWithAuthScope)(current.authData, task);
89
+ }, taskOptions);
90
+ }
91
+ });
92
+ var _iteratorNormalCompletion = true,
93
+ _didIteratorError = false,
94
+ _iteratorError = void 0;
95
+ try {
96
+ var _loop = function () {
97
+ var [modelName, model] = _step.value;
98
+ var _model_mutate;
99
+ var _iteratorNormalCompletion2 = true,
100
+ _didIteratorError2 = false,
101
+ _iteratorError2 = void 0;
102
+ try {
103
+ var _loop2 = function () {
104
+ var mutatorName = _step1.value;
105
+ registry[`${modelName}|${mutatorName}`] = async function (param) {
106
+ var {
107
+ tx,
108
+ args,
109
+ ctx
110
+ } = param;
111
+ var _decoratedMutators_modelName;
112
+ var authData = mapClaims(ctx.claims);
113
+ var mutation = (_decoratedMutators_modelName = decoratedMutators[modelName]) === null || _decoratedMutators_modelName === void 0 ? void 0 : _decoratedMutators_modelName[mutatorName];
114
+ if (!mutation) throw new Error(`unknown on-zero mutator: ${modelName}|${mutatorName}`);
115
+ try {
116
+ await invocation.run({
117
+ authData,
118
+ ctx
119
+ }, function () {
120
+ return mutation(tx, args);
121
+ });
122
+ } catch (error) {
123
+ var name = error === null || error === void 0 ? void 0 : error.name;
124
+ if (name === "MutationApplicationError") throw error;
125
+ if (name !== "PermissionError" && name !== "ValiError") throw error;
126
+ throw mutationApplicationError(error);
127
+ }
128
+ };
129
+ };
130
+ for (var _iterator2 = Object.keys((_model_mutate = model.mutate) !== null && _model_mutate !== void 0 ? _model_mutate : {})[Symbol.iterator](), _step1; !(_iteratorNormalCompletion2 = (_step1 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) _loop2();
131
+ } catch (err) {
132
+ _didIteratorError2 = true;
133
+ _iteratorError2 = err;
134
+ } finally {
135
+ try {
136
+ if (!_iteratorNormalCompletion2 && _iterator2.return != null) {
137
+ _iterator2.return();
138
+ }
139
+ } finally {
140
+ if (_didIteratorError2) {
141
+ throw _iteratorError2;
142
+ }
143
+ }
144
+ }
145
+ };
146
+ for (var _iterator = Object.entries(options.models)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _loop();
147
+ } catch (err) {
148
+ _didIteratorError = true;
149
+ _iteratorError = err;
150
+ } finally {
151
+ try {
152
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
153
+ _iterator.return();
154
+ }
155
+ } finally {
156
+ if (_didIteratorError) {
157
+ throw _iteratorError;
158
+ }
159
+ }
160
+ }
161
+ var bindings = {
162
+ mutators: (0, import_sync_executor.registerMutators)(registry),
163
+ async resolveQuery(name, args, claims) {
164
+ if (!options.queries) {
165
+ throw new Error("No queries registered with createOrezBindings.");
166
+ }
167
+ var authData = mapClaims(claims);
168
+ var query = await (0, import_queryContext.runWithQueryContext)({
169
+ authData
170
+ }, function () {
171
+ return resolveServerQuery({
172
+ authData,
173
+ name,
174
+ args: args[0],
175
+ queries: options.queries,
176
+ permissions,
177
+ validateQuery: options.validateQuery
178
+ });
179
+ });
180
+ return (0, import_bindings.asQueryInternals)(query).ast;
181
+ },
182
+ async transformQueryRequest(param) {
183
+ var {
184
+ authData,
185
+ request
186
+ } = param;
187
+ if (!options.queries) {
188
+ throw new Error("No queries registered with createOrezBindings.");
189
+ }
190
+ var handler = function (name, args) {
191
+ return resolveServerQuery({
192
+ authData,
193
+ name,
194
+ args,
195
+ queries: options.queries,
196
+ permissions,
197
+ validateQuery: options.validateQuery
198
+ });
199
+ };
200
+ var userID = typeof (authData === null || authData === void 0 ? void 0 : authData.id) === "string" ? authData.id : void 0;
201
+ return (0, import_queryContext.runWithQueryContext)({
202
+ authData: authData || {}
203
+ }, function () {
204
+ return userID === void 0 ? (0, import_server.handleQueryRequest)(handler, options.schema, request) : (0, import_server.handleQueryRequest)({
205
+ handler,
206
+ schema: options.schema,
207
+ request,
208
+ userID
209
+ });
210
+ });
211
+ },
212
+ server(executor) {
213
+ var transaction = function (claims, work) {
214
+ return executor.transaction(claims, function (tx) {
215
+ return work(tx);
216
+ });
217
+ };
218
+ (0, import_zeroRunner.setRunner)(function (query) {
219
+ return transaction({
220
+ userID: "server"
221
+ }, function (tx) {
222
+ return tx.run(query);
223
+ });
224
+ });
225
+ var mutate = new Proxy({}, {
226
+ get(_target, modelName) {
227
+ return new Proxy({}, {
228
+ get(_inner, mutatorName) {
229
+ var _options_models_modelName_mutate, _options_models_modelName;
230
+ var handler = (_options_models_modelName = options.models[modelName]) === null || _options_models_modelName === void 0 ? void 0 : (_options_models_modelName_mutate = _options_models_modelName.mutate) === null || _options_models_modelName_mutate === void 0 ? void 0 : _options_models_modelName_mutate[mutatorName];
231
+ var acceptsArgument = typeof handler === "function" && handler.length > 1;
232
+ return function (argsOrOptions, optionsForArgument) {
233
+ var args = acceptsArgument ? argsOrOptions : null;
234
+ var mutateOptions = acceptsArgument ? optionsForArgument : argsOrOptions;
235
+ var _mutateOptions_authData;
236
+ var scoped = (_mutateOptions_authData = mutateOptions === null || mutateOptions === void 0 ? void 0 : mutateOptions.authData) !== null && _mutateOptions_authData !== void 0 ? _mutateOptions_authData : (0, import_mutatorContext.getScopedAuthData)();
237
+ var claims = authToClaims(scoped);
238
+ return executor.execute(`${modelName}|${mutatorName}`, args, claims);
239
+ };
240
+ }
241
+ });
242
+ }
243
+ });
244
+ return {
245
+ mutate,
246
+ transaction,
247
+ query(claims, work) {
248
+ return (0, import_queryContext.runWithQueryContext)({
249
+ authData: mapClaims(claims)
250
+ }, function () {
251
+ return executor.query(claims, function (tx) {
252
+ return tx.run(work((0, import_state.getZQL)()));
253
+ });
254
+ });
255
+ }
256
+ };
257
+ }
258
+ };
259
+ return bindings;
260
+ }
261
+ function resolveServerQuery(param) {
262
+ var {
263
+ authData,
264
+ name,
265
+ args,
266
+ queries,
267
+ permissions,
268
+ validateQuery
269
+ } = param;
270
+ if (name.startsWith("permission.")) {
271
+ var table = name.slice("permission.".length);
272
+ var {
273
+ objOrId
274
+ } = args;
275
+ var permission = (0, import_modelRegistry.getMutationsPermissions)(table);
276
+ if (!permission) throw new Error(`[permission] no permission defined for table: ${table}`);
277
+ (0, import_where.setEvaluatingPermission)(true);
278
+ try {
279
+ return (0, import_state.getZQL)()[table].where(function (eb) {
280
+ return permissions.buildPermissionQuery(authData, eb, permission, objOrId, table);
281
+ }).one();
282
+ } finally {
283
+ (0, import_where.setEvaluatingPermission)(false);
284
+ }
285
+ }
286
+ validateQuery === null || validateQuery === void 0 ? void 0 : validateQuery({
287
+ authData,
288
+ queryName: name,
289
+ params: args
290
+ });
291
+ return (0, import_zero.mustGetQuery)(queries, name).fn({
292
+ args,
293
+ ctx: authData
294
+ });
295
+ }
296
+ function defaultMapClaims(claims) {
297
+ return {
298
+ ...claims,
299
+ id: typeof claims.id === "string" ? claims.id : claims.userID
300
+ };
301
+ }
302
+ function authToClaims(authData) {
303
+ var data = authData !== null && authData !== void 0 ? authData : {};
304
+ var userID = typeof data.id === "string" ? data.id : "server";
305
+ return {
306
+ ...data,
307
+ userID
308
+ };
309
+ }
310
+ function mutationApplicationError(error) {
311
+ var message = _instanceof(error, Error) ? error.message : String(error);
312
+ return new import_sync_executor.MutationApplicationError(message, message);
313
+ }
314
+ //# sourceMappingURL=orez.native.js.map