Updates
This commit is contained in:
parent
b81948d2c1
commit
e6b4b09277
@ -1,8 +1,11 @@
|
||||
import { ServerQueryEqualities } from "../../../types";
|
||||
import { ServerQueryEqualities, ServerQueryObject } from "../../../types";
|
||||
type Params = {
|
||||
fieldName: string;
|
||||
value?: string;
|
||||
equality?: (typeof ServerQueryEqualities)[number];
|
||||
queryObj: ServerQueryObject<{
|
||||
[key: string]: any;
|
||||
}, string>;
|
||||
};
|
||||
type Return = {
|
||||
str?: string;
|
||||
@ -12,5 +15,5 @@ type Return = {
|
||||
* # SQL Gen Operator Gen
|
||||
* @description Generates an SQL operator for node module `mysql` or `serverless-mysql`
|
||||
*/
|
||||
export default function sqlGenOperatorGen({ fieldName, value, equality, }: Params): Return;
|
||||
export default function sqlGenOperatorGen({ fieldName, value, equality, queryObj, }: Params): Return;
|
||||
export {};
|
||||
|
@ -9,7 +9,13 @@ const sql_equality_parser_1 = __importDefault(require("../../../utils/sql-equali
|
||||
* # SQL Gen Operator Gen
|
||||
* @description Generates an SQL operator for node module `mysql` or `serverless-mysql`
|
||||
*/
|
||||
function sqlGenOperatorGen({ fieldName, value, equality, }) {
|
||||
function sqlGenOperatorGen({ fieldName, value, equality, queryObj, }) {
|
||||
if (queryObj.nullValue) {
|
||||
return { str: `${fieldName} IS NULL` };
|
||||
}
|
||||
if (queryObj.notNullValue) {
|
||||
return { str: `${fieldName} IS NOT NULL` };
|
||||
}
|
||||
if (value) {
|
||||
if (equality == "MATCH") {
|
||||
return {
|
||||
|
@ -38,11 +38,14 @@ function sqlGenerator({ tableName, genObject, dbFullName, count }) {
|
||||
return;
|
||||
const valueString = typeof valueParsed == "string"
|
||||
? valueParsed
|
||||
: (_a = valueParsed.value) === null || _a === void 0 ? void 0 : _a.toString();
|
||||
: valueParsed
|
||||
? (_a = valueParsed.value) === null || _a === void 0 ? void 0 : _a.toString()
|
||||
: undefined;
|
||||
const valueEquality = typeof valueParsed == "object"
|
||||
? valueParsed.equality || queryObj.equality
|
||||
: queryObj.equality;
|
||||
const operatorStrParam = (0, sql_gen_operator_gen_1.default)({
|
||||
queryObj,
|
||||
equality: valueEquality,
|
||||
fieldName: finalFieldName || "",
|
||||
value: (valueString === null || valueString === void 0 ? void 0 : valueString.toString()) || "",
|
||||
@ -58,11 +61,14 @@ function sqlGenerator({ tableName, genObject, dbFullName, count }) {
|
||||
str = "(" + strArray.join(` ${queryObj.operator || "AND"} `) + ")";
|
||||
}
|
||||
else {
|
||||
const valueParsed = String(queryObj.value);
|
||||
const valueParsed = queryObj.value
|
||||
? String(queryObj.value)
|
||||
: undefined;
|
||||
const operatorStrParam = (0, sql_gen_operator_gen_1.default)({
|
||||
equality: queryObj.equality,
|
||||
fieldName: finalFieldName || "",
|
||||
value: valueParsed,
|
||||
queryObj,
|
||||
});
|
||||
if (operatorStrParam.str && operatorStrParam.param) {
|
||||
str = operatorStrParam.str;
|
||||
|
@ -1,10 +1,16 @@
|
||||
import sqlEqualityParser from "../../../utils/sql-equality-parser";
|
||||
import { ServerQueryEqualities } from "../../../types";
|
||||
import { ServerQueryEqualities, ServerQueryObject } from "../../../types";
|
||||
|
||||
type Params = {
|
||||
fieldName: string;
|
||||
value?: string;
|
||||
equality?: (typeof ServerQueryEqualities)[number];
|
||||
queryObj: ServerQueryObject<
|
||||
{
|
||||
[key: string]: any;
|
||||
},
|
||||
string
|
||||
>;
|
||||
};
|
||||
|
||||
type Return = {
|
||||
@ -20,7 +26,16 @@ export default function sqlGenOperatorGen({
|
||||
fieldName,
|
||||
value,
|
||||
equality,
|
||||
queryObj,
|
||||
}: Params): Return {
|
||||
if (queryObj.nullValue) {
|
||||
return { str: `${fieldName} IS NULL` };
|
||||
}
|
||||
|
||||
if (queryObj.notNullValue) {
|
||||
return { str: `${fieldName} IS NOT NULL` };
|
||||
}
|
||||
|
||||
if (value) {
|
||||
if (equality == "MATCH") {
|
||||
return {
|
||||
|
@ -67,7 +67,9 @@ export default function sqlGenerator<
|
||||
const valueString =
|
||||
typeof valueParsed == "string"
|
||||
? valueParsed
|
||||
: valueParsed.value?.toString();
|
||||
: valueParsed
|
||||
? valueParsed.value?.toString()
|
||||
: undefined;
|
||||
|
||||
const valueEquality =
|
||||
typeof valueParsed == "object"
|
||||
@ -75,6 +77,7 @@ export default function sqlGenerator<
|
||||
: queryObj.equality;
|
||||
|
||||
const operatorStrParam = sqlGenOperatorGen({
|
||||
queryObj,
|
||||
equality: valueEquality,
|
||||
fieldName: finalFieldName || "",
|
||||
value: valueString?.toString() || "",
|
||||
@ -90,12 +93,15 @@ export default function sqlGenerator<
|
||||
|
||||
str = "(" + strArray.join(` ${queryObj.operator || "AND"} `) + ")";
|
||||
} else {
|
||||
const valueParsed = String(queryObj.value);
|
||||
const valueParsed = queryObj.value
|
||||
? String(queryObj.value)
|
||||
: undefined;
|
||||
|
||||
const operatorStrParam = sqlGenOperatorGen({
|
||||
equality: queryObj.equality,
|
||||
fieldName: finalFieldName || "",
|
||||
value: valueParsed,
|
||||
queryObj,
|
||||
});
|
||||
|
||||
if (operatorStrParam.str && operatorStrParam.param) {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@moduletrace/datasquirel",
|
||||
"version": "5.3.2",
|
||||
"version": "5.3.3",
|
||||
"description": "Cloud-based SQL data management tool",
|
||||
"main": "dist/index.js",
|
||||
"bin": {
|
||||
|
Loading…
Reference in New Issue
Block a user