diff --git a/dist/lib/sqlite/db-delete.js b/dist/lib/sqlite/db-delete.js index 34c3370..5a89bfe 100644 --- a/dist/lib/sqlite/db-delete.js +++ b/dist/lib/sqlite/db-delete.js @@ -2,6 +2,7 @@ import DbClient from "."; import _ from "lodash"; import sqlGenerator from "../../utils/sql-generator"; export default async function DbDelete({ table, query, targetId, }) { + let sqlObj = null; try { let finalQuery = query || {}; if (targetId) { @@ -13,14 +14,14 @@ export default async function DbDelete({ table, query, targetId, }) { }, }); } - const sqlQueryObj = sqlGenerator({ + sqlObj = sqlGenerator({ tableName: table, genObject: finalQuery, }); - const whereClause = sqlQueryObj.string.match(/WHERE .*/)?.[0]; + const whereClause = sqlObj.string.match(/WHERE .*/)?.[0]; if (whereClause) { let sql = `DELETE FROM ${table} ${whereClause}`; - const res = DbClient.run(sql, sqlQueryObj.values); + const res = DbClient.run(sql, sqlObj.values); return { success: Boolean(res.changes), postInsertReturn: { @@ -28,8 +29,7 @@ export default async function DbDelete({ table, query, targetId, }) { insertId: Number(res.lastInsertRowid), }, debug: { - sql, - values: sqlQueryObj.values, + sqlObj, }, }; } @@ -37,6 +37,9 @@ export default async function DbDelete({ table, query, targetId, }) { return { success: false, msg: `No WHERE clause`, + debug: { + sqlObj, + }, }; } } @@ -44,6 +47,9 @@ export default async function DbDelete({ table, query, targetId, }) { return { success: false, error: error.message, + debug: { + sqlObj, + }, }; } } diff --git a/dist/lib/sqlite/db-insert.js b/dist/lib/sqlite/db-insert.js index df0b86d..c30dd9e 100644 --- a/dist/lib/sqlite/db-insert.js +++ b/dist/lib/sqlite/db-insert.js @@ -1,16 +1,18 @@ import DbClient from "."; import sqlInsertGenerator from "../../utils/sql-insert-generator"; export default async function DbInsert({ table, data }) { + let sqlObj = null; try { const finalData = data.map((d) => ({ ...d, created_at: Date.now(), updated_at: Date.now(), })); - const sqlObj = sqlInsertGenerator({ - tableName: table, - data: finalData, - }); + sqlObj = + sqlInsertGenerator({ + tableName: table, + data: finalData, + }) || null; const res = DbClient.run(sqlObj?.query || "", sqlObj?.values || []); return { success: Boolean(Number(res.lastInsertRowid)), @@ -27,6 +29,9 @@ export default async function DbInsert({ table, data }) { return { success: false, error: error.message, + debug: { + sqlObj, + }, }; } } diff --git a/dist/lib/sqlite/db-select.js b/dist/lib/sqlite/db-select.js index dfd50ed..2280fbf 100644 --- a/dist/lib/sqlite/db-select.js +++ b/dist/lib/sqlite/db-select.js @@ -3,6 +3,7 @@ import DbClient from "."; import _ from "lodash"; import sqlGenerator from "../../utils/sql-generator"; export default async function DbSelect({ table, query, count, targetId, }) { + let sqlObj = null; try { let finalQuery = query || {}; if (targetId) { @@ -14,7 +15,7 @@ export default async function DbSelect({ table, query, count, targetId, }) { }, }); } - const sqlObj = sqlGenerator({ + sqlObj = sqlGenerator({ tableName: table, genObject: finalQuery, count, @@ -43,6 +44,9 @@ export default async function DbSelect({ table, query, count, targetId, }) { return { success: false, error: error.message, + debug: { + sqlObj, + }, }; } } diff --git a/dist/lib/sqlite/db-update.js b/dist/lib/sqlite/db-update.js index 54ae816..5534306 100644 --- a/dist/lib/sqlite/db-update.js +++ b/dist/lib/sqlite/db-update.js @@ -2,6 +2,7 @@ import DbClient from "."; import _ from "lodash"; import sqlGenerator from "../../utils/sql-generator"; export default async function DbUpdate({ table, data, query, targetId, }) { + let sqlObj = null; try { let finalQuery = query || {}; if (targetId) { @@ -13,12 +14,12 @@ export default async function DbUpdate({ table, data, query, targetId, }) { }, }); } - const sqlQueryObj = sqlGenerator({ + sqlObj = sqlGenerator({ tableName: table, genObject: finalQuery, }); let values = []; - const whereClause = sqlQueryObj.string.match(/WHERE .*/)?.[0]; + const whereClause = sqlObj.string.match(/WHERE .*/)?.[0]; if (whereClause) { let sql = `UPDATE ${table} SET`; const finalData = { @@ -38,7 +39,7 @@ export default async function DbUpdate({ table, data, query, targetId, }) { } } sql += ` ${whereClause}`; - values = [...values, ...sqlQueryObj.values]; + values = [...values, ...sqlObj.values]; const res = DbClient.run(sql, values); return { success: Boolean(res.changes), @@ -47,8 +48,7 @@ export default async function DbUpdate({ table, data, query, targetId, }) { insertId: Number(res.lastInsertRowid), }, debug: { - sql, - values, + sqlObj, }, }; } @@ -63,6 +63,9 @@ export default async function DbUpdate({ table, data, query, targetId, }) { return { success: false, error: error.message, + debug: { + sqlObj, + }, }; } } diff --git a/package.json b/package.json index d31eebb..3b18cb6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@moduletrace/bun-sqlite", - "version": "1.0.20", + "version": "1.0.21", "description": "SQLite manager for Bun", "author": "Benjamin Toby", "main": "dist/index.js", diff --git a/src/lib/sqlite/db-delete.ts b/src/lib/sqlite/db-delete.ts index 690ddb6..d222ec0 100644 --- a/src/lib/sqlite/db-delete.ts +++ b/src/lib/sqlite/db-delete.ts @@ -20,6 +20,8 @@ export default async function DbDelete< query, targetId, }: Params): Promise { + let sqlObj: ReturnType | null = null; + try { let finalQuery = query || {}; @@ -36,17 +38,17 @@ export default async function DbDelete< ); } - const sqlQueryObj = sqlGenerator({ + sqlObj = sqlGenerator({ tableName: table, genObject: finalQuery, }); - const whereClause = sqlQueryObj.string.match(/WHERE .*/)?.[0]; + const whereClause = sqlObj.string.match(/WHERE .*/)?.[0]; if (whereClause) { let sql = `DELETE FROM ${table} ${whereClause}`; - const res = DbClient.run(sql, sqlQueryObj.values); + const res = DbClient.run(sql, sqlObj.values); return { success: Boolean(res.changes), @@ -55,20 +57,25 @@ export default async function DbDelete< insertId: Number(res.lastInsertRowid), }, debug: { - sql, - values: sqlQueryObj.values, + sqlObj, }, }; } else { return { success: false, msg: `No WHERE clause`, + debug: { + sqlObj, + }, }; } } catch (error: any) { return { success: false, error: error.message, + debug: { + sqlObj, + }, }; } } diff --git a/src/lib/sqlite/db-insert.ts b/src/lib/sqlite/db-insert.ts index d8e57a2..3e60b3e 100644 --- a/src/lib/sqlite/db-insert.ts +++ b/src/lib/sqlite/db-insert.ts @@ -1,5 +1,5 @@ import DbClient from "."; -import type { APIResponseObject } from "../../types"; +import type { APIResponseObject, SQLInsertGenReturn } from "../../types"; import sqlInsertGenerator from "../../utils/sql-insert-generator"; type Params< @@ -14,6 +14,8 @@ export default async function DbInsert< Schema extends { [k: string]: any } = { [k: string]: any }, Table extends string = string, >({ table, data }: Params): Promise { + let sqlObj: SQLInsertGenReturn | null = null; + try { const finalData: { [k: string]: any }[] = data.map((d) => ({ ...d, @@ -21,10 +23,11 @@ export default async function DbInsert< updated_at: Date.now(), })); - const sqlObj = sqlInsertGenerator({ - tableName: table, - data: finalData as any[], - }); + sqlObj = + sqlInsertGenerator({ + tableName: table, + data: finalData as any[], + }) || null; const res = DbClient.run(sqlObj?.query || "", sqlObj?.values || []); @@ -42,6 +45,9 @@ export default async function DbInsert< return { success: false, error: error.message, + debug: { + sqlObj, + }, }; } } diff --git a/src/lib/sqlite/db-select.ts b/src/lib/sqlite/db-select.ts index da999b0..2eaa96f 100644 --- a/src/lib/sqlite/db-select.ts +++ b/src/lib/sqlite/db-select.ts @@ -23,6 +23,8 @@ export default async function DbSelect< count, targetId, }: Params): Promise> { + let sqlObj: ReturnType | null = null; + try { let finalQuery = query || {}; @@ -39,7 +41,7 @@ export default async function DbSelect< ); } - const sqlObj = sqlGenerator({ + sqlObj = sqlGenerator({ tableName: table, genObject: finalQuery, count, @@ -73,6 +75,9 @@ export default async function DbSelect< return { success: false, error: error.message, + debug: { + sqlObj, + }, }; } } diff --git a/src/lib/sqlite/db-update.ts b/src/lib/sqlite/db-update.ts index 10be70a..fc76f0a 100644 --- a/src/lib/sqlite/db-update.ts +++ b/src/lib/sqlite/db-update.ts @@ -22,6 +22,8 @@ export default async function DbUpdate< query, targetId, }: Params): Promise { + let sqlObj: ReturnType | null = null; + try { let finalQuery = query || {}; @@ -38,14 +40,14 @@ export default async function DbUpdate< ); } - const sqlQueryObj = sqlGenerator({ + sqlObj = sqlGenerator({ tableName: table, genObject: finalQuery, }); let values: (string | number)[] = []; - const whereClause = sqlQueryObj.string.match(/WHERE .*/)?.[0]; + const whereClause = sqlObj.string.match(/WHERE .*/)?.[0]; if (whereClause) { let sql = `UPDATE ${table} SET`; @@ -74,7 +76,7 @@ export default async function DbUpdate< } sql += ` ${whereClause}`; - values = [...values, ...sqlQueryObj.values]; + values = [...values, ...sqlObj.values]; const res = DbClient.run(sql, values); @@ -85,8 +87,7 @@ export default async function DbUpdate< insertId: Number(res.lastInsertRowid), }, debug: { - sql, - values, + sqlObj, }, }; } else { @@ -99,6 +100,9 @@ export default async function DbUpdate< return { success: false, error: error.message, + debug: { + sqlObj, + }, }; } }