@decaf-ts/core 0.13.2 → 0.14.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (661) hide show
  1. package/dist/core.cjs +1 -1
  2. package/dist/core.cjs.map +1 -1
  3. package/dist/core.js +1 -1
  4. package/dist/core.js.map +1 -1
  5. package/lib/cjs/auth/constants.js.map +1 -0
  6. package/lib/cjs/auth/decorators.js.map +1 -0
  7. package/lib/cjs/auth/index.js.map +1 -0
  8. package/lib/cjs/fs/FilesystemAdapter.js.map +1 -0
  9. package/lib/cjs/fs/FsDispatch.js.map +1 -0
  10. package/lib/cjs/fs/helpers.js.map +1 -0
  11. package/lib/cjs/fs/index.js.map +1 -0
  12. package/lib/cjs/fs/indexStore.js.map +1 -0
  13. package/lib/cjs/fs/locks/FilesystemLock.js.map +1 -0
  14. package/lib/cjs/fs/locks/FilesystemMultiLock.js.map +1 -0
  15. package/lib/{fs → cjs/fs}/types.js.map +1 -1
  16. package/lib/cjs/identity/decorators.js.map +1 -0
  17. package/lib/cjs/identity/index.js.map +1 -0
  18. package/lib/{index.cjs → cjs/index.cjs} +1 -1
  19. package/lib/cjs/index.js.map +1 -0
  20. package/lib/cjs/interfaces/ContextuallyLogged.js.map +1 -0
  21. package/lib/cjs/interfaces/ErrorParser.js.map +1 -0
  22. package/lib/{interfaces → cjs/interfaces}/Executor.js.map +1 -1
  23. package/lib/cjs/interfaces/Observable.js.map +1 -0
  24. package/lib/{interfaces → cjs/interfaces}/Observer.js.map +1 -1
  25. package/lib/cjs/interfaces/Paginatable.js.map +1 -0
  26. package/lib/{interfaces → cjs/interfaces}/Queriable.js.map +1 -1
  27. package/lib/cjs/interfaces/RawExecutor.js.map +1 -0
  28. package/lib/cjs/interfaces/SequenceOptions.js.map +1 -0
  29. package/lib/cjs/interfaces/index.js.map +1 -0
  30. package/lib/cjs/migrations/Migration.js.map +1 -0
  31. package/lib/cjs/migrations/MigrationService.js.map +1 -0
  32. package/lib/cjs/migrations/MigrationTaskBuilder.js.map +1 -0
  33. package/lib/cjs/migrations/MigrationTasks.js.map +1 -0
  34. package/lib/cjs/migrations/MigrationVersioning.js.map +1 -0
  35. package/lib/cjs/migrations/SemverMigrationVersioning.js.map +1 -0
  36. package/lib/cjs/migrations/StandardMigrationVersioning.js.map +1 -0
  37. package/lib/cjs/migrations/constants.js.map +1 -0
  38. package/lib/cjs/migrations/decorators.js.map +1 -0
  39. package/lib/cjs/migrations/index.js.map +1 -0
  40. package/lib/{persistence → cjs/migrations}/types.js.map +1 -1
  41. package/lib/cjs/model/BaseModel.js.map +1 -0
  42. package/lib/cjs/model/SequenceModel.js.map +1 -0
  43. package/lib/cjs/model/construction.js.map +1 -0
  44. package/lib/cjs/model/decorators.js.map +1 -0
  45. package/lib/cjs/model/index.js.map +1 -0
  46. package/lib/cjs/model/indexing.js.map +1 -0
  47. package/lib/{model → cjs/model}/types.js.map +1 -1
  48. package/lib/cjs/overrides/Metadata.js.map +1 -0
  49. package/lib/cjs/overrides/Model.js.map +1 -0
  50. package/lib/cjs/overrides/ModelBuilder.js.map +1 -0
  51. package/lib/cjs/overrides/index.js.map +1 -0
  52. package/lib/cjs/overrides/injectables.js.map +1 -0
  53. package/lib/cjs/overrides/overrides.js.map +1 -0
  54. package/lib/cjs/persistence/Adapter.js.map +1 -0
  55. package/lib/cjs/persistence/Context.js.map +1 -0
  56. package/lib/cjs/persistence/ContextLock.js.map +1 -0
  57. package/lib/cjs/persistence/Dispatch.js.map +1 -0
  58. package/lib/cjs/persistence/ObserverHandler.js.map +1 -0
  59. package/lib/cjs/persistence/Sequence.js.map +1 -0
  60. package/lib/cjs/persistence/constants.js.map +1 -0
  61. package/lib/cjs/persistence/decorators.js.map +1 -0
  62. package/lib/cjs/persistence/errors.js.map +1 -0
  63. package/lib/cjs/persistence/event-filters.js.map +1 -0
  64. package/lib/cjs/persistence/generators.js.map +1 -0
  65. package/lib/cjs/persistence/index.js.map +1 -0
  66. package/lib/cjs/persistence/transactions.js.map +1 -0
  67. package/lib/cjs/persistence/types.js.map +1 -0
  68. package/lib/cjs/query/Condition.js.map +1 -0
  69. package/lib/cjs/query/MethodQueryBuilder.js.map +1 -0
  70. package/lib/cjs/query/Paginator.js.map +1 -0
  71. package/lib/cjs/query/Statement.js.map +1 -0
  72. package/lib/cjs/query/constants.js.map +1 -0
  73. package/lib/cjs/query/decorators.js.map +1 -0
  74. package/lib/cjs/query/errors.js.map +1 -0
  75. package/lib/cjs/query/index.js.map +1 -0
  76. package/lib/{query → cjs/query}/options.js.map +1 -1
  77. package/lib/{query → cjs/query}/selectors.js.map +1 -1
  78. package/lib/cjs/query/types.js.map +1 -0
  79. package/lib/cjs/query/utils.js.map +1 -0
  80. package/lib/cjs/ram/RamAdapter.js.map +1 -0
  81. package/lib/cjs/ram/RamPaginator.js.map +1 -0
  82. package/lib/cjs/ram/RamStatement.js.map +1 -0
  83. package/lib/cjs/ram/constants.js.map +1 -0
  84. package/lib/cjs/ram/handlers.js.map +1 -0
  85. package/lib/cjs/ram/index.js.map +1 -0
  86. package/lib/{tasks → cjs/ram}/types.js.map +1 -1
  87. package/lib/{repository → cjs/repository}/Repository.cjs +1 -1
  88. package/lib/cjs/repository/Repository.js.map +1 -0
  89. package/lib/cjs/repository/constants.js.map +1 -0
  90. package/lib/cjs/repository/decorators.js.map +1 -0
  91. package/lib/cjs/repository/errors.js.map +1 -0
  92. package/lib/cjs/repository/index.js.map +1 -0
  93. package/lib/cjs/repository/injectables.js.map +1 -0
  94. package/lib/cjs/repository/types.js.map +1 -0
  95. package/lib/cjs/repository/utils.js.map +1 -0
  96. package/lib/cjs/services/ModelService.js.map +1 -0
  97. package/lib/cjs/services/PersistenceService.js.map +1 -0
  98. package/lib/cjs/services/index.js.map +1 -0
  99. package/lib/cjs/services/services.js.map +1 -0
  100. package/lib/cjs/tasks/CleanUpTask.js.map +1 -0
  101. package/lib/cjs/tasks/TaskContext.js.map +1 -0
  102. package/lib/cjs/tasks/TaskEngine.js.map +1 -0
  103. package/lib/cjs/tasks/TaskErrors.js.map +1 -0
  104. package/lib/cjs/tasks/TaskEventBus.js.map +1 -0
  105. package/lib/cjs/tasks/TaskEventService.js.map +1 -0
  106. package/lib/cjs/tasks/TaskHandler.js.map +1 -0
  107. package/lib/cjs/tasks/TaskHandlerRegistry.js.map +1 -0
  108. package/lib/cjs/tasks/TaskService.js.map +1 -0
  109. package/lib/cjs/tasks/TaskStateChangeError.js.map +1 -0
  110. package/lib/cjs/tasks/TaskTracker.js.map +1 -0
  111. package/lib/cjs/tasks/builder.js.map +1 -0
  112. package/lib/cjs/tasks/constants.js.map +1 -0
  113. package/lib/cjs/tasks/decorators.js.map +1 -0
  114. package/lib/cjs/tasks/index.js.map +1 -0
  115. package/lib/cjs/tasks/logging.js.map +1 -0
  116. package/lib/cjs/tasks/models/TaskBackoffModel.js.map +1 -0
  117. package/lib/cjs/tasks/models/TaskErrorModel.js.map +1 -0
  118. package/lib/cjs/tasks/models/TaskEventModel.js.map +1 -0
  119. package/lib/cjs/tasks/models/TaskIOSerializer.js.map +1 -0
  120. package/lib/cjs/tasks/models/TaskLogEntryModel.js.map +1 -0
  121. package/lib/cjs/tasks/models/TaskModel.js.map +1 -0
  122. package/lib/cjs/tasks/models/TaskStepResultModel.js.map +1 -0
  123. package/lib/cjs/tasks/models/TaskStepSpecModel.js.map +1 -0
  124. package/lib/cjs/tasks/models/index.js.map +1 -0
  125. package/lib/{ram → cjs/tasks}/types.js.map +1 -1
  126. package/lib/cjs/tasks/utils.js.map +1 -0
  127. package/lib/cjs/utils/ContextualLoggedClass.js.map +1 -0
  128. package/lib/cjs/utils/decorators.js.map +1 -0
  129. package/lib/cjs/utils/errors.js.map +1 -0
  130. package/lib/cjs/utils/index.js.map +1 -0
  131. package/lib/cjs/utils/throttling.js.map +1 -0
  132. package/lib/cjs/utils/types.js.map +1 -0
  133. package/lib/cjs/utils/utils.js.map +1 -0
  134. package/lib/cjs/workers/TaskEngine.js.map +1 -0
  135. package/lib/cjs/workers/WorkThreadEnvironment.js.map +1 -0
  136. package/lib/cjs/workers/index.js.map +1 -0
  137. package/lib/{workers → cjs/workers}/messages.js.map +1 -1
  138. package/lib/{migrations → cjs/workers}/types.js.map +1 -1
  139. package/lib/cjs/workers/workerThread.js.map +1 -0
  140. package/lib/esm/index.js +1 -1
  141. package/lib/esm/repository/Repository.js +1 -1
  142. package/lib/esm/repository/Repository.js.map +1 -1
  143. package/lib/{esm → types}/index.d.ts +1 -1
  144. package/lib/{esm → types}/persistence/transactions.d.ts +1 -1
  145. package/lib/{repository → types/repository}/Repository.d.ts +1 -1
  146. package/lib/{services → types/services}/ModelService.d.ts +2 -2
  147. package/lib/{esm → types}/tasks/TaskService.d.ts +2 -2
  148. package/package.json +26 -20
  149. package/lib/auth/constants.js.map +0 -1
  150. package/lib/auth/decorators.js.map +0 -1
  151. package/lib/auth/index.js.map +0 -1
  152. package/lib/esm/auth/constants.d.ts +0 -5
  153. package/lib/esm/auth/decorators.d.ts +0 -5
  154. package/lib/esm/auth/index.d.ts +0 -2
  155. package/lib/esm/repository/Repository.d.ts +0 -501
  156. package/lib/esm/services/ModelService.d.ts +0 -45
  157. package/lib/fs/FilesystemAdapter.d.ts +0 -70
  158. package/lib/fs/FilesystemAdapter.js.map +0 -1
  159. package/lib/fs/FsDispatch.d.ts +0 -7
  160. package/lib/fs/FsDispatch.js.map +0 -1
  161. package/lib/fs/helpers.d.ts +0 -17
  162. package/lib/fs/helpers.js.map +0 -1
  163. package/lib/fs/index.d.ts +0 -4
  164. package/lib/fs/index.js.map +0 -1
  165. package/lib/fs/indexStore.d.ts +0 -28
  166. package/lib/fs/indexStore.js.map +0 -1
  167. package/lib/fs/locks/FilesystemLock.d.ts +0 -13
  168. package/lib/fs/locks/FilesystemLock.js.map +0 -1
  169. package/lib/fs/locks/FilesystemMultiLock.d.ts +0 -8
  170. package/lib/fs/locks/FilesystemMultiLock.js.map +0 -1
  171. package/lib/fs/types.d.ts +0 -40
  172. package/lib/identity/decorators.d.ts +0 -72
  173. package/lib/identity/decorators.js.map +0 -1
  174. package/lib/identity/index.d.ts +0 -6
  175. package/lib/identity/index.js.map +0 -1
  176. package/lib/index.d.ts +0 -33
  177. package/lib/index.js.map +0 -1
  178. package/lib/interfaces/ContextuallyLogged.d.ts +0 -8
  179. package/lib/interfaces/ContextuallyLogged.js.map +0 -1
  180. package/lib/interfaces/ErrorParser.d.ts +0 -16
  181. package/lib/interfaces/ErrorParser.js.map +0 -1
  182. package/lib/interfaces/Executor.d.ts +0 -16
  183. package/lib/interfaces/Observable.d.ts +0 -33
  184. package/lib/interfaces/Observable.js.map +0 -1
  185. package/lib/interfaces/Observer.d.ts +0 -15
  186. package/lib/interfaces/Paginatable.d.ts +0 -20
  187. package/lib/interfaces/Paginatable.js.map +0 -1
  188. package/lib/interfaces/Queriable.d.ts +0 -47
  189. package/lib/interfaces/RawExecutor.d.ts +0 -28
  190. package/lib/interfaces/RawExecutor.js.map +0 -1
  191. package/lib/interfaces/SequenceOptions.d.ts +0 -79
  192. package/lib/interfaces/SequenceOptions.js.map +0 -1
  193. package/lib/interfaces/index.d.ts +0 -12
  194. package/lib/interfaces/index.js.map +0 -1
  195. package/lib/migrations/Migration.d.ts +0 -19
  196. package/lib/migrations/Migration.js.map +0 -1
  197. package/lib/migrations/MigrationService.d.ts +0 -63
  198. package/lib/migrations/MigrationService.js.map +0 -1
  199. package/lib/migrations/MigrationTaskBuilder.d.ts +0 -10
  200. package/lib/migrations/MigrationTaskBuilder.js.map +0 -1
  201. package/lib/migrations/MigrationTasks.d.ts +0 -9
  202. package/lib/migrations/MigrationTasks.js.map +0 -1
  203. package/lib/migrations/MigrationVersioning.d.ts +0 -7
  204. package/lib/migrations/MigrationVersioning.js.map +0 -1
  205. package/lib/migrations/SemverMigrationVersioning.d.ts +0 -10
  206. package/lib/migrations/SemverMigrationVersioning.js.map +0 -1
  207. package/lib/migrations/StandardMigrationVersioning.d.ts +0 -12
  208. package/lib/migrations/StandardMigrationVersioning.js.map +0 -1
  209. package/lib/migrations/constants.d.ts +0 -2
  210. package/lib/migrations/constants.js.map +0 -1
  211. package/lib/migrations/decorators.d.ts +0 -12
  212. package/lib/migrations/decorators.js.map +0 -1
  213. package/lib/migrations/index.d.ts +0 -14
  214. package/lib/migrations/index.js.map +0 -1
  215. package/lib/migrations/types.d.ts +0 -46
  216. package/lib/model/BaseModel.d.ts +0 -37
  217. package/lib/model/BaseModel.js.map +0 -1
  218. package/lib/model/SequenceModel.d.ts +0 -32
  219. package/lib/model/SequenceModel.js.map +0 -1
  220. package/lib/model/construction.d.ts +0 -455
  221. package/lib/model/construction.js.map +0 -1
  222. package/lib/model/decorators.d.ts +0 -237
  223. package/lib/model/decorators.js.map +0 -1
  224. package/lib/model/index.d.ts +0 -11
  225. package/lib/model/index.js.map +0 -1
  226. package/lib/model/indexing.d.ts +0 -20
  227. package/lib/model/indexing.js.map +0 -1
  228. package/lib/model/types.d.ts +0 -60
  229. package/lib/overrides/Metadata.d.ts +0 -22
  230. package/lib/overrides/Metadata.js.map +0 -1
  231. package/lib/overrides/Model.d.ts +0 -94
  232. package/lib/overrides/Model.js.map +0 -1
  233. package/lib/overrides/ModelBuilder.d.ts +0 -31
  234. package/lib/overrides/ModelBuilder.js.map +0 -1
  235. package/lib/overrides/index.d.ts +0 -10
  236. package/lib/overrides/index.js.map +0 -1
  237. package/lib/overrides/injectables.d.ts +0 -10
  238. package/lib/overrides/injectables.js.map +0 -1
  239. package/lib/overrides/overrides.d.ts +0 -1
  240. package/lib/overrides/overrides.js.map +0 -1
  241. package/lib/persistence/Adapter.d.ts +0 -469
  242. package/lib/persistence/Adapter.js.map +0 -1
  243. package/lib/persistence/Context.d.ts +0 -16
  244. package/lib/persistence/Context.js.map +0 -1
  245. package/lib/persistence/ContextLock.d.ts +0 -18
  246. package/lib/persistence/ContextLock.js.map +0 -1
  247. package/lib/persistence/Dispatch.d.ts +0 -128
  248. package/lib/persistence/Dispatch.js.map +0 -1
  249. package/lib/persistence/ObserverHandler.d.ts +0 -111
  250. package/lib/persistence/ObserverHandler.js.map +0 -1
  251. package/lib/persistence/Sequence.d.ts +0 -126
  252. package/lib/persistence/Sequence.js.map +0 -1
  253. package/lib/persistence/constants.d.ts +0 -74
  254. package/lib/persistence/constants.js.map +0 -1
  255. package/lib/persistence/decorators.d.ts +0 -28
  256. package/lib/persistence/decorators.js.map +0 -1
  257. package/lib/persistence/errors.d.ts +0 -33
  258. package/lib/persistence/errors.js.map +0 -1
  259. package/lib/persistence/event-filters.d.ts +0 -20
  260. package/lib/persistence/event-filters.js.map +0 -1
  261. package/lib/persistence/generators.d.ts +0 -14
  262. package/lib/persistence/generators.js.map +0 -1
  263. package/lib/persistence/index.d.ts +0 -18
  264. package/lib/persistence/index.js.map +0 -1
  265. package/lib/persistence/transactions.d.ts +0 -4
  266. package/lib/persistence/transactions.js.map +0 -1
  267. package/lib/persistence/types.d.ts +0 -86
  268. package/lib/query/Condition.d.ts +0 -131
  269. package/lib/query/Condition.js.map +0 -1
  270. package/lib/query/MethodQueryBuilder.d.ts +0 -185
  271. package/lib/query/MethodQueryBuilder.js.map +0 -1
  272. package/lib/query/Paginator.d.ts +0 -105
  273. package/lib/query/Paginator.js.map +0 -1
  274. package/lib/query/Statement.d.ts +0 -136
  275. package/lib/query/Statement.js.map +0 -1
  276. package/lib/query/constants.d.ts +0 -69
  277. package/lib/query/constants.js.map +0 -1
  278. package/lib/query/decorators.d.ts +0 -8
  279. package/lib/query/decorators.js.map +0 -1
  280. package/lib/query/errors.d.ts +0 -21
  281. package/lib/query/errors.js.map +0 -1
  282. package/lib/query/index.d.ts +0 -16
  283. package/lib/query/index.js.map +0 -1
  284. package/lib/query/options.d.ts +0 -393
  285. package/lib/query/selectors.d.ts +0 -39
  286. package/lib/query/types.d.ts +0 -158
  287. package/lib/query/types.js.map +0 -1
  288. package/lib/query/utils.d.ts +0 -40
  289. package/lib/query/utils.js.map +0 -1
  290. package/lib/ram/RamAdapter.d.ts +0 -341
  291. package/lib/ram/RamAdapter.js.map +0 -1
  292. package/lib/ram/RamPaginator.d.ts +0 -54
  293. package/lib/ram/RamPaginator.js.map +0 -1
  294. package/lib/ram/RamStatement.d.ts +0 -92
  295. package/lib/ram/RamStatement.js.map +0 -1
  296. package/lib/ram/constants.d.ts +0 -8
  297. package/lib/ram/constants.js.map +0 -1
  298. package/lib/ram/handlers.d.ts +0 -24
  299. package/lib/ram/handlers.js.map +0 -1
  300. package/lib/ram/index.d.ts +0 -6
  301. package/lib/ram/index.js.map +0 -1
  302. package/lib/ram/types.d.ts +0 -50
  303. package/lib/repository/Repository.js.map +0 -1
  304. package/lib/repository/constants.d.ts +0 -36
  305. package/lib/repository/constants.js.map +0 -1
  306. package/lib/repository/decorators.d.ts +0 -30
  307. package/lib/repository/decorators.js.map +0 -1
  308. package/lib/repository/errors.d.ts +0 -19
  309. package/lib/repository/errors.js.map +0 -1
  310. package/lib/repository/index.d.ts +0 -12
  311. package/lib/repository/index.js.map +0 -1
  312. package/lib/repository/injectables.d.ts +0 -95
  313. package/lib/repository/injectables.js.map +0 -1
  314. package/lib/repository/types.d.ts +0 -28
  315. package/lib/repository/types.js.map +0 -1
  316. package/lib/repository/utils.d.ts +0 -36
  317. package/lib/repository/utils.js.map +0 -1
  318. package/lib/services/ModelService.js.map +0 -1
  319. package/lib/services/PersistenceService.d.ts +0 -17
  320. package/lib/services/PersistenceService.js.map +0 -1
  321. package/lib/services/index.d.ts +0 -8
  322. package/lib/services/index.js.map +0 -1
  323. package/lib/services/services.d.ts +0 -96
  324. package/lib/services/services.js.map +0 -1
  325. package/lib/tasks/CleanUpTask.d.ts +0 -15
  326. package/lib/tasks/CleanUpTask.js.map +0 -1
  327. package/lib/tasks/TaskContext.d.ts +0 -30
  328. package/lib/tasks/TaskContext.js.map +0 -1
  329. package/lib/tasks/TaskEngine.d.ts +0 -97
  330. package/lib/tasks/TaskEngine.js.map +0 -1
  331. package/lib/tasks/TaskErrors.d.ts +0 -65
  332. package/lib/tasks/TaskErrors.js.map +0 -1
  333. package/lib/tasks/TaskEventBus.d.ts +0 -17
  334. package/lib/tasks/TaskEventBus.js.map +0 -1
  335. package/lib/tasks/TaskEventService.d.ts +0 -7
  336. package/lib/tasks/TaskEventService.js.map +0 -1
  337. package/lib/tasks/TaskHandler.d.ts +0 -12
  338. package/lib/tasks/TaskHandler.js.map +0 -1
  339. package/lib/tasks/TaskHandlerRegistry.d.ts +0 -8
  340. package/lib/tasks/TaskHandlerRegistry.js.map +0 -1
  341. package/lib/tasks/TaskService.d.ts +0 -65
  342. package/lib/tasks/TaskService.js.map +0 -1
  343. package/lib/tasks/TaskStateChangeError.d.ts +0 -11
  344. package/lib/tasks/TaskStateChangeError.js.map +0 -1
  345. package/lib/tasks/TaskTracker.d.ts +0 -47
  346. package/lib/tasks/TaskTracker.js.map +0 -1
  347. package/lib/tasks/builder.d.ts +0 -72
  348. package/lib/tasks/builder.js.map +0 -1
  349. package/lib/tasks/constants.d.ts +0 -31
  350. package/lib/tasks/constants.js.map +0 -1
  351. package/lib/tasks/decorators.d.ts +0 -4
  352. package/lib/tasks/decorators.js.map +0 -1
  353. package/lib/tasks/index.d.ts +0 -22
  354. package/lib/tasks/index.js.map +0 -1
  355. package/lib/tasks/logging.d.ts +0 -31
  356. package/lib/tasks/logging.js.map +0 -1
  357. package/lib/tasks/models/TaskBackoffModel.d.ts +0 -9
  358. package/lib/tasks/models/TaskBackoffModel.js.map +0 -1
  359. package/lib/tasks/models/TaskErrorModel.d.ts +0 -8
  360. package/lib/tasks/models/TaskErrorModel.js.map +0 -1
  361. package/lib/tasks/models/TaskEventModel.d.ts +0 -11
  362. package/lib/tasks/models/TaskEventModel.js.map +0 -1
  363. package/lib/tasks/models/TaskIOSerializer.d.ts +0 -33
  364. package/lib/tasks/models/TaskIOSerializer.js.map +0 -1
  365. package/lib/tasks/models/TaskLogEntryModel.d.ts +0 -10
  366. package/lib/tasks/models/TaskLogEntryModel.js.map +0 -1
  367. package/lib/tasks/models/TaskModel.d.ts +0 -43
  368. package/lib/tasks/models/TaskModel.js.map +0 -1
  369. package/lib/tasks/models/TaskStepResultModel.d.ts +0 -9
  370. package/lib/tasks/models/TaskStepResultModel.js.map +0 -1
  371. package/lib/tasks/models/TaskStepSpecModel.d.ts +0 -9
  372. package/lib/tasks/models/TaskStepSpecModel.js.map +0 -1
  373. package/lib/tasks/models/index.d.ts +0 -8
  374. package/lib/tasks/models/index.js.map +0 -1
  375. package/lib/tasks/types.d.ts +0 -71
  376. package/lib/tasks/utils.d.ts +0 -5
  377. package/lib/tasks/utils.js.map +0 -1
  378. package/lib/utils/ContextualLoggedClass.d.ts +0 -37
  379. package/lib/utils/ContextualLoggedClass.js.map +0 -1
  380. package/lib/utils/decorators.d.ts +0 -27
  381. package/lib/utils/decorators.js.map +0 -1
  382. package/lib/utils/errors.d.ts +0 -56
  383. package/lib/utils/errors.js.map +0 -1
  384. package/lib/utils/index.d.ts +0 -11
  385. package/lib/utils/index.js.map +0 -1
  386. package/lib/utils/throttling.d.ts +0 -9
  387. package/lib/utils/throttling.js.map +0 -1
  388. package/lib/utils/types.d.ts +0 -23
  389. package/lib/utils/types.js.map +0 -1
  390. package/lib/utils/utils.d.ts +0 -22
  391. package/lib/utils/utils.js.map +0 -1
  392. package/lib/workers/TaskEngine.d.ts +0 -40
  393. package/lib/workers/TaskEngine.js.map +0 -1
  394. package/lib/workers/WorkThreadEnvironment.d.ts +0 -35
  395. package/lib/workers/WorkThreadEnvironment.js.map +0 -1
  396. package/lib/workers/index.d.ts +0 -4
  397. package/lib/workers/index.js.map +0 -1
  398. package/lib/workers/messages.d.ts +0 -69
  399. package/lib/workers/types.d.ts +0 -41
  400. package/lib/workers/types.js.map +0 -1
  401. package/lib/workers/workerThread.d.ts +0 -1
  402. package/lib/workers/workerThread.js.map +0 -1
  403. /package/lib/{auth → cjs/auth}/constants.cjs +0 -0
  404. /package/lib/{auth → cjs/auth}/decorators.cjs +0 -0
  405. /package/lib/{auth → cjs/auth}/index.cjs +0 -0
  406. /package/lib/{fs → cjs/fs}/FilesystemAdapter.cjs +0 -0
  407. /package/lib/{fs → cjs/fs}/FsDispatch.cjs +0 -0
  408. /package/lib/{fs → cjs/fs}/helpers.cjs +0 -0
  409. /package/lib/{fs → cjs/fs}/index.cjs +0 -0
  410. /package/lib/{fs → cjs/fs}/indexStore.cjs +0 -0
  411. /package/lib/{fs → cjs/fs}/locks/FilesystemLock.cjs +0 -0
  412. /package/lib/{fs → cjs/fs}/locks/FilesystemMultiLock.cjs +0 -0
  413. /package/lib/{fs → cjs/fs}/types.cjs +0 -0
  414. /package/lib/{identity → cjs/identity}/decorators.cjs +0 -0
  415. /package/lib/{identity → cjs/identity}/index.cjs +0 -0
  416. /package/lib/{interfaces → cjs/interfaces}/ContextuallyLogged.cjs +0 -0
  417. /package/lib/{interfaces → cjs/interfaces}/ErrorParser.cjs +0 -0
  418. /package/lib/{interfaces → cjs/interfaces}/Executor.cjs +0 -0
  419. /package/lib/{interfaces → cjs/interfaces}/Observable.cjs +0 -0
  420. /package/lib/{interfaces → cjs/interfaces}/Observer.cjs +0 -0
  421. /package/lib/{interfaces → cjs/interfaces}/Paginatable.cjs +0 -0
  422. /package/lib/{interfaces → cjs/interfaces}/Queriable.cjs +0 -0
  423. /package/lib/{interfaces → cjs/interfaces}/RawExecutor.cjs +0 -0
  424. /package/lib/{interfaces → cjs/interfaces}/SequenceOptions.cjs +0 -0
  425. /package/lib/{interfaces → cjs/interfaces}/index.cjs +0 -0
  426. /package/lib/{migrations → cjs/migrations}/Migration.cjs +0 -0
  427. /package/lib/{migrations → cjs/migrations}/MigrationService.cjs +0 -0
  428. /package/lib/{migrations → cjs/migrations}/MigrationTaskBuilder.cjs +0 -0
  429. /package/lib/{migrations → cjs/migrations}/MigrationTasks.cjs +0 -0
  430. /package/lib/{migrations → cjs/migrations}/MigrationVersioning.cjs +0 -0
  431. /package/lib/{migrations → cjs/migrations}/SemverMigrationVersioning.cjs +0 -0
  432. /package/lib/{migrations → cjs/migrations}/StandardMigrationVersioning.cjs +0 -0
  433. /package/lib/{migrations → cjs/migrations}/constants.cjs +0 -0
  434. /package/lib/{migrations → cjs/migrations}/decorators.cjs +0 -0
  435. /package/lib/{migrations → cjs/migrations}/index.cjs +0 -0
  436. /package/lib/{migrations → cjs/migrations}/types.cjs +0 -0
  437. /package/lib/{model → cjs/model}/BaseModel.cjs +0 -0
  438. /package/lib/{model → cjs/model}/SequenceModel.cjs +0 -0
  439. /package/lib/{model → cjs/model}/construction.cjs +0 -0
  440. /package/lib/{model → cjs/model}/decorators.cjs +0 -0
  441. /package/lib/{model → cjs/model}/index.cjs +0 -0
  442. /package/lib/{model → cjs/model}/indexing.cjs +0 -0
  443. /package/lib/{model → cjs/model}/types.cjs +0 -0
  444. /package/lib/{overrides → cjs/overrides}/Metadata.cjs +0 -0
  445. /package/lib/{overrides → cjs/overrides}/Model.cjs +0 -0
  446. /package/lib/{overrides → cjs/overrides}/ModelBuilder.cjs +0 -0
  447. /package/lib/{overrides → cjs/overrides}/index.cjs +0 -0
  448. /package/lib/{overrides → cjs/overrides}/injectables.cjs +0 -0
  449. /package/lib/{overrides → cjs/overrides}/overrides.cjs +0 -0
  450. /package/lib/{persistence → cjs/persistence}/Adapter.cjs +0 -0
  451. /package/lib/{persistence → cjs/persistence}/Context.cjs +0 -0
  452. /package/lib/{persistence → cjs/persistence}/ContextLock.cjs +0 -0
  453. /package/lib/{persistence → cjs/persistence}/Dispatch.cjs +0 -0
  454. /package/lib/{persistence → cjs/persistence}/ObserverHandler.cjs +0 -0
  455. /package/lib/{persistence → cjs/persistence}/Sequence.cjs +0 -0
  456. /package/lib/{persistence → cjs/persistence}/constants.cjs +0 -0
  457. /package/lib/{persistence → cjs/persistence}/decorators.cjs +0 -0
  458. /package/lib/{persistence → cjs/persistence}/errors.cjs +0 -0
  459. /package/lib/{persistence → cjs/persistence}/event-filters.cjs +0 -0
  460. /package/lib/{persistence → cjs/persistence}/generators.cjs +0 -0
  461. /package/lib/{persistence → cjs/persistence}/index.cjs +0 -0
  462. /package/lib/{persistence → cjs/persistence}/transactions.cjs +0 -0
  463. /package/lib/{persistence → cjs/persistence}/types.cjs +0 -0
  464. /package/lib/{query → cjs/query}/Condition.cjs +0 -0
  465. /package/lib/{query → cjs/query}/MethodQueryBuilder.cjs +0 -0
  466. /package/lib/{query → cjs/query}/Paginator.cjs +0 -0
  467. /package/lib/{query → cjs/query}/Statement.cjs +0 -0
  468. /package/lib/{query → cjs/query}/constants.cjs +0 -0
  469. /package/lib/{query → cjs/query}/decorators.cjs +0 -0
  470. /package/lib/{query → cjs/query}/errors.cjs +0 -0
  471. /package/lib/{query → cjs/query}/index.cjs +0 -0
  472. /package/lib/{query → cjs/query}/options.cjs +0 -0
  473. /package/lib/{query → cjs/query}/selectors.cjs +0 -0
  474. /package/lib/{query → cjs/query}/types.cjs +0 -0
  475. /package/lib/{query → cjs/query}/utils.cjs +0 -0
  476. /package/lib/{ram → cjs/ram}/RamAdapter.cjs +0 -0
  477. /package/lib/{ram → cjs/ram}/RamPaginator.cjs +0 -0
  478. /package/lib/{ram → cjs/ram}/RamStatement.cjs +0 -0
  479. /package/lib/{ram → cjs/ram}/constants.cjs +0 -0
  480. /package/lib/{ram → cjs/ram}/handlers.cjs +0 -0
  481. /package/lib/{ram → cjs/ram}/index.cjs +0 -0
  482. /package/lib/{ram → cjs/ram}/types.cjs +0 -0
  483. /package/lib/{repository → cjs/repository}/constants.cjs +0 -0
  484. /package/lib/{repository → cjs/repository}/decorators.cjs +0 -0
  485. /package/lib/{repository → cjs/repository}/errors.cjs +0 -0
  486. /package/lib/{repository → cjs/repository}/index.cjs +0 -0
  487. /package/lib/{repository → cjs/repository}/injectables.cjs +0 -0
  488. /package/lib/{repository → cjs/repository}/types.cjs +0 -0
  489. /package/lib/{repository → cjs/repository}/utils.cjs +0 -0
  490. /package/lib/{services → cjs/services}/ModelService.cjs +0 -0
  491. /package/lib/{services → cjs/services}/PersistenceService.cjs +0 -0
  492. /package/lib/{services → cjs/services}/index.cjs +0 -0
  493. /package/lib/{services → cjs/services}/services.cjs +0 -0
  494. /package/lib/{tasks → cjs/tasks}/CleanUpTask.cjs +0 -0
  495. /package/lib/{tasks → cjs/tasks}/TaskContext.cjs +0 -0
  496. /package/lib/{tasks → cjs/tasks}/TaskEngine.cjs +0 -0
  497. /package/lib/{tasks → cjs/tasks}/TaskErrors.cjs +0 -0
  498. /package/lib/{tasks → cjs/tasks}/TaskEventBus.cjs +0 -0
  499. /package/lib/{tasks → cjs/tasks}/TaskEventService.cjs +0 -0
  500. /package/lib/{tasks → cjs/tasks}/TaskHandler.cjs +0 -0
  501. /package/lib/{tasks → cjs/tasks}/TaskHandlerRegistry.cjs +0 -0
  502. /package/lib/{tasks → cjs/tasks}/TaskService.cjs +0 -0
  503. /package/lib/{tasks → cjs/tasks}/TaskStateChangeError.cjs +0 -0
  504. /package/lib/{tasks → cjs/tasks}/TaskTracker.cjs +0 -0
  505. /package/lib/{tasks → cjs/tasks}/builder.cjs +0 -0
  506. /package/lib/{tasks → cjs/tasks}/constants.cjs +0 -0
  507. /package/lib/{tasks → cjs/tasks}/decorators.cjs +0 -0
  508. /package/lib/{tasks → cjs/tasks}/index.cjs +0 -0
  509. /package/lib/{tasks → cjs/tasks}/logging.cjs +0 -0
  510. /package/lib/{tasks → cjs/tasks}/models/TaskBackoffModel.cjs +0 -0
  511. /package/lib/{tasks → cjs/tasks}/models/TaskErrorModel.cjs +0 -0
  512. /package/lib/{tasks → cjs/tasks}/models/TaskEventModel.cjs +0 -0
  513. /package/lib/{tasks → cjs/tasks}/models/TaskIOSerializer.cjs +0 -0
  514. /package/lib/{tasks → cjs/tasks}/models/TaskLogEntryModel.cjs +0 -0
  515. /package/lib/{tasks → cjs/tasks}/models/TaskModel.cjs +0 -0
  516. /package/lib/{tasks → cjs/tasks}/models/TaskStepResultModel.cjs +0 -0
  517. /package/lib/{tasks → cjs/tasks}/models/TaskStepSpecModel.cjs +0 -0
  518. /package/lib/{tasks → cjs/tasks}/models/index.cjs +0 -0
  519. /package/lib/{tasks → cjs/tasks}/types.cjs +0 -0
  520. /package/lib/{tasks → cjs/tasks}/utils.cjs +0 -0
  521. /package/lib/{utils → cjs/utils}/ContextualLoggedClass.cjs +0 -0
  522. /package/lib/{utils → cjs/utils}/decorators.cjs +0 -0
  523. /package/lib/{utils → cjs/utils}/errors.cjs +0 -0
  524. /package/lib/{utils → cjs/utils}/index.cjs +0 -0
  525. /package/lib/{utils → cjs/utils}/throttling.cjs +0 -0
  526. /package/lib/{utils → cjs/utils}/types.cjs +0 -0
  527. /package/lib/{utils → cjs/utils}/utils.cjs +0 -0
  528. /package/lib/{workers → cjs/workers}/TaskEngine.cjs +0 -0
  529. /package/lib/{workers → cjs/workers}/WorkThreadEnvironment.cjs +0 -0
  530. /package/lib/{workers → cjs/workers}/index.cjs +0 -0
  531. /package/lib/{workers → cjs/workers}/messages.cjs +0 -0
  532. /package/lib/{workers → cjs/workers}/types.cjs +0 -0
  533. /package/lib/{workers → cjs/workers}/workerThread.cjs +0 -0
  534. /package/lib/{auth → types/auth}/constants.d.ts +0 -0
  535. /package/lib/{auth → types/auth}/decorators.d.ts +0 -0
  536. /package/lib/{auth → types/auth}/index.d.ts +0 -0
  537. /package/lib/{esm → types}/fs/FilesystemAdapter.d.ts +0 -0
  538. /package/lib/{esm → types}/fs/FsDispatch.d.ts +0 -0
  539. /package/lib/{esm → types}/fs/helpers.d.ts +0 -0
  540. /package/lib/{esm → types}/fs/index.d.ts +0 -0
  541. /package/lib/{esm → types}/fs/indexStore.d.ts +0 -0
  542. /package/lib/{esm → types}/fs/locks/FilesystemLock.d.ts +0 -0
  543. /package/lib/{esm → types}/fs/locks/FilesystemMultiLock.d.ts +0 -0
  544. /package/lib/{esm → types}/fs/types.d.ts +0 -0
  545. /package/lib/{esm → types}/identity/decorators.d.ts +0 -0
  546. /package/lib/{esm → types}/identity/index.d.ts +0 -0
  547. /package/lib/{esm → types}/interfaces/ContextuallyLogged.d.ts +0 -0
  548. /package/lib/{esm → types}/interfaces/ErrorParser.d.ts +0 -0
  549. /package/lib/{esm → types}/interfaces/Executor.d.ts +0 -0
  550. /package/lib/{esm → types}/interfaces/Observable.d.ts +0 -0
  551. /package/lib/{esm → types}/interfaces/Observer.d.ts +0 -0
  552. /package/lib/{esm → types}/interfaces/Paginatable.d.ts +0 -0
  553. /package/lib/{esm → types}/interfaces/Queriable.d.ts +0 -0
  554. /package/lib/{esm → types}/interfaces/RawExecutor.d.ts +0 -0
  555. /package/lib/{esm → types}/interfaces/SequenceOptions.d.ts +0 -0
  556. /package/lib/{esm → types}/interfaces/index.d.ts +0 -0
  557. /package/lib/{esm → types}/migrations/Migration.d.ts +0 -0
  558. /package/lib/{esm → types}/migrations/MigrationService.d.ts +0 -0
  559. /package/lib/{esm → types}/migrations/MigrationTaskBuilder.d.ts +0 -0
  560. /package/lib/{esm → types}/migrations/MigrationTasks.d.ts +0 -0
  561. /package/lib/{esm → types}/migrations/MigrationVersioning.d.ts +0 -0
  562. /package/lib/{esm → types}/migrations/SemverMigrationVersioning.d.ts +0 -0
  563. /package/lib/{esm → types}/migrations/StandardMigrationVersioning.d.ts +0 -0
  564. /package/lib/{esm → types}/migrations/constants.d.ts +0 -0
  565. /package/lib/{esm → types}/migrations/decorators.d.ts +0 -0
  566. /package/lib/{esm → types}/migrations/index.d.ts +0 -0
  567. /package/lib/{esm → types}/migrations/types.d.ts +0 -0
  568. /package/lib/{esm → types}/model/BaseModel.d.ts +0 -0
  569. /package/lib/{esm → types}/model/SequenceModel.d.ts +0 -0
  570. /package/lib/{esm → types}/model/construction.d.ts +0 -0
  571. /package/lib/{esm → types}/model/decorators.d.ts +0 -0
  572. /package/lib/{esm → types}/model/index.d.ts +0 -0
  573. /package/lib/{esm → types}/model/indexing.d.ts +0 -0
  574. /package/lib/{esm → types}/model/types.d.ts +0 -0
  575. /package/lib/{esm → types}/overrides/Metadata.d.ts +0 -0
  576. /package/lib/{esm → types}/overrides/Model.d.ts +0 -0
  577. /package/lib/{esm → types}/overrides/ModelBuilder.d.ts +0 -0
  578. /package/lib/{esm → types}/overrides/index.d.ts +0 -0
  579. /package/lib/{esm → types}/overrides/injectables.d.ts +0 -0
  580. /package/lib/{esm → types}/overrides/overrides.d.ts +0 -0
  581. /package/lib/{esm → types}/persistence/Adapter.d.ts +0 -0
  582. /package/lib/{esm → types}/persistence/Context.d.ts +0 -0
  583. /package/lib/{esm → types}/persistence/ContextLock.d.ts +0 -0
  584. /package/lib/{esm → types}/persistence/Dispatch.d.ts +0 -0
  585. /package/lib/{esm → types}/persistence/ObserverHandler.d.ts +0 -0
  586. /package/lib/{esm → types}/persistence/Sequence.d.ts +0 -0
  587. /package/lib/{esm → types}/persistence/constants.d.ts +0 -0
  588. /package/lib/{esm → types}/persistence/decorators.d.ts +0 -0
  589. /package/lib/{esm → types}/persistence/errors.d.ts +0 -0
  590. /package/lib/{esm → types}/persistence/event-filters.d.ts +0 -0
  591. /package/lib/{esm → types}/persistence/generators.d.ts +0 -0
  592. /package/lib/{esm → types}/persistence/index.d.ts +0 -0
  593. /package/lib/{esm → types}/persistence/types.d.ts +0 -0
  594. /package/lib/{esm → types}/query/Condition.d.ts +0 -0
  595. /package/lib/{esm → types}/query/MethodQueryBuilder.d.ts +0 -0
  596. /package/lib/{esm → types}/query/Paginator.d.ts +0 -0
  597. /package/lib/{esm → types}/query/Statement.d.ts +0 -0
  598. /package/lib/{esm → types}/query/constants.d.ts +0 -0
  599. /package/lib/{esm → types}/query/decorators.d.ts +0 -0
  600. /package/lib/{esm → types}/query/errors.d.ts +0 -0
  601. /package/lib/{esm → types}/query/index.d.ts +0 -0
  602. /package/lib/{esm → types}/query/options.d.ts +0 -0
  603. /package/lib/{esm → types}/query/selectors.d.ts +0 -0
  604. /package/lib/{esm → types}/query/types.d.ts +0 -0
  605. /package/lib/{esm → types}/query/utils.d.ts +0 -0
  606. /package/lib/{esm → types}/ram/RamAdapter.d.ts +0 -0
  607. /package/lib/{esm → types}/ram/RamPaginator.d.ts +0 -0
  608. /package/lib/{esm → types}/ram/RamStatement.d.ts +0 -0
  609. /package/lib/{esm → types}/ram/constants.d.ts +0 -0
  610. /package/lib/{esm → types}/ram/handlers.d.ts +0 -0
  611. /package/lib/{esm → types}/ram/index.d.ts +0 -0
  612. /package/lib/{esm → types}/ram/types.d.ts +0 -0
  613. /package/lib/{esm → types}/repository/constants.d.ts +0 -0
  614. /package/lib/{esm → types}/repository/decorators.d.ts +0 -0
  615. /package/lib/{esm → types}/repository/errors.d.ts +0 -0
  616. /package/lib/{esm → types}/repository/index.d.ts +0 -0
  617. /package/lib/{esm → types}/repository/injectables.d.ts +0 -0
  618. /package/lib/{esm → types}/repository/types.d.ts +0 -0
  619. /package/lib/{esm → types}/repository/utils.d.ts +0 -0
  620. /package/lib/{esm → types}/services/PersistenceService.d.ts +0 -0
  621. /package/lib/{esm → types}/services/index.d.ts +0 -0
  622. /package/lib/{esm → types}/services/services.d.ts +0 -0
  623. /package/lib/{esm → types}/tasks/CleanUpTask.d.ts +0 -0
  624. /package/lib/{esm → types}/tasks/TaskContext.d.ts +0 -0
  625. /package/lib/{esm → types}/tasks/TaskEngine.d.ts +0 -0
  626. /package/lib/{esm → types}/tasks/TaskErrors.d.ts +0 -0
  627. /package/lib/{esm → types}/tasks/TaskEventBus.d.ts +0 -0
  628. /package/lib/{esm → types}/tasks/TaskEventService.d.ts +0 -0
  629. /package/lib/{esm → types}/tasks/TaskHandler.d.ts +0 -0
  630. /package/lib/{esm → types}/tasks/TaskHandlerRegistry.d.ts +0 -0
  631. /package/lib/{esm → types}/tasks/TaskStateChangeError.d.ts +0 -0
  632. /package/lib/{esm → types}/tasks/TaskTracker.d.ts +0 -0
  633. /package/lib/{esm → types}/tasks/builder.d.ts +0 -0
  634. /package/lib/{esm → types}/tasks/constants.d.ts +0 -0
  635. /package/lib/{esm → types}/tasks/decorators.d.ts +0 -0
  636. /package/lib/{esm → types}/tasks/index.d.ts +0 -0
  637. /package/lib/{esm → types}/tasks/logging.d.ts +0 -0
  638. /package/lib/{esm → types}/tasks/models/TaskBackoffModel.d.ts +0 -0
  639. /package/lib/{esm → types}/tasks/models/TaskErrorModel.d.ts +0 -0
  640. /package/lib/{esm → types}/tasks/models/TaskEventModel.d.ts +0 -0
  641. /package/lib/{esm → types}/tasks/models/TaskIOSerializer.d.ts +0 -0
  642. /package/lib/{esm → types}/tasks/models/TaskLogEntryModel.d.ts +0 -0
  643. /package/lib/{esm → types}/tasks/models/TaskModel.d.ts +0 -0
  644. /package/lib/{esm → types}/tasks/models/TaskStepResultModel.d.ts +0 -0
  645. /package/lib/{esm → types}/tasks/models/TaskStepSpecModel.d.ts +0 -0
  646. /package/lib/{esm → types}/tasks/models/index.d.ts +0 -0
  647. /package/lib/{esm → types}/tasks/types.d.ts +0 -0
  648. /package/lib/{esm → types}/tasks/utils.d.ts +0 -0
  649. /package/lib/{esm → types}/utils/ContextualLoggedClass.d.ts +0 -0
  650. /package/lib/{esm → types}/utils/decorators.d.ts +0 -0
  651. /package/lib/{esm → types}/utils/errors.d.ts +0 -0
  652. /package/lib/{esm → types}/utils/index.d.ts +0 -0
  653. /package/lib/{esm → types}/utils/throttling.d.ts +0 -0
  654. /package/lib/{esm → types}/utils/types.d.ts +0 -0
  655. /package/lib/{esm → types}/utils/utils.d.ts +0 -0
  656. /package/lib/{esm → types}/workers/TaskEngine.d.ts +0 -0
  657. /package/lib/{esm → types}/workers/WorkThreadEnvironment.d.ts +0 -0
  658. /package/lib/{esm → types}/workers/index.d.ts +0 -0
  659. /package/lib/{esm → types}/workers/messages.d.ts +0 -0
  660. /package/lib/{esm → types}/workers/types.d.ts +0 -0
  661. /package/lib/{esm → types}/workers/workerThread.d.ts +0 -0
