@icure/api 8.11.0 → 8.12.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 (297) hide show
  1. package/icc-api/api/IccUserApi.d.ts +1 -1
  2. package/icc-api/api/IccUserApi.js +2 -2
  3. package/icc-api/api/IccUserApi.js.map +1 -1
  4. package/icc-api/model/HealthElement.d.ts +5 -0
  5. package/icc-api/model/HealthElement.js.map +1 -1
  6. package/icc-api/model/HealthElementQualifiedLink.d.ts +31 -0
  7. package/icc-api/model/HealthElementQualifiedLink.js +26 -0
  8. package/icc-api/model/HealthElementQualifiedLink.js.map +1 -0
  9. package/icc-api/model/models.d.ts +1 -0
  10. package/icc-api/model/models.js +1 -0
  11. package/icc-api/model/models.js.map +1 -1
  12. package/icc-x-api/filters/HealthElementByAssociationIdFilter.d.ts +23 -0
  13. package/icc-x-api/filters/HealthElementByAssociationIdFilter.js +30 -0
  14. package/icc-x-api/filters/HealthElementByAssociationIdFilter.js.map +1 -0
  15. package/icc-x-api/filters/HealthElementByQualifiedLinkFilter.d.ts +24 -0
  16. package/icc-x-api/filters/HealthElementByQualifiedLinkFilter.js +30 -0
  17. package/icc-x-api/filters/HealthElementByQualifiedLinkFilter.js.map +1 -0
  18. package/icc-x-api/filters/filters.d.ts +2 -0
  19. package/icc-x-api/filters/filters.js +2 -0
  20. package/icc-x-api/filters/filters.js.map +1 -1
  21. package/package.json +1 -1
  22. package/test/benchmarks/lzma-benchmark.spec.d.ts +0 -1
  23. package/test/benchmarks/lzma-benchmark.spec.js +0 -131
  24. package/test/benchmarks/lzma-benchmark.spec.js.map +0 -1
  25. package/test/benchmarks/lzma-compat.spec.d.ts +0 -1
  26. package/test/benchmarks/lzma-compat.spec.js +0 -187
  27. package/test/benchmarks/lzma-compat.spec.js.map +0 -1
  28. package/test/benchmarks/playwright.config.d.ts +0 -2
  29. package/test/benchmarks/playwright.config.js +0 -18
  30. package/test/benchmarks/playwright.config.js.map +0 -1
  31. package/test/icc-api/api/IccAgendaApi.d.ts +0 -1
  32. package/test/icc-api/api/IccAgendaApi.js +0 -64
  33. package/test/icc-api/api/IccAgendaApi.js.map +0 -1
  34. package/test/icc-api/api/IccAnonymousAccessApi.d.ts +0 -1
  35. package/test/icc-api/api/IccAnonymousAccessApi.js +0 -58
  36. package/test/icc-api/api/IccAnonymousAccessApi.js.map +0 -1
  37. package/test/icc-api/api/IccCalendarItemApi.d.ts +0 -1
  38. package/test/icc-api/api/IccCalendarItemApi.js +0 -67
  39. package/test/icc-api/api/IccCalendarItemApi.js.map +0 -1
  40. package/test/icc-api/api/IccCalendarItemTypeApi.d.ts +0 -1
  41. package/test/icc-api/api/IccCalendarItemTypeApi.js +0 -96
  42. package/test/icc-api/api/IccCalendarItemTypeApi.js.map +0 -1
  43. package/test/icc-api/api/IccCodeApi.d.ts +0 -1
  44. package/test/icc-api/api/IccCodeApi.js +0 -38
  45. package/test/icc-api/api/IccCodeApi.js.map +0 -1
  46. package/test/icc-api/api/IccDocumentApi.d.ts +0 -1
  47. package/test/icc-api/api/IccDocumentApi.js +0 -199
  48. package/test/icc-api/api/IccDocumentApi.js.map +0 -1
  49. package/test/icc-api/api/IccGroupApi.d.ts +0 -1
  50. package/test/icc-api/api/IccGroupApi.js +0 -50
  51. package/test/icc-api/api/IccGroupApi.js.map +0 -1
  52. package/test/icc-api/api/IccKeywordApi.d.ts +0 -1
  53. package/test/icc-api/api/IccKeywordApi.js +0 -64
  54. package/test/icc-api/api/IccKeywordApi.js.map +0 -1
  55. package/test/icc-api/api/IccMedicalLocationApi.d.ts +0 -1
  56. package/test/icc-api/api/IccMedicalLocationApi.js +0 -64
  57. package/test/icc-api/api/IccMedicalLocationApi.js.map +0 -1
  58. package/test/icc-api/api/IccPlaceApi.d.ts +0 -1
  59. package/test/icc-api/api/IccPlaceApi.js +0 -64
  60. package/test/icc-api/api/IccPlaceApi.js.map +0 -1
  61. package/test/icc-api/api/IccRecoveryDataApi.d.ts +0 -1
  62. package/test/icc-api/api/IccRecoveryDataApi.js +0 -95
  63. package/test/icc-api/api/IccRecoveryDataApi.js.map +0 -1
  64. package/test/icc-api/api/IccRoleApi.d.ts +0 -1
  65. package/test/icc-api/api/IccRoleApi.js +0 -34
  66. package/test/icc-api/api/IccRoleApi.js.map +0 -1
  67. package/test/icc-api/api/IccUserApi.d.ts +0 -1
  68. package/test/icc-api/api/IccUserApi.js +0 -96
  69. package/test/icc-api/api/IccUserApi.js.map +0 -1
  70. package/test/icc-api/e2e/IccCalendarItemApi.d.ts +0 -1
  71. package/test/icc-api/e2e/IccCalendarItemApi.js +0 -46
  72. package/test/icc-api/e2e/IccCalendarItemApi.js.map +0 -1
  73. package/test/icc-api/model/modelHelpersTest.d.ts +0 -1
  74. package/test/icc-api/model/modelHelpersTest.js +0 -45
  75. package/test/icc-api/model/modelHelpersTest.js.map +0 -1
  76. package/test/icc-x-api/auth/group-switch-test.d.ts +0 -1
  77. package/test/icc-x-api/auth/group-switch-test.js +0 -81
  78. package/test/icc-x-api/auth/group-switch-test.js.map +0 -1
  79. package/test/icc-x-api/auth/jwt-concurrency-test.d.ts +0 -2
  80. package/test/icc-x-api/auth/jwt-concurrency-test.js +0 -112
  81. package/test/icc-x-api/auth/jwt-concurrency-test.js.map +0 -1
  82. package/test/icc-x-api/auth/jwt-provider-test.d.ts +0 -1
  83. package/test/icc-x-api/auth/jwt-provider-test.js +0 -197
  84. package/test/icc-x-api/auth/jwt-provider-test.js.map +0 -1
  85. package/test/icc-x-api/auth/smart-auth-provider-test.d.ts +0 -1
  86. package/test/icc-x-api/auth/smart-auth-provider-test.js +0 -224
  87. package/test/icc-x-api/auth/smart-auth-provider-test.js.map +0 -1
  88. package/test/icc-x-api/autofix-anonymity-test.d.ts +0 -1
  89. package/test/icc-x-api/autofix-anonymity-test.js +0 -122
  90. package/test/icc-x-api/autofix-anonymity-test.js.map +0 -1
  91. package/test/icc-x-api/confidential-entities-test.d.ts +0 -1
  92. package/test/icc-x-api/confidential-entities-test.js +0 -168
  93. package/test/icc-x-api/confidential-entities-test.js.map +0 -1
  94. package/test/icc-x-api/crud/comprehensive-crud-test.d.ts +0 -1
  95. package/test/icc-x-api/crud/comprehensive-crud-test.js +0 -276
  96. package/test/icc-x-api/crud/comprehensive-crud-test.js.map +0 -1
  97. package/test/icc-x-api/crud/entities-crud-test-interface.d.ts +0 -16
  98. package/test/icc-x-api/crud/entities-crud-test-interface.js +0 -407
  99. package/test/icc-x-api/crud/entities-crud-test-interface.js.map +0 -1
  100. package/test/icc-x-api/crypto/anonymous-delegations-test.d.ts +0 -1
  101. package/test/icc-x-api/crypto/anonymous-delegations-test.js +0 -587
  102. package/test/icc-x-api/crypto/anonymous-delegations-test.js.map +0 -1
  103. package/test/icc-x-api/crypto/concurrency.d.ts +0 -1
  104. package/test/icc-x-api/crypto/concurrency.js +0 -35
  105. package/test/icc-x-api/crypto/concurrency.js.map +0 -1
  106. package/test/icc-x-api/crypto/crypto-utils.d.ts +0 -1
  107. package/test/icc-x-api/crypto/crypto-utils.js +0 -79
  108. package/test/icc-x-api/crypto/crypto-utils.js.map +0 -1
  109. package/test/icc-x-api/crypto/cryptoTest.d.ts +0 -2
  110. package/test/icc-x-api/crypto/cryptoTest.js +0 -402
  111. package/test/icc-x-api/crypto/cryptoTest.js.map +0 -1
  112. package/test/icc-x-api/crypto/delegate-ci-to-patient-with-missing-keys-test.d.ts +0 -1
  113. package/test/icc-x-api/crypto/delegate-ci-to-patient-with-missing-keys-test.js +0 -166
  114. package/test/icc-x-api/crypto/delegate-ci-to-patient-with-missing-keys-test.js.map +0 -1
  115. package/test/icc-x-api/crypto/exchange-data-manager-test.d.ts +0 -1
  116. package/test/icc-x-api/crypto/exchange-data-manager-test.js +0 -674
  117. package/test/icc-x-api/crypto/exchange-data-manager-test.js.map +0 -1
  118. package/test/icc-x-api/crypto/full-crypto-test.d.ts +0 -1
  119. package/test/icc-x-api/crypto/full-crypto-test.js +0 -454
  120. package/test/icc-x-api/crypto/full-crypto-test.js.map +0 -1
  121. package/test/icc-x-api/crypto/legacy-metadata-migration-test.d.ts +0 -1
  122. package/test/icc-x-api/crypto/legacy-metadata-migration-test.js +0 -379
  123. package/test/icc-x-api/crypto/legacy-metadata-migration-test.js.map +0 -1
  124. package/test/icc-x-api/crypto/secure-delegations-manager-test.d.ts +0 -1
  125. package/test/icc-x-api/crypto/secure-delegations-manager-test.js +0 -278
  126. package/test/icc-x-api/crypto/secure-delegations-manager-test.js.map +0 -1
  127. package/test/icc-x-api/crypto/shamir.d.ts +0 -2
  128. package/test/icc-x-api/crypto/shamir.js +0 -167
  129. package/test/icc-x-api/crypto/shamir.js.map +0 -1
  130. package/test/icc-x-api/crypto/share-deduplication-test.d.ts +0 -1
  131. package/test/icc-x-api/crypto/share-deduplication-test.js +0 -250
  132. package/test/icc-x-api/crypto/share-deduplication-test.js.map +0 -1
  133. package/test/icc-x-api/crypto/share-to-newly-created-patient-from-hcp.d.ts +0 -1
  134. package/test/icc-x-api/crypto/share-to-newly-created-patient-from-hcp.js +0 -71
  135. package/test/icc-x-api/crypto/share-to-newly-created-patient-from-hcp.js.map +0 -1
  136. package/test/icc-x-api/crypto/soft-deleted-data-owners.d.ts +0 -2
  137. package/test/icc-x-api/crypto/soft-deleted-data-owners.js +0 -113
  138. package/test/icc-x-api/crypto/soft-deleted-data-owners.js.map +0 -1
  139. package/test/icc-x-api/crypto/user-encryption-keys-manager-test.d.ts +0 -1
  140. package/test/icc-x-api/crypto/user-encryption-keys-manager-test.js +0 -246
  141. package/test/icc-x-api/crypto/user-encryption-keys-manager-test.js.map +0 -1
  142. package/test/icc-x-api/entity-with-attachments-api-test.d.ts +0 -1
  143. package/test/icc-x-api/entity-with-attachments-api-test.js +0 -142
  144. package/test/icc-x-api/entity-with-attachments-api-test.js.map +0 -1
  145. package/test/icc-x-api/filters/filters.d.ts +0 -1
  146. package/test/icc-x-api/filters/filters.js +0 -49
  147. package/test/icc-x-api/filters/filters.js.map +0 -1
  148. package/test/icc-x-api/filters/healthelement.d.ts +0 -1
  149. package/test/icc-x-api/filters/healthelement.js +0 -333
  150. package/test/icc-x-api/filters/healthelement.js.map +0 -1
  151. package/test/icc-x-api/icc-accesslog-x-api.d.ts +0 -1
  152. package/test/icc-x-api/icc-accesslog-x-api.js +0 -106
  153. package/test/icc-x-api/icc-accesslog-x-api.js.map +0 -1
  154. package/test/icc-x-api/icc-application-settings-x-api.d.ts +0 -1
  155. package/test/icc-x-api/icc-application-settings-x-api.js +0 -91
  156. package/test/icc-x-api/icc-application-settings-x-api.js.map +0 -1
  157. package/test/icc-x-api/icc-auth-api.d.ts +0 -1
  158. package/test/icc-x-api/icc-auth-api.js +0 -47
  159. package/test/icc-x-api/icc-auth-api.js.map +0 -1
  160. package/test/icc-x-api/icc-calendar-item-x-api.d.ts +0 -1
  161. package/test/icc-x-api/icc-calendar-item-x-api.js +0 -150
  162. package/test/icc-x-api/icc-calendar-item-x-api.js.map +0 -1
  163. package/test/icc-x-api/icc-code-x-api-test.d.ts +0 -1
  164. package/test/icc-x-api/icc-code-x-api-test.js +0 -74
  165. package/test/icc-x-api/icc-code-x-api-test.js.map +0 -1
  166. package/test/icc-x-api/icc-contact-x-api.d.ts +0 -1
  167. package/test/icc-x-api/icc-contact-x-api.js +0 -355
  168. package/test/icc-x-api/icc-contact-x-api.js.map +0 -1
  169. package/test/icc-x-api/icc-document-x-api.d.ts +0 -1
  170. package/test/icc-x-api/icc-document-x-api.js +0 -76
  171. package/test/icc-x-api/icc-document-x-api.js.map +0 -1
  172. package/test/icc-x-api/icc-form-x-api.d.ts +0 -1
  173. package/test/icc-x-api/icc-form-x-api.js +0 -413
  174. package/test/icc-x-api/icc-form-x-api.js.map +0 -1
  175. package/test/icc-x-api/icc-hcparty-x-api-test.d.ts +0 -1
  176. package/test/icc-x-api/icc-hcparty-x-api-test.js +0 -43
  177. package/test/icc-x-api/icc-hcparty-x-api-test.js.map +0 -1
  178. package/test/icc-x-api/icc-helement-x-api-test.d.ts +0 -1
  179. package/test/icc-x-api/icc-helement-x-api-test.js +0 -155
  180. package/test/icc-x-api/icc-helement-x-api-test.js.map +0 -1
  181. package/test/icc-x-api/icc-invoice-x-api.d.ts +0 -1
  182. package/test/icc-x-api/icc-invoice-x-api.js +0 -99
  183. package/test/icc-x-api/icc-invoice-x-api.js.map +0 -1
  184. package/test/icc-x-api/icc-maintenance-task-x-api-test.d.ts +0 -1
  185. package/test/icc-x-api/icc-maintenance-task-x-api-test.js +0 -222
  186. package/test/icc-x-api/icc-maintenance-task-x-api-test.js.map +0 -1
  187. package/test/icc-x-api/icc-message-x-api.d.ts +0 -1
  188. package/test/icc-x-api/icc-message-x-api.js +0 -54
  189. package/test/icc-x-api/icc-message-x-api.js.map +0 -1
  190. package/test/icc-x-api/icc-patient-x-api-test.d.ts +0 -1
  191. package/test/icc-x-api/icc-patient-x-api-test.js +0 -209
  192. package/test/icc-x-api/icc-patient-x-api-test.js.map +0 -1
  193. package/test/icc-x-api/icc-recovery-x-api.d.ts +0 -1
  194. package/test/icc-x-api/icc-recovery-x-api.js +0 -175
  195. package/test/icc-x-api/icc-recovery-x-api.js.map +0 -1
  196. package/test/icc-x-api/icc-topic-x-api.d.ts +0 -1
  197. package/test/icc-x-api/icc-topic-x-api.js +0 -269
  198. package/test/icc-x-api/icc-topic-x-api.js.map +0 -1
  199. package/test/icc-x-api/icc-user-x-api-test.d.ts +0 -1
  200. package/test/icc-x-api/icc-user-x-api-test.js +0 -99
  201. package/test/icc-x-api/icc-user-x-api-test.js.map +0 -1
  202. package/test/icc-x-api/keyless-api.d.ts +0 -1
  203. package/test/icc-x-api/keyless-api.js +0 -125
  204. package/test/icc-x-api/keyless-api.js.map +0 -1
  205. package/test/icc-x-api/patient-user.d.ts +0 -2
  206. package/test/icc-x-api/patient-user.js +0 -103
  207. package/test/icc-x-api/patient-user.js.map +0 -1
  208. package/test/icc-x-api/storage/storage.d.ts +0 -1
  209. package/test/icc-x-api/storage/storage.js +0 -48
  210. package/test/icc-x-api/storage/storage.js.map +0 -1
  211. package/test/icc-x-api/test-api-no-parent.d.ts +0 -1
  212. package/test/icc-x-api/test-api-no-parent.js +0 -79
  213. package/test/icc-x-api/test-api-no-parent.js.map +0 -1
  214. package/test/icc-x-api/test-legacy-data-support.d.ts +0 -1
  215. package/test/icc-x-api/test-legacy-data-support.js +0 -375
  216. package/test/icc-x-api/test-legacy-data-support.js.map +0 -1
  217. package/test/icc-x-api/utils/date-encode-test.d.ts +0 -1
  218. package/test/icc-x-api/utils/date-encode-test.js +0 -150
  219. package/test/icc-x-api/utils/date-encode-test.js.map +0 -1
  220. package/test/icc-x-api/utils/graph-test.d.ts +0 -1
  221. package/test/icc-x-api/utils/graph-test.js +0 -54
  222. package/test/icc-x-api/utils/graph-test.js.map +0 -1
  223. package/test/icc-x-api/utils/lru-temporised-async-cache-test.d.ts +0 -1
  224. package/test/icc-x-api/utils/lru-temporised-async-cache-test.js +0 -364
  225. package/test/icc-x-api/utils/lru-temporised-async-cache-test.js.map +0 -1
  226. package/test/icc-x-api/utils/lzma-benchmark-test.d.ts +0 -1
  227. package/test/icc-x-api/utils/lzma-benchmark-test.js +0 -132
  228. package/test/icc-x-api/utils/lzma-benchmark-test.js.map +0 -1
  229. package/test/icc-x-api/utils/lzma-compat-test.d.ts +0 -1
  230. package/test/icc-x-api/utils/lzma-compat-test.js +0 -218
  231. package/test/icc-x-api/utils/lzma-compat-test.js.map +0 -1
  232. package/test/icc-x-api/utils/mutex-test.d.ts +0 -1
  233. package/test/icc-x-api/utils/mutex-test.js +0 -114
  234. package/test/icc-x-api/utils/mutex-test.js.map +0 -1
  235. package/test/icc-x-api/utils/to-moment-test.d.ts +0 -1
  236. package/test/icc-x-api/utils/to-moment-test.js +0 -110
  237. package/test/icc-x-api/utils/to-moment-test.js.map +0 -1
  238. package/test/support/CSM-185.d.ts +0 -1
  239. package/test/support/CSM-185.js +0 -124
  240. package/test/support/CSM-185.js.map +0 -1
  241. package/test/support/CSM-243.d.ts +0 -1
  242. package/test/support/CSM-243.js +0 -120
  243. package/test/support/CSM-243.js.map +0 -1
  244. package/test/support/CSM-543.d.ts +0 -1
  245. package/test/support/CSM-543.js +0 -164
  246. package/test/support/CSM-543.js.map +0 -1
  247. package/test/support/CSM-729.d.ts +0 -1
  248. package/test/support/CSM-729.js +0 -225
  249. package/test/support/CSM-729.js.map +0 -1
  250. package/test/support/CSM-814.d.ts +0 -1
  251. package/test/support/CSM-814.js +0 -475
  252. package/test/support/CSM-814.js.map +0 -1
  253. package/test/support/CSM-87.d.ts +0 -0
  254. package/test/support/CSM-87.js +0 -21
  255. package/test/support/CSM-87.js.map +0 -1
  256. package/test/support/CSM-93.d.ts +0 -1
  257. package/test/support/CSM-93.js +0 -112
  258. package/test/support/CSM-93.js.map +0 -1
  259. package/test/utils/FakeDataOwnerApi.d.ts +0 -32
  260. package/test/utils/FakeDataOwnerApi.js +0 -136
  261. package/test/utils/FakeDataOwnerApi.js.map +0 -1
  262. package/test/utils/FakeEncryptionKeysManager.d.ts +0 -36
  263. package/test/utils/FakeEncryptionKeysManager.js +0 -97
  264. package/test/utils/FakeEncryptionKeysManager.js.map +0 -1
  265. package/test/utils/FakeExchangeDataApi.d.ts +0 -32
  266. package/test/utils/FakeExchangeDataApi.js +0 -92
  267. package/test/utils/FakeExchangeDataApi.js.map +0 -1
  268. package/test/utils/FakeExchangeDataManager.d.ts +0 -48
  269. package/test/utils/FakeExchangeDataManager.js +0 -82
  270. package/test/utils/FakeExchangeDataManager.js.map +0 -1
  271. package/test/utils/FakeExchangeDataMapManager.d.ts +0 -12
  272. package/test/utils/FakeExchangeDataMapManager.js +0 -38
  273. package/test/utils/FakeExchangeDataMapManager.js.map +0 -1
  274. package/test/utils/FakeGenericApi.d.ts +0 -16
  275. package/test/utils/FakeGenericApi.js +0 -65
  276. package/test/utils/FakeGenericApi.js.map +0 -1
  277. package/test/utils/KeylessCryptoStrategies.d.ts +0 -23
  278. package/test/utils/KeylessCryptoStrategies.js +0 -26
  279. package/test/utils/KeylessCryptoStrategies.js.map +0 -1
  280. package/test/utils/TestApi.d.ts +0 -3
  281. package/test/utils/TestApi.js +0 -30
  282. package/test/utils/TestApi.js.map +0 -1
  283. package/test/utils/TestCollectionUtils.d.ts +0 -1
  284. package/test/utils/TestCollectionUtils.js +0 -310
  285. package/test/utils/TestCollectionUtils.js.map +0 -1
  286. package/test/utils/TestCryptoStrategies.d.ts +0 -42
  287. package/test/utils/TestCryptoStrategies.js +0 -80
  288. package/test/utils/TestCryptoStrategies.js.map +0 -1
  289. package/test/utils/TestStorage.d.ts +0 -23
  290. package/test/utils/TestStorage.js +0 -61
  291. package/test/utils/TestStorage.js.map +0 -1
  292. package/test/utils/roles.d.ts +0 -14
  293. package/test/utils/roles.js +0 -345
  294. package/test/utils/roles.js.map +0 -1
  295. package/test/utils/test_utils.d.ts +0 -87
  296. package/test/utils/test_utils.js +0 -452
  297. package/test/utils/test_utils.js.map +0 -1
