@churchapps/apihelper 0.1.0 → 0.1.3
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/auth/AuthenticatedUser.js +9 -9
- package/dist/auth/AuthenticatedUser.js.map +1 -1
- package/dist/auth/CustomAuthProvider.js +1 -1
- package/dist/auth/CustomAuthProvider.js.map +1 -1
- package/dist/auth/Principal.d.ts +17 -3
- package/dist/auth/Principal.d.ts.map +1 -1
- package/dist/auth/Principal.js.map +1 -1
- package/dist/controllers/CustomBaseController.d.ts +2 -2
- package/dist/controllers/CustomBaseController.d.ts.map +1 -1
- package/dist/controllers/CustomBaseController.js.map +1 -1
- package/dist/controllers/ErrorController.d.ts +1 -1
- package/dist/controllers/ErrorController.d.ts.map +1 -1
- package/dist/helpers/AwsHelper.d.ts +5 -1
- package/dist/helpers/AwsHelper.d.ts.map +1 -1
- package/dist/helpers/AwsHelper.js +1 -1
- package/dist/helpers/AwsHelper.js.map +1 -1
- package/dist/helpers/DB.d.ts +3 -3
- package/dist/helpers/DB.d.ts.map +1 -1
- package/dist/helpers/DB.js +1 -1
- package/dist/helpers/DB.js.map +1 -1
- package/dist/helpers/EmailHelper.d.ts +1 -1
- package/dist/helpers/EmailHelper.d.ts.map +1 -1
- package/dist/helpers/EnvironmentBase.d.ts +1 -1
- package/dist/helpers/EnvironmentBase.d.ts.map +1 -1
- package/dist/helpers/EnvironmentBase.js.map +1 -1
- package/dist/helpers/OmitEmpty.d.ts +7 -1
- package/dist/helpers/OmitEmpty.d.ts.map +1 -1
- package/dist/helpers/OmitEmpty.js +1 -1
- package/dist/helpers/OmitEmpty.js.map +1 -1
- package/dist/helpers/Pool.js +1 -1
- package/dist/helpers/Pool.js.map +1 -1
- package/dist/helpers/index.d.ts.map +1 -1
- package/dist/helpers/index.js +1 -0
- package/dist/helpers/index.js.map +1 -1
- package/package.json +21 -20
- package/src/auth/AuthenticatedUser.ts +9 -9
- package/src/auth/CustomAuthProvider.ts +1 -1
- package/src/auth/Principal.ts +18 -3
- package/src/controllers/CustomBaseController.ts +9 -9
- package/src/controllers/ErrorController.ts +1 -1
- package/src/helpers/AwsHelper.ts +2 -2
- package/src/helpers/DB.ts +10 -10
- package/src/helpers/EmailHelper.ts +1 -1
- package/src/helpers/EnvironmentBase.ts +7 -7
- package/src/helpers/OmitEmpty.ts +25 -14
- package/src/helpers/Pool.ts +2 -2
- package/src/helpers/index.ts +2 -0
- package/tsconfig.json +3 -2
|
@@ -3,15 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.AuthenticatedUser = void 0;
|
|
4
4
|
class AuthenticatedUser {
|
|
5
5
|
constructor(principal) {
|
|
6
|
-
this.jwt = principal.details.jwt;
|
|
7
|
-
this.id = principal.details.id;
|
|
8
|
-
this.churchId = principal.details.churchId;
|
|
9
|
-
this.permissions = principal.details.permissions;
|
|
10
|
-
this.apiName = principal.details.apiName;
|
|
11
|
-
this.email = principal.details.email;
|
|
12
|
-
this.personId = principal.details.personId;
|
|
13
|
-
this.firstName = principal.details.firstName;
|
|
14
|
-
this.lastName = principal.details.lastName;
|
|
6
|
+
this.jwt = principal.details.jwt || "";
|
|
7
|
+
this.id = principal.details.id || "";
|
|
8
|
+
this.churchId = principal.details.churchId || "";
|
|
9
|
+
this.permissions = principal.details.permissions || [];
|
|
10
|
+
this.apiName = principal.details.apiName || "";
|
|
11
|
+
this.email = principal.details.email || "";
|
|
12
|
+
this.personId = principal.details.personId || "";
|
|
13
|
+
this.firstName = principal.details.firstName || "";
|
|
14
|
+
this.lastName = principal.details.lastName || "";
|
|
15
15
|
this.membershipStatus = principal.details.membershipStatus;
|
|
16
16
|
this.groupIds = principal.details.groupIds;
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthenticatedUser.js","sourceRoot":"","sources":["../../src/auth/AuthenticatedUser.ts"],"names":[],"mappings":";;;AAGA,MAAa,iBAAiB;IAa5B,YAAmB,SAAoB;QACrC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"AuthenticatedUser.js","sourceRoot":"","sources":["../../src/auth/AuthenticatedUser.ts"],"names":[],"mappings":";;;AAGA,MAAa,iBAAiB;IAa5B,YAAmB,SAAoB;QACrC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC;QACvC,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;QACnD,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAC3D,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC7C,CAAC;IAEM,WAAW,CAAC,UAAuB;QACxC,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC;YAC9B,CAAC,CAAC,UAAU,CAAC,OAAO,GAAG,GAAG,GAAG,UAAU,CAAC,WAAW,GAAG,IAAI,GAAG,UAAU,CAAC,MAAM;YAC9E,CAAC,CAAC,UAAU,CAAC,WAAW,GAAG,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC;QAEtD,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;YACtC,IAAI,CAAC,KAAK,GAAG;gBAAE,MAAM,GAAG,IAAI,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAtCD,8CAsCC"}
|
|
@@ -23,7 +23,7 @@ let CustomAuthProvider = class CustomAuthProvider {
|
|
|
23
23
|
if (!token)
|
|
24
24
|
return null;
|
|
25
25
|
const decoded = jsonwebtoken_1.default.verify(token, __1.EnvironmentBase.jwtSecret);
|
|
26
|
-
const result = decoded ? new _1.Principal(decoded) : null;
|
|
26
|
+
const result = decoded ? new _1.Principal(typeof decoded === 'object' && decoded !== null ? decoded : {}) : null;
|
|
27
27
|
if (result)
|
|
28
28
|
result.details.jwt = token;
|
|
29
29
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomAuthProvider.js","sourceRoot":"","sources":["../../src/auth/CustomAuthProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAuC;AAGvC,gEAA+B;AAC/B,yBAA+B;AAC/B,0BAAqC;AAG9B,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC7B,iIAAiI;IAC1H,KAAK,CAAC,OAAO,CAAC,GAAoB,EAAE,IAAsB,EAAE,KAA2B;QAC5F,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7C,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YACxB,MAAM,OAAO,GAAG,sBAAG,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAe,CAAC,SAAS,CAAC,CAAC;YAE7D,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,YAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"CustomAuthProvider.js","sourceRoot":"","sources":["../../src/auth/CustomAuthProvider.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAAuC;AAGvC,gEAA+B;AAC/B,yBAA+B;AAC/B,0BAAqC;AAG9B,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAC7B,iIAAiI;IAC1H,KAAK,CAAC,OAAO,CAAC,GAAoB,EAAE,IAAsB,EAAE,KAA2B;QAC5F,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC;QAC7C,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAC;YACxB,MAAM,OAAO,GAAG,sBAAG,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAe,CAAC,SAAS,CAAC,CAAC;YAE7D,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,YAAS,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,OAAkC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACzI,IAAI,MAAM;gBAAE,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,KAAK,CAAC;YACvC,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAA;AAhBY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,sBAAU,GAAE;GACA,kBAAkB,CAgB9B"}
|
package/dist/auth/Principal.d.ts
CHANGED
|
@@ -1,9 +1,23 @@
|
|
|
1
1
|
import { interfaces } from "inversify-express-utils";
|
|
2
|
+
export interface PrincipalDetails {
|
|
3
|
+
jwt?: string;
|
|
4
|
+
id?: string;
|
|
5
|
+
churchId?: string;
|
|
6
|
+
permissions?: string[];
|
|
7
|
+
apiName?: string;
|
|
8
|
+
email?: string;
|
|
9
|
+
personId?: string;
|
|
10
|
+
firstName?: string;
|
|
11
|
+
lastName?: string;
|
|
12
|
+
membershipStatus?: string;
|
|
13
|
+
groupIds?: string[];
|
|
14
|
+
[key: string]: unknown;
|
|
15
|
+
}
|
|
2
16
|
export declare class Principal implements interfaces.Principal {
|
|
3
|
-
details:
|
|
4
|
-
constructor(details:
|
|
17
|
+
details: PrincipalDetails;
|
|
18
|
+
constructor(details: PrincipalDetails);
|
|
5
19
|
isAuthenticated(): Promise<boolean>;
|
|
6
|
-
isResourceOwner(resourceId:
|
|
20
|
+
isResourceOwner(resourceId: string | number): Promise<boolean>;
|
|
7
21
|
isInRole(role: string): Promise<boolean>;
|
|
8
22
|
}
|
|
9
23
|
//# sourceMappingURL=Principal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Principal.d.ts","sourceRoot":"","sources":["../../src/auth/Principal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,qBAAa,SAAU,YAAW,UAAU,CAAC,SAAS;IAC7C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Principal.d.ts","sourceRoot":"","sources":["../../src/auth/Principal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,qBAAa,SAAU,YAAW,UAAU,CAAC,SAAS;IAC7C,OAAO,EAAE,gBAAgB,CAAC;gBAEd,OAAO,EAAE,gBAAgB;IAIrC,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAInC,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI9D,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAIhD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Principal.js","sourceRoot":"","sources":["../../src/auth/Principal.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"Principal.js","sourceRoot":"","sources":["../../src/auth/Principal.ts"],"names":[],"mappings":";;;AAiBA,MAAa,SAAS;IAGpB,YAAmB,OAAyB;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEM,eAAe;QACpB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAEM,eAAe,CAAC,UAA2B;QAChD,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC;IAC9C,CAAC;IAEM,QAAQ,CAAC,IAAY;QAC1B,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;IAC3C,CAAC;CAEF;AAnBD,8BAmBC"}
|
|
@@ -9,7 +9,7 @@ export declare class CustomBaseController extends BaseHttpController {
|
|
|
9
9
|
denyAccess(errors: string[]): import("inversify-express-utils/lib/cjs/results").JsonResult;
|
|
10
10
|
authUser(): AuthenticatedUser;
|
|
11
11
|
include(req: express.Request, item: string): boolean;
|
|
12
|
-
actionWrapper(_req: express.Request, _res: express.Response, fetchFunction: (_au: AuthenticatedUser) =>
|
|
13
|
-
actionWrapperAnon(_req: express.Request, _res: express.Response, fetchFunction: () =>
|
|
12
|
+
actionWrapper(_req: express.Request, _res: express.Response, fetchFunction: (_au: AuthenticatedUser) => unknown): Promise<unknown>;
|
|
13
|
+
actionWrapperAnon(_req: express.Request, _res: express.Response, fetchFunction: () => unknown): Promise<unknown>;
|
|
14
14
|
}
|
|
15
15
|
//# sourceMappingURL=CustomBaseController.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomBaseController.d.ts","sourceRoot":"","sources":["../../src/controllers/CustomBaseController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAa,MAAM,SAAS,CAAA;AAEtD,qBAAa,oBAAqB,SAAQ,kBAAkB;IAEjD,MAAM,EAAE,aAAa,CAAC;;IAOtB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE;IAItB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE;IAI3B,QAAQ,IAAI,iBAAiB;IAK7B,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM;IAUpC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,
|
|
1
|
+
{"version":3,"file":"CustomBaseController.d.ts","sourceRoot":"","sources":["../../src/controllers/CustomBaseController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAa,MAAM,SAAS,CAAA;AAEtD,qBAAa,oBAAqB,SAAQ,kBAAkB;IAEjD,MAAM,EAAE,aAAa,CAAC;;IAOtB,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE;IAItB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE;IAI3B,QAAQ,IAAI,iBAAiB;IAK7B,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM;IAUpC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,iBAAiB,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAiBlI,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAmBhI"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomBaseController.js","sourceRoot":"","sources":["../../src/controllers/CustomBaseController.ts"],"names":[],"mappings":";;;AAAA,qEAA6D;AAE7D,4DAAyD;AACzD,kCAAsD;AAEtD,MAAa,oBAAqB,SAAQ,4CAAkB;IAIxD;QACI,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,6BAAa,CAAC,UAAU,EAAE,CAAC;IAC7C,CAAC;IAEM,KAAK,CAAC,MAAgB;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;IAEM,UAAU,CAAC,MAAgB;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;IAEM,QAAQ;QACX,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,wBAAiB,CAAC,IAAI,gBAAS,CAAC,EAAE,CAAC,CAAC,CAAC;;YAC/E,OAAO,IAAI,wBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"CustomBaseController.js","sourceRoot":"","sources":["../../src/controllers/CustomBaseController.ts"],"names":[],"mappings":";;;AAAA,qEAA6D;AAE7D,4DAAyD;AACzD,kCAAsD;AAEtD,MAAa,oBAAqB,SAAQ,4CAAkB;IAIxD;QACI,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,MAAM,GAAG,6BAAa,CAAC,UAAU,EAAE,CAAC;IAC7C,CAAC;IAEM,KAAK,CAAC,MAAgB;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;IAEM,UAAU,CAAC,MAAgB;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC;IACtC,CAAC;IAEM,QAAQ;QACX,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,wBAAiB,CAAC,IAAI,gBAAS,CAAC,EAAE,CAAC,CAAC,CAAC;;YAC/E,OAAO,IAAI,wBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,IAAiB,CAAC,CAAC;IAC1E,CAAC;IAEM,OAAO,CAAC,GAAoB,EAAE,IAAY;QAC7C,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,KAAK,GAAW,GAAG,CAAC,KAAK,CAAC,OAAiB,CAAC;YAClD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAAE,MAAM,GAAG,IAAI,CAAC;QAChD,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,IAAqB,EAAE,IAAsB,EAAE,aAAkD;QACxH,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YACpD,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC1B,OAAO,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YAClB,IAAI,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAU,CAAC,CAAC;gBAC9B,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC9B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC;YAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAU,CAAC,CAAC;QAChD,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAAC,IAAqB,EAAE,IAAsB,EAAE,aAA4B;QACtG,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;YACrC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC1B,OAAO,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YAClB,IAAI,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAU,CAAC,CAAC;gBAC9B,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC9B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC;YAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAU,CAAC,CAAC;QAChD,CAAC;IACL,CAAC;CAIJ;AApED,oDAoEC"}
|
|
@@ -2,6 +2,6 @@ import express from "express";
|
|
|
2
2
|
import { CustomBaseController } from "./CustomBaseController";
|
|
3
3
|
import { ErrorLog } from "../models";
|
|
4
4
|
export declare class ErrorController extends CustomBaseController {
|
|
5
|
-
save(req: express.Request<{}, {}, ErrorLog[]>, _res: express.Response): Promise<
|
|
5
|
+
save(req: express.Request<{}, {}, ErrorLog[]>, _res: express.Response): Promise<ErrorLog[]>;
|
|
6
6
|
}
|
|
7
7
|
//# sourceMappingURL=ErrorController.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorController.d.ts","sourceRoot":"","sources":["../../src/controllers/ErrorController.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAGpC,qBACa,eAAgB,SAAQ,oBAAoB;IAGxC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"ErrorController.d.ts","sourceRoot":"","sources":["../../src/controllers/ErrorController.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAGpC,qBACa,eAAgB,SAAQ,oBAAoB;IAGxC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;CAsB3G"}
|
|
@@ -3,7 +3,11 @@ export declare class AwsHelper {
|
|
|
3
3
|
static readParameter(parameterName: string): Promise<string>;
|
|
4
4
|
private static _client;
|
|
5
5
|
private static getClient;
|
|
6
|
-
static S3PresignedUrl(key: string): Promise<
|
|
6
|
+
static S3PresignedUrl(key: string): Promise<{
|
|
7
|
+
url: string;
|
|
8
|
+
fields: Record<string, string>;
|
|
9
|
+
key: string;
|
|
10
|
+
}>;
|
|
7
11
|
static S3Upload(key: string, contentType: string, contents: Buffer): Promise<void>;
|
|
8
12
|
static S3Remove(key: string): Promise<void>;
|
|
9
13
|
static S3Rename(oldKey: string, newKey: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AwsHelper.d.ts","sourceRoot":"","sources":["../../src/helpers/AwsHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAyH,MAAM,oBAAoB,CAAC;AAKrK,qBAAa,SAAS;WAGP,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAelE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAW;IAEjC,OAAO,CAAC,MAAM,CAAC,SAAS;WAOX,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"AwsHelper.d.ts","sourceRoot":"","sources":["../../src/helpers/AwsHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAyH,MAAM,oBAAoB,CAAC;AAKrK,qBAAa,SAAS;WAGP,aAAa,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAelE,OAAO,CAAC,MAAM,CAAC,OAAO,CAAW;IAEjC,OAAO,CAAC,MAAM,CAAC,SAAS;WAOX,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,CAAC;WAchG,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAY3E,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WASpC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAI/C,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;WAUrD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;WAIvC,eAAe,CAAC,EAAE,EAAC,QAAQ,EAAE,MAAM,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;mBAapE,YAAY;WAUpB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAczD"}
|
|
@@ -87,7 +87,7 @@ class AwsHelper {
|
|
|
87
87
|
let continuationToken;
|
|
88
88
|
do {
|
|
89
89
|
const { Contents, NextContinuationToken } = await this.S3ListManual(s3, bucket, path, continuationToken);
|
|
90
|
-
result.push(...(Contents?.map((item) => item.Key) || []));
|
|
90
|
+
result.push(...(Contents?.map((item) => item.Key).filter((key) => key !== undefined) || []));
|
|
91
91
|
continuationToken = NextContinuationToken;
|
|
92
92
|
} while (continuationToken);
|
|
93
93
|
return result;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AwsHelper.js","sourceRoot":"","sources":["../../src/helpers/AwsHelper.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AwsHelper.js","sourceRoot":"","sources":["../../src/helpers/AwsHelper.ts"],"names":[],"mappings":"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"}
|
package/dist/helpers/DB.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { PoolConnection } from "mysql2";
|
|
2
2
|
export declare class DB {
|
|
3
3
|
static getConnection(): Promise<PoolConnection>;
|
|
4
|
-
static getQuery(connection: PoolConnection, sql: string, params:
|
|
5
|
-
static query(sql: string, params:
|
|
6
|
-
static queryOne(sql: string, params:
|
|
4
|
+
static getQuery(connection: PoolConnection, sql: string, params: unknown[]): Promise<unknown>;
|
|
5
|
+
static query(sql: string, params: unknown[]): Promise<unknown>;
|
|
6
|
+
static queryOne(sql: string, params: unknown[]): Promise<unknown>;
|
|
7
7
|
}
|
|
8
8
|
//# sourceMappingURL=DB.d.ts.map
|
package/dist/helpers/DB.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DB.d.ts","sourceRoot":"","sources":["../../src/helpers/DB.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAc,MAAM,QAAQ,CAAC;AAGpD,qBAAa,EAAE;WAGE,aAAa;WASb,QAAQ,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"DB.d.ts","sourceRoot":"","sources":["../../src/helpers/DB.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAc,MAAM,QAAQ,CAAC;AAGpD,qBAAa,EAAE;WAGE,aAAa;WASb,QAAQ,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;WAW5D,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;WASpC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;CAI9D"}
|
package/dist/helpers/DB.js
CHANGED
package/dist/helpers/DB.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DB.js","sourceRoot":"","sources":["../../src/helpers/DB.ts"],"names":[],"mappings":";;;AAAA,iCAA8B;AAE9B,mDAAgD;AAEhD,MAAa,EAAE;IAEX,mBAAmB;IACnB,MAAM,CAAC,KAAK,CAAC,aAAa;QACtB,MAAM,OAAO,GAA4B,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrE,WAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAAqB,EAAE,IAAoB,EAAE,EAAE,GAAG,IAAI,EAAE;gBAAE,MAAM,CAAC,EAAE,CAAC,CAAC;;gBAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7H,CAAC,CAAC,CAAC;QAAA,CAAC;QACJ,MAAM,UAAU,GAAmB,MAAM,OAAO,CAAC;QACjD,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,mBAAmB;IACnB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,UAA0B,EAAE,GAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"DB.js","sourceRoot":"","sources":["../../src/helpers/DB.ts"],"names":[],"mappings":";;;AAAA,iCAA8B;AAE9B,mDAAgD;AAEhD,MAAa,EAAE;IAEX,mBAAmB;IACnB,MAAM,CAAC,KAAK,CAAC,aAAa;QACtB,MAAM,OAAO,GAA4B,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrE,WAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,EAAqB,EAAE,IAAoB,EAAE,EAAE,GAAG,IAAI,EAAE;gBAAE,MAAM,CAAC,EAAE,CAAC,CAAC;;gBAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7H,CAAC,CAAC,CAAC;QAAA,CAAC;QACJ,MAAM,UAAU,GAAmB,MAAM,OAAO,CAAC;QACjD,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,mBAAmB;IACnB,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,UAA0B,EAAE,GAAW,EAAE,MAAiB;QAC5E,MAAM,OAAO,GAAqB,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9D,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,EAAqB,EAAE,IAAa,EAAE,EAAE;gBACzE,IAAI,EAAE,EAAE,CAAC;oBAAC,6BAAa,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAAC,CAAC;qBACxD,CAAC;oBAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAAC,CAAC;YAC3B,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,GAAY,MAAM,OAAO,CAAC;QACrC,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAW,EAAE,MAAiB;QACpD,IAAI,MAAM,GAAY,IAAI,CAAC;QAC3B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,IAAI,CAAC;YAAC,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAAC,CAAC;QAC9D,OAAO,EAAW,EAAE,CAAC;YAAC,6BAAa,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,EAAW,CAAC,CAAC;QAAC,CAAC;gBAC9D,CAAC;YAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAAC,CAAC;QACjC,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAW,EAAE,MAAiB;QACvD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAc,CAAC;QAC1D,OAAO,MAAM,EAAE,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjD,CAAC;CACJ;AApCD,gBAoCC"}
|
|
@@ -4,6 +4,6 @@ export declare class EmailHelper {
|
|
|
4
4
|
static sendTemplatedEmail(from: string, to: string, appName: string, appUrl: string, subject: string, contents: string, emailTemplate?: "EmailTemplate.html" | "ChurchEmailTemplate.html"): Promise<void>;
|
|
5
5
|
static readTemplate(templateFile?: string): string;
|
|
6
6
|
private static sendSes;
|
|
7
|
-
static sendEmail({ from, to, subject, body }: IEmailPayload): Promise<
|
|
7
|
+
static sendEmail({ from, to, subject, body }: IEmailPayload): Promise<void>;
|
|
8
8
|
}
|
|
9
9
|
//# sourceMappingURL=EmailHelper.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmailHelper.d.ts","sourceRoot":"","sources":["../../src/helpers/EmailHelper.ts"],"names":[],"mappings":"AAGA,OAAO,EAAmB,aAAa,EAAE,MAAM,GAAG,CAAA;AAIlD,qBAAa,WAAW;IAEtB,OAAO,CAAC,MAAM,CAAC,YAAY;WAIP,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,GAAE,oBAAoB,GAAG,0BAAiD;WAW9M,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM;mBAQ3B,OAAO;WAwBR,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"EmailHelper.d.ts","sourceRoot":"","sources":["../../src/helpers/EmailHelper.ts"],"names":[],"mappings":"AAGA,OAAO,EAAmB,aAAa,EAAE,MAAM,GAAG,CAAA;AAIlD,qBAAa,WAAW;IAEtB,OAAO,CAAC,MAAM,CAAC,YAAY;WAIP,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,GAAE,oBAAoB,GAAG,0BAAiD;WAW9M,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM;mBAQ3B,OAAO;WAwBR,SAAS,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;CAqCzF"}
|
|
@@ -12,6 +12,6 @@ export declare class EnvironmentBase {
|
|
|
12
12
|
static smtpPass: string;
|
|
13
13
|
static smtpSecure: boolean;
|
|
14
14
|
static smtpUser: string;
|
|
15
|
-
static populateBase(jsonData:
|
|
15
|
+
static populateBase(jsonData: Record<string, unknown>, appName: string, appEnv: string): Promise<void>;
|
|
16
16
|
}
|
|
17
17
|
//# sourceMappingURL=EnvironmentBase.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentBase.d.ts","sourceRoot":"","sources":["../../src/helpers/EnvironmentBase.ts"],"names":[],"mappings":"AAEA,qBAAa,eAAe;IAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAChC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC;IAC7B,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC;IAEzB,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;WAGX,YAAY,CAAC,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"EnvironmentBase.d.ts","sourceRoot":"","sources":["../../src/helpers/EnvironmentBase.ts"],"names":[],"mappings":"AAEA,qBAAa,eAAe;IAC1B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAChC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC;IAC7B,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC;IACzB,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC;IAEzB,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC;IAC1B,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;WAGX,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAC,MAAM,EAAE,MAAM,EAAE,MAAM;CAgB5F"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvironmentBase.js","sourceRoot":"","sources":["../../src/helpers/EnvironmentBase.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAExC,MAAa,eAAe;IAiB1B,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"EnvironmentBase.js","sourceRoot":"","sources":["../../src/helpers/EnvironmentBase.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAExC,MAAa,eAAe;IAiB1B,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,QAAiC,EAAE,OAAc,EAAE,MAAc;QACzF,eAAe,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAiB,CAAC;QACrD,eAAe,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAgB,CAAC;QACnD,eAAe,CAAC,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,MAAM,qBAAS,CAAC,aAAa,CAAC,IAAI,MAAM,IAAI,OAAO,mBAAmB,CAAC,CAAC;QAC5I,eAAe,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAqB,CAAC;QAC7D,eAAe,CAAC,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,MAAM,qBAAS,CAAC,aAAa,CAAC,IAAI,MAAM,gBAAgB,CAAC,CAAC;QACxH,eAAe,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAmB,CAAC;QACzD,eAAe,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,MAAM,qBAAS,CAAC,aAAa,CAAC,IAAI,MAAM,YAAY,CAAC,CAAC;QAC5G,eAAe,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAoB,CAAC;QAC3D,eAAe,CAAC,QAAQ,GAAG,QAAQ,CAAC,QAAkB,CAAC;QACvD,eAAe,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;QACjD,eAAe,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;QACjD,eAAe,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,MAAM,CAAC;QAChE,eAAe,CAAC,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IACnD,CAAC;CAEF;AAjCD,0CAiCC"}
|
|
@@ -1,6 +1,12 @@
|
|
|
1
|
+
interface OmitEmptyOptions {
|
|
2
|
+
omitZero?: boolean;
|
|
3
|
+
omitEmptyArray?: boolean;
|
|
4
|
+
excludedProperties?: string[];
|
|
5
|
+
}
|
|
1
6
|
export declare class OmitEmpty {
|
|
2
|
-
static omitEmpty(obj:
|
|
7
|
+
static omitEmpty(obj: unknown, options?: OmitEmptyOptions): unknown;
|
|
3
8
|
private static _buildRuntimeOpts;
|
|
4
9
|
private static isEmpty;
|
|
5
10
|
}
|
|
11
|
+
export {};
|
|
6
12
|
//# sourceMappingURL=OmitEmpty.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OmitEmpty.d.ts","sourceRoot":"","sources":["../../src/helpers/OmitEmpty.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"OmitEmpty.d.ts","sourceRoot":"","sources":["../../src/helpers/OmitEmpty.ts"],"names":[],"mappings":"AAOA,UAAU,gBAAgB;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CACjC;AAQD,qBAAa,SAAS;WACJ,SAAS,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO;IAkC9E,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAQhC,OAAO,CAAC,MAAM,CAAC,OAAO;CA6CzB"}
|
|
@@ -14,7 +14,7 @@ class OmitEmpty {
|
|
|
14
14
|
if (Array.isArray(value)) {
|
|
15
15
|
value = value.map(v => omit(v, opts)).filter(v => !OmitEmpty.isEmpty(v, opts));
|
|
16
16
|
}
|
|
17
|
-
if ((0, kind_of_1.default)(value) === "object") {
|
|
17
|
+
if ((0, kind_of_1.default)(value) === "object" && value !== null) {
|
|
18
18
|
const result = {};
|
|
19
19
|
for (const key of Object.keys(value)) {
|
|
20
20
|
if (!opts.excludedProperties.includes(key)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OmitEmpty.js","sourceRoot":"","sources":["../../src/helpers/OmitEmpty.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,0FAA0F;AAE1F,YAAY,CAAC;;;;;;AAEb,sDAA6B;
|
|
1
|
+
{"version":3,"file":"OmitEmpty.js","sourceRoot":"","sources":["../../src/helpers/OmitEmpty.ts"],"names":[],"mappings":"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"}
|
package/dist/helpers/Pool.js
CHANGED
package/dist/helpers/Pool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pool.js","sourceRoot":"","sources":["../../src/helpers/Pool.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,oDAA2B;AAC3B,wBAAoC;AAEpC,gBAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,MAAa,IAAI;IAGR,MAAM,CAAC,QAAQ;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,kBAAe,CAAC,gBAAgB,CAAC,CAAC;QAEhE,IAAI,CAAC,OAAO,GAAG,gBAAK,CAAC,UAAU,CAAC;YAC9B,eAAe,EAAE,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,IAAI,EAAE,MAAM,CAAC,QAAQ;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,kBAAkB,EAAE,IAAI;YACxB,kBAAkB,EAAE,IAAI;YACxB,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"Pool.js","sourceRoot":"","sources":["../../src/helpers/Pool.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAC5B,oDAA2B;AAC3B,wBAAoC;AAEpC,gBAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,MAAa,IAAI;IAGR,MAAM,CAAC,QAAQ;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,kBAAe,CAAC,gBAAgB,CAAC,CAAC;QAEhE,IAAI,CAAC,OAAO,GAAG,gBAAK,CAAC,UAAU,CAAC;YAC9B,eAAe,EAAE,CAAC;YAClB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,IAAI,EAAE,MAAM,CAAC,QAAQ;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,kBAAkB,EAAE,IAAI;YACxB,kBAAkB,EAAE,IAAI;YACxB,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,SAAS;YAClB,QAAQ,EAAE,SAAS,SAAS,CAAC,KAAkB,EAAE,qBAAoC;gBACnF,yBAAyB;gBACzB,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;oBACnD,IAAI,CAAC;wBACH,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;wBAC7B,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC1B,CAAC;oBAAC,MAAM,CAAC;wBAAC,OAAO,KAAK,CAAC;oBAAC,CAAC;gBAC3B,CAAC;gBACD,OAAO,qBAAqB,EAAE,CAAC;YACjC,CAAC;SACF,CAAC,CAAC;IACL,CAAC;;AA5BH,oBAgDC;AAlBC,kBAAkB;AACH,cAAS,GAAG,CAAC,gBAAwB,EAAE,EAAE;IACtD,yCAAyC;IACzC,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE7B,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAErC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAA;AAErD,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AAGpC,cAAc,aAAa,CAAC;AAC5B,cAAc,MAAM,CAAC;AACrB,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC"}
|
package/dist/helpers/index.js
CHANGED
|
@@ -15,6 +15,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("@churchapps/helpers"), exports);
|
|
18
|
+
// Export all local helpers
|
|
18
19
|
__exportStar(require("./AwsHelper"), exports);
|
|
19
20
|
__exportStar(require("./DB"), exports);
|
|
20
21
|
__exportStar(require("./DBCreator"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AAEpC,2BAA2B;AAC3B,8CAA4B;AAC5B,uCAAqB;AACrB,8CAA4B;AAC5B,qDAAmC;AACnC,oDAAkC;AAClC,sDAAoC;AACpC,+CAA6B;AAC7B,kDAAgC;AAChC,8CAA4B;AAC5B,oDAAkC;AAClC,gDAA8B;AAC9B,gDAA8B;AAC9B,yCAAuB;AACvB,+CAA6B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@churchapps/apihelper",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Library of helper functions not specific to any one ChurchApps project or framework.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -29,40 +29,41 @@
|
|
|
29
29
|
},
|
|
30
30
|
"homepage": "https://github.com/LiveChurchSolutions/Helpers#readme",
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@aws-sdk/client-cloudwatch-logs": "^3.
|
|
33
|
-
"@aws-sdk/client-s3": "^3.
|
|
34
|
-
"@aws-sdk/client-ses": "^3.
|
|
35
|
-
"@aws-sdk/client-ssm": "^3.
|
|
36
|
-
"@aws-sdk/s3-presigned-post": "^3.
|
|
37
|
-
"@aws-sdk/s3-request-presigner": "^3.
|
|
38
|
-
"@churchapps/helpers": "^1.0.
|
|
39
|
-
"dotenv": "^
|
|
32
|
+
"@aws-sdk/client-cloudwatch-logs": "^3.840.0",
|
|
33
|
+
"@aws-sdk/client-s3": "^3.842.0",
|
|
34
|
+
"@aws-sdk/client-ses": "^3.840.0",
|
|
35
|
+
"@aws-sdk/client-ssm": "^3.840.0",
|
|
36
|
+
"@aws-sdk/s3-presigned-post": "^3.842.0",
|
|
37
|
+
"@aws-sdk/s3-request-presigner": "^3.842.0",
|
|
38
|
+
"@churchapps/helpers": "^1.0.42",
|
|
39
|
+
"dotenv": "^17.0.1",
|
|
40
40
|
"express": "^4.21.2",
|
|
41
41
|
"fs-extra": "^11.3.0",
|
|
42
|
-
"inversify": "^6.
|
|
42
|
+
"inversify": "^6.2.2",
|
|
43
43
|
"inversify-express-utils": "^6.5.0",
|
|
44
44
|
"jsonwebtoken": "^9.0.2",
|
|
45
45
|
"kind-of": "^6.0.3",
|
|
46
46
|
"mysql2": "^3.14.1",
|
|
47
|
-
"nodemailer": "^7.0.
|
|
47
|
+
"nodemailer": "^7.0.4",
|
|
48
|
+
"reflect-metadata": "^0.2.2",
|
|
48
49
|
"winston": "^3.17.0",
|
|
49
50
|
"winston-cloudwatch": "^6.3.0"
|
|
50
51
|
},
|
|
51
52
|
"devDependencies": {
|
|
52
53
|
"@types/express": "^4.17.21",
|
|
53
54
|
"@types/fs-extra": "^11.0.4",
|
|
54
|
-
"@types/jsonwebtoken": "^9.0.
|
|
55
|
+
"@types/jsonwebtoken": "^9.0.10",
|
|
55
56
|
"@types/kind-of": "^6.0.3",
|
|
56
|
-
"@types/node": "^
|
|
57
|
+
"@types/node": "^24.0.10",
|
|
57
58
|
"@types/nodemailer": "^6.4.17",
|
|
58
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
59
|
-
"@typescript-eslint/parser": "^8.
|
|
60
|
-
"eslint": "^9.
|
|
59
|
+
"@typescript-eslint/eslint-plugin": "^8.35.1",
|
|
60
|
+
"@typescript-eslint/parser": "^8.35.1",
|
|
61
|
+
"eslint": "^9.30.1",
|
|
61
62
|
"eslint-config-prettier": "^10.1.5",
|
|
62
|
-
"eslint-plugin-prettier": "^5.
|
|
63
|
-
"npm-run-all2": "^
|
|
64
|
-
"prettier": "^3.
|
|
65
|
-
"rimraf": "^
|
|
63
|
+
"eslint-plugin-prettier": "^5.5.1",
|
|
64
|
+
"npm-run-all2": "^8.0.4",
|
|
65
|
+
"prettier": "^3.6.2",
|
|
66
|
+
"rimraf": "^6.0.1",
|
|
66
67
|
"typescript": "^5.8.3"
|
|
67
68
|
}
|
|
68
69
|
}
|
|
@@ -15,15 +15,15 @@ export class AuthenticatedUser {
|
|
|
15
15
|
public jwt: string;
|
|
16
16
|
|
|
17
17
|
public constructor(principal: Principal) {
|
|
18
|
-
this.jwt = principal.details.jwt;
|
|
19
|
-
this.id = principal.details.id;
|
|
20
|
-
this.churchId = principal.details.churchId;
|
|
21
|
-
this.permissions = principal.details.permissions;
|
|
22
|
-
this.apiName = principal.details.apiName;
|
|
23
|
-
this.email = principal.details.email;
|
|
24
|
-
this.personId = principal.details.personId;
|
|
25
|
-
this.firstName = principal.details.firstName;
|
|
26
|
-
this.lastName = principal.details.lastName;
|
|
18
|
+
this.jwt = principal.details.jwt || "";
|
|
19
|
+
this.id = principal.details.id || "";
|
|
20
|
+
this.churchId = principal.details.churchId || "";
|
|
21
|
+
this.permissions = principal.details.permissions || [];
|
|
22
|
+
this.apiName = principal.details.apiName || "";
|
|
23
|
+
this.email = principal.details.email || "";
|
|
24
|
+
this.personId = principal.details.personId || "";
|
|
25
|
+
this.firstName = principal.details.firstName || "";
|
|
26
|
+
this.lastName = principal.details.lastName || "";
|
|
27
27
|
this.membershipStatus = principal.details.membershipStatus;
|
|
28
28
|
this.groupIds = principal.details.groupIds;
|
|
29
29
|
}
|
|
@@ -15,7 +15,7 @@ export class CustomAuthProvider implements interfaces.AuthProvider {
|
|
|
15
15
|
if (!token) return null;
|
|
16
16
|
const decoded = jwt.verify(token, EnvironmentBase.jwtSecret);
|
|
17
17
|
|
|
18
|
-
const result = decoded ? new Principal(decoded) : null;
|
|
18
|
+
const result = decoded ? new Principal(typeof decoded === 'object' && decoded !== null ? decoded as Record<string, unknown> : {}) : null;
|
|
19
19
|
if (result) result.details.jwt = token;
|
|
20
20
|
return result;
|
|
21
21
|
}
|
package/src/auth/Principal.ts
CHANGED
|
@@ -1,9 +1,24 @@
|
|
|
1
1
|
import { interfaces } from "inversify-express-utils";
|
|
2
2
|
|
|
3
|
+
export interface PrincipalDetails {
|
|
4
|
+
jwt?: string;
|
|
5
|
+
id?: string;
|
|
6
|
+
churchId?: string;
|
|
7
|
+
permissions?: string[];
|
|
8
|
+
apiName?: string;
|
|
9
|
+
email?: string;
|
|
10
|
+
personId?: string;
|
|
11
|
+
firstName?: string;
|
|
12
|
+
lastName?: string;
|
|
13
|
+
membershipStatus?: string;
|
|
14
|
+
groupIds?: string[];
|
|
15
|
+
[key: string]: unknown;
|
|
16
|
+
}
|
|
17
|
+
|
|
3
18
|
export class Principal implements interfaces.Principal {
|
|
4
|
-
public details:
|
|
19
|
+
public details: PrincipalDetails;
|
|
5
20
|
|
|
6
|
-
public constructor(details:
|
|
21
|
+
public constructor(details: PrincipalDetails) {
|
|
7
22
|
this.details = details;
|
|
8
23
|
}
|
|
9
24
|
|
|
@@ -11,7 +26,7 @@ export class Principal implements interfaces.Principal {
|
|
|
11
26
|
return Promise.resolve(true);
|
|
12
27
|
}
|
|
13
28
|
|
|
14
|
-
public isResourceOwner(resourceId:
|
|
29
|
+
public isResourceOwner(resourceId: string | number): Promise<boolean> {
|
|
15
30
|
return Promise.resolve(resourceId === 1111);
|
|
16
31
|
}
|
|
17
32
|
|
|
@@ -22,7 +22,7 @@ export class CustomBaseController extends BaseHttpController {
|
|
|
22
22
|
|
|
23
23
|
public authUser(): AuthenticatedUser {
|
|
24
24
|
if (this.httpContext.user === null) return new AuthenticatedUser(new Principal({}));
|
|
25
|
-
else return new AuthenticatedUser(this.httpContext.user);
|
|
25
|
+
else return new AuthenticatedUser(this.httpContext.user as Principal);
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
public include(req: express.Request, item: string) {
|
|
@@ -35,37 +35,37 @@ export class CustomBaseController extends BaseHttpController {
|
|
|
35
35
|
return result;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
public async actionWrapper(_req: express.Request, _res: express.Response, fetchFunction: (_au: AuthenticatedUser) =>
|
|
38
|
+
public async actionWrapper(_req: express.Request, _res: express.Response, fetchFunction: (_au: AuthenticatedUser) => unknown): Promise<unknown> {
|
|
39
39
|
try {
|
|
40
40
|
const result = await fetchFunction(this.authUser());
|
|
41
41
|
await this.logger.flush();
|
|
42
42
|
return result;
|
|
43
|
-
} catch (e:
|
|
43
|
+
} catch (e: unknown) {
|
|
44
44
|
try {
|
|
45
|
-
this.logger.error(e);
|
|
45
|
+
this.logger.error(e as Error);
|
|
46
46
|
await this.logger.flush();
|
|
47
47
|
} catch (e) {
|
|
48
48
|
console.log(e);
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
return this.internalServerError(e);
|
|
51
|
+
return this.internalServerError(e as Error);
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
|
|
55
|
-
public async actionWrapperAnon(_req: express.Request, _res: express.Response, fetchFunction: () =>
|
|
55
|
+
public async actionWrapperAnon(_req: express.Request, _res: express.Response, fetchFunction: () => unknown): Promise<unknown> {
|
|
56
56
|
try {
|
|
57
57
|
const result = await fetchFunction();
|
|
58
58
|
await this.logger.flush();
|
|
59
59
|
return result;
|
|
60
|
-
} catch (e:
|
|
60
|
+
} catch (e: unknown) {
|
|
61
61
|
try {
|
|
62
|
-
this.logger.error(e);
|
|
62
|
+
this.logger.error(e as Error);
|
|
63
63
|
await this.logger.flush();
|
|
64
64
|
} catch (e) {
|
|
65
65
|
console.log(e);
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
return this.internalServerError(e);
|
|
68
|
+
return this.internalServerError(e as Error);
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
|
|
@@ -8,7 +8,7 @@ import { ErrorLog } from "../models"
|
|
|
8
8
|
export class ErrorController extends CustomBaseController {
|
|
9
9
|
|
|
10
10
|
@httpPost("/")
|
|
11
|
-
public async save(req: express.Request<{}, {}, ErrorLog[]>, _res: express.Response): Promise<
|
|
11
|
+
public async save(req: express.Request<{}, {}, ErrorLog[]>, _res: express.Response): Promise<ErrorLog[]> {
|
|
12
12
|
// try {
|
|
13
13
|
/*
|
|
14
14
|
try {
|
package/src/helpers/AwsHelper.ts
CHANGED
|
@@ -30,7 +30,7 @@ export class AwsHelper {
|
|
|
30
30
|
return this._client;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
static async S3PresignedUrl(key: string): Promise<
|
|
33
|
+
static async S3PresignedUrl(key: string): Promise<{url: string, fields: Record<string, string>, key: string}> {
|
|
34
34
|
if (key.startsWith("/")) key = key.substring(1);
|
|
35
35
|
const { url, fields } = await createPresignedPost(this.getClient(), {
|
|
36
36
|
Bucket: EnvironmentBase.s3Bucket,
|
|
@@ -95,7 +95,7 @@ export class AwsHelper {
|
|
|
95
95
|
|
|
96
96
|
do {
|
|
97
97
|
const { Contents, NextContinuationToken } = await this.S3ListManual(s3, bucket, path, continuationToken);
|
|
98
|
-
result.push(...(Contents?.map((item
|
|
98
|
+
result.push(...(Contents?.map((item) => item.Key).filter((key): key is string => key !== undefined) || []));
|
|
99
99
|
continuationToken = NextContinuationToken;
|
|
100
100
|
} while (continuationToken);
|
|
101
101
|
|
package/src/helpers/DB.ts
CHANGED
|
@@ -14,28 +14,28 @@ export class DB {
|
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
// wraps in promise
|
|
17
|
-
static async getQuery(connection: PoolConnection, sql: string, params:
|
|
18
|
-
const promise: Promise<
|
|
19
|
-
connection.query(sql, params, async (ex: QueryError | null, rows:
|
|
17
|
+
static async getQuery(connection: PoolConnection, sql: string, params: unknown[]) {
|
|
18
|
+
const promise: Promise<unknown> = new Promise((resolve, reject) => {
|
|
19
|
+
connection.query(sql, params, async (ex: QueryError | null, rows: unknown) => {
|
|
20
20
|
if (ex) { LoggingHelper.getCurrent().error(ex); reject(ex); }
|
|
21
21
|
else { resolve(rows); }
|
|
22
22
|
});
|
|
23
23
|
});
|
|
24
|
-
const query:
|
|
24
|
+
const query: unknown = await promise;
|
|
25
25
|
return query;
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
public static async query(sql: string, params:
|
|
29
|
-
let result:
|
|
28
|
+
public static async query(sql: string, params: unknown[]) {
|
|
29
|
+
let result: unknown = null;
|
|
30
30
|
const connection = await this.getConnection();
|
|
31
31
|
try { result = await this.getQuery(connection, sql, params); }
|
|
32
|
-
catch (ex:
|
|
32
|
+
catch (ex: unknown) { LoggingHelper.getCurrent().error(ex as Error); }
|
|
33
33
|
finally { connection.release(); }
|
|
34
34
|
return result;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
public static async queryOne(sql: string, params:
|
|
38
|
-
const result
|
|
39
|
-
return result
|
|
37
|
+
public static async queryOne(sql: string, params: unknown[]) {
|
|
38
|
+
const result = await this.query(sql, params) as unknown[];
|
|
39
|
+
return result?.length > 0 ? result[0] : null;
|
|
40
40
|
}
|
|
41
41
|
}
|
|
@@ -54,7 +54,7 @@ export class EmailHelper {
|
|
|
54
54
|
await sesClient.send(sendCommand);
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
public static async sendEmail({ from, to, subject, body }: IEmailPayload): Promise<
|
|
57
|
+
public static async sendEmail({ from, to, subject, body }: IEmailPayload): Promise<void> {
|
|
58
58
|
try {
|
|
59
59
|
// Use a safer fallback - streamline transport (for testing/dev) or require proper SMTP config
|
|
60
60
|
let transporter: nodemailer.Transporter = nodemailer.createTransport({
|
|
@@ -17,16 +17,16 @@ export class EnvironmentBase {
|
|
|
17
17
|
static smtpUser: string;
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
static async populateBase(jsonData:
|
|
21
|
-
EnvironmentBase.appName = jsonData.appName;
|
|
22
|
-
EnvironmentBase.appEnv = jsonData.appEnv;
|
|
20
|
+
static async populateBase(jsonData: Record<string, unknown>, appName:string, appEnv: string) {
|
|
21
|
+
EnvironmentBase.appName = jsonData.appName as string;
|
|
22
|
+
EnvironmentBase.appEnv = jsonData.appEnv as string;
|
|
23
23
|
EnvironmentBase.connectionString = process.env.CONNECTION_STRING || await AwsHelper.readParameter(`/${appEnv}/${appName}/connectionString`);
|
|
24
|
-
EnvironmentBase.contentRoot = jsonData.contentRoot;
|
|
24
|
+
EnvironmentBase.contentRoot = jsonData.contentRoot as string;
|
|
25
25
|
EnvironmentBase.encryptionKey = process.env.ENCRYPTION_KEY || await AwsHelper.readParameter(`/${appEnv}/encryptionKey`);
|
|
26
|
-
EnvironmentBase.fileStore = jsonData.fileStore;
|
|
26
|
+
EnvironmentBase.fileStore = jsonData.fileStore as string;
|
|
27
27
|
EnvironmentBase.jwtSecret = process.env.JWT_SECRET || await AwsHelper.readParameter(`/${appEnv}/jwtSecret`);
|
|
28
|
-
EnvironmentBase.mailSystem = jsonData.mailSystem;
|
|
29
|
-
EnvironmentBase.s3Bucket = jsonData.s3Bucket;
|
|
28
|
+
EnvironmentBase.mailSystem = jsonData.mailSystem as string;
|
|
29
|
+
EnvironmentBase.s3Bucket = jsonData.s3Bucket as string;
|
|
30
30
|
EnvironmentBase.smtpHost = process.env.SMTP_HOST;
|
|
31
31
|
EnvironmentBase.smtpPass = process.env.SMTP_PASS;
|
|
32
32
|
EnvironmentBase.smtpSecure = process.env.SMTP_SECURE === "true";
|
package/src/helpers/OmitEmpty.ts
CHANGED
|
@@ -5,21 +5,32 @@
|
|
|
5
5
|
|
|
6
6
|
import typeOf from "kind-of";
|
|
7
7
|
|
|
8
|
+
interface OmitEmptyOptions {
|
|
9
|
+
omitZero?: boolean;
|
|
10
|
+
omitEmptyArray?: boolean;
|
|
11
|
+
excludedProperties?: string[];
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
interface RuntimeOptions {
|
|
15
|
+
omitZero: boolean;
|
|
16
|
+
omitEmptyArray: boolean;
|
|
17
|
+
excludedProperties: string[];
|
|
18
|
+
}
|
|
8
19
|
|
|
9
20
|
export class OmitEmpty {
|
|
10
|
-
public static omitEmpty(obj:
|
|
21
|
+
public static omitEmpty(obj: unknown, options: OmitEmptyOptions = {}): unknown {
|
|
11
22
|
const runtimeOpts = OmitEmpty._buildRuntimeOpts(options);
|
|
12
23
|
|
|
13
|
-
const omit = (value:
|
|
24
|
+
const omit = (value: unknown, opts: RuntimeOptions): unknown => {
|
|
14
25
|
if (Array.isArray(value)) {
|
|
15
26
|
value = value.map(v => omit(v, opts)).filter(v => !OmitEmpty.isEmpty(v, opts));
|
|
16
27
|
}
|
|
17
28
|
|
|
18
|
-
if (typeOf(value) === "object") {
|
|
19
|
-
const result:
|
|
20
|
-
for (const key of Object.keys(value)) {
|
|
29
|
+
if (typeOf(value) === "object" && value !== null) {
|
|
30
|
+
const result: Record<string, unknown> = {};
|
|
31
|
+
for (const key of Object.keys(value as Record<string, unknown>)) {
|
|
21
32
|
if (!opts.excludedProperties.includes(key)) {
|
|
22
|
-
const val
|
|
33
|
+
const val = omit((value as Record<string, unknown>)[key], opts);
|
|
23
34
|
if (val !== void 0) {
|
|
24
35
|
result[key] = val;
|
|
25
36
|
}
|
|
@@ -41,7 +52,7 @@ export class OmitEmpty {
|
|
|
41
52
|
}
|
|
42
53
|
|
|
43
54
|
|
|
44
|
-
private static _buildRuntimeOpts(options:
|
|
55
|
+
private static _buildRuntimeOpts(options: OmitEmptyOptions = {}): RuntimeOptions {
|
|
45
56
|
return {
|
|
46
57
|
omitZero: options.omitZero || false,
|
|
47
58
|
omitEmptyArray: options.omitEmptyArray || false,
|
|
@@ -49,7 +60,7 @@ export class OmitEmpty {
|
|
|
49
60
|
};
|
|
50
61
|
};
|
|
51
62
|
|
|
52
|
-
private static isEmpty(value:
|
|
63
|
+
private static isEmpty(value: unknown, runtimeOpts: RuntimeOptions): boolean {
|
|
53
64
|
switch (typeOf(value)) {
|
|
54
65
|
case "null":
|
|
55
66
|
case "undefined":
|
|
@@ -61,18 +72,18 @@ export class OmitEmpty {
|
|
|
61
72
|
return false;
|
|
62
73
|
case "string":
|
|
63
74
|
case "arguments":
|
|
64
|
-
return value.length === 0;
|
|
75
|
+
return (value as string).length === 0;
|
|
65
76
|
case "file":
|
|
66
77
|
case "map":
|
|
67
78
|
case "set":
|
|
68
|
-
return value.size === 0;
|
|
79
|
+
return (value as { size: number }).size === 0;
|
|
69
80
|
case "number":
|
|
70
81
|
return runtimeOpts.omitZero ? value === 0 : false;
|
|
71
82
|
case "error":
|
|
72
|
-
return value.message === "";
|
|
83
|
+
return (value as Error).message === "";
|
|
73
84
|
case "array":
|
|
74
85
|
if (runtimeOpts.omitEmptyArray) {
|
|
75
|
-
for (const ele of value) {
|
|
86
|
+
for (const ele of (value as unknown[])) {
|
|
76
87
|
if (!OmitEmpty.isEmpty(ele, runtimeOpts)) {
|
|
77
88
|
return false;
|
|
78
89
|
}
|
|
@@ -82,8 +93,8 @@ export class OmitEmpty {
|
|
|
82
93
|
return false;
|
|
83
94
|
}
|
|
84
95
|
case "object":
|
|
85
|
-
for (const key of Object.keys(value)) {
|
|
86
|
-
if (!OmitEmpty.isEmpty(value[key], runtimeOpts)) {
|
|
96
|
+
for (const key of Object.keys(value as Record<string, unknown>)) {
|
|
97
|
+
if (!OmitEmpty.isEmpty((value as Record<string, unknown>)[key], runtimeOpts)) {
|
|
87
98
|
return false;
|
|
88
99
|
}
|
|
89
100
|
}
|
package/src/helpers/Pool.ts
CHANGED
|
@@ -21,7 +21,7 @@ export class Pool {
|
|
|
21
21
|
waitForConnections: true,
|
|
22
22
|
queueLimit: 9999,
|
|
23
23
|
charset: 'utf8mb4',
|
|
24
|
-
typeCast: function castField(field:
|
|
24
|
+
typeCast: function castField(field: mysql.Field, useDefaultTypeCasting: () => unknown) {
|
|
25
25
|
// convert bit(1) to bool
|
|
26
26
|
if ((field.type === "BIT") && (field.length === 1)) {
|
|
27
27
|
try {
|
|
@@ -29,7 +29,7 @@ export class Pool {
|
|
|
29
29
|
return (bytes[0] === 1);
|
|
30
30
|
} catch { return false; }
|
|
31
31
|
}
|
|
32
|
-
return
|
|
32
|
+
return useDefaultTypeCasting();
|
|
33
33
|
}
|
|
34
34
|
});
|
|
35
35
|
}
|
package/src/helpers/index.ts
CHANGED
package/tsconfig.json
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
"compilerOptions": {
|
|
3
3
|
"module": "commonjs",
|
|
4
4
|
"esModuleInterop": true,
|
|
5
|
+
"allowSyntheticDefaultImports": true,
|
|
5
6
|
"lib": ["ES2020", "DOM"],
|
|
6
7
|
"typeRoots": ["node_modules/@types"],
|
|
7
8
|
"experimentalDecorators": true,
|
|
@@ -13,12 +14,12 @@
|
|
|
13
14
|
"outDir": "dist",
|
|
14
15
|
"baseUrl": ".",
|
|
15
16
|
"strict": false,
|
|
16
|
-
"allowSyntheticDefaultImports": true,
|
|
17
17
|
"declaration": true,
|
|
18
18
|
"declarationMap": true,
|
|
19
19
|
"skipLibCheck": true,
|
|
20
20
|
"forceConsistentCasingInFileNames": true,
|
|
21
|
-
"resolveJsonModule": true
|
|
21
|
+
"resolveJsonModule": true,
|
|
22
|
+
"isolatedModules": true
|
|
22
23
|
},
|
|
23
24
|
"include": ["src/**/*"],
|
|
24
25
|
"exclude": ["node_modules", "dist"]
|