on-zero 0.1.39 → 0.1.41

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 (84) hide show
  1. package/dist/cjs/createUseQuery.cjs +3 -2
  2. package/dist/cjs/createUseQuery.js +2 -2
  3. package/dist/cjs/createUseQuery.js.map +1 -1
  4. package/dist/cjs/createUseQuery.native.js +3 -2
  5. package/dist/cjs/createUseQuery.native.js.map +1 -1
  6. package/dist/cjs/createZeroClient.cjs +28 -5
  7. package/dist/cjs/createZeroClient.js +19 -4
  8. package/dist/cjs/createZeroClient.js.map +1 -1
  9. package/dist/cjs/createZeroClient.native.js +29 -5
  10. package/dist/cjs/createZeroClient.native.js.map +1 -1
  11. package/dist/cjs/createZeroServer.cjs +5 -2
  12. package/dist/cjs/createZeroServer.js +5 -2
  13. package/dist/cjs/createZeroServer.js.map +1 -1
  14. package/dist/cjs/createZeroServer.native.js +5 -2
  15. package/dist/cjs/createZeroServer.native.js.map +1 -1
  16. package/dist/cjs/generate.cjs +458 -39
  17. package/dist/cjs/generate.js +485 -31
  18. package/dist/cjs/generate.js.map +2 -2
  19. package/dist/cjs/generate.native.js +812 -51
  20. package/dist/cjs/generate.native.js.map +1 -1
  21. package/dist/cjs/generate.test.cjs +251 -0
  22. package/dist/cjs/generate.test.js +252 -0
  23. package/dist/cjs/generate.test.js.map +1 -1
  24. package/dist/cjs/generate.test.native.js +251 -0
  25. package/dist/cjs/generate.test.native.js.map +1 -1
  26. package/dist/cjs/helpers/createMutators.cjs +21 -8
  27. package/dist/cjs/helpers/createMutators.js +16 -6
  28. package/dist/cjs/helpers/createMutators.js.map +1 -1
  29. package/dist/cjs/helpers/createMutators.native.js +28 -10
  30. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  31. package/dist/esm/createUseQuery.js +3 -3
  32. package/dist/esm/createUseQuery.js.map +1 -1
  33. package/dist/esm/createUseQuery.mjs +4 -3
  34. package/dist/esm/createUseQuery.mjs.map +1 -1
  35. package/dist/esm/createUseQuery.native.js +4 -3
  36. package/dist/esm/createUseQuery.native.js.map +1 -1
  37. package/dist/esm/createZeroClient.js +19 -4
  38. package/dist/esm/createZeroClient.js.map +1 -1
  39. package/dist/esm/createZeroClient.mjs +28 -5
  40. package/dist/esm/createZeroClient.mjs.map +1 -1
  41. package/dist/esm/createZeroClient.native.js +29 -5
  42. package/dist/esm/createZeroClient.native.js.map +1 -1
  43. package/dist/esm/createZeroServer.js +5 -2
  44. package/dist/esm/createZeroServer.js.map +1 -1
  45. package/dist/esm/createZeroServer.mjs +5 -2
  46. package/dist/esm/createZeroServer.mjs.map +1 -1
  47. package/dist/esm/createZeroServer.native.js +5 -2
  48. package/dist/esm/createZeroServer.native.js.map +1 -1
  49. package/dist/esm/generate.js +486 -32
  50. package/dist/esm/generate.js.map +2 -2
  51. package/dist/esm/generate.mjs +459 -40
  52. package/dist/esm/generate.mjs.map +1 -1
  53. package/dist/esm/generate.native.js +813 -52
  54. package/dist/esm/generate.native.js.map +1 -1
  55. package/dist/esm/generate.test.js +252 -0
  56. package/dist/esm/generate.test.js.map +1 -1
  57. package/dist/esm/generate.test.mjs +251 -0
  58. package/dist/esm/generate.test.mjs.map +1 -1
  59. package/dist/esm/generate.test.native.js +251 -0
  60. package/dist/esm/generate.test.native.js.map +1 -1
  61. package/dist/esm/helpers/createMutators.js +6 -4
  62. package/dist/esm/helpers/createMutators.js.map +1 -1
  63. package/dist/esm/helpers/createMutators.mjs +6 -4
  64. package/dist/esm/helpers/createMutators.mjs.map +1 -1
  65. package/dist/esm/helpers/createMutators.native.js +13 -6
  66. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  67. package/package.json +2 -2
  68. package/readme.md +110 -2
  69. package/src/createUseQuery.tsx +15 -6
  70. package/src/createZeroClient.tsx +42 -6
  71. package/src/createZeroServer.ts +9 -0
  72. package/src/generate.test.ts +340 -0
  73. package/src/generate.ts +863 -43
  74. package/src/helpers/createMutators.ts +22 -8
  75. package/types/createUseQuery.d.ts +2 -1
  76. package/types/createUseQuery.d.ts.map +1 -1
  77. package/types/createZeroClient.d.ts +10 -1
  78. package/types/createZeroClient.d.ts.map +1 -1
  79. package/types/createZeroServer.d.ts +7 -1
  80. package/types/createZeroServer.d.ts.map +1 -1
  81. package/types/generate.d.ts +1 -0
  82. package/types/generate.d.ts.map +1 -1
  83. package/types/helpers/createMutators.d.ts +3 -1
  84. package/types/helpers/createMutators.d.ts.map +1 -1
