@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,68 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UploadAttachmentInput = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const graphql_1 = require("@nestjs/graphql");
6
+ const class_validator_1 = require("class-validator");
7
+ let UploadAttachmentInput = class UploadAttachmentInput {
8
+ };
9
+ exports.UploadAttachmentInput = UploadAttachmentInput;
10
+ tslib_1.__decorate([
11
+ (0, graphql_1.Field)(() => graphql_1.ID, { nullable: true }),
12
+ (0, class_validator_1.IsOptional)(),
13
+ (0, class_validator_1.IsUUID)(),
14
+ tslib_1.__metadata("design:type", Object)
15
+ ], UploadAttachmentInput.prototype, "instanceId", void 0);
16
+ tslib_1.__decorate([
17
+ (0, graphql_1.Field)(() => graphql_1.ID, { nullable: true }),
18
+ (0, class_validator_1.IsOptional)(),
19
+ (0, class_validator_1.IsUUID)(),
20
+ tslib_1.__metadata("design:type", Object)
21
+ ], UploadAttachmentInput.prototype, "taskId", void 0);
22
+ tslib_1.__decorate([
23
+ (0, graphql_1.Field)(() => String, { nullable: true }),
24
+ (0, class_validator_1.IsOptional)(),
25
+ (0, class_validator_1.IsString)(),
26
+ tslib_1.__metadata("design:type", Object)
27
+ ], UploadAttachmentInput.prototype, "formFieldPath", void 0);
28
+ tslib_1.__decorate([
29
+ (0, graphql_1.Field)(() => String, {
30
+ deprecationReason: 'Ignored. The current authenticated BPM member is always used.',
31
+ nullable: true,
32
+ }),
33
+ (0, class_validator_1.IsOptional)(),
34
+ (0, class_validator_1.IsString)(),
35
+ tslib_1.__metadata("design:type", Object)
36
+ ], UploadAttachmentInput.prototype, "uploaderMemberId", void 0);
37
+ tslib_1.__decorate([
38
+ (0, graphql_1.Field)(),
39
+ (0, class_validator_1.IsString)(),
40
+ tslib_1.__metadata("design:type", String)
41
+ ], UploadAttachmentInput.prototype, "filename", void 0);
42
+ tslib_1.__decorate([
43
+ (0, graphql_1.Field)(),
44
+ (0, class_validator_1.IsString)(),
45
+ tslib_1.__metadata("design:type", String)
46
+ ], UploadAttachmentInput.prototype, "mimeType", void 0);
47
+ tslib_1.__decorate([
48
+ (0, graphql_1.Field)(() => graphql_1.Int),
49
+ (0, class_validator_1.IsInt)(),
50
+ (0, class_validator_1.Max)(10 * 1024 * 1024),
51
+ (0, class_validator_1.Min)(1),
52
+ tslib_1.__metadata("design:type", Number)
53
+ ], UploadAttachmentInput.prototype, "sizeBytes", void 0);
54
+ tslib_1.__decorate([
55
+ (0, graphql_1.Field)(),
56
+ (0, class_validator_1.IsBase64)(),
57
+ tslib_1.__metadata("design:type", String)
58
+ ], UploadAttachmentInput.prototype, "contentBase64", void 0);
59
+ tslib_1.__decorate([
60
+ (0, graphql_1.Field)(() => String, { nullable: true }),
61
+ (0, class_validator_1.IsOptional)(),
62
+ (0, class_validator_1.IsString)(),
63
+ tslib_1.__metadata("design:type", Object)
64
+ ], UploadAttachmentInput.prototype, "checksumSha256", void 0);
65
+ exports.UploadAttachmentInput = UploadAttachmentInput = tslib_1.__decorate([
66
+ (0, graphql_1.InputType)()
67
+ ], UploadAttachmentInput);
68
+ //# sourceMappingURL=upload-attachment.input.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload-attachment.input.js","sourceRoot":"","sources":["../../../../../../../libs/bpm-core/src/lib/attachment/dto/upload-attachment.input.ts"],"names":[],"mappings":";;;;AAAA,6CAA4D;AAC5D,qDAQyB;AAGlB,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;CA+CjC,CAAA;AA/CY,sDAAqB;AAIhC;IAHC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,YAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACnC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;;yDACkB;AAK3B;IAHC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,YAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACnC,IAAA,4BAAU,GAAE;IACZ,IAAA,wBAAM,GAAE;;qDACc;AAKvB;IAHC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACvC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;4DACmB;AAS9B;IAPC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE;QACnB,iBAAiB,EACf,+DAA+D;QACjE,QAAQ,EAAE,IAAI;KACf,CAAC;IACD,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;+DACsB;AAIjC;IAFC,IAAA,eAAK,GAAE;IACP,IAAA,0BAAQ,GAAE;;uDACO;AAIlB;IAFC,IAAA,eAAK,GAAE;IACP,IAAA,0BAAQ,GAAE;;uDACO;AAMlB;IAJC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,aAAG,CAAC;IAChB,IAAA,uBAAK,GAAE;IACP,IAAA,qBAAG,EAAC,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;IACrB,IAAA,qBAAG,EAAC,CAAC,CAAC;;wDACY;AAInB;IAFC,IAAA,eAAK,GAAE;IACP,IAAA,0BAAQ,GAAE;;4DACY;AAKvB;IAHC,IAAA,eAAK,EAAC,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACvC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;6DACoB;gCA9CpB,qBAAqB;IADjC,IAAA,mBAAS,GAAE;GACC,qBAAqB,CA+CjC"}
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./attachment-options"), exports);
5
+ tslib_1.__exportStar(require("./attachment-storage.provider"), exports);
6
+ tslib_1.__exportStar(require("./attachment-storage.token"), exports);
7
+ tslib_1.__exportStar(require("./attachment.module"), exports);
8
+ tslib_1.__exportStar(require("./attachment.service"), exports);
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/attachment/index.ts"],"names":[],"mappings":";;;AAAA,+DAAqC;AACrC,wEAA8C;AAC9C,qEAA2C;AAC3C,8DAAoC;AACpC,+DAAqC"}
@@ -0,0 +1,155 @@
1
+ import { DynamicModule, InjectionToken, Provider } from '@nestjs/common';
2
+ import { ModuleMetadata } from '@nestjs/common/interfaces';
3
+ import { BPMRootAttachmentOptions } from '../attachment/attachment-options';
4
+ import { AttachmentStorage } from '../attachment/attachment-storage.token';
5
+ import { BPMAuthModuleOptions } from '../bpm-auth/bpm-auth.options';
6
+ import { BPMRootIdentityOptions } from '../identity/identity-options';
7
+ import { BPMMemberResolver } from '../identity/member-resolver.interface';
8
+ import { BPMRootNotificationOptions } from '../notification/notification-options';
9
+ import { BPMRootSignatureOptions } from '../signature/signature-options';
10
+ import { BPMWorkflowServiceTaskDispatcher } from '../workflow-engine/workflow-service-task-dispatcher.token';
11
+ export interface BPMRootModuleOptions extends Pick<ModuleMetadata, 'imports'>, BPMRootAttachmentOptions, BPMRootIdentityOptions, BPMRootNotificationOptions, BPMRootSignatureOptions {
12
+ /**
13
+ * Host-provided storage adapter for BPM attachments.
14
+ *
15
+ * When omitted, BPM stores attachments through the local
16
+ * `@rytass/storages-adapter-local` adapter under `.storage/attachments`.
17
+ * Hosts can replace this provider with any `@rytass/storages` compatible
18
+ * adapter such as MinIO, S3, or GCS.
19
+ */
20
+ readonly attachmentStorageProvider?: Provider<AttachmentStorage>;
21
+ /**
22
+ * Factory that resolves the current BPM auth context from NestJS execution
23
+ * context.
24
+ *
25
+ * BPM guards, GraphQL decorators, and domain services use this callback to
26
+ * identify the current member and organization context. When omitted, BPM
27
+ * operations that require authentication will not receive a host session.
28
+ */
29
+ readonly authContextFactory?: BPMAuthModuleOptions['contextFactory'];
30
+ /**
31
+ * Host-provided member resolver provider.
32
+ *
33
+ * BPM uses this provider to resolve member metadata, organization identity,
34
+ * display names, and approver candidates without coupling
35
+ * `@rytass/bpm-core-nestjs-module` to a specific external identity system.
36
+ */
37
+ readonly memberResolverProvider: Provider<BPMMemberResolver>;
38
+ /**
39
+ * Host-provided dispatcher for executable workflow service tasks.
40
+ *
41
+ * When omitted, BPM sends WEBHOOK service tasks with the built-in `fetch`
42
+ * dispatcher. Wrapper apps can replace this provider to add auth headers,
43
+ * request signing, retry queues, or an outbound integration bus.
44
+ */
45
+ readonly workflowServiceTaskDispatcherProvider?: Provider<BPMWorkflowServiceTaskDispatcher>;
46
+ }
47
+ export interface BPMRootModuleAsyncFactoryOptions extends BPMRootAttachmentOptions, BPMRootIdentityOptions, BPMRootNotificationOptions, BPMRootSignatureOptions {
48
+ /**
49
+ * Factory that resolves the current BPM auth context from NestJS execution
50
+ * context.
51
+ *
52
+ * BPM guards, GraphQL decorators, and domain services use this callback to
53
+ * identify the current member and organization context. When omitted, BPM
54
+ * operations that require authentication will not receive a host session.
55
+ */
56
+ readonly authContextFactory?: BPMAuthModuleOptions['contextFactory'];
57
+ }
58
+ export interface BPMRootModuleAsyncOptions extends Pick<ModuleMetadata, 'imports'> {
59
+ /**
60
+ * Controller mount path used by the BPM attachment endpoints.
61
+ *
62
+ * Set at module wiring time because Nest reads controller path metadata
63
+ * synchronously when the application starts. Async factories cannot drive
64
+ * this value; only static URL routing decisions should set it. Defaults to
65
+ * `/attachments`.
66
+ */
67
+ readonly attachmentRoutePrefix?: string | null;
68
+ /**
69
+ * Host-provided storage adapter for BPM attachments.
70
+ *
71
+ * This provider is static at module wiring time. If secrets are required,
72
+ * use a Nest provider with `useFactory` / `inject` here.
73
+ */
74
+ readonly attachmentStorageProvider?: Provider<AttachmentStorage>;
75
+ /**
76
+ * Providers injected into `useFactory`.
77
+ *
78
+ * This is typically used to read Vault-backed SMTP, webhook, and auth
79
+ * settings before constructing the flattened BPM root options.
80
+ */
81
+ readonly inject?: readonly InjectionToken[];
82
+ /**
83
+ * Host-provided member resolver provider.
84
+ *
85
+ * BPM uses this provider to resolve member metadata, organization identity,
86
+ * display names, and approver candidates without coupling
87
+ * `@rytass/bpm-core-nestjs-module` to a specific external identity system.
88
+ */
89
+ readonly memberResolverProvider: Provider<BPMMemberResolver>;
90
+ /**
91
+ * Host-provided dispatcher for executable workflow service tasks.
92
+ *
93
+ * This provider is static at module wiring time. If secrets are required,
94
+ * use a Nest provider with `useFactory` / `inject` here.
95
+ */
96
+ readonly workflowServiceTaskDispatcherProvider?: Provider<BPMWorkflowServiceTaskDispatcher>;
97
+ /**
98
+ * Async factory returning BPM root options.
99
+ *
100
+ * The returned object intentionally keeps all BPM settings flat at the root
101
+ * level, for example `authContextFactory`, `notificationEmailSmtpHost`, and
102
+ * `notificationSlaSchedulerEnabled`.
103
+ */
104
+ readonly useFactory: (...args: readonly unknown[]) => BPMRootModuleAsyncFactoryOptions | Promise<BPMRootModuleAsyncFactoryOptions>;
105
+ }
106
+ /**
107
+ * Aggregate entry point that wires every BPM domain module
108
+ * (`BPMAuthModule`, `IdentityModule`, `OrganizationModule`, `FormModule`,
109
+ * `TemplateModule`, `WorkflowEngineModule`, `DelegationModule`,
110
+ * `NotificationModule`, `SignatureModule`, `AttachmentModule`) into a
111
+ * NestJS host application.
112
+ *
113
+ * Hosts call `forRoot` or `forRootAsync` once from their root `AppModule`.
114
+ * BPMCore does **not** own login, GraphQL setup, TypeORM bootstrap, or
115
+ * Vault loading — those remain the host's responsibility. See the
116
+ * package README sections "Embedding & auth", "Organization data
117
+ * ownership", and "Consumer quickstart" for the full contract.
118
+ *
119
+ * The host must avoid Nest's `app.setGlobalPrefix(...)`; BPM controllers
120
+ * mount at relative paths driven by their respective options (notably
121
+ * `attachmentRoutePrefix`).
122
+ *
123
+ * @example
124
+ * ```ts
125
+ * BPMRootModule.forRoot({
126
+ * authContextFactory: readBPMAuthContextFromGqlContext,
127
+ * memberResolverProvider: {
128
+ * provide: BPM_MEMBER_RESOLVER,
129
+ * useClass: HostMemberResolver,
130
+ * },
131
+ * attachmentPublicBaseUrl: process.env.BPM_PUBLIC_BASE_URL,
132
+ * attachmentSignedUrlSecret: process.env.BPM_ATTACHMENT_SIGNING_SECRET,
133
+ * });
134
+ * ```
135
+ */
136
+ export declare class BPMRootModule {
137
+ /**
138
+ * Static configuration. Use this when all BPM options are known at module
139
+ * wiring time (no async secret loading needed).
140
+ */
141
+ static forRoot(options: BPMRootModuleOptions): DynamicModule;
142
+ /**
143
+ * Async configuration. Use this when BPM options must be resolved at
144
+ * runtime — typically when SMTP, webhook, or signature secrets are
145
+ * loaded from Vault / KMS / a host `ConfigService`.
146
+ *
147
+ * Routing-time decisions such as `attachmentRoutePrefix`,
148
+ * `memberResolverProvider`, `attachmentStorageProvider`, and
149
+ * `workflowServiceTaskDispatcherProvider` are read from the top-level
150
+ * options object (not from the `useFactory` return value), because
151
+ * Nest reads controller path metadata and provider tokens synchronously
152
+ * during application bootstrap.
153
+ */
154
+ static forRootAsync(options: BPMRootModuleAsyncOptions): DynamicModule;
155
+ }
@@ -0,0 +1,170 @@
1
+ "use strict";
2
+ var BPMRootModule_1;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.BPMRootModule = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const common_1 = require("@nestjs/common");
7
+ const attachment_module_1 = require("../attachment/attachment.module");
8
+ const bpm_auth_module_1 = require("../bpm-auth/bpm-auth.module");
9
+ const delegation_module_1 = require("../delegation/delegation.module");
10
+ const form_module_1 = require("../form/form.module");
11
+ const identity_module_1 = require("../identity/identity.module");
12
+ const notification_module_1 = require("../notification/notification.module");
13
+ const notification_options_module_1 = require("../notification/notification-options.module");
14
+ const organization_module_1 = require("../organization/organization.module");
15
+ const signature_module_1 = require("../signature/signature.module");
16
+ const template_module_1 = require("../template/template.module");
17
+ const workflow_engine_module_1 = require("../workflow-engine/workflow-engine.module");
18
+ /**
19
+ * Aggregate entry point that wires every BPM domain module
20
+ * (`BPMAuthModule`, `IdentityModule`, `OrganizationModule`, `FormModule`,
21
+ * `TemplateModule`, `WorkflowEngineModule`, `DelegationModule`,
22
+ * `NotificationModule`, `SignatureModule`, `AttachmentModule`) into a
23
+ * NestJS host application.
24
+ *
25
+ * Hosts call `forRoot` or `forRootAsync` once from their root `AppModule`.
26
+ * BPMCore does **not** own login, GraphQL setup, TypeORM bootstrap, or
27
+ * Vault loading — those remain the host's responsibility. See the
28
+ * package README sections "Embedding & auth", "Organization data
29
+ * ownership", and "Consumer quickstart" for the full contract.
30
+ *
31
+ * The host must avoid Nest's `app.setGlobalPrefix(...)`; BPM controllers
32
+ * mount at relative paths driven by their respective options (notably
33
+ * `attachmentRoutePrefix`).
34
+ *
35
+ * @example
36
+ * ```ts
37
+ * BPMRootModule.forRoot({
38
+ * authContextFactory: readBPMAuthContextFromGqlContext,
39
+ * memberResolverProvider: {
40
+ * provide: BPM_MEMBER_RESOLVER,
41
+ * useClass: HostMemberResolver,
42
+ * },
43
+ * attachmentPublicBaseUrl: process.env.BPM_PUBLIC_BASE_URL,
44
+ * attachmentSignedUrlSecret: process.env.BPM_ATTACHMENT_SIGNING_SECRET,
45
+ * });
46
+ * ```
47
+ */
48
+ let BPMRootModule = BPMRootModule_1 = class BPMRootModule {
49
+ /**
50
+ * Static configuration. Use this when all BPM options are known at module
51
+ * wiring time (no async secret loading needed).
52
+ */
53
+ static forRoot(options) {
54
+ const featureModules = createBPMFeatureModules(options);
55
+ return {
56
+ exports: [...featureModules],
57
+ imports: [...(options.imports ?? []), ...featureModules],
58
+ module: BPMRootModule_1,
59
+ };
60
+ }
61
+ /**
62
+ * Async configuration. Use this when BPM options must be resolved at
63
+ * runtime — typically when SMTP, webhook, or signature secrets are
64
+ * loaded from Vault / KMS / a host `ConfigService`.
65
+ *
66
+ * Routing-time decisions such as `attachmentRoutePrefix`,
67
+ * `memberResolverProvider`, `attachmentStorageProvider`, and
68
+ * `workflowServiceTaskDispatcherProvider` are read from the top-level
69
+ * options object (not from the `useFactory` return value), because
70
+ * Nest reads controller path metadata and provider tokens synchronously
71
+ * during application bootstrap.
72
+ */
73
+ static forRootAsync(options) {
74
+ const authOptions = {
75
+ imports: options.imports,
76
+ inject: options.inject,
77
+ useFactory: async (...args) => {
78
+ const rootOptions = await options.useFactory(...args);
79
+ return createBPMAuthModuleOptions(rootOptions);
80
+ },
81
+ };
82
+ return {
83
+ exports: [
84
+ notification_options_module_1.NotificationOptionsModule,
85
+ bpm_auth_module_1.BPMAuthModule,
86
+ identity_module_1.IdentityModule,
87
+ organization_module_1.OrganizationModule,
88
+ attachment_module_1.AttachmentModule,
89
+ form_module_1.FormModule,
90
+ template_module_1.TemplateModule,
91
+ delegation_module_1.DelegationModule,
92
+ notification_module_1.NotificationModule,
93
+ signature_module_1.SignatureModule,
94
+ workflow_engine_module_1.WorkflowEngineModule,
95
+ ],
96
+ imports: [
97
+ notification_options_module_1.NotificationOptionsModule.forRootAsync({
98
+ imports: options.imports,
99
+ inject: options.inject,
100
+ useFactory: options.useFactory,
101
+ }),
102
+ bpm_auth_module_1.BPMAuthModule.forRootAsync(authOptions),
103
+ identity_module_1.IdentityModule.forRootAsync({
104
+ imports: options.imports,
105
+ inject: options.inject,
106
+ memberResolverProvider: options.memberResolverProvider,
107
+ useFactory: options.useFactory,
108
+ }),
109
+ organization_module_1.OrganizationModule,
110
+ attachment_module_1.AttachmentModule.forRootAsync({
111
+ attachmentRoutePrefix: options.attachmentRoutePrefix,
112
+ imports: options.imports,
113
+ inject: options.inject,
114
+ storageProvider: options.attachmentStorageProvider,
115
+ useFactory: options.useFactory,
116
+ }),
117
+ form_module_1.FormModule,
118
+ template_module_1.TemplateModule,
119
+ delegation_module_1.DelegationModule,
120
+ notification_module_1.NotificationModule,
121
+ signature_module_1.SignatureModule.forRootAsync({
122
+ imports: options.imports,
123
+ inject: options.inject,
124
+ useFactory: options.useFactory,
125
+ }),
126
+ workflow_engine_module_1.WorkflowEngineModule.forRoot({
127
+ imports: options.imports,
128
+ serviceTaskDispatcherProvider: options.workflowServiceTaskDispatcherProvider,
129
+ }),
130
+ ],
131
+ module: BPMRootModule_1,
132
+ };
133
+ }
134
+ };
135
+ exports.BPMRootModule = BPMRootModule;
136
+ exports.BPMRootModule = BPMRootModule = BPMRootModule_1 = tslib_1.__decorate([
137
+ (0, common_1.Module)({})
138
+ ], BPMRootModule);
139
+ function createBPMFeatureModules(options) {
140
+ return [
141
+ notification_options_module_1.NotificationOptionsModule.forRoot(options),
142
+ bpm_auth_module_1.BPMAuthModule.forRoot(createBPMAuthModuleOptions(options)),
143
+ identity_module_1.IdentityModule.forRoot({
144
+ ...options,
145
+ imports: options.imports,
146
+ memberResolverProvider: options.memberResolverProvider,
147
+ }),
148
+ organization_module_1.OrganizationModule,
149
+ attachment_module_1.AttachmentModule.forRoot({
150
+ ...options,
151
+ imports: options.imports,
152
+ storageProvider: options.attachmentStorageProvider,
153
+ }),
154
+ form_module_1.FormModule,
155
+ template_module_1.TemplateModule,
156
+ delegation_module_1.DelegationModule,
157
+ notification_module_1.NotificationModule,
158
+ signature_module_1.SignatureModule.forRoot(options),
159
+ workflow_engine_module_1.WorkflowEngineModule.forRoot({
160
+ imports: options.imports,
161
+ serviceTaskDispatcherProvider: options.workflowServiceTaskDispatcherProvider,
162
+ }),
163
+ ];
164
+ }
165
+ function createBPMAuthModuleOptions(options) {
166
+ return {
167
+ contextFactory: options.authContextFactory,
168
+ };
169
+ }
170
+ //# sourceMappingURL=bpm-root.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bpm-root.module.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/bpm/bpm-root.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAMwB;AAGxB,uEAAmE;AAEnE,iEAA4D;AAK5D,uEAAmE;AACnE,qDAAiD;AAEjD,iEAA6D;AAE7D,6EAAyE;AACzE,6FAAwF;AAExF,6EAAyE;AAEzE,oEAAgE;AAChE,iEAA6D;AAC7D,sFAAiF;AAiIjF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEI,IAAM,aAAa,qBAAnB,MAAM,aAAa;IACxB;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,OAA6B;QAC1C,MAAM,cAAc,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAExD,OAAO;YACL,OAAO,EAAE,CAAC,GAAG,cAAc,CAAC;YAC5B,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC;YACxD,MAAM,EAAE,eAAa;SACtB,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,YAAY,CAAC,OAAkC;QACpD,MAAM,WAAW,GAA8B;YAC7C,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,UAAU,EAAE,KAAK,EACf,GAAG,IAAwB,EACI,EAAE;gBACjC,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;gBAEtD,OAAO,0BAA0B,CAAC,WAAW,CAAC,CAAC;YACjD,CAAC;SACF,CAAC;QAEF,OAAO;YACL,OAAO,EAAE;gBACP,uDAAyB;gBACzB,+BAAa;gBACb,gCAAc;gBACd,wCAAkB;gBAClB,oCAAgB;gBAChB,wBAAU;gBACV,gCAAc;gBACd,oCAAgB;gBAChB,wCAAkB;gBAClB,kCAAe;gBACf,6CAAoB;aACrB;YACD,OAAO,EAAE;gBACP,uDAAyB,CAAC,YAAY,CAAC;oBACrC,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC;gBACF,+BAAa,CAAC,YAAY,CAAC,WAAW,CAAC;gBACvC,gCAAc,CAAC,YAAY,CAAC;oBAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;oBACtD,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC;gBACF,wCAAkB;gBAClB,oCAAgB,CAAC,YAAY,CAAC;oBAC5B,qBAAqB,EAAE,OAAO,CAAC,qBAAqB;oBACpD,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,eAAe,EAAE,OAAO,CAAC,yBAAyB;oBAClD,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC;gBACF,wBAAU;gBACV,gCAAc;gBACd,oCAAgB;gBAChB,wCAAkB;gBAClB,kCAAe,CAAC,YAAY,CAAC;oBAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,MAAM,EAAE,OAAO,CAAC,MAAM;oBACtB,UAAU,EAAE,OAAO,CAAC,UAAU;iBAC/B,CAAC;gBACF,6CAAoB,CAAC,OAAO,CAAC;oBAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;oBACxB,6BAA6B,EAC3B,OAAO,CAAC,qCAAqC;iBAChD,CAAC;aACH;YACD,MAAM,EAAE,eAAa;SACtB,CAAC;IACJ,CAAC;CACF,CAAA;AA7FY,sCAAa;wBAAb,aAAa;IADzB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,aAAa,CA6FzB;AAED,SAAS,uBAAuB,CAC9B,OAA6B;IAE7B,OAAO;QACL,uDAAyB,CAAC,OAAO,CAAC,OAAO,CAAC;QAC1C,+BAAa,CAAC,OAAO,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAC1D,gCAAc,CAAC,OAAO,CAAC;YACrB,GAAG,OAAO;YACV,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;SACvD,CAAC;QACF,wCAAkB;QAClB,oCAAgB,CAAC,OAAO,CAAC;YACvB,GAAG,OAAO;YACV,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,eAAe,EAAE,OAAO,CAAC,yBAAyB;SACnD,CAAC;QACF,wBAAU;QACV,gCAAc;QACd,oCAAgB;QAChB,wCAAkB;QAClB,kCAAe,CAAC,OAAO,CAAC,OAAO,CAAC;QAChC,6CAAoB,CAAC,OAAO,CAAC;YAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,6BAA6B,EAC3B,OAAO,CAAC,qCAAqC;SAChD,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CACjC,OAAgE;IAEhE,OAAO;QACL,cAAc,EAAE,OAAO,CAAC,kBAAkB;KAC3C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./bpm-root.module"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/bpm/index.ts"],"names":[],"mappings":";;;AAAA,4DAAkC"}
@@ -0,0 +1,24 @@
1
+ import { ExecutionContext } from '@nestjs/common';
2
+ /**
3
+ * The minimum authentication context BPM needs to make authorization
4
+ * decisions. Hosts construct this from their own session / JWT / RBAC
5
+ * source and surface it through `BPMRootModuleOptions.authContextFactory`.
6
+ *
7
+ * `roles` and `permissions` are matched against the string sets defined in
8
+ * `BPMAdminGuard` and `BPMDesignerGuard` — see the role / permission table
9
+ * in `libs/bpm-core/README.md` for the exact strings.
10
+ */
11
+ export interface BPMAuthContext {
12
+ readonly memberId: string;
13
+ readonly metadata: Readonly<Record<string, unknown>>;
14
+ readonly permissions: readonly string[];
15
+ readonly roles: readonly string[];
16
+ }
17
+ export interface BPMAuthContextAccessor {
18
+ assertAuthenticated(context?: ExecutionContext): Promise<BPMAuthContext>;
19
+ getCurrentContext(context?: ExecutionContext): Promise<BPMAuthContext | null>;
20
+ getCurrentMemberId(context?: ExecutionContext): Promise<string>;
21
+ }
22
+ export declare const BPM_AUTH_CONTEXT_ACCESSOR: unique symbol;
23
+ export declare const BPM_AUTH_MODULE_OPTIONS: unique symbol;
24
+ export declare function readAuthenticatedBPMContext(accessor: BPMAuthContextAccessor, context?: ExecutionContext): Promise<BPMAuthContext>;
@@ -0,0 +1,4 @@
1
+ import { ExecutionContext } from '@nestjs/common';
2
+ import { BPMAuthContext } from './bpm-auth-context';
3
+ export declare function attachBPMAuthContext(context: ExecutionContext | undefined, authContext: BPMAuthContext): void;
4
+ export declare function extractBPMAuthContext(context?: ExecutionContext): BPMAuthContext | null;
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.attachBPMAuthContext = attachBPMAuthContext;
4
+ exports.extractBPMAuthContext = extractBPMAuthContext;
5
+ const graphql_1 = require("@nestjs/graphql");
6
+ function attachBPMAuthContext(context, authContext) {
7
+ if (!context) {
8
+ return;
9
+ }
10
+ const graphqlContext = graphql_1.GqlExecutionContext.create(context).getContext();
11
+ if (graphqlContext) {
12
+ graphqlContext.bpmAuthContext = authContext;
13
+ if (graphqlContext.req) {
14
+ graphqlContext.req.bpmAuthContext = authContext;
15
+ }
16
+ return;
17
+ }
18
+ const httpRequest = context
19
+ .switchToHttp()
20
+ .getRequest();
21
+ if (httpRequest) {
22
+ httpRequest.bpmAuthContext = authContext;
23
+ }
24
+ }
25
+ function extractBPMAuthContext(context) {
26
+ if (!context) {
27
+ return null;
28
+ }
29
+ const graphqlContext = graphql_1.GqlExecutionContext.create(context).getContext();
30
+ const graphqlAuthContext = readBPMAuthContext(graphqlContext?.bpmAuthContext);
31
+ if (graphqlAuthContext) {
32
+ return graphqlAuthContext;
33
+ }
34
+ const requestAuthContext = readBPMAuthContext(graphqlContext?.req?.bpmAuthContext);
35
+ if (requestAuthContext) {
36
+ return requestAuthContext;
37
+ }
38
+ const httpRequest = context
39
+ .switchToHttp()
40
+ .getRequest();
41
+ return readBPMAuthContext(httpRequest?.bpmAuthContext);
42
+ }
43
+ function readBPMAuthContext(value) {
44
+ if (!isRecord(value)) {
45
+ return null;
46
+ }
47
+ const memberId = value.memberId;
48
+ if (typeof memberId !== 'string') {
49
+ return null;
50
+ }
51
+ return {
52
+ memberId,
53
+ metadata: readRecord(value.metadata),
54
+ permissions: readStringArray(value.permissions),
55
+ roles: readStringArray(value.roles),
56
+ };
57
+ }
58
+ function isRecord(value) {
59
+ return typeof value === 'object' && value !== null;
60
+ }
61
+ function readRecord(value) {
62
+ return isRecord(value) ? value : {};
63
+ }
64
+ function readStringArray(value) {
65
+ return Array.isArray(value)
66
+ ? value.filter((item) => typeof item === 'string')
67
+ : [];
68
+ }
69
+ //# sourceMappingURL=bpm-auth-context.extractor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bpm-auth-context.extractor.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/bpm-auth/bpm-auth-context.extractor.ts"],"names":[],"mappings":";;AAYA,oDA6BC;AAED,sDA6BC;AAvED,6CAAsD;AAWtD,SAAgB,oBAAoB,CAClC,OAAqC,EACrC,WAA2B;IAE3B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,MAAM,cAAc,GAAG,6BAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,UAAU,EAElE,CAAC;IAEJ,IAAI,cAAc,EAAE,CAAC;QACnB,cAAc,CAAC,cAAc,GAAG,WAAW,CAAC;QAE5C,IAAI,cAAc,CAAC,GAAG,EAAE,CAAC;YACvB,cAAc,CAAC,GAAG,CAAC,cAAc,GAAG,WAAW,CAAC;QAClD,CAAC;QAED,OAAO;IACT,CAAC;IAED,MAAM,WAAW,GAAG,OAAO;SACxB,YAAY,EAAE;SACd,UAAU,EAAiC,CAAC;IAE/C,IAAI,WAAW,EAAE,CAAC;QAChB,WAAW,CAAC,cAAc,GAAG,WAAW,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,SAAgB,qBAAqB,CACnC,OAA0B;IAE1B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,cAAc,GAAG,6BAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,UAAU,EAElE,CAAC;IACJ,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAE9E,IAAI,kBAAkB,EAAE,CAAC;QACvB,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED,MAAM,kBAAkB,GAAG,kBAAkB,CAC3C,cAAc,EAAE,GAAG,EAAE,cAAc,CACpC,CAAC;IAEF,IAAI,kBAAkB,EAAE,CAAC;QACvB,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED,MAAM,WAAW,GAAG,OAAO;SACxB,YAAY,EAAE;SACd,UAAU,EAAiC,CAAC;IAE/C,OAAO,kBAAkB,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAc;IACxC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;IAEhC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,QAAQ;QACR,QAAQ,EAAE,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC;QACpC,WAAW,EAAE,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC;QAC/C,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC;KACpC,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AACtC,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACzB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC;QAClE,CAAC,CAAC,EAAE,CAAC;AACT,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BPM_AUTH_MODULE_OPTIONS = exports.BPM_AUTH_CONTEXT_ACCESSOR = void 0;
4
+ exports.readAuthenticatedBPMContext = readAuthenticatedBPMContext;
5
+ const common_1 = require("@nestjs/common");
6
+ exports.BPM_AUTH_CONTEXT_ACCESSOR = Symbol('BPM_AUTH_CONTEXT_ACCESSOR');
7
+ exports.BPM_AUTH_MODULE_OPTIONS = Symbol('BPM_AUTH_MODULE_OPTIONS');
8
+ async function readAuthenticatedBPMContext(accessor, context) {
9
+ const authContext = await accessor.assertAuthenticated(context);
10
+ if (!authContext.memberId.trim()) {
11
+ throw new common_1.UnauthorizedException('BPM member id is required');
12
+ }
13
+ return authContext;
14
+ }
15
+ //# sourceMappingURL=bpm-auth-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bpm-auth-context.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/bpm-auth/bpm-auth-context.ts"],"names":[],"mappings":";;;AA4BA,kEAWC;AAvCD,2CAAyE;AAwB5D,QAAA,yBAAyB,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAEhE,QAAA,uBAAuB,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAC;AAElE,KAAK,UAAU,2BAA2B,CAC/C,QAAgC,EAChC,OAA0B;IAE1B,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAEhE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACjC,MAAM,IAAI,8BAAqB,CAAC,2BAA2B,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { CanActivate, ExecutionContext } from '@nestjs/common';
2
+ import { BPMAuthContext } from './bpm-auth-context';
3
+ export declare class BPMAdminGuard implements CanActivate {
4
+ canActivate(context: ExecutionContext): boolean;
5
+ }
6
+ export declare class BPMDesignerGuard implements CanActivate {
7
+ canActivate(context: ExecutionContext): boolean;
8
+ }
9
+ export declare const BPMAdminOnly: () => ClassDecorator & MethodDecorator;
10
+ export declare const BPMDesignerOnly: () => ClassDecorator & MethodDecorator;
11
+ export declare function isBPMAdmin(authContext: BPMAuthContext): boolean;
12
+ export declare function isBPMDesigner(authContext: BPMAuthContext): boolean;
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BPMDesignerOnly = exports.BPMAdminOnly = exports.BPMDesignerGuard = exports.BPMAdminGuard = void 0;
4
+ exports.isBPMAdmin = isBPMAdmin;
5
+ exports.isBPMDesigner = isBPMDesigner;
6
+ const tslib_1 = require("tslib");
7
+ const common_1 = require("@nestjs/common");
8
+ const bpm_auth_context_extractor_1 = require("./bpm-auth-context.extractor");
9
+ const bpm_auth_guard_1 = require("./bpm-auth.guard");
10
+ const ADMIN_PERMISSIONS = new Set([
11
+ 'bpm:*',
12
+ 'bpm:admin',
13
+ 'bpm.admin',
14
+ 'bpm:admin:*',
15
+ ]);
16
+ const DESIGNER_PERMISSIONS = new Set([
17
+ 'bpm:*',
18
+ 'bpm:admin',
19
+ 'bpm.admin',
20
+ 'bpm:admin:*',
21
+ 'bpm:design',
22
+ 'bpm.design',
23
+ 'bpm.form.design',
24
+ 'bpm.template.design',
25
+ 'bpm:form:design',
26
+ 'bpm:template:design',
27
+ ]);
28
+ let BPMAdminGuard = class BPMAdminGuard {
29
+ canActivate(context) {
30
+ const authContext = (0, bpm_auth_context_extractor_1.extractBPMAuthContext)(context);
31
+ if (authContext && isBPMAdmin(authContext)) {
32
+ return true;
33
+ }
34
+ throw new common_1.ForbiddenException('BPM admin permission is required');
35
+ }
36
+ };
37
+ exports.BPMAdminGuard = BPMAdminGuard;
38
+ exports.BPMAdminGuard = BPMAdminGuard = tslib_1.__decorate([
39
+ (0, common_1.Injectable)()
40
+ ], BPMAdminGuard);
41
+ let BPMDesignerGuard = class BPMDesignerGuard {
42
+ canActivate(context) {
43
+ const authContext = (0, bpm_auth_context_extractor_1.extractBPMAuthContext)(context);
44
+ if (authContext && isBPMDesigner(authContext)) {
45
+ return true;
46
+ }
47
+ throw new common_1.ForbiddenException('BPM designer permission is required');
48
+ }
49
+ };
50
+ exports.BPMDesignerGuard = BPMDesignerGuard;
51
+ exports.BPMDesignerGuard = BPMDesignerGuard = tslib_1.__decorate([
52
+ (0, common_1.Injectable)()
53
+ ], BPMDesignerGuard);
54
+ const BPMAdminOnly = () => (0, common_1.UseGuards)(bpm_auth_guard_1.BPMAuthenticatedGuard, BPMAdminGuard);
55
+ exports.BPMAdminOnly = BPMAdminOnly;
56
+ const BPMDesignerOnly = () => (0, common_1.UseGuards)(bpm_auth_guard_1.BPMAuthenticatedGuard, BPMDesignerGuard);
57
+ exports.BPMDesignerOnly = BPMDesignerOnly;
58
+ function isBPMAdmin(authContext) {
59
+ return (authContext.roles.includes('BPM_ADMIN') ||
60
+ authContext.permissions.some((permission) => ADMIN_PERMISSIONS.has(permission)));
61
+ }
62
+ function isBPMDesigner(authContext) {
63
+ return (isBPMAdmin(authContext) ||
64
+ authContext.roles.includes('BPM_DESIGNER') ||
65
+ authContext.permissions.some((permission) => DESIGNER_PERMISSIONS.has(permission)));
66
+ }
67
+ //# sourceMappingURL=bpm-auth.authorization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bpm-auth.authorization.js","sourceRoot":"","sources":["../../../../../../libs/bpm-core/src/lib/bpm-auth/bpm-auth.authorization.ts"],"names":[],"mappings":";;;AA8DA,gCAOC;AAED,sCAQC;;AA/ED,2CAMwB;AAExB,6EAAqE;AACrE,qDAAyD;AAEzD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,OAAO;IACP,WAAW;IACX,WAAW;IACX,aAAa;CACd,CAAC,CAAC;AACH,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC;IACnC,OAAO;IACP,WAAW;IACX,WAAW;IACX,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,iBAAiB;IACjB,qBAAqB;IACrB,iBAAiB;IACjB,qBAAqB;CACtB,CAAC,CAAC;AAGI,IAAM,aAAa,GAAnB,MAAM,aAAa;IACxB,WAAW,CAAC,OAAyB;QACnC,MAAM,WAAW,GAAG,IAAA,kDAAqB,EAAC,OAAO,CAAC,CAAC;QAEnD,IAAI,WAAW,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,2BAAkB,CAAC,kCAAkC,CAAC,CAAC;IACnE,CAAC;CACF,CAAA;AAVY,sCAAa;wBAAb,aAAa;IADzB,IAAA,mBAAU,GAAE;GACA,aAAa,CAUzB;AAGM,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAC3B,WAAW,CAAC,OAAyB;QACnC,MAAM,WAAW,GAAG,IAAA,kDAAqB,EAAC,OAAO,CAAC,CAAC;QAEnD,IAAI,WAAW,IAAI,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,2BAAkB,CAAC,qCAAqC,CAAC,CAAC;IACtE,CAAC;CACF,CAAA;AAVY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;GACA,gBAAgB,CAU5B;AAEM,MAAM,YAAY,GAAG,GAAqC,EAAE,CACjE,IAAA,kBAAS,EAAC,sCAAqB,EAAE,aAAa,CAAC,CAAC;AADrC,QAAA,YAAY,gBACyB;AAE3C,MAAM,eAAe,GAAG,GAAqC,EAAE,CACpE,IAAA,kBAAS,EAAC,sCAAqB,EAAE,gBAAgB,CAAC,CAAC;AADxC,QAAA,eAAe,mBACyB;AAErD,SAAgB,UAAU,CAAC,WAA2B;IACpD,OAAO,CACL,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC;QACvC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAC1C,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,CAClC,CACF,CAAC;AACJ,CAAC;AAED,SAAgB,aAAa,CAAC,WAA2B;IACvD,OAAO,CACL,UAAU,CAAC,WAAW,CAAC;QACvB,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC;QAC1C,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAC1C,oBAAoB,CAAC,GAAG,CAAC,UAAU,CAAC,CACrC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const BPMAuthenticated: () => ClassDecorator & MethodDecorator;
2
+ export declare const BPMCurrentAuthContext: (...dataOrPipes: unknown[]) => ParameterDecorator;
3
+ export declare const BPMCurrentMemberId: (...dataOrPipes: unknown[]) => ParameterDecorator;