@squiz/job-runner-lib 1.66.1 → 2.1.0

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 (748) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +7 -0
  3. package/build.js +20 -13
  4. package/jest.config.ts +10 -16
  5. package/lib/domains/component/index.d.ts +0 -12
  6. package/lib/domains/job/S3Repository/JobDetailsRepository.d.ts +17 -0
  7. package/lib/domains/job/S3Repository/JobDetailsRepository.spec.d.ts +5 -0
  8. package/lib/domains/job/S3Repository/S3Repository.d.ts +15 -0
  9. package/lib/domains/job/S3Repository/S3Repository.spec.d.ts +5 -0
  10. package/lib/domains/job/S3Repository/S3RepositoryBase.d.ts +39 -0
  11. package/lib/domains/job/S3Repository/S3RepositoryBase.spec.d.ts +5 -0
  12. package/lib/domains/job/S3Repository/index.d.ts +2 -0
  13. package/lib/domains/job/core/pagination/services/PaginationService.d.ts +4 -19
  14. package/lib/domains/job/index.d.ts +2 -0
  15. package/lib/domains/job/manifest/JobManifestV1.d.ts +1 -2
  16. package/lib/domains/job/model/LogPayload/LogPayload.d.ts +12 -0
  17. package/lib/domains/job/model/LogPayload/index.d.ts +1 -0
  18. package/lib/domains/job/repository/JobExecutionRepository/JobExecutionRepository.d.ts +9 -4
  19. package/lib/domains/job/services/JobContextService/JobContextService.d.ts +19 -0
  20. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.d.ts +10 -2
  21. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.defs.d.ts +2 -19
  22. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.spec.d.ts +1 -1
  23. package/lib/domains/job/services/JobManifestService/JobManifestService.d.ts +15 -0
  24. package/lib/domains/job/services/JobQueueService/JobQueueService.d.ts +9 -0
  25. package/lib/domains/job/services/JobQueueService/JobQueueService.defs.d.ts +9 -0
  26. package/lib/domains/job/services/JobQueueService/JobQueueService.spec.d.ts +5 -0
  27. package/lib/domains/job/services/JobUploadService/JobUploadService.d.ts +19 -0
  28. package/lib/domains/job/services/JobUploadService/JobUploadService.mock.d.ts +6 -0
  29. package/lib/domains/job/services/JobUploadService/JobUploadService.spec.d.ts +5 -0
  30. package/lib/domains/job/services/JobUploadService/utils/cleanup.d.ts +11 -0
  31. package/lib/domains/job/services/JobUploadService/utils/cleanup.spec.d.ts +5 -0
  32. package/lib/domains/job/services/JobUploadService/utils/errorUtils.d.ts +16 -0
  33. package/lib/domains/job/services/JobUploadService/utils/errorUtils.spec.d.ts +5 -0
  34. package/lib/domains/job/services/JobUploadService/utils/index.d.ts +12 -0
  35. package/lib/domains/job/services/JobUploadService/utils/manifestValidator.d.ts +15 -0
  36. package/lib/domains/job/services/JobUploadService/utils/manifestValidator.spec.d.ts +5 -0
  37. package/lib/domains/job/services/JobUploadService/utils/responseHandler.d.ts +17 -0
  38. package/lib/domains/job/services/JobUploadService/utils/responseHandler.spec.d.ts +5 -0
  39. package/lib/domains/job/services/JobUploadService/utils/resultPoller.d.ts +16 -0
  40. package/lib/domains/job/services/JobUploadService/utils/resultPoller.spec.d.ts +5 -0
  41. package/lib/domains/job/services/JobUploadService/utils/scanWatcher.d.ts +13 -0
  42. package/lib/domains/job/services/JobUploadService/utils/scanWatcher.spec.d.ts +5 -0
  43. package/lib/domains/job/services/JobUploadService/utils/uploadInitializer.d.ts +19 -0
  44. package/lib/domains/job/services/JobUploadService/utils/uploadInitializer.spec.d.ts +5 -0
  45. package/lib/domains/job/services/JobUploadService/utils/versionChecker.d.ts +12 -0
  46. package/lib/domains/job/services/JobUploadService/utils/versionChecker.spec.d.ts +5 -0
  47. package/lib/domains/job/services/index.d.ts +4 -0
  48. package/lib/domains/job/utils/GetAwsTags/GetAwsTags.d.ts +2 -0
  49. package/lib/domains/job/utils/GetAwsTags/GetAwsTags.types.d.ts +18 -0
  50. package/lib/domains/job/utils/index.d.ts +2 -0
  51. package/lib/domains/manifest/ManifestModel.d.ts +2 -4
  52. package/lib/domains/manifest/index.d.ts +0 -9
  53. package/lib/domains/manifest/services/ComponentSchemaValidationService.d.ts +5 -4
  54. package/lib/domains/manifest/services/ManifestServiceForDev.d.ts +9 -15
  55. package/lib/domains/manifest/utils/getAndAssertJobManifestVersion.d.ts +1 -2
  56. package/lib/domains/manifest/utils/isValidManifestVersion.d.ts +1 -1
  57. package/lib/index.d.ts +0 -5
  58. package/lib/index.js +42 -39
  59. package/lib/index.js.map +7 -1
  60. package/lib/jest-global-setup.d.ts +0 -2
  61. package/package.json +20 -26
  62. package/src/domains/component/index.ts +0 -16
  63. package/src/domains/job/S3Repository/JobDetailsRepository.spec.ts +52 -0
  64. package/src/domains/job/S3Repository/JobDetailsRepository.ts +33 -0
  65. package/src/domains/job/S3Repository/S3Repository.spec.ts +50 -0
  66. package/src/domains/job/S3Repository/S3Repository.ts +27 -0
  67. package/src/domains/job/S3Repository/S3RepositoryBase.spec.ts +97 -0
  68. package/src/domains/job/S3Repository/S3RepositoryBase.ts +93 -0
  69. package/src/domains/job/S3Repository/index.ts +2 -0
  70. package/src/domains/job/core/pagination/services/PaginationService.spec.ts +17 -92
  71. package/src/domains/job/core/pagination/services/PaginationService.ts +8 -57
  72. package/src/domains/job/index.ts +2 -0
  73. package/src/domains/job/manifest/JobManifestV1.ts +1 -2
  74. package/src/domains/job/model/LogPayload/LogPayload.ts +12 -0
  75. package/src/domains/job/model/LogPayload/index.ts +1 -0
  76. package/src/domains/job/repository/JobContextRepository/JobContextRepository.spec.ts +1 -1
  77. package/src/domains/job/repository/JobExecutionRepository/JobExecutionRepository.spec.ts +2 -5
  78. package/src/domains/job/repository/JobExecutionRepository/JobExecutionRepository.ts +45 -13
  79. package/src/domains/job/repository/JobManifestRepository/JobManifestRepository.spec.ts +1 -1
  80. package/src/domains/job/repository/JobRepository/JobRepository.spec.ts +1 -1
  81. package/src/domains/job/services/JobContextService/JobContextService.spec.ts +272 -0
  82. package/src/domains/job/services/JobContextService/JobContextService.ts +77 -0
  83. package/src/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.defs.ts +3 -19
  84. package/src/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.spec.ts +153 -37
  85. package/src/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.ts +76 -82
  86. package/src/domains/job/services/JobManifestService/JobManifestService.spec.ts +234 -0
  87. package/src/domains/job/services/JobManifestService/JobManifestService.ts +40 -0
  88. package/src/domains/job/services/JobQueueService/JobQueueService.defs.ts +10 -0
  89. package/src/domains/job/services/JobQueueService/JobQueueService.spec.ts +190 -0
  90. package/src/domains/job/services/JobQueueService/JobQueueService.ts +60 -0
  91. package/src/domains/job/services/JobUploadService/JobUploadService.mock.ts +45 -0
  92. package/src/domains/job/services/JobUploadService/JobUploadService.spec.ts +176 -0
  93. package/src/domains/job/services/JobUploadService/JobUploadService.ts +66 -0
  94. package/src/domains/job/services/JobUploadService/utils/cleanup.spec.ts +109 -0
  95. package/src/domains/job/services/JobUploadService/utils/cleanup.ts +18 -0
  96. package/src/domains/job/services/JobUploadService/utils/errorUtils.spec.ts +76 -0
  97. package/src/domains/job/services/JobUploadService/utils/errorUtils.ts +35 -0
  98. package/src/domains/job/services/JobUploadService/utils/index.ts +15 -0
  99. package/src/domains/job/services/JobUploadService/utils/manifestValidator.spec.ts +213 -0
  100. package/src/domains/job/services/JobUploadService/utils/manifestValidator.ts +34 -0
  101. package/src/domains/job/services/JobUploadService/utils/responseHandler.spec.ts +69 -0
  102. package/src/domains/job/services/JobUploadService/utils/responseHandler.ts +33 -0
  103. package/src/domains/job/services/JobUploadService/utils/resultPoller.spec.ts +81 -0
  104. package/src/domains/job/services/JobUploadService/utils/resultPoller.ts +52 -0
  105. package/src/domains/job/services/JobUploadService/utils/scanWatcher.spec.ts +61 -0
  106. package/src/domains/job/services/JobUploadService/utils/scanWatcher.ts +41 -0
  107. package/src/domains/job/services/JobUploadService/utils/uploadInitializer.spec.ts +106 -0
  108. package/src/domains/job/services/JobUploadService/utils/uploadInitializer.ts +36 -0
  109. package/src/domains/job/services/JobUploadService/utils/versionChecker.spec.ts +70 -0
  110. package/src/domains/job/services/JobUploadService/utils/versionChecker.ts +39 -0
  111. package/src/domains/job/services/index.ts +4 -0
  112. package/src/domains/job/utils/GetAwsTags/GetAwsTags.spec.ts +45 -0
  113. package/src/domains/job/utils/GetAwsTags/GetAwsTags.ts +18 -0
  114. package/src/domains/job/utils/GetAwsTags/GetAwsTags.types.ts +18 -0
  115. package/src/domains/job/utils/index.ts +2 -0
  116. package/src/domains/manifest/ManifestModel.ts +2 -5
  117. package/src/domains/manifest/index.ts +0 -9
  118. package/src/domains/manifest/services/ComponentSchemaValidationService.ts +6 -18
  119. package/src/domains/manifest/services/JobFunctionService.spec.ts +9 -83
  120. package/src/domains/manifest/services/JobFunctionService.ts +2 -5
  121. package/src/domains/manifest/services/ManifestServiceForDev.spec.ts +66 -170
  122. package/src/domains/manifest/services/ManifestServiceForDev.ts +24 -83
  123. package/src/domains/manifest/utils/getAndAssertJobManifestVersion.ts +2 -6
  124. package/src/domains/manifest/utils/isValidManifestVersion.spec.ts +6 -2
  125. package/src/domains/manifest/utils/isValidManifestVersion.ts +2 -2
  126. package/src/index.ts +0 -6
  127. package/src/jest-global-setup.ts +0 -11
  128. package/src/{domains/job/repository/mocks → mocks}/mockIoc.ts +12 -2
  129. package/tsconfig.json +4 -2
  130. package/.env.example +0 -1
  131. package/jest.integration.config.ts +0 -27
  132. package/lib/TestHelpers.d.ts +0 -18
  133. package/lib/TestHelpers.js +0 -97
  134. package/lib/TestHelpers.js.map +0 -1
  135. package/lib/domains/__test__/createPackage.d.ts +0 -3
  136. package/lib/domains/__test__/createPackage.js +0 -45
  137. package/lib/domains/__test__/createPackage.js.map +0 -1
  138. package/lib/domains/__test__/loadAllUnitTestComponents.d.ts +0 -3
  139. package/lib/domains/__test__/loadAllUnitTestComponents.js +0 -63
  140. package/lib/domains/__test__/loadAllUnitTestComponents.js.map +0 -1
  141. package/lib/domains/component/component-context/__mocks__/mockedManifestModel.d.ts +0 -3
  142. package/lib/domains/component/component-context/__mocks__/mockedManifestModel.js +0 -33
  143. package/lib/domains/component/component-context/__mocks__/mockedManifestModel.js.map +0 -1
  144. package/lib/domains/component/component-context/__mocks__/mockedUriObj.d.ts +0 -3
  145. package/lib/domains/component/component-context/__mocks__/mockedUriObj.js +0 -38
  146. package/lib/domains/component/component-context/__mocks__/mockedUriObj.js.map +0 -1
  147. package/lib/domains/component/component-context/__mocks__/mockedUriObjPreview.d.ts +0 -3
  148. package/lib/domains/component/component-context/__mocks__/mockedUriObjPreview.js +0 -38
  149. package/lib/domains/component/component-context/__mocks__/mockedUriObjPreview.js.map +0 -1
  150. package/lib/domains/component/component-context/createComponentContextualFunctions.d.ts +0 -23
  151. package/lib/domains/component/component-context/createComponentContextualFunctions.js +0 -75
  152. package/lib/domains/component/component-context/createComponentContextualFunctions.js.map +0 -1
  153. package/lib/domains/component/component-context/createComponentContextualFunctions.spec.d.ts +0 -1
  154. package/lib/domains/component/component-context/createComponentContextualFunctions.spec.js +0 -248
  155. package/lib/domains/component/component-context/createComponentContextualFunctions.spec.js.map +0 -1
  156. package/lib/domains/component/errors/ComponentError.d.ts +0 -12
  157. package/lib/domains/component/errors/ComponentError.js +0 -20
  158. package/lib/domains/component/errors/ComponentError.js.map +0 -1
  159. package/lib/domains/component/errors/JobError.js +0 -18
  160. package/lib/domains/component/errors/JobError.js.map +0 -1
  161. package/lib/domains/component/index.js +0 -30
  162. package/lib/domains/component/index.js.map +0 -1
  163. package/lib/domains/component/models/Component.d.ts +0 -7
  164. package/lib/domains/component/models/Component.js +0 -13
  165. package/lib/domains/component/models/Component.js.map +0 -1
  166. package/lib/domains/component/models/Component.spec.d.ts +0 -1
  167. package/lib/domains/component/models/Component.spec.js +0 -18
  168. package/lib/domains/component/models/Component.spec.js.map +0 -1
  169. package/lib/domains/component/models/ComponentVersion.d.ts +0 -18
  170. package/lib/domains/component/models/ComponentVersion.js +0 -35
  171. package/lib/domains/component/models/ComponentVersion.js.map +0 -1
  172. package/lib/domains/component/models/ComponentVersion.spec.d.ts +0 -1
  173. package/lib/domains/component/models/ComponentVersion.spec.js +0 -55
  174. package/lib/domains/component/models/ComponentVersion.spec.js.map +0 -1
  175. package/lib/domains/component/repositories/ComponentRepository.d.ts +0 -12
  176. package/lib/domains/component/repositories/ComponentRepository.integration.spec.d.ts +0 -1
  177. package/lib/domains/component/repositories/ComponentRepository.integration.spec.js +0 -111
  178. package/lib/domains/component/repositories/ComponentRepository.integration.spec.js.map +0 -1
  179. package/lib/domains/component/repositories/ComponentRepository.js +0 -28
  180. package/lib/domains/component/repositories/ComponentRepository.js.map +0 -1
  181. package/lib/domains/component/repositories/ComponentVersionRepository.d.ts +0 -21
  182. package/lib/domains/component/repositories/ComponentVersionRepository.integration.spec.d.ts +0 -1
  183. package/lib/domains/component/repositories/ComponentVersionRepository.integration.spec.js +0 -378
  184. package/lib/domains/component/repositories/ComponentVersionRepository.integration.spec.js.map +0 -1
  185. package/lib/domains/component/repositories/ComponentVersionRepository.js +0 -83
  186. package/lib/domains/component/repositories/ComponentVersionRepository.js.map +0 -1
  187. package/lib/domains/component/services/ComponentService.d.ts +0 -40
  188. package/lib/domains/component/services/ComponentService.integration.spec.d.ts +0 -1
  189. package/lib/domains/component/services/ComponentService.integration.spec.js +0 -614
  190. package/lib/domains/component/services/ComponentService.integration.spec.js.map +0 -1
  191. package/lib/domains/component/services/ComponentService.js +0 -254
  192. package/lib/domains/component/services/ComponentService.js.map +0 -1
  193. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.d.ts +0 -12
  194. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.js +0 -15
  195. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.js.map +0 -1
  196. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.spec.d.ts +0 -1
  197. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.spec.js +0 -75
  198. package/lib/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.spec.js.map +0 -1
  199. package/lib/domains/component/utils/getComponentFileSystemFolder.d.ts +0 -1
  200. package/lib/domains/component/utils/getComponentFileSystemFolder.js +0 -12
  201. package/lib/domains/component/utils/getComponentFileSystemFolder.js.map +0 -1
  202. package/lib/domains/component/utils/getComponentFileSystemFolder.spec.d.ts +0 -1
  203. package/lib/domains/component/utils/getComponentFileSystemFolder.spec.js +0 -13
  204. package/lib/domains/component/utils/getComponentFileSystemFolder.spec.js.map +0 -1
  205. package/lib/domains/component/utils/getComponentName.d.ts +0 -1
  206. package/lib/domains/component/utils/getComponentName.js +0 -8
  207. package/lib/domains/component/utils/getComponentName.js.map +0 -1
  208. package/lib/domains/component/utils/getComponentName.spec.d.ts +0 -1
  209. package/lib/domains/component/utils/getComponentName.spec.js +0 -9
  210. package/lib/domains/component/utils/getComponentName.spec.js.map +0 -1
  211. package/lib/domains/component/utils/moveFilesAndDirectories.d.ts +0 -1
  212. package/lib/domains/component/utils/moveFilesAndDirectories.js +0 -33
  213. package/lib/domains/component/utils/moveFilesAndDirectories.js.map +0 -1
  214. package/lib/domains/component/utils/moveFilesAndDirectories.spec.d.ts +0 -1
  215. package/lib/domains/component/utils/moveFilesAndDirectories.spec.js +0 -52
  216. package/lib/domains/component/utils/moveFilesAndDirectories.spec.js.map +0 -1
  217. package/lib/domains/component/web-models/ComponentForWeb.d.ts +0 -11
  218. package/lib/domains/component/web-models/ComponentForWeb.js +0 -3
  219. package/lib/domains/component/web-models/ComponentForWeb.js.map +0 -1
  220. package/lib/domains/component/web-models/ComponentVersionWebModel.d.ts +0 -15
  221. package/lib/domains/component/web-models/ComponentVersionWebModel.js +0 -3
  222. package/lib/domains/component/web-models/ComponentVersionWebModel.js.map +0 -1
  223. package/lib/domains/component/web-models/ComponentsForWeb.d.ts +0 -17
  224. package/lib/domains/component/web-models/ComponentsForWeb.js +0 -3
  225. package/lib/domains/component/web-models/ComponentsForWeb.js.map +0 -1
  226. package/lib/domains/component-set/errors/InvalidEnvironmentVariablesError.d.ts +0 -5
  227. package/lib/domains/component-set/errors/InvalidEnvironmentVariablesError.js +0 -14
  228. package/lib/domains/component-set/errors/InvalidEnvironmentVariablesError.js.map +0 -1
  229. package/lib/domains/component-set/index.d.ts +0 -13
  230. package/lib/domains/component-set/index.js +0 -30
  231. package/lib/domains/component-set/index.js.map +0 -1
  232. package/lib/domains/component-set/models/ComponentSet.d.ts +0 -20
  233. package/lib/domains/component-set/models/ComponentSet.js +0 -28
  234. package/lib/domains/component-set/models/ComponentSet.js.map +0 -1
  235. package/lib/domains/component-set/models/ComponentSet.spec.js +0 -45
  236. package/lib/domains/component-set/models/ComponentSet.spec.js.map +0 -1
  237. package/lib/domains/component-set/models/ComponentSetComponentVersion.d.ts +0 -23
  238. package/lib/domains/component-set/models/ComponentSetComponentVersion.js +0 -29
  239. package/lib/domains/component-set/models/ComponentSetComponentVersion.js.map +0 -1
  240. package/lib/domains/component-set/models/ComponentSetComponentVersion.spec.js +0 -83
  241. package/lib/domains/component-set/models/ComponentSetComponentVersion.spec.js.map +0 -1
  242. package/lib/domains/component-set/models/ComponentSetComponentVersionEditable.d.ts +0 -12
  243. package/lib/domains/component-set/models/ComponentSetComponentVersionEditable.js +0 -57
  244. package/lib/domains/component-set/models/ComponentSetComponentVersionEditable.js.map +0 -1
  245. package/lib/domains/component-set/models/ComponentSetComponentVersionEditable.spec.js +0 -60
  246. package/lib/domains/component-set/models/ComponentSetComponentVersionEditable.spec.js.map +0 -1
  247. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.d.ts +0 -11
  248. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.js +0 -17
  249. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.js.map +0 -1
  250. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.spec.d.ts +0 -1
  251. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.spec.js +0 -34
  252. package/lib/domains/component-set/models/ComponentSetComponentVersionExcluded.spec.js.map +0 -1
  253. package/lib/domains/component-set/models/ComponentSetRule.d.ts +0 -12
  254. package/lib/domains/component-set/models/ComponentSetRule.js +0 -50
  255. package/lib/domains/component-set/models/ComponentSetRule.js.map +0 -1
  256. package/lib/domains/component-set/models/ComponentSetRule.spec.d.ts +0 -1
  257. package/lib/domains/component-set/models/ComponentSetRule.spec.js +0 -29
  258. package/lib/domains/component-set/models/ComponentSetRule.spec.js.map +0 -1
  259. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.d.ts +0 -10
  260. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.integration.spec.d.ts +0 -1
  261. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.integration.spec.js +0 -127
  262. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.integration.spec.js.map +0 -1
  263. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.js +0 -37
  264. package/lib/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.js.map +0 -1
  265. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.d.ts +0 -10
  266. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.integration.spec.d.ts +0 -1
  267. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.integration.spec.js +0 -127
  268. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.integration.spec.js.map +0 -1
  269. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.js +0 -37
  270. package/lib/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.js.map +0 -1
  271. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.d.ts +0 -10
  272. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.integration.spec.d.ts +0 -1
  273. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.integration.spec.js +0 -163
  274. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.integration.spec.js.map +0 -1
  275. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.js +0 -22
  276. package/lib/domains/component-set/repositories/ComponentSetComponentVersionRepository.js.map +0 -1
  277. package/lib/domains/component-set/repositories/ComponentSetRepository.d.ts +0 -13
  278. package/lib/domains/component-set/repositories/ComponentSetRepository.integration.spec.d.ts +0 -1
  279. package/lib/domains/component-set/repositories/ComponentSetRepository.integration.spec.js +0 -161
  280. package/lib/domains/component-set/repositories/ComponentSetRepository.integration.spec.js.map +0 -1
  281. package/lib/domains/component-set/repositories/ComponentSetRepository.js +0 -48
  282. package/lib/domains/component-set/repositories/ComponentSetRepository.js.map +0 -1
  283. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.d.ts +0 -13
  284. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.integration.spec.d.ts +0 -1
  285. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.integration.spec.js +0 -88
  286. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.integration.spec.js.map +0 -1
  287. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.js +0 -55
  288. package/lib/domains/component-set/repositories/ComponentSetRuleRepository.js.map +0 -1
  289. package/lib/domains/component-set/services/ComponentSetRuleService.d.ts +0 -10
  290. package/lib/domains/component-set/services/ComponentSetRuleService.integration.spec.d.ts +0 -1
  291. package/lib/domains/component-set/services/ComponentSetRuleService.integration.spec.js +0 -107
  292. package/lib/domains/component-set/services/ComponentSetRuleService.integration.spec.js.map +0 -1
  293. package/lib/domains/component-set/services/ComponentSetRuleService.js +0 -23
  294. package/lib/domains/component-set/services/ComponentSetRuleService.js.map +0 -1
  295. package/lib/domains/component-set/services/ComponentSetService.d.ts +0 -37
  296. package/lib/domains/component-set/services/ComponentSetService.js +0 -13
  297. package/lib/domains/component-set/services/ComponentSetService.js.map +0 -1
  298. package/lib/domains/component-set/services/ComponentSetService.spec.d.ts +0 -1
  299. package/lib/domains/component-set/services/ComponentSetService.spec.js +0 -120
  300. package/lib/domains/component-set/services/ComponentSetService.spec.js.map +0 -1
  301. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.d.ts +0 -24
  302. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.js +0 -85
  303. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.js.map +0 -1
  304. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.spec.d.ts +0 -1
  305. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.spec.js +0 -141
  306. package/lib/domains/component-set/services/ComponentSetServiceForLocalDev.spec.js.map +0 -1
  307. package/lib/domains/component-set/services/ComponentSetServiceForProduction.d.ts +0 -53
  308. package/lib/domains/component-set/services/ComponentSetServiceForProduction.integration.spec.d.ts +0 -1
  309. package/lib/domains/component-set/services/ComponentSetServiceForProduction.integration.spec.js +0 -2565
  310. package/lib/domains/component-set/services/ComponentSetServiceForProduction.integration.spec.js.map +0 -1
  311. package/lib/domains/component-set/services/ComponentSetServiceForProduction.js +0 -601
  312. package/lib/domains/component-set/services/ComponentSetServiceForProduction.js.map +0 -1
  313. package/lib/domains/component-set/services/EnvironmentVariables.d.ts +0 -1
  314. package/lib/domains/component-set/services/EnvironmentVariables.js +0 -3
  315. package/lib/domains/component-set/services/EnvironmentVariables.js.map +0 -1
  316. package/lib/domains/component-set/services/Headers.d.ts +0 -1
  317. package/lib/domains/component-set/services/Headers.js +0 -3
  318. package/lib/domains/component-set/services/Headers.js.map +0 -1
  319. package/lib/domains/component-set/services/RuntimeComponentSet.d.ts +0 -6
  320. package/lib/domains/component-set/services/RuntimeComponentSet.js +0 -3
  321. package/lib/domains/component-set/services/RuntimeComponentSet.js.map +0 -1
  322. package/lib/domains/component-set/web-models/ComponentSetComponentVersionForWeb.d.ts +0 -5
  323. package/lib/domains/component-set/web-models/ComponentSetComponentVersionForWeb.js +0 -3
  324. package/lib/domains/component-set/web-models/ComponentSetComponentVersionForWeb.js.map +0 -1
  325. package/lib/domains/component-set/web-models/ComponentSetForWeb.d.ts +0 -64
  326. package/lib/domains/component-set/web-models/ComponentSetForWeb.js +0 -22
  327. package/lib/domains/component-set/web-models/ComponentSetForWeb.js.map +0 -1
  328. package/lib/domains/content/index.d.ts +0 -4
  329. package/lib/domains/content/index.js +0 -21
  330. package/lib/domains/content/index.js.map +0 -1
  331. package/lib/domains/content/services/ComponentContentSchemaService.d.ts +0 -9
  332. package/lib/domains/content/services/ComponentContentSchemaService.js +0 -45
  333. package/lib/domains/content/services/ComponentContentSchemaService.js.map +0 -1
  334. package/lib/domains/content/services/ComponentContentSchemaService.spec.d.ts +0 -1
  335. package/lib/domains/content/services/ComponentContentSchemaService.spec.js +0 -240
  336. package/lib/domains/content/services/ComponentContentSchemaService.spec.js.map +0 -1
  337. package/lib/domains/content/services/ContentItemService.d.ts +0 -7
  338. package/lib/domains/content/services/ContentItemService.js +0 -36
  339. package/lib/domains/content/services/ContentItemService.js.map +0 -1
  340. package/lib/domains/content/services/ContentItemService.spec.d.ts +0 -1
  341. package/lib/domains/content/services/ContentItemService.spec.js +0 -95
  342. package/lib/domains/content/services/ContentItemService.spec.js.map +0 -1
  343. package/lib/domains/content/services/DynamicContentItemService.d.ts +0 -8
  344. package/lib/domains/content/services/DynamicContentItemService.js +0 -31
  345. package/lib/domains/content/services/DynamicContentItemService.js.map +0 -1
  346. package/lib/domains/content/services/DynamicContentItemService.spec.d.ts +0 -1
  347. package/lib/domains/content/services/DynamicContentItemService.spec.js +0 -81
  348. package/lib/domains/content/services/DynamicContentItemService.spec.js.map +0 -1
  349. package/lib/domains/content/utils/getContentSchemaName.d.ts +0 -1
  350. package/lib/domains/content/utils/getContentSchemaName.js +0 -8
  351. package/lib/domains/content/utils/getContentSchemaName.js.map +0 -1
  352. package/lib/domains/content/utils/getContentSchemaName.spec.d.ts +0 -1
  353. package/lib/domains/content/utils/getContentSchemaName.spec.js +0 -9
  354. package/lib/domains/content/utils/getContentSchemaName.spec.js.map +0 -1
  355. package/lib/domains/db/ComponentConnectionManager.d.ts +0 -3
  356. package/lib/domains/db/ComponentConnectionManager.js +0 -3
  357. package/lib/domains/db/ComponentConnectionManager.js.map +0 -1
  358. package/lib/domains/db/ComponentRepositories.d.ts +0 -19
  359. package/lib/domains/db/ComponentRepositories.js +0 -23
  360. package/lib/domains/db/ComponentRepositories.js.map +0 -1
  361. package/lib/domains/db/createConnectionManager.d.ts +0 -5
  362. package/lib/domains/db/createConnectionManager.js +0 -16
  363. package/lib/domains/db/createConnectionManager.js.map +0 -1
  364. package/lib/domains/db/index.d.ts +0 -3
  365. package/lib/domains/db/index.js +0 -20
  366. package/lib/domains/db/index.js.map +0 -1
  367. package/lib/domains/db/migration-list.d.ts +0 -2
  368. package/lib/domains/db/migration-list.js +0 -19
  369. package/lib/domains/db/migration-list.js.map +0 -1
  370. package/lib/domains/job/ParsePartitionKey/ParsePartitionKey.js +0 -24
  371. package/lib/domains/job/ParsePartitionKey/ParsePartitionKey.js.map +0 -1
  372. package/lib/domains/job/ParsePartitionKey/ParsePartitionKey.spec.js +0 -24
  373. package/lib/domains/job/ParsePartitionKey/ParsePartitionKey.spec.js.map +0 -1
  374. package/lib/domains/job/ParsePartitionKey/index.js +0 -18
  375. package/lib/domains/job/ParsePartitionKey/index.js.map +0 -1
  376. package/lib/domains/job/constants/JobExecutionStatus.constants.js +0 -12
  377. package/lib/domains/job/constants/JobExecutionStatus.constants.js.map +0 -1
  378. package/lib/domains/job/constants/QueryParams.js +0 -19
  379. package/lib/domains/job/constants/QueryParams.js.map +0 -1
  380. package/lib/domains/job/constants/Repository.constants.js +0 -15
  381. package/lib/domains/job/constants/Repository.constants.js.map +0 -1
  382. package/lib/domains/job/core/dynamoClient.mock.js +0 -32
  383. package/lib/domains/job/core/dynamoClient.mock.js.map +0 -1
  384. package/lib/domains/job/core/pagination/index.js +0 -20
  385. package/lib/domains/job/core/pagination/index.js.map +0 -1
  386. package/lib/domains/job/core/pagination/model/PageQuery.js +0 -7
  387. package/lib/domains/job/core/pagination/model/PageQuery.js.map +0 -1
  388. package/lib/domains/job/core/pagination/model/PaginationInfo.js +0 -7
  389. package/lib/domains/job/core/pagination/model/PaginationInfo.js.map +0 -1
  390. package/lib/domains/job/core/pagination/model/PaginationKey.js +0 -3
  391. package/lib/domains/job/core/pagination/model/PaginationKey.js.map +0 -1
  392. package/lib/domains/job/core/pagination/model/PaginationLinks.js +0 -7
  393. package/lib/domains/job/core/pagination/model/PaginationLinks.js.map +0 -1
  394. package/lib/domains/job/core/pagination/model/PaginationQueryParams.js +0 -3
  395. package/lib/domains/job/core/pagination/model/PaginationQueryParams.js.map +0 -1
  396. package/lib/domains/job/core/pagination/model/PaginationQueryResponse.js +0 -7
  397. package/lib/domains/job/core/pagination/model/PaginationQueryResponse.js.map +0 -1
  398. package/lib/domains/job/core/pagination/model/PaginationResponse.js +0 -7
  399. package/lib/domains/job/core/pagination/model/PaginationResponse.js.map +0 -1
  400. package/lib/domains/job/core/pagination/model/PaginationTypes.js +0 -29
  401. package/lib/domains/job/core/pagination/model/PaginationTypes.js.map +0 -1
  402. package/lib/domains/job/core/pagination/model/index.js +0 -25
  403. package/lib/domains/job/core/pagination/model/index.js.map +0 -1
  404. package/lib/domains/job/core/pagination/services/PaginationService.js +0 -129
  405. package/lib/domains/job/core/pagination/services/PaginationService.js.map +0 -1
  406. package/lib/domains/job/core/pagination/services/PaginationService.spec.js +0 -179
  407. package/lib/domains/job/core/pagination/services/PaginationService.spec.js.map +0 -1
  408. package/lib/domains/job/core/pagination/services/index.js +0 -18
  409. package/lib/domains/job/core/pagination/services/index.js.map +0 -1
  410. package/lib/domains/job/core/pagination/utils/PaginationUtils.js +0 -139
  411. package/lib/domains/job/core/pagination/utils/PaginationUtils.js.map +0 -1
  412. package/lib/domains/job/core/pagination/utils/PaginationUtils.spec.js +0 -212
  413. package/lib/domains/job/core/pagination/utils/PaginationUtils.spec.js.map +0 -1
  414. package/lib/domains/job/core/pagination/utils/index.js +0 -18
  415. package/lib/domains/job/core/pagination/utils/index.js.map +0 -1
  416. package/lib/domains/job/errors/BadRequestError.js +0 -23
  417. package/lib/domains/job/errors/BadRequestError.js.map +0 -1
  418. package/lib/domains/job/errors/Error.constants.js +0 -36
  419. package/lib/domains/job/errors/Error.constants.js.map +0 -1
  420. package/lib/domains/job/errors/ErrorWithHttpStatusCode.js +0 -23
  421. package/lib/domains/job/errors/ErrorWithHttpStatusCode.js.map +0 -1
  422. package/lib/domains/job/errors/ExecutionStatusError.js +0 -11
  423. package/lib/domains/job/errors/ExecutionStatusError.js.map +0 -1
  424. package/lib/domains/job/errors/InternalServerError.js +0 -23
  425. package/lib/domains/job/errors/InternalServerError.js.map +0 -1
  426. package/lib/domains/job/errors/NotFoundError.js +0 -22
  427. package/lib/domains/job/errors/NotFoundError.js.map +0 -1
  428. package/lib/domains/job/errors/NotImplementedError.js +0 -23
  429. package/lib/domains/job/errors/NotImplementedError.js.map +0 -1
  430. package/lib/domains/job/errors/UnprocessableContent.js +0 -23
  431. package/lib/domains/job/errors/UnprocessableContent.js.map +0 -1
  432. package/lib/domains/job/errors/index.js +0 -25
  433. package/lib/domains/job/errors/index.js.map +0 -1
  434. package/lib/domains/job/index.js +0 -33
  435. package/lib/domains/job/index.js.map +0 -1
  436. package/lib/domains/job/manifest/JobManifestTypes.js +0 -7
  437. package/lib/domains/job/manifest/JobManifestTypes.js.map +0 -1
  438. package/lib/domains/job/manifest/JobManifestV1.js +0 -58
  439. package/lib/domains/job/manifest/JobManifestV1.js.map +0 -1
  440. package/lib/domains/job/manifest/JobManifestV1.spec.js +0 -136
  441. package/lib/domains/job/manifest/JobManifestV1.spec.js.map +0 -1
  442. package/lib/domains/job/manifest/index.js +0 -22
  443. package/lib/domains/job/manifest/index.js.map +0 -1
  444. package/lib/domains/job/manifest/mocks/JobManifest.mock.js +0 -36
  445. package/lib/domains/job/manifest/mocks/JobManifest.mock.js.map +0 -1
  446. package/lib/domains/job/manifest/mocks/JobManifestDto.mock.js +0 -48
  447. package/lib/domains/job/manifest/mocks/JobManifestDto.mock.js.map +0 -1
  448. package/lib/domains/job/manifest/mocks/JobManifestRecord.mock.js +0 -38
  449. package/lib/domains/job/manifest/mocks/JobManifestRecord.mock.js.map +0 -1
  450. package/lib/domains/job/manifest/mocks/JobManifestRequest.mock.js +0 -29
  451. package/lib/domains/job/manifest/mocks/JobManifestRequest.mock.js.map +0 -1
  452. package/lib/domains/job/model/Base/Base.js +0 -3
  453. package/lib/domains/job/model/Base/Base.js.map +0 -1
  454. package/lib/domains/job/model/Base/index.js +0 -18
  455. package/lib/domains/job/model/Base/index.js.map +0 -1
  456. package/lib/domains/job/model/Job/Job.js +0 -7
  457. package/lib/domains/job/model/Job/Job.js.map +0 -1
  458. package/lib/domains/job/model/Job/index.js +0 -22
  459. package/lib/domains/job/model/Job/index.js.map +0 -1
  460. package/lib/domains/job/model/Job/mocks/Job.mock.js +0 -28
  461. package/lib/domains/job/model/Job/mocks/Job.mock.js.map +0 -1
  462. package/lib/domains/job/model/Job/mocks/JobDto.mock.js +0 -39
  463. package/lib/domains/job/model/Job/mocks/JobDto.mock.js.map +0 -1
  464. package/lib/domains/job/model/Job/mocks/JobRecord.mock.js +0 -29
  465. package/lib/domains/job/model/Job/mocks/JobRecord.mock.js.map +0 -1
  466. package/lib/domains/job/model/Job/mocks/JobRequest.mock.js +0 -21
  467. package/lib/domains/job/model/Job/mocks/JobRequest.mock.js.map +0 -1
  468. package/lib/domains/job/model/JobContext/JobContext.js +0 -7
  469. package/lib/domains/job/model/JobContext/JobContext.js.map +0 -1
  470. package/lib/domains/job/model/JobContext/index.js +0 -22
  471. package/lib/domains/job/model/JobContext/index.js.map +0 -1
  472. package/lib/domains/job/model/JobContext/mocks/JobContext.mock.js +0 -35
  473. package/lib/domains/job/model/JobContext/mocks/JobContext.mock.js.map +0 -1
  474. package/lib/domains/job/model/JobContext/mocks/JobContextDto.mock.js +0 -46
  475. package/lib/domains/job/model/JobContext/mocks/JobContextDto.mock.js.map +0 -1
  476. package/lib/domains/job/model/JobContext/mocks/JobContextRecord.mock.js +0 -34
  477. package/lib/domains/job/model/JobContext/mocks/JobContextRecord.mock.js.map +0 -1
  478. package/lib/domains/job/model/JobContext/mocks/JobContextRequest.mock.js +0 -25
  479. package/lib/domains/job/model/JobContext/mocks/JobContextRequest.mock.js.map +0 -1
  480. package/lib/domains/job/model/JobExecution/JobExecution.js +0 -7
  481. package/lib/domains/job/model/JobExecution/JobExecution.js.map +0 -1
  482. package/lib/domains/job/model/JobExecution/index.js +0 -22
  483. package/lib/domains/job/model/JobExecution/index.js.map +0 -1
  484. package/lib/domains/job/model/JobExecution/mocks/JobExecution.mock.js +0 -45
  485. package/lib/domains/job/model/JobExecution/mocks/JobExecution.mock.js.map +0 -1
  486. package/lib/domains/job/model/JobExecution/mocks/JobExecutionDto.mock.js +0 -64
  487. package/lib/domains/job/model/JobExecution/mocks/JobExecutionDto.mock.js.map +0 -1
  488. package/lib/domains/job/model/JobExecution/mocks/JobExecutionRecord.mock.js +0 -48
  489. package/lib/domains/job/model/JobExecution/mocks/JobExecutionRecord.mock.js.map +0 -1
  490. package/lib/domains/job/model/JobExecution/mocks/JobExecutionRequest.mock.js +0 -25
  491. package/lib/domains/job/model/JobExecution/mocks/JobExecutionRequest.mock.js.map +0 -1
  492. package/lib/domains/job/repository/AbstractRepository.js +0 -174
  493. package/lib/domains/job/repository/AbstractRepository.js.map +0 -1
  494. package/lib/domains/job/repository/JobContextRepository/JobContextRepository.js +0 -169
  495. package/lib/domains/job/repository/JobContextRepository/JobContextRepository.js.map +0 -1
  496. package/lib/domains/job/repository/JobContextRepository/JobContextRepository.spec.js +0 -246
  497. package/lib/domains/job/repository/JobContextRepository/JobContextRepository.spec.js.map +0 -1
  498. package/lib/domains/job/repository/JobExecutionRepository/JobExecutionRepository.js +0 -276
  499. package/lib/domains/job/repository/JobExecutionRepository/JobExecutionRepository.js.map +0 -1
  500. package/lib/domains/job/repository/JobExecutionRepository/JobExecutionRepository.spec.js +0 -296
  501. package/lib/domains/job/repository/JobExecutionRepository/JobExecutionRepository.spec.js.map +0 -1
  502. package/lib/domains/job/repository/JobManifestRepository/JobManifestRepository.js +0 -133
  503. package/lib/domains/job/repository/JobManifestRepository/JobManifestRepository.js.map +0 -1
  504. package/lib/domains/job/repository/JobManifestRepository/JobManifestRepository.spec.js +0 -162
  505. package/lib/domains/job/repository/JobManifestRepository/JobManifestRepository.spec.js.map +0 -1
  506. package/lib/domains/job/repository/JobRepository/JobRepository.js +0 -189
  507. package/lib/domains/job/repository/JobRepository/JobRepository.js.map +0 -1
  508. package/lib/domains/job/repository/JobRepository/JobRepository.spec.js +0 -270
  509. package/lib/domains/job/repository/JobRepository/JobRepository.spec.js.map +0 -1
  510. package/lib/domains/job/repository/index.js +0 -22
  511. package/lib/domains/job/repository/index.js.map +0 -1
  512. package/lib/domains/job/repository/mocks/mockIoc.js +0 -40
  513. package/lib/domains/job/repository/mocks/mockIoc.js.map +0 -1
  514. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.defs.js +0 -3
  515. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.defs.js.map +0 -1
  516. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.js +0 -139
  517. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.js.map +0 -1
  518. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.spec.js +0 -78
  519. package/lib/domains/job/services/JobExecutionTaskService/JobExecutionTaskService.spec.js.map +0 -1
  520. package/lib/domains/job/services/index.js +0 -18
  521. package/lib/domains/job/services/index.js.map +0 -1
  522. package/lib/domains/job/singletonProvider.js +0 -14
  523. package/lib/domains/job/singletonProvider.js.map +0 -1
  524. package/lib/domains/job/transientProvider.js +0 -14
  525. package/lib/domains/job/transientProvider.js.map +0 -1
  526. package/lib/domains/job/utils/SlackClient/SlackClient.js +0 -113
  527. package/lib/domains/job/utils/SlackClient/SlackClient.js.map +0 -1
  528. package/lib/domains/job/utils/SlackClient/SlackClient.spec.js +0 -116
  529. package/lib/domains/job/utils/SlackClient/SlackClient.spec.js.map +0 -1
  530. package/lib/domains/job/utils/SlackClient/types/SlackClient.types.js +0 -28
  531. package/lib/domains/job/utils/SlackClient/types/SlackClient.types.js.map +0 -1
  532. package/lib/domains/job/utils/SortByTimeQueued/SortByTimeQueued.js +0 -21
  533. package/lib/domains/job/utils/SortByTimeQueued/SortByTimeQueued.js.map +0 -1
  534. package/lib/domains/job/utils/SortByTimeQueued/SortByTimeQueued.spec.js +0 -26
  535. package/lib/domains/job/utils/SortByTimeQueued/SortByTimeQueued.spec.js.map +0 -1
  536. package/lib/domains/job/utils/index.js +0 -20
  537. package/lib/domains/job/utils/index.js.map +0 -1
  538. package/lib/domains/manifest/AbstractManifest.d.ts +0 -38
  539. package/lib/domains/manifest/AbstractManifest.js +0 -45
  540. package/lib/domains/manifest/AbstractManifest.js.map +0 -1
  541. package/lib/domains/manifest/ManifestModel.js +0 -3
  542. package/lib/domains/manifest/ManifestModel.js.map +0 -1
  543. package/lib/domains/manifest/ManifestV1.d.ts +0 -18
  544. package/lib/domains/manifest/ManifestV1.js +0 -124
  545. package/lib/domains/manifest/ManifestV1.js.map +0 -1
  546. package/lib/domains/manifest/ManifestV1.spec.d.ts +0 -1
  547. package/lib/domains/manifest/ManifestV1.spec.js +0 -347
  548. package/lib/domains/manifest/ManifestV1.spec.js.map +0 -1
  549. package/lib/domains/manifest/errors/ManifestLocationError.d.ts +0 -5
  550. package/lib/domains/manifest/errors/ManifestLocationError.js +0 -13
  551. package/lib/domains/manifest/errors/ManifestLocationError.js.map +0 -1
  552. package/lib/domains/manifest/errors/ManifestValidationError.js +0 -12
  553. package/lib/domains/manifest/errors/ManifestValidationError.js.map +0 -1
  554. package/lib/domains/manifest/index.js +0 -33
  555. package/lib/domains/manifest/index.js.map +0 -1
  556. package/lib/domains/manifest/services/AbstractManifestService.d.ts +0 -49
  557. package/lib/domains/manifest/services/AbstractManifestService.js +0 -235
  558. package/lib/domains/manifest/services/AbstractManifestService.js.map +0 -1
  559. package/lib/domains/manifest/services/AbstractManifestService.spec.d.ts +0 -1
  560. package/lib/domains/manifest/services/AbstractManifestService.spec.js +0 -301
  561. package/lib/domains/manifest/services/AbstractManifestService.spec.js.map +0 -1
  562. package/lib/domains/manifest/services/ComponentFunctionService.d.ts +0 -35
  563. package/lib/domains/manifest/services/ComponentFunctionService.js +0 -129
  564. package/lib/domains/manifest/services/ComponentFunctionService.js.map +0 -1
  565. package/lib/domains/manifest/services/ComponentFunctionService.spec.d.ts +0 -1
  566. package/lib/domains/manifest/services/ComponentFunctionService.spec.js +0 -567
  567. package/lib/domains/manifest/services/ComponentFunctionService.spec.js.map +0 -1
  568. package/lib/domains/manifest/services/ComponentInputValidationService.d.ts +0 -5
  569. package/lib/domains/manifest/services/ComponentInputValidationService.js +0 -11
  570. package/lib/domains/manifest/services/ComponentInputValidationService.js.map +0 -1
  571. package/lib/domains/manifest/services/ComponentSchemaValidationService.js +0 -11
  572. package/lib/domains/manifest/services/ComponentSchemaValidationService.js.map +0 -1
  573. package/lib/domains/manifest/services/JobFunctionService.js +0 -23
  574. package/lib/domains/manifest/services/JobFunctionService.js.map +0 -1
  575. package/lib/domains/manifest/services/JobFunctionService.spec.js +0 -132
  576. package/lib/domains/manifest/services/JobFunctionService.spec.js.map +0 -1
  577. package/lib/domains/manifest/services/ManifestServiceForDev.js +0 -83
  578. package/lib/domains/manifest/services/ManifestServiceForDev.js.map +0 -1
  579. package/lib/domains/manifest/services/ManifestServiceForDev.spec.js +0 -184
  580. package/lib/domains/manifest/services/ManifestServiceForDev.spec.js.map +0 -1
  581. package/lib/domains/manifest/services/ManifestServiceForProduction.d.ts +0 -12
  582. package/lib/domains/manifest/services/ManifestServiceForProduction.js +0 -81
  583. package/lib/domains/manifest/services/ManifestServiceForProduction.js.map +0 -1
  584. package/lib/domains/manifest/services/ManifestServiceForProduction.spec.d.ts +0 -1
  585. package/lib/domains/manifest/services/ManifestServiceForProduction.spec.js +0 -81
  586. package/lib/domains/manifest/services/ManifestServiceForProduction.spec.js.map +0 -1
  587. package/lib/domains/manifest/utils/assertFuncEntryFilesAreValid.d.ts +0 -3
  588. package/lib/domains/manifest/utils/assertFuncEntryFilesAreValid.js +0 -14
  589. package/lib/domains/manifest/utils/assertFuncEntryFilesAreValid.js.map +0 -1
  590. package/lib/domains/manifest/utils/assertStaticFilesAreValid.d.ts +0 -3
  591. package/lib/domains/manifest/utils/assertStaticFilesAreValid.js +0 -27
  592. package/lib/domains/manifest/utils/assertStaticFilesAreValid.js.map +0 -1
  593. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.d.ts +0 -2
  594. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.js +0 -16
  595. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.js.map +0 -1
  596. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.spec.d.ts +0 -1
  597. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.spec.js +0 -111
  598. package/lib/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.spec.js.map +0 -1
  599. package/lib/domains/manifest/utils/getAndAssertJobManifestVersion.js +0 -28
  600. package/lib/domains/manifest/utils/getAndAssertJobManifestVersion.js.map +0 -1
  601. package/lib/domains/manifest/utils/getAndAssertJobManifestVersion.spec.js +0 -115
  602. package/lib/domains/manifest/utils/getAndAssertJobManifestVersion.spec.js.map +0 -1
  603. package/lib/domains/manifest/utils/getAndAssertManifestVersion.d.ts +0 -3
  604. package/lib/domains/manifest/utils/getAndAssertManifestVersion.js +0 -23
  605. package/lib/domains/manifest/utils/getAndAssertManifestVersion.js.map +0 -1
  606. package/lib/domains/manifest/utils/getAndAssertManifestVersion.spec.d.ts +0 -1
  607. package/lib/domains/manifest/utils/getAndAssertManifestVersion.spec.js +0 -109
  608. package/lib/domains/manifest/utils/getAndAssertManifestVersion.spec.js.map +0 -1
  609. package/lib/domains/manifest/utils/isValidManifestVersion.js +0 -12
  610. package/lib/domains/manifest/utils/isValidManifestVersion.js.map +0 -1
  611. package/lib/domains/manifest/utils/isValidManifestVersion.spec.js +0 -19
  612. package/lib/domains/manifest/utils/isValidManifestVersion.spec.js.map +0 -1
  613. package/lib/domains/url/convertFunctionStaticFilesToFqdn.d.ts +0 -1
  614. package/lib/domains/url/convertFunctionStaticFilesToFqdn.js +0 -22
  615. package/lib/domains/url/convertFunctionStaticFilesToFqdn.js.map +0 -1
  616. package/lib/domains/url/convertFunctionStaticFilesToFqdn.spec.d.ts +0 -1
  617. package/lib/domains/url/convertFunctionStaticFilesToFqdn.spec.js +0 -16
  618. package/lib/domains/url/convertFunctionStaticFilesToFqdn.spec.js.map +0 -1
  619. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.d.ts +0 -1
  620. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.js +0 -22
  621. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.js.map +0 -1
  622. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.spec.d.ts +0 -1
  623. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.spec.js +0 -16
  624. package/lib/domains/url/convertFunctionStaticFilesToFqdnForPreview.spec.js.map +0 -1
  625. package/lib/domains/url/index.d.ts +0 -1
  626. package/lib/domains/url/index.js +0 -18
  627. package/lib/domains/url/index.js.map +0 -1
  628. package/lib/jest-global-setup.js +0 -22
  629. package/lib/jest-global-setup.js.map +0 -1
  630. package/src/TestHelpers.ts +0 -111
  631. package/src/domains/__test__/createPackage.ts +0 -48
  632. package/src/domains/__test__/loadAllUnitTestComponents.ts +0 -73
  633. package/src/domains/component/component-context/__mocks__/mockedManifestModel.ts +0 -30
  634. package/src/domains/component/component-context/__mocks__/mockedUriObj.ts +0 -38
  635. package/src/domains/component/component-context/__mocks__/mockedUriObjPreview.ts +0 -38
  636. package/src/domains/component/component-context/createComponentContextualFunctions.spec.ts +0 -299
  637. package/src/domains/component/component-context/createComponentContextualFunctions.ts +0 -108
  638. package/src/domains/component/errors/ComponentError.ts +0 -22
  639. package/src/domains/component/models/Component.spec.ts +0 -21
  640. package/src/domains/component/models/Component.ts +0 -16
  641. package/src/domains/component/models/ComponentVersion.spec.ts +0 -77
  642. package/src/domains/component/models/ComponentVersion.ts +0 -55
  643. package/src/domains/component/repositories/ComponentRepository.integration.spec.ts +0 -148
  644. package/src/domains/component/repositories/ComponentRepository.ts +0 -37
  645. package/src/domains/component/repositories/ComponentVersionRepository.integration.spec.ts +0 -523
  646. package/src/domains/component/repositories/ComponentVersionRepository.ts +0 -138
  647. package/src/domains/component/services/ComponentService.integration.spec.ts +0 -721
  648. package/src/domains/component/services/ComponentService.ts +0 -350
  649. package/src/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.spec.ts +0 -78
  650. package/src/domains/component/services/content-item-uri-resolver/ComponentContentUriResolverForPreview.ts +0 -18
  651. package/src/domains/component/utils/getComponentFileSystemFolder.spec.ts +0 -8
  652. package/src/domains/component/utils/getComponentFileSystemFolder.ts +0 -5
  653. package/src/domains/component/utils/getComponentName.spec.ts +0 -7
  654. package/src/domains/component/utils/getComponentName.ts +0 -3
  655. package/src/domains/component/utils/moveFilesAndDirectories.spec.ts +0 -62
  656. package/src/domains/component/utils/moveFilesAndDirectories.ts +0 -27
  657. package/src/domains/component/web-models/ComponentForWeb.ts +0 -11
  658. package/src/domains/component/web-models/ComponentVersionWebModel.ts +0 -16
  659. package/src/domains/component/web-models/ComponentsForWeb.ts +0 -17
  660. package/src/domains/component-set/errors/InvalidEnvironmentVariablesError.ts +0 -11
  661. package/src/domains/component-set/index.ts +0 -18
  662. package/src/domains/component-set/models/ComponentSet.spec.ts +0 -66
  663. package/src/domains/component-set/models/ComponentSet.ts +0 -67
  664. package/src/domains/component-set/models/ComponentSetComponentVersion.spec.ts +0 -106
  665. package/src/domains/component-set/models/ComponentSetComponentVersion.ts +0 -54
  666. package/src/domains/component-set/models/ComponentSetComponentVersionEditable.spec.ts +0 -82
  667. package/src/domains/component-set/models/ComponentSetComponentVersionEditable.ts +0 -46
  668. package/src/domains/component-set/models/ComponentSetComponentVersionExcluded.spec.ts +0 -46
  669. package/src/domains/component-set/models/ComponentSetComponentVersionExcluded.ts +0 -26
  670. package/src/domains/component-set/models/ComponentSetRule.spec.ts +0 -39
  671. package/src/domains/component-set/models/ComponentSetRule.ts +0 -37
  672. package/src/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.integration.spec.ts +0 -172
  673. package/src/domains/component-set/repositories/ComponentSetComponentVersionEditableRepository.ts +0 -47
  674. package/src/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.integration.spec.ts +0 -172
  675. package/src/domains/component-set/repositories/ComponentSetComponentVersionExcludedRepository.ts +0 -47
  676. package/src/domains/component-set/repositories/ComponentSetComponentVersionRepository.integration.spec.ts +0 -229
  677. package/src/domains/component-set/repositories/ComponentSetComponentVersionRepository.ts +0 -37
  678. package/src/domains/component-set/repositories/ComponentSetRepository.integration.spec.ts +0 -199
  679. package/src/domains/component-set/repositories/ComponentSetRepository.ts +0 -68
  680. package/src/domains/component-set/repositories/ComponentSetRuleRepository.integration.spec.ts +0 -107
  681. package/src/domains/component-set/repositories/ComponentSetRuleRepository.ts +0 -40
  682. package/src/domains/component-set/services/ComponentSetRuleService.integration.spec.ts +0 -137
  683. package/src/domains/component-set/services/ComponentSetRuleService.ts +0 -34
  684. package/src/domains/component-set/services/ComponentSetService.spec.ts +0 -144
  685. package/src/domains/component-set/services/ComponentSetService.ts +0 -82
  686. package/src/domains/component-set/services/ComponentSetServiceForLocalDev.spec.ts +0 -209
  687. package/src/domains/component-set/services/ComponentSetServiceForLocalDev.ts +0 -111
  688. package/src/domains/component-set/services/ComponentSetServiceForProduction.integration.spec.ts +0 -2898
  689. package/src/domains/component-set/services/ComponentSetServiceForProduction.ts +0 -839
  690. package/src/domains/component-set/services/EnvironmentVariables.ts +0 -1
  691. package/src/domains/component-set/services/Headers.ts +0 -1
  692. package/src/domains/component-set/services/RuntimeComponentSet.ts +0 -7
  693. package/src/domains/component-set/web-models/ComponentSetComponentVersionForWeb.ts +0 -7
  694. package/src/domains/component-set/web-models/ComponentSetForWeb.ts +0 -83
  695. package/src/domains/content/index.ts +0 -4
  696. package/src/domains/content/services/ComponentContentSchemaService.spec.ts +0 -264
  697. package/src/domains/content/services/ComponentContentSchemaService.ts +0 -53
  698. package/src/domains/content/services/ContentItemService.spec.ts +0 -108
  699. package/src/domains/content/services/ContentItemService.ts +0 -34
  700. package/src/domains/content/services/DynamicContentItemService.spec.ts +0 -97
  701. package/src/domains/content/services/DynamicContentItemService.ts +0 -30
  702. package/src/domains/content/utils/getContentSchemaName.spec.ts +0 -7
  703. package/src/domains/content/utils/getContentSchemaName.ts +0 -7
  704. package/src/domains/db/ComponentConnectionManager.ts +0 -4
  705. package/src/domains/db/ComponentRepositories.ts +0 -31
  706. package/src/domains/db/createConnectionManager.ts +0 -24
  707. package/src/domains/db/index.ts +0 -3
  708. package/src/domains/db/migration-list.ts +0 -16
  709. package/src/domains/manifest/AbstractManifest.ts +0 -57
  710. package/src/domains/manifest/ManifestV1.spec.ts +0 -436
  711. package/src/domains/manifest/ManifestV1.ts +0 -146
  712. package/src/domains/manifest/errors/ManifestLocationError.ts +0 -9
  713. package/src/domains/manifest/services/AbstractManifestService.spec.ts +0 -427
  714. package/src/domains/manifest/services/AbstractManifestService.ts +0 -316
  715. package/src/domains/manifest/services/ComponentFunctionService.spec.ts +0 -683
  716. package/src/domains/manifest/services/ComponentFunctionService.ts +0 -178
  717. package/src/domains/manifest/services/ComponentInputValidationService.ts +0 -22
  718. package/src/domains/manifest/services/ManifestServiceForProduction.spec.ts +0 -90
  719. package/src/domains/manifest/services/ManifestServiceForProduction.ts +0 -98
  720. package/src/domains/manifest/utils/assertFuncEntryFilesAreValid.ts +0 -19
  721. package/src/domains/manifest/utils/assertStaticFilesAreValid.ts +0 -37
  722. package/src/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.spec.ts +0 -121
  723. package/src/domains/manifest/utils/assertStaticFilesHaveAbsolutePath.ts +0 -15
  724. package/src/domains/manifest/utils/getAndAssertManifestVersion.spec.ts +0 -134
  725. package/src/domains/manifest/utils/getAndAssertManifestVersion.ts +0 -27
  726. package/src/domains/url/convertFunctionStaticFilesToFqdn.spec.ts +0 -24
  727. package/src/domains/url/convertFunctionStaticFilesToFqdn.ts +0 -25
  728. package/src/domains/url/convertFunctionStaticFilesToFqdnForPreview.spec.ts +0 -48
  729. package/src/domains/url/convertFunctionStaticFilesToFqdnForPreview.ts +0 -25
  730. package/src/domains/url/index.ts +0 -1
  731. package/src/migrations/20220704054051_initial.sql +0 -19
  732. package/src/migrations/20220718172237_adding_component_sets.sql +0 -23
  733. package/src/migrations/20220728113941_add_env_vars_field.sql +0 -1
  734. package/src/migrations/20220817113300_removing_null_props_from_jsonb.sql +0 -41
  735. package/src/migrations/20221027151225_dummy.sql +0 -2
  736. package/src/migrations/20221117151200_add_detail_columns_to_component_version.js +0 -49
  737. package/src/migrations/20221220151200_add_required_to_manifests.js +0 -61
  738. package/src/migrations/20221222151200_add_required_to_manifests.js +0 -138
  739. package/src/migrations/20223525103556_component_set_rule.sql +0 -19
  740. package/src/migrations/20230111095522_update_environment_property.js +0 -72
  741. package/src/migrations/20230203084900_ensure_static_root_exists.js +0 -57
  742. package/src/migrations/20230210143300_lowercase_all_uri_names.js +0 -106
  743. package/src/migrations/20230217151212_component_set_component_version_updates.sql +0 -38
  744. package/src/migrations/20230218121212_add_component_set_rules.js +0 -31
  745. /package/lib/domains/{component-set/models/ComponentSet.spec.d.ts → job/services/JobContextService/JobContextService.spec.d.ts} +0 -0
  746. /package/lib/domains/{component-set/models/ComponentSetComponentVersion.spec.d.ts → job/services/JobManifestService/JobManifestService.spec.d.ts} +0 -0
  747. /package/lib/domains/{component-set/models/ComponentSetComponentVersionEditable.spec.d.ts → job/utils/GetAwsTags/GetAwsTags.spec.d.ts} +0 -0
  748. /package/lib/{domains/job/repository/mocks → mocks}/mockIoc.d.ts +0 -0