@@ -1,5 +1,5 @@
1
1
  import { useQuery as zeroUseQuery } from "@rocicorp/zero/react";
2
- import { use, useMemo } from "react";
2
+ import { use, useMemo, useRef } from "react";
3
3
  import { useZeroDebug } from "./helpers/useZeroDebug.native.js";
4
4
  import { resolveQuery } from "./resolveQuery.native.js";
5
5
  function _type_of(obj) {
@@ -17,7 +17,8 @@ function createUseQuery(param) {
17
17
  } = param;
18
18
  function useQuery() {
19
19
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
20
- var disabled = use(DisabledContext),
20
+ var disableMode = use(DisabledContext),
21
+ lastRef = useRef(EMPTY_RESPONSE),
21
22
  [fn, paramsOrOptions, optionsArg] = args,
22
23
  {
23
24
  queryRequest,
@@ -37,7 +38,7 @@ function createUseQuery(param) {
37
38
  };
38
39
  }, [fn, paramsOrOptions, optionsArg]),
39
40
  out = zeroUseQuery(queryRequest, options);
40
- return process.env.NODE_ENV === "development" && process.env.DEBUG_ZERO_QUERIES === "1" && useZeroDebug(queryRequest, options, out), disabled ? EMPTY_RESPONSE : out;
41
+ return process.env.NODE_ENV === "development" && process.env.DEBUG_ZERO_QUERIES === "1" && useZeroDebug(queryRequest, options, out), disableMode ? disableMode === "last-value" ? lastRef.current : EMPTY_RESPONSE : (lastRef.current = out, out);
41
42
  }
42
43
  return useQuery;
