diff --git a/dist/package-shared/types/index.d.ts b/dist/package-shared/types/index.d.ts index 8ff6997..bb022ec 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; debug?: boolean; diff --git a/dist/package-shared/utils/data-fetching/crud.d.ts b/dist/package-shared/utils/data-fetching/crud.d.ts index 1c1b22d..f8583fe 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, }: DsqlCrudParam): Promise<(PostReturn & { +}>({ action, data, table, targetId, query, sanitize, debug, targetField, }: 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 f19f86f..ed06408 100644 --- a/dist/package-shared/utils/data-fetching/crud.js +++ b/dist/package-shared/utils/data-fetching/crud.js @@ -17,7 +17,7 @@ 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, }) { + return __awaiter(this, arguments, void 0, function* ({ action, data, table, targetId, query, sanitize, debug, targetField, }) { const finalData = sanitize ? sanitize(data) : data; const finalId = targetId; let queryObject; @@ -49,7 +49,7 @@ function dsqlCrud(_a) { query: { action: "update", table, - identifierColumnName: "id", + identifierColumnName: targetField || "id", identifierValue: String(finalId), data: finalData, }, @@ -60,7 +60,7 @@ function dsqlCrud(_a) { query: { action: "delete", table, - identifierColumnName: "id", + identifierColumnName: targetField || "id", identifierValue: String(finalId), }, forceLocal: true, diff --git a/package-shared/types/index.ts b/package-shared/types/index.ts index 976e2ae..def76bf 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; + targetField?: string; query?: DsqlCrudQueryObject; sanitize?: (data?: T) => T; debug?: boolean; diff --git a/package-shared/utils/data-fetching/crud.ts b/package-shared/utils/data-fetching/crud.ts index 2e56a78..e2fe3c2 100644 --- a/package-shared/utils/data-fetching/crud.ts +++ b/package-shared/utils/data-fetching/crud.ts @@ -13,6 +13,7 @@ export default async function dsqlCrud< query, sanitize, debug, + targetField, }: DsqlCrudParam): Promise< | (PostReturn & { queryObject?: ReturnType>; @@ -56,7 +57,7 @@ export default async function dsqlCrud< query: { action: "update", table, - identifierColumnName: "id", + identifierColumnName: targetField || "id", identifierValue: String(finalId), data: finalData, }, @@ -68,7 +69,7 @@ export default async function dsqlCrud< query: { action: "delete", table, - identifierColumnName: "id", + identifierColumnName: targetField || "id", identifierValue: String(finalId), }, forceLocal: true, diff --git a/package.json b/package.json index 60b8612..8534984 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@moduletrace/datasquirel", - "version": "4.5.4", + "version": "4.5.5", "description": "Cloud-based SQL data management tool", "main": "dist/index.js", "bin": {