@@ -1,3 +1 @@
1
1
  export declare const testLogger: import("winston").Logger;
2
- declare const _default: () => Promise<void>;
3
- export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@squiz/job-runner-lib",
3
- "version": "1.66.1",
3
+ "version": "2.1.0",
4
4
  "description": "",
5
5
  "main": "lib/index.js",
6
6
  "private": false,
@@ -8,52 +8,46 @@
8
8
  "access": "public"
9
9
  },
10
10
  "scripts": {
11
- "compile": "node build.js && tsc",
11
+ "compile": "npm run clean && npm run build && tsc",
12
+ "build": "node build.js",
12
13
  "test": "jest -c jest.config.ts",
13
- "test:integration": "jest -c jest.integration.config.ts",
14
14
  "test:update-snapshots": "jest -c jest.config.ts --updateSnapshot",
15
15
  "clean": "rimraf \"tsconfig.tsbuildinfo\" \"./lib\""
16
16
  },
17
17
  "author": "",
18
18
  "license": "ISC",
19
19
  "devDependencies": {
20
- "@types/archiver": "5.3.1",
21
- "@types/cli-color": "^2.0.6",
22
- "@types/express": "4.17.17",
20
+ "@faker-js/faker": "8.0.2",
21
+ "@squiz/virus-scanner-lib": "^1.66.1",
22
+ "@types/cli-color": "2.0.6",
23
23
  "@types/fs-extra": "11.0.1",
24
- "@types/http-errors": "2.0.1",
25
24
  "@types/jest": "28.1.8",
26
- "@types/node": "20.12.4",
27
- "@types/semver": "7.3.12",
28
- "archiver": "5.3.1",
25
+ "@types/node": "22.9.0",
26
+ "aws-sdk-client-mock": "^2.2.0",
27
+ "aws-sdk-client-mock-jest": "^2.2.0",
29
28
  "dotenv": "16.0.3",
29
+ "esbuild": "^0.25.6",
30
30
  "jest": "29.4.1",
31
31
  "rimraf": "4.1.2",
32
32
  "ts-jest": "29.0.5",
33
- "ts-loader": "9.3.1",
34
- "ts-node": "10.9.1",
35
- "typescript": "4.9.4",
36
- "unzipper": "0.10.14"
33
+ "typescript": "4.9.4"
37
34
  },
