@gaias/basenode 0.0.1
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/.dockerignore +12 -0
- package/.drone.yml +54 -0
- package/.eslintignore +4 -0
- package/.ncurc.json +8 -0
- package/Dockerfile +15 -0
- package/README.adoc +44 -0
- package/README.md +47 -0
- package/dist/deps/Libs.d.ts +10 -0
- package/dist/deps/Libs.js +46 -0
- package/dist/deps/Libs.js.map +1 -0
- package/dist/deps/index.d.ts +1 -0
- package/dist/deps/index.js +18 -0
- package/dist/deps/index.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.js +21 -0
- package/dist/index.js.map +1 -0
- package/dist/libs/ApiGatewayLoader.d.ts +3 -0
- package/dist/libs/ApiGatewayLoader.js +82 -0
- package/dist/libs/ApiGatewayLoader.js.map +1 -0
- package/dist/libs/ApiRegisterController.d.ts +12 -0
- package/dist/libs/ApiRegisterController.js +245 -0
- package/dist/libs/ApiRegisterController.js.map +1 -0
- package/dist/libs/ApplicationConfig.d.ts +12 -0
- package/dist/libs/ApplicationConfig.js +3 -0
- package/dist/libs/ApplicationConfig.js.map +1 -0
- package/dist/libs/BizError.d.ts +8 -0
- package/dist/libs/BizError.js +14 -0
- package/dist/libs/BizError.js.map +1 -0
- package/dist/libs/CacheService.d.ts +57 -0
- package/dist/libs/CacheService.js +309 -0
- package/dist/libs/CacheService.js.map +1 -0
- package/dist/libs/ConfigManager.d.ts +19 -0
- package/dist/libs/ConfigManager.js +52 -0
- package/dist/libs/ConfigManager.js.map +1 -0
- package/dist/libs/Converter.d.ts +32 -0
- package/dist/libs/Converter.js +148 -0
- package/dist/libs/Converter.js.map +1 -0
- package/dist/libs/CurrentUserToken.d.ts +7 -0
- package/dist/libs/CurrentUserToken.js +3 -0
- package/dist/libs/CurrentUserToken.js.map +1 -0
- package/dist/libs/DistributedEvents.d.ts +13 -0
- package/dist/libs/DistributedEvents.js +102 -0
- package/dist/libs/DistributedEvents.js.map +1 -0
- package/dist/libs/DistributedEventsLoader.d.ts +6 -0
- package/dist/libs/DistributedEventsLoader.js +30 -0
- package/dist/libs/DistributedEventsLoader.js.map +1 -0
- package/dist/libs/EventsManager.d.ts +16 -0
- package/dist/libs/EventsManager.js +56 -0
- package/dist/libs/EventsManager.js.map +1 -0
- package/dist/libs/HealthCheckController.d.ts +24 -0
- package/dist/libs/HealthCheckController.js +83 -0
- package/dist/libs/HealthCheckController.js.map +1 -0
- package/dist/libs/HttpMethods.d.ts +8 -0
- package/dist/libs/HttpMethods.js +80 -0
- package/dist/libs/HttpMethods.js.map +1 -0
- package/dist/libs/IdGenerator.d.ts +1 -0
- package/dist/libs/IdGenerator.js +7 -0
- package/dist/libs/IdGenerator.js.map +1 -0
- package/dist/libs/KoaControllerReturnHandler.d.ts +6 -0
- package/dist/libs/KoaControllerReturnHandler.js +83 -0
- package/dist/libs/KoaControllerReturnHandler.js.map +1 -0
- package/dist/libs/KoaLoader.d.ts +20 -0
- package/dist/libs/KoaLoader.js +177 -0
- package/dist/libs/KoaLoader.js.map +1 -0
- package/dist/libs/Leader.d.ts +39 -0
- package/dist/libs/Leader.js +145 -0
- package/dist/libs/Leader.js.map +1 -0
- package/dist/libs/Logger.d.ts +8 -0
- package/dist/libs/Logger.js +48 -0
- package/dist/libs/Logger.js.map +1 -0
- package/dist/libs/Pagination.d.ts +23 -0
- package/dist/libs/Pagination.js +120 -0
- package/dist/libs/Pagination.js.map +1 -0
- package/dist/libs/RedisClient.d.ts +15 -0
- package/dist/libs/RedisClient.js +84 -0
- package/dist/libs/RedisClient.js.map +1 -0
- package/dist/libs/RedisLoader.d.ts +3 -0
- package/dist/libs/RedisLoader.js +31 -0
- package/dist/libs/RedisLoader.js.map +1 -0
- package/dist/libs/ResRegTypes.d.ts +17 -0
- package/dist/libs/ResRegTypes.js +3 -0
- package/dist/libs/ResRegTypes.js.map +1 -0
- package/dist/libs/Timer.d.ts +13 -0
- package/dist/libs/Timer.js +62 -0
- package/dist/libs/Timer.js.map +1 -0
- package/dist/libs/TypeormLoader.d.ts +8 -0
- package/dist/libs/TypeormLoader.js +49 -0
- package/dist/libs/TypeormLoader.js.map +1 -0
- package/dist/libs/ValidationHelper.d.ts +13 -0
- package/dist/libs/ValidationHelper.js +73 -0
- package/dist/libs/ValidationHelper.js.map +1 -0
- package/dist/libs/apisix/ApisixTemplate.d.ts +6 -0
- package/dist/libs/apisix/ApisixTemplate.js +88 -0
- package/dist/libs/apisix/ApisixTemplate.js.map +1 -0
- package/dist/libs/apisix/HttpPutter.d.ts +1 -0
- package/dist/libs/apisix/HttpPutter.js +51 -0
- package/dist/libs/apisix/HttpPutter.js.map +1 -0
- package/dist/libs/apisix/index.d.ts +2 -0
- package/dist/libs/apisix/index.js +19 -0
- package/dist/libs/apisix/index.js.map +1 -0
- package/dist/libs/i18nValidator.d.ts +3 -0
- package/dist/libs/i18nValidator.js +38 -0
- package/dist/libs/i18nValidator.js.map +1 -0
- package/dist/libs/index.d.ts +28 -0
- package/dist/libs/index.js +45 -0
- package/dist/libs/index.js.map +1 -0
- package/dist/libs/types.d.ts +3 -0
- package/dist/libs/types.js +3 -0
- package/dist/libs/types.js.map +1 -0
- package/dist/server/bootstrap.d.ts +14 -0
- package/dist/server/bootstrap.js +63 -0
- package/dist/server/bootstrap.js.map +1 -0
- package/dist/server/index.d.ts +1 -0
- package/dist/server/index.js +18 -0
- package/dist/server/index.js.map +1 -0
- package/dist/utils/YamlUtil.d.ts +1 -0
- package/dist/utils/YamlUtil.js +43 -0
- package/dist/utils/YamlUtil.js.map +1 -0
- package/dist/utils/crypto.d.ts +9 -0
- package/dist/utils/crypto.js +34 -0
- package/dist/utils/crypto.js.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.js +21 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/jwtUtil.d.ts +9 -0
- package/dist/utils/jwtUtil.js +41 -0
- package/dist/utils/jwtUtil.js.map +1 -0
- package/dist/utils/transformer.d.ts +9 -0
- package/dist/utils/transformer.js +44 -0
- package/dist/utils/transformer.js.map +1 -0
- package/gen_db.json +7 -0
- package/package.json +127 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export * from './apisix';
|
|
2
|
+
export * from './ApiGatewayLoader';
|
|
3
|
+
export * from './ApiRegisterController';
|
|
4
|
+
export * from './ApplicationConfig';
|
|
5
|
+
export * from './BizError';
|
|
6
|
+
export * from './CacheService';
|
|
7
|
+
export * from './ConfigManager';
|
|
8
|
+
export * from './Converter';
|
|
9
|
+
export * from './CurrentUserToken';
|
|
10
|
+
export * from './DistributedEvents';
|
|
11
|
+
export * from './DistributedEventsLoader';
|
|
12
|
+
export * from './EventsManager';
|
|
13
|
+
export * from './HealthCheckController';
|
|
14
|
+
export * from './HttpMethods';
|
|
15
|
+
export * from './IdGenerator';
|
|
16
|
+
export * from './KoaControllerReturnHandler';
|
|
17
|
+
export * from './KoaLoader';
|
|
18
|
+
export * from './Leader';
|
|
19
|
+
export * from './Logger';
|
|
20
|
+
export * from './Pagination';
|
|
21
|
+
export * from './RedisClient';
|
|
22
|
+
export * from './RedisLoader';
|
|
23
|
+
export * from './ResRegTypes';
|
|
24
|
+
export * from './Timer';
|
|
25
|
+
export * from './TypeormLoader';
|
|
26
|
+
export * from './ValidationHelper';
|
|
27
|
+
export * from './i18nValidator';
|
|
28
|
+
export * from './types';
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./apisix"), exports);
|
|
18
|
+
__exportStar(require("./ApiGatewayLoader"), exports);
|
|
19
|
+
__exportStar(require("./ApiRegisterController"), exports);
|
|
20
|
+
__exportStar(require("./ApplicationConfig"), exports);
|
|
21
|
+
__exportStar(require("./BizError"), exports);
|
|
22
|
+
__exportStar(require("./CacheService"), exports);
|
|
23
|
+
__exportStar(require("./ConfigManager"), exports);
|
|
24
|
+
__exportStar(require("./Converter"), exports);
|
|
25
|
+
__exportStar(require("./CurrentUserToken"), exports);
|
|
26
|
+
__exportStar(require("./DistributedEvents"), exports);
|
|
27
|
+
__exportStar(require("./DistributedEventsLoader"), exports);
|
|
28
|
+
__exportStar(require("./EventsManager"), exports);
|
|
29
|
+
__exportStar(require("./HealthCheckController"), exports);
|
|
30
|
+
__exportStar(require("./HttpMethods"), exports);
|
|
31
|
+
__exportStar(require("./IdGenerator"), exports);
|
|
32
|
+
__exportStar(require("./KoaControllerReturnHandler"), exports);
|
|
33
|
+
__exportStar(require("./KoaLoader"), exports);
|
|
34
|
+
__exportStar(require("./Leader"), exports);
|
|
35
|
+
__exportStar(require("./Logger"), exports);
|
|
36
|
+
__exportStar(require("./Pagination"), exports);
|
|
37
|
+
__exportStar(require("./RedisClient"), exports);
|
|
38
|
+
__exportStar(require("./RedisLoader"), exports);
|
|
39
|
+
__exportStar(require("./ResRegTypes"), exports);
|
|
40
|
+
__exportStar(require("./Timer"), exports);
|
|
41
|
+
__exportStar(require("./TypeormLoader"), exports);
|
|
42
|
+
__exportStar(require("./ValidationHelper"), exports);
|
|
43
|
+
__exportStar(require("./i18nValidator"), exports);
|
|
44
|
+
__exportStar(require("./types"), exports);
|
|
45
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/libs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,2CAAyB;AACzB,qDAAmC;AACnC,0DAAwC;AACxC,sDAAoC;AACpC,6CAA2B;AAC3B,iDAA+B;AAC/B,kDAAgC;AAChC,8CAA4B;AAC5B,qDAAmC;AACnC,sDAAoC;AACpC,4DAA0C;AAC1C,kDAAgC;AAChC,0DAAwC;AACxC,gDAA8B;AAC9B,gDAA8B;AAC9B,+DAA6C;AAC7C,8CAA4B;AAC5B,2CAAyB;AACzB,2CAAyB;AACzB,+CAA6B;AAC7B,gDAA8B;AAC9B,gDAA8B;AAC9B,gDAA8B;AAC9B,0CAAwB;AACxB,kDAAgC;AAChC,qDAAmC;AACnC,kDAAgC;AAChC,0CAAwB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/libs/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Microframework, MicroframeworkSettings } from 'microframework';
|
|
2
|
+
import 'reflect-metadata';
|
|
3
|
+
import { DistributedEventsLoaderOption } from '../libs/DistributedEventsLoader';
|
|
4
|
+
import { KoaLoaderOption } from '../libs/KoaLoader';
|
|
5
|
+
import { RedisLoaderOption } from '../libs/RedisLoader';
|
|
6
|
+
import { TypeormLoaderOption } from '../libs/TypeormLoader';
|
|
7
|
+
export declare type BootstrapLoader = (settings?: MicroframeworkSettings) => Promise<any>;
|
|
8
|
+
export declare type BootstrapOption = KoaLoaderOption & TypeormLoaderOption & RedisLoaderOption & DistributedEventsLoaderOption & {
|
|
9
|
+
disableRedis?: boolean;
|
|
10
|
+
disableDatabase?: boolean;
|
|
11
|
+
disableEvent?: boolean;
|
|
12
|
+
loaders?: BootstrapLoader[];
|
|
13
|
+
};
|
|
14
|
+
export declare const bootstrap: (option: BootstrapOption) => Promise<Microframework>;
|
|
@@ -0,0 +1,63 @@
|
|
|
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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.bootstrap = void 0;
|
|
16
|
+
const internal_ip_1 = __importDefault(require("internal-ip"));
|
|
17
|
+
const microframework_1 = require("microframework");
|
|
18
|
+
require("reflect-metadata");
|
|
19
|
+
const ApiGatewayLoader_1 = require("../libs/ApiGatewayLoader");
|
|
20
|
+
const ConfigManager_1 = require("../libs/ConfigManager");
|
|
21
|
+
const DistributedEventsLoader_1 = require("../libs/DistributedEventsLoader");
|
|
22
|
+
const KoaLoader_1 = require("../libs/KoaLoader");
|
|
23
|
+
const Logger_1 = require("../libs/Logger");
|
|
24
|
+
const RedisLoader_1 = require("../libs/RedisLoader");
|
|
25
|
+
const TypeormLoader_1 = require("../libs/TypeormLoader");
|
|
26
|
+
const settingHolder = {};
|
|
27
|
+
const emptyLoader = () => { };
|
|
28
|
+
const bootstrap = (option) => __awaiter(void 0, void 0, void 0, function* () {
|
|
29
|
+
const logger = Logger_1.Logger.getLogger('Bootstrap');
|
|
30
|
+
const loaders = [
|
|
31
|
+
option.disableDatabase ? emptyLoader : (0, TypeormLoader_1.typeormLoader)(option),
|
|
32
|
+
option.disableRedis ? emptyLoader : (0, RedisLoader_1.redisLoader)(option),
|
|
33
|
+
option.disableEvent ? emptyLoader : (0, DistributedEventsLoader_1.distributedEventsLoader)(option),
|
|
34
|
+
(0, KoaLoader_1.koaLoader)(option),
|
|
35
|
+
(0, ApiGatewayLoader_1.apiGatewayLoader)(option),
|
|
36
|
+
(settings) => {
|
|
37
|
+
settingHolder.setting = settings;
|
|
38
|
+
},
|
|
39
|
+
];
|
|
40
|
+
if (option.loaders) {
|
|
41
|
+
loaders.push(...option.loaders);
|
|
42
|
+
}
|
|
43
|
+
return (0, microframework_1.bootstrapMicroframework)({
|
|
44
|
+
config: {
|
|
45
|
+
showBootstrapTime: ConfigManager_1.ConfigManager.isDevelopment(),
|
|
46
|
+
},
|
|
47
|
+
loaders,
|
|
48
|
+
}).then((mfmk) => __awaiter(void 0, void 0, void 0, function* () {
|
|
49
|
+
mfmk.frameworkSettings = settingHolder.setting;
|
|
50
|
+
const cfg = ConfigManager_1.ConfigManager.getConfig('application');
|
|
51
|
+
const applicationName = cfg.appName;
|
|
52
|
+
const host = ConfigManager_1.ConfigManager.isProduction() ? applicationName : yield internal_ip_1.default.v4();
|
|
53
|
+
ConfigManager_1.ConfigManager.basePath = `http://${host}:${cfg.port}/api/v${cfg.version}/${applicationName}/`;
|
|
54
|
+
logger.info(`🚀Server(${applicationName}/v${cfg.version}/${ConfigManager_1.ConfigManager.getPkgVersion()}/${ConfigManager_1.ConfigManager.getBuildNumber()}) is listening on ${ConfigManager_1.ConfigManager.basePath}`);
|
|
55
|
+
if (option.wsControllers) {
|
|
56
|
+
const wsPath = `http://${host}:${cfg.port}/api/v${cfg.version}/${applicationName}/socket.io`;
|
|
57
|
+
logger.info(`🚀Server(${applicationName}/v${cfg.version}/${ConfigManager_1.ConfigManager.getPkgVersion()}/${ConfigManager_1.ConfigManager.getBuildNumber()}) is listening on ${wsPath}`);
|
|
58
|
+
}
|
|
59
|
+
return mfmk;
|
|
60
|
+
}));
|
|
61
|
+
});
|
|
62
|
+
exports.bootstrap = bootstrap;
|
|
63
|
+
//# sourceMappingURL=bootstrap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../src/server/bootstrap.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,8DAAqC;AACrC,mDAAiG;AACjG,4BAA0B;AAC1B,+DAA4D;AAE5D,yDAAsD;AACtD,6EAAyG;AACzG,iDAA+D;AAC/D,2CAAwC;AACxC,qDAAqE;AACrE,yDAA2E;AAc3E,MAAM,aAAa,GAEf,EAAE,CAAC;AAGP,MAAM,WAAW,GAAG,GAAG,EAAE,GAAE,CAAC,CAAC;AAEtB,MAAM,SAAS,GAAG,CAAO,MAAuB,EAA2B,EAAE;IAClF,MAAM,MAAM,GAAG,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC7C,MAAM,OAAO,GAAG;QACd,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAA,6BAAa,EAAC,MAAM,CAAC;QAC5D,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAA,yBAAW,EAAC,MAAM,CAAC;QACvD,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAA,iDAAuB,EAAC,MAAM,CAAC;QACnE,IAAA,qBAAS,EAAC,MAAM,CAAC;QACjB,IAAA,mCAAgB,EAAC,MAAM,CAAC;QACxB,CAAC,QAAiC,EAAE,EAAE;YACpC,aAAa,CAAC,OAAO,GAAG,QAAQ,CAAC;QACnC,CAAC;KACF,CAAC;IACF,IAAI,MAAM,CAAC,OAAO,EAAE;QAClB,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;KACjC;IACD,OAAO,IAAA,wCAAuB,EAAC;QAC7B,MAAM,EAAE;YACN,iBAAiB,EAAE,6BAAa,CAAC,aAAa,EAAE;SACjD;QACD,OAAO;KACR,CAAC,CAAC,IAAI,CAAC,CAAO,IAAI,EAAE,EAAE;QACpB,IAAY,CAAC,iBAAiB,GAAG,aAAa,CAAC,OAAO,CAAC;QACxD,MAAM,GAAG,GAAG,6BAAa,CAAC,SAAS,CAAoB,aAAa,CAAC,CAAC;QACtE,MAAM,eAAe,GAAG,GAAG,CAAC,OAAO,CAAC;QACpC,MAAM,IAAI,GAAG,6BAAa,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,qBAAU,CAAC,EAAE,EAAE,CAAC;QACpF,6BAAa,CAAC,QAAQ,GAAG,UAAU,IAAI,IAAI,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,OAAO,IAAI,eAAe,GAAG,CAAC;QAC9F,MAAM,CAAC,IAAI,CAAC,YAAY,eAAe,KAAK,GAAG,CAAC,OAAO,IAAI,6BAAa,CAAC,aAAa,EAAE,IAAI,6BAAa,CAAC,cAAc,EAAE,qBAAqB,6BAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzK,IAAI,MAAM,CAAC,aAAa,EAAE;YACxB,MAAM,MAAM,GAAG,UAAU,IAAI,IAAI,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,OAAO,IAAI,eAAe,YAAY,CAAC;YAC7F,MAAM,CAAC,IAAI,CAAC,YAAY,eAAe,KAAK,GAAG,CAAC,OAAO,IAAI,6BAAa,CAAC,aAAa,EAAE,IAAI,6BAAa,CAAC,cAAc,EAAE,qBAAqB,MAAM,EAAE,CAAC,CAAC;SAC1J;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAjCW,QAAA,SAAS,aAiCpB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './bootstrap';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./bootstrap"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,8CAA4B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const loadConfig: (name: string) => any;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.loadConfig = void 0;
|
|
7
|
+
const fs_1 = __importDefault(require("fs"));
|
|
8
|
+
const glob_promise_1 = __importDefault(require("glob-promise"));
|
|
9
|
+
const js_yaml_1 = __importDefault(require("js-yaml"));
|
|
10
|
+
const mergejson = require('mergejson');
|
|
11
|
+
const configFiles = [];
|
|
12
|
+
const find = (path) => {
|
|
13
|
+
return configFiles.find((f) => f === `${path}.yml`);
|
|
14
|
+
};
|
|
15
|
+
const loadConfig = (name) => {
|
|
16
|
+
if (configFiles.length === 0) {
|
|
17
|
+
glob_promise_1.default.sync('./cfg/*.yml').forEach((f) => configFiles.push(f));
|
|
18
|
+
}
|
|
19
|
+
const environment = process.env.NODE_ENV;
|
|
20
|
+
const zone = process.env.DEV_ZONE;
|
|
21
|
+
const envConfigFile = `./cfg/${name}.${environment}`;
|
|
22
|
+
const zoneConfigFile = `./cfg/${name}.${zone}`;
|
|
23
|
+
const configFile = `./cfg/${name}`;
|
|
24
|
+
let cfg = {};
|
|
25
|
+
const envFile = find(envConfigFile);
|
|
26
|
+
if (envFile) {
|
|
27
|
+
const envConfig = js_yaml_1.default.load(fs_1.default.readFileSync(envFile, 'utf8'));
|
|
28
|
+
Object.assign(cfg, envConfig);
|
|
29
|
+
}
|
|
30
|
+
const zoneFile = find(zoneConfigFile);
|
|
31
|
+
if (zoneFile) {
|
|
32
|
+
const zoneConfig = js_yaml_1.default.load(fs_1.default.readFileSync(zoneFile, 'utf8'));
|
|
33
|
+
Object.assign(cfg, zoneConfig);
|
|
34
|
+
}
|
|
35
|
+
const file = find(configFile);
|
|
36
|
+
if (file) {
|
|
37
|
+
const config = js_yaml_1.default.load(fs_1.default.readFileSync(file, 'utf8'));
|
|
38
|
+
cfg = mergejson(cfg, config);
|
|
39
|
+
}
|
|
40
|
+
return cfg;
|
|
41
|
+
};
|
|
42
|
+
exports.loadConfig = loadConfig;
|
|
43
|
+
//# sourceMappingURL=YamlUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"YamlUtil.js","sourceRoot":"","sources":["../../../src/utils/YamlUtil.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gEAAgC;AAChC,sDAA2B;AAG3B,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AACvC,MAAM,WAAW,GAAa,EAAE,CAAC;AAEjC,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE;IAC5B,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,GAAG,IAAI,MAAM,CAAC,CAAC;AACtD,CAAC,CAAC;AAEK,MAAM,UAAU,GAAG,CAAC,IAAY,EAAO,EAAE;IAC9C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5B,sBAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;KAC9D;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IACzC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;IAClC,MAAM,aAAa,GAAG,SAAS,IAAI,IAAI,WAAW,EAAE,CAAC;IACrD,MAAM,cAAc,GAAG,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC;IAC/C,MAAM,UAAU,GAAG,SAAS,IAAI,EAAE,CAAC;IACnC,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;IACpC,IAAI,OAAO,EAAE;QACX,MAAM,SAAS,GAAG,iBAAI,CAAC,IAAI,CAAC,YAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAC9D,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;KAC/B;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;IACtC,IAAI,QAAQ,EAAE;QACZ,MAAM,UAAU,GAAG,iBAAI,CAAC,IAAI,CAAC,YAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;QAChE,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;KAChC;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9B,IAAI,IAAI,EAAE;QACR,MAAM,MAAM,GAAG,iBAAI,CAAC,IAAI,CAAC,YAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACxD,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;KAC9B;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AA3BW,QAAA,UAAU,cA2BrB"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.crypto = void 0;
|
|
4
|
+
const crypto_1 = require("crypto");
|
|
5
|
+
const fs_1 = require("fs");
|
|
6
|
+
const ConfigManager_1 = require("../libs/ConfigManager");
|
|
7
|
+
class FotCrypto {
|
|
8
|
+
md5(input) {
|
|
9
|
+
const md5 = (0, crypto_1.createHash)('md5');
|
|
10
|
+
return md5.update(input).digest('hex');
|
|
11
|
+
}
|
|
12
|
+
sha1Hmac(input) {
|
|
13
|
+
const hmac = (0, crypto_1.createHmac)('sha1', this.privateKey);
|
|
14
|
+
hmac.update(input);
|
|
15
|
+
return hmac.digest('hex');
|
|
16
|
+
}
|
|
17
|
+
get privateKey() {
|
|
18
|
+
const config = ConfigManager_1.ConfigManager.getConfig('application');
|
|
19
|
+
if (!FotCrypto.keyCache.privateKey) {
|
|
20
|
+
FotCrypto.keyCache.privateKey = (0, fs_1.readFileSync)(config.privateKeyPath, 'ascii');
|
|
21
|
+
}
|
|
22
|
+
return FotCrypto.keyCache.privateKey;
|
|
23
|
+
}
|
|
24
|
+
get publicKey() {
|
|
25
|
+
const config = ConfigManager_1.ConfigManager.getConfig('application');
|
|
26
|
+
if (!FotCrypto.keyCache.publicKey) {
|
|
27
|
+
FotCrypto.keyCache.publicKey = (0, fs_1.readFileSync)(config.publicKeyPath, 'ascii');
|
|
28
|
+
}
|
|
29
|
+
return FotCrypto.keyCache.publicKey;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
FotCrypto.keyCache = {};
|
|
33
|
+
exports.crypto = new FotCrypto();
|
|
34
|
+
//# sourceMappingURL=crypto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../../src/utils/crypto.ts"],"names":[],"mappings":";;;AAAA,mCAAgD;AAChD,2BAAkC;AAElC,yDAAsD;AAOtD,MAAM,SAAS;IAGb,GAAG,CAAC,KAAa;QACf,MAAM,GAAG,GAAG,IAAA,mBAAU,EAAC,KAAK,CAAC,CAAC;QAC9B,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IACD,QAAQ,CAAC,KAAa;QACpB,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,IAAI,UAAU;QACZ,MAAM,MAAM,GAAG,6BAAa,CAAC,SAAS,CAAoB,aAAa,CAAC,CAAC;QACzE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE;YAClC,SAAS,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAA,iBAAY,EAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;SAC9E;QACD,OAAO,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;IACvC,CAAC;IACD,IAAI,SAAS;QACX,MAAM,MAAM,GAAG,6BAAa,CAAC,SAAS,CAAoB,aAAa,CAAC,CAAC;QACzE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE;YACjC,SAAS,CAAC,QAAQ,CAAC,SAAS,GAAG,IAAA,iBAAY,EAAC,MAAM,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;SAC5E;QACD,OAAO,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;IACtC,CAAC;;AAzBuB,kBAAQ,GAAa,EAAE,CAAC;AA4BrC,QAAA,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./YamlUtil"), exports);
|
|
18
|
+
__exportStar(require("./crypto"), exports);
|
|
19
|
+
__exportStar(require("./jwtUtil"), exports);
|
|
20
|
+
__exportStar(require("./transformer"), exports);
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,gDAA8B"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import jwt from 'jsonwebtoken';
|
|
2
|
+
declare class JwtUtil {
|
|
3
|
+
issueToken(payload: Record<string, unknown>, options?: jwt.SignOptions): string;
|
|
4
|
+
verifyToken(token: string, options?: jwt.VerifyOptions): Record<string, string>;
|
|
5
|
+
decodeToken(token: string, options?: jwt.DecodeOptions): string | jwt.JwtPayload | null;
|
|
6
|
+
decodeJwt(authorization: string, verify?: boolean, options?: jwt.VerifyOptions): any;
|
|
7
|
+
}
|
|
8
|
+
export declare const jwtUtil: JwtUtil;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.jwtUtil = void 0;
|
|
7
|
+
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
|
|
8
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
9
|
+
const crypto_1 = require("./crypto");
|
|
10
|
+
class JwtUtil {
|
|
11
|
+
issueToken(payload, options = { algorithm: 'RS256' }) {
|
|
12
|
+
const privateKey = crypto_1.crypto.privateKey;
|
|
13
|
+
return jsonwebtoken_1.default.sign(payload, privateKey, options);
|
|
14
|
+
}
|
|
15
|
+
verifyToken(token, options = { algorithms: ['RS256'] }) {
|
|
16
|
+
const publicKey = crypto_1.crypto.publicKey;
|
|
17
|
+
return jsonwebtoken_1.default.verify(token, publicKey, options);
|
|
18
|
+
}
|
|
19
|
+
decodeToken(token, options = { complete: false }) {
|
|
20
|
+
return jsonwebtoken_1.default.decode(token, options);
|
|
21
|
+
}
|
|
22
|
+
decodeJwt(authorization, verify = false, options = { algorithms: ['RS256'] }) {
|
|
23
|
+
const authStr = lodash_1.default.trim(authorization);
|
|
24
|
+
let token;
|
|
25
|
+
let tokenStr = authStr;
|
|
26
|
+
if (authStr.startsWith('Bearer ')) {
|
|
27
|
+
tokenStr = authStr.slice(7, authStr.length);
|
|
28
|
+
}
|
|
29
|
+
if (!lodash_1.default.isNil(tokenStr)) {
|
|
30
|
+
if (verify) {
|
|
31
|
+
token = this.verifyToken(tokenStr, options);
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
token = this.decodeToken(tokenStr);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return token;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
exports.jwtUtil = new JwtUtil();
|
|
41
|
+
//# sourceMappingURL=jwtUtil.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jwtUtil.js","sourceRoot":"","sources":["../../../src/utils/jwtUtil.ts"],"names":[],"mappings":";;;;;;AAAA,gEAA+B;AAC/B,oDAAuB;AACvB,qCAAkC;AAElC,MAAM,OAAO;IACX,UAAU,CAAC,OAAgC,EAAE,UAA2B,EAAE,SAAS,EAAE,OAAO,EAAE;QAC5F,MAAM,UAAU,GAAG,eAAM,CAAC,UAAU,CAAC;QACrC,OAAO,sBAAG,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAED,WAAW,CAAC,KAAa,EAAE,UAA6B,EAAE,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE;QAC/E,MAAM,SAAS,GAAG,eAAM,CAAC,SAAS,CAAC;QACnC,OAAO,sBAAG,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAA2B,CAAC;IACzE,CAAC;IAED,WAAW,CAAC,KAAa,EAAE,UAA6B,EAAE,QAAQ,EAAE,KAAK,EAAE;QACzE,OAAO,sBAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,SAAS,CAAC,aAAqB,EAAE,MAAM,GAAG,KAAK,EAAE,UAA6B,EAAE,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE;QACrG,MAAM,OAAO,GAAG,gBAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACtC,IAAI,KAAU,CAAC;QACf,IAAI,QAAQ,GAAG,OAAO,CAAC;QACvB,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;YAEjC,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;SAC7C;QACD,IAAI,CAAC,gBAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;YACtB,IAAI,MAAM,EAAE;gBACV,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;aAC7C;iBAAM;gBACL,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;aACpC;SACF;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AAEY,QAAA,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ClassType } from '../libs/types';
|
|
2
|
+
export declare function trans<T>(claz: ClassType<T>, obj?: any, groups?: string[]): T;
|
|
3
|
+
export declare function transArray<T>(claz: ClassType<T>, objArray: any[], groups?: string[]): T[];
|
|
4
|
+
export declare function Transform(claz: ClassType, ...groups: string[]): MethodDecorator;
|
|
5
|
+
export declare function TransformArray(claz: ClassType, ...groups: string[]): MethodDecorator;
|
|
6
|
+
export declare function groups(...groups: string[]): {
|
|
7
|
+
groups: string[];
|
|
8
|
+
excludeExtraneousValues: boolean;
|
|
9
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.groups = exports.TransformArray = exports.Transform = exports.transArray = exports.trans = void 0;
|
|
4
|
+
const class_transformer_1 = require("class-transformer");
|
|
5
|
+
function trans(claz, obj, groups = []) {
|
|
6
|
+
return (0, class_transformer_1.plainToInstance)(claz, obj, { excludeExtraneousValues: true, groups });
|
|
7
|
+
}
|
|
8
|
+
exports.trans = trans;
|
|
9
|
+
function transArray(claz, objArray, groups = []) {
|
|
10
|
+
if (Array.isArray(objArray)) {
|
|
11
|
+
return (0, class_transformer_1.plainToInstance)(claz, objArray, { excludeExtraneousValues: true, groups });
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
throw new Error('"transArray" accepts array only!');
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.transArray = transArray;
|
|
18
|
+
function Transform(claz, ...groups) {
|
|
19
|
+
return function (target, propertyKey, descriptor) {
|
|
20
|
+
const originalMethod = descriptor.value;
|
|
21
|
+
descriptor.value = function (...args) {
|
|
22
|
+
const result = originalMethod.apply(this, args);
|
|
23
|
+
const isPromise = !!result && (typeof result === 'object' || typeof result === 'function') && typeof result.then === 'function';
|
|
24
|
+
return isPromise ? result.then((data) => trans(claz, data, groups)) : trans(claz, result, groups);
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
exports.Transform = Transform;
|
|
29
|
+
function TransformArray(claz, ...groups) {
|
|
30
|
+
return function (target, propertyKey, descriptor) {
|
|
31
|
+
const originalMethod = descriptor.value;
|
|
32
|
+
descriptor.value = function (...args) {
|
|
33
|
+
const result = originalMethod.apply(this, args);
|
|
34
|
+
const isPromise = !!result && (typeof result === 'object' || typeof result === 'function') && typeof result.then === 'function';
|
|
35
|
+
return isPromise ? result.then((data) => transArray(claz, data, groups)) : transArray(claz, result, groups);
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
exports.TransformArray = TransformArray;
|
|
40
|
+
function groups(...groups) {
|
|
41
|
+
return { groups, excludeExtraneousValues: true };
|
|
42
|
+
}
|
|
43
|
+
exports.groups = groups;
|
|
44
|
+
//# sourceMappingURL=transformer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transformer.js","sourceRoot":"","sources":["../../../src/utils/transformer.ts"],"names":[],"mappings":";;;AAAA,yDAAoD;AAGpD,SAAgB,KAAK,CAAI,IAAkB,EAAE,GAAS,EAAE,SAAmB,EAAE;IAC3E,OAAO,IAAA,mCAAe,EAAC,IAAI,EAAE,GAAG,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;AAC/E,CAAC;AAFD,sBAEC;AAED,SAAgB,UAAU,CAAI,IAAkB,EAAE,QAAe,EAAE,SAAmB,EAAE;IACtF,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC3B,OAAO,IAAA,mCAAe,EAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,uBAAuB,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;KACnF;SAAM;QACL,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACrD;AACH,CAAC;AAND,gCAMC;AAED,SAAgB,SAAS,CAAC,IAAe,EAAE,GAAG,MAAgB;IAC5D,OAAO,UAAU,MAA2B,EAAE,WAA4B,EAAE,UAA8B;QACxG,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;QAExC,UAAU,CAAC,KAAK,GAAG,UAAU,GAAG,IAAW;YACzC,MAAM,MAAM,GAAQ,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrD,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,CAAC,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC;YAChI,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACzG,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAVD,8BAUC;AAED,SAAgB,cAAc,CAAC,IAAe,EAAE,GAAG,MAAgB;IACjE,OAAO,UAAU,MAA2B,EAAE,WAA4B,EAAE,UAA8B;QACxG,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CAAC;QAExC,UAAU,CAAC,KAAK,GAAG,UAAU,GAAG,IAAW;YACzC,MAAM,MAAM,GAAQ,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrD,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,UAAU,CAAC,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,UAAU,CAAC;YAChI,OAAO,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACnH,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAVD,wCAUC;AAED,SAAgB,MAAM,CAAC,GAAG,MAAgB;IACxC,OAAO,EAAE,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC;AACnD,CAAC;AAFD,wBAEC"}
|
package/gen_db.json
ADDED
package/package.json
ADDED
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@gaias/basenode",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"buildNumber": 200927556,
|
|
5
|
+
"description": "API development framework for NodeJs",
|
|
6
|
+
"author": "FOT",
|
|
7
|
+
"license": "UNLICENSED",
|
|
8
|
+
"main": "dist/index.js",
|
|
9
|
+
"types": "dist/index.d.ts",
|
|
10
|
+
"engines": {
|
|
11
|
+
"node": ">=14.16.x",
|
|
12
|
+
"yarn": ">=1.22.x"
|
|
13
|
+
},
|
|
14
|
+
"scripts": {
|
|
15
|
+
"dev": "cross-env NODE_ENV=development tsc-watch --onSuccess \"node -r tsconfig-paths/register -r source-map-support/register ./temp/example/app.js\"",
|
|
16
|
+
"devPro": "cross-env ENABLE_API_GATEWAY=true API_GATEWAY_HOST_PORT=192.168.52.35:80 DOMAINS=foo.sg,*.foo.sg NODE_ENV=production tsc-watch --onSuccess \"node -r tsconfig-paths/register -r source-map-support/register ./temp/example/app.js\"",
|
|
17
|
+
"upver": "ncu -u && yarn install",
|
|
18
|
+
"gen:idx": "cti create ./src && cti create ./example && rm -f ./example/index.ts ./example/services/index.ts",
|
|
19
|
+
"gen:idx:watch": "nodemon",
|
|
20
|
+
"gen:db-schema": "cross-env NODE_ENV=development ts-node -r tsconfig-paths/register tools/DBSchemaGenerator.ts",
|
|
21
|
+
"gen:db-repo": "cross-env NODE_ENV=development ts-node -r tsconfig-paths/register tools/RepositoryGenerator.ts",
|
|
22
|
+
"gen:db": "cross-env NODE_ENV=development yarn gen:db-schema && yarn gen:db-repo && yarn gen:idx && eslint '*/**/*.ts' --quiet --fix",
|
|
23
|
+
"gen:keys": "openssl genrsa -out ./keys/privateKey.pem 2048 && openssl rsa -in ./keys/privateKey.pem -outform PEM -pubout -out ./keys/publicKey.pem",
|
|
24
|
+
"lint": "tsc --noEmit && eslint '*/**/*.ts' --quiet --fix",
|
|
25
|
+
"prepublish": "yarn gen:idx && rimraf dist && mkdir dist && tsc && mv temp/src/* dist/ && rimraf temp",
|
|
26
|
+
"prepare": "husky install"
|
|
27
|
+
},
|
|
28
|
+
"devDependencies": {
|
|
29
|
+
"@types/faker": "^5.5.9",
|
|
30
|
+
"@types/jest": "^27.0.2",
|
|
31
|
+
"@types/koa-bodyparser": "^4.3.4",
|
|
32
|
+
"@types/koa-favicon": "^2.0.21",
|
|
33
|
+
"@types/koa-helmet": "^6.0.4",
|
|
34
|
+
"@types/koa-json": "^2.0.20",
|
|
35
|
+
"@types/koa-logger": "^3.1.2",
|
|
36
|
+
"@types/koa-router": "^7.4.4",
|
|
37
|
+
"@types/koa__cors": "^3.0.3",
|
|
38
|
+
"@typescript-eslint/eslint-plugin": "^5.3.0",
|
|
39
|
+
"@typescript-eslint/parser": "^5.3.0",
|
|
40
|
+
"create-ts-index": "^1.13.6",
|
|
41
|
+
"cross-env": "^7.0.3",
|
|
42
|
+
"eslint": "^8.1.0",
|
|
43
|
+
"eslint-config-prettier": "^8.3.0",
|
|
44
|
+
"eslint-config-standard": "^16.0.3",
|
|
45
|
+
"eslint-plugin-import": "^2.25.2",
|
|
46
|
+
"eslint-plugin-lodash": "^7.3.0",
|
|
47
|
+
"eslint-plugin-node": "^11.1.0",
|
|
48
|
+
"eslint-plugin-prettier": "^4.0.0",
|
|
49
|
+
"eslint-plugin-promise": "^5.1.1",
|
|
50
|
+
"eslint-plugin-standard": "^5.0.0",
|
|
51
|
+
"faker": "^5.5.3",
|
|
52
|
+
"jest": "^27.3.1",
|
|
53
|
+
"nodemon": "^2.0.14",
|
|
54
|
+
"npm-check-updates": "^11.8.5",
|
|
55
|
+
"npm-delay": "^1.0.4",
|
|
56
|
+
"npm-run-all": "^4.1.5",
|
|
57
|
+
"prettier": "^2.4.1",
|
|
58
|
+
"prettier-plugin-organize-imports": "^2.3.4",
|
|
59
|
+
"rimraf": "^3.0.2",
|
|
60
|
+
"ts-jest": "^27.0.7",
|
|
61
|
+
"ts-node": "^10.4.0",
|
|
62
|
+
"tsc-watch": "^4.5.0",
|
|
63
|
+
"tsconfig-paths": "^3.11.0",
|
|
64
|
+
"typeorm-model-generator": "^0.4.6",
|
|
65
|
+
"typescript": "^4.4.4"
|
|
66
|
+
},
|
|
67
|
+
"dependencies": {
|
|
68
|
+
"@koa/cors": "3",
|
|
69
|
+
"@koa/multer": "^3.0.0",
|
|
70
|
+
"@types/amqplib": "^0.8.2",
|
|
71
|
+
"@types/ioredis": "^4.28.0",
|
|
72
|
+
"@types/js-yaml": "^4.0.4",
|
|
73
|
+
"@types/jsonwebtoken": "^8.5.5",
|
|
74
|
+
"@types/koa": "^2.13.4",
|
|
75
|
+
"@types/koa-compress": "^4.0.3",
|
|
76
|
+
"@types/koa__multer": "^2.0.4",
|
|
77
|
+
"@types/lodash": "^4.14.176",
|
|
78
|
+
"@types/node": "^16.11.6",
|
|
79
|
+
"@types/pino": "^6.3.12",
|
|
80
|
+
"@types/rascal": "^10.0.4",
|
|
81
|
+
"amqplib": "^0.8.0",
|
|
82
|
+
"build-number-generator": "^1.0.0",
|
|
83
|
+
"class-transformer": "^0.4.0",
|
|
84
|
+
"class-validator": "^0.13.1",
|
|
85
|
+
"class-validator-jsonschema": "^3.1.0",
|
|
86
|
+
"cls-hooked": "^4.2.2",
|
|
87
|
+
"eventemitter3": "^4.0.7",
|
|
88
|
+
"glob": "^7.2.0",
|
|
89
|
+
"glob-promise": "^4.2.2",
|
|
90
|
+
"husky": "^7.0.4",
|
|
91
|
+
"internal-ip": "^6.2.0",
|
|
92
|
+
"ioredis": "^4.28.0",
|
|
93
|
+
"js-yaml": "^4.1.0",
|
|
94
|
+
"jsonata": "^1.8.5",
|
|
95
|
+
"jsonwebtoken": "^8.5.1",
|
|
96
|
+
"koa": "^2.13.4",
|
|
97
|
+
"koa-bodyparser": "^4.3.0",
|
|
98
|
+
"koa-compress": "^5.1.0",
|
|
99
|
+
"koa-favicon": "^2.1.0",
|
|
100
|
+
"koa-helmet": "^6.1.0",
|
|
101
|
+
"koa-json": "^2.0.2",
|
|
102
|
+
"koa-logger": "^3.2.1",
|
|
103
|
+
"koa-router": "^10.1.1",
|
|
104
|
+
"lodash": "^4.17.21",
|
|
105
|
+
"mergejson": "^1.1.2",
|
|
106
|
+
"microframework": "^0.6.4",
|
|
107
|
+
"module-alias": "^2.2.2",
|
|
108
|
+
"multer": "^1.4.3",
|
|
109
|
+
"mysql2": "^2.3.2",
|
|
110
|
+
"nanoid": "^3.1.30",
|
|
111
|
+
"npe": "^1.1.4",
|
|
112
|
+
"pagination-calculator": "^1.0.0",
|
|
113
|
+
"pino": "^6.13.3",
|
|
114
|
+
"pino-pretty": "6.0.0",
|
|
115
|
+
"reflect-metadata": "^0.1.13",
|
|
116
|
+
"routing-controllers": "^0.9.0",
|
|
117
|
+
"routing-controllers-openapi": "^3.1.0",
|
|
118
|
+
"socket-controllers": "^0.0.5",
|
|
119
|
+
"socket.io": "^4.3.1",
|
|
120
|
+
"source-map-support": "^0.5.20",
|
|
121
|
+
"to-snake-case": "^1.0.0",
|
|
122
|
+
"typedi": "^0.10.0",
|
|
123
|
+
"typeorm": "^0.2.38",
|
|
124
|
+
"typeorm-transactional-cls-hooked": "^0.1.21",
|
|
125
|
+
"typeorm-typedi-extensions": "^0.4.1"
|
|
126
|
+
}
|
|
127
|
+
}
|