@abyss-project/tools 3.0.0 → 3.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 (196) hide show
  1. package/.eslintrc.js +1 -2
  2. package/README.md +1 -1
  3. package/dist/api/atlas-document.api.d.ts +2 -1
  4. package/dist/api/atlas-document.api.js +5 -1
  5. package/dist/api/atlas-document.api.js.map +1 -1
  6. package/dist/api/atlas-group.api.js.map +1 -1
  7. package/dist/api/atlas-page.api.js.map +1 -1
  8. package/dist/api/atlas.api.js +3 -3
  9. package/dist/api/atlas.api.js.map +1 -1
  10. package/dist/api/atlas.public.api.js.map +1 -1
  11. package/dist/api/board-card.api.js.map +1 -1
  12. package/dist/api/board-column.api.js.map +1 -1
  13. package/dist/api/board-label.api.js +1 -2
  14. package/dist/api/board-label.api.js.map +1 -1
  15. package/dist/api/board.api.js +7 -5
  16. package/dist/api/board.api.js.map +1 -1
  17. package/dist/api/draw.api.js +1 -2
  18. package/dist/api/draw.api.js.map +1 -1
  19. package/dist/api/draw.public.api.js.map +1 -1
  20. package/dist/api/extraction-plan-preset.api.js +19 -6
  21. package/dist/api/extraction-plan-preset.api.js.map +1 -1
  22. package/dist/api/extraction-plan-preset.api.test.js +17 -7
  23. package/dist/api/extraction-plan-preset.api.test.js.map +1 -1
  24. package/dist/api/extraction-settings.api.js.map +1 -1
  25. package/dist/api/extraction.api.d.ts +3 -4
  26. package/dist/api/extraction.api.js +41 -80
  27. package/dist/api/extraction.api.js.map +1 -1
  28. package/dist/api/extraction.application.api.d.ts +4 -0
  29. package/dist/api/extraction.application.api.js +23 -0
  30. package/dist/api/extraction.application.api.js.map +1 -0
  31. package/dist/api/extraction.application.api.test.d.ts +1 -0
  32. package/dist/api/extraction.application.api.test.js +69 -0
  33. package/dist/api/extraction.application.api.test.js.map +1 -0
  34. package/dist/api/index.d.ts +1 -0
  35. package/dist/api/index.js +1 -0
  36. package/dist/api/index.js.map +1 -1
  37. package/dist/api/probe-scan.api.d.ts +4 -11
  38. package/dist/api/probe-scan.api.js +18 -28
  39. package/dist/api/probe-scan.api.js.map +1 -1
  40. package/dist/api/probe-scan.api.test.js +27 -7
  41. package/dist/api/probe-scan.api.test.js.map +1 -1
  42. package/dist/api/probe-scan.application.api.d.ts +4 -4
  43. package/dist/api/probe-scan.application.api.js +2 -2
  44. package/dist/api/probe-scan.application.api.js.map +1 -1
  45. package/dist/api/probe-scan.application.api.test.js +21 -7
  46. package/dist/api/probe-scan.application.api.test.js.map +1 -1
  47. package/dist/api/probe-webhook.api.test.js +17 -7
  48. package/dist/api/probe-webhook.api.test.js.map +1 -1
  49. package/dist/api/probe-webhook.application.api.d.ts +1 -1
  50. package/dist/api/probe-webhook.application.api.test.js +17 -7
  51. package/dist/api/probe-webhook.application.api.test.js.map +1 -1
  52. package/dist/api/retrospective.api.js +2 -1
  53. package/dist/api/retrospective.api.js.map +1 -1
  54. package/dist/api/short-link.admin.api.js.map +1 -1
  55. package/dist/api/short-link.api.js.map +1 -1
  56. package/dist/api/short-link.public.api.js.map +1 -1
  57. package/dist/api/tag.api.js.map +1 -1
  58. package/dist/constants/atlas.constants.js +1 -1
  59. package/dist/constants/atlas.constants.js.map +1 -1
  60. package/dist/constants/extract.constants.d.ts +4 -0
  61. package/dist/constants/extract.constants.js +91 -0
  62. package/dist/constants/extract.constants.js.map +1 -0
  63. package/dist/constants/index.d.ts +1 -0
  64. package/dist/constants/index.js +1 -0
  65. package/dist/constants/index.js.map +1 -1
  66. package/dist/index.d.ts +5 -0
  67. package/dist/index.js +22 -7
  68. package/dist/index.js.map +1 -1
  69. package/dist/server-sent-events/server-sent-events.manager.d.ts +1 -2
  70. package/dist/server-sent-events/server-sent-events.manager.js +1 -2
  71. package/dist/server-sent-events/server-sent-events.manager.js.map +1 -1
  72. package/dist/types/enum/document-type.enum.d.ts +1 -0
  73. package/dist/types/enum/document-type.enum.js +1 -0
  74. package/dist/types/enum/document-type.enum.js.map +1 -1
  75. package/dist/types/enum/extract-field-format.enum.d.ts +7 -0
  76. package/dist/types/enum/extract-field-format.enum.js +12 -0
  77. package/dist/types/enum/extract-field-format.enum.js.map +1 -0
  78. package/dist/types/enum/extract-field-key.enum.d.ts +59 -0
  79. package/dist/types/enum/extract-field-key.enum.js +64 -0
  80. package/dist/types/enum/extract-field-key.enum.js.map +1 -0
  81. package/dist/types/enum/extraction-warning.enum.d.ts +4 -1
  82. package/dist/types/enum/extraction-warning.enum.js +3 -0
  83. package/dist/types/enum/extraction-warning.enum.js.map +1 -1
  84. package/dist/types/enum/index.d.ts +2 -0
  85. package/dist/types/enum/index.js +2 -0
  86. package/dist/types/enum/index.js.map +1 -1
  87. package/dist/types/enum/rcb-bank.enum.js +255 -39
  88. package/dist/types/enum/rcb-bank.enum.js.map +1 -1
  89. package/dist/types/interface/api/requests/abyss.admin.request.d.ts +1 -1
  90. package/dist/types/interface/api/requests/atlas-document.request.d.ts +6 -0
  91. package/dist/types/interface/api/requests/board-card-document.request.d.ts +1 -0
  92. package/dist/types/interface/api/requests/extraction.request.d.ts +12 -2
  93. package/dist/types/interface/api/responses/atlas-document.response.d.ts +6 -4
  94. package/dist/types/interface/api/responses/board-card-document.response.d.ts +2 -4
  95. package/dist/types/interface/api/responses/draw.public.response.d.ts +2 -0
  96. package/dist/types/interface/models/extraction-fetched-provenance.dto.test.js +8 -2
  97. package/dist/types/interface/models/extraction-fetched-provenance.dto.test.js.map +1 -1
  98. package/dist/types/interface/models/extraction-plan.dto.test.js +6 -1
  99. package/dist/types/interface/models/extraction-plan.dto.test.js.map +1 -1
  100. package/dist/types/interface/models/extraction-spatial-template.dto.test.js +20 -3
  101. package/dist/types/interface/models/extraction-spatial-template.dto.test.js.map +1 -1
  102. package/dist/types/interface/models/extraction.dto.d.ts +13 -0
  103. package/dist/types/interface/models/extraction.dto.js.map +1 -1
  104. package/dist/types/interface/models/index.d.ts +1 -0
  105. package/dist/types/interface/models/index.js +1 -0
  106. package/dist/types/interface/models/index.js.map +1 -1
  107. package/dist/types/interface/models/project.dto.d.ts +1 -1
  108. package/dist/types/interface/models/short-link.dto.d.ts +8 -0
  109. package/dist/types/interface/models/upload-session.dto.d.ts +8 -0
  110. package/dist/types/interface/models/upload-session.dto.js +3 -0
  111. package/dist/types/interface/models/upload-session.dto.js.map +1 -0
  112. package/dist/types/interface/models/user.dto.d.ts +1 -0
  113. package/dist/utils/extraction-webhook.utils.d.ts +0 -2
  114. package/dist/utils/extraction-webhook.utils.js +1 -2
  115. package/dist/utils/extraction-webhook.utils.js.map +1 -1
  116. package/dist/utils/probe-scan-cost.utils.d.ts +1 -1
  117. package/dist/utils/probe-webhook-signature.utils.d.ts +0 -2
  118. package/dist/utils/probe-webhook-signature.utils.js +1 -2
  119. package/dist/utils/probe-webhook-signature.utils.js.map +1 -1
  120. package/package.json +16 -18
  121. package/src/api/atlas-document.api.ts +20 -3
  122. package/src/api/atlas-group.api.ts +4 -1
  123. package/src/api/atlas-page.api.ts +12 -6
  124. package/src/api/atlas.api.ts +12 -7
  125. package/src/api/atlas.public.api.ts +3 -1
  126. package/src/api/board-card.api.ts +6 -3
  127. package/src/api/board-column.api.ts +4 -1
  128. package/src/api/board-label.api.ts +7 -3
  129. package/src/api/board.api.ts +19 -10
  130. package/src/api/draw.api.ts +16 -12
  131. package/src/api/draw.public.api.ts +3 -1
  132. package/src/api/extraction-plan-preset.api.ts +64 -18
  133. package/src/api/extraction-settings.api.ts +2 -8
  134. package/src/api/extraction.api.ts +82 -84
  135. package/src/api/extraction.application.api.test.ts +55 -0
  136. package/src/api/extraction.application.api.ts +73 -0
  137. package/src/api/index.ts +1 -0
  138. package/src/api/probe-scan.api.test.ts +26 -0
  139. package/src/api/probe-scan.api.ts +66 -54
  140. package/src/api/probe-scan.application.api.test.ts +14 -0
  141. package/src/api/probe-scan.application.api.ts +5 -5
  142. package/src/api/retrospective.api.ts +8 -5
  143. package/src/api/short-link.admin.api.ts +14 -4
  144. package/src/api/short-link.api.ts +39 -17
  145. package/src/api/short-link.public.api.ts +25 -11
  146. package/src/api/tag.api.ts +3 -1
  147. package/src/constants/atlas.constants.ts +1 -1
  148. package/src/constants/extract.constants.ts +109 -0
  149. package/src/constants/index.ts +1 -0
  150. package/src/index.ts +19 -0
  151. package/src/server-sent-events/server-sent-events.manager.ts +5 -3
  152. package/src/types/enum/document-type.enum.ts +1 -0
  153. package/src/types/enum/extract-field-format.enum.ts +16 -0
  154. package/src/types/enum/extract-field-key.enum.ts +77 -0
  155. package/src/types/enum/extraction-warning.enum.ts +57 -0
  156. package/src/types/enum/index.ts +2 -0
  157. package/src/types/enum/rcb-bank.enum.ts +255 -41
  158. package/src/types/interface/api/requests/abyss.admin.request.ts +2 -1
  159. package/src/types/interface/api/requests/atlas-document.request.ts +14 -0
  160. package/src/types/interface/api/requests/board-card-document.request.ts +5 -0
  161. package/src/types/interface/api/requests/extraction.request.ts +23 -0
  162. package/src/types/interface/api/requests/probe-scan.request.ts +5 -1
  163. package/src/types/interface/api/responses/atlas-document.response.ts +12 -4
  164. package/src/types/interface/api/responses/atlas-group.response.ts +1 -0
  165. package/src/types/interface/api/responses/atlas-page.response.ts +1 -0
  166. package/src/types/interface/api/responses/atlas.response.ts +1 -0
  167. package/src/types/interface/api/responses/beam.response.ts +2 -0
  168. package/src/types/interface/api/responses/board-card-checklist.response.ts +3 -0
  169. package/src/types/interface/api/responses/board-card-comment.response.ts +1 -0
  170. package/src/types/interface/api/responses/board-card-document.response.ts +6 -4
  171. package/src/types/interface/api/responses/board-card.response.ts +3 -0
  172. package/src/types/interface/api/responses/board-column.response.ts +1 -0
  173. package/src/types/interface/api/responses/board-label.response.ts +3 -0
  174. package/src/types/interface/api/responses/board.response.ts +1 -0
  175. package/src/types/interface/api/responses/draw.public.response.ts +3 -0
  176. package/src/types/interface/api/responses/draw.response.ts +1 -0
  177. package/src/types/interface/api/responses/retrospective-card.response.ts +1 -0
  178. package/src/types/interface/api/responses/retrospective-section.response.ts +1 -0
  179. package/src/types/interface/api/responses/retrospective.response.ts +3 -1
  180. package/src/types/interface/api/responses/short-link.admin.response.ts +1 -0
  181. package/src/types/interface/api/responses/short-link.response.ts +1 -0
  182. package/src/types/interface/api/responses/tag.response.ts +2 -0
  183. package/src/types/interface/models/content-share.dto.ts +5 -1
  184. package/src/types/interface/models/extraction-fetched-provenance.dto.test.ts +20 -9
  185. package/src/types/interface/models/extraction-plan.dto.test.ts +17 -4
  186. package/src/types/interface/models/extraction-spatial-template.dto.test.ts +26 -5
  187. package/src/types/interface/models/extraction.dto.ts +35 -0
  188. package/src/types/interface/models/index.ts +1 -0
  189. package/src/types/interface/models/probe-webhook.dto.ts +3 -4
  190. package/src/types/interface/models/project.dto.ts +2 -1
  191. package/src/types/interface/models/short-link.dto.ts +2 -0
  192. package/src/types/interface/models/upload-session.dto.ts +24 -0
  193. package/src/types/interface/models/user.dto.ts +3 -0
  194. package/src/utils/extraction-webhook.utils.ts +1 -1
  195. package/src/utils/probe-webhook-signature.utils.ts +1 -1
  196. package/tsconfig.check.json +15 -0