38
35
  "dependencies": {
39
36
  "@aws-sdk/client-dynamodb": "3.427.0",
40
37
  "@aws-sdk/client-ecs": "3.348.0",
41
- "@faker-js/faker": "8.0.2",
42
- "@squiz/component-logger-lib": "^1.67.0",
43
- "@squiz/component-web-api-lib": "^1.65.0",
44
- "@squiz/db-lib": "^1.64.0",
38
+ "@aws-sdk/client-s3": "^3.332.0",
39
+ "@aws-sdk/s3-request-presigner": "^3.332.0",
45
40
  "@squiz/dx-common-lib": "^1.66.1",
46
- "@squiz/dx-json-schema-lib": "^1.65.0",
41
+ "@squiz/dx-json-schema-lib": "1.78.1",
47
42
  "@squiz/dx-logger-lib": "^1.64.0",
48
- "@types/unzipper": "0.10.5",
49
- "axios": "1.6.0",
43
+ "axios": "1.7.4",
44
+ "cli-color": "^2.0.2",
50
45
  "dotenv": "16.0.3",
51
46
  "fs-extra": "11.1.0",
52
- "http-errors": "2.0.0",
53
- "query-string": "7.1.3",
47
+ "inversify": "6.0.1",
48
+ "inversify-binding-decorators": "4.0.0",
54
49
  "reflect-metadata": "^0.1.13",
55
- "semver": "7.5.2",
50
+ "tsoa": "5.1.1",
56
51
  "winston": "3.8.2"
57
- },
58
- "gitHead": "ae85975300d01a97f28db9f8831dbd8881dc7b20"
52
+ }
59
53
  }
