@142vip/nest-starter 0.0.1-alpha.7 → 0.0.1-alpha.9
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/dist/app.config.js +1 -1
- package/dist/config/index.js +0 -1
- package/dist/config/plugin/logger.config.d.ts +6 -0
- package/dist/config/plugin/logger.config.d.ts.map +1 -1
- package/dist/config/plugin/logger.config.js +9 -1
- package/dist/config/plugin/redis.config.js +1 -1
- package/dist/config/plugin/sequelize.config.js +1 -1
- package/dist/config/plugin/swagger.config.d.ts +3 -0
- package/dist/config/plugin/swagger.config.d.ts.map +1 -1
- package/dist/config/plugin/swagger.config.js +5 -5
- package/dist/config/plugin/typeorm.config.d.ts +9 -0
- package/dist/config/plugin/typeorm.config.d.ts.map +1 -1
- package/dist/config/plugin/typeorm.config.js +32 -19
- package/dist/config/starter.config.js +12 -3
- package/dist/config.module.d.ts +19 -0
- package/dist/config.module.d.ts.map +1 -1
- package/dist/config.module.js +20 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/nest-process.d.ts +35 -0
- package/dist/nest-process.d.ts.map +1 -1
- package/dist/nest-process.js +36 -1
- package/dist/nest-root.module.js +3 -2
- package/dist/nest-starter.d.ts +19 -0
- package/dist/nest-starter.d.ts.map +1 -1
- package/dist/nest-starter.js +97 -1
- package/dist/nest-util.d.ts +23 -0
- package/dist/nest-util.d.ts.map +1 -1
- package/dist/nest-util.js +38 -6
- package/dist/pkgs.d.ts +1 -0
- package/dist/pkgs.d.ts.map +1 -1
- package/dist/pkgs.js +1 -1
- package/dist/swagger/index.d.ts +1 -0
- package/dist/swagger/index.js +1 -1
- package/dist/swagger/swagger.manager.d.ts +12 -0
- package/dist/swagger/swagger.manager.d.ts.map +1 -1
- package/dist/swagger/swagger.manager.js +12 -3
- package/dist/swagger/swagger.type.js +0 -1
- package/package.json +13 -9
package/dist/app.config.js
CHANGED
|
@@ -14,6 +14,7 @@ const class_transformer_1 = require("class-transformer");
|
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
15
|
const config_1 = require("./config");
|
|
16
16
|
class NestAppConfig {
|
|
17
|
+
starter;
|
|
17
18
|
}
|
|
18
19
|
exports.NestAppConfig = NestAppConfig;
|
|
19
20
|
__decorate([
|
|
@@ -22,4 +23,3 @@ __decorate([
|
|
|
22
23
|
(0, class_validator_1.IsNotEmpty)(),
|
|
23
24
|
__metadata("design:type", config_1.StarterConfig)
|
|
24
25
|
], NestAppConfig.prototype, "starter", void 0);
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9hcHAuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLHlEQUF3QztBQUN4QyxxREFBNEQ7QUFDNUQscUNBQXdDO0FBRXhDLE1BQWEsYUFBYTtDQUt6QjtBQUxELHNDQUtDO0FBREM7SUFIQyxJQUFBLGdDQUFjLEdBQUU7SUFDaEIsSUFBQSx3QkFBSSxFQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFhLENBQUM7SUFDekIsSUFBQSw0QkFBVSxHQUFFOzhCQUNILHNCQUFhOzhDQUFBIn0=
|
package/dist/config/index.js
CHANGED
|
@@ -20,4 +20,3 @@ __exportStar(require("./plugin/sequelize.config"), exports);
|
|
|
20
20
|
__exportStar(require("./plugin/swagger.config"), exports);
|
|
21
21
|
__exportStar(require("./plugin/typeorm.config"), exports);
|
|
22
22
|
__exportStar(require("./starter.config"), exports);
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx5REFBc0M7QUFDdEMsd0RBQXFDO0FBQ3JDLDREQUF5QztBQUN6QywwREFBdUM7QUFDdkMsMERBQXVDO0FBRXZDLG1EQUFnQyJ9
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import { LoggerLevelEnum } from '@142vip/nest-logger';
|
|
2
|
+
/**
|
|
3
|
+
* 控制台日志配置
|
|
4
|
+
*/
|
|
2
5
|
export declare class ConsoleLoggerConfig {
|
|
3
6
|
level?: LoggerLevelEnum;
|
|
4
7
|
}
|
|
8
|
+
/**
|
|
9
|
+
* 文件日志配置
|
|
10
|
+
*/
|
|
5
11
|
export declare class FileLoggerConfig {
|
|
6
12
|
}
|
|
7
13
|
export declare class LoggerConfig {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.config.d.ts","sourceRoot":"","sources":["../../../src/config/plugin/logger.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"logger.config.d.ts","sourceRoot":"","sources":["../../../src/config/plugin/logger.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AAIrD;;GAEG;AACH,qBAAa,mBAAmB;IAG9B,KAAK,CAAC,EAAE,eAAe,CAAA;CACxB;AAED;;GAEG;AACH,qBAAa,gBAAgB;CAE5B;AAED,qBAAa,YAAY;IAIvB,aAAa,CAAC,EAAE,mBAAmB,CAAA;IAKnC,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAC9B"}
|
|
@@ -13,7 +13,11 @@ exports.LoggerConfig = exports.FileLoggerConfig = exports.ConsoleLoggerConfig =
|
|
|
13
13
|
const nest_logger_1 = require("@142vip/nest-logger");
|
|
14
14
|
const class_transformer_1 = require("class-transformer");
|
|
15
15
|
const class_validator_1 = require("class-validator");
|
|
16
|
+
/**
|
|
17
|
+
* 控制台日志配置
|
|
18
|
+
*/
|
|
16
19
|
class ConsoleLoggerConfig {
|
|
20
|
+
level;
|
|
17
21
|
}
|
|
18
22
|
exports.ConsoleLoggerConfig = ConsoleLoggerConfig;
|
|
19
23
|
__decorate([
|
|
@@ -21,10 +25,15 @@ __decorate([
|
|
|
21
25
|
(0, class_validator_1.IsEnum)(nest_logger_1.LoggerLevelEnum),
|
|
22
26
|
__metadata("design:type", String)
|
|
23
27
|
], ConsoleLoggerConfig.prototype, "level", void 0);
|
|
28
|
+
/**
|
|
29
|
+
* 文件日志配置
|
|
30
|
+
*/
|
|
24
31
|
class FileLoggerConfig {
|
|
25
32
|
}
|
|
26
33
|
exports.FileLoggerConfig = FileLoggerConfig;
|
|
27
34
|
class LoggerConfig {
|
|
35
|
+
consoleLogger;
|
|
36
|
+
fileLogger;
|
|
28
37
|
}
|
|
29
38
|
exports.LoggerConfig = LoggerConfig;
|
|
30
39
|
__decorate([
|
|
@@ -39,4 +48,3 @@ __decorate([
|
|
|
39
48
|
(0, class_transformer_1.Type)(() => FileLoggerConfig),
|
|
40
49
|
__metadata("design:type", FileLoggerConfig)
|
|
41
50
|
], LoggerConfig.prototype, "fileLogger", void 0);
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvcGx1Z2luL2xvZ2dlci5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEscURBQXFEO0FBQ3JELHlEQUF3QztBQUN4QyxxREFBb0U7QUFLcEUsTUFBYSxtQkFBbUI7Q0FJL0I7QUFKRCxrREFJQztBQURDO0lBRkMsSUFBQSw0QkFBVSxHQUFFO0lBQ1osSUFBQSx3QkFBTSxFQUFDLDZCQUFlLENBQUM7O2tEQUNEO0FBTXpCLE1BQWEsZ0JBQWdCO0NBRTVCO0FBRkQsNENBRUM7QUFFRCxNQUFhLFlBQVk7Q0FVeEI7QUFWRCxvQ0FVQztBQU5DO0lBSEMsSUFBQSw0QkFBVSxHQUFFO0lBQ1osSUFBQSxnQ0FBYyxHQUFFO0lBQ2hCLElBQUEsd0JBQUksRUFBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQzs4QkFDaEIsbUJBQW1CO21EQUFBO0FBS25DO0lBSEMsSUFBQSw0QkFBVSxHQUFFO0lBQ1osSUFBQSxnQ0FBYyxHQUFFO0lBQ2hCLElBQUEsd0JBQUksRUFBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzs4QkFDaEIsZ0JBQWdCO2dEQUFBIn0=
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.RedisConfig = void 0;
|
|
13
13
|
const class_validator_1 = require("class-validator");
|
|
14
14
|
class RedisConfig {
|
|
15
|
+
url;
|
|
15
16
|
}
|
|
16
17
|
exports.RedisConfig = RedisConfig;
|
|
17
18
|
__decorate([
|
|
@@ -19,4 +20,3 @@ __decorate([
|
|
|
19
20
|
(0, class_validator_1.IsString)(),
|
|
20
21
|
__metadata("design:type", String)
|
|
21
22
|
], RedisConfig.prototype, "url", void 0);
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVkaXMuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbmZpZy9wbHVnaW4vcmVkaXMuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLHFEQUFzRDtBQUV0RCxNQUFhLFdBQVc7Q0FJdkI7QUFKRCxrQ0FJQztBQURpQjtJQUZmLElBQUEsNEJBQVUsR0FBRTtJQUNaLElBQUEsMEJBQVEsR0FBRTs7d0NBQ2lCIn0=
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.SequelizeConfig = void 0;
|
|
13
13
|
const class_validator_1 = require("class-validator");
|
|
14
14
|
class SequelizeConfig {
|
|
15
|
+
a;
|
|
15
16
|
}
|
|
16
17
|
exports.SequelizeConfig = SequelizeConfig;
|
|
17
18
|
__decorate([
|
|
@@ -19,4 +20,3 @@ __decorate([
|
|
|
19
20
|
(0, class_validator_1.IsString)(),
|
|
20
21
|
__metadata("design:type", String)
|
|
21
22
|
], SequelizeConfig.prototype, "a", void 0);
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VxdWVsaXplLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb25maWcvcGx1Z2luL3NlcXVlbGl6ZS5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEscURBQXNEO0FBRXRELE1BQWEsZUFBZTtDQUkzQjtBQUpELDBDQUlDO0FBRGlCO0lBRmYsSUFBQSw0QkFBVSxHQUFFO0lBQ1osSUFBQSwwQkFBUSxHQUFFOzswQ0FDZSJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swagger.config.d.ts","sourceRoot":"","sources":["../../../src/config/plugin/swagger.config.ts"],"names":[],"mappings":"AAGA,qBAAa,aAAa;IAGxB,OAAO,EAAE,MAAM,CAAQ;
|
|
1
|
+
{"version":3,"file":"swagger.config.d.ts","sourceRoot":"","sources":["../../../src/config/plugin/swagger.config.ts"],"names":[],"mappings":"AAGA,qBAAa,aAAa;IAGxB,OAAO,EAAE,MAAM,CAAQ;IAEvB;;OAEG;IAEH,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAgC;CAC7D"}
|
|
@@ -13,10 +13,11 @@ exports.SwaggerConfig = void 0;
|
|
|
13
13
|
const nest_1 = require("@142vip/nest");
|
|
14
14
|
const class_validator_1 = require("class-validator");
|
|
15
15
|
class SwaggerConfig {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
docPath = 'doc';
|
|
17
|
+
/**
|
|
18
|
+
* 默认本地环境
|
|
19
|
+
*/
|
|
20
|
+
envs = { local: 'http://127.0.0.1' };
|
|
20
21
|
}
|
|
21
22
|
exports.SwaggerConfig = SwaggerConfig;
|
|
22
23
|
__decorate([
|
|
@@ -28,4 +29,3 @@ __decorate([
|
|
|
28
29
|
(0, class_validator_1.IsObject)(),
|
|
29
30
|
__metadata("design:type", Object)
|
|
30
31
|
], SwaggerConfig.prototype, "envs", void 0);
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dhZ2dlci5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29uZmlnL3BsdWdpbi9zd2FnZ2VyLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBK0M7QUFDL0MscURBQW9EO0FBRXBELE1BQWEsYUFBYTtJQUExQjtRQUdFLFlBQU8sR0FBVyxLQUFLLENBQUE7UUFNdkIsU0FBSSxHQUEyQixFQUFFLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxDQUFBO0lBQzlELENBQUM7Q0FBQTtBQVZELHNDQVVDO0FBUEM7SUFGQyxJQUFBLDBCQUFRLEdBQUU7SUFDVixJQUFBLHVCQUFnQixHQUFFOzs4Q0FDSTtBQU12QjtJQURDLElBQUEsMEJBQVEsR0FBRTs7MkNBQ2lEIn0=
|
|
@@ -2,6 +2,9 @@ import type { BaseDataSourceOptions } from 'typeorm/data-source/BaseDataSourceOp
|
|
|
2
2
|
import type { MysqlConnectionOptions } from 'typeorm/driver/mysql/MysqlConnectionOptions';
|
|
3
3
|
import type { PostgresConnectionOptions } from 'typeorm/driver/postgres/PostgresConnectionOptions';
|
|
4
4
|
import { DataType } from '@142vip/nest-typeorm';
|
|
5
|
+
/**
|
|
6
|
+
* Typeorm基础配置
|
|
7
|
+
*/
|
|
5
8
|
export declare class TypeormConfig implements BaseDataSourceOptions {
|
|
6
9
|
url?: string;
|
|
7
10
|
host?: string;
|
|
@@ -15,12 +18,18 @@ export declare class TypeormConfig implements BaseDataSourceOptions {
|
|
|
15
18
|
logging: boolean;
|
|
16
19
|
poolSize?: number;
|
|
17
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* MySQL
|
|
23
|
+
*/
|
|
18
24
|
export declare class TypeormMysqlConfig extends TypeormConfig implements MysqlConnectionOptions {
|
|
19
25
|
type: DataType.MYSQL;
|
|
20
26
|
supportBigNumbers: boolean;
|
|
21
27
|
bigNumberStrings: boolean;
|
|
22
28
|
charset: string;
|
|
23
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* PostgreSQL
|
|
32
|
+
*/
|
|
24
33
|
export declare class TypeormPostgresConfig extends TypeormConfig implements PostgresConnectionOptions {
|
|
25
34
|
type: DataType.POSTGRES;
|
|
26
35
|
parseInt8: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typeorm.config.d.ts","sourceRoot":"","sources":["../../../src/config/plugin/typeorm.config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAA;AACtF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAA;AACzF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mDAAmD,CAAA;AAElG,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"typeorm.config.d.ts","sourceRoot":"","sources":["../../../src/config/plugin/typeorm.config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2CAA2C,CAAA;AACtF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAA;AACzF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,mDAAmD,CAAA;AAElG,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAG/C;;GAEG;AACH,qBAAa,aAAc,YAAW,qBAAqB;IAGzD,GAAG,CAAC,EAAE,MAAM,CAAA;IAIZ,IAAI,CAAC,EAAE,MAAM,CAAA;IAKb,IAAI,CAAC,EAAE,MAAM,CAAA;IAIb,QAAQ,CAAC,EAAE,MAAM,CAAA;IAIjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAIjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IAGjB,IAAI,EAAG,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAA;IAIzC,gBAAgB,UAAO;IAIvB,WAAW,UAAQ;IAInB,OAAO,UAAQ;IAMf,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,aAAc,YAAW,sBAAsB;IAE5E,IAAI,iBAA0B;IAIvC,iBAAiB,UAAO;IAIxB,gBAAgB,UAAQ;IAIxB,OAAO,SAAuB;CAC/B;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,aAAc,YAAW,yBAAyB;IAElF,IAAI,oBAA6B;IAI1C,SAAS,UAAO;IAIhB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB"}
|
|
@@ -13,12 +13,22 @@ exports.TypeormPostgresConfig = exports.TypeormMysqlConfig = exports.TypeormConf
|
|
|
13
13
|
const nest_1 = require("@142vip/nest");
|
|
14
14
|
const nest_typeorm_1 = require("@142vip/nest-typeorm");
|
|
15
15
|
const class_validator_1 = require("class-validator");
|
|
16
|
+
/**
|
|
17
|
+
* Typeorm基础配置
|
|
18
|
+
*/
|
|
16
19
|
class TypeormConfig {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
url;
|
|
21
|
+
host;
|
|
22
|
+
port;
|
|
23
|
+
username;
|
|
24
|
+
password;
|
|
25
|
+
database;
|
|
26
|
+
type;
|
|
27
|
+
autoLoadEntities = true;
|
|
28
|
+
synchronize = false;
|
|
29
|
+
logging = false;
|
|
30
|
+
// 数据库连接池,默认10个,若希望控制typeorm内置线程池的连接数,则使用maxConnections配置
|
|
31
|
+
poolSize;
|
|
22
32
|
}
|
|
23
33
|
exports.TypeormConfig = TypeormConfig;
|
|
24
34
|
__decorate([
|
|
@@ -77,14 +87,15 @@ __decorate([
|
|
|
77
87
|
(0, class_validator_1.Max)(25),
|
|
78
88
|
__metadata("design:type", Number)
|
|
79
89
|
], TypeormConfig.prototype, "poolSize", void 0);
|
|
90
|
+
/**
|
|
91
|
+
* MySQL
|
|
92
|
+
*/
|
|
80
93
|
class TypeormMysqlConfig extends TypeormConfig {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
this.charset = 'utf8mb4_unicode_ci';
|
|
87
|
-
}
|
|
94
|
+
type = nest_typeorm_1.DataType.MYSQL;
|
|
95
|
+
supportBigNumbers = true;
|
|
96
|
+
bigNumberStrings = false;
|
|
97
|
+
// 官方默认值为utf8_general_ci,不支持emoji表情,只适用于mysql
|
|
98
|
+
charset = 'utf8mb4_unicode_ci';
|
|
88
99
|
}
|
|
89
100
|
exports.TypeormMysqlConfig = TypeormMysqlConfig;
|
|
90
101
|
__decorate([
|
|
@@ -102,15 +113,18 @@ __decorate([
|
|
|
102
113
|
__metadata("design:type", Object)
|
|
103
114
|
], TypeormMysqlConfig.prototype, "bigNumberStrings", void 0);
|
|
104
115
|
__decorate([
|
|
105
|
-
(0, class_validator_1.IsString)()
|
|
116
|
+
(0, class_validator_1.IsString)()
|
|
117
|
+
// 官方默认值为utf8_general_ci,不支持emoji表情,只适用于mysql
|
|
118
|
+
,
|
|
106
119
|
__metadata("design:type", Object)
|
|
107
120
|
], TypeormMysqlConfig.prototype, "charset", void 0);
|
|
121
|
+
/**
|
|
122
|
+
* PostgreSQL
|
|
123
|
+
*/
|
|
108
124
|
class TypeormPostgresConfig extends TypeormConfig {
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
this.parseInt8 = true;
|
|
113
|
-
}
|
|
125
|
+
type = nest_typeorm_1.DataType.POSTGRES;
|
|
126
|
+
parseInt8 = true;
|
|
127
|
+
schema;
|
|
114
128
|
}
|
|
115
129
|
exports.TypeormPostgresConfig = TypeormPostgresConfig;
|
|
116
130
|
__decorate([
|
|
@@ -127,4 +141,3 @@ __decorate([
|
|
|
127
141
|
(0, class_validator_1.IsString)(),
|
|
128
142
|
__metadata("design:type", String)
|
|
129
143
|
], TypeormPostgresConfig.prototype, "schema", void 0);
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZW9ybS5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29uZmlnL3BsdWdpbi90eXBlb3JtLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFHQSx1Q0FBb0U7QUFDcEUsdURBQStDO0FBQy9DLHFEQUF1RjtBQUt2RixNQUFhLGFBQWE7SUFBMUI7UUErQkUscUJBQWdCLEdBQUcsSUFBSSxDQUFBO1FBSXZCLGdCQUFXLEdBQUcsS0FBSyxDQUFBO1FBSW5CLFlBQU8sR0FBRyxLQUFLLENBQUE7SUFPakIsQ0FBQztDQUFBO0FBOUNELHNDQThDQztBQTNDQztJQUZDLElBQUEsMEJBQVEsR0FBRTtJQUNWLElBQUEsNEJBQVUsR0FBRTs7MENBQ0Q7QUFJWjtJQUZDLElBQUEsMEJBQVEsR0FBRTtJQUNWLElBQUEsNEJBQVUsR0FBRTs7MkNBQ0E7QUFLYjtJQUhDLElBQUEsMEJBQVEsR0FBRTtJQUNWLElBQUEsNEJBQVUsR0FBRTtJQUNaLElBQUEsd0JBQWlCLEdBQUU7OzJDQUNQO0FBSWI7SUFGQyxJQUFBLDBCQUFRLEdBQUU7SUFDVixJQUFBLDRCQUFVLEdBQUU7OytDQUNJO0FBSWpCO0lBRkMsSUFBQSwwQkFBUSxHQUFFO0lBQ1YsSUFBQSw0QkFBVSxHQUFFOzsrQ0FDSTtBQUlqQjtJQUZDLElBQUEsMEJBQVEsR0FBRTtJQUNWLElBQUEsNEJBQVUsR0FBRTs7K0NBQ0k7QUFHakI7SUFEQyxJQUFBLDBCQUFRLEdBQUU7OzJDQUM4QjtBQUl6QztJQUZDLElBQUEseUJBQWtCLEdBQUU7SUFDcEIsSUFBQSwyQkFBUyxHQUFFOzt1REFDVztBQUl2QjtJQUZDLElBQUEseUJBQWtCLEdBQUU7SUFDcEIsSUFBQSwyQkFBUyxHQUFFOztrREFDTztBQUluQjtJQUZDLElBQUEseUJBQWtCLEdBQUU7SUFDcEIsSUFBQSwyQkFBUyxHQUFFOzs4Q0FDRztBQU1mO0lBSEMsSUFBQSx1QkFBSyxHQUFFO0lBQ1AsSUFBQSw0QkFBVSxHQUFFO0lBQ1osSUFBQSxxQkFBRyxFQUFDLEVBQUUsQ0FBQzs7K0NBQ1M7QUFNbkIsTUFBYSxrQkFBbUIsU0FBUSxhQUFhO0lBQXJEOztRQUVXLFNBQUksR0FBRyx1QkFBUSxDQUFDLEtBQWMsQ0FBQTtRQUl2QyxzQkFBaUIsR0FBRyxJQUFJLENBQUE7UUFJeEIscUJBQWdCLEdBQUcsS0FBSyxDQUFBO1FBSXhCLFlBQU8sR0FBRyxvQkFBb0IsQ0FBQTtJQUNoQyxDQUFDO0NBQUE7QUFmRCxnREFlQztBQWJVO0lBRFIsSUFBQSwwQkFBUSxHQUFFOztnREFDNEI7QUFJdkM7SUFGQyxJQUFBLHlCQUFrQixHQUFFO0lBQ3BCLElBQUEsMkJBQVMsR0FBRTs7NkRBQ1k7QUFJeEI7SUFGQyxJQUFBLHlCQUFrQixHQUFFO0lBQ3BCLElBQUEsMkJBQVMsR0FBRTs7NERBQ1k7QUFJeEI7SUFGQyxJQUFBLDBCQUFRLEdBQUU7O21EQUVtQjtBQU1oQyxNQUFhLHFCQUFzQixTQUFRLGFBQWE7SUFBeEQ7O1FBRVcsU0FBSSxHQUFHLHVCQUFRLENBQUMsUUFBaUIsQ0FBQTtRQUkxQyxjQUFTLEdBQUcsSUFBSSxDQUFBO0lBS2xCLENBQUM7Q0FBQTtBQVhELHNEQVdDO0FBVFU7SUFEUixJQUFBLDBCQUFRLEdBQUU7O21EQUMrQjtBQUkxQztJQUZDLElBQUEsMkJBQVMsR0FBRTtJQUNYLElBQUEseUJBQWtCLEdBQUU7O3dEQUNMO0FBSWhCO0lBRkMsSUFBQSw0QkFBVSxHQUFFO0lBQ1osSUFBQSwwQkFBUSxHQUFFOztxREFDSSJ9
|
|
@@ -19,6 +19,15 @@ const sequelize_config_1 = require("./plugin/sequelize.config");
|
|
|
19
19
|
const swagger_config_1 = require("./plugin/swagger.config");
|
|
20
20
|
const typeorm_config_1 = require("./plugin/typeorm.config");
|
|
21
21
|
class StarterConfig {
|
|
22
|
+
port;
|
|
23
|
+
globalPrefix;
|
|
24
|
+
redis;
|
|
25
|
+
typeorm;
|
|
26
|
+
sequelize;
|
|
27
|
+
enableSwagger;
|
|
28
|
+
swagger;
|
|
29
|
+
enableLogger;
|
|
30
|
+
logger;
|
|
22
31
|
}
|
|
23
32
|
exports.StarterConfig = StarterConfig;
|
|
24
33
|
__decorate([
|
|
@@ -39,12 +48,13 @@ __decorate([
|
|
|
39
48
|
], StarterConfig.prototype, "redis", void 0);
|
|
40
49
|
__decorate([
|
|
41
50
|
(0, class_transformer_1.Type)((options) => {
|
|
42
|
-
const { type, url } = (options
|
|
43
|
-
const dataType = type
|
|
51
|
+
const { type, url } = (options?.object).typeorm;
|
|
52
|
+
const dataType = type ?? new URL(url).protocol.slice(0, -1);
|
|
44
53
|
if (dataType === nest_typeorm_1.DataType.POSTGRES)
|
|
45
54
|
return typeorm_config_1.TypeormPostgresConfig;
|
|
46
55
|
if (dataType === nest_typeorm_1.DataType.MYSQL)
|
|
47
56
|
return typeorm_config_1.TypeormMysqlConfig;
|
|
57
|
+
// 默认PG
|
|
48
58
|
return typeorm_config_1.TypeormPostgresConfig;
|
|
49
59
|
}),
|
|
50
60
|
(0, class_validator_1.ValidateNested)(),
|
|
@@ -79,4 +89,3 @@ __decorate([
|
|
|
79
89
|
(0, class_validator_1.IsOptional)(),
|
|
80
90
|
__metadata("design:type", logger_config_1.LoggerConfig)
|
|
81
91
|
], StarterConfig.prototype, "logger", void 0);
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhcnRlci5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL3N0YXJ0ZXIuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLHVEQUErQztBQUMvQyx5REFBd0M7QUFDeEMscURBQXVHO0FBQ3ZHLDBEQUFxRDtBQUNyRCx3REFBbUQ7QUFDbkQsZ0VBQTJEO0FBQzNELDREQUF1RDtBQUN2RCw0REFBbUY7QUFFbkYsTUFBYSxhQUFhO0NBcUR6QjtBQXJERCxzQ0FxREM7QUFsRGlCO0lBRmYsSUFBQSwwQkFBUSxHQUFFO0lBQ1YsSUFBQSw0QkFBVSxHQUFFOzsyQ0FDZ0I7QUFJN0I7SUFGQyxJQUFBLDRCQUFVLEdBQUU7SUFDWixJQUFBLDBCQUFRLEdBQUU7O21EQUNVO0FBS3JCO0lBSEMsSUFBQSw0QkFBVSxHQUFFO0lBQ1osSUFBQSxnQ0FBYyxHQUFFO0lBQ2hCLElBQUEsd0JBQUksRUFBQyxHQUFHLEVBQUUsQ0FBQywwQkFBVyxDQUFDOzhCQUNoQiwwQkFBVzs0Q0FBQTtBQWlCbkI7SUFmQyxJQUFBLHdCQUFJLEVBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtRQUNoQixNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLE1BQWMsQ0FBQSxDQUFDLE9BQU8sQ0FBQTtRQUN0RCxNQUFNLFFBQVEsR0FBRyxJQUFJLGFBQUosSUFBSSxjQUFKLElBQUksR0FBSSxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBRTNELElBQUksUUFBUSxLQUFLLHVCQUFRLENBQUMsUUFBUTtZQUNoQyxPQUFPLHNDQUFxQixDQUFBO1FBRTlCLElBQUksUUFBUSxLQUFLLHVCQUFRLENBQUMsS0FBSztZQUM3QixPQUFPLG1DQUFrQixDQUFBO1FBRzNCLE9BQU8sc0NBQXFCLENBQUE7SUFDOUIsQ0FBQyxDQUFDO0lBQ0QsSUFBQSxnQ0FBYyxHQUFFO0lBQ2hCLElBQUEsNEJBQVUsR0FBRTs7OENBQ3VDO0FBS3BEO0lBSEMsSUFBQSxnQ0FBYyxHQUFFO0lBQ2hCLElBQUEsd0JBQUksRUFBQyxHQUFHLEVBQUUsQ0FBQyxrQ0FBZSxDQUFDO0lBQzNCLElBQUEsNEJBQVUsR0FBRTs4QkFDRCxrQ0FBZTtnREFBQTtBQUkzQjtJQUZDLElBQUEsMkJBQVMsR0FBRTtJQUNYLElBQUEsNEJBQVUsR0FBRTs7b0RBQ1U7QUFLdkI7SUFIQyxJQUFBLGdDQUFjLEdBQUU7SUFDaEIsSUFBQSx3QkFBSSxFQUFDLEdBQUcsRUFBRSxDQUFDLDhCQUFhLENBQUM7SUFDekIsSUFBQSw0QkFBVSxHQUFFOzhCQUNILDhCQUFhOzhDQUFBO0FBSXZCO0lBRkMsSUFBQSwyQkFBUyxHQUFFO0lBQ1gsSUFBQSw0QkFBVSxHQUFFOzttREFDUztBQUtOO0lBSGYsSUFBQSxnQ0FBYyxHQUFFO0lBQ2hCLElBQUEsd0JBQUksRUFBQyxHQUFHLEVBQUUsQ0FBQyw0QkFBWSxDQUFDO0lBQ3hCLElBQUEsNEJBQVUsR0FBRTs4QkFDWSw0QkFBWTs2Q0FBQSJ9
|
package/dist/config.module.d.ts
CHANGED
|
@@ -5,9 +5,28 @@ import { StarterConfig } from './config';
|
|
|
5
5
|
export declare class NestConfigModule {
|
|
6
6
|
static register<T extends ClassConstructor<NestAppConfig>>(ConfigConSchema: T): DynamicModule;
|
|
7
7
|
}
|
|
8
|
+
/**
|
|
9
|
+
* Nest应用模块
|
|
10
|
+
* - 默认全局模块
|
|
11
|
+
*/
|
|
8
12
|
export declare const NestAppConfigModule: DynamicModule;
|
|
13
|
+
/**
|
|
14
|
+
* 基于Schema获取配置
|
|
15
|
+
* - 不存在时,报错
|
|
16
|
+
* @param configSchema
|
|
17
|
+
*/
|
|
9
18
|
export declare function getConfig<T>(configSchema: ClassConstructor<T>): T;
|
|
19
|
+
/**
|
|
20
|
+
* 基于Schema获取配置,可能为空
|
|
21
|
+
* @param configSchema
|
|
22
|
+
*/
|
|
10
23
|
export declare function getOptionalConfig<T>(configSchema: ClassConstructor<T>): T | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* 启动配置
|
|
26
|
+
*/
|
|
11
27
|
export declare const nestStaterConfig: StarterConfig;
|
|
28
|
+
/**
|
|
29
|
+
* 整个应用配置
|
|
30
|
+
*/
|
|
12
31
|
export declare const nestAppConfig: NestAppConfig;
|
|
13
32
|
//# sourceMappingURL=config.module.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.module.d.ts","sourceRoot":"","sources":["../src/config.module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,qBAAa,gBAAgB;WACb,QAAQ,CAAC,CAAC,SAAS,gBAAgB,CAAC,aAAa,CAAC,EAAE,eAAe,EAAE,CAAC,GAAG,aAAa;CASrG;
|
|
1
|
+
{"version":3,"file":"config.module.d.ts","sourceRoot":"","sources":["../src/config.module.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAEzD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAE9C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC,qBAAa,gBAAgB;WACb,QAAQ,CAAC,CAAC,SAAS,gBAAgB,CAAC,aAAa,CAAC,EAAE,eAAe,EAAE,CAAC,GAAG,aAAa;CASrG;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,eAA2C,CAAA;AAE3E;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAMjE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,SAAS,CAErF;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,eAA2B,CAAA;AAExD;;GAEG;AACH,eAAO,MAAM,aAAa,eAA2B,CAAA"}
|
package/dist/config.module.js
CHANGED
|
@@ -12,13 +12,23 @@ class NestConfigModule {
|
|
|
12
12
|
return nest_typed_config_1.TypedConfigModule.forRoot({
|
|
13
13
|
schema: ConfigConSchema,
|
|
14
14
|
load: (0, nest_typed_config_1.fileLoader)({
|
|
15
|
+
// TODO 指定配置文件
|
|
15
16
|
absolutePath: utils_1.VipNodeJS.pathResolve(utils_1.VipNodeJS.getProcessCwd(), 'config/test.config.js'),
|
|
16
17
|
}),
|
|
17
18
|
});
|
|
18
19
|
}
|
|
19
20
|
}
|
|
20
21
|
exports.NestConfigModule = NestConfigModule;
|
|
22
|
+
/**
|
|
23
|
+
* Nest应用模块
|
|
24
|
+
* - 默认全局模块
|
|
25
|
+
*/
|
|
21
26
|
exports.NestAppConfigModule = NestConfigModule.register(app_config_1.NestAppConfig);
|
|
27
|
+
/**
|
|
28
|
+
* 基于Schema获取配置
|
|
29
|
+
* - 不存在时,报错
|
|
30
|
+
* @param configSchema
|
|
31
|
+
*/
|
|
22
32
|
function getConfig(configSchema) {
|
|
23
33
|
const config = getOptionalConfig(configSchema);
|
|
24
34
|
if (!config) {
|
|
@@ -26,9 +36,18 @@ function getConfig(configSchema) {
|
|
|
26
36
|
}
|
|
27
37
|
return config;
|
|
28
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* 基于Schema获取配置,可能为空
|
|
41
|
+
* @param configSchema
|
|
42
|
+
*/
|
|
29
43
|
function getOptionalConfig(configSchema) {
|
|
30
44
|
return (0, nest_typed_config_1.selectConfig)(exports.NestAppConfigModule, configSchema, { allowOptional: true });
|
|
31
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* 启动配置
|
|
48
|
+
*/
|
|
32
49
|
exports.nestStaterConfig = getConfig(config_1.StarterConfig);
|
|
50
|
+
/**
|
|
51
|
+
* 整个应用配置
|
|
52
|
+
*/
|
|
33
53
|
exports.nestAppConfig = getConfig(app_config_1.NestAppConfig);
|
|
34
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25maWcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQThCQSw4QkFNQztBQU1ELDhDQUVDO0FBM0NELHlDQUF5QztBQUV6Qyx5REFBK0U7QUFDL0UsNkNBQTRDO0FBQzVDLHFDQUF3QztBQUV4QyxNQUFhLGdCQUFnQjtJQUNwQixNQUFNLENBQUMsUUFBUSxDQUE0QyxlQUFrQjtRQUNsRixPQUFPLHFDQUFpQixDQUFDLE9BQU8sQ0FBQztZQUMvQixNQUFNLEVBQUUsZUFBZTtZQUN2QixJQUFJLEVBQUUsSUFBQSw4QkFBVSxFQUFDO2dCQUVmLFlBQVksRUFBRSxpQkFBUyxDQUFDLFdBQVcsQ0FBQyxpQkFBUyxDQUFDLGFBQWEsRUFBRSxFQUFFLHVCQUF1QixDQUFDO2FBQ3hGLENBQUM7U0FDSCxDQUFDLENBQUE7SUFDSixDQUFDO0NBQ0Y7QUFWRCw0Q0FVQztBQU1ZLFFBQUEsbUJBQW1CLEdBQUcsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLDBCQUFhLENBQUMsQ0FBQTtBQU8zRSxTQUFnQixTQUFTLENBQUksWUFBaUM7SUFDNUQsTUFBTSxNQUFNLEdBQUcsaUJBQWlCLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDOUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ1osTUFBTSxJQUFJLEtBQUssQ0FBQyxVQUFVLFlBQVksQ0FBQyxJQUFJLFlBQVksQ0FBQyxDQUFBO0lBQzFELENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQTtBQUNmLENBQUM7QUFNRCxTQUFnQixpQkFBaUIsQ0FBSSxZQUFpQztJQUNwRSxPQUFPLElBQUEsZ0NBQVksRUFBQywyQkFBbUIsRUFBRSxZQUFZLEVBQUUsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQWtCLENBQUE7QUFDbEcsQ0FBQztBQUtZLFFBQUEsZ0JBQWdCLEdBQUcsU0FBUyxDQUFDLHNCQUFhLENBQUMsQ0FBQTtBQUszQyxRQUFBLGFBQWEsR0FBRyxTQUFTLENBQUMsMEJBQWEsQ0FBQyxDQUFBIn0=
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA;AACxB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,QAAQ,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,UAAU,CAAA;AACxB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,QAAQ,CAAA;AACtB,cAAc,wBAAwB,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -19,4 +19,4 @@ __exportStar(require("./config"), exports);
|
|
|
19
19
|
__exportStar(require("./config.module"), exports);
|
|
20
20
|
__exportStar(require("./nest-starter"), exports);
|
|
21
21
|
__exportStar(require("./pkgs"), exports);
|
|
22
|
-
|
|
22
|
+
__exportStar(require("./swagger/swagger.type"), exports);
|
package/dist/nest-process.d.ts
CHANGED
|
@@ -1,14 +1,49 @@
|
|
|
1
1
|
declare class NestProcess {
|
|
2
2
|
private static instance;
|
|
3
3
|
static getInstance(): NestProcess;
|
|
4
|
+
/**
|
|
5
|
+
* 获取当前进程的运行环境
|
|
6
|
+
*/
|
|
4
7
|
getNodeEnv(): string | undefined;
|
|
8
|
+
/**
|
|
9
|
+
* 获取加载配置的运行环境
|
|
10
|
+
* - 使用RUN_ENV环境变量
|
|
11
|
+
*/
|
|
5
12
|
getRunEnv(): string | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* 获取启动的应用
|
|
15
|
+
* - 使用APP环境变量
|
|
16
|
+
*/
|
|
6
17
|
getAppEnv(): string | undefined;
|
|
18
|
+
/**
|
|
19
|
+
* 是否本地环境启动Nestjs应用
|
|
20
|
+
* - local.config 配置
|
|
21
|
+
*/
|
|
7
22
|
isLocalStartNest(): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* 是否测试环境启动Nestjs应用
|
|
25
|
+
* - test.config 配置
|
|
26
|
+
*/
|
|
8
27
|
isTestStartNest(): boolean;
|
|
28
|
+
/**
|
|
29
|
+
* 是否开发环境启动Nestjs应用
|
|
30
|
+
* - dev.config 配置
|
|
31
|
+
*/
|
|
9
32
|
isDevelopStartNest(): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* 是否为开发模式
|
|
35
|
+
* - 本地环境
|
|
36
|
+
* - 开发环境
|
|
37
|
+
* - 测试环境
|
|
38
|
+
*/
|
|
10
39
|
isDevelopMode(): boolean;
|
|
40
|
+
/**
|
|
41
|
+
* 根据key获取环境变量
|
|
42
|
+
*/
|
|
11
43
|
getEnv(envKey: string): string | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* 获取进程当前路径
|
|
46
|
+
*/
|
|
12
47
|
getCwd(): string;
|
|
13
48
|
}
|
|
14
49
|
export declare const nestProcess: NestProcess;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nest-process.d.ts","sourceRoot":"","sources":["../src/nest-process.ts"],"names":[],"mappings":"AAQA,cAAM,WAAW;IACf,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoB;WAE7B,WAAW,IAAI,WAAW;
|
|
1
|
+
{"version":3,"file":"nest-process.d.ts","sourceRoot":"","sources":["../src/nest-process.ts"],"names":[],"mappings":"AAQA,cAAM,WAAW;IACf,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoB;WAE7B,WAAW,IAAI,WAAW;IAOxC;;OAEG;IACI,UAAU,IAAI,MAAM,GAAG,SAAS;IAIvC;;;OAGG;IACI,SAAS,IAAI,MAAM,GAAG,SAAS;IAItC;;;OAGG;IACI,SAAS,IAAI,MAAM,GAAG,SAAS;IAItC;;;OAGG;IACI,gBAAgB,IAAI,OAAO;IAIlC;;;OAGG;IACI,eAAe,IAAI,OAAO;IAIjC;;;OAGG;IACI,kBAAkB,IAAI,OAAO;IAIpC;;;;;OAKG;IACI,aAAa,IAAI,OAAO;IAK/B;;OAEG;IACI,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIjD;;OAEG;IACI,MAAM,IAAI,MAAM;CAGxB;AAED,eAAO,MAAM,WAAW,aAA4B,CAAA"}
|
package/dist/nest-process.js
CHANGED
|
@@ -9,39 +9,74 @@ var NestProcessNodeEnv;
|
|
|
9
9
|
NestProcessNodeEnv["DEVELOP"] = "dev";
|
|
10
10
|
})(NestProcessNodeEnv || (NestProcessNodeEnv = {}));
|
|
11
11
|
class NestProcess {
|
|
12
|
+
static instance;
|
|
12
13
|
static getInstance() {
|
|
13
14
|
if (this.instance == null)
|
|
14
15
|
this.instance = new NestProcess();
|
|
15
16
|
return this.instance;
|
|
16
17
|
}
|
|
18
|
+
/**
|
|
19
|
+
* 获取当前进程的运行环境
|
|
20
|
+
*/
|
|
17
21
|
getNodeEnv() {
|
|
18
22
|
return this.getEnv('NODE_ENV');
|
|
19
23
|
}
|
|
24
|
+
/**
|
|
25
|
+
* 获取加载配置的运行环境
|
|
26
|
+
* - 使用RUN_ENV环境变量
|
|
27
|
+
*/
|
|
20
28
|
getRunEnv() {
|
|
21
29
|
return this.getEnv('RUN_ENV');
|
|
22
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* 获取启动的应用
|
|
33
|
+
* - 使用APP环境变量
|
|
34
|
+
*/
|
|
23
35
|
getAppEnv() {
|
|
24
36
|
return this.getEnv('APP');
|
|
25
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* 是否本地环境启动Nestjs应用
|
|
40
|
+
* - local.config 配置
|
|
41
|
+
*/
|
|
26
42
|
isLocalStartNest() {
|
|
27
43
|
return this.getNodeEnv() === NestProcessNodeEnv.LOCAL;
|
|
28
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* 是否测试环境启动Nestjs应用
|
|
47
|
+
* - test.config 配置
|
|
48
|
+
*/
|
|
29
49
|
isTestStartNest() {
|
|
30
50
|
return this.getNodeEnv() === NestProcessNodeEnv.TEST;
|
|
31
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* 是否开发环境启动Nestjs应用
|
|
54
|
+
* - dev.config 配置
|
|
55
|
+
*/
|
|
32
56
|
isDevelopStartNest() {
|
|
33
57
|
return this.getNodeEnv() === NestProcessNodeEnv.DEVELOP;
|
|
34
58
|
}
|
|
59
|
+
/**
|
|
60
|
+
* 是否为开发模式
|
|
61
|
+
* - 本地环境
|
|
62
|
+
* - 开发环境
|
|
63
|
+
* - 测试环境
|
|
64
|
+
*/
|
|
35
65
|
isDevelopMode() {
|
|
36
66
|
const nodeEnv = this.getNodeEnv();
|
|
37
67
|
return nodeEnv != null && Object.values(NestProcessNodeEnv).includes(nodeEnv);
|
|
38
68
|
}
|
|
69
|
+
/**
|
|
70
|
+
* 根据key获取环境变量
|
|
71
|
+
*/
|
|
39
72
|
getEnv(envKey) {
|
|
40
73
|
return utils_1.VipNodeJS.getProcessEnv(envKey);
|
|
41
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* 获取进程当前路径
|
|
77
|
+
*/
|
|
42
78
|
getCwd() {
|
|
43
79
|
return utils_1.VipNodeJS.getProcessCwd();
|
|
44
80
|
}
|
|
45
81
|
}
|
|
46
82
|
exports.nestProcess = NestProcess.getInstance();
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdC1wcm9jZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL25lc3QtcHJvY2Vzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5Q0FBeUM7QUFFekMsSUFBSyxrQkFJSjtBQUpELFdBQUssa0JBQWtCO0lBQ3JCLHFDQUFlLENBQUE7SUFDZixtQ0FBYSxDQUFBO0lBQ2IscUNBQWUsQ0FBQTtBQUNqQixDQUFDLEVBSkksa0JBQWtCLEtBQWxCLGtCQUFrQixRQUl0QjtBQUVELE1BQU0sV0FBVztJQUdSLE1BQU0sQ0FBQyxXQUFXO1FBQ3ZCLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQTtRQUVuQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDdEIsQ0FBQztJQUtNLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDaEMsQ0FBQztJQU1NLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDL0IsQ0FBQztJQU1NLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDM0IsQ0FBQztJQU1NLGdCQUFnQjtRQUNyQixPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsS0FBSyxrQkFBa0IsQ0FBQyxLQUFLLENBQUE7SUFDdkQsQ0FBQztJQU1NLGVBQWU7UUFDcEIsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUssa0JBQWtCLENBQUMsSUFBSSxDQUFBO0lBQ3RELENBQUM7SUFNTSxrQkFBa0I7UUFDdkIsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUssa0JBQWtCLENBQUMsT0FBTyxDQUFBO0lBQ3pELENBQUM7SUFRTSxhQUFhO1FBQ2xCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQTtRQUNqQyxPQUFPLE9BQU8sSUFBSSxJQUFJLElBQUksTUFBTSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxPQUE2QixDQUFDLENBQUE7SUFDckcsQ0FBQztJQUtNLE1BQU0sQ0FBQyxNQUFjO1FBQzFCLE9BQU8saUJBQVMsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDeEMsQ0FBQztJQUtNLE1BQU07UUFDWCxPQUFPLGlCQUFTLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDbEMsQ0FBQztDQUNGO0FBRVksUUFBQSxXQUFXLEdBQUcsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFBIn0=
|
package/dist/nest-root.module.js
CHANGED
|
@@ -20,7 +20,8 @@ let NestRootModule = NestRootModule_1 = class NestRootModule {
|
|
|
20
20
|
exports.NestRootModule = NestRootModule;
|
|
21
21
|
exports.NestRootModule = NestRootModule = NestRootModule_1 = __decorate([
|
|
22
22
|
(0, common_1.Module)({
|
|
23
|
-
imports: [
|
|
23
|
+
imports: [
|
|
24
|
+
// NestConfigModule,
|
|
25
|
+
],
|
|
24
26
|
})
|
|
25
27
|
], NestRootModule);
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdC1yb290Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9uZXN0LXJvb3QubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSwyQ0FBc0Q7QUFPL0MsSUFBTSxjQUFjLHNCQUFwQixNQUFNLGNBQWM7SUFDbEIsTUFBTSxDQUFDLFFBQVEsQ0FBQyxpQkFBZ0Q7UUFDckUsT0FBTztZQUNMLE1BQU0sRUFBRSxnQkFBYztZQUN0QixHQUFHLGlCQUFpQjtTQUNyQixDQUFBO0lBQ0gsQ0FBQztDQUNGLENBQUE7QUFQWSx3Q0FBYzt5QkFBZCxjQUFjO0lBTDFCLElBQUEsZUFBTSxFQUFDO1FBQ04sT0FBTyxFQUFFLEVBRVI7S0FDRixDQUFDO0dBQ1csY0FBYyxDQU8xQiJ9
|
package/dist/nest-starter.d.ts
CHANGED
|
@@ -2,12 +2,31 @@ import type { ClassConstructor } from 'class-transformer';
|
|
|
2
2
|
import { NestModule } from '@142vip/nest';
|
|
3
3
|
import { NestApplicationOptions } from '@nestjs/common';
|
|
4
4
|
import { NestAppConfig } from './app.config';
|
|
5
|
+
/**
|
|
6
|
+
* Nest框架启动器
|
|
7
|
+
*/
|
|
5
8
|
export declare class NestStarter {
|
|
6
9
|
protected readonly nestApplicationOptions?: NestApplicationOptions | undefined;
|
|
7
10
|
private static instance;
|
|
11
|
+
/**
|
|
12
|
+
*
|
|
13
|
+
* @param nestApplicationOptions
|
|
14
|
+
* @protected
|
|
15
|
+
*/
|
|
8
16
|
protected constructor(nestApplicationOptions?: NestApplicationOptions | undefined);
|
|
17
|
+
/**
|
|
18
|
+
* 单例
|
|
19
|
+
* @param nestApplicationOptions 应用启动选项
|
|
20
|
+
*/
|
|
9
21
|
static getInstance(nestApplicationOptions?: NestApplicationOptions): NestStarter;
|
|
22
|
+
/**
|
|
23
|
+
* 入口
|
|
24
|
+
*/
|
|
10
25
|
start(appModule: NestModule, rootConfigSchema: ClassConstructor<NestAppConfig>): Promise<void>;
|
|
26
|
+
/**
|
|
27
|
+
* 注册全局模块
|
|
28
|
+
* @private
|
|
29
|
+
*/
|
|
11
30
|
private registerGlobalModules;
|
|
12
31
|
private getProviders;
|
|
13
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nest-starter.d.ts","sourceRoot":"","sources":["../src/nest-starter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAKzC,OAAO,EAGL,sBAAsB,EAEvB,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"nest-starter.d.ts","sourceRoot":"","sources":["../src/nest-starter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAKzC,OAAO,EAGL,sBAAsB,EAEvB,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAM5C;;GAEG;AACH,qBAAa,WAAW;IAQpB,SAAS,CAAC,QAAQ,CAAC,sBAAsB,CAAC,EAAE,sBAAsB;IAPpE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAa;IACpC;;;;OAIG;IACH,SAAS,aACY,sBAAsB,CAAC,EAAE,sBAAsB,YAAA;IAGpE;;;OAGG;WACW,WAAW,CACvB,sBAAsB,CAAC,EAAE,sBAAsB,GAC9C,WAAW;IAOd;;OAEG;IACU,KAAK,CAAC,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,CAAC,aAAa,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA8D3G;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAqB7B,OAAO,CAAC,YAAY;CAgErB"}
|
package/dist/nest-starter.js
CHANGED
|
@@ -12,53 +12,94 @@ const config_module_1 = require("./config.module");
|
|
|
12
12
|
const nest_root_module_1 = require("./nest-root.module");
|
|
13
13
|
const nest_util_1 = require("./nest-util");
|
|
14
14
|
const swagger_manager_1 = require("./swagger/swagger.manager");
|
|
15
|
+
/**
|
|
16
|
+
* Nest框架启动器
|
|
17
|
+
*/
|
|
15
18
|
class NestStarter {
|
|
19
|
+
nestApplicationOptions;
|
|
20
|
+
static instance;
|
|
21
|
+
/**
|
|
22
|
+
*
|
|
23
|
+
* @param nestApplicationOptions
|
|
24
|
+
* @protected
|
|
25
|
+
*/
|
|
16
26
|
constructor(nestApplicationOptions) {
|
|
17
27
|
this.nestApplicationOptions = nestApplicationOptions;
|
|
18
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* 单例
|
|
31
|
+
* @param nestApplicationOptions 应用启动选项
|
|
32
|
+
*/
|
|
19
33
|
static getInstance(nestApplicationOptions) {
|
|
20
34
|
if (this.instance == null)
|
|
21
35
|
this.instance = new this(nestApplicationOptions);
|
|
22
36
|
return this.instance;
|
|
23
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* 入口
|
|
40
|
+
*/
|
|
24
41
|
async start(appModule, rootConfigSchema) {
|
|
25
42
|
const ConfigModule = config_module_1.NestConfigModule.register(rootConfigSchema);
|
|
43
|
+
// 整个项目配置
|
|
26
44
|
const rootConfig = (0, nest_typed_config_1.selectConfig)(ConfigModule, rootConfigSchema);
|
|
45
|
+
// 开启日志
|
|
27
46
|
if (config_module_1.nestStaterConfig.enableLogger)
|
|
28
47
|
utils_1.vipLogger.logByBlank(JSON.stringify(rootConfig, null, 2));
|
|
29
48
|
const rootModule = nest_root_module_1.NestRootModule.register({
|
|
30
49
|
imports: [
|
|
50
|
+
// 配置模块
|
|
31
51
|
ConfigModule,
|
|
52
|
+
// 全局模块
|
|
32
53
|
...this.registerGlobalModules(),
|
|
54
|
+
// 业务模块
|
|
33
55
|
appModule,
|
|
34
56
|
],
|
|
35
57
|
providers: this.getProviders(),
|
|
36
58
|
});
|
|
59
|
+
/**
|
|
60
|
+
* 创建应用
|
|
61
|
+
*/
|
|
37
62
|
const app = await core_1.NestFactory.create(rootModule, {
|
|
38
63
|
bufferLogs: true,
|
|
39
64
|
...this.nestApplicationOptions,
|
|
40
65
|
});
|
|
66
|
+
/**
|
|
67
|
+
* 应用日志
|
|
68
|
+
*/
|
|
41
69
|
if (config_module_1.nestStaterConfig.enableLogger)
|
|
42
70
|
nest_logger_1.NestLoggerModule.useLogger(app);
|
|
71
|
+
// 路由版本功能
|
|
72
|
+
// apiVersioning必须在swagger之前加载
|
|
43
73
|
app.enableVersioning({ type: common_1.VersioningType.URI });
|
|
44
74
|
if (config_module_1.nestStaterConfig.enableSwagger && config_module_1.nestStaterConfig.swagger != null) {
|
|
45
75
|
new swagger_manager_1.SwaggerManager(config_module_1.nestStaterConfig.swagger).register(app);
|
|
76
|
+
// TODO 打印swagger相关信息
|
|
46
77
|
}
|
|
78
|
+
// 启用关闭钩子(for优雅下线)
|
|
47
79
|
app.enableShutdownHooks();
|
|
80
|
+
// 添加健康检查路由
|
|
48
81
|
app.getHttpAdapter()
|
|
49
82
|
.get('/health', (_req, res) => res.status(common_1.HttpStatus.OK).send('SERVER OK'));
|
|
83
|
+
// 应用启动
|
|
50
84
|
await app.listen(config_module_1.nestStaterConfig.port);
|
|
85
|
+
// 优化日志
|
|
51
86
|
void new nest_util_1.NestUtil(app, config_module_1.nestStaterConfig).printAppModuleStarterLogger();
|
|
52
87
|
}
|
|
88
|
+
/**
|
|
89
|
+
* 注册全局模块
|
|
90
|
+
* @private
|
|
91
|
+
*/
|
|
53
92
|
registerGlobalModules() {
|
|
54
93
|
const imports = [];
|
|
55
94
|
if (config_module_1.nestStaterConfig.enableLogger) {
|
|
56
95
|
imports.push(nest_logger_1.NestLoggerModule.register({ consoleLogger: { level: nest_logger_1.LoggerLevelEnum.trace } }));
|
|
57
96
|
}
|
|
97
|
+
// 注册Redis模块
|
|
58
98
|
if (config_module_1.nestStaterConfig.redis != null) {
|
|
59
99
|
imports.push(nest_redis_1.NestRedisModule.register(config_module_1.nestStaterConfig.redis));
|
|
60
100
|
}
|
|
61
101
|
console.log(111, config_module_1.nestStaterConfig.typeorm);
|
|
102
|
+
// 注册TypeOrm模块
|
|
62
103
|
if (config_module_1.nestStaterConfig.typeorm != null) {
|
|
63
104
|
imports.push(nest_typeorm_1.NestTypeOrmModule.register(config_module_1.nestStaterConfig.typeorm));
|
|
64
105
|
}
|
|
@@ -66,12 +107,67 @@ class NestStarter {
|
|
|
66
107
|
}
|
|
67
108
|
getProviders() {
|
|
68
109
|
return [
|
|
110
|
+
/**
|
|
111
|
+
* 传播上下文
|
|
112
|
+
*/
|
|
113
|
+
// {
|
|
114
|
+
// provide: APP_INTERCEPTOR,
|
|
115
|
+
// useClass: PropagationInterceptor,
|
|
116
|
+
// },
|
|
117
|
+
/**
|
|
118
|
+
* 统一响应体
|
|
119
|
+
*/
|
|
120
|
+
// {
|
|
121
|
+
// provide: APP_INTERCEPTOR,
|
|
122
|
+
// useClass: ResponseInterceptor,
|
|
123
|
+
// },
|
|
124
|
+
/**
|
|
125
|
+
* 序列化类(过滤不正常字段)
|
|
126
|
+
*/
|
|
69
127
|
{
|
|
70
128
|
provide: core_1.APP_INTERCEPTOR,
|
|
71
129
|
useClass: common_1.ClassSerializerInterceptor,
|
|
72
130
|
},
|
|
131
|
+
/**
|
|
132
|
+
* 校验入参
|
|
133
|
+
*/
|
|
134
|
+
// {
|
|
135
|
+
// provide: APP_PIPE,
|
|
136
|
+
// useValue: new CustomValidationPipe({
|
|
137
|
+
// // 下面两个class-transformer参数用于尝试将传进来的参数转成dto定义的类型
|
|
138
|
+
// transform: true,
|
|
139
|
+
// transformOptions: { enableImplicitConversion: true }, // TODO to delete it
|
|
140
|
+
// // 是否禁用DTO参数校验错误详情
|
|
141
|
+
// disableErrorMessages: nestStaterConfig.disableErrorMessages,
|
|
142
|
+
// // 下面两个class-validator参数用于禁止未知的参数
|
|
143
|
+
// // whitelist: true,
|
|
144
|
+
// // forbidNonWhitelisted: true,
|
|
145
|
+
// ...(nestStaterConfig.disableErrorMessages
|
|
146
|
+
// ? {
|
|
147
|
+
// exceptionFactory: (_errors): PlatformException => {
|
|
148
|
+
// return new PlatformException(ErrorCodes.BAD_REQUEST, HttpStatus.BAD_REQUEST)
|
|
149
|
+
// },
|
|
150
|
+
// }
|
|
151
|
+
// : {}),
|
|
152
|
+
// }),
|
|
153
|
+
// },
|
|
154
|
+
/**
|
|
155
|
+
* 拦截框架内部异常
|
|
156
|
+
*/
|
|
157
|
+
// {
|
|
158
|
+
// provide: APP_FILTER,
|
|
159
|
+
// useClass: GlobalFilter,
|
|
160
|
+
// },
|
|
161
|
+
// /**
|
|
162
|
+
// * 限制请求来源页
|
|
163
|
+
// */
|
|
164
|
+
// ...(nestStaterConfig.allowedReferers != null
|
|
165
|
+
// ? [{
|
|
166
|
+
// provide: APP_GUARD,
|
|
167
|
+
// useClass: RefererGuard,
|
|
168
|
+
// }]
|
|
169
|
+
// : []),
|
|
73
170
|
];
|
|
74
171
|
}
|
|
75
172
|
}
|
|
76
173
|
exports.NestStarter = NestStarter;
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdC1zdGFydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL25lc3Qtc3RhcnRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxxREFBdUU7QUFDdkUsbURBQW9EO0FBQ3BELHVEQUF3RDtBQUN4RCx5Q0FBeUM7QUFDekMsMkNBS3VCO0FBQ3ZCLHVDQUEyRDtBQUMzRCx5REFBZ0Q7QUFFaEQsbURBQW9FO0FBQ3BFLHlEQUFtRDtBQUNuRCwyQ0FBc0M7QUFDdEMsK0RBQTBEO0FBSzFELE1BQWEsV0FBVztJQU90QixZQUNxQixzQkFBK0M7UUFBL0MsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF5QjtJQUNoRSxDQUFDO0lBTUUsTUFBTSxDQUFDLFdBQVcsQ0FDdkIsc0JBQStDO1FBRS9DLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJO1lBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQTtRQUVsRCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDdEIsQ0FBQztJQUtNLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBcUIsRUFBRSxnQkFBaUQ7UUFDekYsTUFBTSxZQUFZLEdBQUcsZ0NBQWdCLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUE7UUFHaEUsTUFBTSxVQUFVLEdBQUcsSUFBQSxnQ0FBWSxFQUFDLFlBQVksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO1FBRy9ELElBQUksZ0NBQWdCLENBQUMsWUFBWTtZQUMvQixpQkFBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUUzRCxNQUFNLFVBQVUsR0FBRyxpQ0FBYyxDQUFDLFFBQVEsQ0FBQztZQUN6QyxPQUFPLEVBQUU7Z0JBRVAsWUFBWTtnQkFHWixHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRTtnQkFHL0IsU0FB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
|
package/dist/nest-util.d.ts
CHANGED
|
@@ -5,12 +5,35 @@ export declare class NestUtil {
|
|
|
5
5
|
readonly starterConfig: StarterConfig;
|
|
6
6
|
private logger;
|
|
7
7
|
constructor(app: INestApplication, starterConfig: StarterConfig);
|
|
8
|
+
/**
|
|
9
|
+
* 是否为开发模式
|
|
10
|
+
* - 本地环境
|
|
11
|
+
* - 开发环境
|
|
12
|
+
* - 测试环境
|
|
13
|
+
*/
|
|
8
14
|
isDevelopMode(): boolean;
|
|
9
15
|
printAppModuleStarterLogger(): Promise<void>;
|
|
16
|
+
/**
|
|
17
|
+
* GRPC 日志
|
|
18
|
+
* @private
|
|
19
|
+
*/
|
|
10
20
|
private privateGrpcLogger;
|
|
11
21
|
private printAppLogger;
|
|
22
|
+
/**
|
|
23
|
+
* 获取日志模板
|
|
24
|
+
* @private
|
|
25
|
+
*/
|
|
12
26
|
private printSwaggerLogger;
|
|
27
|
+
/**
|
|
28
|
+
* http服务日志
|
|
29
|
+
* @private
|
|
30
|
+
*/
|
|
13
31
|
private printHttpLogger;
|
|
32
|
+
/**
|
|
33
|
+
* 终端日志模板
|
|
34
|
+
* @param title
|
|
35
|
+
* @param info
|
|
36
|
+
*/
|
|
14
37
|
private getLoggerTemplate;
|
|
15
38
|
}
|
|
16
39
|
//# sourceMappingURL=nest-util.d.ts.map
|
package/dist/nest-util.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nest-util.d.ts","sourceRoot":"","sources":["../src/nest-util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAU,MAAM,gBAAgB,CAAA;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAGxC,qBAAa,QAAQ;IACnB,SAAgB,GAAG,EAAE,gBAAgB,CAAA;IACrC,SAAgB,aAAa,EAAE,aAAa,CAAA;IAC5C,OAAO,CAAC,MAAM,CAAe;gBAEjB,GAAG,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa;
|
|
1
|
+
{"version":3,"file":"nest-util.d.ts","sourceRoot":"","sources":["../src/nest-util.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAU,MAAM,gBAAgB,CAAA;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAGxC,qBAAa,QAAQ;IACnB,SAAgB,GAAG,EAAE,gBAAgB,CAAA;IACrC,SAAgB,aAAa,EAAE,aAAa,CAAA;IAC5C,OAAO,CAAC,MAAM,CAAe;gBAEjB,GAAG,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa;IAK/D;;;;;OAKG;IACI,aAAa,IAAI,OAAO;IAIlB,2BAA2B;IAkBxC;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,cAAc;IAWtB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAmB1B;;;OAGG;YACW,eAAe;IAgB7B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;CAS1B"}
|
package/dist/nest-util.js
CHANGED
|
@@ -5,23 +5,42 @@ const utils_1 = require("@142vip/utils");
|
|
|
5
5
|
const common_1 = require("@nestjs/common");
|
|
6
6
|
const nest_process_1 = require("./nest-process");
|
|
7
7
|
class NestUtil {
|
|
8
|
+
app;
|
|
9
|
+
starterConfig;
|
|
10
|
+
logger = new common_1.Logger();
|
|
8
11
|
constructor(app, starterConfig) {
|
|
9
|
-
this.logger = new common_1.Logger();
|
|
10
12
|
this.app = app;
|
|
11
13
|
this.starterConfig = starterConfig;
|
|
12
14
|
}
|
|
15
|
+
/**
|
|
16
|
+
* 是否为开发模式
|
|
17
|
+
* - 本地环境
|
|
18
|
+
* - 开发环境
|
|
19
|
+
* - 测试环境
|
|
20
|
+
*/
|
|
13
21
|
isDevelopMode() {
|
|
14
22
|
return nest_process_1.nestProcess.isDevelopMode();
|
|
15
23
|
}
|
|
16
24
|
async printAppModuleStarterLogger() {
|
|
25
|
+
// 未开启日志
|
|
17
26
|
if (!this.starterConfig.enableLogger)
|
|
18
27
|
return;
|
|
28
|
+
// 应用日志
|
|
19
29
|
this.printAppLogger();
|
|
30
|
+
// http 日志
|
|
20
31
|
await this.printHttpLogger();
|
|
32
|
+
// grpc 日志
|
|
21
33
|
this.privateGrpcLogger();
|
|
34
|
+
// swagger日志
|
|
22
35
|
this.printSwaggerLogger();
|
|
23
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* GRPC 日志
|
|
39
|
+
* @private
|
|
40
|
+
*/
|
|
24
41
|
privateGrpcLogger() {
|
|
42
|
+
// if (this.starterConfig.grpcServer?.url)
|
|
43
|
+
// logger.log(`🔌 GRPC服务: ${this.starterConfig.grpcServer.url}`)
|
|
25
44
|
}
|
|
26
45
|
printAppLogger() {
|
|
27
46
|
const appName = nest_process_1.nestProcess.getAppEnv();
|
|
@@ -33,13 +52,17 @@ class NestUtil {
|
|
|
33
52
|
});
|
|
34
53
|
this.logger.log(template);
|
|
35
54
|
}
|
|
55
|
+
/**
|
|
56
|
+
* 获取日志模板
|
|
57
|
+
* @private
|
|
58
|
+
*/
|
|
36
59
|
printSwaggerLogger() {
|
|
37
|
-
|
|
38
|
-
if (!this.starterConfig.enableSwagger || ((_a = this.starterConfig.swagger) === null || _a === void 0 ? void 0 : _a.envs) == null) {
|
|
60
|
+
if (!this.starterConfig.enableSwagger || this.starterConfig.swagger?.envs == null) {
|
|
39
61
|
return;
|
|
40
62
|
}
|
|
41
|
-
|
|
42
|
-
|
|
63
|
+
// swagger envs 配置 遍历
|
|
64
|
+
for (const [envName, serverUrl] of Object.entries(this.starterConfig.swagger?.envs)) {
|
|
65
|
+
const docPath = this.starterConfig.swagger?.docPath;
|
|
43
66
|
const uiUrl = `${serverUrl}:${this.starterConfig.port}/${docPath}`;
|
|
44
67
|
const apiUrl = `${serverUrl}:${this.starterConfig.port}/${docPath}-json`;
|
|
45
68
|
const template = this.getLoggerTemplate(`📚 Swagger API,${utils_1.VipColor.greenBright(envName)} ${utils_1.VipColor.greenBright('环境')}`, {
|
|
@@ -49,17 +72,27 @@ class NestUtil {
|
|
|
49
72
|
this.logger.log(template);
|
|
50
73
|
}
|
|
51
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* http服务日志
|
|
77
|
+
* @private
|
|
78
|
+
*/
|
|
52
79
|
async printHttpLogger() {
|
|
53
80
|
const apiUrl = await this.app.getUrl();
|
|
54
81
|
const { local, ip } = await utils_1.vipDetect.getAddress();
|
|
55
82
|
const [localOrigin, ipOrigin] = [local, ip].map((address) => {
|
|
56
83
|
const api = new URL(apiUrl);
|
|
84
|
+
// 替换hostname为地址
|
|
57
85
|
api.hostname = address;
|
|
58
86
|
return api.origin;
|
|
59
87
|
});
|
|
60
88
|
const template = this.getLoggerTemplate(`🌐 HTTP服务`, { local: localOrigin, network: ipOrigin });
|
|
61
89
|
this.logger.log(template);
|
|
62
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* 终端日志模板
|
|
93
|
+
* @param title
|
|
94
|
+
* @param info
|
|
95
|
+
*/
|
|
63
96
|
getLoggerTemplate(title, info) {
|
|
64
97
|
let content = '';
|
|
65
98
|
const maxKeyLength = Math.max(...Object.keys(info).map(key => key.length));
|
|
@@ -71,4 +104,3 @@ class NestUtil {
|
|
|
71
104
|
}
|
|
72
105
|
}
|
|
73
106
|
exports.NestUtil = NestUtil;
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdC11dGlsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL25lc3QtdXRpbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5Q0FBOEQ7QUFDOUQsMkNBQXlEO0FBRXpELGlEQUE0QztBQUU1QyxNQUFhLFFBQVE7SUFLbkIsWUFBWSxHQUFxQixFQUFFLGFBQTRCO1FBRnZELFdBQU0sR0FBRyxJQUFJLGVBQU0sRUFBRSxDQUFBO1FBRzNCLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFBO1FBQ2QsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUE7SUFDcEMsQ0FBQztJQVFNLGFBQWE7UUFDbEIsT0FBTywwQkFBVyxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQ3BDLENBQUM7SUFFTSxLQUFLLENBQUMsMkJBQTJCO1FBRXRDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVk7WUFDbEMsT0FBTTtRQUdSLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQTtRQUdyQixNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQTtRQUc1QixJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQTtRQUd4QixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQTtJQUMzQixDQUFDO0lBTU8saUJBQWlCO0lBSXpCLENBQUM7SUFFTyxjQUFjO1FBQ3BCLE1BQU0sT0FBTyxHQUFHLDBCQUFXLENBQUMsU0FBUyxFQUFFLENBQUE7UUFDdkMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRTtZQUNuRCxPQUFPLEVBQUUsMEJBQVcsQ0FBQyxVQUFVLEVBQUc7WUFDbEMsTUFBTSxFQUFFLEdBQUcsMEJBQVcsQ0FBQyxTQUFTLEVBQUUsWUFBWTtZQUM5QyxHQUFHLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDO1lBQ3ZDLEdBQUcs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
|
package/dist/pkgs.d.ts
CHANGED
package/dist/pkgs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pkgs.d.ts","sourceRoot":"","sources":["../src/pkgs.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA"}
|
|
1
|
+
{"version":3,"file":"pkgs.d.ts","sourceRoot":"","sources":["../src/pkgs.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,iBAAiB,CAAA"}
|
package/dist/pkgs.js
CHANGED
|
@@ -18,4 +18,4 @@ __exportStar(require("@142vip/nest"), exports);
|
|
|
18
18
|
__exportStar(require("@142vip/nest-logger"), exports);
|
|
19
19
|
__exportStar(require("@142vip/nest-redis"), exports);
|
|
20
20
|
__exportStar(require("@142vip/nest-typeorm"), exports);
|
|
21
|
-
|
|
21
|
+
__exportStar(require("@nestjs/swagger"), exports);
|
package/dist/swagger/index.d.ts
CHANGED
package/dist/swagger/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -16,6 +16,9 @@ export interface DocumentBuilderOptions {
|
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
18
|
export interface SwaggerOptions {
|
|
19
|
+
/**
|
|
20
|
+
* swagger路径
|
|
21
|
+
*/
|
|
19
22
|
docPath: string;
|
|
20
23
|
builderOptions?: DocumentBuilderOptions;
|
|
21
24
|
customOptions?: SwaggerCustomOptions;
|
|
@@ -23,10 +26,19 @@ export interface SwaggerOptions {
|
|
|
23
26
|
export declare class SwaggerDocumentBuilder {
|
|
24
27
|
getConfig(options?: DocumentBuilderOptions): Omit<OpenAPIObject, 'paths'>;
|
|
25
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* 管理器
|
|
31
|
+
*/
|
|
26
32
|
export declare class SwaggerManager {
|
|
27
33
|
private swaggerOptions;
|
|
28
34
|
constructor(swaggerOptions: SwaggerOptions);
|
|
35
|
+
/**
|
|
36
|
+
* 注册
|
|
37
|
+
*/
|
|
29
38
|
register(app: INestApplication): INestApplication;
|
|
30
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Swagger终端日志模板
|
|
42
|
+
*/
|
|
31
43
|
export declare function getTemplate(envName: string, uiPath: string, apiUrl: string): string;
|
|
32
44
|
//# sourceMappingURL=swagger.manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"swagger.manager.d.ts","sourceRoot":"","sources":["../../src/swagger/swagger.manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEjD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AAErF,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAA;QACZ,GAAG,EAAE,MAAM,CAAA;QACX,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;IACD,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAA;QACZ,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;CACF;AAED,MAAM,WAAW,cAAc;
|
|
1
|
+
{"version":3,"file":"swagger.manager.d.ts","sourceRoot":"","sources":["../../src/swagger/swagger.manager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEjD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAA;AAErF,MAAM,WAAW,sBAAsB;IACrC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAA;QACZ,GAAG,EAAE,MAAM,CAAA;QACX,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;IACD,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAA;QACZ,GAAG,EAAE,MAAM,CAAA;KACZ,CAAA;CACF;AAED,MAAM,WAAW,cAAc;IAC7B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,sBAAsB,CAAA;IACvC,aAAa,CAAC,EAAE,oBAAoB,CAAA;CACrC;AAED,qBAAa,sBAAsB;IAC1B,SAAS,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC;CA8BjF;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,cAAc,CAAgB;gBAC1B,cAAc,EAAE,cAAc;IAI1C;;OAEG;IACI,QAAQ,CAAC,GAAG,EAAE,gBAAgB,GAAG,gBAAgB;CAOzD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAMnF"}
|
|
@@ -7,6 +7,7 @@ const swagger_1 = require("@nestjs/swagger");
|
|
|
7
7
|
class SwaggerDocumentBuilder {
|
|
8
8
|
getConfig(options) {
|
|
9
9
|
const document = new swagger_1.DocumentBuilder();
|
|
10
|
+
// 初始化
|
|
10
11
|
if (options == null) {
|
|
11
12
|
options = {};
|
|
12
13
|
}
|
|
@@ -32,19 +33,28 @@ class SwaggerDocumentBuilder {
|
|
|
32
33
|
}
|
|
33
34
|
}
|
|
34
35
|
exports.SwaggerDocumentBuilder = SwaggerDocumentBuilder;
|
|
36
|
+
/**
|
|
37
|
+
* 管理器
|
|
38
|
+
*/
|
|
35
39
|
class SwaggerManager {
|
|
40
|
+
swaggerOptions;
|
|
36
41
|
constructor(swaggerOptions) {
|
|
37
42
|
this.swaggerOptions = swaggerOptions;
|
|
38
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* 注册
|
|
46
|
+
*/
|
|
39
47
|
register(app) {
|
|
40
|
-
|
|
41
|
-
const documentConfig = new SwaggerDocumentBuilder().getConfig((_a = this.swaggerOptions) === null || _a === void 0 ? void 0 : _a.builderOptions);
|
|
48
|
+
const documentConfig = new SwaggerDocumentBuilder().getConfig(this.swaggerOptions?.builderOptions);
|
|
42
49
|
const document = swagger_1.SwaggerModule.createDocument(app, documentConfig);
|
|
43
50
|
swagger_1.SwaggerModule.setup(this.swaggerOptions.docPath, app, document, this.swaggerOptions.customOptions);
|
|
44
51
|
return app;
|
|
45
52
|
}
|
|
46
53
|
}
|
|
47
54
|
exports.SwaggerManager = SwaggerManager;
|
|
55
|
+
/**
|
|
56
|
+
* Swagger终端日志模板
|
|
57
|
+
*/
|
|
48
58
|
function getTemplate(envName, uiPath, apiUrl) {
|
|
49
59
|
return `📚 Swagger API:${utils_1.VipColor.greenBright(envName)} 环境。
|
|
50
60
|
|
|
@@ -52,4 +62,3 @@ function getTemplate(envName, uiPath, apiUrl) {
|
|
|
52
62
|
➜ JSON: ${apiUrl}
|
|
53
63
|
`;
|
|
54
64
|
}
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dhZ2dlci5tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N3YWdnZXIvc3dhZ2dlci5tYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQXVGQSxrQ0FNQztBQTdGRCx5Q0FBd0M7QUFFeEMsNkNBQWdFO0FBNEJoRSxNQUFhLHNCQUFzQjtJQUMxQixTQUFTLENBQUMsT0FBZ0M7UUFDL0MsTUFBTSxRQUFRLEdBQUcsSUFBSSx5QkFBZSxFQUFFLENBQUE7UUFFdEMsSUFBSSxPQUFPLElBQUksSUFBSSxFQUFFLENBQUM7WUFDcEIsT0FBTyxHQUFHLEVBQUUsQ0FBQTtRQUNkLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxFQUFFLENBQUM7WUFDMUIsUUFBUSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDbEMsQ0FBQztRQUVELElBQUksT0FBTyxDQUFDLFdBQVcsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNoQyxRQUFRLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUM5QyxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzVCLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ3RDLENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxXQUFXLElBQUksSUFBSSxFQUFFLENBQUM7WUFDaEMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUNqRCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzVCLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUN2RixDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzVCLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUNoRSxDQUFDO1FBRUQsT0FBTyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDekIsQ0FBQztDQUNGO0FBL0JELHdEQStCQztBQUtELE1BQWEsY0FBYztJQUV6QixZQUFZLGNBQThCO1FBQ3hDLElBQUksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFBO0lBQ3RDLENBQUM7SUFLTSxRQUFRLENBQUMsR0FBcUI7O1FBQ25DLE1BQU0sY0FBYyxHQUFHLElBQUksc0JBQXNCLEVBQUUsQ0FBQyxTQUFTLENBQUMsTUFBQSxJQUFJLENBQUMsY0FBYywwQ0FBRSxjQUFjLENBQUMsQ0FBQTtRQUNsRyxNQUFNLFFBQVEsR0FBRyx1QkFBYSxDQUFDLGNBQWMsQ0FBQyxHQUFHLEVBQUUsY0FBYyxDQUFDLENBQUE7UUFDbEUsdUJBQWEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxDQUFBO1FBRWxHLE9BQU8sR0FBRyxDQUFBO0lBQ1osQ0FBQztDQUNGO0FBaEJELHdDQWdCQztBQUtELFNBQWdCLFdBQVcsQ0FBQyxPQUFlLEVBQUUsTUFBYyxFQUFFLE1BQWM7SUFDekUsT0FBTyxrQkFBa0IsZ0JBQVEsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDOzttQkFFckMsTUFBTTttQkFDTixNQUFNO0dBQ3RCLENBQUE7QUFDSCxDQUFDIn0=
|
|
@@ -9,4 +9,3 @@ var swagger_3 = require("@nestjs/swagger");
|
|
|
9
9
|
Object.defineProperty(exports, "SwaggerPickType", { enumerable: true, get: function () { return swagger_3.PickType; } });
|
|
10
10
|
var swagger_4 = require("@nestjs/swagger");
|
|
11
11
|
Object.defineProperty(exports, "SwaggerOmitType", { enumerable: true, get: function () { return swagger_4.OmitType; } });
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dhZ2dlci50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N3YWdnZXIvc3dhZ2dlci50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJDQUE2RTtBQUFwRSxrSEFBQSxnQkFBZ0IsT0FBMkI7QUFDcEQsMkNBQW1FO0FBQTFELDZHQUFBLFdBQVcsT0FBc0I7QUFDMUMsMkNBQTZEO0FBQXBELDBHQUFBLFFBQVEsT0FBbUI7QUFDcEMsMkNBQTZEO0FBQXBELDBHQUFBLFFBQVEsT0FBbUIifQ==
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@142vip/nest-starter",
|
|
3
|
-
"version": "0.0.1-alpha.
|
|
3
|
+
"version": "0.0.1-alpha.9",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Nest.js框架下Redis使用最佳实践",
|
|
6
6
|
"author": "mmdapl <mmdapl@163.com>",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
".": {
|
|
25
25
|
"types": "./dist/index.d.ts",
|
|
26
26
|
"import": "./dist/index.js",
|
|
27
|
-
"require": "./
|
|
27
|
+
"require": "./index.js"
|
|
28
28
|
}
|
|
29
29
|
},
|
|
30
30
|
"authorInfo": {
|
|
@@ -40,22 +40,26 @@
|
|
|
40
40
|
"dist"
|
|
41
41
|
],
|
|
42
42
|
"peerDependencies": {
|
|
43
|
-
"@142vip/nest": "0.0.1-alpha.
|
|
43
|
+
"@142vip/nest": "0.0.1-alpha.5",
|
|
44
|
+
"@142vip/nest-logger": "0.0.1-alpha.2",
|
|
45
|
+
"@142vip/nest-redis": "0.0.1-alpha.4",
|
|
46
|
+
"@142vip/nest-typeorm": "0.0.1-alpha.7",
|
|
47
|
+
"@142vip/utils": "0.0.1-alpha.46"
|
|
44
48
|
},
|
|
45
49
|
"dependencies": {
|
|
46
50
|
"@nestjs/swagger": "11.2.1",
|
|
47
|
-
"
|
|
48
|
-
"@142vip/nest-
|
|
49
|
-
"@142vip/nest-
|
|
50
|
-
"@142vip/
|
|
51
|
-
"@142vip/
|
|
51
|
+
"@142vip/nest": "0.0.1-alpha.5",
|
|
52
|
+
"@142vip/nest-redis": "0.0.1-alpha.4",
|
|
53
|
+
"@142vip/nest-typeorm": "0.0.1-alpha.7",
|
|
54
|
+
"@142vip/utils": "0.0.1-alpha.46",
|
|
55
|
+
"@142vip/nest-logger": "0.0.1-alpha.2"
|
|
52
56
|
},
|
|
53
57
|
"publishConfig": {
|
|
54
58
|
"access": "public",
|
|
55
59
|
"registry": "https://registry.npmjs.org"
|
|
56
60
|
},
|
|
57
61
|
"scripts": {
|
|
58
|
-
"build": "
|
|
62
|
+
"build": "rm -rf dist && tsc -p tsconfig.json",
|
|
59
63
|
"typecheck": "tsc --noEmit",
|
|
60
64
|
"test": "npx jest",
|
|
61
65
|
"test:coverage": "npx jest --coverage"
|