@my-devkit/firebase 1.0.107 → 1.0.111
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/aggregate.d.ts +13 -0
- package/dist/aggregate.js +85 -0
- package/dist/aggregate.js.map +1 -0
- package/dist/app-factory.d.ts +31 -0
- package/dist/app-factory.js +331 -0
- package/dist/app-factory.js.map +1 -0
- package/dist/bus.d.ts +17 -0
- package/dist/bus.js +128 -0
- package/dist/bus.js.map +1 -0
- package/dist/constants.d.ts +5 -0
- package/dist/constants.js +9 -0
- package/dist/constants.js.map +1 -0
- package/dist/context.d.ts +28 -0
- package/dist/context.js +102 -0
- package/dist/context.js.map +1 -0
- package/dist/decorators/controller/body.d.ts +1 -0
- package/dist/decorators/controller/body.js +17 -0
- package/dist/decorators/controller/body.js.map +1 -0
- package/dist/decorators/controller/body.spec.d.ts +1 -0
- package/dist/decorators/controller/body.spec.js +120 -0
- package/dist/decorators/controller/body.spec.js.map +1 -0
- package/dist/decorators/controller/controller.d.ts +1 -0
- package/dist/decorators/controller/controller.js +14 -0
- package/dist/decorators/controller/controller.js.map +1 -0
- package/dist/decorators/controller/controller.spec.d.ts +1 -0
- package/dist/decorators/controller/controller.spec.js +68 -0
- package/dist/decorators/controller/controller.spec.js.map +1 -0
- package/dist/decorators/controller/get.d.ts +1 -0
- package/dist/decorators/controller/get.js +12 -0
- package/dist/decorators/controller/get.js.map +1 -0
- package/dist/decorators/controller/get.spec.d.ts +1 -0
- package/dist/decorators/controller/get.spec.js +87 -0
- package/dist/decorators/controller/get.spec.js.map +1 -0
- package/dist/decorators/controller/index.d.ts +6 -0
- package/dist/decorators/controller/index.js +19 -0
- package/dist/decorators/controller/index.js.map +1 -0
- package/dist/decorators/controller/param.d.ts +1 -0
- package/dist/decorators/controller/param.js +21 -0
- package/dist/decorators/controller/param.js.map +1 -0
- package/dist/decorators/controller/param.spec.d.ts +1 -0
- package/dist/decorators/controller/param.spec.js +113 -0
- package/dist/decorators/controller/param.spec.js.map +1 -0
- package/dist/decorators/controller/post.d.ts +1 -0
- package/dist/decorators/controller/post.js +12 -0
- package/dist/decorators/controller/post.js.map +1 -0
- package/dist/decorators/controller/post.spec.d.ts +1 -0
- package/dist/decorators/controller/post.spec.js +133 -0
- package/dist/decorators/controller/post.spec.js.map +1 -0
- package/dist/decorators/controller/query.d.ts +1 -0
- package/dist/decorators/controller/query.js +21 -0
- package/dist/decorators/controller/query.js.map +1 -0
- package/dist/decorators/controller/query.spec.d.ts +1 -0
- package/dist/decorators/controller/query.spec.js +113 -0
- package/dist/decorators/controller/query.spec.js.map +1 -0
- package/dist/decorators/handler/command-handler.d.ts +1 -0
- package/dist/decorators/handler/command-handler.js +22 -0
- package/dist/decorators/handler/command-handler.js.map +1 -0
- package/dist/decorators/handler/command-handler.spec.d.ts +1 -0
- package/dist/decorators/handler/command-handler.spec.js +211 -0
- package/dist/decorators/handler/command-handler.spec.js.map +1 -0
- package/dist/decorators/handler/event-handler.d.ts +2 -0
- package/dist/decorators/handler/event-handler.js +22 -0
- package/dist/decorators/handler/event-handler.js.map +1 -0
- package/dist/decorators/handler/event-handler.spec.d.ts +1 -0
- package/dist/decorators/handler/event-handler.spec.js +214 -0
- package/dist/decorators/handler/event-handler.spec.js.map +1 -0
- package/dist/decorators/handler/index.d.ts +2 -0
- package/dist/decorators/handler/index.js +15 -0
- package/dist/decorators/handler/index.js.map +1 -0
- package/dist/decorators/index.d.ts +5 -0
- package/dist/decorators/index.js +18 -0
- package/dist/decorators/index.js.map +1 -0
- package/dist/decorators/injectable.d.ts +1 -0
- package/dist/decorators/injectable.js +11 -0
- package/dist/decorators/injectable.js.map +1 -0
- package/dist/decorators/module.d.ts +18 -0
- package/dist/decorators/module.js +14 -0
- package/dist/decorators/module.js.map +1 -0
- package/dist/decorators/transactional-client.d.ts +1 -0
- package/dist/decorators/transactional-client.js +11 -0
- package/dist/decorators/transactional-client.js.map +1 -0
- package/dist/execution-mode-enum.d.ts +4 -0
- package/dist/execution-mode-enum.js +9 -0
- package/dist/execution-mode-enum.js.map +1 -0
- package/dist/firestore-client.d.ts +29 -0
- package/dist/firestore-client.js +236 -0
- package/dist/firestore-client.js.map +1 -0
- package/dist/handler-helper.d.ts +9 -0
- package/dist/handler-helper.js +159 -0
- package/dist/handler-helper.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -0
- package/dist/injector.d.ts +7 -0
- package/dist/injector.js +42 -0
- package/dist/injector.js.map +1 -0
- package/dist/interfaces/app-config.d.ts +0 -0
- package/dist/interfaces/app-config.js +1 -0
- package/dist/interfaces/app-config.js.map +1 -0
- package/dist/interfaces/from-array.d.ts +1 -0
- package/dist/interfaces/from-array.js +3 -0
- package/dist/interfaces/from-array.js.map +1 -0
- package/dist/interfaces/index.d.ts +4 -0
- package/dist/interfaces/index.js +17 -0
- package/dist/interfaces/index.js.map +1 -0
- package/dist/interfaces/newable.d.ts +1 -0
- package/dist/interfaces/newable.js +3 -0
- package/dist/interfaces/newable.js.map +1 -0
- package/dist/interfaces/transactional-client.d.ts +3 -0
- package/dist/interfaces/transactional-client.js +3 -0
- package/dist/interfaces/transactional-client.js.map +1 -0
- package/dist/interfaces/type.d.ts +3 -0
- package/dist/interfaces/type.js +3 -0
- package/dist/interfaces/type.js.map +1 -0
- package/dist/reflect.d.ts +62 -0
- package/dist/reflect.js +113 -0
- package/dist/reflect.js.map +1 -0
- package/dist/request-method.enum.d.ts +4 -0
- package/dist/request-method.enum.js +9 -0
- package/dist/request-method.enum.js.map +1 -0
- package/dist/server/index.d.ts +1 -0
- package/dist/server/index.js +14 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/middlewares/authentication-middleware.d.ts +3 -0
- package/dist/server/middlewares/authentication-middleware.js +110 -0
- package/dist/server/middlewares/authentication-middleware.js.map +1 -0
- package/dist/server/middlewares/create-context-middleware.d.ts +3 -0
- package/dist/server/middlewares/create-context-middleware.js +55 -0
- package/dist/server/middlewares/create-context-middleware.js.map +1 -0
- package/dist/server/middlewares/error-middleware.d.ts +2 -0
- package/dist/server/middlewares/error-middleware.js +78 -0
- package/dist/server/middlewares/error-middleware.js.map +1 -0
- package/dist/server/middlewares/headers-middleware.d.ts +2 -0
- package/dist/server/middlewares/headers-middleware.js +58 -0
- package/dist/server/middlewares/headers-middleware.js.map +1 -0
- package/dist/server/middlewares/index.d.ts +5 -0
- package/dist/server/middlewares/index.js +18 -0
- package/dist/server/middlewares/index.js.map +1 -0
- package/dist/server/middlewares/not-found-middleware.d.ts +2 -0
- package/dist/server/middlewares/not-found-middleware.js +50 -0
- package/dist/server/middlewares/not-found-middleware.js.map +1 -0
- package/dist/server/server.d.ts +33 -0
- package/dist/server/server.js +139 -0
- package/dist/server/server.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +4 -4
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Document, Event } from '@my-devkit/core';
|
|
2
|
+
export declare abstract class Aggregate implements Document {
|
|
3
|
+
id: string;
|
|
4
|
+
_type: string;
|
|
5
|
+
private _events;
|
|
6
|
+
constructor();
|
|
7
|
+
get _path(): string;
|
|
8
|
+
get hash(): string;
|
|
9
|
+
protected assert(value: boolean, errorMessage: string): void;
|
|
10
|
+
protected apply<E extends Event>(event: E): void;
|
|
11
|
+
get events(): Event[];
|
|
12
|
+
clearEvents(): void;
|
|
13
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
12
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
13
|
+
if (ar || !(i in from)) {
|
|
14
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
15
|
+
ar[i] = from[i];
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
19
|
+
};
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.Aggregate = void 0;
|
|
22
|
+
var core_1 = require("@my-devkit/core");
|
|
23
|
+
var context_1 = require("./context");
|
|
24
|
+
var Aggregate = /** @class */ (function () {
|
|
25
|
+
function Aggregate() {
|
|
26
|
+
this.id = null;
|
|
27
|
+
this._type = null;
|
|
28
|
+
this._events = [];
|
|
29
|
+
this.id = (0, core_1.guid)();
|
|
30
|
+
this._type = this.constructor.name;
|
|
31
|
+
}
|
|
32
|
+
Object.defineProperty(Aggregate.prototype, "_path", {
|
|
33
|
+
get: function () {
|
|
34
|
+
return "/aggregates/".concat(this.id);
|
|
35
|
+
},
|
|
36
|
+
enumerable: false,
|
|
37
|
+
configurable: true
|
|
38
|
+
});
|
|
39
|
+
Object.defineProperty(Aggregate.prototype, "hash", {
|
|
40
|
+
get: function () {
|
|
41
|
+
return JSON.stringify((0, core_1.serialize)(this));
|
|
42
|
+
},
|
|
43
|
+
enumerable: false,
|
|
44
|
+
configurable: true
|
|
45
|
+
});
|
|
46
|
+
Aggregate.prototype.assert = function (value, errorMessage) {
|
|
47
|
+
if (!value) {
|
|
48
|
+
throw new core_1.DomainError(errorMessage);
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
Aggregate.prototype.apply = function (event) {
|
|
52
|
+
var methodName = "apply".concat(event._type);
|
|
53
|
+
if (!(methodName in this)) {
|
|
54
|
+
throw new Error("".concat(this._type, ".").concat(methodName, " method is missing!"));
|
|
55
|
+
}
|
|
56
|
+
event._aggregateId = this.id;
|
|
57
|
+
event._aggregateType = this._type;
|
|
58
|
+
event._correlationId = context_1.Context.correlationId;
|
|
59
|
+
event._publishedBy = context_1.Context.user ? context_1.Context.user.uid : null;
|
|
60
|
+
event.publishedAt = new Date();
|
|
61
|
+
this[methodName](event);
|
|
62
|
+
this._events.push(event);
|
|
63
|
+
};
|
|
64
|
+
Object.defineProperty(Aggregate.prototype, "events", {
|
|
65
|
+
get: function () {
|
|
66
|
+
return __spreadArray([], this._events, true);
|
|
67
|
+
},
|
|
68
|
+
enumerable: false,
|
|
69
|
+
configurable: true
|
|
70
|
+
});
|
|
71
|
+
Aggregate.prototype.clearEvents = function () {
|
|
72
|
+
this._events = [];
|
|
73
|
+
};
|
|
74
|
+
__decorate([
|
|
75
|
+
(0, core_1.autoserializeAs)(String),
|
|
76
|
+
__metadata("design:type", String)
|
|
77
|
+
], Aggregate.prototype, "id", void 0);
|
|
78
|
+
__decorate([
|
|
79
|
+
(0, core_1.autoserializeAs)(String),
|
|
80
|
+
__metadata("design:type", String)
|
|
81
|
+
], Aggregate.prototype, "_type", void 0);
|
|
82
|
+
return Aggregate;
|
|
83
|
+
}());
|
|
84
|
+
exports.Aggregate = Aggregate;
|
|
85
|
+
//# sourceMappingURL=aggregate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"aggregate.js","sourceRoot":"","sources":["../src/aggregate.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,wCAAiG;AAEjG,qCAAoC;AAEpC;IAKI;QAJgC,OAAE,GAAW,IAAI,CAAC;QAClB,UAAK,GAAW,IAAI,CAAC;QAC7C,YAAO,GAAY,EAAE,CAAC;QAG1B,IAAI,CAAC,EAAE,GAAG,IAAA,WAAI,GAAE,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACvC,CAAC;IAED,sBAAW,4BAAK;aAAhB;YACI,OAAO,sBAAe,IAAI,CAAC,EAAE,CAAE,CAAC;QACpC,CAAC;;;OAAA;IAED,sBAAW,2BAAI;aAAf;YACI,OAAO,IAAI,CAAC,SAAS,CAAC,IAAA,gBAAS,EAAC,IAAI,CAAC,CAAC,CAAC;QAC3C,CAAC;;;OAAA;IAES,0BAAM,GAAhB,UAAiB,KAAc,EAAE,YAAoB;QACjD,IAAI,CAAC,KAAK,EAAE;YACR,MAAM,IAAI,kBAAW,CAAC,YAAY,CAAC,CAAC;SACvC;IACL,CAAC;IAES,yBAAK,GAAf,UAAiC,KAAQ;QACrC,IAAM,UAAU,GAAG,eAAQ,KAAK,CAAC,KAAK,CAAE,CAAC;QACzC,IAAI,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,UAAG,IAAI,CAAC,KAAK,cAAI,UAAU,wBAAqB,CAAC,CAAC;SACrE;QAED,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC;QAElC,KAAK,CAAC,cAAc,GAAG,iBAAO,CAAC,aAAa,CAAC;QAC7C,KAAK,CAAC,YAAY,GAAG,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5D,KAAK,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;QAE/B,IAAI,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC;QAExB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IAED,sBAAW,6BAAM;aAAjB;YACI,yBAAW,IAAI,CAAC,OAAO,QAAE;QAC7B,CAAC;;;OAAA;IAEM,+BAAW,GAAlB;QACI,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;IACtB,CAAC;IA/CwB;QAAxB,IAAA,sBAAe,EAAC,MAAM,CAAC;;yCAA0B;IACzB;QAAxB,IAAA,sBAAe,EAAC,MAAM,CAAC;;4CAA6B;IA+CzD,gBAAC;CAAA,AAjDD,IAiDC;AAjDqB,8BAAS"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { DocumentSnapshot } from 'firebase-admin/firestore';
|
|
2
|
+
import { CloudFunction, HttpsFunction, SUPPORTED_REGIONS, VALID_MEMORY_OPTIONS } from 'firebase-functions';
|
|
3
|
+
import { Bus } from './bus';
|
|
4
|
+
import { ExecutionMode } from './execution-mode-enum';
|
|
5
|
+
import { Type } from './interfaces';
|
|
6
|
+
export declare class AppFactory {
|
|
7
|
+
private static functionInRegion;
|
|
8
|
+
private static firestore;
|
|
9
|
+
private static auth;
|
|
10
|
+
private static publicPaths;
|
|
11
|
+
private static instanceId;
|
|
12
|
+
static isActive(name: string): boolean;
|
|
13
|
+
static initializeApp(options: AppFactory.Options): void;
|
|
14
|
+
static createHttpFunction(name: string, module: Type): HttpsFunction;
|
|
15
|
+
static createEventListener(name: string, module: Type, mode?: ExecutionMode): CloudFunction<DocumentSnapshot>;
|
|
16
|
+
private static registerEventPersisterHandler;
|
|
17
|
+
private static registerControllers;
|
|
18
|
+
private static registerController;
|
|
19
|
+
private static registerHandlers;
|
|
20
|
+
private static registerLogger;
|
|
21
|
+
static getFunctionEventHandler(bus: Bus, mode: ExecutionMode): (snapshot: DocumentSnapshot) => any;
|
|
22
|
+
private static get isEmulator();
|
|
23
|
+
}
|
|
24
|
+
export declare namespace AppFactory {
|
|
25
|
+
interface Options {
|
|
26
|
+
region: typeof SUPPORTED_REGIONS[number];
|
|
27
|
+
timeoutSeconds: number;
|
|
28
|
+
memory: typeof VALID_MEMORY_OPTIONS[number];
|
|
29
|
+
publicPaths?: string[];
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,331 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
+
function step(op) {
|
|
27
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
+
while (_) try {
|
|
29
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
+
switch (op[0]) {
|
|
32
|
+
case 0: case 1: t = op; break;
|
|
33
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
+
default:
|
|
37
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
+
if (t[2]) _.ops.pop();
|
|
42
|
+
_.trys.pop(); continue;
|
|
43
|
+
}
|
|
44
|
+
op = body.call(thisArg, _);
|
|
45
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
|
+
exports.AppFactory = void 0;
|
|
51
|
+
var core_1 = require("@my-devkit/core");
|
|
52
|
+
var app_1 = require("firebase-admin/app");
|
|
53
|
+
var auth_1 = require("firebase-admin/auth");
|
|
54
|
+
var firestore_1 = require("firebase-admin/firestore");
|
|
55
|
+
var firebase_functions_1 = require("firebase-functions");
|
|
56
|
+
var bus_1 = require("./bus");
|
|
57
|
+
var constants_1 = require("./constants");
|
|
58
|
+
var context_1 = require("./context");
|
|
59
|
+
var execution_mode_enum_1 = require("./execution-mode-enum");
|
|
60
|
+
var firestore_client_1 = require("./firestore-client");
|
|
61
|
+
var reflect_1 = require("./reflect");
|
|
62
|
+
var server_1 = require("./server");
|
|
63
|
+
var AppFactory = /** @class */ (function () {
|
|
64
|
+
function AppFactory() {
|
|
65
|
+
}
|
|
66
|
+
AppFactory.isActive = function (name) {
|
|
67
|
+
var functionName = process.env.FUNCTION_NAME || process.env.K_SERVICE;
|
|
68
|
+
return !functionName || functionName === name;
|
|
69
|
+
};
|
|
70
|
+
AppFactory.initializeApp = function (options) {
|
|
71
|
+
this.instanceId = (0, core_1.guid)();
|
|
72
|
+
context_1.Context.init();
|
|
73
|
+
this.registerLogger();
|
|
74
|
+
this.publicPaths = options.publicPaths || [];
|
|
75
|
+
var app = (0, app_1.initializeApp)((0, firebase_functions_1.config)().firebase);
|
|
76
|
+
this.firestore = (0, firestore_1.getFirestore)(app);
|
|
77
|
+
this.firestore.settings({});
|
|
78
|
+
this.auth = (0, auth_1.getAuth)(app);
|
|
79
|
+
var runtimeOptions = {
|
|
80
|
+
timeoutSeconds: options.timeoutSeconds,
|
|
81
|
+
memory: options.memory
|
|
82
|
+
};
|
|
83
|
+
this.functionInRegion = (0, firebase_functions_1.region)(this.isEmulator ? 'functions' : options.region).runWith(runtimeOptions);
|
|
84
|
+
};
|
|
85
|
+
AppFactory.createHttpFunction = function (name, module) {
|
|
86
|
+
if (!this.isActive(name)) {
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
89
|
+
core_1.Logger.info("Cold Start Http function ".concat(name));
|
|
90
|
+
var bus = new bus_1.Bus();
|
|
91
|
+
var server = new server_1.Server({
|
|
92
|
+
bus: bus,
|
|
93
|
+
firebaseAuth: this.auth,
|
|
94
|
+
firestore: this.firestore,
|
|
95
|
+
publicPaths: this.publicPaths
|
|
96
|
+
});
|
|
97
|
+
this.registerControllers(server, module);
|
|
98
|
+
this.registerEventPersisterHandler(bus);
|
|
99
|
+
this.registerHandlers(bus, module);
|
|
100
|
+
return this.functionInRegion.https.onRequest(server.app);
|
|
101
|
+
};
|
|
102
|
+
AppFactory.createEventListener = function (name, module, mode) {
|
|
103
|
+
if (mode === void 0) { mode = execution_mode_enum_1.ExecutionMode.Asynchronous; }
|
|
104
|
+
if (!this.isActive(name)) {
|
|
105
|
+
return null;
|
|
106
|
+
}
|
|
107
|
+
core_1.Logger.info("Cold Start Event Listener ".concat(mode));
|
|
108
|
+
var bus = new bus_1.Bus();
|
|
109
|
+
this.registerEventPersisterHandler(bus);
|
|
110
|
+
this.registerHandlers(bus, module);
|
|
111
|
+
return this.functionInRegion
|
|
112
|
+
.firestore
|
|
113
|
+
.document('events/{eventId}')
|
|
114
|
+
.onCreate(this.getFunctionEventHandler(bus, execution_mode_enum_1.ExecutionMode.Asynchronous));
|
|
115
|
+
};
|
|
116
|
+
AppFactory.registerEventPersisterHandler = function (bus) {
|
|
117
|
+
var _this = this;
|
|
118
|
+
bus.onEachEvent(function (event) { return __awaiter(_this, void 0, void 0, function () {
|
|
119
|
+
return __generator(this, function (_a) {
|
|
120
|
+
context_1.Context.resolve(firestore_client_1.FirestoreClient).createDocument(event);
|
|
121
|
+
return [2 /*return*/];
|
|
122
|
+
});
|
|
123
|
+
}); }, execution_mode_enum_1.ExecutionMode.Synchronous);
|
|
124
|
+
};
|
|
125
|
+
AppFactory.registerControllers = function (server, module) {
|
|
126
|
+
var controllers = Reflect.getMetadata(constants_1.MODULE_METADATA.CONTROLLERS, module) || [];
|
|
127
|
+
for (var _i = 0, controllers_1 = controllers; _i < controllers_1.length; _i++) {
|
|
128
|
+
var controller = controllers_1[_i];
|
|
129
|
+
this.registerController(server, controller);
|
|
130
|
+
}
|
|
131
|
+
var imports = Reflect.getMetadata(constants_1.MODULE_METADATA.IMPORTS, module) || [];
|
|
132
|
+
for (var _a = 0, imports_1 = imports; _a < imports_1.length; _a++) {
|
|
133
|
+
var importedModule = imports_1[_a];
|
|
134
|
+
this.registerControllers(server, importedModule);
|
|
135
|
+
}
|
|
136
|
+
};
|
|
137
|
+
AppFactory.registerController = function (server, controller) {
|
|
138
|
+
var _this = this;
|
|
139
|
+
var router = new server_1.Server.Router();
|
|
140
|
+
var config = (0, reflect_1.reflect)(controller).getControllerConfiguration();
|
|
141
|
+
var _loop_1 = function (route) {
|
|
142
|
+
router.registerRoute(route.requestMethod, "/".concat(route.path), function (request, response) { return __awaiter(_this, void 0, void 0, function () {
|
|
143
|
+
var controllerInstance, args, result, _i, _a, client;
|
|
144
|
+
return __generator(this, function (_b) {
|
|
145
|
+
switch (_b.label) {
|
|
146
|
+
case 0:
|
|
147
|
+
core_1.Logger.info("".concat(route.requestMethod, "/").concat(route.path, ": executing handler method ").concat(controller.name, ".").concat(route.methodName));
|
|
148
|
+
controllerInstance = context_1.Context.resolve(controller);
|
|
149
|
+
args = route.argumentInjectors.map(function (injector) { return injector(request); });
|
|
150
|
+
return [4 /*yield*/, controllerInstance[route.methodName].apply(controllerInstance, args)];
|
|
151
|
+
case 1:
|
|
152
|
+
result = _b.sent();
|
|
153
|
+
_i = 0, _a = context_1.Context.getTransactionalClients();
|
|
154
|
+
_b.label = 2;
|
|
155
|
+
case 2:
|
|
156
|
+
if (!(_i < _a.length)) return [3 /*break*/, 5];
|
|
157
|
+
client = _a[_i];
|
|
158
|
+
core_1.Logger.info("Saving transactions...");
|
|
159
|
+
return [4 /*yield*/, client.save()];
|
|
160
|
+
case 3:
|
|
161
|
+
_b.sent();
|
|
162
|
+
_b.label = 4;
|
|
163
|
+
case 4:
|
|
164
|
+
_i++;
|
|
165
|
+
return [3 /*break*/, 2];
|
|
166
|
+
case 5:
|
|
167
|
+
context_1.Context.destroy();
|
|
168
|
+
response.status(server_1.Server.statusCodes.OK).send({ result: result });
|
|
169
|
+
return [2 /*return*/];
|
|
170
|
+
}
|
|
171
|
+
});
|
|
172
|
+
}); });
|
|
173
|
+
};
|
|
174
|
+
for (var _i = 0, _a = config.routes; _i < _a.length; _i++) {
|
|
175
|
+
var route = _a[_i];
|
|
176
|
+
_loop_1(route);
|
|
177
|
+
}
|
|
178
|
+
router.registerOnServer("/".concat(config.basePath), server);
|
|
179
|
+
};
|
|
180
|
+
AppFactory.registerHandlers = function (bus, module) {
|
|
181
|
+
var _this = this;
|
|
182
|
+
var handlers = Reflect.getMetadata(constants_1.MODULE_METADATA.HANDLERS, module) || [];
|
|
183
|
+
var _loop_2 = function (handler) {
|
|
184
|
+
var handlerConfiguration = (0, reflect_1.reflect)(handler).getHandlerConfiguration();
|
|
185
|
+
var instance = new handler();
|
|
186
|
+
var _loop_3 = function (commandHandler) {
|
|
187
|
+
core_1.Logger.debug("onCommand ".concat(commandHandler.command.constructor.name, " => ").concat(handler.name, ".").concat(commandHandler.methodName));
|
|
188
|
+
bus.onCommand(commandHandler.command, function (command) {
|
|
189
|
+
var startDate = new Date();
|
|
190
|
+
core_1.Logger.info("".concat(handler.name, ".").concat(commandHandler.methodName, " handle ").concat(command._type));
|
|
191
|
+
var result = instance[commandHandler.methodName](command);
|
|
192
|
+
core_1.Logger.infoWithElapesedTime("".concat(command._type, " handled by ").concat(handler.name, ".").concat(commandHandler.methodName), startDate);
|
|
193
|
+
return result;
|
|
194
|
+
});
|
|
195
|
+
};
|
|
196
|
+
for (var _b = 0, _c = Array.from(handlerConfiguration.commandHandlers.values()); _b < _c.length; _b++) {
|
|
197
|
+
var commandHandler = _c[_b];
|
|
198
|
+
_loop_3(commandHandler);
|
|
199
|
+
}
|
|
200
|
+
var _loop_4 = function (eventHandler) {
|
|
201
|
+
core_1.Logger.debug("onEvent ".concat(eventHandler.event.constructor.name, " => ").concat(handler.name, ".").concat(eventHandler.methodName, " (mode: ").concat(eventHandler.executionMode, ")"));
|
|
202
|
+
bus.onEvent(eventHandler.event, function (event) { return __awaiter(_this, void 0, void 0, function () {
|
|
203
|
+
var startDate;
|
|
204
|
+
return __generator(this, function (_a) {
|
|
205
|
+
switch (_a.label) {
|
|
206
|
+
case 0:
|
|
207
|
+
startDate = new Date();
|
|
208
|
+
core_1.Logger.info("".concat(handler.name, ".").concat(eventHandler.methodName, " handle ").concat(event._type));
|
|
209
|
+
return [4 /*yield*/, instance[eventHandler.methodName](event)];
|
|
210
|
+
case 1:
|
|
211
|
+
_a.sent();
|
|
212
|
+
core_1.Logger.infoWithElapesedTime("".concat(event._type, " handled by ").concat(handler.name, ".").concat(eventHandler.methodName), startDate);
|
|
213
|
+
return [2 /*return*/];
|
|
214
|
+
}
|
|
215
|
+
});
|
|
216
|
+
}); }, eventHandler.executionMode);
|
|
217
|
+
};
|
|
218
|
+
for (var _d = 0, _e = Array.from(handlerConfiguration.eventHandlers.values()); _d < _e.length; _d++) {
|
|
219
|
+
var eventHandler = _e[_d];
|
|
220
|
+
_loop_4(eventHandler);
|
|
221
|
+
}
|
|
222
|
+
};
|
|
223
|
+
for (var _i = 0, handlers_1 = handlers; _i < handlers_1.length; _i++) {
|
|
224
|
+
var handler = handlers_1[_i];
|
|
225
|
+
_loop_2(handler);
|
|
226
|
+
}
|
|
227
|
+
var imports = Reflect.getMetadata(constants_1.MODULE_METADATA.IMPORTS, module) || [];
|
|
228
|
+
for (var _a = 0, imports_2 = imports; _a < imports_2.length; _a++) {
|
|
229
|
+
var importedModule = imports_2[_a];
|
|
230
|
+
this.registerHandlers(bus, importedModule);
|
|
231
|
+
}
|
|
232
|
+
};
|
|
233
|
+
AppFactory.registerLogger = function () {
|
|
234
|
+
var _this = this;
|
|
235
|
+
if (this.isEmulator) {
|
|
236
|
+
core_1.Logger.registerLogger(new core_1.Logger.ConsoleImplementation());
|
|
237
|
+
return;
|
|
238
|
+
}
|
|
239
|
+
var completeMetaData = function (data) {
|
|
240
|
+
var _a, _b;
|
|
241
|
+
return __assign({ instanceId: _this.instanceId, correlationId: context_1.Context.correlationId, eventId: context_1.Context.eventId, userId: (_a = context_1.Context.user) === null || _a === void 0 ? void 0 : _a.uid, userEmail: (_b = context_1.Context.user) === null || _b === void 0 ? void 0 : _b.email }, data);
|
|
242
|
+
};
|
|
243
|
+
core_1.Logger.registerLogger({
|
|
244
|
+
debug: function (message, data) {
|
|
245
|
+
firebase_functions_1.logger.debug(message, completeMetaData(data));
|
|
246
|
+
},
|
|
247
|
+
info: function (message, data) {
|
|
248
|
+
firebase_functions_1.logger.info(message, completeMetaData(data));
|
|
249
|
+
},
|
|
250
|
+
warn: function (message, data) {
|
|
251
|
+
firebase_functions_1.logger.warn(message, completeMetaData(data));
|
|
252
|
+
},
|
|
253
|
+
error: function (message, data) {
|
|
254
|
+
firebase_functions_1.logger.error(message, completeMetaData(data));
|
|
255
|
+
}
|
|
256
|
+
});
|
|
257
|
+
};
|
|
258
|
+
AppFactory.getFunctionEventHandler = function (bus, mode) {
|
|
259
|
+
var _this = this;
|
|
260
|
+
return function (snapshot) { return __awaiter(_this, void 0, void 0, function () {
|
|
261
|
+
var startDate, unserializedEvent, event, error_1;
|
|
262
|
+
var _this = this;
|
|
263
|
+
return __generator(this, function (_a) {
|
|
264
|
+
switch (_a.label) {
|
|
265
|
+
case 0:
|
|
266
|
+
startDate = new Date();
|
|
267
|
+
unserializedEvent = snapshot.data();
|
|
268
|
+
event = (0, core_1.deserialize)(unserializedEvent);
|
|
269
|
+
context_1.Context.create(bus);
|
|
270
|
+
context_1.Context.correlationId = event._correlationId;
|
|
271
|
+
context_1.Context.eventId = event.id;
|
|
272
|
+
if (unserializedEvent['_restored'] === true) {
|
|
273
|
+
core_1.Logger.debug("Event ".concat(event._type, " is ignored as it is restored from backup."));
|
|
274
|
+
return [2 /*return*/];
|
|
275
|
+
}
|
|
276
|
+
_a.label = 1;
|
|
277
|
+
case 1:
|
|
278
|
+
_a.trys.push([1, 3, 4, 5]);
|
|
279
|
+
return [4 /*yield*/, (0, core_1.retry)(function () { return __awaiter(_this, void 0, void 0, function () {
|
|
280
|
+
var _i, _a, client;
|
|
281
|
+
return __generator(this, function (_b) {
|
|
282
|
+
switch (_b.label) {
|
|
283
|
+
case 0:
|
|
284
|
+
core_1.Logger.info("".concat('-'.repeat(5), " handling ").concat(event._type, " ").concat('-'.repeat(5)));
|
|
285
|
+
return [4 /*yield*/, bus.publish(event, mode)];
|
|
286
|
+
case 1:
|
|
287
|
+
_b.sent();
|
|
288
|
+
_i = 0, _a = context_1.Context.getTransactionalClients();
|
|
289
|
+
_b.label = 2;
|
|
290
|
+
case 2:
|
|
291
|
+
if (!(_i < _a.length)) return [3 /*break*/, 5];
|
|
292
|
+
client = _a[_i];
|
|
293
|
+
return [4 /*yield*/, client.save()];
|
|
294
|
+
case 3:
|
|
295
|
+
_b.sent();
|
|
296
|
+
_b.label = 4;
|
|
297
|
+
case 4:
|
|
298
|
+
_i++;
|
|
299
|
+
return [3 /*break*/, 2];
|
|
300
|
+
case 5:
|
|
301
|
+
core_1.Logger.infoWithElapesedTime("".concat('-'.repeat(5), " ").concat(event._type, " handled successfully ").concat('-'.repeat(5)), startDate);
|
|
302
|
+
return [2 /*return*/];
|
|
303
|
+
}
|
|
304
|
+
});
|
|
305
|
+
}); })];
|
|
306
|
+
case 2:
|
|
307
|
+
_a.sent();
|
|
308
|
+
return [3 /*break*/, 5];
|
|
309
|
+
case 3:
|
|
310
|
+
error_1 = _a.sent();
|
|
311
|
+
core_1.Logger.error("".concat('-'.repeat(5), " ").concat(event._type, " couldn't be handled correctly ").concat('-'.repeat(5)), { error: error_1 });
|
|
312
|
+
return [3 /*break*/, 5];
|
|
313
|
+
case 4:
|
|
314
|
+
context_1.Context.destroy();
|
|
315
|
+
return [7 /*endfinally*/];
|
|
316
|
+
case 5: return [2 /*return*/];
|
|
317
|
+
}
|
|
318
|
+
});
|
|
319
|
+
}); };
|
|
320
|
+
};
|
|
321
|
+
Object.defineProperty(AppFactory, "isEmulator", {
|
|
322
|
+
get: function () {
|
|
323
|
+
return !!process.env.FUNCTIONS_EMULATOR;
|
|
324
|
+
},
|
|
325
|
+
enumerable: false,
|
|
326
|
+
configurable: true
|
|
327
|
+
});
|
|
328
|
+
return AppFactory;
|
|
329
|
+
}());
|
|
330
|
+
exports.AppFactory = AppFactory;
|
|
331
|
+
//# sourceMappingURL=app-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-factory.js","sourceRoot":"","sources":["../src/app-factory.ts"],"names":[],"mappings":"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"}
|
package/dist/bus.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Command, Event } from '@my-devkit/core';
|
|
2
|
+
import { ExecutionMode } from './execution-mode-enum';
|
|
3
|
+
export declare class Bus {
|
|
4
|
+
private commandHandlers;
|
|
5
|
+
private eventHandlers;
|
|
6
|
+
send<T, C extends Command>(command: C): Promise<T>;
|
|
7
|
+
publish<E extends Event>(event: E, mode?: ExecutionMode): Promise<void>;
|
|
8
|
+
onCommand<C extends Command, R>(commandType: new () => C, handler: Bus.Handler<C, R>): void;
|
|
9
|
+
onEvent<E extends Event>(eventType: new () => E, handler: Bus.Handler<E, void>, mode: ExecutionMode): void;
|
|
10
|
+
onEachEvent<E extends Event>(handler: Bus.Handler<E, void>, mode: ExecutionMode): void;
|
|
11
|
+
private getDictionaryKey;
|
|
12
|
+
private registerEventHandler;
|
|
13
|
+
private getEventHandlers;
|
|
14
|
+
}
|
|
15
|
+
export declare namespace Bus {
|
|
16
|
+
type Handler<T, R> = (arg: T) => Promise<R>;
|
|
17
|
+
}
|
package/dist/bus.js
ADDED
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
39
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
40
|
+
if (ar || !(i in from)) {
|
|
41
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
42
|
+
ar[i] = from[i];
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
46
|
+
};
|
|
47
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
|
+
exports.Bus = void 0;
|
|
49
|
+
var core_1 = require("@my-devkit/core");
|
|
50
|
+
var execution_mode_enum_1 = require("./execution-mode-enum");
|
|
51
|
+
var Bus = /** @class */ (function () {
|
|
52
|
+
function Bus() {
|
|
53
|
+
this.commandHandlers = new Map();
|
|
54
|
+
this.eventHandlers = new Map();
|
|
55
|
+
}
|
|
56
|
+
Bus.prototype.send = function (command) {
|
|
57
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
58
|
+
var validationErrors, handler;
|
|
59
|
+
return __generator(this, function (_a) {
|
|
60
|
+
core_1.Logger.info("Bus.send ".concat(command._type), { command: (0, core_1.serialize)(command) });
|
|
61
|
+
validationErrors = core_1.Validators.validate(command);
|
|
62
|
+
if (validationErrors.length > 0) {
|
|
63
|
+
throw new core_1.DomainError(validationErrors[0].getErrorMessage());
|
|
64
|
+
}
|
|
65
|
+
handler = this.commandHandlers.get(command._type);
|
|
66
|
+
if (!handler) {
|
|
67
|
+
throw new Error("No command handler for ".concat(command._type));
|
|
68
|
+
}
|
|
69
|
+
core_1.Logger.info("Run command handler ".concat(handler.name));
|
|
70
|
+
return [2 /*return*/, handler(command)];
|
|
71
|
+
});
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
Bus.prototype.publish = function (event, mode) {
|
|
75
|
+
if (mode === void 0) { mode = execution_mode_enum_1.ExecutionMode.Synchronous; }
|
|
76
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
77
|
+
var handlers, _i, handlers_1, handler;
|
|
78
|
+
return __generator(this, function (_a) {
|
|
79
|
+
switch (_a.label) {
|
|
80
|
+
case 0:
|
|
81
|
+
core_1.Logger.info("Bus.publish ".concat(event._type, " "), { event: (0, core_1.serialize)(event) });
|
|
82
|
+
handlers = __spreadArray(__spreadArray([], this.getEventHandlers(event._type, mode), true), this.getEventHandlers('**', mode), true);
|
|
83
|
+
_i = 0, handlers_1 = handlers;
|
|
84
|
+
_a.label = 1;
|
|
85
|
+
case 1:
|
|
86
|
+
if (!(_i < handlers_1.length)) return [3 /*break*/, 4];
|
|
87
|
+
handler = handlers_1[_i];
|
|
88
|
+
core_1.Logger.info("Run event handler ".concat(handler.name));
|
|
89
|
+
return [4 /*yield*/, handler(event)];
|
|
90
|
+
case 2:
|
|
91
|
+
_a.sent();
|
|
92
|
+
_a.label = 3;
|
|
93
|
+
case 3:
|
|
94
|
+
_i++;
|
|
95
|
+
return [3 /*break*/, 1];
|
|
96
|
+
case 4: return [2 /*return*/];
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
};
|
|
101
|
+
Bus.prototype.onCommand = function (commandType, handler) {
|
|
102
|
+
var commandName = commandType.constructor.name;
|
|
103
|
+
this.commandHandlers.set(commandName, handler);
|
|
104
|
+
};
|
|
105
|
+
Bus.prototype.onEvent = function (eventType, handler, mode) {
|
|
106
|
+
this.registerEventHandler(eventType.constructor.name, mode, handler);
|
|
107
|
+
};
|
|
108
|
+
Bus.prototype.onEachEvent = function (handler, mode) {
|
|
109
|
+
this.registerEventHandler('**', mode, handler);
|
|
110
|
+
};
|
|
111
|
+
Bus.prototype.getDictionaryKey = function (eventType, mode) {
|
|
112
|
+
return "".concat(eventType, "_").concat(mode.toString());
|
|
113
|
+
};
|
|
114
|
+
Bus.prototype.registerEventHandler = function (type, mode, handler) {
|
|
115
|
+
var key = this.getDictionaryKey(type, mode);
|
|
116
|
+
if (!this.eventHandlers.has(key)) {
|
|
117
|
+
this.eventHandlers.set(key, []);
|
|
118
|
+
}
|
|
119
|
+
this.eventHandlers.get(key).push(handler);
|
|
120
|
+
};
|
|
121
|
+
Bus.prototype.getEventHandlers = function (type, mode) {
|
|
122
|
+
var key = this.getDictionaryKey(type, mode);
|
|
123
|
+
return this.eventHandlers.get(key) || [];
|
|
124
|
+
};
|
|
125
|
+
return Bus;
|
|
126
|
+
}());
|
|
127
|
+
exports.Bus = Bus;
|
|
128
|
+
//# sourceMappingURL=bus.js.map
|
package/dist/bus.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bus.js","sourceRoot":"","sources":["../src/bus.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MODULE_METADATA = void 0;
|
|
4
|
+
exports.MODULE_METADATA = {
|
|
5
|
+
IMPORTS: 'imports',
|
|
6
|
+
CONTROLLERS: 'controllers',
|
|
7
|
+
HANDLERS: 'handlers'
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=constants.js.map
|