@fastcar/core 0.2.60 → 0.2.61

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. package/package.json +2 -4
  2. package/src/model/WinstonLogger.ts +4 -3
  3. package/src/utils/ClassLoader.ts +1 -1
  4. package/src/utils/ValidationUtil.ts +10 -1
  5. package/target/FastCarApplication.js +692 -692
  6. package/target/annotation/Application.js +45 -45
  7. package/target/annotation/ExceptionMonitor.js +16 -16
  8. package/target/annotation/bind/AddRequireModule.js +21 -21
  9. package/target/annotation/bind/AliasInjection.js +23 -23
  10. package/target/annotation/bind/Autowired.js +13 -13
  11. package/target/annotation/bind/CallDependency.js +23 -23
  12. package/target/annotation/data/DBType.js +11 -11
  13. package/target/annotation/data/DS.js +54 -54
  14. package/target/annotation/data/DSIndex.js +9 -9
  15. package/target/annotation/data/Entity.js +10 -10
  16. package/target/annotation/data/Field.js +18 -18
  17. package/target/annotation/data/PrimaryKey.js +9 -9
  18. package/target/annotation/data/SqlSession.js +9 -9
  19. package/target/annotation/data/Table.js +35 -35
  20. package/target/annotation/data/Transactional.js +52 -52
  21. package/target/annotation/env/ApplicationSetting.js +25 -25
  22. package/target/annotation/env/BaseFilePath.js +14 -14
  23. package/target/annotation/env/BaseName.js +9 -9
  24. package/target/annotation/env/BasePath.js +14 -14
  25. package/target/annotation/env/ENV.js +10 -10
  26. package/target/annotation/env/ResourcePath.js +9 -9
  27. package/target/annotation/lifeCycle/AddLifeCycleItem.js +18 -18
  28. package/target/annotation/lifeCycle/ApplicationDestory.js +15 -15
  29. package/target/annotation/lifeCycle/ApplicationInit.js +15 -15
  30. package/target/annotation/lifeCycle/ApplicationRunner.js +7 -7
  31. package/target/annotation/lifeCycle/ApplicationStart.js +24 -24
  32. package/target/annotation/lifeCycle/ApplicationStop.js +20 -20
  33. package/target/annotation/property/Deprecate.js +19 -19
  34. package/target/annotation/property/NotImplemented.js +8 -8
  35. package/target/annotation/property/Override.js +7 -7
  36. package/target/annotation/property/Readonly.js +16 -16
  37. package/target/annotation/scan/ComponentInjection.js +21 -21
  38. package/target/annotation/scan/ComponentScan.js +9 -9
  39. package/target/annotation/scan/ComponentScanExclusion.js +25 -25
  40. package/target/annotation/scan/ComponentScanMust.js +25 -25
  41. package/target/annotation/scan/Hotter.js +8 -8
  42. package/target/annotation/stereotype/BeanName.js +11 -11
  43. package/target/annotation/stereotype/Component.js +8 -8
  44. package/target/annotation/stereotype/Configure.js +14 -14
  45. package/target/annotation/stereotype/Controller.js +9 -9
  46. package/target/annotation/stereotype/Injection.js +12 -12
  47. package/target/annotation/stereotype/Log.js +17 -17
  48. package/target/annotation/stereotype/Repository.js +9 -9
  49. package/target/annotation/stereotype/Service.js +9 -9
  50. package/target/annotation/valid/AddChildValid.js +56 -56
  51. package/target/annotation/valid/CustomType.js +11 -11
  52. package/target/annotation/valid/DefaultVal.js +10 -10
  53. package/target/annotation/valid/NotNull.js +8 -8
  54. package/target/annotation/valid/Rule.js +100 -100
  55. package/target/annotation/valid/Size.js +10 -10
  56. package/target/annotation/valid/Type.js +10 -10
  57. package/target/annotation/valid/ValidCustom.js +17 -17
  58. package/target/annotation/valid/ValidForm.js +133 -133
  59. package/target/annotation.js +108 -108
  60. package/target/config/ApplicationConfig.js +2 -2
  61. package/target/config/SysConfig.js +19 -19
  62. package/target/constant/AppStatusEnum.js +9 -9
  63. package/target/constant/BootPriority.js +11 -11
  64. package/target/constant/CommonConstant.js +18 -18
  65. package/target/constant/ComponentKind.js +11 -11
  66. package/target/constant/DataTypes.js +19 -19
  67. package/target/constant/FastCarMetaData.js +31 -31
  68. package/target/constant/LifeCycleModule.js +9 -9
  69. package/target/db.js +49 -48
  70. package/target/index.js +21 -21
  71. package/target/interface/ApplicationHook.js +2 -2
  72. package/target/interface/ApplicationInterface.js +2 -2
  73. package/target/interface/ApplicationRunnerService.js +2 -2
  74. package/target/interface/DataSourceManager.js +2 -2
  75. package/target/interface/Logger.js +5 -5
  76. package/target/model/BaseMapper.js +98 -98
  77. package/target/model/DataMap.js +87 -87
  78. package/target/model/FormRuleModel.js +2 -2
  79. package/target/model/ValidError.js +5 -5
  80. package/target/model/WinstonLogger.js +96 -95
  81. package/target/src/FastCarApplication.js +704 -0
  82. package/target/src/annotation/Application.js +45 -0
  83. package/target/src/annotation/ExceptionMonitor.js +16 -0
  84. package/target/src/annotation/bind/AddRequireModule.js +21 -0
  85. package/target/src/annotation/bind/AliasInjection.js +23 -0
  86. package/target/src/annotation/bind/Autowired.js +13 -0
  87. package/target/src/annotation/bind/CallDependency.js +23 -0
  88. package/target/src/annotation/data/DBType.js +11 -0
  89. package/target/src/annotation/data/DS.js +54 -0
  90. package/target/src/annotation/data/DSIndex.js +9 -0
  91. package/target/src/annotation/data/Entity.js +10 -0
  92. package/target/src/annotation/data/Field.js +18 -0
  93. package/target/src/annotation/data/PrimaryKey.js +9 -0
  94. package/target/src/annotation/data/SqlSession.js +9 -0
  95. package/target/src/annotation/data/Table.js +35 -0
  96. package/target/src/annotation/data/Transactional.js +52 -0
  97. package/target/src/annotation/env/ApplicationSetting.js +25 -0
  98. package/target/src/annotation/env/BaseFilePath.js +14 -0
  99. package/target/src/annotation/env/BaseName.js +9 -0
  100. package/target/src/annotation/env/BasePath.js +14 -0
  101. package/target/src/annotation/env/ENV.js +10 -0
  102. package/target/src/annotation/env/ResourcePath.js +9 -0
  103. package/target/src/annotation/lifeCycle/AddLifeCycleItem.js +18 -0
  104. package/target/src/annotation/lifeCycle/ApplicationDestory.js +15 -0
  105. package/target/src/annotation/lifeCycle/ApplicationInit.js +15 -0
  106. package/target/src/annotation/lifeCycle/ApplicationRunner.js +7 -0
  107. package/target/src/annotation/lifeCycle/ApplicationStart.js +24 -0
  108. package/target/src/annotation/lifeCycle/ApplicationStop.js +20 -0
  109. package/target/src/annotation/property/Deprecate.js +19 -0
  110. package/target/src/annotation/property/NotImplemented.js +8 -0
  111. package/target/src/annotation/property/Override.js +7 -0
  112. package/target/src/annotation/property/Readonly.js +16 -0
  113. package/target/src/annotation/scan/ComponentInjection.js +21 -0
  114. package/target/src/annotation/scan/ComponentScan.js +9 -0
  115. package/target/src/annotation/scan/ComponentScanExclusion.js +25 -0
  116. package/target/src/annotation/scan/ComponentScanMust.js +25 -0
  117. package/target/src/annotation/scan/Hotter.js +8 -0
  118. package/target/src/annotation/stereotype/BeanName.js +11 -0
  119. package/target/src/annotation/stereotype/Component.js +8 -0
  120. package/target/src/annotation/stereotype/Configure.js +14 -0
  121. package/target/src/annotation/stereotype/Controller.js +9 -0
  122. package/target/src/annotation/stereotype/Injection.js +12 -0
  123. package/target/src/annotation/stereotype/Log.js +22 -0
  124. package/target/src/annotation/stereotype/Repository.js +9 -0
  125. package/target/src/annotation/stereotype/Service.js +9 -0
  126. package/target/src/annotation/valid/AddChildValid.js +56 -0
  127. package/target/src/annotation/valid/CustomType.js +11 -0
  128. package/target/src/annotation/valid/DefaultVal.js +10 -0
  129. package/target/src/annotation/valid/NotNull.js +8 -0
  130. package/target/src/annotation/valid/Rule.js +100 -0
  131. package/target/src/annotation/valid/Size.js +10 -0
  132. package/target/src/annotation/valid/Type.js +10 -0
  133. package/target/src/annotation/valid/ValidCustom.js +17 -0
  134. package/target/src/annotation/valid/ValidForm.js +133 -0
  135. package/target/src/annotation.js +108 -0
  136. package/target/src/config/ApplicationConfig.js +2 -0
  137. package/target/src/config/SysConfig.js +19 -0
  138. package/target/src/constant/AppStatusEnum.js +9 -0
  139. package/target/src/constant/BootPriority.js +11 -0
  140. package/target/src/constant/CommonConstant.js +18 -0
  141. package/target/src/constant/ComponentKind.js +11 -0
  142. package/target/src/constant/DataTypes.js +19 -0
  143. package/target/src/constant/FastCarMetaData.js +31 -0
  144. package/target/src/constant/LifeCycleModule.js +9 -0
  145. package/target/src/db.js +49 -0
  146. package/target/src/index.js +21 -0
  147. package/target/src/interface/ApplicationHook.js +2 -0
  148. package/target/src/interface/ApplicationInterface.js +2 -0
  149. package/target/src/interface/ApplicationRunnerService.js +2 -0
  150. package/target/src/interface/DataSourceManager.js +2 -0
  151. package/target/src/interface/Logger.js +5 -0
  152. package/target/src/model/BaseMapper.js +103 -0
  153. package/target/src/model/DataMap.js +87 -0
  154. package/target/src/model/FormRuleModel.js +2 -0
  155. package/target/src/model/ValidError.js +5 -0
  156. package/target/src/model/WinstonLogger.js +97 -0
  157. package/target/src/type/ComponentDesc.js +2 -0
  158. package/target/src/type/DesignMeta.js +15 -0
  159. package/target/src/type/FileHotterDesc.js +2 -0
  160. package/target/src/type/MapperType.js +2 -0
  161. package/target/src/type/ProcessType.js +2 -0
  162. package/target/src/type/SqlError.js +5 -0
  163. package/target/src/type/WinstonLoggerType.js +9 -0
  164. package/target/src/utils/ClassLoader.js +65 -0
  165. package/target/src/utils/ClassUtils.js +35 -0
  166. package/target/src/utils/CryptoUtil.js +86 -0
  167. package/target/src/utils/DataFormat.js +88 -0
  168. package/target/src/utils/DateUtil.js +71 -0
  169. package/target/src/utils/FileUtil.js +153 -0
  170. package/target/src/utils/FormatStr.js +14 -0
  171. package/target/src/utils/IPUtils.js +34 -0
  172. package/target/src/utils/Id.js +9 -0
  173. package/target/src/utils/Mix.js +62 -0
  174. package/target/src/utils/ReflectUtil.js +22 -0
  175. package/target/src/utils/TypeUtil.js +53 -0
  176. package/target/src/utils/ValidationUtil.js +118 -0
  177. package/target/src/utils.js +25 -0
  178. package/target/test/example/simple/app-test.js +57 -0
  179. package/target/test/example/simple/app.js +116 -0
  180. package/target/test/example/simple/component/StartRunner.js +19 -0
  181. package/target/test/example/simple/component/StopRunner.js +23 -0
  182. package/target/test/example/simple/config/EnvConfig.js +16 -0
  183. package/target/test/example/simple/config/HelloConfig.js +16 -0
  184. package/target/test/example/simple/config/HotConfig.js +18 -0
  185. package/target/test/example/simple/controller/AliasController.js +17 -0
  186. package/target/test/example/simple/controller/HelloController.js +55 -0
  187. package/target/test/example/simple/controller/NotFoundController.js +36 -0
  188. package/target/test/example/simple/noclude/excludeApp.js +17 -0
  189. package/target/test/example/simple/service/CallService.js +24 -0
  190. package/target/test/example/simple/service/HelloService.js +18 -0
  191. package/target/test/example/simple/service/LogService.js +32 -0
  192. package/target/test/multi/app.js +29 -0
  193. package/target/test/multi/service/aService.js +33 -0
  194. package/target/test/multi/service/bService.js +35 -0
  195. package/target/test/multi/service/cService.js +40 -0
  196. package/target/test/unit/dataMap-test.js +35 -0
  197. package/target/test/unit/decorators-test.js +59 -0
  198. package/target/test/unit/ds-test.js +58 -0
  199. package/target/test/unit/reflectMetadata-test.js +27 -0
  200. package/target/test/unit/valid-test.js +99 -0
  201. package/target/test/unit/winston-test.js +15 -0
  202. package/target/type/ComponentDesc.js +2 -2
  203. package/target/type/DesignMeta.js +15 -15
  204. package/target/type/FileHotterDesc.js +2 -2
  205. package/target/type/MapperType.js +2 -2
  206. package/target/type/ProcessType.js +2 -2
  207. package/target/type/SqlError.js +5 -5
  208. package/target/type/WinstonLoggerType.js +9 -9
  209. package/target/utils/ClassLoader.js +65 -65
  210. package/target/utils/ClassUtils.js +35 -35
  211. package/target/utils/CryptoUtil.js +86 -86
  212. package/target/utils/DataFormat.js +88 -88
  213. package/target/utils/DateUtil.js +71 -71
  214. package/target/utils/FileUtil.js +153 -153
  215. package/target/utils/FormatStr.js +14 -14
  216. package/target/utils/IPUtils.js +34 -34
  217. package/target/utils/Id.js +9 -9
  218. package/target/utils/Mix.js +62 -62
  219. package/target/utils/ReflectUtil.js +22 -22
  220. package/target/utils/TypeUtil.js +53 -53
  221. package/target/utils/ValidationUtil.js +124 -118
  222. package/target/utils.js +25 -25
  223. package/test/unit/decorators-test.ts +3 -3
  224. package/test/unit/logs/sys.log +0 -24
