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.
@@ -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
- let c = t.getColumn(column_name);
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":";;;AAEA,mEAAgE;AAChE,qDAAgE;AAChE,yDAAiD;AAEjD,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,EACtB,CAAC;YACG,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YACjC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,gCAAY,CAAC,IAAI,CAAC,WAAW,EAAE;gBACxD,IAAI,CAAC,+BAAa,CAAC,WAAW,CAAC,KAAK,CAAC;oBACjC,MAAM,gCAAc,CAAC,OAAO,CAAC,GAAG,EAAE,2BAA2B,KAAK,EAAE,CAAC,CAAC;YAC9E,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,gCAAY,CAAC,QAAQ,CAAC,WAAW,EAAE;gBAC5D,IAAI,CAAC,+BAAa,CAAC,eAAe,CAAC,KAAK,CAAC;oBACrC,MAAM,gCAAc,CAAC,OAAO,CAAC,GAAG,EAAE,+BAA+B,KAAK,EAAE,CAAC,CAAC;YAClF,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,gCAAY,CAAC,IAAI,CAAC,WAAW,EAAE;gBACxD,IAAI,CAAC,+BAAa,CAAC,WAAW,CAAC,KAAK,CAAC;oBACjC,MAAM,gCAAc,CAAC,OAAO,CAAC,GAAG,EAAE,2BAA2B,KAAK,EAAE,CAAC,CAAC;QAClF,CAAC;IACL,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;AAvCD,sEAuCC"}
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"}
@@ -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
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BaseTable.js","sourceRoot":"","sources":["../src/BaseTable.ts"],"names":[],"mappings":"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"}
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.115",
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.3.3",
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.89",
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 { ErrorOperation, TimeOperation } from "namirasoft-core";
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;