@biorate/nestjs-tools 1.31.2 → 1.37.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.
Files changed (66) hide show
  1. package/.nyc_output/3089b63e-c37e-4ade-91a9-9b2169e81785.json +1 -0
  2. package/.nyc_output/processinfo/{13b4cdcb-f9a5-44d3-a56d-78d223c46700.json → 3089b63e-c37e-4ade-91a9-9b2169e81785.json} +1 -1
  3. package/.nyc_output/processinfo/index.json +1 -1
  4. package/CHANGELOG.md +12 -0
  5. package/coverage/lcov-report/index.html +57 -12
  6. package/coverage/lcov-report/nestjs-tools/index.html +1 -1
  7. package/coverage/lcov-report/nestjs-tools/interfaces.ts.html +17 -2
  8. package/coverage/lcov-report/nestjs-tools/src/decorators/auth.ts.html +1 -1
  9. package/coverage/lcov-report/nestjs-tools/src/decorators/index.html +1 -1
  10. package/coverage/lcov-report/nestjs-tools/src/decorators/index.ts.html +1 -1
  11. package/coverage/lcov-report/nestjs-tools/src/decorators/roles.ts.html +1 -1
  12. package/coverage/lcov-report/nestjs-tools/src/enums/index.html +1 -1
  13. package/coverage/lcov-report/nestjs-tools/src/enums/index.ts.html +1 -1
  14. package/coverage/lcov-report/nestjs-tools/src/enums/user.ts.html +1 -1
  15. package/coverage/lcov-report/nestjs-tools/src/errors.ts.html +1 -1
  16. package/coverage/lcov-report/nestjs-tools/src/filters/all-exception-filter.ts.html +1 -1
  17. package/coverage/lcov-report/nestjs-tools/src/filters/index.html +1 -1
  18. package/coverage/lcov-report/nestjs-tools/src/filters/index.ts.html +1 -1
  19. package/coverage/lcov-report/nestjs-tools/src/http/controllers/index.html +161 -0
  20. package/coverage/lcov-report/nestjs-tools/src/http/controllers/index.ts.html +94 -0
  21. package/coverage/lcov-report/nestjs-tools/src/http/controllers/locales.ts.html +298 -0
  22. package/coverage/lcov-report/nestjs-tools/src/http/controllers/metrics.ts.html +136 -0
  23. package/coverage/lcov-report/nestjs-tools/src/http/controllers/probe.ts.html +139 -0
  24. package/coverage/lcov-report/nestjs-tools/src/http/dto/index.html +131 -0
  25. package/coverage/lcov-report/nestjs-tools/src/http/dto/index.ts.html +88 -0
  26. package/coverage/lcov-report/nestjs-tools/src/http/dto/locales.ts.html +130 -0
  27. package/coverage/lcov-report/nestjs-tools/src/http/index.html +116 -0
  28. package/coverage/lcov-report/nestjs-tools/src/http/index.ts.html +91 -0
  29. package/coverage/lcov-report/nestjs-tools/src/index.html +7 -7
  30. package/coverage/lcov-report/nestjs-tools/src/index.ts.html +7 -4
  31. package/coverage/lcov-report/nestjs-tools/src/interceptors/index.html +1 -1
  32. package/coverage/lcov-report/nestjs-tools/src/interceptors/index.ts.html +1 -1
  33. package/coverage/lcov-report/nestjs-tools/src/interceptors/routes-interceptor.ts.html +1 -1
  34. package/coverage/lcov-report/nestjs-tools/src/middlewares/index.html +1 -1
  35. package/coverage/lcov-report/nestjs-tools/src/middlewares/index.ts.html +1 -1
  36. package/coverage/lcov-report/nestjs-tools/src/middlewares/proxy-middleware.ts.html +1 -1
  37. package/coverage/lcov-report/nestjs-tools/src/middlewares/request-count-middleware.ts.html +1 -1
  38. package/coverage/lcov-report/nestjs-tools/src/middlewares/response-time-middleware.ts.html +1 -1
  39. package/coverage/lcov-report/nestjs-tools/src/providers/auth.ts.html +1 -1
  40. package/coverage/lcov-report/nestjs-tools/src/providers/index.html +1 -1
  41. package/coverage/lcov-report/nestjs-tools/src/providers/index.ts.html +1 -1
  42. package/coverage/lcov-report/nestjs-tools/src/providers/roles.ts.html +1 -1
  43. package/coverage/lcov.info +132 -2
  44. package/dist/src/http/controllers/index.js +20 -0
  45. package/dist/src/http/controllers/index.js.map +1 -0
  46. package/dist/src/http/controllers/locales.js +81 -0
  47. package/dist/src/http/controllers/locales.js.map +1 -0
  48. package/dist/src/http/controllers/metrics.js +38 -0
  49. package/dist/src/http/controllers/metrics.js.map +1 -0
  50. package/dist/src/http/controllers/probe.js +42 -0
  51. package/dist/src/http/controllers/probe.js.map +1 -0
  52. package/dist/src/http/dto/index.js +18 -0
  53. package/dist/src/http/dto/index.js.map +1 -0
  54. package/dist/src/http/dto/locales.js +31 -0
  55. package/dist/src/http/dto/locales.js.map +1 -0
  56. package/dist/src/http/index.js +19 -0
  57. package/dist/src/http/index.js.map +1 -0
  58. package/dist/src/index.js +1 -0
  59. package/dist/src/index.js.map +1 -1
  60. package/dist/tsconfig.build.tsbuildinfo +1 -1
  61. package/index.d.ts +53 -0
  62. package/interfaces.ts +5 -0
  63. package/package.json +2 -2
  64. package/tests/__snapshots__/index.spec.ts.snap +14 -0
  65. package/tests/index.spec.ts +22 -0
  66. package/.nyc_output/13b4cdcb-f9a5-44d3-a56d-78d223c46700.json +0 -1