@@ -1,95 +1,96 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const winston = require("winston");
4
- const WinstonLoggerType_1 = require("../type/WinstonLoggerType");
5
- const path = require("path");
6
- const utils_1 = require("../utils");
7
- const util = require("util");
8
- const SPLAT = Symbol.for("splat");
9
- class WinstonLogger {
10
- constructor(config) {
11
- this.config = config;
12
- this.categoryMap = new Map();
13
- }
14
- //控制台着色
15
- colorize(str, level) {
16
- let colorStyle = Reflect.get(WinstonLoggerType_1.ColorLevelType, level);
17
- if (!colorStyle) {
18
- return str;
19
- }
20
- return `\x1B[${colorStyle[0]}m ${str} \x1B[${colorStyle[1]}m`;
21
- }
22
- //数据着色为白色
23
- colorizeData(data) {
24
- let msg = utils_1.ValidationUtil.isObject(data) ? JSON.stringify(data) : data;
25
- return `\x1B[37m ${msg} \x1B[39m`;
26
- }
27
- setConfig(config) {
28
- this.config = config;
29
- }
30
- hasLogger(category) {
31
- return winston.loggers.has(category);
32
- }
33
- getLogger(category) {
34
- return this.categoryMap.get(category);
35
- }
36
- addLogger(category) {
37
- if (this.categoryMap.has(category)) {
38
- winston.loggers.close(category);
39
- }
40
- let newLogger = winston.loggers.add(category, {
41
- format: winston.format.combine(winston.format.label({ label: category }), winston.format.printf(info => {
42
- //debug模式等级时仅为控制台输出
43
- let level = info.level.toUpperCase();
44
- let timestamp = utils_1.DateUtil.toDateTimeMS();
45
- let content = {
46
- timestamp,
47
- level,
48
- label: info.label,
49
- message: info.message,
50
- };
51
- if (Reflect.has(info, SPLAT)) {
52
- Reflect.set(content, "splat", JSON.stringify(Reflect.get(info, SPLAT)));
53
- }
54
- if (info.stack) {
55
- Reflect.set(content, "stack", info.stack);
56
- }
57
- Reflect.set(info, "timestamp", content.timestamp);
58
- //新增打印控制台
59
- if (this.config.printConsole) {
60
- let text = this.colorize(util.format("[%s] [%s] %s - ", timestamp, level, info.label), info.level);
61
- text += this.colorizeData(content.message);
62
- if (Reflect.has(info, SPLAT)) {
63
- let splatMsg = Reflect.get(info, SPLAT);
64
- splatMsg.forEach(item => {
65
- text += " " + this.colorizeData(item);
66
- });
67
- }
68
- if (info.stack) {
69
- text += this.colorizeData(`\nstatck: ${info.stack}`);
70
- }
71
- let fn = console.info;
72
- if (Reflect.has(console, info.level)) {
73
- fn = Reflect.get(console, info.level);
74
- }
75
- Reflect.apply(fn, console, [text]);
76
- }
77
- return util.format("%j", content);
78
- })),
79
- transports: [
80
- new winston.transports.File({
81
- level: this.config.fileLevel,
82
- filename: path.join(this.config.rootPath, `${category}.log`),
83
- maxsize: this.config.maxsize,
84
- maxFiles: this.config.maxFiles,
85
- }),
86
- ],
87
- });
88
- this.categoryMap.set(category, newLogger);
89
- return newLogger;
90
- }
91
- getLoggerList() {
92
- return [...this.categoryMap.values()];
93
- }
94
- }
95
- exports.default = WinstonLogger;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const winston = require("winston");
4
+ const WinstonLoggerType_1 = require("../type/WinstonLoggerType");
5
+ const path = require("path");
6
+ const utils_1 = require("../utils");
7
+ const util = require("util");
8
+ const SPLAT = Symbol.for("splat");
9
+ class WinstonLogger {
10
+ constructor(config) {
11
+ this.config = config;
12
+ this.categoryMap = new Map();
13
+ }
14
+ //控制台着色
15
+ colorize(str, level) {
16
+ let colorStyle = Reflect.get(WinstonLoggerType_1.ColorLevelType, level);
17
+ if (!colorStyle) {
18
+ return str;
19
+ }
20
+ return `\x1B[${colorStyle[0]}m ${str} \x1B[${colorStyle[1]}m`;
21
+ }
22
+ //数据着色为白色
23
+ colorizeData(data) {
24
+ let msg = utils_1.ValidationUtil.isObject(data) ? JSON.stringify(data) : data;
25
+ return `\x1B[37m ${msg} \x1B[39m`;
26
+ }
27
+ setConfig(config) {
28
+ this.config = config;
29
+ }
30
+ hasLogger(category) {
31
+ return winston.loggers.has(category);
32
+ }
33
+ getLogger(category) {
34
+ return this.categoryMap.get(category);
35
+ }
36
+ addLogger(category) {
37
+ if (this.categoryMap.has(category)) {
38
+ winston.loggers.close(category);
39
+ }
40
+ let newLogger = winston.loggers.add(category, {
41
+ format: winston.format.combine(winston.format.label({ label: category }), winston.format.printf((info) => {
42
+ //debug模式等级时仅为控制台输出
43
+ let level = info.level.toUpperCase();
44
+ let timestamp = utils_1.DateUtil.toDateTimeMS();
45
+ let content = {
46
+ timestamp,
47
+ level,
48
+ label: info.label,
49
+ message: info.message,
50
+ };
51
+ if (Reflect.has(info, SPLAT)) {
52
+ let splat = Reflect.get(info, SPLAT);
53
+ Reflect.set(content, "splat", typeof splat == "string" ? splat : JSON.stringify(splat));
54
+ }
55
+ if (info.stack) {
56
+ Reflect.set(content, "stack", info.stack);
57
+ }
58
+ Reflect.set(info, "timestamp", content.timestamp);
59
+ //新增打印控制台
60
+ if (this.config.printConsole) {
61
+ let text = this.colorize(util.format("[%s] [%s] %s - ", timestamp, level, info.label), info.level);
62
+ text += this.colorizeData(content.message);
63
+ if (Reflect.has(info, SPLAT)) {
64
+ let splatMsg = Reflect.get(info, SPLAT);
65
+ splatMsg.forEach((item) => {
66
+ text += " " + this.colorizeData(item);
67
+ });
68
+ }
69
+ if (info.stack) {
70
+ text += this.colorizeData(`\nstatck: ${info.stack}`);
71
+ }
72
+ let fn = console.info;
73
+ if (Reflect.has(console, info.level)) {
74
+ fn = Reflect.get(console, info.level);
75
+ }
76
+ Reflect.apply(fn, console, [text]);
77
+ }
78
+ return util.format("%j", content);
79
+ })),
80
+ transports: [
81
+ new winston.transports.File({
82
+ level: this.config.fileLevel,
83
+ filename: path.join(this.config.rootPath, `${category}.log`),
84
+ maxsize: this.config.maxsize,
85
+ maxFiles: this.config.maxFiles,
86
+ }),
87
+ ],
88
+ });
89
+ this.categoryMap.set(category, newLogger);
90
+ return newLogger;
91
+ }
92
+ getLoggerList() {
93
+ return [...this.categoryMap.values()];
94
+ }
95
+ }
96
+ exports.default = WinstonLogger;