@into-cps-association/libms 0.4.5 → 0.4.7

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 (121) hide show
  1. package/DEVELOPER.md +62 -0
  2. package/DOCKER.md +295 -0
  3. package/compose.lib.dev.yml +9 -0
  4. package/compose.lib.yml +8 -0
  5. package/dist/src/app.module.d.ts +2 -1
  6. package/dist/src/app.module.js +14 -16
  7. package/dist/src/app.module.js.map +1 -1
  8. package/dist/src/bootstrap.d.ts +3 -3
  9. package/dist/src/bootstrap.js +10 -13
  10. package/dist/src/bootstrap.js.map +1 -1
  11. package/dist/src/cloudcmd/cloudcmd.d.ts +1 -5
  12. package/dist/src/cloudcmd/cloudcmd.js +15 -9
  13. package/dist/src/cloudcmd/cloudcmd.js.map +1 -1
  14. package/dist/src/enums/config-mode.enum.d.ts +4 -0
  15. package/dist/src/enums/config-mode.enum.js +6 -0
  16. package/dist/src/enums/config-mode.enum.js.map +1 -0
  17. package/dist/src/files/files-service.factory.d.ts +5 -0
  18. package/dist/src/files/files-service.factory.js +22 -0
  19. package/dist/src/files/files-service.factory.js.map +1 -0
  20. package/dist/src/files/files.module.d.ts +2 -1
  21. package/dist/src/files/files.module.js +23 -9
  22. package/dist/src/files/files.module.js.map +1 -1
  23. package/dist/src/files/files.resolver.d.ts +8 -0
  24. package/dist/src/files/{resolvers/files.resolver.js → files.resolver.js} +14 -14
  25. package/dist/src/files/files.resolver.js.map +1 -0
  26. package/dist/src/files/git/git-files.module.d.ts +2 -0
  27. package/dist/src/files/git/git-files.module.js +18 -0
  28. package/dist/src/files/git/git-files.module.js.map +1 -0
  29. package/dist/src/files/git/git-files.service.d.ts +9 -0
  30. package/dist/src/files/git/git-files.service.js +29 -0
  31. package/dist/src/files/git/git-files.service.js.map +1 -0
  32. package/dist/src/files/interfaces/files.service.interface.d.ts +6 -3
  33. package/dist/src/files/interfaces/files.service.interface.js +1 -2
  34. package/dist/src/files/interfaces/files.service.interface.js.map +1 -1
  35. package/dist/src/files/local/local-files.module.d.ts +2 -0
  36. package/dist/src/files/local/local-files.module.js +18 -0
  37. package/dist/src/files/local/local-files.module.js.map +1 -0
  38. package/dist/src/files/local/local-files.service.d.ts +14 -0
  39. package/dist/src/files/{services → local}/local-files.service.js +17 -15
  40. package/dist/src/files/local/local-files.service.js.map +1 -0
  41. package/dist/src/main.js +4 -6
  42. package/dist/src/main.js.map +1 -1
  43. package/dist/src/types.d.ts +19 -19
  44. package/dist/src/types.js +56 -59
  45. package/dist/src/types.js.map +1 -1
  46. package/dist/test/cloudcmd/cloudcmd.spec.js +14 -16
  47. package/dist/test/cloudcmd/cloudcmd.spec.js.map +1 -1
  48. package/dist/test/e2e/app.e2e.spec.js +18 -18
  49. package/dist/test/e2e/app.e2e.spec.js.map +1 -1
  50. package/dist/test/integration/files.service.integration.spec.js +28 -19
  51. package/dist/test/integration/files.service.integration.spec.js.map +1 -1
  52. package/dist/test/testUtil.d.ts +66 -68
  53. package/dist/test/testUtil.js +18 -23
  54. package/dist/test/testUtil.js.map +1 -1
  55. package/dist/test/unit/files-service.factory.unit.spec.js +17 -16
  56. package/dist/test/unit/files-service.factory.unit.spec.js.map +1 -1
  57. package/dist/test/unit/files.resolver.unit.spec.js +26 -24
  58. package/dist/test/unit/files.resolver.unit.spec.js.map +1 -1
  59. package/dist/test/unit/local-files.service.unit.spec.js +23 -24
  60. package/dist/test/unit/local-files.service.unit.spec.js.map +1 -1
  61. package/dist/tsconfig.tsbuildinfo +1 -1
  62. package/eslint.config.js +60 -0
  63. package/jest.config.ts +47 -0
  64. package/package.json +54 -48
  65. package/src/app.module.ts +1 -1
  66. package/src/bootstrap.ts +3 -3
  67. package/src/cloudcmd/cloudcmd.ts +11 -3
  68. package/src/enums/config-mode.enum.ts +4 -0
  69. package/src/files/files-service.factory.ts +19 -0
  70. package/src/files/files.module.ts +24 -4
  71. package/src/files/{resolvers/files.resolver.ts → files.resolver.ts} +9 -8
  72. package/src/files/git/git-files.module.ts +8 -0
  73. package/src/files/git/git-files.service.ts +20 -0
  74. package/src/files/interfaces/files.service.interface.ts +4 -1
  75. package/src/files/local/local-files.module.ts +8 -0
  76. package/src/files/{services → local}/local-files.service.ts +15 -10
  77. package/src/main.ts +1 -1
  78. package/test/cloudcmd/cloudcmd.spec.ts +4 -6
  79. package/test/e2e/app.e2e.spec.ts +4 -3
  80. package/test/integration/files.service.integration.spec.ts +19 -4
  81. package/test/unit/files-service.factory.unit.spec.ts +18 -11
  82. package/test/unit/files.resolver.unit.spec.ts +19 -12
  83. package/test/unit/local-files.service.unit.spec.ts +4 -2
  84. package/tsconfig.json +10 -7
  85. package/.env +0 -6
  86. package/.eslintignore +0 -6
  87. package/.eslintrc +0 -53
  88. package/coverage/clover.xml +0 -162
  89. package/coverage/cobertura-coverage.xml +0 -306
  90. package/coverage/coverage-final.json +0 -8
  91. package/coverage/lcov-report/base.css +0 -224
  92. package/coverage/lcov-report/block-navigation.js +0 -87
  93. package/coverage/lcov-report/favicon.png +0 -0
  94. package/coverage/lcov-report/index.html +0 -176
  95. package/coverage/lcov-report/prettify.css +0 -1
  96. package/coverage/lcov-report/prettify.js +0 -2
  97. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  98. package/coverage/lcov-report/sorter.js +0 -196
  99. package/coverage/lcov-report/src/bootstrap.ts.html +0 -196
  100. package/coverage/lcov-report/src/cloudcmd/cloudcmd.ts.html +0 -181
  101. package/coverage/lcov-report/src/cloudcmd/index.html +0 -116
  102. package/coverage/lcov-report/src/files/files.module.ts.html +0 -112
  103. package/coverage/lcov-report/src/files/index.html +0 -116
  104. package/coverage/lcov-report/src/files/resolvers/files.resolver.ts.html +0 -154
  105. package/coverage/lcov-report/src/files/resolvers/index.html +0 -116
  106. package/coverage/lcov-report/src/files/services/files-service.factory.ts.html +0 -151
  107. package/coverage/lcov-report/src/files/services/index.html +0 -131
  108. package/coverage/lcov-report/src/files/services/local-files.service.ts.html +0 -313
  109. package/coverage/lcov-report/src/index.html +0 -131
  110. package/coverage/lcov-report/src/types.ts.html +0 -361
  111. package/coverage/lcov.info +0 -237
  112. package/dist/src/files/resolvers/files.resolver.d.ts +0 -8
  113. package/dist/src/files/resolvers/files.resolver.js.map +0 -1
  114. package/dist/src/files/services/files-service.factory.d.ts +0 -12
  115. package/dist/src/files/services/files-service.factory.js +0 -40
  116. package/dist/src/files/services/files-service.factory.js.map +0 -1
  117. package/dist/src/files/services/local-files.service.d.ts +0 -11
  118. package/dist/src/files/services/local-files.service.js.map +0 -1
  119. package/jest.config.json +0 -30
  120. package/src/files/services/files-service.factory.ts +0 -22
  121. /package/{pm2.config.js → pm2.config.cjs} +0 -0