@@ -1,17 +1 @@
1
- export * from './models/Component';
2
- export * from './models/ComponentVersion';
3
-
4
- export * from './repositories/ComponentRepository';
5
- export * from './repositories/ComponentVersionRepository';
6
-
7
- export * from './services/ComponentService';
8
- export * from './services/content-item-uri-resolver/ComponentContentUriResolverForPreview';
9
-
10
- export * from './web-models/ComponentForWeb';
11
- export * from './web-models/ComponentsForWeb';
12
- export * from './web-models/ComponentVersionWebModel';
13
-
14
- export * from './component-context/createComponentContextualFunctions';
15
- export * from './errors/ComponentError';
16
1
  export * from './errors/JobError';
17
- export * from './utils/getComponentFileSystemFolder';
@@ -0,0 +1,52 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ import { S3Client, S3ClientConfig } from '@aws-sdk/client-s3';
7
+ import { JobDetailsRepository } from './JobDetailsRepository';
8
+ import { initIocContainer, iocContainer } from '../../../mocks/mockIoc';
9
+ import { testLogger } from '../../../jest-global-setup';
10
+
11
+ // Create a new container tsoa can use
12
+ initIocContainer(testLogger);
13
+
14
+ // Mock S3 Client
15
+ const mockOptions = {} as S3ClientConfig;
16
+ const mockClient = new S3Client(mockOptions);
17
+
18
+ const mockSend = jest.fn().mockResolvedValue({
19
+ Body: { transformToString: jest.fn().mockResolvedValue('file') },
20
+ $metadata: {},
21
+ });
22
+ mockClient.send = mockSend;
23
+
24
+ // Inject the S3Repository with a mocked client
25
+ iocContainer.rebind<S3Client>(S3Client).toConstantValue(mockClient);
26
+
27
+ let jobDetailsRepository: JobDetailsRepository;
28
+
29
+ describe('JobDetailsRepository', (): void => {
30
+ beforeAll((): void => {
31
+ jobDetailsRepository = iocContainer.get(JobDetailsRepository);
32
+ });
33
+
34
+ describe(`get`, (): void => {
35
+ beforeEach(() => {
36
+ jest.resetAllMocks();
37
+ });
38
+
39
+ it(`should return a response for get`, async (): Promise<void> => {
40
+ const mockKey = `mock`;
41
+ mockSend.mockImplementationOnce(() =>
42
+ Promise.resolve({
43
+ Body: { transformToString: jest.fn().mockResolvedValue('file') },
44
+ }),
45
+ );
46
+
47
+ const response = await jobDetailsRepository.get(mockKey);
48
+ expect(mockSend).toBeCalledTimes(1);
49
+ expect(response).toStrictEqual('file');
50
+ });
51
+ });
52
+ });
@@ -0,0 +1,33 @@
1
+ import { S3Client } from '@aws-sdk/client-s3';
2
+ import { inject } from 'inversify';
3
+ import { S3RepositoryBase } from './S3RepositoryBase';
4
+ import { provideTransient } from '../transientProvider';
5
+ import { JobContext } from '../model/JobContext';
6
+ import { JobManifest } from '../manifest';
7
+ import { JobExecution } from '../model/JobExecution';
8
+
9
+ @provideTransient(JobDetailsRepository)
10
+ export class JobDetailsRepository extends S3RepositoryBase {
11
+ constructor(@inject(S3Client) protected s3Client: S3Client, @inject('JobDetailsBucketName') bucketName: string) {
12
+ super(s3Client, bucketName);
13
+ }
14
+
15
+ /**
16
+ * Create the job details file in S3.
17
+ * Context is nullable as the user could delete the context between queuing the job and creating the details file.
18
+ * We want the file to be created so the job starts/executes rather than remaining in a queued state/causing
19
+ * an error.
20
+ */
21
+ public async createJobDetailsFile(
22
+ jobDetailsFileName: string,
23
+ jobContext: JobContext | null,
24
+ jobManifest: JobManifest | null,
25
+ jobExecution: JobExecution,
26
+ ) {
27
+ await this.put(jobDetailsFileName, JSON.stringify({ jobContext, jobManifest, jobExecution }));
28
+ }
29
+
30
+ public static createJobDetailsFileName(tenantId: string, jobExecutionId: string): string {
31
+ return `${tenantId}/${jobExecutionId}`;
32
+ }
33
+ }
@@ -0,0 +1,50 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ import { S3Client, S3ClientConfig } from '@aws-sdk/client-s3';
7
+ import { S3Repository } from './S3Repository';
8
+ import { initIocContainer, iocContainer } from '../../../mocks/mockIoc';
9
+ import { testLogger } from '../../../jest-global-setup';
10
+
11
+ // Create a new container tsoa can use
12
+ initIocContainer(testLogger);
13
+
14
+ // Mock S3 Client
15
+ const mockOptions = {} as S3ClientConfig;
16
+ const mockClient = new S3Client(mockOptions);
17
+
18
+ const mockSend = jest.fn().mockResolvedValue({
19
+ Body: { transformToString: jest.fn().mockResolvedValue('file') },
20
+ $metadata: {},
21
+ });
22
+ mockClient.send = mockSend;
23
+
24
+ // Inject the S3Repository with a mocked client
25
+ iocContainer.rebind<S3Client>(S3Client).toConstantValue(mockClient);
26
+
27
+ let s3Repository: S3Repository;
28
+
29
+ describe('S3Repository', (): void => {
30
+ beforeAll((): void => {
31
+ s3Repository = iocContainer.get(S3Repository);
32
+ });
33
+
34
+ describe(`get`, (): void => {
35
+ beforeEach(() => {
36
+ jest.resetAllMocks();
37
+ });
38
+
39
+ it(`should return a response for get`, async (): Promise<void> => {
40
+ const mockKey = `mock`;
41
+ mockSend.mockResolvedValueOnce({
42
+ Body: { transformToString: jest.fn().mockResolvedValue('file') },
43
+ });
44
+
45
+ const response = await s3Repository.get(mockKey);
46
+ expect(mockSend).toBeCalledTimes(1);
47
+ expect(response).toStrictEqual('file');
48
+ });
49
+ });
50
+ });
@@ -0,0 +1,27 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ import * as dotenv from 'dotenv';
7
+ dotenv.config();
8
+
9
+ import { S3Client } from '@aws-sdk/client-s3';
10
+ import { inject } from 'inversify';
11
+ import { S3RepositoryBase } from './S3RepositoryBase';
12
+ import { provideTransient } from '../transientProvider';
13
+
14
+ /**
15
+ * Repository class for interacting with S3.
16
+ * @export
17
+ * @class S3Repository
18
+ */
19
+ @provideTransient(S3Repository)
20
+ export class S3Repository extends S3RepositoryBase {
21
+ public constructor(
22
+ @inject(S3Client) protected s3Client: S3Client,
23
+ @inject('S3RepositoryBucketName') bucketName: string,
24
+ ) {
25
+ super(s3Client, bucketName);
26
+ }
27
+ }
@@ -0,0 +1,97 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ import { S3Client, S3ClientConfig } from '@aws-sdk/client-s3';
7
+ import { S3Repository } from './S3Repository';
8
+ import { initIocContainer, iocContainer } from '../../../mocks/mockIoc';
9
+ import { testLogger } from '../../../jest-global-setup';
10
+
11
+ // Create a new container tsoa can use
12
+ initIocContainer(testLogger);
13
+
14
+ // Mock S3 Client
15
+ const mockOptions = {} as S3ClientConfig;
16
+ const mockClient = new S3Client(mockOptions);
17
+
18
+ const mockSend = jest.fn().mockResolvedValue({
19
+ Body: { transformToString: jest.fn().mockResolvedValue('file') },
20
+ $metadata: {},
21
+ });
22
+ mockClient.send = mockSend;
23
+
24
+ // Inject the S3Repository with a mocked client
25
+ iocContainer.rebind<S3Client>(S3Client).toConstantValue(mockClient);
26
+
27
+ let s3Repository: S3Repository;
28
+
29
+ describe('S3RepositoryBase', (): void => {
30
+ beforeAll((): void => {
31
+ s3Repository = new S3Repository(mockClient, 'mock-bucket');
32
+ });
33
+
34
+ describe(`get`, (): void => {
35
+ beforeEach(() => {
36
+ jest.resetAllMocks();
37
+ });
38
+
39
+ it(`should return a response for get`, async (): Promise<void> => {
40
+ const mockKey = `mock`;
41
+ mockSend.mockResolvedValueOnce({
42
+ Body: { transformToString: jest.fn().mockResolvedValue('file') },
43
+ });
44
+
45
+ const response = await s3Repository.get(mockKey);
46
+ expect(mockSend).toBeCalledTimes(1);
47
+ expect(response).toStrictEqual('file');
48
+ });
49
+
50
+ it(`should return a null response if undefined`, async (): Promise<void> => {
51
+ const mockKey = `mock`;
52
+ const mockResponse = undefined;
53
+ mockSend.mockResolvedValueOnce({
54
+ Body: mockResponse,
55
+ });
56
+
57
+ const response = await s3Repository.get(mockKey);
58
+ expect(mockSend).toBeCalledTimes(1);
59
+ expect(response).toBeFalsy();
60
+ });
61
+ });
62
+
63
+ describe(`put`, (): void => {
64
+ beforeEach(() => {
65
+ jest.resetAllMocks();
66
+ });
67
+
68
+ it(`should return a response for get`, async (): Promise<void> => {
69
+ const mockKey = `mock`;
70
+ const mockObject = ``;
71
+ mockSend.mockResolvedValueOnce({
72
+ Body: { transformToString: jest.fn().mockResolvedValue(mockObject) },
73
+ });
74
+
75
+ const response = await s3Repository.put(mockKey, mockObject);
76
+ expect(mockSend).toBeCalledTimes(1);
77
+ expect(response).toBeFalsy();
78
+ });
79
+ });
80
+
81
+ describe(`check`, (): void => {
82
+ beforeEach(() => {
83
+ jest.resetAllMocks();
84
+ });
85
+
86
+ it(`should return a response if S3 object key exists`, async (): Promise<void> => {
87
+ const mockKey = `mock`;
88
+ mockSend.mockResolvedValueOnce({
89
+ Body: {},
90
+ });
91
+
92
+ const response = await s3Repository.check(mockKey);
93
+ expect(mockSend).toBeCalledTimes(1);
94
+ expect(response).toBeTruthy();
95
+ });
96
+ });
97
+ });
@@ -0,0 +1,93 @@
1
+ /*!
2
+ * @license
3
+ * Copyright Squiz Australia Pty Ltd. All Rights Reserved.
4
+ */
5
+
6
+ import * as dotenv from 'dotenv';
7
+ dotenv.config();
8
+
9
+ import {
10
+ GetObjectCommand,
11
+ HeadObjectCommand,
12
+ HeadObjectCommandOutput,
13
+ PutObjectCommand,
14
+ PutObjectCommandInputType,
15
+ S3Client,
16
+ } from '@aws-sdk/client-s3';
17
+ import { getSignedUrl } from '@aws-sdk/s3-request-presigner';
18
+ import { inject, injectable } from 'inversify';
19
+ import 'reflect-metadata';
20
+
21
+ /**
22
+ * Repository class for interacting with S3.
23
+ * @export
24
+ * @class S3Repository
25
+ */
26
+ @injectable()
27
+ export abstract class S3RepositoryBase {
28
+ protected bucketName: string;
29
+ public constructor(@inject(S3Client) protected s3Client: S3Client, bucketName: string) {
30
+ this.bucketName = bucketName;
31
+ }
32
+
33
+ /**
34
+ * Save object into S3.
35
+ * @param {string} key The S3 object key.
36
+ * @param {PutObjectCommandInputType['Body']} body The body of the S3 object.
37
+ * @return {Promise<void>}
38
+ * @memberof S3Repository
39
+ */
40
+ async put(key: string, body: PutObjectCommandInputType['Body']): Promise<void> {
41
+ await this.s3Client.send(
42
+ new PutObjectCommand({
43
+ Bucket: this.bucketName,
44
+ Key: key,
45
+ Body: body,
46
+ }),
47
+ );
48
+ }
49
+
50
+ /**
51
+ * Retrieve object from S3.
52
+ * @param {string} key The S3 object key.
53
+ * @return {Promise<string | null>} The S3 object.
54
+ * @memberof S3Repository
55
+ */
56
+ async get(key: string): Promise<string | null> {
57
+ const s3Object = await this.s3Client.send(
58
+ new GetObjectCommand({
59
+ Bucket: this.bucketName,
60
+ Key: key,
61
+ }),
62
+ );
63
+
64
+ return s3Object.Body?.transformToString() || null;
65
+ }
66
+
67
+ /**
68
+ * Check if the S3 object key exists.
69
+ * @param {string} key The S3 object key.
70
+ * @return {Promise<HeadObjectCommandOutput>}
71
+ * @memberof S3Repository
72
+ */
73
+ async check(key: string): Promise<HeadObjectCommandOutput> {
74
+ return this.s3Client.send(
75
+ new HeadObjectCommand({
76
+ Bucket: this.bucketName,
77
+ Key: key,
78
+ }),
79
+ );
80
+ }
81
+
82
+ async getS3SignedUrl(key: string): Promise<string> {
83
+ const command = new GetObjectCommand({
84
+ Bucket: this.bucketName,
85
+ Key: key,
86
+ });
87
+
88
+ const res = await getSignedUrl(this.s3Client, command, {
89
+ expiresIn: 600, // 10 minutes
90
+ });
91
+ return res;
92
+ }
93
+ }
@@ -0,0 +1,2 @@
1
+ export * from './JobDetailsRepository';
2
+ export * from './S3Repository';
@@ -5,67 +5,18 @@
5
5
 
