on-zero 0.1.39 → 0.1.41
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/createUseQuery.cjs +3 -2
- package/dist/cjs/createUseQuery.js +2 -2
- package/dist/cjs/createUseQuery.js.map +1 -1
- package/dist/cjs/createUseQuery.native.js +3 -2
- package/dist/cjs/createUseQuery.native.js.map +1 -1
- package/dist/cjs/createZeroClient.cjs +28 -5
- package/dist/cjs/createZeroClient.js +19 -4
- package/dist/cjs/createZeroClient.js.map +1 -1
- package/dist/cjs/createZeroClient.native.js +29 -5
- package/dist/cjs/createZeroClient.native.js.map +1 -1
- package/dist/cjs/createZeroServer.cjs +5 -2
- package/dist/cjs/createZeroServer.js +5 -2
- package/dist/cjs/createZeroServer.js.map +1 -1
- package/dist/cjs/createZeroServer.native.js +5 -2
- package/dist/cjs/createZeroServer.native.js.map +1 -1
- package/dist/cjs/generate.cjs +458 -39
- package/dist/cjs/generate.js +485 -31
- package/dist/cjs/generate.js.map +2 -2
- package/dist/cjs/generate.native.js +812 -51
- package/dist/cjs/generate.native.js.map +1 -1
- package/dist/cjs/generate.test.cjs +251 -0
- package/dist/cjs/generate.test.js +252 -0
- package/dist/cjs/generate.test.js.map +1 -1
- package/dist/cjs/generate.test.native.js +251 -0
- package/dist/cjs/generate.test.native.js.map +1 -1
- package/dist/cjs/helpers/createMutators.cjs +21 -8
- package/dist/cjs/helpers/createMutators.js +16 -6
- package/dist/cjs/helpers/createMutators.js.map +1 -1
- package/dist/cjs/helpers/createMutators.native.js +28 -10
- package/dist/cjs/helpers/createMutators.native.js.map +1 -1
- package/dist/esm/createUseQuery.js +3 -3
- package/dist/esm/createUseQuery.js.map +1 -1
- package/dist/esm/createUseQuery.mjs +4 -3
- package/dist/esm/createUseQuery.mjs.map +1 -1
- package/dist/esm/createUseQuery.native.js +4 -3
- package/dist/esm/createUseQuery.native.js.map +1 -1
- package/dist/esm/createZeroClient.js +19 -4
- package/dist/esm/createZeroClient.js.map +1 -1
- package/dist/esm/createZeroClient.mjs +28 -5
- package/dist/esm/createZeroClient.mjs.map +1 -1
- package/dist/esm/createZeroClient.native.js +29 -5
- package/dist/esm/createZeroClient.native.js.map +1 -1
- package/dist/esm/createZeroServer.js +5 -2
- package/dist/esm/createZeroServer.js.map +1 -1
- package/dist/esm/createZeroServer.mjs +5 -2
- package/dist/esm/createZeroServer.mjs.map +1 -1
- package/dist/esm/createZeroServer.native.js +5 -2
- package/dist/esm/createZeroServer.native.js.map +1 -1
- package/dist/esm/generate.js +486 -32
- package/dist/esm/generate.js.map +2 -2
- package/dist/esm/generate.mjs +459 -40
- package/dist/esm/generate.mjs.map +1 -1
- package/dist/esm/generate.native.js +813 -52
- package/dist/esm/generate.native.js.map +1 -1
- package/dist/esm/generate.test.js +252 -0
- package/dist/esm/generate.test.js.map +1 -1
- package/dist/esm/generate.test.mjs +251 -0
- package/dist/esm/generate.test.mjs.map +1 -1
- package/dist/esm/generate.test.native.js +251 -0
- package/dist/esm/generate.test.native.js.map +1 -1
- package/dist/esm/helpers/createMutators.js +6 -4
- package/dist/esm/helpers/createMutators.js.map +1 -1
- package/dist/esm/helpers/createMutators.mjs +6 -4
- package/dist/esm/helpers/createMutators.mjs.map +1 -1
- package/dist/esm/helpers/createMutators.native.js +13 -6
- package/dist/esm/helpers/createMutators.native.js.map +1 -1
- package/package.json +2 -2
- package/readme.md +110 -2
- package/src/createUseQuery.tsx +15 -6
- package/src/createZeroClient.tsx +42 -6
- package/src/createZeroServer.ts +9 -0
- package/src/generate.test.ts +340 -0
- package/src/generate.ts +863 -43
- package/src/helpers/createMutators.ts +22 -8
- package/types/createUseQuery.d.ts +2 -1
- package/types/createUseQuery.d.ts.map +1 -1
- package/types/createZeroClient.d.ts +10 -1
- package/types/createZeroClient.d.ts.map +1 -1
- package/types/createZeroServer.d.ts +7 -1
- package/types/createZeroServer.d.ts.map +1 -1
- package/types/generate.d.ts +1 -0
- package/types/generate.d.ts.map +1 -1
- package/types/helpers/createMutators.d.ts +3 -1
- package/types/helpers/createMutators.d.ts.map +1 -1
|
@@ -113,4 +113,255 @@ export const allPosts = () => zero.query.post
|
|
|
113
113
|
(0, import_vitest.expect)(second.filesChanged).toBe(0);
|
|
114
114
|
});
|
|
115
115
|
});
|
|
116
|
+
(0, import_vitest.describe)("mutations", function () {
|
|
117
|
+
(0, import_vitest.test)("generates validators for inline mutation param types", async function () {
|
|
118
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/post.ts"), `
|
|
119
|
+
import { table, string } from 'on-zero'
|
|
120
|
+
import { mutations, serverWhere } from 'on-zero'
|
|
121
|
+
|
|
122
|
+
export const schema = table('post').columns({
|
|
123
|
+
id: string(),
|
|
124
|
+
title: string(),
|
|
125
|
+
}).primaryKey('id')
|
|
126
|
+
|
|
127
|
+
const perm = serverWhere('post', () => true)
|
|
128
|
+
|
|
129
|
+
export const mutate = mutations(schema, perm, {
|
|
130
|
+
archive: async ({ tx }, { id, reason }: { id: string; reason: string }) => {
|
|
131
|
+
await tx.mutate.post.update({ id, archived: true })
|
|
132
|
+
},
|
|
133
|
+
})
|
|
134
|
+
`);
|
|
135
|
+
var result = await (0, import_generate.generate)({
|
|
136
|
+
dir: testDir,
|
|
137
|
+
silent: !0
|
|
138
|
+
});
|
|
139
|
+
(0, import_vitest.expect)(result.mutationCount).toBeGreaterThan(0), (0, import_vitest.expect)((0, import_fs.existsSync)((0, import_path.join)(testDir, "generated/syncedMutations.ts"))).toBe(!0);
|
|
140
|
+
var content = (0, import_fs.readFileSync)((0, import_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
141
|
+
(0, import_vitest.expect)(content).toContain("archive"), (0, import_vitest.expect)(content).toContain("v.object"), (0, import_vitest.expect)(content).toContain("v.string()");
|
|
142
|
+
}), (0, import_vitest.test)("generates CRUD validators from schema columns", async function () {
|
|
143
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/task.ts"), `
|
|
144
|
+
import { table, string, number, boolean } from 'on-zero'
|
|
145
|
+
import { mutations, serverWhere } from 'on-zero'
|
|
146
|
+
|
|
147
|
+
export const schema = table('task').columns({
|
|
148
|
+
id: string(),
|
|
149
|
+
title: string(),
|
|
150
|
+
priority: number(),
|
|
151
|
+
done: boolean(),
|
|
152
|
+
note: string().optional(),
|
|
153
|
+
}).primaryKey('id')
|
|
154
|
+
|
|
155
|
+
const perm = serverWhere('task', () => true)
|
|
156
|
+
|
|
157
|
+
export const mutate = mutations(schema, perm)
|
|
158
|
+
`);
|
|
159
|
+
var result = await (0, import_generate.generate)({
|
|
160
|
+
dir: testDir,
|
|
161
|
+
silent: !0
|
|
162
|
+
}),
|
|
163
|
+
content = (0, import_fs.readFileSync)((0, import_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
164
|
+
(0, import_vitest.expect)(content).toContain("insert:"), (0, import_vitest.expect)(content).toMatch(/insert:.*v\.object/), (0, import_vitest.expect)(content).toContain("update:"), (0, import_vitest.expect)(content).toContain("delete:");
|
|
165
|
+
}), (0, import_vitest.test)("skips models without export const mutate", async function () {
|
|
166
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/readonly.ts"), `
|
|
167
|
+
import { table, string } from 'on-zero'
|
|
168
|
+
|
|
169
|
+
export const schema = table('readonly').columns({
|
|
170
|
+
id: string(),
|
|
171
|
+
name: string(),
|
|
172
|
+
}).primaryKey('id')
|
|
173
|
+
`);
|
|
174
|
+
var result = await (0, import_generate.generate)({
|
|
175
|
+
dir: testDir,
|
|
176
|
+
silent: !0
|
|
177
|
+
});
|
|
178
|
+
(0, import_vitest.expect)(result.mutationCount).toBe(0);
|
|
179
|
+
}), (0, import_vitest.test)("extracts custom mutations from bare mutations({})", async function () {
|
|
180
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/admin.ts"), `
|
|
181
|
+
import { mutations } from 'on-zero'
|
|
182
|
+
|
|
183
|
+
export const mutate = mutations({
|
|
184
|
+
reset: async ({ tx }, { targetId }: { targetId: string }) => {
|
|
185
|
+
await tx.mutate.admin.delete({ id: targetId })
|
|
186
|
+
},
|
|
187
|
+
})
|
|
188
|
+
`);
|
|
189
|
+
var result = await (0, import_generate.generate)({
|
|
190
|
+
dir: testDir,
|
|
191
|
+
silent: !0
|
|
192
|
+
}),
|
|
193
|
+
content = (0, import_fs.readFileSync)((0, import_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
194
|
+
(0, import_vitest.expect)(content).toContain("reset"), (0, import_vitest.expect)(content).toContain("v.string()");
|
|
195
|
+
}), (0, import_vitest.test)("handles mutations with only context param (void)", async function () {
|
|
196
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/user.ts"), `
|
|
197
|
+
import { table, string } from 'on-zero'
|
|
198
|
+
import { mutations, serverWhere } from 'on-zero'
|
|
199
|
+
|
|
200
|
+
export const schema = table('user').columns({
|
|
201
|
+
id: string(),
|
|
202
|
+
name: string(),
|
|
203
|
+
}).primaryKey('id')
|
|
204
|
+
|
|
205
|
+
const perm = serverWhere('user', () => true)
|
|
206
|
+
|
|
207
|
+
export const mutate = mutations(schema, perm, {
|
|
208
|
+
finishOnboarding: async ({ tx }) => {
|
|
209
|
+
// no second param
|
|
210
|
+
},
|
|
211
|
+
})
|
|
212
|
+
`);
|
|
213
|
+
var result = await (0, import_generate.generate)({
|
|
214
|
+
dir: testDir,
|
|
215
|
+
silent: !0
|
|
216
|
+
}),
|
|
217
|
+
content = (0, import_fs.readFileSync)((0, import_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
218
|
+
(0, import_vitest.expect)(content).toContain("finishOnboarding");
|
|
219
|
+
}), (0, import_vitest.test)("handles primitive param type", async function () {
|
|
220
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/user.ts"), `
|
|
221
|
+
import { table, string } from 'on-zero'
|
|
222
|
+
import { mutations, serverWhere } from 'on-zero'
|
|
223
|
+
|
|
224
|
+
export const schema = table('user').columns({
|
|
225
|
+
id: string(),
|
|
226
|
+
name: string(),
|
|
227
|
+
}).primaryKey('id')
|
|
228
|
+
|
|
229
|
+
const perm = serverWhere('user', () => true)
|
|
230
|
+
|
|
231
|
+
export const mutate = mutations(schema, perm, {
|
|
232
|
+
completeSignup: async ({ tx }, userId: string) => {
|
|
233
|
+
await tx.mutate.user.update({ id: userId })
|
|
234
|
+
},
|
|
235
|
+
})
|
|
236
|
+
`);
|
|
237
|
+
var result = await (0, import_generate.generate)({
|
|
238
|
+
dir: testDir,
|
|
239
|
+
silent: !0
|
|
240
|
+
}),
|
|
241
|
+
content = (0, import_fs.readFileSync)((0, import_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
242
|
+
(0, import_vitest.expect)(content).toContain("completeSignup"), (0, import_vitest.expect)(content).toContain("v.string()");
|
|
243
|
+
}), (0, import_vitest.test)("handles array param type", async function () {
|
|
244
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/batch.ts"), `
|
|
245
|
+
import { mutations } from 'on-zero'
|
|
246
|
+
|
|
247
|
+
export const mutate = mutations({
|
|
248
|
+
bulkDelete: async ({ tx }, ids: Array<{ id: string }>) => {
|
|
249
|
+
for (const { id } of ids) await tx.mutate.batch.delete({ id })
|
|
250
|
+
},
|
|
251
|
+
})
|
|
252
|
+
`);
|
|
253
|
+
var result = await (0, import_generate.generate)({
|
|
254
|
+
dir: testDir,
|
|
255
|
+
silent: !0
|
|
256
|
+
}),
|
|
257
|
+
content = (0, import_fs.readFileSync)((0, import_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
258
|
+
(0, import_vitest.expect)(content).toContain("bulkDelete"), (0, import_vitest.expect)(content).toContain("v.array");
|
|
259
|
+
}), (0, import_vitest.test)("populates mutationCount and caching works", async function () {
|
|
260
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/item.ts"), `
|
|
261
|
+
import { table, string } from 'on-zero'
|
|
262
|
+
import { mutations, serverWhere } from 'on-zero'
|
|
263
|
+
|
|
264
|
+
export const schema = table('item').columns({
|
|
265
|
+
id: string(),
|
|
266
|
+
name: string(),
|
|
267
|
+
}).primaryKey('id')
|
|
268
|
+
|
|
269
|
+
const perm = serverWhere('item', () => true)
|
|
270
|
+
|
|
271
|
+
export const mutate = mutations(schema, perm, {
|
|
272
|
+
rename: async ({ tx }, { id, name }: { id: string; name: string }) => {
|
|
273
|
+
await tx.mutate.item.update({ id, name })
|
|
274
|
+
},
|
|
275
|
+
})
|
|
276
|
+
`);
|
|
277
|
+
var first = await (0, import_generate.generate)({
|
|
278
|
+
dir: testDir,
|
|
279
|
+
silent: !0
|
|
280
|
+
});
|
|
281
|
+
(0, import_vitest.expect)(first.mutationCount).toBeGreaterThan(0);
|
|
282
|
+
var second = await (0, import_generate.generate)({
|
|
283
|
+
dir: testDir,
|
|
284
|
+
silent: !0
|
|
285
|
+
});
|
|
286
|
+
(0, import_vitest.expect)(second.filesChanged).toBe(0), (0, import_vitest.expect)(second.mutationCount).toBe(first.mutationCount);
|
|
287
|
+
});
|
|
288
|
+
});
|
|
289
|
+
(0, import_vitest.describe)("type resolution", function () {
|
|
290
|
+
(0, import_vitest.test)("resolves imported type references for mutations", async function () {
|
|
291
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/types.ts"), `
|
|
292
|
+
export type ArchiveParams = {
|
|
293
|
+
id: string
|
|
294
|
+
reason: string
|
|
295
|
+
archived: boolean
|
|
296
|
+
}
|
|
297
|
+
`), (0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/post.ts"), `
|
|
298
|
+
import { table, string, boolean } from 'on-zero'
|
|
299
|
+
import { mutations } from 'on-zero'
|
|
300
|
+
import type { ArchiveParams } from './types'
|
|
301
|
+
|
|
302
|
+
export const mutate = mutations({
|
|
303
|
+
archive: async ({ tx }, params: ArchiveParams) => {
|
|
304
|
+
await tx.mutate.post.update(params)
|
|
305
|
+
},
|
|
306
|
+
})
|
|
307
|
+
`);
|
|
308
|
+
var result = await (0, import_generate.generate)({
|
|
309
|
+
dir: testDir,
|
|
310
|
+
silent: !0
|
|
311
|
+
}),
|
|
312
|
+
content = (0, import_fs.readFileSync)((0, import_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
313
|
+
(0, import_vitest.expect)(content).toContain("v.string()"), (0, import_vitest.expect)(content).toContain("v.boolean()"), (0, import_vitest.expect)(content).toContain("reason"), (0, import_vitest.expect)(content).toContain("archived");
|
|
314
|
+
}), (0, import_vitest.test)("resolves utility types like Pick", async function () {
|
|
315
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/types.ts"), `
|
|
316
|
+
export type Item = {
|
|
317
|
+
id: string
|
|
318
|
+
name: string
|
|
319
|
+
description: string
|
|
320
|
+
count: number
|
|
321
|
+
}
|
|
322
|
+
`), (0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/item.ts"), `
|
|
323
|
+
import { table, string, number } from 'on-zero'
|
|
324
|
+
import { mutations, serverWhere } from 'on-zero'
|
|
325
|
+
import type { Item } from './types'
|
|
326
|
+
|
|
327
|
+
export const schema = table('item').columns({
|
|
328
|
+
id: string(),
|
|
329
|
+
name: string(),
|
|
330
|
+
description: string(),
|
|
331
|
+
count: number(),
|
|
332
|
+
}).primaryKey('id')
|
|
333
|
+
|
|
334
|
+
const perm = serverWhere('item', () => true)
|
|
335
|
+
|
|
336
|
+
export const mutate = mutations(schema, perm, {
|
|
337
|
+
rename: async ({ tx }, updates: Pick<Item, 'id' | 'name'>) => {
|
|
338
|
+
await tx.mutate.item.update(updates)
|
|
339
|
+
},
|
|
340
|
+
})
|
|
341
|
+
`);
|
|
342
|
+
var result = await (0, import_generate.generate)({
|
|
343
|
+
dir: testDir,
|
|
344
|
+
silent: !0
|
|
345
|
+
}),
|
|
346
|
+
content = (0, import_fs.readFileSync)((0, import_path.join)(testDir, "generated/syncedMutations.ts"), "utf-8");
|
|
347
|
+
(0, import_vitest.expect)(content).toContain("id"), (0, import_vitest.expect)(content).toContain("name"), (0, import_vitest.expect)(content).not.toMatch(/rename:[\s\S]*description/), (0, import_vitest.expect)(content).not.toMatch(/rename:[\s\S]*count/);
|
|
348
|
+
}), (0, import_vitest.test)("resolves imported types in query params", async function () {
|
|
349
|
+
(0, import_fs.writeFileSync)((0, import_path.join)(testDir, "models/post.ts"), "export const schema = table('post', { id: string() })"), (0, import_fs.writeFileSync)((0, import_path.join)(testDir, "queries/types.ts"), `
|
|
350
|
+
export type PostFilter = {
|
|
351
|
+
authorId: string
|
|
352
|
+
published: boolean
|
|
353
|
+
}
|
|
354
|
+
`), (0, import_fs.writeFileSync)((0, import_path.join)(testDir, "queries/post.ts"), `
|
|
355
|
+
import type { PostFilter } from './types'
|
|
356
|
+
|
|
357
|
+
export const filteredPosts = (filter: PostFilter) => zero.query.post
|
|
358
|
+
`);
|
|
359
|
+
var result = await (0, import_generate.generate)({
|
|
360
|
+
dir: testDir,
|
|
361
|
+
silent: !0
|
|
362
|
+
}),
|
|
363
|
+
content = (0, import_fs.readFileSync)((0, import_path.join)(testDir, "generated/syncedQueries.ts"), "utf-8");
|
|
364
|
+
(0, import_vitest.expect)(content).toContain("filteredPosts"), (0, import_vitest.expect)(content).toContain("v.object"), (0, import_vitest.expect)(content).toContain("authorId"), (0, import_vitest.expect)(content).toContain("v.boolean()");
|
|
365
|
+
});
|
|
366
|
+
});
|
|
116
367
|
//# sourceMappingURL=generate.test.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["import_fs","require","import_os","import_path","import_vitest","import_generate","testDir","join","tmpdir","Date","now","beforeEach","mkdirSync","recursive","afterEach","rmSync","force","describe","test","writeFileSync","result","generate","dir","silent","expect","modelCount","toBe","schemaCount","filesChanged","toBeGreaterThan","existsSync","modelsContent","readFileSync","toContain","typesContent","tablesContent","queryCount","groupedContent","syncedContent","not","markerFile","after","first","second"],"sources":["../../src/generate.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["import_fs","require","import_os","import_path","import_vitest","import_generate","testDir","join","tmpdir","Date","now","beforeEach","mkdirSync","recursive","afterEach","rmSync","force","describe","test","writeFileSync","result","generate","dir","silent","expect","modelCount","toBe","schemaCount","filesChanged","toBeGreaterThan","existsSync","modelsContent","readFileSync","toContain","typesContent","tablesContent","queryCount","groupedContent","syncedContent","not","markerFile","after","first","second","mutationCount","content","toMatch"],"sources":["../../src/generate.test.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
1
2
|
var __defProp = Object.defineProperty;
|
|
2
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf,
|
|
6
|
+
__hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
7
|
var __export = (target, all) => {
|
|
6
8
|
for (var name in all) __defProp(target, name, {
|
|
7
9
|
get: all[name],
|
|
@@ -15,9 +17,18 @@ var __export = (target, all) => {
|
|
|
15
17
|
});
|
|
16
18
|
return to;
|
|
17
19
|
};
|
|
18
|
-
var
|
|
19
|
-
|
|
20
|
-
|
|
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);
|
|
21
32
|
var createMutators_exports = {};
|
|
22
33
|
__export(createMutators_exports, {
|
|
23
34
|
createMutators: () => createMutators
|
|
@@ -34,10 +45,11 @@ function createMutators({
|
|
|
34
45
|
asyncTasks = [],
|
|
35
46
|
can,
|
|
36
47
|
models,
|
|
37
|
-
validateMutation
|
|
48
|
+
validateMutation,
|
|
49
|
+
mutationValidators
|
|
38
50
|
}) {
|
|
39
51
|
const serverActions = createServerActions?.(),
|
|
40
|
-
modelMutators = (0, import_helpers.mapObject)(models, val => val.mutate);
|
|
52
|
+
modelMutators = (0, import_helpers.mapObject)(models, val => val.mutate || {});
|
|
41
53
|
function withContext(fn) {
|
|
42
54
|
return async (tx, ...args) => {
|
|
43
55
|
const mutationContext = {
|
|
@@ -82,12 +94,13 @@ function createMutators({
|
|
|
82
94
|
};
|
|
83
95
|
}
|
|
84
96
|
function withValidation(tableName, mutatorName, fn) {
|
|
85
|
-
|
|
97
|
+
const validator = mutationValidators?.[tableName]?.[mutatorName];
|
|
98
|
+
return !validateMutation && !validator ? fn : async (...args) => (validator && args[1] != null && (await import("valibot")).parse(validator, args[1]), validateMutation && (await validateMutation({
|
|
86
99
|
authData: import_constants.isBrowser ? (0, import_state.getAuthData)() : authData,
|
|
87
100
|
tableName,
|
|
88
101
|
mutatorName,
|
|
89
102
|
args: args[1]
|
|
90
|
-
}), fn(...args))
|
|
103
|
+
})), fn(...args));
|
|
91
104
|
}
|
|
92
105
|
function decorateMutators(modules) {
|
|
93
106
|
const result = {};
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
1
2
|
var __defProp = Object.defineProperty;
|
|
2
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
6
|
var __export = (target, all) => {
|
|
6
7
|
for (var name in all)
|
|
7
8
|
__defProp(target, name, { get: all[name], enumerable: !0 });
|
|
@@ -11,7 +12,14 @@ var __export = (target, all) => {
|
|
|
11
12
|
!__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
12
13
|
return to;
|
|
13
14
|
};
|
|
14
|
-
var
|
|
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);
|
|
15
23
|
var createMutators_exports = {};
|
|
16
24
|
__export(createMutators_exports, {
|
|
17
25
|
createMutators: () => createMutators
|
|
@@ -25,9 +33,10 @@ function createMutators({
|
|
|
25
33
|
asyncTasks = [],
|
|
26
34
|
can,
|
|
27
35
|
models,
|
|
28
|
-
validateMutation
|
|
36
|
+
validateMutation,
|
|
37
|
+
mutationValidators
|
|
29
38
|
}) {
|
|
30
|
-
const serverActions = createServerActions?.(), modelMutators = (0, import_helpers.mapObject)(models, (val) => val.mutate);
|
|
39
|
+
const serverActions = createServerActions?.(), modelMutators = (0, import_helpers.mapObject)(models, (val) => val.mutate || {});
|
|
31
40
|
function withContext(fn) {
|
|
32
41
|
return async (tx, ...args) => {
|
|
33
42
|
const mutationContext = {
|
|
@@ -72,12 +81,13 @@ function createMutators({
|
|
|
72
81
|
};
|
|
73
82
|
}
|
|
74
83
|
function withValidation(tableName, mutatorName, fn) {
|
|
75
|
-
|
|
84
|
+
const validator = mutationValidators?.[tableName]?.[mutatorName];
|
|
85
|
+
return !validateMutation && !validator ? fn : async (...args) => (validator && args[1] != null && (await import("valibot")).parse(validator, args[1]), validateMutation && await validateMutation({
|
|
76
86
|
authData: import_constants.isBrowser ? (0, import_state.getAuthData)() : authData,
|
|
77
87
|
tableName,
|
|
78
88
|
mutatorName,
|
|
79
89
|
args: args[1]
|
|
80
|
-
}), fn(...args))
|
|
90
|
+
}), fn(...args));
|
|
81
91
|
}
|
|
82
92
|
function decorateMutators(modules) {
|
|
83
93
|
const result = {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/helpers/createMutators.ts"],
|
|
4
|
-
"mappings": "
|
|
4
|
+
"mappings": "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",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var __create = Object.create;
|
|
3
4
|
var __defProp = Object.defineProperty;
|
|
4
5
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
6
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
-
var
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf,
|
|
8
|
+
__hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
9
|
var __export = (target, all) => {
|
|
8
10
|
for (var name in all) __defProp(target, name, {
|
|
9
11
|
get: all[name],
|
|
@@ -17,9 +19,18 @@ var __export = (target, all) => {
|
|
|
17
19
|
});
|
|
18
20
|
return to;
|
|
19
21
|
};
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
|
|
22
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
23
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
24
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
25
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
26
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
27
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
|
|
28
|
+
value: mod,
|
|
29
|
+
enumerable: !0
|
|
30
|
+
}) : target, mod)),
|
|
31
|
+
__toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
32
|
+
value: !0
|
|
33
|
+
}), mod);
|
|
23
34
|
var createMutators_exports = {};
|
|
24
35
|
__export(createMutators_exports, {
|
|
25
36
|
createMutators: () => createMutators
|
|
@@ -37,11 +48,12 @@ function createMutators(param) {
|
|
|
37
48
|
asyncTasks = [],
|
|
38
49
|
can,
|
|
39
50
|
models,
|
|
40
|
-
validateMutation
|
|
51
|
+
validateMutation,
|
|
52
|
+
mutationValidators
|
|
41
53
|
} = param,
|
|
42
54
|
serverActions = createServerActions?.(),
|
|
43
55
|
modelMutators = (0, import_helpers.mapObject)(models, function (val) {
|
|
44
|
-
return val.mutate;
|
|
56
|
+
return val.mutate || {};
|
|
45
57
|
});
|
|
46
58
|
function withContext(fn) {
|
|
47
59
|
return async function (tx) {
|
|
@@ -93,15 +105,21 @@ function createMutators(param) {
|
|
|
93
105
|
};
|
|
94
106
|
}
|
|
95
107
|
function withValidation(tableName, mutatorName, fn) {
|
|
96
|
-
|
|
108
|
+
var _mutationValidators_tableName,
|
|
109
|
+
validator = mutationValidators == null || (_mutationValidators_tableName = mutationValidators[tableName]) === null || _mutationValidators_tableName === void 0 ? void 0 : _mutationValidators_tableName[mutatorName];
|
|
110
|
+
return !validateMutation && !validator ? fn : async function () {
|
|
97
111
|
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key];
|
|
98
|
-
|
|
112
|
+
if (validator && args[1] != null) {
|
|
113
|
+
var valibot = await import("valibot");
|
|
114
|
+
valibot.parse(validator, args[1]);
|
|
115
|
+
}
|
|
116
|
+
return validateMutation && (await validateMutation({
|
|
99
117
|
authData: import_constants.isBrowser ? (0, import_state.getAuthData)() : authData,
|
|
100
118
|
tableName,
|
|
101
119
|
mutatorName,
|
|
102
120
|
args: args[1]
|
|
103
|
-
}), fn(...args);
|
|
104
|
-
}
|
|
121
|
+
})), fn(...args);
|
|
122
|
+
};
|
|
105
123
|
}
|
|
106
124
|
function decorateMutators(modules) {
|
|
107
125
|
var result = {},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createMutators_exports","__export","createMutators","module","exports","import_helpers","require","import_constants","import_state","import_mutatorContext","param","environment","authData","createServerActions","asyncTasks","can","models","validateMutation","serverActions","modelMutators","mapObject","val","mutate","withContext","fn","tx","_len","arguments","length","args","Array","_key","mutationContext","isBrowser","getAuthData","server","actions","runWithContext","withDevelopmentLogging","name","process","env","NODE_ENV","IS_TESTING","debug","DEBUG","startTime","performance","now","isServer","console","info","result","duration","toFixed","groupCollapsed","trace","groupEnd","error","duration1","JSON","stringify","Error","stack","withTimeoutGuard","timeoutMs","time","ms","minutes","timeoutPromise","Promise","_","reject","setTimeout","race","withValidation","tableName","mutatorName","decorateMutators","modules","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","moduleName","moduleExports","_step","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop2"
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","createMutators_exports","__export","createMutators","module","exports","import_helpers","require","import_constants","import_state","import_mutatorContext","param","environment","authData","createServerActions","asyncTasks","can","models","validateMutation","mutationValidators","serverActions","modelMutators","mapObject","val","mutate","withContext","fn","tx","_len","arguments","length","args","Array","_key","mutationContext","isBrowser","getAuthData","server","actions","runWithContext","withDevelopmentLogging","name","process","env","NODE_ENV","IS_TESTING","debug","DEBUG","startTime","performance","now","isServer","console","info","result","duration","toFixed","groupCollapsed","trace","groupEnd","error","duration1","JSON","stringify","Error","stack","withTimeoutGuard","timeoutMs","time","ms","minutes","timeoutPromise","Promise","_","reject","setTimeout","race","withValidation","tableName","mutatorName","_mutationValidators_tableName","validator","valibot","parse","decorateMutators","modules","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","moduleName","moduleExports","_step","_iteratorNormalCompletion2","_didIteratorError2","_iteratorError2","_loop2"],"sources":["../../../src/helpers/createMutators.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useQuery as zeroUseQuery } from "@rocicorp/zero/react";
|
|
2
|
-
import { use, useMemo } from "react";
|
|
2
|
+
import { use, useMemo, useRef } from "react";
|
|
3
3
|
import { useZeroDebug } from "./helpers/useZeroDebug";
|
|
4
4
|
import { resolveQuery } from "./resolveQuery";
|
|
5
5
|
const EMPTY_RESPONSE = [null, { type: "unknown" }];
|
|
@@ -8,11 +8,11 @@ function createUseQuery({
|
|
|
8
8
|
customQueries
|
|
9
9
|
}) {
|
|
10
10
|
function useQuery(...args) {
|
|
11
|
-
const
|
|
11
|
+
const disableMode = use(DisabledContext), lastRef = useRef(EMPTY_RESPONSE), [fn, paramsOrOptions, optionsArg] = args, { queryRequest, options } = useMemo(() => {
|
|
12
12
|
const hasParams = optionsArg !== void 0 || paramsOrOptions && typeof paramsOrOptions == "object" && !("enabled" in paramsOrOptions) && !("ttl" in paramsOrOptions), params = hasParams ? paramsOrOptions : void 0, opts = hasParams ? optionsArg : paramsOrOptions;
|
|
13
13
|
return { queryRequest: resolveQuery({ customQueries, fn, params }), options: opts };
|
|
14
14
|
}, [fn, paramsOrOptions, optionsArg]), out = zeroUseQuery(queryRequest, options);
|
|
15
|
-
return process.env.NODE_ENV === "development" && process.env.DEBUG_ZERO_QUERIES === "1" && useZeroDebug(queryRequest, options, out),
|
|
15
|
+
return process.env.NODE_ENV === "development" && process.env.DEBUG_ZERO_QUERIES === "1" && useZeroDebug(queryRequest, options, out), disableMode ? disableMode === "last-value" ? lastRef.current : EMPTY_RESPONSE : (lastRef.current = out, out);
|
|
16
16
|
}
|
|
17
17
|
return useQuery;
|
|
18
18
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/createUseQuery.tsx"],
|
|
4
|
-
"mappings": "AAAA,SAAS,YAAY,oBAAoB;AACzC,SAAS,KAAK,
|
|
4
|
+
"mappings": "AAAA,SAAS,YAAY,oBAAoB;AACzC,SAAS,KAAK,SAAS,cAA4B;AAEnD,SAAS,oBAAoB;AAC7B,SAAS,oBAAuC;AAqChD,MAAM,iBAAiB,CAAC,MAAM,EAAE,MAAM,UAAU,CAAC;AAE1C,SAAS,eAA0C;AAAA,EACxD;AAAA,EACA;AACF,GAGyB;AACvB,WAAS,YAAY,MAAkB;AACrC,UAAM,cAAc,IAAI,eAAe,GACjC,UAAU,OAAY,cAAc,GACpC,CAAC,IAAI,iBAAiB,UAAU,IAAI,MAEpC,EAAE,cAAc,QAAQ,IAAI,QAAQ,MAAM;AAE9C,YAAM,YACJ,eAAe,UACd,mBACC,OAAO,mBAAoB,YAC3B,EAAE,aAAa,oBACf,EAAE,SAAS,kBAET,SAAS,YAAY,kBAAkB,QACvC,OAAO,YAAY,aAAa;AAItC,aAAO,EAAE,cAFY,aAAa,EAAE,eAAe,IAAI,OAAO,CAAC,GAExC,SAAS,KAAK;AAAA,IACvC,GAAG,CAAC,IAAI,iBAAiB,UAAU,CAAC,GAE9B,MAAM,aAAa,cAAc,OAAO;AAQ9C,WANI,QAAQ,IAAI,aAAa,iBACvB,QAAQ,IAAI,uBAAuB,OAErC,aAAa,cAAc,SAAS,GAAG,GAGtC,cAKD,gBAAgB,eACX,QAAQ,UAGV,kBARL,QAAQ,UAAU,KACX;AAAA,EAQX;AAEA,SAAO;AACT;",
|
|
5
5
|
"names": []
|
|
6
6
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useQuery as zeroUseQuery } from "@rocicorp/zero/react";
|
|
2
|
-
import { use, useMemo } from "react";
|
|
2
|
+
import { use, useMemo, useRef } from "react";
|
|
3
3
|
import { useZeroDebug } from "./helpers/useZeroDebug.mjs";
|
|
4
4
|
import { resolveQuery } from "./resolveQuery.mjs";
|
|
5
5
|
const EMPTY_RESPONSE = [null, {
|
|
@@ -10,7 +10,8 @@ function createUseQuery({
|
|
|
10
10
|
customQueries
|
|
11
11
|
}) {
|
|
12
12
|
function useQuery(...args) {
|
|
13
|
-
const
|
|
13
|
+
const disableMode = use(DisabledContext),
|
|
14
|
+
lastRef = useRef(EMPTY_RESPONSE),
|
|
14
15
|
[fn, paramsOrOptions, optionsArg] = args,
|
|
15
16
|
{
|
|
16
17
|
queryRequest,
|
|
@@ -29,7 +30,7 @@ function createUseQuery({
|
|
|
29
30
|
};
|
|
30
31
|
}, [fn, paramsOrOptions, optionsArg]),
|
|
31
32
|
out = zeroUseQuery(queryRequest, options);
|
|
32
|
-
return process.env.NODE_ENV === "development" && process.env.DEBUG_ZERO_QUERIES === "1" && useZeroDebug(queryRequest, options, out),
|
|
33
|
+
return process.env.NODE_ENV === "development" && process.env.DEBUG_ZERO_QUERIES === "1" && useZeroDebug(queryRequest, options, out), disableMode ? disableMode === "last-value" ? lastRef.current : EMPTY_RESPONSE : (lastRef.current = out, out);
|
|
33
34
|
}
|
|
34
35
|
return useQuery;
|
|
35
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useQuery","zeroUseQuery","use","useMemo","useZeroDebug","resolveQuery","EMPTY_RESPONSE","type","createUseQuery","DisabledContext","customQueries","args","
|
|
1
|
+
{"version":3,"names":["useQuery","zeroUseQuery","use","useMemo","useRef","useZeroDebug","resolveQuery","EMPTY_RESPONSE","type","createUseQuery","DisabledContext","customQueries","args","disableMode","lastRef","fn","paramsOrOptions","optionsArg","queryRequest","options","hasParams","params","opts","out","process","env","NODE_ENV","DEBUG_ZERO_QUERIES","current"],"sources":["../../src/createUseQuery.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,QAAA,IAAYC,YAAA,QAAoB;AACzC,SAASC,GAAA,EAAKC,OAAA,EAASC,MAAA,QAA4B;AAEnD,SAASC,YAAA,QAAoB;AAC7B,SAASC,YAAA,QAAuC;AAqChD,MAAMC,cAAA,GAAiB,CAAC,MAAM;EAAEC,IAAA,EAAM;AAAU,CAAC;AAE1C,SAASC,eAA0C;EACxDC,eAAA;EACAC;AACF,GAGyB;EACvB,SAASX,SAAA,GAAYY,IAAA,EAAkB;IACrC,MAAMC,WAAA,GAAcX,GAAA,CAAIQ,eAAe;MACjCI,OAAA,GAAUV,MAAA,CAAYG,cAAc;MACpC,CAACQ,EAAA,EAAIC,eAAA,EAAiBC,UAAU,IAAIL,IAAA;MAEpC;QAAEM,YAAA;QAAcC;MAAQ,IAAIhB,OAAA,CAAQ,MAAM;QAE9C,MAAMiB,SAAA,GACJH,UAAA,KAAe,UACdD,eAAA,IACC,OAAOA,eAAA,IAAoB,YAC3B,EAAE,aAAaA,eAAA,KACf,EAAE,SAASA,eAAA;UAETK,MAAA,GAASD,SAAA,GAAYJ,eAAA,GAAkB;UACvCM,IAAA,GAAOF,SAAA,GAAYH,UAAA,GAAaD,eAAA;QAItC,OAAO;UAAEE,YAAA,EAFYZ,YAAA,CAAa;YAAEK,aAAA;YAAeI,EAAA;YAAIM;UAAO,CAAC;UAExCF,OAAA,EAASG;QAAK;MACvC,GAAG,CAACP,EAAA,EAAIC,eAAA,EAAiBC,UAAU,CAAC;MAE9BM,GAAA,GAAMtB,YAAA,CAAaiB,YAAA,EAAcC,OAAO;IAQ9C,OANIK,OAAA,CAAQC,GAAA,CAAIC,QAAA,KAAa,iBACvBF,OAAA,CAAQC,GAAA,CAAIE,kBAAA,KAAuB,OAErCtB,YAAA,CAAaa,YAAA,EAAcC,OAAA,EAASI,GAAG,GAGtCV,WAAA,GAKDA,WAAA,KAAgB,eACXC,OAAA,CAAQc,OAAA,GAGVrB,cAAA,IARLO,OAAA,CAAQc,OAAA,GAAUL,GAAA,EACXA,GAAA;EAQX;EAEA,OAAOvB,QAAA;AACT","ignoreList":[]}
|