@my-devkit/firebase 1.0.193 → 1.0.195
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/.eslintrc.js +2 -4
- package/dist/app-factory.js +2 -2
- package/dist/app-factory.js.map +1 -1
- package/dist/context.js +18 -18
- package/dist/context.js.map +1 -1
- package/dist/decorators/controller/body.js.map +1 -1
- package/dist/decorators/controller/body.spec.js +1 -1
- package/dist/decorators/controller/body.spec.js.map +1 -1
- package/dist/decorators/controller/controller.spec.js.map +1 -1
- package/dist/decorators/controller/get.js +4 -1
- package/dist/decorators/controller/get.js.map +1 -1
- package/dist/decorators/controller/get.spec.js.map +1 -1
- package/dist/decorators/controller/param.js.map +1 -1
- package/dist/decorators/controller/param.spec.js +1 -1
- package/dist/decorators/controller/param.spec.js.map +1 -1
- package/dist/decorators/controller/post.js +4 -1
- package/dist/decorators/controller/post.js.map +1 -1
- package/dist/decorators/controller/post.spec.js.map +1 -1
- package/dist/decorators/controller/query.js.map +1 -1
- package/dist/decorators/controller/query.spec.js +1 -1
- package/dist/decorators/controller/query.spec.js.map +1 -1
- package/dist/decorators/handler/command-handler.js.map +1 -1
- package/dist/decorators/handler/command-handler.spec.js.map +1 -1
- package/dist/decorators/handler/event-handler.js.map +1 -1
- package/dist/decorators/handler/event-handler.spec.js.map +1 -1
- package/dist/firestore-client.js +47 -32
- package/dist/firestore-client.js.map +1 -1
- package/dist/interfaces/type.d.ts +1 -1
- package/dist/reflect.js +0 -1
- package/dist/reflect.js.map +1 -1
- package/dist/sanity-check/controller.js.map +1 -1
- package/dist/sanity-check/module.js +1 -3
- package/dist/sanity-check/module.js.map +1 -1
- package/dist/server/middlewares/authentication-middleware.js.map +1 -1
- package/dist/server/server.js.map +1 -1
- package/dist/zip-helper.js +1 -1
- package/dist/zip-helper.js.map +1 -1
- package/package.json +4 -4
- package/src/app-factory.ts +65 -48
- package/src/context.ts +2 -2
- package/src/decorators/controller/body.spec.ts +3 -3
- package/src/decorators/controller/body.ts +1 -1
- package/src/decorators/controller/controller.spec.ts +1 -3
- package/src/decorators/controller/get.spec.ts +0 -1
- package/src/decorators/controller/get.ts +5 -2
- package/src/decorators/controller/param.spec.ts +3 -2
- package/src/decorators/controller/param.ts +1 -1
- package/src/decorators/controller/post.spec.ts +0 -2
- package/src/decorators/controller/post.ts +5 -2
- package/src/decorators/controller/query.spec.ts +3 -2
- package/src/decorators/controller/query.ts +1 -1
- package/src/decorators/handler/command-handler.spec.ts +2 -11
- package/src/decorators/handler/command-handler.ts +1 -1
- package/src/decorators/handler/event-handler.spec.ts +2 -11
- package/src/decorators/handler/event-handler.ts +1 -1
- package/src/firestore-client.ts +67 -39
- package/src/interfaces/app-config.ts +0 -1
- package/src/interfaces/newable.ts +1 -1
- package/src/interfaces/type.ts +2 -2
- package/src/reflect.ts +7 -7
- package/src/sanity-check/controller.ts +0 -1
- package/src/sanity-check/module.ts +2 -6
- package/src/server/middlewares/authentication-middleware.ts +0 -1
- package/src/server/server.ts +0 -1
- package/src/zip-helper.ts +1 -1
- package/tsconfig.json +1 -4
package/dist/reflect.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reflect.js","sourceRoot":"","sources":["../src/reflect.ts"],"names":[],"mappings":";;AA+JA,0BAEC;AAjKD,4BAA0B;AAE1B,0CAAuD;AAOvD,
|
|
1
|
+
{"version":3,"file":"reflect.js","sourceRoot":"","sources":["../src/reflect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/sanity-check/controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,0CAAuD;AACvD,8CAAsD;AAG/C,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;
|
|
1
|
+
{"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/sanity-check/controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,0CAAuD;AACvD,8CAAsD;AAG/C,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAEjB,UAAU;;YACnB,OAAO,wBAAwB,CAAC;QACpC,CAAC;KAAA;IAGY,SAAS;;YAClB,MAAM,GAAG,GAAG,IAAI,2BAAoB,EAAE,CAAC;YACvC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;YAClB,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;CACJ,CAAA;AAZY,sDAAqB;AAEjB;IADZ,IAAA,iBAAI,EAAC,SAAS,CAAC;;;;uDAGf;AAGY;IADZ,IAAA,gBAAG,EAAC,SAAS,CAAC;;;;sDAKd;gCAXQ,qBAAqB;IADjC,IAAA,uBAAU,EAAC,cAAc,CAAC;GACd,qBAAqB,CAYjC"}
|
|
@@ -14,9 +14,7 @@ let SanityCheckModule = class SanityCheckModule {
|
|
|
14
14
|
exports.SanityCheckModule = SanityCheckModule;
|
|
15
15
|
exports.SanityCheckModule = SanityCheckModule = __decorate([
|
|
16
16
|
(0, decorators_1.Module)({
|
|
17
|
-
controllers: [
|
|
18
|
-
controller_1.SanityCheckController,
|
|
19
|
-
],
|
|
17
|
+
controllers: [controller_1.SanityCheckController]
|
|
20
18
|
})
|
|
21
19
|
], SanityCheckModule);
|
|
22
20
|
//# sourceMappingURL=module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/sanity-check/module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8CAAuC;AAEvC,6CAAqD;
|
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/sanity-check/module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8CAAuC;AAEvC,6CAAqD;AAK9C,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;CAAG,CAAA;AAApB,8CAAiB;4BAAjB,iBAAiB;IAH7B,IAAA,mBAAM,EAAC;QACJ,WAAW,EAAE,CAAC,kCAAqB,CAAC;KACvC,CAAC;GACW,iBAAiB,CAAG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authentication-middleware.js","sourceRoot":"","sources":["../../../src/server/middlewares/authentication-middleware.ts"],"names":[],"mappings":";;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"authentication-middleware.js","sourceRoot":"","sources":["../../../src/server/middlewares/authentication-middleware.ts"],"names":[],"mappings":";;;;;;;;;;;AAMA,4DAuCC;AA7CD,0CAA4D;AAG5D,2CAAwC;AAGxC,SAAgB,wBAAwB,CAAC,IAAU,EAAE,WAAqB;IACtE,OAAO,CAAO,OAAuB,EAAE,SAA0B,EAAE,IAAyB,EAAiB,EAAE;QAC3G,MAAM,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5G,aAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,IAAI,wBAAwB,CAAC,CAAC;QAEvE,IAAI,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,aAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,2CAA2C,CAAC,CAAC;YACxE,iBAAO,CAAC,IAAI,GAAG,IAAI,CAAC;YACpB,IAAI,EAAE,CAAC;QACX,CAAC;aAAM,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACtC,IAAI,EAAE,CAAC;QACX,CAAC;aAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,MAAM,IAAI,wBAAiB,CAAC,+BAA+B,CAAC,CAAC;QACjE,CAAC;aAAM,IAAI,mBAAmB,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClD,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACxD,IAAI,CAAC;gBACD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAC/D,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC;gBAClC,iBAAO,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC1C,IAAI,EAAE,CAAC;YACX,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,MAAM,IAAI,wBAAiB,CAAC,+BAA+B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACvG,CAAC;QACL,CAAC;aAAM,IAAI,mBAAmB,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACjD,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC;gBACD,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAChF,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;gBACxC,CAAC;gBACD,iBAAO,CAAC,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAC1C,IAAI,EAAE,CAAC;YACX,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,MAAM,IAAI,wBAAiB,CAAC,+BAA+B,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACvG,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,wBAAiB,CAAC,gCAAgC,CAAC,CAAC;QAClE,CAAC;IACL,CAAC,CAAA,CAAC;AACN,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AACxB,sDAA8B;AAE9B,yDAAgD;AAGhD,gEAAuD;AACvD,2DAA6C;AAE7C,SAAS,WAAW,CAAC,OAA8B;IAC/C,OAAO,CAAO,OAAuB,EAAE,QAAyB,EAAE,IAAyB,EAAiB,EAAE;QAC1G,IAAI,CAAC;YACD,MAAM,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,IAAI,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;IACL,CAAC,CAAA,CAAC;AACN,CAAC;AAED,MAAa,MAAM;IAIf,YAAY,OAAuB;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAA,iBAAO,GAAE,CAAC;QACtB,IAAI,CAAC,sBAAsB,CAAC,IAAA,cAAI,EAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACpD,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,uBAAuB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9E,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,wBAAwB,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;IACjH,CAAC;IAEM,sBAAsB,CAAC,OAA8B;QACxD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IACxC,CAAC;IAEM,oBAAoB,CAAC,OAA4B;QACpD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAO,KAAU,EAAE,OAAuB,EAAE,QAAyB,EAAE,IAAyB,EAAiB,EAAE;YAC7H,IAAI,CAAC;gBACD,MAAM,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAClD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,IAAI,CAAC,KAAK,CAAC,CAAC;YAChB,CAAC;QACL,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;IAEM,cAAc,CAAC,IAAY,EAAE,MAAsB;QACtD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAChC,CAAC;IAED,IAAW,GAAG;QACV,IAAI,CAAC,sBAAsB,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAC,CAAC;QAC9D,IAAI,CAAC,oBAAoB,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC,CAAC;QAEzD,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;;AAnCL,wBAoCC;AAlCiB,kBAAW,GAAG,+BAAW,CAAC;AAoC5C,WAAiB,MAAM;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server/server.ts"],"names":[],"mappings":"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"}
|
package/dist/zip-helper.js
CHANGED
|
@@ -34,7 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.ZipHelper = void 0;
|
|
37
|
-
const zlib = __importStar(require("zlib"));
|
|
37
|
+
const zlib = __importStar(require("node:zlib"));
|
|
38
38
|
class ZipHelper {
|
|
39
39
|
static zip(content) {
|
|
40
40
|
const buffer = Buffer.from(content, 'utf8');
|
package/dist/zip-helper.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zip-helper.js","sourceRoot":"","sources":["../src/zip-helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"zip-helper.js","sourceRoot":"","sources":["../src/zip-helper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAElC,MAAa,SAAS;IACX,MAAM,CAAC,GAAG,CAAC,OAAe;QAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACvD,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,OAAe;QAC/B,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;CACJ;AAVD,8BAUC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@my-devkit/firebase",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.195",
|
|
4
4
|
"description": "My Devkit: firebase tools for CQRS implementation",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -23,13 +23,13 @@
|
|
|
23
23
|
"reflect-metadata": "0.2.2"
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
26
|
-
"@my-devkit/core": "1.0.
|
|
26
|
+
"@my-devkit/core": "1.0.123",
|
|
27
27
|
"firebase-admin": "13.5.0",
|
|
28
28
|
"firebase-functions": "6.6.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@my-devkit/cli": "2.1.
|
|
32
|
-
"@my-devkit/core": "1.0.
|
|
31
|
+
"@my-devkit/cli": "2.1.8",
|
|
32
|
+
"@my-devkit/core": "1.0.123",
|
|
33
33
|
"@types/cors": "2.8.19",
|
|
34
34
|
"@types/express": "4.17.21",
|
|
35
35
|
"@types/mocha": "10.0.10",
|
package/src/app-factory.ts
CHANGED
|
@@ -71,24 +71,29 @@ export class AppFactory {
|
|
|
71
71
|
|
|
72
72
|
this.registerHandlers(bus, module);
|
|
73
73
|
|
|
74
|
-
return onRequest(
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
74
|
+
return onRequest(
|
|
75
|
+
{
|
|
76
|
+
memory: this.options.memory,
|
|
77
|
+
timeoutSeconds: this.options.timeoutSeconds,
|
|
78
|
+
region: this.options.region
|
|
79
|
+
},
|
|
80
|
+
server.app
|
|
81
|
+
);
|
|
79
82
|
}
|
|
80
83
|
|
|
81
84
|
public static createOnCallGenkit(name: string, flow: any): CallableFunction {
|
|
82
|
-
if (!this.isActive(name))
|
|
83
|
-
return null;
|
|
85
|
+
if (!this.isActive(name)) return null;
|
|
84
86
|
|
|
85
87
|
Logger.info(`Cold start Genkit callable function ${name}`);
|
|
86
88
|
|
|
87
|
-
return onCallGenkit(
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
89
|
+
return onCallGenkit(
|
|
90
|
+
{
|
|
91
|
+
secrets: [this.apiKey],
|
|
92
|
+
region: this.options.region,
|
|
93
|
+
cors: this.options.cors
|
|
94
|
+
},
|
|
95
|
+
flow
|
|
96
|
+
);
|
|
92
97
|
}
|
|
93
98
|
|
|
94
99
|
public static createScheduledJob<C extends Command>(
|
|
@@ -98,8 +103,7 @@ export class AppFactory {
|
|
|
98
103
|
timeZone: string,
|
|
99
104
|
commandType: new () => C
|
|
100
105
|
) {
|
|
101
|
-
if (!this.isActive(name))
|
|
102
|
-
return null;
|
|
106
|
+
if (!this.isActive(name)) return null;
|
|
103
107
|
|
|
104
108
|
Logger.info(`Cold start scheduled job ${name}`);
|
|
105
109
|
|
|
@@ -109,18 +113,20 @@ export class AppFactory {
|
|
|
109
113
|
|
|
110
114
|
this.registerHandlers(bus, module);
|
|
111
115
|
|
|
112
|
-
return onSchedule(
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
116
|
+
return onSchedule(
|
|
117
|
+
{
|
|
118
|
+
schedule,
|
|
119
|
+
timeZone,
|
|
120
|
+
memory: this.options.memory,
|
|
121
|
+
timeoutSeconds: this.options.timeoutSeconds,
|
|
122
|
+
region: this.options.region
|
|
123
|
+
},
|
|
124
|
+
this.getFunctionCommandHandler(bus, commandType)
|
|
125
|
+
);
|
|
119
126
|
}
|
|
120
127
|
|
|
121
128
|
public static createEventListener(name: string, module: Type, mode: ExecutionMode = ExecutionMode.Asynchronous) {
|
|
122
|
-
if (!this.isActive(name))
|
|
123
|
-
return null;
|
|
129
|
+
if (!this.isActive(name)) return null;
|
|
124
130
|
|
|
125
131
|
Logger.info(`Cold start Event Listener ${mode}`);
|
|
126
132
|
|
|
@@ -130,12 +136,15 @@ export class AppFactory {
|
|
|
130
136
|
|
|
131
137
|
this.registerHandlers(bus, module);
|
|
132
138
|
|
|
133
|
-
return onDocumentCreated(
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
+
return onDocumentCreated(
|
|
140
|
+
{
|
|
141
|
+
document: 'events/{eventId}',
|
|
142
|
+
memory: this.options.memory,
|
|
143
|
+
timeoutSeconds: this.options.timeoutSeconds,
|
|
144
|
+
region: this.options.region
|
|
145
|
+
},
|
|
146
|
+
this.getFunctionEventHandler(bus, ExecutionMode.Asynchronous)
|
|
147
|
+
);
|
|
139
148
|
}
|
|
140
149
|
|
|
141
150
|
private static registerEventPersisterHandler(bus: Bus): void {
|
|
@@ -162,17 +171,21 @@ export class AppFactory {
|
|
|
162
171
|
const config = reflect(controller).getControllerConfiguration();
|
|
163
172
|
|
|
164
173
|
for (const route of config.routes) {
|
|
165
|
-
router.registerRoute(
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
174
|
+
router.registerRoute(
|
|
175
|
+
route.requestMethod,
|
|
176
|
+
`/${route.path}`,
|
|
177
|
+
async (request: Server.Request, response: Server.Response): Promise<void> => {
|
|
178
|
+
Logger.info(`${route.requestMethod}/${route.path}: executing handler method ${controller.name}.${route.methodName}`);
|
|
179
|
+
const controllerInstance = Context.resolve(controller);
|
|
180
|
+
const args = route.argumentInjectors.map(injector => injector(request));
|
|
181
|
+
const result = await controllerInstance[route.methodName](...args);
|
|
182
|
+
|
|
183
|
+
await Context.commit();
|
|
184
|
+
|
|
185
|
+
Context.destroy();
|
|
186
|
+
response.status(Server.statusCodes.OK).send({ result });
|
|
187
|
+
}
|
|
188
|
+
);
|
|
176
189
|
}
|
|
177
190
|
|
|
178
191
|
router.registerOnServer(`/${config.basePath}`, server);
|
|
@@ -185,7 +198,7 @@ export class AppFactory {
|
|
|
185
198
|
|
|
186
199
|
const instance = new handler();
|
|
187
200
|
for (const commandHandler of Array.from(handlerConfiguration.commandHandlers.values())) {
|
|
188
|
-
bus.onCommand(commandHandler.command,
|
|
201
|
+
bus.onCommand(commandHandler.command, command => {
|
|
189
202
|
const startDate = new Date();
|
|
190
203
|
Logger.info(`${handler.name}.${commandHandler.methodName} handle ${command._type}`);
|
|
191
204
|
const result = instance[commandHandler.methodName](command);
|
|
@@ -195,12 +208,16 @@ export class AppFactory {
|
|
|
195
208
|
}
|
|
196
209
|
|
|
197
210
|
for (const eventHandler of Array.from(handlerConfiguration.eventHandlers.values())) {
|
|
198
|
-
bus.onEvent(
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
211
|
+
bus.onEvent(
|
|
212
|
+
eventHandler.event,
|
|
213
|
+
async event => {
|
|
214
|
+
const startDate = new Date();
|
|
215
|
+
Logger.info(`${handler.name}.${eventHandler.methodName} handle ${event._type}`);
|
|
216
|
+
await instance[eventHandler.methodName](event);
|
|
217
|
+
Logger.infoWithElapesedTime(`${event._type} handled by ${handler.name}.${eventHandler.methodName}`, startDate);
|
|
218
|
+
},
|
|
219
|
+
eventHandler.executionMode
|
|
220
|
+
);
|
|
204
221
|
}
|
|
205
222
|
}
|
|
206
223
|
|
|
@@ -311,6 +328,6 @@ export namespace AppFactory {
|
|
|
311
328
|
timeoutSeconds: number;
|
|
312
329
|
memory: MemoryOption;
|
|
313
330
|
cors: string[] | boolean;
|
|
314
|
-
publicPaths?: string[]
|
|
331
|
+
publicPaths?: string[];
|
|
315
332
|
}
|
|
316
333
|
}
|
package/src/context.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Logger } from '@my-devkit/core';
|
|
2
|
-
import { AsyncHook, createHook, executionAsyncId } from 'async_hooks';
|
|
2
|
+
import { AsyncHook, createHook, executionAsyncId } from 'node:async_hooks';
|
|
3
3
|
|
|
4
4
|
import { Bus } from './bus';
|
|
5
5
|
import { Injector } from './injector';
|
|
@@ -29,7 +29,7 @@ export class Context {
|
|
|
29
29
|
this.asyncHook = createHook({
|
|
30
30
|
init: (asyncId: number, _type: string, triggerAsyncId: number) => {
|
|
31
31
|
if (this.store.has(triggerAsyncId)) {
|
|
32
|
-
this.store.set(asyncId, this.store.get(triggerAsyncId))
|
|
32
|
+
this.store.set(asyncId, this.store.get(triggerAsyncId));
|
|
33
33
|
}
|
|
34
34
|
},
|
|
35
35
|
destroy: (asyncId: number) => {
|
|
@@ -6,7 +6,6 @@ import { Body } from './body';
|
|
|
6
6
|
import { Controller } from './controller';
|
|
7
7
|
|
|
8
8
|
describe('Given a Body decorator', () => {
|
|
9
|
-
|
|
10
9
|
class Command {
|
|
11
10
|
@autoserializeAs(String)
|
|
12
11
|
public testString: string = null;
|
|
@@ -15,7 +14,6 @@ describe('Given a Body decorator', () => {
|
|
|
15
14
|
public testDate: Date = null;
|
|
16
15
|
}
|
|
17
16
|
|
|
18
|
-
|
|
19
17
|
@Controller('test')
|
|
20
18
|
class TestClass {
|
|
21
19
|
public testDate(@Body() param1: Date): string {
|
|
@@ -36,7 +34,9 @@ describe('Given a Body decorator', () => {
|
|
|
36
34
|
|
|
37
35
|
expect(config.routes[0].argumentInjectors.length).equal(1, 'Wrong argumentInjectors length');
|
|
38
36
|
expect(config.routes[0].argumentInjectors[0](request1)).to.be.a('Date');
|
|
39
|
-
expect(config.routes[0].argumentInjectors[0](request1).toISOString()).equals(
|
|
37
|
+
expect(config.routes[0].argumentInjectors[0](request1).toISOString()).equals(
|
|
38
|
+
new Date('2021-02-08T11:14:23.318Z').toISOString()
|
|
39
|
+
);
|
|
40
40
|
|
|
41
41
|
const request2 = <any>{ body: { testString: 'test' } };
|
|
42
42
|
|
|
@@ -13,5 +13,5 @@ export function Body(): ParameterDecorator {
|
|
|
13
13
|
const injector: RequestArgumentInjector = (req: Server.Request) => deserialize(req.body, methodArguments[parameterIndex]);
|
|
14
14
|
|
|
15
15
|
reflect(target, propertyKey).registerControllerRouteArgumentInjector(injector, parameterIndex);
|
|
16
|
-
}
|
|
16
|
+
};
|
|
17
17
|
}
|
|
@@ -4,10 +4,8 @@ import { reflect } from '../../reflect';
|
|
|
4
4
|
import { Controller } from './controller';
|
|
5
5
|
|
|
6
6
|
describe('Given a Controller decorator', () => {
|
|
7
|
-
|
|
8
7
|
@Controller('test')
|
|
9
|
-
class TestClass {
|
|
10
|
-
}
|
|
8
|
+
class TestClass {}
|
|
11
9
|
|
|
12
10
|
describe('When decorator is called', () => {
|
|
13
11
|
it('Then we should retrieve information via reflect', async () => {
|
|
@@ -3,6 +3,9 @@ import { RequestMethod } from '../../request-method.enum';
|
|
|
3
3
|
|
|
4
4
|
export function Get(path: string): MethodDecorator {
|
|
5
5
|
return (target, propertyKey) => {
|
|
6
|
-
reflect(target.constructor, propertyKey).registerControllerRoute({
|
|
7
|
-
|
|
6
|
+
reflect(target.constructor, propertyKey).registerControllerRoute({
|
|
7
|
+
path,
|
|
8
|
+
requestMethod: RequestMethod.GET
|
|
9
|
+
});
|
|
10
|
+
};
|
|
8
11
|
}
|
|
@@ -6,7 +6,6 @@ import { Get } from './get';
|
|
|
6
6
|
import { Param } from './param';
|
|
7
7
|
|
|
8
8
|
describe('Given a Param decorator', () => {
|
|
9
|
-
|
|
10
9
|
enum Gender {
|
|
11
10
|
Male = 0,
|
|
12
11
|
Female = 'Female'
|
|
@@ -40,7 +39,9 @@ describe('Given a Param decorator', () => {
|
|
|
40
39
|
expect(config.routes[1].argumentInjectors.length).equal(2, 'Wrong argumentInjectors length for getByGenderOlderThan');
|
|
41
40
|
|
|
42
41
|
expect(config.routes[1].argumentInjectors[0](request2)).to.be.a('Date');
|
|
43
|
-
expect(config.routes[1].argumentInjectors[0](request2).toISOString()).equals(
|
|
42
|
+
expect(config.routes[1].argumentInjectors[0](request2).toISOString()).equals(
|
|
43
|
+
new Date('2021-02-15T14:23:00.318Z').toISOString()
|
|
44
|
+
);
|
|
44
45
|
|
|
45
46
|
expect(config.routes[1].argumentInjectors[1](request2)).equals(Gender.Male);
|
|
46
47
|
|
|
@@ -8,7 +8,6 @@ import { Controller } from './controller';
|
|
|
8
8
|
import { Post } from './post';
|
|
9
9
|
|
|
10
10
|
describe('Given a Post decorator', () => {
|
|
11
|
-
|
|
12
11
|
class Command {
|
|
13
12
|
@autoserializeAs(String)
|
|
14
13
|
public testString: string = null;
|
|
@@ -17,7 +16,6 @@ describe('Given a Post decorator', () => {
|
|
|
17
16
|
public testDate: Date = null;
|
|
18
17
|
}
|
|
19
18
|
|
|
20
|
-
|
|
21
19
|
@Controller('test')
|
|
22
20
|
class TestClass {
|
|
23
21
|
public test = guid();
|
|
@@ -3,6 +3,9 @@ import { RequestMethod } from '../../request-method.enum';
|
|
|
3
3
|
|
|
4
4
|
export function Post(path: string): MethodDecorator {
|
|
5
5
|
return (target, propertyKey) => {
|
|
6
|
-
reflect(target.constructor, propertyKey).registerControllerRoute({
|
|
7
|
-
|
|
6
|
+
reflect(target.constructor, propertyKey).registerControllerRoute({
|
|
7
|
+
path,
|
|
8
|
+
requestMethod: RequestMethod.POST
|
|
9
|
+
});
|
|
10
|
+
};
|
|
8
11
|
}
|
|
@@ -6,7 +6,6 @@ import { Get } from './get';
|
|
|
6
6
|
import { Query } from './query';
|
|
7
7
|
|
|
8
8
|
describe('Given a Query decorator', () => {
|
|
9
|
-
|
|
10
9
|
enum Gender {
|
|
11
10
|
Male = 0,
|
|
12
11
|
Female = 'Female'
|
|
@@ -40,7 +39,9 @@ describe('Given a Query decorator', () => {
|
|
|
40
39
|
expect(config.routes[1].argumentInjectors.length).equal(2, 'Wrong argumentInjectors length for getByGenderOlderThan');
|
|
41
40
|
|
|
42
41
|
expect(config.routes[1].argumentInjectors[0](request2)).to.be.a('Date');
|
|
43
|
-
expect(config.routes[1].argumentInjectors[0](request2).toISOString()).equals(
|
|
42
|
+
expect(config.routes[1].argumentInjectors[0](request2).toISOString()).equals(
|
|
43
|
+
new Date('2021-02-15T14:23:00.318Z').toISOString()
|
|
44
|
+
);
|
|
44
45
|
|
|
45
46
|
expect(config.routes[1].argumentInjectors[1](request2)).equals(Gender.Male);
|
|
46
47
|
|
|
@@ -5,12 +5,9 @@ import { reflect } from '../../reflect';
|
|
|
5
5
|
import { CommandHandler } from './command-handler';
|
|
6
6
|
|
|
7
7
|
describe('Given a CommandHandler decorator', () => {
|
|
8
|
-
|
|
9
8
|
describe('When decorator is called', () => {
|
|
10
|
-
|
|
11
9
|
describe('And decorated method has no parameter', () => {
|
|
12
10
|
it('Then we should retrieve information via reflect', async () => {
|
|
13
|
-
|
|
14
11
|
try {
|
|
15
12
|
class TestClass {
|
|
16
13
|
@CommandHandler()
|
|
@@ -28,7 +25,6 @@ describe('Given a CommandHandler decorator', () => {
|
|
|
28
25
|
|
|
29
26
|
describe('And decorated method has more than 1 parameter', () => {
|
|
30
27
|
it('Then we should retrieve information via reflect', async () => {
|
|
31
|
-
|
|
32
28
|
try {
|
|
33
29
|
class TestClass {
|
|
34
30
|
@CommandHandler()
|
|
@@ -46,7 +42,6 @@ describe('Given a CommandHandler decorator', () => {
|
|
|
46
42
|
|
|
47
43
|
describe('And decorated method parameter is not a command', () => {
|
|
48
44
|
it('Then we should retrieve information via reflect', async () => {
|
|
49
|
-
|
|
50
45
|
try {
|
|
51
46
|
class FakeCommand {
|
|
52
47
|
test: string;
|
|
@@ -67,12 +62,9 @@ describe('Given a CommandHandler decorator', () => {
|
|
|
67
62
|
});
|
|
68
63
|
|
|
69
64
|
describe('And handler is correctly implemented', () => {
|
|
65
|
+
class CreateCommand extends Command {}
|
|
70
66
|
|
|
71
|
-
class
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
class UpdateCommand extends Command {
|
|
75
|
-
}
|
|
67
|
+
class UpdateCommand extends Command {}
|
|
76
68
|
|
|
77
69
|
class TestClass {
|
|
78
70
|
@CommandHandler()
|
|
@@ -95,7 +87,6 @@ describe('Given a CommandHandler decorator', () => {
|
|
|
95
87
|
|
|
96
88
|
expect(commandHandlers[1].methodName).equal('update');
|
|
97
89
|
expect(commandHandlers[1].command.constructor.name).equal('UpdateCommand');
|
|
98
|
-
|
|
99
90
|
});
|
|
100
91
|
});
|
|
101
92
|
});
|
|
@@ -6,12 +6,9 @@ import { reflect } from '../../reflect';
|
|
|
6
6
|
import { EventHandler } from './event-handler';
|
|
7
7
|
|
|
8
8
|
describe('Given a EventHandler decorator', () => {
|
|
9
|
-
|
|
10
9
|
describe('When decorator is called', () => {
|
|
11
|
-
|
|
12
10
|
describe('And decorated method has no parameter', () => {
|
|
13
11
|
it('Then we should retrieve information via reflect', async () => {
|
|
14
|
-
|
|
15
12
|
try {
|
|
16
13
|
class TestClass {
|
|
17
14
|
@EventHandler(ExecutionMode.Asynchronous)
|
|
@@ -29,7 +26,6 @@ describe('Given a EventHandler decorator', () => {
|
|
|
29
26
|
|
|
30
27
|
describe('And decorated method has more than 1 parameter', () => {
|
|
31
28
|
it('Then we should retrieve information via reflect', async () => {
|
|
32
|
-
|
|
33
29
|
try {
|
|
34
30
|
class TestClass {
|
|
35
31
|
@EventHandler(ExecutionMode.Asynchronous)
|
|
@@ -47,7 +43,6 @@ describe('Given a EventHandler decorator', () => {
|
|
|
47
43
|
|
|
48
44
|
describe('And decorated method parameter is not a command', () => {
|
|
49
45
|
it('Then we should retrieve information via reflect', async () => {
|
|
50
|
-
|
|
51
46
|
try {
|
|
52
47
|
class FakeEvent {
|
|
53
48
|
test: string;
|
|
@@ -68,12 +63,9 @@ describe('Given a EventHandler decorator', () => {
|
|
|
68
63
|
});
|
|
69
64
|
|
|
70
65
|
describe('And handler is correctly implemented', () => {
|
|
66
|
+
class CreatedEvent extends Event {}
|
|
71
67
|
|
|
72
|
-
class
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
class UpdatedEvent extends Event {
|
|
76
|
-
}
|
|
68
|
+
class UpdatedEvent extends Event {}
|
|
77
69
|
|
|
78
70
|
class TestClass {
|
|
79
71
|
@EventHandler(ExecutionMode.Asynchronous)
|
|
@@ -98,7 +90,6 @@ describe('Given a EventHandler decorator', () => {
|
|
|
98
90
|
expect(eventHandlers[1].methodName).equal('updated');
|
|
99
91
|
expect(eventHandlers[1].executionMode).equal(ExecutionMode.Synchronous);
|
|
100
92
|
expect(eventHandlers[1].event.constructor.name).equal('UpdatedEvent');
|
|
101
|
-
|
|
102
93
|
});
|
|
103
94
|
});
|
|
104
95
|
});
|