6
6
  import { AttributeValue } from '@aws-sdk/client-dynamodb';
7
7
  import { faker } from '@faker-js/faker/locale/en';
8
- import { createMockJob } from '../../../model/Job/mocks/Job.mock';
9
- import { createMockJobContext } from '../../../model/JobContext/mocks/JobContext.mock';
10
- import { createMockJobExecution } from '../../../model/JobExecution/mocks/JobExecution.mock';
11
- import { InternalServerError } from '../../../errors/InternalServerError';
12
8
  import { PartitionKey, PARTITION_KEYS } from '../../../constants/Repository.constants';
13
9
  import { PaginationInfo } from '../model/PaginationInfo';
14
10
  import { PAGINATION_DIRECTION_TYPE_AFTER, PAGINATION_DIRECTION_TYPE_BEFORE } from '../model/PaginationTypes';
15
11
  import { encodeTokenString } from '../utils/PaginationUtils';
16
12
  import { PaginationService } from './PaginationService';
17
- import { JobRepository, JobContextRepository, JobExecutionRepository } from '../../../repository';
18
13
 
19
14
  describe('PaginationService', (): void => {
20
- let jobRepository: Record<string, object>;
21
- let jobContextRepository: Record<string, object>;
22
- let jobExecutionRepository: Record<string, object>;
23
15
  let paginationService: PaginationService<any>;
24
-
25
- const mockConvertToDynamoDbItemJob = jest.fn();
26
- const mockConvertToDynamoDbItemContext = jest.fn();
27
- const mockConvertToDynamoDbItemExecution = jest.fn();
16
+ const mockConvertToDynamoDbItem = jest.fn();
28
17
 
29
18
  beforeAll((): void => {
30
- jobRepository = {
31
- create: jest.fn(),
32
- findOne: jest.fn(),
33
- list: jest.fn(),
34
- update: jest.fn(),
35
- delete: jest.fn(),
36
-
37
- getJobs: jest.fn(),
38
- convertToDynamoDbItem: mockConvertToDynamoDbItemJob,
39
- };
40
-
41
- jobContextRepository = {
42
- create: jest.fn(),
43
- findOne: jest.fn(),
44
- list: jest.fn(),
45
- update: jest.fn(),
46
- delete: jest.fn(),
47
- getContexts: jest.fn(),
48
-
49
- getJobs: jest.fn(),
50
- convertToDynamoDbItem: mockConvertToDynamoDbItemContext,
51
- };
52
-
53
- jobExecutionRepository = {
54
- create: jest.fn(),
55
- findOne: jest.fn(),
56
- list: jest.fn(),
57
- update: jest.fn(),
58
- delete: jest.fn(),
59
-
60
- getJobs: jest.fn(),
61
- convertToDynamoDbItem: mockConvertToDynamoDbItemExecution,
62
- };
63
-
64
- paginationService = new PaginationService<any>(
65
- jobRepository as unknown as JobRepository,
66
- jobContextRepository as unknown as JobContextRepository,
67
- jobExecutionRepository as unknown as JobExecutionRepository,
68
- );
19
+ paginationService = new PaginationService<any>();
69
20
  });
70
21
 
71
22
  describe('addPaginationLinksToResponse', (): void => {
@@ -102,7 +53,7 @@ describe('PaginationService', (): void => {
102
53
  }),
103
54
  );
104
55
 
105
- mockConvertToDynamoDbItemJob
56
+ mockConvertToDynamoDbItem
106
57
  .mockImplementationOnce(() => {
107
58
  return mockExclusiveStartKey;
108
59
  })
@@ -114,9 +65,10 @@ describe('PaginationService', (): void => {
114
65
  mockData,
115
66
  mockPaginationInfo,
116
67
  mockPaginationInfo.token,
68
+ mockConvertToDynamoDbItem,
117
69
  );
118
70
 
119
- expect(mockConvertToDynamoDbItemJob).toBeCalledTimes(1);
71
+ expect(mockConvertToDynamoDbItem).toBeCalledTimes(1);
120
72
  expect(response.data).toStrictEqual(mockData);
121
73
 
122
74
  expect(response.links).toBeTruthy();
@@ -132,15 +84,16 @@ describe('PaginationService', (): void => {
132
84
  }),
133
85
  }).map((_, i) => ({ type: mockType, i }));
134
86
 
135
- mockConvertToDynamoDbItemJob.mockImplementationOnce(() => mockExclusiveStartKey);
87
+ mockConvertToDynamoDbItem.mockImplementationOnce(() => mockExclusiveStartKey);
136
88
 
137
89
  const response = paginationService.addPaginationLinksToResponse(
138
90
  mockData,
139
91
  { ...mockPaginationInfo, token: null },
140
92
  null,
93
+ mockConvertToDynamoDbItem,
141
94
  );
142
95
 
143
- expect(mockConvertToDynamoDbItemJob).not.toBeCalled();
96
+ expect(mockConvertToDynamoDbItem).not.toBeCalled();
144
97
  expect(response.data).toStrictEqual(mockData);
145
98
  expect(response.links).toBeTruthy();
146
99
  expect(response.links.prev).toBeNull();
@@ -155,15 +108,16 @@ describe('PaginationService', (): void => {
155
108
  }),
156
109
  }).map((_, i) => ({ type: mockType, i }));
