@elsikora/nestjs-crud-config 4.1.0 → 5.0.0-dev.2

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 (277) hide show
  1. package/README.md +33 -26
  2. package/dist/{esm/external → external}/tslib/tslib.es6.js +0 -1
  3. package/dist/{esm/index.d.ts → index.d.ts} +2 -2
  4. package/dist/{esm/index.js → index.js} +1 -1
  5. package/dist/{esm/modules → modules}/config/config.module.d.ts +1 -1
  6. package/dist/{esm/modules → modules}/config/config.module.js +4 -3
  7. package/dist/{cjs/modules → modules}/config/config.service.d.ts +5 -5
  8. package/dist/{esm/modules → modules}/config/config.service.js +0 -1
  9. package/dist/{cjs/modules → modules}/config/data/controller.d.ts +4 -4
  10. package/dist/{esm/modules → modules}/config/data/controller.js +0 -1
  11. package/dist/{cjs/modules → modules}/config/data/entity/entity.d.ts +4 -4
  12. package/dist/{esm/modules → modules}/config/data/entity/entity.js +3 -3
  13. package/dist/modules/config/data/entity/index.d.ts +1 -0
  14. package/dist/modules/config/data/index.d.ts +3 -0
  15. package/dist/modules/config/data/interface/index.d.ts +1 -0
  16. package/dist/{cjs/modules → modules}/config/data/interface/interface.d.ts +1 -1
  17. package/dist/modules/config/index.d.ts +11 -0
  18. package/dist/modules/config/interface/index.d.ts +4 -0
  19. package/dist/{cjs/modules → modules}/config/migration/entity/entity.d.ts +3 -3
  20. package/dist/{esm/modules → modules}/config/migration/entity/entity.js +4 -4
  21. package/dist/modules/config/migration/entity/index.d.ts +1 -0
  22. package/dist/modules/config/migration/enum/index.d.ts +1 -0
  23. package/dist/{esm/modules → modules}/config/migration/enum/status.js +0 -1
  24. package/dist/modules/config/migration/index.d.ts +5 -0
  25. package/dist/{cjs/modules → modules}/config/migration/interface/index.d.ts +3 -3
  26. package/dist/{esm/modules → modules}/config/migration/interface/interface.d.ts +1 -1
  27. package/dist/{cjs/modules → modules}/config/migration/interface/migration-definition.interface.d.ts +1 -1
  28. package/dist/{esm/modules → modules}/config/migration/interface/migration-options.interface.d.ts +1 -1
  29. package/dist/{esm/modules → modules}/config/migration/migration-runner.service.d.ts +2 -2
  30. package/dist/{esm/modules → modules}/config/migration/migration-runner.service.js +0 -1
  31. package/dist/{esm/modules → modules}/config/migration/migration.service.d.ts +3 -3
  32. package/dist/{esm/modules → modules}/config/migration/migration.service.js +9 -11
  33. package/dist/{cjs/modules → modules}/config/section/controller.d.ts +4 -4
  34. package/dist/{esm/modules → modules}/config/section/controller.js +0 -1
  35. package/dist/{esm/modules → modules}/config/section/entity/entity.d.ts +3 -3
  36. package/dist/{esm/modules → modules}/config/section/entity/entity.js +3 -3
  37. package/dist/modules/config/section/entity/index.d.ts +1 -0
  38. package/dist/modules/config/section/index.d.ts +2 -0
  39. package/dist/modules/config/section/interface/index.d.ts +1 -0
  40. package/dist/modules/config/type/index.d.ts +2 -0
  41. package/dist/{cjs/modules → modules}/config/type/type.d.ts +1 -1
  42. package/dist/modules/index.d.ts +1 -0
  43. package/dist/{esm/shared → shared}/constant/api-property.constant.js +0 -1
  44. package/dist/{esm/shared → shared}/constant/config/data.constant.js +0 -1
  45. package/dist/shared/constant/config/entity.constant.d.ts +4 -0
  46. package/dist/shared/constant/config/entity.constant.js +7 -0
  47. package/dist/shared/constant/config/index.d.ts +4 -0
  48. package/dist/{esm/shared → shared}/constant/config/migration.constant.js +0 -1
  49. package/dist/{esm/shared → shared}/constant/config/section.constant.js +0 -1
  50. package/dist/{esm/shared → shared}/constant/crypto.constant.js +0 -1
  51. package/dist/shared/constant/index.d.ts +4 -0
  52. package/dist/{esm/shared → shared}/constant/token.constant.js +0 -1
  53. package/dist/{esm/shared → shared}/enum/environment.enum.js +0 -1
  54. package/dist/shared/enum/index.d.ts +6 -0
  55. package/dist/{esm/shared → shared}/enum/instance-name.enum.js +0 -1
  56. package/dist/{esm/shared → shared}/enum/service.enum.js +0 -1
  57. package/dist/shared/index.d.ts +5 -0
  58. package/dist/{cjs/shared → shared}/interface/config/async-module-properties.interface.d.ts +4 -4
  59. package/dist/{cjs/shared → shared}/interface/config/controller-options.interface.d.ts +2 -2
  60. package/dist/{cjs/shared → shared}/interface/config/entity/index.d.ts +3 -3
  61. package/dist/{esm/shared → shared}/interface/config/entity/options.interface.d.ts +3 -2
  62. package/dist/{cjs/shared → shared}/interface/config/index.d.ts +8 -8
  63. package/dist/{esm/shared → shared}/interface/config/options.interface.d.ts +5 -5
  64. package/dist/{cjs/shared → shared}/interface/config/properties-factory.interface.d.ts +1 -1
  65. package/dist/{esm/shared → shared}/interface/config/static-options.interface.d.ts +2 -2
  66. package/dist/shared/interface/index.d.ts +2 -0
  67. package/dist/{cjs/shared → shared}/interface/utility/create-dynamic-entity/index.d.ts +2 -2
  68. package/dist/{esm/shared → shared}/interface/utility/create-dynamic-entity/options.interface.d.ts +1 -1
  69. package/dist/shared/interface/utility/index.d.ts +1 -0
  70. package/dist/shared/type/index.d.ts +1 -0
  71. package/dist/{cjs/shared → shared}/utility/create-dynamic/entity.utility.d.ts +2 -2
  72. package/dist/{esm/shared → shared}/utility/create-dynamic/entity.utility.js +0 -1
  73. package/dist/shared/utility/create-dynamic/index.d.ts +2 -0
  74. package/dist/{cjs/shared → shared}/utility/create-dynamic/service.utility.d.ts +1 -1
  75. package/dist/{esm/shared → shared}/utility/create-dynamic/service.utility.js +0 -1
  76. package/dist/{cjs/shared → shared}/utility/crypto.utility.d.ts +1 -1
  77. package/dist/{esm/shared → shared}/utility/crypto.utility.js +0 -1
  78. package/dist/shared/utility/index.d.ts +4 -0
  79. package/dist/shared/utility/logger.utility.d.ts +37 -0
  80. package/dist/{esm/shared → shared}/utility/logger.utility.js +26 -6
  81. package/package.json +73 -66
  82. package/dist/cjs/external/tslib/tslib.es6.js +0 -43
  83. package/dist/cjs/external/tslib/tslib.es6.js.map +0 -1
  84. package/dist/cjs/index.d.ts +0 -11
  85. package/dist/cjs/index.js +0 -81
  86. package/dist/cjs/index.js.map +0 -1
  87. package/dist/cjs/modules/config/config.module.d.ts +0 -33
  88. package/dist/cjs/modules/config/config.module.js +0 -321
  89. package/dist/cjs/modules/config/config.module.js.map +0 -1
  90. package/dist/cjs/modules/config/config.service.js +0 -315
  91. package/dist/cjs/modules/config/config.service.js.map +0 -1
  92. package/dist/cjs/modules/config/data/controller.js +0 -124
  93. package/dist/cjs/modules/config/data/controller.js.map +0 -1
  94. package/dist/cjs/modules/config/data/entity/entity.js +0 -161
  95. package/dist/cjs/modules/config/data/entity/entity.js.map +0 -1
  96. package/dist/cjs/modules/config/data/entity/index.d.ts +0 -1
  97. package/dist/cjs/modules/config/data/index.d.ts +0 -3
  98. package/dist/cjs/modules/config/data/interface/index.d.ts +0 -1
  99. package/dist/cjs/modules/config/index.d.ts +0 -11
  100. package/dist/cjs/modules/config/interface/index.d.ts +0 -4
  101. package/dist/cjs/modules/config/migration/entity/entity.js +0 -141
  102. package/dist/cjs/modules/config/migration/entity/entity.js.map +0 -1
  103. package/dist/cjs/modules/config/migration/entity/index.d.ts +0 -1
  104. package/dist/cjs/modules/config/migration/enum/index.d.ts +0 -1
  105. package/dist/cjs/modules/config/migration/enum/status.js +0 -11
  106. package/dist/cjs/modules/config/migration/enum/status.js.map +0 -1
  107. package/dist/cjs/modules/config/migration/index.d.ts +0 -5
  108. package/dist/cjs/modules/config/migration/interface/interface.d.ts +0 -12
  109. package/dist/cjs/modules/config/migration/interface/migration-options.interface.d.ts +0 -39
  110. package/dist/cjs/modules/config/migration/migration-runner.service.d.ts +0 -26
  111. package/dist/cjs/modules/config/migration/migration-runner.service.js +0 -93
  112. package/dist/cjs/modules/config/migration/migration-runner.service.js.map +0 -1
  113. package/dist/cjs/modules/config/migration/migration.service.d.ts +0 -79
  114. package/dist/cjs/modules/config/migration/migration.service.js +0 -377
  115. package/dist/cjs/modules/config/migration/migration.service.js.map +0 -1
  116. package/dist/cjs/modules/config/section/controller.js +0 -86
  117. package/dist/cjs/modules/config/section/controller.js.map +0 -1
  118. package/dist/cjs/modules/config/section/entity/entity.d.ts +0 -18
  119. package/dist/cjs/modules/config/section/entity/entity.js +0 -99
  120. package/dist/cjs/modules/config/section/entity/entity.js.map +0 -1
  121. package/dist/cjs/modules/config/section/entity/index.d.ts +0 -1
  122. package/dist/cjs/modules/config/section/index.d.ts +0 -2
  123. package/dist/cjs/modules/config/section/interface/index.d.ts +0 -1
  124. package/dist/cjs/modules/config/type/index.d.ts +0 -2
  125. package/dist/cjs/modules/index.d.ts +0 -1
  126. package/dist/cjs/package.json +0 -8
  127. package/dist/cjs/shared/constant/api-property.constant.js +0 -11
  128. package/dist/cjs/shared/constant/api-property.constant.js.map +0 -1
  129. package/dist/cjs/shared/constant/config/data.constant.js +0 -17
  130. package/dist/cjs/shared/constant/config/data.constant.js.map +0 -1
  131. package/dist/cjs/shared/constant/config/index.d.ts +0 -3
  132. package/dist/cjs/shared/constant/config/migration.constant.js +0 -15
  133. package/dist/cjs/shared/constant/config/migration.constant.js.map +0 -1
  134. package/dist/cjs/shared/constant/config/section.constant.js +0 -13
  135. package/dist/cjs/shared/constant/config/section.constant.js.map +0 -1
  136. package/dist/cjs/shared/constant/crypto.constant.js +0 -17
  137. package/dist/cjs/shared/constant/crypto.constant.js.map +0 -1
  138. package/dist/cjs/shared/constant/index.d.ts +0 -4
  139. package/dist/cjs/shared/constant/token.constant.js +0 -24
  140. package/dist/cjs/shared/constant/token.constant.js.map +0 -1
  141. package/dist/cjs/shared/enum/environment.enum.js +0 -20
  142. package/dist/cjs/shared/enum/environment.enum.js.map +0 -1
  143. package/dist/cjs/shared/enum/index.d.ts +0 -6
  144. package/dist/cjs/shared/enum/instance-name.enum.js +0 -11
  145. package/dist/cjs/shared/enum/instance-name.enum.js.map +0 -1
  146. package/dist/cjs/shared/enum/service.enum.js +0 -224
  147. package/dist/cjs/shared/enum/service.enum.js.map +0 -1
  148. package/dist/cjs/shared/index.d.ts +0 -5
  149. package/dist/cjs/shared/interface/config/entity/options.interface.d.ts +0 -25
  150. package/dist/cjs/shared/interface/config/options.interface.d.ts +0 -39
  151. package/dist/cjs/shared/interface/config/static-options.interface.d.ts +0 -45
  152. package/dist/cjs/shared/interface/index.d.ts +0 -2
  153. package/dist/cjs/shared/interface/utility/create-dynamic-entity/options.interface.d.ts +0 -15
  154. package/dist/cjs/shared/interface/utility/index.d.ts +0 -1
  155. package/dist/cjs/shared/type/index.d.ts +0 -1
  156. package/dist/cjs/shared/utility/create-dynamic/entity.utility.js +0 -68
  157. package/dist/cjs/shared/utility/create-dynamic/entity.utility.js.map +0 -1
  158. package/dist/cjs/shared/utility/create-dynamic/index.d.ts +0 -2
  159. package/dist/cjs/shared/utility/create-dynamic/service.utility.js +0 -35
  160. package/dist/cjs/shared/utility/create-dynamic/service.utility.js.map +0 -1
  161. package/dist/cjs/shared/utility/crypto.utility.js +0 -133
  162. package/dist/cjs/shared/utility/crypto.utility.js.map +0 -1
  163. package/dist/cjs/shared/utility/index.d.ts +0 -4
  164. package/dist/cjs/shared/utility/logger.utility.d.ts +0 -21
  165. package/dist/cjs/shared/utility/logger.utility.js +0 -68
  166. package/dist/cjs/shared/utility/logger.utility.js.map +0 -1
  167. package/dist/esm/external/tslib/tslib.es6.js.map +0 -1
  168. package/dist/esm/index.js.map +0 -1
  169. package/dist/esm/modules/config/config.module.js.map +0 -1
  170. package/dist/esm/modules/config/config.service.d.ts +0 -56
  171. package/dist/esm/modules/config/config.service.js.map +0 -1
  172. package/dist/esm/modules/config/data/controller.d.ts +0 -11
  173. package/dist/esm/modules/config/data/controller.js.map +0 -1
  174. package/dist/esm/modules/config/data/entity/entity.d.ts +0 -25
  175. package/dist/esm/modules/config/data/entity/entity.js.map +0 -1
  176. package/dist/esm/modules/config/data/entity/index.d.ts +0 -1
  177. package/dist/esm/modules/config/data/index.d.ts +0 -3
  178. package/dist/esm/modules/config/data/interface/index.d.ts +0 -1
  179. package/dist/esm/modules/config/data/interface/interface.d.ts +0 -13
  180. package/dist/esm/modules/config/index.d.ts +0 -11
  181. package/dist/esm/modules/config/interface/delete-options.interface.d.ts +0 -24
  182. package/dist/esm/modules/config/interface/get-list-options.interface.d.ts +0 -24
  183. package/dist/esm/modules/config/interface/get-options.interface.d.ts +0 -32
  184. package/dist/esm/modules/config/interface/index.d.ts +0 -4
  185. package/dist/esm/modules/config/interface/set-options.interface.d.ts +0 -36
  186. package/dist/esm/modules/config/migration/entity/entity.d.ts +0 -16
  187. package/dist/esm/modules/config/migration/entity/entity.js.map +0 -1
  188. package/dist/esm/modules/config/migration/entity/index.d.ts +0 -1
  189. package/dist/esm/modules/config/migration/enum/index.d.ts +0 -1
  190. package/dist/esm/modules/config/migration/enum/status.d.ts +0 -7
  191. package/dist/esm/modules/config/migration/enum/status.js.map +0 -1
  192. package/dist/esm/modules/config/migration/index.d.ts +0 -5
  193. package/dist/esm/modules/config/migration/interface/index.d.ts +0 -3
  194. package/dist/esm/modules/config/migration/interface/migration-definition.interface.d.ts +0 -31
  195. package/dist/esm/modules/config/migration/migration-runner.service.js.map +0 -1
  196. package/dist/esm/modules/config/migration/migration.service.js.map +0 -1
  197. package/dist/esm/modules/config/section/controller.d.ts +0 -11
  198. package/dist/esm/modules/config/section/controller.js.map +0 -1
  199. package/dist/esm/modules/config/section/entity/entity.js.map +0 -1
  200. package/dist/esm/modules/config/section/entity/index.d.ts +0 -1
  201. package/dist/esm/modules/config/section/index.d.ts +0 -2
  202. package/dist/esm/modules/config/section/interface/index.d.ts +0 -1
  203. package/dist/esm/modules/config/section/interface/interface.d.ts +0 -8
  204. package/dist/esm/modules/config/type/index.d.ts +0 -2
  205. package/dist/esm/modules/config/type/item.type.d.ts +0 -1
  206. package/dist/esm/modules/config/type/type.d.ts +0 -2
  207. package/dist/esm/modules/index.d.ts +0 -1
  208. package/dist/esm/package.json +0 -8
  209. package/dist/esm/shared/constant/api-property.constant.d.ts +0 -4
  210. package/dist/esm/shared/constant/api-property.constant.js.map +0 -1
  211. package/dist/esm/shared/constant/config/data.constant.d.ts +0 -7
  212. package/dist/esm/shared/constant/config/data.constant.js.map +0 -1
  213. package/dist/esm/shared/constant/config/index.d.ts +0 -3
  214. package/dist/esm/shared/constant/config/migration.constant.d.ts +0 -6
  215. package/dist/esm/shared/constant/config/migration.constant.js.map +0 -1
  216. package/dist/esm/shared/constant/config/section.constant.d.ts +0 -5
  217. package/dist/esm/shared/constant/config/section.constant.js.map +0 -1
  218. package/dist/esm/shared/constant/crypto.constant.d.ts +0 -7
  219. package/dist/esm/shared/constant/crypto.constant.js.map +0 -1
  220. package/dist/esm/shared/constant/index.d.ts +0 -4
  221. package/dist/esm/shared/constant/token.constant.d.ts +0 -10
  222. package/dist/esm/shared/constant/token.constant.js.map +0 -1
  223. package/dist/esm/shared/enum/environment.enum.d.ts +0 -16
  224. package/dist/esm/shared/enum/environment.enum.js.map +0 -1
  225. package/dist/esm/shared/enum/index.d.ts +0 -6
  226. package/dist/esm/shared/enum/instance-name.enum.d.ts +0 -7
  227. package/dist/esm/shared/enum/instance-name.enum.js.map +0 -1
  228. package/dist/esm/shared/enum/service.enum.d.ts +0 -220
  229. package/dist/esm/shared/enum/service.enum.js.map +0 -1
  230. package/dist/esm/shared/index.d.ts +0 -5
  231. package/dist/esm/shared/interface/config/async-module-properties.interface.d.ts +0 -47
  232. package/dist/esm/shared/interface/config/cache-options.interface.d.ts +0 -18
  233. package/dist/esm/shared/interface/config/controller-options.interface.d.ts +0 -32
  234. package/dist/esm/shared/interface/config/encryption-options.interface.d.ts +0 -19
  235. package/dist/esm/shared/interface/config/entity/data-options.interface.d.ts +0 -25
  236. package/dist/esm/shared/interface/config/entity/index.d.ts +0 -3
  237. package/dist/esm/shared/interface/config/entity/section-options.interface.d.ts +0 -17
  238. package/dist/esm/shared/interface/config/index.d.ts +0 -8
  239. package/dist/esm/shared/interface/config/properties-factory.interface.d.ts +0 -11
  240. package/dist/esm/shared/interface/index.d.ts +0 -2
  241. package/dist/esm/shared/interface/utility/create-dynamic-entity/index.d.ts +0 -2
  242. package/dist/esm/shared/interface/utility/create-dynamic-entity/relation-options.interface.d.ts +0 -9
  243. package/dist/esm/shared/interface/utility/index.d.ts +0 -1
  244. package/dist/esm/shared/type/dynamic-entity.type.d.ts +0 -2
  245. package/dist/esm/shared/type/index.d.ts +0 -1
  246. package/dist/esm/shared/utility/create-dynamic/entity.utility.d.ts +0 -11
  247. package/dist/esm/shared/utility/create-dynamic/entity.utility.js.map +0 -1
  248. package/dist/esm/shared/utility/create-dynamic/index.d.ts +0 -2
  249. package/dist/esm/shared/utility/create-dynamic/service.utility.d.ts +0 -10
  250. package/dist/esm/shared/utility/create-dynamic/service.utility.js.map +0 -1
  251. package/dist/esm/shared/utility/crypto.utility.d.ts +0 -37
  252. package/dist/esm/shared/utility/crypto.utility.js.map +0 -1
  253. package/dist/esm/shared/utility/index.d.ts +0 -4
  254. package/dist/esm/shared/utility/logger.utility.d.ts +0 -21
  255. package/dist/esm/shared/utility/logger.utility.js.map +0 -1
  256. /package/dist/{cjs/modules → modules}/config/interface/delete-options.interface.d.ts +0 -0
  257. /package/dist/{cjs/modules → modules}/config/interface/get-list-options.interface.d.ts +0 -0
  258. /package/dist/{cjs/modules → modules}/config/interface/get-options.interface.d.ts +0 -0
  259. /package/dist/{cjs/modules → modules}/config/interface/set-options.interface.d.ts +0 -0
  260. /package/dist/{cjs/modules → modules}/config/migration/enum/status.d.ts +0 -0
  261. /package/dist/{cjs/modules → modules}/config/section/interface/interface.d.ts +0 -0
  262. /package/dist/{cjs/modules → modules}/config/type/item.type.d.ts +0 -0
  263. /package/dist/{cjs/shared → shared}/constant/api-property.constant.d.ts +0 -0
  264. /package/dist/{cjs/shared → shared}/constant/config/data.constant.d.ts +0 -0
  265. /package/dist/{cjs/shared → shared}/constant/config/migration.constant.d.ts +0 -0
  266. /package/dist/{cjs/shared → shared}/constant/config/section.constant.d.ts +0 -0
  267. /package/dist/{cjs/shared → shared}/constant/crypto.constant.d.ts +0 -0
  268. /package/dist/{cjs/shared → shared}/constant/token.constant.d.ts +0 -0
  269. /package/dist/{cjs/shared → shared}/enum/environment.enum.d.ts +0 -0
  270. /package/dist/{cjs/shared → shared}/enum/instance-name.enum.d.ts +0 -0
  271. /package/dist/{cjs/shared → shared}/enum/service.enum.d.ts +0 -0
  272. /package/dist/{cjs/shared → shared}/interface/config/cache-options.interface.d.ts +0 -0
  273. /package/dist/{cjs/shared → shared}/interface/config/encryption-options.interface.d.ts +0 -0
  274. /package/dist/{cjs/shared → shared}/interface/config/entity/data-options.interface.d.ts +0 -0
  275. /package/dist/{cjs/shared → shared}/interface/config/entity/section-options.interface.d.ts +0 -0
  276. /package/dist/{cjs/shared → shared}/interface/utility/create-dynamic-entity/relation-options.interface.d.ts +0 -0
  277. /package/dist/{cjs/shared → shared}/type/dynamic-entity.type.d.ts +0 -0
