@rytass/bpm-core-nestjs-module 0.1.3 → 0.1.5

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 (612) hide show
  1. package/CHANGELOG.md +49 -0
  2. package/LICENSE +21 -0
  3. package/README.md +143 -0
  4. package/package.json +3 -3
  5. package/src/index.js +18 -0
  6. package/src/index.js.map +1 -0
  7. package/src/lib/attachment/attachment-options.d.ts +44 -0
  8. package/src/lib/attachment/attachment-options.js +62 -0
  9. package/src/lib/attachment/attachment-options.js.map +1 -0
  10. package/src/lib/attachment/attachment-storage.provider.d.ts +4 -0
  11. package/src/lib/attachment/attachment-storage.provider.js +35 -0
  12. package/src/lib/attachment/attachment-storage.provider.js.map +1 -0
  13. package/src/lib/attachment/{attachment-storage.token.ts → attachment-storage.token.d.ts} +1 -3
  14. package/src/lib/attachment/attachment-storage.token.js +5 -0
  15. package/src/lib/attachment/attachment-storage.token.js.map +1 -0
  16. package/src/lib/attachment/attachment.controller.d.ts +8 -0
  17. package/src/lib/attachment/attachment.controller.js +38 -0
  18. package/src/lib/attachment/attachment.controller.js.map +1 -0
  19. package/src/lib/attachment/attachment.entity.d.ts +14 -0
  20. package/src/lib/attachment/attachment.entity.js +74 -0
  21. package/src/lib/attachment/attachment.entity.js.map +1 -0
  22. package/src/lib/attachment/attachment.module.d.ts +27 -0
  23. package/src/lib/attachment/attachment.module.js +103 -0
  24. package/src/lib/attachment/attachment.module.js.map +1 -0
  25. package/src/lib/attachment/attachment.mutations.d.ts +8 -0
  26. package/src/lib/attachment/attachment.mutations.js +35 -0
  27. package/src/lib/attachment/attachment.mutations.js.map +1 -0
  28. package/src/lib/attachment/attachment.queries.d.ts +9 -0
  29. package/src/lib/attachment/attachment.queries.js +78 -0
  30. package/src/lib/attachment/attachment.queries.js.map +1 -0
  31. package/src/lib/attachment/attachment.service.d.ts +49 -0
  32. package/src/lib/attachment/attachment.service.js +276 -0
  33. package/src/lib/attachment/attachment.service.js.map +1 -0
  34. package/src/lib/attachment/dto/upload-attachment.input.d.ts +11 -0
  35. package/src/lib/attachment/dto/upload-attachment.input.js +68 -0
  36. package/src/lib/attachment/dto/upload-attachment.input.js.map +1 -0
  37. package/src/lib/attachment/index.js +9 -0
  38. package/src/lib/attachment/index.js.map +1 -0
  39. package/src/lib/bpm/bpm-root.module.d.ts +155 -0
  40. package/src/lib/bpm/bpm-root.module.js +170 -0
  41. package/src/lib/bpm/bpm-root.module.js.map +1 -0
  42. package/src/lib/bpm/index.js +5 -0
  43. package/src/lib/bpm/index.js.map +1 -0
  44. package/src/lib/bpm-auth/bpm-auth-context.d.ts +24 -0
  45. package/src/lib/bpm-auth/bpm-auth-context.extractor.d.ts +4 -0
  46. package/src/lib/bpm-auth/bpm-auth-context.extractor.js +69 -0
  47. package/src/lib/bpm-auth/bpm-auth-context.extractor.js.map +1 -0
  48. package/src/lib/bpm-auth/bpm-auth-context.js +15 -0
  49. package/src/lib/bpm-auth/bpm-auth-context.js.map +1 -0
  50. package/src/lib/bpm-auth/bpm-auth.authorization.d.ts +12 -0
  51. package/src/lib/bpm-auth/bpm-auth.authorization.js +67 -0
  52. package/src/lib/bpm-auth/bpm-auth.authorization.js.map +1 -0
  53. package/src/lib/bpm-auth/bpm-auth.decorators.d.ts +3 -0
  54. package/src/lib/bpm-auth/bpm-auth.decorators.js +11 -0
  55. package/src/lib/bpm-auth/bpm-auth.decorators.js.map +1 -0
  56. package/src/lib/bpm-auth/bpm-auth.guard.d.ts +7 -0
  57. package/src/lib/bpm-auth/bpm-auth.guard.js +24 -0
  58. package/src/lib/bpm-auth/bpm-auth.guard.js.map +1 -0
  59. package/src/lib/bpm-auth/bpm-auth.module.d.ts +6 -0
  60. package/src/lib/bpm-auth/bpm-auth.module.js +69 -0
  61. package/src/lib/bpm-auth/bpm-auth.module.js.map +1 -0
  62. package/src/lib/bpm-auth/bpm-auth.options.d.ts +11 -0
  63. package/src/lib/bpm-auth/bpm-auth.options.js +3 -0
  64. package/src/lib/bpm-auth/bpm-auth.options.js.map +1 -0
  65. package/src/lib/bpm-auth/configurable-bpm-auth-context.accessor.d.ts +10 -0
  66. package/src/lib/bpm-auth/configurable-bpm-auth-context.accessor.js +40 -0
  67. package/src/lib/bpm-auth/configurable-bpm-auth-context.accessor.js.map +1 -0
  68. package/src/lib/bpm-auth/index.js +10 -0
  69. package/src/lib/bpm-auth/index.js.map +1 -0
  70. package/src/lib/common/filters/all-exceptions.filter.d.ts +25 -0
  71. package/src/lib/common/filters/all-exceptions.filter.js +93 -0
  72. package/src/lib/common/filters/all-exceptions.filter.js.map +1 -0
  73. package/src/lib/common/index.js +5 -0
  74. package/src/lib/common/index.js.map +1 -0
  75. package/src/lib/common/iso-duration.d.ts +1 -0
  76. package/src/lib/common/iso-duration.js +27 -0
  77. package/src/lib/common/iso-duration.js.map +1 -0
  78. package/src/lib/condition/condition.module.d.ts +2 -0
  79. package/src/lib/condition/condition.module.js +16 -0
  80. package/src/lib/condition/condition.module.js.map +1 -0
  81. package/src/lib/condition/condition.service.d.ts +16 -0
  82. package/src/lib/condition/condition.service.js +82 -0
  83. package/src/lib/condition/condition.service.js.map +1 -0
  84. package/src/lib/condition/index.js +6 -0
  85. package/src/lib/condition/index.js.map +1 -0
  86. package/src/lib/database/data-source.d.ts +4 -0
  87. package/src/lib/database/data-source.js +7 -0
  88. package/src/lib/database/data-source.js.map +1 -0
  89. package/src/lib/database/index.js +6 -0
  90. package/src/lib/database/index.js.map +1 -0
  91. package/src/lib/database/migration-runner.d.ts +1 -0
  92. package/src/lib/database/migration-runner.js +23 -0
  93. package/src/lib/database/migration-runner.js.map +1 -0
  94. package/src/lib/database/typeorm.config.d.ts +14 -0
  95. package/src/lib/database/typeorm.config.js +135 -0
  96. package/src/lib/database/typeorm.config.js.map +1 -0
  97. package/src/lib/delegation/delegation-rule.entity.d.ts +19 -0
  98. package/src/lib/delegation/delegation-rule.entity.js +99 -0
  99. package/src/lib/delegation/delegation-rule.entity.js.map +1 -0
  100. package/src/lib/delegation/delegation.enums.d.ts +10 -0
  101. package/src/lib/delegation/delegation.enums.js +23 -0
  102. package/src/lib/delegation/delegation.enums.js.map +1 -0
  103. package/src/lib/delegation/delegation.module.d.ts +2 -0
  104. package/src/lib/delegation/delegation.module.js +22 -0
  105. package/src/lib/delegation/delegation.module.js.map +1 -0
  106. package/src/lib/delegation/delegation.mutations.d.ts +11 -0
  107. package/src/lib/delegation/delegation.mutations.js +87 -0
  108. package/src/lib/delegation/delegation.mutations.js.map +1 -0
  109. package/src/lib/delegation/delegation.queries.d.ts +10 -0
  110. package/src/lib/delegation/delegation.queries.js +91 -0
  111. package/src/lib/delegation/delegation.queries.js.map +1 -0
  112. package/src/lib/delegation/delegation.service.d.ts +56 -0
  113. package/src/lib/delegation/delegation.service.js +268 -0
  114. package/src/lib/delegation/delegation.service.js.map +1 -0
  115. package/src/lib/delegation/dto/delegation-rule.input.d.ts +24 -0
  116. package/src/lib/delegation/dto/delegation-rule.input.js +143 -0
  117. package/src/lib/delegation/dto/delegation-rule.input.js.map +1 -0
  118. package/src/lib/delegation/index.js +9 -0
  119. package/src/lib/delegation/index.js.map +1 -0
  120. package/src/lib/form/dto/form-definition.input.d.ts +21 -0
  121. package/src/lib/form/dto/form-definition.input.js +103 -0
  122. package/src/lib/form/dto/form-definition.input.js.map +1 -0
  123. package/src/lib/form/form-definition-version.entity.d.ts +17 -0
  124. package/src/lib/form/form-definition-version.entity.js +84 -0
  125. package/src/lib/form/form-definition-version.entity.js.map +1 -0
  126. package/src/lib/form/form-definition.entity.d.ts +13 -0
  127. package/src/lib/form/form-definition.entity.js +66 -0
  128. package/src/lib/form/form-definition.entity.js.map +1 -0
  129. package/src/lib/form/form-schema-lint.object.d.ts +4 -0
  130. package/src/lib/form/form-schema-lint.object.js +20 -0
  131. package/src/lib/form/form-schema-lint.object.js.map +1 -0
  132. package/src/lib/form/form-schema.validator.d.ts +13 -0
  133. package/src/lib/form/form-schema.validator.js +354 -0
  134. package/src/lib/form/form-schema.validator.js.map +1 -0
  135. package/src/lib/form/form.enums.d.ts +9 -0
  136. package/src/lib/form/form.enums.js +22 -0
  137. package/src/lib/form/form.enums.js.map +1 -0
  138. package/src/lib/form/form.module.d.ts +2 -0
  139. package/src/lib/form/form.module.js +27 -0
  140. package/src/lib/form/form.module.js.map +1 -0
  141. package/src/lib/form/form.mutations.d.ts +14 -0
  142. package/src/lib/form/form.mutations.js +88 -0
  143. package/src/lib/form/form.mutations.js.map +1 -0
  144. package/src/lib/form/form.queries.d.ts +16 -0
  145. package/src/lib/form/form.queries.js +96 -0
  146. package/src/lib/form/form.queries.js.map +1 -0
  147. package/src/lib/form/form.service.d.ts +35 -0
  148. package/src/lib/form/form.service.js +297 -0
  149. package/src/lib/form/form.service.js.map +1 -0
  150. package/src/lib/form/index.js +12 -0
  151. package/src/lib/form/index.js.map +1 -0
  152. package/src/lib/identity/identity-options.d.ts +13 -0
  153. package/src/lib/identity/identity-options.js +20 -0
  154. package/src/lib/identity/identity-options.js.map +1 -0
  155. package/src/lib/identity/identity.module.d.ts +17 -0
  156. package/src/lib/identity/identity.module.js +65 -0
  157. package/src/lib/identity/identity.module.js.map +1 -0
  158. package/src/lib/identity/identity.queries.d.ts +12 -0
  159. package/src/lib/identity/identity.queries.js +79 -0
  160. package/src/lib/identity/identity.queries.js.map +1 -0
  161. package/src/lib/identity/identity.service.d.ts +22 -0
  162. package/src/lib/identity/identity.service.js +141 -0
  163. package/src/lib/identity/identity.service.js.map +1 -0
  164. package/src/lib/identity/index.js +7 -0
  165. package/src/lib/identity/index.js.map +1 -0
  166. package/src/lib/identity/member-base.adapter.d.ts +95 -0
  167. package/src/lib/identity/member-base.adapter.js +137 -0
  168. package/src/lib/identity/member-base.adapter.js.map +1 -0
  169. package/src/lib/identity/member-metadata-cache.entity.d.ts +8 -0
  170. package/src/lib/identity/member-metadata-cache.entity.js +39 -0
  171. package/src/lib/identity/member-metadata-cache.entity.js.map +1 -0
  172. package/src/lib/identity/member-profile.object.d.ts +8 -0
  173. package/src/lib/identity/member-profile.object.js +37 -0
  174. package/src/lib/identity/member-profile.object.js.map +1 -0
  175. package/src/lib/identity/member-resolver.interface.d.ts +79 -0
  176. package/src/lib/identity/member-resolver.interface.js +19 -0
  177. package/src/lib/identity/member-resolver.interface.js.map +1 -0
  178. package/src/lib/migrations/0000000000001-enable-postgres-extensions.d.ts +6 -0
  179. package/src/lib/migrations/0000000000001-enable-postgres-extensions.js +17 -0
  180. package/src/lib/migrations/0000000000001-enable-postgres-extensions.js.map +1 -0
  181. package/src/lib/migrations/0000000001000-identity-organization-foundation.d.ts +6 -0
  182. package/src/lib/migrations/{0000000001000-identity-organization-foundation.ts → 0000000001000-identity-organization-foundation.js} +29 -38
  183. package/src/lib/migrations/0000000001000-identity-organization-foundation.js.map +1 -0
  184. package/src/lib/migrations/0000000002000-form-builder-foundation.d.ts +6 -0
  185. package/src/lib/migrations/{0000000002000-form-builder-foundation.ts → 0000000002000-form-builder-foundation.js} +21 -22
  186. package/src/lib/migrations/0000000002000-form-builder-foundation.js.map +1 -0
  187. package/src/lib/migrations/0000000003000-approval-template-foundation.d.ts +6 -0
  188. package/src/lib/migrations/{0000000003000-approval-template-foundation.ts → 0000000003000-approval-template-foundation.js} +21 -24
  189. package/src/lib/migrations/0000000003000-approval-template-foundation.js.map +1 -0
  190. package/src/lib/migrations/0000000004000-workflow-engine-foundation.d.ts +6 -0
  191. package/src/lib/migrations/{0000000004000-workflow-engine-foundation.ts → 0000000004000-workflow-engine-foundation.js} +34 -46
  192. package/src/lib/migrations/0000000004000-workflow-engine-foundation.js.map +1 -0
  193. package/src/lib/migrations/0000000005000-delegation-rules.d.ts +6 -0
  194. package/src/lib/migrations/{0000000005000-delegation-rules.ts → 0000000005000-delegation-rules.js} +19 -20
  195. package/src/lib/migrations/0000000005000-delegation-rules.js.map +1 -0
  196. package/src/lib/migrations/0000000006000-notifications-sla.d.ts +6 -0
  197. package/src/lib/migrations/{0000000006000-notifications-sla.ts → 0000000006000-notifications-sla.js} +23 -26
  198. package/src/lib/migrations/0000000006000-notifications-sla.js.map +1 -0
  199. package/src/lib/migrations/0000000007000-signatures-attachments.d.ts +6 -0
  200. package/src/lib/migrations/{0000000007000-signatures-attachments.ts → 0000000007000-signatures-attachments.js} +27 -28
  201. package/src/lib/migrations/0000000007000-signatures-attachments.js.map +1 -0
  202. package/src/lib/migrations/0000000008000-approval-template-categories.d.ts +6 -0
  203. package/src/lib/migrations/{0000000008000-approval-template-categories.ts → 0000000008000-approval-template-categories.js} +25 -28
  204. package/src/lib/migrations/0000000008000-approval-template-categories.js.map +1 -0
  205. package/src/lib/migrations/0000000009000-task-candidates.d.ts +6 -0
  206. package/src/lib/migrations/{0000000009000-task-candidates.ts → 0000000009000-task-candidates.js} +23 -26
  207. package/src/lib/migrations/0000000009000-task-candidates.js.map +1 -0
  208. package/src/lib/migrations/0000000010000-notification-delivery-state.d.ts +6 -0
  209. package/src/lib/migrations/{0000000010000-notification-delivery-state.ts → 0000000010000-notification-delivery-state.js} +17 -16
  210. package/src/lib/migrations/0000000010000-notification-delivery-state.js.map +1 -0
  211. package/src/lib/migrations/0000000011000-remove-attachment-encryption-key.d.ts +6 -0
  212. package/src/lib/migrations/0000000011000-remove-attachment-encryption-key.js +22 -0
  213. package/src/lib/migrations/0000000011000-remove-attachment-encryption-key.js.map +1 -0
  214. package/src/lib/migrations/0000000012000-notification-sla-idempotency.d.ts +6 -0
  215. package/src/lib/migrations/0000000012000-notification-sla-idempotency.js +21 -0
  216. package/src/lib/migrations/0000000012000-notification-sla-idempotency.js.map +1 -0
  217. package/src/lib/migrations/0000000013000-workflow-query-indexes.d.ts +6 -0
  218. package/src/lib/migrations/0000000013000-workflow-query-indexes.js +80 -0
  219. package/src/lib/migrations/0000000013000-workflow-query-indexes.js.map +1 -0
  220. package/src/lib/migrations/index.d.ts +16 -0
  221. package/src/lib/migrations/index.js +49 -0
  222. package/src/lib/migrations/index.js.map +1 -0
  223. package/src/lib/notification/dto/notification-preference.input.d.ts +9 -0
  224. package/src/lib/notification/dto/notification-preference.input.js +53 -0
  225. package/src/lib/notification/dto/notification-preference.input.js.map +1 -0
  226. package/src/lib/notification/index.js +11 -0
  227. package/src/lib/notification/index.js.map +1 -0
  228. package/src/lib/notification/notification-delivery-scheduler.service.d.ts +13 -0
  229. package/src/lib/notification/notification-delivery-scheduler.service.js +53 -0
  230. package/src/lib/notification/notification-delivery-scheduler.service.js.map +1 -0
  231. package/src/lib/notification/notification-delivery.service.d.ts +23 -0
  232. package/src/lib/notification/notification-delivery.service.js +245 -0
  233. package/src/lib/notification/notification-delivery.service.js.map +1 -0
  234. package/src/lib/notification/notification-dispatcher.token.d.ts +7 -0
  235. package/src/lib/notification/notification-dispatcher.token.js +5 -0
  236. package/src/lib/notification/notification-dispatcher.token.js.map +1 -0
  237. package/src/lib/notification/notification-options.d.ts +215 -0
  238. package/src/lib/notification/notification-options.js +128 -0
  239. package/src/lib/notification/notification-options.js.map +1 -0
  240. package/src/lib/notification/notification-options.module.d.ts +23 -0
  241. package/src/lib/notification/notification-options.module.js +41 -0
  242. package/src/lib/notification/notification-options.module.js.map +1 -0
  243. package/src/lib/notification/notification-preference.entity.d.ts +10 -0
  244. package/src/lib/notification/notification-preference.entity.js +50 -0
  245. package/src/lib/notification/notification-preference.entity.js.map +1 -0
  246. package/src/lib/notification/notification-sla-scheduler.service.d.ts +13 -0
  247. package/src/lib/notification/notification-sla-scheduler.service.js +51 -0
  248. package/src/lib/notification/notification-sla-scheduler.service.js.map +1 -0
  249. package/src/lib/notification/notification-template.d.ts +13 -0
  250. package/src/lib/notification/notification-template.js +61 -0
  251. package/src/lib/notification/notification-template.js.map +1 -0
  252. package/src/lib/notification/notification.entity.d.ts +23 -0
  253. package/src/lib/notification/notification.entity.js +122 -0
  254. package/src/lib/notification/notification.entity.js.map +1 -0
  255. package/src/lib/notification/notification.enums.d.ts +24 -0
  256. package/src/lib/notification/notification.enums.js +45 -0
  257. package/src/lib/notification/notification.enums.js.map +1 -0
  258. package/src/lib/notification/notification.module.d.ts +2 -0
  259. package/src/lib/notification/notification.module.js +45 -0
  260. package/src/lib/notification/notification.module.js.map +1 -0
  261. package/src/lib/notification/notification.mutations.d.ts +11 -0
  262. package/src/lib/notification/notification.mutations.js +64 -0
  263. package/src/lib/notification/notification.mutations.js.map +1 -0
  264. package/src/lib/notification/notification.queries.d.ts +11 -0
  265. package/src/lib/notification/notification.queries.js +77 -0
  266. package/src/lib/notification/notification.queries.js.map +1 -0
  267. package/src/lib/notification/notification.service.d.ts +81 -0
  268. package/src/lib/notification/notification.service.js +621 -0
  269. package/src/lib/notification/notification.service.js.map +1 -0
  270. package/src/lib/organization/dto/manager-resolution.input.d.ts +18 -0
  271. package/src/lib/organization/dto/manager-resolution.input.js +107 -0
  272. package/src/lib/organization/dto/manager-resolution.input.js.map +1 -0
  273. package/src/lib/organization/dto/membership.input.d.ts +16 -0
  274. package/src/lib/organization/dto/membership.input.js +99 -0
  275. package/src/lib/organization/dto/membership.input.js.map +1 -0
  276. package/src/lib/organization/dto/org-unit.input.d.ts +24 -0
  277. package/src/lib/organization/dto/org-unit.input.js +119 -0
  278. package/src/lib/organization/dto/org-unit.input.js.map +1 -0
  279. package/src/lib/organization/dto/position.input.d.ts +13 -0
  280. package/src/lib/organization/dto/position.input.js +70 -0
  281. package/src/lib/organization/dto/position.input.js.map +1 -0
  282. package/src/lib/organization/index.js +16 -0
  283. package/src/lib/organization/index.js.map +1 -0
  284. package/src/lib/organization/json-metadata.d.ts +1 -0
  285. package/src/lib/organization/json-metadata.js +14 -0
  286. package/src/lib/organization/json-metadata.js.map +1 -0
  287. package/src/lib/organization/manager-resolution.entity.d.ts +11 -0
  288. package/src/lib/organization/manager-resolution.entity.js +55 -0
  289. package/src/lib/organization/manager-resolution.entity.js.map +1 -0
  290. package/src/lib/organization/membership.entity.d.ts +11 -0
  291. package/src/lib/organization/membership.entity.js +60 -0
  292. package/src/lib/organization/membership.entity.js.map +1 -0
  293. package/src/lib/organization/org-unit-tree-commit-result.object.d.ts +4 -0
  294. package/src/lib/organization/org-unit-tree-commit-result.object.js +17 -0
  295. package/src/lib/organization/org-unit-tree-commit-result.object.js.map +1 -0
  296. package/src/lib/organization/org-unit.entity.d.ts +13 -0
  297. package/src/lib/organization/org-unit.entity.js +64 -0
  298. package/src/lib/organization/org-unit.entity.js.map +1 -0
  299. package/src/lib/organization/organization-summary.object.d.ts +6 -0
  300. package/src/lib/organization/organization-summary.object.js +28 -0
  301. package/src/lib/organization/organization-summary.object.js.map +1 -0
  302. package/src/lib/organization/organization.enums.d.ts +11 -0
  303. package/src/lib/organization/organization.enums.js +22 -0
  304. package/src/lib/organization/organization.enums.js.map +1 -0
  305. package/src/lib/organization/organization.module.d.ts +2 -0
  306. package/src/lib/organization/organization.module.js +35 -0
  307. package/src/lib/organization/organization.module.js.map +1 -0
  308. package/src/lib/organization/organization.mutations.d.ts +26 -0
  309. package/src/lib/organization/organization.mutations.js +148 -0
  310. package/src/lib/organization/organization.mutations.js.map +1 -0
  311. package/src/lib/organization/organization.queries.d.ts +23 -0
  312. package/src/lib/organization/organization.queries.js +202 -0
  313. package/src/lib/organization/organization.queries.js.map +1 -0
  314. package/src/lib/organization/organization.service.d.ts +102 -0
  315. package/src/lib/organization/organization.service.js +751 -0
  316. package/src/lib/organization/organization.service.js.map +1 -0
  317. package/src/lib/organization/position.entity.d.ts +9 -0
  318. package/src/lib/organization/position.entity.js +48 -0
  319. package/src/lib/organization/position.entity.js.map +1 -0
  320. package/src/lib/organization/resolved-manager.object.d.ts +4 -0
  321. package/src/lib/organization/resolved-manager.object.js +20 -0
  322. package/src/lib/organization/resolved-manager.object.js.map +1 -0
  323. package/src/lib/signature/index.js +8 -0
  324. package/src/lib/signature/index.js.map +1 -0
  325. package/src/lib/signature/signature-options.d.ts +33 -0
  326. package/src/lib/signature/signature-options.js +51 -0
  327. package/src/lib/signature/signature-options.js.map +1 -0
  328. package/src/lib/signature/signature-verification.object.d.ts +6 -0
  329. package/src/lib/signature/signature-verification.object.js +28 -0
  330. package/src/lib/signature/signature-verification.object.js.map +1 -0
  331. package/src/lib/signature/signature.entity.d.ts +16 -0
  332. package/src/lib/signature/signature.entity.js +88 -0
  333. package/src/lib/signature/signature.entity.js.map +1 -0
  334. package/src/lib/signature/signature.module.d.ts +11 -0
  335. package/src/lib/signature/signature.module.js +60 -0
  336. package/src/lib/signature/signature.module.js.map +1 -0
  337. package/src/lib/signature/signature.queries.d.ts +11 -0
  338. package/src/lib/signature/signature.queries.js +46 -0
  339. package/src/lib/signature/signature.queries.js.map +1 -0
  340. package/src/lib/signature/signature.service.d.ts +25 -0
  341. package/src/lib/signature/signature.service.js +124 -0
  342. package/src/lib/signature/signature.service.js.map +1 -0
  343. package/src/lib/template/approval-template-category.entity.d.ts +9 -0
  344. package/src/lib/template/approval-template-category.entity.js +49 -0
  345. package/src/lib/template/approval-template-category.entity.js.map +1 -0
  346. package/src/lib/template/approval-template-version.entity.d.ts +21 -0
  347. package/src/lib/template/approval-template-version.entity.js +106 -0
  348. package/src/lib/template/approval-template-version.entity.js.map +1 -0
  349. package/src/lib/template/approval-template.entity.d.ts +14 -0
  350. package/src/lib/template/approval-template.entity.js +74 -0
  351. package/src/lib/template/approval-template.entity.js.map +1 -0
  352. package/src/lib/template/dto/approval-template.input.d.ts +36 -0
  353. package/src/lib/template/dto/approval-template.input.js +187 -0
  354. package/src/lib/template/dto/approval-template.input.js.map +1 -0
  355. package/src/lib/template/index.js +12 -0
  356. package/src/lib/template/index.js.map +1 -0
  357. package/src/lib/template/template.enums.d.ts +14 -0
  358. package/src/lib/template/template.enums.js +31 -0
  359. package/src/lib/template/template.enums.js.map +1 -0
  360. package/src/lib/template/template.module.d.ts +2 -0
  361. package/src/lib/template/template.module.js +33 -0
  362. package/src/lib/template/template.module.js.map +1 -0
  363. package/src/lib/template/template.mutations.d.ts +20 -0
  364. package/src/lib/template/template.mutations.js +139 -0
  365. package/src/lib/template/template.mutations.js.map +1 -0
  366. package/src/lib/template/template.queries.d.ts +16 -0
  367. package/src/lib/template/template.queries.js +133 -0
  368. package/src/lib/template/template.queries.js.map +1 -0
  369. package/src/lib/template/template.service.d.ts +64 -0
  370. package/src/lib/template/template.service.js +521 -0
  371. package/src/lib/template/template.service.js.map +1 -0
  372. package/src/lib/template/workflow-definition.validator.d.ts +9 -0
  373. package/src/lib/template/workflow-definition.validator.js +362 -0
  374. package/src/lib/template/workflow-definition.validator.js.map +1 -0
  375. package/src/lib/testing/cel-js.jest.d.ts +15 -0
  376. package/src/lib/testing/cel-js.jest.js +27 -0
  377. package/src/lib/testing/cel-js.jest.js.map +1 -0
  378. package/src/lib/workflow-engine/activity-log.entity.d.ts +12 -0
  379. package/src/lib/workflow-engine/activity-log.entity.js +62 -0
  380. package/src/lib/workflow-engine/activity-log.entity.js.map +1 -0
  381. package/src/lib/workflow-engine/approval-instance-page-info.object.d.ts +8 -0
  382. package/src/lib/workflow-engine/approval-instance-page-info.object.js +36 -0
  383. package/src/lib/workflow-engine/approval-instance-page-info.object.js.map +1 -0
  384. package/src/lib/workflow-engine/approval-instance.entity.d.ts +22 -0
  385. package/src/lib/workflow-engine/approval-instance.entity.js +113 -0
  386. package/src/lib/workflow-engine/approval-instance.entity.js.map +1 -0
  387. package/src/lib/workflow-engine/dto/cancel-approval-instance.input.d.ts +5 -0
  388. package/src/lib/workflow-engine/dto/cancel-approval-instance.input.js +29 -0
  389. package/src/lib/workflow-engine/dto/cancel-approval-instance.input.js.map +1 -0
  390. package/src/lib/workflow-engine/dto/decide-task.input.d.ts +9 -0
  391. package/src/lib/workflow-engine/dto/decide-task.input.js +47 -0
  392. package/src/lib/workflow-engine/dto/decide-task.input.js.map +1 -0
  393. package/src/lib/workflow-engine/dto/dry-run-approval-workflow.input.d.ts +6 -0
  394. package/src/lib/workflow-engine/dto/dry-run-approval-workflow.input.js +34 -0
  395. package/src/lib/workflow-engine/dto/dry-run-approval-workflow.input.js.map +1 -0
  396. package/src/lib/workflow-engine/dto/resubmit-approval-instance.input.d.ts +6 -0
  397. package/src/lib/workflow-engine/dto/resubmit-approval-instance.input.js +34 -0
  398. package/src/lib/workflow-engine/dto/resubmit-approval-instance.input.js.map +1 -0
  399. package/src/lib/workflow-engine/dto/submit-approval-instance.input.d.ts +7 -0
  400. package/src/lib/workflow-engine/dto/submit-approval-instance.input.js +40 -0
  401. package/src/lib/workflow-engine/dto/submit-approval-instance.input.js.map +1 -0
  402. package/src/lib/workflow-engine/index.js +24 -0
  403. package/src/lib/workflow-engine/index.js.map +1 -0
  404. package/src/lib/workflow-engine/task-candidate.entity.d.ts +14 -0
  405. package/src/lib/workflow-engine/task-candidate.entity.js +72 -0
  406. package/src/lib/workflow-engine/task-candidate.entity.js.map +1 -0
  407. package/src/lib/workflow-engine/task-decision.entity.d.ts +12 -0
  408. package/src/lib/workflow-engine/task-decision.entity.js +60 -0
  409. package/src/lib/workflow-engine/task-decision.entity.js.map +1 -0
  410. package/src/lib/workflow-engine/task.entity.d.ts +20 -0
  411. package/src/lib/workflow-engine/task.entity.js +109 -0
  412. package/src/lib/workflow-engine/task.entity.js.map +1 -0
  413. package/src/lib/workflow-engine/workflow-condition-evaluator.d.ts +5 -0
  414. package/src/lib/workflow-engine/workflow-condition-evaluator.js +107 -0
  415. package/src/lib/workflow-engine/workflow-condition-evaluator.js.map +1 -0
  416. package/src/lib/workflow-engine/workflow-dashboard-summary.object.d.ts +8 -0
  417. package/src/lib/workflow-engine/workflow-dashboard-summary.object.js +36 -0
  418. package/src/lib/workflow-engine/workflow-dashboard-summary.object.js.map +1 -0
  419. package/src/lib/workflow-engine/workflow-dry-run.object.d.ts +21 -0
  420. package/src/lib/workflow-engine/workflow-dry-run.object.js +86 -0
  421. package/src/lib/workflow-engine/workflow-dry-run.object.js.map +1 -0
  422. package/src/lib/workflow-engine/workflow-engine.enums.d.ts +58 -0
  423. package/src/lib/workflow-engine/workflow-engine.enums.js +95 -0
  424. package/src/lib/workflow-engine/workflow-engine.enums.js.map +1 -0
  425. package/src/lib/workflow-engine/workflow-engine.module.d.ts +9 -0
  426. package/src/lib/workflow-engine/workflow-engine.module.js +76 -0
  427. package/src/lib/workflow-engine/workflow-engine.module.js.map +1 -0
  428. package/src/lib/workflow-engine/workflow-engine.mutations.d.ts +19 -0
  429. package/src/lib/workflow-engine/workflow-engine.mutations.js +106 -0
  430. package/src/lib/workflow-engine/workflow-engine.mutations.js.map +1 -0
  431. package/src/lib/workflow-engine/workflow-engine.queries.d.ts +29 -0
  432. package/src/lib/workflow-engine/workflow-engine.queries.js +225 -0
  433. package/src/lib/workflow-engine/workflow-engine.queries.js.map +1 -0
  434. package/src/lib/workflow-engine/workflow-engine.service.d.ts +145 -0
  435. package/src/lib/workflow-engine/workflow-engine.service.js +2785 -0
  436. package/src/lib/workflow-engine/workflow-engine.service.js.map +1 -0
  437. package/src/lib/workflow-engine/{workflow-engine.tokens.ts → workflow-engine.tokens.d.ts} +3 -9
  438. package/src/lib/workflow-engine/workflow-engine.tokens.js +5 -0
  439. package/src/lib/workflow-engine/workflow-engine.tokens.js.map +1 -0
  440. package/src/lib/workflow-engine/workflow-service-task-dispatcher.token.d.ts +18 -0
  441. package/src/lib/workflow-engine/workflow-service-task-dispatcher.token.js +39 -0
  442. package/src/lib/workflow-engine/workflow-service-task-dispatcher.token.js.map +1 -0
  443. package/src/lib/workflow-engine/workflow-token.entity.d.ts +10 -0
  444. package/src/lib/workflow-engine/workflow-token.entity.js +50 -0
  445. package/src/lib/workflow-engine/workflow-token.entity.js.map +1 -0
  446. package/eslint.config.mjs +0 -20
  447. package/jest.config.cts +0 -15
  448. package/project.json +0 -58
  449. package/src/lib/attachment/attachment-options.spec.ts +0 -45
  450. package/src/lib/attachment/attachment-options.ts +0 -130
  451. package/src/lib/attachment/attachment-storage.provider.spec.ts +0 -79
  452. package/src/lib/attachment/attachment-storage.provider.ts +0 -60
  453. package/src/lib/attachment/attachment.controller.ts +0 -39
  454. package/src/lib/attachment/attachment.entity.ts +0 -59
  455. package/src/lib/attachment/attachment.module.ts +0 -149
  456. package/src/lib/attachment/attachment.mutations.ts +0 -22
  457. package/src/lib/attachment/attachment.queries.ts +0 -65
  458. package/src/lib/attachment/attachment.service.spec.ts +0 -319
  459. package/src/lib/attachment/attachment.service.ts +0 -477
  460. package/src/lib/attachment/dto/upload-attachment.input.ts +0 -60
  461. package/src/lib/bpm/bpm-root.module.spec.ts +0 -138
  462. package/src/lib/bpm/bpm-root.module.ts +0 -320
  463. package/src/lib/bpm-auth/bpm-auth-context.extractor.ts +0 -106
  464. package/src/lib/bpm-auth/bpm-auth-context.ts +0 -40
  465. package/src/lib/bpm-auth/bpm-auth.authorization.ts +0 -80
  466. package/src/lib/bpm-auth/bpm-auth.decorators.ts +0 -19
  467. package/src/lib/bpm-auth/bpm-auth.guard.ts +0 -31
  468. package/src/lib/bpm-auth/bpm-auth.module.spec.ts +0 -106
  469. package/src/lib/bpm-auth/bpm-auth.module.ts +0 -69
  470. package/src/lib/bpm-auth/bpm-auth.options.ts +0 -21
  471. package/src/lib/bpm-auth/configurable-bpm-auth-context.accessor.ts +0 -55
  472. package/src/lib/common/filters/all-exceptions.filter.ts +0 -138
  473. package/src/lib/common/iso-duration.ts +0 -31
  474. package/src/lib/condition/condition.module.ts +0 -8
  475. package/src/lib/condition/condition.service.spec.ts +0 -50
  476. package/src/lib/condition/condition.service.ts +0 -141
  477. package/src/lib/database/data-source.ts +0 -7
  478. package/src/lib/database/migration-runner.ts +0 -24
  479. package/src/lib/database/typeorm.config.ts +0 -217
  480. package/src/lib/delegation/delegation-rule.entity.ts +0 -84
  481. package/src/lib/delegation/delegation.enums.ts +0 -21
  482. package/src/lib/delegation/delegation.module.ts +0 -14
  483. package/src/lib/delegation/delegation.mutations.ts +0 -92
  484. package/src/lib/delegation/delegation.queries.ts +0 -111
  485. package/src/lib/delegation/delegation.service.spec.ts +0 -295
  486. package/src/lib/delegation/delegation.service.ts +0 -482
  487. package/src/lib/delegation/dto/delegation-rule.input.ts +0 -125
  488. package/src/lib/form/dto/form-definition.input.ts +0 -73
  489. package/src/lib/form/form-definition-version.entity.ts +0 -66
  490. package/src/lib/form/form-definition.entity.ts +0 -54
  491. package/src/lib/form/form-schema-lint.object.ts +0 -10
  492. package/src/lib/form/form-schema.validator.spec.ts +0 -180
  493. package/src/lib/form/form-schema.validator.ts +0 -538
  494. package/src/lib/form/form.enums.ts +0 -20
  495. package/src/lib/form/form.module.ts +0 -19
  496. package/src/lib/form/form.mutations.ts +0 -68
  497. package/src/lib/form/form.queries.ts +0 -72
  498. package/src/lib/form/form.service.spec.ts +0 -144
  499. package/src/lib/form/form.service.ts +0 -490
  500. package/src/lib/identity/identity-options.ts +0 -41
  501. package/src/lib/identity/identity.module.ts +0 -96
  502. package/src/lib/identity/identity.queries.ts +0 -61
  503. package/src/lib/identity/identity.service.spec.ts +0 -105
  504. package/src/lib/identity/identity.service.ts +0 -200
  505. package/src/lib/identity/member-base.adapter.spec.ts +0 -77
  506. package/src/lib/identity/member-base.adapter.ts +0 -244
  507. package/src/lib/identity/member-metadata-cache.entity.ts +0 -27
  508. package/src/lib/identity/member-profile.object.ts +0 -28
  509. package/src/lib/identity/member-resolver.interface.ts +0 -47
  510. package/src/lib/migrations/0000000000001-enable-postgres-extensions.ts +0 -14
  511. package/src/lib/migrations/0000000011000-remove-attachment-encryption-key.ts +0 -19
  512. package/src/lib/migrations/0000000012000-notification-sla-idempotency.ts +0 -22
  513. package/src/lib/migrations/0000000013000-workflow-query-indexes.ts +0 -113
  514. package/src/lib/migrations/index.ts +0 -47
  515. package/src/lib/notification/dto/notification-preference.input.ts +0 -46
  516. package/src/lib/notification/notification-delivery-scheduler.service.ts +0 -69
  517. package/src/lib/notification/notification-delivery.service.spec.ts +0 -315
  518. package/src/lib/notification/notification-delivery.service.ts +0 -339
  519. package/src/lib/notification/notification-dispatcher.token.ts +0 -13
  520. package/src/lib/notification/notification-options.module.ts +0 -67
  521. package/src/lib/notification/notification-options.spec.ts +0 -93
  522. package/src/lib/notification/notification-options.ts +0 -452
  523. package/src/lib/notification/notification-preference.entity.ts +0 -35
  524. package/src/lib/notification/notification-sla-scheduler.service.ts +0 -66
  525. package/src/lib/notification/notification-template.spec.ts +0 -33
  526. package/src/lib/notification/notification-template.ts +0 -97
  527. package/src/lib/notification/notification.entity.ts +0 -102
  528. package/src/lib/notification/notification.enums.ts +0 -45
  529. package/src/lib/notification/notification.module.ts +0 -37
  530. package/src/lib/notification/notification.mutations.ts +0 -47
  531. package/src/lib/notification/notification.queries.ts +0 -64
  532. package/src/lib/notification/notification.service.spec.ts +0 -412
  533. package/src/lib/notification/notification.service.ts +0 -974
  534. package/src/lib/organization/dto/manager-resolution.input.ts +0 -91
  535. package/src/lib/organization/dto/membership.input.ts +0 -77
  536. package/src/lib/organization/dto/org-unit.input.ts +0 -96
  537. package/src/lib/organization/dto/position.input.ts +0 -50
  538. package/src/lib/organization/json-metadata.ts +0 -15
  539. package/src/lib/organization/manager-resolution.entity.ts +0 -44
  540. package/src/lib/organization/membership.entity.ts +0 -50
  541. package/src/lib/organization/org-unit-tree-commit-result.object.ts +0 -8
  542. package/src/lib/organization/org-unit.entity.ts +0 -53
  543. package/src/lib/organization/organization-summary.object.ts +0 -16
  544. package/src/lib/organization/organization.enums.ts +0 -19
  545. package/src/lib/organization/organization.module.ts +0 -27
  546. package/src/lib/organization/organization.mutations.ts +0 -115
  547. package/src/lib/organization/organization.queries.ts +0 -188
  548. package/src/lib/organization/organization.service.spec.ts +0 -760
  549. package/src/lib/organization/organization.service.ts +0 -1216
  550. package/src/lib/organization/position.entity.ts +0 -39
  551. package/src/lib/organization/resolved-manager.object.ts +0 -10
  552. package/src/lib/signature/signature-options.spec.ts +0 -60
  553. package/src/lib/signature/signature-options.ts +0 -120
  554. package/src/lib/signature/signature-verification.object.ts +0 -16
  555. package/src/lib/signature/signature.entity.ts +0 -62
  556. package/src/lib/signature/signature.module.ts +0 -80
  557. package/src/lib/signature/signature.queries.ts +0 -37
  558. package/src/lib/signature/signature.service.spec.ts +0 -134
  559. package/src/lib/signature/signature.service.ts +0 -205
  560. package/src/lib/template/approval-template-category.entity.ts +0 -40
  561. package/src/lib/template/approval-template-version.entity.ts +0 -82
  562. package/src/lib/template/approval-template.entity.ts +0 -64
  563. package/src/lib/template/dto/approval-template.input.ts +0 -147
  564. package/src/lib/template/template.enums.ts +0 -30
  565. package/src/lib/template/template.module.ts +0 -25
  566. package/src/lib/template/template.mutations.ts +0 -106
  567. package/src/lib/template/template.queries.ts +0 -119
  568. package/src/lib/template/template.service.spec.ts +0 -476
  569. package/src/lib/template/template.service.ts +0 -820
  570. package/src/lib/template/workflow-definition.validator.spec.ts +0 -595
  571. package/src/lib/template/workflow-definition.validator.ts +0 -539
  572. package/src/lib/testing/cel-js.jest.ts +0 -46
  573. package/src/lib/workflow-engine/activity-log.entity.ts +0 -48
  574. package/src/lib/workflow-engine/approval-instance-page-info.object.ts +0 -22
  575. package/src/lib/workflow-engine/approval-instance.entity.ts +0 -86
  576. package/src/lib/workflow-engine/dto/cancel-approval-instance.input.ts +0 -18
  577. package/src/lib/workflow-engine/dto/decide-task.input.ts +0 -33
  578. package/src/lib/workflow-engine/dto/dry-run-approval-workflow.input.ts +0 -22
  579. package/src/lib/workflow-engine/dto/resubmit-approval-instance.input.ts +0 -22
  580. package/src/lib/workflow-engine/dto/submit-approval-instance.input.ts +0 -27
  581. package/src/lib/workflow-engine/task-candidate.entity.ts +0 -56
  582. package/src/lib/workflow-engine/task-decision.entity.ts +0 -43
  583. package/src/lib/workflow-engine/task.entity.ts +0 -85
  584. package/src/lib/workflow-engine/workflow-condition-evaluator.ts +0 -168
  585. package/src/lib/workflow-engine/workflow-dashboard-summary.object.ts +0 -22
  586. package/src/lib/workflow-engine/workflow-dry-run.object.ts +0 -58
  587. package/src/lib/workflow-engine/workflow-engine.enums.ts +0 -99
  588. package/src/lib/workflow-engine/workflow-engine.module.ts +0 -75
  589. package/src/lib/workflow-engine/workflow-engine.mutations.ts +0 -85
  590. package/src/lib/workflow-engine/workflow-engine.queries.ts +0 -229
  591. package/src/lib/workflow-engine/workflow-engine.service.spec.ts +0 -2689
  592. package/src/lib/workflow-engine/workflow-engine.service.ts +0 -4707
  593. package/src/lib/workflow-engine/workflow-service-task-dispatcher.token.ts +0 -69
  594. package/src/lib/workflow-engine/workflow-token.entity.ts +0 -40
  595. package/tsconfig.json +0 -24
  596. package/tsconfig.lib.json +0 -16
  597. package/tsconfig.spec.json +0 -16
  598. /package/src/{index.ts → index.d.ts} +0 -0
  599. /package/src/lib/attachment/{index.ts → index.d.ts} +0 -0
  600. /package/src/lib/bpm/{index.ts → index.d.ts} +0 -0
  601. /package/src/lib/bpm-auth/{index.ts → index.d.ts} +0 -0
  602. /package/src/lib/common/{index.ts → index.d.ts} +0 -0
  603. /package/src/lib/condition/{index.ts → index.d.ts} +0 -0
  604. /package/src/lib/database/{index.ts → index.d.ts} +0 -0
  605. /package/src/lib/delegation/{index.ts → index.d.ts} +0 -0
  606. /package/src/lib/form/{index.ts → index.d.ts} +0 -0
  607. /package/src/lib/identity/{index.ts → index.d.ts} +0 -0
  608. /package/src/lib/notification/{index.ts → index.d.ts} +0 -0
  609. /package/src/lib/organization/{index.ts → index.d.ts} +0 -0
  610. /package/src/lib/signature/{index.ts → index.d.ts} +0 -0
  611. /package/src/lib/template/{index.ts → index.d.ts} +0 -0
  612. /package/src/lib/workflow-engine/{index.ts → index.d.ts} +0 -0
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ var AttachmentModule_1;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.AttachmentModule = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const common_1 = require("@nestjs/common");
7
+ const constants_1 = require("@nestjs/common/constants");
8
+ const typeorm_1 = require("@nestjs/typeorm");
9
+ const approval_instance_entity_1 = require("../workflow-engine/approval-instance.entity");
10
+ const task_candidate_entity_1 = require("../workflow-engine/task-candidate.entity");
11
+ const task_decision_entity_1 = require("../workflow-engine/task-decision.entity");
12
+ const task_entity_1 = require("../workflow-engine/task.entity");
13
+ const attachment_controller_1 = require("./attachment.controller");
14
+ const attachment_entity_1 = require("./attachment.entity");
15
+ const attachment_mutations_1 = require("./attachment.mutations");
16
+ const attachment_queries_1 = require("./attachment.queries");
17
+ const attachment_storage_provider_1 = require("./attachment-storage.provider");
18
+ const attachment_service_1 = require("./attachment.service");
19
+ const attachment_options_1 = require("./attachment-options");
20
+ /**
21
+ * Applies the resolved attachment route prefix to `AttachmentController`'s
22
+ * Nest path metadata.
23
+ *
24
+ * Nest reads controller path metadata once at application bootstrap, so this
25
+ * helper must run before Nest finalizes route registration. It is safe to call
26
+ * multiple times within the same process as long as every BPM host agrees on
27
+ * a single prefix.
28
+ */
29
+ function applyAttachmentControllerPath(attachmentRoutePrefix) {
30
+ const controllerPath = (0, attachment_options_1.resolveAttachmentControllerPath)(attachmentRoutePrefix);
31
+ Reflect.defineMetadata(constants_1.PATH_METADATA, controllerPath, attachment_controller_1.AttachmentController);
32
+ }
33
+ const ATTACHMENT_MODULE_IMPORTS = [
34
+ typeorm_1.TypeOrmModule.forFeature([
35
+ approval_instance_entity_1.ApprovalInstanceEntity,
36
+ attachment_entity_1.AttachmentEntity,
37
+ task_candidate_entity_1.TaskCandidateEntity,
38
+ task_decision_entity_1.TaskDecisionEntity,
39
+ task_entity_1.TaskEntity,
40
+ ]),
41
+ ];
42
+ const ATTACHMENT_MODULE_CONTROLLERS = [attachment_controller_1.AttachmentController];
43
+ const ATTACHMENT_MODULE_PROVIDERS = [
44
+ attachment_mutations_1.AttachmentMutations,
45
+ attachment_queries_1.AttachmentQueries,
46
+ attachment_service_1.AttachmentService,
47
+ ];
48
+ const ATTACHMENT_MODULE_EXPORTS = [attachment_service_1.AttachmentService];
49
+ let AttachmentModule = AttachmentModule_1 = class AttachmentModule {
50
+ static forRoot(options = {}) {
51
+ applyAttachmentControllerPath(options.attachmentRoutePrefix);
52
+ return {
53
+ controllers: ATTACHMENT_MODULE_CONTROLLERS,
54
+ exports: ATTACHMENT_MODULE_EXPORTS,
55
+ imports: [...(options.imports ?? []), ...ATTACHMENT_MODULE_IMPORTS],
56
+ module: AttachmentModule_1,
57
+ providers: [
58
+ ...ATTACHMENT_MODULE_PROVIDERS,
59
+ options.storageProvider ?? attachment_storage_provider_1.attachmentStorageProvider,
60
+ createAttachmentOptionsProvider(options),
61
+ ],
62
+ };
63
+ }
64
+ static forRootAsync(options) {
65
+ applyAttachmentControllerPath(options.attachmentRoutePrefix);
66
+ return {
67
+ controllers: ATTACHMENT_MODULE_CONTROLLERS,
68
+ exports: ATTACHMENT_MODULE_EXPORTS,
69
+ imports: [...(options.imports ?? []), ...ATTACHMENT_MODULE_IMPORTS],
70
+ module: AttachmentModule_1,
71
+ providers: [
72
+ ...ATTACHMENT_MODULE_PROVIDERS,
73
+ options.storageProvider ?? attachment_storage_provider_1.attachmentStorageProvider,
74
+ {
75
+ inject: [...(options.inject ?? [])],
76
+ provide: attachment_options_1.BPM_ATTACHMENT_OPTIONS,
77
+ useFactory: async (...args) => (0, attachment_options_1.resolveBPMAttachmentOptions)(await options.useFactory(...args)),
78
+ },
79
+ ],
80
+ };
81
+ }
82
+ };
83
+ exports.AttachmentModule = AttachmentModule;
84
+ exports.AttachmentModule = AttachmentModule = AttachmentModule_1 = tslib_1.__decorate([
85
+ (0, common_1.Global)(),
86
+ (0, common_1.Module)({
87
+ imports: ATTACHMENT_MODULE_IMPORTS,
88
+ controllers: ATTACHMENT_MODULE_CONTROLLERS,
89
+ providers: [
90
+ ...ATTACHMENT_MODULE_PROVIDERS,
91
+ attachment_storage_provider_1.attachmentStorageProvider,
92
+ createAttachmentOptionsProvider(),
93
+ ],
94
+ exports: ATTACHMENT_MODULE_EXPORTS,
95
+ })
96
+ ], AttachmentModule);
97
+ function createAttachmentOptionsProvider(options = {}) {
98
+ return {
99
+ provide: attachment_options_1.BPM_ATTACHMENT_OPTIONS,
100
+ useValue: (0, attachment_options_1.resolveBPMAttachmentOptions)(options),
101
+ };
102
+ }
103
+ //# sourceMappingURL=attachment.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachment.module.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/attachment/attachment.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAMwB;AACxB,wDAAyD;AAEzD,6CAAgD;AAChD,0FAAqF;AACrF,oFAA+E;AAC/E,kFAA6E;AAC7E,gEAA4D;AAC5D,mEAA+D;AAC/D,2DAAuD;AACvD,iEAA6D;AAC7D,6DAAyD;AACzD,+EAA0E;AAE1E,6DAAyD;AACzD,6DAK8B;AA4B9B;;;;;;;;GAQG;AACH,SAAS,6BAA6B,CACpC,qBAAgD;IAEhD,MAAM,cAAc,GAAG,IAAA,oDAA+B,EAAC,qBAAqB,CAAC,CAAC;IAE9E,OAAO,CAAC,cAAc,CAAC,yBAAa,EAAE,cAAc,EAAE,4CAAoB,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,yBAAyB,GAAG;IAChC,uBAAa,CAAC,UAAU,CAAC;QACvB,iDAAsB;QACtB,oCAAgB;QAChB,2CAAmB;QACnB,yCAAkB;QAClB,wBAAU;KACX,CAAC;CACH,CAAC;AAEF,MAAM,6BAA6B,GAAG,CAAC,4CAAoB,CAAC,CAAC;AAC7D,MAAM,2BAA2B,GAAG;IAClC,0CAAmB;IACnB,sCAAiB;IACjB,sCAAiB;CAClB,CAAC;AACF,MAAM,yBAAyB,GAAG,CAAC,sCAAiB,CAAC,CAAC;AAa/C,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAC3B,MAAM,CAAC,OAAO,CAAC,UAAmC,EAAE;QAClD,6BAA6B,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAE7D,OAAO;YACL,WAAW,EAAE,6BAA6B;YAC1C,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,yBAAyB,CAAC;YACnE,MAAM,EAAE,kBAAgB;YACxB,SAAS,EAAE;gBACT,GAAG,2BAA2B;gBAC9B,OAAO,CAAC,eAAe,IAAI,uDAAyB;gBACpD,+BAA+B,CAAC,OAAO,CAAC;aACzC;SACF,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,OAAqC;QACvD,6BAA6B,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAE7D,OAAO;YACL,WAAW,EAAE,6BAA6B;YAC1C,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,yBAAyB,CAAC;YACnE,MAAM,EAAE,kBAAgB;YACxB,SAAS,EAAE;gBACT,GAAG,2BAA2B;gBAC9B,OAAO,CAAC,eAAe,IAAI,uDAAyB;gBACpD;oBACE,MAAM,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;oBACnC,OAAO,EAAE,2CAAsB;oBAC/B,UAAU,EAAE,KAAK,EACf,GAAG,IAAwB,EAC8B,EAAE,CAC3D,IAAA,gDAA2B,EAAC,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;iBACjE;aACF;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAvCY,4CAAgB;2BAAhB,gBAAgB;IAX5B,IAAA,eAAM,GAAE;IACR,IAAA,eAAM,EAAC;QACN,OAAO,EAAE,yBAAyB;QAClC,WAAW,EAAE,6BAA6B;QAC1C,SAAS,EAAE;YACT,GAAG,2BAA2B;YAC9B,uDAAyB;YACzB,+BAA+B,EAAE;SAClC;QACD,OAAO,EAAE,yBAAyB;KACnC,CAAC;GACW,gBAAgB,CAuC5B;AAED,SAAS,+BAA+B,CACtC,UAAoC,EAAE;IAEtC,OAAO;QACL,OAAO,EAAE,2CAAsB;QAC/B,QAAQ,EAAE,IAAA,gDAA2B,EAAC,OAAO,CAAC;KAC/C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { AttachmentEntity } from './attachment.entity';
2
+ import { AttachmentService } from './attachment.service';
3
+ import { UploadAttachmentInput } from './dto/upload-attachment.input';
4
+ export declare class AttachmentMutations {
5
+ private readonly attachmentService;
6
+ constructor(attachmentService: AttachmentService);
7
+ uploadAttachment(input: UploadAttachmentInput, currentMemberId: string): Promise<AttachmentEntity>;
8
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AttachmentMutations = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const graphql_1 = require("@nestjs/graphql");
6
+ const bpm_auth_1 = require("../bpm-auth");
7
+ const attachment_entity_1 = require("./attachment.entity");
8
+ const attachment_service_1 = require("./attachment.service");
9
+ const upload_attachment_input_1 = require("./dto/upload-attachment.input");
10
+ let AttachmentMutations = class AttachmentMutations {
11
+ constructor(attachmentService) {
12
+ this.attachmentService = attachmentService;
13
+ }
14
+ async uploadAttachment(input, currentMemberId) {
15
+ return this.attachmentService.uploadAttachment({
16
+ ...input,
17
+ uploaderMemberId: currentMemberId,
18
+ });
19
+ }
20
+ };
21
+ exports.AttachmentMutations = AttachmentMutations;
22
+ tslib_1.__decorate([
23
+ (0, graphql_1.Mutation)(() => attachment_entity_1.AttachmentEntity),
24
+ tslib_1.__param(0, (0, graphql_1.Args)('input')),
25
+ tslib_1.__param(1, (0, bpm_auth_1.BPMCurrentMemberId)()),
26
+ tslib_1.__metadata("design:type", Function),
27
+ tslib_1.__metadata("design:paramtypes", [upload_attachment_input_1.UploadAttachmentInput, String]),
28
+ tslib_1.__metadata("design:returntype", Promise)
29
+ ], AttachmentMutations.prototype, "uploadAttachment", null);
30
+ exports.AttachmentMutations = AttachmentMutations = tslib_1.__decorate([
31
+ (0, graphql_1.Resolver)(),
32
+ (0, bpm_auth_1.BPMAuthenticated)(),
33
+ tslib_1.__metadata("design:paramtypes", [attachment_service_1.AttachmentService])
34
+ ], AttachmentMutations);
35
+ //# sourceMappingURL=attachment.mutations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachment.mutations.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/attachment/attachment.mutations.ts"],"names":[],"mappings":";;;;AAAA,6CAA2D;AAC3D,0CAAmE;AACnE,2DAAuD;AACvD,6DAAyD;AACzD,2EAAsE;AAI/D,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,YAA6B,iBAAoC;QAApC,sBAAiB,GAAjB,iBAAiB,CAAmB;IAAG,CAAC;IAG/D,AAAN,KAAK,CAAC,gBAAgB,CACL,KAA4B,EACrB,eAAuB;QAE7C,OAAO,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC;YAC7C,GAAG,KAAK;YACR,gBAAgB,EAAE,eAAe;SAClC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAbY,kDAAmB;AAIxB;IADL,IAAA,kBAAQ,EAAC,GAAG,EAAE,CAAC,oCAAgB,CAAC;IAE9B,mBAAA,IAAA,cAAI,EAAC,OAAO,CAAC,CAAA;IACb,mBAAA,IAAA,6BAAkB,GAAE,CAAA;;6CADC,+CAAqB;;2DAO5C;8BAZU,mBAAmB;IAF/B,IAAA,kBAAQ,GAAE;IACV,IAAA,2BAAgB,GAAE;6CAE+B,sCAAiB;GADtD,mBAAmB,CAa/B"}
@@ -0,0 +1,9 @@
1
+ import { AttachmentEntity } from './attachment.entity';
2
+ import { AttachmentService } from './attachment.service';
3
+ export declare class AttachmentQueries {
4
+ private readonly attachmentService;
5
+ constructor(attachmentService: AttachmentService);
6
+ attachments(instanceId: string, taskId?: string | null, formFieldPath?: string | null, currentMemberId?: string): Promise<readonly AttachmentEntity[]>;
7
+ attachmentDownloadUrl(id: string, _requestedByMemberId: string | null, currentMemberId: string): Promise<string>;
8
+ attachmentPreviewUrl(id: string, _requestedByMemberId: string | null, currentMemberId: string): Promise<string>;
9
+ }
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AttachmentQueries = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const graphql_1 = require("@nestjs/graphql");
6
+ const bpm_auth_1 = require("../bpm-auth");
7
+ const attachment_entity_1 = require("./attachment.entity");
8
+ const attachment_service_1 = require("./attachment.service");
9
+ let AttachmentQueries = class AttachmentQueries {
10
+ constructor(attachmentService) {
11
+ this.attachmentService = attachmentService;
12
+ }
13
+ async attachments(instanceId, taskId, formFieldPath, currentMemberId) {
14
+ return this.attachmentService.listAttachments({
15
+ formFieldPath: formFieldPath ?? null,
16
+ instanceId,
17
+ requestedByMemberId: currentMemberId,
18
+ taskId: taskId ?? null,
19
+ });
20
+ }
21
+ async attachmentDownloadUrl(id, _requestedByMemberId, currentMemberId) {
22
+ return this.attachmentService.createSignedUrl({
23
+ disposition: 'attachment',
24
+ id,
25
+ requestedByMemberId: currentMemberId,
26
+ });
27
+ }
28
+ async attachmentPreviewUrl(id, _requestedByMemberId, currentMemberId) {
29
+ return this.attachmentService.createSignedUrl({
30
+ disposition: 'inline',
31
+ id,
32
+ requestedByMemberId: currentMemberId,
33
+ });
34
+ }
35
+ };
36
+ exports.AttachmentQueries = AttachmentQueries;
37
+ tslib_1.__decorate([
38
+ (0, graphql_1.Query)(() => [attachment_entity_1.AttachmentEntity]),
39
+ tslib_1.__param(0, (0, graphql_1.Args)('instanceId', { type: () => String })),
40
+ tslib_1.__param(1, (0, graphql_1.Args)('taskId', { nullable: true, type: () => String })),
41
+ tslib_1.__param(2, (0, graphql_1.Args)('formFieldPath', { nullable: true, type: () => String })),
42
+ tslib_1.__param(3, (0, bpm_auth_1.BPMCurrentMemberId)()),
43
+ tslib_1.__metadata("design:type", Function),
44
+ tslib_1.__metadata("design:paramtypes", [String, Object, Object, String]),
45
+ tslib_1.__metadata("design:returntype", Promise)
46
+ ], AttachmentQueries.prototype, "attachments", null);
47
+ tslib_1.__decorate([
48
+ (0, graphql_1.Query)(() => String),
49
+ tslib_1.__param(0, (0, graphql_1.Args)('id', { type: () => String })),
50
+ tslib_1.__param(1, (0, graphql_1.Args)('requestedByMemberId', {
51
+ deprecationReason: 'Ignored. The current authenticated BPM member is always used.',
52
+ nullable: true,
53
+ type: () => String,
54
+ })),
55
+ tslib_1.__param(2, (0, bpm_auth_1.BPMCurrentMemberId)()),
56
+ tslib_1.__metadata("design:type", Function),
57
+ tslib_1.__metadata("design:paramtypes", [String, Object, String]),
58
+ tslib_1.__metadata("design:returntype", Promise)
59
+ ], AttachmentQueries.prototype, "attachmentDownloadUrl", null);
60
+ tslib_1.__decorate([
61
+ (0, graphql_1.Query)(() => String),
62
+ tslib_1.__param(0, (0, graphql_1.Args)('id', { type: () => String })),
63
+ tslib_1.__param(1, (0, graphql_1.Args)('requestedByMemberId', {
64
+ deprecationReason: 'Ignored. The current authenticated BPM member is always used.',
65
+ nullable: true,
66
+ type: () => String,
67
+ })),
68
+ tslib_1.__param(2, (0, bpm_auth_1.BPMCurrentMemberId)()),
69
+ tslib_1.__metadata("design:type", Function),
70
+ tslib_1.__metadata("design:paramtypes", [String, Object, String]),
71
+ tslib_1.__metadata("design:returntype", Promise)
72
+ ], AttachmentQueries.prototype, "attachmentPreviewUrl", null);
73
+ exports.AttachmentQueries = AttachmentQueries = tslib_1.__decorate([
74
+ (0, graphql_1.Resolver)(),
75
+ (0, bpm_auth_1.BPMAuthenticated)(),
76
+ tslib_1.__metadata("design:paramtypes", [attachment_service_1.AttachmentService])
77
+ ], AttachmentQueries);
78
+ //# sourceMappingURL=attachment.queries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachment.queries.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/attachment/attachment.queries.ts"],"names":[],"mappings":";;;;AAAA,6CAAwD;AACxD,0CAAmE;AACnE,2DAAuD;AACvD,6DAAyD;AAIlD,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,YAA6B,iBAAoC;QAApC,sBAAiB,GAAjB,iBAAiB,CAAmB;IAAG,CAAC;IAG/D,AAAN,KAAK,CAAC,WAAW,CAC6B,UAAkB,EAE9D,MAAsB,EAEtB,aAA6B,EACP,eAAwB;QAE9C,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC;YAC5C,aAAa,EAAE,aAAa,IAAI,IAAI;YACpC,UAAU;YACV,mBAAmB,EAAE,eAAe;YACpC,MAAM,EAAE,MAAM,IAAI,IAAI;SACvB,CAAC,CAAC;IACL,CAAC;IAGK,AAAN,KAAK,CAAC,qBAAqB,CACW,EAAU,EAO9C,oBAAmC,EACb,eAAuB;QAE7C,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC;YAC5C,WAAW,EAAE,YAAY;YACzB,EAAE;YACF,mBAAmB,EAAE,eAAe;SACrC,CAAC,CAAC;IACL,CAAC;IAGK,AAAN,KAAK,CAAC,oBAAoB,CACY,EAAU,EAO9C,oBAAmC,EACb,eAAuB;QAE7C,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC;YAC5C,WAAW,EAAE,QAAQ;YACrB,EAAE;YACF,mBAAmB,EAAE,eAAe;SACrC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AAzDY,8CAAiB;AAItB;IADL,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,CAAC,oCAAgB,CAAC,CAAC;IAE7B,mBAAA,IAAA,cAAI,EAAC,YAAY,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;IAC1C,mBAAA,IAAA,cAAI,EAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;IAEtD,mBAAA,IAAA,cAAI,EAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;IAE7D,mBAAA,IAAA,6BAAkB,GAAE,CAAA;;;;oDAQtB;AAGK;IADL,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAEjB,mBAAA,IAAA,cAAI,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;IAClC,mBAAA,IAAA,cAAI,EAAC,qBAAqB,EAAE;QAC3B,iBAAiB,EACf,+DAA+D;QACjE,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM;KACnB,CAAC,CAAA;IAED,mBAAA,IAAA,6BAAkB,GAAE,CAAA;;;;8DAOtB;AAGK;IADL,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAEjB,mBAAA,IAAA,cAAI,EAAC,IAAI,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAA;IAClC,mBAAA,IAAA,cAAI,EAAC,qBAAqB,EAAE;QAC3B,iBAAiB,EACf,+DAA+D;QACjE,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,GAAG,EAAE,CAAC,MAAM;KACnB,CAAC,CAAA;IAED,mBAAA,IAAA,6BAAkB,GAAE,CAAA;;;;6DAOtB;4BAxDU,iBAAiB;IAF7B,IAAA,kBAAQ,GAAE;IACV,IAAA,2BAAgB,GAAE;6CAE+B,sCAAiB;GADtD,iBAAiB,CAyD7B"}
@@ -0,0 +1,49 @@
1
+ import { EntityManager, Repository } from 'typeorm';
2
+ import { ApprovalInstanceEntity } from '../workflow-engine/approval-instance.entity';
3
+ import { TaskCandidateEntity } from '../workflow-engine/task-candidate.entity';
4
+ import { TaskDecisionEntity } from '../workflow-engine/task-decision.entity';
5
+ import { TaskEntity } from '../workflow-engine/task.entity';
6
+ import { AttachmentStorage } from './attachment-storage.token';
7
+ import { BPMResolvedAttachmentOptions } from './attachment-options';
8
+ import { AttachmentEntity } from './attachment.entity';
9
+ import { UploadAttachmentInput } from './dto/upload-attachment.input';
10
+ type AttachmentDisposition = 'attachment' | 'inline';
11
+ export declare class AttachmentService {
12
+ private readonly attachmentRepository;
13
+ private readonly approvalInstanceRepository;
14
+ private readonly taskRepository;
15
+ private readonly taskCandidateRepository;
16
+ private readonly taskDecisionRepository;
17
+ private readonly storage;
18
+ private readonly attachmentOptions;
19
+ constructor(attachmentRepository: Repository<AttachmentEntity>, approvalInstanceRepository: Repository<ApprovalInstanceEntity>, taskRepository: Repository<TaskEntity>, taskCandidateRepository: Repository<TaskCandidateEntity>, taskDecisionRepository: Repository<TaskDecisionEntity>, storage: AttachmentStorage, attachmentOptions?: BPMResolvedAttachmentOptions);
20
+ uploadAttachment(input: UploadAttachmentInput): Promise<AttachmentEntity>;
21
+ listAttachments({ formFieldPath, instanceId, requestedByMemberId, taskId, }: {
22
+ readonly formFieldPath?: string | null;
23
+ readonly instanceId: string;
24
+ readonly requestedByMemberId?: string | null;
25
+ readonly taskId?: string | null;
26
+ }): Promise<readonly AttachmentEntity[]>;
27
+ bindFormDataAttachmentsToInstance(manager: EntityManager, { formData, instanceId, }: {
28
+ readonly formData: Readonly<Record<string, unknown>>;
29
+ readonly instanceId: string;
30
+ }): Promise<void>;
31
+ createSignedUrl({ disposition, id, requestedByMemberId, }: {
32
+ readonly disposition: AttachmentDisposition;
33
+ readonly id: string;
34
+ readonly requestedByMemberId: string;
35
+ }): Promise<string>;
36
+ readSignedAttachment({ disposition, id, token, }: {
37
+ readonly disposition: AttachmentDisposition;
38
+ readonly id: string;
39
+ readonly token: string;
40
+ }): Promise<{
41
+ readonly attachment: AttachmentEntity;
42
+ readonly buffer: Buffer;
43
+ }>;
44
+ private readAttachmentOrThrow;
45
+ private assertAttachmentReadableByMember;
46
+ private isMemberRelatedToTaskCandidates;
47
+ private isMemberRelatedToTaskDecisions;
48
+ }
49
+ export {};
@@ -0,0 +1,276 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AttachmentService = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const crypto_1 = require("crypto");
6
+ const common_1 = require("@nestjs/common");
7
+ const typeorm_1 = require("typeorm");
8
+ const typeorm_2 = require("@nestjs/typeorm");
9
+ const approval_instance_entity_1 = require("../workflow-engine/approval-instance.entity");
10
+ const task_candidate_entity_1 = require("../workflow-engine/task-candidate.entity");
11
+ const task_decision_entity_1 = require("../workflow-engine/task-decision.entity");
12
+ const task_entity_1 = require("../workflow-engine/task.entity");
13
+ const attachment_storage_token_1 = require("./attachment-storage.token");
14
+ const attachment_options_1 = require("./attachment-options");
15
+ const attachment_entity_1 = require("./attachment.entity");
16
+ const UUID_PATTERN = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
17
+ let AttachmentService = class AttachmentService {
18
+ constructor(attachmentRepository, approvalInstanceRepository, taskRepository, taskCandidateRepository, taskDecisionRepository, storage, attachmentOptions = attachment_options_1.DEFAULT_BPM_ATTACHMENT_OPTIONS) {
19
+ this.attachmentRepository = attachmentRepository;
20
+ this.approvalInstanceRepository = approvalInstanceRepository;
21
+ this.taskRepository = taskRepository;
22
+ this.taskCandidateRepository = taskCandidateRepository;
23
+ this.taskDecisionRepository = taskDecisionRepository;
24
+ this.storage = storage;
25
+ this.attachmentOptions = attachmentOptions;
26
+ }
27
+ async uploadAttachment(input) {
28
+ const fileBuffer = Buffer.from(input.contentBase64, 'base64');
29
+ const uploaderMemberId = input.uploaderMemberId?.trim();
30
+ if (!uploaderMemberId) {
31
+ throw new common_1.BadRequestException('Attachment uploader member id is required');
32
+ }
33
+ if (fileBuffer.length !== input.sizeBytes) {
34
+ throw new common_1.BadRequestException('Attachment size does not match payload');
35
+ }
36
+ const checksumSha256 = hashBuffer(fileBuffer);
37
+ if (input.checksumSha256 && input.checksumSha256 !== checksumSha256) {
38
+ throw new common_1.BadRequestException('Attachment checksum mismatch');
39
+ }
40
+ const id = (0, crypto_1.randomUUID)();
41
+ const storageKey = buildStorageKey(id, input.filename);
42
+ const storedFile = await this.storage.write(fileBuffer, {
43
+ contentType: input.mimeType,
44
+ filename: storageKey,
45
+ });
46
+ return this.attachmentRepository.save(this.attachmentRepository.create({
47
+ checksumSha256,
48
+ filename: input.filename,
49
+ formFieldPath: normalizeOptionalText(input.formFieldPath),
50
+ id,
51
+ instanceId: input.instanceId ?? null,
52
+ mimeType: input.mimeType,
53
+ sizeBytes: String(input.sizeBytes),
54
+ storageKey: storedFile.key,
55
+ storageProvider: this.attachmentOptions.storageProviderId,
56
+ taskId: input.taskId ?? null,
57
+ uploaderMemberId,
58
+ }));
59
+ }
60
+ async listAttachments({ formFieldPath = null, instanceId, requestedByMemberId = null, taskId = null, }) {
61
+ const attachments = await this.attachmentRepository.find({
62
+ order: { createdAt: 'ASC' },
63
+ where: {
64
+ instanceId,
65
+ ...(formFieldPath ? { formFieldPath } : {}),
66
+ ...(taskId ? { taskId } : {}),
67
+ },
68
+ });
69
+ if (!requestedByMemberId) {
70
+ return attachments;
71
+ }
72
+ const readableAttachments = await Promise.all(attachments.map(async (attachment) => {
73
+ try {
74
+ await this.assertAttachmentReadableByMember(attachment, requestedByMemberId);
75
+ return attachment;
76
+ }
77
+ catch {
78
+ return null;
79
+ }
80
+ }));
81
+ return readableAttachments.filter((attachment) => attachment !== null);
82
+ }
83
+ async bindFormDataAttachmentsToInstance(manager, { formData, instanceId, }) {
84
+ const attachmentRefs = readAttachmentRefsFromFormData(formData);
85
+ const ids = [...new Set(attachmentRefs.map((ref) => ref.id))];
86
+ if (ids.length === 0) {
87
+ return;
88
+ }
89
+ const attachmentRepository = manager.getRepository(attachment_entity_1.AttachmentEntity);
90
+ const attachments = await attachmentRepository.find({
91
+ where: { id: (0, typeorm_1.In)(ids) },
92
+ });
93
+ const refsById = new Map(attachmentRefs.map((ref) => [ref.id, ref]));
94
+ const nextAttachments = attachments
95
+ .filter((attachment) => attachment.instanceId === null ||
96
+ attachment.instanceId === instanceId)
97
+ .map((attachment) => ({
98
+ ...attachment,
99
+ formFieldPath: attachment.formFieldPath ?? refsById.get(attachment.id)?.path ?? null,
100
+ instanceId,
101
+ }));
102
+ if (nextAttachments.length > 0) {
103
+ await attachmentRepository.save(nextAttachments);
104
+ }
105
+ }
106
+ async createSignedUrl({ disposition, id, requestedByMemberId, }) {
107
+ const attachment = await this.readAttachmentOrThrow(id);
108
+ await this.assertAttachmentReadableByMember(attachment, requestedByMemberId);
109
+ if (disposition === 'inline' && attachment.mimeType !== 'application/pdf') {
110
+ throw new common_1.BadRequestException('Only PDF attachments can be previewed');
111
+ }
112
+ const token = signAttachmentToken({
113
+ disposition,
114
+ expiresAt: Math.floor(Date.now() / 1000) +
115
+ this.attachmentOptions.signedUrlTtlSeconds,
116
+ id,
117
+ }, this.attachmentOptions.signedUrlSecret);
118
+ return `${this.attachmentOptions.publicBaseUrl}${this.attachmentOptions.routePrefix}/${id}/download?token=${encodeURIComponent(token)}&disposition=${disposition}`;
119
+ }
120
+ async readSignedAttachment({ disposition, id, token, }) {
121
+ const payload = verifyAttachmentToken(token, this.attachmentOptions.signedUrlSecret);
122
+ if (payload.id !== id ||
123
+ payload.disposition !== disposition ||
124
+ payload.expiresAt < Math.floor(Date.now() / 1000)) {
125
+ throw new common_1.NotFoundException(`Attachment ${id} was not found`);
126
+ }
127
+ const attachment = await this.readAttachmentOrThrow(id);
128
+ const buffer = await this.storage.read(attachment.storageKey, {
129
+ format: 'buffer',
130
+ });
131
+ return { attachment, buffer };
132
+ }
133
+ async readAttachmentOrThrow(id) {
134
+ const attachment = await this.attachmentRepository.findOne({
135
+ where: { id },
136
+ });
137
+ if (!attachment) {
138
+ throw new common_1.NotFoundException(`Attachment ${id} was not found`);
139
+ }
140
+ return attachment;
141
+ }
142
+ async assertAttachmentReadableByMember(attachment, requestedByMemberId) {
143
+ if (attachment.uploaderMemberId === requestedByMemberId) {
144
+ return;
145
+ }
146
+ const instance = attachment.instanceId
147
+ ? await this.approvalInstanceRepository.findOne({
148
+ where: { id: attachment.instanceId },
149
+ })
150
+ : null;
151
+ if (instance?.initiatorMemberId === requestedByMemberId) {
152
+ return;
153
+ }
154
+ const task = attachment.taskId
155
+ ? await this.taskRepository.findOne({ where: { id: attachment.taskId } })
156
+ : null;
157
+ if (task && isTaskDirectlyReadableByMember(task, requestedByMemberId)) {
158
+ return;
159
+ }
160
+ const relatedTaskIds = attachment.taskId
161
+ ? [attachment.taskId]
162
+ : attachment.instanceId
163
+ ? (await this.taskRepository.find({
164
+ where: { instanceId: attachment.instanceId },
165
+ })).map((candidateTask) => candidateTask.id)
166
+ : [];
167
+ if (relatedTaskIds.length > 0 &&
168
+ (await this.isMemberRelatedToTaskCandidates(relatedTaskIds, requestedByMemberId))) {
169
+ return;
170
+ }
171
+ if (relatedTaskIds.length > 0 &&
172
+ (await this.isMemberRelatedToTaskDecisions(relatedTaskIds, requestedByMemberId))) {
173
+ return;
174
+ }
175
+ if (relatedTaskIds.length > 0 &&
176
+ (await this.taskRepository.find({
177
+ where: { id: (0, typeorm_1.In)(relatedTaskIds) },
178
+ })).some((candidateTask) => isTaskDirectlyReadableByMember(candidateTask, requestedByMemberId))) {
179
+ return;
180
+ }
181
+ throw new common_1.NotFoundException(`Attachment ${attachment.id} was not found`);
182
+ }
183
+ async isMemberRelatedToTaskCandidates(taskIds, memberId) {
184
+ const candidates = await this.taskCandidateRepository.find({
185
+ where: { taskId: (0, typeorm_1.In)([...taskIds]) },
186
+ });
187
+ return candidates.some((candidate) => candidate.memberId === memberId || candidate.originalMemberId === memberId);
188
+ }
189
+ async isMemberRelatedToTaskDecisions(taskIds, memberId) {
190
+ const decisions = await this.taskDecisionRepository.find({
191
+ where: { taskId: (0, typeorm_1.In)([...taskIds]) },
192
+ });
193
+ return decisions.some((decision) => decision.decidedByMemberId === memberId);
194
+ }
195
+ };
196
+ exports.AttachmentService = AttachmentService;
197
+ exports.AttachmentService = AttachmentService = tslib_1.__decorate([
198
+ (0, common_1.Injectable)(),
199
+ tslib_1.__param(0, (0, typeorm_2.InjectRepository)(attachment_entity_1.AttachmentEntity)),
200
+ tslib_1.__param(1, (0, typeorm_2.InjectRepository)(approval_instance_entity_1.ApprovalInstanceEntity)),
201
+ tslib_1.__param(2, (0, typeorm_2.InjectRepository)(task_entity_1.TaskEntity)),
202
+ tslib_1.__param(3, (0, typeorm_2.InjectRepository)(task_candidate_entity_1.TaskCandidateEntity)),
203
+ tslib_1.__param(4, (0, typeorm_2.InjectRepository)(task_decision_entity_1.TaskDecisionEntity)),
204
+ tslib_1.__param(5, (0, common_1.Inject)(attachment_storage_token_1.ATTACHMENT_STORAGE)),
205
+ tslib_1.__param(6, (0, common_1.Optional)()),
206
+ tslib_1.__param(6, (0, common_1.Inject)(attachment_options_1.BPM_ATTACHMENT_OPTIONS)),
207
+ tslib_1.__metadata("design:paramtypes", [typeorm_1.Repository,
208
+ typeorm_1.Repository,
209
+ typeorm_1.Repository,
210
+ typeorm_1.Repository,
211
+ typeorm_1.Repository, Object, Object])
212
+ ], AttachmentService);
213
+ function isTaskDirectlyReadableByMember(task, memberId) {
214
+ return (task.assigneeMemberId === memberId ||
215
+ task.originalAssigneeMemberId === memberId);
216
+ }
217
+ function hashBuffer(buffer) {
218
+ return (0, crypto_1.createHash)('sha256').update(buffer).digest('hex');
219
+ }
220
+ function buildStorageKey(id, filename) {
221
+ return `${id}/${sanitizeFilename(filename)}`;
222
+ }
223
+ function sanitizeFilename(filename) {
224
+ const sanitized = filename.replace(/[^a-zA-Z0-9._-]/g, '_');
225
+ return sanitized || 'attachment.bin';
226
+ }
227
+ function normalizeOptionalText(value) {
228
+ const trimmedValue = value?.trim();
229
+ return trimmedValue ? trimmedValue : null;
230
+ }
231
+ function readAttachmentRefsFromFormData(formData) {
232
+ return Object.entries(formData).flatMap(([fieldKey, value]) => readAttachmentRefsFromValue(value, `form.${fieldKey}`));
233
+ }
234
+ function readAttachmentRefsFromValue(value, path) {
235
+ if (typeof value === 'string') {
236
+ return UUID_PATTERN.test(value) ? [{ id: value, path }] : [];
237
+ }
238
+ if (Array.isArray(value)) {
239
+ return value.flatMap((entry) => readAttachmentRefsFromValue(entry, path));
240
+ }
241
+ if (isRecord(value)) {
242
+ return Object.entries(value).flatMap(([key, entry]) => readAttachmentRefsFromValue(entry, `${path}.${key}`));
243
+ }
244
+ return [];
245
+ }
246
+ function signAttachmentToken(payload, signedUrlSecret) {
247
+ const body = Buffer.from(JSON.stringify(payload), 'utf8').toString('base64url');
248
+ const signature = (0, crypto_1.createHmac)('sha256', signedUrlSecret)
249
+ .update(body)
250
+ .digest('base64url');
251
+ return `${body}.${signature}`;
252
+ }
253
+ function verifyAttachmentToken(token, signedUrlSecret) {
254
+ const [body, signature] = token.split('.');
255
+ const expectedSignature = (0, crypto_1.createHmac)('sha256', signedUrlSecret)
256
+ .update(body ?? '')
257
+ .digest('base64url');
258
+ if (!body || !signature || signature !== expectedSignature) {
259
+ throw new common_1.NotFoundException('Attachment token is invalid');
260
+ }
261
+ const payload = JSON.parse(Buffer.from(body, 'base64url').toString('utf8'));
262
+ if (!isAttachmentTokenPayload(payload)) {
263
+ throw new common_1.NotFoundException('Attachment token is invalid');
264
+ }
265
+ return payload;
266
+ }
267
+ function isAttachmentTokenPayload(value) {
268
+ return (isRecord(value) &&
269
+ typeof value.id === 'string' &&
270
+ typeof value.expiresAt === 'number' &&
271
+ (value.disposition === 'attachment' || value.disposition === 'inline'));
272
+ }
273
+ function isRecord(value) {
274
+ return typeof value === 'object' && value !== null;
275
+ }
276
+ //# sourceMappingURL=attachment.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachment.service.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/attachment/attachment.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ export declare class UploadAttachmentInput {
2
+ instanceId?: string | null;
3
+ taskId?: string | null;
4
+ formFieldPath?: string | null;
5
+ uploaderMemberId?: string | null;
6
+ filename: string;
7
+ mimeType: string;
8
+ sizeBytes: number;
9
+ contentBase64: string;
10
+ checksumSha256?: string | null;
11
+ }