@simplysm/sd-cli 10.0.21 → 10.0.23

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 (248) hide show
  1. package/dist/SdTsIncrementalBuilder.d.ts +1 -1
  2. package/dist/SdTsIncrementalBuilder.js.map +1 -1
  3. package/dist/SdTsIncrementalBuilder.mjs +39 -16
  4. package/dist/commons.d.ts +1 -0
  5. package/dist/entry/SdCliLocalUpdate.d.ts +7 -0
  6. package/dist/entry/SdCliLocalUpdate.js.map +1 -0
  7. package/dist/entry/SdCliLocalUpdate.mjs +55 -0
  8. package/dist/sd-cli.js.map +1 -1
  9. package/dist/sd-cli.mjs +15 -0
  10. package/package.json +5 -5
  11. package/src/SdTsIncrementalBuilder.ts +29 -4
  12. package/src/commons.ts +1 -0
  13. package/src/entry/SdCliLocalUpdate.ts +70 -0
  14. package/src/sd-cli.ts +19 -0
  15. package/dist/sd-core-common/src/decorators/NotifyPropertyChange.d.ts +0 -20
  16. package/dist/sd-core-common/src/decorators/NotifyPropertyChange.js.map +0 -1
  17. package/dist/sd-core-common/src/decorators/NotifyPropertyChange.mjs +0 -12
  18. package/dist/sd-core-common/src/decorators/PropertyGetSetDecoratorBase.d.ts +0 -43
  19. package/dist/sd-core-common/src/decorators/PropertyGetSetDecoratorBase.js.map +0 -1
  20. package/dist/sd-core-common/src/decorators/PropertyGetSetDecoratorBase.mjs +0 -54
  21. package/dist/sd-core-common/src/decorators/PropertyValidate.d.ts +0 -16
  22. package/dist/sd-core-common/src/decorators/PropertyValidate.js.map +0 -1
  23. package/dist/sd-core-common/src/decorators/PropertyValidate.mjs +0 -26
  24. package/dist/sd-core-common/src/decorators/decorator-return-types.d.ts +0 -14
  25. package/dist/sd-core-common/src/decorators/decorator-return-types.js.map +0 -1
  26. package/dist/sd-core-common/src/decorators/decorator-return-types.mjs +0 -2
  27. package/dist/sd-core-common/src/errors/ArgumentError.d.ts +0 -10
  28. package/dist/sd-core-common/src/errors/ArgumentError.js.map +0 -1
  29. package/dist/sd-core-common/src/errors/ArgumentError.mjs +0 -13
  30. package/dist/sd-core-common/src/errors/NeverEntryError.d.ts +0 -10
  31. package/dist/sd-core-common/src/errors/NeverEntryError.js.map +0 -1
  32. package/dist/sd-core-common/src/errors/NeverEntryError.mjs +0 -13
  33. package/dist/sd-core-common/src/errors/NotImplementError.d.ts +0 -10
  34. package/dist/sd-core-common/src/errors/NotImplementError.js.map +0 -1
  35. package/dist/sd-core-common/src/errors/NotImplementError.mjs +0 -13
  36. package/dist/sd-core-common/src/errors/SdError.d.ts +0 -23
  37. package/dist/sd-core-common/src/errors/SdError.js.map +0 -1
  38. package/dist/sd-core-common/src/errors/SdError.mjs +0 -40
  39. package/dist/sd-core-common/src/errors/TimeoutError.d.ts +0 -11
  40. package/dist/sd-core-common/src/errors/TimeoutError.js.map +0 -1
  41. package/dist/sd-core-common/src/errors/TimeoutError.mjs +0 -16
  42. package/dist/sd-core-common/src/extensions/ArrayExtension.d.ts +0 -147
  43. package/dist/sd-core-common/src/extensions/ArrayExtension.js.map +0 -1
  44. package/dist/sd-core-common/src/extensions/ArrayExtension.mjs +0 -448
  45. package/dist/sd-core-common/src/extensions/MapExtension.d.ts +0 -4
  46. package/dist/sd-core-common/src/extensions/MapExtension.js.map +0 -1
  47. package/dist/sd-core-common/src/extensions/MapExtension.mjs +0 -15
  48. package/dist/sd-core-common/src/extensions/SetExtension.d.ts +0 -3
  49. package/dist/sd-core-common/src/extensions/SetExtension.js.map +0 -1
  50. package/dist/sd-core-common/src/extensions/SetExtension.mjs +0 -10
  51. package/dist/sd-core-common/src/index.d.ts +0 -32
  52. package/dist/sd-core-common/src/index.js.map +0 -1
  53. package/dist/sd-core-common/src/index.mjs +0 -33
  54. package/dist/sd-core-common/src/types/DateOnly.d.ts +0 -135
  55. package/dist/sd-core-common/src/types/DateOnly.js.map +0 -1
  56. package/dist/sd-core-common/src/types/DateOnly.mjs +0 -220
  57. package/dist/sd-core-common/src/types/DateTime.d.ts +0 -42
  58. package/dist/sd-core-common/src/types/DateTime.js.map +0 -1
  59. package/dist/sd-core-common/src/types/DateTime.mjs +0 -156
  60. package/dist/sd-core-common/src/types/DeepPartial.d.ts +0 -3
  61. package/dist/sd-core-common/src/types/DeepPartial.js.map +0 -1
  62. package/dist/sd-core-common/src/types/DeepPartial.mjs +0 -2
  63. package/dist/sd-core-common/src/types/ObjectSet.d.ts +0 -4
  64. package/dist/sd-core-common/src/types/ObjectSet.js.map +0 -1
  65. package/dist/sd-core-common/src/types/ObjectSet.mjs +0 -18
  66. package/dist/sd-core-common/src/types/Time.d.ts +0 -27
  67. package/dist/sd-core-common/src/types/Time.js.map +0 -1
  68. package/dist/sd-core-common/src/types/Time.mjs +0 -108
  69. package/dist/sd-core-common/src/types/Type.d.ts +0 -7
  70. package/dist/sd-core-common/src/types/Type.js.map +0 -1
  71. package/dist/sd-core-common/src/types/Type.mjs +0 -2
  72. package/dist/sd-core-common/src/types/UnwrappedType.d.ts +0 -1
  73. package/dist/sd-core-common/src/types/UnwrappedType.js.map +0 -1
  74. package/dist/sd-core-common/src/types/UnwrappedType.mjs +0 -2
  75. package/dist/sd-core-common/src/types/Uuid.d.ts +0 -8
  76. package/dist/sd-core-common/src/types/Uuid.js.map +0 -1
  77. package/dist/sd-core-common/src/types/Uuid.mjs +0 -26
  78. package/dist/sd-core-common/src/types/WrappedType.d.ts +0 -1
  79. package/dist/sd-core-common/src/types/WrappedType.js.map +0 -1
  80. package/dist/sd-core-common/src/types/WrappedType.mjs +0 -2
  81. package/dist/sd-core-common/src/utils/DateTimeFormatUtil.d.ts +0 -12
  82. package/dist/sd-core-common/src/utils/DateTimeFormatUtil.js.map +0 -1
  83. package/dist/sd-core-common/src/utils/DateTimeFormatUtil.mjs +0 -67
  84. package/dist/sd-core-common/src/utils/FunctionQueue.d.ts +0 -8
  85. package/dist/sd-core-common/src/utils/FunctionQueue.js.map +0 -1
  86. package/dist/sd-core-common/src/utils/FunctionQueue.mjs +0 -46
  87. package/dist/sd-core-common/src/utils/FunctionUtil.d.ts +0 -6
  88. package/dist/sd-core-common/src/utils/FunctionUtil.js.map +0 -1
  89. package/dist/sd-core-common/src/utils/FunctionUtil.mjs +0 -31
  90. package/dist/sd-core-common/src/utils/JsonConvert.d.ts +0 -8
  91. package/dist/sd-core-common/src/utils/JsonConvert.js.map +0 -1
  92. package/dist/sd-core-common/src/utils/JsonConvert.mjs +0 -78
  93. package/dist/sd-core-common/src/utils/MathUtil.d.ts +0 -3
  94. package/dist/sd-core-common/src/utils/MathUtil.js.map +0 -1
  95. package/dist/sd-core-common/src/utils/MathUtil.mjs +0 -6
  96. package/dist/sd-core-common/src/utils/NumberUtil.d.ts +0 -6
  97. package/dist/sd-core-common/src/utils/NumberUtil.js.map +0 -1
  98. package/dist/sd-core-common/src/utils/NumberUtil.mjs +0 -32
  99. package/dist/sd-core-common/src/utils/ObjectUtil.d.ts +0 -80
  100. package/dist/sd-core-common/src/utils/ObjectUtil.js.map +0 -1
  101. package/dist/sd-core-common/src/utils/ObjectUtil.mjs +0 -452
  102. package/dist/sd-core-common/src/utils/SdSyncEventEmitter.d.ts +0 -6
  103. package/dist/sd-core-common/src/utils/SdSyncEventEmitter.js.map +0 -1
  104. package/dist/sd-core-common/src/utils/SdSyncEventEmitter.mjs +0 -27
  105. package/dist/sd-core-common/src/utils/StringUtil.d.ts +0 -8
  106. package/dist/sd-core-common/src/utils/StringUtil.js.map +0 -1
  107. package/dist/sd-core-common/src/utils/StringUtil.mjs +0 -77
  108. package/dist/sd-core-common/src/utils/Wait.d.ts +0 -4
  109. package/dist/sd-core-common/src/utils/Wait.js.map +0 -1
  110. package/dist/sd-core-common/src/utils/Wait.mjs +0 -23
  111. package/dist/sd-core-node/src/index.d.ts +0 -6
  112. package/dist/sd-core-node/src/index.js.map +0 -1
  113. package/dist/sd-core-node/src/index.mjs +0 -7
  114. package/dist/sd-core-node/src/utils/FsUtil.d.ts +0 -44
  115. package/dist/sd-core-node/src/utils/FsUtil.js.map +0 -1
  116. package/dist/sd-core-node/src/utils/FsUtil.mjs +0 -493
  117. package/dist/sd-core-node/src/utils/Logger.d.ts +0 -91
  118. package/dist/sd-core-node/src/utils/Logger.js.map +0 -1
  119. package/dist/sd-core-node/src/utils/Logger.mjs +0 -185
  120. package/dist/sd-core-node/src/utils/PathUtil.d.ts +0 -6
  121. package/dist/sd-core-node/src/utils/PathUtil.js.map +0 -1
  122. package/dist/sd-core-node/src/utils/PathUtil.mjs +0 -24
  123. package/dist/sd-core-node/src/utils/SdFsWatcher.d.ts +0 -15
  124. package/dist/sd-core-node/src/utils/SdFsWatcher.js.map +0 -1
  125. package/dist/sd-core-node/src/utils/SdFsWatcher.mjs +0 -43
  126. package/dist/sd-core-node/src/utils/SdProcess.d.ts +0 -5
  127. package/dist/sd-core-node/src/utils/SdProcess.js.map +0 -1
  128. package/dist/sd-core-node/src/utils/SdProcess.mjs +0 -36
  129. package/dist/sd-orm-common/src/CaseQueryHelper.d.ts +0 -12
  130. package/dist/sd-orm-common/src/CaseQueryHelper.js.map +0 -1
  131. package/dist/sd-orm-common/src/CaseQueryHelper.mjs +0 -19
  132. package/dist/sd-orm-common/src/CaseWhenQueryHelper.d.ts +0 -12
  133. package/dist/sd-orm-common/src/CaseWhenQueryHelper.js.map +0 -1
  134. package/dist/sd-orm-common/src/CaseWhenQueryHelper.mjs +0 -20
  135. package/dist/sd-orm-common/src/DbContext.d.ts +0 -81
  136. package/dist/sd-orm-common/src/DbContext.js.map +0 -1
  137. package/dist/sd-orm-common/src/DbContext.mjs +0 -635
  138. package/dist/sd-orm-common/src/IDbConnection.d.ts +0 -15
  139. package/dist/sd-orm-common/src/IDbConnection.js.map +0 -1
  140. package/dist/sd-orm-common/src/IDbConnection.mjs +0 -2
  141. package/dist/sd-orm-common/src/IDbContextExecutor.d.ts +0 -17
  142. package/dist/sd-orm-common/src/IDbContextExecutor.js.map +0 -1
  143. package/dist/sd-orm-common/src/IDbContextExecutor.mjs +0 -2
  144. package/dist/sd-orm-common/src/IDbMigration.d.ts +0 -4
  145. package/dist/sd-orm-common/src/IDbMigration.js.map +0 -1
  146. package/dist/sd-orm-common/src/IDbMigration.mjs +0 -2
  147. package/dist/sd-orm-common/src/QueryBuilder.d.ts +0 -48
  148. package/dist/sd-orm-common/src/QueryBuilder.js.map +0 -1
  149. package/dist/sd-orm-common/src/QueryBuilder.mjs +0 -1022
  150. package/dist/sd-orm-common/src/QueryHelper.d.ts +0 -75
  151. package/dist/sd-orm-common/src/QueryHelper.js.map +0 -1
  152. package/dist/sd-orm-common/src/QueryHelper.mjs +0 -627
  153. package/dist/sd-orm-common/src/QueryUnit.d.ts +0 -10
  154. package/dist/sd-orm-common/src/QueryUnit.js.map +0 -1
  155. package/dist/sd-orm-common/src/QueryUnit.mjs +0 -16
  156. package/dist/sd-orm-common/src/Queryable.d.ts +0 -105
  157. package/dist/sd-orm-common/src/Queryable.js.map +0 -1
  158. package/dist/sd-orm-common/src/Queryable.mjs +0 -1375
  159. package/dist/sd-orm-common/src/SdOrmDataType.d.ts +0 -21
  160. package/dist/sd-orm-common/src/SdOrmDataType.js.map +0 -1
  161. package/dist/sd-orm-common/src/SdOrmDataType.mjs +0 -2
  162. package/dist/sd-orm-common/src/commons.d.ts +0 -400
  163. package/dist/sd-orm-common/src/commons.js.map +0 -1
  164. package/dist/sd-orm-common/src/commons.mjs +0 -8
  165. package/dist/sd-orm-common/src/decorators.d.ts +0 -29
  166. package/dist/sd-orm-common/src/decorators.js.map +0 -1
  167. package/dist/sd-orm-common/src/decorators.mjs +0 -89
  168. package/dist/sd-orm-common/src/index.d.ts +0 -17
  169. package/dist/sd-orm-common/src/index.js.map +0 -1
  170. package/dist/sd-orm-common/src/index.mjs +0 -18
  171. package/dist/sd-orm-common/src/models/SystemMigration.d.ts +0 -3
  172. package/dist/sd-orm-common/src/models/SystemMigration.js.map +0 -1
  173. package/dist/sd-orm-common/src/models/SystemMigration.mjs +0 -13
  174. package/dist/sd-orm-common/src/utils/DbDefinitionUtil.d.ts +0 -14
  175. package/dist/sd-orm-common/src/utils/DbDefinitionUtil.js.map +0 -1
  176. package/dist/sd-orm-common/src/utils/DbDefinitionUtil.mjs +0 -66
  177. package/dist/sd-orm-common/src/utils/SdOrmUtil.d.ts +0 -8
  178. package/dist/sd-orm-common/src/utils/SdOrmUtil.js.map +0 -1
  179. package/dist/sd-orm-common/src/utils/SdOrmUtil.mjs +0 -248
  180. package/dist/sd-orm-node/src/DbConnectionFactory.d.ts +0 -4
  181. package/dist/sd-orm-node/src/DbConnectionFactory.js.map +0 -1
  182. package/dist/sd-orm-node/src/DbConnectionFactory.mjs +0 -17
  183. package/dist/sd-orm-node/src/NodeDbContextExecutor.d.ts +0 -19
  184. package/dist/sd-orm-node/src/NodeDbContextExecutor.js.map +0 -1
  185. package/dist/sd-orm-node/src/NodeDbContextExecutor.mjs +0 -71
  186. package/dist/sd-orm-node/src/SdOrm.d.ts +0 -10
  187. package/dist/sd-orm-node/src/SdOrm.js.map +0 -1
  188. package/dist/sd-orm-node/src/SdOrm.mjs +0 -25
  189. package/dist/sd-orm-node/src/index.d.ts +0 -4
  190. package/dist/sd-orm-node/src/index.js.map +0 -1
  191. package/dist/sd-orm-node/src/index.mjs +0 -5
  192. package/dist/sd-orm-node-mssql/src/MssqlDbConnection.d.ts +0 -25
  193. package/dist/sd-orm-node-mssql/src/MssqlDbConnection.js.map +0 -1
  194. package/dist/sd-orm-node-mssql/src/MssqlDbConnection.mjs +0 -321
  195. package/dist/sd-orm-node-mssql/src/index.d.ts +0 -2
  196. package/dist/sd-orm-node-mssql/src/index.js.map +0 -1
  197. package/dist/sd-orm-node-mssql/src/index.mjs +0 -3
  198. package/dist/sd-orm-node-mysql/src/MysqlDbConnection.d.ts +0 -22
  199. package/dist/sd-orm-node-mysql/src/MysqlDbConnection.js.map +0 -1
  200. package/dist/sd-orm-node-mysql/src/MysqlDbConnection.mjs +0 -200
  201. package/dist/sd-orm-node-mysql/src/index.d.ts +0 -2
  202. package/dist/sd-orm-node-mysql/src/index.js.map +0 -1
  203. package/dist/sd-orm-node-mysql/src/index.mjs +0 -3
  204. package/dist/sd-orm-node-sqlite/src/SqliteDbConnection.d.ts +0 -22
  205. package/dist/sd-orm-node-sqlite/src/SqliteDbConnection.js.map +0 -1
  206. package/dist/sd-orm-node-sqlite/src/SqliteDbConnection.mjs +0 -172
  207. package/dist/sd-orm-node-sqlite/src/index.d.ts +0 -2
  208. package/dist/sd-orm-node-sqlite/src/index.js.map +0 -1
  209. package/dist/sd-orm-node-sqlite/src/index.mjs +0 -3
  210. package/dist/sd-service-common/src/commons-orm.d.ts +0 -4
  211. package/dist/sd-service-common/src/commons-orm.js.map +0 -1
  212. package/dist/sd-service-common/src/commons-orm.mjs +0 -2
  213. package/dist/sd-service-common/src/commons-smtp.d.ts +0 -29
  214. package/dist/sd-service-common/src/commons-smtp.js.map +0 -1
  215. package/dist/sd-service-common/src/commons-smtp.mjs +0 -2
  216. package/dist/sd-service-common/src/commons.d.ts +0 -57
  217. package/dist/sd-service-common/src/commons.js.map +0 -1
  218. package/dist/sd-service-common/src/commons.mjs +0 -3
  219. package/dist/sd-service-common/src/index.d.ts +0 -3
  220. package/dist/sd-service-common/src/index.js.map +0 -1
  221. package/dist/sd-service-common/src/index.mjs +0 -4
  222. package/dist/sd-service-server/src/ApiServiceError.d.ts +0 -12
  223. package/dist/sd-service-server/src/ApiServiceError.js.map +0 -1
  224. package/dist/sd-service-server/src/ApiServiceError.mjs +0 -15
  225. package/dist/sd-service-server/src/SdServiceServer.d.ts +0 -39
  226. package/dist/sd-service-server/src/SdServiceServer.js.map +0 -1
  227. package/dist/sd-service-server/src/SdServiceServer.mjs +0 -513
  228. package/dist/sd-service-server/src/commons.d.ts +0 -23
  229. package/dist/sd-service-server/src/commons.js.map +0 -1
  230. package/dist/sd-service-server/src/commons.mjs +0 -3
  231. package/dist/sd-service-server/src/index.d.ts +0 -8
  232. package/dist/sd-service-server/src/index.js.map +0 -1
  233. package/dist/sd-service-server/src/index.mjs +0 -9
  234. package/dist/sd-service-server/src/services/SdAutoUpdateService.d.ts +0 -4
  235. package/dist/sd-service-server/src/services/SdAutoUpdateService.js.map +0 -1
  236. package/dist/sd-service-server/src/services/SdAutoUpdateService.mjs +0 -20
  237. package/dist/sd-service-server/src/services/SdCryptoService.d.ts +0 -7
  238. package/dist/sd-service-server/src/services/SdCryptoService.js.map +0 -1
  239. package/dist/sd-service-server/src/services/SdCryptoService.mjs +0 -39
  240. package/dist/sd-service-server/src/services/SdOrmService.d.ts +0 -22
  241. package/dist/sd-service-server/src/services/SdOrmService.js.map +0 -1
  242. package/dist/sd-service-server/src/services/SdOrmService.mjs +0 -115
  243. package/dist/sd-service-server/src/services/SdSmtpClientService.d.ts +0 -6
  244. package/dist/sd-service-server/src/services/SdSmtpClientService.js.map +0 -1
  245. package/dist/sd-service-server/src/services/SdSmtpClientService.mjs +0 -44
  246. package/dist/sd-service-server/src/utils/SdServiceServerConfigUtil.d.ts +0 -4
  247. package/dist/sd-service-server/src/utils/SdServiceServerConfigUtil.js.map +0 -1
  248. package/dist/sd-service-server/src/utils/SdServiceServerConfigUtil.mjs +0 -36