43
44
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useQuery","zeroUseQuery","use","useMemo","useZeroDebug","resolveQuery","_type_of","obj","Symbol","constructor","EMPTY_RESPONSE","type","createUseQuery","param","DisabledContext","customQueries","_len","arguments","length","args","Array","_key"],"sources":["../../src/createUseQuery.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,IAAYC,YAAA,QAAoB;AACzC,SAASC,GAAA,EAAKC,OAAA,QAA6B;AAE3C,SAASC,YAAA,QAAoB;AAC7B,SAASC,YAAA,QAAuC;AAkChD,SAAMC,SAAAC,GAAA,EAAiB;EAEhB,uBAAmD;;EACxD,OAAAA,GAAA,WAAAC,MAAA,UAAAD,GAAA,CAAAE,WAAA,KAAAD,MAAA,qBAAAD,GAAA;AAAA;AAEF,IAGyBG,cAAA,IACvB,MACE;EAKEC,IAAA;AAYA,EAAqC;AAWvC,SAAAC,cANgBA,CAAAC,KAAA;EAWlB;IAAAC,eAAA;IAAAC;EAAA,IAAAF,KAAA;EAEA,SAAOb,SAAA;IACT,SAAAgB,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,I","ignoreList":[]}
1
+ {"version":3,"names":["useQuery","zeroUseQuery","use","useMemo","useRef","useZeroDebug","resolveQuery","_type_of","obj","Symbol","constructor","EMPTY_RESPONSE","type","createUseQuery","param","DisabledContext","customQueries","_len","arguments","length","args","Array","_key"],"sources":["../../src/createUseQuery.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,IAAYC,YAAA,QAAoB;AACzC,SAASC,GAAA,EAAKC,OAAA,EAASC,MAAA,QAA4B;AAEnD,SAASC,YAAA,QAAoB;AAC7B,SAASC,YAAA,QAAuC;AAqChD,SAAMC,SAAAC,GAAA,EAAiB;EAEhB,uBAAmD;;EACxD,OAAAA,GAAA,WAAAC,MAAA,UAAAD,GAAA,CAAAE,WAAA,KAAAD,MAAA,qBAAAD,GAAA;AAAA;AAEF,IAGyBG,cAAA,IACvB,MACE;EAMEC,IAAA;AAYA,EAAqC;AAWvC,SAAAC,cANgBA,CAAAC,KAAA;EAgBlB;IAAAC,eAAA;IAAAC;EAAA,IAAAF,KAAA;EAEA,SAAOd,SAAA;IACT,SAAAiB,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,I","ignoreList":[]}
@@ -94,12 +94,14 @@ function createZeroClient({
94
94
  customQueries
95
95
  });
96
96
  function usePermission(table, objOrId, enabled = typeof objOrId < "u", debug = !1) {
97
- const disabled = use(DisabledContext), checkFn = permissionCheckFns[table], [data, status] = useQuery(
97
+ const disableMode = use(DisabledContext), lastRef = useRef(null), checkFn = permissionCheckFns[table], [data, status] = useQuery(
98
98
  checkFn,
99
99
  { objOrId },
100
- { enabled: !!(!disabled && enabled && objOrId && checkFn) }
100
+ { enabled: !!(!disableMode && enabled && objOrId && checkFn) }
101
101
  );
102
- return debug && console.info("usePermission()", { table, objOrId, data, status }), objOrId ? status.type === "unknown" ? null : !!data : !1;
102
+ if (debug && console.info("usePermission()", { table, objOrId, data, status }), !objOrId) return !1;
103
+ const result = status.type === "unknown" ? null : !!data;
104
+ return disableMode ? disableMode === "last-value" ? lastRef.current : null : (lastRef.current = result, result);
103
105
  }
104
106
  const ProvideZero = ({
105
107
  children,
@@ -155,13 +157,26 @@ function createZeroClient({
155
157
  const hasParams = optionsArg !== void 0 || paramsOrOptions && !("ttl" in paramsOrOptions), params = hasParams ? paramsOrOptions : void 0, options = hasParams ? optionsArg : paramsOrOptions, queryRequest = resolveQuery({ customQueries, fn: fnArg, params });
156
158
  return zero.preload(queryRequest, options);
157
159
  }
160
+ function getQuery(fn, params) {
161
+ return resolveQuery({ customQueries, fn, params });
162
+ }
163
+ function ControlQueries({
164
+ children,
165
+ action = "disable",
166
+ whenDisabled = "empty"
167
+ }) {
168
+ const mode = action === "enable" ? !1 : whenDisabled;
169
+ return /* @__PURE__ */ jsx(DisabledContext.Provider, { value: mode, children });
170
+ }
158
171
  return {
159
172
  zeroEvents,
160
173
  ProvideZero,
174
+ ControlQueries,
161
175
  useQuery,
162
176
  usePermission,
163
177
  zero,
164
- preload
178
+ preload,
179
+ getQuery
165
180
  };
166
181
  }
167
182
  export {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createZeroClient.tsx"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["zeroEvents"]
6
6
  }
@@ -78,19 +78,22 @@ function createZeroClient({
78
78
  customQueries
79
79
  });
80
80
  function usePermission(table, objOrId, enabled = typeof objOrId < "u", debug = !1) {
81
- const disabled = use(DisabledContext),
81
+ const disableMode = use(DisabledContext),
82
+ lastRef = useRef(null),
82
83
  checkFn = permissionCheckFns[table],
83
84
  [data, status] = useQuery(checkFn, {
84
85
  objOrId
85
86
  }, {
86
- enabled: !!(!disabled && enabled && objOrId && checkFn)
87
+ enabled: !!(!disableMode && enabled && objOrId && checkFn)
87
88
  });
88
- return debug && console.info("usePermission()", {
89
+ if (debug && console.info("usePermission()", {
89
90
  table,
90
91
  objOrId,
91
92
  data,
92
93
  status
93
- }), objOrId ? status.type === "unknown" ? null : !!data : !1;
94
+ }), !objOrId) return !1;
95
+ const result = status.type === "unknown" ? null : !!data;
96
+ return disableMode ? disableMode === "last-value" ? lastRef.current : null : (lastRef.current = result, result);
94
97
  }
95
98
  const ProvideZero = ({
96
99
  children,
@@ -152,13 +155,33 @@ function createZeroClient({
152
155
  });
153
156
  return zero.preload(queryRequest, options);
154
157
  }
158
+ function getQuery(fn, params) {
159
+ return resolveQuery({
160
+ customQueries,
161
+ fn,
162
+ params
163
+ });
164
+ }
165
+ function ControlQueries({
166
+ children,
167
+ action = "disable",
168
+ whenDisabled = "empty"
169
+ }) {
170
+ const mode = action === "enable" ? !1 : whenDisabled;
171
+ return /* @__PURE__ */jsx(DisabledContext.Provider, {
172
+ value: mode,
173
+ children
174
+ });
175
+ }
155
176
  return {
156
177
  zeroEvents,
157
178
  ProvideZero,
179
+ ControlQueries,
158
180
  useQuery,
159
181
  usePermission,
160
182
  zero,
161
- preload
183
+ preload,
184
+ getQuery
162
185
  };
163
186
  }
164
187
  export { createZeroClient };
@@ -1 +1 @@
1
- {"version":3,"names":["defineQueries","defineQuery","useConnectionState","useZero","ZeroProvider","createEmitter","createContext","memo","use","useEffect","useMemo","useRef","createPermissions","createUseQuery","createMutators","getAuth","getAllMutationsPermissions","getMutationsPermissions","registerQuery","resolveQuery","setCustomQueries","setAuthData","setSchema","getRawWhere","setEvaluatingPermission","setRunner","zql","jsx","jsxs","createZeroClient","schema","models","groupedQueries","permissionStrategy","permissionsHelpers","environment","wrappedNamespaces","namespace","queries","Object","entries","name","fn","args","permissionCheckFns","createPermissionCheckFn","table","perm","base","objOrId","where","eb","cmpLit","one","rawPerm","buildPermissionQuery","e","and","permission","customQueries","DisabledContext","latestZeroInstance","zero","Proxy","get","_","key","Error","Reflect","zeroEvents","AuthDataContext","useQuery","usePermission","enabled","debug","disabled","checkFn","data","status","console","info","type","ProvideZero","children","authData","authDataIn","disable","props","mutators","can","Provider","value","kvStore","SetZeroInstance","ConnectionMonitor","zeroInstance","query","options","run","zeroEvents2","state","prevState","current","reason","message","emit","preload","fnArg","paramsOrOptions","optionsArg","hasParams","params","queryRequest"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["defineQueries","defineQuery","useConnectionState","useZero","ZeroProvider","createEmitter","createContext","memo","use","useEffect","useMemo","useRef","createPermissions","createUseQuery","createMutators","getAuth","getAllMutationsPermissions","getMutationsPermissions","registerQuery","resolveQuery","setCustomQueries","setAuthData","setSchema","getRawWhere","setEvaluatingPermission","setRunner","zql","jsx","jsxs","createZeroClient","schema","models","groupedQueries","permissionStrategy","permissionsHelpers","environment","wrappedNamespaces","namespace","queries","Object","entries","name","fn","args","permissionCheckFns","createPermissionCheckFn","table","perm","base","objOrId","where","eb","cmpLit","one","rawPerm","buildPermissionQuery","e","and","permission","customQueries","DisabledContext","latestZeroInstance","zero","Proxy","get","_","key","Error","Reflect","zeroEvents","AuthDataContext","useQuery","usePermission","enabled","debug","disableMode","lastRef","checkFn","data","status","console","info","result","type","current","ProvideZero","children","authData","authDataIn","disable","props","mutators","can","Provider","value","kvStore","SetZeroInstance","ConnectionMonitor","zeroInstance","query","options","run","zeroEvents2","state","prevState","reason","message","emit","preload","fnArg","paramsOrOptions","optionsArg","hasParams","params","queryRequest","getQuery","ControlQueries","action","whenDisabled","mode"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -141,20 +141,23 @@ function createZeroClient(param) {
141
141
  function usePermission(table, objOrId) {
142
142
  var enabled = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : typeof objOrId < "u",
143
143
  debug = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : !1,
144
- disabled = use(DisabledContext),
144
+ disableMode = use(DisabledContext),
145
+ lastRef = useRef(null),
145
146
  tableStr = table,
146
147
  checkFn = permissionCheckFns[tableStr],
147
148
  [data, status] = useQuery(checkFn, {
148
149
  objOrId
149
150
  }, {
150
- enabled: !!(!disabled && enabled && objOrId && checkFn)
151
+ enabled: !!(!disableMode && enabled && objOrId && checkFn)
151
152
  });
152
- return debug && console.info("usePermission()", {
153
+ if (debug && console.info("usePermission()", {
153
154
  table,
154
155
  objOrId,
155
156
  data,
156
157
  status
157
- }), objOrId ? status.type === "unknown" ? null : !!data : !1;
158
+ }), !objOrId) return !1;
159
+ var result = status.type === "unknown" ? null : !!data;
160
+ return disableMode ? disableMode === "last-value" ? lastRef.current : null : (lastRef.current = result, result);
158
161
  }
159
162
  var ProvideZero = function (param2) {
160
163
  var {
@@ -225,13 +228,34 @@ function createZeroClient(param) {
225
228
  });
226
229
  return zero.preload(queryRequest, options);
227
230
  }
231
+ function getQuery(fn, params) {
232
+ return resolveQuery({
233
+ customQueries,
234
+ fn,
235
+ params
236
+ });
237
+ }
238
+ function ControlQueries(param2) {
239
+ var {
240
+ children,
241
+ action = "disable",
242
+ whenDisabled = "empty"
243
+ } = param2,
244
+ mode = action === "enable" ? !1 : whenDisabled;
245
+ return /* @__PURE__ */_jsx(DisabledContext.Provider, {
246
+ value: mode,
247
+ children
248
+ });
249
+ }
228
250
  return {
229
251
  zeroEvents,
230
252
  ProvideZero,
253
+ ControlQueries,
231
254
  useQuery,
232
255
  usePermission,
233
256
  zero,
234
- preload
257
+ preload,
258
+ getQuery
235
259
  };
236
260
  }
237
261
  export { createZeroClient };
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","defineQueries","defineQuery","useConnectionState","useZero","ZeroProvider","createEmitter","createContext","memo","use","useEffect","useMemo","useRef","createPermissions","createUseQuery","createMutators","getAuth","getAllMutationsPermissions","getMutationsPermissions","registerQuery","resolveQuery","setCustomQueries","setAuthData","setSchema","getRawWhere","setEvaluatingPermission","setRunner","zql","createZeroClient","param","schema","models","groupedQueries","permissionStrategy","permissionsHelpers","environment","wrappedNamespaces","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","Symbol","iterator","_step","next","done","namespace","queries","value","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","name","fn","_step1","param2","args","_iterator1","err","return","permissionCheckFns","createPermissionCheckFn","table","perm","base","objOrId","where","eb","cmpLit","one","rawPerm","buildPermissionQuery","e","and","permission","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop1","_step2","_iterator2","customQueries","DisabledContext","latestZeroInstance","zero","Proxy","get","_","key","Error","Reflect","zeroEvents","AuthDataContext","useQuery","usePermission","enabled","arguments","length","debug","disabled","tableStr","checkFn","data","status","console","info","type","ProvideZero","children","authData","authDataIn","disable","props","mutators","can","Provider","kvStore","SetZeroInstance","ConnectionMonitor"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","defineQueries","defineQuery","useConnectionState","useZero","ZeroProvider","createEmitter","createContext","memo","use","useEffect","useMemo","useRef","createPermissions","createUseQuery","createMutators","getAuth","getAllMutationsPermissions","getMutationsPermissions","registerQuery","resolveQuery","setCustomQueries","setAuthData","setSchema","getRawWhere","setEvaluatingPermission","setRunner","zql","createZeroClient","param","schema","models","groupedQueries","permissionStrategy","permissionsHelpers","environment","wrappedNamespaces","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","Symbol","iterator","_step","next","done","namespace","queries","value","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","name","fn","_step1","param2","args","_iterator1","err","return","permissionCheckFns","createPermissionCheckFn","table","perm","base","objOrId","where","eb","cmpLit","one","rawPerm","buildPermissionQuery","e","and","permission","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop1","_step2","_iterator2","customQueries","DisabledContext","latestZeroInstance","zero","Proxy","get","_","key","Error","Reflect","zeroEvents","AuthDataContext","useQuery","usePermission","enabled","arguments","length","debug","disableMode","lastRef","tableStr","checkFn","data","status","console","info","result","type","current","ProvideZero","children","authData","authDataIn","disable","props","mutators","can","Provider","kvStore","SetZeroInstance","ConnectionMonitor","zeroInstance","query","options","run","zeroEvents2","state","prevState","reason","message"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -23,6 +23,7 @@ function createZeroServer({
23
23
  schema,
24
24
  models,
25
25
  queries,
26
+ mutations: mutationValidators,
26
27
  validateQuery,
27
28
  validateMutation,
28
29
  defaultAllowAdminRole = "all",
@@ -57,7 +58,8 @@ function createZeroServer({
57
58
  environment: "server",
58
59
  models,
59
60
  authData,
60
- validateMutation
61
+ validateMutation,
62
+ mutationValidators
61
63
  }), response = await processor.process(mutators, request);
62
64
  if (!skipAsyncTasks && asyncTasks.length) {
63
65
  const id = randomId();
@@ -119,7 +121,8 @@ function createZeroServer({
119
121
  },
120
122
  createServerActions,
121
123
  can: permissions.can,
122
- validateMutation
124
+ validateMutation,
125
+ mutationValidators
123
126
  })[modelName][mutatorName];
124
127
  if (await transaction(async (tx) => {
125
128
  await mutator(tx, mutatorArg);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createZeroServer.ts"],
4
- "mappings": "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",
4
+ "mappings": "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",
5
5
  "names": ["_", "query"]
6
6
  }
@@ -18,6 +18,7 @@ function createZeroServer({
18
18
  schema,
19
19
  models,
20
20
  queries,
21
+ mutations: mutationValidators,
21
22
  validateQuery,
22
23
  validateMutation,
23
24
  defaultAllowAdminRole = "all",
@@ -59,7 +60,8 @@ function createZeroServer({
59
60
  environment: "server",
60
61
  models,
61
62
  authData,
62
- validateMutation
63
+ validateMutation,
64
+ mutationValidators
63
65
  }),
64
66
  response = await processor.process(mutators, request);
65
67
  if (!skipAsyncTasks && asyncTasks.length) {
@@ -120,7 +122,8 @@ function createZeroServer({
120
122
  },
121
123
  createServerActions,
122
124
  can: permissions.can,
123
- validateMutation
125
+ validateMutation,
126
+ mutationValidators
124
127
  })[modelName][mutatorName];
125
128
  if (await transaction(async tx => {
126
129
  await mutator(tx, mutatorArg);
@@ -1 +1 @@
1
- {"version":3,"names":["mustGetQuery","PushProcessor","handleQueryRequest","zeroHandleQueryRequest","zeroNodePg","assertString","randomId","Pool","createPermissions","createMutators","getScopedAuthData","isInZeroMutation","mutatorContext","runWithAuthScope","runWithQueryContext","getMutationsPermissions","setCustomQueries","getZQL","setSchema","setRunner","createZeroServer","createServerActions","database","schema","models","queries","validateQuery","validateMutation","defaultAllowAdminRole","defaultMutateAuthData","dbString","pool","connectionString","ssl","includes","rejectUnauthorized","on","error","console","message","client","zeroDb","permissions","environment","adminRoleMode","processor","handleMutationRequest","authData","request","skipAsyncTasks","asyncTasks","mutators","can","response","process","length","id","info","Promise","all","map","task","then","catch","err","Error","name","args","startsWith","table","slice","objOrId","perm","where","eb","buildPermissionQuery","one","queryName","params","fn","ctx","runMutate","modelName","mutatorName","mutatorArg","scoped","mutator","transaction","tx","resolvedAuth","t","mutate","Proxy","get","_","_2","arg","query2","dummyTransactionInput","query","cb","run","queryObj","clientGroupID","clientID","mutationID","upstreamSchema"],"sources":["../../src/createZeroServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["mustGetQuery","PushProcessor","handleQueryRequest","zeroHandleQueryRequest","zeroNodePg","assertString","randomId","Pool","createPermissions","createMutators","getScopedAuthData","isInZeroMutation","mutatorContext","runWithAuthScope","runWithQueryContext","getMutationsPermissions","setCustomQueries","getZQL","setSchema","setRunner","createZeroServer","createServerActions","database","schema","models","queries","mutations","mutationValidators","validateQuery","validateMutation","defaultAllowAdminRole","defaultMutateAuthData","dbString","pool","connectionString","ssl","includes","rejectUnauthorized","on","error","console","message","client","zeroDb","permissions","environment","adminRoleMode","processor","handleMutationRequest","authData","request","skipAsyncTasks","asyncTasks","mutators","can","response","process","length","id","info","Promise","all","map","task","then","catch","err","Error","name","args","startsWith","table","slice","objOrId","perm","where","eb","buildPermissionQuery","one","queryName","params","fn","ctx","runMutate","modelName","mutatorName","mutatorArg","scoped","mutator","transaction","tx","resolvedAuth","t","mutate","Proxy","get","_","_2","arg","query2","dummyTransactionInput","query","cb","run","queryObj","clientGroupID","clientID","mutationID","upstreamSchema"],"sources":["../../src/createZeroServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -19,6 +19,7 @@ function createZeroServer(param) {
19
19
  schema,
20
20
  models,
21
21
  queries,
22
+ mutations: mutationValidators,
22
23
  validateQuery,
23
24
  validateMutation,
24
25
  defaultAllowAdminRole = "all",
@@ -61,7 +62,8 @@ function createZeroServer(param) {
61
62
  environment: "server",
62
63
  models,
63
64
  authData,
64
- validateMutation
65
+ validateMutation,
66
+ mutationValidators
65
67
  }),
66
68
  response = await processor.process(mutators, request);
67
69
  if (!skipAsyncTasks && asyncTasks.length) {
@@ -132,7 +134,8 @@ function createZeroServer(param) {
132
134
  },
133
135
  createServerActions,
134
136
  can: permissions.can,
135
- validateMutation
137
+ validateMutation,
138
+ mutationValidators
136
139
  }),
137
140
  modelMutators = mutators[modelName],
138
141
  mutator = modelMutators[mutatorName];
@@ -1 +1 @@
1
- {"version":3,"names":["mustGetQuery","PushProcessor","handleQueryRequest","zeroHandleQueryRequest","zeroNodePg","assertString","randomId","Pool","createPermissions","createMutators","getScopedAuthData","isInZeroMutation","mutatorContext","runWithAuthScope","runWithQueryContext","getMutationsPermissions","setCustomQueries","getZQL","setSchema","setRunner","createZeroServer","param","createServerActions","database","schema","models","queries","validateQuery","validateMutation","defaultAllowAdminRole","defaultMutateAuthData","dbString","pool","connectionString","ssl","includes","rejectUnauthorized","on","error","console","message","client","zeroDb","permissions","environment","adminRoleMode","processor","handleMutationRequest","param2","authData","request","skipAsyncTasks","asyncTasks","mutators","can","response","process","length","id","info","Promise","all","map","task","then","catch","err","Error","name","args","startsWith","table","slice","objOrId","perm","where","eb","buildPermissionQuery","one","queryName","params","_$query","fn","ctx","runMutate","modelName","mutatorName","mutatorArg","scoped","modelMutators","mutator","transaction","tx","resolvedAuth","t","mutate","Proxy","get","_","_2","arg","query2","output","dummyTransactionInput","query","cb","run","queryObj","clientGroupID","clientID","mutationID","upstreamSchema"],"sources":["../../src/createZeroServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["mustGetQuery","PushProcessor","handleQueryRequest","zeroHandleQueryRequest","zeroNodePg","assertString","randomId","Pool","createPermissions","createMutators","getScopedAuthData","isInZeroMutation","mutatorContext","runWithAuthScope","runWithQueryContext","getMutationsPermissions","setCustomQueries","getZQL","setSchema","setRunner","createZeroServer","param","createServerActions","database","schema","models","queries","mutations","mutationValidators","validateQuery","validateMutation","defaultAllowAdminRole","defaultMutateAuthData","dbString","pool","connectionString","ssl","includes","rejectUnauthorized","on","error","console","message","client","zeroDb","permissions","environment","adminRoleMode","processor","handleMutationRequest","param2","authData","request","skipAsyncTasks","asyncTasks","mutators","can","response","process","length","id","info","Promise","all","map","task","then","catch","err","Error","name","args","startsWith","table","slice","objOrId","perm","where","eb","buildPermissionQuery","one","queryName","params","_$query","fn","ctx","runMutate","modelName","mutatorName","mutatorArg","scoped","modelMutators","mutator","transaction","tx","resolvedAuth","t","mutate","Proxy","get","_","_2","arg","query2","output","dummyTransactionInput","query","cb","run","queryObj","clientGroupID","clientID","mutationID","upstreamSchema"],"sources":["../../src/createZeroServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}