node-sql-gen
Advanced tools
| import { Data, Where, OkSql } from "./types"; | ||
| export declare const ErrorWhereNull = "where cannot be null or empty"; | ||
| export declare const ErrorSetNull = "set data cannot be null or empty"; | ||
| export declare const ErrorWhereInEmptyArray = "where condition [in] value must be array (len>0)"; | ||
| export declare const ErrorUnknownOperator: string; | ||
| export declare const getFields: (fields?: string) => string; | ||
| export declare const genWhere: (where?: Where) => OkSql; | ||
| export declare const genData: (data: Data) => Data; |
| import { Limit, Where, Data, Sql } from "./types"; | ||
| export declare const OR = "Symbol(OR)"; | ||
| export declare function select(table: string, fields?: string, where?: Where, orderBy?: string, limit?: Limit | string): Sql; | ||
| export declare function insert(table: string, data: Data): Sql; | ||
| export declare function update(table: string, where: Where, setData: Data): Sql; | ||
| export declare function del(table: string, where: Where): Sql; | ||
| declare const _default: { | ||
| select: typeof select; | ||
| insert: typeof insert; | ||
| update: typeof update; | ||
| del: typeof del; | ||
| OR: string; | ||
| }; | ||
| export default _default; |
| export declare type SqlValue = string | number | null | Record<string, unknown> | Array<unknown>; | ||
| export declare const OR = "Symbol(OR)"; | ||
| export declare const AvailableOperator: string[]; | ||
| export interface Operator { | ||
| LIKE?: string; | ||
| IN?: (string | number)[]; | ||
| ">"?: string | number; | ||
| "<"?: string | number; | ||
| ">="?: string | number; | ||
| "<="?: string | number; | ||
| "="?: string | number; | ||
| [OR]?: Operator; | ||
| } | ||
| export interface Limit { | ||
| offset?: number; | ||
| size: number; | ||
| } | ||
| export interface Where { | ||
| [key: string]: null | string | number | Operator | Where; | ||
| [OR]?: Where; | ||
| } | ||
| export interface Data { | ||
| [key: string]: SqlValue; | ||
| } | ||
| export interface Sql { | ||
| sql: string; | ||
| args: unknown[]; | ||
| } | ||
| export interface OkSql extends Sql { | ||
| ok: boolean; | ||
| } |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.genData = exports.genWhere = exports.getFields = exports.ErrorUnknownOperator = exports.ErrorWhereInEmptyArray = exports.ErrorSetNull = exports.ErrorWhereNull = void 0; | ||
| const _ = require("lodash"); | ||
| const types_1 = require("./types"); | ||
@@ -54,3 +53,2 @@ exports.ErrorWhereNull = "where cannot be null or empty"; | ||
| } | ||
| where = _.cloneDeep(where); | ||
| const sqlArr = []; | ||
@@ -98,3 +96,3 @@ let args = []; | ||
| const genData = (data) => { | ||
| const newData = _.cloneDeep(data); | ||
| const newData = JSON.parse(JSON.stringify(data)); | ||
| for (const key in newData) { | ||
@@ -101,0 +99,0 @@ const value = newData[key]; |
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/helper.ts"],"names":[],"mappings":"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"} | ||
| {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/helper.ts"],"names":[],"mappings":"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"} |
+2
-1
| { | ||
| "name": "node-sql-gen", | ||
| "version": "0.0.2", | ||
| "version": "0.0.3", | ||
| "description": "simple sql query generator", | ||
| "main": "dist/cjs/index.js", | ||
| "types": "dist/cjs/index.d.ts", | ||
| "scripts": { | ||
@@ -7,0 +8,0 @@ "build": "rm -rf dist; tsc", |
+1
-3
@@ -1,2 +0,1 @@ | ||
| import * as _ from "lodash" | ||
| import { Data, Operator, Where, OkSql, OR, AvailableOperator } from "./types" | ||
@@ -53,3 +52,2 @@ | ||
| } | ||
| where = _.cloneDeep(where) | ||
| const sqlArr = [] | ||
@@ -97,3 +95,3 @@ let args = [] | ||
| export const genData = (data: Data): Data => { | ||
| const newData = _.cloneDeep(data) | ||
| const newData = JSON.parse(JSON.stringify(data)) as Data | ||
| for (const key in newData) { | ||
@@ -100,0 +98,0 @@ const value = newData[key] |
+1
-0
@@ -7,2 +7,3 @@ { | ||
| "experimentalDecorators": true, | ||
| "declaration": true, | ||
| "sourceMap": true, | ||
@@ -9,0 +10,0 @@ "outDir": "./dist/cjs", |
33192
5.81%19
18.75%675
8%