@@ -1,185 +0,0 @@
1
- import path from "path";
2
- import { FsUtil } from "./FsUtil";
3
- import os from "os";
4
- import { DateTime, MathUtil, ObjectUtil } from "@simplysm/sd-core-common";
5
- export var LoggerStyle;
6
- (function (LoggerStyle) {
7
- LoggerStyle["clear"] = "\u001B[0m";
8
- LoggerStyle["fgGray"] = "\u001B[90m";
9
- LoggerStyle["fgBlack"] = "\u001B[30m";
10
- LoggerStyle["fgWhite"] = "\u001B[37m";
11
- LoggerStyle["fgRed"] = "\u001B[31m";
12
- LoggerStyle["fgGreen"] = "\u001B[32m";
13
- LoggerStyle["fgYellow"] = "\u001B[33m";
14
- LoggerStyle["fgBlue"] = "\u001B[34m";
15
- LoggerStyle["fgMagenta"] = "\u001B[35m";
16
- LoggerStyle["fgCyan"] = "\u001B[36m";
17
- LoggerStyle["bgBlack"] = "\u001B[40m\u001B[97m";
18
- LoggerStyle["bgRed"] = "\u001B[41m\u001B[97m";
19
- LoggerStyle["bgGreen"] = "\u001B[42m\u001B[97m";
20
- LoggerStyle["bgYellow"] = "\u001B[43m\u001B[97m";
21
- LoggerStyle["bgBlue"] = "\u001B[44m\u001B[97m";
22
- LoggerStyle["bgMagenta"] = "\u001B[45m\u001B[97m";
23
- LoggerStyle["bgWhite"] = "\u001B[46m\u001B[97m";
24
- })(LoggerStyle || (LoggerStyle = {}));
25
- export var LoggerSeverity;
26
- (function (LoggerSeverity) {
27
- LoggerSeverity["debug"] = "debug";
28
- LoggerSeverity["log"] = "log";
29
- LoggerSeverity["info"] = "info";
30
- LoggerSeverity["warn"] = "warn";
31
- LoggerSeverity["error"] = "error";
32
- LoggerSeverity["none"] = "";
33
- })(LoggerSeverity || (LoggerSeverity = {}));
34
- export class Logger {
35
- static get(group = []) {
36
- return new Logger(group);
37
- }
38
- static setConfig(arg1, arg2) {
39
- const group = (arg2 !== undefined ? arg1 : []);
40
- const config = (arg2 !== undefined ? arg2 : arg1);
41
- Logger.configs.set(group.join("_"), config);
42
- }
43
- static restoreConfig() {
44
- Logger.configs.clear();
45
- }
46
- static setHistoryLength(len) {
47
- Logger._historyLength = len;
48
- }
49
- constructor(_group) {
50
- this._group = _group;
51
- this._randomForStyle = MathUtil.getRandomInt(4, 9);
52
- }
53
- debug(...args) {
54
- this._write(LoggerSeverity.debug, args);
55
- }
56
- log(...args) {
57
- this._write(LoggerSeverity.log, args);
58
- }
59
- info(...args) {
60
- this._write(LoggerSeverity.info, args);
61
- }
62
- warn(...args) {
63
- this._write(LoggerSeverity.warn, args);
64
- }
65
- error(...args) {
66
- this._write(LoggerSeverity.error, args);
67
- }
68
- _write(severity, logs) {
69
- const config = this._getConfig();
70
- const now = new DateTime();
71
- const severityIndex = Object.values(LoggerSeverity).indexOf(severity);
72
- const consoleLevelIndex = Object.values(LoggerSeverity).indexOf(config.console.level);
73
- const fileLevelIndex = Object.values(LoggerSeverity).indexOf(config.file.level);
74
- if (severityIndex >= consoleLevelIndex) {
75
- if (typeof process.stdout.clearLine === "function") {
76
- process.stdout.clearLine(0);
77
- process.stdout.cursorTo(0);
78
- }
79
- const loggerStyle = config.console.styles[severity];
80
- let headMessage = LoggerStyle.fgGray;
81
- headMessage += now.toFormatString("yyyy-MM-dd HH:mm:ss.fff") + " ";
82
- if (this._group.length > 0) {
83
- headMessage += config.console.style + "[" + this._group.join(".") + "] ";
84
- }
85
- headMessage += loggerStyle;
86
- headMessage += severity.toUpperCase().padStart(5, " ");
87
- const logMessages = logs.map((log) => ((log instanceof Error && log.stack !== undefined) ? log.stack : log));
88
- const tailMessage = LoggerStyle.clear;
89
- // eslint-disable-next-line no-console
90
- console.log(headMessage, ...logMessages, tailMessage);
91
- }
92
- else if (config.dot) {
93
- process.stdout.write(".");
94
- }
95
- if (severityIndex >= fileLevelIndex) {
96
- let text = now.toFormatString("yyyy-MM-dd HH:mm:ss.fff") + " ";
97
- text += (this._group.length > 0 ? "[" + this._group.join(".") + "] " : "");
98
- text += severity.toUpperCase().padStart(5, " ") + os.EOL;
99
- for (const log of logs) {
100
- let logString;
101
- // 색상빼기
102
- if (typeof log === "string") {
103
- logString = log.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g, "");
104
- }
105
- else if (typeof log.toString === "function" && !(/^\[.*]$/).test(log.toString())) {
106
- logString = log.toString();
107
- }
108
- else {
109
- logString = JSON.stringify(log);
110
- }
111
- text += logString + os.EOL;
112
- }
113
- const outPath = path.resolve(config.file.outDir, now.toFormatString("yyyyMMdd"));
114
- FsUtil.mkdirs(outPath);
115
- const fileNames = FsUtil.readdir(outPath);
116
- const lastFileSeq = fileNames
117
- .filter((fileName) => fileName.endsWith(".log"))
118
- .map((fileName) => Number(path.basename(fileName, path.extname(fileName))))
119
- .filter((item) => !Number.isNaN(item))
120
- .max();
121
- let logFileName = "1.log";
122
- if (lastFileSeq !== undefined) {
123
- const lstat = FsUtil.lstat(path.resolve(outPath, `${lastFileSeq}.log`));
124
- if (lstat.size > (config.file.maxBytes ?? 500 * 1000)) {
125
- logFileName = `${lastFileSeq + 1}.log`;
126
- }
127
- else {
128
- logFileName = lastFileSeq.toString() + ".log";
129
- }
130
- }
131
- const logFilePath = path.resolve(outPath, logFileName);
132
- if (FsUtil.exists(logFilePath)) {
133
- FsUtil.appendFile(logFilePath, text);
134
- }
135
- else {
136
- FsUtil.writeFile(logFilePath, text);
137
- }
138
- }
139
- if (Logger._historyLength > 0) {
140
- Logger.history.push({
141
- datetime: now,
142
- group: this._group,
143
- severity,
144
- logs
145
- });
146
- while (Logger.history.length > Logger._historyLength) {
147
- Logger.history.remove(Logger.history[0]);
148
- }
149
- }
150
- }
151
- _getConfig() {
152
- let config = {
153
- dot: false,
154
- console: {
155
- style: LoggerStyle[Object.keys(LoggerStyle)[this._randomForStyle]],
156
- level: LoggerSeverity.log,
157
- styles: {
158
- debug: LoggerStyle.fgGray,
159
- log: LoggerStyle.clear,
160
- info: LoggerStyle.fgCyan,
161
- warn: LoggerStyle.fgYellow,
162
- error: LoggerStyle.fgRed
163
- }
164
- },
165
- file: {
166
- level: LoggerSeverity.none,
167
- outDir: path.resolve(process.cwd(), "_logs"),
168
- maxBytes: 300 * 1000
169
- }
170
- };
171
- const currGroup = [];
172
- config = ObjectUtil.merge(config, Logger.configs.get(currGroup.join("_")));
173
- for (const groupItem of this._group) {
174
- currGroup.push(groupItem);
175
- if (Logger.configs.has(currGroup.join("_"))) {
176
- config = ObjectUtil.merge(config, Logger.configs.get(currGroup.join("_")));
177
- }
178
- }
179
- return config;
180
- }
181
- }
182
- Logger.configs = new Map();
183
- Logger._historyLength = 0;
184
- Logger.history = [];
185
- //# sourceMappingURL=Logger.js.map
@@ -1,6 +0,0 @@
1
- export declare class PathUtil {
2
- static posix(...args: string[]): string;
3
- static changeFileDirectory(filePath: string, fromDirectory: string, toDirectory: string): string;
4
- static removeExt(filePath: string): string;
5
- static isChildPath(childPath: string, parentPath: string): boolean;
6
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"PathUtil.js","sourceRoot":"","sources":["../../../../../sd-core-node/src/utils/PathUtil.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,OAAO,QAAQ;IACZ,MAAM,CAAC,KAAK,CAAC,GAAG,IAAc;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QACxC,OAAO,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAC,mBAAmB,CAAC,QAAgB,EAAE,aAAqB,EAAE,WAAmB;QAC5F,IAAI,QAAQ,KAAK,aAAa,EAAE;YAC9B,OAAO,WAAW,CAAC;SACpB;QAED,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE;YAClD,MAAM,IAAI,KAAK,CAAC,IAAI,QAAQ,MAAM,aAAa,UAAU,CAAC,CAAC;SAC5D;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC3E,CAAC;IAEM,MAAM,CAAC,SAAS,CAAC,QAAgB;QACtC,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACzD,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,SAAiB,EAAE,UAAkB;QAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAC1D,OAAO,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACnG,CAAC;CACF"}
@@ -1,24 +0,0 @@
1
- import path from "path";
2
- export class PathUtil {
3
- static posix(...args) {
4
- const resolvedPath = path.join(...args);
5
- return resolvedPath.replace(/\\/g, "/");
6
- }
7
- static changeFileDirectory(filePath, fromDirectory, toDirectory) {
8
- if (filePath === fromDirectory) {
9
- return toDirectory;
10
- }
11
- if (!PathUtil.isChildPath(filePath, fromDirectory)) {
12
- throw new Error(`'${filePath}'가 ${fromDirectory}안에 없습니다.`);
13
- }
14
- return path.resolve(toDirectory, path.relative(fromDirectory, filePath));
15
- }
16
- static removeExt(filePath) {
17
- return path.basename(filePath, path.extname(filePath));
18
- }
19
- static isChildPath(childPath, parentPath) {
20
- const relativePath = path.relative(parentPath, childPath);
21
- return Boolean(relativePath) && !relativePath.startsWith("..") && !path.isAbsolute(relativePath);
22
- }
23
- }
24
- //# sourceMappingURL=PathUtil.js.map
@@ -1,15 +0,0 @@
1
- export declare class SdFsWatcher {
2
- private readonly _watcher;
3
- private constructor();
4
- static watch(paths: string[]): SdFsWatcher;
5
- onChange(opt: {
6
- delay?: number;
7
- }, cb: (changeInfos: ISdFsWatcherChangeInfo[]) => void | Promise<void>): void;
8
- add(paths: string[]): void;
9
- closeAsync(): Promise<void>;
10
- }
11
- export type TSdFsWatcherEvent = "change" | "unlink" | "add" | "unlinkDir" | "addDir";
12
- export interface ISdFsWatcherChangeInfo {
13
- event: TSdFsWatcherEvent;
14
- path: string;
15
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"SdFsWatcher.js","sourceRoot":"","sources":["../../../../../sd-core-node/src/utils/SdFsWatcher.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,MAAM,OAAO,WAAW;IAGtB,YAAoB,KAAe,EAAE,OAA+B;QAClE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9G,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,KAAe;QACjC,OAAO,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC;IAChC,CAAC;IAEM,QAAQ,CAAC,GAAuB,EAAE,EAAmE;QAC1G,MAAM,aAAa,GAAG,IAAI,GAAG,EAA6B,CAAC;QAC3D,IAAI,CAAC,QAAQ;aACV,EAAE,CAAC,KAAK,EAAE,CAAC,KAAwB,EAAE,QAAgB,EAAE,EAAE;YACxD,MAAM,SAAS,GAAG,aAAa,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC7D,IAAI,SAAS,KAAK,KAAK,IAAI,KAAK,KAAK,QAAQ,EAAE;gBAC7C,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;aACxC;iBACI,IACH,CAAC,SAAS,KAAK,KAAK,IAAI,KAAK,KAAK,QAAQ,CAAC;gBAC3C,CAAC,SAAS,KAAK,QAAQ,IAAI,KAAK,KAAK,WAAW,CAAC,EACjD;aACD;iBACI;gBACH,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;aACpC;YAED,UAAU,CAAC,KAAK,IAAI,EAAE;gBACpB,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC;oBAAE,OAAO;gBACrC,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;oBACnE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;oBACZ,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;iBACZ,CAAC,CAAC,CAAC;gBACJ,aAAa,CAAC,KAAK,EAAE,CAAC;gBAEtB,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC;YACxB,CAAC,EAAE,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC;QACvB,CAAC,CAAC,CAAC;IACP,CAAC;IAEM,GAAG,CAAC,KAAe;QACxB,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;CACF"}
@@ -1,43 +0,0 @@
1
- import chokidar from "chokidar";
2
- import { ObjectUtil } from "@simplysm/sd-core-common";
3
- export class SdFsWatcher {
4
- constructor(paths, options) {
5
- this._watcher = chokidar.watch(paths, ObjectUtil.merge(options, { ignoreInitial: true, persistent: true }));
6
- }
7
- static watch(paths) {
8
- return new SdFsWatcher(paths);
9
- }
10
- onChange(opt, cb) {
11
- const changeInfoMap = new Map();
12
- this._watcher
13
- .on("all", (event, filePath) => {
14
- const prevEvent = changeInfoMap.getOrCreate(filePath, event);
15
- if (prevEvent === "add" && event === "change") {
16
- changeInfoMap.set(filePath, prevEvent);
17
- }
18
- else if ((prevEvent === "add" && event === "unlink") ||
19
- (prevEvent === "addDir" && event === "unlinkDir")) {
20
- }
21
- else {
22
- changeInfoMap.set(filePath, event);
23
- }
24
- setTimeout(async () => {
25
- if (changeInfoMap.size === 0)
26
- return;
27
- const changeInfos = Array.from(changeInfoMap.entries()).map((en) => ({
28
- event: en[1],
29
- path: en[0]
30
- }));
31
- changeInfoMap.clear();
32
- await cb(changeInfos);
33
- }, opt.delay ?? 500);
34
- });
35
- }
36
- add(paths) {
37
- this._watcher.add(paths);
38
- }
39
- async closeAsync() {
40
- await this._watcher.close();
41
- }
42
- }
43
- //# sourceMappingURL=SdFsWatcher.js.map
@@ -1,5 +0,0 @@
1
- /// <reference types="node" />
2
- import cp from "child_process";
3
- export declare class SdProcess {
4
- static spawnAsync(cmd: string, opts?: cp.SpawnOptionsWithoutStdio, showMessage?: boolean): Promise<string>;
5
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"SdProcess.js","sourceRoot":"","sources":["../../../../../sd-core-node/src/utils/SdProcess.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,eAAe,CAAC;AAE/B,MAAM,OAAO,SAAS;IACb,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,GAAW,EAAE,IAAkC,EAAE,WAAqB;QACnG,OAAO,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnD,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;gBAC9D,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,MAAM;gBACb,GAAG,IAAI;aACR,CAAC,CAAC;YACH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;gBACrB,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC,CAAC;YAEH,IAAI,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC5B,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;gBACrD,IAAI,WAAW,EAAE;oBACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBAC5B;YACH,CAAC,CAAC,CAAC;YACH,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC5B,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;gBACrD,IAAI,WAAW,EAAE;oBACf,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBAC5B;YACH,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;gBACrB,IAAI,IAAI,KAAK,CAAC,EAAE;oBACd,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,GAAG,oBAAoB,IAAI,MAAM,aAAa,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;oBACnF,OAAO;iBACR;gBAED,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;YACpC,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,36 +0,0 @@
1
- import cp from "child_process";
2
- export class SdProcess {
3
- static async spawnAsync(cmd, opts, showMessage) {
4
- return await new Promise((resolve, reject) => {
5
- const ps = cp.spawn(cmd.split(" ")[0], cmd.split(" ").slice(1), {
6
- shell: true,
7
- stdio: "pipe",
8
- ...opts
9
- });
10
- ps.on("error", (err) => {
11
- reject(err);
12
- });
13
- let messageBuffer = Buffer.from([]);
14
- ps.stdout.on("data", (data) => {
15
- messageBuffer = Buffer.concat([messageBuffer, data]);
16
- if (showMessage) {
17
- process.stdout.write(data);
18
- }
19
- });
20
- ps.stderr.on("data", (data) => {
21
- messageBuffer = Buffer.concat([messageBuffer, data]);
22
- if (showMessage) {
23
- process.stderr.write(data);
24
- }
25
- });
26
- ps.on("exit", (code) => {
27
- if (code !== 0) {
28
- reject(new Error(`'${cmd}' 명령이 오류와 함께 닫힘 (${code})\n${messageBuffer.toString()}`));
29
- return;
30
- }
31
- resolve(messageBuffer.toString());
32
- });
33
- });
34
- }
35
- }
36
- //# sourceMappingURL=SdProcess.js.map
@@ -1,12 +0,0 @@
1
- import { TEntityValue, TQueryBuilderValue, TQueryValue } from "./commons";
2
- import { Type } from "@simplysm/sd-core-common";
3
- import { QueryUnit } from "./QueryUnit";
4
- import { QueryHelper } from "./QueryHelper";
5
- export declare class CaseQueryHelper<T extends TQueryValue> {
6
- private readonly _qh;
7
- private _type;
8
- private readonly _cases;
9
- constructor(_qh: QueryHelper, _type: Type<T> | undefined);
10
- case(predicate: TEntityValue<boolean | Boolean> | TQueryBuilderValue, then: TEntityValue<T>): this;
11
- else(then: TEntityValue<T>): QueryUnit<T>;
12
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"CaseQueryHelper.js","sourceRoot":"","sources":["../../../../sd-orm-common/src/CaseQueryHelper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,MAAM,OAAO,eAAe;IAG1B,YAAoC,GAAgB,EACzB,KAA0B;QADjB,QAAG,GAAH,GAAG,CAAa;QACzB,UAAK,GAAL,KAAK,CAAqB;QAHpC,WAAM,GAAU,EAAE,CAAC;IAIpC,CAAC;IAEM,IAAI,CAAC,SAA+D,EAAE,IAAqB;QAChG,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC;QAE7D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3G,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,IAAI,CAAC,IAAqB;QAC/B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC;QAC7D,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9G,CAAC;CACF"}
@@ -1,19 +0,0 @@
1
- import { SdOrmUtil } from "./utils/SdOrmUtil";
2
- import { QueryUnit } from "./QueryUnit";
3
- export class CaseQueryHelper {
4
- constructor(_qh, _type) {
5
- this._qh = _qh;
6
- this._type = _type;
7
- this._cases = [];
8
- }
9
- case(predicate, then) {
10
- this._type = SdOrmUtil.getQueryValueType(then) ?? this._type;
11
- this._cases.push(...[" WHEN ", this._qh.getQueryValue(predicate), " THEN ", this._qh.getQueryValue(then)]);
12
- return this;
13
- }
14
- else(then) {
15
- this._type = SdOrmUtil.getQueryValueType(then) ?? this._type;
16
- return new QueryUnit(this._type, ["CASE ", ...this._cases, " ELSE ", this._qh.getQueryValue(then), " END"]);
17
- }
18
- }
19
- //# sourceMappingURL=CaseQueryHelper.js.map
@@ -1,12 +0,0 @@
1
- import { TEntityValue, TQueryValue } from "./commons";
2
- import { QueryUnit } from "./QueryUnit";
3
- import { QueryHelper } from "./QueryHelper";
4
- export declare class CaseWhenQueryHelper<T extends TQueryValue> {
5
- private readonly _qh;
6
- private readonly _arg;
7
- private readonly _cases;
8
- private _type;
9
- constructor(_qh: QueryHelper, _arg: TEntityValue<TQueryValue>);
10
- when(arg: TEntityValue<TQueryValue>, then: TEntityValue<T>): CaseWhenQueryHelper<T>;
11
- else(then: TEntityValue<T>): QueryUnit<T>;
12
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"CaseWhenQueryHelper.js","sourceRoot":"","sources":["../../../../sd-orm-common/src/CaseWhenQueryHelper.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC,MAAM,OAAO,mBAAmB;IAI9B,YAAoC,GAAgB,EAChB,IAA+B;QAD/B,QAAG,GAAH,GAAG,CAAa;QAChB,SAAI,GAAJ,IAAI,CAA2B;QAJlD,WAAM,GAAU,EAAE,CAAC;QAC5B,UAAK,GAAwB,SAAS,CAAC;IAI/C,CAAC;IAEM,IAAI,CAAC,GAA8B,EAAE,IAAqB;QAC/D,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC;QAC7D,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChI,OAAO,IAAW,CAAC;IACrB,CAAC;IAEM,IAAI,CAAC,IAAqB;QAC/B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC;QAC7D,OAAO,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9G,CAAC;CACF"}
@@ -1,20 +0,0 @@
1
- import { SdOrmUtil } from "./utils/SdOrmUtil";
2
- import { QueryUnit } from "./QueryUnit";
3
- export class CaseWhenQueryHelper {
4
- constructor(_qh, _arg) {
5
- this._qh = _qh;
6
- this._arg = _arg;
7
- this._cases = [];
8
- this._type = undefined;
9
- }
10
- when(arg, then) {
11
- this._type = SdOrmUtil.getQueryValueType(then) ?? this._type;
12
- this._cases.push(...[" WHEN ", this._qh.getQueryValue(this._qh.equal(this._arg, arg)), " THEN ", this._qh.getQueryValue(then)]);
13
- return this;
14
- }
15
- else(then) {
16
- this._type = SdOrmUtil.getQueryValueType(then) ?? this._type;
17
- return new QueryUnit(this._type, ["CASE ", ...this._cases, " ELSE ", this._qh.getQueryValue(then), " END"]);
18
- }
19
- }
20
- //# sourceMappingURL=CaseWhenQueryHelper.js.map
@@ -1,81 +0,0 @@
1
- import { QueryBuilder } from "./QueryBuilder";
2
- import { IDbContextExecutor } from "./IDbContextExecutor";
3
- import { QueryHelper } from "./QueryHelper";
4
- import { IQueryColumnDef, IQueryResultParseOption, IQueryTableNameDef, ISOLATION_LEVEL, ITableDef, TQueryDef } from "./commons";
5
- import { DateTime, Type } from "@simplysm/sd-core-common";
6
- import { IDbMigration } from "./IDbMigration";
7
- import { Queryable } from "./Queryable";
8
- import { SystemMigration } from "./models/SystemMigration";
9
- export declare abstract class DbContext {
10
- private readonly _executor;
11
- readonly opt: TDbContextOption;
12
- status: "ready" | "connect" | "transact";
13
- lastConnectionDateTime?: DateTime;
14
- prepareDefs: TQueryDef[];
15
- abstract get migrations(): Type<IDbMigration>[];
16
- readonly qb: QueryBuilder;
17
- readonly qh: QueryHelper;
18
- readonly systemMigration: Queryable<this, SystemMigration>;
19
- getTableDefinitions(): ITableDef[];
20
- constructor(_executor: IDbContextExecutor | undefined, opt: TDbContextOption);
21
- connectWithoutTransactionAsync<R>(callback: () => Promise<R>): Promise<R>;
22
- connectAsync<R>(fn: () => Promise<R>, isolationLevel?: ISOLATION_LEVEL): Promise<R>;
23
- transAsync<R>(fn: () => Promise<R>, isolationLevel?: ISOLATION_LEVEL): Promise<R>;
24
- executeDefsAsync(defs: TQueryDef[], options?: (IQueryResultParseOption | undefined)[]): Promise<any[][]>;
25
- executeQueriesAsync(queries: string[]): Promise<any[][]>;
26
- bulkInsertAsync(tableName: string, columnDefs: IQueryColumnDef[], records: Record<string, any>[]): Promise<void>;
27
- executePreparedAsync(): Promise<void>;
28
- getIsDbExistsAsync(database?: string): Promise<boolean>;
29
- getIsTableExistsAsync(tableNameDef: IQueryTableNameDef): Promise<boolean>;
30
- get tableDefs(): ITableDef[];
31
- getTableInfosAsync(database: string, schema?: string): Promise<{
32
- schema: string;
33
- name: string;
34
- }[]>;
35
- getTableColumnInfosAsync(database: string, schema: string, table: string): Promise<{
36
- name: string;
37
- dataType: string;
38
- length?: number;
39
- precision?: number;
40
- digits?: number;
41
- nullable: boolean;
42
- autoIncrement: boolean;
43
- }[]>;
44
- getTablePkColumnNamesAsync(database: string, schema: string, table: string): Promise<string[]>;
45
- getTableFksAsync(database: string, schema: string, table: string): Promise<{
46
- name: string;
47
- sourceColumnNames: string[];
48
- targetSchemaName: string;
49
- targetTableName: string;
50
- }[]>;
51
- getTableIndexesAsync(database: string, schema: string, table: string): Promise<{
52
- name: string;
53
- columns: {
54
- name: string;
55
- orderBy: "ASC" | "DESC";
56
- }[];
57
- }[]>;
58
- truncateTable(table: string): Promise<void>;
59
- initializeAsync(dbs?: string[], force?: boolean): Promise<boolean>;
60
- getCreateTablesFullQueryDefsFromTableDef(tableDefs: ITableDef[]): TQueryDef[][];
61
- getCreateTableQueryDefFromTableDef(tableDef: ITableDef): TQueryDef;
62
- getCreateFksQueryDefsFromTableDef(tableDef: ITableDef): TQueryDef[];
63
- getCreateIndexesQueryDefsFromTableDef(tableDef: ITableDef): TQueryDef[];
64
- getAddColumnQueryDefFromTableDef(tableDef: ITableDef, columnName: string): TQueryDef;
65
- getModifyColumnQueryDefFromTableDef(tableDef: ITableDef, columnName: string): TQueryDef;
66
- getModifyPkQueryDefFromTableDef(tableDef: ITableDef, columnNames: string[]): TQueryDef[];
67
- getAddFkQueryDefFromTableDef(tableDef: ITableDef, fkName: string): TQueryDef;
68
- getRemoveFkQueryDefFromTableDef(tableDef: ITableDef, fkName: string): TQueryDef;
69
- getCreateIndexQueryDefFromTableDef(tableDef: ITableDef, indexName: string): TQueryDef;
70
- getDropIndexQueryDefFromTableDef(tableDef: ITableDef, indexName: string): TQueryDef;
71
- getTableNameDef(tableDef: ITableDef): IQueryTableNameDef;
72
- }
73
- export type TDbContextOption = IDefaultDbContextOption | ISqliteDbContextOption;
74
- export interface IDefaultDbContextOption {
75
- dialect: "mysql" | "mssql" | "mssql-azure";
76
- database?: string;
77
- schema?: string;
78
- }
79
- export interface ISqliteDbContextOption {
80
- dialect: "sqlite";
81
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"DbContext.js","sourceRoot":"","sources":["../../../../sd-orm-common/src/DbContext.ts"],"names":[],"mappings":"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"}