@abyss-project/tools 1.0.5 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/.eslintrc.js +33 -33
  2. package/.prettierrc +5 -5
  3. package/README.md +32 -32
  4. package/dist/api/beam.api.d.ts +48 -0
  5. package/dist/api/beam.api.js +104 -0
  6. package/dist/api/beam.api.js.map +1 -0
  7. package/dist/api/extraction-plan-preset.api.d.ts +9 -0
  8. package/dist/api/extraction-plan-preset.api.js +23 -0
  9. package/dist/api/extraction-plan-preset.api.js.map +1 -0
  10. package/dist/api/extraction-plan-preset.api.test.d.ts +1 -0
  11. package/dist/api/extraction-plan-preset.api.test.js +41 -0
  12. package/dist/api/extraction-plan-preset.api.test.js.map +1 -0
  13. package/dist/api/extraction-settings.api.d.ts +4 -0
  14. package/dist/api/extraction-settings.api.js +22 -0
  15. package/dist/api/extraction-settings.api.js.map +1 -0
  16. package/dist/api/extraction.api.d.ts +74 -0
  17. package/dist/api/extraction.api.js +416 -0
  18. package/dist/api/extraction.api.js.map +1 -0
  19. package/dist/api/index.d.ts +4 -1
  20. package/dist/api/index.js +4 -1
  21. package/dist/api/index.js.map +1 -1
  22. package/dist/constants/beam.constants.d.ts +1 -0
  23. package/dist/constants/beam.constants.js +5 -0
  24. package/dist/constants/beam.constants.js.map +1 -0
  25. package/dist/constants/index.d.ts +1 -0
  26. package/dist/constants/index.js +1 -0
  27. package/dist/constants/index.js.map +1 -1
  28. package/dist/index.d.ts +108 -59
  29. package/dist/index.js +106 -59
  30. package/dist/index.js.map +1 -1
  31. package/dist/types/enum/beam.enum.d.ts +12 -0
  32. package/dist/types/enum/beam.enum.js +18 -0
  33. package/dist/types/enum/beam.enum.js.map +1 -0
  34. package/dist/types/enum/combine-strategy.enum.d.ts +5 -0
  35. package/dist/types/enum/combine-strategy.enum.js +10 -0
  36. package/dist/types/enum/combine-strategy.enum.js.map +1 -0
  37. package/dist/types/enum/content-share.enum.d.ts +3 -1
  38. package/dist/types/enum/content-share.enum.js +2 -0
  39. package/dist/types/enum/content-share.enum.js.map +1 -1
  40. package/dist/types/enum/document-type.enum.d.ts +9 -0
  41. package/dist/types/enum/document-type.enum.js +14 -0
  42. package/dist/types/enum/document-type.enum.js.map +1 -0
  43. package/dist/types/enum/extraction-feedback-issue-type.enum.d.ts +8 -0
  44. package/dist/types/enum/extraction-feedback-issue-type.enum.js +13 -0
  45. package/dist/types/enum/extraction-feedback-issue-type.enum.js.map +1 -0
  46. package/dist/types/enum/extraction-warning.enum.d.ts +7 -0
  47. package/dist/types/enum/extraction-warning.enum.js +12 -0
  48. package/dist/types/enum/extraction-warning.enum.js.map +1 -0
  49. package/dist/types/enum/index.d.ts +7 -0
  50. package/dist/types/enum/index.js +7 -0
  51. package/dist/types/enum/index.js.map +1 -1
  52. package/dist/types/enum/interpreter-kind.enum.d.ts +5 -0
  53. package/dist/types/enum/interpreter-kind.enum.js +10 -0
  54. package/dist/types/enum/interpreter-kind.enum.js.map +1 -0
  55. package/dist/types/enum/provider-kind.enum.d.ts +10 -0
  56. package/dist/types/enum/provider-kind.enum.js +16 -0
  57. package/dist/types/enum/provider-kind.enum.js.map +1 -0
  58. package/dist/types/interface/api/requests/beam.request.d.ts +122 -0
  59. package/dist/types/interface/api/{responses/pdf.response.js → requests/beam.request.js} +1 -1
  60. package/dist/types/interface/api/requests/beam.request.js.map +1 -0
  61. package/dist/types/interface/api/requests/{rcb.request.d.ts → extraction.request.d.ts} +81 -52
  62. package/dist/types/interface/api/requests/{pdf.public.request.js → extraction.request.js} +1 -1
  63. package/dist/types/interface/api/requests/extraction.request.js.map +1 -0
  64. package/dist/types/interface/api/requests/index.d.ts +2 -1
  65. package/dist/types/interface/api/requests/index.js +2 -1
  66. package/dist/types/interface/api/requests/index.js.map +1 -1
  67. package/dist/types/interface/api/responses/beam.response.d.ts +92 -0
  68. package/dist/types/interface/api/responses/{rcb.response.js → beam.response.js} +1 -1
  69. package/dist/types/interface/api/responses/beam.response.js.map +1 -0
  70. package/dist/types/interface/api/responses/extraction.response.d.ts +403 -0
  71. package/dist/types/interface/api/{requests/user-tag.request.js → responses/extraction.response.js} +1 -1
  72. package/dist/types/interface/api/responses/extraction.response.js.map +1 -0
  73. package/dist/types/interface/api/responses/index.d.ts +2 -1
  74. package/dist/types/interface/api/responses/index.js +2 -1
  75. package/dist/types/interface/api/responses/index.js.map +1 -1
  76. package/dist/types/interface/models/beam.dto.d.ts +58 -0
  77. package/dist/types/interface/{api/requests/pdf.request.js → models/beam.dto.js} +1 -1
  78. package/dist/types/interface/models/beam.dto.js.map +1 -0
  79. package/dist/types/interface/models/extraction-fetched-provenance.dto.test.d.ts +1 -0
  80. package/dist/types/interface/models/extraction-fetched-provenance.dto.test.js +159 -0
  81. package/dist/types/interface/models/extraction-fetched-provenance.dto.test.js.map +1 -0
  82. package/dist/types/interface/models/extraction-plan.dto.d.ts +163 -0
  83. package/dist/types/interface/models/extraction-plan.dto.js +11 -0
  84. package/dist/types/interface/models/extraction-plan.dto.js.map +1 -0
  85. package/dist/types/interface/models/extraction-plan.dto.test.d.ts +1 -0
  86. package/dist/types/interface/models/extraction-plan.dto.test.js +35 -0
  87. package/dist/types/interface/models/extraction-plan.dto.test.js.map +1 -0
  88. package/dist/types/interface/models/extraction-spatial-template.dto.d.ts +37 -0
  89. package/dist/types/interface/{api/requests/rcb.request.js → models/extraction-spatial-template.dto.js} +1 -1
  90. package/dist/types/interface/models/extraction-spatial-template.dto.js.map +1 -0
  91. package/dist/types/interface/models/extraction-spatial-template.dto.test.d.ts +1 -0
  92. package/dist/types/interface/models/extraction-spatial-template.dto.test.js +15 -0
  93. package/dist/types/interface/models/extraction-spatial-template.dto.test.js.map +1 -0
  94. package/dist/types/interface/models/{rcb.dto.d.ts → extraction.dto.d.ts} +64 -48
  95. package/dist/types/interface/models/extraction.dto.js +28 -0
  96. package/dist/types/interface/models/extraction.dto.js.map +1 -0
  97. package/dist/types/interface/models/index.d.ts +4 -1
  98. package/dist/types/interface/models/index.js +4 -1
  99. package/dist/types/interface/models/index.js.map +1 -1
  100. package/dist/types/interface/models/organization.dto.d.ts +2 -0
  101. package/dist/utils/{rcb-webhook.utils.d.ts → extraction-webhook.utils.d.ts} +2 -2
  102. package/dist/utils/{rcb-webhook.utils.js → extraction-webhook.utils.js} +4 -4
  103. package/dist/utils/extraction-webhook.utils.js.map +1 -0
  104. package/dist/utils/index.d.ts +1 -1
  105. package/dist/utils/index.js +1 -1
  106. package/dist/utils/index.js.map +1 -1
  107. package/dist/utils/shape.utils.js +18 -18
  108. package/package.json +14 -9
  109. package/src/api/abyss.admin.api.ts +54 -54
  110. package/src/api/atlas-document.api.ts +68 -68
  111. package/src/api/atlas-group.api.ts +69 -69
  112. package/src/api/atlas-page.api.ts +124 -124
  113. package/src/api/atlas.api.ts +103 -103
  114. package/src/api/atlas.public.api.ts +42 -42
  115. package/src/api/beam.api.ts +300 -0
  116. package/src/api/board-card-checklist.api.ts +99 -99
  117. package/src/api/board-card-comment.api.ts +57 -57
  118. package/src/api/board-card-document.api.ts +57 -57
  119. package/src/api/board-card.api.ts +137 -137
  120. package/src/api/board-column.api.ts +54 -54
  121. package/src/api/board-label.api.ts +87 -87
  122. package/src/api/board.api.ts +122 -122
  123. package/src/api/draw.api.ts +97 -97
  124. package/src/api/draw.public.api.ts +48 -48
  125. package/src/api/extraction-plan-preset.api.test.ts +24 -0
  126. package/src/api/extraction-plan-preset.api.ts +51 -0
  127. package/src/api/extraction-settings.api.ts +59 -0
  128. package/src/api/extraction.api.ts +899 -0
  129. package/src/api/index.ts +56 -51
  130. package/src/api/memo.api.ts +97 -97
  131. package/src/api/metrics.api.ts +27 -27
  132. package/src/api/monitor.api.ts +6 -6
  133. package/src/api/organization.api.ts +14 -14
  134. package/src/api/retrospective-card.api.ts +74 -74
  135. package/src/api/retrospective-member.api.ts +54 -54
  136. package/src/api/retrospective-section.api.ts +74 -74
  137. package/src/api/retrospective.api.ts +124 -124
  138. package/src/api/retrospective.public.api.ts +147 -147
  139. package/src/api/short-link.admin.api.ts +39 -39
  140. package/src/api/short-link.api.ts +125 -125
  141. package/src/api/short-link.public.api.ts +60 -60
  142. package/src/api/tag.api.ts +72 -72
  143. package/src/api/tests/beam.api.spec.ts +42 -0
  144. package/src/constants/atlas.constants.ts +2 -2
  145. package/src/constants/beam.constants.ts +4 -0
  146. package/src/constants/board.constants.ts +7 -7
  147. package/src/constants/index.ts +6 -5
  148. package/src/constants/memo.constants.ts +3 -3
  149. package/src/constants/short-link.constants.ts +11 -11
  150. package/src/constants/tag.constants.ts +3 -3
  151. package/src/index.ts +840 -747
  152. package/src/server-sent-events/index.ts +13 -13
  153. package/src/server-sent-events/protocols/atlas/atlas.sse-protocol.ts +90 -90
  154. package/src/server-sent-events/protocols/atlas/index.ts +1 -1
  155. package/src/server-sent-events/protocols/board/board.sse-protocol.ts +115 -115
  156. package/src/server-sent-events/protocols/board/index.ts +1 -1
  157. package/src/server-sent-events/protocols/board-card/board-card.sse-protocol.ts +26 -26
  158. package/src/server-sent-events/protocols/board-card/index.ts +1 -1
  159. package/src/server-sent-events/protocols/index.ts +26 -26
  160. package/src/server-sent-events/protocols/retrospective/index.ts +1 -1
  161. package/src/server-sent-events/protocols/retrospective/retrospective.sse-protocol.ts +92 -92
  162. package/src/server-sent-events/server-sent-events.manager.ts +73 -73
  163. package/src/types/draw.type.ts +173 -173
  164. package/src/types/enum/api-error.enum.ts +23 -23
  165. package/src/types/enum/beam.enum.ts +24 -0
  166. package/src/types/enum/board-activity.enum.ts +189 -189
  167. package/src/types/enum/board-column-type.enum.ts +6 -6
  168. package/src/types/enum/combine-strategy.enum.ts +7 -0
  169. package/src/types/enum/content-share.enum.ts +38 -36
  170. package/src/types/enum/document-type.enum.ts +10 -0
  171. package/src/types/enum/extraction-feedback-issue-type.enum.ts +10 -0
  172. package/src/types/enum/extraction-warning.enum.ts +21 -0
  173. package/src/types/enum/index.ts +13 -6
  174. package/src/types/enum/interpreter-kind.enum.ts +7 -0
  175. package/src/types/enum/pdf-operation.enum.ts +98 -98
  176. package/src/types/enum/provider-kind.enum.ts +13 -0
  177. package/src/types/enum/rcb-bank.enum.ts +137 -137
  178. package/src/types/index.ts +5 -5
  179. package/src/types/interface/api/index.ts +5 -5
  180. package/src/types/interface/api/requests/abyss.admin.request.ts +20 -20
  181. package/src/types/interface/api/requests/atlas-document.request.ts +32 -32
  182. package/src/types/interface/api/requests/atlas-group.request.ts +45 -45
  183. package/src/types/interface/api/requests/atlas-page.request.ts +84 -84
  184. package/src/types/interface/api/requests/atlas.public.request.ts +21 -21
  185. package/src/types/interface/api/requests/atlas.request.ts +52 -52
  186. package/src/types/interface/api/requests/beam.request.ts +152 -0
  187. package/src/types/interface/api/requests/board-card-checklist.request.ts +61 -61
  188. package/src/types/interface/api/requests/board-card-comment.request.ts +28 -28
  189. package/src/types/interface/api/requests/board-card-document.request.ts +29 -29
  190. package/src/types/interface/api/requests/board-card.request.ts +86 -86
  191. package/src/types/interface/api/requests/board-column.request.ts +30 -30
  192. package/src/types/interface/api/requests/board-label.request.ts +42 -42
  193. package/src/types/interface/api/requests/board.request.ts +61 -61
  194. package/src/types/interface/api/requests/draw.public.request.ts +20 -20
  195. package/src/types/interface/api/requests/draw.request.ts +49 -49
  196. package/src/types/interface/api/requests/extraction.request.ts +366 -0
  197. package/src/types/interface/api/requests/index.ts +29 -28
  198. package/src/types/interface/api/requests/memo.request.ts +49 -49
  199. package/src/types/interface/api/requests/metrics.request.ts +7 -7
  200. package/src/types/interface/api/requests/retrospective-card.request.ts +38 -38
  201. package/src/types/interface/api/requests/retrospective-member.request.ts +20 -20
  202. package/src/types/interface/api/requests/retrospective-section.request.ts +43 -43
  203. package/src/types/interface/api/requests/retrospective.public.request.ts +84 -84
  204. package/src/types/interface/api/requests/retrospective.request.ts +59 -59
  205. package/src/types/interface/api/requests/short-link.admin.request.ts +35 -35
  206. package/src/types/interface/api/requests/short-link.public.request.ts +40 -40
  207. package/src/types/interface/api/requests/short-link.request.ts +71 -71
  208. package/src/types/interface/api/requests/tag.request.ts +54 -54
  209. package/src/types/interface/api/requests/transfer.request.ts +3 -3
  210. package/src/types/interface/api/responses/abyss.admin.response.ts +28 -28
  211. package/src/types/interface/api/responses/atlas-document.response.ts +24 -24
  212. package/src/types/interface/api/responses/atlas-group.response.ts +23 -23
  213. package/src/types/interface/api/responses/atlas-page.response.ts +53 -53
  214. package/src/types/interface/api/responses/atlas.public.response.ts +21 -21
  215. package/src/types/interface/api/responses/atlas.response.ts +32 -32
  216. package/src/types/interface/api/responses/beam.response.ts +122 -0
  217. package/src/types/interface/api/responses/board-card-checklist.response.ts +31 -31
  218. package/src/types/interface/api/responses/board-card-comment.response.ts +20 -20
  219. package/src/types/interface/api/responses/board-card-document.response.ts +21 -21
  220. package/src/types/interface/api/responses/board-card.response.ts +55 -55
  221. package/src/types/interface/api/responses/board-column.response.ts +20 -20
  222. package/src/types/interface/api/responses/board-label.response.ts +31 -31
  223. package/src/types/interface/api/responses/board.response.ts +81 -81
  224. package/src/types/interface/api/responses/count.response.ts +9 -9
  225. package/src/types/interface/api/responses/draw.public.response.ts +22 -22
  226. package/src/types/interface/api/responses/draw.response.ts +32 -32
  227. package/src/types/interface/api/responses/enriched-paginate.response.ts +11 -11
  228. package/src/types/interface/api/responses/extraction.response.ts +454 -0
  229. package/src/types/interface/api/responses/index.ts +33 -32
  230. package/src/types/interface/api/responses/memo.response.ts +32 -32
  231. package/src/types/interface/api/responses/metrics.response.ts +22 -22
  232. package/src/types/interface/api/responses/monitor.response.ts +8 -8
  233. package/src/types/interface/api/responses/recent.response.ts +18 -18
  234. package/src/types/interface/api/responses/retrospective-card.response.ts +23 -23
  235. package/src/types/interface/api/responses/retrospective-member.response.ts +22 -22
  236. package/src/types/interface/api/responses/retrospective-section.response.ts +23 -23
  237. package/src/types/interface/api/responses/retrospective.public.response.ts +57 -57
  238. package/src/types/interface/api/responses/retrospective.response.ts +32 -32
  239. package/src/types/interface/api/responses/short-link.admin.response.ts +21 -21
  240. package/src/types/interface/api/responses/short-link.public.response.ts +26 -26
  241. package/src/types/interface/api/responses/short-link.response.ts +38 -38
  242. package/src/types/interface/api/responses/tag.response.ts +38 -38
  243. package/src/types/interface/api/responses/transfer.response.ts +14 -14
  244. package/src/types/interface/api/type-message/api-error.ts +7 -7
  245. package/src/types/interface/api/type-message/base-paginate.ts +11 -11
  246. package/src/types/interface/api/type-message/response.ts +6 -6
  247. package/src/types/interface/index.ts +2 -2
  248. package/src/types/interface/models/atlas-document.dto.ts +22 -22
  249. package/src/types/interface/models/atlas-group.dto.ts +21 -21
  250. package/src/types/interface/models/atlas-page-content.dto.ts +17 -17
  251. package/src/types/interface/models/atlas-page.dto.ts +26 -26
  252. package/src/types/interface/models/atlas.dto.ts +34 -34
  253. package/src/types/interface/models/beam.dto.ts +67 -0
  254. package/src/types/interface/models/board-activity.dto.ts +20 -20
  255. package/src/types/interface/models/board-card-checklist-row.dto.ts +14 -14
  256. package/src/types/interface/models/board-card-checklist.dto.ts +16 -16
  257. package/src/types/interface/models/board-card-comment.dto.ts +15 -15
  258. package/src/types/interface/models/board-card-document.dto.ts +22 -22
  259. package/src/types/interface/models/board-card-label.dto.ts +14 -14
  260. package/src/types/interface/models/board-card-member.dto.ts +14 -14
  261. package/src/types/interface/models/board-card.dto.ts +37 -37
  262. package/src/types/interface/models/board-column.dto.ts +17 -17
  263. package/src/types/interface/models/board-label.dto.ts +13 -13
  264. package/src/types/interface/models/board.dto.ts +33 -33
  265. package/src/types/interface/models/content-share.dto.ts +16 -16
  266. package/src/types/interface/models/draw.dto.ts +30 -30
  267. package/src/types/interface/models/extraction-fetched-provenance.dto.test.ts +193 -0
  268. package/src/types/interface/models/extraction-plan.dto.test.ts +47 -0
  269. package/src/types/interface/models/extraction-plan.dto.ts +241 -0
  270. package/src/types/interface/models/extraction-spatial-template.dto.test.ts +27 -0
  271. package/src/types/interface/models/extraction-spatial-template.dto.ts +48 -0
  272. package/src/types/interface/models/{rcb.dto.ts → extraction.dto.ts} +317 -267
  273. package/src/types/interface/models/index.ts +34 -31
  274. package/src/types/interface/models/memo.dto.ts +23 -23
  275. package/src/types/interface/models/organization.dto.ts +21 -12
  276. package/src/types/interface/models/project.dto.ts +25 -25
  277. package/src/types/interface/models/retrospective-card.dto.ts +17 -17
  278. package/src/types/interface/models/retrospective-member.dto.ts +15 -15
  279. package/src/types/interface/models/retrospective-section.dto.ts +16 -16
  280. package/src/types/interface/models/retrospective.dto.ts +32 -32
  281. package/src/types/interface/models/short-link-click.dto.ts +33 -33
  282. package/src/types/interface/models/short-link.dto.ts +49 -49
  283. package/src/types/interface/models/tag.dto.ts +26 -26
  284. package/src/types/interface/models/team.dto.ts +12 -12
  285. package/src/types/interface/models/user.dto.ts +26 -26
  286. package/src/types/tests/beam-management-types.spec.ts +38 -0
  287. package/src/types/tests/beam-share-enums.spec.ts +11 -0
  288. package/src/types/tests/beam.dto.spec.ts +61 -0
  289. package/src/types/tests/beam.request-response.spec.ts +43 -0
  290. package/src/utils/board.utils.ts +57 -57
  291. package/src/utils/enum.utils.ts +5 -5
  292. package/src/utils/error.utils.ts +30 -30
  293. package/src/utils/{rcb-webhook.utils.ts → extraction-webhook.utils.ts} +30 -30
  294. package/src/utils/icons.utils.ts +96 -96
  295. package/src/utils/index.ts +6 -6
  296. package/src/utils/shape.utils.ts +292 -292
  297. package/tsconfig.json +36 -35
  298. package/dist/api/atlas-page-content.api.d.ts +0 -0
  299. package/dist/api/atlas-page-content.api.js +0 -2
  300. package/dist/api/atlas-page-content.api.js.map +0 -1
  301. package/dist/api/pdf.api.d.ts +0 -15
  302. package/dist/api/pdf.api.js +0 -61
  303. package/dist/api/pdf.api.js.map +0 -1
  304. package/dist/api/pdf.public.api.d.ts +0 -8
  305. package/dist/api/pdf.public.api.js +0 -33
  306. package/dist/api/pdf.public.api.js.map +0 -1
  307. package/dist/api/rcb.api.d.ts +0 -72
  308. package/dist/api/rcb.api.js +0 -400
  309. package/dist/api/rcb.api.js.map +0 -1
  310. package/dist/api/user-tag.api.d.ts +0 -9
  311. package/dist/api/user-tag.api.js +0 -37
  312. package/dist/api/user-tag.api.js.map +0 -1
  313. package/dist/constants/user-tag.constants.d.ts +0 -3
  314. package/dist/constants/user-tag.constants.js +0 -7
  315. package/dist/constants/user-tag.constants.js.map +0 -1
  316. package/dist/types/enum/pdf-session.enum.d.ts +0 -10
  317. package/dist/types/enum/pdf-session.enum.js +0 -16
  318. package/dist/types/enum/pdf-session.enum.js.map +0 -1
  319. package/dist/types/interface/api/requests/pdf.public.request.d.ts +0 -19
  320. package/dist/types/interface/api/requests/pdf.public.request.js.map +0 -1
  321. package/dist/types/interface/api/requests/pdf.request.d.ts +0 -50
  322. package/dist/types/interface/api/requests/pdf.request.js.map +0 -1
  323. package/dist/types/interface/api/requests/rcb.request.js.map +0 -1
  324. package/dist/types/interface/api/requests/user-tag.request.d.ts +0 -44
  325. package/dist/types/interface/api/requests/user-tag.request.js.map +0 -1
  326. package/dist/types/interface/api/responses/pdf.public.response.d.ts +0 -33
  327. package/dist/types/interface/api/responses/pdf.public.response.js +0 -3
  328. package/dist/types/interface/api/responses/pdf.public.response.js.map +0 -1
  329. package/dist/types/interface/api/responses/pdf.response.d.ts +0 -35
  330. package/dist/types/interface/api/responses/pdf.response.js.map +0 -1
  331. package/dist/types/interface/api/responses/rcb.response.d.ts +0 -376
  332. package/dist/types/interface/api/responses/rcb.response.js.map +0 -1
  333. package/dist/types/interface/api/responses/user-tag.response.d.ts +0 -32
  334. package/dist/types/interface/api/responses/user-tag.response.js +0 -3
  335. package/dist/types/interface/api/responses/user-tag.response.js.map +0 -1
  336. package/dist/types/interface/models/pdf-session.dto.d.ts +0 -28
  337. package/dist/types/interface/models/pdf-session.dto.js +0 -3
  338. package/dist/types/interface/models/pdf-session.dto.js.map +0 -1
  339. package/dist/types/interface/models/rcb.dto.js +0 -26
  340. package/dist/types/interface/models/rcb.dto.js.map +0 -1
  341. package/dist/types/interface/models/user-tag.dto.d.ts +0 -22
  342. package/dist/types/interface/models/user-tag.dto.js +0 -3
  343. package/dist/types/interface/models/user-tag.dto.js.map +0 -1
  344. package/dist/utils/rcb-webhook.utils.js.map +0 -1
  345. package/src/api/rcb.api.ts +0 -829
  346. package/src/types/interface/api/requests/rcb.request.ts +0 -267
  347. package/src/types/interface/api/responses/rcb.response.ts +0 -399