@@ -68,57 +68,271 @@ export interface RcbBankCatalogueEntry {
68
68
 
69
69
  export const RCB_BANK_CATALOGUE: ReadonlyArray<RcbBankCatalogueEntry> = [
70
70
  // ─── French retail / business ─────────────
71
- { id: RcbBankVersionId.BNP_CONNEXIS_DEFAULT, bank: 'BNP Connexis', version: 'default', country: 'FR', type: 'business' },
72
- { id: RcbBankVersionId.BNP_PARIBAS_DEFAULT, bank: 'BNP Paribas', version: 'default', country: 'FR', type: 'retail' },
73
- { id: RcbBankVersionId.SOCIETE_GENERALE_DEFAULT, bank: 'Société Générale', version: 'default', country: 'FR', type: 'retail' },
74
- { id: RcbBankVersionId.CREDIT_AGRICOLE_DEFAULT, bank: 'Crédit Agricole', version: 'default', country: 'FR', type: 'retail' },
75
- { id: RcbBankVersionId.LCL_DEFAULT, bank: 'LCL', version: 'default', country: 'FR', type: 'retail' },
76
- { id: RcbBankVersionId.BOURSORAMA_DEFAULT, bank: 'Boursorama', version: 'default', country: 'FR', type: 'retail' },
77
- { id: RcbBankVersionId.LA_BANQUE_POSTALE_DEFAULT, bank: 'La Banque Postale', version: 'default', country: 'FR', type: 'retail' },
78
- { id: RcbBankVersionId.CAISSE_EPARGNE_DEFAULT, bank: "Caisse d'Épargne", version: 'default', country: 'FR', type: 'retail' },
79
- { id: RcbBankVersionId.CIC_EBICS_DEFAULT, bank: 'CIC', version: 'ebics', country: 'FR', type: 'business' },
80
- { id: RcbBankVersionId.CIC_DEFAULT, bank: 'CIC', version: 'default', country: 'FR', type: 'retail' },
81
- { id: RcbBankVersionId.CREDIT_MUTUEL_DEFAULT, bank: 'Crédit Mutuel', version: 'default', country: 'FR', type: 'retail' },
82
- { id: RcbBankVersionId.BRED_DEFAULT, bank: 'BRED', version: 'default', country: 'FR', type: 'retail' },
83
- { id: RcbBankVersionId.CREDIT_DU_NORD_DEFAULT, bank: 'Crédit du Nord', version: 'default', country: 'FR', type: 'retail' },
84
- { id: RcbBankVersionId.CDE_NET_DEFAULT, bank: 'CDE Net', version: 'default', country: 'FR', type: 'business' },
85
- { id: RcbBankVersionId.DELUBAC_DEFAULT, bank: 'Delubac', version: 'default', country: 'FR', type: 'business' },
86
- { id: RcbBankVersionId.PALATINE_DEFAULT, bank: 'Palatine', version: 'default', country: 'FR', type: 'business' },
87
- { id: RcbBankVersionId.NATIXIS_DEFAULT, bank: 'Natixis', version: 'default', country: 'FR', type: 'corporate' },
88
- { id: RcbBankVersionId.THEMIS_DEFAULT, bank: 'Themis Banque', version: 'default', country: 'FR', type: 'business' },
89
- { id: RcbBankVersionId.ROTHSCHILD_DEFAULT, bank: 'Rothschild Martin Maurel', version: 'default', country: 'FR', type: 'corporate' },
90
- { id: RcbBankVersionId.LA_NEF_V1, bank: 'La Nef', version: 'v1', country: 'FR', type: 'retail' },
91
- { id: RcbBankVersionId.LA_NEF_V2, bank: 'La Nef', version: 'v2', country: 'FR', type: 'retail' },
71
+ {
72
+ id: RcbBankVersionId.BNP_CONNEXIS_DEFAULT,
73
+ bank: 'BNP Connexis',
74
+ version: 'default',
75
+ country: 'FR',
76
+ type: 'business',
77
+ },
78
+ {
79
+ id: RcbBankVersionId.BNP_PARIBAS_DEFAULT,
80
+ bank: 'BNP Paribas',
81
+ version: 'default',
82
+ country: 'FR',
83
+ type: 'retail',
84
+ },
85
+ {
86
+ id: RcbBankVersionId.SOCIETE_GENERALE_DEFAULT,
87
+ bank: 'Société Générale',
88
+ version: 'default',
89
+ country: 'FR',
90
+ type: 'retail',
91
+ },
92
+ {
93
+ id: RcbBankVersionId.CREDIT_AGRICOLE_DEFAULT,
94
+ bank: 'Crédit Agricole',
95
+ version: 'default',
96
+ country: 'FR',
97
+ type: 'retail',
98
+ },
99
+ {
100
+ id: RcbBankVersionId.LCL_DEFAULT,
101
+ bank: 'LCL',
102
+ version: 'default',
103
+ country: 'FR',
104
+ type: 'retail',
105
+ },
106
+ {
107
+ id: RcbBankVersionId.BOURSORAMA_DEFAULT,
108
+ bank: 'Boursorama',
109
+ version: 'default',
110
+ country: 'FR',
111
+ type: 'retail',
112
+ },
113
+ {
114
+ id: RcbBankVersionId.LA_BANQUE_POSTALE_DEFAULT,
115
+ bank: 'La Banque Postale',
116
+ version: 'default',
117
+ country: 'FR',
118
+ type: 'retail',
119
+ },
120
+ {
121
+ id: RcbBankVersionId.CAISSE_EPARGNE_DEFAULT,
122
+ bank: "Caisse d'Épargne",
123
+ version: 'default',
124
+ country: 'FR',
125
+ type: 'retail',
126
+ },
127
+ {
128
+ id: RcbBankVersionId.CIC_EBICS_DEFAULT,
129
+ bank: 'CIC',
130
+ version: 'ebics',
131
+ country: 'FR',
132
+ type: 'business',
133
+ },
134
+ {
135
+ id: RcbBankVersionId.CIC_DEFAULT,
136
+ bank: 'CIC',
137
+ version: 'default',
138
+ country: 'FR',
139
+ type: 'retail',
140
+ },
141
+ {
142
+ id: RcbBankVersionId.CREDIT_MUTUEL_DEFAULT,
143
+ bank: 'Crédit Mutuel',
144
+ version: 'default',
145
+ country: 'FR',
146
+ type: 'retail',
147
+ },
148
+ {
149
+ id: RcbBankVersionId.BRED_DEFAULT,
150
+ bank: 'BRED',
151
+ version: 'default',
152
+ country: 'FR',
153
+ type: 'retail',
154
+ },
155
+ {
156
+ id: RcbBankVersionId.CREDIT_DU_NORD_DEFAULT,
157
+ bank: 'Crédit du Nord',
158
+ version: 'default',
159
+ country: 'FR',
160
+ type: 'retail',
161
+ },
162
+ {
163
+ id: RcbBankVersionId.CDE_NET_DEFAULT,
164
+ bank: 'CDE Net',
165
+ version: 'default',
166
+ country: 'FR',
167
+ type: 'business',
168
+ },
169
+ {
170
+ id: RcbBankVersionId.DELUBAC_DEFAULT,
171
+ bank: 'Delubac',
172
+ version: 'default',
173
+ country: 'FR',
174
+ type: 'business',
175
+ },
176
+ {
177
+ id: RcbBankVersionId.PALATINE_DEFAULT,
178
+ bank: 'Palatine',
179
+ version: 'default',
180
+ country: 'FR',
181
+ type: 'business',
182
+ },
183
+ {
184
+ id: RcbBankVersionId.NATIXIS_DEFAULT,
185
+ bank: 'Natixis',
186
+ version: 'default',
187
+ country: 'FR',
188
+ type: 'corporate',
189
+ },
190
+ {
191
+ id: RcbBankVersionId.THEMIS_DEFAULT,
192
+ bank: 'Themis Banque',
193
+ version: 'default',
194
+ country: 'FR',
195
+ type: 'business',
196
+ },
197
+ {
198
+ id: RcbBankVersionId.ROTHSCHILD_DEFAULT,
199
+ bank: 'Rothschild Martin Maurel',
200
+ version: 'default',
201
+ country: 'FR',
202
+ type: 'corporate',
203
+ },
204
+ { id: RcbBankVersionId.LA_NEF_V1, bank: 'La Nef', version: 'v1', country: 'FR', type: 'retail' },
205
+ { id: RcbBankVersionId.LA_NEF_V2, bank: 'La Nef', version: 'v2', country: 'FR', type: 'retail' },
92
206
 
93
207
  // ─── Neobanks / fintech ───────────────────
94
- { id: RcbBankVersionId.QONTO_DEFAULT, bank: 'Qonto', version: 'default', country: 'FR', type: 'neobank' },
95
- { id: RcbBankVersionId.SHINE_DEFAULT, bank: 'Shine', version: 'default', country: 'FR', type: 'neobank' },
96
- { id: RcbBankVersionId.FINOM_DEFAULT, bank: 'Finom', version: 'default', country: 'EU', type: 'neobank' },
97
- { id: RcbBankVersionId.TIIME_DEFAULT, bank: 'Tiime', version: 'default', country: 'FR', type: 'neobank' },
98
- { id: RcbBankVersionId.SPENDESK_DEFAULT, bank: 'Spendesk', version: 'default', country: 'FR', type: 'fintech' },
99
- { id: RcbBankVersionId.SWAN_DEFAULT, bank: 'Swan', version: 'default', country: 'FR', type: 'fintech' },
100
- { id: RcbBankVersionId.N26_DEFAULT, bank: 'N26', version: 'default', country: 'EU', type: 'neobank' },
101
- { id: RcbBankVersionId.REVOLUT_DEFAULT, bank: 'Revolut', version: 'default', country: 'EU', type: 'neobank' },
102
- { id: RcbBankVersionId.WISE_DEFAULT, bank: 'Wise', version: 'default', country: 'INTL', type: 'fintech' },
103
- { id: RcbBankVersionId.PAYPAL_DEFAULT, bank: 'PayPal', version: 'default', country: 'INTL', type: 'fintech' },
104
- { id: RcbBankVersionId.AIRWALLEX_DEFAULT, bank: 'Airwallex', version: 'default', country: 'INTL', type: 'fintech' },
105
- { id: RcbBankVersionId.VIVA_WALLET_DEFAULT, bank: 'Viva Wallet', version: 'default', country: 'EU', type: 'fintech' },
208
+ {
209
+ id: RcbBankVersionId.QONTO_DEFAULT,
210
+ bank: 'Qonto',
211
+ version: 'default',
212
+ country: 'FR',
213
+ type: 'neobank',
214
+ },
215
+ {
216
+ id: RcbBankVersionId.SHINE_DEFAULT,
217
+ bank: 'Shine',
218
+ version: 'default',
219
+ country: 'FR',
220
+ type: 'neobank',
221
+ },
222
+ {
223
+ id: RcbBankVersionId.FINOM_DEFAULT,
224
+ bank: 'Finom',
225
+ version: 'default',
226
+ country: 'EU',
227
+ type: 'neobank',
228
+ },
229
+ {
230
+ id: RcbBankVersionId.TIIME_DEFAULT,
231
+ bank: 'Tiime',
232
+ version: 'default',
233
+ country: 'FR',
234
+ type: 'neobank',
235
+ },
236
+ {
237
+ id: RcbBankVersionId.SPENDESK_DEFAULT,
238
+ bank: 'Spendesk',
239
+ version: 'default',
240
+ country: 'FR',
241
+ type: 'fintech',
242
+ },
243
+ {
244
+ id: RcbBankVersionId.SWAN_DEFAULT,
245
+ bank: 'Swan',
246
+ version: 'default',
247
+ country: 'FR',
248
+ type: 'fintech',
249
+ },
250
+ {
251
+ id: RcbBankVersionId.N26_DEFAULT,
252
+ bank: 'N26',
253
+ version: 'default',
254
+ country: 'EU',
255
+ type: 'neobank',
256
+ },
257
+ {
258
+ id: RcbBankVersionId.REVOLUT_DEFAULT,
259
+ bank: 'Revolut',
260
+ version: 'default',
261
+ country: 'EU',
262
+ type: 'neobank',
263
+ },
264
+ {
265
+ id: RcbBankVersionId.WISE_DEFAULT,
266
+ bank: 'Wise',
267
+ version: 'default',
268
+ country: 'INTL',
269
+ type: 'fintech',
270
+ },
271
+ {
272
+ id: RcbBankVersionId.PAYPAL_DEFAULT,
273
+ bank: 'PayPal',
274
+ version: 'default',
275
+ country: 'INTL',
276
+ type: 'fintech',
277
+ },
278
+ {
279
+ id: RcbBankVersionId.AIRWALLEX_DEFAULT,
280
+ bank: 'Airwallex',
281
+ version: 'default',
282
+ country: 'INTL',
283
+ type: 'fintech',
284
+ },
285
+ {
286
+ id: RcbBankVersionId.VIVA_WALLET_DEFAULT,
287
+ bank: 'Viva Wallet',
288
+ version: 'default',
289
+ country: 'EU',
290
+ type: 'fintech',
291
+ },
106
292
 
107
293
  // ─── International retail / corporate ─────
108
- { id: RcbBankVersionId.HSBC_DEFAULT, bank: 'HSBC', version: 'default', country: 'FR', type: 'retail' },
109
- { id: RcbBankVersionId.HSBC_UK_DEFAULT, bank: 'HSBC UK', version: 'default', country: 'UK', type: 'retail' },
110
- { id: RcbBankVersionId.UBS_DEFAULT, bank: 'UBS', version: 'default', country: 'CH', type: 'corporate' },
111
- { id: RcbBankVersionId.CAIXA_DEFAULT, bank: 'Caixa', version: 'default', country: 'PT', type: 'retail' },
112
- { id: RcbBankVersionId.JPMORGAN_DEFAULT, bank: 'JPMorgan', version: 'default', country: 'US', type: 'corporate' },
294
+ {
295
+ id: RcbBankVersionId.HSBC_DEFAULT,
296
+ bank: 'HSBC',
297
+ version: 'default',
298
+ country: 'FR',
299
+ type: 'retail',
300
+ },
301
+ {
302
+ id: RcbBankVersionId.HSBC_UK_DEFAULT,
303
+ bank: 'HSBC UK',
304
+ version: 'default',
305
+ country: 'UK',
306
+ type: 'retail',
307
+ },
308
+ {
309
+ id: RcbBankVersionId.UBS_DEFAULT,
310
+ bank: 'UBS',
311
+ version: 'default',
312
+ country: 'CH',
313
+ type: 'corporate',
314
+ },
315
+ {
316
+ id: RcbBankVersionId.CAIXA_DEFAULT,
317
+ bank: 'Caixa',
318
+ version: 'default',
319
+ country: 'PT',
320
+ type: 'retail',
321
+ },
322
+ {
323
+ id: RcbBankVersionId.JPMORGAN_DEFAULT,
324
+ bank: 'JPMorgan',
325
+ version: 'default',
326
+ country: 'US',
327
+ type: 'corporate',
328
+ },
113
329
  ];
114
330
 
115
331
  /**
116
332
  * Lookup by id (typed). Returns undefined for unknown ids — callers should
117
333
  * treat that as "use auto mode" rather than crash.
118
334
  */
119
- export function getRcbBankCatalogueEntry(
120
- id: string,
121
- ): RcbBankCatalogueEntry | undefined {
335
+ export function getRcbBankCatalogueEntry(id: string): RcbBankCatalogueEntry | undefined {
122
336
  return RCB_BANK_CATALOGUE.find((e) => e.id === id);
123
337
  }
124
338
 
@@ -11,7 +11,8 @@ export interface ISyncOrganizationAbyssAdminBody {
11
11
  export interface ISyncProjectAbyssAdminBody {
12
12
  id: string;
13
13
  name: string;
14
- createdByUserId: string;
14
+ /** null when the author's account was deleted: the project outlives it (#199). */
15
+ createdByUserId: string | null;
15
16
  organizationId: string;
16
17
  }
17
18
 
@@ -6,6 +6,11 @@ export type IGetUploadPreSignedUrlAtlasDocumentParams = {
6
6
  };
7
7
  export type IGetUploadPreSignedUrlAtlasDocumentBody = {
8
8
  name: string;
9
+ // SP3 — transparent multipart: the DECLARED size (the front hasn't
10
+ // necessarily read the file into memory yet, only `file.size`), needed by
11
+ // `initiateUpload` to pick single-shot vs multipart and to seed the storage
12
+ // cap check.
13
+ sizeOctet: number;
9
14
  };
10
15
 
11
16
  export type IGetAtlasDocumentParams = {
@@ -30,3 +35,12 @@ export type IListAtlasDocumentParams = {
30
35
  atlasId: string;
31
36
  atlasPageId: string;
32
37
  };
38
+
39
+ // IDOR fix — resolves an AtlasDocument's storage `publicAccessId` server-side
40
+ // (scoped to the caller's AtlasMiddleware-verified atlasId), so the front
41
+ // never needs an unscoped `applicationFile.get` call against storage.
42
+ export type IGetPublicAccessIdAtlasDocumentParams = {
43
+ atlasId: string;
44
+ atlasPageId: string;
45
+ storageFileId: string;
46
+ };
@@ -4,6 +4,11 @@ export type IGetUploadPreSignedUrlBoardCardDocumentParams = {
4
4
  };
5
5
  export type IGetUploadPreSignedUrlBoardCardDocumentBody = {
6
6
  name: string;
7
+ // SP3 — transparent multipart: the DECLARED size (the front hasn't
8
+ // necessarily read the file into memory yet, only `file.size`), needed by
9
+ // `initiateUpload` to pick single-shot vs multipart and to seed the storage
10
+ // cap check.
11
+ sizeOctet: number;
7
12
  };
8
13
 
9
14
  export type IGetBoardCardDocumentParams = {
@@ -71,6 +71,28 @@ export interface IExtractBody {
71
71
  plan_preset_id?: string;
72
72
  }
73
73
 
74
+ /**
75
+ * Body of `POST /extract/application/:applicationId/extract` — exactly what
76
+ * that route accepts (extraction-extract-application.controller.ts): a
77
+ * multipart PDF, mode `auto` or `hint`, and the optional fields below. The
78
+ * route refuses storage_file_id, template_id, template, mode `template`,
79
+ * plan_preset_id and any body without a PDF (4xx), and is synchronous only,
80
+ * so none of those are expressible here (#581).
81
+ */
82
+ export interface IExtractApplicationBody {
83
+ pdf: Buffer | Uint8Array;
84
+ mode: Exclude<ExtractionMode, 'template'>;
85
+ hint?: IExtractionBankHint;
86
+ pdf_filename?: string;
87
+ user_external_id?: string;
88
+ user_metadata?: Record<string, unknown>;
89
+ archive?: boolean;
90
+ force?: boolean;
91
+ improvementConsent?: boolean;
92
+ /** Inline plan: single pass, no OCR provider, no template pass (checked server-side). */
93
+ plan?: IExtractionPlan;
94
+ }
95
+
74
96
  export interface IExtractBulkBody {
75
97
  items: Array<{
76
98
  storage_file_id?: string;
@@ -391,6 +413,7 @@ export interface IUpdatePlanPresetBody {
391
413
  }
392
414
 
393
415
  /** Body for POST /extract/plans/:id/default — set as default (id is path param). */
416
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
394
417
  export interface ISetDefaultPlanPresetBody {}
395
418
 
396
419
  /** Query params for GET /extract/plans. */
@@ -21,7 +21,11 @@ export interface IScanOptions {
21
21
  callbackUrl?: string;
22
22
  /** Filename reported to the server (defaults to `'file'`). Cosmetic only. */
23
23
  filename?: string;
24
- /** Content-Type hint used when constructing a Blob from a raw buffer/Uint8Array in a browser context. */
24
+ /**
25
+ * Content-Type stamped on the file part when the caller passes raw bytes
26
+ * (`Buffer`/`Uint8Array`). Ignored when the file is already a `Blob` — a
27
+ * browser `File` and `fs.openAsBlob(path)` carry their own type.
28
+ */
25
29
  mimeType?: string;
26
30
  }
27
31
 
@@ -1,18 +1,20 @@
1
1
  import { IResponse } from '../type-message/response';
2
2
  import { BasePaginate } from '../type-message/base-paginate';
3
- import { IAtlasDocument } from '../..';
3
+ import { IAtlasDocument, IUploadSession } from '../..';
4
4
 
5
5
  export interface IGetAtlasDocumentData {
6
6
  atlasDocument: IAtlasDocument;
7
7
  }
8
8
  export type IGetAtlasDocumentResponse = IResponse<IGetAtlasDocumentData>;
9
9
 
10
- export interface IGetUploadPreSignedUrlAtlasDocumentData {
11
- preSignedUrl: string;
12
- }
10
+ // SP3 — transparent multipart upload: proxies atlasDocumentService
11
+ // .getUploadUrl's `UploadSession` result as-is (see
12
+ // models/upload-session.dto.ts for the mirroring rationale).
13
+ export type IGetUploadPreSignedUrlAtlasDocumentData = IUploadSession;
13
14
  export type IGetUploadPreSignedUrlAtlasDocumentResponse =
14
15
  IResponse<IGetUploadPreSignedUrlAtlasDocumentData>;
15
16
 
17
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
16
18
  export interface IDeleteAtlasDocumentData {}
17
19
  export type IDeleteAtlasDocumentResponse = IResponse<IDeleteAtlasDocumentData>;
18
20
 
@@ -22,3 +24,9 @@ export interface IListAtlasDocumentData {
22
24
  atlasDocuments: IAtlasDocument[];
23
25
  }
24
26
  export type IListAtlasDocumentResponse = IResponse<IListAtlasDocumentData>;
27
+
28
+ export interface IGetPublicAccessIdAtlasDocumentData {
29
+ publicAccessId: string;
30
+ }
31
+ export type IGetPublicAccessIdAtlasDocumentResponse =
32
+ IResponse<IGetPublicAccessIdAtlasDocumentData>;
@@ -19,5 +19,6 @@ export interface IUpdateAtlasGroupData {
19
19
  }
20
20
  export type IUpdateAtlasGroupResponse = IResponse<IUpdateAtlasGroupData>;
21
21
 
22
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
22
23
  export interface IDeleteAtlasGroupData {}
23
24
  export type IDeleteAtlasGroupResponse = IResponse<IDeleteAtlasGroupData>;
@@ -20,6 +20,7 @@ export interface IUpdateAtlasPageData {
20
20
  }
21
21
  export type IUpdateAtlasPageResponse = IResponse<IUpdateAtlasPageData>;
22
22
 
23
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
23
24
  export interface IDeleteAtlasPageData {}
24
25
  export type IDeleteAtlasPageResponse = IResponse<IDeleteAtlasPageData>;
25
26
 
@@ -21,6 +21,7 @@ export interface IUpdateAtlasData {
21
21
  }
22
22
  export type IUpdateAtlasResponse = IResponse<IUpdateAtlasData>;
23
23
 
24
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
24
25
  export interface IDeleteAtlasData {}
25
26
  export type IDeleteAtlasResponse = IResponse<IDeleteAtlasData>;
26
27
 
@@ -26,6 +26,7 @@ export interface IUpdateBeamData {
26
26
  }
27
27
  export type IUpdateBeamResponse = IResponse<IUpdateBeamData>;
28
28
 
29
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
29
30
  export interface IDeleteBeamData {}
30
31
  export type IDeleteBeamResponse = IResponse<IDeleteBeamData>;
31
32
 
@@ -114,6 +115,7 @@ export interface IListBeamSharesData {
114
115
  }
115
116
  export type IListBeamSharesResponse = IResponse<IListBeamSharesData>;
116
117
 
118
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
117
119
  export interface IRevokeBeamShareData {}
118
120
  export type IRevokeBeamShareResponse = IResponse<IRevokeBeamShareData>;
119
121
 
@@ -16,6 +16,7 @@ export interface ICreateBoardCardChecklistData {
16
16
  }
17
17
  export type ICreateBoardCardChecklistResponse = IResponse<ICreateBoardCardChecklistData>;
18
18
 
19
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
19
20
  export interface IDeleteBoardCardChecklistData {}
20
21
  export type IDeleteBoardCardChecklistResponse = IResponse<IDeleteBoardCardChecklistData>;
21
22
 
@@ -24,8 +25,10 @@ export interface IAddRowBoardCardChecklistData {
24
25
  }
25
26
  export type IAddRowBoardCardChecklistResponse = IResponse<IAddRowBoardCardChecklistData>;
26
27
 
28
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
27
29
  export interface IRemoveRowBoardCardChecklistData {}
28
30
  export type IRemoveRowBoardCardChecklistResponse = IResponse<IRemoveRowBoardCardChecklistData>;
29
31
 
32
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
30
33
  export interface IUpdateRowBoardCardChecklistData {}
31
34
  export type IUpdateRowBoardCardChecklistResponse = IResponse<IUpdateRowBoardCardChecklistData>;
@@ -16,5 +16,6 @@ export interface ICreateBoardCardCommentData {
16
16
  }
17
17
  export type ICreateBoardCardCommentResponse = IResponse<ICreateBoardCardCommentData>;
18
18
 
19
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
19
20
  export interface IDeleteBoardCardCommentData {}
20
21
  export type IDeleteBoardCardCommentResponse = IResponse<IDeleteBoardCardCommentData>;
@@ -1,17 +1,19 @@
1
1
  import { IResponse } from '../type-message/response';
2
- import { IBoardCardDocument } from '../..';
2
+ import { IBoardCardDocument, IUploadSession } from '../..';
3
3
 
4
4
  export interface IGetBoardCardDocumentData {
5
5
  boardCardDocument: IBoardCardDocument;
6
6
  }
7
7
  export type IGetBoardCardDocumentResponse = IResponse<IGetBoardCardDocumentData>;
8
8
 
9
- export interface IGetUploadPreSignedUrlBoardCardDocumentData {
10
- preSignedUrl: string;
11
- }
9
+ // SP3 — transparent multipart upload: proxies boardCardDocumentService
10
+ // .getUploadUrl's `UploadSession` result as-is (see
11
+ // models/upload-session.dto.ts for the mirroring rationale).
12
+ export type IGetUploadPreSignedUrlBoardCardDocumentData = IUploadSession;
12
13
  export type IGetUploadPreSignedUrlBoardCardDocumentResponse =
13
14
  IResponse<IGetUploadPreSignedUrlBoardCardDocumentData>;
14
15
 
16
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
15
17
  export interface IDeleteBoardCardDocumentData {}
16
18
  export type IDeleteBoardCardDocumentResponse = IResponse<IDeleteBoardCardDocumentData>;
17
19
 
@@ -21,12 +21,15 @@ export interface ICreateBoardCardData {
21
21
  }
22
22
  export type ICreateBoardCardResponse = IResponse<ICreateBoardCardData>;
23
23
 
24
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
24
25
  export interface IDeleteBoardCardData {}
25
26
  export type IDeleteBoardCardResponse = IResponse<IDeleteBoardCardData>;
26
27
 
28
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
27
29
  export interface IAddMemberBoardCardData {}
28
30
  export type IAddMemberBoardCardResponse = IResponse<IAddMemberBoardCardData>;
29
31
 
32
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
30
33
  export interface IRemoveMemberBoardCardData {}
31
34
  export type IRemoveMemberBoardCardResponse = IResponse<IRemoveMemberBoardCardData>;
32
35
 
@@ -16,5 +16,6 @@ export interface ICreateBoardColumnData {
16
16
  }
17
17
  export type ICreateBoardColumnResponse = IResponse<ICreateBoardColumnData>;
18
18
 
19
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
19
20
  export interface IDeleteBoardColumnData {}
20
21
  export type IDeleteBoardColumnResponse = IResponse<IDeleteBoardColumnData>;
@@ -16,12 +16,15 @@ export interface ICreateBoardLabelData {
16
16
  }
17
17
  export type ICreateBoardLabelResponse = IResponse<ICreateBoardLabelData>;
18
18
 
19
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
19
20
  export interface IDeleteBoardLabelData {}
20
21
  export type IDeleteBoardLabelResponse = IResponse<IDeleteBoardLabelData>;
21
22
 
23
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
22
24
  export interface IAddBoardLabelData {}
23
25
  export type IAddBoardLabelResponse = IResponse<IAddBoardLabelData>;
24
26
 
27
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
25
28
  export interface IRemoveBoardLabelData {}
26
29
  export type IRemoveBoardLabelResponse = IResponse<IRemoveBoardLabelData>;
27
30
 
@@ -52,6 +52,7 @@ export interface ICreateBoardData {
52
52
  }
53
53
  export type ICreateBoardResponse = IResponse<ICreateBoardData>;
54
54
 
55
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
55
56
  export interface IDeleteBoardData {}
56
57
  export type IDeleteBoardResponse = IResponse<IDeleteBoardData>;
57
58
 
@@ -1,8 +1,10 @@
1
1
  import { IResponse } from '../type-message/response';
2
2
  import { IDraw } from '../../models/draw.dto';
3
+ import { SharePermission } from '../../../enum/content-share.enum';
3
4
 
4
5
  export interface IGetDrawPublicData {
5
6
  draw: IDraw;
7
+ sharePermission: SharePermission | null;
6
8
  }
7
9
  export type IGetDrawPublicResponse = IResponse<IGetDrawPublicData>;
8
10
 
@@ -18,5 +20,6 @@ export interface ICreateDrawPublicData {
18
20
  }
19
21
  export type ICreateDrawPublicResponse = IResponse<ICreateDrawPublicData>;
20
22
 
23
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
21
24
  export interface IDeleteDrawPublicData {}
22
25
  export type IDeleteDrawPublicResponse = IResponse<IDeleteDrawPublicData>;
@@ -19,6 +19,7 @@ export interface ICreateDrawData {
19
19
  }
20
20
  export type ICreateDrawResponse = IResponse<ICreateDrawData>;
21
21
 
22
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
22
23
  export interface IDeleteDrawData {}
23
24
  export type IDeleteDrawResponse = IResponse<IDeleteDrawData>;
24
25
 
@@ -19,5 +19,6 @@ export interface IUpdateRetrospectiveCardData {
19
19
  }
20
20
  export type IUpdateRetrospectiveCardResponse = IResponse<IUpdateRetrospectiveCardData>;
21
21
 
22
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
22
23
  export interface IDeleteRetrospectiveCardData {}
23
24
  export type IDeleteRetrospectiveCardResponse = IResponse<IDeleteRetrospectiveCardData>;
@@ -19,5 +19,6 @@ export interface IUpdateRetrospectiveSectionData {
19
19
  }
20
20
  export type IUpdateRetrospectiveSectionResponse = IResponse<IUpdateRetrospectiveSectionData>;
21
21
 
22
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
22
23
  export interface IDeleteRetrospectiveSectionData {}
23
24
  export type IDeleteRetrospectiveSectionResponse = IResponse<IDeleteRetrospectiveSectionData>;
@@ -21,6 +21,7 @@ export interface IUpdateRetrospectiveData {
21
21
  }
22
22
  export type IUpdateRetrospectiveResponse = IResponse<IUpdateRetrospectiveData>;
23
23
 
24
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type
24
25
  export interface IDeleteRetrospectiveData {}
25
26
  export type IDeleteRetrospectiveResponse = IResponse<IDeleteRetrospectiveData>;
26
27
 
@@ -29,4 +30,5 @@ export interface ICountOrganizationRetrospectiveData {
29
30
  orphan?: number;
30
31
  unshared?: number;
31
32
  }
32
- export type ICountOrganizationRetrospectiveResponse = IResponse<ICountOrganizationRetrospectiveData>;
33
+ export type ICountOrganizationRetrospectiveResponse =
34
+ IResponse<ICountOrganizationRetrospectiveData>;