@servicelabsco/nestjs-utility-services 3.0.18 → 4.0.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 (340) hide show
  1. package/CHANGELOG.md +228 -0
  2. package/README.md +2 -0
  3. package/dist/app.module.js +10 -43
  4. package/dist/app.module.js.map +1 -1
  5. package/dist/auth/auth.module.js +1 -4
  6. package/dist/auth/auth.module.js.map +1 -1
  7. package/dist/auth/middlewares/internal.middleware.js +4 -36
  8. package/dist/auth/middlewares/internal.middleware.js.map +1 -1
  9. package/dist/auth/services/auth.service.js.map +1 -1
  10. package/dist/auth/services/device.token.service.js +4 -3
  11. package/dist/auth/services/device.token.service.js.map +1 -1
  12. package/dist/auth/services/refresh.token.service.js +1 -34
  13. package/dist/auth/services/refresh.token.service.js.map +1 -1
  14. package/dist/common/adapters/redis.io.adapter.d.ts +1 -3
  15. package/dist/common/adapters/redis.io.adapter.js +3 -7
  16. package/dist/common/adapters/redis.io.adapter.js.map +1 -1
  17. package/dist/common/libraries/auth.js +1 -34
  18. package/dist/common/libraries/auth.js.map +1 -1
  19. package/dist/common/libraries/common.subscriber.js +15 -15
  20. package/dist/common/libraries/common.subscriber.js.map +1 -1
  21. package/dist/common/libraries/custom.crypt.js +13 -46
  22. package/dist/common/libraries/custom.crypt.js.map +1 -1
  23. package/dist/common/libraries/custom.logger.js +1 -1
  24. package/dist/common/libraries/custom.logger.js.map +1 -1
  25. package/dist/common/libraries/date.util.js +3 -3
  26. package/dist/common/libraries/date.util.js.map +1 -1
  27. package/dist/common/libraries/hash.js +3 -36
  28. package/dist/common/libraries/hash.js.map +1 -1
  29. package/dist/common/libraries/json.evaluator.d.ts +1 -0
  30. package/dist/common/libraries/json.evaluator.js +33 -28
  31. package/dist/common/libraries/json.evaluator.js.map +1 -1
  32. package/dist/common/libraries/log.redactor.js +14 -14
  33. package/dist/common/libraries/log.redactor.js.map +1 -1
  34. package/dist/common/libraries/money.js +4 -4
  35. package/dist/common/libraries/money.js.map +1 -1
  36. package/dist/common/libraries/platform.utility.js +1 -4
  37. package/dist/common/libraries/platform.utility.js.map +1 -1
  38. package/dist/common/libraries/record.manager.js.map +1 -1
  39. package/dist/common/libraries/sentry.sdk.d.ts +1 -1
  40. package/dist/common/libraries/sentry.sdk.js +1 -1
  41. package/dist/common/libraries/sentry.sdk.js.map +1 -1
  42. package/dist/config/jwt.config.js.map +1 -1
  43. package/dist/config/orm.config.js +0 -3
  44. package/dist/config/orm.config.js.map +1 -1
  45. package/dist/config/read.typeorm.config.js +6 -35
  46. package/dist/config/read.typeorm.config.js.map +1 -1
  47. package/dist/config/sentry.options.js +14 -1
  48. package/dist/config/sentry.options.js.map +1 -1
  49. package/dist/config/typeorm.config.js +6 -37
  50. package/dist/config/typeorm.config.js.map +1 -1
  51. package/dist/health.check.controller.js +18 -0
  52. package/dist/health.check.controller.js.map +1 -1
  53. package/dist/main.d.ts +0 -1
  54. package/dist/main.js +6 -45
  55. package/dist/main.js.map +1 -1
  56. package/dist/migrations/1619296224563-AddMasterSeedersDataSeederTable.js +2 -35
  57. package/dist/migrations/1619296224563-AddMasterSeedersDataSeederTable.js.map +1 -1
  58. package/dist/migrations/1779607111923-AddUniqueIndexSysPropertiesName.js +2 -2
  59. package/dist/migrations/1779607111923-AddUniqueIndexSysPropertiesName.js.map +1 -1
  60. package/dist/migrations/1779607111924-AddUniqueIndexSysDocumentsFileHash.js +2 -2
  61. package/dist/migrations/1779607111924-AddUniqueIndexSysDocumentsFileHash.js.map +1 -1
  62. package/dist/migrations/1779690975270-AddUniqueIndexSysSessionIdentifiers.js +1 -1
  63. package/dist/migrations/1779690975270-AddUniqueIndexSysSessionIdentifiers.js.map +1 -1
  64. package/dist/migrations/1779773659655-AddIdempotencyIndexesForJobs.js +3 -3
  65. package/dist/migrations/1779773659655-AddIdempotencyIndexesForJobs.js.map +1 -1
  66. package/dist/migrations/1780002352495-MigrateJsonColumnsToJsonb.js +20 -20
  67. package/dist/migrations/1780002352495-MigrateJsonColumnsToJsonb.js.map +1 -1
  68. package/dist/migrations/1788287350858-ReplaceUniqueIndexesWithSoftDeleteAware.js +4 -4
  69. package/dist/migrations/1788287350858-ReplaceUniqueIndexesWithSoftDeleteAware.js.map +1 -1
  70. package/dist/migrations/1788287350859-NormalizeSocialIdentitiesUuidDefault.js +1 -1
  71. package/dist/migrations/1788287350859-NormalizeSocialIdentitiesUuidDefault.js.map +1 -1
  72. package/dist/migrations/1793302598724-CreateUploadSessionTable.d.ts +5 -0
  73. package/dist/migrations/1793302598724-CreateUploadSessionTable.js +33 -0
  74. package/dist/migrations/1793302598724-CreateUploadSessionTable.js.map +1 -0
  75. package/dist/platformUtility/constants/index.d.ts +1 -0
  76. package/dist/platformUtility/constants/index.js +1 -0
  77. package/dist/platformUtility/constants/index.js.map +1 -1
  78. package/dist/platformUtility/constants/servicelabs.constants.d.ts +30 -0
  79. package/dist/platformUtility/constants/servicelabs.constants.js +34 -0
  80. package/dist/platformUtility/constants/servicelabs.constants.js.map +1 -0
  81. package/dist/platformUtility/consumers/job.consumer.d.ts +2 -1
  82. package/dist/platformUtility/consumers/job.consumer.js +8 -8
  83. package/dist/platformUtility/consumers/job.consumer.js.map +1 -1
  84. package/dist/platformUtility/es6.classes.d.ts +36 -4
  85. package/dist/platformUtility/es6.classes.js +8 -1
  86. package/dist/platformUtility/es6.classes.js.map +1 -1
  87. package/dist/platformUtility/filters/sentry.reporting.filter.js +2 -1
  88. package/dist/platformUtility/filters/sentry.reporting.filter.js.map +1 -1
  89. package/dist/platformUtility/interfaces/index.d.ts +19 -0
  90. package/dist/platformUtility/interfaces/index.js +19 -0
  91. package/dist/platformUtility/interfaces/index.js.map +1 -1
  92. package/dist/platformUtility/interfaces/servicelabs.call.options.interface.d.ts +8 -0
  93. package/dist/platformUtility/interfaces/servicelabs.call.options.interface.js +3 -0
  94. package/dist/platformUtility/interfaces/servicelabs.call.options.interface.js.map +1 -0
  95. package/dist/platformUtility/interfaces/servicelabs.callback.event.interface.d.ts +6 -0
  96. package/dist/platformUtility/interfaces/servicelabs.callback.event.interface.js +3 -0
  97. package/dist/platformUtility/interfaces/servicelabs.callback.event.interface.js.map +1 -0
  98. package/dist/platformUtility/interfaces/servicelabs.error.interface.d.ts +10 -0
  99. package/dist/platformUtility/interfaces/servicelabs.error.interface.js +3 -0
  100. package/dist/platformUtility/interfaces/servicelabs.error.interface.js.map +1 -0
  101. package/dist/platformUtility/interfaces/servicelabs.html.pdf.input.interface.d.ts +5 -0
  102. package/dist/platformUtility/interfaces/servicelabs.html.pdf.input.interface.js +3 -0
  103. package/dist/platformUtility/interfaces/servicelabs.html.pdf.input.interface.js.map +1 -0
  104. package/dist/platformUtility/interfaces/servicelabs.job.file.interface.d.ts +10 -0
  105. package/dist/platformUtility/interfaces/servicelabs.job.file.interface.js +3 -0
  106. package/dist/platformUtility/interfaces/servicelabs.job.file.interface.js.map +1 -0
  107. package/dist/platformUtility/interfaces/servicelabs.job.interface.d.ts +31 -0
  108. package/dist/platformUtility/interfaces/servicelabs.job.interface.js +3 -0
  109. package/dist/platformUtility/interfaces/servicelabs.job.interface.js.map +1 -0
  110. package/dist/platformUtility/interfaces/servicelabs.job.list.interface.d.ts +5 -0
  111. package/dist/platformUtility/interfaces/servicelabs.job.list.interface.js +3 -0
  112. package/dist/platformUtility/interfaces/servicelabs.job.list.interface.js.map +1 -0
  113. package/dist/platformUtility/interfaces/servicelabs.job.list.options.interface.d.ts +6 -0
  114. package/dist/platformUtility/interfaces/servicelabs.job.list.options.interface.js +3 -0
  115. package/dist/platformUtility/interfaces/servicelabs.job.list.options.interface.js.map +1 -0
  116. package/dist/platformUtility/interfaces/servicelabs.job.summary.interface.d.ts +15 -0
  117. package/dist/platformUtility/interfaces/servicelabs.job.summary.interface.js +3 -0
  118. package/dist/platformUtility/interfaces/servicelabs.job.summary.interface.js.map +1 -0
  119. package/dist/platformUtility/interfaces/servicelabs.request.interface.d.ts +5 -0
  120. package/dist/platformUtility/interfaces/servicelabs.request.interface.js +3 -0
  121. package/dist/platformUtility/interfaces/servicelabs.request.interface.js.map +1 -0
  122. package/dist/platformUtility/interfaces/servicelabs.response.interface.d.ts +6 -0
  123. package/dist/platformUtility/interfaces/servicelabs.response.interface.js +3 -0
  124. package/dist/platformUtility/interfaces/servicelabs.response.interface.js.map +1 -0
  125. package/dist/platformUtility/interfaces/servicelabs.run.options.interface.d.ts +8 -0
  126. package/dist/platformUtility/interfaces/servicelabs.run.options.interface.js +3 -0
  127. package/dist/platformUtility/interfaces/servicelabs.run.options.interface.js.map +1 -0
  128. package/dist/platformUtility/interfaces/servicelabs.store.options.interface.d.ts +5 -0
  129. package/dist/platformUtility/interfaces/servicelabs.store.options.interface.js +3 -0
  130. package/dist/platformUtility/interfaces/servicelabs.store.options.interface.js.map +1 -0
  131. package/dist/platformUtility/interfaces/servicelabs.stored.file.interface.d.ts +6 -0
  132. package/dist/platformUtility/interfaces/servicelabs.stored.file.interface.js +3 -0
  133. package/dist/platformUtility/interfaces/servicelabs.stored.file.interface.js.map +1 -0
  134. package/dist/platformUtility/interfaces/servicelabs.url.input.interface.d.ts +3 -0
  135. package/dist/platformUtility/interfaces/servicelabs.url.input.interface.js +3 -0
  136. package/dist/platformUtility/interfaces/servicelabs.url.input.interface.js.map +1 -0
  137. package/dist/platformUtility/interfaces/servicelabs.utility.interface.d.ts +12 -0
  138. package/dist/platformUtility/interfaces/servicelabs.utility.interface.js +3 -0
  139. package/dist/platformUtility/interfaces/servicelabs.utility.interface.js.map +1 -0
  140. package/dist/platformUtility/interfaces/servicelabs.zip.entry.interface.d.ts +4 -0
  141. package/dist/platformUtility/interfaces/servicelabs.zip.entry.interface.js +3 -0
  142. package/dist/platformUtility/interfaces/servicelabs.zip.entry.interface.js.map +1 -0
  143. package/dist/platformUtility/interfaces/servicelabs.zip.files.input.interface.d.ts +4 -0
  144. package/dist/platformUtility/interfaces/servicelabs.zip.files.input.interface.js +3 -0
  145. package/dist/platformUtility/interfaces/servicelabs.zip.files.input.interface.js.map +1 -0
  146. package/dist/platformUtility/interfaces/unzip.file.interface.d.ts +6 -0
  147. package/dist/platformUtility/interfaces/unzip.file.interface.js +3 -0
  148. package/dist/platformUtility/interfaces/unzip.file.interface.js.map +1 -0
  149. package/dist/platformUtility/libraries/common.servicelabs.callback.controller.d.ts +11 -0
  150. package/dist/platformUtility/libraries/common.servicelabs.callback.controller.js +43 -0
  151. package/dist/platformUtility/libraries/common.servicelabs.callback.controller.js.map +1 -0
  152. package/dist/platformUtility/libraries/create.entity.constants.file.js +1 -34
  153. package/dist/platformUtility/libraries/create.entity.constants.file.js.map +1 -1
  154. package/dist/platformUtility/libraries/create.es6.classes.file.js +1 -34
  155. package/dist/platformUtility/libraries/create.es6.classes.file.js.map +1 -1
  156. package/dist/platformUtility/libraries/create.es6.jobs.file.js +1 -34
  157. package/dist/platformUtility/libraries/create.es6.jobs.file.js.map +1 -1
  158. package/dist/platformUtility/libraries/create.es6.service.file.js +1 -34
  159. package/dist/platformUtility/libraries/create.es6.service.file.js.map +1 -1
  160. package/dist/platformUtility/libraries/create.index.file.js +1 -34
  161. package/dist/platformUtility/libraries/create.index.file.js.map +1 -1
  162. package/dist/platformUtility/libraries/file.system.utility.js +1 -34
  163. package/dist/platformUtility/libraries/file.system.utility.js.map +1 -1
  164. package/dist/platformUtility/libraries/index.d.ts +1 -0
  165. package/dist/platformUtility/libraries/index.js +1 -0
  166. package/dist/platformUtility/libraries/index.js.map +1 -1
  167. package/dist/platformUtility/libraries/process.common.mail.js +4 -7
  168. package/dist/platformUtility/libraries/process.common.mail.js.map +1 -1
  169. package/dist/platformUtility/libraries/process.kaleyra.sms.d.ts +1 -0
  170. package/dist/platformUtility/libraries/process.kaleyra.sms.js +11 -37
  171. package/dist/platformUtility/libraries/process.kaleyra.sms.js.map +1 -1
  172. package/dist/platformUtility/libraries/process.smtp.mail.js +1 -34
  173. package/dist/platformUtility/libraries/process.smtp.mail.js.map +1 -1
  174. package/dist/platformUtility/libraries/sentry.bootstrap.js +5 -5
  175. package/dist/platformUtility/libraries/sentry.bootstrap.js.map +1 -1
  176. package/dist/platformUtility/libraries/sentry.context.d.ts +1 -1
  177. package/dist/platformUtility/libraries/sentry.context.js +1 -2
  178. package/dist/platformUtility/libraries/sentry.context.js.map +1 -1
  179. package/dist/platformUtility/middlewares/trim.pipe.js +13 -12
  180. package/dist/platformUtility/middlewares/trim.pipe.js.map +1 -1
  181. package/dist/platformUtility/platform.utility.module.js +9 -5
  182. package/dist/platformUtility/platform.utility.module.js.map +1 -1
  183. package/dist/platformUtility/services/aws.client.factory.js +3 -2
  184. package/dist/platformUtility/services/aws.client.factory.js.map +1 -1
  185. package/dist/platformUtility/services/aws.config.service.js +3 -2
  186. package/dist/platformUtility/services/aws.config.service.js.map +1 -1
  187. package/dist/platformUtility/services/cache.service.js +4 -2
  188. package/dist/platformUtility/services/cache.service.js.map +1 -1
  189. package/dist/platformUtility/services/dynamo.service.js +4 -3
  190. package/dist/platformUtility/services/dynamo.service.js.map +1 -1
  191. package/dist/platformUtility/services/index.d.ts +2 -0
  192. package/dist/platformUtility/services/index.js +2 -0
  193. package/dist/platformUtility/services/index.js.map +1 -1
  194. package/dist/platformUtility/services/local.property.service.js +1 -4
  195. package/dist/platformUtility/services/local.property.service.js.map +1 -1
  196. package/dist/platformUtility/services/maintenance.service.js +2 -35
  197. package/dist/platformUtility/services/maintenance.service.js.map +1 -1
  198. package/dist/platformUtility/services/pdf.service.d.ts +4 -1
  199. package/dist/platformUtility/services/pdf.service.js +16 -2
  200. package/dist/platformUtility/services/pdf.service.js.map +1 -1
  201. package/dist/platformUtility/services/queue.service.d.ts +5 -3
  202. package/dist/platformUtility/services/queue.service.js +14 -3
  203. package/dist/platformUtility/services/queue.service.js.map +1 -1
  204. package/dist/platformUtility/services/redis.service.d.ts +1 -0
  205. package/dist/platformUtility/services/redis.service.js +10 -8
  206. package/dist/platformUtility/services/redis.service.js.map +1 -1
  207. package/dist/platformUtility/services/remote.request.service.js +1 -4
  208. package/dist/platformUtility/services/remote.request.service.js.map +1 -1
  209. package/dist/platformUtility/services/s3.service.js +1 -34
  210. package/dist/platformUtility/services/s3.service.js.map +1 -1
  211. package/dist/platformUtility/services/servicelabs.dev.service.d.ts +49 -0
  212. package/dist/platformUtility/services/servicelabs.dev.service.js +181 -0
  213. package/dist/platformUtility/services/servicelabs.dev.service.js.map +1 -0
  214. package/dist/platformUtility/services/servicelabs.utility.service.d.ts +51 -0
  215. package/dist/platformUtility/services/servicelabs.utility.service.js +193 -0
  216. package/dist/platformUtility/services/servicelabs.utility.service.js.map +1 -0
  217. package/dist/platformUtility/services/shutdown.service.js.map +1 -1
  218. package/dist/platformUtility/services/split.pdf.service.d.ts +3 -1
  219. package/dist/platformUtility/services/split.pdf.service.js +9 -2
  220. package/dist/platformUtility/services/split.pdf.service.js.map +1 -1
  221. package/dist/platformUtility/services/zip.service.d.ts +7 -2
  222. package/dist/platformUtility/services/zip.service.js +41 -5
  223. package/dist/platformUtility/services/zip.service.js.map +1 -1
  224. package/dist/security/security.module.js +1 -4
  225. package/dist/security/security.module.js.map +1 -1
  226. package/dist/system/constants/index.d.ts +1 -0
  227. package/dist/system/constants/index.js +1 -0
  228. package/dist/system/constants/index.js.map +1 -1
  229. package/dist/system/constants/upload.session.constants.d.ts +21 -0
  230. package/dist/system/constants/upload.session.constants.js +25 -0
  231. package/dist/system/constants/upload.session.constants.js.map +1 -0
  232. package/dist/system/controllers/upload.controller.js +2 -2
  233. package/dist/system/controllers/upload.controller.js.map +1 -1
  234. package/dist/system/dtos/direct.upload.file.dto.d.ts +5 -0
  235. package/dist/system/dtos/direct.upload.file.dto.js +37 -0
  236. package/dist/system/dtos/direct.upload.file.dto.js.map +1 -0
  237. package/dist/system/dtos/direct.upload.initiate.dto.d.ts +4 -0
  238. package/dist/system/dtos/direct.upload.initiate.dto.js +27 -0
  239. package/dist/system/dtos/direct.upload.initiate.dto.js.map +1 -0
  240. package/dist/system/dtos/direct.upload.options.dto.d.ts +8 -0
  241. package/dist/system/dtos/direct.upload.options.dto.js +54 -0
  242. package/dist/system/dtos/direct.upload.options.dto.js.map +1 -0
  243. package/dist/system/dtos/direct.upload.parts.dto.d.ts +3 -0
  244. package/dist/system/dtos/direct.upload.parts.dto.js +26 -0
  245. package/dist/system/dtos/direct.upload.parts.dto.js.map +1 -0
  246. package/dist/system/dtos/index.d.ts +5 -0
  247. package/dist/system/dtos/index.js +5 -0
  248. package/dist/system/dtos/index.js.map +1 -1
  249. package/dist/system/dtos/upload.session.attributes.dto.d.ts +5 -0
  250. package/dist/system/dtos/upload.session.attributes.dto.js +7 -0
  251. package/dist/system/dtos/upload.session.attributes.dto.js.map +1 -0
  252. package/dist/system/entities/index.d.ts +1 -0
  253. package/dist/system/entities/index.js +1 -0
  254. package/dist/system/entities/index.js.map +1 -1
  255. package/dist/system/entities/upload.session.entity.d.ts +20 -0
  256. package/dist/system/entities/upload.session.entity.js +86 -0
  257. package/dist/system/entities/upload.session.entity.js.map +1 -0
  258. package/dist/system/es6.classes.d.ts +34 -5
  259. package/dist/system/es6.classes.js +20 -1
  260. package/dist/system/es6.classes.js.map +1 -1
  261. package/dist/system/interfaces/direct.upload.part.url.interface.d.ts +6 -0
  262. package/dist/system/interfaces/direct.upload.part.url.interface.js +3 -0
  263. package/dist/system/interfaces/direct.upload.part.url.interface.js.map +1 -0
  264. package/dist/system/interfaces/direct.upload.result.interface.d.ts +10 -0
  265. package/dist/system/interfaces/direct.upload.result.interface.js +3 -0
  266. package/dist/system/interfaces/direct.upload.result.interface.js.map +1 -0
  267. package/dist/system/interfaces/direct.upload.session.interface.d.ts +16 -0
  268. package/dist/system/interfaces/direct.upload.session.interface.js +3 -0
  269. package/dist/system/interfaces/direct.upload.session.interface.js.map +1 -0
  270. package/dist/system/interfaces/direct.upload.status.interface.d.ts +12 -0
  271. package/dist/system/interfaces/direct.upload.status.interface.js +3 -0
  272. package/dist/system/interfaces/direct.upload.status.interface.js.map +1 -0
  273. package/dist/system/interfaces/index.d.ts +5 -0
  274. package/dist/system/interfaces/index.js +5 -0
  275. package/dist/system/interfaces/index.js.map +1 -1
  276. package/dist/system/interfaces/uploaded.part.interface.d.ts +5 -0
  277. package/dist/system/interfaces/uploaded.part.interface.js +3 -0
  278. package/dist/system/interfaces/uploaded.part.interface.js.map +1 -0
  279. package/dist/system/jobs/expire.upload.session.job.d.ts +13 -0
  280. package/dist/system/jobs/expire.upload.session.job.js +38 -0
  281. package/dist/system/jobs/expire.upload.session.job.js.map +1 -0
  282. package/dist/system/jobs/index.d.ts +1 -0
  283. package/dist/system/jobs/index.js +1 -0
  284. package/dist/system/jobs/index.js.map +1 -1
  285. package/dist/system/jobs/orphan.sweeper.job.js +3 -2
  286. package/dist/system/jobs/orphan.sweeper.job.js.map +1 -1
  287. package/dist/system/jobs/set.event.queue.job.js +3 -2
  288. package/dist/system/jobs/set.event.queue.job.js.map +1 -1
  289. package/dist/system/jobs/sqs.polling.job.js.map +1 -1
  290. package/dist/system/libraries/code.evaluator.d.ts +13 -0
  291. package/dist/system/libraries/code.evaluator.js +41 -1
  292. package/dist/system/libraries/code.evaluator.js.map +1 -1
  293. package/dist/system/libraries/common.direct.upload.controller.d.ts +19 -0
  294. package/dist/system/libraries/common.direct.upload.controller.js +84 -0
  295. package/dist/system/libraries/common.direct.upload.controller.js.map +1 -0
  296. package/dist/system/libraries/common.storage.service.d.ts +13 -0
  297. package/dist/system/libraries/common.storage.service.js +78 -1
  298. package/dist/system/libraries/common.storage.service.js.map +1 -1
  299. package/dist/system/libraries/crypt.re.encrypt.processor.js +2 -2
  300. package/dist/system/libraries/crypt.re.encrypt.processor.js.map +1 -1
  301. package/dist/system/libraries/file.type.detector.d.ts +2 -0
  302. package/dist/system/libraries/file.type.detector.js +88 -75
  303. package/dist/system/libraries/file.type.detector.js.map +1 -1
  304. package/dist/system/libraries/generate.downloadable.report.file.js +2 -35
  305. package/dist/system/libraries/generate.downloadable.report.file.js.map +1 -1
  306. package/dist/system/libraries/index.d.ts +1 -0
  307. package/dist/system/libraries/index.js +1 -0
  308. package/dist/system/libraries/index.js.map +1 -1
  309. package/dist/system/libraries/model.sync.js +2 -2
  310. package/dist/system/libraries/model.sync.js.map +1 -1
  311. package/dist/system/libraries/sandboxed.script.executor.js +17 -17
  312. package/dist/system/libraries/sandboxed.script.executor.js.map +1 -1
  313. package/dist/system/services/aws.s3.service.js +6 -5
  314. package/dist/system/services/aws.s3.service.js.map +1 -1
  315. package/dist/system/services/base.service.js.map +1 -1
  316. package/dist/system/services/direct.upload.service.d.ts +41 -0
  317. package/dist/system/services/direct.upload.service.js +385 -0
  318. package/dist/system/services/direct.upload.service.js.map +1 -0
  319. package/dist/system/services/document.service.js +2 -38
  320. package/dist/system/services/document.service.js.map +1 -1
  321. package/dist/system/services/event.detail.service.js.map +1 -1
  322. package/dist/system/services/event.queue.service.js +3 -2
  323. package/dist/system/services/event.queue.service.js.map +1 -1
  324. package/dist/system/services/index.d.ts +1 -0
  325. package/dist/system/services/index.js +1 -0
  326. package/dist/system/services/index.js.map +1 -1
  327. package/dist/system/services/storage.service.d.ts +20 -0
  328. package/dist/system/services/storage.service.js +62 -7
  329. package/dist/system/services/storage.service.js.map +1 -1
  330. package/dist/system/services/upload.service.js +3 -5
  331. package/dist/system/services/upload.service.js.map +1 -1
  332. package/dist/system/system.module.js +1 -4
  333. package/dist/system/system.module.js.map +1 -1
  334. package/dist/worker.d.ts +1 -1
  335. package/dist/worker.js +2 -1
  336. package/dist/worker.js.map +1 -1
  337. package/docs/sentry-reporting.md +26 -20
  338. package/docs/servicelabs-utilities.md +174 -0
  339. package/docs/upgrade-4.0.md +215 -0
  340. package/package.json +70 -74
