on-zero 0.11.7 → 0.12.0
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.
- package/dist/cjs/helpers/queryContext.cjs +14 -2
- package/dist/cjs/helpers/queryContext.native.js +14 -2
- package/dist/cjs/helpers/queryContext.native.js.map +1 -1
- package/dist/cjs/server.cjs +60 -9
- package/dist/cjs/server.native.js +67 -10
- package/dist/cjs/server.native.js.map +1 -1
- package/dist/esm/helpers/queryContext.mjs +13 -2
- package/dist/esm/helpers/queryContext.mjs.map +1 -1
- package/dist/esm/helpers/queryContext.native.js +13 -2
- package/dist/esm/helpers/queryContext.native.js.map +1 -1
- package/dist/esm/server.mjs +61 -11
- package/dist/esm/server.mjs.map +1 -1
- package/dist/esm/server.native.js +68 -12
- package/dist/esm/server.native.js.map +1 -1
- package/package.json +2 -2
- package/src/helpers/queryContext.ts +21 -1
- package/src/server.ts +87 -10
- package/types/helpers/queryContext.d.ts +3 -0
- package/types/helpers/queryContext.d.ts.map +1 -1
- package/types/server.d.ts +23 -0
- package/types/server.d.ts.map +1 -1
|
@@ -24,16 +24,28 @@ var queryContext_exports = {};
|
|
|
24
24
|
__export(queryContext_exports, {
|
|
25
25
|
isInQueryContext: () => isInQueryContext,
|
|
26
26
|
queryAuthData: () => queryAuthData,
|
|
27
|
-
runWithQueryContext: () => runWithQueryContext
|
|
27
|
+
runWithQueryContext: () => runWithQueryContext,
|
|
28
|
+
runWithSyncQueryContext: () => runWithSyncQueryContext
|
|
28
29
|
});
|
|
29
30
|
module.exports = __toCommonJS(queryContext_exports);
|
|
30
31
|
var import_asyncContext = require("./asyncContext.cjs");
|
|
31
32
|
const asyncContext = (0, import_asyncContext.createAsyncContext)();
|
|
33
|
+
let syncScope = null;
|
|
34
|
+
function runWithSyncQueryContext(context, fn) {
|
|
35
|
+
const previous = syncScope;
|
|
36
|
+
syncScope = context;
|
|
37
|
+
try {
|
|
38
|
+
return fn();
|
|
39
|
+
} finally {
|
|
40
|
+
syncScope = previous;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
32
43
|
function queryAuthData() {
|
|
44
|
+
if (syncScope) return syncScope.authData;
|
|
33
45
|
return asyncContext.get()?.authData ?? null;
|
|
34
46
|
}
|
|
35
47
|
function isInQueryContext() {
|
|
36
|
-
return !!asyncContext.get();
|
|
48
|
+
return !!syncScope || !!asyncContext.get();
|
|
37
49
|
}
|
|
38
50
|
function runWithQueryContext(context, fn) {
|
|
39
51
|
return asyncContext.run(context, fn);
|
|
@@ -26,18 +26,30 @@ var queryContext_exports = {};
|
|
|
26
26
|
__export(queryContext_exports, {
|
|
27
27
|
isInQueryContext: () => isInQueryContext,
|
|
28
28
|
queryAuthData: () => queryAuthData,
|
|
29
|
-
runWithQueryContext: () => runWithQueryContext
|
|
29
|
+
runWithQueryContext: () => runWithQueryContext,
|
|
30
|
+
runWithSyncQueryContext: () => runWithSyncQueryContext
|
|
30
31
|
});
|
|
31
32
|
module.exports = __toCommonJS(queryContext_exports);
|
|
32
33
|
var import_asyncContext = require("./asyncContext.native.js");
|
|
33
34
|
var asyncContext = (0, import_asyncContext.createAsyncContext)();
|
|
35
|
+
var syncScope = null;
|
|
36
|
+
function runWithSyncQueryContext(context, fn) {
|
|
37
|
+
var previous = syncScope;
|
|
38
|
+
syncScope = context;
|
|
39
|
+
try {
|
|
40
|
+
return fn();
|
|
41
|
+
} finally {
|
|
42
|
+
syncScope = previous;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
34
45
|
function queryAuthData() {
|
|
35
46
|
var _ref;
|
|
36
47
|
var _asyncContext_get;
|
|
48
|
+
if (syncScope) return syncScope.authData;
|
|
37
49
|
return (_ref = (_asyncContext_get = asyncContext.get()) === null || _asyncContext_get === void 0 ? void 0 : _asyncContext_get.authData) !== null && _ref !== void 0 ? _ref : null;
|
|
38
50
|
}
|
|
39
51
|
function isInQueryContext() {
|
|
40
|
-
return !!asyncContext.get();
|
|
52
|
+
return !!syncScope || !!asyncContext.get();
|
|
41
53
|
}
|
|
42
54
|
function runWithQueryContext(context, fn) {
|
|
43
55
|
return asyncContext.run(context, fn);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","queryContext_exports","__export","isInQueryContext","queryAuthData","runWithQueryContext","module","exports","import_asyncContext","require","asyncContext","createAsyncContext","_ref","_asyncContext_get","
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","queryContext_exports","__export","isInQueryContext","queryAuthData","runWithQueryContext","runWithSyncQueryContext","module","exports","import_asyncContext","require","asyncContext","createAsyncContext","syncScope","context","fn","previous","_ref","_asyncContext_get","authData","get"],"sources":["../../../src/helpers/queryContext.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,oBAAA;AAAAC,QAAA,CAAAD,oBAAA;EAAAE,gBAAA,EAAAA,CAAA,KAAAA,gBAAA;EAAAC,aAAA,EAAAA,CAAA,KAAAA,aAAA;EAAAC,mBAAA,EAAAA,CAAA,KAAAA,mBAAA;EAAAC,uBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAZ,YAAmC,CAAAK,oBAAA;AAInC,IAAAQ,mBAAM,GAAeC,OAAA;AAMrB,IAAIC,YAAkD,OAAAF,mBAAA,CAAAG,kBAAA;AAE/C,IAAAC,SAAS;AAId,SAAMP,uBAAWA,CAAAQ,OAAA,EAAAC,EAAA;EACjB,IAAAC,QAAY,GAAAH,SAAA;EACZA,SAAI,GAAAC,OAAA;EACF;IACF,OAAAC,EAAE;EACA;IACFF,SAAA,GAAAG,QAAA;EACF;AAEO;AACL,SAAIZ,aAAWA,CAAA,EAAO;EACtB,IAAAa,IAAO;EACT,IAAAC,iBAAA;EAEO,IAAAL,SAAS,SAAAA,SAAmB,CAAAM,QAAA;EACjC,OAAO,CAACF,IAAC,IAAAC,iBAAe,GAAAP,YAAiB,CAAAS,GAAA,gBAAAF,iBAAA,uBAAAA,iBAAA,CAAAC,QAAA,cAAAF,IAAA,cAAAA,IAAA;AAC3C;AAEO,SAASd,iBAAA;EAId,OAAO,EAAAU,SAAA,IAAa,EAAIF,YAAW,CAAAS,GAAA;AACrC","ignoreList":[]}
|
package/dist/cjs/server.cjs
CHANGED
|
@@ -33,6 +33,7 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
|
33
33
|
}), mod);
|
|
34
34
|
var server_exports = {};
|
|
35
35
|
__export(server_exports, {
|
|
36
|
+
createSyncQueries: () => createSyncQueries,
|
|
36
37
|
createZeroServerBindings: () => createZeroServerBindings
|
|
37
38
|
});
|
|
38
39
|
module.exports = __toCommonJS(server_exports);
|
|
@@ -48,10 +49,58 @@ var import_run = require("./run.cjs");
|
|
|
48
49
|
var import_state = require("./state.cjs");
|
|
49
50
|
var import_where = require("./where.cjs");
|
|
50
51
|
var import_zeroRunner = require("./zeroRunner.cjs");
|
|
52
|
+
function createSyncQueries(options) {
|
|
53
|
+
(0, import_state.setSchema)(options.schema, (0, import_zero.createBuilder)(options.schema));
|
|
54
|
+
(0, import_state.setEnvironment)("server");
|
|
55
|
+
(0, import_run.setCustomQueries)(options.queries);
|
|
56
|
+
const mapClaims = options.mapClaims ?? defaultMapClaims;
|
|
57
|
+
const permissions = (0, import_createPermissions.createPermissions)({
|
|
58
|
+
environment: "server",
|
|
59
|
+
schema: options.schema,
|
|
60
|
+
adminRoleMode: options.defaultAllowAdminRole ?? "all"
|
|
61
|
+
});
|
|
62
|
+
const entry = name => ({
|
|
63
|
+
queryName: name,
|
|
64
|
+
fn: ({
|
|
65
|
+
args,
|
|
66
|
+
ctx
|
|
67
|
+
}) => {
|
|
68
|
+
const claims = ctx ?? {
|
|
69
|
+
userID: "anon"
|
|
70
|
+
};
|
|
71
|
+
const authData = mapClaims(claims);
|
|
72
|
+
return (0, import_queryContext.runWithSyncQueryContext)({
|
|
73
|
+
authData
|
|
74
|
+
}, () => resolveServerQuery({
|
|
75
|
+
authData,
|
|
76
|
+
name,
|
|
77
|
+
args,
|
|
78
|
+
queries: options.queries,
|
|
79
|
+
permissions,
|
|
80
|
+
validateQuery: options.validateQuery
|
|
81
|
+
}));
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
return new Proxy({
|
|
85
|
+
"~": "QueryRegistry"
|
|
86
|
+
}, {
|
|
87
|
+
get(target, namespace) {
|
|
88
|
+
if (typeof namespace !== "string" || namespace === "~") {
|
|
89
|
+
return target[namespace];
|
|
90
|
+
}
|
|
91
|
+
return new Proxy({}, {
|
|
92
|
+
get(_inner, name) {
|
|
93
|
+
return typeof name === "string" ? entry(`${namespace}.${name}`) : void 0;
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
}
|
|
51
99
|
function createZeroServerBindings(options) {
|
|
52
100
|
(0, import_state.setSchema)(options.schema, (0, import_zero.createBuilder)(options.schema));
|
|
53
101
|
(0, import_state.setEnvironment)("server");
|
|
54
|
-
|
|
102
|
+
const customQueries = options.queries ?? {};
|
|
103
|
+
(0, import_run.setCustomQueries)(customQueries);
|
|
55
104
|
const mapClaims = options.mapClaims ?? defaultMapClaims;
|
|
56
105
|
const permissions = (0, import_createPermissions.createPermissions)({
|
|
57
106
|
environment: "server",
|
|
@@ -113,23 +162,28 @@ function createZeroServerBindings(options) {
|
|
|
113
162
|
};
|
|
114
163
|
}
|
|
115
164
|
}
|
|
165
|
+
const hostQueries = createSyncQueries({
|
|
166
|
+
schema: options.schema,
|
|
167
|
+
queries: customQueries,
|
|
168
|
+
validateQuery: options.validateQuery,
|
|
169
|
+
defaultAllowAdminRole: options.defaultAllowAdminRole,
|
|
170
|
+
mapClaims: options.mapClaims
|
|
171
|
+
});
|
|
116
172
|
const bindings = {
|
|
117
173
|
// freezing the registry makes the server seam immutable without importing
|
|
118
174
|
// any particular executor implementation.
|
|
119
175
|
mutators: Object.freeze({
|
|
120
176
|
...registry
|
|
121
177
|
}),
|
|
178
|
+
queries: hostQueries,
|
|
122
179
|
async resolveQuery(name, args, authData) {
|
|
123
|
-
if (!options.queries) {
|
|
124
|
-
throw new Error("No queries registered with createZeroServerBindings.");
|
|
125
|
-
}
|
|
126
180
|
const query = await (0, import_queryContext.runWithQueryContext)({
|
|
127
181
|
authData
|
|
128
182
|
}, () => resolveServerQuery({
|
|
129
183
|
authData,
|
|
130
184
|
name,
|
|
131
185
|
args: args[0],
|
|
132
|
-
queries:
|
|
186
|
+
queries: customQueries,
|
|
133
187
|
permissions,
|
|
134
188
|
validateQuery: options.validateQuery
|
|
135
189
|
}));
|
|
@@ -139,14 +193,11 @@ function createZeroServerBindings(options) {
|
|
|
139
193
|
authData,
|
|
140
194
|
request
|
|
141
195
|
}) {
|
|
142
|
-
if (!options.queries) {
|
|
143
|
-
throw new Error("No queries registered with createZeroServerBindings.");
|
|
144
|
-
}
|
|
145
196
|
const handler = (name, args) => resolveServerQuery({
|
|
146
197
|
authData,
|
|
147
198
|
name,
|
|
148
199
|
args,
|
|
149
|
-
queries:
|
|
200
|
+
queries: customQueries,
|
|
150
201
|
permissions,
|
|
151
202
|
validateQuery: options.validateQuery
|
|
152
203
|
});
|
|
@@ -35,6 +35,7 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
|
35
35
|
}), mod);
|
|
36
36
|
var server_exports = {};
|
|
37
37
|
__export(server_exports, {
|
|
38
|
+
createSyncQueries: () => createSyncQueries,
|
|
38
39
|
createZeroServerBindings: () => createZeroServerBindings
|
|
39
40
|
});
|
|
40
41
|
module.exports = __toCommonJS(server_exports);
|
|
@@ -162,11 +163,65 @@ function _wrap_native_super(Class) {
|
|
|
162
163
|
};
|
|
163
164
|
return _wrap_native_super(Class);
|
|
164
165
|
}
|
|
166
|
+
function createSyncQueries(options) {
|
|
167
|
+
var _options_mapClaims, _options_defaultAllowAdminRole;
|
|
168
|
+
(0, import_state.setSchema)(options.schema, (0, import_zero.createBuilder)(options.schema));
|
|
169
|
+
(0, import_state.setEnvironment)("server");
|
|
170
|
+
(0, import_run.setCustomQueries)(options.queries);
|
|
171
|
+
var mapClaims = (_options_mapClaims = options.mapClaims) !== null && _options_mapClaims !== void 0 ? _options_mapClaims : defaultMapClaims;
|
|
172
|
+
var permissions = (0, import_createPermissions.createPermissions)({
|
|
173
|
+
environment: "server",
|
|
174
|
+
schema: options.schema,
|
|
175
|
+
adminRoleMode: (_options_defaultAllowAdminRole = options.defaultAllowAdminRole) !== null && _options_defaultAllowAdminRole !== void 0 ? _options_defaultAllowAdminRole : "all"
|
|
176
|
+
});
|
|
177
|
+
var entry = function entry2(name) {
|
|
178
|
+
return {
|
|
179
|
+
queryName: name,
|
|
180
|
+
fn: function fn(param) {
|
|
181
|
+
var {
|
|
182
|
+
args,
|
|
183
|
+
ctx
|
|
184
|
+
} = param;
|
|
185
|
+
var claims = ctx !== null && ctx !== void 0 ? ctx : {
|
|
186
|
+
userID: "anon"
|
|
187
|
+
};
|
|
188
|
+
var authData = mapClaims(claims);
|
|
189
|
+
return (0, import_queryContext.runWithSyncQueryContext)({
|
|
190
|
+
authData
|
|
191
|
+
}, function () {
|
|
192
|
+
return resolveServerQuery({
|
|
193
|
+
authData,
|
|
194
|
+
name,
|
|
195
|
+
args,
|
|
196
|
+
queries: options.queries,
|
|
197
|
+
permissions,
|
|
198
|
+
validateQuery: options.validateQuery
|
|
199
|
+
});
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
};
|
|
203
|
+
};
|
|
204
|
+
return new Proxy({
|
|
205
|
+
"~": "QueryRegistry"
|
|
206
|
+
}, {
|
|
207
|
+
get(target, namespace) {
|
|
208
|
+
if (typeof namespace !== "string" || namespace === "~") {
|
|
209
|
+
return target[namespace];
|
|
210
|
+
}
|
|
211
|
+
return new Proxy({}, {
|
|
212
|
+
get(_inner, name) {
|
|
213
|
+
return typeof name === "string" ? entry(`${namespace}.${name}`) : void 0;
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
});
|
|
218
|
+
}
|
|
165
219
|
function createZeroServerBindings(options) {
|
|
166
|
-
var _options_mapClaims, _options_defaultAllowAdminRole, _options_actions_dispatchRemote;
|
|
220
|
+
var _options_queries, _options_mapClaims, _options_defaultAllowAdminRole, _options_actions_dispatchRemote;
|
|
167
221
|
(0, import_state.setSchema)(options.schema, (0, import_zero.createBuilder)(options.schema));
|
|
168
222
|
(0, import_state.setEnvironment)("server");
|
|
169
|
-
|
|
223
|
+
var customQueries = (_options_queries = options.queries) !== null && _options_queries !== void 0 ? _options_queries : {};
|
|
224
|
+
(0, import_run.setCustomQueries)(customQueries);
|
|
170
225
|
var mapClaims = (_options_mapClaims = options.mapClaims) !== null && _options_mapClaims !== void 0 ? _options_mapClaims : defaultMapClaims;
|
|
171
226
|
var permissions = (0, import_createPermissions.createPermissions)({
|
|
172
227
|
environment: "server",
|
|
@@ -281,16 +336,21 @@ function createZeroServerBindings(options) {
|
|
|
281
336
|
}
|
|
282
337
|
}
|
|
283
338
|
}
|
|
339
|
+
var hostQueries = createSyncQueries({
|
|
340
|
+
schema: options.schema,
|
|
341
|
+
queries: customQueries,
|
|
342
|
+
validateQuery: options.validateQuery,
|
|
343
|
+
defaultAllowAdminRole: options.defaultAllowAdminRole,
|
|
344
|
+
mapClaims: options.mapClaims
|
|
345
|
+
});
|
|
284
346
|
var bindings = {
|
|
285
347
|
// freezing the registry makes the server seam immutable without importing
|
|
286
348
|
// any particular executor implementation.
|
|
287
349
|
mutators: Object.freeze({
|
|
288
350
|
...registry
|
|
289
351
|
}),
|
|
352
|
+
queries: hostQueries,
|
|
290
353
|
async resolveQuery(name, args, authData) {
|
|
291
|
-
if (!options.queries) {
|
|
292
|
-
throw new Error("No queries registered with createZeroServerBindings.");
|
|
293
|
-
}
|
|
294
354
|
var query = await (0, import_queryContext.runWithQueryContext)({
|
|
295
355
|
authData
|
|
296
356
|
}, function () {
|
|
@@ -298,7 +358,7 @@ function createZeroServerBindings(options) {
|
|
|
298
358
|
authData,
|
|
299
359
|
name,
|
|
300
360
|
args: args[0],
|
|
301
|
-
queries:
|
|
361
|
+
queries: customQueries,
|
|
302
362
|
permissions,
|
|
303
363
|
validateQuery: options.validateQuery
|
|
304
364
|
});
|
|
@@ -310,15 +370,12 @@ function createZeroServerBindings(options) {
|
|
|
310
370
|
authData,
|
|
311
371
|
request
|
|
312
372
|
} = param;
|
|
313
|
-
if (!options.queries) {
|
|
314
|
-
throw new Error("No queries registered with createZeroServerBindings.");
|
|
315
|
-
}
|
|
316
373
|
var handler = function handler2(name, args) {
|
|
317
374
|
return resolveServerQuery({
|
|
318
375
|
authData,
|
|
319
376
|
name,
|
|
320
377
|
args,
|
|
321
|
-
queries:
|
|
378
|
+
queries: customQueries,
|
|
322
379
|
permissions,
|
|
323
380
|
validateQuery: options.validateQuery
|
|
324
381
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","server_exports","__export","createZeroServerBindings","module","exports","import_zero","require","import_bindings","import_createPermissions","import_asyncContext","import_createMutators","import_mutatorContext","import_queryContext","import_modelRegistry","import_run","import_state","import_where","import_zeroRunner","_assert_this_initialized","self","ReferenceError","_call_super","_this","derived","args","_get_prototype_of","_possible_constructor_return","_is_native_reflect_construct","Reflect","construct","constructor","apply","_class_call_check","instance","Constructor","TypeError","_construct","Parent","Class","Parent2","args2","Class2","a","push","Function","bind","_set_prototype_of","prototype","arguments","_define_property","obj","key","Object","defineProperty","enumerable","configurable","writable","o","setPrototypeOf","getPrototypeOf","o2","__proto__","_inherits","subClass","superClass","create","_instanceof","left","right","Symbol","hasInstance","_is_native_function","fn","toString","call","indexOf","result","Boolean","valueOf","_","_type_of","p","p2","_wrap_native_super","_cache","Map","has","get","set","Wrapper","options","_options_mapClaims","_options_defaultAllowAdminRole","_options_actions_dispatchRemote","setSchema","schema","createBuilder","setEnvironment","queries","setCustomQueries","mapClaims","defaultMapClaims","permissions","createPermissions","environment","adminRoleMode","defaultAllowAdminRole","registry","invocation","createAsyncContext","executeAction","actions","dispatchRemote","execute","enqueueTask","enqueueTask2","task","taskOptions","current","Error","ctx","defer","runWithAuthScope","authData","decoratedMutators","createMutators","can","createServerActions","models","mutationValidators","mutations","validateMutation","input","error","mutationApplicationError","resolveAuthData","_ref","_invocation_get","enqueueAction","action","actionOptions","Promise","resolve","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","modelName","model","_step","_model_mutate","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop2","mutatorName","_step1","param","tx","_decoratedMutators_modelName","claims","mutation","run","name","_iterator2","keys","mutate","iterator","next","done","err","return"],"sources":["../../src/server.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","server_exports","__export","createSyncQueries","createZeroServerBindings","module","exports","import_zero","require","import_bindings","import_createPermissions","import_asyncContext","import_createMutators","import_mutatorContext","import_queryContext","import_modelRegistry","import_run","import_state","import_where","import_zeroRunner","_assert_this_initialized","self","ReferenceError","_call_super","_this","derived","args","_get_prototype_of","_possible_constructor_return","_is_native_reflect_construct","Reflect","construct","constructor","apply","_class_call_check","instance","Constructor","TypeError","_construct","Parent","Class","Parent2","args2","Class2","a","push","Function","bind","_set_prototype_of","prototype","arguments","_define_property","obj","key","Object","defineProperty","enumerable","configurable","writable","o","setPrototypeOf","getPrototypeOf","o2","__proto__","_inherits","subClass","superClass","create","_instanceof","left","right","Symbol","hasInstance","_is_native_function","fn","toString","call","indexOf","result","Boolean","valueOf","_","_type_of","p","p2","_wrap_native_super","_cache","Map","has","get","set","Wrapper","options","_options_mapClaims","_options_defaultAllowAdminRole","setSchema","schema","createBuilder","setEnvironment","setCustomQueries","queries","mapClaims","defaultMapClaims","permissions","createPermissions","environment","adminRoleMode","defaultAllowAdminRole","entry","entry2","name","queryName","param","ctx","claims","userID","authData","runWithSyncQueryContext","resolveServerQuery","validateQuery","Proxy","target","namespace","_inner","_options_queries","_options_actions_dispatchRemote","customQueries","registry","invocation","createAsyncContext","executeAction","actions","dispatchRemote","execute","enqueueTask","enqueueTask2","task","taskOptions","current","Error","defer","runWithAuthScope","decoratedMutators","createMutators","can","createServerActions","models","mutationValidators","mutations","validateMutation","input","error","mutationApplicationError","resolveAuthData","_ref","_invocation_get","enqueueAction","action","actionOptions","Promise","resolve","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","modelName","model","_step","_model_mutate","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop2","mutatorName","_step1","tx","_decoratedMutators_modelName","mutation","run"],"sources":["../../src/server.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,13 +1,24 @@
|
|
|
1
1
|
import { createAsyncContext } from "./asyncContext.mjs";
|
|
2
2
|
const asyncContext = createAsyncContext();
|
|
3
|
+
let syncScope = null;
|
|
4
|
+
function runWithSyncQueryContext(context, fn) {
|
|
5
|
+
const previous = syncScope;
|
|
6
|
+
syncScope = context;
|
|
7
|
+
try {
|
|
8
|
+
return fn();
|
|
9
|
+
} finally {
|
|
10
|
+
syncScope = previous;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
3
13
|
function queryAuthData() {
|
|
14
|
+
if (syncScope) return syncScope.authData;
|
|
4
15
|
return asyncContext.get()?.authData ?? null;
|
|
5
16
|
}
|
|
6
17
|
function isInQueryContext() {
|
|
7
|
-
return !!asyncContext.get();
|
|
18
|
+
return !!syncScope || !!asyncContext.get();
|
|
8
19
|
}
|
|
9
20
|
function runWithQueryContext(context, fn) {
|
|
10
21
|
return asyncContext.run(context, fn);
|
|
11
22
|
}
|
|
12
|
-
export { isInQueryContext, queryAuthData, runWithQueryContext };
|
|
23
|
+
export { isInQueryContext, queryAuthData, runWithQueryContext, runWithSyncQueryContext };
|
|
13
24
|
//# sourceMappingURL=queryContext.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAsyncContext","asyncContext","
|
|
1
|
+
{"version":3,"names":["createAsyncContext","asyncContext","syncScope","runWithSyncQueryContext","context","fn","previous","queryAuthData","authData","get","isInQueryContext","runWithQueryContext","run"],"sources":["../../../src/helpers/queryContext.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,kBAAA,QAA0B;AAInC,MAAMC,YAAA,GAAeD,kBAAA,CAAkD;AAMvE,IAAIE,SAAA,GAAkD;AAE/C,SAASC,wBACdC,OAAA,EACAC,EAAA,EACG;EACH,MAAMC,QAAA,GAAWJ,SAAA;EACjBA,SAAA,GAAYE,OAAA;EACZ,IAAI;IACF,OAAOC,EAAA,CAAG;EACZ,UAAE;IACAH,SAAA,GAAYI,QAAA;EACd;AACF;AAEO,SAASC,cAAA,EAAiC;EAC/C,IAAIL,SAAA,EAAW,OAAOA,SAAA,CAAUM,QAAA;EAChC,OAAOP,YAAA,CAAaQ,GAAA,CAAI,GAAGD,QAAA,IAAY;AACzC;AAEO,SAASE,iBAAA,EAAmB;EACjC,OAAO,CAAC,CAACR,SAAA,IAAa,CAAC,CAACD,YAAA,CAAaQ,GAAA,CAAI;AAC3C;AAEO,SAASE,oBACdP,OAAA,EACAC,EAAA,EACY;EACZ,OAAOJ,YAAA,CAAaW,GAAA,CAAIR,OAAA,EAASC,EAAE;AACrC","ignoreList":[]}
|
|
@@ -1,15 +1,26 @@
|
|
|
1
1
|
import { createAsyncContext } from "./asyncContext.native.js";
|
|
2
2
|
var asyncContext = createAsyncContext();
|
|
3
|
+
var syncScope = null;
|
|
4
|
+
function runWithSyncQueryContext(context, fn) {
|
|
5
|
+
var previous = syncScope;
|
|
6
|
+
syncScope = context;
|
|
7
|
+
try {
|
|
8
|
+
return fn();
|
|
9
|
+
} finally {
|
|
10
|
+
syncScope = previous;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
3
13
|
function queryAuthData() {
|
|
4
14
|
var _ref;
|
|
5
15
|
var _asyncContext_get;
|
|
16
|
+
if (syncScope) return syncScope.authData;
|
|
6
17
|
return (_ref = (_asyncContext_get = asyncContext.get()) === null || _asyncContext_get === void 0 ? void 0 : _asyncContext_get.authData) !== null && _ref !== void 0 ? _ref : null;
|
|
7
18
|
}
|
|
8
19
|
function isInQueryContext() {
|
|
9
|
-
return !!asyncContext.get();
|
|
20
|
+
return !!syncScope || !!asyncContext.get();
|
|
10
21
|
}
|
|
11
22
|
function runWithQueryContext(context, fn) {
|
|
12
23
|
return asyncContext.run(context, fn);
|
|
13
24
|
}
|
|
14
|
-
export { isInQueryContext, queryAuthData, runWithQueryContext };
|
|
25
|
+
export { isInQueryContext, queryAuthData, runWithQueryContext, runWithSyncQueryContext };
|
|
15
26
|
//# sourceMappingURL=queryContext.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAsyncContext","asyncContext","
|
|
1
|
+
{"version":3,"names":["createAsyncContext","asyncContext","syncScope","runWithSyncQueryContext","context","fn","previous","queryAuthData","_ref","_asyncContext_get","authData","get","isInQueryContext","runWithQueryContext"],"sources":["../../../src/helpers/queryContext.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,kBAAA,QAA0B;AAInC,IAAAC,YAAM,GAAAD,kBAAe;AAMrB,IAAIE,SAAA,GAAkD;AAE/C,SAASC,wBACdC,OAAA,EACAC,EAAA,EACG;EACH,IAAAC,QAAM,GAAAJ,SAAW;EACjBA,SAAA,GAAYE,OAAA;EACZ,IAAI;IACF,OAAOC,EAAA,CAAG;EACZ,UAAE;IACAH,SAAA,GAAYI,QAAA;EACd;AACF;AAEO,SAASC,cAAA,EAAiC;EAC/C,IAAIC,IAAA;EACJ,IAAAC,iBAAoB;EACtB,IAAAP,SAAA,SAAAA,SAAA,CAAAQ,QAAA;EAEO,OAAS,CAAAF,IAAA,IAAAC,iBAAmB,GAAAR,YAAA,CAAAU,GAAA,gBAAAF,iBAAA,uBAAAA,iBAAA,CAAAC,QAAA,cAAAF,IAAA,cAAAA,IAAA;AACjC;AACF,SAAAI,iBAAA;EAEO,OAAS,EAAAV,SAAA,MAAAD,YAEd,CAAAU,GACY;AACZ;AACF,SAAAE,oBAAAT,OAAA,EAAAC,EAAA","ignoreList":[]}
|
package/dist/esm/server.mjs
CHANGED
|
@@ -4,16 +4,64 @@ import { createPermissions } from "./createPermissions.mjs";
|
|
|
4
4
|
import { createAsyncContext } from "./helpers/asyncContext.mjs";
|
|
5
5
|
import { createMutators } from "./helpers/createMutators.mjs";
|
|
6
6
|
import { getScopedAuthData, runWithAuthScope } from "./helpers/mutatorContext.mjs";
|
|
7
|
-
import { runWithQueryContext } from "./helpers/queryContext.mjs";
|
|
7
|
+
import { runWithQueryContext, runWithSyncQueryContext } from "./helpers/queryContext.mjs";
|
|
8
8
|
import { getMutationsPermissions } from "./modelRegistry.mjs";
|
|
9
9
|
import { setCustomQueries } from "./run.mjs";
|
|
10
10
|
import { getZQL, setEnvironment, setSchema } from "./state.mjs";
|
|
11
11
|
import { setEvaluatingPermission } from "./where.mjs";
|
|
12
12
|
import { setRunner } from "./zeroRunner.mjs";
|
|
13
|
+
function createSyncQueries(options) {
|
|
14
|
+
setSchema(options.schema, createBuilder(options.schema));
|
|
15
|
+
setEnvironment("server");
|
|
16
|
+
setCustomQueries(options.queries);
|
|
17
|
+
const mapClaims = options.mapClaims ?? defaultMapClaims;
|
|
18
|
+
const permissions = createPermissions({
|
|
19
|
+
environment: "server",
|
|
20
|
+
schema: options.schema,
|
|
21
|
+
adminRoleMode: options.defaultAllowAdminRole ?? "all"
|
|
22
|
+
});
|
|
23
|
+
const entry = name => ({
|
|
24
|
+
queryName: name,
|
|
25
|
+
fn: ({
|
|
26
|
+
args,
|
|
27
|
+
ctx
|
|
28
|
+
}) => {
|
|
29
|
+
const claims = ctx ?? {
|
|
30
|
+
userID: "anon"
|
|
31
|
+
};
|
|
32
|
+
const authData = mapClaims(claims);
|
|
33
|
+
return runWithSyncQueryContext({
|
|
34
|
+
authData
|
|
35
|
+
}, () => resolveServerQuery({
|
|
36
|
+
authData,
|
|
37
|
+
name,
|
|
38
|
+
args,
|
|
39
|
+
queries: options.queries,
|
|
40
|
+
permissions,
|
|
41
|
+
validateQuery: options.validateQuery
|
|
42
|
+
}));
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
return new Proxy({
|
|
46
|
+
"~": "QueryRegistry"
|
|
47
|
+
}, {
|
|
48
|
+
get(target, namespace) {
|
|
49
|
+
if (typeof namespace !== "string" || namespace === "~") {
|
|
50
|
+
return target[namespace];
|
|
51
|
+
}
|
|
52
|
+
return new Proxy({}, {
|
|
53
|
+
get(_inner, name) {
|
|
54
|
+
return typeof name === "string" ? entry(`${namespace}.${name}`) : void 0;
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
}
|
|
13
60
|
function createZeroServerBindings(options) {
|
|
14
61
|
setSchema(options.schema, createBuilder(options.schema));
|
|
15
62
|
setEnvironment("server");
|
|
16
|
-
|
|
63
|
+
const customQueries = options.queries ?? {};
|
|
64
|
+
setCustomQueries(customQueries);
|
|
17
65
|
const mapClaims = options.mapClaims ?? defaultMapClaims;
|
|
18
66
|
const permissions = createPermissions({
|
|
19
67
|
environment: "server",
|
|
@@ -75,23 +123,28 @@ function createZeroServerBindings(options) {
|
|
|
75
123
|
};
|
|
76
124
|
}
|
|
77
125
|
}
|
|
126
|
+
const hostQueries = createSyncQueries({
|
|
127
|
+
schema: options.schema,
|
|
128
|
+
queries: customQueries,
|
|
129
|
+
validateQuery: options.validateQuery,
|
|
130
|
+
defaultAllowAdminRole: options.defaultAllowAdminRole,
|
|
131
|
+
mapClaims: options.mapClaims
|
|
132
|
+
});
|
|
78
133
|
const bindings = {
|
|
79
134
|
// freezing the registry makes the server seam immutable without importing
|
|
80
135
|
// any particular executor implementation.
|
|
81
136
|
mutators: Object.freeze({
|
|
82
137
|
...registry
|
|
83
138
|
}),
|
|
139
|
+
queries: hostQueries,
|
|
84
140
|
async resolveQuery(name, args, authData) {
|
|
85
|
-
if (!options.queries) {
|
|
86
|
-
throw new Error("No queries registered with createZeroServerBindings.");
|
|
87
|
-
}
|
|
88
141
|
const query = await runWithQueryContext({
|
|
89
142
|
authData
|
|
90
143
|
}, () => resolveServerQuery({
|
|
91
144
|
authData,
|
|
92
145
|
name,
|
|
93
146
|
args: args[0],
|
|
94
|
-
queries:
|
|
147
|
+
queries: customQueries,
|
|
95
148
|
permissions,
|
|
96
149
|
validateQuery: options.validateQuery
|
|
97
150
|
}));
|
|
@@ -101,14 +154,11 @@ function createZeroServerBindings(options) {
|
|
|
101
154
|
authData,
|
|
102
155
|
request
|
|
103
156
|
}) {
|
|
104
|
-
if (!options.queries) {
|
|
105
|
-
throw new Error("No queries registered with createZeroServerBindings.");
|
|
106
|
-
}
|
|
107
157
|
const handler = (name, args) => resolveServerQuery({
|
|
108
158
|
authData,
|
|
109
159
|
name,
|
|
110
160
|
args,
|
|
111
|
-
queries:
|
|
161
|
+
queries: customQueries,
|
|
112
162
|
permissions,
|
|
113
163
|
validateQuery: options.validateQuery
|
|
114
164
|
});
|
|
@@ -219,5 +269,5 @@ function mutationApplicationError(error) {
|
|
|
219
269
|
const message = error instanceof Error ? error.message : String(error);
|
|
220
270
|
return new MutationApplicationError(message, message);
|
|
221
271
|
}
|
|
222
|
-
export { createZeroServerBindings };
|
|
272
|
+
export { createSyncQueries, createZeroServerBindings };
|
|
223
273
|
//# sourceMappingURL=server.mjs.map
|
package/dist/esm/server.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createBuilder","mustGetQuery","asQueryInternals","createPermissions","createAsyncContext","createMutators","getScopedAuthData","runWithAuthScope","runWithQueryContext","getMutationsPermissions","setCustomQueries","getZQL","setEnvironment","setSchema","setEvaluatingPermission","setRunner","
|
|
1
|
+
{"version":3,"names":["createBuilder","mustGetQuery","asQueryInternals","createPermissions","createAsyncContext","createMutators","getScopedAuthData","runWithAuthScope","runWithQueryContext","runWithSyncQueryContext","getMutationsPermissions","setCustomQueries","getZQL","setEnvironment","setSchema","setEvaluatingPermission","setRunner","createSyncQueries","options","schema","queries","mapClaims","defaultMapClaims","permissions","environment","adminRoleMode","defaultAllowAdminRole","entry","name","queryName","fn","args","ctx","claims","userID","authData","resolveServerQuery","validateQuery","Proxy","get","target","namespace","_inner","createZeroServerBindings","customQueries","registry","invocation","executeAction","actions","dispatchRemote","execute","enqueueTask","task","taskOptions","current","Error","defer","decoratedMutators","can","createServerActions","models","mutationValidators","mutations","validateMutation","input","error","mutationApplicationError","resolveAuthData","enqueueAction","action","actionOptions","Promise","resolve","modelName","model","Object","entries","mutatorName","keys","mutate","tx","mutation","run","hostQueries","bindings","mutators","freeze","resolveQuery","query","ast","transformQueryRequest","request","handler","id","handleQueryRequest","server","executor","transaction","work","authToClaims","_target","acceptsArgument","length","argsOrOptions","optionsForArgument","mutateOptions","scoped","startsWith","table","slice","objOrId","permission","where","eb","buildPermissionQuery","one","params","AUTH_CLAIM","authDataToClaims","anonymousUserID","MutationApplicationError","details","constructor","message","String"],"sources":["../../src/server.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ import { createPermissions } from "./createPermissions.native.js";
|
|
|
4
4
|
import { createAsyncContext } from "./helpers/asyncContext.native.js";
|
|
5
5
|
import { createMutators } from "./helpers/createMutators.native.js";
|
|
6
6
|
import { getScopedAuthData, runWithAuthScope } from "./helpers/mutatorContext.native.js";
|
|
7
|
-
import { runWithQueryContext } from "./helpers/queryContext.native.js";
|
|
7
|
+
import { runWithQueryContext, runWithSyncQueryContext } from "./helpers/queryContext.native.js";
|
|
8
8
|
import { getMutationsPermissions } from "./modelRegistry.native.js";
|
|
9
9
|
import { setCustomQueries } from "./run.native.js";
|
|
10
10
|
import { getZQL, setEnvironment, setSchema } from "./state.native.js";
|
|
@@ -122,11 +122,65 @@ function _wrap_native_super(Class) {
|
|
|
122
122
|
};
|
|
123
123
|
return _wrap_native_super(Class);
|
|
124
124
|
}
|
|
125
|
+
function createSyncQueries(options) {
|
|
126
|
+
var _options_mapClaims, _options_defaultAllowAdminRole;
|
|
127
|
+
setSchema(options.schema, createBuilder(options.schema));
|
|
128
|
+
setEnvironment("server");
|
|
129
|
+
setCustomQueries(options.queries);
|
|
130
|
+
var mapClaims = (_options_mapClaims = options.mapClaims) !== null && _options_mapClaims !== void 0 ? _options_mapClaims : defaultMapClaims;
|
|
131
|
+
var permissions = createPermissions({
|
|
132
|
+
environment: "server",
|
|
133
|
+
schema: options.schema,
|
|
134
|
+
adminRoleMode: (_options_defaultAllowAdminRole = options.defaultAllowAdminRole) !== null && _options_defaultAllowAdminRole !== void 0 ? _options_defaultAllowAdminRole : "all"
|
|
135
|
+
});
|
|
136
|
+
var entry = function entry2(name) {
|
|
137
|
+
return {
|
|
138
|
+
queryName: name,
|
|
139
|
+
fn: function fn(param) {
|
|
140
|
+
var {
|
|
141
|
+
args,
|
|
142
|
+
ctx
|
|
143
|
+
} = param;
|
|
144
|
+
var claims = ctx !== null && ctx !== void 0 ? ctx : {
|
|
145
|
+
userID: "anon"
|
|
146
|
+
};
|
|
147
|
+
var authData = mapClaims(claims);
|
|
148
|
+
return runWithSyncQueryContext({
|
|
149
|
+
authData
|
|
150
|
+
}, function () {
|
|
151
|
+
return resolveServerQuery({
|
|
152
|
+
authData,
|
|
153
|
+
name,
|
|
154
|
+
args,
|
|
155
|
+
queries: options.queries,
|
|
156
|
+
permissions,
|
|
157
|
+
validateQuery: options.validateQuery
|
|
158
|
+
});
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
};
|
|
163
|
+
return new Proxy({
|
|
164
|
+
"~": "QueryRegistry"
|
|
165
|
+
}, {
|
|
166
|
+
get(target, namespace) {
|
|
167
|
+
if (typeof namespace !== "string" || namespace === "~") {
|
|
168
|
+
return target[namespace];
|
|
169
|
+
}
|
|
170
|
+
return new Proxy({}, {
|
|
171
|
+
get(_inner, name) {
|
|
172
|
+
return typeof name === "string" ? entry(`${namespace}.${name}`) : void 0;
|
|
173
|
+
}
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
}
|
|
125
178
|
function createZeroServerBindings(options) {
|
|
126
|
-
var _options_mapClaims, _options_defaultAllowAdminRole, _options_actions_dispatchRemote;
|
|
179
|
+
var _options_queries, _options_mapClaims, _options_defaultAllowAdminRole, _options_actions_dispatchRemote;
|
|
127
180
|
setSchema(options.schema, createBuilder(options.schema));
|
|
128
181
|
setEnvironment("server");
|
|
129
|
-
|
|
182
|
+
var customQueries = (_options_queries = options.queries) !== null && _options_queries !== void 0 ? _options_queries : {};
|
|
183
|
+
setCustomQueries(customQueries);
|
|
130
184
|
var mapClaims = (_options_mapClaims = options.mapClaims) !== null && _options_mapClaims !== void 0 ? _options_mapClaims : defaultMapClaims;
|
|
131
185
|
var permissions = createPermissions({
|
|
132
186
|
environment: "server",
|
|
@@ -241,16 +295,21 @@ function createZeroServerBindings(options) {
|
|
|
241
295
|
}
|
|
242
296
|
}
|
|
243
297
|
}
|
|
298
|
+
var hostQueries = createSyncQueries({
|
|
299
|
+
schema: options.schema,
|
|
300
|
+
queries: customQueries,
|
|
301
|
+
validateQuery: options.validateQuery,
|
|
302
|
+
defaultAllowAdminRole: options.defaultAllowAdminRole,
|
|
303
|
+
mapClaims: options.mapClaims
|
|
304
|
+
});
|
|
244
305
|
var bindings = {
|
|
245
306
|
// freezing the registry makes the server seam immutable without importing
|
|
246
307
|
// any particular executor implementation.
|
|
247
308
|
mutators: Object.freeze({
|
|
248
309
|
...registry
|
|
249
310
|
}),
|
|
311
|
+
queries: hostQueries,
|
|
250
312
|
async resolveQuery(name, args, authData) {
|
|
251
|
-
if (!options.queries) {
|
|
252
|
-
throw new Error("No queries registered with createZeroServerBindings.");
|
|
253
|
-
}
|
|
254
313
|
var query = await runWithQueryContext({
|
|
255
314
|
authData
|
|
256
315
|
}, function () {
|
|
@@ -258,7 +317,7 @@ function createZeroServerBindings(options) {
|
|
|
258
317
|
authData,
|
|
259
318
|
name,
|
|
260
319
|
args: args[0],
|
|
261
|
-
queries:
|
|
320
|
+
queries: customQueries,
|
|
262
321
|
permissions,
|
|
263
322
|
validateQuery: options.validateQuery
|
|
264
323
|
});
|
|
@@ -270,15 +329,12 @@ function createZeroServerBindings(options) {
|
|
|
270
329
|
authData,
|
|
271
330
|
request
|
|
272
331
|
} = param;
|
|
273
|
-
if (!options.queries) {
|
|
274
|
-
throw new Error("No queries registered with createZeroServerBindings.");
|
|
275
|
-
}
|
|
276
332
|
var handler = function handler2(name, args) {
|
|
277
333
|
return resolveServerQuery({
|
|
278
334
|
authData,
|
|
279
335
|
name,
|
|
280
336
|
args,
|
|
281
|
-
queries:
|
|
337
|
+
queries: customQueries,
|
|
282
338
|
permissions,
|
|
283
339
|
validateQuery: options.validateQuery
|
|
284
340
|
});
|
|
@@ -416,5 +472,5 @@ function mutationApplicationError(error) {
|
|
|
416
472
|
var message = _instanceof(error, Error) ? error.message : String(error);
|
|
417
473
|
return new MutationApplicationError(message, message);
|
|
418
474
|
}
|
|
419
|
-
export { createZeroServerBindings };
|
|
475
|
+
export { createSyncQueries, createZeroServerBindings };
|
|
420
476
|
//# sourceMappingURL=server.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createBuilder","mustGetQuery","asQueryInternals","createPermissions","createAsyncContext","createMutators","getScopedAuthData","runWithAuthScope","runWithQueryContext","getMutationsPermissions","setCustomQueries","getZQL","setEnvironment","setSchema","setEvaluatingPermission","setRunner","_assert_this_initialized","self","ReferenceError","_call_super","_this","derived","args","_get_prototype_of","_possible_constructor_return","_is_native_reflect_construct","Reflect","construct","constructor","apply","_class_call_check","instance","Constructor","TypeError","_construct","Parent","Class","Parent2","args2","Class2","a","push","Function","bind","_set_prototype_of","prototype","arguments","_define_property","obj","key","value","Object","defineProperty","enumerable","configurable","writable","o","setPrototypeOf","getPrototypeOf","o2","__proto__","_inherits","subClass","superClass","create","_instanceof","left","right","Symbol","hasInstance","_is_native_function","fn","toString","call","indexOf","result","Boolean","valueOf","_","_type_of","p","p2","_wrap_native_super","_cache","Map","has","get","set","Wrapper","createZeroServerBindings","options","_options_mapClaims","_options_defaultAllowAdminRole","_options_actions_dispatchRemote","schema","queries","mapClaims","defaultMapClaims","permissions","environment","adminRoleMode","defaultAllowAdminRole","registry","invocation","executeAction","actions","dispatchRemote","execute","enqueueTask","enqueueTask2","task","taskOptions","current","Error","ctx","defer","authData","decoratedMutators","can","createServerActions","models","mutationValidators","mutations","validateMutation","input","error","mutationApplicationError","resolveAuthData","_ref","_invocation_get","enqueueAction","action","actionOptions","Promise","resolve","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","modelName","model","_step","_model_mutate","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop2","mutatorName","_step1","param","tx","_decoratedMutators_modelName","claims","mutation","run","name","_iterator2","keys","mutate","iterator","next","done","err","return"],"sources":["../../src/server.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createBuilder","mustGetQuery","asQueryInternals","createPermissions","createAsyncContext","createMutators","getScopedAuthData","runWithAuthScope","runWithQueryContext","runWithSyncQueryContext","getMutationsPermissions","setCustomQueries","getZQL","setEnvironment","setSchema","setEvaluatingPermission","setRunner","_assert_this_initialized","self","ReferenceError","_call_super","_this","derived","args","_get_prototype_of","_possible_constructor_return","_is_native_reflect_construct","Reflect","construct","constructor","apply","_class_call_check","instance","Constructor","TypeError","_construct","Parent","Class","Parent2","args2","Class2","a","push","Function","bind","_set_prototype_of","prototype","arguments","_define_property","obj","key","value","Object","defineProperty","enumerable","configurable","writable","o","setPrototypeOf","getPrototypeOf","o2","__proto__","_inherits","subClass","superClass","create","_instanceof","left","right","Symbol","hasInstance","_is_native_function","fn","toString","call","indexOf","result","Boolean","valueOf","_","_type_of","p","p2","_wrap_native_super","_cache","Map","has","get","set","Wrapper","createSyncQueries","options","_options_mapClaims","_options_defaultAllowAdminRole","schema","queries","mapClaims","defaultMapClaims","permissions","environment","adminRoleMode","defaultAllowAdminRole","entry","entry2","name","queryName","param","ctx","claims","userID","authData","resolveServerQuery","validateQuery","Proxy","target","namespace","_inner","createZeroServerBindings","_options_queries","_options_actions_dispatchRemote","customQueries","registry","invocation","executeAction","actions","dispatchRemote","execute","enqueueTask","enqueueTask2","task","taskOptions","current","Error","defer","decoratedMutators","can","createServerActions","models","mutationValidators","mutations","validateMutation","input","error","mutationApplicationError","resolveAuthData","_ref","_invocation_get","enqueueAction","action","actionOptions","Promise","resolve","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","modelName","model","_step","_model_mutate","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop2","mutatorName","_step1","tx","_decoratedMutators_modelName","mutation","run","_iterator2","keys","mutate","iterator","next","done"],"sources":["../../src/server.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,aAAA,EAAeC,YAAA,QAAoB;AAC5C,SAASC,gBAAA,QAAwB;AAEjC,SAASC,iBAAA,QAAyB;AAClC,SAASC,kBAAA,QAA0B;AACnC,SAASC,cAAA,QAAsB;AAC/B,SAASC,iBAAA,EAAmBC,gBAAA,QAAwB;AACpD,SAASC,mBAAA,EAAqBC,uBAAA,QAA+B;AAC7D,SAASC,uBAAA,QAA+B;AACxC,SAASC,gBAAA,QAAwB;AACjC,SAASC,MAAA,EAAQC,cAAA,EAAgBC,SAAA,QAAiB;AAClD,SAASC,uBAAA,QAA+B;AACxC,SAASC,SAAA,QAAiB;AAgNnB,SAASC,wBACdA,CAAAC,IACkB;EAClB,IAAAA,IAAA,KAAU,KAAQ,SAAQ,IAAAC,cAAc,4DAAe;EACvD,OAAAD,IAAA;AACA;AACA,SAAME,WAAYA,CAAAC,KAAA,EAAQC,OAAA,EAAAC,IAAa;EACvCD,OAAM,GAAAE,iBAAc,CAAAF,OAAA;EAAkB,OACpCG,4BAAa,CAAAJ,KAAA,EAAAK,4BAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,OAAA,EAAAC,IAAA,QAAAC,iBAAA,CAAAH,KAAA,EAAAQ,WAAA,IAAAP,OAAA,CAAAQ,KAAA,CAAAT,KAAA,EAAAE,IAAA;AAAA;AACG,SAChBQ,iBAAeA,CAAQC,QAAA,EAAAC,WAAA;EACzB,IAAC,EAAAD,QAAA,YAAAC,WAAA,aAAAC,SAAA;AAMD;AAAiC,SAC/BC,UAAWA,CAAAC,MAAA,EAAAb,IAAA,EAAAc,KAAA;EAAA,IACXX,4BAAwD,IAAAS,UAAA,GAAAR,OAAA,CAAAC,SAAA,MACtD;IACAO,UAAM,YAAWP,SAAUA,CAAAU,OAAM,EAAAC,KAAA,EAAAC,MAAA;MACjC,IAAAC,CAAA,GAAO,CAAwB,IAAE,CAAS;MACrBA,CAAA,CAAAC,IACjB,CAAAZ,KAAA,CAAAW,CAAA,EAAAF,KAAA;MAAA,IACAN,WAAA,GAAAU,QAAA,CAAAC,IAAA,CAAAd,KAAA,CAAAQ,OAAA,EAAAG,CAAA;MAAA,IACAT,QAAA,OAAAC,WAAA;MAAA,IACAO,MAAA,EAAAK,iBAAiB,CAAAb,QAAA,EAAAQ,MAAA,CAAAM,SAAA;MAAA,OACjBd,QAAA;IAAA;EACuB;EACxB,OACHG,UAAA,CAAAL,KAAA,OAAAiB,SAAA;AAAA;AACF,SACFC,iBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA;EACA,IAAAD,GAAO,IAAID,GAAA;IACTG,MAAI,CAAAC,cAAQ,CAAAJ,GAAW,EAAAC,GAAA;MACrBC,KAAI;MACFG,UAAO,MAAO;MAChBC,YAAA;MACAC,QAAO;IAAyC;EAE5C,OAAAP,GAAA,CAAAC,GAAA,CAAO,GAAAC,KAAO;EAAoD,OACpEF,GAAA;AAAA;AACD,SACHzB,kBAAAiC,CAAA;EACFjC,iBAAC,GAAA4B,MAAA,CAAAM,cAAA,GAAAN,MAAA,CAAAO,cAAA,YAAAA,eAAAC,EAAA;IACH,OAAAA,EAAA,CAAAC,SAAA,IAAAT,MAAA,CAAAO,cAAA,CAAAC,EAAA;EAEO;EAQL,OAAApC,iBAAkB,CAAAiC,CAAQ;AAC1B;AAGA,SAAMK,UAAAC,QAAgB,EAAAC,UAAQ;EAC9B,WAAAA,UAAiB,eAAa,IAAAA,UAAA;IAE9B,MAAM,IAAA9B,SAAY,qDAAqB;EACvC;EAAsC6B,QACpC,CAAAjB,SAAa,GAAAM,MAAA,CAAAa,MAAA,CAAAD,UAAA,IAAAA,UAAA,CAAAlB,SAAA;IACbjB,WAAQ;MACRsB,KAAA,EAAAY,QAAe;MAChBP,QAAA;MACDD,YAAM,EAAuE;IAC7E;EAIA;EAGA,IAAAS,UAAM,EAAAnB,iBAEJ,CAAAkB,QAAA,EACGC,UAAA;AACH;AACA,SAAKE,WAASA,CAAAC,IAAM,EAAAC,KAAI,EAAM;EAC9B,2BAAwB;;EAC1B,IAAAA,KAAA,mBAAAC,MAAA,oBAAAD,KAAA,CAAAC,MAAA,CAAAC,WAAA;IACA,OAAM,EAAAF,KAAA,CAAAC,MAAA,CAAAC,WAAoB,EAAAH,IAAe;EAAA,OACvC,OAAUA,IAAA,YAAAC,KAAA;AAAA;AACO,SACjBG,mBAAqBA,CAAAC,EAAA,EAAQ;EAAA,OAC7B7B,QAAa,CAAA8B,QAAA,CAAAC,IAAA,CAAAF,EAAA,EAAAG,OAAA;AAAA;AACG,SAChBjD,4BAA4BA,CAAA;EAAA,IAC5B;IAEM,IAAAkD,MAAI,IAAAC,OAAA,CAAA/B,SAAA,CAAAgC,OAAA,CAAAJ,IAAA,CAAA/C,OAAA,CAAAC,SAAA,CAAAiD,OAAA,mBACF;EAAqC,SACvCE,CAAA,GACE;EAAoC,OACtC,CAAArD,4BAAA,YAAAA,CAAA;IACF,OACA,EAAAkD,MAAA;EAAA,GACJ;AAAqD;AACrD,SACAnD,4BAAsBA,CAAAP,IAAe,EAAAwD,IAAA;EACnC,IAAAA,IAAI,KAACM,QAAA,CAAAN,IAAe,yBAAAA,IAAA,yBAAAA,IAAA;EAClB,OAAAzD,wBAAgB,CAAAC,IAAA;AAA0C;AAE5D,SAAA2B,iBAAkBA,CAAAY,CAAA,EAAAwB,CAAA,EAAQ;EAAuDpC,iBACnF,GAAAO,MAAA,CAAAM,cAAA,aAAAA,eAAAE,EAAA,EAAAsB,EAAA;IACDtB,EAAA,CAAAC,SAAA,GAAAqB,EAAA;IAED,OAAAtB,EAAW;EACT;EACE,OAAAf,iBAAY,CAASY,CAAA,EAAAwB,CAAI;AACvB;AACA,SAAAD,QAAMA,CAAA/B,GAAA;EACN,uBAAK;;EACH,OAAAA,GAAA,IAAM,OAAIoB,MAAM,oBAAApB,GAAA,CAAApB,WAAqC,KAAIwC,MAAA,GAAW,QAAE,UAAApB,GAAA;AACxE;AACE,SAAAkC,kBAAiBA,CAAA9C,KAAA;EAAA,IAAA+C,MAAI,GAAE,OAAAC,GAAU,KAAI,gCAAAA,GAAA;EAAAF,kBACnC,YAAAA,CAAuC3C,MAAI;IAAA,IAAAA,MAC7C,cAAA+B,mBAAA,CAAA/B,MAAA,UAAAA,MAAA;IAAA,IACF,OAAAA,MAAS,KAAO,sBAAAN,SAAA;IACd,WAAAkD,MAAM,KAAQ,WAA8B;MAC5C,IAAAA,MAAI,CAAAE,GAAA,CAAA9C,MAAS,UAAA4C,MAAA,CAAAG,GAAA,CAAA/C,MAA4B;MACzC4C,MAAA,CAAAI,GAAI,CAAAhD,MAAS,EAAAiD,OAAA;IACb;IAAoC,SACtCA,QAAA;MACF,OAAAtD,UAAA,CAAAK,MAAA,EAAAO,SAAA,EAAAvB,iBAAA,OAAAK,WAAA;IACF;IACF4D,OAAA,CAAA3C,SAAA,GAAAM,MAAA,CAAAa,MAAA,CAAAzB,MAAA,CAAAM,SAAA;MAEAjB,WAAM;QACJsB,KAAQ,EAAAsC,OAAQ;QAChBnC,UAAS;QACTE,QAAA,MAAe;QACfD,YAAA;MACA;IACD;IAED,OAAMV,iBAA+C,CAAA4C,OAAA,EAAAjD,MAAA;EAAA;EAAA,OAAA2C,kBAAA,CAAA9C,KAAA;AAAA;AAGZ,SACvCqD,iBAASA,CAAAC,OAAA;EAAA,IACTC,kBAAmB,EAAAC,8BAAsB;EACvC/E,SAAA,CAAM6E,OAAA,CAAQG,MAAM,EAAA9F,aAAA,CAAA2F,OAAA,CAAAG,MAAA;EAAAjF,cAAsB,SAAS;EAAAF,gBACjD,CAAAgF,OAAA,CAAAI,OAAmB;EAAA,IAAAC,SACjB,IAAAJ,kBAAA,GAAAD,OAAA,CAAAK,SAAA,cAAAJ,kBAAA,cAAAA,kBAAA,GAAAK,gBAAA;EAAA,IAAAC,WACA,GAAA/F,iBAAA;IAAAgG,WACA,EAAM,QAAM;IAAAL,MACZ,EAAAH,OAAS,CAAAG,MAAA;IAAAM,aACT,GAAAP,8BAAA,GAAAF,OAAA,CAAAU,qBAAA,cAAAR,8BAAA,cAAAA,8BAAA;EAAA;EACuB,IAAAS,KACxB,YAAAC,OAAAC,IAAA;IAAA,OACH;MACAC,SAAO,EAAAD,IAAA;MACThC,EAAA,WAAAA,GAAAkC,KAAA;QACA,IAAM;UAAAnF,IAAA;UAAAoF;QAAA,IAAAD,KAAsB;QAC1B,IAAME,MAAA,GAAAD,GAAW,KAAc,QAAAA,GAC7B,cAAAA,GAAmB;UACjBE,MAAA;QACA;QACA,IAAAC,QAAA,GAAAd,SAAA,CAAAY,MAAA;QACA,OAAAnG,uBAAS;UACTqG;QACA;UACD,OAAAC,kBAAA;YACGD,QAAA;YACAN,IAAE;YACRjF,IAAO;YAAsBwE,OAAA,EAAUJ,OAAA,CAAAI,OAA6B;YAAGG,WACrE;YAGMc,aAAA,EAAArB,OAAA,CAAAqB;UACA;QAAgB,EAChB;MAAA;IACA;EACD;EACP,OACF,IAAAC,KAAA;IACA;EACE;IAIW1B,IAAY2B,MAAA,EAAAC,SAAa;MAAQ,IAAI,OAC5CA,SAAiC,iBAAAA,SAAA;QACnC,OAAAD,MAAA,CAAAC,SAAA;MAEF;MAEA,OAAM,IAAAF,KAAS,GAAI;QACjB1B,IAAI6B,MAAA,EAAAZ,IAAS;UACX,OAAO,OAAIA,IAAA,gBAAAF,KAAA,IAAAa,SAAA,IAAAX,IAAA;QAAA;MACR;IACD;EAEI;AACA;AAEA,SAAAa,wBACEA,CAAA1B,OACA;EAEA,IAAA2B,gBAAA,EAAM1B,kBAAO,EAAAC,8BAAiD,EAAA0B,+BAAA;EAC9DzG,SAAA,CAAA6E,OAAA,CAAAG,MAAM,EAAA9F,aAAgB,CAAA2F,OAAA,CAAAG,MAAA,EAClB;EAEJjF,cAAA,SAAM;EACN,IAAA2G,aAAA,IAAAF,gBAAe,GAAA3B,OAAa,CAAAI,OAAM,cAAAuB,gBAAA,cAAAA,gBAAA;EAClC3G,gBAAA,CAAA6G,aAAO;EAA4D,IAAAxB,SAAA,GACrE,CAAAJ,kBAAA,GAAAD,OAAA,CAAAK,SAAA,cAAAJ,kBAAA,cAAAA,kBAAA,GAAAK,gBAAA;EAAA,IAAAC,WACF,GAAA/F,iBAAA;IAAAgG,WACF;IAAAL,MACF,EAAAH,OAAA,CAAAG,MAAA;IAAAM,aACF,GAAAP,8BAAA,GAAAF,OAAA,CAAAU,qBAAA,cAAAR,8BAAA,cAAAA,8BAAA;EAAA;EAGF,IAAA4B,QAAO;EAAA,IAAAC,UACL,GAAAtH,kBAAA;EAAA,IAAAuH,aACA,GAAAhC,OAAA,CAAAiC,OAAA,IAAAL,+BAAA,GAAA5B,OAAA,CAAAiC,OAAA,CAAAC,cAAA,cAAAN,+BAAA,cAAAA,+BAAA,GAAA5B,OAAA,CAAAiC,OAAA,CAAAE,OAAA;EAAA,IAAAC,WAEE,YACAC,YACAA,CAAAC,IAAA,EAAAC,WAAA;IACA,IAAAC,OAAA,GAAOT,UAAA,CAAAnC,GAAA;IAAA,KAAA4C,OAAsB,QAAS,IAAAC,KAAA;IAAAD,OAAA,CAAGxB,GAAA,CAAA0B,KACvC,aAAS;MAAA,OAAA9H,gBAAmB,CAAA4H,OAAQ,CAAArB,QAAA,EAAAmB,IAAA;IAAA,GAAAC,WAAI;EACR;EAChC,IAAAI,iBACF,GAAAjI,cAAA;IAAAyG,QACF;IAAAyB,GACF,EAAArC,WAAA,CAAAqC,GAAA;IACFC,mBAAA,EAAA7C,OAAA,CAAA6C,mBAAA;IACFrC,WAAA;IAEAsC,MAAO,EAAA9C,OAAA,CAAA8C,MAAA;IACTC,kBAAA,EAAA/C,OAAA,CAAAgD,SAAA;IAEAC,gBAAS,EAAAjD,OAAmB,CAAAiD,gBAAA,mBAAAC,KAAA;MAC1B;QACA,MAAAlD,OAAA,CAAAiD,gBAAA,CAAAC,KAAA;MACA,SAAAC,KAAA;QACA,MAAAC,wBAAA,CAAAD,KAAA;MACA;IACA;IAQCE,eAAA,WAAAA,gBAAA;MACG,IAAAC,IAAK;MACP,IAAMC,eAAa;MACnB,OAAQ,CAAAD,IAAA,GAAQ,CAAAC,eAAI,GAAAxB,UAAA,CAAAnC,GAAA,gBAAA2D,eAAA,uBAAAA,eAAA,CAAApC,QAAA,cAAAmC,IAAA,cAAAA,IAAA;IACpB;IACAlB,WAAK;IACHoB,aAAUA,CAAAC,MAAM,EAAAC,aAAA;MAClB,KAAA1B,aAAA;QACI,UAAAS,KAAA;MACF;MACGL,WACC,aAAY;QAEb,OAAIuB,OAAA,CAAAC,OAAA,CAAA5B,aAAA,CAAAyB,MAAA;MACT,GAAAC,aAAE;IACA;EAA6B,EAC/B;EACF,IAAAG,yBAAA;IAAAC,iBAAA;IAAAC,cAAA;EAEA;IACA,IAAAC,KAAQ,YAAAA,CAAA,EAAqB;MAC/B,KAAAC,SAAA,EAAAC,KAAA,IAAAC,KAAA,CAAA3G,KAAA;MAMM,IAAA4G,aAAa;MAEnB,IAASC,0BAEP;QAAAC,kBACkB;QAAAC,eAAA;MAClB,IAAM;QACA,IAAAC,MAAoC,GAAE,SAAAA,CAAA,EAAO;UAC/C,IAAAC,WAAiB,GAAAC,MAAU,CAAAlH,KAAI;UAC5BsE,QAAA,IAAAmC,SAAA,IAAAQ,WAAA,sBAAA1D,KAAA;YACT;cAAA4D,EAAA;cAAA/I,IAAA;cAAAoF;YAAA,IAAAD,KAAA;YAES,IAAA6D,4BAA4D;YAC7D,IAAAzD,QAAY,GAA8Cd,SAAU,CAAAW,GAAA,CAAAC,MAAA;YACrE,IAAA4D,QAAY,GAAO,CAAAD,4BAA8B,GAAAjC,iBAAA,CAAAsB,SAAA,eAAAW,4BAAA,uBAAAA,4BAAA,CAAAH,WAAA;YAC/C,KAAAI,QAAA,YAAApC,KAAA,6BAAAwB,SAAA,IAAAQ,WAAA;YACT;cAES,MAAA1C,UAAa,CAAA+C,GAAyD;gBACtE3D,QAAA;gBACTH;cAIM;gBACK,OAAA6D,QAAA,CAAAF,EAAA,EAAA/I,IAAA;cAEG;YACJ,SAAAuH,KAAY;cACb,IAAOtC,IAAA,GAAAsC,KAAA,aAAAA,KAAA,uBAAAA,KAAA,CAAAtC,IAAA;cACP,IAAAA,IAAU,uCAAAsC,KAAA;cACjB,IAAAtC,IAAA,0BAAAA,IAAA,wBAAAsC,KAAA;cACF,MAAAC,wBAAA,CAAAD,KAAA;YAES;UACD;QACN,CAAO;QACT,SAAA4B,UAAA,GAAAtH,MAAA,CAAAuH,IAAA,EAAAZ,aAAA,GAAAF,KAAA,CAAAe,MAAA,cAAAb,aAAA,cAAAA,aAAA,OAAA1F,MAAA,CAAAwG,QAAA,KAAAR,MAAA,IAAAL,0BAAA,IAAAK,MAAA,GAAAK,UAAA,CAAAI,IAAA,IAAAC,IAAA,GAAAf,0BAAA,SAAAG,MAAA","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "on-zero",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"description": "A typed layer over @rocicorp/zero with queries, mutations, and permissions",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"files": [
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
"chokidar": "^4.0.3",
|
|
106
106
|
"citty": "^0.1.6",
|
|
107
107
|
"dequal": "^2.0.3",
|
|
108
|
-
"orez-lite": "0.
|
|
108
|
+
"orez-lite": "0.12.0",
|
|
109
109
|
"valibot": "^1.1.0"
|
|
110
110
|
},
|
|
111
111
|
"peerDependencies": {
|
|
@@ -4,12 +4,32 @@ import type { AuthData } from '../types'
|
|
|
4
4
|
|
|
5
5
|
const asyncContext = createAsyncContext<{ authData: AuthData | null }>()
|
|
6
6
|
|
|
7
|
+
// synchronous scope for host-driven query resolution: a sync host resolves a
|
|
8
|
+
// whole desired-query patch inside one synchronous call so patch application
|
|
9
|
+
// order is arrival order, which AsyncLocalStorage cannot serve (its run() is
|
|
10
|
+
// async). query builders are synchronous, so a plain stack scope is exact.
|
|
11
|
+
let syncScope: { authData: AuthData | null } | null = null
|
|
12
|
+
|
|
13
|
+
export function runWithSyncQueryContext<T>(
|
|
14
|
+
context: { authData: AuthData | null },
|
|
15
|
+
fn: () => T
|
|
16
|
+
): T {
|
|
17
|
+
const previous = syncScope
|
|
18
|
+
syncScope = context
|
|
19
|
+
try {
|
|
20
|
+
return fn()
|
|
21
|
+
} finally {
|
|
22
|
+
syncScope = previous
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
7
26
|
export function queryAuthData(): AuthData | null {
|
|
27
|
+
if (syncScope) return syncScope.authData
|
|
8
28
|
return asyncContext.get()?.authData ?? null
|
|
9
29
|
}
|
|
10
30
|
|
|
11
31
|
export function isInQueryContext() {
|
|
12
|
-
return !!asyncContext.get()
|
|
32
|
+
return !!syncScope || !!asyncContext.get()
|
|
13
33
|
}
|
|
14
34
|
|
|
15
35
|
export function runWithQueryContext<T>(
|
package/src/server.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { createPermissions } from './createPermissions'
|
|
|
5
5
|
import { createAsyncContext } from './helpers/asyncContext'
|
|
6
6
|
import { createMutators } from './helpers/createMutators'
|
|
7
7
|
import { getScopedAuthData, runWithAuthScope } from './helpers/mutatorContext'
|
|
8
|
-
import { runWithQueryContext } from './helpers/queryContext'
|
|
8
|
+
import { runWithQueryContext, runWithSyncQueryContext } from './helpers/queryContext'
|
|
9
9
|
import { getMutationsPermissions } from './modelRegistry'
|
|
10
10
|
import { setCustomQueries } from './run'
|
|
11
11
|
import { getZQL, setEnvironment, setSchema } from './state'
|
|
@@ -173,6 +173,13 @@ export type ZeroServerBindings<
|
|
|
173
173
|
Models extends GenericModels,
|
|
174
174
|
> = {
|
|
175
175
|
mutators: ZeroServerMutatorRegistry<Schema>
|
|
176
|
+
/**
|
|
177
|
+
* The app's queries in the standard Zero registry shape a sync host
|
|
178
|
+
* resolves in-process: entries map the host's claims to authData, run the
|
|
179
|
+
* on-zero query context, serve `permission.<table>` queries, and apply
|
|
180
|
+
* `validateQuery`. Pass this straight to the host config's `queries`.
|
|
181
|
+
*/
|
|
182
|
+
queries: AnyQueryRegistry
|
|
176
183
|
resolveQuery(
|
|
177
184
|
name: string,
|
|
178
185
|
args: readonly JsonValue[],
|
|
@@ -195,6 +202,70 @@ export type ZeroServerBindings<
|
|
|
195
202
|
}
|
|
196
203
|
}
|
|
197
204
|
|
|
205
|
+
export type CreateSyncQueriesOptions<Schema extends ZeroSchema> = {
|
|
206
|
+
schema: Schema
|
|
207
|
+
queries: AnyQueryRegistry
|
|
208
|
+
validateQuery?: ValidateQueryFn
|
|
209
|
+
defaultAllowAdminRole?: AdminRoleMode
|
|
210
|
+
mapClaims?: (claims: NormalizedClaims) => AuthData | null
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* The app's queries in the standard Zero registry shape a sync host resolves
|
|
215
|
+
* in-process, without the rest of the server bindings. This is what a
|
|
216
|
+
* split-worker deployment bundles into its sync worker: schema + query
|
|
217
|
+
* definitions only, no models, server actions, or database. Entries map the
|
|
218
|
+
* host's claims to authData, run the on-zero query context, serve
|
|
219
|
+
* `permission.<table>` queries, and apply `validateQuery`.
|
|
220
|
+
*/
|
|
221
|
+
export function createSyncQueries<Schema extends ZeroSchema>(
|
|
222
|
+
options: CreateSyncQueriesOptions<Schema>
|
|
223
|
+
): AnyQueryRegistry {
|
|
224
|
+
setSchema(options.schema, createBuilder(options.schema))
|
|
225
|
+
setEnvironment('server')
|
|
226
|
+
setCustomQueries(options.queries)
|
|
227
|
+
const mapClaims = options.mapClaims ?? defaultMapClaims
|
|
228
|
+
const permissions = createPermissions({
|
|
229
|
+
environment: 'server',
|
|
230
|
+
schema: options.schema,
|
|
231
|
+
adminRoleMode: options.defaultAllowAdminRole ?? 'all',
|
|
232
|
+
})
|
|
233
|
+
// every `namespace.name` lookup yields a standard CustomQuery-shaped entry.
|
|
234
|
+
// a Proxy covers permission.<table> and unknown names uniformly — an
|
|
235
|
+
// unknown name throws inside fn and the host reports it as a 400 naming
|
|
236
|
+
// the query. resolution is synchronous by contract: the host applies a
|
|
237
|
+
// whole desired-query patch in one synchronous call.
|
|
238
|
+
const entry = (name: string) => ({
|
|
239
|
+
queryName: name,
|
|
240
|
+
fn: ({ args, ctx }: { args: unknown; ctx: unknown }) => {
|
|
241
|
+
const claims = (ctx ?? { userID: 'anon' }) as NormalizedClaims
|
|
242
|
+
const authData = mapClaims(claims)
|
|
243
|
+
return runWithSyncQueryContext({ authData }, () =>
|
|
244
|
+
resolveServerQuery({
|
|
245
|
+
authData,
|
|
246
|
+
name,
|
|
247
|
+
args,
|
|
248
|
+
queries: options.queries,
|
|
249
|
+
permissions,
|
|
250
|
+
validateQuery: options.validateQuery,
|
|
251
|
+
})
|
|
252
|
+
)
|
|
253
|
+
},
|
|
254
|
+
})
|
|
255
|
+
return new Proxy({ '~': 'QueryRegistry' } as Record<string, unknown>, {
|
|
256
|
+
get(target, namespace) {
|
|
257
|
+
if (typeof namespace !== 'string' || namespace === '~') {
|
|
258
|
+
return target[namespace as string]
|
|
259
|
+
}
|
|
260
|
+
return new Proxy({} as Record<string, unknown>, {
|
|
261
|
+
get(_inner, name) {
|
|
262
|
+
return typeof name === 'string' ? entry(`${namespace}.${name}`) : undefined
|
|
263
|
+
},
|
|
264
|
+
})
|
|
265
|
+
},
|
|
266
|
+
}) as AnyQueryRegistry
|
|
267
|
+
}
|
|
268
|
+
|
|
198
269
|
export function createZeroServerBindings<
|
|
199
270
|
Schema extends ZeroSchema,
|
|
200
271
|
Models extends GenericModels,
|
|
@@ -205,7 +276,10 @@ export function createZeroServerBindings<
|
|
|
205
276
|
): ZeroServerBindings<Schema, Models> {
|
|
206
277
|
setSchema(options.schema, createBuilder(options.schema))
|
|
207
278
|
setEnvironment('server')
|
|
208
|
-
|
|
279
|
+
// an app without syncedQueries still serves permission.<table> queries; an
|
|
280
|
+
// unknown name fails per-query, naming it, when a client actually asks.
|
|
281
|
+
const customQueries = options.queries ?? ({} as AnyQueryRegistry)
|
|
282
|
+
setCustomQueries(customQueries)
|
|
209
283
|
|
|
210
284
|
const mapClaims = options.mapClaims ?? defaultMapClaims
|
|
211
285
|
const permissions = createPermissions({
|
|
@@ -276,20 +350,26 @@ export function createZeroServerBindings<
|
|
|
276
350
|
}
|
|
277
351
|
}
|
|
278
352
|
|
|
353
|
+
const hostQueries: AnyQueryRegistry = createSyncQueries({
|
|
354
|
+
schema: options.schema,
|
|
355
|
+
queries: customQueries,
|
|
356
|
+
validateQuery: options.validateQuery,
|
|
357
|
+
defaultAllowAdminRole: options.defaultAllowAdminRole,
|
|
358
|
+
mapClaims: options.mapClaims,
|
|
359
|
+
})
|
|
360
|
+
|
|
279
361
|
const bindings: ZeroServerBindings<Schema, Models> = {
|
|
280
362
|
// freezing the registry makes the server seam immutable without importing
|
|
281
363
|
// any particular executor implementation.
|
|
282
364
|
mutators: Object.freeze({ ...registry }),
|
|
365
|
+
queries: hostQueries,
|
|
283
366
|
async resolveQuery(name, args, authData) {
|
|
284
|
-
if (!options.queries) {
|
|
285
|
-
throw new Error('No queries registered with createZeroServerBindings.')
|
|
286
|
-
}
|
|
287
367
|
const query = await runWithQueryContext({ authData }, () =>
|
|
288
368
|
resolveServerQuery({
|
|
289
369
|
authData,
|
|
290
370
|
name,
|
|
291
371
|
args: args[0],
|
|
292
|
-
queries:
|
|
372
|
+
queries: customQueries,
|
|
293
373
|
permissions,
|
|
294
374
|
validateQuery: options.validateQuery,
|
|
295
375
|
})
|
|
@@ -297,15 +377,12 @@ export function createZeroServerBindings<
|
|
|
297
377
|
return asQueryInternals(query as never).ast as JsonValue
|
|
298
378
|
},
|
|
299
379
|
async transformQueryRequest({ authData, request }) {
|
|
300
|
-
if (!options.queries) {
|
|
301
|
-
throw new Error('No queries registered with createZeroServerBindings.')
|
|
302
|
-
}
|
|
303
380
|
const handler = (name: string, args: unknown) =>
|
|
304
381
|
resolveServerQuery({
|
|
305
382
|
authData,
|
|
306
383
|
name,
|
|
307
384
|
args,
|
|
308
|
-
queries:
|
|
385
|
+
queries: customQueries,
|
|
309
386
|
permissions,
|
|
310
387
|
validateQuery: options.validateQuery,
|
|
311
388
|
})
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import type { AuthData } from '../types';
|
|
2
|
+
export declare function runWithSyncQueryContext<T>(context: {
|
|
3
|
+
authData: AuthData | null;
|
|
4
|
+
}, fn: () => T): T;
|
|
2
5
|
export declare function queryAuthData(): AuthData | null;
|
|
3
6
|
export declare function isInQueryContext(): boolean;
|
|
4
7
|
export declare function runWithQueryContext<T>(context: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queryContext.d.ts","sourceRoot":"","sources":["../../src/helpers/queryContext.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"queryContext.d.ts","sourceRoot":"","sources":["../../src/helpers/queryContext.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAUxC,wBAAgB,uBAAuB,CAAC,CAAC,EACvC,OAAO,EAAE;IAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAA;CAAE,EACtC,EAAE,EAAE,MAAM,CAAC,GACV,CAAC,CAQH;AAED,wBAAgB,aAAa,IAAI,QAAQ,GAAG,IAAI,CAG/C;AAED,wBAAgB,gBAAgB,YAE/B;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,OAAO,EAAE;IAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAA;CAAE,EACtC,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GACvB,OAAO,CAAC,CAAC,CAAC,CAEZ"}
|
package/types/server.d.ts
CHANGED
|
@@ -83,6 +83,13 @@ export type CreateZeroServerBindingsOptions<Schema extends ZeroSchema, Models ex
|
|
|
83
83
|
};
|
|
84
84
|
export type ZeroServerBindings<Schema extends ZeroSchema, Models extends GenericModels> = {
|
|
85
85
|
mutators: ZeroServerMutatorRegistry<Schema>;
|
|
86
|
+
/**
|
|
87
|
+
* The app's queries in the standard Zero registry shape a sync host
|
|
88
|
+
* resolves in-process: entries map the host's claims to authData, run the
|
|
89
|
+
* on-zero query context, serve `permission.<table>` queries, and apply
|
|
90
|
+
* `validateQuery`. Pass this straight to the host config's `queries`.
|
|
91
|
+
*/
|
|
92
|
+
queries: AnyQueryRegistry;
|
|
86
93
|
resolveQuery(name: string, args: readonly JsonValue[], authData: AuthData | null): Promise<JsonValue>;
|
|
87
94
|
transformQueryRequest(options: {
|
|
88
95
|
authData: AuthData | null;
|
|
@@ -94,6 +101,22 @@ export type ZeroServerBindings<Schema extends ZeroSchema, Models extends Generic
|
|
|
94
101
|
query<Result>(authData: AuthData | null, work: (q: QueryBuilder) => Query<any, Schema, Result>): Promise<HumanReadable<Result>>;
|
|
95
102
|
};
|
|
96
103
|
};
|
|
104
|
+
export type CreateSyncQueriesOptions<Schema extends ZeroSchema> = {
|
|
105
|
+
schema: Schema;
|
|
106
|
+
queries: AnyQueryRegistry;
|
|
107
|
+
validateQuery?: ValidateQueryFn;
|
|
108
|
+
defaultAllowAdminRole?: AdminRoleMode;
|
|
109
|
+
mapClaims?: (claims: NormalizedClaims) => AuthData | null;
|
|
110
|
+
};
|
|
111
|
+
/**
|
|
112
|
+
* The app's queries in the standard Zero registry shape a sync host resolves
|
|
113
|
+
* in-process, without the rest of the server bindings. This is what a
|
|
114
|
+
* split-worker deployment bundles into its sync worker: schema + query
|
|
115
|
+
* definitions only, no models, server actions, or database. Entries map the
|
|
116
|
+
* host's claims to authData, run the on-zero query context, serve
|
|
117
|
+
* `permission.<table>` queries, and apply `validateQuery`.
|
|
118
|
+
*/
|
|
119
|
+
export declare function createSyncQueries<Schema extends ZeroSchema>(options: CreateSyncQueriesOptions<Schema>): AnyQueryRegistry;
|
|
97
120
|
export declare function createZeroServerBindings<Schema extends ZeroSchema, Models extends GenericModels, ServerActions extends Record<string, unknown>, Action extends AsyncActionEnvelope = never>(options: CreateZeroServerBindingsOptions<Schema, Models, ServerActions, Action>): ZeroServerBindings<Schema, Models>;
|
|
98
121
|
export {};
|
|
99
122
|
//# sourceMappingURL=server.d.ts.map
|
package/types/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|