157
110
 
158
- mockConvertToDynamoDbItemJob.mockImplementationOnce(() => mockExclusiveStartKey);
111
+ mockConvertToDynamoDbItem.mockImplementationOnce(() => mockExclusiveStartKey);
159
112
 
160
113
  const response = paginationService.addPaginationLinksToResponse(
161
114
  mockData,
162
115
  mockPaginationInfo,
163
116
  mockLastEvaluatedKey,
117
+ mockConvertToDynamoDbItem,
164
118
  );
165
119
 
166
- expect(mockConvertToDynamoDbItemJob).toBeCalledTimes(1);
120
+ expect(mockConvertToDynamoDbItem).toBeCalledTimes(1);
167
121
  expect(response.data).toStrictEqual(mockData);
168
122
  expect(response.links).toBeTruthy();
169
123
  expect(response.links.prev).toBeTruthy();
@@ -178,15 +132,16 @@ describe('PaginationService', (): void => {
178
132
  }),
179
133
  }).map((_, i) => ({ type: mockType, i }));
180
134
 
181
- mockConvertToDynamoDbItemJob.mockImplementationOnce(() => mockExclusiveStartKey);
135
+ mockConvertToDynamoDbItem.mockImplementationOnce(() => mockExclusiveStartKey);
182
136
 
