@bg-dev/nuxt-zenstack 0.0.3 → 0.0.5
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/module.d.mts +2 -0
- package/dist/module.json +1 -1
- package/dist/module.mjs +61 -12
- package/dist/runtime/composables/common.d.ts +3 -13
- package/dist/runtime/composables/useZenstackCreate/index.d.ts +3 -3
- package/dist/runtime/composables/useZenstackDelete/index.d.ts +3 -3
- package/dist/runtime/composables/useZenstackRead/index.d.ts +4 -4
- package/dist/runtime/composables/useZenstackRead/index.js +8 -7
- package/dist/runtime/composables/useZenstackReadMany/index.d.ts +4 -3
- package/dist/runtime/composables/useZenstackReadMany/index.js +21 -8
- package/dist/runtime/composables/useZenstackReadMany/orderBy.d.ts +5 -0
- package/dist/runtime/composables/useZenstackReadMany/orderBy.js +25 -0
- package/dist/runtime/composables/useZenstackReadMany/where.d.ts +2 -0
- package/dist/runtime/composables/useZenstackReadMany/where.js +235 -0
- package/dist/runtime/composables/useZenstackRealtime/index.d.ts +6 -0
- package/dist/runtime/composables/useZenstackRealtime/index.js +53 -0
- package/dist/runtime/composables/useZenstackStore/index.d.ts +6 -2
- package/dist/runtime/composables/useZenstackStore/index.js +3 -4
- package/dist/runtime/composables/useZenstackStore/normalization.d.ts +16 -3
- package/dist/runtime/composables/useZenstackStore/normalization.js +16 -3
- package/dist/runtime/composables/useZenstackUpdate/index.d.ts +2 -2
- package/dist/runtime/server/api/models/[model]/[id].delete.d.ts +1 -1
- package/dist/runtime/server/api/models/[model]/[id].delete.js +5 -9
- package/dist/runtime/server/api/models/[model]/[id].get.d.ts +1 -1
- package/dist/runtime/server/api/models/[model]/[id].get.js +5 -10
- package/dist/runtime/server/api/models/[model]/[id].patch.d.ts +1 -1
- package/dist/runtime/server/api/models/[model]/[id].patch.js +6 -13
- package/dist/runtime/server/api/models/[model]/index.get.d.ts +2 -2
- package/dist/runtime/server/api/models/[model]/index.get.js +9 -7
- package/dist/runtime/server/api/models/[model]/index.post.d.ts +1 -1
- package/dist/runtime/server/api/models/[model]/index.post.js +6 -10
- package/dist/runtime/server/routes/realtime.d.ts +2 -0
- package/dist/runtime/server/routes/realtime.js +18 -0
- package/dist/runtime/server/utils/helpers.d.ts +7 -0
- package/dist/runtime/server/utils/helpers.js +34 -0
- package/dist/runtime/server/utils/index.d.ts +15 -12
- package/dist/runtime/server/utils/index.js +12 -46
- package/dist/runtime/server/utils/operations/common.d.ts +10 -0
- package/dist/runtime/server/utils/operations/common.js +52 -0
- package/dist/runtime/server/utils/operations/create.d.ts +10 -0
- package/dist/runtime/server/utils/operations/create.js +15 -0
- package/dist/runtime/server/utils/operations/delete.d.ts +10 -0
- package/dist/runtime/server/utils/operations/delete.js +16 -0
- package/dist/runtime/server/utils/operations/findMany.d.ts +14 -0
- package/dist/runtime/server/utils/operations/findMany.js +14 -0
- package/dist/runtime/server/utils/operations/findUnique.d.ts +11 -0
- package/dist/runtime/server/utils/operations/findUnique.js +14 -0
- package/dist/runtime/server/utils/operations/update.d.ts +11 -0
- package/dist/runtime/server/utils/operations/update.js +19 -0
- package/dist/runtime/server/utils/parsers.d.ts +3 -2
- package/dist/runtime/server/utils/parsers.js +9 -3
- package/package.json +3 -1
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { $Zclient, $Zmodel, $Zinclude, $Zid, $Zitem } from '#build/types/nuxt-zenstack';
|
|
2
|
+
type FindUniqueArgs<Zmodel extends $Zmodel> = {
|
|
3
|
+
client: $Zclient;
|
|
4
|
+
model: Zmodel;
|
|
5
|
+
id: $Zid<Zmodel>;
|
|
6
|
+
include?: $Zinclude<Zmodel>;
|
|
7
|
+
};
|
|
8
|
+
export declare function findUnique<Zmodel extends $Zmodel>(args: FindUniqueArgs<Zmodel>): Promise<{
|
|
9
|
+
data: $Zitem<Zmodel, $Zinclude<Zmodel>>;
|
|
10
|
+
}>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { getModelOperations, createError } from "./common.js";
|
|
2
|
+
export async function findUnique(args) {
|
|
3
|
+
const operations = getModelOperations(args.client, args.model);
|
|
4
|
+
const data = await operations.findUnique({
|
|
5
|
+
include: args.include,
|
|
6
|
+
// @ts-expect-error id not known here
|
|
7
|
+
where: {
|
|
8
|
+
id: args.id
|
|
9
|
+
}
|
|
10
|
+
}).catch((err) => {
|
|
11
|
+
throw createError(err);
|
|
12
|
+
});
|
|
13
|
+
return { data };
|
|
14
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { $Zclient, $Zmodel, $Zid, $ZupdateData, $Zitem } from '#build/types/nuxt-zenstack';
|
|
2
|
+
type UpdateArgs<Zmodel extends $Zmodel> = {
|
|
3
|
+
client: $Zclient;
|
|
4
|
+
model: Zmodel;
|
|
5
|
+
id: $Zid<Zmodel>;
|
|
6
|
+
data: $ZupdateData<Zmodel>;
|
|
7
|
+
};
|
|
8
|
+
export declare function update<Zmodel extends $Zmodel>(args: UpdateArgs<Zmodel>): Promise<{
|
|
9
|
+
data: $Zitem<Zmodel>;
|
|
10
|
+
}>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { getModelOperations, createError } from "./common.js";
|
|
2
|
+
import { sanitizeUpdateData } from "../helpers.js";
|
|
3
|
+
import { useNitroApp } from "nitropack/runtime";
|
|
4
|
+
export async function update(args) {
|
|
5
|
+
const operations = getModelOperations(args.client, args.model);
|
|
6
|
+
const sanitizedData = sanitizeUpdateData(args.model, args.data);
|
|
7
|
+
const data = await operations.update({
|
|
8
|
+
data: sanitizedData,
|
|
9
|
+
// @ts-expect-error id not known here
|
|
10
|
+
where: {
|
|
11
|
+
id: args.id
|
|
12
|
+
}
|
|
13
|
+
}).catch((err) => {
|
|
14
|
+
throw createError(err);
|
|
15
|
+
});
|
|
16
|
+
const nitroApp = useNitroApp();
|
|
17
|
+
await nitroApp.hooks.callHook("zenstack:after_mutation", "update", args.model, [data]);
|
|
18
|
+
return { data };
|
|
19
|
+
}
|
|
@@ -7,13 +7,14 @@ type ReadArgs<Zmodel extends $Zmodel> = {
|
|
|
7
7
|
skip?: number;
|
|
8
8
|
take?: number;
|
|
9
9
|
};
|
|
10
|
+
export declare function parseClient(event: H3Event): import("@zenstackhq/orm").ClientContract<SchemaType>;
|
|
10
11
|
export declare function parseModel(event: H3Event): string | number | symbol;
|
|
11
12
|
export declare function parseId(event: H3Event, model: $Zmodel): string | number;
|
|
12
13
|
export declare function parseReadArgs<Zmodel extends $Zmodel>(event: H3Event, _model: Zmodel): ReadArgs<Zmodel>;
|
|
13
|
-
export declare function
|
|
14
|
+
export declare function parseCreateArgs<Zmodel extends $Zmodel>(event: H3Event, _model: Zmodel): Promise<{
|
|
14
15
|
data: $ZcreateData<Zmodel>;
|
|
15
16
|
}>;
|
|
16
|
-
export declare function
|
|
17
|
+
export declare function parseUpdateArgs<Zmodel extends $Zmodel>(event: H3Event, _model: Zmodel): Promise<{
|
|
17
18
|
data: $ZupdateData<Zmodel>;
|
|
18
19
|
}>;
|
|
19
20
|
export {};
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { getRouterParam, createError, getQuery, readBody } from "h3";
|
|
2
|
-
import { isValidModel, isIdString } from "./
|
|
2
|
+
import { isValidModel, isIdString } from "./helpers.js";
|
|
3
3
|
import { parse } from "superjson";
|
|
4
|
+
export function parseClient(event) {
|
|
5
|
+
if (event.context.zenstack?.client) {
|
|
6
|
+
return event.context.zenstack.client;
|
|
7
|
+
}
|
|
8
|
+
throw new Error("ZenStack client not provided");
|
|
9
|
+
}
|
|
4
10
|
export function parseModel(event) {
|
|
5
11
|
const model = getRouterParam(event, "model");
|
|
6
12
|
if (isValidModel(model) === false) {
|
|
@@ -20,9 +26,9 @@ export function parseReadArgs(event, _model) {
|
|
|
20
26
|
const query = getQuery(event);
|
|
21
27
|
return query?.q ? parse(query.q) : {};
|
|
22
28
|
}
|
|
23
|
-
export async function
|
|
29
|
+
export async function parseCreateArgs(event, _model) {
|
|
24
30
|
return readBody(event);
|
|
25
31
|
}
|
|
26
|
-
export async function
|
|
32
|
+
export async function parseUpdateArgs(event, _model) {
|
|
27
33
|
return readBody(event);
|
|
28
34
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bg-dev/nuxt-zenstack",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.5",
|
|
4
4
|
"description": "ZenStack integration for Nuxt",
|
|
5
5
|
"repository": {
|
|
6
6
|
"url": "https://github.com/becem-gharbi/nuxt-zenstack"
|
|
@@ -66,7 +66,9 @@
|
|
|
66
66
|
"@nuxt/test-utils": "^3.23.0",
|
|
67
67
|
"@nuxt/ui": "^4.3.0",
|
|
68
68
|
"@types/node": "latest",
|
|
69
|
+
"@vueuse/core": "^14.1.0",
|
|
69
70
|
"@zenstackhq/cli": "3.2.1",
|
|
71
|
+
"@zenstackhq/plugin-policy": "^3.2.1",
|
|
70
72
|
"changelogen": "^0.6.2",
|
|
71
73
|
"eslint": "^9.39.2",
|
|
72
74
|
"libsql": "^0.5.22",
|