@@ -1,97 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.FakeEncryptionKeysManager = void 0;
13
- const UserEncryptionKeysManager_1 = require("../../icc-x-api/crypto/UserEncryptionKeysManager");
14
- const RSA_1 = require("../../icc-x-api/crypto/RSA");
15
- const icc_x_api_1 = require("../../icc-x-api");
16
- const utils_1 = require("../../icc-x-api/crypto/utils");
17
- class FakeEncryptionKeysManager extends UserEncryptionKeysManager_1.UserEncryptionKeysManager {
18
- constructor(keys) {
19
- super(null, null, null, null, null, null, null, null);
20
- this.keys = keys;
21
- }
22
- static create(primitives_1, verifiedKeys_1) {
23
- return __awaiter(this, arguments, void 0, function* (primitives, verifiedKeys, unverifiedKeys = []) {
24
- const keysByFingerprint = {};
25
- for (const key of verifiedKeys) {
26
- const fingerprint = (0, utils_1.fingerprintV1)((0, icc_x_api_1.ua2hex)(yield primitives.RSA.exportKey(key.publicKey, 'spki')));
27
- keysByFingerprint[fingerprint] = { pair: key, verified: true };
28
- }
29
- for (const key of unverifiedKeys) {
30
- const fingerprint = (0, utils_1.fingerprintV1)((0, icc_x_api_1.ua2hex)(yield primitives.RSA.exportKey(key.publicKey, 'spki')));
31
- keysByFingerprint[fingerprint] = { pair: key, verified: false };
32
- }
33
- return new FakeEncryptionKeysManager(keysByFingerprint);
34
- });
35
- }
36
- getCurrentUserAvailablePublicKeysHex(verifiedOnly) {
37
- return __awaiter(this, void 0, void 0, function* () {
38
- throw new Error('Not implemented');
39
- });
40
- }
41
- getCurrentUserHierarchyAvailablePublicKeysHex() {
42
- return __awaiter(this, void 0, void 0, function* () {
43
- throw new Error('Not implemented');
44
- });
45
- }
46
- getKeyPairForFingerprint(fingerprint) {
47
- const key = this.keys[fingerprint];
48
- if (key)
49
- return { pair: { publicKey: key.pair.publicKey, privateKey: key.pair.privateKey }, verified: key.verified };
50
- return undefined;
51
- }
52
- initialiseKeys() {
53
- return __awaiter(this, void 0, void 0, function* () {
54
- return Promise.resolve(undefined);
55
- });
56
- }
57
- reloadKeys() {
58
- return __awaiter(this, void 0, void 0, function* () { });
59
- }
60
- getSelfVerifiedKeys() {
61
- const res = [];
62
- for (const [fingerprint, { pair, verified }] of Object.entries(this.keys)) {
63
- if (verified)
64
- res.push({ fingerprint, pair });
65
- }
66
- return res;
67
- }
68
- getVerifiedPublicKeysFor(dataOwner) {
69
- return __awaiter(this, void 0, void 0, function* () {
70
- throw new Error('Not implemented');
71
- });
72
- }
73
- getDecryptionKeys() {
74
- return Object.fromEntries(Object.entries(this.keys).map(([fp, { pair }]) => [fp, pair]));
75
- }
76
- deleteKey(fp) {
77
- delete this.keys[fp];
78
- }
79
- addOrUpdateKey(primitives, pair, verified) {
80
- return __awaiter(this, void 0, void 0, function* () {
81
- const fp = (0, utils_1.fingerprintV1)((0, icc_x_api_1.ua2hex)(yield primitives.RSA.exportKey(pair.publicKey, 'spki')));
82
- this.keys[fp] = { pair, verified };
83
- });
84
- }
85
- unverifyExistingKeysAndCreateNewVerified(primitives) {
86
- return __awaiter(this, void 0, void 0, function* () {
87
- Object.values(this.keys).map((x) => {
88
- x.verified = false;
89
- });
90
- const newKey = yield primitives.RSA.generateKeyPair(RSA_1.ShaVersion.Sha256);
91
- const newKeyFp = (0, utils_1.fingerprintV1)((0, icc_x_api_1.ua2hex)(yield primitives.RSA.exportKey(newKey.publicKey, 'spki')));
92
- this.keys[newKeyFp] = { pair: newKey, verified: true };
93
- });
94
- }
95
- }
96
- exports.FakeEncryptionKeysManager = FakeEncryptionKeysManager;
97
- //# sourceMappingURL=FakeEncryptionKeysManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FakeEncryptionKeysManager.js","sourceRoot":"","sources":["../../../test/utils/FakeEncryptionKeysManager.ts"],"names":[],"mappings":"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","sourcesContent":["import { UserEncryptionKeysManager } from '../../icc-x-api/crypto/UserEncryptionKeysManager'\nimport { DataOwner } from '../../icc-x-api/icc-data-owner-x-api'\nimport { KeyPair, ShaVersion } from '../../icc-x-api/crypto/RSA'\nimport { CryptoPrimitives } from '../../icc-x-api/crypto/CryptoPrimitives'\nimport { ua2hex } from '../../icc-x-api'\nimport { fingerprintV1 } from '../../icc-x-api/crypto/utils'\n\nexport class FakeEncryptionKeysManager extends UserEncryptionKeysManager {\n constructor(private readonly keys: { [fingerprint: string]: { pair: KeyPair<CryptoKey>; verified: boolean } }) {\n super(null as any, null as any, null as any, null as any, null as any, null as any, null as any, null as any)\n }\n\n static async create(\n primitives: CryptoPrimitives,\n verifiedKeys: KeyPair<CryptoKey>[],\n unverifiedKeys: KeyPair<CryptoKey>[] = []\n ): Promise<FakeEncryptionKeysManager> {\n const keysByFingerprint = {} as { [fingerprint: string]: { pair: KeyPair<CryptoKey>; verified: boolean } }\n for (const key of verifiedKeys) {\n const fingerprint = fingerprintV1(ua2hex(await primitives.RSA.exportKey(key.publicKey, 'spki')))\n keysByFingerprint[fingerprint] = { pair: key, verified: true }\n }\n for (const key of unverifiedKeys) {\n const fingerprint = fingerprintV1(ua2hex(await primitives.RSA.exportKey(key.publicKey, 'spki')))\n keysByFingerprint[fingerprint] = { pair: key, verified: false }\n }\n return new FakeEncryptionKeysManager(keysByFingerprint)\n }\n\n async getCurrentUserAvailablePublicKeysHex(verifiedOnly: boolean): Promise<string[]> {\n throw new Error('Not implemented')\n }\n\n async getCurrentUserHierarchyAvailablePublicKeysHex(): Promise<string[]> {\n throw new Error('Not implemented')\n }\n\n getKeyPairForFingerprint(fingerprint: string): { pair: KeyPair<CryptoKey>; verified: boolean } | undefined {\n const key = this.keys[fingerprint]\n if (key) return { pair: { publicKey: key.pair.publicKey, privateKey: key.pair.privateKey }, verified: key.verified }\n return undefined\n }\n\n async initialiseKeys(): Promise<{ newKeyPair: KeyPair<CryptoKey>; newKeyFingerprint: string } | undefined> {\n return Promise.resolve(undefined)\n }\n\n async reloadKeys(): Promise<void> {}\n\n getSelfVerifiedKeys(): { fingerprint: string; pair: KeyPair<CryptoKey> }[] {\n const res = []\n for (const [fingerprint, { pair, verified }] of Object.entries(this.keys)) {\n if (verified) res.push({ fingerprint, pair })\n }\n return res\n }\n\n async getVerifiedPublicKeysFor(dataOwner: DataOwner): Promise<string[]> {\n throw new Error('Not implemented')\n }\n\n getDecryptionKeys(): { [p: string]: KeyPair<CryptoKey> } {\n return Object.fromEntries(Object.entries(this.keys).map(([fp, { pair }]) => [fp, pair]))\n }\n\n deleteKey(fp: string) {\n delete this.keys[fp]\n }\n\n async addOrUpdateKey(primitives: CryptoPrimitives, pair: KeyPair<CryptoKey>, verified: boolean) {\n const fp = fingerprintV1(ua2hex(await primitives.RSA.exportKey(pair.publicKey, 'spki')))\n this.keys[fp] = { pair, verified }\n }\n\n async unverifyExistingKeysAndCreateNewVerified(primitives: CryptoPrimitives) {\n Object.values(this.keys).map((x) => {\n x.verified = false\n })\n const newKey = await primitives.RSA.generateKeyPair(ShaVersion.Sha256)\n const newKeyFp = fingerprintV1(ua2hex(await primitives.RSA.exportKey(newKey.publicKey, 'spki')))\n this.keys[newKeyFp] = { pair: newKey, verified: true }\n }\n}\n"]}
@@ -1,32 +0,0 @@
1
- import { IccExchangeDataApi } from '../../icc-api/api/internal/IccExchangeDataApi';
2
- import { ExchangeData } from '../../icc-api/model/internal/ExchangeData';
3
- import { PaginatedListExchangeData } from '../../icc-api/model/PaginatedListExchangeData';
4
- import { ListOfIds } from '../../icc-api/model/ListOfIds';
5
- export type CallCount = {
6
- createExchangeData: number;
7
- modifyExchangeData: number;
8
- getExchangeDataByParticipant: number;
9
- getExchangeDataByDelegatorDelegate: number;
10
- getExchangeDataByIds: number;
11
- };
12
- export type ExpectedCallCount = {
13
- createExchangeData?: number;
14
- modifyExchangeData?: number;
15
- getExchangeDataByParticipant?: number;
16
- getExchangeDataByDelegatorDelegate?: number;
17
- getExchangeDataByIds?: number;
18
- };
19
- export declare class FakeExchangeDataApi extends IccExchangeDataApi {
20
- private readonly data;
21
- private _callCount;
22
- get callCount(): CallCount;
23
- compareCallCountFromBaseline(baseline: CallCount, expected: ExpectedCallCount): void;
24
- constructor();
25
- createExchangeData(body: ExchangeData): Promise<ExchangeData>;
26
- modifyExchangeData(body: ExchangeData): Promise<ExchangeData>;
27
- getExchangeDataById(exchangeDataId: string): Promise<ExchangeData>;
28
- getExchangeDataByIds(body: ListOfIds): Promise<ExchangeData[]>;
29
- getExchangeDataByDelegatorDelegate(delegatorId: string, delegateId: string): Promise<ExchangeData[]>;
30
- getExchangeDataByParticipant(dataOwnerId: string, startDocumentId?: string, limit?: number): Promise<PaginatedListExchangeData>;
31
- getAll(): ExchangeData[];
32
- }
@@ -1,92 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.FakeExchangeDataApi = void 0;
13
- const IccExchangeDataApi_1 = require("../../icc-api/api/internal/IccExchangeDataApi");
14
- const ExchangeData_1 = require("../../icc-api/model/internal/ExchangeData");
15
- const PaginatedListExchangeData_1 = require("../../icc-api/model/PaginatedListExchangeData");
16
- const FakeGenericApi_1 = require("./FakeGenericApi");
17
- const PaginatedDocumentKeyIdPairObject_1 = require("../../icc-api/model/PaginatedDocumentKeyIdPairObject");
18
- const collection_utils_1 = require("../../icc-x-api/utils/collection-utils");
19
- const chai_1 = require("chai");
20
- class FakeExchangeDataApi extends IccExchangeDataApi_1.IccExchangeDataApi {
21
- get callCount() {
22
- return (0, collection_utils_1.cloneDeep)(this._callCount);
23
- }
24
- compareCallCountFromBaseline(baseline, expected) {
25
- for (const [key, v] of Object.entries(expected)) {
26
- const curr = this._callCount[key];
27
- const currBaseline = baseline[key];
28
- (0, chai_1.expect)(curr).to.equal(currBaseline + v, `Actual call count for ${key} does not match expected
29
- Current: ${JSON.stringify(this._callCount)}
30
- Baseline: ${JSON.stringify(baseline)}
31
- ExpectedDifference: ${JSON.stringify(expected)}
32
- `);
33
- }
34
- }
35
- constructor() {
36
- super('fake', {}, null, null);
37
- this.data = new FakeGenericApi_1.FakeGenericApi();
38
- this._callCount = {
39
- createExchangeData: 0,
40
- modifyExchangeData: 0,
41
- getExchangeDataByDelegatorDelegate: 0,
42
- getExchangeDataByParticipant: 0,
43
- getExchangeDataByIds: 0,
44
- };
45
- }
46
- createExchangeData(body) {
47
- this._callCount.createExchangeData += 1;
48
- return Promise.resolve(new ExchangeData_1.ExchangeData(this.data.createObject(body)));
49
- }
50
- modifyExchangeData(body) {
51
- this._callCount.modifyExchangeData += 1;
52
- return Promise.resolve(new ExchangeData_1.ExchangeData(this.data.modifyObject(body)));
53
- }
54
- getExchangeDataById(exchangeDataId) {
55
- throw new Error('Individual retrieve should not be used anymore');
56
- }
57
- getExchangeDataByIds(body) {
58
- return __awaiter(this, void 0, void 0, function* () {
59
- this._callCount.getExchangeDataByIds += 1;
60
- const allRetrieved = [];
61
- for (const id of body.ids) {
62
- const retrieved = this.data.getById(id);
63
- if (retrieved) {
64
- allRetrieved.push(new ExchangeData_1.ExchangeData(retrieved));
65
- }
66
- }
67
- return Promise.resolve(allRetrieved);
68
- });
69
- }
70
- getExchangeDataByDelegatorDelegate(delegatorId, delegateId) {
71
- this._callCount.getExchangeDataByDelegatorDelegate += 1;
72
- return Promise.resolve(this.data
73
- .getAll()
74
- .filter((x) => x.delegate === delegateId && x.delegator === delegatorId)
75
- .map((x) => new ExchangeData_1.ExchangeData(x)));
76
- }
77
- getExchangeDataByParticipant(dataOwnerId, startDocumentId, limit) {
78
- this._callCount.getExchangeDataByParticipant += 1;
79
- const retrieved = this.data.getPaged(startDocumentId, limit !== null && limit !== void 0 ? limit : 1000);
80
- return Promise.resolve(new PaginatedListExchangeData_1.PaginatedListExchangeData({
81
- pageSize: retrieved.rows.length,
82
- totalSize: retrieved.rows.length,
83
- rows: retrieved.rows.filter((x) => x.delegator === dataOwnerId || x.delegate === dataOwnerId).map((x) => new ExchangeData_1.ExchangeData(x)),
84
- nextKeyPair: new PaginatedDocumentKeyIdPairObject_1.PaginatedDocumentKeyIdPairObject({ startKeyDocId: retrieved.nextId }),
85
- }));
86
- }
87
- getAll() {
88
- return this.data.getAll().map((x) => new ExchangeData_1.ExchangeData(x));
89
- }
90
- }
91
- exports.FakeExchangeDataApi = FakeExchangeDataApi;
92
- //# sourceMappingURL=FakeExchangeDataApi.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FakeExchangeDataApi.js","sourceRoot":"","sources":["../../../test/utils/FakeExchangeDataApi.ts"],"names":[],"mappings":"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","sourcesContent":["import { IccExchangeDataApi } from '../../icc-api/api/internal/IccExchangeDataApi'\nimport { ExchangeData } from '../../icc-api/model/internal/ExchangeData'\nimport { PaginatedListExchangeData } from '../../icc-api/model/PaginatedListExchangeData'\nimport { FakeGenericApi } from './FakeGenericApi'\nimport { PaginatedDocumentKeyIdPairObject } from '../../icc-api/model/PaginatedDocumentKeyIdPairObject'\nimport { cloneDeep } from '../../icc-x-api/utils/collection-utils'\nimport { expect } from 'chai'\nimport base = Mocha.reporters.base\nimport { ListOfIds } from '../../icc-api/model/ListOfIds'\n\nexport type CallCount = {\n createExchangeData: number\n modifyExchangeData: number\n getExchangeDataByParticipant: number\n getExchangeDataByDelegatorDelegate: number\n getExchangeDataByIds: number\n}\n\nexport type ExpectedCallCount = {\n createExchangeData?: number\n modifyExchangeData?: number\n getExchangeDataByParticipant?: number\n getExchangeDataByDelegatorDelegate?: number\n getExchangeDataByIds?: number\n}\n\nexport class FakeExchangeDataApi extends IccExchangeDataApi {\n private readonly data = new FakeGenericApi<ExchangeData>()\n private _callCount: CallCount = {\n createExchangeData: 0,\n modifyExchangeData: 0,\n getExchangeDataByDelegatorDelegate: 0,\n getExchangeDataByParticipant: 0,\n getExchangeDataByIds: 0,\n }\n\n public get callCount(): CallCount {\n return cloneDeep(this._callCount)\n }\n\n compareCallCountFromBaseline(baseline: CallCount, expected: ExpectedCallCount) {\n for (const [key, v] of Object.entries(expected)) {\n const curr = (this._callCount as any)[key] as number\n const currBaseline = (baseline as any)[key] as number\n expect(curr).to.equal(\n currBaseline + v,\n `Actual call count for ${key} does not match expected\n Current: ${JSON.stringify(this._callCount)}\n Baseline: ${JSON.stringify(baseline)}\n ExpectedDifference: ${JSON.stringify(expected)}\n `\n )\n }\n }\n\n constructor() {\n super('fake', {}, null as any, null as any)\n }\n\n createExchangeData(body: ExchangeData): Promise<ExchangeData> {\n this._callCount.createExchangeData += 1\n return Promise.resolve(new ExchangeData(this.data.createObject(body)))\n }\n\n modifyExchangeData(body: ExchangeData): Promise<ExchangeData> {\n this._callCount.modifyExchangeData += 1\n return Promise.resolve(new ExchangeData(this.data.modifyObject(body)))\n }\n\n getExchangeDataById(exchangeDataId: string): Promise<ExchangeData> {\n throw new Error('Individual retrieve should not be used anymore')\n }\n\n async getExchangeDataByIds(body: ListOfIds): Promise<ExchangeData[]> {\n this._callCount.getExchangeDataByIds += 1\n const allRetrieved: ExchangeData[] = []\n for (const id of body.ids!) {\n const retrieved = this.data.getById(id)\n if (retrieved) {\n allRetrieved.push(new ExchangeData(retrieved))\n }\n }\n return Promise.resolve(allRetrieved)\n }\n\n getExchangeDataByDelegatorDelegate(delegatorId: string, delegateId: string): Promise<ExchangeData[]> {\n this._callCount.getExchangeDataByDelegatorDelegate += 1\n return Promise.resolve(\n this.data\n .getAll()\n .filter((x) => x.delegate === delegateId && x.delegator === delegatorId)\n .map((x) => new ExchangeData(x))\n )\n }\n\n getExchangeDataByParticipant(dataOwnerId: string, startDocumentId?: string, limit?: number): Promise<PaginatedListExchangeData> {\n this._callCount.getExchangeDataByParticipant += 1\n const retrieved = this.data.getPaged(startDocumentId, limit ?? 1000)\n return Promise.resolve(\n new PaginatedListExchangeData({\n pageSize: retrieved.rows.length,\n totalSize: retrieved.rows.length,\n rows: retrieved.rows.filter((x) => x.delegator === dataOwnerId || x.delegate === dataOwnerId).map((x) => new ExchangeData(x)),\n nextKeyPair: new PaginatedDocumentKeyIdPairObject({ startKeyDocId: retrieved.nextId }),\n })\n )\n }\n\n getAll(): ExchangeData[] {\n return this.data.getAll().map((x) => new ExchangeData(x))\n }\n}\n"]}
@@ -1,48 +0,0 @@
1
- import { ExchangeDataManager } from '../../icc-x-api/crypto/ExchangeDataManager';
2
- import { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName';
3
- import { ExchangeData } from '../../icc-api/model/internal/ExchangeData';
4
- import { BaseExchangeDataManager } from '../../icc-x-api/crypto/BaseExchangeDataManager';
5
- import { CryptoPrimitives } from '../../icc-x-api';
6
- export declare class FakeDecryptionExchangeDataManager implements ExchangeDataManager {
7
- private readonly cryptoPrimitives;
8
- constructor(cryptoPrimitives: CryptoPrimitives);
9
- private readonly dataByHash;
10
- private readonly dataById;
11
- clearOrRepopulateCache(): Promise<void>;
12
- getAccessControlKeysValue(entityType: EntityWithDelegationTypeName): Promise<string | undefined>;
13
- getCachedDecryptionDataKeyByAccessControlHash(hashes: string[]): Promise<{
14
- [p: string]: {
15
- exchangeData: ExchangeData;
16
- exchangeKey: CryptoKey;
17
- accessControlSecret: string;
18
- };
19
- }>;
20
- getDecryptionDataKeyByIds(ids: string[], retrieveIfNotCached: boolean): Promise<{
21
- [id: string]: {
22
- exchangeKey: CryptoKey | undefined;
23
- accessControlSecret: string | undefined;
24
- exchangeData: ExchangeData;
25
- };
26
- }>;
27
- getOrCreateEncryptionDataTo(delegateId: string): Promise<{
28
- exchangeData: ExchangeData;
29
- accessControlSecret: string;
30
- exchangeKey: CryptoKey;
31
- sharedSignatureKey: CryptoKey;
32
- }>;
33
- cacheFakeData(exchangeData: ExchangeData, keyAndHashesFromSecret: {
34
- exchangeKey: CryptoKey;
35
- accessControlSecret?: string;
36
- hashes: string[];
37
- } | undefined, fakeNonCached?: boolean): void;
38
- giveAccessBackTo(otherDataOwner: string, newDataOwnerPublicKey: string): Promise<void>;
39
- getAllDelegationKeys(entityType: EntityWithDelegationTypeName): Promise<string[] | undefined>;
40
- get base(): BaseExchangeDataManager;
41
- injectDecryptedExchangeData(exchangeDataDetails: {
42
- exchangeDataId: string;
43
- accessControlSecret: ArrayBuffer;
44
- exchangeKey: ArrayBuffer;
45
- sharedSignatureKey: ArrayBuffer;
46
- verified: boolean;
47
- }[], reEncryptWithOwnKeys: boolean): Promise<void>;
48
- }
@@ -1,82 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.FakeDecryptionExchangeDataManager = void 0;
13
- class FakeDecryptionExchangeDataManager {
14
- constructor(cryptoPrimitives) {
15
- this.cryptoPrimitives = cryptoPrimitives;
16
- this.dataByHash = {};
17
- this.dataById = {};
18
- }
19
- clearOrRepopulateCache() {
20
- throw new Error('This method is not supported by fake exchange data manager and should not be used.');
21
- }
22
- getAccessControlKeysValue(entityType) {
23
- throw new Error('This method is not supported by fake exchange data manager and should not be used.');
24
- }
25
- getCachedDecryptionDataKeyByAccessControlHash(hashes) {
26
- return __awaiter(this, void 0, void 0, function* () {
27
- const res = {};
28
- for (const hash of hashes) {
29
- const retrieved = this.dataByHash[hash];
30
- if (retrieved)
31
- res[hash] = retrieved;
32
- }
33
- return res;
34
- });
35
- }
36
- getDecryptionDataKeyByIds(ids, retrieveIfNotCached) {
37
- return __awaiter(this, void 0, void 0, function* () {
38
- const res = {};
39
- for (const id of ids) {
40
- const retrieved = this.dataById[id];
41
- if (retrieved) {
42
- if (retrieveIfNotCached || !retrieved.fakeNonCached) {
43
- res[id] = retrieved;
44
- }
45
- }
46
- }
47
- return res;
48
- });
49
- }
50
- getOrCreateEncryptionDataTo(delegateId) {
51
- throw new Error('This method should not be used with this fake exchange data manager: only retrieval decryption data is supported');
52
- }
53
- cacheFakeData(exchangeData, keyAndHashesFromSecret, fakeNonCached) {
54
- var _a;
55
- const acSecret = !!keyAndHashesFromSecret ? (_a = keyAndHashesFromSecret.accessControlSecret) !== null && _a !== void 0 ? _a : this.cryptoPrimitives.randomUuid() : undefined;
56
- this.dataById[exchangeData.id] = {
57
- exchangeData,
58
- exchangeKey: keyAndHashesFromSecret === null || keyAndHashesFromSecret === void 0 ? void 0 : keyAndHashesFromSecret.exchangeKey,
59
- fakeNonCached: fakeNonCached !== null && fakeNonCached !== void 0 ? fakeNonCached : false,
60
- accessControlSecret: acSecret,
61
- };
62
- if (keyAndHashesFromSecret) {
63
- for (const hash of keyAndHashesFromSecret.hashes) {
64
- this.dataByHash[hash] = { exchangeData, exchangeKey: keyAndHashesFromSecret.exchangeKey, accessControlSecret: acSecret };
65
- }
66
- }
67
- }
68
- giveAccessBackTo(otherDataOwner, newDataOwnerPublicKey) {
69
- throw new Error('This method should not be used with this fake exchange data manager: only retrieval decryption data is supported');
70
- }
71
- getAllDelegationKeys(entityType) {
72
- throw new Error('This method should not be used with this fake exchange data manager: only retrieval decryption data is supported');
73
- }
74
- get base() {
75
- throw new Error('This method should not be used with this fake exchange data manager: only retrieval decryption data is supported');
76
- }
77
- injectDecryptedExchangeData(exchangeDataDetails, reEncryptWithOwnKeys) {
78
- throw new Error('This method should not be used with this fake exchange data manager: only retrieval decryption data is supported');
79
- }
80
- }
81
- exports.FakeDecryptionExchangeDataManager = FakeDecryptionExchangeDataManager;
82
- //# sourceMappingURL=FakeExchangeDataManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FakeExchangeDataManager.js","sourceRoot":"","sources":["../../../test/utils/FakeExchangeDataManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAQA,MAAa,iCAAiC;IAC5C,YAA6B,gBAAkC;QAAlC,qBAAgB,GAAhB,gBAAgB,CAAkB;QAE9C,eAAU,GAA4G,EAAE,CAAA;QACxH,aAAQ,GAErB,EAAE,CAAA;IAL4D,CAAC;IAOnE,sBAAsB;QACpB,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAA;IACvG,CAAC;IAED,yBAAyB,CAAC,UAAwC;QAChE,MAAM,IAAI,KAAK,CAAC,oFAAoF,CAAC,CAAA;IACvG,CAAC;IAEK,6CAA6C,CACjD,MAAgB;;YAEhB,MAAM,GAAG,GAAyG,EAAE,CAAA;YACpH,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;gBACvC,IAAI,SAAS;oBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,SAAS,CAAA;YACtC,CAAC;YACD,OAAO,GAAG,CAAA;QACZ,CAAC;KAAA;IAEK,yBAAyB,CAC7B,GAAa,EACb,mBAA4B;;YAE5B,MAAM,GAAG,GAAkI,EAAE,CAAA;YAC7I,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;gBACrB,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBACnC,IAAI,SAAS,EAAE,CAAC;oBACd,IAAI,mBAAmB,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC;wBACpD,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAA;oBACrB,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,GAAG,CAAA;QACZ,CAAC;KAAA;IAED,2BAA2B,CACzB,UAAkB;QAElB,MAAM,IAAI,KAAK,CAAC,kHAAkH,CAAC,CAAA;IACrI,CAAC;IAED,aAAa,CACX,YAA0B,EAC1B,sBAMa,EACb,aAAuB;;QAEvB,MAAM,QAAQ,GAAG,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,MAAA,sBAAsB,CAAC,mBAAmB,mCAAI,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;QACxI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAG,CAAC,GAAG;YAChC,YAAY;YACZ,WAAW,EAAE,sBAAsB,aAAtB,sBAAsB,uBAAtB,sBAAsB,CAAE,WAAW;YAChD,aAAa,EAAE,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,KAAK;YACrC,mBAAmB,EAAE,QAAQ;SAC9B,CAAA;QACD,IAAI,sBAAsB,EAAE,CAAC;YAC3B,KAAK,MAAM,IAAI,IAAI,sBAAsB,CAAC,MAAM,EAAE,CAAC;gBACjD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,WAAW,EAAE,sBAAsB,CAAC,WAAW,EAAE,mBAAmB,EAAE,QAAS,EAAE,CAAA;YAC3H,CAAC;QACH,CAAC;IACH,CAAC;IAED,gBAAgB,CAAC,cAAsB,EAAE,qBAA6B;QACpE,MAAM,IAAI,KAAK,CAAC,kHAAkH,CAAC,CAAA;IACrI,CAAC;IAED,oBAAoB,CAAC,UAAwC;QAC3D,MAAM,IAAI,KAAK,CAAC,kHAAkH,CAAC,CAAA;IACrI,CAAC;IAED,IAAI,IAAI;QACN,MAAM,IAAI,KAAK,CAAC,kHAAkH,CAAC,CAAA;IACrI,CAAC;IAED,2BAA2B,CACzB,mBAMG,EACH,oBAA6B;QAE7B,MAAM,IAAI,KAAK,CAAC,kHAAkH,CAAC,CAAA;IACrI,CAAC;CACF;AAlGD,8EAkGC","sourcesContent":["import { ExchangeDataManager } from '../../icc-x-api/crypto/ExchangeDataManager'\nimport { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName'\nimport { ExchangeData } from '../../icc-api/model/internal/ExchangeData'\nimport { expect } from 'chai'\nimport { BaseExchangeDataManager } from '../../icc-x-api/crypto/BaseExchangeDataManager'\nimport { CryptoPrimitives } from '../../icc-x-api'\nimport { id } from 'date-fns/locale'\n\nexport class FakeDecryptionExchangeDataManager implements ExchangeDataManager {\n constructor(private readonly cryptoPrimitives: CryptoPrimitives) {}\n\n private readonly dataByHash: { [hash: string]: { exchangeData: ExchangeData; exchangeKey: CryptoKey; accessControlSecret: string } } = {}\n private readonly dataById: {\n [id: string]: { exchangeData: ExchangeData; exchangeKey: CryptoKey | undefined; accessControlSecret: string | undefined; fakeNonCached: boolean }\n } = {}\n\n clearOrRepopulateCache(): Promise<void> {\n throw new Error('This method is not supported by fake exchange data manager and should not be used.')\n }\n\n getAccessControlKeysValue(entityType: EntityWithDelegationTypeName): Promise<string | undefined> {\n throw new Error('This method is not supported by fake exchange data manager and should not be used.')\n }\n\n async getCachedDecryptionDataKeyByAccessControlHash(\n hashes: string[]\n ): Promise<{ [p: string]: { exchangeData: ExchangeData; exchangeKey: CryptoKey; accessControlSecret: string } }> {\n const res: { [p: string]: { exchangeData: ExchangeData; accessControlSecret: string; exchangeKey: CryptoKey } } = {}\n for (const hash of hashes) {\n const retrieved = this.dataByHash[hash]\n if (retrieved) res[hash] = retrieved\n }\n return res\n }\n\n async getDecryptionDataKeyByIds(\n ids: string[],\n retrieveIfNotCached: boolean\n ): Promise<{ [id: string]: { exchangeKey: CryptoKey | undefined; accessControlSecret: string | undefined; exchangeData: ExchangeData } }> {\n const res: { [id: string]: { exchangeKey: CryptoKey | undefined; accessControlSecret: string | undefined; exchangeData: ExchangeData } } = {}\n for (const id of ids) {\n const retrieved = this.dataById[id]\n if (retrieved) {\n if (retrieveIfNotCached || !retrieved.fakeNonCached) {\n res[id] = retrieved\n }\n }\n }\n return res\n }\n\n getOrCreateEncryptionDataTo(\n delegateId: string\n ): Promise<{ exchangeData: ExchangeData; accessControlSecret: string; exchangeKey: CryptoKey; sharedSignatureKey: CryptoKey }> {\n throw new Error('This method should not be used with this fake exchange data manager: only retrieval decryption data is supported')\n }\n\n cacheFakeData(\n exchangeData: ExchangeData,\n keyAndHashesFromSecret:\n | {\n exchangeKey: CryptoKey\n accessControlSecret?: string\n hashes: string[]\n }\n | undefined,\n fakeNonCached?: boolean\n ) {\n const acSecret = !!keyAndHashesFromSecret ? keyAndHashesFromSecret.accessControlSecret ?? this.cryptoPrimitives.randomUuid() : undefined\n this.dataById[exchangeData.id!] = {\n exchangeData,\n exchangeKey: keyAndHashesFromSecret?.exchangeKey,\n fakeNonCached: fakeNonCached ?? false,\n accessControlSecret: acSecret,\n }\n if (keyAndHashesFromSecret) {\n for (const hash of keyAndHashesFromSecret.hashes) {\n this.dataByHash[hash] = { exchangeData, exchangeKey: keyAndHashesFromSecret.exchangeKey, accessControlSecret: acSecret! }\n }\n }\n }\n\n giveAccessBackTo(otherDataOwner: string, newDataOwnerPublicKey: string): Promise<void> {\n throw new Error('This method should not be used with this fake exchange data manager: only retrieval decryption data is supported')\n }\n\n getAllDelegationKeys(entityType: EntityWithDelegationTypeName): Promise<string[] | undefined> {\n throw new Error('This method should not be used with this fake exchange data manager: only retrieval decryption data is supported')\n }\n\n get base(): BaseExchangeDataManager {\n throw new Error('This method should not be used with this fake exchange data manager: only retrieval decryption data is supported')\n }\n\n injectDecryptedExchangeData(\n exchangeDataDetails: {\n exchangeDataId: string\n accessControlSecret: ArrayBuffer\n exchangeKey: ArrayBuffer\n sharedSignatureKey: ArrayBuffer\n verified: boolean\n }[],\n reEncryptWithOwnKeys: boolean\n ): Promise<void> {\n throw new Error('This method should not be used with this fake exchange data manager: only retrieval decryption data is supported')\n }\n}\n"]}
@@ -1,12 +0,0 @@
1
- import { ExchangeDataMapManager } from '../../icc-x-api/crypto/ExchangeDataMapManager';
2
- import { ExchangeDataMap } from '../../icc-api/model/internal/ExchangeDataMap';
3
- export declare class FakeExchangeDataMapManager extends ExchangeDataMapManager {
4
- private fakeApi;
5
- constructor();
6
- createExchangeDataMaps(batch: {
7
- [accessControlKeyHash: string]: {
8
- [fp: string]: string;
9
- };
10
- }): Promise<void>;
11
- getExchangeDataMapBatch(accessControlKeyHashes: string[]): Promise<ExchangeDataMap[]>;
12
- }
@@ -1,38 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.FakeExchangeDataMapManager = void 0;
13
- const ExchangeDataMapManager_1 = require("../../icc-x-api/crypto/ExchangeDataMapManager");
14
- const IccExchangeDataMapApi_1 = require("../../icc-api/api/internal/IccExchangeDataMapApi");
15
- const ExchangeDataMap_1 = require("../../icc-api/model/internal/ExchangeDataMap");
16
- const FakeGenericApi_1 = require("./FakeGenericApi");
17
- class FakeExchangeDataMapManager extends ExchangeDataMapManager_1.ExchangeDataMapManager {
18
- constructor() {
19
- super(new IccExchangeDataMapApi_1.IccExchangeDataMapApi('', {}));
20
- this.fakeApi = new FakeGenericApi_1.FakeGenericApi();
21
- }
22
- createExchangeDataMaps(batch) {
23
- return __awaiter(this, void 0, void 0, function* () {
24
- Object.entries(batch).forEach(([hash, encryptedIds]) => {
25
- this.fakeApi.createObject(new ExchangeDataMap_1.ExchangeDataMap({ id: hash, encryptedExchangeDataIds: encryptedIds }));
26
- });
27
- });
28
- }
29
- getExchangeDataMapBatch(accessControlKeyHashes) {
30
- return __awaiter(this, void 0, void 0, function* () {
31
- return accessControlKeyHashes.reduce((prev, curr) => {
32
- return [...prev, this.fakeApi.getById(curr)];
33
- }, []);
34
- });
35
- }
36
- }
37
- exports.FakeExchangeDataMapManager = FakeExchangeDataMapManager;
38
- //# sourceMappingURL=FakeExchangeDataMapManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FakeExchangeDataMapManager.js","sourceRoot":"","sources":["../../../test/utils/FakeExchangeDataMapManager.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0FAAsF;AACtF,4FAAwF;AACxF,kFAA8E;AAC9E,qDAAiD;AAEjD,MAAa,0BAA2B,SAAQ,+CAAsB;IAGpE;QACE,KAAK,CAAC,IAAI,6CAAqB,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QAHlC,YAAO,GAAG,IAAI,+BAAc,EAAmB,CAAA;IAIvD,CAAC;IAEK,sBAAsB,CAAC,KAAmE;;YAC9F,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,EAAE,EAAE;gBACrD,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,iCAAe,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,CAAC,CAAC,CAAA;YACtG,CAAC,CAAC,CAAA;QACJ,CAAC;KAAA;IAEK,uBAAuB,CAAC,sBAAgC;;YAC5D,OAAO,sBAAsB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;gBAClD,OAAO,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAE,CAAC,CAAA;YAC/C,CAAC,EAAE,EAAuB,CAAC,CAAA;QAC7B,CAAC;KAAA;CACF;AAlBD,gEAkBC","sourcesContent":["import { ExchangeDataMapManager } from '../../icc-x-api/crypto/ExchangeDataMapManager'\nimport { IccExchangeDataMapApi } from '../../icc-api/api/internal/IccExchangeDataMapApi'\nimport { ExchangeDataMap } from '../../icc-api/model/internal/ExchangeDataMap'\nimport { FakeGenericApi } from './FakeGenericApi'\n\nexport class FakeExchangeDataMapManager extends ExchangeDataMapManager {\n private fakeApi = new FakeGenericApi<ExchangeDataMap>()\n\n constructor() {\n super(new IccExchangeDataMapApi('', {}))\n }\n\n async createExchangeDataMaps(batch: { [accessControlKeyHash: string]: { [fp: string]: string } }): Promise<void> {\n Object.entries(batch).forEach(([hash, encryptedIds]) => {\n this.fakeApi.createObject(new ExchangeDataMap({ id: hash, encryptedExchangeDataIds: encryptedIds }))\n })\n }\n\n async getExchangeDataMapBatch(accessControlKeyHashes: string[]): Promise<ExchangeDataMap[]> {\n return accessControlKeyHashes.reduce((prev, curr) => {\n return [...prev, this.fakeApi.getById(curr)!]\n }, [] as ExchangeDataMap[])\n }\n}\n"]}
@@ -1,16 +0,0 @@
1
- export declare class FakeGenericApi<T extends {
2
- id?: string;
3
- rev?: string;
4
- }> {
5
- private readonly data;
6
- private readonly primitives;
7
- createObject(obj: T): T;
8
- modifyObject(obj: T): T;
9
- getAll(): T[];
10
- getPaged(startId: string | undefined, limit: number): {
11
- rows: T[];
12
- nextId: string | undefined;
13
- };
14
- getById(id: string): T | undefined;
15
- private nextRev;
16
- }
@@ -1,65 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FakeGenericApi = void 0;
4
- const collection_utils_1 = require("../../icc-x-api/utils/collection-utils");
5
- const CryptoPrimitives_1 = require("../../icc-x-api/crypto/CryptoPrimitives");
6
- const crypto_1 = require("crypto");
7
- class FakeGenericApi {
8
- constructor() {
9
- this.data = new Map();
10
- this.primitives = new CryptoPrimitives_1.WebCryptoPrimitives(crypto_1.webcrypto);
11
- }
12
- createObject(obj) {
13
- if (!obj.id)
14
- throw new Error(`New object should have id`);
15
- if (obj.rev)
16
- throw new Error(`New object should not have rev`);
17
- if (this.data.get(obj.id))
18
- throw new Error(`Object with id ${obj.id} already exists.`);
19
- const withRev = (0, collection_utils_1.cloneDeep)(obj);
20
- withRev.rev = this.nextRev(withRev.rev);
21
- this.data.set(obj.id, withRev);
22
- return (0, collection_utils_1.cloneDeep)(withRev);
23
- }
24
- modifyObject(obj) {
25
- if (!obj.id)
26
- throw new Error(`Modified object should have id`);
27
- const existing = this.data.get(obj.id);
28
- if (!existing)
29
- throw new Error(`No object with id ${obj.id}`);
30
- if (existing.rev !== obj.rev)
31
- throw new Error(`Object with id ${obj.id} has wrong rev: ${obj.rev} but expected ${existing.rev}.`);
32
- const withNewRev = (0, collection_utils_1.cloneDeep)(obj);
33
- withNewRev.rev = this.nextRev(withNewRev.rev);
34
- this.data.set(obj.id, withNewRev);
35
- return (0, collection_utils_1.cloneDeep)(withNewRev);
36
- }
37
- getAll() {
38
- return [...this.data.values()].map((x) => (0, collection_utils_1.cloneDeep)(x));
39
- }
40
- getPaged(startId, limit) {
41
- let rows = [...this.data.values()];
42
- let nextId = undefined;
43
- if (startId) {
44
- const startIndex = rows.findIndex((x) => x.id === startId);
45
- rows = rows.slice(startIndex);
46
- }
47
- if (rows.length > limit) {
48
- nextId = rows[limit].id;
49
- rows = rows.slice(0, limit);
50
- }
51
- return { rows: rows.map((x) => (0, collection_utils_1.cloneDeep)(x)), nextId };
52
- }
53
- getById(id) {
54
- const retrieved = this.data.get(id);
55
- return retrieved ? (0, collection_utils_1.cloneDeep)(retrieved) : undefined;
56
- }
57
- nextRev(rev) {
58
- if (!rev)
59
- return `1-${this.primitives.randomUuid()}`;
60
- const prevRevNumber = parseInt(rev.split('-')[0]);
61
- return `${prevRevNumber + 1}-${this.primitives.randomUuid()}`;
62
- }
63
- }
64
- exports.FakeGenericApi = FakeGenericApi;
65
- //# sourceMappingURL=FakeGenericApi.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FakeGenericApi.js","sourceRoot":"","sources":["../../../test/utils/FakeGenericApi.ts"],"names":[],"mappings":"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","sourcesContent":["import { cloneDeep } from '../../icc-x-api/utils/collection-utils'\nimport { CryptoPrimitives, WebCryptoPrimitives } from '../../icc-x-api/crypto/CryptoPrimitives'\nimport { webcrypto } from 'crypto'\n\nexport class FakeGenericApi<T extends { id?: string; rev?: string }> {\n private readonly data: Map<string, T> = new Map()\n private readonly primitives: CryptoPrimitives = new WebCryptoPrimitives(webcrypto as any)\n\n createObject(obj: T): T {\n if (!obj.id) throw new Error(`New object should have id`)\n if (obj.rev) throw new Error(`New object should not have rev`)\n if (this.data.get(obj.id!)) throw new Error(`Object with id ${obj.id} already exists.`)\n const withRev = cloneDeep(obj)\n withRev.rev = this.nextRev(withRev.rev)\n this.data.set(obj.id, withRev)\n return cloneDeep(withRev)\n }\n\n modifyObject(obj: T): T {\n if (!obj.id) throw new Error(`Modified object should have id`)\n const existing = this.data.get(obj.id!)\n if (!existing) throw new Error(`No object with id ${obj.id}`)\n if (existing.rev !== obj.rev) throw new Error(`Object with id ${obj.id} has wrong rev: ${obj.rev} but expected ${existing.rev}.`)\n const withNewRev = cloneDeep(obj)\n withNewRev.rev = this.nextRev(withNewRev.rev)\n this.data.set(obj.id, withNewRev)\n return cloneDeep(withNewRev)\n }\n\n getAll(): T[] {\n return [...this.data.values()].map((x) => cloneDeep(x))\n }\n\n getPaged(\n startId: string | undefined,\n limit: number\n ): {\n rows: T[]\n nextId: string | undefined\n } {\n let rows = [...this.data.values()]\n let nextId = undefined\n if (startId) {\n const startIndex = rows.findIndex((x) => x.id === startId)\n rows = rows.slice(startIndex)\n }\n if (rows.length > limit) {\n nextId = rows[limit].id\n rows = rows.slice(0, limit)\n }\n return { rows: rows.map((x) => cloneDeep(x)), nextId }\n }\n\n getById(id: string): T | undefined {\n const retrieved = this.data.get(id)\n return retrieved ? cloneDeep(retrieved) : undefined\n }\n\n private nextRev(rev: string | undefined): string {\n if (!rev) return `1-${this.primitives.randomUuid()}`\n const prevRevNumber = parseInt(rev.split('-')[0])\n return `${prevRevNumber + 1}-${this.primitives.randomUuid()}`\n }\n}\n"]}
@@ -1,23 +0,0 @@
1
- import { CryptoPrimitives, CryptoStrategies, KeyPair } from '../../icc-x-api';
2
- import { CryptoActorStubWithType } from '../../icc-api/model/CryptoActorStub';
3
- import { DataOwnerWithType } from '../../icc-api/model/DataOwnerWithType';
4
- export declare class KeylessCryptoStrategies implements CryptoStrategies {
5
- requestedKey: boolean;
6
- dataOwnerRequiresAnonymousDelegation(dataOwner: CryptoActorStubWithType): boolean;
7
- generateNewKeyForDataOwner(): Promise<KeyPair<CryptoKey> | boolean | 'keyless'>;
8
- recoverAndVerifySelfHierarchyKeys(keysData: {
9
- dataOwner: DataOwnerWithType;
10
- unknownKeys: string[];
11
- unavailableKeys: string[];
12
- }[]): Promise<{
13
- [p: string]: {
14
- recoveredKeys: {
15
- [p: string]: KeyPair<CryptoKey>;
16
- };
17
- keyAuthenticity: {
18
- [p: string]: boolean;
19
- };
20
- };
21
- }>;
22
- verifyDelegatePublicKeys(delegate: CryptoActorStubWithType, publicKeys: string[], cryptoPrimitives: CryptoPrimitives): Promise<string[]>;
23
- }
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.KeylessCryptoStrategies = void 0;
4
- const DataOwnerTypeEnum_1 = require("../../icc-api/model/DataOwnerTypeEnum");
5
- class KeylessCryptoStrategies {
6
- constructor() {
7
- this.requestedKey = false;
8
- }
9
- dataOwnerRequiresAnonymousDelegation(dataOwner) {
10
- return dataOwner.type != DataOwnerTypeEnum_1.DataOwnerTypeEnum.Hcp;
11
- }
12
- generateNewKeyForDataOwner() {
13
- this.requestedKey = true;
14
- return Promise.resolve('keyless');
15
- }
16
- recoverAndVerifySelfHierarchyKeys(keysData) {
17
- const res = {};
18
- keysData.forEach((x) => (res[x.dataOwner.dataOwner.id] = { recoveredKeys: {}, keyAuthenticity: {} }));
19
- return Promise.resolve(res);
20
- }
21
- verifyDelegatePublicKeys(delegate, publicKeys, cryptoPrimitives) {
22
- return Promise.resolve(publicKeys);
23
- }
24
- }
25
- exports.KeylessCryptoStrategies = KeylessCryptoStrategies;
26
- //# sourceMappingURL=KeylessCryptoStrategies.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KeylessCryptoStrategies.js","sourceRoot":"","sources":["../../../test/utils/KeylessCryptoStrategies.ts"],"names":[],"mappings":";;;AAEA,6EAAyE;AAGzE,MAAa,uBAAuB;IAApC;QACE,iBAAY,GAAY,KAAK,CAAA;IA8B/B,CAAC;IA5BC,oCAAoC,CAAC,SAAkC;QACrE,OAAO,SAAS,CAAC,IAAI,IAAI,qCAAiB,CAAC,GAAG,CAAA;IAChD,CAAC;IAED,0BAA0B;QACxB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QACxB,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IACnC,CAAC;IAED,iCAAiC,CAC/B,QAIG;QAIH,MAAM,GAAG,GAEL,EAAE,CAAA;QACN,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,EAAG,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;QACtG,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IAC7B,CAAC;IAED,wBAAwB,CAAC,QAAiC,EAAE,UAAoB,EAAE,gBAAkC;QAClH,OAAO,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IACpC,CAAC;CACF;AA/BD,0DA+BC","sourcesContent":["import { CryptoPrimitives, CryptoStrategies, KeyPair } from '../../icc-x-api'\nimport { CryptoActorStubWithType } from '../../icc-api/model/CryptoActorStub'\nimport { DataOwnerTypeEnum } from '../../icc-api/model/DataOwnerTypeEnum'\nimport { DataOwnerWithType } from '../../icc-api/model/DataOwnerWithType'\n\nexport class KeylessCryptoStrategies implements CryptoStrategies {\n requestedKey: boolean = false\n\n dataOwnerRequiresAnonymousDelegation(dataOwner: CryptoActorStubWithType): boolean {\n return dataOwner.type != DataOwnerTypeEnum.Hcp\n }\n\n generateNewKeyForDataOwner(): Promise<KeyPair<CryptoKey> | boolean | 'keyless'> {\n this.requestedKey = true\n return Promise.resolve('keyless')\n }\n\n recoverAndVerifySelfHierarchyKeys(\n keysData: {\n dataOwner: DataOwnerWithType\n unknownKeys: string[]\n unavailableKeys: string[]\n }[]\n ): Promise<{\n [p: string]: { recoveredKeys: { [p: string]: KeyPair<CryptoKey> }; keyAuthenticity: { [p: string]: boolean } }\n }> {\n const res: {\n [p: string]: { recoveredKeys: { [p: string]: KeyPair<CryptoKey> }; keyAuthenticity: { [p: string]: boolean } }\n } = {}\n keysData.forEach((x) => (res[x.dataOwner.dataOwner.id!] = { recoveredKeys: {}, keyAuthenticity: {} }))\n return Promise.resolve(res)\n }\n\n verifyDelegatePublicKeys(delegate: CryptoActorStubWithType, publicKeys: string[], cryptoPrimitives: CryptoPrimitives): Promise<string[]> {\n return Promise.resolve(publicKeys)\n }\n}\n"]}
@@ -1,3 +0,0 @@
1
- import { IcureApi, IcureApiOptions, KeyPair } from '../../icc-x-api';
2
- import 'isomorphic-fetch';
3
- export declare const TestApi: (host: string, username: string, password: string, crypto?: Crypto, keyPair?: KeyPair<CryptoKey>, options?: IcureApiOptions) => Promise<IcureApi>;