on-zero 0.6.14 → 0.6.16
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/asyncTasks.cjs +51 -0
- package/dist/cjs/asyncTasks.native.js +84 -0
- package/dist/cjs/asyncTasks.native.js.map +1 -0
- package/dist/cjs/cli.cjs +8 -1
- package/dist/cjs/cli.native.js +8 -1
- package/dist/cjs/cli.native.js.map +1 -1
- package/dist/cjs/createSchemaFromDrizzle.cjs +4 -4
- package/dist/cjs/createSchemaFromDrizzle.native.js +4 -4
- package/dist/cjs/createSchemaFromDrizzle.native.js.map +1 -1
- package/dist/cjs/createZeroDirectServer.cjs +269 -0
- package/dist/cjs/createZeroDirectServer.native.js +287 -0
- package/dist/cjs/createZeroDirectServer.native.js.map +1 -0
- package/dist/cjs/createZeroSQLiteServer.cjs +8 -277
- package/dist/cjs/createZeroSQLiteServer.native.js +8 -390
- package/dist/cjs/createZeroSQLiteServer.native.js.map +1 -1
- package/dist/cjs/createZeroSQLiteServer.test.cjs +36 -9
- package/dist/cjs/createZeroSQLiteServer.test.native.js +37 -9
- package/dist/cjs/createZeroSQLiteServer.test.native.js.map +1 -1
- package/dist/cjs/createZeroServer.test.cjs +79 -1
- package/dist/cjs/createZeroServer.test.native.js +85 -1
- package/dist/cjs/createZeroServer.test.native.js.map +1 -1
- package/dist/cjs/createZeroServerCore.cjs +28 -208
- package/dist/cjs/createZeroServerCore.native.js +33 -218
- package/dist/cjs/createZeroServerCore.native.js.map +1 -1
- package/dist/cjs/generate.cjs +15 -5
- package/dist/cjs/generate.native.js +15 -5
- package/dist/cjs/generate.native.js.map +1 -1
- package/dist/cjs/generate.test.cjs +55 -0
- package/dist/cjs/generate.test.native.js +55 -0
- package/dist/cjs/generate.test.native.js.map +1 -1
- package/dist/cjs/helpers/createMutators.cjs +2 -2
- package/dist/cjs/helpers/createMutators.native.js +2 -2
- package/dist/cjs/helpers/createMutators.native.js.map +1 -1
- package/dist/cjs/index.cjs +1 -0
- package/dist/cjs/index.native.js +1 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/server.cjs +2 -1
- package/dist/cjs/sqliteRuntime.cjs +318 -0
- package/dist/cjs/sqliteRuntime.native.js +438 -0
- package/dist/cjs/sqliteRuntime.native.js.map +1 -0
- package/dist/cjs/syncHost.cjs +26 -12
- package/dist/cjs/syncHost.native.js +32 -16
- package/dist/cjs/syncHost.native.js.map +1 -1
- package/dist/cjs/syncHost.test.cjs +15 -4
- package/dist/cjs/syncHost.test.native.js +16 -4
- package/dist/cjs/syncHost.test.native.js.map +1 -1
- package/dist/cjs/vite-plugin.cjs +2 -1
- package/dist/cjs/vite-plugin.native.js +2 -1
- package/dist/cjs/vite-plugin.native.js.map +1 -1
- package/dist/esm/asyncTasks.mjs +26 -0
- package/dist/esm/asyncTasks.mjs.map +1 -0
- package/dist/esm/asyncTasks.native.js +56 -0
- package/dist/esm/asyncTasks.native.js.map +1 -0
- package/dist/esm/cli.mjs +8 -1
- package/dist/esm/cli.mjs.map +1 -1
- package/dist/esm/cli.native.js +8 -1
- package/dist/esm/cli.native.js.map +1 -1
- package/dist/esm/createSchemaFromDrizzle.mjs +2 -2
- package/dist/esm/createSchemaFromDrizzle.native.js +2 -2
- package/dist/esm/createZeroDirectServer.mjs +241 -0
- package/dist/esm/createZeroDirectServer.mjs.map +1 -0
- package/dist/esm/createZeroDirectServer.native.js +256 -0
- package/dist/esm/createZeroDirectServer.native.js.map +1 -0
- package/dist/esm/createZeroSQLiteServer.mjs +3 -272
- package/dist/esm/createZeroSQLiteServer.mjs.map +1 -1
- package/dist/esm/createZeroSQLiteServer.native.js +3 -385
- package/dist/esm/createZeroSQLiteServer.native.js.map +1 -1
- package/dist/esm/createZeroSQLiteServer.test.mjs +36 -9
- package/dist/esm/createZeroSQLiteServer.test.mjs.map +1 -1
- package/dist/esm/createZeroSQLiteServer.test.native.js +37 -9
- package/dist/esm/createZeroSQLiteServer.test.native.js.map +1 -1
- package/dist/esm/createZeroServer.test.mjs +80 -2
- package/dist/esm/createZeroServer.test.mjs.map +1 -1
- package/dist/esm/createZeroServer.test.native.js +86 -2
- package/dist/esm/createZeroServer.test.native.js.map +1 -1
- package/dist/esm/createZeroServerCore.mjs +26 -205
- package/dist/esm/createZeroServerCore.mjs.map +1 -1
- package/dist/esm/createZeroServerCore.native.js +32 -216
- package/dist/esm/createZeroServerCore.native.js.map +1 -1
- package/dist/esm/generate.mjs +15 -5
- package/dist/esm/generate.mjs.map +1 -1
- package/dist/esm/generate.native.js +15 -5
- package/dist/esm/generate.native.js.map +1 -1
- package/dist/esm/generate.test.mjs +55 -1
- package/dist/esm/generate.test.mjs.map +1 -1
- package/dist/esm/generate.test.native.js +55 -1
- package/dist/esm/generate.test.native.js.map +1 -1
- package/dist/esm/helpers/createMutators.mjs +2 -2
- package/dist/esm/helpers/createMutators.mjs.map +1 -1
- package/dist/esm/helpers/createMutators.native.js +2 -2
- package/dist/esm/helpers/createMutators.native.js.map +1 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/index.mjs +1 -0
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +1 -0
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/server.mjs +1 -0
- package/dist/esm/server.mjs.map +1 -1
- package/dist/esm/sqliteRuntime.mjs +289 -0
- package/dist/esm/sqliteRuntime.mjs.map +1 -0
- package/dist/esm/sqliteRuntime.native.js +406 -0
- package/dist/esm/sqliteRuntime.native.js.map +1 -0
- package/dist/esm/syncHost.mjs +24 -10
- package/dist/esm/syncHost.mjs.map +1 -1
- package/dist/esm/syncHost.native.js +30 -14
- package/dist/esm/syncHost.native.js.map +1 -1
- package/dist/esm/syncHost.test.mjs +15 -4
- package/dist/esm/syncHost.test.mjs.map +1 -1
- package/dist/esm/syncHost.test.native.js +16 -4
- package/dist/esm/syncHost.test.native.js.map +1 -1
- package/dist/esm/vite-plugin.mjs +2 -1
- package/dist/esm/vite-plugin.mjs.map +1 -1
- package/dist/esm/vite-plugin.native.js +2 -1
- package/dist/esm/vite-plugin.native.js.map +1 -1
- package/lint/ssr-guards.js +8 -7
- package/package.json +5 -6
- package/readme.md +13 -4
- package/src/asyncTasks.ts +33 -0
- package/src/cli.ts +7 -1
- package/src/createSchemaFromDrizzle.ts +2 -2
- package/src/createZeroDirectServer.ts +411 -0
- package/src/createZeroSQLiteServer.test.ts +28 -12
- package/src/createZeroSQLiteServer.ts +14 -481
- package/src/createZeroServer.test.ts +86 -2
- package/src/createZeroServerCore.ts +39 -343
- package/src/generate.test.ts +75 -1
- package/src/generate.ts +30 -4
- package/src/helpers/createMutators.ts +3 -3
- package/src/helpers/mutatorContext.ts +1 -1
- package/src/index.ts +1 -0
- package/src/server.ts +2 -0
- package/src/sqliteRuntime.ts +512 -0
- package/src/syncHost.test.ts +12 -5
- package/src/syncHost.ts +55 -16
- package/src/types.ts +21 -3
- package/src/vite-plugin.ts +1 -0
- package/test-fixtures/server-return-types.ts +20 -2
- package/types/asyncTasks.d.ts +7 -0
- package/types/asyncTasks.d.ts.map +1 -0
- package/types/createSchemaFromDrizzle.d.ts +2 -2
- package/types/createSchemaFromDrizzle.d.ts.map +1 -1
- package/types/createZeroDirectServer.d.ts +80 -0
- package/types/createZeroDirectServer.d.ts.map +1 -0
- package/types/createZeroSQLiteServer.d.ts +5 -30
- package/types/createZeroSQLiteServer.d.ts.map +1 -1
- package/types/createZeroServerCore.d.ts +30 -87
- package/types/createZeroServerCore.d.ts.map +1 -1
- package/types/generate.d.ts +2 -0
- package/types/generate.d.ts.map +1 -1
- package/types/helpers/createMutators.d.ts +3 -3
- package/types/helpers/createMutators.d.ts.map +1 -1
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/types/server.d.ts +2 -0
- package/types/server.d.ts.map +1 -1
- package/types/sqliteRuntime.d.ts +71 -0
- package/types/sqliteRuntime.d.ts.map +1 -0
- package/types/syncHost.d.ts +10 -19
- package/types/syncHost.d.ts.map +1 -1
- package/types/types.d.ts +18 -2
- package/types/types.d.ts.map +1 -1
- package/types/vite-plugin.d.ts.map +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["import_node_sqlite","require","import_zero","import_bindings","import_vitest","import_createZeroSQLiteServer","import_fixtureSchema","note","table","from","columns","id","string","done","boolean","data","json","optional","primaryKey","sqliteTypesSchema","createSchema","tables","relationships","enableLegacyQueries","person","membership","personId","teamId","team","active","metadata","twoHopSchema","param","many","teams","sourceField","destSchema","destField","pushRequest","name","args","Request","method","headers","body","JSON","stringify","clientGroupID","mutations","type","clientID","timestamp","pushVersion","requestID","cleanupRequest","upToMutationID","describe","db","retryNextTransaction","transactionProvider","beforeEach","DatabaseSync","exec","join","executor","sql","params","arguments","length","prepare","run","query","all","queryAst","ast","format","rows","map","row","note_id","parse","label","Error","singular","callback","value","error","afterEach","close","test","effectRuns","server","createZeroSQLiteServer","schema","zeroHttpFixtureSchema","models","project","mutate","create","tx","server2","insert","asyncTasks","push","expect","toHaveLength","splice","createServerActions","result","handleMutationRequest","authData","request","ownerId","skipAsyncTasks","response","toEqual","lastMutationID","toBe","fail","toMatchObject","message","get","stored","value2","duplicate","count","upsert","update","delete","q","resolves","transaction","location","one"],"sources":["../../src/createZeroSQLiteServer.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["import_node_sqlite","require","import_zero","import_bindings","import_vitest","import_createZeroSQLiteServer","import_fixtureSchema","note","table","from","columns","id","string","done","boolean","data","json","optional","primaryKey","sqliteTypesSchema","createSchema","tables","relationships","enableLegacyQueries","person","membership","personId","teamId","team","active","metadata","twoHopSchema","param","many","teams","sourceField","destSchema","destField","pushRequest","name","args","Request","method","headers","body","JSON","stringify","clientGroupID","mutations","type","clientID","timestamp","pushVersion","requestID","cleanupRequest","upToMutationID","describe","db","retryNextTransaction","transactionProvider","statements","beforeEach","DatabaseSync","exec","join","executor","sql","params","arguments","length","push","result","prepare","run","changes","Number","query","all","queryAst","ast","format","rows","map","row","note_id","parse","label","Error","singular","callback","value","error","afterEach","close","test","effectRuns","server","createZeroSQLiteServer","schema","zeroHttpFixtureSchema","models","project","mutate","create","tx","server2","insert","enqueueTask","barrier","createServerActions","handleMutationRequest","authData","request","ownerId","skipAsyncTasks","expect","response","toEqual","lastMutationID","asyncTasks","toHaveLength","toBe","task","fail","toMatchObject","message","get","stored","value2","duplicate","count","upsert","update","delete","q","resolves","transaction","location","one","dbTransaction"],"sources":["../../src/createZeroSQLiteServer.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -100,7 +100,7 @@ function pushRequest(mutationIDs) {
|
|
|
100
100
|
touch: async ({
|
|
101
101
|
server
|
|
102
102
|
}) => {
|
|
103
|
-
server?.
|
|
103
|
+
server?.enqueueTask(async () => {
|
|
104
104
|
effectRuns++;
|
|
105
105
|
});
|
|
106
106
|
throw new Error("rejected");
|
|
@@ -123,6 +123,84 @@ function pushRequest(mutationIDs) {
|
|
|
123
123
|
(0, import_vitest.expect)(result.asyncTasks).toEqual([]);
|
|
124
124
|
(0, import_vitest.expect)(effectRuns).toBe(0);
|
|
125
125
|
});
|
|
126
|
+
(0, import_vitest.test)("awaits barrier tasks before resolving the push response", async () => {
|
|
127
|
+
const pg = new FakePgClient();
|
|
128
|
+
let releaseBarrier;
|
|
129
|
+
let markBarrierStarted;
|
|
130
|
+
const barrierStarted = new Promise(resolve => {
|
|
131
|
+
markBarrierStarted = resolve;
|
|
132
|
+
});
|
|
133
|
+
const barrier = new Promise(resolve => {
|
|
134
|
+
releaseBarrier = resolve;
|
|
135
|
+
});
|
|
136
|
+
const zeroServer = (0, import_createZeroServer.createZeroServer)({
|
|
137
|
+
schema: import_fixtureSchema.zeroHttpFixtureSchema,
|
|
138
|
+
models: {
|
|
139
|
+
project: {
|
|
140
|
+
mutate: {
|
|
141
|
+
touch: async ({
|
|
142
|
+
server
|
|
143
|
+
}) => {
|
|
144
|
+
server?.enqueueTask(async () => {
|
|
145
|
+
markBarrierStarted();
|
|
146
|
+
await barrier;
|
|
147
|
+
}, {
|
|
148
|
+
barrier: true
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
},
|
|
154
|
+
createServerActions: () => ({}),
|
|
155
|
+
pool: pg
|
|
156
|
+
});
|
|
157
|
+
let responseResolved = false;
|
|
158
|
+
const resultPromise = zeroServer.handleMutationRequest({
|
|
159
|
+
authData: null,
|
|
160
|
+
request: pushRequest(1)
|
|
161
|
+
}).then(result2 => {
|
|
162
|
+
responseResolved = true;
|
|
163
|
+
return result2;
|
|
164
|
+
});
|
|
165
|
+
await barrierStarted;
|
|
166
|
+
await Promise.resolve();
|
|
167
|
+
(0, import_vitest.expect)(responseResolved).toBe(false);
|
|
168
|
+
releaseBarrier();
|
|
169
|
+
const result = await resultPromise;
|
|
170
|
+
(0, import_vitest.expect)(result.response.mutations[0].result).toEqual({});
|
|
171
|
+
});
|
|
172
|
+
(0, import_vitest.test)("does not fail the push when a background task rejects", async () => {
|
|
173
|
+
const pg = new FakePgClient();
|
|
174
|
+
const error = new Error("background failed");
|
|
175
|
+
const consoleError = import_vitest.vi.spyOn(console, "error").mockImplementation(() => {});
|
|
176
|
+
const zeroServer = (0, import_createZeroServer.createZeroServer)({
|
|
177
|
+
schema: import_fixtureSchema.zeroHttpFixtureSchema,
|
|
178
|
+
models: {
|
|
179
|
+
project: {
|
|
180
|
+
mutate: {
|
|
181
|
+
touch: async ({
|
|
182
|
+
server
|
|
183
|
+
}) => {
|
|
184
|
+
server?.enqueueTask(async () => {
|
|
185
|
+
throw error;
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
},
|
|
191
|
+
createServerActions: () => ({}),
|
|
192
|
+
pool: pg
|
|
193
|
+
});
|
|
194
|
+
const result = await zeroServer.handleMutationRequest({
|
|
195
|
+
authData: null,
|
|
196
|
+
request: pushRequest(1)
|
|
197
|
+
});
|
|
198
|
+
(0, import_vitest.expect)(result.response.mutations[0].result).toEqual({});
|
|
199
|
+
await import_vitest.vi.waitFor(() => {
|
|
200
|
+
(0, import_vitest.expect)(consoleError).toHaveBeenCalledWith("[on-zero] async task failed", error);
|
|
201
|
+
});
|
|
202
|
+
consoleError.mockRestore();
|
|
203
|
+
});
|
|
126
204
|
(0, import_vitest.test)("persists alreadyProcessed duplicate results for zero-cache recovery rows", async () => {
|
|
127
205
|
const pg = new FakePgClient();
|
|
128
206
|
const zeroServer = (0, import_createZeroServer.createZeroServer)({
|
|
@@ -149,7 +149,7 @@ function pushRequest(mutationIDs) {
|
|
|
149
149
|
var {
|
|
150
150
|
server
|
|
151
151
|
} = param;
|
|
152
|
-
server === null || server === void 0 ? void 0 : server.
|
|
152
|
+
server === null || server === void 0 ? void 0 : server.enqueueTask(async function () {
|
|
153
153
|
effectRuns++;
|
|
154
154
|
});
|
|
155
155
|
throw new Error("rejected");
|
|
@@ -174,6 +174,90 @@ function pushRequest(mutationIDs) {
|
|
|
174
174
|
(0, import_vitest.expect)(result.asyncTasks).toEqual([]);
|
|
175
175
|
(0, import_vitest.expect)(effectRuns).toBe(0);
|
|
176
176
|
});
|
|
177
|
+
(0, import_vitest.test)("awaits barrier tasks before resolving the push response", async function () {
|
|
178
|
+
var pg = new FakePgClient();
|
|
179
|
+
var releaseBarrier;
|
|
180
|
+
var markBarrierStarted;
|
|
181
|
+
var barrierStarted = new Promise(function (resolve) {
|
|
182
|
+
markBarrierStarted = resolve;
|
|
183
|
+
});
|
|
184
|
+
var barrier = new Promise(function (resolve) {
|
|
185
|
+
releaseBarrier = resolve;
|
|
186
|
+
});
|
|
187
|
+
var zeroServer = (0, import_createZeroServer.createZeroServer)({
|
|
188
|
+
schema: import_fixtureSchema.zeroHttpFixtureSchema,
|
|
189
|
+
models: {
|
|
190
|
+
project: {
|
|
191
|
+
mutate: {
|
|
192
|
+
touch: async function (param) {
|
|
193
|
+
var {
|
|
194
|
+
server
|
|
195
|
+
} = param;
|
|
196
|
+
server === null || server === void 0 ? void 0 : server.enqueueTask(async function () {
|
|
197
|
+
markBarrierStarted();
|
|
198
|
+
await barrier;
|
|
199
|
+
}, {
|
|
200
|
+
barrier: true
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
createServerActions: function () {
|
|
207
|
+
return {};
|
|
208
|
+
},
|
|
209
|
+
pool: pg
|
|
210
|
+
});
|
|
211
|
+
var responseResolved = false;
|
|
212
|
+
var resultPromise = zeroServer.handleMutationRequest({
|
|
213
|
+
authData: null,
|
|
214
|
+
request: pushRequest(1)
|
|
215
|
+
}).then(function (result2) {
|
|
216
|
+
responseResolved = true;
|
|
217
|
+
return result2;
|
|
218
|
+
});
|
|
219
|
+
await barrierStarted;
|
|
220
|
+
await Promise.resolve();
|
|
221
|
+
(0, import_vitest.expect)(responseResolved).toBe(false);
|
|
222
|
+
releaseBarrier();
|
|
223
|
+
var result = await resultPromise;
|
|
224
|
+
(0, import_vitest.expect)(result.response.mutations[0].result).toEqual({});
|
|
225
|
+
});
|
|
226
|
+
(0, import_vitest.test)("does not fail the push when a background task rejects", async function () {
|
|
227
|
+
var pg = new FakePgClient();
|
|
228
|
+
var error = new Error("background failed");
|
|
229
|
+
var consoleError = import_vitest.vi.spyOn(console, "error").mockImplementation(function () {});
|
|
230
|
+
var zeroServer = (0, import_createZeroServer.createZeroServer)({
|
|
231
|
+
schema: import_fixtureSchema.zeroHttpFixtureSchema,
|
|
232
|
+
models: {
|
|
233
|
+
project: {
|
|
234
|
+
mutate: {
|
|
235
|
+
touch: async function (param) {
|
|
236
|
+
var {
|
|
237
|
+
server
|
|
238
|
+
} = param;
|
|
239
|
+
server === null || server === void 0 ? void 0 : server.enqueueTask(async function () {
|
|
240
|
+
throw error;
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
},
|
|
246
|
+
createServerActions: function () {
|
|
247
|
+
return {};
|
|
248
|
+
},
|
|
249
|
+
pool: pg
|
|
250
|
+
});
|
|
251
|
+
var result = await zeroServer.handleMutationRequest({
|
|
252
|
+
authData: null,
|
|
253
|
+
request: pushRequest(1)
|
|
254
|
+
});
|
|
255
|
+
(0, import_vitest.expect)(result.response.mutations[0].result).toEqual({});
|
|
256
|
+
await import_vitest.vi.waitFor(function () {
|
|
257
|
+
(0, import_vitest.expect)(consoleError).toHaveBeenCalledWith("[on-zero] async task failed", error);
|
|
258
|
+
});
|
|
259
|
+
consoleError.mockRestore();
|
|
260
|
+
});
|
|
177
261
|
(0, import_vitest.test)("persists alreadyProcessed duplicate results for zero-cache recovery rows", async function () {
|
|
178
262
|
var pg = new FakePgClient();
|
|
179
263
|
var zeroServer = (0, import_createZeroServer.createZeroServer)({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["import_vitest","require","import_createZeroServer","import_fixtureSchema","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","FakePgClient","FakePgClient2","query","sql","params","arguments","pendingLastMutationID","rows","lastMutationID","includes","nextMutationID","schemaRows","mutationResultInserts","push","Error","table","columns","map","column","schema","dataType","precision","scale","typtype","typename","elemTyptype","elemTypname","pushRequest","mutationIDs","ids","Array","isArray","Request","method","headers","body","JSON","stringify","clientGroupID","mutations","mutationID","type","id","clientID","name","args","timestamp","pushVersion","requestID","join","describe","test","pg","effectRuns","zeroServer","createZeroServer","zeroHttpFixtureSchema","models","project","mutate","touch","param","server","
|
|
1
|
+
{"version":3,"names":["import_vitest","require","import_createZeroServer","import_fixtureSchema","_class_call_check","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_create_class","protoProps","staticProps","prototype","_define_property","obj","value","FakePgClient","FakePgClient2","query","sql","params","arguments","pendingLastMutationID","rows","lastMutationID","includes","nextMutationID","schemaRows","mutationResultInserts","push","Error","table","columns","map","column","schema","dataType","precision","scale","typtype","typename","elemTyptype","elemTypname","pushRequest","mutationIDs","ids","Array","isArray","Request","method","headers","body","JSON","stringify","clientGroupID","mutations","mutationID","type","id","clientID","name","args","timestamp","pushVersion","requestID","join","describe","test","pg","effectRuns","zeroServer","createZeroServer","zeroHttpFixtureSchema","models","project","mutate","touch","param","server","enqueueTask","createServerActions","pool","result","handleMutationRequest","authData","request","skipAsyncTasks","expect","response","toMatchObject","error","message","asyncTasks","toEqual","toBe","releaseBarrier","markBarrierStarted","barrierStarted","Promise","resolve","barrier","responseResolved","resultPromise","then","result2","consoleError","vi","spyOn","console","mockImplementation","waitFor","toHaveBeenCalledWith"],"sources":["../../src/createZeroServer.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -22,120 +22,20 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
|
22
22
|
}), mod);
|
|
23
23
|
var createZeroServerCore_exports = {};
|
|
24
24
|
__export(createZeroServerCore_exports, {
|
|
25
|
-
createZeroServerCore: () => createZeroServerCore
|
|
26
|
-
resolveServerQuery: () => resolveServerQuery
|
|
25
|
+
createZeroServerCore: () => createZeroServerCore
|
|
27
26
|
});
|
|
28
27
|
module.exports = __toCommonJS(createZeroServerCore_exports);
|
|
29
|
-
var import_zero = require("@rocicorp/zero");
|
|
30
28
|
var import_server = require("@rocicorp/zero/server");
|
|
31
|
-
var
|
|
29
|
+
var import_asyncTasks = require("./asyncTasks.cjs");
|
|
30
|
+
var import_createZeroDirectServer = require("./createZeroDirectServer.cjs");
|
|
32
31
|
var import_createMutators = require("./helpers/createMutators.cjs");
|
|
33
32
|
var import_mutatorContext = require("./helpers/mutatorContext.cjs");
|
|
34
33
|
var import_queryContext = require("./helpers/queryContext.cjs");
|
|
35
|
-
var import_modelRegistry = require("./modelRegistry.cjs");
|
|
36
|
-
var import_run = require("./run.cjs");
|
|
37
|
-
var import_state = require("./state.cjs");
|
|
38
|
-
var import_where = require("./where.cjs");
|
|
39
|
-
var import_zeroRunner = require("./zeroRunner.cjs");
|
|
40
|
-
function resolveServerQuery({
|
|
41
|
-
authData,
|
|
42
|
-
name,
|
|
43
|
-
args,
|
|
44
|
-
queries,
|
|
45
|
-
permissions,
|
|
46
|
-
validateQuery
|
|
47
|
-
}) {
|
|
48
|
-
if (name.startsWith("permission.")) {
|
|
49
|
-
const table = name.slice("permission.".length);
|
|
50
|
-
const {
|
|
51
|
-
objOrId
|
|
52
|
-
} = args;
|
|
53
|
-
const permission = (0, import_modelRegistry.getMutationsPermissions)(table);
|
|
54
|
-
if (!permission) {
|
|
55
|
-
throw new Error(`[permission] no permission defined for table: ${table}`);
|
|
56
|
-
}
|
|
57
|
-
(0, import_where.setEvaluatingPermission)(true);
|
|
58
|
-
try {
|
|
59
|
-
return (0, import_state.getZQL)()[table].where(eb => {
|
|
60
|
-
return permissions.buildPermissionQuery(authData, eb, permission, objOrId, table);
|
|
61
|
-
}).one();
|
|
62
|
-
} finally {
|
|
63
|
-
(0, import_where.setEvaluatingPermission)(false);
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
if (validateQuery) {
|
|
67
|
-
validateQuery({
|
|
68
|
-
authData,
|
|
69
|
-
queryName: name,
|
|
70
|
-
params: args
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
const query = (0, import_zero.mustGetQuery)(queries, name);
|
|
74
|
-
return query.fn({
|
|
75
|
-
args,
|
|
76
|
-
ctx: authData
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
function createAsyncTaskCollector() {
|
|
80
|
-
const committed = [];
|
|
81
|
-
let attempt;
|
|
82
|
-
let completedAttempt;
|
|
83
|
-
const current = () => attempt ?? committed;
|
|
84
|
-
const queue = new Proxy([], {
|
|
85
|
-
deleteProperty(_target, property) {
|
|
86
|
-
return Reflect.deleteProperty(current(), property);
|
|
87
|
-
},
|
|
88
|
-
get(_target, property) {
|
|
89
|
-
const target = current();
|
|
90
|
-
const value = Reflect.get(target, property, target);
|
|
91
|
-
return typeof value === "function" ? value.bind(target) : value;
|
|
92
|
-
},
|
|
93
|
-
getOwnPropertyDescriptor(_target, property) {
|
|
94
|
-
return Reflect.getOwnPropertyDescriptor(current(), property);
|
|
95
|
-
},
|
|
96
|
-
has(_target, property) {
|
|
97
|
-
return Reflect.has(current(), property);
|
|
98
|
-
},
|
|
99
|
-
ownKeys() {
|
|
100
|
-
return Reflect.ownKeys(current());
|
|
101
|
-
},
|
|
102
|
-
set(_target, property, value) {
|
|
103
|
-
return Reflect.set(current(), property, value);
|
|
104
|
-
}
|
|
105
|
-
});
|
|
106
|
-
const lifecycle = {
|
|
107
|
-
beginAttempt() {
|
|
108
|
-
attempt = [];
|
|
109
|
-
completedAttempt = void 0;
|
|
110
|
-
},
|
|
111
|
-
completeAttempt() {
|
|
112
|
-
completedAttempt = attempt;
|
|
113
|
-
attempt = void 0;
|
|
114
|
-
},
|
|
115
|
-
rollbackAttempt() {
|
|
116
|
-
attempt = void 0;
|
|
117
|
-
completedAttempt = void 0;
|
|
118
|
-
},
|
|
119
|
-
commitTransaction() {
|
|
120
|
-
if (completedAttempt) committed.push(...completedAttempt);
|
|
121
|
-
completedAttempt = void 0;
|
|
122
|
-
},
|
|
123
|
-
rollbackTransaction() {
|
|
124
|
-
attempt = void 0;
|
|
125
|
-
completedAttempt = void 0;
|
|
126
|
-
}
|
|
127
|
-
};
|
|
128
|
-
return {
|
|
129
|
-
committed,
|
|
130
|
-
lifecycle,
|
|
131
|
-
queue
|
|
132
|
-
};
|
|
133
|
-
}
|
|
134
34
|
function createZeroServerCore({
|
|
135
35
|
createDatabase,
|
|
136
36
|
createServerActions,
|
|
137
37
|
defaultAllowAdminRole = "all",
|
|
138
|
-
defaultMutateAuthData
|
|
38
|
+
defaultMutateAuthData,
|
|
139
39
|
models,
|
|
140
40
|
mutations: mutationValidators,
|
|
141
41
|
persistAlreadyProcessed,
|
|
@@ -144,22 +44,30 @@ function createZeroServerCore({
|
|
|
144
44
|
validateMutation,
|
|
145
45
|
validateQuery
|
|
146
46
|
}) {
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
47
|
+
const {
|
|
48
|
+
permissions,
|
|
49
|
+
server
|
|
50
|
+
} = (0, import_createZeroDirectServer.createZeroDirectServerRuntime)({
|
|
51
|
+
createDatabase,
|
|
52
|
+
createServerActions,
|
|
53
|
+
defaultAllowAdminRole,
|
|
54
|
+
defaultMutateAuthData,
|
|
55
|
+
models,
|
|
56
|
+
mutations: mutationValidators,
|
|
57
|
+
queries,
|
|
151
58
|
schema,
|
|
152
|
-
|
|
59
|
+
validateMutation,
|
|
60
|
+
validateQuery
|
|
153
61
|
});
|
|
154
62
|
const handleMutationRequest = async ({
|
|
155
63
|
authData,
|
|
156
64
|
request,
|
|
157
65
|
skipAsyncTasks
|
|
158
66
|
}) => {
|
|
159
|
-
const tasks = createAsyncTaskCollector();
|
|
67
|
+
const tasks = (0, import_createZeroDirectServer.createAsyncTaskCollector)();
|
|
160
68
|
const recoveryRequest = request.clone();
|
|
161
69
|
const mutators = (0, import_createMutators.createMutators)({
|
|
162
|
-
|
|
70
|
+
enqueueTask: tasks.enqueueTask,
|
|
163
71
|
can: permissions.can,
|
|
164
72
|
createServerActions,
|
|
165
73
|
environment: "server",
|
|
@@ -175,8 +83,12 @@ function createZeroServerCore({
|
|
|
175
83
|
if (parsed) await persistAlreadyProcessed(parsed);
|
|
176
84
|
}
|
|
177
85
|
if (!skipAsyncTasks && tasks.committed.length) {
|
|
178
|
-
|
|
179
|
-
|
|
86
|
+
const entries = tasks.committed.map(entry => ({
|
|
87
|
+
...entry,
|
|
88
|
+
task: () => (0, import_mutatorContext.runWithAuthScope)(authData, entry.task)
|
|
89
|
+
}));
|
|
90
|
+
await (0, import_asyncTasks.runAsyncTaskEntries)(entries, {
|
|
91
|
+
background: () => void 0
|
|
180
92
|
});
|
|
181
93
|
}
|
|
182
94
|
return {
|
|
@@ -191,7 +103,7 @@ function createZeroServerCore({
|
|
|
191
103
|
if (!queries) {
|
|
192
104
|
throw new Error("No queries registered with createZeroServer. Pass the syncedQueries registry to createZeroServer via the queries option.");
|
|
193
105
|
}
|
|
194
|
-
const handler = (name, args) => resolveServerQuery({
|
|
106
|
+
const handler = (name, args) => (0, import_createZeroDirectServer.resolveServerQuery)({
|
|
195
107
|
authData,
|
|
196
108
|
name,
|
|
197
109
|
args,
|
|
@@ -214,96 +126,10 @@ function createZeroServerCore({
|
|
|
214
126
|
response
|
|
215
127
|
};
|
|
216
128
|
};
|
|
217
|
-
async function runTransaction(database, query2) {
|
|
218
|
-
try {
|
|
219
|
-
if ((0, import_mutatorContext.isInZeroMutation)()) {
|
|
220
|
-
const {
|
|
221
|
-
tx
|
|
222
|
-
} = (0, import_mutatorContext.mutatorContext)();
|
|
223
|
-
return await query2(tx);
|
|
224
|
-
}
|
|
225
|
-
return await database.transaction(query2, dummyTransactionInput);
|
|
226
|
-
} catch (err) {
|
|
227
|
-
if (err?.name !== "PermissionError") {
|
|
228
|
-
console.error(`Error running transaction(): ${err}`);
|
|
229
|
-
}
|
|
230
|
-
throw err;
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
async function transaction(query2) {
|
|
234
|
-
return runTransaction(createDatabase(), query2);
|
|
235
|
-
}
|
|
236
|
-
async function runMutate(modelName, mutatorName, mutatorArg, options) {
|
|
237
|
-
let authData = options?.authData;
|
|
238
|
-
if (!authData) {
|
|
239
|
-
const scoped = (0, import_mutatorContext.getScopedAuthData)();
|
|
240
|
-
if (scoped) authData = scoped;
|
|
241
|
-
}
|
|
242
|
-
const tasks = createAsyncTaskCollector();
|
|
243
|
-
const mutators = (0, import_createMutators.createMutators)({
|
|
244
|
-
models,
|
|
245
|
-
environment: "server",
|
|
246
|
-
asyncTasks: tasks.queue,
|
|
247
|
-
authData: {
|
|
248
|
-
...defaultMutateAuthData,
|
|
249
|
-
...authData
|
|
250
|
-
},
|
|
251
|
-
createServerActions,
|
|
252
|
-
can: permissions.can,
|
|
253
|
-
validateMutation,
|
|
254
|
-
mutationValidators
|
|
255
|
-
});
|
|
256
|
-
const modelMutators = mutators[modelName];
|
|
257
|
-
const mutator = modelMutators[mutatorName];
|
|
258
|
-
await runTransaction(withTransactionLifecycle(createDatabase(), tasks.lifecycle), async tx => {
|
|
259
|
-
await mutator(tx, mutatorArg);
|
|
260
|
-
});
|
|
261
|
-
if (tasks.committed.length) {
|
|
262
|
-
const resolvedAuth = authData ?? null;
|
|
263
|
-
const promise = Promise.all(tasks.committed.map(task => (0, import_mutatorContext.runWithAuthScope)(resolvedAuth, task)));
|
|
264
|
-
if (options?.awaitEffects) {
|
|
265
|
-
await promise;
|
|
266
|
-
} else {
|
|
267
|
-
promise.catch(err => {
|
|
268
|
-
console.error("[mutate] async tasks failed", err);
|
|
269
|
-
});
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
}
|
|
273
|
-
const mutate = new Proxy({}, {
|
|
274
|
-
get(_, modelName) {
|
|
275
|
-
return new Proxy({}, {
|
|
276
|
-
get(_2, mutatorName) {
|
|
277
|
-
return (arg, options) => runMutate(modelName, mutatorName, arg, options);
|
|
278
|
-
}
|
|
279
|
-
});
|
|
280
|
-
}
|
|
281
|
-
});
|
|
282
|
-
function query(cb, authData) {
|
|
283
|
-
const run = () => transaction(async tx => {
|
|
284
|
-
return tx.run(cb((0, import_state.getZQL)()));
|
|
285
|
-
});
|
|
286
|
-
if (authData !== void 0) {
|
|
287
|
-
return (0, import_queryContext.runWithQueryContext)({
|
|
288
|
-
authData
|
|
289
|
-
}, run);
|
|
290
|
-
}
|
|
291
|
-
return run();
|
|
292
|
-
}
|
|
293
|
-
if (queries) {
|
|
294
|
-
(0, import_run.setCustomQueries)(queries);
|
|
295
|
-
}
|
|
296
|
-
(0, import_zeroRunner.setRunner)(queryObj => {
|
|
297
|
-
return transaction(async tx => {
|
|
298
|
-
return tx.run(queryObj);
|
|
299
|
-
});
|
|
300
|
-
});
|
|
301
129
|
return {
|
|
302
130
|
handleMutationRequest,
|
|
303
131
|
handleQueryRequest,
|
|
304
|
-
|
|
305
|
-
mutate,
|
|
306
|
-
query
|
|
132
|
+
...server
|
|
307
133
|
};
|
|
308
134
|
}
|
|
309
135
|
function withTransactionLifecycle(database, lifecycle) {
|
|
@@ -353,10 +179,4 @@ function alreadyProcessedMutations(response) {
|
|
|
353
179
|
const result = mutation.result;
|
|
354
180
|
return !!id && typeof id === "object" && typeof id.clientID === "string" && typeof id.id === "number" && !!result && typeof result === "object" && result.error === "alreadyProcessed";
|
|
355
181
|
});
|
|
356
|
-
}
|
|
357
|
-
const dummyTransactionInput = {
|
|
358
|
-
clientGroupID: "unused",
|
|
359
|
-
clientID: "unused",
|
|
360
|
-
mutationID: 42,
|
|
361
|
-
upstreamSchema: "unused"
|
|
362
|
-
};
|
|
182
|
+
}
|