@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.
- package/DEVELOPER.md +62 -0
- package/DOCKER.md +295 -0
- package/compose.lib.dev.yml +9 -0
- package/compose.lib.yml +8 -0
- package/dist/src/app.module.d.ts +2 -1
- package/dist/src/app.module.js +14 -16
- package/dist/src/app.module.js.map +1 -1
- package/dist/src/bootstrap.d.ts +3 -3
- package/dist/src/bootstrap.js +10 -13
- package/dist/src/bootstrap.js.map +1 -1
- package/dist/src/cloudcmd/cloudcmd.d.ts +1 -5
- package/dist/src/cloudcmd/cloudcmd.js +15 -9
- package/dist/src/cloudcmd/cloudcmd.js.map +1 -1
- package/dist/src/enums/config-mode.enum.d.ts +4 -0
- package/dist/src/enums/config-mode.enum.js +6 -0
- package/dist/src/enums/config-mode.enum.js.map +1 -0
- package/dist/src/files/files-service.factory.d.ts +5 -0
- package/dist/src/files/files-service.factory.js +22 -0
- package/dist/src/files/files-service.factory.js.map +1 -0
- package/dist/src/files/files.module.d.ts +2 -1
- package/dist/src/files/files.module.js +23 -9
- package/dist/src/files/files.module.js.map +1 -1
- package/dist/src/files/files.resolver.d.ts +8 -0
- package/dist/src/files/{resolvers/files.resolver.js → files.resolver.js} +14 -14
- package/dist/src/files/files.resolver.js.map +1 -0
- package/dist/src/files/git/git-files.module.d.ts +2 -0
- package/dist/src/files/git/git-files.module.js +18 -0
- package/dist/src/files/git/git-files.module.js.map +1 -0
- package/dist/src/files/git/git-files.service.d.ts +9 -0
- package/dist/src/files/git/git-files.service.js +29 -0
- package/dist/src/files/git/git-files.service.js.map +1 -0
- package/dist/src/files/interfaces/files.service.interface.d.ts +6 -3
- package/dist/src/files/interfaces/files.service.interface.js +1 -2
- package/dist/src/files/interfaces/files.service.interface.js.map +1 -1
- package/dist/src/files/local/local-files.module.d.ts +2 -0
- package/dist/src/files/local/local-files.module.js +18 -0
- package/dist/src/files/local/local-files.module.js.map +1 -0
- package/dist/src/files/local/local-files.service.d.ts +14 -0
- package/dist/src/files/{services → local}/local-files.service.js +17 -15
- package/dist/src/files/local/local-files.service.js.map +1 -0
- package/dist/src/main.js +4 -6
- package/dist/src/main.js.map +1 -1
- package/dist/src/types.d.ts +19 -19
- package/dist/src/types.js +56 -59
- package/dist/src/types.js.map +1 -1
- package/dist/test/cloudcmd/cloudcmd.spec.js +14 -16
- package/dist/test/cloudcmd/cloudcmd.spec.js.map +1 -1
- package/dist/test/e2e/app.e2e.spec.js +18 -18
- package/dist/test/e2e/app.e2e.spec.js.map +1 -1
- package/dist/test/integration/files.service.integration.spec.js +28 -19
- package/dist/test/integration/files.service.integration.spec.js.map +1 -1
- package/dist/test/testUtil.d.ts +66 -68
- package/dist/test/testUtil.js +18 -23
- package/dist/test/testUtil.js.map +1 -1
- package/dist/test/unit/files-service.factory.unit.spec.js +17 -16
- package/dist/test/unit/files-service.factory.unit.spec.js.map +1 -1
- package/dist/test/unit/files.resolver.unit.spec.js +26 -24
- package/dist/test/unit/files.resolver.unit.spec.js.map +1 -1
- package/dist/test/unit/local-files.service.unit.spec.js +23 -24
- package/dist/test/unit/local-files.service.unit.spec.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/eslint.config.js +60 -0
- package/jest.config.ts +47 -0
- package/package.json +54 -48
- package/src/app.module.ts +1 -1
- package/src/bootstrap.ts +3 -3
- package/src/cloudcmd/cloudcmd.ts +11 -3
- package/src/enums/config-mode.enum.ts +4 -0
- package/src/files/files-service.factory.ts +19 -0
- package/src/files/files.module.ts +24 -4
- package/src/files/{resolvers/files.resolver.ts → files.resolver.ts} +9 -8
- package/src/files/git/git-files.module.ts +8 -0
- package/src/files/git/git-files.service.ts +20 -0
- package/src/files/interfaces/files.service.interface.ts +4 -1
- package/src/files/local/local-files.module.ts +8 -0
- package/src/files/{services → local}/local-files.service.ts +15 -10
- package/src/main.ts +1 -1
- package/test/cloudcmd/cloudcmd.spec.ts +4 -6
- package/test/e2e/app.e2e.spec.ts +4 -3
- package/test/integration/files.service.integration.spec.ts +19 -4
- package/test/unit/files-service.factory.unit.spec.ts +18 -11
- package/test/unit/files.resolver.unit.spec.ts +19 -12
- package/test/unit/local-files.service.unit.spec.ts +4 -2
- package/tsconfig.json +10 -7
- package/.env +0 -6
- package/.eslintignore +0 -6
- package/.eslintrc +0 -53
- package/coverage/clover.xml +0 -162
- package/coverage/cobertura-coverage.xml +0 -306
- package/coverage/coverage-final.json +0 -8
- package/coverage/lcov-report/base.css +0 -224
- package/coverage/lcov-report/block-navigation.js +0 -87
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +0 -176
- package/coverage/lcov-report/prettify.css +0 -1
- package/coverage/lcov-report/prettify.js +0 -2
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +0 -196
- package/coverage/lcov-report/src/bootstrap.ts.html +0 -196
- package/coverage/lcov-report/src/cloudcmd/cloudcmd.ts.html +0 -181
- package/coverage/lcov-report/src/cloudcmd/index.html +0 -116
- package/coverage/lcov-report/src/files/files.module.ts.html +0 -112
- package/coverage/lcov-report/src/files/index.html +0 -116
- package/coverage/lcov-report/src/files/resolvers/files.resolver.ts.html +0 -154
- package/coverage/lcov-report/src/files/resolvers/index.html +0 -116
- package/coverage/lcov-report/src/files/services/files-service.factory.ts.html +0 -151
- package/coverage/lcov-report/src/files/services/index.html +0 -131
- package/coverage/lcov-report/src/files/services/local-files.service.ts.html +0 -313
- package/coverage/lcov-report/src/index.html +0 -131
- package/coverage/lcov-report/src/types.ts.html +0 -361
- package/coverage/lcov.info +0 -237
- package/dist/src/files/resolvers/files.resolver.d.ts +0 -8
- package/dist/src/files/resolvers/files.resolver.js.map +0 -1
- package/dist/src/files/services/files-service.factory.d.ts +0 -12
- package/dist/src/files/services/files-service.factory.js +0 -40
- package/dist/src/files/services/files-service.factory.js.map +0 -1
- package/dist/src/files/services/local-files.service.d.ts +0 -11
- package/dist/src/files/services/local-files.service.js.map +0 -1
- package/jest.config.json +0 -30
- package/src/files/services/files-service.factory.ts +0 -22
- /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
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
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
|
-
|
|
17
|
-
|
|
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
|
-
|
|
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":"
|
|
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
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
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(
|
|
21
|
-
this.filesService =
|
|
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
|
-
|
|
32
|
-
__param(0,
|
|
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
|
-
|
|
39
|
-
__param(0,
|
|
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
|
-
|
|
46
|
-
|
|
44
|
+
Resolver(),
|
|
45
|
+
__param(0, Inject(FILE_SERVICE)),
|
|
46
|
+
__metadata("design:paramtypes", [Object])
|
|
47
47
|
], FilesResolver);
|
|
48
|
-
|
|
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,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 {
|
|
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
|
-
|
|
4
|
-
|
|
5
|
+
listDirectory(path: string): Promise<Project>;
|
|
6
|
+
readFile(path: string): Promise<Project>;
|
|
7
|
+
getMode(): CONFIG_MODE;
|
|
5
8
|
}
|
|
@@ -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,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
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
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
|
|
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
|
|
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
|
|
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(
|
|
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
|
-
|
|
74
|
-
__metadata("design:paramtypes", [
|
|
75
|
+
Injectable(),
|
|
76
|
+
__metadata("design:paramtypes", [ConfigService])
|
|
75
77
|
], LocalFilesService);
|
|
76
|
-
|
|
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
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
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
|
-
(
|
|
13
|
+
bootstrap({
|
|
16
14
|
config: options.config,
|
|
17
15
|
httpServer: options.http,
|
|
18
16
|
runHelp: () => program.help(),
|
package/dist/src/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"
|
|
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"}
|
package/dist/src/types.d.ts
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
1
|
export declare class Blob {
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
name: string;
|
|
3
|
+
type: string;
|
|
4
4
|
}
|
|
5
5
|
export declare class BlobEdge {
|
|
6
|
-
|
|
6
|
+
node: Blob;
|
|
7
7
|
}
|
|
8
8
|
export declare class BlobConnection {
|
|
9
|
-
|
|
9
|
+
edges: BlobEdge[];
|
|
10
10
|
}
|
|
11
11
|
export declare class TreeEntry {
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
name: string;
|
|
13
|
+
type: string;
|
|
14
14
|
}
|
|
15
15
|
export declare class TreeEdge {
|
|
16
|
-
|
|
16
|
+
node: TreeEntry;
|
|
17
17
|
}
|
|
18
18
|
export declare class TreeConnection {
|
|
19
|
-
|
|
19
|
+
edges: TreeEdge[];
|
|
20
20
|
}
|
|
21
21
|
export declare class Tree {
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
blobs: BlobConnection;
|
|
23
|
+
trees: TreeConnection;
|
|
24
24
|
}
|
|
25
25
|
export declare class RepositoryBlob {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
name: string;
|
|
27
|
+
rawBlob: string;
|
|
28
|
+
rawTextBlob: string;
|
|
29
29
|
}
|
|
30
30
|
export declare class RepositoryBlobConnection {
|
|
31
|
-
|
|
31
|
+
nodes: RepositoryBlob[];
|
|
32
32
|
}
|
|
33
33
|
export declare class Repository {
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
tree?: Tree;
|
|
35
|
+
blobs?: RepositoryBlobConnection;
|
|
36
36
|
}
|
|
37
37
|
export declare class Project {
|
|
38
|
-
|
|
38
|
+
repository: Repository;
|
|
39
39
|
}
|
|
40
40
|
export declare class Query {
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
listDirectory: Project;
|
|
42
|
+
readFile: Project;
|
|
43
43
|
}
|