@@ -1 +0,0 @@
1
- export type { IConfigData } from './interface';
@@ -1,11 +0,0 @@
1
- /**
2
- * CRUD Configuration Module for NestJS.
3
- * Exports the module, service, and related interfaces.
4
- */
5
- export { CrudConfigModule } from './config.module';
6
- export { CrudConfigService } from './config.service';
7
- export * from './data';
8
- export type * from './interface';
9
- export * from './migration';
10
- export * from './section';
11
- export type * from './type';
@@ -1,4 +0,0 @@
1
- export { type IConfigDeleteOptions } from './delete-options.interface';
2
- export { type IConfigGetListOptions } from './get-list-options.interface';
3
- export { type IConfigGetOptions } from './get-options.interface';
4
- export { type IConfigSetOptions } from './set-options.interface';
@@ -1,141 +0,0 @@
1
- 'use strict';
2
-
3
- var nestjsCrudAutomator = require('@elsikora/nestjs-crud-automator');
4
- var apiProperty_constant = require('../../../../shared/constant/api-property.constant.js');
5
- var migration_constant = require('../../../../shared/constant/config/migration.constant.js');
6
- var entity_utility = require('../../../../shared/utility/create-dynamic/entity.utility.js');
7
- require('../../../../external/tslib/tslib.es6.js');
8
- require('@nestjs/common');
9
- require('@nestjs/typeorm');
10
- var typeorm = require('typeorm');
11
- require('../../../../shared/utility/crypto.utility.js');
12
- require('../../../../shared/utility/logger.utility.js');
13
-
14
- /**
15
- * Creates a dynamic ConfigMigration entity with TypeORM decorators
16
- * @param {object} options - Configuration options for the entity
17
- * @param {number} options.maxNameLength - Maximum length for migration name field
18
- * @param {string} options.tableName - Name of the database table
19
- * @param {ColumnType} [options.timestampColumnType] - TypeORM type for timestamp fields; defaults to `timestamp`
20
- * @returns {TDynamicEntity} Dynamically created ConfigMigration entity class
21
- */
22
- function createConfigMigrationEntity(options) {
23
- const timestampColumnType = options.timestampColumnType ?? "timestamp";
24
- return entity_utility.createDynamicEntityClass({
25
- columns: {
26
- createdAt: {
27
- default: () => "CURRENT_TIMESTAMP",
28
- nullable: false,
29
- type: timestampColumnType,
30
- },
31
- executedAt: {
32
- nullable: true,
33
- type: timestampColumnType,
34
- },
35
- failedAt: {
36
- nullable: true,
37
- type: timestampColumnType,
38
- },
39
- name: {
40
- length: options.maxNameLength,
41
- nullable: false,
42
- type: "varchar",
43
- },
44
- startedAt: {
45
- nullable: true,
46
- type: timestampColumnType,
47
- },
48
- status: {
49
- default: "PENDING",
50
- enum: ["PENDING", "RUNNING", "COMPLETED", "FAILED", "STUCK"],
51
- nullable: false,
52
- type: "enum",
53
- },
54
- updatedAt: {
55
- default: () => "CURRENT_TIMESTAMP",
56
- nullable: false,
57
- type: timestampColumnType,
58
- },
59
- },
60
- decorators: {
61
- createdAt: [
62
- typeorm.CreateDateColumn({ type: timestampColumnType }),
63
- nestjsCrudAutomator.ApiPropertyDescribe({
64
- format: nestjsCrudAutomator.EApiPropertyDateType.DATE_TIME,
65
- identifier: nestjsCrudAutomator.EApiPropertyDateIdentifier.CREATED_AT,
66
- type: nestjsCrudAutomator.EApiPropertyDescribeType.DATE,
67
- }),
68
- ],
69
- executedAt: [
70
- nestjsCrudAutomator.ApiPropertyDescribe({
71
- format: nestjsCrudAutomator.EApiPropertyDateType.DATE_TIME,
72
- identifier: nestjsCrudAutomator.EApiPropertyDateIdentifier.CREATED_AT,
73
- isNullable: true,
74
- type: nestjsCrudAutomator.EApiPropertyDescribeType.DATE,
75
- }),
76
- ],
77
- failedAt: [
78
- nestjsCrudAutomator.ApiPropertyDescribe({
79
- format: nestjsCrudAutomator.EApiPropertyDateType.DATE_TIME,
80
- identifier: nestjsCrudAutomator.EApiPropertyDateIdentifier.CREATED_AT,
81
- isNullable: true,
82
- type: nestjsCrudAutomator.EApiPropertyDescribeType.DATE,
83
- }),
84
- ],
85
- id: [
86
- nestjsCrudAutomator.ApiPropertyDescribe({
87
- type: nestjsCrudAutomator.EApiPropertyDescribeType.UUID,
88
- }),
89
- ],
90
- name: [
91
- nestjsCrudAutomator.ApiPropertyDescribe({
92
- description: "Migration name",
93
- exampleValue: "001_initial_config_setup",
94
- format: nestjsCrudAutomator.EApiPropertyStringType.STRING,
95
- maxLength: options.maxNameLength,
96
- minLength: apiProperty_constant.API_PROPERTY_CONSTANT.MIN_NAME_LENGTH,
97
- pattern: `/^[A-Za-z0-9_-]{1,${options.maxNameLength}}/`,
98
- type: nestjsCrudAutomator.EApiPropertyDescribeType.STRING,
99
- }),
100
- ],
101
- startedAt: [
102
- nestjsCrudAutomator.ApiPropertyDescribe({
103
- format: nestjsCrudAutomator.EApiPropertyDateType.DATE_TIME,
104
- identifier: nestjsCrudAutomator.EApiPropertyDateIdentifier.CREATED_AT,
105
- isNullable: true,
106
- type: nestjsCrudAutomator.EApiPropertyDescribeType.DATE,
107
- }),
108
- ],
109
- status: [
110
- nestjsCrudAutomator.ApiPropertyDescribe({
111
- description: "Migration execution status",
112
- exampleValue: "COMPLETED",
113
- format: nestjsCrudAutomator.EApiPropertyStringType.STRING,
114
- maxLength: migration_constant.CONFIG_MIGRATION_CONSTANT.MAX_STATUS_LENGTH,
115
- minLength: apiProperty_constant.API_PROPERTY_CONSTANT.MIN_NAME_LENGTH,
116
- pattern: `/^[A-Z_]{1,${migration_constant.CONFIG_MIGRATION_CONSTANT.MAX_STATUS_LENGTH}}/`,
117
- type: nestjsCrudAutomator.EApiPropertyDescribeType.STRING,
118
- }),
119
- ],
120
- updatedAt: [
121
- typeorm.UpdateDateColumn({ type: timestampColumnType }),
122
- nestjsCrudAutomator.ApiPropertyDescribe({
123
- format: nestjsCrudAutomator.EApiPropertyDateType.DATE_TIME,
124
- identifier: nestjsCrudAutomator.EApiPropertyDateIdentifier.UPDATED_AT,
125
- type: nestjsCrudAutomator.EApiPropertyDescribeType.DATE,
126
- }),
127
- ],
128
- },
129
- indexes: [
130
- { columns: ["status"], name: "idx_config_migration_status" },
131
- { columns: ["startedAt"], name: "idx_config_migration_started_at" },
132
- { columns: ["createdAt"], name: "idx_config_migration_created_at" },
133
- ],
134
- name: "ConfigMigration",
135
- tableName: options.tableName,
136
- uniques: [["name"]],
137
- });
138
- }
139
-
140
- exports.createConfigMigrationEntity = createConfigMigrationEntity;
141
- //# sourceMappingURL=entity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"entity.js","sources":["../../../../../../../src/modules/config/migration/entity/entity.ts"],"sourcesContent":[null],"names":["createDynamicEntityClass","CreateDateColumn","ApiPropertyDescribe","EApiPropertyDateType","EApiPropertyDateIdentifier","EApiPropertyDescribeType","EApiPropertyStringType","API_PROPERTY_CONSTANT","CONFIG_MIGRATION_CONSTANT","UpdateDateColumn"],"mappings":"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"}
@@ -1 +0,0 @@
1
- export { createConfigMigrationEntity } from './entity';
@@ -1 +0,0 @@
1
- export { EConfigMigrationStatus } from './status';
@@ -1,11 +0,0 @@
1
- 'use strict';
2
-
3
- exports.EConfigMigrationStatus = void 0;
4
- (function (EConfigMigrationStatus) {
5
- EConfigMigrationStatus["COMPLETED"] = "COMPLETED";
6
- EConfigMigrationStatus["FAILED"] = "FAILED";
7
- EConfigMigrationStatus["PENDING"] = "PENDING";
8
- EConfigMigrationStatus["RUNNING"] = "RUNNING";
9
- EConfigMigrationStatus["STUCK"] = "STUCK";
10
- })(exports.EConfigMigrationStatus || (exports.EConfigMigrationStatus = {}));
11
- //# sourceMappingURL=status.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status.js","sources":["../../../../../../../src/modules/config/migration/enum/status.ts"],"sourcesContent":[null],"names":["EConfigMigrationStatus"],"mappings":";;AAAYA;AAAZ,CAAA,UAAY,sBAAsB,EAAA;AACjC,IAAA,sBAAA,CAAA,WAAA,CAAA,GAAA,WAAuB;AACvB,IAAA,sBAAA,CAAA,QAAA,CAAA,GAAA,QAAiB;AACjB,IAAA,sBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,sBAAA,CAAA,SAAA,CAAA,GAAA,SAAmB;AACnB,IAAA,sBAAA,CAAA,OAAA,CAAA,GAAA,OAAe;AAChB,CAAC,EANWA,8BAAsB,KAAtBA,8BAAsB,GAAA,EAAA,CAAA,CAAA"}
@@ -1,5 +0,0 @@
1
- export * from './entity';
2
- export * from './enum';
3
- export type * from './interface';
4
- export { ConfigMigrationRunnerService } from './migration-runner.service';
5
- export { ConfigMigrationService } from './migration.service';
@@ -1,12 +0,0 @@
1
- import { IApiBaseEntity } from '@elsikora/nestjs-crud-automator';
2
- import { EConfigMigrationStatus } from '../enum';
3
- export interface IConfigMigration extends IApiBaseEntity {
4
- createdAt: Date;
5
- executedAt?: Date;
6
- failedAt?: Date;
7
- id: string;
8
- name: string;
9
- startedAt?: Date;
10
- status: EConfigMigrationStatus;
11
- updatedAt: Date;
12
- }
@@ -1,39 +0,0 @@
1
- import { IConfigMigrationDefinition } from './migration-definition.interface';
2
- /**
3
- * Interface for migration configuration options
4
- * @see {@link https://elsikora.com/docs/nestjs-crud-config/migration-system | Migration System}
5
- * @see {@link https://elsikora.com/docs/nestjs-crud-config/api-reference/interfaces/config-migration-options | API Reference - IConfigMigrationOptions}
6
- */
7
- export interface IConfigMigrationOptions {
8
- /**
9
- * Whether migrations are enabled
10
- */
11
- isEnabled?: boolean;
12
- /**
13
- * Maximum length for migration name field
14
- */
15
- maxNameLength?: number;
16
- /**
17
- * Array of migration definitions to execute
18
- */
19
- migrations?: Array<IConfigMigrationDefinition>;
20
- /**
21
- * Whether to run migrations automatically on application startup
22
- */
23
- shouldRunOnStartup?: boolean;
24
- /**
25
- * Timeout in minutes for stuck migration cleanup (default: 30)
26
- */
27
- stuckMigrationTimeoutMinutes?: number;
28
- /**
29
- * Table name for storing migration history
30
- */
31
- tableName?: string;
32
- /**
33
- * Whether to run migrations inside the named crud-config-migrations owner.
34
- * Defaults to true. With a supplied owner manager, execution joins that active owner.
35
- * A supplied manager with false is rejected; standalone set calls still own per-operation
36
- * transactions when false without a manager.
37
- */
38
- useTransaction?: boolean;
39
- }
@@ -1,26 +0,0 @@
1
- import { IConfigOptions } from '../../../shared/interface/config';
2
- import { EntityManager } from 'typeorm';
3
- import { OnApplicationBootstrap } from '@nestjs/common';
4
- import { ConfigMigrationService } from './migration.service';
5
- /**
6
- * Service that runs migrations on application startup
7
- * @see {@link https://elsikora.com/docs/nestjs-crud-config/migration-system | Migration System}
8
- * @see {@link https://elsikora.com/docs/nestjs-crud-config/api-reference/classes/config-migration-runner-service | API Reference - ConfigMigrationRunnerService}
9
- */
10
- export declare class ConfigMigrationRunnerService implements OnApplicationBootstrap {
11
- private readonly migrationService;
12
- private readonly options;
13
- private readonly LOGGER;
14
- constructor(migrationService: ConfigMigrationService, options: IConfigOptions);
15
- /**
16
- * Called when the application is fully bootstrapped
17
- * Runs migrations if enabled and configured to run on startup
18
- */
19
- onApplicationBootstrap(): Promise<void>;
20
- /**
21
- * Manually run migrations, optionally participating in an existing Automator owner
22
- * @param {EntityManager} [ownerManager] - Existing active owner manager for the configured DataSource
23
- * @returns {Promise<void>} Promise that resolves when migrations are complete
24
- */
25
- runMigrations(ownerManager?: EntityManager): Promise<void>;
26
- }
@@ -1,93 +0,0 @@
1
- 'use strict';
2
-
3
- var tslib_es6 = require('../../../external/tslib/tslib.es6.js');
4
- var common = require('@nestjs/common');
5
- var migration_constant = require('../../../shared/constant/config/migration.constant.js');
6
- var token_constant = require('../../../shared/constant/token.constant.js');
7
- require('typeorm');
8
- require('@elsikora/nestjs-crud-automator');
9
- require('@nestjs/typeorm');
10
- require('../../../shared/utility/crypto.utility.js');
11
- var logger_utility = require('../../../shared/utility/logger.utility.js');
12
- var status = require('./enum/status.js');
13
- var migration_service = require('./migration.service.js');
14
-
15
- /**
16
- * Service that runs migrations on application startup
17
- * @see {@link https://elsikora.com/docs/nestjs-crud-config/migration-system | Migration System}
18
- * @see {@link https://elsikora.com/docs/nestjs-crud-config/api-reference/classes/config-migration-runner-service | API Reference - ConfigMigrationRunnerService}
19
- */
20
- exports.ConfigMigrationRunnerService = class ConfigMigrationRunnerService {
21
- migrationService;
22
- options;
23
- LOGGER = logger_utility.LoggerUtility.getLogger("ConfigMigrationRunnerService");
24
- constructor(migrationService, options) {
25
- this.migrationService = migrationService;
26
- this.options = options;
27
- }
28
- /**
29
- * Called when the application is fully bootstrapped
30
- * Runs migrations if enabled and configured to run on startup
31
- */
32
- async onApplicationBootstrap() {
33
- const migrationOptions = this.options.migrationOptions;
34
- if (!migrationOptions?.isEnabled) {
35
- this.LOGGER.verbose("Migrations are disabled");
36
- return;
37
- }
38
- if (!migrationOptions.shouldRunOnStartup) {
39
- this.LOGGER.verbose("Migrations configured to not run on startup");
40
- return;
41
- }
42
- if (!migrationOptions.migrations || migrationOptions.migrations.length === 0) {
43
- this.LOGGER.verbose("No migrations configured");
44
- return;
45
- }
46
- try {
47
- this.LOGGER.verbose("Starting migration runner");
48
- // Check for failed and stuck migrations from previous runs
49
- const allMigrations = await this.migrationService.getExecutedMigrations();
50
- const failedMigrations = allMigrations.filter((m) => m.status === status.EConfigMigrationStatus.FAILED);
51
- if (failedMigrations.length > 0) {
52
- this.LOGGER.warn(`Found ${failedMigrations.length} failed migration(s) from previous runs: ${failedMigrations.map((m) => m.name).join(", ")}`);
53
- this.LOGGER.warn("Consider reviewing and cleaning up failed migrations before proceeding");
54
- }
55
- // Clean up stuck migrations with configured timeout
56
- const timeoutMinutes = migrationOptions.stuckMigrationTimeoutMinutes ??
57
- migration_constant.CONFIG_MIGRATION_CONSTANT.DEFAULT_STUCK_MIGRATION_TIMEOUT_MINUTES;
58
- await this.migrationService.cleanupStuckMigrations(timeoutMinutes);
59
- await this.migrationService.executeMigrations(migrationOptions.migrations, migrationOptions.useTransaction ?? true);
60
- this.LOGGER.verbose("Migration runner completed successfully");
61
- }
62
- catch (error) {
63
- this.LOGGER.error("Migration runner failed:", error);
64
- throw error;
65
- }
66
- }
67
- /**
68
- * Manually run migrations, optionally participating in an existing Automator owner
69
- * @param {EntityManager} [ownerManager] - Existing active owner manager for the configured DataSource
70
- * @returns {Promise<void>} Promise that resolves when migrations are complete
71
- */
72
- async runMigrations(ownerManager) {
73
- const migrationOptions = this.options.migrationOptions;
74
- if (!migrationOptions?.isEnabled) {
75
- throw new Error("Migrations are not enabled");
76
- }
77
- if (!migrationOptions.migrations || migrationOptions.migrations.length === 0) {
78
- throw new Error("No migrations configured");
79
- }
80
- if (ownerManager === undefined) {
81
- await this.migrationService.executeMigrations(migrationOptions.migrations, migrationOptions.useTransaction ?? true);
82
- }
83
- else {
84
- await this.migrationService.executeMigrations(migrationOptions.migrations, migrationOptions.useTransaction ?? true, ownerManager);
85
- }
86
- }
87
- };
88
- exports.ConfigMigrationRunnerService = tslib_es6.__decorate([
89
- common.Injectable(),
90
- tslib_es6.__param(1, common.Inject(token_constant.TOKEN_CONSTANT.CONFIG_OPTIONS)),
91
- tslib_es6.__metadata("design:paramtypes", [migration_service.ConfigMigrationService, Object])
92
- ], exports.ConfigMigrationRunnerService);
93
- //# sourceMappingURL=migration-runner.service.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"migration-runner.service.js","sources":["../../../../../../src/modules/config/migration/migration-runner.service.ts"],"sourcesContent":[null],"names":["ConfigMigrationRunnerService","LoggerUtility","EConfigMigrationStatus","CONFIG_MIGRATION_CONSTANT","__decorate","Injectable","__param","Inject","TOKEN_CONSTANT","ConfigMigrationService"],"mappings":"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"}
@@ -1,79 +0,0 @@
1
- import { ApiServiceBase } from '@elsikora/nestjs-crud-automator';
2
- import { IConfigOptions } from '../../../shared/interface/config';
3
- import { IConfigMigration, IConfigMigrationDefinition } from './interface';
4
- import { CrudConfigService } from '../config.service';
5
- import { OnModuleInit } from '@nestjs/common';
6
- import { DataSource, EntityManager } from 'typeorm';
7
- /**
8
- * Service responsible for coordinating and tracking execution of migrations.
9
- * @see {@link https://elsikora.com/docs/nestjs-crud-config/migration-system | Migration System}
10
- * @see {@link https://elsikora.com/docs/nestjs-crud-config/api-reference/classes/config-migration-service | API Reference - ConfigMigrationService}
11
- */
12
- export declare class ConfigMigrationService implements OnModuleInit {
13
- private readonly dataSource;
14
- private readonly options;
15
- private readonly configService;
16
- private readonly LOGGER;
17
- private readonly MIGRATION_SERVICE;
18
- constructor(dataSource: DataSource, options: IConfigOptions, configService: CrudConfigService, migrationService: ApiServiceBase<IConfigMigration>);
19
- /**
20
- * Cleans up failed migrations
21
- * @param {string} [migrationName] - Optional migration name to clean up
22
- * @returns {Promise<void>} Promise that resolves when cleanup is complete
23
- */
24
- cleanupFailedMigrations(migrationName?: string): Promise<void>;
25
- /**
26
- * Cleans up stuck migrations (running for too long)
27
- * @param {number} [timeoutMinutes] - Minutes after which a RUNNING migration is considered stuck
28
- * @returns {Promise<void>} Promise that resolves when cleanup is complete
29
- */
30
- cleanupStuckMigrations(timeoutMinutes?: number): Promise<void>;
31
- /**
32
- * Executes pending migrations
33
- * @param {Array<IConfigMigrationDefinition>} migrations - Array of migration definitions
34
- * @param {boolean} [useTransaction] - Whether to use the named crud-config-migrations owner; defaults to true
35
- * @param {EntityManager} [ownerManager] - Existing active Automator owner manager; requires useTransaction
36
- * @returns {Promise<void>} Promise that resolves when all migrations are executed
37
- */
38
- executeMigrations(migrations: Array<IConfigMigrationDefinition>, useTransaction?: boolean, ownerManager?: EntityManager): Promise<void>;
39
- /**
40
- * Gets list of executed migration names
41
- * @returns {Promise<string[]>} Promise that resolves to list of executed migration names
42
- */
43
- getExecutedMigrationList(): Promise<Array<string>>;
44
- /**
45
- * Gets list of executed migrations
46
- * @returns {Promise<IConfigMigration[]>} Promise that resolves to list of executed migrations
47
- */
48
- getExecutedMigrations(): Promise<Array<IConfigMigration>>;
49
- /**
50
- * Checks if a migration has been executed
51
- * @param {string} migrationName - The name of the migration to check
52
- * @returns {Promise<boolean>} Promise that resolves to true if migration is executed
53
- */
54
- isMigrationExecuted(migrationName: string): Promise<boolean>;
55
- onModuleInit(): void;
56
- /**
57
- * Rolls back a migration inside the named owner or a supplied active Automator owner
58
- * @param {string} migrationName - The name of the migration to roll back
59
- * @param {Array<IConfigMigrationDefinition>} migrations - Array of migration definitions
60
- * @param {EntityManager} [ownerManager] - Existing active Automator owner manager
61
- * @returns {Promise<void>} Promise that resolves when rollback is complete
62
- */
63
- rollbackMigration(migrationName: string, migrations: Array<IConfigMigrationDefinition>, ownerManager?: EntityManager): Promise<void>;
64
- private executePendingMigrations;
65
- private executeRollback;
66
- /**
67
- * Executes a single migration
68
- * @param {IConfigMigrationDefinition} migration - Migration definition
69
- * @param {EntityManager} [transactionalEntityManager] - Optional transaction manager
70
- * @returns {Promise<void>} Promise that resolves when migration is executed
71
- */
72
- private executeSingleMigration;
73
- private runWithOwnerManager;
74
- /**
75
- * Validates migrations for duplicates and naming issues
76
- * @param {Array<IConfigMigrationDefinition>} migrations - Array of migration definitions
77
- */
78
- private validateMigrations;
79
- }