on-zero 0.4.3 → 0.4.4

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 (249) hide show
  1. package/dist/cjs/cli.cjs +46 -41
  2. package/dist/cjs/cli.native.js +48 -43
  3. package/dist/cjs/cli.native.js.map +1 -1
  4. package/dist/cjs/constants.cjs +14 -12
  5. package/dist/cjs/constants.native.js +14 -12
  6. package/dist/cjs/constants.native.js.map +1 -1
  7. package/dist/cjs/createPermissions.cjs +66 -34
  8. package/dist/cjs/createPermissions.native.js +143 -87
  9. package/dist/cjs/createPermissions.native.js.map +1 -1
  10. package/dist/cjs/createSchemaFromDrizzle.cjs +15 -13
  11. package/dist/cjs/createSchemaFromDrizzle.native.js +15 -13
  12. package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
  13. package/dist/cjs/createUseQuery.cjs +48 -35
  14. package/dist/cjs/createUseQuery.native.js +52 -38
  15. package/dist/cjs/createUseQuery.native.js.map +1 -1
  16. package/dist/cjs/createZeroClient.cjs +177 -135
  17. package/dist/cjs/createZeroClient.native.js +246 -195
  18. package/dist/cjs/createZeroClient.native.js.map +1 -1
  19. package/dist/cjs/createZeroServer.cjs +175 -129
  20. package/dist/cjs/createZeroServer.native.js +170 -138
  21. package/dist/cjs/createZeroServer.native.js.map +1 -1
  22. package/dist/cjs/generate-helpers.cjs +122 -88
  23. package/dist/cjs/generate-helpers.native.js +209 -174
  24. package/dist/cjs/generate-helpers.native.js.map +1 -1
  25. package/dist/cjs/generate-lite.cjs +90 -58
  26. package/dist/cjs/generate-lite.native.js +200 -140
  27. package/dist/cjs/generate-lite.native.js.map +1 -1
  28. package/dist/cjs/generate-lite.test.cjs +229 -192
  29. package/dist/cjs/generate-lite.test.native.js +229 -194
  30. package/dist/cjs/generate-lite.test.native.js.map +1 -1
  31. package/dist/cjs/generate.cjs +455 -291
  32. package/dist/cjs/generate.native.js +747 -565
  33. package/dist/cjs/generate.native.js.map +1 -1
  34. package/dist/cjs/generate.test.cjs +170 -106
  35. package/dist/cjs/generate.test.native.js +171 -107
  36. package/dist/cjs/generate.test.native.js.map +1 -1
  37. package/dist/cjs/helpers/batchQuery.cjs +29 -18
  38. package/dist/cjs/helpers/batchQuery.native.js +36 -21
  39. package/dist/cjs/helpers/batchQuery.native.js.map +1 -1
  40. package/dist/cjs/helpers/clearZeroClientData.cjs +30 -21
  41. package/dist/cjs/helpers/clearZeroClientData.native.js +42 -33
  42. package/dist/cjs/helpers/clearZeroClientData.native.js.map +1 -1
  43. package/dist/cjs/helpers/createMutators.cjs +80 -42
  44. package/dist/cjs/helpers/createMutators.native.js +139 -87
  45. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  46. package/dist/cjs/helpers/didRunPermissionCheck.cjs +19 -13
  47. package/dist/cjs/helpers/didRunPermissionCheck.native.js +22 -20
  48. package/dist/cjs/helpers/didRunPermissionCheck.native.js.map +1 -1
  49. package/dist/cjs/helpers/ensureLoggedIn.cjs +16 -13
  50. package/dist/cjs/helpers/ensureLoggedIn.native.js +21 -18
  51. package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
  52. package/dist/cjs/helpers/getAuth.cjs +25 -15
  53. package/dist/cjs/helpers/getAuth.native.js +25 -15
  54. package/dist/cjs/helpers/getAuth.native.js.map +1 -1
  55. package/dist/cjs/helpers/mutatorContext.cjs +21 -14
  56. package/dist/cjs/helpers/mutatorContext.native.js +21 -15
  57. package/dist/cjs/helpers/mutatorContext.native.js.map +1 -1
  58. package/dist/cjs/helpers/prettyFormatZeroQuery.cjs +126 -81
  59. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js +135 -92
  60. package/dist/cjs/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  61. package/dist/cjs/helpers/queryContext.cjs +12 -10
  62. package/dist/cjs/helpers/queryContext.native.js +16 -13
  63. package/dist/cjs/helpers/queryContext.native.js.map +1 -1
  64. package/dist/cjs/helpers/showZeroClientError.cjs +24 -19
  65. package/dist/cjs/helpers/showZeroClientError.native.js +38 -34
  66. package/dist/cjs/helpers/showZeroClientError.native.js.map +1 -1
  67. package/dist/cjs/helpers/useZeroDebug.cjs +82 -49
  68. package/dist/cjs/helpers/useZeroDebug.native.js +83 -55
  69. package/dist/cjs/helpers/useZeroDebug.native.js.map +1 -1
  70. package/dist/cjs/index.cjs +17 -15
  71. package/dist/cjs/index.native.js +17 -15
  72. package/dist/cjs/index.native.js.map +1 -1
  73. package/dist/cjs/modelRegistry.cjs +12 -10
  74. package/dist/cjs/modelRegistry.native.js +12 -10
  75. package/dist/cjs/modelRegistry.native.js.map +1 -1
  76. package/dist/cjs/mutations.cjs +66 -42
  77. package/dist/cjs/mutations.native.js +68 -46
  78. package/dist/cjs/mutations.native.js.map +1 -1
  79. package/dist/cjs/queryRegistry.cjs +13 -10
  80. package/dist/cjs/queryRegistry.native.js +14 -11
  81. package/dist/cjs/queryRegistry.native.js.map +1 -1
  82. package/dist/cjs/resolveQuery.cjs +22 -18
  83. package/dist/cjs/resolveQuery.native.js +32 -28
  84. package/dist/cjs/resolveQuery.native.js.map +1 -1
  85. package/dist/cjs/run.cjs +35 -28
  86. package/dist/cjs/run.native.js +35 -29
  87. package/dist/cjs/run.native.js.map +1 -1
  88. package/dist/cjs/server.cjs +7 -5
  89. package/dist/cjs/serverWhere.cjs +13 -11
  90. package/dist/cjs/serverWhere.native.js +13 -11
  91. package/dist/cjs/serverWhere.native.js.map +1 -1
  92. package/dist/cjs/serverWhere.test.cjs +83 -55
  93. package/dist/cjs/serverWhere.test.native.js +72 -50
  94. package/dist/cjs/serverWhere.test.native.js.map +1 -1
  95. package/dist/cjs/state.cjs +49 -44
  96. package/dist/cjs/state.native.js +56 -53
  97. package/dist/cjs/state.native.js.map +1 -1
  98. package/dist/cjs/types.cjs +7 -5
  99. package/dist/cjs/types.native.js +7 -5
  100. package/dist/cjs/types.native.js.map +1 -1
  101. package/dist/cjs/usePermission.test.cjs +58 -45
  102. package/dist/cjs/usePermission.test.native.js +59 -48
  103. package/dist/cjs/usePermission.test.native.js.map +1 -1
  104. package/dist/cjs/vite-plugin.cjs +41 -21
  105. package/dist/cjs/vite-plugin.native.js +61 -47
  106. package/dist/cjs/vite-plugin.native.js.map +1 -1
  107. package/dist/cjs/where.cjs +39 -24
  108. package/dist/cjs/where.native.js +44 -29
  109. package/dist/cjs/where.native.js.map +1 -1
  110. package/dist/cjs/zeroRunner.cjs +18 -12
  111. package/dist/cjs/zeroRunner.native.js +22 -16
  112. package/dist/cjs/zeroRunner.native.js.map +1 -1
  113. package/dist/cjs/zql.cjs +14 -11
  114. package/dist/cjs/zql.native.js +19 -17
  115. package/dist/cjs/zql.native.js.map +1 -1
  116. package/dist/esm/cli.mjs +43 -38
  117. package/dist/esm/cli.mjs.map +1 -1
  118. package/dist/esm/cli.native.js +44 -39
  119. package/dist/esm/cli.native.js.map +1 -1
  120. package/dist/esm/constants.mjs +2 -2
  121. package/dist/esm/constants.mjs.map +1 -1
  122. package/dist/esm/constants.native.js +2 -2
  123. package/dist/esm/constants.native.js.map +1 -1
  124. package/dist/esm/createPermissions.mjs +48 -18
  125. package/dist/esm/createPermissions.mjs.map +1 -1
  126. package/dist/esm/createPermissions.native.js +125 -71
  127. package/dist/esm/createPermissions.native.js.map +1 -1
  128. package/dist/esm/createUseQuery.mjs +32 -21
  129. package/dist/esm/createUseQuery.mjs.map +1 -1
  130. package/dist/esm/createUseQuery.native.js +36 -24
  131. package/dist/esm/createUseQuery.native.js.map +1 -1
  132. package/dist/esm/createZeroClient.mjs +148 -108
  133. package/dist/esm/createZeroClient.mjs.map +1 -1
  134. package/dist/esm/createZeroClient.native.js +217 -168
  135. package/dist/esm/createZeroClient.native.js.map +1 -1
  136. package/dist/esm/createZeroServer.mjs +148 -104
  137. package/dist/esm/createZeroServer.mjs.map +1 -1
  138. package/dist/esm/createZeroServer.native.js +143 -113
  139. package/dist/esm/createZeroServer.native.js.map +1 -1
  140. package/dist/esm/generate-helpers.mjs +110 -78
  141. package/dist/esm/generate-helpers.mjs.map +1 -1
  142. package/dist/esm/generate-helpers.native.js +197 -164
  143. package/dist/esm/generate-helpers.native.js.map +1 -1
  144. package/dist/esm/generate-lite.mjs +78 -48
  145. package/dist/esm/generate-lite.mjs.map +1 -1
  146. package/dist/esm/generate-lite.native.js +188 -130
  147. package/dist/esm/generate-lite.native.js.map +1 -1
  148. package/dist/esm/generate-lite.test.mjs +227 -190
  149. package/dist/esm/generate-lite.test.mjs.map +1 -1
  150. package/dist/esm/generate-lite.test.native.js +227 -192
  151. package/dist/esm/generate-lite.test.native.js.map +1 -1
  152. package/dist/esm/generate.mjs +427 -265
  153. package/dist/esm/generate.mjs.map +1 -1
  154. package/dist/esm/generate.native.js +718 -538
  155. package/dist/esm/generate.native.js.map +1 -1
  156. package/dist/esm/generate.test.mjs +165 -101
  157. package/dist/esm/generate.test.mjs.map +1 -1
  158. package/dist/esm/generate.test.native.js +165 -101
  159. package/dist/esm/generate.test.native.js.map +1 -1
  160. package/dist/esm/helpers/batchQuery.mjs +17 -8
  161. package/dist/esm/helpers/batchQuery.mjs.map +1 -1
  162. package/dist/esm/helpers/batchQuery.native.js +24 -11
  163. package/dist/esm/helpers/batchQuery.native.js.map +1 -1
  164. package/dist/esm/helpers/clearZeroClientData.mjs +18 -11
  165. package/dist/esm/helpers/clearZeroClientData.mjs.map +1 -1
  166. package/dist/esm/helpers/clearZeroClientData.native.js +30 -23
  167. package/dist/esm/helpers/clearZeroClientData.native.js.map +1 -1
  168. package/dist/esm/helpers/createMutators.mjs +53 -17
  169. package/dist/esm/helpers/createMutators.mjs.map +1 -1
  170. package/dist/esm/helpers/createMutators.native.js +112 -62
  171. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  172. package/dist/esm/helpers/didRunPermissionCheck.mjs +7 -3
  173. package/dist/esm/helpers/didRunPermissionCheck.mjs.map +1 -1
  174. package/dist/esm/helpers/didRunPermissionCheck.native.js +9 -9
  175. package/dist/esm/helpers/didRunPermissionCheck.native.js.map +1 -1
  176. package/dist/esm/helpers/ensureLoggedIn.mjs +2 -1
  177. package/dist/esm/helpers/ensureLoggedIn.mjs.map +1 -1
  178. package/dist/esm/helpers/ensureLoggedIn.native.js +2 -1
  179. package/dist/esm/helpers/ensureLoggedIn.native.js.map +1 -1
  180. package/dist/esm/helpers/getAuth.mjs +10 -2
  181. package/dist/esm/helpers/getAuth.mjs.map +1 -1
  182. package/dist/esm/helpers/getAuth.native.js +10 -2
  183. package/dist/esm/helpers/getAuth.native.js.map +1 -1
  184. package/dist/esm/helpers/mutatorContext.mjs +9 -4
  185. package/dist/esm/helpers/mutatorContext.mjs.map +1 -1
  186. package/dist/esm/helpers/mutatorContext.native.js +8 -4
  187. package/dist/esm/helpers/mutatorContext.native.js.map +1 -1
  188. package/dist/esm/helpers/prettyFormatZeroQuery.mjs +114 -71
  189. package/dist/esm/helpers/prettyFormatZeroQuery.mjs.map +1 -1
  190. package/dist/esm/helpers/prettyFormatZeroQuery.native.js +121 -80
  191. package/dist/esm/helpers/prettyFormatZeroQuery.native.js.map +1 -1
  192. package/dist/esm/helpers/queryContext.native.js +2 -1
  193. package/dist/esm/helpers/queryContext.native.js.map +1 -1
  194. package/dist/esm/helpers/showZeroClientError.mjs +12 -9
  195. package/dist/esm/helpers/showZeroClientError.mjs.map +1 -1
  196. package/dist/esm/helpers/showZeroClientError.native.js +25 -23
  197. package/dist/esm/helpers/showZeroClientError.native.js.map +1 -1
  198. package/dist/esm/helpers/useZeroDebug.mjs +67 -36
  199. package/dist/esm/helpers/useZeroDebug.mjs.map +1 -1
  200. package/dist/esm/helpers/useZeroDebug.native.js +68 -42
  201. package/dist/esm/helpers/useZeroDebug.native.js.map +1 -1
  202. package/dist/esm/mutations.mjs +51 -29
  203. package/dist/esm/mutations.mjs.map +1 -1
  204. package/dist/esm/mutations.native.js +53 -33
  205. package/dist/esm/mutations.native.js.map +1 -1
  206. package/dist/esm/queryRegistry.mjs +1 -0
  207. package/dist/esm/queryRegistry.mjs.map +1 -1
  208. package/dist/esm/queryRegistry.native.js +2 -1
  209. package/dist/esm/queryRegistry.native.js.map +1 -1
  210. package/dist/esm/resolveQuery.mjs +10 -8
  211. package/dist/esm/resolveQuery.mjs.map +1 -1
  212. package/dist/esm/resolveQuery.native.js +20 -18
  213. package/dist/esm/resolveQuery.native.js.map +1 -1
  214. package/dist/esm/run.mjs +21 -16
  215. package/dist/esm/run.mjs.map +1 -1
  216. package/dist/esm/run.native.js +20 -16
  217. package/dist/esm/run.native.js.map +1 -1
  218. package/dist/esm/serverWhere.mjs +1 -1
  219. package/dist/esm/serverWhere.mjs.map +1 -1
  220. package/dist/esm/serverWhere.native.js +1 -1
  221. package/dist/esm/serverWhere.native.js.map +1 -1
  222. package/dist/esm/serverWhere.test.mjs +79 -51
  223. package/dist/esm/serverWhere.test.mjs.map +1 -1
  224. package/dist/esm/serverWhere.test.native.js +68 -46
  225. package/dist/esm/serverWhere.test.native.js.map +1 -1
  226. package/dist/esm/state.mjs +35 -32
  227. package/dist/esm/state.mjs.map +1 -1
  228. package/dist/esm/state.native.js +41 -40
  229. package/dist/esm/state.native.js.map +1 -1
  230. package/dist/esm/usePermission.test.mjs +53 -40
  231. package/dist/esm/usePermission.test.mjs.map +1 -1
  232. package/dist/esm/usePermission.test.native.js +54 -43
  233. package/dist/esm/usePermission.test.native.js.map +1 -1
  234. package/dist/esm/vite-plugin.mjs +27 -9
  235. package/dist/esm/vite-plugin.mjs.map +1 -1
  236. package/dist/esm/vite-plugin.native.js +47 -35
  237. package/dist/esm/vite-plugin.native.js.map +1 -1
  238. package/dist/esm/where.mjs +24 -11
  239. package/dist/esm/where.mjs.map +1 -1
  240. package/dist/esm/where.native.js +29 -16
  241. package/dist/esm/where.native.js.map +1 -1
  242. package/dist/esm/zeroRunner.mjs +6 -2
  243. package/dist/esm/zeroRunner.mjs.map +1 -1
  244. package/dist/esm/zeroRunner.native.js +8 -4
  245. package/dist/esm/zeroRunner.native.js.map +1 -1
  246. package/dist/esm/zql.mjs +2 -1
  247. package/dist/esm/zql.mjs.map +1 -1
  248. package/dist/esm/zql.native.js.map +1 -1
  249. package/package.json +3 -3
