diff --git a/dist/package-shared/types/index.d.ts b/dist/package-shared/types/index.d.ts index bb022ec..8f26942 100644 --- a/dist/package-shared/types/index.d.ts +++ b/dist/package-shared/types/index.d.ts @@ -1351,6 +1351,7 @@ export type DsqlCrudParam; sanitize?: (data?: T) => T; diff --git a/dist/package-shared/utils/data-fetching/crud.d.ts b/dist/package-shared/utils/data-fetching/crud.d.ts index f8583fe..f00dbf6 100644 --- a/dist/package-shared/utils/data-fetching/crud.d.ts +++ b/dist/package-shared/utils/data-fetching/crud.d.ts @@ -4,6 +4,6 @@ export default function dsqlCrud({ action, data, table, targetId, query, sanitize, debug, targetField, }: DsqlCrudParam): Promise<(PostReturn & { +}>({ action, data, table, targetValue, query, sanitize, debug, targetField, targetId, }: DsqlCrudParam): Promise<(PostReturn & { queryObject?: ReturnType>; }) | null>; diff --git a/dist/package-shared/utils/data-fetching/crud.js b/dist/package-shared/utils/data-fetching/crud.js index ed06408..f3447af 100644 --- a/dist/package-shared/utils/data-fetching/crud.js +++ b/dist/package-shared/utils/data-fetching/crud.js @@ -17,9 +17,8 @@ const get_1 = __importDefault(require("../../actions/get")); const post_1 = __importDefault(require("../../actions/post")); const sql_generator_1 = __importDefault(require("../../functions/dsql/sql/sql-generator")); function dsqlCrud(_a) { - return __awaiter(this, arguments, void 0, function* ({ action, data, table, targetId, query, sanitize, debug, targetField, }) { + return __awaiter(this, arguments, void 0, function* ({ action, data, table, targetValue, query, sanitize, debug, targetField, targetId, }) { const finalData = sanitize ? sanitize(data) : data; - const finalId = targetId; let queryObject; switch (action) { case "get": @@ -50,7 +49,7 @@ function dsqlCrud(_a) { action: "update", table, identifierColumnName: targetField || "id", - identifierValue: String(finalId), + identifierValue: String(targetValue || targetId), data: finalData, }, forceLocal: true, @@ -61,7 +60,7 @@ function dsqlCrud(_a) { action: "delete", table, identifierColumnName: targetField || "id", - identifierValue: String(finalId), + identifierValue: String(targetValue || targetId), }, forceLocal: true, }); diff --git a/package-shared/types/index.ts b/package-shared/types/index.ts index def76bf..291ff5f 100644 --- a/package-shared/types/index.ts +++ b/package-shared/types/index.ts @@ -1521,6 +1521,7 @@ export type DsqlCrudParam< table: string; data?: T; targetId?: string | number; + targetValue?: string | number; targetField?: string; query?: DsqlCrudQueryObject; sanitize?: (data?: T) => T; diff --git a/package-shared/utils/data-fetching/crud.ts b/package-shared/utils/data-fetching/crud.ts index e2fe3c2..55bc592 100644 --- a/package-shared/utils/data-fetching/crud.ts +++ b/package-shared/utils/data-fetching/crud.ts @@ -9,11 +9,12 @@ export default async function dsqlCrud< action, data, table, - targetId, + targetValue, query, sanitize, debug, targetField, + targetId, }: DsqlCrudParam): Promise< | (PostReturn & { queryObject?: ReturnType>; @@ -21,7 +22,6 @@ export default async function dsqlCrud< | null > { const finalData = sanitize ? sanitize(data) : data; - const finalId = targetId; let queryObject: ReturnType> | undefined; switch (action) { @@ -58,7 +58,7 @@ export default async function dsqlCrud< action: "update", table, identifierColumnName: targetField || "id", - identifierValue: String(finalId), + identifierValue: String(targetValue || targetId), data: finalData, }, forceLocal: true, @@ -70,7 +70,7 @@ export default async function dsqlCrud< action: "delete", table, identifierColumnName: targetField || "id", - identifierValue: String(finalId), + identifierValue: String(targetValue || targetId), }, forceLocal: true, }); diff --git a/package.json b/package.json index 8534984..6be9b41 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@moduletrace/datasquirel", - "version": "4.5.5", + "version": "4.5.6", "description": "Cloud-based SQL data management tool", "main": "dist/index.js", "bin": {