@@ -1,455 +0,0 @@
1
- import { Model } from "@decaf-ts/decorator-validation";
2
- import { Repo } from "../repository/Repository";
3
- import { RelationsMetadata } from "./types";
4
- import { Constructor } from "@decaf-ts/decoration";
5
- import { AdapterFlags, ContextOf } from "../persistence/types";
6
- import { Context } from "../persistence/Context";
7
- /**
8
- * @description Creates or updates a model instance
9
- * @summary Determines whether to create a new model or update an existing one based on the presence of a primary key
10
- * @template M - The model type extending Model
11
- * @template F - The repository flags type
12
- * @param {M} model - The model instance to create or update
13
- * @param {Context<F>} context - The context for the operation
14
- * @param {Repo<M, F, Context<F>>} [repository] - Optional repository to use for the operation
15
- * @return {Promise<M>} A promise that resolves to the created or updated model
16
- * @function createOrUpdate
17
- * @memberOf module:core
18
- * @mermaid
19
- * sequenceDiagram
20
- * participant Caller
21
- * participant createOrUpdate
22
- * participant Repository
23
- * participant Model
24
- *
25
- * Caller->>createOrUpdate: model, context, repository?
26
- * alt repository not provided
27
- * createOrUpdate->>Model: get(model.constructor.name)
28
- * Model-->>createOrUpdate: constructor
29
- * createOrUpdate->>Repository: forModel(constructor)
30
- * Repository-->>createOrUpdate: repository
31
- * end
32
- *
33
- * alt primary key undefined
34
- * createOrUpdate->>Repository: create(model, context)
35
- * Repository-->>createOrUpdate: created model
36
- * else primary key defined
37
- * createOrUpdate->>Repository: update(model, context)
38
- * alt update successful
39
- * Repository-->>createOrUpdate: updated model
40
- * else NotFoundError
41
- * createOrUpdate->>Repository: create(model, context)
42
- * Repository-->>createOrUpdate: created model
43
- * end
44
- * end
45
- *
46
- * createOrUpdate-->>Caller: model
47
- */
48
- export declare function createOrUpdate<M extends Model, F extends AdapterFlags>(model: M, context: Context<F>, alias: string, repository?: Repo<M>, overrides?: Record<string, any>): Promise<M>;
49
- /**
50
- * @description Handles one-to-one relationship creation
51
- * @summary Processes a one-to-one relationship when creating a model, either by referencing an existing model or creating a new one
52
- * @template M - The model type extending Model
53
- * @template R - The repository type extending Repo<M, F, C>
54
- * @template V - The relations metadata type extending RelationsMetadata
55
- * @template F - The repository flags type
56
- * @template C - The context type extending Context<F>
57
- * @param {R} this - The repository instance
58
- * @param {Context<F>} context - The context for the operation
59
- * @param {V} data - The relations metadata
60
- * @param {string} key - The property key of the relationship
61
- * @param {M} model - The model instance
62
- * @return {Promise<void>} A promise that resolves when the operation is complete
63
- * @function oneToOneOnCreate
64
- * @memberOf module:core
65
- * @mermaid
66
- * sequenceDiagram
67
- * participant Caller
68
- * participant oneToOneOnCreate
69
- * participant repositoryFromTypeMetadata
70
- * participant Model
71
- * participant Repository
72
- * participant cacheModelForPopulate
73
- *
74
- * Caller->>oneToOneOnCreate: this, context, data, key, model
75
- * oneToOneOnCreate->>oneToOneOnCreate: check if propertyValue exists
76
- *
77
- * alt propertyValue is not an object
78
- * oneToOneOnCreate->>repositoryFromTypeMetadata: model, key
79
- * repositoryFromTypeMetadata-->>oneToOneOnCreate: innerRepo
80
- * oneToOneOnCreate->>innerRepo: read(propertyValue)
81
- * innerRepo-->>oneToOneOnCreate: read
82
- * oneToOneOnCreate->>cacheModelForPopulate: context, model, key, propertyValue, read
83
- * oneToOneOnCreate->>oneToOneOnCreate: set model[key] = propertyValue
84
- * else propertyValue is an object
85
- * oneToOneOnCreate->>Model: get(data.class)
86
- * Model-->>oneToOneOnCreate: constructor
87
- * oneToOneOnCreate->>Repository: forModel(constructor)
88
- * Repository-->>oneToOneOnCreate: repo
89
- * oneToOneOnCreate->>repo: create(propertyValue)
90
- * repo-->>oneToOneOnCreate: created
91
- * oneToOneOnCreate->>findPrimaryKey: created
92
- * findPrimaryKey-->>oneToOneOnCreate: pk
93
- * oneToOneOnCreate->>cacheModelForPopulate: context, model, key, created[pk], created
94
- * oneToOneOnCreate->>oneToOneOnCreate: set model[key] = created[pk]
95
- * end
96
- *
97
- * oneToOneOnCreate-->>Caller: void
98
- */
99
- export declare function oneToOneOnCreate<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M): Promise<void>;
100
- /**
101
- * @description Handles one-to-one relationship updates
102
- * @summary Processes a one-to-one relationship when updating a model, either by referencing an existing model or updating the related model
103
- * @template M - The model type extending Model
104
- * @template R - The repository type extending Repo<M, F, C>
105
- * @template V - The relations metadata type extending RelationsMetadata
106
- * @template F - The repository flags type
107
- * @template C - The context type extending Context<F>
108
- * @param {R} this - The repository instance
109
- * @param {Context<F>} context - The context for the operation
110
- * @param {V} data - The relations metadata
111
- * @param key - The property key of the relationship
112
- * @param {M} model - The model instance
113
- * @return {Promise<void>} A promise that resolves when the operation is complete
114
- * @function oneToOneOnUpdate
115
- * @memberOf module:core
116
- * @mermaid
117
- * sequenceDiagram
118
- * participant Caller
119
- * participant oneToOneOnUpdate
120
- * participant repositoryFromTypeMetadata
121
- * participant createOrUpdate
122
- * participant findPrimaryKey
123
- * participant cacheModelForPopulate
124
- *
125
- * Caller->>oneToOneOnUpdate: this, context, data, key, model
126
- * oneToOneOnUpdate->>oneToOneOnUpdate: check if propertyValue exists
127
- * oneToOneOnUpdate->>oneToOneOnUpdate: check if cascade.update is CASCADE
128
- *
129
- * alt propertyValue is not an object
130
- * oneToOneOnUpdate->>repositoryFromTypeMetadata: model, key
131
- * repositoryFromTypeMetadata-->>oneToOneOnUpdate: innerRepo
132
- * oneToOneOnUpdate->>innerRepo: read(propertyValue)
133
- * innerRepo-->>oneToOneOnUpdate: read
134
- * oneToOneOnUpdate->>cacheModelForPopulate: context, model, key, propertyValue, read
135
- * oneToOneOnUpdate->>oneToOneOnUpdate: set model[key] = propertyValue
136
- * else propertyValue is an object
137
- * oneToOneOnUpdate->>createOrUpdate: model[key], context
138
- * createOrUpdate-->>oneToOneOnUpdate: updated
139
- * oneToOneOnUpdate->>findPrimaryKey: updated
140
- * findPrimaryKey-->>oneToOneOnUpdate: pk
141
- * oneToOneOnUpdate->>cacheModelForPopulate: context, model, key, updated[pk], updated
142
- * oneToOneOnUpdate->>oneToOneOnUpdate: set model[key] = updated[pk]
143
- * end
144
- *
145
- * oneToOneOnUpdate-->>Caller: void
146
- */
147
- export declare function oneToOneOnUpdate<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M): Promise<void>;
148
- /**
149
- * @description Handles one-to-one relationship deletion
150
- * @summary Processes a one-to-one relationship when deleting a model, deleting the related model if cascade is enabled
151
- * @template M - The model type extending Model
152
- * @template R - The repository type extending Repo<M, F, C>
153
- * @template V - The relations metadata type extending RelationsMetadata
154
- * @template F - The repository flags type
155
- * @template C - The context type extending Context<F>
156
- * @param {R} this - The repository instance
157
- * @param {Context<F>} context - The context for the operation
158
- * @param {V} data - The relations metadata
159
- * @param key - The property key of the relationship
160
- * @param {M} model - The model instance
161
- * @return {Promise<void>} A promise that resolves when the operation is complete
162
- * @function oneToOneOnDelete
163
- * @memberOf module:core
164
- * @mermaid
165
- * sequenceDiagram
166
- * participant Caller
167
- * participant oneToOneOnDelete
168
- * participant repositoryFromTypeMetadata
169
- * participant cacheModelForPopulate
170
- *
171
- * Caller->>oneToOneOnDelete: this, context, data, key, model
172
- * oneToOneOnDelete->>oneToOneOnDelete: check if propertyValue exists
173
- * oneToOneOnDelete->>oneToOneOnDelete: check if cascade.delete is CASCADE
174
- *
175
- * oneToOneOnDelete->>repositoryFromTypeMetadata: model, key
176
- * repositoryFromTypeMetadata-->>oneToOneOnDelete: innerRepo
177
- *
178
- * alt propertyValue is not a Model instance
179
- * oneToOneOnDelete->>innerRepo: delete(model[key], context)
180
- * innerRepo-->>oneToOneOnDelete: deleted
181
- * else propertyValue is a Model instance
182
- * oneToOneOnDelete->>innerRepo: delete(model[key][innerRepo.pk], context)
183
- * innerRepo-->>oneToOneOnDelete: deleted
184
- * end
185
- *
186
- * oneToOneOnDelete->>cacheModelForPopulate: context, model, key, deleted[innerRepo.pk], deleted
187
- * oneToOneOnDelete-->>Caller: void
188
- */
189
- export declare function oneToOneOnDelete<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M): Promise<void>;
190
- /**
191
- * @description Handles one-to-many relationship creation
192
- * @summary Processes a one-to-many relationship when creating a model, either by referencing existing models or creating new ones
193
- * @template M - The model type extending Model
194
- * @template R - The repository type extending Repo<M, F, C>
195
- * @template V - The relations metadata type extending RelationsMetadata
196
- * @template F - The repository flags type
197
- * @template C - The context type extending Context<F>
198
- * @param {R} this - The repository instance
199
- * @param {Context<F>} context - The context for the operation
200
- * @param {V} data - The relations metadata
201
- * @param key - The property key of the relationship
202
- * @param {M} model - The model instance
203
- * @return {Promise<void>} A promise that resolves when the operation is complete
204
- * @function oneToManyOnCreate
205
- * @memberOf module:core
206
- * @mermaid
207
- * sequenceDiagram
208
- * participant Caller
209
- * participant oneToManyOnCreate
210
- * participant repositoryFromTypeMetadata
211
- * participant createOrUpdate
212
- * participant findPrimaryKey
213
- * participant cacheModelForPopulate
214
- *
215
- * Caller->>oneToManyOnCreate: this, context, data, key, model
216
- * oneToManyOnCreate->>oneToManyOnCreate: check if propertyValues exists and has length
217
- * oneToManyOnCreate->>oneToManyOnCreate: check if all elements have same type
218
- * oneToManyOnCreate->>oneToManyOnCreate: create uniqueValues set
219
- *
220
- * alt arrayType is not "object"
221
- * oneToManyOnCreate->>repositoryFromTypeMetadata: model, key
222
- * repositoryFromTypeMetadata-->>oneToManyOnCreate: repo
223
- * loop for each id in uniqueValues
224
- * oneToManyOnCreate->>repo: read(id)
225
- * repo-->>oneToManyOnCreate: read
226
- * oneToManyOnCreate->>cacheModelForPopulate: context, model, key, id, read
227
- * end
228
- * oneToManyOnCreate->>oneToManyOnCreate: set model[key] = [...uniqueValues]
229
- * else arrayType is "object"
230
- * oneToManyOnCreate->>findPrimaryKey: propertyValues[0]
231
- * findPrimaryKey-->>oneToManyOnCreate: pkName
232
- * oneToManyOnCreate->>oneToManyOnCreate: create result set
233
- * loop for each m in propertyValues
234
- * oneToManyOnCreate->>createOrUpdate: m, context
235
- * createOrUpdate-->>oneToManyOnCreate: record
236
- * oneToManyOnCreate->>cacheModelForPopulate: context, model, key, record[pkName], record
237
- * oneToManyOnCreate->>oneToManyOnCreate: add record[pkName] to result
238
- * end
239
- * oneToManyOnCreate->>oneToManyOnCreate: set model[key] = [...result]
240
- * end
241
- *
242
- * oneToManyOnCreate-->>Caller: void
243
- */
244
- export declare function oneToManyOnCreateUpdate<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M, oldModel?: M): Promise<void>;
245
- /**
246
- * @description Handles one-to-many relationship updates
247
- * @summary Processes a one-to-many relationship when updating a model, delegating to oneToManyOnCreate if cascade update is enabled
248
- * @template M - The model type extending Model
249
- * @template R - The repository type extending Repo<M, F, C>
250
- * @template V - The relations metadata type extending RelationsMetadata
251
- * @template F - The repository flags type
252
- * @template C - The context type extending Context<F>
253
- * @param {R} this - The repository instance
254
- * @param {Context<F>} context - The context for the operation
255
- * @param {V} data - The relations metadata
256
- * @param key - The property key of the relationship
257
- * @param {M} model - The model instance
258
- * @return {Promise<void>} A promise that resolves when the operation is complete
259
- * @function oneToManyOnUpdate
260
- * @memberOf module:core
261
- * @mermaid
262
- * sequenceDiagram
263
- * participant Caller
264
- * participant oneToManyOnUpdate
265
- * participant oneToManyOnCreate
266
- *
267
- * Caller->>oneToManyOnUpdate: this, context, data, key, model
268
- * oneToManyOnUpdate->>oneToManyOnUpdate: check if cascade.update is CASCADE
269
- *
270
- * alt cascade.update is CASCADE
271
- * oneToManyOnUpdate->>oneToManyOnCreate: apply(this, [context, data, key, model])
272
- * oneToManyOnCreate-->>oneToManyOnUpdate: void
273
- * end
274
- *
275
- * oneToManyOnUpdate-->>Caller: void
276
- */
277
- export declare function oneToManyOnUpdate<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M, oldModel?: M): Promise<void>;
278
- /**
279
- * @description Handles one-to-many relationship deletion
280
- * @summary Processes a one-to-many relationship when deleting a model, deleting all related models if cascade delete is enabled
281
- * @template M - The model type extending Model
282
- * @template R - The repository type extending Repo<M, F, C>
283
- * @template V - The relations metadata type extending RelationsMetadata
284
- * @template F - The repository flags type
285
- * @template C - The context type extending Context<F>
286
- * @param {R} this - The repository instance
287
- * @param {Context<F>} context - The context for the operation
288
- * @param {V} data - The relations metadata
289
- * @param key - The property key of the relationship
290
- * @param {M} model - The model instance
291
- * @return {Promise<void>} A promise that resolves when the operation is complete
292
- * @function oneToManyOnDelete
293
- * @memberOf module:core
294
- * @mermaid
295
- * sequenceDiagram
296
- * participant Caller
297
- * participant oneToManyOnDelete
298
- * participant Repository
299
- * participant repositoryFromTypeMetadata
300
- * participant cacheModelForPopulate
301
- *
302
- * Caller->>oneToManyOnDelete: this, context, data, key, model
303
- * oneToManyOnDelete->>oneToManyOnDelete: check if cascade.delete is CASCADE
304
- * oneToManyOnDelete->>oneToManyOnDelete: check if values exists and has length
305
- * oneToManyOnDelete->>oneToManyOnDelete: check if all elements have same type
306
- *
307
- * alt isInstantiated (arrayType is "object")
308
- * oneToManyOnDelete->>Repository: forModel(values[0])
309
- * Repository-->>oneToManyOnDelete: repo
310
- * else not instantiated
311
- * oneToManyOnDelete->>repositoryFromTypeMetadata: model, key
312
- * repositoryFromTypeMetadata-->>oneToManyOnDelete: repo
313
- * end
314
- *
315
- * oneToManyOnDelete->>oneToManyOnDelete: create uniqueValues set
316
- *
317
- * loop for each id in uniqueValues
318
- * oneToManyOnDelete->>repo: delete(id, context)
319
- * repo-->>oneToManyOnDelete: deleted
320
- * oneToManyOnDelete->>cacheModelForPopulate: context, model, key, id, deleted
321
- * end
322
- *
323
- * oneToManyOnDelete->>oneToManyOnDelete: set model[key] = [...uniqueValues]
324
- * oneToManyOnDelete-->>Caller: void
325
- */
326
- export declare function oneToManyOnDelete<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M): Promise<void>;
327
- export declare function manyToOneOnCreate<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M): Promise<void>;
328
- export declare function validBidirectionalRelation<M extends Model>(model: M, data: RelationsMetadata): boolean;
329
- export declare function manyToOneOnUpdate<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M): Promise<void>;
330
- export declare function manyToOneOnDelete<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M): Promise<void>;
331
- export declare function manyToManyOnCreate<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, modelA: M): Promise<void>;
332
- export declare function getAndConstructJunctionTable(modelA: Model, modelB: Model | any, metadata?: RelationsMetadata): {
333
- fkA: string;
334
- fkB: string;
335
- JunctionModel: Constructor<Model<false>>;
336
- };
337
- export declare function manyToManyOnUpdate<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M): Promise<void>;
338
- export declare function manyToManyOnDelete<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M): Promise<void>;
339
- /**
340
- * @description Generates a key for caching populated model relationships
341
- * @summary Creates a unique key for storing and retrieving populated model relationships in the cache
342
- * @param {string} tableName - The name of the table or model
343
- * @param {string} fieldName - The name of the field or property
344
- * @param {string|number} id - The identifier of the related model
345
- * @return {string} A dot-separated string that uniquely identifies the relationship
346
- * @function getPopulateKey
347
- * @memberOf module:core
348
- */
349
- export declare function getPopulateKey(tableName: string, fieldName: string | undefined, id: string | number): string;
350
- export declare function getTagForDeleteKey(tableName: string, fieldName: string, id: string | number): string;
351
- /**
352
- * @description Caches a model for later population
353
- * @summary Stores a model in the context cache for efficient retrieval during relationship population
354
- * @template M - The model type extending Model
355
- * @template F - The repository flags type
356
- * @param {Context<F>} context - The context for the operation
357
- * @param {M} parentModel - The parent model that contains the relationship
358
- * @param propertyKey - The property key of the relationship
359
- * @param {string | number} pkValue - The primary key value of the related model
360
- * @param {any} cacheValue - The model instance to cache
361
- * @return {Promise<any>} A promise that resolves with the result of the cache operation
362
- * @function cacheModelForPopulate
363
- * @memberOf module:core
364
- */
365
- export declare function cacheModelForPopulate<M extends Model, F extends AdapterFlags>(context: Context<F>, parentModel: M, propertyKey: keyof M | string, pkValue: string | number, cacheValue: any): Promise<Context<any>>;
366
- /**
367
- * @description Populates a model's relationship
368
- * @summary Retrieves and attaches related models to a model's relationship property
369
- * @template M - The model type extending Model
370
- * @template R - The repository type extending Repo<M, F, C>
371
- * @template V - The relations metadata type extending RelationsMetadata
372
- * @template F - The repository flags type
373
- * @template C - The context type extending Context<F>
374
- * @param {R} this - The repository instance
375
- * @param {Context<F>} context - The context for the operation
376
- * @param {V} data - The relations metadata
377
- * @param key - The property key of the relationship
378
- * @param {M} model - The model instance
379
- * @return {Promise<void>} A promise that resolves when the operation is complete
380
- * @function populate
381
- * @memberOf module:core
382
- * @mermaid
383
- * sequenceDiagram
384
- * participant Caller
385
- * participant populate
386
- * participant fetchPopulateValues
387
- * participant getPopulateKey
388
- * participant Context
389
- * participant repositoryFromTypeMetadata
390
- *
391
- * Caller->>populate: this, context, data, key, model
392
- * populate->>populate: check if data.populate is true
393
- * populate->>populate: get nested value and check if it exists
394
- *
395
- * populate->>fetchPopulateValues: context, model, key, isArr ? nested : [nested]
396
- *
397
- * fetchPopulateValues->>fetchPopulateValues: initialize variables
398
- *
399
- * loop for each proKeyValue in propKeyValues
400
- * fetchPopulateValues->>getPopulateKey: model.constructor.name, propName, proKeyValue
401
- * getPopulateKey-->>fetchPopulateValues: cacheKey
402
- *
403
- * alt try to get from cache
404
- * fetchPopulateValues->>Context: get(cacheKey)
405
- * Context-->>fetchPopulateValues: val
406
- * else catch error
407
- * fetchPopulateValues->>repositoryFromTypeMetadata: model, propName
408
- * repositoryFromTypeMetadata-->>fetchPopulateValues: repo
409
- * fetchPopulateValues->>repo: read(proKeyValue)
410
- * repo-->>fetchPopulateValues: val
411
- * end
412
- *
413
- * fetchPopulateValues->>fetchPopulateValues: add val to results
414
- * end
415
- *
416
- * fetchPopulateValues-->>populate: results
417
- * populate->>populate: set model[key] = isArr ? res : res[0]
418
- * populate-->>Caller: void
419
- */
420
- export declare function populate<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M): Promise<void>;
421
- export declare function cascadeDelete<M extends Model, R extends Repo<M>>(this: R, context: ContextOf<R>, data: RelationsMetadata, key: keyof M, model: M, oldModel: M): Promise<void>;
422
- /**
423
- * @description Retrieves a repository for a model property based on its type metadata
424
- * @summary Examines a model property's type metadata to determine the appropriate repository for related models
425
- * @template M - The model type extending Model
426
- * @param {any} model - The model instance containing the property
427
- * @param propertyKey - The property key to examine
428
- * @return {Repo<M>} A repository for the model type associated with the property
429
- * @function repositoryFromTypeMetadata
430
- * @memberOf module:core
431
- * @mermaid
432
- * sequenceDiagram
433
- * participant Caller
434
- * participant repositoryFromTypeMetadata
435
- * participant Reflect
436
- * participant Validation
437
- * participant Model
438
- * participant Repository
439
- *
440
- * Caller->>repositoryFromTypeMetadata: model, propertyKey
441
- *
442
- * repositoryFromTypeMetadata->>repositoryFromTypeMetadata: Get allowedTypes array
443
- * repositoryFromTypeMetadata->>repositoryFromTypeMetadata: find constructorName not in commomTypes
444
- * repositoryFromTypeMetadata->>repositoryFromTypeMetadata: check if constructorName exists
445
- *
446
- * repositoryFromTypeMetadata->>Model: get(constructorName)
447
- * Model-->>repositoryFromTypeMetadata: constructor
448
- * repositoryFromTypeMetadata->>repositoryFromTypeMetadata: check if constructor exists
449
- *
450
- * repositoryFromTypeMetadata->>Repository: forModel(constructor)
451
- * Repository-->>repositoryFromTypeMetadata: repo
452
- *
453
- * repositoryFromTypeMetadata-->>Caller: repo
454
- */
455
- export declare function repositoryFromTypeMetadata<M extends Model>(model: M, propertyKey: keyof M, alias?: string): Repo<M>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"construction.js","sourceRoot":"","sources":["../../src/model/construction.ts"],"names":[],"mappings":"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"}