over-zero 0.0.0 → 0.0.2
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/createPermissions.cjs +43 -57
- package/dist/cjs/createPermissions.js +46 -48
- package/dist/cjs/createPermissions.js.map +2 -2
- package/dist/cjs/createPermissions.native.js +46 -53
- package/dist/cjs/createPermissions.native.js.map +2 -2
- package/dist/cjs/createZero.cjs +128 -0
- package/dist/cjs/createZero.js +107 -0
- package/dist/cjs/createZero.js.map +6 -0
- package/dist/cjs/createZero.native.js +115 -0
- package/dist/cjs/createZero.native.js.map +6 -0
- package/dist/cjs/createZeroClient.cjs +128 -0
- package/dist/cjs/createZeroClient.js +103 -0
- package/dist/cjs/createZeroClient.js.map +6 -0
- package/dist/cjs/createZeroClient.native.js +115 -0
- package/dist/cjs/createZeroClient.native.js.map +6 -0
- package/dist/cjs/createZeroServer.cjs +131 -0
- package/dist/cjs/createZeroServer.js +108 -0
- package/dist/cjs/createZeroServer.js.map +6 -0
- package/dist/cjs/createZeroServer.native.js +107 -0
- package/dist/cjs/createZeroServer.native.js.map +6 -0
- package/dist/cjs/helpers/context.js.map +1 -1
- package/dist/cjs/helpers/context.native.js.map +1 -1
- package/dist/cjs/helpers/createMutators.cjs +11 -11
- package/dist/cjs/helpers/createMutators.js +9 -7
- package/dist/cjs/helpers/createMutators.js.map +1 -1
- package/dist/cjs/helpers/createMutators.native.js +8 -6
- package/dist/cjs/helpers/createMutators.native.js.map +1 -1
- package/dist/cjs/helpers/ensureLoggedIn.cjs +1 -1
- package/dist/cjs/helpers/ensureLoggedIn.js +1 -1
- package/dist/cjs/helpers/ensureLoggedIn.js.map +1 -1
- package/dist/cjs/helpers/ensureLoggedIn.native.js +1 -1
- package/dist/cjs/helpers/ensureLoggedIn.native.js.map +1 -1
- package/dist/cjs/helpers/getAuthData.cjs +0 -36
- package/dist/cjs/helpers/getAuthData.js +0 -28
- package/dist/cjs/helpers/getAuthData.js.map +2 -2
- package/dist/cjs/helpers/getAuthData.native.js +0 -31
- package/dist/cjs/helpers/getAuthData.native.js.map +2 -2
- package/dist/cjs/helpers/useAuthData.cjs +0 -32
- package/dist/cjs/helpers/useAuthData.js +0 -24
- package/dist/cjs/helpers/useAuthData.js.map +2 -2
- package/dist/cjs/helpers/useAuthData.native.js +0 -31
- package/dist/cjs/helpers/useAuthData.native.js.map +2 -2
- package/dist/cjs/helpers/useZeroDebug.cjs +68 -0
- package/dist/cjs/helpers/useZeroDebug.js +49 -0
- package/dist/cjs/helpers/useZeroDebug.js.map +6 -0
- package/dist/cjs/helpers/useZeroDebug.native.js +66 -0
- package/dist/cjs/helpers/useZeroDebug.native.js.map +6 -0
- package/dist/cjs/helpers/zeroEmitter.cjs +2 -2
- package/dist/cjs/helpers/zeroEmitter.js +2 -2
- package/dist/cjs/helpers/zeroEmitter.native.js +1 -1
- package/dist/cjs/helpers/zeroEmitter.native.js.map +1 -1
- package/dist/cjs/index.cjs +3 -1
- package/dist/cjs/index.js +3 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/index.native.js +6 -2
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/mutations.cjs +50 -0
- package/dist/cjs/mutations.js +43 -0
- package/dist/cjs/mutations.js.map +6 -0
- package/dist/cjs/mutations.native.js +50 -0
- package/dist/cjs/mutations.native.js.map +6 -0
- package/dist/cjs/server.cjs +18 -0
- package/dist/cjs/server.js +15 -0
- package/dist/cjs/server.js.map +6 -0
- package/dist/cjs/server.native.js +20 -0
- package/dist/cjs/server.native.js.map +6 -0
- package/dist/cjs/where.cjs +33 -0
- package/dist/cjs/where.js +28 -0
- package/dist/cjs/where.js.map +6 -0
- package/dist/cjs/where.native.js +34 -0
- package/dist/cjs/where.native.js.map +6 -0
- package/dist/esm/createPermissions.js +48 -47
- package/dist/esm/createPermissions.js.map +2 -2
- package/dist/esm/createPermissions.mjs +41 -55
- package/dist/esm/createPermissions.mjs.map +1 -1
- package/dist/esm/createPermissions.native.js +55 -69
- package/dist/esm/createPermissions.native.js.map +1 -1
- package/dist/esm/createZero.js +99 -0
- package/dist/esm/createZero.js.map +6 -0
- package/dist/esm/createZero.mjs +105 -0
- package/dist/esm/createZero.mjs.map +1 -0
- package/dist/esm/createZero.native.js +119 -0
- package/dist/esm/createZero.native.js.map +1 -0
- package/dist/esm/createZeroClient.js +95 -0
- package/dist/esm/createZeroClient.js.map +6 -0
- package/dist/esm/createZeroClient.mjs +105 -0
- package/dist/esm/createZeroClient.mjs.map +1 -0
- package/dist/esm/createZeroClient.native.js +119 -0
- package/dist/esm/createZeroClient.native.js.map +1 -0
- package/dist/esm/createZeroServer.js +90 -0
- package/dist/esm/createZeroServer.js.map +6 -0
- package/dist/esm/createZeroServer.mjs +97 -0
- package/dist/esm/createZeroServer.mjs.map +1 -0
- package/dist/esm/createZeroServer.native.js +104 -0
- package/dist/esm/createZeroServer.native.js.map +1 -0
- package/dist/esm/helpers/context.js.map +1 -1
- package/dist/esm/helpers/context.mjs.map +1 -1
- package/dist/esm/helpers/context.native.js.map +1 -1
- package/dist/esm/helpers/createMutators.js +6 -7
- package/dist/esm/helpers/createMutators.js.map +1 -1
- package/dist/esm/helpers/createMutators.mjs +7 -7
- package/dist/esm/helpers/createMutators.mjs.map +1 -1
- package/dist/esm/helpers/createMutators.native.js +9 -7
- package/dist/esm/helpers/createMutators.native.js.map +1 -1
- package/dist/esm/helpers/ensureLoggedIn.js +1 -1
- package/dist/esm/helpers/ensureLoggedIn.js.map +1 -1
- package/dist/esm/helpers/ensureLoggedIn.mjs +1 -1
- package/dist/esm/helpers/ensureLoggedIn.mjs.map +1 -1
- package/dist/esm/helpers/ensureLoggedIn.native.js +1 -1
- package/dist/esm/helpers/ensureLoggedIn.native.js.map +1 -1
- package/dist/esm/helpers/getAuthData.js +0 -12
- package/dist/esm/helpers/getAuthData.js.map +2 -2
- package/dist/esm/helpers/getAuthData.mjs +1 -12
- package/dist/esm/helpers/getAuthData.mjs.map +1 -1
- package/dist/esm/helpers/getAuthData.native.js +1 -12
- package/dist/esm/helpers/getAuthData.native.js.map +1 -1
- package/dist/esm/helpers/useAuthData.js +0 -10
- package/dist/esm/helpers/useAuthData.js.map +2 -2
- package/dist/esm/helpers/useAuthData.mjs +1 -8
- package/dist/esm/helpers/useAuthData.mjs.map +1 -1
- package/dist/esm/helpers/useAuthData.native.js +1 -12
- package/dist/esm/helpers/useAuthData.native.js.map +1 -1
- package/dist/esm/helpers/useZeroDebug.js +35 -0
- package/dist/esm/helpers/useZeroDebug.js.map +6 -0
- package/dist/esm/helpers/useZeroDebug.mjs +45 -0
- package/dist/esm/helpers/useZeroDebug.mjs.map +1 -0
- package/dist/esm/helpers/useZeroDebug.native.js +53 -0
- package/dist/esm/helpers/useZeroDebug.native.js.map +1 -0
- package/dist/esm/helpers/zeroEmitter.js +1 -1
- package/dist/esm/helpers/zeroEmitter.mjs +1 -1
- package/dist/esm/helpers/zeroEmitter.native.js +1 -1
- package/dist/esm/index.js +3 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +3 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +3 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/mutations.js +27 -0
- package/dist/esm/mutations.js.map +6 -0
- package/dist/esm/mutations.mjs +27 -0
- package/dist/esm/mutations.mjs.map +1 -0
- package/dist/esm/mutations.native.js +29 -0
- package/dist/esm/mutations.native.js.map +1 -0
- package/dist/esm/server.js +2 -0
- package/dist/esm/server.js.map +6 -0
- package/dist/esm/server.mjs +2 -0
- package/dist/esm/server.mjs.map +1 -0
- package/dist/esm/server.native.js +2 -0
- package/dist/esm/server.native.js.map +1 -0
- package/dist/esm/where.js +12 -0
- package/dist/esm/where.js.map +6 -0
- package/dist/esm/where.mjs +9 -0
- package/dist/esm/where.mjs.map +1 -0
- package/dist/esm/where.native.js +9 -0
- package/dist/esm/where.native.js.map +1 -0
- package/package.json +12 -6
- package/src/createPermissions.ts +17 -77
- package/src/createZeroClient.tsx +29 -26
- package/src/createZeroServer.ts +43 -43
- package/src/helpers/createMutators.ts +19 -29
- package/src/helpers/ensureLoggedIn.ts +2 -1
- package/src/helpers/prettyFormatZeroQuery.ts +1 -1
- package/src/helpers/useZeroDebug.ts +1 -0
- package/src/index.ts +1 -5
- package/src/mutations.ts +20 -7
- package/src/server.ts +1 -0
- package/src/types.ts +74 -7
- package/src/where.ts +28 -0
- package/src/helpers/clearZeroDatabase.ts +0 -68
- package/src/helpers/getAuthData.tsx +0 -12
- package/src/helpers/useAuthData.ts +0 -13
- package/src/helpers/zeroEmitter.ts +0 -5
- package/types/createMutations.d.ts +0 -20
- package/types/createMutations.d.ts.map +0 -1
- package/types/createPermissions.d.ts +0 -37
- package/types/createPermissions.d.ts.map +0 -1
- package/types/createZeroClient.d.ts +0 -45
- package/types/createZeroClient.d.ts.map +0 -1
- package/types/createZeroServer.d.ts +0 -61
- package/types/createZeroServer.d.ts.map +0 -1
- package/types/helpers/batchQuery.d.ts +0 -7
- package/types/helpers/batchQuery.d.ts.map +0 -1
- package/types/helpers/clearZeroDatabase.d.ts +0 -2
- package/types/helpers/clearZeroDatabase.d.ts.map +0 -1
- package/types/helpers/context.d.ts +0 -5
- package/types/helpers/context.d.ts.map +0 -1
- package/types/helpers/createMutators.d.ts +0 -16
- package/types/helpers/createMutators.d.ts.map +0 -1
- package/types/helpers/ensureLoggedIn.d.ts +0 -2
- package/types/helpers/ensureLoggedIn.d.ts.map +0 -1
- package/types/helpers/getAuthData.d.ts +0 -1
- package/types/helpers/getAuthData.d.ts.map +0 -1
- package/types/helpers/prettyFormatZeroQuery.d.ts +0 -3
- package/types/helpers/prettyFormatZeroQuery.d.ts.map +0 -1
- package/types/helpers/useAuthData.d.ts +0 -1
- package/types/helpers/useAuthData.d.ts.map +0 -1
- package/types/helpers/useZeroDebug.d.ts +0 -3
- package/types/helpers/useZeroDebug.d.ts.map +0 -1
- package/types/helpers/zeroEmitter.d.ts +0 -2
- package/types/helpers/zeroEmitter.d.ts.map +0 -1
- package/types/index.d.ts +0 -9
- package/types/index.d.ts.map +0 -1
- package/types/types.d.ts +0 -21
- package/types/types.d.ts.map +0 -1
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf,
|
|
6
|
+
__hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: !0
|
|
11
|
+
});
|
|
12
|
+
},
|
|
13
|
+
__copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
|
|
15
|
+
get: () => from[key],
|
|
16
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
|
+
});
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
26
|
+
value: mod,
|
|
27
|
+
enumerable: !0
|
|
28
|
+
}) : target, mod)),
|
|
29
|
+
__toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
30
|
+
value: !0
|
|
31
|
+
}), mod);
|
|
32
|
+
var createZeroServer_exports = {};
|
|
33
|
+
__export(createZeroServer_exports, {
|
|
34
|
+
createZeroServer: () => createZeroServer
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(createZeroServer_exports);
|
|
37
|
+
var import_pg = require("@rocicorp/zero/pg"),
|
|
38
|
+
import_server = require("@rocicorp/zero/server"),
|
|
39
|
+
import_helpers = require("@vxrn/helpers"),
|
|
40
|
+
import_postgres = __toESM(require("postgres"), 1),
|
|
41
|
+
import_createPermissions = require("./createPermissions.cjs"),
|
|
42
|
+
import_context = require("./helpers/context.cjs"),
|
|
43
|
+
import_createMutators = require("./helpers/createMutators.cjs");
|
|
44
|
+
function createZeroServer({
|
|
45
|
+
createServerActions,
|
|
46
|
+
schema,
|
|
47
|
+
models
|
|
48
|
+
}) {
|
|
49
|
+
const dbString = (0, import_helpers.assertString)(process.env.ZERO_UPSTREAM_DB),
|
|
50
|
+
zeroServerDatabase = new import_server.ZQLDatabase(new import_pg.PostgresJSConnection((0, import_postgres.default)(dbString)), schema),
|
|
51
|
+
permissions = (0, import_createPermissions.createPermissions)({
|
|
52
|
+
environment: "server",
|
|
53
|
+
schema,
|
|
54
|
+
models,
|
|
55
|
+
getContext: import_context.context
|
|
56
|
+
}),
|
|
57
|
+
processor = new import_pg.PushProcessor(zeroServerDatabase),
|
|
58
|
+
handleMutationRequest = async ({
|
|
59
|
+
authData,
|
|
60
|
+
request,
|
|
61
|
+
skipAsyncTasks
|
|
62
|
+
}) => {
|
|
63
|
+
const asyncTasks = [],
|
|
64
|
+
mutators = (0, import_createMutators.createMutators)({
|
|
65
|
+
asyncTasks,
|
|
66
|
+
can: permissions.can,
|
|
67
|
+
createServerActions,
|
|
68
|
+
environment: "server",
|
|
69
|
+
models,
|
|
70
|
+
authData
|
|
71
|
+
}),
|
|
72
|
+
response = await processor.process(mutators, request);
|
|
73
|
+
if (!skipAsyncTasks && asyncTasks.length) {
|
|
74
|
+
const id = (0, import_helpers.randomId)();
|
|
75
|
+
console.info(`[push] complete, running async tasks ${asyncTasks.length} id ${id}`), Promise.all(asyncTasks.map(task => task())).then(() => {
|
|
76
|
+
console.info(`[push] async tasks complete ${id}`);
|
|
77
|
+
}).catch(err => {
|
|
78
|
+
console.error("[push] error: async tasks failed \u{1F61E}", err);
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
return {
|
|
82
|
+
response,
|
|
83
|
+
asyncTasks
|
|
84
|
+
};
|
|
85
|
+
},
|
|
86
|
+
serverMutate = async (run, authData) => {
|
|
87
|
+
const asyncTasks = [],
|
|
88
|
+
mutators = (0, import_createMutators.createMutators)({
|
|
89
|
+
models,
|
|
90
|
+
environment: "server",
|
|
91
|
+
asyncTasks,
|
|
92
|
+
authData: {
|
|
93
|
+
id: "",
|
|
94
|
+
email: "admin@start.chat",
|
|
95
|
+
role: "admin",
|
|
96
|
+
...authData
|
|
97
|
+
},
|
|
98
|
+
createServerActions,
|
|
99
|
+
can: permissions.can
|
|
100
|
+
});
|
|
101
|
+
await serverTransaction(async tx => {
|
|
102
|
+
await run(tx, mutators);
|
|
103
|
+
}), await Promise.all(asyncTasks.map(t => t()));
|
|
104
|
+
},
|
|
105
|
+
serverQuery = serverTransaction,
|
|
106
|
+
dummyTransactionInput = {
|
|
107
|
+
clientGroupID: "unused",
|
|
108
|
+
clientID: "unused",
|
|
109
|
+
mutationID: 42,
|
|
110
|
+
upstreamSchema: "unused"
|
|
111
|
+
};
|
|
112
|
+
async function serverTransaction(query) {
|
|
113
|
+
try {
|
|
114
|
+
if ((0, import_context.isInZeroMutation)()) {
|
|
115
|
+
const {
|
|
116
|
+
tx
|
|
117
|
+
} = (0, import_context.context)();
|
|
118
|
+
return await query(tx);
|
|
119
|
+
}
|
|
120
|
+
return await zeroServerDatabase.transaction(query, dummyTransactionInput);
|
|
121
|
+
} catch (err) {
|
|
122
|
+
throw console.error(`Error running serverTransaction(): ${err}`), err;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
return {
|
|
126
|
+
handleMutationRequest,
|
|
127
|
+
transaction: serverTransaction,
|
|
128
|
+
mutate: serverMutate,
|
|
129
|
+
query: serverQuery
|
|
130
|
+
};
|
|
131
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
9
|
+
}, __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from == "object" || typeof from == "function")
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
13
|
+
return to;
|
|
14
|
+
};
|
|
15
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
16
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
17
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
18
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
19
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
20
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
|
21
|
+
mod
|
|
22
|
+
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
23
|
+
var createZeroServer_exports = {};
|
|
24
|
+
__export(createZeroServer_exports, {
|
|
25
|
+
createZeroServer: () => createZeroServer
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(createZeroServer_exports);
|
|
28
|
+
var import_pg = require("@rocicorp/zero/pg"), import_server = require("@rocicorp/zero/server"), import_helpers = require("@vxrn/helpers"), import_postgres = __toESM(require("postgres"), 1), import_createPermissions = require("./createPermissions"), import_context = require("./helpers/context"), import_createMutators = require("./helpers/createMutators");
|
|
29
|
+
function createZeroServer({
|
|
30
|
+
createServerActions,
|
|
31
|
+
schema,
|
|
32
|
+
models
|
|
33
|
+
}) {
|
|
34
|
+
const dbString = (0, import_helpers.assertString)(process.env.ZERO_UPSTREAM_DB), zeroServerDatabase = new import_server.ZQLDatabase(
|
|
35
|
+
new import_pg.PostgresJSConnection((0, import_postgres.default)(dbString)),
|
|
36
|
+
schema
|
|
37
|
+
), permissions = (0, import_createPermissions.createPermissions)({
|
|
38
|
+
environment: "server",
|
|
39
|
+
schema,
|
|
40
|
+
models,
|
|
41
|
+
getContext: import_context.context
|
|
42
|
+
}), processor = new import_pg.PushProcessor(zeroServerDatabase), handleMutationRequest = async ({
|
|
43
|
+
authData,
|
|
44
|
+
request,
|
|
45
|
+
skipAsyncTasks
|
|
46
|
+
}) => {
|
|
47
|
+
const asyncTasks = [], mutators = (0, import_createMutators.createMutators)({
|
|
48
|
+
asyncTasks,
|
|
49
|
+
can: permissions.can,
|
|
50
|
+
createServerActions,
|
|
51
|
+
environment: "server",
|
|
52
|
+
models,
|
|
53
|
+
authData
|
|
54
|
+
}), response = await processor.process(mutators, request);
|
|
55
|
+
if (!skipAsyncTasks && asyncTasks.length) {
|
|
56
|
+
const id = (0, import_helpers.randomId)();
|
|
57
|
+
console.info(`[push] complete, running async tasks ${asyncTasks.length} id ${id}`), Promise.all(asyncTasks.map((task) => task())).then(() => {
|
|
58
|
+
console.info(`[push] async tasks complete ${id}`);
|
|
59
|
+
}).catch((err) => {
|
|
60
|
+
console.error("[push] error: async tasks failed \u{1F61E}", err);
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
return {
|
|
64
|
+
response,
|
|
65
|
+
asyncTasks
|
|
66
|
+
};
|
|
67
|
+
}, serverMutate = async (run, authData) => {
|
|
68
|
+
const asyncTasks = [], mutators = (0, import_createMutators.createMutators)({
|
|
69
|
+
models,
|
|
70
|
+
environment: "server",
|
|
71
|
+
asyncTasks,
|
|
72
|
+
authData: {
|
|
73
|
+
id: "",
|
|
74
|
+
email: "admin@start.chat",
|
|
75
|
+
role: "admin",
|
|
76
|
+
...authData
|
|
77
|
+
},
|
|
78
|
+
createServerActions,
|
|
79
|
+
can: permissions.can
|
|
80
|
+
});
|
|
81
|
+
await serverTransaction(async (tx) => {
|
|
82
|
+
await run(tx, mutators);
|
|
83
|
+
}), await Promise.all(asyncTasks.map((t) => t()));
|
|
84
|
+
}, serverQuery = serverTransaction, dummyTransactionInput = {
|
|
85
|
+
clientGroupID: "unused",
|
|
86
|
+
clientID: "unused",
|
|
87
|
+
mutationID: 42,
|
|
88
|
+
upstreamSchema: "unused"
|
|
89
|
+
};
|
|
90
|
+
async function serverTransaction(query) {
|
|
91
|
+
try {
|
|
92
|
+
if ((0, import_context.isInZeroMutation)()) {
|
|
93
|
+
const { tx } = (0, import_context.context)();
|
|
94
|
+
return await query(tx);
|
|
95
|
+
}
|
|
96
|
+
return await zeroServerDatabase.transaction(query, dummyTransactionInput);
|
|
97
|
+
} catch (err) {
|
|
98
|
+
throw console.error(`Error running serverTransaction(): ${err}`), err;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return {
|
|
102
|
+
handleMutationRequest,
|
|
103
|
+
transaction: serverTransaction,
|
|
104
|
+
mutate: serverMutate,
|
|
105
|
+
query: serverQuery
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=createZeroServer.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/createZeroServer.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,gBAAoD,8BACpD,gBAA4B,kCAC5B,iBAAuC,0BACvC,kBAAqB,iCACrB,2BAAkC,gCAClC,iBAA0C,8BAC1C,wBAA+B;AASxB,SAAS,iBAId;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,QAAM,eAAW,6BAAa,QAAQ,IAAI,gBAAgB,GAEpD,qBAAqB,IAAI;AAAA,IAC7B,IAAI,mCAAqB,gBAAAA,SAAS,QAAQ,CAAC;AAAA,IAC3C;AAAA,EACF,GAEM,kBAAc,4CAA0B;AAAA,IAC5C,aAAa;AAAA,IACb;AAAA,IACA;AAAA,IACA,YAAY;AAAA,EACd,CAAC,GAEK,YAAY,IAAI,wBAAc,kBAAkB,GAEhD,wBAAwB,OAAO;AAAA,IACnC;AAAA,IACA;AAAA,IACA;AAAA,EACF,MAIM;AAEJ,UAAM,aAA4B,CAAC,GAE7B,eAAW,sCAAe;AAAA,MAC9B;AAAA,MACA,KAAK,YAAY;AAAA,MACjB;AAAA,MACA,aAAa;AAAA,MACb;AAAA,MACA;AAAA,IACF,CAAC,GAGK,WAAW,MAAM,UAAU,QAAQ,UAAU,OAAO;AAG1D,QAAI,CAAC,kBAAkB,WAAW,QAAQ;AACxC,YAAM,SAAK,yBAAS;AACpB,cAAQ,KAAK,wCAAwC,WAAW,MAAM,OAAO,EAAE,EAAE,GACjF,QAAQ,IAAI,WAAW,IAAI,CAAC,SAAS,KAAK,CAAC,CAAC,EACzC,KAAK,MAAM;AACV,gBAAQ,KAAK,+BAA+B,EAAE,EAAE;AAAA,MAClD,CAAC,EACA,MAAM,CAAC,QAAQ;AACd,gBAAQ,MAAM,8CAAuC,GAAG;AAAA,MAC1D,CAAC;AAAA,IACL;AAEA,WAAO;AAAA,MACL;AAAA,MACA;AAAA,IACF;AAAA,EACF,GAEM,eAAe,OACnB,KACA,aACG;AACH,UAAM,aAAyC,CAAC,GAE1C,eAAW,sCAAe;AAAA,MAC9B;AAAA,MACA,aAAa;AAAA,MACb;AAAA,MACA,UAAU;AAAA,QACR,IAAI;AAAA,QACJ,OAAO;AAAA,QACP,MAAM;AAAA,QACN,GAAG;AAAA,MACL;AAAA,MACA;AAAA,MACA,KAAK,YAAY;AAAA,IACnB,CAAC;AAED,UAAM,kBAAkB,OAAO,OAAO;AACpC,YAAM,IAAI,IAAI,QAAQ;AAAA,IACxB,CAAC,GAED,MAAM,QAAQ,IAAI,WAAW,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;AAAA,EAC9C,GAIM,cAAc,mBAGd,wBAAkD;AAAA,IACtD,eAAe;AAAA,IACf,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,gBAAgB;AAAA,EAClB;AAEA,iBAAe,kBAGb,OAA6B;AAC7B,QAAI;AACF,cAAI,iCAAiB,GAAG;AACtB,cAAM,EAAE,GAAG,QAAI,wBAAQ;AACvB,eAAO,MAAM,MAAM,EAAE;AAAA,MACvB;AAGA,aADe,MAAM,mBAAmB,YAAY,OAAO,qBAAqB;AAAA,IAElF,SAAS,KAAK;AACZ,oBAAQ,MAAM,sCAAsC,GAAG,EAAE,GACnD;AAAA,IACR;AAAA,EACF;AAEA,SAAO;AAAA,IACL;AAAA,IACA,aAAa;AAAA,IACb,QAAQ;AAAA,IACR,OAAO;AAAA,EACT;AACF;",
|
|
5
|
+
"names": ["postgres"]
|
|
6
|
+
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
10
|
+
}, __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from == "object" || typeof from == "function")
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
return to;
|
|
15
|
+
};
|
|
16
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
17
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
18
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
19
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
20
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
21
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
|
|
22
|
+
mod
|
|
23
|
+
)), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
|
|
24
|
+
var createZeroServer_exports = {};
|
|
25
|
+
__export(createZeroServer_exports, {
|
|
26
|
+
createZeroServer: () => createZeroServer
|
|
27
|
+
});
|
|
28
|
+
module.exports = __toCommonJS(createZeroServer_exports);
|
|
29
|
+
var import_pg = require("@rocicorp/zero/pg"), import_server = require("@rocicorp/zero/server"), import_helpers = require("@vxrn/helpers"), import_postgres = __toESM(require("postgres"), 1), import_createPermissions = require("./createPermissions"), import_context = require("./helpers/context"), import_createMutators = require("./helpers/createMutators");
|
|
30
|
+
function createZeroServer(param) {
|
|
31
|
+
var { createServerActions, schema, models } = param, dbString = (0, import_helpers.assertString)(process.env.ZERO_UPSTREAM_DB), zeroServerDatabase = new import_server.ZQLDatabase(new import_pg.PostgresJSConnection((0, import_postgres.default)(dbString)), schema), permissions = (0, import_createPermissions.createPermissions)({
|
|
32
|
+
environment: "server",
|
|
33
|
+
schema,
|
|
34
|
+
models,
|
|
35
|
+
getContext: import_context.context
|
|
36
|
+
}), processor = new import_pg.PushProcessor(zeroServerDatabase), handleMutationRequest = async function(param2) {
|
|
37
|
+
var { authData, request, skipAsyncTasks } = param2, asyncTasks = [], mutators = (0, import_createMutators.createMutators)({
|
|
38
|
+
asyncTasks,
|
|
39
|
+
can: permissions.can,
|
|
40
|
+
createServerActions,
|
|
41
|
+
environment: "server",
|
|
42
|
+
models,
|
|
43
|
+
authData
|
|
44
|
+
}), response = await processor.process(mutators, request);
|
|
45
|
+
if (!skipAsyncTasks && asyncTasks.length) {
|
|
46
|
+
var id = (0, import_helpers.randomId)();
|
|
47
|
+
console.info(`[push] complete, running async tasks ${asyncTasks.length} id ${id}`), Promise.all(asyncTasks.map(function(task) {
|
|
48
|
+
return task();
|
|
49
|
+
})).then(function() {
|
|
50
|
+
console.info(`[push] async tasks complete ${id}`);
|
|
51
|
+
}).catch(function(err) {
|
|
52
|
+
console.error("[push] error: async tasks failed \u{1F61E}", err);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return {
|
|
56
|
+
response,
|
|
57
|
+
asyncTasks
|
|
58
|
+
};
|
|
59
|
+
}, serverMutate = async function(run, authData) {
|
|
60
|
+
var asyncTasks = [], mutators = (0, import_createMutators.createMutators)({
|
|
61
|
+
models,
|
|
62
|
+
environment: "server",
|
|
63
|
+
asyncTasks,
|
|
64
|
+
authData: {
|
|
65
|
+
id: "",
|
|
66
|
+
email: "admin@start.chat",
|
|
67
|
+
role: "admin",
|
|
68
|
+
...authData
|
|
69
|
+
},
|
|
70
|
+
createServerActions,
|
|
71
|
+
can: permissions.can
|
|
72
|
+
});
|
|
73
|
+
await serverTransaction(async function(tx) {
|
|
74
|
+
await run(tx, mutators);
|
|
75
|
+
}), await Promise.all(asyncTasks.map(function(t) {
|
|
76
|
+
return t();
|
|
77
|
+
}));
|
|
78
|
+
}, serverQuery = serverTransaction, dummyTransactionInput = {
|
|
79
|
+
clientGroupID: "unused",
|
|
80
|
+
clientID: "unused",
|
|
81
|
+
mutationID: 42,
|
|
82
|
+
upstreamSchema: "unused"
|
|
83
|
+
};
|
|
84
|
+
async function serverTransaction(query) {
|
|
85
|
+
try {
|
|
86
|
+
if ((0, import_context.isInZeroMutation)()) {
|
|
87
|
+
var { tx } = (0, import_context.context)();
|
|
88
|
+
return await query(tx);
|
|
89
|
+
}
|
|
90
|
+
var output = await zeroServerDatabase.transaction(query, dummyTransactionInput);
|
|
91
|
+
return output;
|
|
92
|
+
} catch (err) {
|
|
93
|
+
throw console.error(`Error running serverTransaction(): ${err}`), err;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return {
|
|
97
|
+
handleMutationRequest,
|
|
98
|
+
transaction: serverTransaction,
|
|
99
|
+
mutate: serverMutate,
|
|
100
|
+
query: serverQuery
|
|
101
|
+
};
|
|
102
|
+
}
|
|
103
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
104
|
+
0 && (module.exports = {
|
|
105
|
+
createZeroServer
|
|
106
|
+
});
|
|
107
|
+
//# sourceMappingURL=createZeroServer.js.map
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/createZeroServer.ts"],
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAAoD,8BACpD,gBAA4B,kCAC5B,iBAAuC,0BACvC,kBAAqB,iCACrB,2BAAkC,gCAClC,iBAA0C,8BAC1C,wBAA+B;AACxB,SAAS,iBAAiB,OAAO;AACpC,MAAI,EAAE,qBAAqB,QAAQ,OAAO,IAAI,OAC1C,eAAW,6BAAa,QAAQ,IAAI,gBAAgB,GACpD,qBAAqB,IAAI,0BAAY,IAAI,mCAAqB,gBAAAA,SAAS,QAAQ,CAAC,GAAG,MAAM,GACzF,kBAAc,4CAAkB;AAAA,IAChC,aAAa;AAAA,IACb;AAAA,IACA;AAAA,IACA,YAAY;AAAA,EAChB,CAAC,GACG,YAAY,IAAI,wBAAc,kBAAkB,GAChD,wBAAwB,eAAeC,QAAO;AAC9C,QAAI,EAAE,UAAU,SAAS,eAAe,IAAIA,QAExC,aAAa,CAAC,GACd,eAAW,sCAAe;AAAA,MAC1B;AAAA,MACA,KAAK,YAAY;AAAA,MACjB;AAAA,MACA,aAAa;AAAA,MACb;AAAA,MACA;AAAA,IACJ,CAAC,GAEG,WAAW,MAAM,UAAU,QAAQ,UAAU,OAAO;AAExD,QAAI,CAAC,kBAAkB,WAAW,QAAQ;AACtC,UAAI,SAAK,yBAAS;AAClB,cAAQ,KAAK,wCAAwC,WAAW,MAAM,OAAO,EAAE,EAAE,GACjF,QAAQ,IAAI,WAAW,IAAI,SAAS,MAAM;AACtC,eAAO,KAAK;AAAA,MAChB,CAAC,CAAC,EAAE,KAAK,WAAW;AAChB,gBAAQ,KAAK,+BAA+B,EAAE,EAAE;AAAA,MACpD,CAAC,EAAE,MAAM,SAAS,KAAK;AACnB,gBAAQ,MAAM,8CAAuC,GAAG;AAAA,MAC5D,CAAC;AAAA,IACL;AACA,WAAO;AAAA,MACH;AAAA,MACA;AAAA,IACJ;AAAA,EACJ,GACI,eAAe,eAAe,KAAK,UAAU;AAC7C,QAAI,aAAa,CAAC,GACd,eAAW,sCAAe;AAAA,MAC1B;AAAA,MACA,aAAa;AAAA,MACb;AAAA,MACA,UAAU;AAAA,QACN,IAAI;AAAA,QACJ,OAAO;AAAA,QACP,MAAM;AAAA,QACN,GAAG;AAAA,MACP;AAAA,MACA;AAAA,MACA,KAAK,YAAY;AAAA,IACrB,CAAC;AACD,UAAM,kBAAkB,eAAe,IAAI;AACvC,YAAM,IAAI,IAAI,QAAQ;AAAA,IAC1B,CAAC,GACD,MAAM,QAAQ,IAAI,WAAW,IAAI,SAAS,GAAG;AACzC,aAAO,EAAE;AAAA,IACb,CAAC,CAAC;AAAA,EACN,GAGI,cAAc,mBAEd,wBAAwB;AAAA,IACxB,eAAe;AAAA,IACf,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,gBAAgB;AAAA,EACpB;AACA,iBAAe,kBAAkB,OAAO;AACpC,QAAI;AACA,cAAI,iCAAiB,GAAG;AACpB,YAAI,EAAE,GAAG,QAAI,wBAAQ;AACrB,eAAO,MAAM,MAAM,EAAE;AAAA,MACzB;AAEA,UAAI,SAAS,MAAM,mBAAmB,YAAY,OAAO,qBAAqB;AAC9E,aAAO;AAAA,IACX,SAAS,KAAK;AACV,oBAAQ,MAAM,sCAAsC,GAAG,EAAE,GACnD;AAAA,IACV;AAAA,EACJ;AACA,SAAO;AAAA,IACH;AAAA,IACA,aAAa;AAAA,IACb,QAAQ;AAAA,IACR,OAAO;AAAA,EACX;AACJ;",
|
|
5
|
+
"names": ["postgres", "param"]
|
|
6
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/helpers/context.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAmC;AAKnC,MAAM,mBAAe,mCAAmC;AAIjD,SAAS,UAA0B;AACxC,QAAM,iBAAiB,aAAa,IAAI;AACxC,MAAI,CAAC;AACH,UAAM,IAAI,MAAM,yCAAyC;AAG3D,SAAO;AACT;AAEO,SAAS,mBAAmB;AACjC,SAAO,CAAC,CAAC,aAAa,IAAI;AAC5B;AAEO,SAAS,eACdA,UACA,IACY;AACZ,SAAO,aAAa,IAAIA,UAAS,EAAE;AACrC;",
|
|
5
5
|
"names": ["context"]
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/helpers/context.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAmC,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAmC,0BAE/B,mBAAe,mCAAmB;AAE/B,SAAS,UAAU;AACtB,MAAI,iBAAiB,aAAa,IAAI;AACtC,MAAI,CAAC;AACD,UAAM,IAAI,MAAM,yCAAyC;AAE7D,SAAO;AACX;AACO,SAAS,mBAAmB;AAC/B,SAAO,CAAC,CAAC,aAAa,IAAI;AAC9B;AACO,SAAS,eAAeA,UAAS,IAAI;AACxC,SAAO,aAAa,IAAIA,UAAS,EAAE;AACvC;",
|
|
5
5
|
"names": ["context"]
|
|
6
6
|
}
|
|
@@ -23,25 +23,25 @@ __export(createMutators_exports, {
|
|
|
23
23
|
createMutators: () => createMutators
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(createMutators_exports);
|
|
26
|
-
var
|
|
27
|
-
|
|
28
|
-
import_context = require("../context"),
|
|
29
|
-
import_models = require("../models"),
|
|
30
|
-
import_can = require("./can");
|
|
26
|
+
var import_helpers = require("@vxrn/helpers"),
|
|
27
|
+
import_context = require("./context.cjs");
|
|
31
28
|
function createMutators({
|
|
32
29
|
environment,
|
|
33
30
|
authData,
|
|
34
31
|
createServerActions,
|
|
35
|
-
asyncTasks = []
|
|
32
|
+
asyncTasks = [],
|
|
33
|
+
can,
|
|
34
|
+
models
|
|
36
35
|
}) {
|
|
37
|
-
const serverActions = createServerActions?.(
|
|
36
|
+
const serverActions = createServerActions?.(),
|
|
37
|
+
modelMutators = (0, import_helpers.mapObject)(models, val => val.mutate);
|
|
38
38
|
function withContext(fn) {
|
|
39
39
|
return async (tx, ...args) => {
|
|
40
40
|
const mutationContext = {
|
|
41
41
|
tx,
|
|
42
42
|
authData,
|
|
43
43
|
environment,
|
|
44
|
-
can
|
|
44
|
+
can,
|
|
45
45
|
serverActions,
|
|
46
46
|
asyncTasks
|
|
47
47
|
};
|
|
@@ -52,10 +52,10 @@ function createMutators({
|
|
|
52
52
|
return process.env.NODE_ENV !== "development" && !process.env.IS_TESTING ? fn : async (...args) => {
|
|
53
53
|
const startTime = performance.now();
|
|
54
54
|
try {
|
|
55
|
-
|
|
55
|
+
import_helpers.isServer && console.info(`[mutator] ${name} start`);
|
|
56
56
|
const result = await fn(...args),
|
|
57
57
|
duration = (performance.now() - startTime).toFixed(2);
|
|
58
|
-
return
|
|
58
|
+
return import_helpers.isClient ? (console.groupCollapsed(`[mutator] ${name} completed in ${duration}ms`), console.info("\u2192", args[1]), console.info("\u2190", result), console.trace(), console.groupEnd()) : console.info(`[mutator] ${name} completed in ${duration}ms`), result;
|
|
59
59
|
} catch (error) {
|
|
60
60
|
const duration = (performance.now() - startTime).toFixed(2);
|
|
61
61
|
throw console.groupCollapsed(`[mutator] ${name} failed after ${duration}ms`), console.error("error:", error), console.info("arguments:", JSON.stringify(args[1], null, 2)), console.info("stack trace:", new Error().stack), console.groupEnd(), error;
|
|
@@ -83,5 +83,5 @@ function createMutators({
|
|
|
83
83
|
}
|
|
84
84
|
return result;
|
|
85
85
|
}
|
|
86
|
-
return decorateMutators(
|
|
86
|
+
return decorateMutators(modelMutators);
|
|
87
87
|
}
|
|
@@ -17,21 +17,23 @@ __export(createMutators_exports, {
|
|
|
17
17
|
createMutators: () => createMutators
|
|
18
18
|
});
|
|
19
19
|
module.exports = __toCommonJS(createMutators_exports);
|
|
20
|
-
var
|
|
20
|
+
var import_helpers = require("@vxrn/helpers"), import_context = require("./context");
|
|
21
21
|
function createMutators({
|
|
22
22
|
environment,
|
|
23
23
|
authData,
|
|
24
24
|
createServerActions,
|
|
25
|
-
asyncTasks = []
|
|
25
|
+
asyncTasks = [],
|
|
26
|
+
can,
|
|
27
|
+
models
|
|
26
28
|
}) {
|
|
27
|
-
const serverActions = createServerActions?.(
|
|
29
|
+
const serverActions = createServerActions?.(), modelMutators = (0, import_helpers.mapObject)(models, (val) => val.mutate);
|
|
28
30
|
function withContext(fn) {
|
|
29
31
|
return async (tx, ...args) => {
|
|
30
32
|
const mutationContext = {
|
|
31
33
|
tx,
|
|
32
34
|
authData,
|
|
33
35
|
environment,
|
|
34
|
-
can
|
|
36
|
+
can,
|
|
35
37
|
serverActions,
|
|
36
38
|
asyncTasks
|
|
37
39
|
};
|
|
@@ -42,9 +44,9 @@ function createMutators({
|
|
|
42
44
|
return process.env.NODE_ENV !== "development" && !process.env.IS_TESTING ? fn : async (...args) => {
|
|
43
45
|
const startTime = performance.now();
|
|
44
46
|
try {
|
|
45
|
-
|
|
47
|
+
import_helpers.isServer && console.info(`[mutator] ${name} start`);
|
|
46
48
|
const result = await fn(...args), duration = (performance.now() - startTime).toFixed(2);
|
|
47
|
-
return
|
|
49
|
+
return import_helpers.isClient ? (console.groupCollapsed(`[mutator] ${name} completed in ${duration}ms`), console.info("\u2192", args[1]), console.info("\u2190", result), console.trace(), console.groupEnd()) : console.info(`[mutator] ${name} completed in ${duration}ms`), result;
|
|
48
50
|
} catch (error) {
|
|
49
51
|
const duration = (performance.now() - startTime).toFixed(2);
|
|
50
52
|
throw console.groupCollapsed(`[mutator] ${name} failed after ${duration}ms`), console.error("error:", error), console.info("arguments:", JSON.stringify(args[1], null, 2)), console.info("stack trace:", new Error().stack), console.groupEnd(), error;
|
|
@@ -76,6 +78,6 @@ function createMutators({
|
|
|
76
78
|
}
|
|
77
79
|
return result;
|
|
78
80
|
}
|
|
79
|
-
return decorateMutators(
|
|
81
|
+
return decorateMutators(modelMutators);
|
|
80
82
|
}
|
|
81
83
|
//# sourceMappingURL=createMutators.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/helpers/createMutators.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAoD,0BAQpD,iBAA+B;AAExB,SAAS,eAA6C;AAAA,EAC3D;AAAA,EACA;AAAA,EACA;AAAA,EACA,aAAa,CAAC;AAAA,EACd;AAAA,EACA;AACF,GAO4B;AAC1B,QAAM,gBAAgB,sBAAsB,GAEtC,oBAAgB,0BAAU,QAAQ,CAAC,QAAQ,IAAI,MAAM;AAI3D,WAAS,YAAgC,IAAsC;AAC7E,WAAO,OAAO,OAAoB,SAA8B;AAC9D,YAAM,kBAAkB;AAAA,QACtB;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACF;AAEA,aAAO,UAAM,+BAAe,iBAAiB,MAGpC,GAAG,iBAAiB,GAAG,IAAI,CACnC;AAAA,IACH;AAAA,EACF;AAEA,WAAS,uBACP,MACA,IACA;AACA,WAAI,QAAQ,IAAI,aAAa,iBAAiB,CAAC,QAAQ,IAAI,aAClD,KAGF,UAAU,SAA8B;AAC7C,YAAM,YAAY,YAAY,IAAI;AAElC,UAAI;AACF,QAAI,2BACF,QAAQ,KAAK,aAAa,IAAI,QAAQ;AAExC,cAAM,SAAS,MAAM,GAAG,GAAG,IAAI,GACzB,YAAY,YAAY,IAAI,IAAI,WAAW,QAAQ,CAAC;AAC1D,eAAI,2BACF,QAAQ,eAAe,aAAa,IAAI,iBAAiB,QAAQ,IAAI,GACrE,QAAQ,KAAK,UAAK,KAAK,CAAC,CAAC,GACzB,QAAQ,KAAK,UAAK,MAAM,GACxB,QAAQ,MAAM,GACd,QAAQ,SAAS,KAGjB,QAAQ,KAAK,aAAa,IAAI,iBAAiB,QAAQ,IAAI,GAEtD;AAAA,MACT,SAAS,OAAO;AACd,cAAM,YAAY,YAAY,IAAI,IAAI,WAAW,QAAQ,CAAC;AAC1D,sBAAQ,eAAe,aAAa,IAAI,iBAAiB,QAAQ,IAAI,GACrE,QAAQ,MAAM,UAAU,KAAK,GAC7B,QAAQ,KAAK,cAAc,KAAK,UAAU,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,GAC3D,QAAQ,KAAK,gBAAgB,IAAI,MAAM,EAAE,KAAK,GAC9C,QAAQ,SAAS,GACX;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEA,WAAS,iBACP,MACA,IAGA,YAAoB,oBAAK,GAAG,QAAQ,CAAC,GACrC;AACA,WAAO,UAAU,SAA8B;AAC7C,YAAM,iBAAiB,IAAI,QAAe,CAAC,GAAG,WAAW;AACvD,mBAAW,MAAM;AACf,iBAAO,IAAI,MAAM,aAAa,IAAI,kBAAkB,SAAS,IAAI,CAAC;AAAA,QACpE,GAAG,SAAS;AAAA,MACd,CAAC;AAED,aAAO,QAAQ,KAAK,CAAC,GAAG,GAAG,IAAI,GAAG,cAAc,CAAC;AAAA,IACnD;AAAA,EACF;AAEA,WAAS,iBAAgE,SAAY;AACnF,UAAM,SAAc,CAAC;AAErB,eAAW,CAAC,YAAY,aAAa,KAAK,OAAO,QAAQ,OAAO,GAAG;AACjE,aAAO,UAAU,IAAI,CAAC;AACtB,iBAAW,CAAC,MAAM,WAAW,KAAK,OAAO,QAAQ,aAAa;AAC5D,YAAI,OAAO,eAAgB,YAAY;AACrC,gBAAM,WAAW,GAAG,UAAU,IAAI,IAAI;AACtC,iBAAO,UAAU,EAAE,IAAI,IAAI;AAAA,YACzB;AAAA,YACA,iBAAiB,UAAU,YAAY,WAAW,CAAC;AAAA,UACrD;AAAA,QACF;AAAA,IAEJ;AAEA,WAAO;AAAA,EACT;AAEA,SAAO,iBAAiB,aAAa;AACvC;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -18,9 +18,11 @@ __export(createMutators_exports, {
|
|
|
18
18
|
createMutators: () => createMutators
|
|
19
19
|
});
|
|
20
20
|
module.exports = __toCommonJS(createMutators_exports);
|
|
21
|
-
var
|
|
21
|
+
var import_helpers = require("@vxrn/helpers"), import_context = require("./context");
|
|
22
22
|
function createMutators(param) {
|
|
23
|
-
var { environment, authData, createServerActions, asyncTasks = [] } = param, serverActions = createServerActions == null ? void 0 : createServerActions(
|
|
23
|
+
var { environment, authData, createServerActions, asyncTasks = [], can, models } = param, serverActions = createServerActions == null ? void 0 : createServerActions(), modelMutators = (0, import_helpers.mapObject)(models, function(val) {
|
|
24
|
+
return val.mutate;
|
|
25
|
+
});
|
|
24
26
|
function withContext(fn) {
|
|
25
27
|
return async function(tx) {
|
|
26
28
|
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++)
|
|
@@ -29,7 +31,7 @@ function createMutators(param) {
|
|
|
29
31
|
tx,
|
|
30
32
|
authData,
|
|
31
33
|
environment,
|
|
32
|
-
can
|
|
34
|
+
can,
|
|
33
35
|
serverActions,
|
|
34
36
|
asyncTasks
|
|
35
37
|
};
|
|
@@ -44,9 +46,9 @@ function createMutators(param) {
|
|
|
44
46
|
args[_key] = arguments[_key];
|
|
45
47
|
var startTime = performance.now();
|
|
46
48
|
try {
|
|
47
|
-
|
|
49
|
+
import_helpers.isServer && console.info(`[mutator] ${name} start`);
|
|
48
50
|
var result = await fn(...args), duration = (performance.now() - startTime).toFixed(2);
|
|
49
|
-
return
|
|
51
|
+
return import_helpers.isClient ? (console.groupCollapsed(`[mutator] ${name} completed in ${duration}ms`), console.info("\u2192", args[1]), console.info("\u2190", result), console.trace(), console.groupEnd()) : console.info(`[mutator] ${name} completed in ${duration}ms`), result;
|
|
50
52
|
} catch (error) {
|
|
51
53
|
var duration1 = (performance.now() - startTime).toFixed(2);
|
|
52
54
|
throw console.groupCollapsed(`[mutator] ${name} failed after ${duration1}ms`), console.error("error:", error), console.info("arguments:", JSON.stringify(args[1], null, 2)), console.info("stack trace:", new Error().stack), console.groupEnd(), error;
|
|
@@ -107,7 +109,7 @@ function createMutators(param) {
|
|
|
107
109
|
}
|
|
108
110
|
return result;
|
|
109
111
|
}
|
|
110
|
-
return decorateMutators(
|
|
112
|
+
return decorateMutators(modelMutators);
|
|
111
113
|
}
|
|
112
114
|
// Annotate the CommonJS export names for ESM import in node:
|
|
113
115
|
0 && (module.exports = {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/helpers/createMutators.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -24,7 +24,7 @@ __export(ensureLoggedIn_exports, {
|
|
|
24
24
|
});
|
|
25
25
|
module.exports = __toCommonJS(ensureLoggedIn_exports);
|
|
26
26
|
var import_helpers = require("@vxrn/helpers"),
|
|
27
|
-
import_context = require("
|
|
27
|
+
import_context = require("./context.cjs");
|
|
28
28
|
const ensureLoggedIn = () => {
|
|
29
29
|
const {
|
|
30
30
|
authData
|
|
@@ -17,7 +17,7 @@ __export(ensureLoggedIn_exports, {
|
|
|
17
17
|
ensureLoggedIn: () => ensureLoggedIn
|
|
18
18
|
});
|
|
19
19
|
module.exports = __toCommonJS(ensureLoggedIn_exports);
|
|
20
|
-
var import_helpers = require("@vxrn/helpers"), import_context = require("
|
|
20
|
+
var import_helpers = require("@vxrn/helpers"), import_context = require("./context");
|
|
21
21
|
const ensureLoggedIn = () => {
|
|
22
22
|
const { authData } = (0, import_context.context)();
|
|
23
23
|
return (0, import_helpers.ensure)(authData, "logged in"), authData;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/helpers/ensureLoggedIn.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAuB,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAuB,0BAEvB,iBAAwB;AAEjB,MAAM,iBAAiB,MAAgB;AAC5C,QAAM,EAAE,SAAS,QAAI,wBAAQ;AAC7B,oCAAO,UAAU,WAAW,GACrB;AACT;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -18,7 +18,7 @@ __export(ensureLoggedIn_exports, {
|
|
|
18
18
|
ensureLoggedIn: () => ensureLoggedIn
|
|
19
19
|
});
|
|
20
20
|
module.exports = __toCommonJS(ensureLoggedIn_exports);
|
|
21
|
-
var import_helpers = require("@vxrn/helpers"), import_context = require("
|
|
21
|
+
var import_helpers = require("@vxrn/helpers"), import_context = require("./context"), ensureLoggedIn = function() {
|
|
22
22
|
var { authData } = (0, import_context.context)();
|
|
23
23
|
return (0, import_helpers.ensure)(authData, "logged in"), authData;
|
|
24
24
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/helpers/ensureLoggedIn.ts"],
|
|
4
|
-
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAuB,0BACvB,iBAAwB,
|
|
4
|
+
"mappings": ";;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAuB,0BACvB,iBAAwB,sBACb,iBAAiB,WAAW;AACnC,MAAI,EAAE,SAAS,QAAI,wBAAQ;AAC3B,oCAAO,UAAU,WAAW,GACrB;AACX;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|