183
137
  const response = paginationService.addPaginationLinksToResponse(
184
138
  mockData,
185
139
  { ...mockPaginationInfo, direction: PAGINATION_DIRECTION_TYPE_BEFORE },
186
140
  mockLastEvaluatedKey,
141
+ mockConvertToDynamoDbItem,
187
142
  );
188
143
 
189
- expect(mockConvertToDynamoDbItemJob).toBeCalledTimes(1);
144
+ expect(mockConvertToDynamoDbItem).toBeCalledTimes(1);
190
145
  expect(response.data).toStrictEqual(mockData.reverse());
191
146
  expect(response.links).toBeTruthy();
192
147
  });
@@ -199,7 +154,7 @@ describe('PaginationService', (): void => {
199
154
  }),
200
155
  }).map((_, i) => ({ type: mockType, i }));
201
156
 
202
- mockConvertToDynamoDbItemJob
157
+ mockConvertToDynamoDbItem
203
158
  .mockImplementationOnce(() => mockExclusiveStartKey)
204
159
  .mockImplementationOnce(() => mockExclusiveStartKey);
205
160
 
@@ -207,42 +162,12 @@ describe('PaginationService', (): void => {
207
162
  mockData,
208
163
  mockPaginationInfo,
209
164
  mockLastEvaluatedKey,
165
+ mockConvertToDynamoDbItem,
210
166
  );
211
167
 
212
- expect(mockConvertToDynamoDbItemJob).toBeCalledTimes(2);
168
+ expect(mockConvertToDynamoDbItem).toBeCalledTimes(2);
213
169
  expect(response.data).toHaveLength(mockPaginationInfo.limit);
214
170
  expect(response.links).toBeTruthy();
215
171
  });
