on-zero 0.1.48 → 0.1.49

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 (66) hide show
  1. package/dist/cjs/createZeroClient.cjs +1 -1
  2. package/dist/cjs/createZeroClient.js +1 -1
  3. package/dist/cjs/createZeroClient.js.map +1 -1
  4. package/dist/cjs/createZeroClient.native.js +1 -1
  5. package/dist/cjs/createZeroClient.native.js.map +1 -1
  6. package/dist/cjs/createZeroServer.cjs +7 -1
  7. package/dist/cjs/createZeroServer.js +13 -8
  8. package/dist/cjs/createZeroServer.js.map +1 -1
  9. package/dist/cjs/createZeroServer.native.js +9 -3
  10. package/dist/cjs/createZeroServer.native.js.map +1 -1
  11. package/dist/cjs/serverWhere.test.cjs +106 -0
  12. package/dist/cjs/serverWhere.test.js +52 -0
  13. package/dist/cjs/serverWhere.test.js.map +6 -0
  14. package/dist/cjs/serverWhere.test.native.js +125 -0
  15. package/dist/cjs/serverWhere.test.native.js.map +1 -0
  16. package/dist/cjs/state.cjs +21 -11
  17. package/dist/cjs/state.js +15 -8
  18. package/dist/cjs/state.js.map +1 -1
  19. package/dist/cjs/state.native.js +23 -9
  20. package/dist/cjs/state.native.js.map +1 -1
  21. package/dist/cjs/usePermission.test.cjs +4 -4
  22. package/dist/cjs/usePermission.test.js +1 -1
  23. package/dist/cjs/usePermission.test.js.map +1 -1
  24. package/dist/cjs/usePermission.test.native.js +4 -4
  25. package/dist/cjs/usePermission.test.native.js.map +1 -1
  26. package/dist/esm/createZeroClient.js +2 -2
  27. package/dist/esm/createZeroClient.js.map +1 -1
  28. package/dist/esm/createZeroClient.mjs +2 -2
  29. package/dist/esm/createZeroClient.mjs.map +1 -1
  30. package/dist/esm/createZeroClient.native.js +2 -2
  31. package/dist/esm/createZeroClient.native.js.map +1 -1
  32. package/dist/esm/createZeroServer.js +13 -7
  33. package/dist/esm/createZeroServer.js.map +1 -1
  34. package/dist/esm/createZeroServer.mjs +7 -1
  35. package/dist/esm/createZeroServer.mjs.map +1 -1
  36. package/dist/esm/createZeroServer.native.js +9 -3
  37. package/dist/esm/createZeroServer.native.js.map +1 -1
  38. package/dist/esm/serverWhere.test.js +55 -0
  39. package/dist/esm/serverWhere.test.js.map +6 -0
  40. package/dist/esm/serverWhere.test.mjs +107 -0
  41. package/dist/esm/serverWhere.test.mjs.map +1 -0
  42. package/dist/esm/serverWhere.test.native.js +123 -0
  43. package/dist/esm/serverWhere.test.native.js.map +1 -0
  44. package/dist/esm/state.js +15 -7
  45. package/dist/esm/state.js.map +1 -1
  46. package/dist/esm/state.mjs +20 -10
  47. package/dist/esm/state.mjs.map +1 -1
  48. package/dist/esm/state.native.js +23 -9
  49. package/dist/esm/state.native.js.map +1 -1
  50. package/dist/esm/usePermission.test.js +3 -3
  51. package/dist/esm/usePermission.test.js.map +1 -1
  52. package/dist/esm/usePermission.test.mjs +3 -3
  53. package/dist/esm/usePermission.test.mjs.map +1 -1
  54. package/dist/esm/usePermission.test.native.js +3 -3
  55. package/dist/esm/usePermission.test.native.js.map +1 -1
  56. package/package.json +2 -2
  57. package/src/createZeroClient.tsx +7 -2
  58. package/src/createZeroServer.ts +19 -11
  59. package/src/serverWhere.test.ts +130 -0
  60. package/src/state.ts +24 -10
  61. package/src/usePermission.test.ts +3 -3
  62. package/types/createZeroClient.d.ts.map +1 -1
  63. package/types/createZeroServer.d.ts.map +1 -1
  64. package/types/serverWhere.test.d.ts +2 -0
  65. package/types/serverWhere.test.d.ts.map +1 -0
  66. package/types/state.d.ts.map +1 -1
