namirasoft-core 1.4.68 → 1.4.71

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.
Files changed (53) hide show
  1. package/dist/StringOperation.d.ts +1 -0
  2. package/dist/StringOperation.js +3 -0
  3. package/dist/StringOperation.js.map +1 -1
  4. package/dist/TimeOperation.d.ts +1 -0
  5. package/dist/TimeOperation.js +3 -0
  6. package/dist/TimeOperation.js.map +1 -1
  7. package/package.json +27 -27
  8. package/src/BaseDatabaseRow.ts +6 -6
  9. package/src/BaseMetaColumn.ts +17 -17
  10. package/src/BaseMetaDatabase.ts +30 -30
  11. package/src/BaseMetaTable.ts +40 -40
  12. package/src/BaseServer.ts +112 -112
  13. package/src/BaseUUID.ts +61 -61
  14. package/src/CacheService.ts +75 -75
  15. package/src/ConsoleOperation.ts +68 -68
  16. package/src/ConvertService.ts +118 -118
  17. package/src/CookieService.ts +33 -33
  18. package/src/Countries.ts +486 -486
  19. package/src/Country.ts +21 -21
  20. package/src/CountryOperation.ts +98 -98
  21. package/src/EncodingOperation.ts +12 -12
  22. package/src/EncryptionOperation.ts +40 -40
  23. package/src/EnvService.ts +22 -22
  24. package/src/ErrorOperation.ts +13 -13
  25. package/src/FileOperation.ts +57 -57
  26. package/src/FilterItem.ts +117 -117
  27. package/src/FilterItemColumnType.ts +9 -9
  28. package/src/FilterItemOperator.ts +52 -52
  29. package/src/GeoOperation.ts +18 -18
  30. package/src/HTTPError.ts +8 -8
  31. package/src/HTTPMethod.ts +6 -6
  32. package/src/HashOperation.ts +24 -24
  33. package/src/IStorage.ts +5 -5
  34. package/src/IStorageCookie.ts +52 -52
  35. package/src/IStorageJsonFile.ts +45 -45
  36. package/src/IStorageLocal.ts +16 -16
  37. package/src/IStorageMemoryDedicated.ts +25 -25
  38. package/src/IStorageMemoryShared.ts +21 -21
  39. package/src/IStorageSession.ts +16 -16
  40. package/src/NamingConvention.ts +188 -188
  41. package/src/ObjectService.ts +27 -27
  42. package/src/PackageService.ts +76 -76
  43. package/src/PhoneOperation.ts +8 -8
  44. package/src/PriceOperation.ts +20 -20
  45. package/src/SearchOperation.ts +31 -31
  46. package/src/SetTimeouService.ts +33 -33
  47. package/src/SortItem.ts +88 -88
  48. package/src/StringOperation.ts +22 -18
  49. package/src/TimeOperation.ts +283 -278
  50. package/src/TimeUnitOperation.ts +39 -39
  51. package/src/URLOperation.ts +54 -54
  52. package/src/VersionOperation.ts +46 -46
  53. package/src/index.ts +45 -45
@@ -1,4 +1,5 @@
1
1
  export declare class StringOperation {
2
+ static split(text: string): string[];
2
3
  static format(string: string, ...args: string[]): string;
3
4
  static repair(value: string): string;
4
5
  }
