@flexent/stack-backend 2.20.2 → 2.22.0

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.
@@ -38,4 +38,5 @@ export declare abstract class BaseApp {
38
38
  * Tests do not use that.
39
39
  */
40
40
  shutdown(): Promise<void>;
41
+ private assertDeps;
41
42
  }
@@ -8,6 +8,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
10
  import 'reflect-metadata';
11
+ import { InitializationError } from '@flexent/errors';
11
12
  import { RouteMetrics } from '@flexent/http-router';
12
13
  import { HttpCorsHandler, HttpErrorHandler, HttpHandler, HttpServer } from '@flexent/http-server';
13
14
  import { Logger } from '@flexent/logger';
@@ -19,7 +20,6 @@ import { MetaRouter } from './MetaRouter.js';
19
20
  import { ProcessMetrics } from './ProcessMetrics.js';
20
21
  import { ProcessSignals } from './ProcessSignals.js';
21
22
  import { StandardLogger } from './StandardLogger.js';
22
- import { assertMissingDeps } from './utils/deps.js';
23
23
  import { assertEnv, configureEnv, getEnvName } from './utils/env.js';
24
24
  const process = global.process;
25
25
  /**
@@ -65,7 +65,7 @@ export class BaseApp {
65
65
  assertEnv();
66
66
  this.processEnvConfig.refresh();
67
67
  this.logger.info('Starting application', { env });
68
- assertMissingDeps(this.mesh);
68
+ this.assertDeps();
69
69
  }
70
70
  /**
71
71
  * Application shutdown code.
@@ -105,6 +105,12 @@ export class BaseApp {
105
105
  process.exit(1);
106
106
  }
107
107
  }
108
+ assertDeps() {
109
+ const missingKeys = [...this.mesh.missingDeps()].map(_ => _.key);
110
+ if (missingKeys.length > 0) {
111
+ throw new InitializationError(`The following class dependencies are not found in application global scope: ${missingKeys}`);
112
+ }
113
+ }
108
114
  }
109
115
  __decorate([
110
116
  dep(),
@@ -1 +1 @@
1
- {"version":3,"file":"BaseApp.js","sourceRoot":"","sources":["../../src/main/BaseApp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseApp.js","sourceRoot":"","sources":["../../src/main/BaseApp.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,8 @@ import { HttpRouter } from '@flexent/http-router';
2
2
  import { HttpContext } from '@flexent/http-server';
3
3
  export declare class MetaRouter extends HttpRouter {
4
4
  private mesh;
5
+ private APP_VERSION;
5
6
  getStatus(ctx: HttpContext): Promise<void>;
6
7
  getMetrics(ctx: HttpContext): Promise<void>;
8
+ private runStatusChecks;
7
9
  }
@@ -10,13 +10,15 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  import { Get, HttpRouter } from '@flexent/http-router';
11
11
  import { HttpContext } from '@flexent/http-server';
12
12
  import { generateMetricsReport } from '@flexent/metrics';
13
+ import { config } from 'mesh-config';
14
+ import { findMembers } from 'mesh-decorators';
13
15
  import { dep, Mesh } from 'mesh-ioc';
14
- import { invokeStatusChecks } from './utils/status.js';
16
+ import { STATUS_CHECK } from './utils/status.js';
15
17
  export class MetaRouter extends HttpRouter {
16
18
  async getStatus(ctx) {
17
- const checks = await invokeStatusChecks(this.mesh);
19
+ const checks = await this.runStatusChecks();
18
20
  ctx.responseBody = {
19
- version: process.env.APP_VERSION,
21
+ version: this.APP_VERSION,
20
22
  ...checks,
21
23
  };
22
24
  ctx.status = 200;
@@ -28,11 +30,24 @@ export class MetaRouter extends HttpRouter {
28
30
  ctx.responseBody = report;
29
31
  ctx.log = false;
30
32
  }
33
+ async runStatusChecks() {
34
+ const checks = {};
35
+ const refs = findMembers(STATUS_CHECK, this.mesh);
36
+ const results = await Promise.all(refs.map(ref => ref.target[ref.memberName]()));
37
+ for (const [i, ref] of refs.entries()) {
38
+ checks[ref.target.constructor.name] = results[i];
39
+ }
40
+ return checks;
41
+ }
31
42
  }
32
43
  __decorate([
33
44
  dep(),
34
45
  __metadata("design:type", Mesh)
35
46
  ], MetaRouter.prototype, "mesh", void 0);
47
+ __decorate([
48
+ config({ default: '' }),
49
+ __metadata("design:type", String)
50
+ ], MetaRouter.prototype, "APP_VERSION", void 0);
36
51
  __decorate([
37
52
  Get({ path: '/status' }),
38
53
  __metadata("design:type", Function),
@@ -1 +1 @@
1
- {"version":3,"file":"MetaRouter.js","sourceRoot":"","sources":["../../src/main/MetaRouter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,OAAO,UAAW,SAAQ,UAAU;IAKhC,AAAN,KAAK,CAAC,SAAS,CAAC,GAAgB;QAC5B,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,GAAG,CAAC,YAAY,GAAG;YACf,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW;YAChC,GAAG,MAAM;SACZ,CAAC;QACF,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC;QACjB,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC;IACpB,CAAC;IAGK,AAAN,KAAK,CAAC,UAAU,CAAC,GAAgB;QAC7B,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC;QACjB,GAAG,CAAC,YAAY,GAAG,MAAM,CAAC;QAC1B,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC;IACpB,CAAC;CAEJ;AArBkB;IAAd,GAAG,EAAE;8BAAgB,IAAI;wCAAC;AAGrB;IADL,GAAG,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;qCACJ,WAAW;;2CAQ/B;AAGK;IADL,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;;qCACJ,WAAW;;4CAKhC"}
1
+ {"version":3,"file":"MetaRouter.js","sourceRoot":"","sources":["../../src/main/MetaRouter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,OAAO,UAAW,SAAQ,UAAU;IAOhC,AAAN,KAAK,CAAC,SAAS,CAAC,GAAgB;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE,CAAC;QAC5C,GAAG,CAAC,YAAY,GAAG;YACf,OAAO,EAAE,IAAI,CAAC,WAAW;YACzB,GAAG,MAAM;SACZ,CAAC;QACF,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC;QACjB,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC;IACpB,CAAC;IAGK,AAAN,KAAK,CAAC,UAAU,CAAC,GAAgB;QAC7B,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC;QACjB,GAAG,CAAC,YAAY,GAAG,MAAM,CAAC;QAC1B,GAAG,CAAC,GAAG,GAAG,KAAK,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,eAAe;QACzB,MAAM,MAAM,GAA2B,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;QACjF,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;CAEJ;AAjCkB;IAAd,GAAG,EAAE;8BAAgB,IAAI;wCAAC;AAEM;IAAhC,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;;+CAA8B;AAGhD;IADL,GAAG,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;qCACJ,WAAW;;2CAQ/B;AAGK;IADL,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;;qCACJ,WAAW;;4CAKhC"}
@@ -5,6 +5,5 @@ export * from './MetaRouter.js';
5
5
  export * from './ProcessMetrics.js';
6
6
  export * from './ProcessSignals.js';
7
7
  export * from './StandardLogger.js';
8
- export * from './utils/deps.js';
9
8
  export * from './utils/env.js';
10
9
  export * from './utils/status.js';
package/out/main/index.js CHANGED
@@ -5,7 +5,6 @@ export * from './MetaRouter.js';
5
5
  export * from './ProcessMetrics.js';
6
6
  export * from './ProcessSignals.js';
7
7
  export * from './StandardLogger.js';
8
- export * from './utils/deps.js';
9
8
  export * from './utils/env.js';
10
9
  export * from './utils/status.js';
11
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/main/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/main/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC"}
@@ -1,3 +1,2 @@
1
- import { Mesh } from 'mesh-ioc';
1
+ export declare const STATUS_CHECK = "@flexent/http/statusCheck";
2
2
  export declare const statusCheck: (metadata: void) => (target: any, memberName: string) => void;
3
- export declare function invokeStatusChecks(mesh: Mesh): Promise<Record<string, string>>;
@@ -1,14 +1,4 @@
1
- import { createMemberDecorator, findMembers } from 'mesh-decorators';
2
- const DECORATOR_NAME = '@flexent/http/statusCheck';
3
- export const statusCheck = createMemberDecorator(DECORATOR_NAME);
4
- export async function invokeStatusChecks(mesh) {
5
- const res = {};
6
- const refs = findMembers(DECORATOR_NAME, mesh);
7
- const promises = refs.map(ref => ref.target[ref.memberName]());
8
- const results = await Promise.all(promises);
9
- for (const [i, ref] of refs.entries()) {
10
- res[ref.target.constructor.name] = results[i];
11
- }
12
- return res;
13
- }
1
+ import { createMemberDecorator } from 'mesh-decorators';
2
+ export const STATUS_CHECK = '@flexent/http/statusCheck';
3
+ export const statusCheck = createMemberDecorator(STATUS_CHECK);
14
4
  //# sourceMappingURL=status.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/main/utils/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGrE,MAAM,cAAc,GAAG,2BAA2B,CAAC;AAEnD,MAAM,CAAC,MAAM,WAAW,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;AAEjE,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAU;IAC/C,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,MAAM,IAAI,GAAG,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5C,KAAK,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;QACpC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/main/utils/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,CAAC,MAAM,YAAY,GAAG,2BAA2B,CAAC;AAExD,MAAM,CAAC,MAAM,WAAW,GAAG,qBAAqB,CAAC,YAAY,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flexent/stack-backend",
3
- "version": "2.20.2",
3
+ "version": "2.22.0",
4
4
  "description": "Backend basic setup",
5
5
  "author": "Boris Okunskiy",
6
6
  "license": "MIT",
@@ -15,10 +15,10 @@
15
15
  "test": "NODE_ENV=test mocha"
16
16
  },
17
17
  "peerDependencies": {
18
- "@flexent/errors": "^2.20.2",
19
- "@flexent/http-router": "^2.20.2",
20
- "@flexent/http-server": "^2.20.2",
21
- "@flexent/logger": "^2.20.2",
18
+ "@flexent/errors": "^2.22.0",
19
+ "@flexent/http-router": "^2.22.0",
20
+ "@flexent/http-server": "^2.22.0",
21
+ "@flexent/logger": "^2.22.0",
22
22
  "mesh-config": "^1.3.4",
23
23
  "mesh-decorators": "^1.3.6",
24
24
  "mesh-ioc": "^4.3.1",
@@ -1,2 +0,0 @@
1
- import { Mesh } from 'mesh-ioc';
2
- export declare function assertMissingDeps(mesh: Mesh): void;
@@ -1,8 +0,0 @@
1
- import { InitializationError } from '@flexent/errors';
2
- export function assertMissingDeps(mesh) {
3
- const missingDepKeys = [...mesh.missingDeps()].map(_ => _.key);
4
- if (missingDepKeys.length > 0) {
5
- throw new InitializationError(`The following class dependencies are not found in application global scope: ${missingDepKeys}`);
6
- }
7
- }
8
- //# sourceMappingURL=deps.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deps.js","sourceRoot":"","sources":["../../../src/main/utils/deps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGtD,MAAM,UAAU,iBAAiB,CAAC,IAAU;IACxC,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC/D,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,mBAAmB,CAAC,+EAA+E,cAAc,EAAE,CAAC,CAAC;IACnI,CAAC;AACL,CAAC"}