@@ -1,267 +1,317 @@
1
- // ──────────────────────────────────────────────
2
- // RCB (Relevé de Compte Bancaire) DTOs.
3
- // Mirror server-side Sequelize models, dates serialized as ISO strings.
4
- // ──────────────────────────────────────────────
5
-
6
- export type RcbExtractionMode = 'auto' | 'hint' | 'template';
7
- export type RcbProcessingMode = 'sync' | 'queue';
8
- export type RcbExtractionStatus = 'pending' | 'completed' | 'failed' | 'cached';
9
-
10
- export type RcbFeedbackIssueType =
11
- | 'missing_record'
12
- | 'wrong_sign'
13
- | 'wrong_amount'
14
- | 'wrong_date'
15
- | 'wrong_description'
16
- | 'duplicate'
17
- | 'other';
18
-
19
- export type RcbFeedbackStatus = 'open' | 'triaged' | 'fixed' | 'closed';
20
-
21
- export type RcbUsageEventType =
22
- | 'extract.sync.success'
23
- | 'extract.sync.cached'
24
- | 'extract.sync.failed'
25
- | 'extract.queue.enqueued'
26
- | 'extract.queue.success'
27
- | 'extract.queue.cached'
28
- | 'extract.queue.failed'
29
- | 'template.run.success'
30
- | 'template.run.failed';
31
-
32
- export interface IRcbBankHint {
33
- bank: string;
34
- version?: string;
35
- }
36
-
37
- export interface IRcbTransaction {
38
- date?: string;
39
- description?: string;
40
- amount?: number;
41
- balance?: number;
42
- valueDate?: string;
43
- bookingDate?: string;
44
- reference?: string;
45
- [k: string]: unknown;
46
- }
47
-
48
- export interface IRcbExtractionMetadata {
49
- iban?: string;
50
- bic?: string;
51
- bank?: string;
52
- accountHolder?: string;
53
- periodStart?: string;
54
- periodEnd?: string;
55
- openingBalance?: number;
56
- closingBalance?: number;
57
- currency?: string;
58
- [k: string]: unknown;
59
- }
60
-
61
- export interface IRcbFile {
62
- id: string;
63
- userId: string;
64
- applicationId: string | null;
65
- pdfHash: string;
66
- pdfSizeBytes: number;
67
- pdfMimeType: string;
68
- pdfPageCount: number | null;
69
- pdfFilename: string | null;
70
- applicationFileId: string | null;
71
- userExternalId: string | null;
72
- userMetadata: Record<string, unknown> | null;
73
- detectedBank: string | null;
74
- detectedVersion: string | null;
75
- detectedIban: string | null;
76
- detectedBic: string | null;
77
- detectedCurrency: string | null;
78
- createdAt: string;
79
- updatedAt: string;
80
- }
81
-
82
- // Structured warning emitted by the extraction orchestrator. The `code`
83
- // is the i18n key suffix, `data` carries numeric/string values the UI
84
- // formats locally (currencies, dates, etc.).
85
- export enum RcbWarningCode {
86
- NO_RECORDS = 'no_records',
87
- NO_IBAN = 'no_iban',
88
- NO_BALANCES = 'no_balances',
89
- BALANCE_MISMATCH = 'balance_mismatch',
90
- }
91
-
92
- export interface IRcbWarning {
93
- code: RcbWarningCode;
94
- data?: {
95
- actualCents?: number;
96
- expectedCents?: number;
97
- currency?: string;
98
- };
99
- }
100
-
101
- export interface IRcbExtraction {
102
- id: string;
103
- fileId: string;
104
- mode: RcbExtractionMode;
105
- hintBank: string | null;
106
- hintVersion: string | null;
107
- templateId: string | null;
108
- templateVersion: number | null;
109
- status: RcbExtractionStatus;
110
- strategyUsed: string | null;
111
- confidence: number | null;
112
- recordsCount: number | null;
113
- balanceValidated: boolean | null;
114
- durationMs: number | null;
115
- error: string | null;
116
- recordsJson: IRcbTransaction[] | null;
117
- metadataJson: IRcbExtractionMetadata | null;
118
- warningsJson: IRcbWarning[] | null;
119
- tags: string[] | null;
120
- note: string | null;
121
- shareToken: string | null;
122
- shareExpiresAt: string | null;
123
- createdAt: string;
124
- }
125
-
126
- export interface IRcbTemplate {
127
- id: string;
128
- userId: string;
129
- name: string;
130
- description: string | null;
131
- isActive: boolean;
132
- createdAt: string;
133
- updatedAt: string;
134
- }
135
-
136
- /**
137
- * Spatial zone on a PDF page (PDF coords: origin bottom-left, points).
138
- * Restricts regex matching to a specific rectangle.
139
- */
140
- export interface IRcbTemplateZone {
141
- name: string;
142
- page: number; // 1-indexed
143
- x: number;
144
- y: number;
145
- w: number;
146
- h: number;
147
- }
148
-
149
- /**
150
- * Typed shape of the template DSL JSON stored in `templateJson`. Mirrors
151
- * `TemplateDSL` server-side. UI editors should narrow `templateJson` to this
152
- * shape via `templateJson as IRcbTemplateDsl`.
153
- */
154
- export interface IRcbTemplateDsl {
155
- regex_iban?: string;
156
- regex_bic?: string;
157
- period?: { regex: string };
158
- balance?: { opening_regex?: string; closing_regex?: string };
159
- transactions?: {
160
- row_pattern: string;
161
- date_format?: string;
162
- amount_locale?: 'fr' | 'en';
163
- sign_rule?: 'explicit' | 'keyword';
164
- };
165
- skip_patterns?: string[];
166
- zones?: IRcbTemplateZone[];
167
- }
168
-
169
- export interface IRcbTemplateVersion {
170
- id: string;
171
- templateId: string;
172
- version: number;
173
- templateJson: Record<string, unknown>;
174
- comment: string | null;
175
- createdAt: string;
176
- }
177
-
178
- export interface IRcbFeedback {
179
- id: string;
180
- extractionId: string;
181
- userId: string;
182
- issueType: RcbFeedbackIssueType;
183
- description: string | null;
184
- status: RcbFeedbackStatus;
185
- createdAt: string;
186
- }
187
-
188
- export interface IRcbWebhookDelivery {
189
- id: string;
190
- userId: string | null;
191
- organizationId: string | null;
192
- projectId: string | null;
193
- createdByUserId: string | null;
194
- webhookId: string | null;
195
- jobId: string | null;
196
- event: string;
197
- url: string;
198
- payloadJson: Record<string, unknown>;
199
- attempts: number;
200
- lastStatus: number | null;
201
- lastError: string | null;
202
- deliveredAt: string | null;
203
- createdAt: string;
204
- updatedAt: string;
205
- }
206
-
207
- // Webhook event identifier. Values mirror AbyssApplicationEvent's RCB_*
208
- // entries so a logger.log(applicationEvent: ...) and a webhook delivery
209
- // can never drift.
210
- export enum RcbWebhookEvent {
211
- EXTRACT_COMPLETED = 'rcb.extract.completed',
212
- EXTRACT_FAILED = 'rcb.extract.failed',
213
- EXTRACT_LOW_CONFIDENCE = 'rcb.extract.low-confidence',
214
- EXTRACT_BALANCE_KO = 'rcb.extract.balance-ko',
215
- FILE_ARCHIVED = 'rcb.file.archived',
216
- SHARE_MINTED = 'rcb.share.minted',
217
- SHARE_REVOKED = 'rcb.share.revoked',
218
- FEEDBACK_SUBMITTED = 'rcb.feedback.submitted',
219
- JOB_FAILED = 'rcb.job.failed',
220
- EXPORT_COMPLETED = 'rcb.export.completed',
221
- EXPORT_FAILED = 'rcb.export.failed',
222
- }
223
-
224
- export const RCB_WEBHOOK_EVENTS: RcbWebhookEvent[] =
225
- Object.values(RcbWebhookEvent);
226
-
227
- export interface IRcbWebhook {
228
- id: string;
229
- userId: string | null;
230
- organizationId: string | null;
231
- projectId: string | null;
232
- createdByUserId: string | null;
233
- webhookUrl: string;
234
- webhookSecret: string;
235
- isEnabled: boolean;
236
- name: string;
237
- description: string;
238
- scopes: RcbWebhookEvent[];
239
- consecutiveFailures: number;
240
- createdAt: string;
241
- updatedAt: string;
242
- }
243
-
244
- export interface IRcbQuota {
245
- userId: string;
246
- tier: string;
247
- monthlyExtractCap: number | null;
248
- monthlyExtractedCap: number | null;
249
- monthlyBytesCap: number | null;
250
- queueOnlyAboveCount: number | null;
251
- createdAt: string;
252
- updatedAt: string;
253
- }
254
-
255
- export interface IRcbBankVersion {
256
- id: string;
257
- bank: string;
258
- version: string;
259
- validFrom: string | null;
260
- validTo: string | null;
261
- detectorJson: Record<string, unknown>;
262
- parserKind: string;
263
- configJson: Record<string, unknown>;
264
- isActive: boolean;
265
- createdAt: string;
266
- updatedAt: string;
267
- }
1
+ // ──────────────────────────────────────────────
2
+ // Extraction DTOs.
3
+ // Mirror server-side Sequelize models, dates serialized as ISO strings.
4
+ // ──────────────────────────────────────────────
5
+
6
+ import { ExtractionWarningCode } from '../../../types/enum/extraction-warning.enum';
7
+ import { ExtractionFeedbackIssueType } from '../../../types/enum/extraction-feedback-issue-type.enum';
8
+ import type {
9
+ IFieldValue,
10
+ IExecutionManifest,
11
+ IGlobalConfidence,
12
+ } from './extraction-plan.dto';
13
+
14
+ // Re-export so consumers can import ExtractionFeedbackIssueType from the DTO barrel.
15
+ export { ExtractionFeedbackIssueType };
16
+
17
+ export type ExtractionMode = 'auto' | 'hint' | 'template';
18
+ export type ProcessingMode = 'sync' | 'queue';
19
+ export type ExtractionStatus = 'pending' | 'completed' | 'failed' | 'cached';
20
+
21
+ export type ExtractionFeedbackStatus = 'open' | 'triaged' | 'fixed' | 'closed';
22
+
23
+ export type ExtractionUsageEventType =
24
+ | 'extract.sync.success'
25
+ | 'extract.sync.cached'
26
+ | 'extract.sync.failed'
27
+ | 'extract.queue.enqueued'
28
+ | 'extract.queue.success'
29
+ | 'extract.queue.cached'
30
+ | 'extract.queue.failed'
31
+ | 'template.run.success'
32
+ | 'template.run.failed';
33
+
34
+ export interface IExtractionBankHint {
35
+ bank: string;
36
+ version?: string;
37
+ }
38
+
39
+ export interface IExtractionTransaction {
40
+ date?: string;
41
+ description?: string;
42
+ amount?: number;
43
+ balance?: number;
44
+ valueDate?: string;
45
+ bookingDate?: string;
46
+ reference?: string;
47
+ [k: string]: unknown;
48
+ }
49
+
50
+ export interface IExtractionMetadata {
51
+ iban?: string;
52
+ bic?: string;
53
+ bank?: string;
54
+ accountHolder?: string;
55
+ periodStart?: string;
56
+ periodEnd?: string;
57
+ openingBalance?: number;
58
+ closingBalance?: number;
59
+ currency?: string;
60
+ [k: string]: unknown;
61
+ }
62
+
63
+ export interface IExtractionFile {
64
+ id: string;
65
+ userId: string;
66
+ applicationId: string | null;
67
+ pdfHash: string;
68
+ pdfSizeBytes: number;
69
+ pdfMimeType: string;
70
+ pdfPageCount: number | null;
71
+ pdfFilename: string | null;
72
+ applicationFileId: string | null;
73
+ userExternalId: string | null;
74
+ userMetadata: Record<string, unknown> | null;
75
+ detectedBank: string | null;
76
+ detectedVersion: string | null;
77
+ detectedIban: string | null;
78
+ detectedBic: string | null;
79
+ detectedCurrency: string | null;
80
+ createdAt: string;
81
+ updatedAt: string;
82
+ }
83
+
84
+ // Re-export ExtractionWarningCode so consumers can import it from the dto barrel.
85
+ export { ExtractionWarningCode };
86
+
87
+ export interface IExtractionWarning {
88
+ code: ExtractionWarningCode;
89
+ data?: {
90
+ /** Balance mismatch data (bank_statement). */
91
+ actualCents?: number;
92
+ expectedCents?: number;
93
+ currency?: string;
94
+ /**
95
+ * Adapter-specific validation error/warning type string, e.g.
96
+ * `ACTIF_PASSIF_MISMATCH`, `TOTAL_MISMATCH`, `MRZ_INVALID`.
97
+ * Present when `code === ExtractionWarningCode.ADAPTER_VALIDATION_ERROR`.
98
+ */
99
+ type?: string;
100
+ /** Human-readable explanation from the adapter's ValidationResult. */
101
+ message?: string;
102
+ };
103
+ }
104
+
105
+ export interface IExtraction {
106
+ id: string;
107
+ fileId: string;
108
+ mode: ExtractionMode;
109
+ hintBank: string | null;
110
+ hintVersion: string | null;
111
+ templateId: string | null;
112
+ templateVersion: number | null;
113
+ status: ExtractionStatus;
114
+ strategyUsed: string | null;
115
+ confidence: number | null;
116
+ recordsCount: number | null;
117
+ balanceValidated: boolean | null;
118
+ durationMs: number | null;
119
+ error: string | null;
120
+ recordsJson: IExtractionTransaction[] | null;
121
+ metadataJson: IExtractionMetadata | null;
122
+ warningsJson: IExtractionWarning[] | null;
123
+ tags: string[] | null;
124
+ note: string | null;
125
+ shareToken: string | null;
126
+ shareExpiresAt: string | null;
127
+ documentType: string | null;
128
+ documentTypeConfidence: number | null;
129
+ /**
130
+ * Persisted per-field results. Widened (V2-P1, ADDITIVE) to the IFieldValue
131
+ * superset: value + confidence stay at the SAME path (old readers unaffected),
132
+ * and the plan path additionally surfaces chosen / sources / signals /
133
+ * agreement provenance. Legacy template/hints rows persist only value +
134
+ * confidence (still a valid IFieldValue subset on the wire).
135
+ */
136
+ fieldsJson: Record<string, IFieldValue> | null;
137
+ improvementConsent: boolean;
138
+ usableForTraining: boolean;
139
+ supportTicketId: string | null;
140
+ /** AbyssExtract-owned training copy (extraction-training bucket). Purgeable. */
141
+ trainingFileId: string | null;
142
+ /** Whether the OCR layer was used for this extraction run. */
143
+ usedOcr: boolean;
144
+ /** Number of pages processed by the OCR layer. */
145
+ ocrPageCount: number;
146
+ /**
147
+ * Frozen execution manifest (resolved plan + per-pass impl/version) — the
148
+ * reproducible recipe. Present on plan-path rows; absent (null/undefined) on
149
+ * legacy template/hints rows. ADDITIVE, optional.
150
+ */
151
+ executionManifest?: IExecutionManifest | null;
152
+ /**
153
+ * Auditable global confidence (stats + aggregation + per-pass contributions).
154
+ * Surfaced where available; optional/absent otherwise. ADDITIVE, optional.
155
+ */
156
+ globalConfidence?: IGlobalConfidence | null;
157
+ createdAt: string;
158
+ }
159
+
160
+ export interface IExtractionTemplate {
161
+ id: string;
162
+ userId: string;
163
+ name: string;
164
+ description: string | null;
165
+ isActive: boolean;
166
+ createdAt: string;
167
+ updatedAt: string;
168
+ }
169
+
170
+ /**
171
+ * Spatial zone on a PDF page (PDF coords: origin bottom-left, points).
172
+ * Restricts regex matching to a specific rectangle.
173
+ */
174
+ export interface IExtractionTemplateZone {
175
+ name: string;
176
+ page: number; // 1-indexed
177
+ x: number;
178
+ y: number;
179
+ w: number;
180
+ h: number;
181
+ }
182
+
183
+ /**
184
+ * Typed shape of the template DSL JSON stored in `templateJson`. Mirrors
185
+ * `TemplateDSL` server-side. UI editors should narrow `templateJson` to this
186
+ * shape via `templateJson as IExtractionTemplateDsl`.
187
+ */
188
+ export interface IExtractionTemplateDsl {
189
+ regex_iban?: string;
190
+ regex_bic?: string;
191
+ period?: { regex: string };
192
+ balance?: { opening_regex?: string; closing_regex?: string };
193
+ transactions?: {
194
+ row_pattern: string;
195
+ date_format?: string;
196
+ amount_locale?: 'fr' | 'en';
197
+ sign_rule?: 'explicit' | 'keyword';
198
+ };
199
+ skip_patterns?: string[];
200
+ zones?: IExtractionTemplateZone[];
201
+ }
202
+
203
+ export interface IExtractionTemplateVersion {
204
+ id: string;
205
+ templateId: string;
206
+ version: number;
207
+ templateJson: Record<string, unknown>;
208
+ comment: string | null;
209
+ createdAt: string;
210
+ }
211
+
212
+ export interface IExtractionFeedback {
213
+ id: string;
214
+ extractionId: string;
215
+ userId: string;
216
+ issueType: ExtractionFeedbackIssueType;
217
+ fieldKey: string | null;
218
+ expectedValue: string | null;
219
+ description: string | null;
220
+ supportTicketId: string | null;
221
+ status: ExtractionFeedbackStatus;
222
+ createdAt: string;
223
+ }
224
+
225
+ export interface IExtractionWebhookDelivery {
226
+ id: string;
227
+ userId: string | null;
228
+ organizationId: string | null;
229
+ projectId: string | null;
230
+ createdByUserId: string | null;
231
+ webhookId: string | null;
232
+ jobId: string | null;
233
+ event: string;
234
+ url: string;
235
+ payloadJson: Record<string, unknown>;
236
+ attempts: number;
237
+ lastStatus: number | null;
238
+ lastError: string | null;
239
+ deliveredAt: string | null;
240
+ createdAt: string;
241
+ updatedAt: string;
242
+ }
243
+
244
+ // Webhook event identifier. Values mirror AbyssApplicationEvent's RCB_*
245
+ // entries so a logger.log(applicationEvent: ...) and a webhook delivery
246
+ // can never drift.
247
+ export enum ExtractionWebhookEvent {
248
+ EXTRACT_COMPLETED = 'rcb.extract.completed',
249
+ EXTRACT_FAILED = 'rcb.extract.failed',
250
+ EXTRACT_LOW_CONFIDENCE = 'rcb.extract.low-confidence',
251
+ EXTRACT_BALANCE_KO = 'rcb.extract.balance-ko',
252
+ FILE_ARCHIVED = 'rcb.file.archived',
253
+ SHARE_MINTED = 'rcb.share.minted',
254
+ SHARE_REVOKED = 'rcb.share.revoked',
255
+ FEEDBACK_SUBMITTED = 'rcb.feedback.submitted',
256
+ JOB_FAILED = 'rcb.job.failed',
257
+ EXPORT_COMPLETED = 'rcb.export.completed',
258
+ EXPORT_FAILED = 'rcb.export.failed',
259
+ }
260
+
261
+ export const EXTRACTION_WEBHOOK_EVENTS: ExtractionWebhookEvent[] =
262
+ Object.values(ExtractionWebhookEvent);
263
+
264
+ export interface IExtractionWebhook {
265
+ id: string;
266
+ userId: string | null;
267
+ organizationId: string | null;
268
+ projectId: string | null;
269
+ createdByUserId: string | null;
270
+ webhookUrl: string;
271
+ webhookSecret: string;
272
+ isEnabled: boolean;
273
+ name: string;
274
+ description: string;
275
+ scopes: ExtractionWebhookEvent[];
276
+ consecutiveFailures: number;
277
+ createdAt: string;
278
+ updatedAt: string;
279
+ }
280
+
281
+ export interface IExtractionBankVersion {
282
+ id: string;
283
+ bank: string;
284
+ version: string;
285
+ validFrom: string | null;
286
+ validTo: string | null;
287
+ detectorJson: Record<string, unknown>;
288
+ parserKind: string;
289
+ configJson: Record<string, unknown>;
290
+ isActive: boolean;
291
+ createdAt: string;
292
+ updatedAt: string;
293
+ }
294
+
295
+ // ─── EXTRACTION SETTINGS (P4) ────────────────────────────────────────────────
296
+
297
+ /**
298
+ * Scope discriminator for extraction settings.
299
+ * 'user' = personal scope; 'org' = organization scope.
300
+ */
301
+ export enum ExtractionSettingsScopeKind {
302
+ USER = 'user',
303
+ ORG = 'org',
304
+ }
305
+
306
+ /** Per-scope improvement-consent settings row. */
307
+ export interface IExtractionSettings {
308
+ id: string;
309
+ /** Set for personal scope. XOR with organizationId. */
310
+ userId: string | null;
311
+ /** Set for organization scope. XOR with userId. */
312
+ organizationId: string | null;
313
+ /** Factory default for per-extraction improvementConsent. OFF (false) by default. */
314
+ improvementDefault: boolean;
315
+ createdAt: string;
316
+ updatedAt: string;
317
+ }
@@ -1,31 +1,34 @@
1
- export * from './user.dto';
2
- export * from './organization.dto';
3
- export * from './project.dto';
4
- export * from './atlas.dto';
5
- export * from './atlas-document.dto';
6
- export * from './atlas-group.dto';
7
- export * from './atlas-page.dto';
8
- export * from './atlas-page-content.dto';
9
- export * from './draw.dto';
10
- export * from './memo.dto';
11
- export * from './retrospective.dto';
12
- export * from './retrospective-section.dto';
13
- export * from './retrospective-card.dto';
14
- export * from './retrospective-member.dto';
15
- export * from './short-link.dto';
16
- export * from './short-link-click.dto';
17
- export * from './board.dto';
18
- export * from './board-activity.dto';
19
- export * from './board-card.dto';
20
- export * from './board-card-checklist.dto';
21
- export * from './board-card-checklist-row.dto';
22
- export * from './board-card-comment.dto';
23
- export * from './board-card-document.dto';
24
- export * from './board-card-label.dto';
25
- export * from './board-card-member.dto';
26
- export * from './board-column.dto';
27
- export * from './board-label.dto';
28
- export * from './team.dto';
29
- export * from './tag.dto';
30
- export * from './content-share.dto';
31
- export * from './rcb.dto';
1
+ export * from './user.dto';
2
+ export * from './organization.dto';
3
+ export * from './project.dto';
4
+ export * from './atlas.dto';
5
+ export * from './atlas-document.dto';
6
+ export * from './atlas-group.dto';
7
+ export * from './atlas-page.dto';
8
+ export * from './atlas-page-content.dto';
9
+ export * from './draw.dto';
10
+ export * from './memo.dto';
11
+ export * from './retrospective.dto';
12
+ export * from './retrospective-section.dto';
13
+ export * from './retrospective-card.dto';
14
+ export * from './retrospective-member.dto';
15
+ export * from './short-link.dto';
16
+ export * from './short-link-click.dto';
17
+ export * from './beam.dto';
18
+ export * from './board.dto';
19
+ export * from './board-activity.dto';
20
+ export * from './board-card.dto';
21
+ export * from './board-card-checklist.dto';
22
+ export * from './board-card-checklist-row.dto';
23
+ export * from './board-card-comment.dto';
24
+ export * from './board-card-document.dto';
25
+ export * from './board-card-label.dto';
26
+ export * from './board-card-member.dto';
27
+ export * from './board-column.dto';
28
+ export * from './board-label.dto';
29
+ export * from './team.dto';
30
+ export * from './tag.dto';
31
+ export * from './content-share.dto';
32
+ export * from './extraction.dto';
33
+ export * from './extraction-plan.dto';
34
+ export * from './extraction-spatial-template.dto';