over-zero 0.0.31 → 0.0.32

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.
@@ -35,11 +35,11 @@ var import_zero = require("@rocicorp/zero"),
35
35
  import_jsx_runtime = require("react/jsx-runtime");
36
36
  function createZeroClient({
37
37
  schema,
38
- models,
39
- disable
38
+ models
40
39
  }) {
41
40
  (0, import_state.setSchema)(schema);
42
- const modelWritePermissions = (0, import_helpers.mapObject)(models, val => val.permissions);
41
+ const DisabledContext = (0, import_react2.createContext)(!1),
42
+ modelWritePermissions = (0, import_helpers.mapObject)(models, val => val.permissions);
43
43
  let latestZeroInstance = null;
44
44
  const zero = new Proxy({}, {
45
45
  get(_, key) {
@@ -54,11 +54,12 @@ function createZeroClient({
54
54
  AuthDataContext = (0, import_react2.createContext)({}),
55
55
  useAuthData = () => (0, import_react2.use)(AuthDataContext);
56
56
  function usePermission(table, objOrId, enabled = typeof objOrId < "u", debug = !1) {
57
- const authData = useAuthData(),
57
+ const disabled = (0, import_react2.use)(DisabledContext),
58
+ authData = useAuthData(),
58
59
  permission = modelWritePermissions[table],
59
60
  query = (() => {
60
61
  let baseQuery = zero.query[table].one();
61
- return !enabled || !permission ? baseQuery : baseQuery.where(eb => permissionsHelpers.buildPermissionQuery(authData, eb, permission, objOrId));
62
+ return disabled || !enabled || !permission ? baseQuery : baseQuery.where(eb => permissionsHelpers.buildPermissionQuery(authData, eb, permission, objOrId));
62
63
  })(),
63
64
  [data, status] = useQuery(query, {
64
65
  enabled: !!(enabled && permission && authData && objOrId)
@@ -75,7 +76,8 @@ function createZeroClient({
75
76
  const queryCache = /* @__PURE__ */new Map(),
76
77
  parseAny = x => [x[0]];
77
78
  function useQuery(...args) {
78
- const [queryOrFn, paramsOrOptions, optionsArg] = args,
79
+ const disabled = (0, import_react2.use)(DisabledContext),
80
+ [queryOrFn, paramsOrOptions, optionsArg] = args,
79
81
  isPlainFunction = typeof queryOrFn == "function" && !("queryName" in queryOrFn),
80
82
  {
81
83
  actualQuery,
@@ -97,21 +99,23 @@ function createZeroClient({
97
99
  };
98
100
  }, [queryOrFn, paramsOrOptions, optionsArg, isPlainFunction]),
99
101
  out = (0, import_react.useQuery)(actualQuery, options);
100
- return process.env.NODE_ENV === "development" && (0, import_useZeroDebug.useZeroDebug)(actualQuery, options, out), disable ? [null, {
102
+ return process.env.NODE_ENV === "development" && (0, import_useZeroDebug.useZeroDebug)(actualQuery, options, out), disabled ? [null, {
101
103
  type: "unknown"
102
104
  }] : out;
103
105
  }
104
106
  const ProvideZero = ({
105
107
  children,
106
- authData,
108
+ authData: authDataIn,
109
+ disable,
107
110
  ...props
108
111
  }) => {
109
- const mutators = (0, import_react2.useMemo)(() => ((0, import_state.setAuthData)(authData), (0, import_createMutators.createMutators)({
110
- models,
111
- environment: "client",
112
- authData,
113
- can: permissionsHelpers.can
114
- })), [models, authData]);
112
+ const authData = authDataIn,
113
+ mutators = (0, import_react2.useMemo)(() => ((0, import_state.setAuthData)(authData), (0, import_createMutators.createMutators)({
114
+ models,
115
+ environment: "client",
116
+ authData,
117
+ can: permissionsHelpers.can
118
+ })), [models, authData]);
115
119
  return disable ? children : /* @__PURE__ */(0, import_jsx_runtime.jsx)(AuthDataContext.Provider, {
116
120
  value: authData,
117
121
  children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_react.ZeroProvider, {
@@ -18,9 +18,9 @@ __export(createZeroClient_exports, {
18
18
  });
19
19
  module.exports = __toCommonJS(createZeroClient_exports);
20
20
  var import_zero = require("@rocicorp/zero"), import_react = require("@rocicorp/zero/react"), import_helpers = require("@vxrn/helpers"), import_react2 = require("react"), import_createPermissions = require("./createPermissions"), import_createMutators = require("./helpers/createMutators"), import_prettyFormatZeroQuery = require("./helpers/prettyFormatZeroQuery"), import_useZeroDebug = require("./helpers/useZeroDebug"), import_state = require("./state"), import_jsx_runtime = require("react/jsx-runtime");
21
- function createZeroClient({ schema, models, disable }) {
21
+ function createZeroClient({ schema, models }) {
22
22
  (0, import_state.setSchema)(schema);
23
- const modelWritePermissions = (0, import_helpers.mapObject)(models, (val) => val.permissions);
23
+ const DisabledContext = (0, import_react2.createContext)(!1), modelWritePermissions = (0, import_helpers.mapObject)(models, (val) => val.permissions);
24
24
  let latestZeroInstance = null;
25
25
  const zero = new Proxy({}, {
26
26
  get(_, key) {
@@ -31,9 +31,9 @@ function createZeroClient({ schema, models, disable }) {
31
31
  environment: "client"
32
32
  }), zeroEvents = (0, import_helpers.createEmitter)("zero", null), AuthDataContext = (0, import_react2.createContext)({}), useAuthData = () => (0, import_react2.use)(AuthDataContext);
33
33
  function usePermission(table, objOrId, enabled = typeof objOrId < "u", debug = !1) {
34
- const authData = useAuthData(), permission = modelWritePermissions[table], query = (() => {
34
+ const disabled = (0, import_react2.use)(DisabledContext), authData = useAuthData(), permission = modelWritePermissions[table], query = (() => {
35
35
  let baseQuery = zero.query[table].one();
36
- return !enabled || !permission ? baseQuery : baseQuery.where((eb) => permissionsHelpers.buildPermissionQuery(
36
+ return disabled || !enabled || !permission ? baseQuery : baseQuery.where((eb) => permissionsHelpers.buildPermissionQuery(
37
37
  authData,
38
38
  eb,
39
39
  permission,
@@ -52,7 +52,7 @@ function createZeroClient({ schema, models, disable }) {
52
52
  }
53
53
  const queryCache = /* @__PURE__ */ new Map(), parseAny = (x) => [x[0]];
54
54
  function useQuery(...args) {
55
- const [queryOrFn, paramsOrOptions, optionsArg] = args, isPlainFunction = typeof queryOrFn == "function" && !("queryName" in queryOrFn), { actualQuery, options } = (0, import_react2.useMemo)(() => {
55
+ const disabled = (0, import_react2.use)(DisabledContext), [queryOrFn, paramsOrOptions, optionsArg] = args, isPlainFunction = typeof queryOrFn == "function" && !("queryName" in queryOrFn), { actualQuery, options } = (0, import_react2.useMemo)(() => {
56
56
  if (!isPlainFunction)
57
57
  return {
58
58
  actualQuery: queryOrFn,
@@ -62,14 +62,15 @@ function createZeroClient({ schema, models, disable }) {
62
62
  let synced = queryCache.get(queryName);
63
63
  return synced || (synced = (0, import_zero.syncedQuery)(queryName, parseAny, (arg) => fn(arg)), queryCache.set(queryName, synced)), { actualQuery: params !== void 0 ? synced(params) : synced, options: opts };
64
64
  }, [queryOrFn, paramsOrOptions, optionsArg, isPlainFunction]), out = (0, import_react.useQuery)(actualQuery, options);
65
- return process.env.NODE_ENV === "development" && (0, import_useZeroDebug.useZeroDebug)(actualQuery, options, out), disable ? [null, { type: "unknown" }] : out;
65
+ return process.env.NODE_ENV === "development" && (0, import_useZeroDebug.useZeroDebug)(actualQuery, options, out), disabled ? [null, { type: "unknown" }] : out;
66
66
  }
67
67
  const ProvideZero = ({
68
68
  children,
69
- authData,
69
+ authData: authDataIn,
70
+ disable,
70
71
  ...props
71
72
  }) => {
72
- const mutators = (0, import_react2.useMemo)(() => ((0, import_state.setAuthData)(authData), (0, import_createMutators.createMutators)({
73
+ const authData = authDataIn, mutators = (0, import_react2.useMemo)(() => ((0, import_state.setAuthData)(authData), (0, import_createMutators.createMutators)({
73
74
  models,
74
75
  environment: "client",
75
76
  authData,
@@ -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": ["import_react", "zeroUseQuery", "zero"]
6
6
  }
@@ -43,11 +43,11 @@ function _type_of(obj) {
43
43
  function createZeroClient(param) {
44
44
  var {
45
45
  schema,
46
- models,
47
- disable
46
+ models
48
47
  } = param;
49
48
  (0, import_state.setSchema)(schema);
50
- var modelWritePermissions = (0, import_helpers.mapObject)(models, function (val) {
49
+ var DisabledContext = /* @__PURE__ */(0, import_react2.createContext)(!1),
50
+ modelWritePermissions = (0, import_helpers.mapObject)(models, function (val) {
51
51
  return val.permissions;
52
52
  }),
53
53
  latestZeroInstance = null,
@@ -68,11 +68,12 @@ function createZeroClient(param) {
68
68
  function usePermission(table, objOrId) {
69
69
  var enabled = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : typeof objOrId < "u",
70
70
  debug = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : !1,
71
+ disabled = (0, import_react2.use)(DisabledContext),
71
72
  authData = useAuthData(),
72
73
  permission = modelWritePermissions[table],
73
74
  query = function () {
74
75
  var baseQuery = zero.query[table].one();
75
- return !enabled || !permission ? baseQuery : baseQuery.where(function (eb) {
76
+ return disabled || !enabled || !permission ? baseQuery : baseQuery.where(function (eb) {
76
77
  return permissionsHelpers.buildPermissionQuery(authData, eb, permission, objOrId);
77
78
  });
78
79
  }(),
@@ -95,7 +96,8 @@ function createZeroClient(param) {
95
96
  };
96
97
  function useQuery() {
97
98
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
98
- var [queryOrFn, paramsOrOptions, optionsArg] = args,
99
+ var disabled = (0, import_react2.use)(DisabledContext),
100
+ [queryOrFn, paramsOrOptions, optionsArg] = args,
99
101
  isPlainFunction = typeof queryOrFn == "function" && !("queryName" in queryOrFn),
100
102
  {
101
103
  actualQuery,
@@ -121,16 +123,18 @@ function createZeroClient(param) {
121
123
  };
122
124
  }, [queryOrFn, paramsOrOptions, optionsArg, isPlainFunction]),
123
125
  out = (0, import_react.useQuery)(actualQuery, options);
124
- return process.env.NODE_ENV === "development" && (0, import_useZeroDebug.useZeroDebug)(actualQuery, options, out), disable ? [null, {
126
+ return process.env.NODE_ENV === "development" && (0, import_useZeroDebug.useZeroDebug)(actualQuery, options, out), disabled ? [null, {
125
127
  type: "unknown"
126
128
  }] : out;
127
129
  }
128
130
  var ProvideZero = function (param2) {
129
131
  var {
130
132
  children,
131
- authData,
133
+ authData: authDataIn,
134
+ disable,
132
135
  ...props
133
136
  } = param2,
137
+ authData = authDataIn,
134
138
  mutators = (0, import_react2.useMemo)(function () {
135
139
  return (0, import_state.setAuthData)(authData), (0, import_createMutators.createMutators)({
136
140
  models,
@@ -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_createMutators","import_prettyFormatZeroQuery","import_useZeroDebug","import_state","_type_of","obj","Symbol","constructor","param","schema","models","disable","setSchema","modelWritePermissions","mapObject","val","permissions","latestZeroInstance","zero","Proxy","get","_","key","Reflect","permissionsHelpers","createPermissions","environment","zeroEvents","createEmitter","AuthDataContext","createContext","useAuthData","use","usePermission","table","objOrId","enabled","arguments","length","debug","authData","permission","query","baseQuery","one","where","eb","buildPermissionQuery","data","status","useQuery","console","info","prettyFormatZeroQuery","result","allowed","queryCache","Map","parseAny","x","_len","args","Array","_key","queryOrFn","paramsOrOptions","optionsArg","isPlainFunction","actualQuery","options","useMemo","fn","queryName","name","hasParams","params","opts","synced","syncedQuery","arg","set","out","process","env","NODE_ENV","useZeroDebug","type","ProvideZero","param2","children","props","mutators","setAuthData","createMutators","can","jsx","Provider"],"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_createMutators","import_prettyFormatZeroQuery","import_useZeroDebug","import_state","_type_of","obj","Symbol","constructor","param","schema","models","setSchema","DisabledContext","createContext","modelWritePermissions","mapObject","val","permissions","latestZeroInstance","zero","Proxy","get","_","key","Reflect","permissionsHelpers","createPermissions","environment","zeroEvents","createEmitter","AuthDataContext","useAuthData","use","usePermission","table","objOrId","enabled","arguments","length","debug","disabled","authData","permission","query","baseQuery","one","where","eb","buildPermissionQuery","data","status","useQuery","console","info","prettyFormatZeroQuery","result","allowed","queryCache","Map","parseAny","x","_len","args","Array","_key","queryOrFn","paramsOrOptions","optionsArg","isPlainFunction","actualQuery","options","useMemo","fn","queryName","name","hasParams","params","opts","synced","syncedQuery","arg","set","out","process","env","NODE_ENV","useZeroDebug","type","ProvideZero","param2","children","authDataIn","disable","props","mutators","setAuthData","createMutators","can","jsx","Provider","jsxs","ZeroProvider"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -8,9 +8,9 @@ import { prettyFormatZeroQuery } from "./helpers/prettyFormatZeroQuery";
8
8
  import { useZeroDebug } from "./helpers/useZeroDebug";
9
9
  import { setAuthData, setSchema } from "./state";
10
10
  import { jsx, jsxs } from "react/jsx-runtime";
11
- function createZeroClient({ schema, models, disable }) {
11
+ function createZeroClient({ schema, models }) {
12
12
  setSchema(schema);
13
- const modelWritePermissions = mapObject(models, (val) => val.permissions);
13
+ const DisabledContext = createContext(!1), modelWritePermissions = mapObject(models, (val) => val.permissions);
14
14
  let latestZeroInstance = null;
15
15
  const zero = new Proxy({}, {
16
16
  get(_, key) {
@@ -21,9 +21,9 @@ function createZeroClient({ schema, models, disable }) {
21
21
  environment: "client"
22
22
  }), zeroEvents = createEmitter("zero", null), AuthDataContext = createContext({}), useAuthData = () => use(AuthDataContext);
23
23
  function usePermission(table, objOrId, enabled = typeof objOrId < "u", debug = !1) {
24
- const authData = useAuthData(), permission = modelWritePermissions[table], query = (() => {
24
+ const disabled = use(DisabledContext), authData = useAuthData(), permission = modelWritePermissions[table], query = (() => {
25
25
  let baseQuery = zero.query[table].one();
26
- return !enabled || !permission ? baseQuery : baseQuery.where((eb) => permissionsHelpers.buildPermissionQuery(
26
+ return disabled || !enabled || !permission ? baseQuery : baseQuery.where((eb) => permissionsHelpers.buildPermissionQuery(
27
27
  authData,
28
28
  eb,
29
29
  permission,
@@ -42,7 +42,7 @@ function createZeroClient({ schema, models, disable }) {
42
42
  }
43
43
  const queryCache = /* @__PURE__ */ new Map(), parseAny = (x) => [x[0]];
44
44
  function useQuery(...args) {
45
- const [queryOrFn, paramsOrOptions, optionsArg] = args, isPlainFunction = typeof queryOrFn == "function" && !("queryName" in queryOrFn), { actualQuery, options } = useMemo(() => {
45
+ const disabled = use(DisabledContext), [queryOrFn, paramsOrOptions, optionsArg] = args, isPlainFunction = typeof queryOrFn == "function" && !("queryName" in queryOrFn), { actualQuery, options } = useMemo(() => {
46
46
  if (!isPlainFunction)
47
47
  return {
48
48
  actualQuery: queryOrFn,
@@ -52,14 +52,15 @@ function createZeroClient({ schema, models, disable }) {
52
52
  let synced = queryCache.get(queryName);
53
53
  return synced || (synced = syncedQuery(queryName, parseAny, (arg) => fn(arg)), queryCache.set(queryName, synced)), { actualQuery: params !== void 0 ? synced(params) : synced, options: opts };
54
54
  }, [queryOrFn, paramsOrOptions, optionsArg, isPlainFunction]), out = zeroUseQuery(actualQuery, options);
55
- return process.env.NODE_ENV === "development" && useZeroDebug(actualQuery, options, out), disable ? [null, { type: "unknown" }] : out;
55
+ return process.env.NODE_ENV === "development" && useZeroDebug(actualQuery, options, out), disabled ? [null, { type: "unknown" }] : out;
56
56
  }
57
57
  const ProvideZero = ({
58
58
  children,
59
- authData,
59
+ authData: authDataIn,
60
+ disable,
60
61
  ...props
61
62
  }) => {
62
- const mutators = useMemo(() => (setAuthData(authData), createMutators({
63
+ const authData = authDataIn, mutators = useMemo(() => (setAuthData(authData), createMutators({
63
64
  models,
64
65
  environment: "client",
65
66
  authData,
@@ -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": ["zero"]
6
6
  }
@@ -10,11 +10,11 @@ import { setAuthData, setSchema } from "./state.mjs";
10
10
  import { jsx, jsxs } from "react/jsx-runtime";
11
11
  function createZeroClient({
12
12
  schema,
13
- models,
14
- disable
13
+ models
15
14
  }) {
16
15
  setSchema(schema);
17
- const modelWritePermissions = mapObject(models, val => val.permissions);
16
+ const DisabledContext = createContext(!1),
17
+ modelWritePermissions = mapObject(models, val => val.permissions);
18
18
  let latestZeroInstance = null;
19
19
  const zero = new Proxy({}, {
20
20
  get(_, key) {
@@ -29,11 +29,12 @@ function createZeroClient({
29
29
  AuthDataContext = createContext({}),
30
30
  useAuthData = () => use(AuthDataContext);
31
31
  function usePermission(table, objOrId, enabled = typeof objOrId < "u", debug = !1) {
32
- const authData = useAuthData(),
32
+ const disabled = use(DisabledContext),
33
+ authData = useAuthData(),
33
34
  permission = modelWritePermissions[table],
34
35
  query = (() => {
35
36
  let baseQuery = zero.query[table].one();
36
- return !enabled || !permission ? baseQuery : baseQuery.where(eb => permissionsHelpers.buildPermissionQuery(authData, eb, permission, objOrId));
37
+ return disabled || !enabled || !permission ? baseQuery : baseQuery.where(eb => permissionsHelpers.buildPermissionQuery(authData, eb, permission, objOrId));
37
38
  })(),
38
39
  [data, status] = useQuery(query, {
39
40
  enabled: !!(enabled && permission && authData && objOrId)
@@ -50,7 +51,8 @@ function createZeroClient({
50
51
  const queryCache = /* @__PURE__ */new Map(),
51
52
  parseAny = x => [x[0]];
52
53
  function useQuery(...args) {
53
- const [queryOrFn, paramsOrOptions, optionsArg] = args,
54
+ const disabled = use(DisabledContext),
55
+ [queryOrFn, paramsOrOptions, optionsArg] = args,
54
56
  isPlainFunction = typeof queryOrFn == "function" && !("queryName" in queryOrFn),
55
57
  {
56
58
  actualQuery,
@@ -72,21 +74,23 @@ function createZeroClient({
72
74
  };
73
75
  }, [queryOrFn, paramsOrOptions, optionsArg, isPlainFunction]),
74
76
  out = zeroUseQuery(actualQuery, options);
75
- return process.env.NODE_ENV === "development" && useZeroDebug(actualQuery, options, out), disable ? [null, {
77
+ return process.env.NODE_ENV === "development" && useZeroDebug(actualQuery, options, out), disabled ? [null, {
76
78
  type: "unknown"
77
79
  }] : out;
78
80
  }
79
81
  const ProvideZero = ({
80
82
  children,
81
- authData,
83
+ authData: authDataIn,
84
+ disable,
82
85
  ...props
83
86
  }) => {
84
- const mutators = useMemo(() => (setAuthData(authData), createMutators({
85
- models,
86
- environment: "client",
87
- authData,
88
- can: permissionsHelpers.can
89
- })), [models, authData]);
87
+ const authData = authDataIn,
88
+ mutators = useMemo(() => (setAuthData(authData), createMutators({
89
+ models,
90
+ environment: "client",
91
+ authData,
92
+ can: permissionsHelpers.can
93
+ })), [models, authData]);
90
94
  return disable ? children : /* @__PURE__ */jsx(AuthDataContext.Provider, {
91
95
  value: authData,
92
96
  children: /* @__PURE__ */jsxs(ZeroProvider, {
@@ -1 +1 @@
1
- {"version":3,"names":["syncedQuery","useZero","ZeroProvider","useQuery","zeroUseQuery","createEmitter","mapObject","createContext","use","useMemo","createPermissions","createMutators","prettyFormatZeroQuery","useZeroDebug","setAuthData","setSchema","jsx","jsxs","createZeroClient","schema","models","disable","modelWritePermissions","val","permissions","latestZeroInstance","zero","Proxy","get","_","key","Reflect","permissionsHelpers","environment","zeroEvents","AuthDataContext","useAuthData","usePermission","table","objOrId","enabled","debug","authData","permission","query","baseQuery","one","where","eb","buildPermissionQuery","data","status","console","info","allowed","queryCache","Map","parseAny","x","args","queryOrFn","paramsOrOptions","optionsArg","isPlainFunction","actualQuery","options","fn","queryName","name","hasParams","params","opts","synced","arg","set","out","process","env","NODE_ENV","type","ProvideZero","children","props","mutators","can","Provider","value","kvStore","onError","error","emit","message","SetZeroInstance","zero2"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["syncedQuery","useZero","ZeroProvider","useQuery","zeroUseQuery","createEmitter","mapObject","createContext","use","useMemo","createPermissions","createMutators","prettyFormatZeroQuery","useZeroDebug","setAuthData","setSchema","jsx","jsxs","createZeroClient","schema","models","DisabledContext","modelWritePermissions","val","permissions","latestZeroInstance","zero","Proxy","get","_","key","Reflect","permissionsHelpers","environment","zeroEvents","AuthDataContext","useAuthData","usePermission","table","objOrId","enabled","debug","disabled","authData","permission","query","baseQuery","one","where","eb","buildPermissionQuery","data","status","console","info","allowed","queryCache","Map","parseAny","x","args","queryOrFn","paramsOrOptions","optionsArg","isPlainFunction","actualQuery","options","fn","queryName","name","hasParams","params","opts","synced","arg","set","out","process","env","NODE_ENV","type","ProvideZero","children","authDataIn","disable","props","mutators","can","Provider","value","kvStore","onError","error","emit","message","SetZeroInstance","zero2"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -16,11 +16,11 @@ function _type_of(obj) {
16
16
  function createZeroClient(param) {
17
17
  var {
18
18
  schema,
19
- models,
20
- disable
19
+ models
21
20
  } = param;
22
21
  setSchema(schema);
23
- var modelWritePermissions = mapObject(models, function (val) {
22
+ var DisabledContext = /* @__PURE__ */createContext(!1),
23
+ modelWritePermissions = mapObject(models, function (val) {
24
24
  return val.permissions;
25
25
  }),
26
26
  latestZeroInstance = null,
@@ -41,11 +41,12 @@ function createZeroClient(param) {
41
41
  function usePermission(table, objOrId) {
42
42
  var enabled = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : typeof objOrId < "u",
43
43
  debug = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : !1,
44
+ disabled = use(DisabledContext),
44
45
  authData = useAuthData(),
45
46
  permission = modelWritePermissions[table],
46
47
  query = function () {
47
48
  var baseQuery = zero.query[table].one();
48
- return !enabled || !permission ? baseQuery : baseQuery.where(function (eb) {
49
+ return disabled || !enabled || !permission ? baseQuery : baseQuery.where(function (eb) {
49
50
  return permissionsHelpers.buildPermissionQuery(authData, eb, permission, objOrId);
50
51
  });
51
52
  }(),
@@ -68,7 +69,8 @@ function createZeroClient(param) {
68
69
  };
69
70
  function useQuery() {
70
71
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
71
- var [queryOrFn, paramsOrOptions, optionsArg] = args,
72
+ var disabled = use(DisabledContext),
73
+ [queryOrFn, paramsOrOptions, optionsArg] = args,
72
74
  isPlainFunction = typeof queryOrFn == "function" && !("queryName" in queryOrFn),
73
75
  {
74
76
  actualQuery,
@@ -94,16 +96,18 @@ function createZeroClient(param) {
94
96
  };
95
97
  }, [queryOrFn, paramsOrOptions, optionsArg, isPlainFunction]),
96
98
  out = zeroUseQuery(actualQuery, options);
97
- return process.env.NODE_ENV === "development" && useZeroDebug(actualQuery, options, out), disable ? [null, {
99
+ return process.env.NODE_ENV === "development" && useZeroDebug(actualQuery, options, out), disabled ? [null, {
98
100
  type: "unknown"
99
101
  }] : out;
100
102
  }
101
103
  var ProvideZero = function (param2) {
102
104
  var {
103
105
  children,
104
- authData,
106
+ authData: authDataIn,
107
+ disable,
105
108
  ...props
106
109
  } = param2,
110
+ authData = authDataIn,
107
111
  mutators = useMemo(function () {
108
112
  return setAuthData(authData), createMutators({
109
113
  models,
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","syncedQuery","useZero","ZeroProvider","useQuery","zeroUseQuery","createEmitter","mapObject","createContext","use","useMemo","createPermissions","createMutators","prettyFormatZeroQuery","useZeroDebug","setAuthData","setSchema","_type_of","obj","Symbol","constructor","createZeroClient","param","schema","models","disable","modelWritePermissions","val","permissions","latestZeroInstance","zero","Proxy","get","_","key","Reflect","permissionsHelpers","environment","zeroEvents","AuthDataContext","useAuthData","usePermission","table","objOrId","enabled","arguments","length","debug","authData","permission","query","baseQuery","one","where","eb","buildPermissionQuery","data","status","console","info","result","allowed","queryCache","Map","parseAny","x","_len","args","Array","_key","queryOrFn","paramsOrOptions","optionsArg","isPlainFunction","actualQuery","options","fn","queryName","name","hasParams","params","opts","synced","arg","set","out","process","env","NODE_ENV","type","ProvideZero","param2","children","props","mutators","can","Provider","value"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","syncedQuery","useZero","ZeroProvider","useQuery","zeroUseQuery","createEmitter","mapObject","createContext","use","useMemo","createPermissions","createMutators","prettyFormatZeroQuery","useZeroDebug","setAuthData","setSchema","_type_of","obj","Symbol","constructor","createZeroClient","param","schema","models","DisabledContext","modelWritePermissions","val","permissions","latestZeroInstance","zero","Proxy","get","_","key","Reflect","permissionsHelpers","environment","zeroEvents","AuthDataContext","useAuthData","usePermission","table","objOrId","enabled","arguments","length","debug","disabled","authData","permission","query","baseQuery","one","where","eb","buildPermissionQuery","data","status","console","info","result","allowed","queryCache","Map","parseAny","x","_len","args","Array","_key","queryOrFn","paramsOrOptions","optionsArg","isPlainFunction","actualQuery","options","fn","queryName","name","hasParams","params","opts","synced","arg","set","out","process","env","NODE_ENV","type","ProvideZero","param2","children","authDataIn","disable","props","mutators","can","Provider","value"],"sources":["../../src/createZeroClient.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "over-zero",
3
- "version": "0.0.31",
3
+ "version": "0.0.32",
4
4
  "sideEffects": false,
5
5
  "source": "src/index.ts",
6
6
  "main": "dist/cjs",
@@ -22,13 +22,15 @@ import type { AuthData, GenericModels, GetZeroMutators, ZeroEvent } from './type
22
22
  export function createZeroClient<
23
23
  Schema extends ZeroSchema,
24
24
  Models extends GenericModels,
25
- >({ schema, models, disable }: { schema: Schema; models: Models; disable?: boolean }) {
25
+ >({ schema, models }: { schema: Schema; models: Models }) {
26
26
  type ZeroMutators = GetZeroMutators<Models>
27
27
  type ZeroInstance = Zero<Schema, ZeroMutators>
28
28
  type TableName = keyof ZeroInstance['query']
29
29
 
30
30
  setSchema(schema)
31
31
 
32
+ const DisabledContext = createContext(false)
33
+
32
34
  const modelWritePermissions = mapObject(models, (val) => val.permissions) as {
33
35
  [K in TableName]: K extends keyof Models ? Models[K]['permissions'] : never
34
36
  }
@@ -67,6 +69,7 @@ export function createZeroClient<
67
69
  enabled = typeof objOrId !== 'undefined',
68
70
  debug = false
69
71
  ): boolean | null {
72
+ const disabled = use(DisabledContext)
70
73
  // const cacheVal = permissionCache.get(key) ?? permissionCache.get(keyBase)
71
74
  const authData = useAuthData()
72
75
  const permission = modelWritePermissions[table]
@@ -74,7 +77,7 @@ export function createZeroClient<
74
77
  const query = (() => {
75
78
  let baseQuery = zero.query[table].one()
76
79
 
77
- if (!enabled || !permission) {
80
+ if (disabled || !enabled || !permission) {
78
81
  return baseQuery
79
82
  }
80
83
 
@@ -151,6 +154,7 @@ export function createZeroClient<
151
154
 
152
155
  // Implementation - keep it simple with any
153
156
  function useQuery(...args: any[]): any {
157
+ const disabled = use(DisabledContext)
154
158
  const [queryOrFn, paramsOrOptions, optionsArg] = args
155
159
 
156
160
  // Detect which calling pattern is being used
@@ -200,7 +204,7 @@ export function createZeroClient<
200
204
  useZeroDebug(actualQuery, options, out)
201
205
  }
202
206
 
203
- if (disable) {
207
+ if (disabled) {
204
208
  return [null, { type: 'unknown' }] as never
205
209
  }
206
210
 
@@ -209,12 +213,16 @@ export function createZeroClient<
209
213
 
210
214
  const ProvideZero = ({
211
215
  children,
212
- authData,
216
+ authData: authDataIn,
217
+ disable,
213
218
  ...props
214
219
  }: Omit<ZeroOptions<Schema, ZeroMutators>, 'schema' | 'mutators'> & {
215
220
  children: ReactNode
216
- authData?: any
221
+ authData?: AuthData
222
+ disable?: boolean
217
223
  }) => {
224
+ const authData = authDataIn as AuthData
225
+
218
226
  const mutators = useMemo(() => {
219
227
  setAuthData(authData)
220
228
 
@@ -226,6 +234,7 @@ export function createZeroClient<
226
234
  })
227
235
  }, [models, authData])
228
236
 
237
+ // for now we re-parent
229
238
  if (disable) {
230
239
  return children
231
240
  }
@@ -1,15 +1,15 @@
1
1
  import type { HumanReadable, Query, Row, SyncedQuery, Zero, ZeroOptions, Schema as ZeroSchema } from '@rocicorp/zero';
2
2
  import { type ReactNode } from 'react';
3
- import type { GenericModels, GetZeroMutators, ZeroEvent } from './types';
4
- export declare function createZeroClient<Schema extends ZeroSchema, Models extends GenericModels>({ schema, models, disable }: {
3
+ import type { AuthData, GenericModels, GetZeroMutators, ZeroEvent } from './types';
4
+ export declare function createZeroClient<Schema extends ZeroSchema, Models extends GenericModels>({ schema, models }: {
5
5
  schema: Schema;
6
6
  models: Models;
7
- disable?: boolean;
8
7
  }): {
9
8
  zeroEvents: import("@vxrn/helpers").Emitter<ZeroEvent | null>;
10
- ProvideZero: ({ children, authData, ...props }: Omit<ZeroOptions<Schema, GetZeroMutators<Models>>, "schema" | "mutators"> & {
9
+ ProvideZero: ({ children, authData: authDataIn, disable, ...props }: Omit<ZeroOptions<Schema, GetZeroMutators<Models>>, "schema" | "mutators"> & {
11
10
  children: ReactNode;
12
- authData?: any;
11
+ authData?: AuthData;
12
+ disable?: boolean;
13
13
  }) => string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null | undefined;
14
14
  useQuery: {
15
15
  <TTable extends keyof Schema["tables"] & string, TReturn>(query: Query<Schema, TTable, TReturn> | SyncedQuery<any, any, any, any, Query<Schema, TTable, TReturn>>, options?: {
@@ -1 +1 @@
1
- {"version":3,"file":"createZeroClient.d.ts","sourceRoot":"","sources":["../src/createZeroClient.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,KAAK,EAEL,GAAG,EACH,WAAW,EACX,IAAI,EACJ,WAAW,EACX,MAAM,IAAI,UAAU,EACrB,MAAM,gBAAgB,CAAA;AAIvB,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAMnE,OAAO,KAAK,EAAY,aAAa,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAElF,wBAAgB,gBAAgB,CAC9B,MAAM,SAAS,UAAU,EACzB,MAAM,SAAS,aAAa,EAC5B,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE;;oDA6L/E,IAAI,CAAC,WAAW,CAAC,MAAM,0BAAe,EAAE,QAAQ,GAAG,UAAU,CAAC,GAAG;QAClE,QAAQ,EAAE,SAAS,CAAA;QACnB,QAAQ,CAAC,EAAE,GAAG,CAAA;KACf;;SArFiB,MAAM,SAAS,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,OAAO,SAEnE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,GAC9B,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,YACzD;sBAhBA,OAAO,GAAG,SAAS;kBACvB,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS;YAejB,OAAO;SAInB,IAAI,EAAE,MAAM,SAAS,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,OAAO,8DAErE,IAAI,YACF;sBAvBA,OAAO,GAAG,SAAS;kBACvB,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS;YAsBjB,OAAO;SAInB,MAAM,SAAS,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,OAAO,gEAE7D;sBA7BA,OAAO,GAAG,SAAS;kBACvB,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS;YA4BjB,OAAO;;oBArFd,CAAC,iDACf,CAAC,WACC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,yCAG9D,OAAO,GAAG,IAAI;;EAiNlB"}
1
+ {"version":3,"file":"createZeroClient.d.ts","sourceRoot":"","sources":["../src/createZeroClient.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,KAAK,EAEL,GAAG,EACH,WAAW,EACX,IAAI,EACJ,WAAW,EACX,MAAM,IAAI,UAAU,EACrB,MAAM,gBAAgB,CAAA;AAIvB,OAAO,EAA+B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAMnE,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAElF,wBAAgB,gBAAgB,CAC9B,MAAM,SAAS,UAAU,EACzB,MAAM,SAAS,aAAa,EAC5B,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE;;yEAkMnD,IAAI,CAAC,WAAW,CAAC,MAAM,0BAAe,EAAE,QAAQ,GAAG,UAAU,CAAC,GAAG;QAClE,QAAQ,EAAE,SAAS,CAAA;QACnB,QAAQ,CAAC,EAAE,QAAQ,CAAA;QACnB,OAAO,CAAC,EAAE,OAAO,CAAA;KAClB;;SAxFiB,MAAM,SAAS,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,OAAO,SAEnE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,GAC9B,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,YACzD;sBAhBA,OAAO,GAAG,SAAS;kBACvB,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS;YAejB,OAAO;SAInB,IAAI,EAAE,MAAM,SAAS,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,OAAO,8DAErE,IAAI,YACF;sBAvBA,OAAO,GAAG,SAAS;kBACvB,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS;YAsBjB,OAAO;SAInB,MAAM,SAAS,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,EAAE,OAAO,gEAE7D;sBA7BA,OAAO,GAAG,SAAS;kBACvB,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS;YA4BjB,OAAO;;oBAtFd,CAAC,iDACf,CAAC,WACC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,yCAG9D,OAAO,GAAG,IAAI;;EAwNlB"}