easy-postgresql 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +45 -0
- package/SECURITY.md +15 -0
- package/database/procedure.ts +129 -0
- package/database/query.ts +78 -0
- package/database/sql_types.d.ts +52 -0
- package/database/sql_types.ts +90 -0
- package/database/table.ts +378 -0
- package/database.ts +26 -0
- package/dist/database/procedure.d.ts +26 -0
- package/dist/database/procedure.js +107 -0
- package/dist/database/procedure.js.map +1 -0
- package/dist/database/query.d.ts +13 -0
- package/dist/database/query.js +79 -0
- package/dist/database/query.js.map +1 -0
- package/dist/database/sql_types.d.ts +48 -0
- package/dist/database/sql_types.js +50 -0
- package/dist/database/sql_types.js.map +1 -0
- package/dist/database/table.d.ts +54 -0
- package/dist/database/table.js +308 -0
- package/dist/database/table.js.map +1 -0
- package/dist/database.d.ts +24 -0
- package/dist/database.js +28 -0
- package/dist/database.js.map +1 -0
- package/dist/operations/config.d.ts +22 -0
- package/dist/operations/config.js +30 -0
- package/dist/operations/config.js.map +1 -0
- package/dist/operations/connect_to_server.d.ts +28 -0
- package/dist/operations/connect_to_server.js +108 -0
- package/dist/operations/connect_to_server.js.map +1 -0
- package/dist/operations/data_types.d.ts +6 -0
- package/dist/operations/data_types.js +120 -0
- package/dist/operations/data_types.js.map +1 -0
- package/dist/operations/get_pieces.d.ts +29 -0
- package/dist/operations/get_pieces.js +56 -0
- package/dist/operations/get_pieces.js.map +1 -0
- package/dist/operations/log.d.ts +12 -0
- package/dist/operations/log.js +27 -0
- package/dist/operations/log.js.map +1 -0
- package/dist/operations/procedure_execute.d.ts +18 -0
- package/dist/operations/procedure_execute.js +53 -0
- package/dist/operations/procedure_execute.js.map +1 -0
- package/operations/config.ts +28 -0
- package/operations/connect_to_server.ts +111 -0
- package/operations/data_types.ts +129 -0
- package/operations/get_pieces.ts +63 -0
- package/operations/log.ts +27 -0
- package/operations/procedure_execute.ts +58 -0
- package/package.json +55 -0
- package/simple/advanced-test.js +631 -0
- package/simple/config.simple.js +9 -0
- package/simple/config.simple.ts +9 -0
- package/simple/test.js +398 -0
- package/simple/test.ts +392 -0
- package/tsconfig.json +21 -0
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This object contains the SQL data types.
|
|
3
|
+
* @file sql_types.ts
|
|
4
|
+
* @description This file contains the SQL data types.
|
|
5
|
+
* @module
|
|
6
|
+
*/
|
|
7
|
+
export interface SqlTypeOptions {
|
|
8
|
+
notNull: () => string;
|
|
9
|
+
primaryKey: () => string;
|
|
10
|
+
unique: () => string;
|
|
11
|
+
autoIncrement: () => string;
|
|
12
|
+
default: (value?: any) => string;
|
|
13
|
+
check: (value?: any) => string;
|
|
14
|
+
foreignKey: (table?: string, column?: string) => string;
|
|
15
|
+
}
|
|
16
|
+
export interface SqlTypes {
|
|
17
|
+
varchar: (length?: number) => string;
|
|
18
|
+
nvarchar: (length?: number) => string;
|
|
19
|
+
int: () => string;
|
|
20
|
+
bigint: () => string;
|
|
21
|
+
smallint: () => string;
|
|
22
|
+
tinyint: () => string;
|
|
23
|
+
bit: () => string;
|
|
24
|
+
float: () => string;
|
|
25
|
+
real: () => string;
|
|
26
|
+
decimal: (precision?: number, scale?: number) => string;
|
|
27
|
+
numeric: () => string;
|
|
28
|
+
money: () => string;
|
|
29
|
+
smallmoney: () => string;
|
|
30
|
+
date: () => string;
|
|
31
|
+
time: () => string;
|
|
32
|
+
datetime: () => string;
|
|
33
|
+
datetime2: () => string;
|
|
34
|
+
smalldatetime: () => string;
|
|
35
|
+
timestamp: () => string;
|
|
36
|
+
char: () => string;
|
|
37
|
+
nchar: () => string;
|
|
38
|
+
text: () => string;
|
|
39
|
+
ntext: () => string;
|
|
40
|
+
binary: () => string;
|
|
41
|
+
varbinary: () => string;
|
|
42
|
+
image: () => string;
|
|
43
|
+
uniqueidentifier: () => string;
|
|
44
|
+
sql_variant: () => string;
|
|
45
|
+
xml: () => string;
|
|
46
|
+
options: SqlTypeOptions;
|
|
47
|
+
}
|
|
48
|
+
export declare const sqlTypes: SqlTypes;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* This object contains the SQL data types.
|
|
4
|
+
* @file sql_types.ts
|
|
5
|
+
* @description This file contains the SQL data types.
|
|
6
|
+
* @module
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.sqlTypes = void 0;
|
|
10
|
+
exports.sqlTypes = {
|
|
11
|
+
varchar: (length = 255) => typeof length === 'number' ? `VARCHAR(${length})` : 'VARCHAR(255)',
|
|
12
|
+
nvarchar: (length = 255) => typeof length === 'number' ? `VARCHAR(${length})` : 'VARCHAR(255)',
|
|
13
|
+
int: () => 'INT',
|
|
14
|
+
bigint: () => 'BIGINT',
|
|
15
|
+
smallint: () => 'SMALLINT',
|
|
16
|
+
tinyint: () => 'SMALLINT',
|
|
17
|
+
bit: () => 'BOOLEAN',
|
|
18
|
+
float: () => 'FLOAT',
|
|
19
|
+
real: () => 'REAL',
|
|
20
|
+
decimal: (precision = 18, scale = 0) => typeof precision === 'number' && typeof scale === 'number' ? `DECIMAL(${precision}, ${scale})` : 'DECIMAL(18, 0)',
|
|
21
|
+
numeric: () => 'NUMERIC',
|
|
22
|
+
money: () => 'NUMERIC(19,4)',
|
|
23
|
+
smallmoney: () => 'NUMERIC(10,4)',
|
|
24
|
+
date: () => 'DATE',
|
|
25
|
+
time: () => 'TIME',
|
|
26
|
+
datetime: () => 'TIMESTAMP',
|
|
27
|
+
datetime2: () => 'TIMESTAMP',
|
|
28
|
+
smalldatetime: () => 'TIMESTAMP',
|
|
29
|
+
timestamp: () => 'BYTEA',
|
|
30
|
+
char: () => 'CHAR',
|
|
31
|
+
nchar: () => 'CHAR',
|
|
32
|
+
text: () => 'TEXT',
|
|
33
|
+
ntext: () => 'TEXT',
|
|
34
|
+
binary: () => 'BYTEA',
|
|
35
|
+
varbinary: () => 'BYTEA',
|
|
36
|
+
image: () => 'BYTEA',
|
|
37
|
+
uniqueidentifier: () => 'UUID',
|
|
38
|
+
sql_variant: () => 'TEXT',
|
|
39
|
+
xml: () => 'XML',
|
|
40
|
+
options: {
|
|
41
|
+
notNull: () => ' ' + 'NOT NULL',
|
|
42
|
+
primaryKey: () => ' ' + 'PRIMARY KEY',
|
|
43
|
+
unique: () => ' ' + 'UNIQUE',
|
|
44
|
+
autoIncrement: () => ' ' + 'GENERATED ALWAYS AS IDENTITY',
|
|
45
|
+
default: (value) => value !== undefined ? (' ' + `DEFAULT ${value}`) : '',
|
|
46
|
+
check: (value) => value !== undefined ? (' ' + `CHECK(${value})`) : '',
|
|
47
|
+
foreignKey: (table, column) => table !== undefined && column !== undefined ? (' ' + `REFERENCES ${table}(${column})`) : ''
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=sql_types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sql_types.js","sourceRoot":"","sources":["../../database/sql_types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
interface TableOptions {
|
|
2
|
+
limit?: number | null;
|
|
3
|
+
selected_keys?: string[];
|
|
4
|
+
likes?: Record<string, string>;
|
|
5
|
+
}
|
|
6
|
+
interface TableSchema {
|
|
7
|
+
[key: string]: string;
|
|
8
|
+
}
|
|
9
|
+
interface TableInfo {
|
|
10
|
+
name: string;
|
|
11
|
+
type: string;
|
|
12
|
+
date: string | null;
|
|
13
|
+
schema: TableSchema;
|
|
14
|
+
}
|
|
15
|
+
interface TableReference {
|
|
16
|
+
[key: string]: any;
|
|
17
|
+
}
|
|
18
|
+
interface TableData {
|
|
19
|
+
[key: string]: any;
|
|
20
|
+
}
|
|
21
|
+
interface TableFunctions {
|
|
22
|
+
create: (scheme: TableSchema) => Promise<boolean>;
|
|
23
|
+
remove: () => Promise<boolean>;
|
|
24
|
+
isThere: () => Promise<boolean>;
|
|
25
|
+
info: () => Promise<TableInfo | null>;
|
|
26
|
+
getAll: () => Promise<TableInfo[] | null>;
|
|
27
|
+
updateColumn: (columnName: string) => {
|
|
28
|
+
add: (type: string) => Promise<boolean>;
|
|
29
|
+
remove: () => Promise<boolean>;
|
|
30
|
+
rename: (newColumnName: string) => Promise<boolean>;
|
|
31
|
+
update: (type: string) => Promise<boolean>;
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
declare function TableFunctions(name: string): TableFunctions;
|
|
35
|
+
export declare function Table(name: string): {
|
|
36
|
+
find: (reference?: TableReference, options?: TableOptions) => Promise<any[]>;
|
|
37
|
+
findOne: (reference?: TableReference, options?: TableOptions) => Promise<any | null>;
|
|
38
|
+
createOne: (data: TableData) => Promise<boolean>;
|
|
39
|
+
updateOne: (reference: TableReference, data: TableData) => Promise<boolean>;
|
|
40
|
+
deleteOne: (reference: TableReference) => Promise<boolean>;
|
|
41
|
+
deleteAll: (reference?: TableReference) => Promise<boolean>;
|
|
42
|
+
first: (reference?: TableReference, options?: TableOptions) => Promise<any | null>;
|
|
43
|
+
firstOrDefault: (reference?: TableReference, options?: TableOptions) => Promise<any | null>;
|
|
44
|
+
single: (reference?: TableReference, options?: TableOptions) => Promise<any>;
|
|
45
|
+
singleOrDefault: (reference?: TableReference, options?: TableOptions) => Promise<any | null>;
|
|
46
|
+
last: (reference?: TableReference, options?: TableOptions) => Promise<any | null>;
|
|
47
|
+
lastOrDefault: (reference?: TableReference, options?: TableOptions) => Promise<any | null>;
|
|
48
|
+
count: (reference?: TableReference, options?: TableOptions) => Promise<number>;
|
|
49
|
+
min: (key: string, reference?: TableReference, options?: TableOptions) => Promise<number | null>;
|
|
50
|
+
max: (key: string, reference?: TableReference, options?: TableOptions) => Promise<number | null>;
|
|
51
|
+
average: (key: string, reference?: TableReference, options?: TableOptions) => Promise<number | null>;
|
|
52
|
+
functions: TableFunctions;
|
|
53
|
+
};
|
|
54
|
+
export {};
|
|
@@ -0,0 +1,308 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Table = Table;
|
|
4
|
+
const data_types_1 = require("../operations/data_types");
|
|
5
|
+
const get_pieces_1 = require("../operations/get_pieces");
|
|
6
|
+
const config_1 = require("../operations/config");
|
|
7
|
+
const query_1 = require("./query");
|
|
8
|
+
const log_1 = require("../operations/log");
|
|
9
|
+
function TableFunctions(name) {
|
|
10
|
+
async function create(scheme) {
|
|
11
|
+
const isThereTable = await isThere();
|
|
12
|
+
if (isThereTable)
|
|
13
|
+
return false;
|
|
14
|
+
if (!scheme || Object.keys(scheme).length === 0)
|
|
15
|
+
return false;
|
|
16
|
+
const stringScheme = Object.keys(scheme).map(m => m + ' ' + scheme[m]).join(', ');
|
|
17
|
+
const queryString = `CREATE TABLE ${name} (${stringScheme})`;
|
|
18
|
+
return (await (0, query_1.Query)(queryString))?.status === 200;
|
|
19
|
+
}
|
|
20
|
+
async function remove() {
|
|
21
|
+
const isThereTable = await isThere();
|
|
22
|
+
if (!isThereTable)
|
|
23
|
+
return false;
|
|
24
|
+
const queryString = `DROP TABLE ${name}`;
|
|
25
|
+
return (await (0, query_1.Query)(queryString))?.status === 200;
|
|
26
|
+
}
|
|
27
|
+
async function isThere() {
|
|
28
|
+
const queryString = `SELECT table_name FROM information_schema.tables WHERE table_schema = 'public' AND LOWER(table_name) = LOWER($1)`;
|
|
29
|
+
const queryOutput = await (0, query_1.Query)(queryString, [name]);
|
|
30
|
+
return queryOutput?.status === 200 && (queryOutput?.data?.length ?? 0) > 0;
|
|
31
|
+
}
|
|
32
|
+
async function info() {
|
|
33
|
+
const queryString = `SELECT table_name FROM information_schema.tables WHERE table_schema = 'public' AND LOWER(table_name) = LOWER($1)`;
|
|
34
|
+
const queryOutput = await (0, query_1.Query)(queryString, [name]);
|
|
35
|
+
if (queryOutput?.status !== 200) {
|
|
36
|
+
if (config_1.config.get.logingMode())
|
|
37
|
+
(0, log_1.log)('Table', 'Info', `Table ${name} not found.`);
|
|
38
|
+
return null;
|
|
39
|
+
}
|
|
40
|
+
const data = queryOutput?.data?.[0] || null;
|
|
41
|
+
if (!data)
|
|
42
|
+
return null;
|
|
43
|
+
const schema = await getSchema();
|
|
44
|
+
return {
|
|
45
|
+
name: data.table_name,
|
|
46
|
+
type: 'Table',
|
|
47
|
+
date: null,
|
|
48
|
+
schema
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
async function getAll() {
|
|
52
|
+
const queryString = `SELECT table_name FROM information_schema.tables WHERE table_schema = 'public'`;
|
|
53
|
+
const queryOutput = await (0, query_1.Query)(queryString);
|
|
54
|
+
if (queryOutput?.status !== 200) {
|
|
55
|
+
if (config_1.config.get.logingMode())
|
|
56
|
+
(0, log_1.log)('Table', 'Get All', 'Tables not found.');
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
const data = queryOutput?.data || [];
|
|
60
|
+
if (!data)
|
|
61
|
+
return null;
|
|
62
|
+
return Promise.all(data.map(async (m) => {
|
|
63
|
+
const schema = await getSchema(m.table_name);
|
|
64
|
+
return {
|
|
65
|
+
name: m.table_name,
|
|
66
|
+
type: 'Table',
|
|
67
|
+
date: null,
|
|
68
|
+
schema
|
|
69
|
+
};
|
|
70
|
+
}));
|
|
71
|
+
}
|
|
72
|
+
async function getSchema(tableName = name) {
|
|
73
|
+
const queryString = `SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS WHERE LOWER(TABLE_NAME) = LOWER($1)`;
|
|
74
|
+
const queryOutput = await (0, query_1.Query)(queryString, [tableName]);
|
|
75
|
+
if (queryOutput?.status !== 200)
|
|
76
|
+
return {};
|
|
77
|
+
const data = queryOutput?.data || [];
|
|
78
|
+
return data.reduce((acc, cur) => ({ ...acc, [cur.column_name]: cur.data_type }), {});
|
|
79
|
+
}
|
|
80
|
+
function updateColumn(columnName) {
|
|
81
|
+
async function add(type) {
|
|
82
|
+
const queryString = `ALTER TABLE ${name} ADD ${columnName} ${type}`;
|
|
83
|
+
return (await (0, query_1.Query)(queryString))?.status === 200;
|
|
84
|
+
}
|
|
85
|
+
async function remove() {
|
|
86
|
+
const queryString = `ALTER TABLE ${name} DROP COLUMN ${columnName}`;
|
|
87
|
+
return (await (0, query_1.Query)(queryString))?.status === 200;
|
|
88
|
+
}
|
|
89
|
+
async function rename(newColumnName) {
|
|
90
|
+
const queryString = `ALTER TABLE ${name} RENAME COLUMN ${columnName} TO ${newColumnName}`;
|
|
91
|
+
return (await (0, query_1.Query)(queryString))?.status === 200;
|
|
92
|
+
}
|
|
93
|
+
async function update(type) {
|
|
94
|
+
const queryString = `ALTER TABLE ${name} ALTER COLUMN ${columnName} TYPE ${type}`;
|
|
95
|
+
return (await (0, query_1.Query)(queryString))?.status === 200;
|
|
96
|
+
}
|
|
97
|
+
return {
|
|
98
|
+
add,
|
|
99
|
+
remove,
|
|
100
|
+
rename,
|
|
101
|
+
update
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
return {
|
|
105
|
+
create,
|
|
106
|
+
remove,
|
|
107
|
+
isThere,
|
|
108
|
+
info,
|
|
109
|
+
getAll,
|
|
110
|
+
updateColumn
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
function Table(name) {
|
|
114
|
+
async function find(reference = {}, options = { limit: null, selected_keys: [], likes: {} }) {
|
|
115
|
+
let table = await TableFunctions(name).info();
|
|
116
|
+
if (!table) {
|
|
117
|
+
if (config_1.config.get.logingMode())
|
|
118
|
+
(0, log_1.log)('Table', 'Find', `Table ${name} not found.`);
|
|
119
|
+
return [];
|
|
120
|
+
}
|
|
121
|
+
const { condition, inputs } = (0, get_pieces_1.getConditionPieces)(reference, 0);
|
|
122
|
+
let referenceString = condition ? `WHERE ${condition}` : '';
|
|
123
|
+
if (Object.keys(options.likes || {}).length > 0) {
|
|
124
|
+
let likeKeys = Object.keys(options.likes || {});
|
|
125
|
+
let startIdx = inputs.length;
|
|
126
|
+
let likes = likeKeys.map((m, i) => `${m} LIKE $${startIdx + i + 1}`);
|
|
127
|
+
referenceString += referenceString ? ` AND ${likes.join(' AND ')}` : `WHERE ${likes.join(' AND ')}`;
|
|
128
|
+
for (const key of likeKeys) {
|
|
129
|
+
inputs.push((options.likes?.[key] || '').replaceAll('?', '%').replaceAll('.', '_'));
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
let columns = '*';
|
|
133
|
+
if (Array.isArray(options.selected_keys) && options.selected_keys && options.selected_keys?.length > 0) {
|
|
134
|
+
columns = options.selected_keys.filter(k => (0, get_pieces_1.isValidIdentifier)(k)).join(', ');
|
|
135
|
+
}
|
|
136
|
+
let limitString = (typeof options.limit === 'number' && options.limit > 0) ? ` LIMIT ${options.limit}` : '';
|
|
137
|
+
let queryString = `SELECT ${columns} FROM ${name} ${referenceString}${limitString}`;
|
|
138
|
+
let queryOutput = await (0, query_1.Query)(queryString, inputs.length > 0 ? inputs : undefined);
|
|
139
|
+
let data = queryOutput?.data || [];
|
|
140
|
+
if (data.length > 0) {
|
|
141
|
+
data = data.map(m => {
|
|
142
|
+
let keys = Object.keys(m);
|
|
143
|
+
let schemaControlled = false;
|
|
144
|
+
if (options?.selected_keys && options.selected_keys.length > 0 && keys.length <= Object.keys(table?.schema || {}).length)
|
|
145
|
+
schemaControlled = true;
|
|
146
|
+
if (!schemaControlled && keys.length === Object.keys(table?.schema || {}).length)
|
|
147
|
+
schemaControlled = true;
|
|
148
|
+
if (!schemaControlled)
|
|
149
|
+
return null;
|
|
150
|
+
let new_data = {};
|
|
151
|
+
keys.forEach(key => {
|
|
152
|
+
const lowerKey = (key || '').toLowerCase();
|
|
153
|
+
const schemaKey = Object.keys(table.schema).find(k => k.toLowerCase() === lowerKey) || '';
|
|
154
|
+
const converter = data_types_1.sqlTypes[table.schema[schemaKey]];
|
|
155
|
+
new_data[key] = converter ? converter(m[key]) : m[key];
|
|
156
|
+
});
|
|
157
|
+
return new_data;
|
|
158
|
+
}).filter(f => f !== null);
|
|
159
|
+
}
|
|
160
|
+
return data;
|
|
161
|
+
}
|
|
162
|
+
async function findOne(reference = {}, options = { selected_keys: [], likes: {} }) {
|
|
163
|
+
const findOption = { limit: 1, selected_keys: options.selected_keys, likes: options.likes };
|
|
164
|
+
return (await find(reference, findOption))[0] || null;
|
|
165
|
+
}
|
|
166
|
+
async function createOne(data) {
|
|
167
|
+
const { columns, values, inputs } = (0, get_pieces_1.getInsertPieces)(data);
|
|
168
|
+
const queryString = `INSERT INTO ${name} (${columns}) VALUES (${values})`;
|
|
169
|
+
const queryOutput = await (0, query_1.Query)(queryString, inputs);
|
|
170
|
+
return queryOutput?.status === 200;
|
|
171
|
+
}
|
|
172
|
+
async function updateOne(reference, data) {
|
|
173
|
+
const { condition: refCondition, inputs: refInputs } = (0, get_pieces_1.getConditionPieces)(reference, 0);
|
|
174
|
+
const { condition: dataCondition, inputs: dataInputs } = (0, get_pieces_1.getConditionPieces)(data, refInputs.length);
|
|
175
|
+
if (!refCondition) {
|
|
176
|
+
if (config_1.config.get.logingMode())
|
|
177
|
+
(0, log_1.log)('Table', 'Update', 'No reference provided for update');
|
|
178
|
+
return false;
|
|
179
|
+
}
|
|
180
|
+
if (!dataCondition) {
|
|
181
|
+
if (config_1.config.get.logingMode())
|
|
182
|
+
(0, log_1.log)('Table', 'Update', 'No data provided for update');
|
|
183
|
+
return false;
|
|
184
|
+
}
|
|
185
|
+
const existingData = await findOne(reference);
|
|
186
|
+
if (!existingData) {
|
|
187
|
+
if (config_1.config.get.logingMode())
|
|
188
|
+
(0, log_1.log)('Table', 'Update', 'No data found for update');
|
|
189
|
+
return false;
|
|
190
|
+
}
|
|
191
|
+
const allInputs = [...refInputs, ...dataInputs];
|
|
192
|
+
const setValues = dataCondition.replace(/ AND /g, ', ');
|
|
193
|
+
const queryString = `UPDATE ${name} SET ${setValues} WHERE ${refCondition}`;
|
|
194
|
+
const queryOutput = await (0, query_1.Query)(queryString, allInputs);
|
|
195
|
+
return queryOutput?.status === 200;
|
|
196
|
+
}
|
|
197
|
+
async function deleteOne(reference) {
|
|
198
|
+
const deleteOperation = await _deleteOne(reference);
|
|
199
|
+
if (deleteOperation === false)
|
|
200
|
+
return false;
|
|
201
|
+
return deleteOperation.status === 200;
|
|
202
|
+
}
|
|
203
|
+
async function _deleteOne(reference) {
|
|
204
|
+
const { condition, inputs } = (0, get_pieces_1.getConditionPieces)(reference, 0);
|
|
205
|
+
if (!condition) {
|
|
206
|
+
if (config_1.config.get.logingMode())
|
|
207
|
+
(0, log_1.log)('Table', 'Delete', 'No reference provided for delete');
|
|
208
|
+
return false;
|
|
209
|
+
}
|
|
210
|
+
const queryString = `DELETE FROM ${name} WHERE ${condition}`;
|
|
211
|
+
return await (0, query_1.Query)(queryString, inputs);
|
|
212
|
+
}
|
|
213
|
+
async function deleteAll(reference) {
|
|
214
|
+
const datas = await find(reference || {});
|
|
215
|
+
if (datas.length === 0) {
|
|
216
|
+
if (config_1.config.get.logingMode())
|
|
217
|
+
(0, log_1.log)('Table', 'Delete', 'No data found for delete');
|
|
218
|
+
return false;
|
|
219
|
+
}
|
|
220
|
+
const deletes = await Promise.all(datas.map(async (data) => {
|
|
221
|
+
const _data = {};
|
|
222
|
+
Object.keys(data)
|
|
223
|
+
.filter(key => key !== 'created_at' && data[key] !== null)
|
|
224
|
+
.forEach(key => _data[key] = data[key]);
|
|
225
|
+
return await _deleteOne(_data);
|
|
226
|
+
}));
|
|
227
|
+
let output;
|
|
228
|
+
const isCompleted = deletes.filter(f => f !== false && f.status !== 200).length === 0;
|
|
229
|
+
if (!isCompleted)
|
|
230
|
+
output = { status: 500, message: "An error occurred while deleting", data: null };
|
|
231
|
+
else
|
|
232
|
+
output = { status: 200, message: "Success", data: null };
|
|
233
|
+
return output.status === 200;
|
|
234
|
+
}
|
|
235
|
+
async function first(reference = {}, options = {}) {
|
|
236
|
+
const data = await find(reference, { ...options, limit: 1 });
|
|
237
|
+
return data[0] || null;
|
|
238
|
+
}
|
|
239
|
+
async function firstOrDefault(reference = {}, options = {}) {
|
|
240
|
+
const data = await find(reference, { ...options, limit: 1 });
|
|
241
|
+
return data[0] || null;
|
|
242
|
+
}
|
|
243
|
+
async function single(reference = {}, options = {}) {
|
|
244
|
+
const data = await find(reference, options);
|
|
245
|
+
if (data.length === 0)
|
|
246
|
+
throw new Error("Sequence contains no elements");
|
|
247
|
+
if (data.length > 1)
|
|
248
|
+
throw new Error("Sequence contains more than one element");
|
|
249
|
+
return data[0];
|
|
250
|
+
}
|
|
251
|
+
async function singleOrDefault(reference = {}, options = {}) {
|
|
252
|
+
const data = await find(reference, options);
|
|
253
|
+
if (data.length > 1)
|
|
254
|
+
throw new Error("Sequence contains more than one element");
|
|
255
|
+
return data[0] || null;
|
|
256
|
+
}
|
|
257
|
+
async function last(reference = {}, options = {}) {
|
|
258
|
+
const data = await find(reference, options);
|
|
259
|
+
return data[data.length - 1] || null;
|
|
260
|
+
}
|
|
261
|
+
async function lastOrDefault(reference = {}, options = {}) {
|
|
262
|
+
const data = await find(reference, options);
|
|
263
|
+
return data[data.length - 1] || null;
|
|
264
|
+
}
|
|
265
|
+
async function count(reference = {}, options = {}) {
|
|
266
|
+
const data = await find(reference, options);
|
|
267
|
+
return data.length;
|
|
268
|
+
}
|
|
269
|
+
async function min(key, reference = {}, options = {}) {
|
|
270
|
+
const data = await find(reference, options);
|
|
271
|
+
if (data.length === 0)
|
|
272
|
+
return null;
|
|
273
|
+
return Math.min(...data.map(item => item[key]));
|
|
274
|
+
}
|
|
275
|
+
async function max(key, reference = {}, options = {}) {
|
|
276
|
+
const data = await find(reference, options);
|
|
277
|
+
if (data.length === 0)
|
|
278
|
+
return null;
|
|
279
|
+
return Math.max(...data.map(item => item[key]));
|
|
280
|
+
}
|
|
281
|
+
async function average(key, reference = {}, options = {}) {
|
|
282
|
+
const data = await find(reference, options);
|
|
283
|
+
if (data.length === 0)
|
|
284
|
+
return null;
|
|
285
|
+
const sum = data.reduce((acc, item) => acc + item[key], 0);
|
|
286
|
+
return sum / data.length;
|
|
287
|
+
}
|
|
288
|
+
return {
|
|
289
|
+
find,
|
|
290
|
+
findOne,
|
|
291
|
+
createOne,
|
|
292
|
+
updateOne,
|
|
293
|
+
deleteOne,
|
|
294
|
+
deleteAll,
|
|
295
|
+
first,
|
|
296
|
+
firstOrDefault,
|
|
297
|
+
single,
|
|
298
|
+
singleOrDefault,
|
|
299
|
+
last,
|
|
300
|
+
lastOrDefault,
|
|
301
|
+
count,
|
|
302
|
+
min,
|
|
303
|
+
max,
|
|
304
|
+
average,
|
|
305
|
+
functions: TableFunctions(name)
|
|
306
|
+
};
|
|
307
|
+
}
|
|
308
|
+
//# sourceMappingURL=table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../database/table.ts"],"names":[],"mappings":";;;AAAA,yDAAoD;AACpD,yDAAkG;AAClG,iDAA8C;AAC9C,mCAAgC;AAChC,2CAAwC;AA+CxC,SAAS,cAAc,CAAC,IAAY;IAChC,KAAK,UAAU,MAAM,CAAC,MAAmB;QACrC,MAAM,YAAY,GAAG,MAAM,OAAO,EAAE,CAAC;QACrC,IAAI,YAAY;YAAE,OAAO,KAAK,CAAC;QAE/B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC9D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAElF,MAAM,WAAW,GAAG,gBAAgB,IAAI,KAAK,YAAY,GAAG,CAAC;QAC7D,OAAO,CAAC,MAAM,IAAA,aAAK,EAAC,WAAW,CAAC,CAAC,EAAE,MAAM,KAAK,GAAG,CAAC;IACtD,CAAC;IAED,KAAK,UAAU,MAAM;QACjB,MAAM,YAAY,GAAG,MAAM,OAAO,EAAE,CAAC;QACrC,IAAI,CAAC,YAAY;YAAE,OAAO,KAAK,CAAC;QAEhC,MAAM,WAAW,GAAG,cAAc,IAAI,EAAE,CAAC;QACzC,OAAO,CAAC,MAAM,IAAA,aAAK,EAAC,WAAW,CAAC,CAAC,EAAE,MAAM,KAAK,GAAG,CAAC;IACtD,CAAC;IAED,KAAK,UAAU,OAAO;QAClB,MAAM,WAAW,GAAG,kHAAkH,CAAC;QACvI,MAAM,WAAW,GAAG,MAAM,IAAA,aAAK,EAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACrD,OAAO,WAAW,EAAE,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/E,CAAC;IAED,KAAK,UAAU,IAAI;QACf,MAAM,WAAW,GAAG,kHAAkH,CAAC;QACvI,MAAM,WAAW,GAAG,MAAM,IAAA,aAAK,EAAC,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACrD,IAAI,WAAW,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;YAC9B,IAAI,eAAM,CAAC,GAAG,CAAC,UAAU,EAAE;gBAAE,IAAA,SAAG,EAAC,OAAO,EAAE,MAAM,EAAE,SAAS,IAAI,aAAa,CAAC,CAAC;YAC9E,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,GAAG,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;QAC5C,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAEvB,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;QACjC,OAAO;YACH,IAAI,EAAE,IAAI,CAAC,UAAU;YACrB,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,IAAI;YACV,MAAM;SACT,CAAC;IACN,CAAC;IAED,KAAK,UAAU,MAAM;QACjB,MAAM,WAAW,GAAG,gFAAgF,CAAC;QACrG,MAAM,WAAW,GAAG,MAAM,IAAA,aAAK,EAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,WAAW,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;YAC9B,IAAI,eAAM,CAAC,GAAG,CAAC,UAAU,EAAE;gBAAE,IAAA,SAAG,EAAC,OAAO,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;YAC1E,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,IAAI,GAAG,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAEvB,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAM,EAAE,EAAE;YACzC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;YAC7C,OAAO;gBACH,IAAI,EAAE,CAAC,CAAC,UAAU;gBAClB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,IAAI;gBACV,MAAM;aACT,CAAC;QACN,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;IAED,KAAK,UAAU,SAAS,CAAC,SAAS,GAAW,IAAI;QAC7C,MAAM,WAAW,GAAG,mGAAmG,CAAC;QACxH,MAAM,WAAW,GAAG,MAAM,IAAA,aAAK,EAAC,WAAW,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;QAC1D,IAAI,WAAW,EAAE,MAAM,KAAK,GAAG;YAAE,OAAO,EAAE,CAAC;QAE3C,MAAM,IAAI,GAAG,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAA2B,EAAE,GAAQ,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACtH,CAAC;IAED,SAAS,YAAY,CAAC,UAAkB;QACpC,KAAK,UAAU,GAAG,CAAC,IAAY;YAC3B,MAAM,WAAW,GAAG,eAAe,IAAI,QAAQ,UAAU,IAAI,IAAI,EAAE,CAAC;YACpE,OAAO,CAAC,MAAM,IAAA,aAAK,EAAC,WAAW,CAAC,CAAC,EAAE,MAAM,KAAK,GAAG,CAAC;QACtD,CAAC;QAED,KAAK,UAAU,MAAM;YACjB,MAAM,WAAW,GAAG,eAAe,IAAI,gBAAgB,UAAU,EAAE,CAAC;YACpE,OAAO,CAAC,MAAM,IAAA,aAAK,EAAC,WAAW,CAAC,CAAC,EAAE,MAAM,KAAK,GAAG,CAAC;QACtD,CAAC;QAED,KAAK,UAAU,MAAM,CAAC,aAAqB;YACvC,MAAM,WAAW,GAAG,eAAe,IAAI,kBAAkB,UAAU,OAAO,aAAa,EAAE,CAAC;YAC1F,OAAO,CAAC,MAAM,IAAA,aAAK,EAAC,WAAW,CAAC,CAAC,EAAE,MAAM,KAAK,GAAG,CAAC;QACtD,CAAC;QAED,KAAK,UAAU,MAAM,CAAC,IAAY;YAC9B,MAAM,WAAW,GAAG,eAAe,IAAI,iBAAiB,UAAU,SAAS,IAAI,EAAE,CAAC;YAClF,OAAO,CAAC,MAAM,IAAA,aAAK,EAAC,WAAW,CAAC,CAAC,EAAE,MAAM,KAAK,GAAG,CAAC;QACtD,CAAC;QAED,OAAO;YACH,GAAG;YACH,MAAM;YACN,MAAM;YACN,MAAM;SACT,CAAC;IACN,CAAC;IAED,OAAO;QACH,MAAM;QACN,MAAM;QACN,OAAO;QACP,IAAI;QACJ,MAAM;QACN,YAAY;KACf,CAAC;AACN,CAAC;AAED,eAAsB,IAAY;IAC9B,KAAK,UAAU,IAAI,CAAC,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;QACrH,IAAI,KAAK,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,IAAI,eAAM,CAAC,GAAG,CAAC,UAAU,EAAE;gBAAE,IAAA,SAAG,EAAC,OAAO,EAAE,MAAM,EAAE,SAAS,IAAI,aAAa,CAAC,CAAC;YAC9E,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAA,+BAAkB,EAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAC/D,IAAI,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAE5D,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,IAAI,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YAChD,IAAI,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC;YAC7B,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,QAAQ,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACrE,eAAe,IAAI,eAAe,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACpG,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBACzB,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;YACxF,CAAC;QACL,CAAC;QAED,IAAI,OAAO,GAAG,GAAG,CAAC;QAClB,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;YACrG,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,8BAAiB,EAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjF,CAAC;QAED,IAAI,WAAW,GAAG,CAAC,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5G,IAAI,WAAW,GAAG,UAAU,OAAO,SAAS,IAAI,IAAI,eAAe,GAAG,WAAW,EAAE,CAAC;QAEpF,IAAI,WAAW,GAAG,MAAM,IAAA,aAAK,EAAC,WAAW,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACnF,IAAI,IAAI,GAAG,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC;QAEnC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClB,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBAChB,IAAI,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,gBAAgB,GAAG,KAAK,CAAC;gBAC7B,IAAI,OAAO,EAAE,aAAa,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM;oBAAE,gBAAgB,GAAG,IAAI,CAAC;gBAClJ,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,MAAM;oBAAE,gBAAgB,GAAG,IAAI,CAAC;gBAC1G,IAAI,CAAC,gBAAgB;oBAAE,OAAO,IAAI,CAAC;gBAEnC,IAAI,QAAQ,GAAwB,EAAE,CAAC;gBACvC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBACf,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;oBAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAC3F,MAAM,SAAS,GAAG,qBAAQ,CAAC,KAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;oBACrD,QAAQ,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC3D,CAAC,CAAC,CAAC;gBACH,OAAO,QAAQ,CAAC;YACpB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,KAAK,UAAU,OAAO,CAAC,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE,aAAa,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;QAC3G,MAAM,UAAU,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;QAC5F,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAC1D,CAAC;IAED,KAAK,UAAU,SAAS,CAAC,IAAe;QACpC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAA,4BAAe,EAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG,eAAe,IAAI,KAAK,OAAO,aAAa,MAAM,GAAG,CAAC;QAC1E,MAAM,WAAW,GAAG,MAAM,IAAA,aAAK,EAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACrD,OAAO,WAAW,EAAE,MAAM,KAAK,GAAG,CAAC;IACvC,CAAC;IAED,KAAK,UAAU,SAAS,CAAC,SAAyB,EAAE,IAAe;QAC/D,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAA,+BAAkB,EAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACxF,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAA,+BAAkB,EAAC,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QAEpG,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,IAAI,eAAM,CAAC,GAAG,CAAC,UAAU,EAAE;gBAAE,IAAA,SAAG,EAAC,OAAO,EAAE,QAAQ,EAAE,kCAAkC,CAAC,CAAC;YACxF,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;YACjB,IAAI,eAAM,CAAC,GAAG,CAAC,UAAU,EAAE;gBAAE,IAAA,SAAG,EAAC,OAAO,EAAE,QAAQ,EAAE,6BAA6B,CAAC,CAAC;YACnF,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,IAAI,eAAM,CAAC,GAAG,CAAC,UAAU,EAAE;gBAAE,IAAA,SAAG,EAAC,OAAO,EAAE,QAAQ,EAAE,0BAA0B,CAAC,CAAC;YAChF,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,SAAS,GAAG,CAAC,GAAG,SAAS,EAAE,GAAG,UAAU,CAAC,CAAC;QAEhD,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QAExD,MAAM,WAAW,GAAG,UAAU,IAAI,QAAQ,SAAS,UAAU,YAAY,EAAE,CAAC;QAC5E,MAAM,WAAW,GAAG,MAAM,IAAA,aAAK,EAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACxD,OAAO,WAAW,EAAE,MAAM,KAAK,GAAG,CAAC;IACvC,CAAC;IAED,KAAK,UAAU,SAAS,CAAC,SAAyB;QAC9C,MAAM,eAAe,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,eAAe,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC;QAC5C,OAAO,eAAe,CAAC,MAAM,KAAK,GAAG,CAAC;IAC1C,CAAC;IAED,KAAK,UAAU,UAAU,CAAC,SAAyB;QAC/C,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAA,+BAAkB,EAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,IAAI,eAAM,CAAC,GAAG,CAAC,UAAU,EAAE;gBAAE,IAAA,SAAG,EAAC,OAAO,EAAE,QAAQ,EAAE,kCAAkC,CAAC,CAAC;YACxF,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,WAAW,GAAG,eAAe,IAAI,UAAU,SAAS,EAAE,CAAC;QAC7D,OAAO,MAAM,IAAA,aAAK,EAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,UAAU,SAAS,CAAC,SAA0B;QAC/C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QAC1C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,eAAM,CAAC,GAAG,CAAC,UAAU,EAAE;gBAAE,IAAA,SAAG,EAAC,OAAO,EAAE,QAAQ,EAAE,0BAA0B,CAAC,CAAC;YAChF,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;YACrD,MAAM,KAAK,GAAwB,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;iBACZ,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,YAAY,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;iBACzD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5C,OAAO,MAAM,UAAU,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC,CAAC;QAEJ,IAAI,MAAmB,CAAC;QACxB,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;QACtF,IAAI,CAAC,WAAW;YAAE,MAAM,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,kCAAkC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;YAC/F,MAAM,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAE9D,OAAO,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC;IACjC,CAAC;IAED,KAAK,UAAU,KAAK,CAAC,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAC3B,CAAC;IAED,KAAK,UAAU,cAAc,CAAC,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE;QACpF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAC3B,CAAC;IAED,KAAK,UAAU,MAAM,CAAC,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE;QAC5E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACxE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,UAAU,eAAe,CAAC,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE;QACrF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;QAChF,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IAC3B,CAAC;IAED,KAAK,UAAU,IAAI,CAAC,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE;QAC1E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IACzC,CAAC;IAED,KAAK,UAAU,aAAa,CAAC,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE;QACnF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IACzC,CAAC;IAED,KAAK,UAAU,KAAK,CAAC,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE;QAC3E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,KAAK,UAAU,GAAG,CAAC,GAAW,EAAE,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE;QACtF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACnC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,UAAU,GAAG,CAAC,GAAW,EAAE,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE;QACtF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACnC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,UAAU,OAAO,CAAC,GAAW,EAAE,SAAS,GAAmB,EAAE,EAAE,OAAO,GAAiB,EAAE;QAC1F,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3D,OAAO,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IAC7B,CAAC;IAED,OAAO;QACH,IAAI;QACJ,OAAO;QACP,SAAS;QACT,SAAS;QACT,SAAS;QACT,SAAS;QACT,KAAK;QACL,cAAc;QACd,MAAM;QACN,eAAe;QACf,IAAI;QACJ,aAAa;QACb,KAAK;QACL,GAAG;QACH,GAAG;QACH,OAAO;QACP,SAAS,EAAE,cAAc,CAAC,IAAI,CAAC;KAClC,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import 'colors';
|
|
2
|
+
import { Table } from './database/table';
|
|
3
|
+
import { Procedure } from './database/procedure';
|
|
4
|
+
import { Query } from './database/query';
|
|
5
|
+
import { connectToServer, isConnected } from './operations/connect_to_server';
|
|
6
|
+
/**
|
|
7
|
+
* This class provides all database operations.
|
|
8
|
+
* @file database.ts
|
|
9
|
+
* @description This file contains the database operations.
|
|
10
|
+
* @module
|
|
11
|
+
*/
|
|
12
|
+
declare class EasyPostgresql {
|
|
13
|
+
Table: typeof Table;
|
|
14
|
+
Procedure: typeof Procedure;
|
|
15
|
+
Query: typeof Query;
|
|
16
|
+
Types: import("./database/sql_types").SqlTypes;
|
|
17
|
+
Connect: typeof connectToServer;
|
|
18
|
+
IsConnected: typeof isConnected;
|
|
19
|
+
Config: {
|
|
20
|
+
logingMode: (mode?: boolean) => void;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
declare const easyPostgresql: EasyPostgresql;
|
|
24
|
+
export = easyPostgresql;
|
package/dist/database.js
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
require("colors");
|
|
3
|
+
const table_1 = require("./database/table");
|
|
4
|
+
const procedure_1 = require("./database/procedure");
|
|
5
|
+
const query_1 = require("./database/query");
|
|
6
|
+
const sql_types_1 = require("./database/sql_types");
|
|
7
|
+
const connect_to_server_1 = require("./operations/connect_to_server");
|
|
8
|
+
const config_1 = require("./operations/config");
|
|
9
|
+
/**
|
|
10
|
+
* This class provides all database operations.
|
|
11
|
+
* @file database.ts
|
|
12
|
+
* @description This file contains the database operations.
|
|
13
|
+
* @module
|
|
14
|
+
*/
|
|
15
|
+
class EasyPostgresql {
|
|
16
|
+
constructor() {
|
|
17
|
+
this.Table = table_1.Table;
|
|
18
|
+
this.Procedure = procedure_1.Procedure;
|
|
19
|
+
this.Query = query_1.Query;
|
|
20
|
+
this.Types = sql_types_1.sqlTypes;
|
|
21
|
+
this.Connect = connect_to_server_1.connectToServer;
|
|
22
|
+
this.IsConnected = connect_to_server_1.isConnected;
|
|
23
|
+
this.Config = config_1.config.set;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
const easyPostgresql = new EasyPostgresql();
|
|
27
|
+
module.exports = easyPostgresql;
|
|
28
|
+
//# sourceMappingURL=database.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../database.ts"],"names":[],"mappings":";AAAA,kBAAgB;AAChB,4CAAyC;AACzC,oDAAiD;AACjD,4CAAyC;AACzC,oDAAgD;AAChD,sEAA8E;AAC9E,gDAA6C;AAE7C;;;;;GAKG;AACH,MAAM,cAAc;IAApB;QACI,UAAK,GAAG,aAAK,CAAC;QACd,cAAS,GAAG,qBAAS,CAAC;QACtB,UAAK,GAAG,aAAK,CAAC;QACd,UAAK,GAAG,oBAAQ,CAAC;QACjB,YAAO,GAAG,mCAAe,CAAC;QAC1B,gBAAW,GAAG,+BAAW,CAAC;QAC1B,WAAM,GAAG,eAAM,CAAC,GAAG,CAAC;IACxB,CAAC;CAAA;AAED,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;AAC5C,iBAAS,cAAc,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import 'colors';
|
|
2
|
+
/**
|
|
3
|
+
* This function is used to set the output format of the query result.
|
|
4
|
+
*
|
|
5
|
+
* @param mode - This parameter is used to set the output format of the query result.
|
|
6
|
+
*/
|
|
7
|
+
declare function setLogingMode(mode?: boolean): void;
|
|
8
|
+
/**
|
|
9
|
+
* This function is used to get the current output format of the query result.
|
|
10
|
+
* @file config.ts
|
|
11
|
+
* @description This file contains the configuration operations.
|
|
12
|
+
* @module
|
|
13
|
+
*/
|
|
14
|
+
export declare const config: {
|
|
15
|
+
get: {
|
|
16
|
+
logingMode: () => boolean;
|
|
17
|
+
};
|
|
18
|
+
set: {
|
|
19
|
+
logingMode: typeof setLogingMode;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.config = void 0;
|
|
4
|
+
require("colors");
|
|
5
|
+
let logingMode = false;
|
|
6
|
+
/**
|
|
7
|
+
* This function is used to set the output format of the query result.
|
|
8
|
+
*
|
|
9
|
+
* @param mode - This parameter is used to set the output format of the query result.
|
|
10
|
+
*/
|
|
11
|
+
function setLogingMode(mode = false) {
|
|
12
|
+
if (typeof mode !== 'boolean')
|
|
13
|
+
throw new Error('Invalid parameter type. Expected boolean.');
|
|
14
|
+
logingMode = mode;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* This function is used to get the current output format of the query result.
|
|
18
|
+
* @file config.ts
|
|
19
|
+
* @description This file contains the configuration operations.
|
|
20
|
+
* @module
|
|
21
|
+
*/
|
|
22
|
+
exports.config = {
|
|
23
|
+
get: {
|
|
24
|
+
logingMode: () => logingMode,
|
|
25
|
+
},
|
|
26
|
+
set: {
|
|
27
|
+
logingMode: setLogingMode
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../operations/config.ts"],"names":[],"mappings":";;;AAAA,kBAAgB;AAEhB,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB;;;;GAIG;AACH,SAAS,aAAa,CAAC,IAAI,GAAG,KAAK;IAC/B,IAAI,OAAO,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC5F,UAAU,GAAG,IAAI,CAAC;AACtB,CAAC;AAED;;;;;GAKG;AACU,QAAA,MAAM,GAAG;IAClB,GAAG,EAAE;QACD,UAAU,EAAE,GAAY,EAAE,CAAC,UAAU;KACxC;IACD,GAAG,EAAE;QACD,UAAU,EAAE,aAAa;KAC5B;CACJ,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Pool } from 'pg';
|
|
2
|
+
export interface SqlConfig {
|
|
3
|
+
user?: string;
|
|
4
|
+
password?: string;
|
|
5
|
+
host?: string;
|
|
6
|
+
port?: number;
|
|
7
|
+
database?: string;
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}
|
|
10
|
+
export type RunCallback = (sqlConfig: SqlConfig, err?: Error) => void;
|
|
11
|
+
export declare function getPool(): Pool;
|
|
12
|
+
/**
|
|
13
|
+
* This function checks if the database connection is active
|
|
14
|
+
*
|
|
15
|
+
* @returns Promise<boolean> - Returns true if connection is active, false otherwise
|
|
16
|
+
*/
|
|
17
|
+
export declare const isConnected: () => Promise<{
|
|
18
|
+
status: number;
|
|
19
|
+
message: string;
|
|
20
|
+
}>;
|
|
21
|
+
/**
|
|
22
|
+
* This function is used to connect to the database.
|
|
23
|
+
*
|
|
24
|
+
* @param sqlConfig - The PostgreSQL configuration to connect to the database
|
|
25
|
+
* @param run - Optional callback function to be executed after the connection is established
|
|
26
|
+
* @returns Promise<boolean> - Returns true if connection is successful, false otherwise
|
|
27
|
+
*/
|
|
28
|
+
export declare const connectToServer: (sqlConfig: SqlConfig, run?: RunCallback) => Promise<boolean>;
|