Update Types
This commit is contained in:
parent
7188fe6e2c
commit
94d15ecb30
19
dist/package-shared/functions/api/query/get.d.ts
vendored
19
dist/package-shared/functions/api/query/get.d.ts
vendored
@ -1,10 +1,11 @@
|
|||||||
import { DbContextsArray } from "../../backend/db/runQuery";
|
import { DbContextsArray } from "../../backend/db/runQuery";
|
||||||
import { ServerQueryParam } from "../../../types";
|
import { ApiGetQueryObject } from "../../../types";
|
||||||
type Param = {
|
type Param<T extends {
|
||||||
query: string | {
|
[key: string]: any;
|
||||||
query: ServerQueryParam;
|
} = {
|
||||||
table: string;
|
[key: string]: any;
|
||||||
};
|
}> = {
|
||||||
|
query: string | ApiGetQueryObject<T>;
|
||||||
queryValues?: (string | number)[];
|
queryValues?: (string | number)[];
|
||||||
dbFullName: string;
|
dbFullName: string;
|
||||||
tableName?: string;
|
tableName?: string;
|
||||||
@ -15,5 +16,9 @@ type Param = {
|
|||||||
/**
|
/**
|
||||||
* # Get Function FOr API
|
* # Get Function FOr API
|
||||||
*/
|
*/
|
||||||
export default function apiGet({ query, dbFullName, queryValues, tableName, dbSchema, debug, dbContext, }: Param): Promise<import("../../../types").GetReturn>;
|
export default function apiGet<T extends {
|
||||||
|
[key: string]: any;
|
||||||
|
} = {
|
||||||
|
[key: string]: any;
|
||||||
|
}>({ query, dbFullName, queryValues, tableName, dbSchema, debug, dbContext, }: Param<T>): Promise<import("../../../types").GetReturn>;
|
||||||
export {};
|
export {};
|
||||||
|
@ -1,6 +1,10 @@
|
|||||||
import { ServerQueryParam } from "../../../types";
|
import { ServerQueryParam } from "../../../types";
|
||||||
type Param = {
|
type Param<T extends {
|
||||||
genObject?: ServerQueryParam;
|
[key: string]: any;
|
||||||
|
} = {
|
||||||
|
[key: string]: any;
|
||||||
|
}> = {
|
||||||
|
genObject?: ServerQueryParam<T>;
|
||||||
tableName: string;
|
tableName: string;
|
||||||
dbFullName?: string;
|
dbFullName?: string;
|
||||||
};
|
};
|
||||||
@ -12,5 +16,9 @@ type Return = {
|
|||||||
* # SQL Query Generator
|
* # SQL Query Generator
|
||||||
* @description Generates an SQL Query for node module `mysql` or `serverless-mysql`
|
* @description Generates an SQL Query for node module `mysql` or `serverless-mysql`
|
||||||
*/
|
*/
|
||||||
export default function sqlGenerator({ tableName, genObject, dbFullName, }: Param): Return;
|
export default function sqlGenerator<T extends {
|
||||||
|
[key: string]: any;
|
||||||
|
} = {
|
||||||
|
[key: string]: any;
|
||||||
|
}>({ tableName, genObject, dbFullName }: Param<T>): Return;
|
||||||
export {};
|
export {};
|
||||||
|
@ -5,7 +5,7 @@ exports.default = sqlGenerator;
|
|||||||
* # SQL Query Generator
|
* # SQL Query Generator
|
||||||
* @description Generates an SQL Query for node module `mysql` or `serverless-mysql`
|
* @description Generates an SQL Query for node module `mysql` or `serverless-mysql`
|
||||||
*/
|
*/
|
||||||
function sqlGenerator({ tableName, genObject, dbFullName, }) {
|
function sqlGenerator({ tableName, genObject, dbFullName }) {
|
||||||
if (!genObject)
|
if (!genObject)
|
||||||
return undefined;
|
return undefined;
|
||||||
const finalQuery = genObject.query ? genObject.query : undefined;
|
const finalQuery = genObject.query ? genObject.query : undefined;
|
||||||
@ -201,8 +201,8 @@ function sqlGenerator({ tableName, genObject, dbFullName, }) {
|
|||||||
}
|
}
|
||||||
if (genObject.order)
|
if (genObject.order)
|
||||||
queryString += ` ORDER BY ${genObject.join
|
queryString += ` ORDER BY ${genObject.join
|
||||||
? `${finalDbName}${tableName}.${genObject.order.field}`
|
? `${finalDbName}${tableName}.${String(genObject.order.field)}`
|
||||||
: genObject.order.field} ${genObject.order.strategy}`;
|
: String(genObject.order.field)} ${genObject.order.strategy}`;
|
||||||
if (genObject.limit)
|
if (genObject.limit)
|
||||||
queryString += ` LIMIT ${genObject.limit}`;
|
queryString += ` LIMIT ${genObject.limit}`;
|
||||||
if (genObject.offset)
|
if (genObject.offset)
|
||||||
|
7
dist/package-shared/types/index.d.ts
vendored
7
dist/package-shared/types/index.d.ts
vendored
@ -945,15 +945,16 @@ export type ServerQueryParam<T extends {
|
|||||||
selectFields?: string[];
|
selectFields?: string[];
|
||||||
query?: ServerQueryQueryObject<T>;
|
query?: ServerQueryQueryObject<T>;
|
||||||
limit?: number;
|
limit?: number;
|
||||||
|
page?: number;
|
||||||
offset?: number;
|
offset?: number;
|
||||||
order?: {
|
order?: {
|
||||||
field: string;
|
field: keyof T;
|
||||||
strategy: "ASC" | "DESC";
|
strategy: "ASC" | "DESC";
|
||||||
};
|
};
|
||||||
searchOperator?: (typeof ServerQueryOperators)[number];
|
searchOperator?: (typeof ServerQueryOperators)[number];
|
||||||
searchEquality?: (typeof ServerQueryEqualities)[number];
|
searchEquality?: (typeof ServerQueryEqualities)[number];
|
||||||
addUserId?: {
|
addUserId?: {
|
||||||
fieldName: string;
|
fieldName: keyof T;
|
||||||
};
|
};
|
||||||
join?: ServerQueryParamsJoin[];
|
join?: ServerQueryParamsJoin[];
|
||||||
[key: string]: any;
|
[key: string]: any;
|
||||||
@ -1320,7 +1321,7 @@ export type DsqlCrudQueryObject<T extends {
|
|||||||
[key: string]: any;
|
[key: string]: any;
|
||||||
} = {
|
} = {
|
||||||
[key: string]: any;
|
[key: string]: any;
|
||||||
}> = ServerQueryParam & {
|
}> = ServerQueryParam<T> & {
|
||||||
query?: ServerQueryQueryObject<T>;
|
query?: ServerQueryQueryObject<T>;
|
||||||
};
|
};
|
||||||
export type DsqlCrudParam<T extends {
|
export type DsqlCrudParam<T extends {
|
||||||
|
@ -13,7 +13,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|||||||
};
|
};
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
Object.defineProperty(exports, "__esModule", { value: true });
|
||||||
exports.default = dsqlMethodCrud;
|
exports.default = dsqlMethodCrud;
|
||||||
|
const deserialize_query_1 = __importDefault(require("../deserialize-query"));
|
||||||
const ejson_1 = __importDefault(require("../ejson"));
|
const ejson_1 = __importDefault(require("../ejson"));
|
||||||
|
const numberfy_1 = __importDefault(require("../numberfy"));
|
||||||
const crud_1 = __importDefault(require("./crud"));
|
const crud_1 = __importDefault(require("./crud"));
|
||||||
function dsqlMethodCrud(_a) {
|
function dsqlMethodCrud(_a) {
|
||||||
return __awaiter(this, arguments, void 0, function* ({ method, tableName, addUser, user, extraData, transform, existingData, body, query, targetId, sanitize, }) {
|
return __awaiter(this, arguments, void 0, function* ({ method, tableName, addUser, user, extraData, transform, existingData, body, query, targetId, sanitize, }) {
|
||||||
@ -22,7 +24,7 @@ function dsqlMethodCrud(_a) {
|
|||||||
};
|
};
|
||||||
try {
|
try {
|
||||||
let finalBody = body;
|
let finalBody = body;
|
||||||
let finalQuery = query;
|
let finalQuery = (0, deserialize_query_1.default)(query);
|
||||||
let LIMIT = 10;
|
let LIMIT = 10;
|
||||||
let PAGE = 1;
|
let PAGE = 1;
|
||||||
let OFFSET = (PAGE - 1) * LIMIT;
|
let OFFSET = (PAGE - 1) * LIMIT;
|
||||||
@ -39,8 +41,10 @@ function dsqlMethodCrud(_a) {
|
|||||||
finalQuery[key] = false;
|
finalQuery[key] = false;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
LIMIT = finalQuery.limit || 10;
|
if (finalQuery.limit)
|
||||||
PAGE = finalQuery.page || 1;
|
LIMIT = (0, numberfy_1.default)(finalQuery.limit);
|
||||||
|
if (finalQuery.page)
|
||||||
|
PAGE = (0, numberfy_1.default)(finalQuery.page);
|
||||||
OFFSET = (PAGE - 1) * LIMIT;
|
OFFSET = (PAGE - 1) * LIMIT;
|
||||||
}
|
}
|
||||||
let finalData = finalBody
|
let finalData = finalBody
|
||||||
|
@ -1,9 +1,17 @@
|
|||||||
import { ApiGetQueryObject } from "../types";
|
import { ApiGetQueryObject } from "../types";
|
||||||
type Param = {
|
type Param<T extends {
|
||||||
query: string | ApiGetQueryObject;
|
[key: string]: any;
|
||||||
|
} = {
|
||||||
|
[key: string]: any;
|
||||||
|
}> = {
|
||||||
|
query: string | ApiGetQueryObject<T>;
|
||||||
values?: (string | number)[];
|
values?: (string | number)[];
|
||||||
};
|
};
|
||||||
export default function apiGetGrabQueryAndValues({ query, values }: Param): {
|
export default function apiGetGrabQueryAndValues<T extends {
|
||||||
|
[key: string]: any;
|
||||||
|
} = {
|
||||||
|
[key: string]: any;
|
||||||
|
}>({ query, values }: Param<T>): {
|
||||||
query: string;
|
query: string;
|
||||||
values: (string | number)[] | undefined;
|
values: (string | number)[] | undefined;
|
||||||
valuesString: string | undefined;
|
valuesString: string | undefined;
|
||||||
|
@ -4,19 +4,15 @@ import _ from "lodash";
|
|||||||
import serverError from "../../backend/serverError";
|
import serverError from "../../backend/serverError";
|
||||||
import runQuery, { DbContextsArray } from "../../backend/db/runQuery";
|
import runQuery, { DbContextsArray } from "../../backend/db/runQuery";
|
||||||
import {
|
import {
|
||||||
|
ApiGetQueryObject,
|
||||||
DSQL_TableSchemaType,
|
DSQL_TableSchemaType,
|
||||||
GetReturn,
|
GetReturn,
|
||||||
ServerQueryParam,
|
ServerQueryParam,
|
||||||
} from "../../../types";
|
} from "../../../types";
|
||||||
import apiGetGrabQueryAndValues from "../../../utils/grab-query-and-values";
|
import apiGetGrabQueryAndValues from "../../../utils/grab-query-and-values";
|
||||||
|
|
||||||
type Param = {
|
type Param<T extends { [key: string]: any } = { [key: string]: any }> = {
|
||||||
query:
|
query: string | ApiGetQueryObject<T>;
|
||||||
| string
|
|
||||||
| {
|
|
||||||
query: ServerQueryParam;
|
|
||||||
table: string;
|
|
||||||
};
|
|
||||||
queryValues?: (string | number)[];
|
queryValues?: (string | number)[];
|
||||||
dbFullName: string;
|
dbFullName: string;
|
||||||
tableName?: string;
|
tableName?: string;
|
||||||
@ -28,7 +24,9 @@ type Param = {
|
|||||||
/**
|
/**
|
||||||
* # Get Function FOr API
|
* # Get Function FOr API
|
||||||
*/
|
*/
|
||||||
export default async function apiGet({
|
export default async function apiGet<
|
||||||
|
T extends { [key: string]: any } = { [key: string]: any }
|
||||||
|
>({
|
||||||
query,
|
query,
|
||||||
dbFullName,
|
dbFullName,
|
||||||
queryValues,
|
queryValues,
|
||||||
@ -36,7 +34,7 @@ export default async function apiGet({
|
|||||||
dbSchema,
|
dbSchema,
|
||||||
debug,
|
debug,
|
||||||
dbContext,
|
dbContext,
|
||||||
}: Param): Promise<import("../../../types").GetReturn> {
|
}: Param<T>): Promise<import("../../../types").GetReturn> {
|
||||||
const queryAndValues = apiGetGrabQueryAndValues({
|
const queryAndValues = apiGetGrabQueryAndValues({
|
||||||
query,
|
query,
|
||||||
values: queryValues,
|
values: queryValues,
|
||||||
|
@ -4,8 +4,8 @@ import {
|
|||||||
ServerQueryQueryObject,
|
ServerQueryQueryObject,
|
||||||
} from "../../../types";
|
} from "../../../types";
|
||||||
|
|
||||||
type Param = {
|
type Param<T extends { [key: string]: any } = { [key: string]: any }> = {
|
||||||
genObject?: ServerQueryParam;
|
genObject?: ServerQueryParam<T>;
|
||||||
tableName: string;
|
tableName: string;
|
||||||
dbFullName?: string;
|
dbFullName?: string;
|
||||||
};
|
};
|
||||||
@ -21,11 +21,9 @@ type Return =
|
|||||||
* # SQL Query Generator
|
* # SQL Query Generator
|
||||||
* @description Generates an SQL Query for node module `mysql` or `serverless-mysql`
|
* @description Generates an SQL Query for node module `mysql` or `serverless-mysql`
|
||||||
*/
|
*/
|
||||||
export default function sqlGenerator({
|
export default function sqlGenerator<
|
||||||
tableName,
|
T extends { [key: string]: any } = { [key: string]: any }
|
||||||
genObject,
|
>({ tableName, genObject, dbFullName }: Param<T>): Return {
|
||||||
dbFullName,
|
|
||||||
}: Param): Return {
|
|
||||||
if (!genObject) return undefined;
|
if (!genObject) return undefined;
|
||||||
|
|
||||||
const finalQuery = genObject.query ? genObject.query : undefined;
|
const finalQuery = genObject.query ? genObject.query : undefined;
|
||||||
@ -276,8 +274,8 @@ export default function sqlGenerator({
|
|||||||
if (genObject.order)
|
if (genObject.order)
|
||||||
queryString += ` ORDER BY ${
|
queryString += ` ORDER BY ${
|
||||||
genObject.join
|
genObject.join
|
||||||
? `${finalDbName}${tableName}.${genObject.order.field}`
|
? `${finalDbName}${tableName}.${String(genObject.order.field)}`
|
||||||
: genObject.order.field
|
: String(genObject.order.field)
|
||||||
} ${genObject.order.strategy}`;
|
} ${genObject.order.strategy}`;
|
||||||
|
|
||||||
if (genObject.limit) queryString += ` LIMIT ${genObject.limit}`;
|
if (genObject.limit) queryString += ` LIMIT ${genObject.limit}`;
|
||||||
|
@ -1098,15 +1098,16 @@ export type ServerQueryParam<
|
|||||||
selectFields?: string[];
|
selectFields?: string[];
|
||||||
query?: ServerQueryQueryObject<T>;
|
query?: ServerQueryQueryObject<T>;
|
||||||
limit?: number;
|
limit?: number;
|
||||||
|
page?: number;
|
||||||
offset?: number;
|
offset?: number;
|
||||||
order?: {
|
order?: {
|
||||||
field: string;
|
field: keyof T;
|
||||||
strategy: "ASC" | "DESC";
|
strategy: "ASC" | "DESC";
|
||||||
};
|
};
|
||||||
searchOperator?: (typeof ServerQueryOperators)[number];
|
searchOperator?: (typeof ServerQueryOperators)[number];
|
||||||
searchEquality?: (typeof ServerQueryEqualities)[number];
|
searchEquality?: (typeof ServerQueryEqualities)[number];
|
||||||
addUserId?: {
|
addUserId?: {
|
||||||
fieldName: string;
|
fieldName: keyof T;
|
||||||
};
|
};
|
||||||
join?: ServerQueryParamsJoin[];
|
join?: ServerQueryParamsJoin[];
|
||||||
[key: string]: any;
|
[key: string]: any;
|
||||||
@ -1500,7 +1501,7 @@ export const DsqlCrudActions = ["insert", "update", "delete", "get"] as const;
|
|||||||
|
|
||||||
export type DsqlCrudQueryObject<
|
export type DsqlCrudQueryObject<
|
||||||
T extends { [key: string]: any } = { [key: string]: any }
|
T extends { [key: string]: any } = { [key: string]: any }
|
||||||
> = ServerQueryParam & {
|
> = ServerQueryParam<T> & {
|
||||||
query?: ServerQueryQueryObject<T>;
|
query?: ServerQueryQueryObject<T>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1,5 +1,11 @@
|
|||||||
import { DsqlMethodCrudParam, ServerQueryParam } from "../../types";
|
import {
|
||||||
|
DsqlCrudQueryObject,
|
||||||
|
DsqlMethodCrudParam,
|
||||||
|
ServerQueryParam,
|
||||||
|
} from "../../types";
|
||||||
|
import deserializeQuery from "../deserialize-query";
|
||||||
import EJSON from "../ejson";
|
import EJSON from "../ejson";
|
||||||
|
import numberfy from "../numberfy";
|
||||||
import dsqlCrud from "./crud";
|
import dsqlCrud from "./crud";
|
||||||
|
|
||||||
export type APIDataCrudQuery = ServerQueryParam & {
|
export type APIDataCrudQuery = ServerQueryParam & {
|
||||||
@ -35,7 +41,9 @@ export default async function dsqlMethodCrud<
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
let finalBody = body;
|
let finalBody = body;
|
||||||
let finalQuery = query;
|
let finalQuery = deserializeQuery(query as any) as
|
||||||
|
| DsqlCrudQueryObject<T>
|
||||||
|
| undefined;
|
||||||
|
|
||||||
let LIMIT = 10;
|
let LIMIT = 10;
|
||||||
let PAGE = 1;
|
let PAGE = 1;
|
||||||
@ -55,8 +63,8 @@ export default async function dsqlMethodCrud<
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
LIMIT = finalQuery.limit || 10;
|
if (finalQuery.limit) LIMIT = numberfy(finalQuery.limit);
|
||||||
PAGE = finalQuery.page || 1;
|
if (finalQuery.page) PAGE = numberfy(finalQuery.page);
|
||||||
OFFSET = (PAGE - 1) * LIMIT;
|
OFFSET = (PAGE - 1) * LIMIT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,11 +1,13 @@
|
|||||||
import sqlGenerator from "../functions/dsql/sql/sql-generator";
|
import sqlGenerator from "../functions/dsql/sql/sql-generator";
|
||||||
import { ApiGetQueryObject } from "../types";
|
import { ApiGetQueryObject } from "../types";
|
||||||
|
|
||||||
type Param = {
|
type Param<T extends { [key: string]: any } = { [key: string]: any }> = {
|
||||||
query: string | ApiGetQueryObject;
|
query: string | ApiGetQueryObject<T>;
|
||||||
values?: (string | number)[];
|
values?: (string | number)[];
|
||||||
};
|
};
|
||||||
export default function apiGetGrabQueryAndValues({ query, values }: Param) {
|
export default function apiGetGrabQueryAndValues<
|
||||||
|
T extends { [key: string]: any } = { [key: string]: any }
|
||||||
|
>({ query, values }: Param<T>) {
|
||||||
const queryGenObject =
|
const queryGenObject =
|
||||||
typeof query == "string"
|
typeof query == "string"
|
||||||
? undefined
|
? undefined
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@moduletrace/datasquirel",
|
"name": "@moduletrace/datasquirel",
|
||||||
"version": "3.9.2",
|
"version": "3.9.3",
|
||||||
"description": "Cloud-based SQL data management tool",
|
"description": "Cloud-based SQL data management tool",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
"bin": {
|
"bin": {
|
||||||
|
Loading…
Reference in New Issue
Block a user