namirasoft-node 1.4.115 → 1.4.117
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/BaseFilterItemBuilderDatabase.d.ts +1 -1
- package/dist/BaseFilterItemBuilderDatabase.js +2 -14
- package/dist/BaseFilterItemBuilderDatabase.js.map +1 -1
- package/dist/BaseTable.d.ts +1 -0
- package/dist/BaseTable.js +12 -0
- package/dist/BaseTable.js.map +1 -1
- package/package.json +3 -3
- package/src/BaseFilterItemBuilderDatabase.ts +2 -15
- package/src/BaseTable.ts +15 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { BaseTable } from "./BaseTable";
|
|
2
1
|
import { BaseDatabase } from "./BaseDatabase";
|
|
3
2
|
import { BaseFilterItemBuilder } from "./BaseFilterItemBuilder";
|
|
3
|
+
import { BaseTable } from "./BaseTable";
|
|
4
4
|
export declare abstract class BaseFilterItemBuilderDatabase<WhereOptions> extends BaseFilterItemBuilder<BaseTable<BaseDatabase, any>, WhereOptions> {
|
|
5
5
|
database: BaseDatabase;
|
|
6
6
|
constructor(database: BaseDatabase);
|
|
@@ -2,8 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BaseFilterItemBuilderDatabase = void 0;
|
|
4
4
|
const BaseFilterItemBuilder_1 = require("./BaseFilterItemBuilder");
|
|
5
|
-
const namirasoft_core_1 = require("namirasoft-core");
|
|
6
|
-
const namirasoft_schema_1 = require("namirasoft-schema");
|
|
7
5
|
class BaseFilterItemBuilderDatabase extends BaseFilterItemBuilder_1.BaseFilterItemBuilder {
|
|
8
6
|
constructor(database) {
|
|
9
7
|
super();
|
|
@@ -16,18 +14,8 @@ class BaseFilterItemBuilderDatabase extends BaseFilterItemBuilder_1.BaseFilterIt
|
|
|
16
14
|
}
|
|
17
15
|
checkValue(table_name, column_name, value) {
|
|
18
16
|
let t = this.database.getTable(table_name);
|
|
19
|
-
if (column_name != "*")
|
|
20
|
-
|
|
21
|
-
if (c.type.toLowerCase() === namirasoft_schema_1.VariableType.Date.toLowerCase())
|
|
22
|
-
if (!namirasoft_core_1.TimeOperation.isValidDate(value))
|
|
23
|
-
throw namirasoft_core_1.ErrorOperation.getHTTP(400, `Invalid value for Date: ${value}`);
|
|
24
|
-
if (c.type.toLowerCase() === namirasoft_schema_1.VariableType.DateTime.toLowerCase())
|
|
25
|
-
if (!namirasoft_core_1.TimeOperation.isValidDateTime(value))
|
|
26
|
-
throw namirasoft_core_1.ErrorOperation.getHTTP(400, `Invalid value for DateTime: ${value}`);
|
|
27
|
-
if (c.type.toLowerCase() === namirasoft_schema_1.VariableType.Time.toLowerCase())
|
|
28
|
-
if (!namirasoft_core_1.TimeOperation.isValidTime(value))
|
|
29
|
-
throw namirasoft_core_1.ErrorOperation.getHTTP(400, `Invalid value for Time: ${value}`);
|
|
30
|
-
}
|
|
17
|
+
if (column_name != "*")
|
|
18
|
+
t.checkValue(column_name, value);
|
|
31
19
|
}
|
|
32
20
|
getRealColumnName(table_name, column_name) {
|
|
33
21
|
let t = this.database.getTable(table_name);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseFilterItemBuilderDatabase.js","sourceRoot":"","sources":["../src/BaseFilterItemBuilderDatabase.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"BaseFilterItemBuilderDatabase.js","sourceRoot":"","sources":["../src/BaseFilterItemBuilderDatabase.ts"],"names":[],"mappings":";;;AACA,mEAAgE;AAGhE,MAAsB,6BAA4C,SAAQ,6CAAiE;IAEvI,YAAmB,QAAsB;QAErC,KAAK,EAAE,CAAC;QAFO,aAAQ,GAAR,QAAQ,CAAc;IAGzC,CAAC;IACe,WAAW,CAAC,UAAkB,EAAE,WAAmB;QAE/D,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAA+B,UAAU,CAAC,CAAC;QACzE,IAAI,WAAW,IAAI,GAAG;YAClB,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAChD,CAAC;IACM,UAAU,CAAC,UAAkB,EAAE,WAAmB,EAAE,KAAa;QAEpE,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAA+B,UAAU,CAAC,CAAC;QACzE,IAAI,WAAW,IAAI,GAAG;YAClB,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IACzC,CAAC;IACe,iBAAiB,CAAC,UAAkB,EAAE,WAAmB;QAErE,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAA+B,UAAU,CAAC,CAAC;QACzE,OAAO,CAAC,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC;IACe,wBAAwB,CAAC,UAAkB;QAEvD,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAiC,CAAC;QAC3E,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;CACJ;AA5BD,sEA4BC"}
|
package/dist/BaseTable.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ export declare abstract class BaseTable<D extends BaseDatabase, ModelColumnOptio
|
|
|
15
15
|
abstract getColumn(name: string): BaseMetaColumn;
|
|
16
16
|
getColumns(secure?: boolean | null, read_only?: boolean | null, filter?: any): string[];
|
|
17
17
|
checkColumn(column: string, secure: boolean | null, read_only: boolean | null): void;
|
|
18
|
+
checkValue(column_name: string, value: string): void;
|
|
18
19
|
getRealColumnName(column: string): string;
|
|
19
20
|
secure(obj: any): any;
|
|
20
21
|
getArraySchema(require: boolean, name?: string): ArraySchema;
|
package/dist/BaseTable.js
CHANGED
|
@@ -46,6 +46,18 @@ class BaseTable {
|
|
|
46
46
|
if (!columns.includes(column))
|
|
47
47
|
namirasoft_core_1.ErrorOperation.throwHTTP(404, `Column '${column}' not found`);
|
|
48
48
|
}
|
|
49
|
+
checkValue(column_name, value) {
|
|
50
|
+
let c = this.getColumn(column_name);
|
|
51
|
+
if (c.type.toLowerCase() === namirasoft_schema_1.VariableType.Date.toLowerCase())
|
|
52
|
+
if (!namirasoft_core_1.TimeOperation.isValidDate(value))
|
|
53
|
+
throw namirasoft_core_1.ErrorOperation.getHTTP(400, `Invalid value for Date: ${value}`);
|
|
54
|
+
if (c.type.toLowerCase() === namirasoft_schema_1.VariableType.DateTime.toLowerCase())
|
|
55
|
+
if (!namirasoft_core_1.TimeOperation.isValidDateTime(value))
|
|
56
|
+
throw namirasoft_core_1.ErrorOperation.getHTTP(400, `Invalid value for DateTime: ${value}`);
|
|
57
|
+
if (c.type.toLowerCase() === namirasoft_schema_1.VariableType.Time.toLowerCase())
|
|
58
|
+
if (!namirasoft_core_1.TimeOperation.isValidTime(value))
|
|
59
|
+
throw namirasoft_core_1.ErrorOperation.getHTTP(400, `Invalid value for Time: ${value}`);
|
|
60
|
+
}
|
|
49
61
|
getRealColumnName(column) {
|
|
50
62
|
return column;
|
|
51
63
|
}
|
package/dist/BaseTable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseTable.js","sourceRoot":"","sources":["../src/BaseTable.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"BaseTable.js","sourceRoot":"","sources":["../src/BaseTable.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.117",
|
|
12
12
|
"author": "Amir Abolhasani",
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"main": "./dist/index.js",
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
"@supercharge/request-ip": "^1.2.0",
|
|
21
21
|
"@types/cors": "^2.8.19",
|
|
22
22
|
"@types/express": "^5.0.3",
|
|
23
|
-
"@types/node": "^24.
|
|
23
|
+
"@types/node": "^24.5.2",
|
|
24
24
|
"@types/node-cron": "^3.0.11",
|
|
25
25
|
"@types/nodemailer": "^7.0.1",
|
|
26
26
|
"@types/nodemailer-smtp-transport": "^2.7.8",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"cors": "^2.8.5",
|
|
31
31
|
"express": "^5.1.0",
|
|
32
32
|
"joi": "^18.0.1",
|
|
33
|
-
"namirasoft-core": "^1.4.
|
|
33
|
+
"namirasoft-core": "^1.4.91",
|
|
34
34
|
"namirasoft-log": "^1.4.34",
|
|
35
35
|
"namirasoft-schema": "^1.4.25",
|
|
36
36
|
"node-cron": "^4.2.1",
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import { BaseTable } from "./BaseTable";
|
|
2
1
|
import { BaseDatabase } from "./BaseDatabase";
|
|
3
2
|
import { BaseFilterItemBuilder } from "./BaseFilterItemBuilder";
|
|
4
|
-
import {
|
|
5
|
-
import { VariableType } from "namirasoft-schema";
|
|
3
|
+
import { BaseTable } from "./BaseTable";
|
|
6
4
|
|
|
7
5
|
export abstract class BaseFilterItemBuilderDatabase<WhereOptions> extends BaseFilterItemBuilder<BaseTable<BaseDatabase, any>, WhereOptions>
|
|
8
6
|
{
|
|
@@ -20,18 +18,7 @@ export abstract class BaseFilterItemBuilderDatabase<WhereOptions> extends BaseFi
|
|
|
20
18
|
{
|
|
21
19
|
let t = this.database.getTable<BaseTable<BaseDatabase, any>>(table_name);
|
|
22
20
|
if (column_name != "*")
|
|
23
|
-
|
|
24
|
-
let c = t.getColumn(column_name);
|
|
25
|
-
if (c.type.toLowerCase() === VariableType.Date.toLowerCase())
|
|
26
|
-
if (!TimeOperation.isValidDate(value))
|
|
27
|
-
throw ErrorOperation.getHTTP(400, `Invalid value for Date: ${value}`);
|
|
28
|
-
if (c.type.toLowerCase() === VariableType.DateTime.toLowerCase())
|
|
29
|
-
if (!TimeOperation.isValidDateTime(value))
|
|
30
|
-
throw ErrorOperation.getHTTP(400, `Invalid value for DateTime: ${value}`);
|
|
31
|
-
if (c.type.toLowerCase() === VariableType.Time.toLowerCase())
|
|
32
|
-
if (!TimeOperation.isValidTime(value))
|
|
33
|
-
throw ErrorOperation.getHTTP(400, `Invalid value for Time: ${value}`);
|
|
34
|
-
}
|
|
21
|
+
t.checkValue(column_name, value);
|
|
35
22
|
}
|
|
36
23
|
public override getRealColumnName(table_name: string, column_name: string): string
|
|
37
24
|
{
|
package/src/BaseTable.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ArraySchema, BaseTypeSchema, BaseVariableSchema, ObjectSchema } from "namirasoft-schema";
|
|
1
|
+
import { ArraySchema, BaseTypeSchema, BaseVariableSchema, ObjectSchema, VariableType } from "namirasoft-schema";
|
|
2
2
|
import { BaseDatabase } from "./BaseDatabase";
|
|
3
|
-
import { ErrorOperation, BaseUUID, NamingConvention, BaseMetaColumn } from "namirasoft-core";
|
|
3
|
+
import { ErrorOperation, BaseUUID, NamingConvention, BaseMetaColumn, TimeOperation } from "namirasoft-core";
|
|
4
4
|
import { BaseTableColumnOptions } from "./BaseTableColumnOptions";
|
|
5
5
|
|
|
6
6
|
export abstract class BaseTable<D extends BaseDatabase, ModelColumnOption extends BaseTableColumnOptions>
|
|
@@ -62,6 +62,19 @@ export abstract class BaseTable<D extends BaseDatabase, ModelColumnOption extend
|
|
|
62
62
|
if (!columns.includes(column))
|
|
63
63
|
ErrorOperation.throwHTTP(404, `Column '${column}' not found`);
|
|
64
64
|
}
|
|
65
|
+
public checkValue(column_name: string, value: string)
|
|
66
|
+
{
|
|
67
|
+
let c = this.getColumn(column_name);
|
|
68
|
+
if (c.type.toLowerCase() === VariableType.Date.toLowerCase())
|
|
69
|
+
if (!TimeOperation.isValidDate(value))
|
|
70
|
+
throw ErrorOperation.getHTTP(400, `Invalid value for Date: ${value}`);
|
|
71
|
+
if (c.type.toLowerCase() === VariableType.DateTime.toLowerCase())
|
|
72
|
+
if (!TimeOperation.isValidDateTime(value))
|
|
73
|
+
throw ErrorOperation.getHTTP(400, `Invalid value for DateTime: ${value}`);
|
|
74
|
+
if (c.type.toLowerCase() === VariableType.Time.toLowerCase())
|
|
75
|
+
if (!TimeOperation.isValidTime(value))
|
|
76
|
+
throw ErrorOperation.getHTTP(400, `Invalid value for Time: ${value}`);
|
|
77
|
+
}
|
|
65
78
|
public getRealColumnName(column: string): string
|
|
66
79
|
{
|
|
67
80
|
return column;
|