This commit is contained in:
Benjamin Toby 2025-01-15 22:59:16 +01:00
parent a2feec6f5b
commit b18ec506b3
6 changed files with 89 additions and 23 deletions

View File

@ -1,5 +1,9 @@
import { ServerQueryParam } from "../../../types";
type Param = { type Param = {
query: string; query: string | {
query: ServerQueryParam;
table: string;
};
queryValues?: (string | number)[]; queryValues?: (string | number)[];
dbFullName: string; dbFullName: string;
tableName?: string; tableName?: string;

10
dist/utils/get.d.ts vendored
View File

@ -1,14 +1,20 @@
import { GetReturn } from "../package-shared/types"; import { GetReturn, ServerQueryParam } from "../package-shared/types";
export type ApiGetQueryObject = {
query: ServerQueryParam;
table: string;
dbFullName?: string;
};
type Param = { type Param = {
key?: string; key?: string;
db?: string; db?: string;
query: string; query: string | ApiGetQueryObject;
queryValues?: string[]; queryValues?: string[];
tableName?: string; tableName?: string;
useLocal?: boolean; useLocal?: boolean;
user_id?: string | number; user_id?: string | number;
debug?: boolean; debug?: boolean;
}; };
export type ApiGetParams = Param;
/** /**
* # Make a get request to Datasquirel API * # Make a get request to Datasquirel API
*/ */

24
dist/utils/get.js vendored
View File

@ -18,6 +18,7 @@ const fs_1 = __importDefault(require("fs"));
const grab_host_names_1 = __importDefault(require("../package-shared/utils/grab-host-names")); const grab_host_names_1 = __importDefault(require("../package-shared/utils/grab-host-names"));
const get_1 = __importDefault(require("../package-shared/functions/api/query/get")); const get_1 = __importDefault(require("../package-shared/functions/api/query/get"));
const serialize_query_1 = __importDefault(require("../package-shared/utils/serialize-query")); const serialize_query_1 = __importDefault(require("../package-shared/utils/serialize-query"));
const sql_generator_1 = __importDefault(require("../package-shared/functions/dsql/sql/sql-generator"));
/** /**
* # Make a get request to Datasquirel API * # Make a get request to Datasquirel API
*/ */
@ -62,12 +63,27 @@ function get(_a) {
* @description make a request to datasquirel.com * @description make a request to datasquirel.com
*/ */
const httpResponse = yield new Promise((resolve, reject) => { const httpResponse = yield new Promise((resolve, reject) => {
const queryGenObject = typeof query == "string"
? undefined
: (0, sql_generator_1.default)({
tableName: query.table,
genObject: query.query,
dbFullName: query.dbFullName || "__db",
});
const queryObject = { const queryObject = {
db: process.env.DSQL_API_DB_NAME || String(db), db: process.env.DSQL_API_DB_NAME || String(db),
query: String(query.replace(/\n|\r|\n\r/g, "").replace(/ {2,}/g, " ")), query: typeof query == "string"
queryValues: queryValues ? String(query
? JSON.stringify(queryValues) .replace(/\n|\r|\n\r/g, "")
: undefined, .replace(/ {2,}/g, " "))
: (queryGenObject === null || queryGenObject === void 0 ? void 0 : queryGenObject.string) || "",
queryValues: typeof query == "string"
? queryValues
? JSON.stringify(queryValues)
: undefined
: (queryGenObject === null || queryGenObject === void 0 ? void 0 : queryGenObject.values)
? JSON.stringify(queryGenObject.values)
: undefined,
tableName, tableName,
debug, debug,
}; };

View File

@ -3,10 +3,19 @@
import _ from "lodash"; import _ from "lodash";
import serverError from "../../backend/serverError"; import serverError from "../../backend/serverError";
import runQuery from "../../backend/db/runQuery"; import runQuery from "../../backend/db/runQuery";
import { DSQL_TableSchemaType, GetReturn } from "../../../types"; import {
DSQL_TableSchemaType,
GetReturn,
ServerQueryParam,
} from "../../../types";
type Param = { type Param = {
query: string; query:
| string
| {
query: ServerQueryParam;
table: string;
};
queryValues?: (string | number)[]; queryValues?: (string | number)[];
dbFullName: string; dbFullName: string;
tableName?: string; tableName?: string;

View File

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

View File

@ -4,12 +4,23 @@ import fs from "fs";
import grabHostNames from "../package-shared/utils/grab-host-names"; import grabHostNames from "../package-shared/utils/grab-host-names";
import apiGet from "../package-shared/functions/api/query/get"; import apiGet from "../package-shared/functions/api/query/get";
import serializeQuery from "../package-shared/utils/serialize-query"; import serializeQuery from "../package-shared/utils/serialize-query";
import { GetReturn } from "../package-shared/types"; import {
GetReqQueryObject,
GetReturn,
ServerQueryParam,
} from "../package-shared/types";
import sqlGenerator from "../package-shared/functions/dsql/sql/sql-generator";
export type ApiGetQueryObject = {
query: ServerQueryParam;
table: string;
dbFullName?: string;
};
type Param = { type Param = {
key?: string; key?: string;
db?: string; db?: string;
query: string; query: string | ApiGetQueryObject;
queryValues?: string[]; queryValues?: string[];
tableName?: string; tableName?: string;
useLocal?: boolean; useLocal?: boolean;
@ -17,6 +28,8 @@ type Param = {
debug?: boolean; debug?: boolean;
}; };
export type ApiGetParams = Param;
/** /**
* # Make a get request to Datasquirel API * # Make a get request to Datasquirel API
*/ */
@ -82,18 +95,36 @@ export default async function get({
* @description make a request to datasquirel.com * @description make a request to datasquirel.com
*/ */
const httpResponse = await new Promise((resolve, reject) => { const httpResponse = await new Promise((resolve, reject) => {
const queryObject: import("../package-shared/types").GetReqQueryObject = const queryGenObject =
{ typeof query == "string"
db: process.env.DSQL_API_DB_NAME || String(db), ? undefined
query: String( : sqlGenerator({
query.replace(/\n|\r|\n\r/g, "").replace(/ {2,}/g, " ") tableName: query.table,
), genObject: query.query,
queryValues: queryValues dbFullName: query.dbFullName || "__db",
? JSON.stringify(queryValues) });
const queryObject: GetReqQueryObject = {
db: process.env.DSQL_API_DB_NAME || String(db),
query:
typeof query == "string"
? String(
query
.replace(/\n|\r|\n\r/g, "")
.replace(/ {2,}/g, " ")
)
: queryGenObject?.string || "",
queryValues:
typeof query == "string"
? queryValues
? JSON.stringify(queryValues)
: undefined
: queryGenObject?.values
? JSON.stringify(queryGenObject.values)
: undefined, : undefined,
tableName, tableName,
debug, debug,
}; };
if (debug) { if (debug) {
console.log("apiGet:queryObject", queryObject); console.log("apiGet:queryObject", queryObject);