@@ -2,6 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StringOperation = void 0;
4
4
  class StringOperation {
5
+ static split(text) {
6
+ return text.split(/[\s;,|]+/).filter(x => x);
7
+ }
5
8
  static format(string, ...args) {
6
9
  return string.replace(/{(\d+)}/g, (match, index) => {
7
10
  const arg = args[index];
@@ -1 +1 @@
1
- {"version":3,"file":"StringOperation.js","sourceRoot":"","sources":["../src/StringOperation.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;IAExB,MAAM,CAAC,MAAM,CAAC,MAAc,EAAE,GAAG,IAAc;QAE3C,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAE/C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,OAAO,OAAO,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;QACpD,CAAC,CAAC,CAAC;IACP,CAAC;IACD,MAAM,CAAC,MAAM,CAAC,KAAa;QAEvB,IAAI,KAAK,IAAI,IAAI;YACb,KAAK,GAAG,EAAE,CAAC;QACf,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACtC,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AAlBD,0CAkBC"}
1
+ {"version":3,"file":"StringOperation.js","sourceRoot":"","sources":["../src/StringOperation.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;IAExB,MAAM,CAAC,KAAK,CAAC,IAAY;QAErB,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;IACD,MAAM,CAAC,MAAM,CAAC,MAAc,EAAE,GAAG,IAAc;QAE3C,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAE/C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YACxB,OAAO,OAAO,GAAG,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;QACpD,CAAC,CAAC,CAAC;IACP,CAAC;IACD,MAAM,CAAC,MAAM,CAAC,KAAa;QAEvB,IAAI,KAAK,IAAI,IAAI;YACb,KAAK,GAAG,EAAE,CAAC;QACf,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACtC,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACjB,CAAC;CACJ;AAtBD,0CAsBC"}
@@ -10,6 +10,7 @@ export type DateInterval = {
10
10
  };
11
11
  export declare class TimeOperation {
12
12
  static toDBFormat(date: Date): string;
13
+ static format(date: Date, format: string): string;
13
14
  static toDate(year: number, month: number, day: number): Date;
14
15
  static toDateByWeek(year: number, week: number, firstDay: number): Date;
15
16
  static fromDate(date: Date): YMD;
@@ -11,6 +11,9 @@ class TimeOperation {
11
11
  replace(/T/, ' ').
12
12
  replace(/\..+/, '');
13
13
  }
14
+ static format(date, format) {
15
+ return (0, moment_1.default)(date).format(format);
16
+ }
14
17
  static toDate(year, month, day) {
15
18
  return new Date(`${year}/${month}/${day}`);
16
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"TimeOperation.js","sourceRoot":"","sources":["../src/TimeOperation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TimeOperation.js","sourceRoot":"","sources":["../src/TimeOperation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,28 +1,28 @@
1
- {
2
- "name": "namirasoft-core",
3
- "title": "Namirasoft Core NPM Package",
4
- "description": "Namira Software Corporation Core NPM Package",
5
- "icon": "logo.png",
6
- "logo": "https://static.namirasoft.com/image/namirasoft/site/logo/base.png",
7
- "language": "ts",
8
- "framework": "npm",
9
- "application": "package",
10
- "private": false,
11
- "version": "1.4.68",
12
- "author": "Amir Abolhasani",
13
- "license": "MIT",
14
- "main": "./dist/index.js",
15
- "types": "./dist/index.d.ts",
16
- "scripts": {
17
- "build": ""
18
- },
19
- "dependencies": {
20
- "@types/node": "^22.14.1",
21
- "async-mutex": "^0.5.0",
22
- "axios": "^1.8.4",
23
- "buffer": "^6.0.3",
24
- "moment": "^2.30.1",
25
- "phone": "^3.1.58",
26
- "uuid": "^11.1.0"
27
- }
1
+ {
2
+ "name": "namirasoft-core",
3
+ "title": "Namirasoft Core NPM Package",
4
+ "description": "Namira Software Corporation Core NPM Package",
5
+ "icon": "logo.png",
6
+ "logo": "https://static.namirasoft.com/image/namirasoft/site/logo/base.png",
7
+ "language": "ts",
8
+ "framework": "npm",
9
+ "application": "package",
10
+ "private": false,
11
+ "version": "1.4.71",
12
+ "author": "Amir Abolhasani",
13
+ "license": "MIT",
14
+ "main": "./dist/index.js",
15
+ "types": "./dist/index.d.ts",
16
+ "scripts": {
17
+ "build": ""
18
+ },
19
+ "dependencies": {
20
+ "@types/node": "^22.14.1",
21
+ "async-mutex": "^0.5.0",
22
+ "axios": "^1.8.4",
23
+ "buffer": "^6.0.3",
24
+ "moment": "^2.30.1",
25
+ "phone": "^3.1.59",
26
+ "uuid": "^11.1.0"
27
+ }
28
28
  }
@@ -1,7 +1,7 @@
1
- export type BaseDatabaseRow<ID> =
2
- {
3
- id: ID;
4
- createdAt: string;
5
- updatedAt: string;
6
- deletedAt: string;
1
+ export type BaseDatabaseRow<ID> =
2
+ {
3
+ id: ID;
4
+ createdAt: string;
5
+ updatedAt: string;
6
+ deletedAt: string;
7
7
  }
@@ -1,18 +1,18 @@
1
- import { BaseMetaTable } from "./BaseMetaTable";
2
-
3
- export class BaseMetaColumn
4
- {
5
- table: BaseMetaTable;
6
- name: string;
7
- text: string;
8
- type: string; // todo
9
- required: boolean;
10
- constructor(table: BaseMetaTable, name: string, text: string, type: string, required: boolean)
11
- {
12
- this.table = table;
13
- this.name = name;
14
- this.text = text;
15
- this.type = type;
16
- this.required = required;
17
- }
1
+ import { BaseMetaTable } from "./BaseMetaTable";
2
+
3
+ export class BaseMetaColumn
4
+ {
5
+ table: BaseMetaTable;
6
+ name: string;
7
+ text: string;
8
+ type: string; // todo
9
+ required: boolean;
10
+ constructor(table: BaseMetaTable, name: string, text: string, type: string, required: boolean)
11
+ {
12
+ this.table = table;
13
+ this.name = name;
14
+ this.text = text;
15
+ this.type = type;
16
+ this.required = required;
17
+ }
18
18
  }
@@ -1,31 +1,31 @@
1
- import { BaseMetaTable } from "./BaseMetaTable";
2
-
3
- export abstract class BaseMetaDatabase
4
- {
5
- public tables: { [name: string]: BaseMetaTable } = {};
6
- forEachTable<T, MT extends BaseMetaTable>(handler: (table: MT) => T | null): T | null
7
- {
8
- for (const key in this.tables)
9
- {
10
- const element = this.tables[key];
11
- let ans = handler(element as MT);
12
- if (ans != null)
13
- return ans;
14
- }
15
- return null;
16
- }
17
- getTables<MT extends BaseMetaTable>(): MT[]
18
- {
19
- let ans: MT[] = [];
20
- this.forEachTable((table) =>
21
- {
22
- ans.push(table as MT);
23
- return null;
24
- });
25
- return ans;
26
- }
27
- hasTable(name: string): boolean
28
- {
29
- return this.tables[name] != null;
30
- }
1
+ import { BaseMetaTable } from "./BaseMetaTable";
2
+
3
+ export abstract class BaseMetaDatabase
4
+ {
5
+ public tables: { [name: string]: BaseMetaTable } = {};
6
+ forEachTable<T, MT extends BaseMetaTable>(handler: (table: MT) => T | null): T | null
7
+ {
8
+ for (const key in this.tables)
9
+ {
10
+ const element = this.tables[key];
11
+ let ans = handler(element as MT);
12
+ if (ans != null)
13
+ return ans;
14
+ }
15
+ return null;
16
+ }
17
+ getTables<MT extends BaseMetaTable>(): MT[]
18
+ {
19
+ let ans: MT[] = [];
20
+ this.forEachTable((table) =>
21
+ {
22
+ ans.push(table as MT);
23
+ return null;
24
+ });
25
+ return ans;
26
+ }
27
+ hasTable(name: string): boolean
28
+ {
29
+ return this.tables[name] != null;
30
+ }
31
31
  };
@@ -1,41 +1,41 @@
1
- import { BaseMetaColumn } from "./BaseMetaColumn";
2
- import { BaseMetaDatabase } from "./BaseMetaDatabase";
3
-
4
- export class BaseMetaTable
5
- {
6
- database: BaseMetaDatabase | null;
7
- name: string;
8
- text: string;
9
- public columns: { [name: string]: BaseMetaColumn } = {};
10
- constructor(database: BaseMetaDatabase | null, name: string, text: string)
11
- {
12
- this.database = database;
13
- this.name = name;
14
- this.text = text;
15
- }
16
- forEachColumn<T, MC extends BaseMetaColumn>(handler: (column: MC) => T | null): T | null
17
- {
18
- for (const key in this.columns)
19
- {
20
- const element = this.columns[key];
21
- let ans = handler(element as MC);
22
- if (ans != null)
23
- return ans;
24
- }
25
- return null;
26
- }
27
- getColumns<MC extends BaseMetaColumn>(): MC[]
28
- {
29
- let ans: MC[] = [];
30
- this.forEachColumn((column) =>
31
- {
32
- ans.push(column as MC);
33
- return null;
34
- });
35
- return ans;
36
- }
37
- hasColumn(name: string): boolean
38
- {
39
- return this.columns[name] != null;
40
- }
1
+ import { BaseMetaColumn } from "./BaseMetaColumn";
2
+ import { BaseMetaDatabase } from "./BaseMetaDatabase";
3
+
4
+ export class BaseMetaTable
5
+ {
6
+ database: BaseMetaDatabase | null;
7
+ name: string;
8
+ text: string;
9
+ public columns: { [name: string]: BaseMetaColumn } = {};
10
+ constructor(database: BaseMetaDatabase | null, name: string, text: string)
11
+ {
12
+ this.database = database;
13
+ this.name = name;
14
+ this.text = text;
15
+ }
16
+ forEachColumn<T, MC extends BaseMetaColumn>(handler: (column: MC) => T | null): T | null
17
+ {
18
+ for (const key in this.columns)
19
+ {
20
+ const element = this.columns[key];
21
+ let ans = handler(element as MC);
22
+ if (ans != null)
23
+ return ans;
24
+ }
25
+ return null;
26
+ }
27
+ getColumns<MC extends BaseMetaColumn>(): MC[]
28
+ {
29
+ let ans: MC[] = [];
30
+ this.forEachColumn((column) =>
31
+ {
32
+ ans.push(column as MC);
33
+ return null;
34
+ });
35
+ return ans;
36
+ }
37
+ hasColumn(name: string): boolean
38
+ {
39
+ return this.columns[name] != null;
40
+ }
41
41
  }
package/src/BaseServer.ts CHANGED
@@ -1,113 +1,113 @@
1
- import axios, { AxiosRequestConfig, AxiosResponse } from "axios";
2
- import { HashOperation } from "./HashOperation";
3
- import { URLOperation } from "./URLOperation";
4
- import { ErrorOperation } from "./ErrorOperation";
5
- import { ParsedNameValue } from "./ParsedNameValue";
6
- import { ConsoleOperation } from "./ConsoleOperation";
7
- import { EnvService } from "./EnvService";
8
-
9
- export abstract class BaseServer
10
- {
11
- protected base_url: string;
12
- private onBeforeRequests: ((url: string, config?: AxiosRequestConfig) => void)[] = [];
13
- private onAfterRequests: ((url: string, res: AxiosResponse) => void)[] = [];
14
- protected abstract onError(error: Error): void;
15
- public suppressErrors: boolean = false;
16
- public suppressOnErrors: boolean = false;
17
-
18
- constructor(base_url: string)
19
- {
20
- this.base_url = base_url;
21
- }
22
- public addOnBeforeRequest(onBeforeRequest: (url: string, config?: AxiosRequestConfig) => void)
23
- {
24
- this.onBeforeRequests.push(onBeforeRequest);
25
- }
26
- public addOnAfterRequest(onAfterRequest: (url: string, res: AxiosResponse) => void)
27
- {
28
- this.onAfterRequests.push(onAfterRequest);
29
- }
30
- private async _request<ResData = any, ReqData = any>(onRequest: (url: string, data?: any, config?: AxiosRequestConfig<ReqData>) => Promise<AxiosResponse<ResData>>, sub: string, query?: { [name: string]: ParsedNameValue }, data?: ReqData, config?: AxiosRequestConfig<ReqData>, sign_header?: string, sign_key?: string): Promise<{ response: AxiosResponse<ResData>, data: ResData }>
31
- {
32
- let url: string = URLOperation.getLink(this.base_url, sub, query);
33
- if (!config)
34
- config = { headers: {} };
35
- if (sign_header)
36
- if (sign_key)
37
- if (data)
38
- if (config?.headers)
39
- config.headers[sign_header] = HashOperation.SHA256Secret(sign_key, data);
40
- try
41
- {
42
- this.onBeforeRequests.forEach(onBeforeRequest =>
43
- {
44
- onBeforeRequest(url, config);
45
- });
46
- let response: AxiosResponse<ResData> = await onRequest(url, data, config);
47
- this.onAfterRequests.forEach(onAfterRequest =>
48
- {
49
- onAfterRequest(url, response);
50
- });
51
- return { response, data: response.data };
52
- } catch (error)
53
- {
54
- if (error instanceof Error)
55
- {
56
- let BASESERVER_ERROR_VERBOSE = new EnvService("BASESERVER_ERROR_VERBOSE", false).getBoolean(false);
57
-
58
- if (this.onError)
59
- {
60
- if (BASESERVER_ERROR_VERBOSE)
61
- error.message = `Error calling url '${url}' ` + error.message;
62
- if (!this.suppressOnErrors)
63
- this.onError(error);
64
- }
65
- else
66
- {
67
- ConsoleOperation.warning("onError function has not been properly set.");
68
- ConsoleOperation.error(error?.message);
69
- }
70
- if (axios.isAxiosError(error))
71
- if (error?.response?.data)
72
- if (!this.suppressErrors)
73
- {
74
- if (BASESERVER_ERROR_VERBOSE)
75
- ErrorOperation.throwHTTP(error.response.status, `Error calling url '${url}' ` + JSON.stringify(error.response.data));
76
- else
77
- ErrorOperation.throwHTTP(error.response.status, JSON.stringify(error.response.data));
78
- }
79
- }
80
- if (!this.suppressErrors)
81
- throw error;
82
- }
83
- return {} as any;
84
- }
85
- public async _get<ResData = any, ReqData = any>(sub: string, query?: { [name: string]: ParsedNameValue }, config?: AxiosRequestConfig<ReqData>): Promise<{ response: AxiosResponse<ResData>, data: ResData }>
86
- {
87
- return await this._request(async (url: string, _?: any, config?: AxiosRequestConfig<ReqData>) =>
88
- {
89
- return await axios.get(url, config);
90
- }, sub, query, undefined, config);
91
- }
92
- public async _post<ResData = any, ReqData = any>(sub: string, query?: { [name: string]: ParsedNameValue }, data?: ReqData, config?: AxiosRequestConfig<ReqData>, sign_header?: string, sign_key?: string): Promise<{ response: AxiosResponse<ResData>, data: ResData }>
93
- {
94
- return await this._request(async (url: string, data: ReqData, config?: AxiosRequestConfig<ReqData>) =>
95
- {
96
- return await axios.post(url, data, config);
97
- }, sub, query, data, config, sign_header, sign_key);
98
- }
99
- public async _put<ResData = any, ReqData = any>(sub: string, query?: { [name: string]: ParsedNameValue }, data?: ReqData, config?: AxiosRequestConfig<ReqData>, sign_header?: string, sign_key?: string): Promise<{ response: AxiosResponse<ResData>, data: ResData }>
100
- {
101
- return await this._request(async (url: string, data: ReqData, config?: AxiosRequestConfig<ReqData>) =>
102
- {
103
- return await axios.put(url, data, config);
104
- }, sub, query, data, config, sign_header, sign_key);
105
- }
106
- public async _delete<ResData = any, ReqData = any>(sub: string, query?: { [name: string]: ParsedNameValue }, config?: AxiosRequestConfig<ReqData>, sign_header?: string, sign_key?: string): Promise<{ response: AxiosResponse<ResData>, data: ResData }>
107
- {
108
- return await this._request(async (url: string, _?: any, config?: AxiosRequestConfig<ReqData>) =>
109
- {
110
- return await axios.delete(url, config);
111
- }, sub, query, undefined, config, sign_header, sign_key);
112
- }
1
+ import axios, { AxiosRequestConfig, AxiosResponse } from "axios";
2
+ import { HashOperation } from "./HashOperation";
3
+ import { URLOperation } from "./URLOperation";
4
+ import { ErrorOperation } from "./ErrorOperation";
5
+ import { ParsedNameValue } from "./ParsedNameValue";
6
+ import { ConsoleOperation } from "./ConsoleOperation";
7
+ import { EnvService } from "./EnvService";
8
+
9
+ export abstract class BaseServer
10
+ {
11
+ protected base_url: string;
12
+ private onBeforeRequests: ((url: string, config?: AxiosRequestConfig) => void)[] = [];
13
+ private onAfterRequests: ((url: string, res: AxiosResponse) => void)[] = [];
14
+ protected abstract onError(error: Error): void;
15
+ public suppressErrors: boolean = false;
16
+ public suppressOnErrors: boolean = false;
17
+
18
+ constructor(base_url: string)
19
+ {
20
+ this.base_url = base_url;
21
+ }
22
+ public addOnBeforeRequest(onBeforeRequest: (url: string, config?: AxiosRequestConfig) => void)
23
+ {
24
+ this.onBeforeRequests.push(onBeforeRequest);
25
+ }
26
+ public addOnAfterRequest(onAfterRequest: (url: string, res: AxiosResponse) => void)
27
+ {
28
+ this.onAfterRequests.push(onAfterRequest);
29
+ }
30
+ private async _request<ResData = any, ReqData = any>(onRequest: (url: string, data?: any, config?: AxiosRequestConfig<ReqData>) => Promise<AxiosResponse<ResData>>, sub: string, query?: { [name: string]: ParsedNameValue }, data?: ReqData, config?: AxiosRequestConfig<ReqData>, sign_header?: string, sign_key?: string): Promise<{ response: AxiosResponse<ResData>, data: ResData }>
31
+ {
32
+ let url: string = URLOperation.getLink(this.base_url, sub, query);
33
+ if (!config)
34
+ config = { headers: {} };
35
+ if (sign_header)
36
+ if (sign_key)
37
+ if (data)
38
+ if (config?.headers)
39
+ config.headers[sign_header] = HashOperation.SHA256Secret(sign_key, data);
40
+ try
41
+ {
42
+ this.onBeforeRequests.forEach(onBeforeRequest =>
43
+ {
44
+ onBeforeRequest(url, config);
45
+ });
46
+ let response: AxiosResponse<ResData> = await onRequest(url, data, config);
47
+ this.onAfterRequests.forEach(onAfterRequest =>
48
+ {
49
+ onAfterRequest(url, response);
50
+ });
51
+ return { response, data: response.data };
52
+ } catch (error)
53
+ {
54
+ if (error instanceof Error)
55
+ {
56
+ let BASESERVER_ERROR_VERBOSE = new EnvService("BASESERVER_ERROR_VERBOSE", false).getBoolean(false);
57
+
58
+ if (this.onError)
59
+ {
60
+ if (BASESERVER_ERROR_VERBOSE)
61
+ error.message = `Error calling url '${url}' ` + error.message;
62
+ if (!this.suppressOnErrors)
63
+ this.onError(error);
64
+ }
65
+ else
66
+ {
67
+ ConsoleOperation.warning("onError function has not been properly set.");
68
+ ConsoleOperation.error(error?.message);
69
+ }
70
+ if (axios.isAxiosError(error))
71
+ if (error?.response?.data)
72
+ if (!this.suppressErrors)
73
+ {
74
+ if (BASESERVER_ERROR_VERBOSE)
75
+ ErrorOperation.throwHTTP(error.response.status, `Error calling url '${url}' ` + JSON.stringify(error.response.data));
76
+ else
77
+ ErrorOperation.throwHTTP(error.response.status, JSON.stringify(error.response.data));
78
+ }
79
+ }
80
+ if (!this.suppressErrors)
81
+ throw error;
82
+ }
83
+ return {} as any;
84
+ }
85
+ public async _get<ResData = any, ReqData = any>(sub: string, query?: { [name: string]: ParsedNameValue }, config?: AxiosRequestConfig<ReqData>): Promise<{ response: AxiosResponse<ResData>, data: ResData }>
86
+ {
87
+ return await this._request(async (url: string, _?: any, config?: AxiosRequestConfig<ReqData>) =>
88
+ {
89
+ return await axios.get(url, config);
90
+ }, sub, query, undefined, config);
91
+ }
92
+ public async _post<ResData = any, ReqData = any>(sub: string, query?: { [name: string]: ParsedNameValue }, data?: ReqData, config?: AxiosRequestConfig<ReqData>, sign_header?: string, sign_key?: string): Promise<{ response: AxiosResponse<ResData>, data: ResData }>
93
+ {
94
+ return await this._request(async (url: string, data: ReqData, config?: AxiosRequestConfig<ReqData>) =>
95
+ {
96
+ return await axios.post(url, data, config);
97
+ }, sub, query, data, config, sign_header, sign_key);
98
+ }
99
+ public async _put<ResData = any, ReqData = any>(sub: string, query?: { [name: string]: ParsedNameValue }, data?: ReqData, config?: AxiosRequestConfig<ReqData>, sign_header?: string, sign_key?: string): Promise<{ response: AxiosResponse<ResData>, data: ResData }>
100
+ {
101
+ return await this._request(async (url: string, data: ReqData, config?: AxiosRequestConfig<ReqData>) =>
102
+ {
103
+ return await axios.put(url, data, config);
104
+ }, sub, query, data, config, sign_header, sign_key);
105
+ }
106
+ public async _delete<ResData = any, ReqData = any>(sub: string, query?: { [name: string]: ParsedNameValue }, config?: AxiosRequestConfig<ReqData>, sign_header?: string, sign_key?: string): Promise<{ response: AxiosResponse<ResData>, data: ResData }>
107
+ {
108
+ return await this._request(async (url: string, _?: any, config?: AxiosRequestConfig<ReqData>) =>
109
+ {
110
+ return await axios.delete(url, config);
111
+ }, sub, query, undefined, config, sign_header, sign_key);
112
+ }
113
113
  }