namirasoft-node 1.4.34 → 1.4.36
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/dist/BaseDatabase.d.ts +18 -1
- package/dist/BaseDatabase.js +7 -1
- package/dist/BaseDatabase.js.map +1 -1
- package/package.json +2 -2
- package/src/BaseDatabase.ts +19 -2
package/dist/BaseDatabase.d.ts
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import * as express from "express";
|
|
2
2
|
import { FilterItem, SortItem } from "namirasoft-core";
|
|
3
|
+
export interface BaseDatabase_FilterTable {
|
|
4
|
+
join_conditions: {
|
|
5
|
+
first: {
|
|
6
|
+
table: string;
|
|
7
|
+
column: string;
|
|
8
|
+
};
|
|
9
|
+
second: {
|
|
10
|
+
table: string;
|
|
11
|
+
column: string;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
columns: string[];
|
|
15
|
+
}
|
|
3
16
|
export interface IFilterableDatabase<WhereOptions> {
|
|
4
17
|
getIn: (filter: FilterItem, values: string[]) => {
|
|
5
18
|
condition: WhereOptions;
|
|
@@ -37,6 +50,10 @@ export interface IFilterableDatabase<WhereOptions> {
|
|
|
37
50
|
condition: WhereOptions;
|
|
38
51
|
partial: boolean;
|
|
39
52
|
};
|
|
53
|
+
getIncludes: (filter: FilterItem, not: boolean, value: string[]) => {
|
|
54
|
+
condition: WhereOptions;
|
|
55
|
+
partial: boolean;
|
|
56
|
+
};
|
|
40
57
|
getStartsWith: (filter: FilterItem, value: string) => {
|
|
41
58
|
condition: WhereOptions;
|
|
42
59
|
partial: boolean;
|
|
@@ -86,7 +103,7 @@ export declare abstract class BaseDatabase {
|
|
|
86
103
|
limit: number;
|
|
87
104
|
};
|
|
88
105
|
protected _getFiltersConditions<WhereOptions>(tables: {
|
|
89
|
-
[table: string]:
|
|
106
|
+
[table: string]: BaseDatabase_FilterTable;
|
|
90
107
|
}, idatabase: IFilterableDatabase<WhereOptions>, filters?: FilterItem[] | undefined): {
|
|
91
108
|
[table: string]: WhereOptions[];
|
|
92
109
|
};
|
package/dist/BaseDatabase.js
CHANGED
|
@@ -52,8 +52,11 @@ class BaseDatabase {
|
|
|
52
52
|
for (let i = 0; i < filters.length; i++)
|
|
53
53
|
if (!processed[i]) {
|
|
54
54
|
const filter = filters[i];
|
|
55
|
-
|
|
55
|
+
let table = tables[filter.table.name];
|
|
56
|
+
if (!table)
|
|
56
57
|
namirasoft_core_1.ErrorOperation.throwHTTP(404, `Invalid table name '${filter.table.name}'. Valid tables are '${Object.keys(tables).join(", ")}'.`);
|
|
58
|
+
if (!table.columns.some(column => new RegExp(column).test(filter.column.name)))
|
|
59
|
+
namirasoft_core_1.ErrorOperation.throwHTTP(404, `Invalid column name '${filter.column.name}' for table '${filter.table.name}'. Valid columns are '${Object.keys(table).join(", ")}'.`);
|
|
57
60
|
let values = filter.values;
|
|
58
61
|
if (filter.operator.count > 0)
|
|
59
62
|
for (let j = i + 1; j < filters.length; j++) {
|
|
@@ -112,6 +115,9 @@ class BaseDatabase {
|
|
|
112
115
|
else if (filter.operator == namirasoft_core_1.FilterItemOperator.all.exists) {
|
|
113
116
|
addCondition(idatabase.getExists(filter, filter.not));
|
|
114
117
|
}
|
|
118
|
+
else if (filter.operator == namirasoft_core_1.FilterItemOperator.all.includes) {
|
|
119
|
+
addCondition(idatabase.getIncludes(filter, filter.not, values));
|
|
120
|
+
}
|
|
115
121
|
else if (filter.operator == namirasoft_core_1.FilterItemOperator.all.startswith) {
|
|
116
122
|
values.forEach(value => {
|
|
117
123
|
if (filter.not)
|
package/dist/BaseDatabase.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseDatabase.js","sourceRoot":"","sources":["../src/BaseDatabase.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,qDAA2F;
|
|
1
|
+
{"version":3,"file":"BaseDatabase.js","sourceRoot":"","sources":["../src/BaseDatabase.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"framework": "npm",
|
|
9
9
|
"application": "package",
|
|
10
10
|
"private": false,
|
|
11
|
-
"version": "1.4.
|
|
11
|
+
"version": "1.4.36",
|
|
12
12
|
"author": "Amir Abolhasani",
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"main": "./dist/index.js",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"cors": "^2.8.5",
|
|
31
31
|
"express": "^4.21.2",
|
|
32
32
|
"joi": "^17.13.3",
|
|
33
|
-
"namirasoft-core": "^1.4.
|
|
33
|
+
"namirasoft-core": "^1.4.41",
|
|
34
34
|
"namirasoft-log": "^1.4.15",
|
|
35
35
|
"namirasoft-schema": "^1.4.22",
|
|
36
36
|
"node-cron": "^3.0.3",
|
package/src/BaseDatabase.ts
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import * as express from "express";
|
|
2
2
|
import { ErrorOperation, FilterItem, FilterItemOperator, SortItem } from "namirasoft-core";
|
|
3
3
|
|
|
4
|
+
export interface BaseDatabase_FilterTable
|
|
5
|
+
{
|
|
6
|
+
join_conditions: {
|
|
7
|
+
first: { table: string, column: string },
|
|
8
|
+
second: { table: string, column: string },
|
|
9
|
+
};
|
|
10
|
+
columns: string[];
|
|
11
|
+
}
|
|
12
|
+
|
|
4
13
|
export interface IFilterableDatabase<WhereOptions>
|
|
5
14
|
{
|
|
6
15
|
getIn: (filter: FilterItem, values: string[]) => { condition: WhereOptions, partial: boolean };
|
|
@@ -12,6 +21,7 @@ export interface IFilterableDatabase<WhereOptions>
|
|
|
12
21
|
getEmpty: (filter: FilterItem) => { condition: WhereOptions, partial: boolean };
|
|
13
22
|
getNotEmpty: (filter: FilterItem) => { condition: WhereOptions, partial: boolean };
|
|
14
23
|
getExists: (filter: FilterItem, not: boolean) => { condition: WhereOptions, partial: boolean };
|
|
24
|
+
getIncludes: (filter: FilterItem, not: boolean, value: string[]) => { condition: WhereOptions, partial: boolean };
|
|
15
25
|
getStartsWith: (filter: FilterItem, value: string) => { condition: WhereOptions, partial: boolean };
|
|
16
26
|
getNotStartsWith: (filter: FilterItem, value: string) => { condition: WhereOptions, partial: boolean };
|
|
17
27
|
getEndsWith: (filter: FilterItem, value: string) => { condition: WhereOptions, partial: boolean };
|
|
@@ -63,7 +73,7 @@ export abstract class BaseDatabase
|
|
|
63
73
|
let limit = page_size;
|
|
64
74
|
return { offset, limit };
|
|
65
75
|
}
|
|
66
|
-
protected _getFiltersConditions<WhereOptions>(tables: { [table: string]:
|
|
76
|
+
protected _getFiltersConditions<WhereOptions>(tables: { [table: string]: BaseDatabase_FilterTable }, idatabase: IFilterableDatabase<WhereOptions>, filters?: FilterItem[] | undefined): { [table: string]: WhereOptions[] }
|
|
67
77
|
{
|
|
68
78
|
let ans: { [table: string]: WhereOptions[] } = {};
|
|
69
79
|
Object.keys(tables).forEach(table => ans[table] = []);
|
|
@@ -74,8 +84,11 @@ export abstract class BaseDatabase
|
|
|
74
84
|
if (!processed[i])
|
|
75
85
|
{
|
|
76
86
|
const filter = filters[i];
|
|
77
|
-
|
|
87
|
+
let table = tables[filter.table.name];
|
|
88
|
+
if (!table)
|
|
78
89
|
ErrorOperation.throwHTTP(404, `Invalid table name '${filter.table.name}'. Valid tables are '${Object.keys(tables).join(", ")}'.`);
|
|
90
|
+
if (!table.columns.some(column => new RegExp(column).test(filter.column.name)))
|
|
91
|
+
ErrorOperation.throwHTTP(404, `Invalid column name '${filter.column.name}' for table '${filter.table.name}'. Valid columns are '${Object.keys(table).join(", ")}'.`);
|
|
79
92
|
let values = filter.values;
|
|
80
93
|
if (filter.operator.count > 0)
|
|
81
94
|
for (let j = i + 1; j < filters.length; j++)
|
|
@@ -147,6 +160,10 @@ export abstract class BaseDatabase
|
|
|
147
160
|
{
|
|
148
161
|
addCondition(idatabase.getExists(filter, filter.not));
|
|
149
162
|
}
|
|
163
|
+
else if (filter.operator == FilterItemOperator.all.includes)
|
|
164
|
+
{
|
|
165
|
+
addCondition(idatabase.getIncludes(filter, filter.not, values));
|
|
166
|
+
}
|
|
150
167
|
else if (filter.operator == FilterItemOperator.all.startswith)
|
|
151
168
|
{
|
|
152
169
|
values.forEach(value =>
|