This commit is contained in:
Benjamin Toby 2025-01-26 06:45:19 +01:00
parent ff5550ec85
commit 7188fe6e2c
3 changed files with 28 additions and 19 deletions

View File

@ -1300,23 +1300,28 @@ export type DsqlMethodCrudParam<T extends {
}; };
user?: DATASQUIREL_LoggedInUser; user?: DATASQUIREL_LoggedInUser;
extraData?: T; extraData?: T;
transform?: ({ data, existingData, user, }: { transform?: DsqlCrudTransformFunction<T>;
user?: DATASQUIREL_LoggedInUser;
data: T;
existingData?: T;
reqMethod: (typeof DataCrudRequestMethods)[number];
}) => Promise<T>;
existingData?: T; existingData?: T;
targetId?: string | number; targetId?: string | number;
sanitize?: (data?: T) => T; sanitize?: (data?: T) => T;
}; };
export type DsqlCrudTransformFunction<T extends {
[key: string]: any;
} = {
[key: string]: any;
}> = ({ data, existingData, user, }: {
user?: DATASQUIREL_LoggedInUser;
data: T;
existingData?: T;
reqMethod: (typeof DataCrudRequestMethods)[number];
}) => Promise<T>;
export declare const DsqlCrudActions: readonly ["insert", "update", "delete", "get"]; export declare const DsqlCrudActions: readonly ["insert", "update", "delete", "get"];
export type DsqlCrudQueryObject<T extends { export type DsqlCrudQueryObject<T extends {
[key: string]: any; [key: string]: any;
} = { } = {
[key: string]: any; [key: string]: any;
}> = ServerQueryParam & { }> = ServerQueryParam & {
query: ServerQueryQueryObject<T>; query?: ServerQueryQueryObject<T>;
}; };
export type DsqlCrudParam<T extends { export type DsqlCrudParam<T extends {
[key: string]: any; [key: string]: any;

View File

@ -1477,27 +1477,31 @@ export type DsqlMethodCrudParam<
}; };
user?: DATASQUIREL_LoggedInUser; user?: DATASQUIREL_LoggedInUser;
extraData?: T; extraData?: T;
transform?: ({ transform?: DsqlCrudTransformFunction<T>;
data,
existingData,
user,
}: {
user?: DATASQUIREL_LoggedInUser;
data: T;
existingData?: T;
reqMethod: (typeof DataCrudRequestMethods)[number];
}) => Promise<T>;
existingData?: T; existingData?: T;
targetId?: string | number; targetId?: string | number;
sanitize?: (data?: T) => T; sanitize?: (data?: T) => T;
}; };
export type DsqlCrudTransformFunction<
T extends { [key: string]: any } = { [key: string]: any }
> = ({
data,
existingData,
user,
}: {
user?: DATASQUIREL_LoggedInUser;
data: T;
existingData?: T;
reqMethod: (typeof DataCrudRequestMethods)[number];
}) => Promise<T>;
export const DsqlCrudActions = ["insert", "update", "delete", "get"] as const; export const DsqlCrudActions = ["insert", "update", "delete", "get"] as const;
export type DsqlCrudQueryObject< export type DsqlCrudQueryObject<
T extends { [key: string]: any } = { [key: string]: any } T extends { [key: string]: any } = { [key: string]: any }
> = ServerQueryParam & { > = ServerQueryParam & {
query: ServerQueryQueryObject<T>; query?: ServerQueryQueryObject<T>;
}; };
export type DsqlCrudParam< export type DsqlCrudParam<

View File

@ -1,6 +1,6 @@
{ {
"name": "@moduletrace/datasquirel", "name": "@moduletrace/datasquirel",
"version": "3.9.1", "version": "3.9.2",
"description": "Cloud-based SQL data management tool", "description": "Cloud-based SQL data management tool",
"main": "dist/index.js", "main": "dist/index.js",
"bin": { "bin": {