@@ -21,140 +21,180 @@ function createZeroClient({
21
21
  groupedQueries,
22
22
  permissionStrategy = "optimistic"
23
23
  }) {
24
- setSchema(schema), getEnvironment() === null && setEnvironment("client");
24
+ setSchema(schema);
25
+ if (getEnvironment() === null) {
26
+ setEnvironment("client");
27
+ }
25
28
  const permissionsHelpers = createPermissions({
26
- schema,
27
- environment: "client"
28
- }),
29
- wrappedNamespaces = {};
29
+ schema,
30
+ environment: "client"
31
+ });
32
+ const wrappedNamespaces = {};
30
33
  for (const [namespace, queries] of Object.entries(groupedQueries)) {
31
34
  wrappedNamespaces[namespace] = {};
32
- for (const [name, fn] of Object.entries(queries)) registerQuery(fn, `${namespace}.${name}`), wrappedNamespaces[namespace][name] = defineQuery(({
33
- args
34
- }) => fn(args));
35
+ for (const [name, fn] of Object.entries(queries)) {
36
+ registerQuery(fn, `${namespace}.${name}`);
37
+ wrappedNamespaces[namespace][name] = defineQuery(({
38
+ args
39
+ }) => fn(args));
40
+ }
35
41
  }
36
- const permissionCheckFns = {},
37
- createPermissionCheckFn = table => {
38
- const fn = args => {
39
- const perm = getMutationsPermissions(table),
40
- base = zql[table];
41
- if (!args.objOrId) return base.where(eb => eb.cmpLit(!0, "=", !1)).one();
42
- if (permissionStrategy === "optimistic") {
43
- const rawPerm = perm && (getRawWhere(perm) || perm);
44
- return base.where(eb => {
45
- setEvaluatingPermission(!0);
46
- try {
47
- return permissionsHelpers.buildPermissionQuery(getAuth(), eb, rawPerm || (e => e.and()), args.objOrId, table);
48
- } finally {
49
- setEvaluatingPermission(!1);
50
- }
51
- }).one();
52
- }
53
- return permissionStrategy === "optimistic-deny" ? base.where(eb => eb.cmpLit(!0, "=", !1)).one() : base.where(eb => permissionsHelpers.buildPermissionQuery(getAuth(), eb, perm || (e => e.and()), args.objOrId, table)).one();
54
- };
55
- return permissionCheckFns[table] = fn, registerQuery(fn, `permission.${table}`), fn;
42
+ const permissionCheckFns = {};
43
+ const createPermissionCheckFn = table => {
44
+ const fn = args => {
45
+ const perm = getMutationsPermissions(table);
46
+ const base = zql[table];
47
+ if (!args.objOrId) {
48
+ return base.where(eb => eb.cmpLit(true, "=", false)).one();
49
+ }
50
+ if (permissionStrategy === "optimistic") {
51
+ const rawPerm = perm ? getRawWhere(perm) || perm : perm;
52
+ return base.where(eb => {
53
+ setEvaluatingPermission(true);
54
+ try {
55
+ return permissionsHelpers.buildPermissionQuery(getAuth(), eb, rawPerm || (e => e.and()), args.objOrId, table);
56
+ } finally {
57
+ setEvaluatingPermission(false);
58
+ }
59
+ }).one();
60
+ }
61
+ if (permissionStrategy === "optimistic-deny") {
62
+ return base.where(eb => eb.cmpLit(true, "=", false)).one();
63
+ }
64
+ return base.where(eb => {
65
+ return permissionsHelpers.buildPermissionQuery(getAuth(), eb, perm || (e => e.and()), args.objOrId, table);
66
+ }).one();
56
67
  };
57
- wrappedNamespaces.permission = {};
68
+ permissionCheckFns[table] = fn;
69
+ registerQuery(fn, `permission.${table}`);
70
+ return fn;
71
+ };
72
+ wrappedNamespaces["permission"] = {};
58
73
  for (const [table] of getAllMutationsPermissions()) {
59
74
  const fn = createPermissionCheckFn(table);
60
- wrappedNamespaces.permission[table] = defineQuery(({
75
+ wrappedNamespaces["permission"][table] = defineQuery(({
61
76
  args
62
77
  }) => fn(args));
63
78
  }
64
79
  const customQueries = defineQueries(wrappedNamespaces);
65
80
  setCustomQueries(customQueries);
66
- const DisabledContext = createContext(!1);
81
+ const DisabledContext = createContext(false);
67
82
  let latestZeroInstance = null;
68
83
  const zero = new Proxy({}, {
69
- get(_, key) {
70
- if (latestZeroInstance === null) throw new Error("Zero instance not initialized. Ensure ZeroProvider is mounted before accessing 'zero'.");
71
- return Reflect.get(latestZeroInstance, key, latestZeroInstance);
84
+ get(_, key) {
85
+ if (latestZeroInstance === null) {
86
+ throw new Error(`Zero instance not initialized. Ensure ZeroProvider is mounted before accessing 'zero'.`);
72
87
  }
73
- }),
74
- zeroEvents = createEmitter("zero", null),
75
- AuthDataContext = createContext({}),
76
- useQuery = createUseQuery({
77
- DisabledContext,
78
- customQueries
88
+ return Reflect.get(latestZeroInstance, key, latestZeroInstance);
89
+ }
90
+ });
91
+ const zeroEvents = createEmitter("zero", null);
92
+ const AuthDataContext = createContext({});
93
+ const useQuery = createUseQuery({
94
+ DisabledContext,
95
+ customQueries
96
+ });
97
+ function usePermission(table, objOrId, enabled = typeof objOrId !== "undefined", debug = false) {
98
+ const disableMode = useContext(DisabledContext);
99
+ const lastRef = useRef(null);
100
+ const tableStr = table;
101
+ const checkFn = permissionCheckFns[tableStr];
102
+ const auth = getAuth();
103
+ const _uid = auth?.id || "anon";
104
+ const [data, status] = useQuery(checkFn, {
105
+ objOrId,
106
+ _uid
107
+ }, {
108
+ enabled: Boolean(!disableMode && enabled && objOrId && checkFn)
79
109
  });
80
- function usePermission(table, objOrId, enabled = typeof objOrId < "u", debug = !1) {
81
- const disableMode = useContext(DisabledContext),
82
- lastRef = useRef(null),
83
- checkFn = permissionCheckFns[table],
84
- _uid = getAuth()?.id || "anon",
85
- [data, status] = useQuery(checkFn, {
110
+ if (debug) {
111
+ console.info(`usePermission()`, {
112
+ table,
86
113
  objOrId,
87
- _uid
88
- }, {
89
- enabled: !!(!disableMode && enabled && objOrId && checkFn)
114
+ data,
115
+ status
90
116
  });
91
- if (debug && console.info("usePermission()", {
92
- table,
93
- objOrId,
94
- data,
95
- status
96
- }), !objOrId) return !1;
97
- const result = status.type === "unknown" ? null : !!data;
98
- return disableMode ? disableMode === "last-value" ? lastRef.current : null : (lastRef.current = result, result);
117
+ }
118
+ if (!objOrId) return false;
119
+ const result = status.type === "unknown" ? null : Boolean(data);
120
+ if (!disableMode) {
121
+ lastRef.current = result;
122
+ return result;
123
+ }
124
+ if (disableMode === "last-value") {
125
+ return lastRef.current;
126
+ }
127
+ return null;
99
128
  }
100
129
  const ProvideZero = ({
101
- children,
102
- authData: authDataIn,
103
- disable,
104
- ...props
105
- }) => {
106
- const authData = authDataIn ?? null;
107
- setAuthData(authData);
108
- const mutators = useMemo(() => createMutators({
130
+ children,
131
+ authData: authDataIn,
132
+ disable,
133
+ ...props
134
+ }) => {
135
+ const authData = authDataIn ?? null;
136
+ setAuthData(authData);
137
+ const mutators = useMemo(() => {
138
+ return createMutators({
109
139
  models,
110
140
  environment: "client",
111
141
  authData: null,
112
142
  can: permissionsHelpers.can
113
- }), []);
114
- return disable ? children : /* @__PURE__ */jsx(AuthDataContext.Provider, {
115
- value: authData,
116
- children: /* @__PURE__ */jsxs(ZeroProvider, {
117
- schema,
118
- kvStore: "mem",
119
- mutators,
120
- ...props,
121
- children: [/* @__PURE__ */jsx(SetZeroInstance, {}), /* @__PURE__ */jsx(ConnectionMonitor, {
122
- zeroEvents
123
- }), children]
124
- })
125
143
  });
126
- },
127
- SetZeroInstance = () => {
128
- const zeroInstance = useZero();
129
- return zeroInstance !== latestZeroInstance && (latestZeroInstance = zeroInstance, setRunner((query, options) => zeroInstance.run(query, options))), null;
130
- },
131
- ConnectionMonitor = memo(({
132
- zeroEvents: zeroEvents2
133
- }) => {
134
- const state = useConnectionState(),
135
- prevState = useRef(state.name);
136
- return useEffect(() => {
137
- if (state.name !== prevState.current) {
138
- const reason = "reason" in state ? state.reason : "";
139
- if (prevState.current = state.name, state.name === "error" || state.name === "needs-auth") {
140
- const message = typeof reason == "string" ? reason : state.name;
141
- zeroEvents2.emit({
142
- type: "error",
143
- message
144
- });
145
- }
146
- }
147
- }, [state, zeroEvents2]), null;
144
+ }, []);
145
+ if (disable) {
146
+ return children;
147
+ }
148
+ return /* @__PURE__ */jsx(AuthDataContext.Provider, {
149
+ value: authData,
150
+ children: /* @__PURE__ */jsxs(ZeroProvider, {
151
+ schema,
152
+ kvStore: "mem",
153
+ mutators,
154
+ ...props,
155
+ children: [/* @__PURE__ */jsx(SetZeroInstance, {}), /* @__PURE__ */jsx(ConnectionMonitor, {
156
+ zeroEvents
157
+ }), children]
158
+ })
148
159
  });
160
+ };
161
+ const SetZeroInstance = () => {
162
+ const zeroInstance = useZero();
163
+ if (zeroInstance !== latestZeroInstance) {
164
+ latestZeroInstance = zeroInstance;
165
+ setRunner((query, options) => zeroInstance.run(query, options));
166
+ }
167
+ return null;
168
+ };
169
+ const ConnectionMonitor = memo(({
170
+ zeroEvents: zeroEvents2
171
+ }) => {
172
+ const state = useConnectionState();
173
+ const prevState = useRef(state.name);
174
+ useEffect(() => {
175
+ if (state.name !== prevState.current) {
176
+ const reason = "reason" in state ? state.reason : "";
177
+ prevState.current = state.name;
178
+ if (state.name === "error" || state.name === "needs-auth") {
179
+ const message = typeof reason === "string" ? reason : state.name;
180
+ zeroEvents2.emit({
181
+ type: "error",
182
+ message
183
+ });
184
+ }
185
+ }
186
+ }, [state, zeroEvents2]);
187
+ return null;
188
+ });
149
189
  function preload(fnArg, paramsOrOptions, optionsArg) {
150
- const hasParams = optionsArg !== void 0 || paramsOrOptions && !("ttl" in paramsOrOptions),
151
- params = hasParams ? paramsOrOptions : void 0,
152
- options = hasParams ? optionsArg : paramsOrOptions,
153
- queryRequest = resolveQuery({
154
- customQueries,
155
- fn: fnArg,
156
- params
157
- });
190
+ const hasParams = optionsArg !== void 0 || paramsOrOptions && !("ttl" in paramsOrOptions);
191
+ const params = hasParams ? paramsOrOptions : void 0;
192
+ const options = hasParams ? optionsArg : paramsOrOptions;
193
+ const queryRequest = resolveQuery({
194
+ customQueries,
195
+ fn: fnArg,
196
+ params
197
+ });
158
198
  return zero.preload(queryRequest, options);
159
199
  }
160
200
  function getQuery(fn, params) {
@@ -169,7 +209,7 @@ function createZeroClient({
169
209
  action = "disable",
170
210
  whenDisabled = "empty"
171
211
  }) {
172
- const mode = action === "enable" ? !1 : whenDisabled;
212
+ const mode = action === "enable" ? false : whenDisabled;
173
213
  return /* @__PURE__ */jsx(DisabledContext.Provider, {
174
214
  value: mode,
175
215
  children
@@ -1 +1 @@
1
- {"version":3,"names":["defineQueries","defineQuery","useConnectionState","useZero","ZeroProvider","createEmitter","createContext","memo","useContext","useEffect","useMemo","useRef","createPermissions","createUseQuery","createMutators","getAuth","getAllMutationsPermissions","getMutationsPermissions","registerQuery","resolveQuery","setCustomQueries","getEnvironment","setAuthData","setEnvironment","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","_uid","id","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":[]}
1
+ {"version":3,"names":["defineQueries","defineQuery","useConnectionState","useZero","ZeroProvider","createEmitter","createContext","memo","useContext","useEffect","useMemo","useRef","createPermissions","createUseQuery","createMutators","getAuth","getAllMutationsPermissions","getMutationsPermissions","registerQuery","resolveQuery","setCustomQueries","getEnvironment","setAuthData","setEnvironment","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","customQueries","DisabledContext","latestZeroInstance","zero","Proxy","get","_","key","Error","Reflect","zeroEvents","AuthDataContext","useQuery","usePermission","enabled","debug","disableMode","lastRef","tableStr","checkFn","auth","_uid","id","data","status","Boolean","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":[]}