216
172
  });
217
-
218
- describe('convertToDynamoDbItem', (): void => {
219
- beforeEach(() => {
220
- jest.resetAllMocks();
221
- });
222
- it('should call the jobRepository method for converting to a DynamoDB object', (): void => {
223
- const mockJob = createMockJob();
224
-
225
- (paginationService as any).convertToDynamoDbItem(mockJob);
226
- expect(mockConvertToDynamoDbItemJob).toBeCalled();
227
- });
228
-
229
- it('should call the jobContextRepository method for converting to a DynamoDB object', (): void => {
230
- const mockJobContext = createMockJobContext();
231
-
232
- (paginationService as any).convertToDynamoDbItem(mockJobContext);
233
- expect(mockConvertToDynamoDbItemContext).toBeCalled();
234
- });
235
-
236
- it('should call the jobExecutionRepository method for converting to a DynamoDB object', (): void => {
237
- const mockJobExecution = createMockJobExecution();
238
-
239
- (paginationService as any).convertToDynamoDbItem(mockJobExecution);
240
- expect(mockConvertToDynamoDbItemExecution).toBeCalled();
241
- });
242
-
243
- it('should should throw an error if the partition key is invalid', (): void => {
244
- const mockItem = { type: 'invalid' };
245
- expect(() => (paginationService as any).convertToDynamoDbItem(mockItem)).toThrowError(InternalServerError);
246
- });
247
- });
248
173
  });