@@ -46,7 +46,7 @@ function createZeroClient({
46
46
  groupedQueries,
47
47
  permissionStrategy = "optimistic"
48
48
  }) {
49
- (0, import_state.setSchema)(schema), (0, import_state.setEnvironment)("client");
49
+ (0, import_state.setSchema)(schema), (0, import_state.getEnvironment)() === null && (0, import_state.setEnvironment)("client");
50
50
  const permissionsHelpers = (0, import_createPermissions.createPermissions)({
51
51
  schema,
52
52
  environment: "client"
@@ -24,7 +24,7 @@ function createZeroClient({
24
24
  groupedQueries,
25
25
  permissionStrategy = "optimistic"
26
26
  }) {
27
- (0, import_state.setSchema)(schema), (0, import_state.setEnvironment)("client");
27
+ (0, import_state.setSchema)(schema), (0, import_state.getEnvironment)() === null && (0, import_state.setEnvironment)("client");
28
28
  const permissionsHelpers = (0, import_createPermissions.createPermissions)({
29
29
  schema,
30
30
  environment: "client"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/createZeroClient.tsx"],
4
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA2C,2BAC3C,eAA0D,iCAC1D,iBAA8B,8BAC9BA,gBAQO,kBAEP,2BAAkC,gCAClC,wBAAsD,6BACtD,wBAA+B,qCAC/B,iBAAwB,8BACxB,uBAAoE,4BACpE,uBAA8B,4BAC9B,sBAAgD,2BAChD,aAAiC,kBACjC,eAAuD,oBACvD,eAAqD,oBACrD,oBAA0B,yBAC1B,aAAoB,kBAiPZ;AAlOD,SAAS,iBAGd;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,qBAAqB;AACvB,GAKG;AAKD,8BAAU,MAAM,OAChB,6BAAe,QAAQ;AAEvB,QAAM,yBAAqB,4CAA0B;AAAA,IACnD;AAAA,IACA,aAAa;AAAA,EACf,CAAC,GAIK,oBAGF,CAAC;AAEL,aAAW,CAAC,WAAW,OAAO,KAAK,OAAO,QAAQ,cAAc,GAAG;AACjE,sBAAkB,SAAS,IAAI,CAAC;AAChC,eAAW,CAAC,MAAM,EAAE,KAAK,OAAO,QAAQ,OAAO;AAC7C,8CAAc,IAAI,GAAG,SAAS,IAAI,IAAI,EAAE,GAExC,kBAAkB,SAAS,EAAE,IAAI,QAAI;AAAA,QAAY,CAAC,EAAE,KAAK,MACvD,GAAG,IAAI;AAAA,MACT;AAAA,EAEJ;AAKA,QAAM,qBAGF,CAAC,GAEC,0BAA0B,CAAC,UAAkB;AACjD,UAAM,KAAK,CAAC,SAAoD;AAC9D,YAAM,WAAO,8CAAwB,KAAK,GACpC,OAAQ,eAAY,KAAK;AAE/B,UAAI,CAAC,KAAK;AACR,eAAO,KAAK,MAAM,CAAC,OAAY,GAAG,OAAO,IAAM,KAAK,EAAK,CAAC,EAAE,IAAI;AAGlE,UAAI,uBAAuB,cAAc;AAGvC,cAAM,UAAU,aAAO,0BAAY,IAAI,KAAK;AAC5C,eAAO,KACJ,MAAM,CAAC,OAAY;AAClB,oDAAwB,EAAI;AAC5B,cAAI;AACF,mBAAO,mBAAmB;AAAA,kBACxB,wBAAQ;AAAA,cACR;AAAA,cACA,YAAY,CAAC,MAAW,EAAE,IAAI;AAAA,cAC9B,KAAK;AAAA,cACL;AAAA,YACF;AAAA,UACF,UAAE;AACA,sDAAwB,EAAK;AAAA,UAC/B;AAAA,QACF,CAAC,EACA,IAAI;AAAA,MACT;AAEA,aAAI,uBAAuB,oBAElB,KAAK,MAAM,CAAC,OAAY,GAAG,OAAO,IAAM,KAAK,EAAK,CAAC,EAAE,IAAI,IAM3D,KACJ,MAAM,CAAC,OACC,mBAAmB;AAAA,YACxB,wBAAQ;AAAA,QACR;AAAA,QACA,SAAS,CAAC,MAAW,EAAE,IAAI;AAAA,QAC3B,KAAK;AAAA,QACL;AAAA,MACF,CACD,EACA,IAAI;AAAA,IACT;AACA,8BAAmB,KAAK,IAAI,QAC5B,oCAAc,IAAI,cAAc,KAAK,EAAE,GAChC;AAAA,EACT;AAEA,oBAAkB,aAAgB,CAAC;AACnC,aAAW,CAAC,KAAK,SAAK,iDAA2B,GAAG;AAClD,UAAM,KAAK,wBAAwB,KAAK;AACxC,sBAAkB,WAAc,KAAK,QAAI,yBAAY,CAAC,EAAE,KAAK,MAAW,GAAG,IAAI,CAAC;AAAA,EAClF;AAGA,QAAM,oBAAgB,2BAAc,iBAAiB;AAGrD,mCAAiB,aAAa;AAE9B,QAAM,sBAAkB,6BAAgC,EAAK;AAE7D,MAAI,qBAA0C;AAI9C,QAAM,OAAqB,IAAI,MAAM,CAAC,GAAY;AAAA,IAChD,IAAI,GAAG,KAAK;AACV,UAAI,uBAAuB;AACzB,cAAM,IAAI;AAAA,UACR;AAAA,QACF;AAEF,aAAO,QAAQ,IAAI,oBAAoB,KAAK,kBAAkB;AAAA,IAChE;AAAA,EACF,CAAC,GAEK,iBAAa,8BAAgC,QAAQ,IAAI,GAEzD,sBAAkB,6BAAwB,CAAC,CAAa,GAExD,eAAW,sCAAuB;AAAA,IACtC;AAAA,IACA;AAAA,EACF,CAAC;AAID,WAAS,cACP,OACA,SACA,UAAU,OAAO,UAAY,KAC7B,QAAQ,IACQ;AAChB,UAAM,kBAAc,mBAAI,eAAe,GACjC,cAAU,sBAAuB,IAAI,GAErC,UAAU,mBADC,KAC0B,GAKrC,WADO,wBAAQ,GACF,MAAM,QAEnB,CAAC,MAAM,MAAM,IAAI;AAAA,MACrB;AAAA,MACA,EAAE,SAAyB,KAAK;AAAA,MAChC,EAAE,SAAS,GAAQ,CAAC,eAAe,WAAW,WAAW,SAAS;AAAA,IACpE;AAMA,QAJI,SACF,QAAQ,KAAK,mBAAmB,EAAE,OAAO,SAAS,MAAM,OAAO,CAAC,GAG9D,CAAC,QAAS,QAAO;AAGrB,UAAM,SAAS,OAAO,SAAS,YAAY,OAAO,EAAQ;AAE1D,WAAK,cAKD,gBAAgB,eACX,QAAQ,UAGV,QARL,QAAQ,UAAU,QACX;AAAA,EAQX;AAEA,QAAM,cAAc,CAAC;AAAA,IACnB;AAAA,IACA,UAAU;AAAA,IACV;AAAA,IACA,GAAG;AAAA,EACL,MAIM;AACJ,UAAM,WAAY,cAAc;AAIhC,kCAAY,QAAQ;AAIpB,UAAM,eAAW,uBAAQ,UAChB,sCAAe;AAAA,MACpB;AAAA,MACA,aAAa;AAAA,MACb;AAAA,MACA,KAAK,mBAAmB;AAAA,IAC1B,CAAC,GAEA,CAAC,QAAQ,CAAC;AAGb,WAAI,UACK,WAIP,4CAAC,gBAAgB,UAAhB,EAAyB,OAAO,UAC/B;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,SAAQ;AAAA,QAER;AAAA,QACC,GAAG;AAAA,QAEJ;AAAA,sDAAC,mBAAgB;AAAA,UACjB,4CAAC,qBAAkB,YAAwB;AAAA,UAC1C;AAAA;AAAA;AAAA,IACH,GACF;AAAA,EAEJ,GAEM,kBAAkB,MAAM;AAC5B,UAAM,mBAAe,sBAA8B;AAQnD,WAAI,iBAAiB,uBACnB,qBAAqB,kBAErB,6BAAU,CAAC,OAAO,YAAY,aAAa,IAAI,OAAc,OAAO,CAAC,IAGhE;AAAA,EACT,GAGM,wBAAoB;AAAA,IACxB,CAAC;AAAA,MACC,YAAAC;AAAA,IACF,MAEM;AACJ,YAAM,YAAQ,iCAAmB,GAC3B,gBAAY,sBAAO,MAAM,IAAI;AAEnC,0CAAU,MAAM;AACd,YAAI,MAAM,SAAS,UAAU,SAAS;AACpC,gBAAM,SAAS,YAAY,QAAQ,MAAM,SAAS;AAGlD,cAFA,UAAU,UAAU,MAAM,MAEtB,MAAM,SAAS,WAAW,MAAM,SAAS,cAAc;AACzD,kBAAM,UAAU,OAAO,UAAW,WAAW,SAAS,MAAM;AAC5D,YAAAA,YAAW,KAAK;AAAA,cACd,MAAM;AAAA,cACN;AAAA,YACF,CAAC;AAAA,UACH;AAAA,QACF;AAAA,MACF,GAAG,CAAC,OAAOA,WAAU,CAAC,GAEf;AAAA,IACT;AAAA,EACF;AAaA,WAAS,QACP,OACA,iBACA,YACkD;AAClD,UAAM,YACJ,eAAe,UAAc,mBAAmB,EAAE,SAAS,kBACvD,SAAS,YAAY,kBAAkB,QACvC,UAAU,YAAY,aAAa,iBAEnC,mBAAe,kCAAa,EAAE,eAAe,IAAI,OAAO,OAAO,CAAC;AACtE,WAAO,KAAK,QAAQ,cAAqB,OAAO;AAAA,EAClD;AASA,WAAS,SAAS,IAAS,QAAc;AACvC,eAAO,kCAAa,EAAE,eAAe,IAAI,OAAO,CAAC;AAAA,EACnD;AAEA,WAAS,eAAe;AAAA,IACtB;AAAA,IACA,SAAS;AAAA,IACT,eAAe;AAAA,EACjB,GAIG;AACD,UAAM,OAAyB,WAAW,WAAW,KAAQ;AAC7D,WAAO,4CAAC,gBAAgB,UAAhB,EAAyB,OAAO,MAAO,UAAS;AAAA,EAC1D;AAEA,SAAO;AAAA,IACL;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
4
+ "mappings": "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",
5
5
  "names": ["import_react", "zeroEvents"]
6
6
  }
@@ -49,7 +49,7 @@ function createZeroClient(param) {
49
49
  groupedQueries,
50
50
  permissionStrategy = "optimistic"
51
51
  } = param;
52
- (0, import_state.setSchema)(schema), (0, import_state.setEnvironment)("client");
52
+ (0, import_state.setSchema)(schema), (0, import_state.getEnvironment)() === null && (0, import_state.setEnvironment)("client");
53
53
  var permissionsHelpers = (0, import_createPermissions.createPermissions)({
54
54
  schema,
55
55
  environment: "client"
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroClient_exports","__export","createZeroClient","module","exports","import_jsx_runtime","require","import_zero","import_react","import_helpers","import_react2","import_createPermissions","import_createUseQuery","import_createMutators","import_getAuth","import_modelRegistry","import_queryRegistry","import_resolveQuery","import_run","import_state","import_where","import_zeroRunner","import_zql","param","schema","models","groupedQueries","permissionStrategy","setSchema","setEnvironment","permissionsHelpers","createPermissions","environment","wrappedNamespaces","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","Symbol","iterator","_step","next","done","namespace","queries","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","name","fn","_step1","registerQuery","defineQuery","param2","args","_iterator1","err","return","permissionCheckFns","createPermissionCheckFn","table","perm","getMutationsPermissions","base","zql","objOrId","where","eb","cmpLit","one","rawPerm","getRawWhere","setEvaluatingPermission","buildPermissionQuery","getAuth","e","and","permission","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop1","_step2","_iterator2","getAllMutationsPermissions","customQueries","defineQueries","setCustomQueries","DisabledContext","createContext","latestZeroInstance","zero","Proxy","get","_","key","Error","Reflect","zeroEvents","createEmitter","AuthDataContext","useQuery","createUseQuery","usePermission","enabled","arguments","length","debug","disableMode","use","lastRef","useRef","tableStr","checkFn","auth","_uid","id","data","status","console","info","result","type","current","ProvideZero","children","authData","authDataIn","disable","props","setAuthData","mutators","useMemo","createMutators","can","jsx","Provider","jsxs","ZeroProvider","kvStore","SetZeroInstance","ConnectionMonitor","zeroInstance","useZero","setRunner","query","options"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroClient_exports","__export","createZeroClient","module","exports","import_jsx_runtime","require","import_zero","import_react","import_helpers","import_react2","import_createPermissions","import_createUseQuery","import_createMutators","import_getAuth","import_modelRegistry","import_queryRegistry","import_resolveQuery","import_run","import_state","import_where","import_zeroRunner","import_zql","param","schema","models","groupedQueries","permissionStrategy","setSchema","getEnvironment","setEnvironment","permissionsHelpers","createPermissions","environment","wrappedNamespaces","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","entries","Symbol","iterator","_step","next","done","namespace","queries","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_loop","name","fn","_step1","registerQuery","defineQuery","param2","args","_iterator1","err","return","permissionCheckFns","createPermissionCheckFn","table","perm","getMutationsPermissions","base","zql","objOrId","where","eb","cmpLit","one","rawPerm","getRawWhere","setEvaluatingPermission","buildPermissionQuery","getAuth","e","and","permission","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop1","_step2","_iterator2","getAllMutationsPermissions","customQueries","defineQueries","setCustomQueries","DisabledContext","createContext","latestZeroInstance","zero","Proxy","get","_","key","Error","Reflect","zeroEvents","createEmitter","AuthDataContext","useQuery","createUseQuery","usePermission","enabled","arguments","length","debug","disableMode","use","lastRef","useRef","tableStr","checkFn","auth","_uid","id","data","status","console","info","result","type","current","ProvideZero","children","authData","authDataIn","disable","props","setAuthData","mutators","useMemo","createMutators","can","jsx","Provider","jsxs","ZeroProvider","kvStore","SetZeroInstance","ConnectionMonitor","zeroInstance","useZero","setRunner","query","options"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -36,6 +36,7 @@ var import_zero = require("@rocicorp/zero"),
36
36
  import_modelRegistry = require("./modelRegistry.cjs"),
37
37
  import_run = require("./run.cjs"),
38
38
  import_state = require("./state.cjs"),
39
+ import_where = require("./where.cjs"),
39
40
  import_zeroRunner = require("./zeroRunner.cjs");
40
41
  function createZeroServer({
41
42
  createServerActions,
@@ -118,7 +119,12 @@ function createZeroServer({
118
119
  } = args,
119
120
  perm = (0, import_modelRegistry.getMutationsPermissions)(table);
120
121
  if (!perm) throw new Error(`[permission] no permission defined for table: ${table}`);
121
- return (0, import_state.getZQL)()[table].where(eb => permissions.buildPermissionQuery(authData, eb, perm, objOrId, table)).one();
122
+ (0, import_where.setEvaluatingPermission)(!0);
123
+ try {
124
+ return (0, import_state.getZQL)()[table].where(eb => permissions.buildPermissionQuery(authData, eb, perm, objOrId, table)).one();
125
+ } finally {
126
+ (0, import_where.setEvaluatingPermission)(!1);
127
+ }
122
128
  }
123
129
  return validateQuery && validateQuery({
124
130
  authData,
@@ -17,7 +17,7 @@ __export(createZeroServer_exports, {
17
17
  createZeroServer: () => createZeroServer
18
18
  });
19
19
  module.exports = __toCommonJS(createZeroServer_exports);
20
- var import_zero = require("@rocicorp/zero"), import_pg = require("@rocicorp/zero/pg"), import_server = require("@rocicorp/zero/server"), import_pg2 = require("@rocicorp/zero/server/adapters/pg"), import_helpers = require("@take-out/helpers"), import_pg3 = require("pg"), import_createPermissions = require("./createPermissions"), import_createMutators = require("./helpers/createMutators"), import_mutatorContext = require("./helpers/mutatorContext"), import_queryContext = require("./helpers/queryContext"), import_modelRegistry = require("./modelRegistry"), import_run = require("./run"), import_state = require("./state"), import_zeroRunner = require("./zeroRunner");
20
+ var import_zero = require("@rocicorp/zero"), import_pg = require("@rocicorp/zero/pg"), import_server = require("@rocicorp/zero/server"), import_pg2 = require("@rocicorp/zero/server/adapters/pg"), import_helpers = require("@take-out/helpers"), import_pg3 = require("pg"), import_createPermissions = require("./createPermissions"), import_createMutators = require("./helpers/createMutators"), import_mutatorContext = require("./helpers/mutatorContext"), import_queryContext = require("./helpers/queryContext"), import_modelRegistry = require("./modelRegistry"), import_run = require("./run"), import_state = require("./state"), import_where = require("./where"), import_zeroRunner = require("./zeroRunner");
21
21
  function createZeroServer({
22
22
  createServerActions,
23
23
  database,
@@ -91,13 +91,18 @@ function createZeroServer({
91
91
  const table = name.slice(11), { objOrId } = args, perm = (0, import_modelRegistry.getMutationsPermissions)(table);
92
92
  if (!perm)
93
93
  throw new Error(`[permission] no permission defined for table: ${table}`);
94
- return (0, import_state.getZQL)()[table].where((eb) => permissions.buildPermissionQuery(
95
- authData,
96
- eb,
97
- perm,
98
- objOrId,
99
- table
100
- )).one();
94
+ (0, import_where.setEvaluatingPermission)(!0);
95
+ try {
96
+ return (0, import_state.getZQL)()[table].where((eb) => permissions.buildPermissionQuery(
97
+ authData,
98
+ eb,
99
+ perm,
100
+ objOrId,
101
+ table
102
+ )).one();
103
+ } finally {
104
+ (0, import_where.setEvaluatingPermission)(!1);
105
+ }
101
106
  }
102
107
  return validateQuery && validateQuery({ authData, queryName: name, params: args }), (0, import_zero.mustGetQuery)(queries, name).fn({ args, ctx: authData });
103
108
  },
@@ -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": ["import_pg", "zeroHandleQueryRequest", "_", "query"]
6
6
  }
@@ -38,6 +38,7 @@ var import_zero = require("@rocicorp/zero"),
38
38
  import_modelRegistry = require("./modelRegistry.native.js"),
39
39
  import_run = require("./run.native.js"),
40
40
  import_state = require("./state.native.js"),
41
+ import_where = require("./where.native.js"),
41
42
  import_zeroRunner = require("./zeroRunner.native.js");
42
43
  function createZeroServer(param) {
43
44
  var {
@@ -125,9 +126,14 @@ function createZeroServer(param) {
125
126
  } = args,
126
127
  perm = (0, import_modelRegistry.getMutationsPermissions)(table);
127
128
  if (!perm) throw new Error(`[permission] no permission defined for table: ${table}`);
128
- return (0, import_state.getZQL)()[table].where(function (eb) {
129
- return permissions.buildPermissionQuery(authData, eb, perm, objOrId, table);
130
- }).one();
129
+ (0, import_where.setEvaluatingPermission)(!0);
130
+ try {
131
+ return (0, import_state.getZQL)()[table].where(function (eb) {
132
+ return permissions.buildPermissionQuery(authData, eb, perm, objOrId, table);
133
+ }).one();
134
+ } finally {
135
+ (0, import_where.setEvaluatingPermission)(!1);
136
+ }
131
137
  }
132
138
  validateQuery && validateQuery({
133
139
  authData,
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroServer_exports","__export","createZeroServer","module","exports","import_zero","require","import_pg","import_server","import_pg2","import_helpers","import_pg3","import_createPermissions","import_createMutators","import_mutatorContext","import_queryContext","import_modelRegistry","import_run","import_state","import_zeroRunner","param","createServerActions","database","schema","models","queries","mutations","mutationValidators","validateQuery","validateMutation","defaultAllowAdminRole","defaultMutateAuthData","setSchema","setEnvironment","dbString","assertString","pool","Pool","connectionString","ssl","includes","rejectUnauthorized","on","error","console","message","client","zeroDb","zeroNodePg","permissions","createPermissions","environment","adminRoleMode","processor","PushProcessor","handleMutationRequest","param2","authData","request","skipAsyncTasks","asyncTasks","mutators","createMutators","can","response","process","length","id","randomId","info","Promise","all","map","task","runWithAuthScope","then","catch","err","handleQueryRequest","Error","runWithQueryContext","name","args","startsWith","table","slice","objOrId","perm","getMutationsPermissions","getZQL","where","eb","buildPermissionQuery","one","queryName","params","_$query","mustGetQuery","fn","ctx","runMutate","modelName","mutatorName","mutatorArg","scoped","getScopedAuthData","modelMutators","mutator","transaction","tx","resolvedAuth","t","mutate","Proxy","get","_","_2","arg","query2","isInZeroMutation","mutatorContext","output","dummyTransactionInput","query","cb","run","setCustomQueries","setRunner","queryObj","clientGroupID","clientID","mutationID","upstreamSchema"],"sources":["../../src/createZeroServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createZeroServer_exports","__export","createZeroServer","module","exports","import_zero","require","import_pg","import_server","import_pg2","import_helpers","import_pg3","import_createPermissions","import_createMutators","import_mutatorContext","import_queryContext","import_modelRegistry","import_run","import_state","import_where","import_zeroRunner","param","createServerActions","database","schema","models","queries","mutations","mutationValidators","validateQuery","validateMutation","defaultAllowAdminRole","defaultMutateAuthData","setSchema","setEnvironment","dbString","assertString","pool","Pool","connectionString","ssl","includes","rejectUnauthorized","on","error","console","message","client","zeroDb","zeroNodePg","permissions","createPermissions","environment","adminRoleMode","processor","PushProcessor","handleMutationRequest","param2","authData","request","skipAsyncTasks","asyncTasks","mutators","createMutators","can","response","process","length","id","randomId","info","Promise","all","map","task","runWithAuthScope","then","catch","err","handleQueryRequest","Error","runWithQueryContext","name","args","startsWith","table","slice","objOrId","perm","getMutationsPermissions","setEvaluatingPermission","getZQL","where","eb","buildPermissionQuery","one","queryName","params","_$query","mustGetQuery","fn","ctx","runMutate","modelName","mutatorName","mutatorArg","scoped","getScopedAuthData","modelMutators","mutator","transaction","tx","resolvedAuth","t","mutate","Proxy","get","_","_2","arg","query2","isInZeroMutation","mutatorContext","output","dummyTransactionInput","query","cb","run","setCustomQueries","setRunner","queryObj","clientGroupID","clientID","mutationID","upstreamSchema"],"sources":["../../src/createZeroServer.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,106 @@
1
+ var import_vitest = require("vitest"),
2
+ import_serverWhere = require("./serverWhere.cjs"),
3
+ import_state = require("./state.cjs"),
4
+ import_where = require("./where.cjs");
5
+ function createMockEB() {
6
+ const calls = [];
7
+ return {
8
+ calls,
9
+ and: () => (calls.push("and()"), {
10
+ type: "noop"
11
+ }),
12
+ cmp: (field, value) => (calls.push(`cmp(${field}, ${value})`), {
13
+ type: "condition",
14
+ field,
15
+ value
16
+ }),
17
+ cmpLit: (a, op, b) => (calls.push(`cmpLit(${a}, ${op}, ${b})`), {
18
+ type: "literal",
19
+ a,
20
+ op,
21
+ b
22
+ })
23
+ };
24
+ }
25
+ (0, import_vitest.describe)("serverWhere SSR behavior", () => {
26
+ (0, import_vitest.beforeEach)(() => {
27
+ globalThis[/* @__PURE__ */Symbol.for("on-zero:state")] = null;
28
+ }), (0, import_vitest.test)("serverWhere returns no-op on client environment", () => {
29
+ (0, import_state.setEnvironment)("client");
30
+ const whereFn = (0, import_serverWhere.serverWhere)("post", eb2 => eb2.cmp("ownerId", "user-123")),
31
+ eb = createMockEB(),
32
+ result = whereFn(eb, {
33
+ id: "user-123"
34
+ });
35
+ (0, import_vitest.expect)(eb.calls).toContain("and()"), (0, import_vitest.expect)(result).toEqual({
36
+ type: "noop"
37
+ });
38
+ }), (0, import_vitest.test)("serverWhere evaluates condition on server environment", () => {
39
+ (0, import_state.setEnvironment)("server");
40
+ const whereFn = (0, import_serverWhere.serverWhere)("post", eb2 => eb2.cmp("ownerId", "user-123")),
41
+ eb = createMockEB(),
42
+ result = whereFn(eb, {
43
+ id: "user-123"
44
+ });
45
+ (0, import_vitest.expect)(eb.calls).toContain("cmp(ownerId, user-123)"), (0, import_vitest.expect)(result).toEqual({
46
+ type: "condition",
47
+ field: "ownerId",
48
+ value: "user-123"
49
+ });
50
+ }), (0, import_vitest.test)("serverWhere evaluates when _evaluatingPermission is true (even on client)", () => {
51
+ (0, import_state.setEnvironment)("client");
52
+ const whereFn = (0, import_serverWhere.serverWhere)("post", eb2 => eb2.cmp("ownerId", "user-123")),
53
+ eb = createMockEB();
54
+ (0, import_where.setEvaluatingPermission)(!0);
55
+ try {
56
+ const result = whereFn(eb, {
57
+ id: "user-123"
58
+ });
59
+ (0, import_vitest.expect)(eb.calls).toContain("cmp(ownerId, user-123)"), (0, import_vitest.expect)(result).toEqual({
60
+ type: "condition",
61
+ field: "ownerId",
62
+ value: "user-123"
63
+ });
64
+ } finally {
65
+ (0, import_where.setEvaluatingPermission)(!1);
66
+ }
67
+ }), (0, import_vitest.test)("environment stays server when already set (SSR scenario)", () => {
68
+ (0, import_state.setEnvironment)("server"), (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe("server"), (0, import_state.getEnvironment)() === null && (0, import_state.setEnvironment)("client"), (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe("server");
69
+ }), (0, import_vitest.test)("environment defaults to client when not set by server", () => {
70
+ (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe(null), (0, import_state.getEnvironment)() === null && (0, import_state.setEnvironment)("client"), (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe("client");
71
+ }), (0, import_vitest.test)("nested serverWhere calls evaluate during permission check", () => {
72
+ (0, import_state.setEnvironment)("client");
73
+ const outerWhere = (0, import_serverWhere.serverWhere)("post", eb3 => eb3.cmp("ownerId", "user-123")),
74
+ nestedWhere = (0, import_serverWhere.serverWhere)("comment", eb3 => eb3.cmp("postId", "post-456")),
75
+ eb = createMockEB(),
76
+ result1 = outerWhere(eb, {
77
+ id: "user-123"
78
+ });
79
+ (0, import_vitest.expect)(result1).toEqual({
80
+ type: "noop"
81
+ });
82
+ const eb2 = createMockEB();
83
+ (0, import_where.setEvaluatingPermission)(!0);
84
+ try {
85
+ const result2 = outerWhere(eb2, {
86
+ id: "user-123"
87
+ });
88
+ (0, import_vitest.expect)(result2).toEqual({
89
+ type: "condition",
90
+ field: "ownerId",
91
+ value: "user-123"
92
+ });
93
+ const eb3 = createMockEB(),
94
+ result3 = nestedWhere(eb3, {
95
+ id: "user-123"
96
+ });
97
+ (0, import_vitest.expect)(result3).toEqual({
98
+ type: "condition",
99
+ field: "postId",
100
+ value: "post-456"
101
+ });
102
+ } finally {
103
+ (0, import_where.setEvaluatingPermission)(!1);
104
+ }
105
+ });
106
+ });
@@ -0,0 +1,52 @@
1
+ var import_vitest = require("vitest"), import_serverWhere = require("./serverWhere"), import_state = require("./state"), import_where = require("./where");
2
+ function createMockEB() {
3
+ const calls = [];
4
+ return {
5
+ calls,
6
+ and: () => (calls.push("and()"), { type: "noop" }),
7
+ cmp: (field, value) => (calls.push(`cmp(${field}, ${value})`), { type: "condition", field, value }),
8
+ cmpLit: (a, op, b) => (calls.push(`cmpLit(${a}, ${op}, ${b})`), { type: "literal", a, op, b })
9
+ };
10
+ }
11
+ (0, import_vitest.describe)("serverWhere SSR behavior", () => {
12
+ (0, import_vitest.beforeEach)(() => {
13
+ globalThis[/* @__PURE__ */ Symbol.for("on-zero:state")] = null;
14
+ }), (0, import_vitest.test)("serverWhere returns no-op on client environment", () => {
15
+ (0, import_state.setEnvironment)("client");
16
+ const whereFn = (0, import_serverWhere.serverWhere)("post", (eb2) => eb2.cmp("ownerId", "user-123")), eb = createMockEB(), result = whereFn(eb, { id: "user-123" });
17
+ (0, import_vitest.expect)(eb.calls).toContain("and()"), (0, import_vitest.expect)(result).toEqual({ type: "noop" });
18
+ }), (0, import_vitest.test)("serverWhere evaluates condition on server environment", () => {
19
+ (0, import_state.setEnvironment)("server");
20
+ const whereFn = (0, import_serverWhere.serverWhere)("post", (eb2) => eb2.cmp("ownerId", "user-123")), eb = createMockEB(), result = whereFn(eb, { id: "user-123" });
21
+ (0, import_vitest.expect)(eb.calls).toContain("cmp(ownerId, user-123)"), (0, import_vitest.expect)(result).toEqual({ type: "condition", field: "ownerId", value: "user-123" });
22
+ }), (0, import_vitest.test)("serverWhere evaluates when _evaluatingPermission is true (even on client)", () => {
23
+ (0, import_state.setEnvironment)("client");
24
+ const whereFn = (0, import_serverWhere.serverWhere)("post", (eb2) => eb2.cmp("ownerId", "user-123")), eb = createMockEB();
25
+ (0, import_where.setEvaluatingPermission)(!0);
26
+ try {
27
+ const result = whereFn(eb, { id: "user-123" });
28
+ (0, import_vitest.expect)(eb.calls).toContain("cmp(ownerId, user-123)"), (0, import_vitest.expect)(result).toEqual({ type: "condition", field: "ownerId", value: "user-123" });
29
+ } finally {
30
+ (0, import_where.setEvaluatingPermission)(!1);
31
+ }
32
+ }), (0, import_vitest.test)("environment stays server when already set (SSR scenario)", () => {
33
+ (0, import_state.setEnvironment)("server"), (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe("server"), (0, import_state.getEnvironment)() === null && (0, import_state.setEnvironment)("client"), (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe("server");
34
+ }), (0, import_vitest.test)("environment defaults to client when not set by server", () => {
35
+ (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe(null), (0, import_state.getEnvironment)() === null && (0, import_state.setEnvironment)("client"), (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe("client");
36
+ }), (0, import_vitest.test)("nested serverWhere calls evaluate during permission check", () => {
37
+ (0, import_state.setEnvironment)("client");
38
+ const outerWhere = (0, import_serverWhere.serverWhere)("post", (eb3) => eb3.cmp("ownerId", "user-123")), nestedWhere = (0, import_serverWhere.serverWhere)("comment", (eb3) => eb3.cmp("postId", "post-456")), eb = createMockEB(), result1 = outerWhere(eb, { id: "user-123" });
39
+ (0, import_vitest.expect)(result1).toEqual({ type: "noop" });
40
+ const eb2 = createMockEB();
41
+ (0, import_where.setEvaluatingPermission)(!0);
42
+ try {
43
+ const result2 = outerWhere(eb2, { id: "user-123" });
44
+ (0, import_vitest.expect)(result2).toEqual({ type: "condition", field: "ownerId", value: "user-123" });
45
+ const eb3 = createMockEB(), result3 = nestedWhere(eb3, { id: "user-123" });
46
+ (0, import_vitest.expect)(result3).toEqual({ type: "condition", field: "postId", value: "post-456" });
47
+ } finally {
48
+ (0, import_where.setEvaluatingPermission)(!1);
49
+ }
50
+ });
51
+ });
52
+ //# sourceMappingURL=serverWhere.test.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/serverWhere.test.ts"],
4
+ "mappings": "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",
5
+ "names": ["eb"]
6
+ }
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+
3
+ var import_vitest = require("vitest"),
4
+ import_serverWhere = require("./serverWhere.native.js"),
5
+ import_state = require("./state.native.js"),
6
+ import_where = require("./where.native.js");
7
+ function createMockEB() {
8
+ var calls = [];
9
+ return {
10
+ calls,
11
+ and: function () {
12
+ return calls.push("and()"), {
13
+ type: "noop"
14
+ };
15
+ },
16
+ cmp: function (field, value) {
17
+ return calls.push(`cmp(${field}, ${value})`), {
18
+ type: "condition",
19
+ field,
20
+ value
21
+ };
22
+ },
23
+ cmpLit: function (a, op, b) {
24
+ return calls.push(`cmpLit(${a}, ${op}, ${b})`), {
25
+ type: "literal",
26
+ a,
27
+ op,
28
+ b
29
+ };
30
+ }
31
+ };
32
+ }
33
+ (0, import_vitest.describe)("serverWhere SSR behavior", function () {
34
+ (0, import_vitest.beforeEach)(function () {
35
+ globalThis[/* @__PURE__ */Symbol.for("on-zero:state")] = null;
36
+ }), (0, import_vitest.test)("serverWhere returns no-op on client environment", function () {
37
+ (0, import_state.setEnvironment)("client");
38
+ var whereFn = (0, import_serverWhere.serverWhere)("post", function (eb2) {
39
+ return eb2.cmp("ownerId", "user-123");
40
+ }),
41
+ eb = createMockEB(),
42
+ result = whereFn(eb, {
43
+ id: "user-123"
44
+ });
45
+ (0, import_vitest.expect)(eb.calls).toContain("and()"), (0, import_vitest.expect)(result).toEqual({
46
+ type: "noop"
47
+ });
48
+ }), (0, import_vitest.test)("serverWhere evaluates condition on server environment", function () {
49
+ (0, import_state.setEnvironment)("server");
50
+ var whereFn = (0, import_serverWhere.serverWhere)("post", function (eb2) {
51
+ return eb2.cmp("ownerId", "user-123");
52
+ }),
53
+ eb = createMockEB(),
54
+ result = whereFn(eb, {
55
+ id: "user-123"
56
+ });
57
+ (0, import_vitest.expect)(eb.calls).toContain("cmp(ownerId, user-123)"), (0, import_vitest.expect)(result).toEqual({
58
+ type: "condition",
59
+ field: "ownerId",
60
+ value: "user-123"
61
+ });
62
+ }), (0, import_vitest.test)("serverWhere evaluates when _evaluatingPermission is true (even on client)", function () {
63
+ (0, import_state.setEnvironment)("client");
64
+ var whereFn = (0, import_serverWhere.serverWhere)("post", function (eb2) {
65
+ return eb2.cmp("ownerId", "user-123");
66
+ }),
67
+ eb = createMockEB();
68
+ (0, import_where.setEvaluatingPermission)(!0);
69
+ try {
70
+ var result = whereFn(eb, {
71
+ id: "user-123"
72
+ });
73
+ (0, import_vitest.expect)(eb.calls).toContain("cmp(ownerId, user-123)"), (0, import_vitest.expect)(result).toEqual({
74
+ type: "condition",
75
+ field: "ownerId",
76
+ value: "user-123"
77
+ });
78
+ } finally {
79
+ (0, import_where.setEvaluatingPermission)(!1);
80
+ }
81
+ }), (0, import_vitest.test)("environment stays server when already set (SSR scenario)", function () {
82
+ (0, import_state.setEnvironment)("server"), (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe("server"), (0, import_state.getEnvironment)() === null && (0, import_state.setEnvironment)("client"), (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe("server");
83
+ }), (0, import_vitest.test)("environment defaults to client when not set by server", function () {
84
+ (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe(null), (0, import_state.getEnvironment)() === null && (0, import_state.setEnvironment)("client"), (0, import_vitest.expect)((0, import_state.getEnvironment)()).toBe("client");
85
+ }), (0, import_vitest.test)("nested serverWhere calls evaluate during permission check", function () {
86
+ (0, import_state.setEnvironment)("client");
87
+ var outerWhere = (0, import_serverWhere.serverWhere)("post", function (eb4) {
88
+ return eb4.cmp("ownerId", "user-123");
89
+ }),
90
+ nestedWhere = (0, import_serverWhere.serverWhere)("comment", function (eb4) {
91
+ return eb4.cmp("postId", "post-456");
92
+ }),
93
+ eb = createMockEB(),
94
+ result1 = outerWhere(eb, {
95
+ id: "user-123"
96
+ });
97
+ (0, import_vitest.expect)(result1).toEqual({
98
+ type: "noop"
99
+ });
100
+ var eb2 = createMockEB();
101
+ (0, import_where.setEvaluatingPermission)(!0);
102
+ try {
103
+ var result2 = outerWhere(eb2, {
104
+ id: "user-123"
105
+ });
106
+ (0, import_vitest.expect)(result2).toEqual({
107
+ type: "condition",
108
+ field: "ownerId",
109
+ value: "user-123"
110
+ });
111
+ var eb3 = createMockEB(),
112
+ result3 = nestedWhere(eb3, {
113
+ id: "user-123"
114
+ });
115
+ (0, import_vitest.expect)(result3).toEqual({
116
+ type: "condition",
117
+ field: "postId",
118
+ value: "post-456"
119
+ });
120
+ } finally {
121
+ (0, import_where.setEvaluatingPermission)(!1);
122
+ }
123
+ });
124
+ });
125
+ //# sourceMappingURL=serverWhere.test.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["import_vitest","require","import_serverWhere","import_state","import_where","createMockEB","calls","and","push","type","cmp","field","value","cmpLit","a","op","b","describe","beforeEach","globalThis","Symbol","for","test","setEnvironment","whereFn","serverWhere","eb2","eb","result","id","expect","toContain","toEqual"],"sources":["../../src/serverWhere.test.ts"],"sourcesContent":[null],"mappings":"AAAA;;AAOA,IAAAA,aAAS,GAAAC,OAAe;EAAAC,kBAAA,GAAAD,OAAA;EAAAE,YAAA,GAAAF,OAAA;EAAAG,YAAA,GAAAH,OAAA;AACtB,SAAMI,YAAmBA,CAAA;EACzB,IAAAC,KAAO;EAAA,OACL;IACAA,KAAK;IAILC,GAAA,EAAK,SAAAA,CAAA,EAAgB;MAIrB,OAASD,KAAQ,CAAAE,IAAY,QAC3B,GAAM;QAGVC,IAAA;MACF;IAEA;IACEC,GAAA,WAAAA,CAAAC,KAAA,EAAAC,KAAA,EAAW;MAEP,OAAAN,KAAmB,CAAAE,IAAA,QAAAG,KAAA,KAAOC,KAAI;QACjCH,IAED;QACEE,KAAA;QAEAC;MAKA;IAED;IAGCC,MAAA,WAAAA,CAAAC,CAAA,EAAAC,EAAA,EAAAC,CAAA;MAEA,OAAMV,KAAA,CAAAE,IAAA,CAAU,UAAAM,CAAA,KAAAC,EAAA,KAAAC,CAAA;QAKhBP,IAAA;QAEDK,CAAA;QAGCC,EAAA;QAEAC;MAGA;IACA;EACE;AAGA;AACiF,IACnFhB,aAAE,CAAAiB,QAAA;EACA,IAAAjB,aAAA,CAAAkB,UAAA;IACFC,UAAA,gBAAAC,MAAA,CAAAC,GAAA;EACF,CAAC,OAEDrB,aAAA,CAAAsB,IAAA,EAAK,+DAA4D;IAE/D,IAAAnB,YAAA,CAAAoB,cAAA,EAAe,QAAQ;IAWxB,IAAAC,OAED,OAAAtB,kBAAK,CAAAuB,WAAA,oBAAAC,GAAA;QAEH,OAAAA,GAAA,CAAAhB,GAAA,sBAAO;MAQR;MAAAiB,EAED,GAAAtB,YAAA;MAAAuB,MAAK,GAAAJ,OAAA,CAAAG,EAAA;QACHE,EAAA;MAGA;IAQA,IAAA7B,aAAA,CAAA8B,MAAA,EAAOH,EAAA,CAAArB,KAAO,CAAE,CAAAyB,SAAU,QAAM,KAAO,EAAC/B,aAAA,CAAA8B,MAAA,EAAAF,MAAA,EAAAI,OAAA;MAExCvB,IAAM;IAEN;EACA,MAAI,EAAAT,aAAA,CAAAsB,IAAA;IACF,IAAAnB,YAAM,CAAAoB,cAAqB,UAAkB;IAC7C,IAAAC,OAAA,OAAAtB,kBAAc,CAAEuB,WAAU,QAAM,YAAaC,GAAA;QAE7C,OAAMA,GAAA,CAAAhB,GAAM,YAAa,UACnB;MACN;MAAAiB,EAAA,GAAAtB,YAAA;MAAAuB,MAAO,GAAAJ,OAAS,CAAAG,EAAA,EAAQ;QAC1BE,EAAA;MACE;IACF,IAAA7B,aAAA,CAAA8B,MAAA,EAAAH,EAAA,CAAArB,KAAA,EAAAyB,SAAA,gCAAA/B,aAAA,CAAA8B,MAAA,EAAAF,MAAA,EAAAI,OAAA;MACDvB,IAAA;MACFE,KAAA","ignoreList":[]}
@@ -29,28 +29,38 @@ __export(state_exports, {
29
29
  setSchema: () => setSchema
30
30
  });
31
31
  module.exports = __toCommonJS(state_exports);
32
- var import_zero = require("@rocicorp/zero");
33
- let schema = null,
34
- zql = null,
35
- authData,
36
- environment = null;
37
- const errMessage = "Haven't called createZeroClient or createZeroServer yet!",
32
+ var import_zero = require("@rocicorp/zero"),
33
+ import_helpers = require("@take-out/helpers");
34
+ const getState = () => (0, import_helpers.globalValue)("on-zero:state", () => ({
35
+ schema: null,
36
+ zql: null,
37
+ authData: void 0,
38
+ environment: null
39
+ })),
40
+ errMessage = "Haven't called createZeroClient or createZeroServer yet!",
38
41
  getZQL = () => {
42
+ const {
43
+ zql
44
+ } = getState();
39
45
  if (!zql) throw new Error(errMessage);
40
46
  return zql;
41
47
  },
42
48
  getSchema = () => {
49
+ const {
50
+ schema
51
+ } = getState();
43
52
  if (!schema) throw new Error(errMessage);
44
53
  return schema;
45
54
  },
46
55
  setSchema = _ => {
47
- schema = _, zql = (0, import_zero.createBuilder)(_);
56
+ const state = getState();
57
+ state.schema = _, state.zql = (0, import_zero.createBuilder)(_);
48
58
  },
49
- getAuthData = () => authData || null,
59
+ getAuthData = () => getState().authData || null,
50
60
  setAuthData = _ => {
51
- authData = _;
61
+ getState().authData = _;
52
62
  },
53
- getEnvironment = () => environment,
63
+ getEnvironment = () => getState().environment,
54
64
  setEnvironment = env => {
55
- environment = env;
65
+ getState().environment = env;
56
66
  };