This commit is contained in:
Benjamin Toby 2025-04-23 14:21:14 +01:00
parent d78e44c98d
commit 2ad17ae682
7 changed files with 73 additions and 7 deletions

View File

@ -7,9 +7,10 @@ type Param = {
tableName?: string;
user_id?: boolean;
forceLocal?: boolean;
debug?: boolean;
};
/**
* # Make a post request to Datasquirel API
*/
export default function post({ key, query, queryValues, database, tableName, user_id, forceLocal, }: Param): Promise<PostReturn>;
export default function post({ key, query, queryValues, database, tableName, user_id, forceLocal, debug, }: Param): Promise<PostReturn>;
export {};

View File

@ -18,13 +18,21 @@ const path_1 = __importDefault(require("path"));
const fs_1 = __importDefault(require("fs"));
const grab_host_names_1 = __importDefault(require("../utils/grab-host-names"));
const post_1 = __importDefault(require("../functions/api/query/post"));
const debug_log_1 = __importDefault(require("../utils/logging/debug-log"));
/**
* # Make a post request to Datasquirel API
*/
function post(_a) {
return __awaiter(this, arguments, void 0, function* ({ key, query, queryValues, database, tableName, user_id, forceLocal, }) {
return __awaiter(this, arguments, void 0, function* ({ key, query, queryValues, database, tableName, user_id, forceLocal, debug, }) {
const grabedHostNames = (0, grab_host_names_1.default)();
const { host, port, scheme } = grabedHostNames;
if (debug) {
(0, debug_log_1.default)({
log: grabedHostNames,
addTime: true,
label: "grabedHostNames",
});
}
/**
* Check for local DB settings
*
@ -43,6 +51,12 @@ function post(_a) {
dbSchema = JSON.parse(fs_1.default.readFileSync(localDbSchemaPath, "utf8"));
}
catch (error) { }
if (debug) {
(0, debug_log_1.default)({
log: "Using Local DB ...",
addTime: true,
});
}
return yield (0, post_1.default)({
dbFullName: DSQL_DB_NAME,
query,
@ -50,6 +64,7 @@ function post(_a) {
queryValues,
tableName,
forceLocal,
debug,
});
}
/**
@ -105,7 +120,7 @@ function post(_a) {
try {
resolve(JSON.parse(str));
}
catch ( /** @type {any} */error) {
catch (error) {
console.log("Route ERROR:", error.message);
resolve({
success: false,

View File

@ -8,9 +8,10 @@ type Param = {
dbSchema?: DSQL_DatabaseSchemaType;
dbContext?: (typeof DbContextsArray)[number];
forceLocal?: boolean;
debug?: boolean;
};
/**
* # Post Function For API
*/
export default function apiPost({ query, dbFullName, queryValues, tableName, dbSchema, dbContext, forceLocal, }: Param): Promise<PostReturn>;
export default function apiPost({ query, dbFullName, queryValues, tableName, dbSchema, dbContext, forceLocal, debug, }: Param): Promise<PostReturn>;
export {};

View File

@ -16,11 +16,12 @@ exports.default = apiPost;
const lodash_1 = __importDefault(require("lodash"));
const serverError_1 = __importDefault(require("../../backend/serverError"));
const runQuery_1 = __importDefault(require("../../backend/db/runQuery"));
const debug_log_1 = __importDefault(require("../../../utils/logging/debug-log"));
/**
* # Post Function For API
*/
function apiPost(_a) {
return __awaiter(this, arguments, void 0, function* ({ query, dbFullName, queryValues, tableName, dbSchema, dbContext, forceLocal, }) {
return __awaiter(this, arguments, void 0, function* ({ query, dbFullName, queryValues, tableName, dbSchema, dbContext, forceLocal, debug, }) {
var _b, _c;
if (typeof query === "string" && (query === null || query === void 0 ? void 0 : query.match(/^create |^alter |^drop /i))) {
return { success: false, msg: "Wrong Input" };
@ -45,6 +46,18 @@ function apiPost(_a) {
dbContext,
forceLocal,
});
if (debug) {
(0, debug_log_1.default)({
log: result,
addTime: true,
label: "result",
});
(0, debug_log_1.default)({
log: query,
addTime: true,
label: "query",
});
}
results = result;
if (error)
throw error;

View File

@ -5,6 +5,7 @@ import fs from "fs";
import grabHostNames from "../utils/grab-host-names";
import apiPost from "../functions/api/query/post";
import { PostDataPayload, PostReturn } from "../types";
import debugLog from "../utils/logging/debug-log";
type Param = {
key?: string;
@ -14,6 +15,7 @@ type Param = {
tableName?: string;
user_id?: boolean;
forceLocal?: boolean;
debug?: boolean;
};
/**
@ -27,10 +29,19 @@ export default async function post({
tableName,
user_id,
forceLocal,
debug,
}: Param): Promise<PostReturn> {
const grabedHostNames = grabHostNames();
const { host, port, scheme } = grabedHostNames;
if (debug) {
debugLog({
log: grabedHostNames,
addTime: true,
label: "grabedHostNames",
});
}
/**
* Check for local DB settings
*
@ -57,6 +68,13 @@ export default async function post({
dbSchema = JSON.parse(fs.readFileSync(localDbSchemaPath, "utf8"));
} catch (error) {}
if (debug) {
debugLog({
log: "Using Local DB ...",
addTime: true,
});
}
return await apiPost({
dbFullName: DSQL_DB_NAME,
query,
@ -64,6 +82,7 @@ export default async function post({
queryValues,
tableName,
forceLocal,
debug,
});
}
@ -132,7 +151,7 @@ export default async function post({
response.on("end", function () {
try {
resolve(JSON.parse(str));
} catch (/** @type {any} */ error: any) {
} catch (error: any) {
console.log("Route ERROR:", error.message);
resolve({

View File

@ -2,6 +2,7 @@ import _ from "lodash";
import serverError from "../../backend/serverError";
import runQuery, { DbContextsArray } from "../../backend/db/runQuery";
import { DSQL_DatabaseSchemaType, PostReturn } from "../../../types";
import debugLog from "../../../utils/logging/debug-log";
type Param = {
query: any;
@ -11,6 +12,7 @@ type Param = {
dbSchema?: DSQL_DatabaseSchemaType;
dbContext?: (typeof DbContextsArray)[number];
forceLocal?: boolean;
debug?: boolean;
};
/**
@ -24,6 +26,7 @@ export default async function apiPost({
dbSchema,
dbContext,
forceLocal,
debug,
}: Param): Promise<PostReturn> {
if (typeof query === "string" && query?.match(/^create |^alter |^drop /i)) {
return { success: false, msg: "Wrong Input" };
@ -54,6 +57,20 @@ export default async function apiPost({
forceLocal,
});
if (debug) {
debugLog({
log: result,
addTime: true,
label: "result",
});
debugLog({
log: query,
addTime: true,
label: "query",
});
}
results = result;
if (error) throw error;

View File

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