@@ -22,6 +22,7 @@ __exportStar(require("./client.script.service"), exports);
22
22
  __exportStar(require("./cloudflare.r2.service"), exports);
23
23
  __exportStar(require("./column.service"), exports);
24
24
  __exportStar(require("./comment.service"), exports);
25
+ __exportStar(require("./direct.upload.service"), exports);
25
26
  __exportStar(require("./document.service"), exports);
26
27
  __exportStar(require("./event.detail.service"), exports);
27
28
  __exportStar(require("./event.queue.service"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/system/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AAAA,iDAA+B;AAAA,0DAAwC;AAAA,8DAA4C;AAAA,0DAAwC;AAAA,0DAAwC;AAAA,mDAAiC;AAAA,oDAAkC;AAAA,qDAAmC;AAAA,yDAAuC;AAAA,wDAAsC;AAAA,8DAA4C;AAAA,iDAA+B;AAAA,oEAAkD;AAAA,iDAA+B;AAAA,4DAA0C;AAAA,iDAA+B;AAAA,8DAA4C;AAAA,kDAAgC;AAAA,uDAAqC;AAAA,qDAAmC;AAAA,mDAAiC;AAAA,4DAA0C;AAAA,0DAAwC;AAAA,oDAAkC;AAAA,sDAAoC;AAAA,mDAAiC;AAAA,4DAAyC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/system/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AAAA,iDAA+B;AAAA,0DAAwC;AAAA,8DAA4C;AAAA,0DAAwC;AAAA,0DAAwC;AAAA,mDAAiC;AAAA,oDAAkC;AAAA,0DAAwC;AAAA,qDAAmC;AAAA,yDAAuC;AAAA,wDAAsC;AAAA,8DAA4C;AAAA,iDAA+B;AAAA,oEAAkD;AAAA,iDAA+B;AAAA,4DAA0C;AAAA,iDAA+B;AAAA,8DAA4C;AAAA,kDAAgC;AAAA,uDAAqC;AAAA,qDAAmC;AAAA,mDAAiC;AAAA,4DAA0C;AAAA,0DAAwC;AAAA,oDAAkC;AAAA,sDAAoC;AAAA,mDAAiC;AAAA,4DAAyC"}
@@ -7,6 +7,7 @@ import { ObjectRefInterface } from '../interfaces/object.ref.interface';
7
7
  import { StorageObjectInterface } from '../interfaces/storage.object.interface';
8
8
  import { StorageObjectMetadataInterface } from '../interfaces/storage.object.metadata.interface';
9
9
  import { StorageRefInterface } from '../interfaces/storage.ref.interface';
10
+ import { UploadedPartInterface } from '../interfaces/uploaded.part.interface';
10
11
  import { StorageUploadOptionsDto } from '../dtos/storage.upload.options.dto';
11
12
  import { AwsS3Service } from './aws.s3.service';
12
13
  import { CloudflareR2Service } from './cloudflare.r2.service';
@@ -33,6 +34,7 @@ export declare class StorageService extends CommonService {
33
34
  key: string;
34
35
  }>;
35
36
  put(input: StoragePutInput, options?: StorageUploadOptionsDto): Promise<StorageObjectInterface>;
37
+ private statUploaded;
36
38
  get(ref: StorageRefInterface): Promise<{
37
39
  body: Buffer;
38
40
  metadata: StorageObjectMetadataInterface;
@@ -54,7 +56,24 @@ export declare class StorageService extends CommonService {
54
56
  getSignedUploadUrl(ref: StorageRefInterface, ttlSeconds: number, options?: {
55
57
  contentType?: string;
56
58
  contentLength?: number;
59
+ acl?: string;
57
60
  }): Promise<string>;
61
+ createMultipartUpload(ref: StorageRefInterface, options?: {
62
+ contentType?: string;
63
+ acl?: string;
64
+ metadata?: Record<string, string>;
65
+ }): Promise<string>;
66
+ getSignedPartUploadUrl(ref: StorageRefInterface, uploadId: string, partNumber: number, ttlSeconds: number): Promise<string>;
67
+ listParts(ref: StorageRefInterface, uploadId: string): Promise<UploadedPartInterface[]>;
68
+ completeMultipartUpload(ref: StorageRefInterface, uploadId: string, parts: UploadedPartInterface[]): Promise<void>;
69
+ abortMultipartUpload(ref: StorageRefInterface, uploadId: string): Promise<void>;
70
+ getRange(ref: StorageRefInterface, start: number, end: number): Promise<Buffer>;
71
+ getUploadTarget(engine?: string): Promise<{
72
+ engine: string;
73
+ bucket: string;
74
+ }>;
75
+ buildObjectKey(originalname: string, folder?: string): string;
76
+ tryPublicUrl(ref: ObjectRefInterface): Promise<string | null>;
58
77
  publicUrl(ref: ObjectRefInterface): string;
59
78
  parseUrl(url: string): {
60
79
  engineId: string;
@@ -68,6 +87,7 @@ export declare class StorageService extends CommonService {
68
87
  nextToken?: string;
69
88
  }>;
70
89
  private applyParamIfSupported;
90
+ private withSupportedAcl;
71
91
  private copyCrossEngine;
72
92
  private resolveBody;
73
93
  private buildFileName;
@@ -8,14 +8,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
11
  var StorageService_1;
15
12
  Object.defineProperty(exports, "__esModule", { value: true });
16
13
  exports.StorageService = void 0;
17
14
  const common_1 = require("@nestjs/common");
18
- const axios_1 = __importDefault(require("axios"));
15
+ const axios_1 = require("axios");
19
16
  const fs_1 = require("fs");
20
17
  const common_service_1 = require("../../common/libraries/common.service");
21
18
  const operation_exception_1 = require("../../common/exceptions/operation.exception");
@@ -105,14 +102,25 @@ let StorageService = StorageService_1 = class StorageService extends common_serv
105
102
  this.logger.warn(`Feature 'tagging' is not supported on engine '${adapter.engineId}'; stripping.`);
106
103
  }
107
104
  const url = await adapter.upload(params);
105
+ const stored = await this.statUploaded(adapter, params.Bucket, params.Key);
108
106
  return {
109
107
  url,
110
108
  bucket: params.Bucket,
111
109
  key: params.Key,
112
- size: Buffer.isBuffer(body) ? body.length : input.size,
113
- contentType: params.ContentType,
110
+ etag: stored?.etag,
111
+ size: stored ? stored.size : Buffer.isBuffer(body) ? body.length : input.size,
112
+ contentType: stored ? stored.contentType : params.ContentType,
114
113
  };
115
114
  }
115
+ async statUploaded(adapter, bucket, key) {
116
+ try {
117
+ return await adapter.head(bucket, key);
118
+ }
119
+ catch (err) {
120
+ this.logger.warn(`HEAD after upload failed for ${adapter.engineId}:${bucket}/${key}; using request values. ${err?.message ?? err}`);
121
+ return null;
122
+ }
123
+ }
116
124
  async get(ref) {
117
125
  const { adapter, bucket, key } = await this.resolve(ref);
118
126
  const res = await adapter.getObject(bucket, key);
@@ -235,7 +243,47 @@ let StorageService = StorageService_1 = class StorageService extends common_serv
235
243
  }
236
244
  async getSignedUploadUrl(ref, ttlSeconds, options) {
237
245
  const { adapter, bucket, key } = await this.resolve(ref);
238
- return adapter.getSignedUploadUrl(bucket, key, ttlSeconds, options);
246
+ return adapter.getSignedUploadUrl(bucket, key, ttlSeconds, this.withSupportedAcl(adapter, options));
247
+ }
248
+ async createMultipartUpload(ref, options) {
249
+ const { adapter, bucket, key } = await this.resolve(ref);
250
+ return adapter.createMultipartUpload(bucket, key, this.withSupportedAcl(adapter, options));
251
+ }
252
+ async getSignedPartUploadUrl(ref, uploadId, partNumber, ttlSeconds) {
253
+ const { adapter, bucket, key } = await this.resolve(ref);
254
+ return adapter.getSignedPartUploadUrl(bucket, key, uploadId, partNumber, ttlSeconds);
255
+ }
256
+ async listParts(ref, uploadId) {
257
+ const { adapter, bucket, key } = await this.resolve(ref);
258
+ return adapter.listParts(bucket, key, uploadId);
259
+ }
260
+ async completeMultipartUpload(ref, uploadId, parts) {
261
+ const { adapter, bucket, key } = await this.resolve(ref);
262
+ await adapter.completeMultipartUpload(bucket, key, uploadId, parts);
263
+ }
264
+ async abortMultipartUpload(ref, uploadId) {
265
+ const { adapter, bucket, key } = await this.resolve(ref);
266
+ await adapter.abortMultipartUpload(bucket, key, uploadId);
267
+ }
268
+ async getRange(ref, start, end) {
269
+ const { adapter, bucket, key } = await this.resolve(ref);
270
+ return adapter.getObjectRange(bucket, key, start, end);
271
+ }
272
+ async getUploadTarget(engine) {
273
+ const { adapter, bucket } = await this.resolve({ key: '', engine });
274
+ return { engine: adapter.engineId, bucket };
275
+ }
276
+ buildObjectKey(originalname, folder = 'public') {
277
+ return `${folder}/${this.buildFileName({ originalname }, {})}`;
278
+ }
279
+ async tryPublicUrl(ref) {
280
+ try {
281
+ const { adapter, bucket, key } = await this.resolve(ref);
282
+ return adapter.publicUrl(bucket, key);
283
+ }
284
+ catch {
285
+ return null;
286
+ }
239
287
  }
240
288
  publicUrl(ref) {
241
289
  const engineId = this.normaliseEngineId(ref.engine);
@@ -295,6 +343,13 @@ let StorageService = StorageService_1 = class StorageService extends common_serv
295
343
  this.logger.warn(`Feature '${feature}' is not supported on engine '${adapter.engineId}'; stripping value=${String(value)}.`);
296
344
  }
297
345
  }
346
+ withSupportedAcl(adapter, options) {
347
+ if (!options?.acl || adapter.featureSupport.acl)
348
+ return options;
349
+ this.logger.warn(`Feature 'acl' is not supported on engine '${adapter.engineId}'; stripping value=${options.acl}.`);
350
+ const { acl: _acl, ...rest } = options;
351
+ return rest;
352
+ }
298
353
  async copyCrossEngine(src, dst) {
299
354
  this.logger.log(`Cross-engine ${src.adapter.engineId}→${dst.adapter.engineId} ${src.bucket}/${src.key} → ${dst.bucket}/${dst.key}`);
300
355
  const stream = await src.adapter.getObjectStream(src.bucket, src.key);
@@ -1 +1 @@
1
- {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../../src/system/services/storage.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storage.service.js","sourceRoot":"","sources":["../../../src/system/services/storage.service.ts"],"names":[],"mappings":"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"}
@@ -8,13 +8,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
- var __importDefault = (this && this.__importDefault) || function (mod) {
12
- return (mod && mod.__esModule) ? mod : { "default": mod };
13
- };
14
11
  Object.defineProperty(exports, "__esModule", { value: true });
15
12
  exports.UploadService = void 0;
16
13
  const common_1 = require("@nestjs/common");
17
- const axios_1 = __importDefault(require("axios"));
14
+ const axios_1 = require("axios");
18
15
  const fs_1 = require("fs");
19
16
  const common_service_1 = require("../../common/libraries/common.service");
20
17
  const public_exposed_decorator_1 = require("../../common/decorators/public.exposed.decorator");
@@ -35,11 +32,12 @@ let UploadService = class UploadService extends common_service_1.CommonService {
35
32
  return result.url;
36
33
  }
37
34
  async uploadWithStats(file, options = {}) {
35
+ const contentType = options.contentType ?? options.mime_type ?? file_type_detector_1.FileTypeDetector.detectByExtension(file.originalname ?? file.url);
38
36
  const result = await this.storageService.put({
39
37
  buffer: file.buffer,
40
38
  url: file.url,
41
39
  originalname: file.originalname,
42
- }, options);
40
+ }, { ...options, contentType });
43
41
  return { url: result.url, size: result.size ?? 0, contentType: result.contentType ?? '' };
44
42
  }
45
43
  async uploadFile(params) {
@@ -1 +1 @@
1
- {"version":3,"file":"upload.service.js","sourceRoot":"","sources":["../../../src/system/services/upload.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upload.service.js","sourceRoot":"","sources":["../../../src/system/services/upload.service.ts"],"names":[],"mappings":"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"}
@@ -5,15 +5,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var __importDefault = (this && this.__importDefault) || function (mod) {
9
- return (mod && mod.__esModule) ? mod : { "default": mod };
10
- };
11
8
  Object.defineProperty(exports, "__esModule", { value: true });
12
9
  exports.SystemModule = void 0;
13
10
  const common_1 = require("@nestjs/common");
14
11
  const auth_module_1 = require("../auth/auth.module");
15
12
  const platform_utility_module_1 = require("../platformUtility/platform.utility.module");
16
- const es6_classes_1 = __importDefault(require("./es6.classes"));
13
+ const es6_classes_1 = require("./es6.classes");
17
14
  const typeorm_1 = require("@nestjs/typeorm");
18
15
  let SystemModule = class SystemModule {
19
16
  };
@@ -1 +1 @@
1
- {"version":3,"file":"system.module.js","sourceRoot":"","sources":["../../src/system/system.module.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAoD;AACpD,qDAAiD;AACjD,wFAAmF;AACnF,gEAAuC;AACvC,6CAAgD;AAQzC,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,oCAAY;uBAAZ,YAAY;IANxB,IAAA,eAAM,EAAC;QACJ,OAAO,EAAE,CAAC,uBAAa,CAAC,UAAU,CAAC,qBAAU,CAAC,QAAQ,CAAC,EAAE,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC,EAAE,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,+CAAqB,CAAC,CAAC;QAC/H,WAAW,EAAE,qBAAU,CAAC,WAAW;QACnC,SAAS,EAAE,CAAC,GAAG,qBAAU,CAAC,QAAQ,EAAE,GAAG,qBAAU,CAAC,WAAW,EAAE,GAAG,qBAAU,CAAC,IAAI,CAAC;QAClF,OAAO,EAAE,CAAC,GAAG,qBAAU,CAAC,QAAQ,EAAE,GAAG,qBAAU,CAAC,IAAI,CAAC;KACxD,CAAC;GACW,YAAY,CAAG"}
1
+ {"version":3,"file":"system.module.js","sourceRoot":"","sources":["../../src/system/system.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAoD;AACpD,qDAAiD;AACjD,wFAAmF;AACnF,+CAAuC;AACvC,6CAAgD;AAQzC,IAAM,YAAY,GAAlB,MAAM,YAAY;CAAG,CAAA;AAAf,oCAAY;uBAAZ,YAAY;IANxB,IAAA,eAAM,EAAC;QACJ,OAAO,EAAE,CAAC,uBAAa,CAAC,UAAU,CAAC,qBAAU,CAAC,QAAQ,CAAC,EAAE,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,wBAAU,CAAC,EAAE,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,+CAAqB,CAAC,CAAC;QAC/H,WAAW,EAAE,qBAAU,CAAC,WAAW;QACnC,SAAS,EAAE,CAAC,GAAG,qBAAU,CAAC,QAAQ,EAAE,GAAG,qBAAU,CAAC,WAAW,EAAE,GAAG,qBAAU,CAAC,IAAI,CAAC;QAClF,OAAO,EAAE,CAAC,GAAG,qBAAU,CAAC,QAAQ,EAAE,GAAG,qBAAU,CAAC,IAAI,CAAC;KACxD,CAAC;GACW,YAAY,CAAG"}
package/dist/worker.d.ts CHANGED
@@ -1 +1 @@
1
- export {};
1
+ import './instrument';
package/dist/worker.js CHANGED
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ require("./instrument");
3
4
  const core_1 = require("@nestjs/core");
4
5
  const app_module_1 = require("./app.module");
5
6
  const queue_service_1 = require("./platformUtility/services/queue.service");
@@ -16,7 +17,7 @@ async function bootstrap() {
16
17
  async function assertRedisReachable(queueService) {
17
18
  try {
18
19
  const queue = queueService.getQueueInstance();
19
- const client = await queue.client;
20
+ const client = await queue.getBackend().client;
20
21
  const info = await Promise.race([
21
22
  client.info(),
22
23
  new Promise((_, reject) => setTimeout(() => reject(new Error(`timed out after ${REDIS_PING_TIMEOUT_MS}ms`)), REDIS_PING_TIMEOUT_MS)),
@@ -1 +1 @@
1
- {"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":";;AAAA,uCAA2C;AAC3C,6CAAyC;AACzC,4EAAwE;AAOxE,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAEnC,KAAK,UAAU,SAAS;IACpB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,MAAM,CAAC;IAC1D,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,uCAAuC,QAAQ,EAAE,CAAC,CAAC;IAEtE,MAAM,GAAG,GAAG,MAAM,kBAAW,CAAC,MAAM,CAAC,sBAAS,CAAC,CAAC;IAEhD,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAC1B,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAQjB,MAAM,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,4BAAY,CAAC,CAAC,CAAC;IAElD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AACvC,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,YAA0B;IAC1D,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,YAAY,CAAC,gBAAgB,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC;QAKlC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;YAC5B,MAAM,CAAC,IAAI,EAAE;YACb,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAC7B,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,qBAAqB,IAAI,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAC3G;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjE,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,yCAAyC,OAAO,EAAE,CAAC,CAAC;QACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC;AAED,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACxB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;IACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"worker.js","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":";;AAEA,wBAAsB;AACtB,uCAA2C;AAC3C,6CAAyC;AACzC,4EAAwE;AAOxE,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAEnC,KAAK,UAAU,SAAS;IACpB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,MAAM,CAAC;IAC1D,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,uCAAuC,QAAQ,EAAE,CAAC,CAAC;IAEtE,MAAM,GAAG,GAAG,MAAM,kBAAW,CAAC,MAAM,CAAC,sBAAS,CAAC,CAAC;IAEhD,GAAG,CAAC,mBAAmB,EAAE,CAAC;IAC1B,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;IAQjB,MAAM,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,4BAAY,CAAC,CAAC,CAAC;IAElD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AACvC,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,YAA0B;IAC1D,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,YAAY,CAAC,gBAAgB,EAAE,CAAC;QAE9C,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC;QAI/C,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;YAC5B,MAAM,CAAC,IAAI,EAAE;YACb,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAC7B,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,qBAAqB,IAAI,CAAC,CAAC,EAAE,qBAAqB,CAAC,CAC3G;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjE,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,yCAAyC,OAAO,EAAE,CAAC,CAAC;QACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC;AAED,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACxB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;IACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC,CAAC,CAAC"}
@@ -5,16 +5,18 @@
5
5
  package's security defaults:
6
6
 
7
7
  - `LogRedactor` on every outbound event (`beforeSend`)
8
- - `includeLocalVariables: false`, `sendDefaultPii: false`
9
- - Redacted request context and auth user (`id` + `email` only)
8
+ - `includeLocalVariables: false`, and an explicit restrictive `dataCollection` (Sentry v11 replaced
9
+ `sendDefaultPii`; its default now collects cookies, bodies, DB query data and queue payloads — the
10
+ package pins the old `sendDefaultPii: false` baseline instead)
11
+ - Auth user (`id` + `email` only) on the request scope
10
12
  - HTTP **5xx** reporting (4xx `HttpException` values stay out of Sentry)
11
13
  - **No reporting from queue worker processes** (`worker.ts` entrypoint) unless opted in
12
14
  with `SENTRY_ENABLE_WORKER=true` (see §5)
13
15
  - Quiet one-line **ERROR** logs in local/dev (full stacks still go to Sentry)
14
16
 
15
- Peer dependencies `@sentry/nestjs`, `@sentry/node`, and `@sentry/core` are bundled
16
- with this package — you do not install them separately unless you call the SDK
17
- directly.
17
+ `@sentry/nestjs` (v11) is a dependency of this package and pins its own `@sentry/node` /
18
+ `@sentry/core` — do not add separately-ranged `@sentry/*` packages to your app, or a second
19
+ SDK copy can end up with its own (uninitialised) client.
18
20
 
19
21
  ## 1. Environment variables
20
22
 
@@ -33,19 +35,14 @@ via `worker.ts` / `dist/worker.js` unless that process also has `SENTRY_ENABLE_W
33
35
 
34
36
  ## 2. Early init (`instrument.ts`)
35
37
 
36
- Sentry must initialize **before** Nest bootstraps. Create `src/instrument.ts` in your
37
- application:
38
+ Sentry must initialize **before** `@nestjs/*`, `express`, `pg`, `ioredis` and `bullmq` are
39
+ loaded — its instrumentation only applies to modules loaded after `init()`, and v11 no
40
+ longer warns when that order is wrong.
38
41
 
39
- ```typescript
40
- import { initSentry } from '@servicelabsco/nestjs-utility-services';
41
-
42
- initSentry();
43
- ```
44
-
45
- Import it as the **first line** of `main.ts`:
42
+ Import the package's side-effect-only instrument file as the **first line** of `main.ts`:
46
43
 
47
44
  ```typescript
48
- import './instrument';
45
+ import '@servicelabsco/nestjs-utility-services/dist/instrument';
49
46
 
50
47
  import { NestFactory } from '@nestjs/core';
51
48
  import { AppModule } from './app.module';
@@ -57,7 +54,15 @@ async function bootstrap() {
57
54
  bootstrap();
58
55
  ```
59
56
 
60
- Import `./instrument` as the first line of `worker.ts` too. `initSentry()` is a
57
+ Do **not** use `import { initSentry } from '@servicelabsco/nestjs-utility-services'` for
58
+ this: the package barrel loads every module (and with them Nest, TypeORM/pg, ioredis,
59
+ BullMQ) *before* `initSentry()` runs, so none of those get instrumented. `dist/instrument`
60
+ loads only `dotenv` and the Sentry SDK.
61
+
62
+ Alternatively preload it: `node --import @servicelabsco/nestjs-utility-services/dist/instrument.js dist/main.js`.
63
+ Never use `--require` — Sentry v11 does not support it.
64
+
65
+ Add the same import as the first line of `worker.ts` too. `initSentry()` is a
61
66
  no-op on the worker entrypoint unless `SENTRY_ENABLE_WORKER=true`, so importing it
62
67
  is safe either way and lets each deployment decide through env alone.
63
68
 
@@ -94,7 +99,7 @@ runs without Sentry.
94
99
 
95
100
  1. `SentryModule.forRoot()` — official Nest SDK integration + HTTP transaction naming
96
101
  2. `SentryReportingFilter` — global exception filter (must stay ahead of custom filters)
97
- 3. `SentryUserScopeInterceptor` — per-request user + redacted request on the Sentry scope
102
+ 3. `SentryUserScopeInterceptor` — per-request auth user on the Sentry scope
98
103
 
99
104
  If you define your own global `APP_FILTER`, register `SentryReportingModule` **before**
100
105
  any custom exception filters, or compose filters explicitly so Sentry still runs first.
@@ -102,7 +107,7 @@ any custom exception filters, or compose filters explicitly so Sentry still runs
102
107
  ## 4. Manual `captureException`
103
108
 
104
109
  Prefer the package's lazy `SentrySdk` over importing `@sentry/*` directly. A top-level
105
- `import * as Sentry from '@sentry/node'` loads the SDK (~14 MB heap, ~1,300 modules) into every
110
+ `import * as Sentry from '@sentry/nestjs'` loads the SDK (~14 MB heap, ~1,300 modules) into every
106
111
  process, including those where Sentry is off; `SentrySdk` only loads it when Sentry is enabled
107
112
  for the process and is a no-op otherwise. Events pass through the same `beforeSend` redaction
108
113
  configured in `initSentry()`.
@@ -114,7 +119,8 @@ SentrySdk.captureException(error, { tags: { service: 'MyService' } });
114
119
  ```
115
120
 
116
121
  On HTTP requests, `SentryUserScopeInterceptor` already attaches the authenticated user
117
- (from `Auth.user()`) and a redacted request snapshot to the isolation scope.
122
+ (from `Auth.user()`) to the isolation scope; request data comes from the SDK itself,
123
+ filtered by `dataCollection` and then `beforeSend` redaction.
118
124
 
119
125
  ## 5. Workers
120
126
 
@@ -152,5 +158,5 @@ for your CI/CD pipeline.
152
158
  The standalone dev app in this repository follows the same pattern:
153
159
 
154
160
  - `src/instrument.ts` → `initSentry()`
155
- - `src/main.ts` → `import './instrument'` first
161
+ - `src/main.ts` and `src/worker.ts` → `import './instrument'` first
156
162
  - `src/app.module.ts` → `SentryReportingModule.forRoot()`
@@ -0,0 +1,174 @@
1
+ # ServiceLabs utilities
2
+
3
+ `ServicelabsUtilityService` calls the [ServiceLabs utilities API](https://servicelabs.dev/docs/):
4
+ HTML → PDF, split PDF, zip, unzip and XLS → XLSX behind one API key. Every utility can run **sync**
5
+ (wait for the result) or **async** (get a job id back, then a signed callback or a poll).
6
+
7
+ ServiceLabs keeps its output files for 30 days only, so nu copies them into the app's default
8
+ storage engine (`STORAGE_ENGINE`: S3 or R2) and hands back links to that copy.
9
+
10
+ ## Setup
11
+
12
+ | Property | Value |
13
+ | --- | --- |
14
+ | `servicelabs.api.key` | The service's API key (`du_live_…`), from the ServiceLabs console. One key per service. |
15
+ | `servicelabs.webhook.secret` | The key's callback signing secret (`whsec_…`). Needed only for async callbacks. |
16
+ | `servicelabs.api.url` | Optional. Defaults to `https://api.servicelabs.dev`. |
17
+
18
+ `PdfService.convert`, `SplitPdfService.split` and `ZipService.zip` / `unzip` switch to ServiceLabs as
19
+ soon as `servicelabs.api.key` is set. Their return shapes do not change; without the key they keep
20
+ calling the Lambda URLs. Set the key in one environment, check the output, then move the next one.
21
+
22
+ ## Sync
23
+
24
+ The helpers run the utility, wait for it, copy the output into storage and return the stored files.
25
+ Use them where the caller can wait: a typical PDF takes a few seconds, but the call can take minutes
26
+ on a large input (nu long-polls past ServiceLabs' 90 s sync budget).
27
+
28
+ ```ts
29
+ constructor(private readonly servicelabs: ServicelabsUtilityService) {}
30
+
31
+ const pdf = await this.servicelabs.htmlToPdf('https://…/invoice.html', { format: 'A4' });
32
+ // pdf: { url, bucket, key, size, contentType, name } — key: servicelabs/html-pdf/<date>/<job id>/<file>
33
+
34
+ const pages = await this.servicelabs.splitPdf('s3://finnoto-data/uploads/statement.pdf'); // [{ …, pageNumber }]
35
+ const zip = await this.servicelabs.zipFiles([{ url: 'https://…/a.pdf', fileName: 'invoices/a.pdf' }]);
36
+ const files = await this.servicelabs.unzipFiles('https://…/bundle.zip'); // [{ …, path }]
37
+ const xlsx = await this.servicelabs.xlsToXlsx('https://…/report.xls');
38
+ ```
39
+
40
+ Every helper takes run options (`metadata`, `idempotencyKey`, `waitTimeoutMs`, `source` for a
41
+ `RemoteRequestLogEntity` row) and store options (`folder`, default `servicelabs`; `visibility`, default
42
+ `public`; `engine`). A utility that fails throws `OperationException` with ServiceLabs' error code and
43
+ message, e.g. `upstream_rejected: Password-protected PDFs are not supported`.
44
+
45
+ ## Async
46
+
47
+ For batches, large inputs and anything a user is not waiting on. `create…Job` answers at once with the
48
+ queued job:
49
+
50
+ ```ts
51
+ const job = await this.servicelabs.createSplitPdfJob(url, {
52
+ callbackUrl: 'https://api.example.com/webhooks/servicelabs',
53
+ metadata: { statementId: statement.id },
54
+ idempotencyKey: `statement-${statement.id}`,
55
+ });
56
+ ```
57
+
58
+ `createHtmlPdfJob`, `createSplitPdfJob`, `createZipFilesJob`, `createUnzipFilesJob`,
59
+ `createXlsToXlsxJob`, or `createJob(slug, input, options)` for any utility.
60
+
61
+ ### Receiving the callback
62
+
63
+ Mount `CommonServicelabsCallbackController` on your own route. It verifies the Standard Webhooks
64
+ signature, answers `204` and calls `onJobFinished`:
65
+
66
+ ```ts
67
+ @Controller('webhooks/servicelabs')
68
+ export class ServicelabsCallbackController extends CommonServicelabsCallbackController {
69
+ constructor(
70
+ servicelabsUtilityService: ServicelabsUtilityService,
71
+ private readonly statementSplitJob: StatementSplitJob
72
+ ) {
73
+ super(servicelabsUtilityService);
74
+ }
75
+
76
+ protected async onJobFinished(event: ServicelabsCallbackEventInterface): Promise<void> {
77
+ await this.statementSplitJob.dispatch(event.data);
78
+ }
79
+ }
80
+ ```
81
+
82
+ ```ts
83
+ // in the job: copy the output, then use event.data.metadata to find your record
84
+ const pages = await this.servicelabsUtilityService.storeFiles(job);
85
+ ```
86
+
87
+ - **Raw body.** The signature covers the exact bytes received. Create the app with
88
+ `NestFactory.create(AppModule, { rawBody: true })`, or every callback is refused.
89
+ - **Route.** The signature is the authentication. Mount the controller outside `api/…`, where
90
+ `RestrictedMiddleware` would demand a logged-in user. `callbackUrl` must be public `https://`.
91
+ - **Answer fast.** ServiceLabs waits 10 s for a 2xx and retries anything else (8 attempts over about
92
+ 21 minutes). Copying files can take longer, so dispatch a job from `onJobFinished`.
93
+ - **Duplicates.** The same callback can arrive twice. De-duplicate on `event.data.id`.
94
+ - **Several API keys.** Override `signingSecret()` to choose the secret per request.
95
+
96
+ Apps with their own webhook route can call `servicelabsUtilityService.verifyCallback(rawBody, headers)`
97
+ directly.
98
+
99
+ ### Polling instead
100
+
101
+ ```ts
102
+ const finished = await this.servicelabs.waitForJob(job.id); // long-polls ?wait=60 until final
103
+ const files = await this.servicelabs.storeFiles(finished); // throws unless it succeeded
104
+ ```
105
+
106
+ `getJob(id, waitSeconds)`, `listJobs({ utility, status, limit, cursor })` and `cancelJob(id)` (queued
107
+ jobs only) cover the rest. Callbacks are a notification, not the source of truth: a periodic
108
+ `listJobs({ status: 'succeeded' })` reconcile catches anything missed while the receiver was down.
109
+
110
+ ## The bare API: `ServicelabsDevService`
111
+
112
+ `ServicelabsUtilityService` is built on `ServicelabsDevService`, which apps can inject directly to
113
+ use the API as it is: one method per [operation](https://servicelabs.dev/docs/reference/operations/),
114
+ the API's own request body, and its raw answer.
115
+
116
+ | Method | Operation |
117
+ | --- | --- |
118
+ | `runHtmlPdf`, `runSplitPdf`, `runZipFiles`, `runUnzipFiles`, `runXlsToXlsx`, `runUtility(slug, …)` | `POST /v1/utilities/{slug}` (sync) |
119
+ | `createHtmlPdfJob`, `createSplitPdfJob`, `createZipFilesJob`, `createUnzipFilesJob`, `createXlsToXlsxJob`, `createUtilityJob(slug, …)` | `POST /v1/utilities/{slug}/jobs` (async) |
120
+ | `getJob(id, { wait })`, `listJobs(query)`, `cancelJob(id)` | `GET /v1/jobs/{id}`, `GET /v1/jobs`, `POST /v1/jobs/{id}/cancel` |
121
+ | `listUtilities()`, `getUtility(slug)`, `getOpenApi()` | catalog and `GET /v1/openapi.json` |
122
+ | `verifyCallback(rawBody, headers, secret?)` | Standard Webhooks signature check |
123
+
124
+ ```ts
125
+ const response = await this.servicelabsDevService.runSplitPdf(
126
+ { input: { url }, metadata: { statementId: 7 } },
127
+ { idempotencyKey: 'statement-7', requestId: 'req-123' }
128
+ );
129
+ // response: { success, status, data, headers }
130
+ if (response.status === 202) {
131
+ // still running after 90 s: poll response.data.id (response.headers.location)
132
+ }
133
+ ```
134
+
135
+ Every call returns `{ success, status, data, headers }` and does not throw for API answers. A refused
136
+ request comes back with its `{ error: { code, message, details } }` body and status (`429` with
137
+ `retry-after` in `headers`), a failed sync run with the failed job, and a run past 90 s as `202`.
138
+ Results stay on ServiceLabs' storage (30 days); copy them with `ServicelabsUtilityService.storeFiles`
139
+ if you need them longer. Call options: `idempotencyKey`, `respondAsync` (`Prefer: respond-async`),
140
+ `requestId` (`X-Request-Id`), `timeout`, and `source` for a `RemoteRequestLogEntity` row. The only
141
+ throws are a missing API key and an empty id or slug.
142
+
143
+ ## From stored scripts and code evaluation
144
+
145
+ Both services are exposed to the script runtime under their registry hashes
146
+ (`md5('platformUtility:<ClassName>')`), so eval and code-eval scripts reach them with `fn.getService`:
147
+
148
+ | Service | Hash |
149
+ | --- | --- |
150
+ | `ServicelabsUtilityService` | `f7943f26e51e694f1338906b2770bd45` |
151
+ | `ServicelabsDevService` | `f04986ac567c8b0c4c5f8af2161be73d` |
152
+
153
+ ```js
154
+ const servicelabs = fn.getService('f7943f26e51e694f1338906b2770bd45');
155
+ const pdf = await servicelabs.htmlToPdf(htmlUrl, { format: 'A4' });
156
+
157
+ const dev = fn.getService('f04986ac567c8b0c4c5f8af2161be73d');
158
+ const response = await dev.getJob(jobId, { wait: 30 });
159
+ ```
160
+
161
+ To look a service up by a readable identifier instead (`getServiceInstance('servicelabs')`), add a
162
+ `sys_service_details` row mapping that identifier to the hash, as for any other service.
163
+
164
+ ## Limits
165
+
166
+ | | |
167
+ | --- | --- |
168
+ | Sync budget | 90 s, then the job keeps running and nu long-polls it |
169
+ | Utility time limit | 900 s (300 s for XLS → XLSX) |
170
+ | Inputs | `http(s)://` everywhere; `s3://` (the `finnoto-data` bucket) for html-pdf, split-pdf, unzip-files |
171
+ | Split PDF | ≤ 150 MB, ≤ 500 pages, no password-protected files |
172
+ | Zip | 1–500 files, unique relative `fileName`s |
173
+ | Rate limit | 600 requests / minute / key by default; polling counts |
174
+ | ServiceLabs retention | Output files 30 days, job records 90 days |