package/index.d.ts CHANGED
@@ -1,19 +1,38 @@
1
1
  import {
2
2
  ArgumentsHost,
3
+ Body,
3
4
  CallHandler,
4
5
  CanActivate,
5
6
  ExceptionFilter,
6
7
  ExecutionContext,
8
+ Get,
9
+ Header,
7
10
  NestInterceptor,
8
11
  NestMiddleware,
12
+ Param,
13
+ Post,
9
14
  } from '@nestjs/common';
10
15
  import { Request, Response, NextFunction } from 'express';
11
16
  import { Observable } from 'rxjs';
12
17
  import { Options, RequestHandler } from 'http-proxy-middleware/dist/types';
18
+ import { mkdirSync, promises as fs, readFileSync, writeFileSync } from 'fs';
19
+ import { path } from '@biorate/tools';
20
+ import { ApiOperation } from '@nestjs/swagger';
21
+ import { merge } from 'lodash';
22
+ import { inject, Types } from '@biorate/inversion';
23
+ import { IPrometheus } from '@biorate/prometheus';
24
+ import { ILocalesDTO } from './interfaces';
13
25
 
14
26
  export * from './interfaces';
15
27
 
16
28
  declare module '@biorate/nestjs-tools' {
29
+ export class GetLocalesDTO implements ILocalesDTO {
30
+ lang: string;
31
+ namespace: string;
32
+ }
33
+
34
+ export class PostLocalesDTO extends GetLocalesDTO {}
35
+
17
36
  export function AuthBasic(): (
18
37
  target: any,
19
38
  propertyKey?: any,
@@ -60,4 +79,38 @@ declare module '@biorate/nestjs-tools' {
60
79
  export class RolesGuardProvider implements CanActivate {
61
80
  public canActivate(context: ExecutionContext): boolean;
62
81
  }
82
+
83
+ export class LocalesController {
84
+ protected static async getFile(
85
+ namespace: string,
86
+ lang: string,
87
+ ): Record<string, unknown>;
88
+
89
+ protected static getFileSync(
90
+ namespace: string,
91
+ lang: string,
92
+ ): Record<string, unknown>;
93
+
94
+ protected static putFile(
95
+ namespace: string,
96
+ lang: string,
97
+ data: Record<string, string>,
98
+ ): void;
99
+
100
+ protected get(param: GetLocalesDTO): Promise<Record<string, unknown>>;
101
+
102
+ protected post(param: PostLocalesDTO, body: Record<string, string>): Promise<void>;
103
+ }
104
+
105
+ export class MetricsController {
106
+ protected prometheus: IPrometheus;
107
+
108
+ protected metrics(): Promise<string>;
109
+ }
110
+
111
+ export class ProbeController {
112
+ protected readiness(): number;
113
+
114
+ protected healthz(): number;
115
+ }
63
116
  }
package/interfaces.ts CHANGED
@@ -2,3 +2,8 @@ export enum UserRoles {
2
2
  Basic = 1 << 0,
3
3
  Admin = 1 << 1,
4
4
  }
5
+
6
+ export interface ILocalesDTO {
7
+ lang: string;
8
+ namespace: string;
9
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@biorate/nestjs-tools",
3
- "version": "1.31.2",
3
+ "version": "1.37.0",
4
4
  "description": "NestJS tools",
5
5
  "main": "dist",
6
6
  "scripts": {
@@ -41,5 +41,5 @@
41
41
  "@types/express": "^4.17.17",
42
42
  "@types/ws": "^8.5.4"
43
43
  },
44
- "gitHead": "1f8e4136be3a0c6edd995a1ccbee643aafc60d56"
44
+ "gitHead": "4bd0383310db3b89cafe084f6cac15c54ea1f1c5"
45
45
  }
@@ -6,8 +6,20 @@ exports[`nestjs-tools AuthBasic 1`] = `[Function]`;
6
6
 
7
7
  exports[`nestjs-tools AuthGuardProvider 1`] = `[Function]`;
8
8
 
9
+ exports[`nestjs-tools GetLocalesDTO 1`] = `[Function]`;
10
+
11
+ exports[`nestjs-tools LocalesController 1`] = `[Function]`;
12
+
13
+ exports[`nestjs-tools MetricsController 1`] = `[Function]`;
14
+
15
+ exports[`nestjs-tools PostLocalesDTO 1`] = `[Function]`;
16
+
17
+ exports[`nestjs-tools ProbeController 1`] = `[Function]`;
18
+
9
19
  exports[`nestjs-tools ProxyPrometheusMiddleware 1`] = `[Function]`;
10
20
 
21
+ exports[`nestjs-tools ROLES_KEY 1`] = `Symbol(RolesKey)`;
22
+
11
23
  exports[`nestjs-tools RequestCountMiddleware 1`] = `[Function]`;
12
24
 
13
25
  exports[`nestjs-tools ResponseTimeMiddleware 1`] = `[Function]`;
@@ -18,6 +30,8 @@ exports[`nestjs-tools RolesGuardProvider 1`] = `[Function]`;
18
30
 
19
31
  exports[`nestjs-tools RoutesInterceptor 1`] = `[Function]`;
20
32
 
33
+ exports[`nestjs-tools UnsupportedProtocolError 1`] = `[Function]`;
34
+
21
35
  exports[`nestjs-tools UserRoles 1`] = `
22
36
  Object {
23
37
  "1": "Basic",
@@ -11,6 +11,13 @@ import {
11
11
  ResponseTimeMiddleware,
12
12
  AuthGuardProvider,
13
13
  RolesGuardProvider,
14
+ LocalesController,
15
+ MetricsController,
16
+ ProbeController,
17
+ PostLocalesDTO,
18
+ GetLocalesDTO,
19
+ UnsupportedProtocolError,
20
+ ROLES_KEY,
14
21
  } from '../src';
15
22
 
16
23
  use(jestSnapshotPlugin());
@@ -36,4 +43,19 @@ describe('nestjs-tools', () => {
36
43
  it('AuthGuardProvider', () => expect(AuthGuardProvider).toMatchSnapshot());
37
44
 
38
45
  it('RolesGuardProvider', () => expect(RolesGuardProvider).toMatchSnapshot());
46
+
47
+ it('LocalesController', () => expect(LocalesController).toMatchSnapshot());
48
+
49
+ it('MetricsController', () => expect(MetricsController).toMatchSnapshot());
50
+
51
+ it('ProbeController', () => expect(ProbeController).toMatchSnapshot());
52
+
53
+ it('PostLocalesDTO', () => expect(PostLocalesDTO).toMatchSnapshot());
54
+
55
+ it('GetLocalesDTO', () => expect(GetLocalesDTO).toMatchSnapshot());
56
+
57
+ it('UnsupportedProtocolError', () =>
58
+ expect(UnsupportedProtocolError).toMatchSnapshot());
59
+
60
+ it('ROLES_KEY', () => expect(ROLES_KEY).toMatchSnapshot());
39
61
  });