This commit is contained in:
Benjamin Toby
2025-08-06 06:37:43 +01:00
parent 689f885d9d
commit a1e56bb1b0
27 changed files with 163 additions and 96 deletions
@@ -11,6 +11,7 @@ import {
} from "../../../types";
import purgeDefaultFields from "../../../utils/purge-default-fields";
import grabParsedValue from "./grab-parsed-value";
import { ConnectionConfig } from "mariadb";
export type AddDbEntryParam<
T extends { [k: string]: any } = any,
@@ -34,6 +35,7 @@ export type AddDbEntryParam<
encryptionSalt?: string;
forceLocal?: boolean;
debug?: boolean;
dbConfig?: ConnectionConfig;
};
/**
@@ -57,6 +59,7 @@ export default async function addDbEntry<
encryptionSalt,
forceLocal,
debug,
dbConfig,
}: AddDbEntryParam<T, K>): Promise<APIResponseObject<PostInsertReturn>> {
const isMaster = forceLocal
? true
@@ -89,9 +92,10 @@ export default async function addDbEntry<
isMaster ? "" : `\`${dbFullName}\`.`
}\`${tableName}\` WHERE \`${duplicateColumnName}\`=?`;
const duplicateValue = await connDbHandler(null, checkDuplicateQuery, [
duplicateColumnValue,
]);
const duplicateValue = await connDbHandler({
query: checkDuplicateQuery,
values: [duplicateColumnValue],
});
if (duplicateValue?.[0] && !update) {
return {
@@ -110,6 +114,9 @@ export default async function addDbEntry<
encryptionSalt,
identifierColumnName: duplicateColumnName,
identifierValue: duplicateColumnValue || "",
dbConfig,
debug,
forceLocal,
});
}
}
@@ -205,12 +212,12 @@ export default async function addDbEntry<
const finalQueryValues = grabFinalQueryValuesArr(queryValuesArray);
const newInsert = await connDbHandler(
null,
const newInsert = await connDbHandler({
query,
finalQueryValues,
debug
);
values: finalQueryValues,
debug,
dsqlConnOpts: { config: dbConfig },
});
return {
success: Boolean(newInsert?.insertId),
@@ -250,12 +257,12 @@ export default async function addDbEntry<
batchQueryValuesArray.flat()
);
const newInsert = await connDbHandler(
null,
const newInsert = await connDbHandler({
query,
finalQueryValues,
debug
);
values: finalQueryValues,
debug,
dsqlConnOpts: { config: dbConfig },
});
if (debug) {
debugLog({
@@ -42,9 +42,10 @@ export default async function deleteDbEntry<
isMaster && !dbFullName ? "" : `\`${dbFullName}\`.`
}\`${tableName}\` WHERE \`${identifierColumnName.toString()}\`=?`;
const deletedEntry = await connDbHandler(null, query, [
identifierValue,
]);
const deletedEntry = await connDbHandler({
query,
values: [identifierValue],
});
/**
* Return statement
@@ -9,6 +9,7 @@ import {
import _ from "lodash";
import purgeDefaultFields from "../../../utils/purge-default-fields";
import grabParsedValue from "./grab-parsed-value";
import { ConnectionConfig } from "mariadb";
type Param<T extends { [k: string]: any } = any> = {
dbContext?: (typeof DbContextsArray)[number];
@@ -22,6 +23,7 @@ type Param<T extends { [k: string]: any } = any> = {
identifierValue: string | number;
forceLocal?: boolean;
debug?: boolean;
dbConfig?: ConnectionConfig;
};
/**
@@ -42,6 +44,7 @@ export default async function updateDbEntry<
encryptionSalt,
forceLocal,
debug,
dbConfig,
}: Param<T>): Promise<APIResponseObject<PostInsertReturn>> {
/**
* Check if data is valid
@@ -139,7 +142,11 @@ export default async function updateDbEntry<
updateValues.push(identifierValue);
const updatedEntry = await connDbHandler(null, query, updateValues);
const updatedEntry = await connDbHandler({
query,
values: updateValues,
dsqlConnOpts: { config: dbConfig },
});
/**
* Return statement
@@ -29,7 +29,10 @@ export default async function fullAccessDbHandler({
* @description Fetch data from db if no cache
*/
try {
results = await connDbHandler(null, queryString, queryValuesArray);
results = await connDbHandler({
query: queryString,
values: queryValuesArray,
});
////////////////////////////////////////
} catch (error: any) {
@@ -42,7 +42,7 @@ export default async function suDbHandler({
// dateStrings: true,
// });
const results = await connDbHandler(connection, query);
const results = await connDbHandler({ conn: connection, query });
return results;
}
@@ -39,7 +39,7 @@ export default async function userDbHandler({
metaAsArray: true,
});
const results = await connDbHandler(connection, query);
const results = await connDbHandler({ conn: connection, query });
if (Array.isArray(results)) {
const parsedDbResults = results.map((res) => parseResultObject(res));