@@ -1,21 +1,35 @@
1
- "use strict";
2
1
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
2
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
3
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
4
  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
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
6
  };
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- const common_1 = require("@nestjs/common");
10
- const files_resolver_1 = require("./resolvers/files.resolver");
11
- const files_service_factory_1 = require("./services/files-service.factory");
12
- const local_files_service_1 = require("./services/local-files.service");
7
+ import { Module } from '@nestjs/common';
8
+ import FilesResolver from './files.resolver.js';
9
+ import { GitFilesModule } from './git/git-files.module.js';
10
+ import { LocalFilesModule } from './local/local-files.module.js';
11
+ import LocalFilesService from './local/local-files.service.js';
12
+ import GitFilesService from './git/git-files.service.js';
13
+ import { FILE_SERVICE } from './interfaces/files.service.interface.js';
14
+ import FilesServiceFactory from './files-service.factory.js';
15
+ import { ConfigService } from '@nestjs/config';
13
16
  let FilesModule = class FilesModule {
14
17
  };
15
18
  FilesModule = __decorate([
16
- (0, common_1.Module)({
17
- providers: [files_resolver_1.default, local_files_service_1.default, files_service_factory_1.default],
19
+ Module({
20
+ imports: [LocalFilesModule, GitFilesModule],
21
+ providers: [
22
+ FilesResolver,
23
+ {
24
+ provide: FILE_SERVICE,
25
+ useFactory: (configService, localFilesService, gitFilesService) => {
26
+ const fileServices = [localFilesService, gitFilesService];
27
+ return FilesServiceFactory.create(configService, fileServices);
28
+ },
29
+ inject: [ConfigService, LocalFilesService, GitFilesService],
30
+ },
31
+ ],
18
32
  })
19
33
  ], FilesModule);
20
- exports.default = FilesModule;
34
+ export default FilesModule;
21
35
  //# sourceMappingURL=files.module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"files.module.js","sourceRoot":"","sources":["../../../src/files/files.module.ts"],"names":[],"mappings":";;;;;;;;AAAA,2CAAwC;AACxC,+DAAuD;AACvD,4EAAmE;AACnE,wEAA+D;AAKhD,IAAM,WAAW,GAAjB,MAAM,WAAW;CAAG,CAAA;AAAd,WAAW;IAH/B,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,CAAC,wBAAa,EAAE,6BAAiB,EAAE,+BAAmB,CAAC;KACnE,CAAC;GACmB,WAAW,CAAG;kBAAd,WAAW"}
1
+ {"version":3,"file":"files.module.js","sourceRoot":"","sources":["../../../src/files/files.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,iBAAiB,MAAM,gCAAgC,CAAC;AAC/D,OAAO,eAAe,MAAM,4BAA4B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AACvE,OAAO,mBAAmB,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAoBhC,IAAM,WAAW,GAAjB,MAAM,WAAW;CAAG,CAAA;AAAd,WAAW;IAlB/B,MAAM,CAAC;QACN,OAAO,EAAE,CAAC,gBAAgB,EAAE,cAAc,CAAC;QAC3C,SAAS,EAAE;YACT,aAAa;YACb;gBACE,OAAO,EAAE,YAAY;gBACrB,UAAU,EAAE,CACV,aAA4B,EAC5B,iBAAoC,EACpC,eAAgC,EAChC,EAAE;oBACF,MAAM,YAAY,GAAG,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;oBAC1D,OAAO,mBAAmB,CAAC,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;gBACjE,CAAC;gBACD,MAAM,EAAE,CAAC,aAAa,EAAE,iBAAiB,EAAE,eAAe,CAAC;aAC5D;SACF;KACF,CAAC;GACmB,WAAW,CAAG;eAAd,WAAW"}
@@ -0,0 +1,8 @@
1
+ import { IFilesService } from './interfaces/files.service.interface.js';
2
+ import { Project } from '../types.js';
3
+ export default class FilesResolver {
4
+ private readonly filesService;
5
+ constructor(filesService: IFilesService);
6
+ listDirectory(path: string): Promise<Project>;
7
+ readFile(path: string): Promise<Project>;
8
+ }
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
2
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
3
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -11,14 +10,14 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
10
  var __param = (this && this.__param) || function (paramIndex, decorator) {
12
11
  return function (target, key) { decorator(target, key, paramIndex); }
13
12
  };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- const graphql_1 = require("@nestjs/graphql");
16
- const files_service_factory_1 = require("../services/files-service.factory");
17
- const types_1 = require("../../types");
13
+ import { Resolver, Query, Args } from '@nestjs/graphql';
14
+ import { FILE_SERVICE, } from './interfaces/files.service.interface.js';
15
+ import { Project } from '../types.js';
16
+ import { Inject } from '@nestjs/common';
18
17
  let FilesResolver = class FilesResolver {
19
18
  filesService;
20
- constructor(filesServiceFactory) {
21
- this.filesService = filesServiceFactory.create();
19
+ constructor(filesService) {
20
+ this.filesService = filesService;
22
21
  }
23
22
  async listDirectory(path) {
24
23
  return this.filesService.listDirectory(path);
@@ -28,22 +27,23 @@ let FilesResolver = class FilesResolver {
28
27
  }
29
28
  };
30
29
  __decorate([
31
- (0, graphql_1.Query)(() => types_1.Project),
32
- __param(0, (0, graphql_1.Args)('path')),
30
+ Query(() => Project),
31
+ __param(0, Args('path')),
33
32
  __metadata("design:type", Function),
34
33
  __metadata("design:paramtypes", [String]),
35
34
  __metadata("design:returntype", Promise)
36
35
  ], FilesResolver.prototype, "listDirectory", null);
37
36
  __decorate([
38
- (0, graphql_1.Query)(() => types_1.Project),
39
- __param(0, (0, graphql_1.Args)('path')),
37
+ Query(() => Project),
38
+ __param(0, Args('path')),
40
39
  __metadata("design:type", Function),
41
40
  __metadata("design:paramtypes", [String]),
42
41
  __metadata("design:returntype", Promise)
43
42
  ], FilesResolver.prototype, "readFile", null);
44
43
  FilesResolver = __decorate([
45
- (0, graphql_1.Resolver)(),
46
- __metadata("design:paramtypes", [files_service_factory_1.default])
44
+ Resolver(),
45
+ __param(0, Inject(FILE_SERVICE)),
46
+ __metadata("design:paramtypes", [Object])
47
47
  ], FilesResolver);
48
- exports.default = FilesResolver;
48
+ export default FilesResolver;
49
49
  //# sourceMappingURL=files.resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files.resolver.js","sourceRoot":"","sources":["../../../src/files/files.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EACL,YAAY,GAEb,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAGzB,IAAM,aAAa,GAAnB,MAAM,aAAa;IAES;IADzC,YACyC,YAA2B;QAA3B,iBAAY,GAAZ,YAAY,CAAe;IACjE,CAAC;IAGE,AAAN,KAAK,CAAC,aAAa,CAAe,IAAY;QAC5C,OAAO,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAGK,AAAN,KAAK,CAAC,QAAQ,CAAe,IAAY;QACvC,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CACF,CAAA;AARO;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;IACA,WAAA,IAAI,CAAC,MAAM,CAAC,CAAA;;;;kDAEhC;AAGK;IADL,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC;IACL,WAAA,IAAI,CAAC,MAAM,CAAC,CAAA;;;;6CAE3B;AAbkB,aAAa;IADjC,QAAQ,EAAE;IAGN,WAAA,MAAM,CAAC,YAAY,CAAC,CAAA;;GAFJ,aAAa,CAcjC;eAdoB,aAAa"}
@@ -0,0 +1,2 @@
1
+ export declare class GitFilesModule {
2
+ }
@@ -0,0 +1,18 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { Module } from '@nestjs/common';
8
+ import GitFilesService from './git-files.service.js';
9
+ let GitFilesModule = class GitFilesModule {
10
+ };
11
+ GitFilesModule = __decorate([
12
+ Module({
13
+ providers: [GitFilesService],
14
+ exports: [GitFilesService],
15
+ })
16
+ ], GitFilesModule);
17
+ export { GitFilesModule };
18
+ //# sourceMappingURL=git-files.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-files.module.js","sourceRoot":"","sources":["../../../../src/files/git/git-files.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,eAAe,MAAM,wBAAwB,CAAC;AAM9C,IAAM,cAAc,GAApB,MAAM,cAAc;CAAG,CAAA;AAAjB,cAAc;IAJ1B,MAAM,CAAC;QACN,SAAS,EAAE,CAAC,eAAe,CAAC;QAC5B,OAAO,EAAE,CAAC,eAAe,CAAC;KAC3B,CAAC;GACW,cAAc,CAAG"}
@@ -0,0 +1,9 @@
1
+ import { Project } from 'src/types.js';
2
+ import { IFilesService } from '../interfaces/files.service.interface.js';
3
+ import { CONFIG_MODE } from '../../enums/config-mode.enum.js';
4
+ export default class GitFilesService implements IFilesService {
5
+ constructor();
6
+ getMode(): CONFIG_MODE;
7
+ listDirectory(): Promise<Project>;
8
+ readFile(): Promise<Project>;
9
+ }
@@ -0,0 +1,29 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import { Injectable } from '@nestjs/common';
11
+ import { CONFIG_MODE } from '../../enums/config-mode.enum.js';
12
+ let GitFilesService = class GitFilesService {
13
+ constructor() { }
14
+ getMode() {
15
+ return CONFIG_MODE.GIT;
16
+ }
17
+ listDirectory() {
18
+ throw new Error('Method not implemented.');
19
+ }
20
+ readFile() {
21
+ throw new Error('Method not implemented.');
22
+ }
23
+ };
24
+ GitFilesService = __decorate([
25
+ Injectable(),
26
+ __metadata("design:paramtypes", [])
27
+ ], GitFilesService);
28
+ export default GitFilesService;
29
+ //# sourceMappingURL=git-files.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-files.service.js","sourceRoot":"","sources":["../../../../src/files/git/git-files.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAG/C,IAAM,eAAe,GAArB,MAAM,eAAe;IAElC,gBAAe,CAAC;IAChB,OAAO;QACL,OAAO,WAAW,CAAC,GAAG,CAAC;IACzB,CAAC;IAED,aAAa;QACX,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;IACD,QAAQ;QACN,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IAC7C,CAAC;CACF,CAAA;AAboB,eAAe;IADnC,UAAU,EAAE;;GACQ,eAAe,CAanC;eAboB,eAAe"}
@@ -1,5 +1,8 @@
1
- import { Project } from 'src/types';
1
+ import { CONFIG_MODE } from '../../enums/config-mode.enum.js';
2
+ import { Project } from 'src/types.js';
3
+ export declare const FILE_SERVICE = "FILE_SERVICE";
2
4
  export interface IFilesService {
3
- listDirectory(path: string): Promise<Project>;
4
- readFile(path: string): Promise<Project>;
5
+ listDirectory(path: string): Promise<Project>;
6
+ readFile(path: string): Promise<Project>;
7
+ getMode(): CONFIG_MODE;
5
8
  }
@@ -1,3 +1,2 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ export const FILE_SERVICE = 'FILE_SERVICE';
3
2
  //# sourceMappingURL=files.service.interface.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"files.service.interface.js","sourceRoot":"","sources":["../../../../src/files/interfaces/files.service.interface.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"files.service.interface.js","sourceRoot":"","sources":["../../../../src/files/interfaces/files.service.interface.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare class LocalFilesModule {
2
+ }
@@ -0,0 +1,18 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ 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;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { Module } from '@nestjs/common';
8
+ import LocalFilesService from './local-files.service.js';
9
+ let LocalFilesModule = class LocalFilesModule {
10
+ };
11
+ LocalFilesModule = __decorate([
12
+ Module({
13
+ providers: [LocalFilesService],
14
+ exports: [LocalFilesService],
15
+ })
16
+ ], LocalFilesModule);
17
+ export { LocalFilesModule };
18
+ //# sourceMappingURL=local-files.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-files.module.js","sourceRoot":"","sources":["../../../../src/files/local/local-files.module.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,iBAAiB,MAAM,0BAA0B,CAAC;AAMlD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;CAAG,CAAA;AAAnB,gBAAgB;IAJ5B,MAAM,CAAC;QACN,SAAS,EAAE,CAAC,iBAAiB,CAAC;QAC9B,OAAO,EAAE,CAAC,iBAAiB,CAAC;KAC7B,CAAC;GACW,gBAAgB,CAAG"}
@@ -0,0 +1,14 @@
1
+ import { ConfigService } from '@nestjs/config';
2
+ import { Project } from 'src/types.js';
3
+ import { IFilesService } from '../interfaces/files.service.interface.js';
4
+ import { CONFIG_MODE } from '../../enums/config-mode.enum.js';
5
+ export default class LocalFilesService implements IFilesService {
6
+ private configService;
7
+ private readonly dataPath;
8
+ constructor(configService: ConfigService);
9
+ getMode(): CONFIG_MODE;
10
+ listDirectory(path: string): Promise<Project>;
11
+ readFile(path: string): Promise<Project>;
12
+ private static getFileStats;
13
+ private static formatResponse;
14
+ }
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
2
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
3
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -9,19 +8,23 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
9
  };
11
10
  var LocalFilesService_1;
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- const common_1 = require("@nestjs/common");
14
- const fs = require("fs");
15
- const path_1 = require("path");
16
- const config_1 = require("@nestjs/config");
11
+ import { Injectable, InternalServerErrorException } from '@nestjs/common';
12
+ import * as fs from 'fs';
13
+ import { join } from 'path';
14
+ import { ConfigService } from '@nestjs/config';
15
+ import { CONFIG_MODE } from '../../enums/config-mode.enum.js';
17
16
  let LocalFilesService = LocalFilesService_1 = class LocalFilesService {
18
17
  configService;
18
+ dataPath;
19
19
  constructor(configService) {
20
20
  this.configService = configService;
21
+ this.dataPath = this.configService.get('LOCAL_PATH');
22
+ }
23
+ getMode() {
24
+ return CONFIG_MODE.LOCAL;
21
25
  }
22
26
  async listDirectory(path) {
23
- const dataPath = this.configService.get('LOCAL_PATH');
24
- const fullPath = (0, path_1.join)(dataPath, path);
27
+ const fullPath = join(this.dataPath, path);
25
28
  const files = await fs.promises.readdir(fullPath);
26
29
  const edges = await Promise.all(files.map((file) => LocalFilesService_1.getFileStats(fullPath, file)));
27
30
  const tree = {
@@ -35,19 +38,18 @@ let LocalFilesService = LocalFilesService_1 = class LocalFilesService {
35
38
  return { repository: { tree } };
36
39
  }
37
40
  async readFile(path) {
38
- const dataPath = this.configService.get('LOCAL_PATH');
39
- const fullPath = (0, path_1.join)(dataPath, path);
41
+ const fullPath = join(this.dataPath, path);
40
42
  try {
41
43
  const content = await (await fs.promises.readFile(fullPath, 'utf8')).trim();
42
44
  const name = path.split('/').pop();
43
45
  return LocalFilesService_1.formatResponse(name, content);
44
46
  }
45
47
  catch (error) {
46
- throw new common_1.InternalServerErrorException('Error reading file');
48
+ throw new InternalServerErrorException('Error reading file', error);
47
49
  }
48
50
  }
49
51
  static async getFileStats(fullPath, file) {
50
- const stats = await fs.promises.lstat((0, path_1.join)(fullPath, file));
52
+ const stats = await fs.promises.lstat(join(fullPath, file));
51
53
  if (stats.isDirectory()) {
52
54
  return { node: { name: file, type: 'tree' } };
53
55
  }
@@ -70,8 +72,8 @@ let LocalFilesService = LocalFilesService_1 = class LocalFilesService {
70
72
  }
71
73
  };
72
74
  LocalFilesService = LocalFilesService_1 = __decorate([
73
- (0, common_1.Injectable)(),
74
- __metadata("design:paramtypes", [config_1.ConfigService])
75
+ Injectable(),
76
+ __metadata("design:paramtypes", [ConfigService])
75
77
  ], LocalFilesService);
76
- exports.default = LocalFilesService;
78
+ export default LocalFilesService;
77
79
  //# sourceMappingURL=local-files.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-files.service.js","sourceRoot":"","sources":["../../../../src/files/local/local-files.service.ts"],"names":[],"mappings":"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"}
package/dist/src/main.js CHANGED
@@ -1,9 +1,7 @@
1
1
  #!/usr/bin/env node
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- const commander_1 = require("commander");
5
- const bootstrap_1 = require("./bootstrap");
6
- const program = new commander_1.Command();
2
+ import { Command } from 'commander';
3
+ import bootstrap from './bootstrap.js';
4
+ const program = new Command();
7
5
  program
8
6
  .description('The lib microservice is a file server. It supports file transfer over GraphQL and HTTP protocols.')
9
7
  .option('-c, --config <file>', 'provide the config file (default .env)')
@@ -12,7 +10,7 @@ program
12
10
  .showHelpAfterError();
13
11
  program.parse(process.argv);
14
12
  const options = program.opts();
15
- (0, bootstrap_1.default)({
13
+ bootstrap({
16
14
  config: options.config,
17
15
  httpServer: options.http,
18
16
  runHelp: () => program.help(),
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";;;AACA,yCAAoC;AACpC,2CAAoC;AAOpC,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,WAAW,CACV,mGAAmG,CACpG;KACA,MAAM,CAAC,qBAAqB,EAAE,wCAAwC,CAAC;KACvE,MAAM,CACL,mBAAmB,EACnB,kDAAkD,CACnD;KACA,UAAU,CAAC,YAAY,EAAE,wBAAwB,CAAC;KAClD,kBAAkB,EAAE,CAAC;AAExB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAE5B,MAAM,OAAO,GAAmB,OAAO,CAAC,IAAI,EAAE,CAAC;AAE/C,IAAA,mBAAS,EAAC;IACR,MAAM,EAAE,OAAO,CAAC,MAAM;IACtB,UAAU,EAAE,OAAO,CAAC,IAAI;IACxB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE;CAC9B,CAAC,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AAOvC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,WAAW,CACV,mGAAmG,CACpG;KACA,MAAM,CAAC,qBAAqB,EAAE,wCAAwC,CAAC;KACvE,MAAM,CACL,mBAAmB,EACnB,kDAAkD,CACnD;KACA,UAAU,CAAC,YAAY,EAAE,wBAAwB,CAAC;KAClD,kBAAkB,EAAE,CAAC;AAExB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAE5B,MAAM,OAAO,GAAmB,OAAO,CAAC,IAAI,EAAE,CAAC;AAE/C,SAAS,CAAC;IACR,MAAM,EAAE,OAAO,CAAC,MAAM;IACtB,UAAU,EAAE,OAAO,CAAC,IAAI;IACxB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE;CAC9B,CAAC,CAAC"}
@@ -1,43 +1,43 @@
1
1
  export declare class Blob {
2
- name: string;
3
- type: string;
2
+ name: string;
3
+ type: string;
4
4
  }
5
5
  export declare class BlobEdge {
6
- node: Blob;
6
+ node: Blob;
7
7
  }
8
8
  export declare class BlobConnection {
9
- edges: BlobEdge[];
9
+ edges: BlobEdge[];
10
10
  }
11
11
  export declare class TreeEntry {
12
- name: string;
13
- type: string;
12
+ name: string;
13
+ type: string;
14
14
  }
15
15
  export declare class TreeEdge {
16
- node: TreeEntry;
16
+ node: TreeEntry;
17
17
  }
18
18
  export declare class TreeConnection {
19
- edges: TreeEdge[];
19
+ edges: TreeEdge[];
20
20
  }
21
21
  export declare class Tree {
22
- blobs: BlobConnection;
23
- trees: TreeConnection;
22
+ blobs: BlobConnection;
23
+ trees: TreeConnection;
24
24
  }
25
25
  export declare class RepositoryBlob {
26
- name: string;
27
- rawBlob: string;
28
- rawTextBlob: string;
26
+ name: string;
27
+ rawBlob: string;
28
+ rawTextBlob: string;
29
29
  }
30
30
  export declare class RepositoryBlobConnection {
31
- nodes: RepositoryBlob[];
31
+ nodes: RepositoryBlob[];
32
32
  }
33
33
  export declare class Repository {
34
- tree?: Tree;
35
- blobs?: RepositoryBlobConnection;
34
+ tree?: Tree;
35
+ blobs?: RepositoryBlobConnection;
36
36
  }
37
37
  export declare class Project {
38
- repository: Repository;
38
+ repository: Repository;
39
39
  }
40
40
  export declare class Query {
41
- listDirectory: Project;
42
- readFile: Project;
41
+ listDirectory: Project;
42
+ readFile: Project;
43
43
  }