@creator.co/wapi 1.2.10 → 1.2.12
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/package.json +2 -1
- package/dist/src/API/Utils.d.ts +2 -2
- package/dist/src/API/Utils.js +3 -3
- package/dist/src/API/Utils.js.map +1 -1
- package/dist/src/Config/EnvironmentVar.d.ts +1 -1
- package/dist/src/Crypto/JWT.d.ts +1 -1
- package/dist/src/Database/integrations/knex/KnexDatabase.d.ts +1 -0
- package/dist/src/Database/integrations/knex/KnexDatabase.js +9 -4
- package/dist/src/Database/integrations/knex/KnexDatabase.js.map +1 -1
- package/dist/src/Mailer/Mailer.d.ts +2 -2
- package/dist/src/Mailer/Mailer.js.map +1 -1
- package/dist/src/Server/RouteResolver.js.map +1 -1
- package/dist/src/Server/lib/container/Utils.d.ts +1 -1
- package/package.json +2 -1
- package/src/API/Utils.ts +3 -3
- package/src/Crypto/JWT.ts +1 -1
- package/src/Database/integrations/knex/KnexDatabase.ts +10 -2
- package/src/Database/types.d.ts +7 -2
- package/src/Mailer/Mailer.ts +1 -1
- package/src/Server/RouteResolver.ts +1 -1
- package/tests/Database/integrations/knex/KnexDatabase.test.ts +23 -0
- package/tsconfig.json +2 -1
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@creator.co/wapi",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.12",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
"json-stringify-safe": "^5.0.1",
|
|
35
35
|
"jsonwebtoken": "^9.0.2",
|
|
36
36
|
"knex": "^3.0.1",
|
|
37
|
+
"knex-stringcase": "^1.4.6",
|
|
37
38
|
"node-cache": "^5.1.2",
|
|
38
39
|
"object-hash": "^3.0.0",
|
|
39
40
|
"parse-duration": "^1.1.0",
|
package/dist/src/API/Utils.d.ts
CHANGED
|
@@ -15,10 +15,10 @@ export default class Utils {
|
|
|
15
15
|
static isValidString(string: string): boolean;
|
|
16
16
|
/**
|
|
17
17
|
* Parses a string into an integer and returns null if the string is not a valid number.
|
|
18
|
-
* @param {string}
|
|
18
|
+
* @param {string} str - The string to parse into an integer.
|
|
19
19
|
* @returns {number | null} - The parsed integer or null if the string is not a valid number.
|
|
20
20
|
*/
|
|
21
|
-
static parseIntNullIfNaN(
|
|
21
|
+
static parseIntNullIfNaN(str?: string): number | null;
|
|
22
22
|
/**
|
|
23
23
|
* Parses a JSON string and returns the resulting object. If the string is empty or
|
|
24
24
|
* cannot be parsed, null is returned.
|
package/dist/src/API/Utils.js
CHANGED
|
@@ -23,11 +23,11 @@ var Utils = /** @class */ (function () {
|
|
|
23
23
|
};
|
|
24
24
|
/**
|
|
25
25
|
* Parses a string into an integer and returns null if the string is not a valid number.
|
|
26
|
-
* @param {string}
|
|
26
|
+
* @param {string} str - The string to parse into an integer.
|
|
27
27
|
* @returns {number | null} - The parsed integer or null if the string is not a valid number.
|
|
28
28
|
*/
|
|
29
|
-
Utils.parseIntNullIfNaN = function (
|
|
30
|
-
var n = parseInt(
|
|
29
|
+
Utils.parseIntNullIfNaN = function (str) {
|
|
30
|
+
var n = parseInt(str || '');
|
|
31
31
|
return isNaN(n) ? null : n;
|
|
32
32
|
};
|
|
33
33
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/API/Utils.ts"],"names":[],"mappings":";;AAAA;;GAEG;AACH;IAAA;IAwEA,CAAC;IAvEC;;;OAGG;IACW,2BAAqB,GAAnC;QACE,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,MAAM,CAAA;IACjD,CAAC;IAED;;;;OAIG;IACW,mBAAa,GAA3B,UAA4B,MAAc;QACxC,OAAO,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,IAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACrD,CAAC;IAED;;;;OAIG;IACW,uBAAiB,GAA/B,UAAgC,
|
|
1
|
+
{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../src/API/Utils.ts"],"names":[],"mappings":";;AAAA;;GAEG;AACH;IAAA;IAwEA,CAAC;IAvEC;;;OAGG;IACW,2BAAqB,GAAnC;QACE,OAAO,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,MAAM,CAAA;IACjD,CAAC;IAED;;;;OAIG;IACW,mBAAa,GAA3B,UAA4B,MAAc;QACxC,OAAO,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,IAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACrD,CAAC;IAED;;;;OAIG;IACW,uBAAiB,GAA/B,UAAgC,GAAY;QAC1C,IAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,IAAI,EAAE,CAAC,CAAA;QAC7B,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5B,CAAC;IAED;;;;;OAKG;IACW,4BAAsB,GAApC,UAAqC,MAA0B;QAC7D,IAAI,CAAC,GAAG,IAAI,CAAA;QACZ,IAAI;YACF,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YACtC,IAAI,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC;gBAAE,CAAC,GAAG,IAAI,CAAA;SAC9C;QAAC,OAAO,CAAC,EAAE;YACV,WAAW;SACZ;QACD,OAAO,CAAC,CAAA;IACV,CAAC;IAED;;;;OAIG;IACW,mBAAa,GAA3B,UAA4B,MAAc;QACxC,IAAI,SAAS,GAAG,GAAG,CAAA;QACnB,IAAI;YACF,SAAS,GAAG,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,CAAA;SAClC;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,CAAC,CAAC,CAAA;SAClD;QACD,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;IACpD,CAAC;IAED;;;;;OAKG;IACW,iCAA2B,GAAzC,UAA0C,GAAQ,EAAE,GAAW;QAC7D,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAA;QACrB,IAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,WAAW,EAAE,EAArC,CAAqC,CAAC,CAAA;QACxF,IAAI,cAAc,IAAI,cAAc,IAAI,EAAE;YAAE,OAAO,GAAG,CAAC,cAAc,CAAC,CAAA;QACtE,OAAO,IAAI,CAAA;IACb,CAAC;IACH,YAAC;AAAD,CAAC,AAxED,IAwEC"}
|
|
@@ -52,7 +52,7 @@ export default class EnvironmentVar<T> {
|
|
|
52
52
|
* Resolves the value based on the environment type.
|
|
53
53
|
* @returns {Promise<any>} - The resolved value.
|
|
54
54
|
*/
|
|
55
|
-
resolve(): Promise<T>;
|
|
55
|
+
resolve(): Promise<T | undefined>;
|
|
56
56
|
/**
|
|
57
57
|
* Retrieves the value of a local environment variable.
|
|
58
58
|
* @returns {T} - The value of the local environment variable.
|
package/dist/src/Crypto/JWT.d.ts
CHANGED
|
@@ -26,7 +26,7 @@ export default class JWT {
|
|
|
26
26
|
* The default expiration time for a cache entry.
|
|
27
27
|
* @type {string}
|
|
28
28
|
*/
|
|
29
|
-
private readonly defaultExpiration
|
|
29
|
+
private readonly defaultExpiration?;
|
|
30
30
|
/**
|
|
31
31
|
* Constructs a new instance of the class.
|
|
32
32
|
* @param {string} tokenSecret - The secret used to sign the tokens.
|
|
@@ -14,6 +14,7 @@ export declare class KnexDatabase extends Database<KnexTransaction> {
|
|
|
14
14
|
* @returns None
|
|
15
15
|
*/
|
|
16
16
|
constructor(config: DbConfig<'knex'>);
|
|
17
|
+
private constructConfig;
|
|
17
18
|
/**
|
|
18
19
|
* Initiates a transaction using the underlying database client.
|
|
19
20
|
* @returns {Promise<KnexTransaction>} A promise that resolves to a KnexTransaction object representing the transaction.
|
|
@@ -53,6 +53,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
53
53
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
54
|
exports.KnexDatabase = void 0;
|
|
55
55
|
var knex_1 = require("knex");
|
|
56
|
+
var knexStringcase = require("knex-stringcase");
|
|
56
57
|
var KnexTransaction_1 = require("./KnexTransaction");
|
|
57
58
|
var Database_1 = require("../../Database");
|
|
58
59
|
/**
|
|
@@ -68,7 +69,11 @@ var KnexDatabase = /** @class */ (function (_super) {
|
|
|
68
69
|
*/
|
|
69
70
|
function KnexDatabase(config) {
|
|
70
71
|
var _this = _super.call(this, config) || this;
|
|
71
|
-
_this.client = KnexDatabase.knexProvider(
|
|
72
|
+
_this.client = KnexDatabase.knexProvider(_this.constructConfig(config));
|
|
73
|
+
return _this;
|
|
74
|
+
}
|
|
75
|
+
KnexDatabase.prototype.constructConfig = function (config) {
|
|
76
|
+
var knexConfig = {
|
|
72
77
|
client: config.driver,
|
|
73
78
|
connection: {
|
|
74
79
|
host: config.host,
|
|
@@ -81,9 +86,9 @@ var KnexDatabase = /** @class */ (function (_super) {
|
|
|
81
86
|
min: 1,
|
|
82
87
|
max: config.maxConnections,
|
|
83
88
|
},
|
|
84
|
-
}
|
|
85
|
-
return
|
|
86
|
-
}
|
|
89
|
+
};
|
|
90
|
+
return config.convertCamelToSnake ? knexStringcase(knexConfig) : knexConfig;
|
|
91
|
+
};
|
|
87
92
|
/**
|
|
88
93
|
* Initiates a transaction using the underlying database client.
|
|
89
94
|
* @returns {Promise<KnexTransaction>} A promise that resolves to a KnexTransaction object representing the transaction.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KnexDatabase.js","sourceRoot":"","sources":["../../../../../src/Database/integrations/knex/KnexDatabase.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAiC;
|
|
1
|
+
{"version":3,"file":"KnexDatabase.js","sourceRoot":"","sources":["../../../../../src/Database/integrations/knex/KnexDatabase.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAiC;AACjC,gDAAiD;AAEjD,qDAAwE;AACxE,2CAAyC;AAGzC;;;GAGG;AACH;IAAkC,gCAAyB;IAKzD;;;;OAIG;IACH,sBAAmB,MAAwB;QAA3C,YACE,kBAAM,MAAM,CAAC,SAGd;QADC,KAAI,CAAC,MAAM,GAAG,YAAY,CAAC,YAAY,CAAC,KAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAA;;IACvE,CAAC;IAEO,sCAAe,GAAvB,UAAwB,MAAwB;QAC9C,IAAM,UAAU,GAAG;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,UAAU,EAAE;gBACV,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,IAAI,EAAE,MAAM,CAAC,QAAQ;gBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;aAC1B;YACD,IAAI,EAAE;gBACJ,GAAG,EAAE,CAAC;gBACN,GAAG,EAAE,MAAM,CAAC,cAAc;aAC3B;SACF,CAAA;QAED,OAAO,MAAM,CAAC,mBAAmB,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAA;IAC7E,CAAC;IAED;;;OAGG;IACmB,kCAAW,GAAjC;;;;;4BACmB,qBAAM,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAA;;wBAA1C,QAAQ,GAAG,SAA+B;wBAChD,sBAAO,qCAAmB,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAA;;;;KACxD;IAzCc,yBAAY,GAAiE,cAAI,CAAA;IA0ClG,mBAAC;CAAA,AA3CD,CAAkC,mBAAQ,GA2CzC;AA3CY,oCAAY"}
|
|
@@ -32,7 +32,7 @@ export default class Mailer {
|
|
|
32
32
|
* @param {string} [optionalReplyTo] - The optional reply-to address for the email.
|
|
33
33
|
* @param {any[]} [optionalAttachments] - The optional attachments to include
|
|
34
34
|
*/
|
|
35
|
-
sendRawEmail(to: string | Array<string>, htmlMessage: string, subject: string, optionalCC?: string | Array<string>, optionalFrom?: string, optionalReplyTo?: string, optionalAttachments?: any[], optionalTransport?: Email.NodeMailerTransportOptions): Promise<
|
|
35
|
+
sendRawEmail(to: string | Array<string>, htmlMessage: string, subject: string, optionalCC?: string | Array<string>, optionalFrom?: string, optionalReplyTo?: string, optionalAttachments?: any[], optionalTransport?: Email.NodeMailerTransportOptions): Promise<null>;
|
|
36
36
|
/**
|
|
37
37
|
* Sends a templated email to the specified recipients.
|
|
38
38
|
* @param {string | Array<string>} to - The email address(es) of the recipient(s).
|
|
@@ -43,7 +43,7 @@ export default class Mailer {
|
|
|
43
43
|
* @param {string} [optionalReplyTo] - The email address to set as the reply-to address.
|
|
44
44
|
* @param {any[]} [optionalAttachments] - An array
|
|
45
45
|
*/
|
|
46
|
-
sendTemplatedEmail(to: string | Array<string>, templates: string | Array<string>, data: object, optionalCC?: string | Array<string>, optionalFrom?: string, optionalReplyTo?: string, optionalAttachments?: any[], optionalTransport?: Email.NodeMailerTransportOptions): Promise<
|
|
46
|
+
sendTemplatedEmail(to: string | Array<string>, templates: string | Array<string>, data: object, optionalCC?: string | Array<string>, optionalFrom?: string, optionalReplyTo?: string, optionalAttachments?: any[], optionalTransport?: Email.NodeMailerTransportOptions): Promise<null>;
|
|
47
47
|
/**
|
|
48
48
|
* Creates a new SMTP transporter for sending emails using NodeMailer.
|
|
49
49
|
* @param {string} host - The SMTP server host.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Mailer.js","sourceRoot":"","sources":["../../../src/Mailer/Mailer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Mailer.js","sourceRoot":"","sources":["../../../src/Mailer/Mailer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RouteResolver.js","sourceRoot":"","sources":["../../../src/Server/RouteResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAGA;;GAEG;AACH;IAkBE;;;OAGG;IACH;QACE,IAAI,CAAC,IAAI,GAAG,EAAE,CAAA;IAChB,CAAC;IAED;;;;;;OAMG;IACI,yBAAQ,GAAf,UAAgB,KAAY,EAAE,KAAe;QAC3C,IAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QAC3B,IAAI,KAAK,EAAE;YACT,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;gBACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,MAAM,EAAE,CAAA;gBAC7C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;aACrC;iBAAM;gBACL,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,MAAM,EAAE,CAAA;gBACnD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;aACxC;SACF;aAAM;YACL,IAAI,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAAoB,KAAK,CAAC,MAAM,eAAK,KAAK,CAAC,IAAI,CAAE,CAAC,CAAA;YAEpF,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;SACrB;IACH,CAAC;IAED;;;;OAIG;IACI,6BAAY,GAAnB,UAAoB,KAAe;;QACjC,IAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QAC3B,IAAI,KAAK,EAAE;YACT,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE;gBACtB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;aAC5C;YACD,OAAO,MAAA,IAAI,CAAC,QAAQ,0CAAE,YAAY,CAAC,KAAK,CAAC,CAAA;SAC1C;QACD,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IACH,aAAC;AAAD,CAAC,AAjED,IAiEC;AAED;;;GAGG;AACH;IAQE;;;;OAIG;IACH,uBAAqB,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;QACvC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAChB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAC1B,CAAC;IAED;;;;;OAKG;IACI,oCAAY,GAAnB,UAAoB,MAAkB,EAAE,IAAY;;QAClD,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,MAAM,EAAR,CAAQ,CAAC,CAAA;QACnD,OAAO,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,0CAAE,YAAY,CAAC,KAAK,CAAC,CAAA;IACjD,CAAC;IAED;;;;OAIG;IACK,mCAAW,GAAnB,UAAoB,MAAoB;;;YACtC,KAAoB,IAAA,KAAA,SAAA,MAAM,CAAC,MAAM,CAAA,gBAAA,4BAAE;gBAA9B,IAAM,KAAK,WAAA;gBACd,IAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,MAAM,EAAR,CAAQ,CAAC,CAAA;gBACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,EAAE,CAAA;gBACrE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"RouteResolver.js","sourceRoot":"","sources":["../../../src/Server/RouteResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAGA;;GAEG;AACH;IAkBE;;;OAGG;IACH;QACE,IAAI,CAAC,IAAI,GAAG,EAAE,CAAA;IAChB,CAAC;IAED;;;;;;OAMG;IACI,yBAAQ,GAAf,UAAgB,KAAY,EAAE,KAAe;QAC3C,IAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QAC3B,IAAI,KAAK,EAAE;YACT,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;gBACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,MAAM,EAAE,CAAA;gBAC7C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;aACrC;iBAAM;gBACL,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,MAAM,EAAE,CAAA;gBACnD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;aACxC;SACF;aAAM;YACL,IAAI,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAAoB,KAAK,CAAC,MAAM,eAAK,KAAK,CAAC,IAAI,CAAE,CAAC,CAAA;YAEpF,IAAI,CAAC,OAAO,GAAG,KAAK,CAAA;SACrB;IACH,CAAC;IAED;;;;OAIG;IACI,6BAAY,GAAnB,UAAoB,KAAe;;QACjC,IAAM,KAAK,GAAG,KAAK,CAAC,KAAK,EAAE,CAAA;QAC3B,IAAI,KAAK,EAAE;YACT,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,EAAE;gBACtB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;aAC5C;YACD,OAAO,MAAA,IAAI,CAAC,QAAQ,0CAAE,YAAY,CAAC,KAAK,CAAC,CAAA;SAC1C;QACD,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IACH,aAAC;AAAD,CAAC,AAjED,IAiEC;AAED;;;GAGG;AACH;IAQE;;;;OAIG;IACH,uBAAqB,MAAoB;QAApB,WAAM,GAAN,MAAM,CAAc;QACvC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAA;QAChB,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;IAC1B,CAAC;IAED;;;;;OAKG;IACI,oCAAY,GAAnB,UAAoB,MAAkB,EAAE,IAAY;;QAClD,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,MAAM,EAAR,CAAQ,CAAC,CAAA;QACnD,OAAO,MAAA,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,0CAAE,YAAY,CAAC,KAAK,CAAC,CAAA;IACjD,CAAC;IAED;;;;OAIG;IACK,mCAAW,GAAnB,UAAoB,MAAoB;;;YACtC,KAAoB,IAAA,KAAA,SAAA,MAAM,CAAC,MAAM,CAAA,gBAAA,4BAAE;gBAA9B,IAAM,KAAK,WAAA;gBACd,IAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,MAAM,EAAR,CAAQ,CAAC,CAAA;gBACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,EAAE,CAAA;gBACrE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;aAClD;;;;;;;;;IACH,CAAC;IACH,oBAAC;AAAD,CAAC,AAzCD,IAyCC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@creator.co/wapi",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.12",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
"json-stringify-safe": "^5.0.1",
|
|
35
35
|
"jsonwebtoken": "^9.0.2",
|
|
36
36
|
"knex": "^3.0.1",
|
|
37
|
+
"knex-stringcase": "^1.4.6",
|
|
37
38
|
"node-cache": "^5.1.2",
|
|
38
39
|
"object-hash": "^3.0.0",
|
|
39
40
|
"parse-duration": "^1.1.0",
|
package/src/API/Utils.ts
CHANGED
|
@@ -21,11 +21,11 @@ export default class Utils {
|
|
|
21
21
|
|
|
22
22
|
/**
|
|
23
23
|
* Parses a string into an integer and returns null if the string is not a valid number.
|
|
24
|
-
* @param {string}
|
|
24
|
+
* @param {string} str - The string to parse into an integer.
|
|
25
25
|
* @returns {number | null} - The parsed integer or null if the string is not a valid number.
|
|
26
26
|
*/
|
|
27
|
-
public static parseIntNullIfNaN(
|
|
28
|
-
const n = parseInt(
|
|
27
|
+
public static parseIntNullIfNaN(str?: string): number | null {
|
|
28
|
+
const n = parseInt(str || '')
|
|
29
29
|
return isNaN(n) ? null : n
|
|
30
30
|
}
|
|
31
31
|
|
package/src/Crypto/JWT.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import knex, { Knex } from 'knex'
|
|
2
|
+
import * as knexStringcase from 'knex-stringcase'
|
|
2
3
|
|
|
3
4
|
import { KnexTransaction, KnexTransactionImpl } from './KnexTransaction'
|
|
4
5
|
import { Database } from '../../Database'
|
|
@@ -20,7 +21,12 @@ export class KnexDatabase extends Database<KnexTransaction> {
|
|
|
20
21
|
*/
|
|
21
22
|
public constructor(config: DbConfig<'knex'>) {
|
|
22
23
|
super(config)
|
|
23
|
-
|
|
24
|
+
|
|
25
|
+
this.client = KnexDatabase.knexProvider(this.constructConfig(config))
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
private constructConfig(config: DbConfig<'knex'>) {
|
|
29
|
+
const knexConfig = {
|
|
24
30
|
client: config.driver,
|
|
25
31
|
connection: {
|
|
26
32
|
host: config.host,
|
|
@@ -33,7 +39,9 @@ export class KnexDatabase extends Database<KnexTransaction> {
|
|
|
33
39
|
min: 1,
|
|
34
40
|
max: config.maxConnections,
|
|
35
41
|
},
|
|
36
|
-
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return config.convertCamelToSnake ? knexStringcase(knexConfig) : knexConfig
|
|
37
45
|
}
|
|
38
46
|
|
|
39
47
|
/**
|
package/src/Database/types.d.ts
CHANGED
|
@@ -34,9 +34,10 @@ export type DatabaseTransactionType<Type extends DatabaseType> =
|
|
|
34
34
|
* @property {string} database - The name of the database to connect to.
|
|
35
35
|
* @property {boolean} autoCommit - Whether or not to automatically commit transactions.
|
|
36
36
|
* @property {number} maxConnections - The maximum number of connections to the database.
|
|
37
|
+
* @property {boolean} [convertCamelToSnake] - Whether or not to convert camel case to snake case for column names.
|
|
37
38
|
* @returns The transaction type associated with the specified database type.
|
|
38
39
|
*/
|
|
39
|
-
export
|
|
40
|
+
export type DbConfig<S extends DatabaseType> = {
|
|
40
41
|
type: S
|
|
41
42
|
driver: string
|
|
42
43
|
host: string
|
|
@@ -46,4 +47,8 @@ export interface DbConfig<S extends DatabaseType> {
|
|
|
46
47
|
database: string
|
|
47
48
|
autoCommit: boolean
|
|
48
49
|
maxConnections: number
|
|
49
|
-
}
|
|
50
|
+
} & (S extends 'knex'
|
|
51
|
+
? {
|
|
52
|
+
convertCamelToSnake?: boolean
|
|
53
|
+
}
|
|
54
|
+
: any)
|
package/src/Mailer/Mailer.ts
CHANGED
|
@@ -205,7 +205,7 @@ export default class Mailer {
|
|
|
205
205
|
* @returns {Promise<boolean>} - A promise that resolves to true if the template was rendered successfully, false otherwise.
|
|
206
206
|
*/
|
|
207
207
|
public static async renderTemplate(template: string, data: object): Promise<any> {
|
|
208
|
-
let validRenderResp = null
|
|
208
|
+
let validRenderResp: string | null = null
|
|
209
209
|
try {
|
|
210
210
|
const email = new Email()
|
|
211
211
|
validRenderResp = await email.render(`${template}`, data)
|
|
@@ -113,7 +113,7 @@ export default class RouteResolver {
|
|
|
113
113
|
for (const route of config.routes) {
|
|
114
114
|
const parts = route.path.split('/').filter(p => p.length)
|
|
115
115
|
this.routes[route.method] = this.routes[route.method] || new Routes()
|
|
116
|
-
this.routes[route.method]
|
|
116
|
+
this.routes[route.method]!.addRoute(route, parts)
|
|
117
117
|
}
|
|
118
118
|
}
|
|
119
119
|
}
|
|
@@ -50,4 +50,27 @@ describe('KnexDatabase', () => {
|
|
|
50
50
|
expect(trans).toBeInstanceOf(KnexTransactionImpl)
|
|
51
51
|
expect(trans['delegate']).toBe(mockTrans)
|
|
52
52
|
})
|
|
53
|
+
|
|
54
|
+
test('KnexDatabase - convert camel to snake', async () => {
|
|
55
|
+
const mockTrans = { a: 'b' } as any
|
|
56
|
+
const mockClient = jest.fn(
|
|
57
|
+
() =>
|
|
58
|
+
({
|
|
59
|
+
transaction: async () => mockTrans,
|
|
60
|
+
}) as Knex
|
|
61
|
+
)
|
|
62
|
+
KnexDatabase['knexProvider'] = mockClient
|
|
63
|
+
|
|
64
|
+
const underTest = new KnexDatabase({ ...config, convertCamelToSnake: true })
|
|
65
|
+
expect(mockClient).toBeCalledWith({
|
|
66
|
+
...expectedImplConfig,
|
|
67
|
+
postProcessResponse: expect.any(Function),
|
|
68
|
+
wrapIdentifier: expect.any(Function),
|
|
69
|
+
})
|
|
70
|
+
|
|
71
|
+
const trans = await underTest.transaction()
|
|
72
|
+
|
|
73
|
+
expect(trans).toBeInstanceOf(KnexTransactionImpl)
|
|
74
|
+
expect(trans['delegate']).toBe(mockTrans)
|
|
75
|
+
})
|
|
53
76
|
})
|