@docknetwork/wallet-sdk-wasm 1.7.7-alpha.0 → 1.9.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 (327) hide show
  1. package/package.json +7 -20
  2. package/rollup.config.mjs +1 -0
  3. package/src/globals.d.ts +4 -1
  4. package/src/services/blockchain/cached-did-resolver.ts +4 -3
  5. package/src/services/blockchain/normalize-did-document.ts +73 -0
  6. package/src/services/blockchain/service.ts +0 -2
  7. package/src/services/credential/bbs-revocation.test.js +147 -0
  8. package/src/services/credential/bbs-revocation.ts +65 -18
  9. package/src/services/credential/config.ts +7 -0
  10. package/src/services/credential/index.test.js +261 -17
  11. package/src/services/credential/oid4vci.js +44 -0
  12. package/src/services/credential/oid4vci.test.js +162 -0
  13. package/src/services/credential/pex-helpers.js +77 -31
  14. package/src/services/credential/pex-helpers.test.js +4 -4
  15. package/src/services/credential/sd-jwt.ts +41 -5
  16. package/src/services/credential/service-rpc.js +6 -0
  17. package/src/services/credential/service.ts +171 -16
  18. package/src/services/credential/utils.js +3 -5
  19. package/src/services/delegation/index.android.js +3 -0
  20. package/src/services/delegation/index.ios.js +3 -0
  21. package/src/services/delegation/index.ts +1 -0
  22. package/src/services/delegation/service-rpc.ts +21 -0
  23. package/src/services/delegation/service.ts +59 -0
  24. package/src/services/edv/service-rpc.js +18 -2
  25. package/src/services/edv/service.test.js +327 -0
  26. package/src/services/edv/service.ts +103 -13
  27. package/src/services/index.js +2 -0
  28. package/src/wallet/rpc-storage-interface.js +9 -4
  29. package/lib/core/crypto.js +0 -45
  30. package/lib/core/crypto.mjs +0 -33
  31. package/lib/core/format-utils.js +0 -51
  32. package/lib/core/format-utils.mjs +0 -42
  33. package/lib/core/keychain.js +0 -61
  34. package/lib/core/keychain.mjs +0 -37
  35. package/lib/core/logger.js +0 -13
  36. package/lib/core/logger.mjs +0 -9
  37. package/lib/core/storage.js +0 -14
  38. package/lib/core/storage.mjs +0 -9
  39. package/lib/core/validation.js +0 -29
  40. package/lib/core/validation.mjs +0 -16
  41. package/lib/core/webview-logger.js +0 -49
  42. package/lib/core/webview-logger.mjs +0 -41
  43. package/lib/errors.js +0 -17
  44. package/lib/errors.mjs +0 -12
  45. package/lib/events.js +0 -18
  46. package/lib/events.mjs +0 -13
  47. package/lib/index.js +0 -146
  48. package/lib/index.mjs +0 -144
  49. package/lib/logger.js +0 -22
  50. package/lib/logger.mjs +0 -17
  51. package/lib/modules/event-manager.js +0 -46
  52. package/lib/modules/event-manager.mjs +0 -37
  53. package/lib/modules/network-manager.js +0 -80
  54. package/lib/modules/network-manager.mjs +0 -71
  55. package/lib/mrklt.js +0 -2
  56. package/lib/mrklt.mjs +0 -1
  57. package/lib/rpc-client.js +0 -83
  58. package/lib/rpc-client.mjs +0 -73
  59. package/lib/rpc-server.js +0 -97
  60. package/lib/rpc-server.mjs +0 -95
  61. package/lib/rpc-util.js +0 -113
  62. package/lib/rpc-util.mjs +0 -103
  63. package/lib/sandbox-rpc-server.js +0 -28
  64. package/lib/sandbox-rpc-server.mjs +0 -26
  65. package/lib/sandbox.js +0 -102
  66. package/lib/sandbox.mjs +0 -100
  67. package/lib/services/blockchain/cached-did-resolver.js +0 -113
  68. package/lib/services/blockchain/cached-did-resolver.mjs +0 -109
  69. package/lib/services/blockchain/configs.js +0 -7
  70. package/lib/services/blockchain/configs.mjs +0 -3
  71. package/lib/services/blockchain/index.android.js +0 -18
  72. package/lib/services/blockchain/index.android.mjs +0 -14
  73. package/lib/services/blockchain/index.ios.js +0 -18
  74. package/lib/services/blockchain/index.ios.mjs +0 -14
  75. package/lib/services/blockchain/index.js +0 -36
  76. package/lib/services/blockchain/index.mjs +0 -28
  77. package/lib/services/blockchain/service-rpc.js +0 -72
  78. package/lib/services/blockchain/service-rpc.mjs +0 -68
  79. package/lib/services/blockchain/service.js +0 -312
  80. package/lib/services/blockchain/service.mjs +0 -306
  81. package/lib/services/credential/bbs-revocation.js +0 -92
  82. package/lib/services/credential/bbs-revocation.mjs +0 -87
  83. package/lib/services/credential/bound-check.js +0 -77
  84. package/lib/services/credential/bound-check.mjs +0 -64
  85. package/lib/services/credential/config.js +0 -56
  86. package/lib/services/credential/config.mjs +0 -47
  87. package/lib/services/credential/delegatable-credentials.js +0 -300
  88. package/lib/services/credential/delegatable-credentials.mjs +0 -263
  89. package/lib/services/credential/index.android.js +0 -19
  90. package/lib/services/credential/index.android.mjs +0 -15
  91. package/lib/services/credential/index.ios.js +0 -19
  92. package/lib/services/credential/index.ios.mjs +0 -15
  93. package/lib/services/credential/index.js +0 -106
  94. package/lib/services/credential/index.mjs +0 -67
  95. package/lib/services/credential/pex-helpers.js +0 -333
  96. package/lib/services/credential/pex-helpers.mjs +0 -319
  97. package/lib/services/credential/range-proofs-example.js +0 -107
  98. package/lib/services/credential/range-proofs-example.mjs +0 -103
  99. package/lib/services/credential/sd-jwt.js +0 -214
  100. package/lib/services/credential/sd-jwt.mjs +0 -200
  101. package/lib/services/credential/service-rpc.js +0 -61
  102. package/lib/services/credential/service-rpc.mjs +0 -57
  103. package/lib/services/credential/service.js +0 -683
  104. package/lib/services/credential/service.mjs +0 -672
  105. package/lib/services/credential/utils.js +0 -103
  106. package/lib/services/credential/utils.mjs +0 -78
  107. package/lib/services/dids/config.js +0 -40
  108. package/lib/services/dids/config.mjs +0 -31
  109. package/lib/services/dids/index.android.js +0 -19
  110. package/lib/services/dids/index.android.mjs +0 -15
  111. package/lib/services/dids/index.ios.js +0 -19
  112. package/lib/services/dids/index.ios.mjs +0 -15
  113. package/lib/services/dids/index.js +0 -23
  114. package/lib/services/dids/index.mjs +0 -19
  115. package/lib/services/dids/keypair-utils.js +0 -142
  116. package/lib/services/dids/keypair-utils.mjs +0 -113
  117. package/lib/services/dids/service-rpc.js +0 -37
  118. package/lib/services/dids/service-rpc.mjs +0 -33
  119. package/lib/services/dids/service.js +0 -100
  120. package/lib/services/dids/service.mjs +0 -92
  121. package/lib/services/edv/configs.js +0 -25
  122. package/lib/services/edv/configs.mjs +0 -16
  123. package/lib/services/edv/hmac.js +0 -88
  124. package/lib/services/edv/hmac.mjs +0 -63
  125. package/lib/services/edv/index.android.js +0 -19
  126. package/lib/services/edv/index.android.mjs +0 -15
  127. package/lib/services/edv/index.ios.js +0 -19
  128. package/lib/services/edv/index.ios.mjs +0 -15
  129. package/lib/services/edv/index.js +0 -32
  130. package/lib/services/edv/index.mjs +0 -24
  131. package/lib/services/edv/service-rpc.js +0 -78
  132. package/lib/services/edv/service-rpc.mjs +0 -74
  133. package/lib/services/edv/service.js +0 -370
  134. package/lib/services/edv/service.mjs +0 -357
  135. package/lib/services/index.js +0 -94
  136. package/lib/services/index.mjs +0 -92
  137. package/lib/services/pex/config.js +0 -29
  138. package/lib/services/pex/config.mjs +0 -20
  139. package/lib/services/pex/index.android.js +0 -19
  140. package/lib/services/pex/index.android.mjs +0 -15
  141. package/lib/services/pex/index.ios.js +0 -19
  142. package/lib/services/pex/index.ios.mjs +0 -15
  143. package/lib/services/pex/index.js +0 -12
  144. package/lib/services/pex/index.mjs +0 -4
  145. package/lib/services/pex/service-rpc.js +0 -39
  146. package/lib/services/pex/service-rpc.mjs +0 -35
  147. package/lib/services/pex/service.js +0 -91
  148. package/lib/services/pex/service.mjs +0 -86
  149. package/lib/services/pex/tests/jest.config.js +0 -25
  150. package/lib/services/pex/tests/jest.config.mjs +0 -23
  151. package/lib/services/relay-service/configs.js +0 -45
  152. package/lib/services/relay-service/configs.mjs +0 -36
  153. package/lib/services/relay-service/index.android.js +0 -21
  154. package/lib/services/relay-service/index.android.mjs +0 -17
  155. package/lib/services/relay-service/index.ios.js +0 -21
  156. package/lib/services/relay-service/index.ios.mjs +0 -17
  157. package/lib/services/relay-service/index.js +0 -14
  158. package/lib/services/relay-service/index.mjs +0 -6
  159. package/lib/services/relay-service/service-rpc.js +0 -47
  160. package/lib/services/relay-service/service-rpc.mjs +0 -43
  161. package/lib/services/relay-service/service.js +0 -181
  162. package/lib/services/relay-service/service.mjs +0 -173
  163. package/lib/services/rpc-service-client.js +0 -36
  164. package/lib/services/rpc-service-client.mjs +0 -28
  165. package/lib/services/sandbox.js +0 -10
  166. package/lib/services/sandbox.mjs +0 -8
  167. package/lib/services/storage/configs.js +0 -7
  168. package/lib/services/storage/configs.mjs +0 -3
  169. package/lib/services/storage/index.android.js +0 -18
  170. package/lib/services/storage/index.android.mjs +0 -14
  171. package/lib/services/storage/index.ios.js +0 -18
  172. package/lib/services/storage/index.ios.mjs +0 -14
  173. package/lib/services/storage/index.js +0 -26
  174. package/lib/services/storage/index.mjs +0 -24
  175. package/lib/services/storage/service-rpc.js +0 -37
  176. package/lib/services/storage/service-rpc.mjs +0 -33
  177. package/lib/services/storage/service.js +0 -32
  178. package/lib/services/storage/service.mjs +0 -27
  179. package/lib/services/test-utils.js +0 -98
  180. package/lib/services/test-utils.mjs +0 -84
  181. package/lib/services/util-crypto/configs.js +0 -23
  182. package/lib/services/util-crypto/configs.mjs +0 -15
  183. package/lib/services/util-crypto/index.android.js +0 -19
  184. package/lib/services/util-crypto/index.android.mjs +0 -15
  185. package/lib/services/util-crypto/index.ios.js +0 -19
  186. package/lib/services/util-crypto/index.ios.mjs +0 -15
  187. package/lib/services/util-crypto/index.js +0 -14
  188. package/lib/services/util-crypto/index.mjs +0 -6
  189. package/lib/services/util-crypto/service-rpc.js +0 -42
  190. package/lib/services/util-crypto/service-rpc.mjs +0 -38
  191. package/lib/services/util-crypto/service.js +0 -108
  192. package/lib/services/util-crypto/service.mjs +0 -83
  193. package/lib/services/wallet/configs.js +0 -32
  194. package/lib/services/wallet/configs.mjs +0 -23
  195. package/lib/services/wallet/index.android.js +0 -21
  196. package/lib/services/wallet/index.android.mjs +0 -17
  197. package/lib/services/wallet/index.ios.js +0 -21
  198. package/lib/services/wallet/index.ios.mjs +0 -17
  199. package/lib/services/wallet/index.js +0 -17
  200. package/lib/services/wallet/index.mjs +0 -9
  201. package/lib/services/wallet/service-rpc.js +0 -33
  202. package/lib/services/wallet/service-rpc.mjs +0 -29
  203. package/lib/services/wallet/service.js +0 -62
  204. package/lib/services/wallet/service.mjs +0 -57
  205. package/lib/setup-nodejs.js +0 -93
  206. package/lib/setup-nodejs.mjs +0 -91
  207. package/lib/setup-tests.js +0 -92
  208. package/lib/setup-tests.mjs +0 -90
  209. package/lib/src/core/crypto.d.ts +0 -8
  210. package/lib/src/core/crypto.d.ts.map +0 -1
  211. package/lib/src/core/format-utils.d.ts +0 -26
  212. package/lib/src/core/format-utils.d.ts.map +0 -1
  213. package/lib/src/core/logger.d.ts +0 -3
  214. package/lib/src/core/logger.d.ts.map +0 -1
  215. package/lib/src/core/storage.d.ts +0 -8
  216. package/lib/src/core/storage.d.ts.map +0 -1
  217. package/lib/src/core/validation.d.ts +0 -6
  218. package/lib/src/core/validation.d.ts.map +0 -1
  219. package/lib/src/errors.d.ts +0 -7
  220. package/lib/src/errors.d.ts.map +0 -1
  221. package/lib/src/logger.d.ts +0 -5
  222. package/lib/src/logger.d.ts.map +0 -1
  223. package/lib/src/modules/event-manager.d.ts +0 -12
  224. package/lib/src/modules/event-manager.d.ts.map +0 -1
  225. package/lib/src/modules/network-manager.d.ts +0 -32
  226. package/lib/src/modules/network-manager.d.ts.map +0 -1
  227. package/lib/src/rpc-client.d.ts +0 -4
  228. package/lib/src/rpc-client.d.ts.map +0 -1
  229. package/lib/src/rpc-util.d.ts +0 -11
  230. package/lib/src/rpc-util.d.ts.map +0 -1
  231. package/lib/src/services/blockchain/cached-did-resolver.d.ts +0 -28
  232. package/lib/src/services/blockchain/cached-did-resolver.d.ts.map +0 -1
  233. package/lib/src/services/blockchain/cached-did-resolver.test.d.ts +0 -2
  234. package/lib/src/services/blockchain/cached-did-resolver.test.d.ts.map +0 -1
  235. package/lib/src/services/blockchain/configs.d.ts +0 -7
  236. package/lib/src/services/blockchain/configs.d.ts.map +0 -1
  237. package/lib/src/services/blockchain/service.d.ts +0 -155
  238. package/lib/src/services/blockchain/service.d.ts.map +0 -1
  239. package/lib/src/services/credential/bbs-revocation.d.ts +0 -10
  240. package/lib/src/services/credential/bbs-revocation.d.ts.map +0 -1
  241. package/lib/src/services/credential/bound-check.d.ts +0 -61
  242. package/lib/src/services/credential/bound-check.d.ts.map +0 -1
  243. package/lib/src/services/credential/bound-check.test.d.ts +0 -2
  244. package/lib/src/services/credential/bound-check.test.d.ts.map +0 -1
  245. package/lib/src/services/credential/config.d.ts +0 -10
  246. package/lib/src/services/credential/config.d.ts.map +0 -1
  247. package/lib/src/services/credential/delegatable-credentials.d.ts +0 -272
  248. package/lib/src/services/credential/delegatable-credentials.d.ts.map +0 -1
  249. package/lib/src/services/credential/index.d.ts +0 -35
  250. package/lib/src/services/credential/index.d.ts.map +0 -1
  251. package/lib/src/services/credential/pex-helpers.d.ts +0 -23
  252. package/lib/src/services/credential/pex-helpers.d.ts.map +0 -1
  253. package/lib/src/services/credential/range-proofs-example.d.ts +0 -2
  254. package/lib/src/services/credential/range-proofs-example.d.ts.map +0 -1
  255. package/lib/src/services/credential/sd-jwt.test.d.ts +0 -2
  256. package/lib/src/services/credential/sd-jwt.test.d.ts.map +0 -1
  257. package/lib/src/services/credential/service.d.ts +0 -313
  258. package/lib/src/services/credential/service.d.ts.map +0 -1
  259. package/lib/src/services/credential/utils.d.ts +0 -3
  260. package/lib/src/services/credential/utils.d.ts.map +0 -1
  261. package/lib/src/services/dids/config.d.ts +0 -24
  262. package/lib/src/services/dids/config.d.ts.map +0 -1
  263. package/lib/src/services/dids/keypair-utils.d.ts +0 -15
  264. package/lib/src/services/dids/keypair-utils.d.ts.map +0 -1
  265. package/lib/src/services/dids/service-rpc.d.ts +0 -11
  266. package/lib/src/services/dids/service-rpc.d.ts.map +0 -1
  267. package/lib/src/services/dids/service.d.ts +0 -70
  268. package/lib/src/services/dids/service.d.ts.map +0 -1
  269. package/lib/src/services/edv/configs.d.ts +0 -12
  270. package/lib/src/services/edv/configs.d.ts.map +0 -1
  271. package/lib/src/services/edv/hmac.d.ts +0 -29
  272. package/lib/src/services/edv/hmac.d.ts.map +0 -1
  273. package/lib/src/services/edv/service.d.ts +0 -229
  274. package/lib/src/services/edv/service.d.ts.map +0 -1
  275. package/lib/src/services/pex/config.d.ts +0 -21
  276. package/lib/src/services/pex/config.d.ts.map +0 -1
  277. package/lib/src/services/pex/service.d.ts +0 -21
  278. package/lib/src/services/pex/service.d.ts.map +0 -1
  279. package/lib/src/services/relay-service/configs.d.ts +0 -35
  280. package/lib/src/services/relay-service/configs.d.ts.map +0 -1
  281. package/lib/src/services/relay-service/service-rpc.d.ts +0 -12
  282. package/lib/src/services/relay-service/service-rpc.d.ts.map +0 -1
  283. package/lib/src/services/relay-service/service.d.ts +0 -159
  284. package/lib/src/services/relay-service/service.d.ts.map +0 -1
  285. package/lib/src/services/rpc-service-client.d.ts +0 -7
  286. package/lib/src/services/rpc-service-client.d.ts.map +0 -1
  287. package/lib/src/services/storage/configs.d.ts +0 -2
  288. package/lib/src/services/storage/configs.d.ts.map +0 -1
  289. package/lib/src/services/storage/index.d.ts +0 -2
  290. package/lib/src/services/storage/index.d.ts.map +0 -1
  291. package/lib/src/services/storage/service-rpc.d.ts +0 -9
  292. package/lib/src/services/storage/service-rpc.d.ts.map +0 -1
  293. package/lib/src/services/storage/service.d.ts +0 -10
  294. package/lib/src/services/storage/service.d.ts.map +0 -1
  295. package/lib/src/services/util-crypto/configs.d.ts +0 -5
  296. package/lib/src/services/util-crypto/configs.d.ts.map +0 -1
  297. package/lib/src/services/util-crypto/index.d.ts +0 -2
  298. package/lib/src/services/util-crypto/index.d.ts.map +0 -1
  299. package/lib/src/services/util-crypto/service.d.ts +0 -10
  300. package/lib/src/services/util-crypto/service.d.ts.map +0 -1
  301. package/lib/src/services/wallet/configs.d.ts +0 -13
  302. package/lib/src/services/wallet/configs.d.ts.map +0 -1
  303. package/lib/src/services/wallet/service.d.ts +0 -13
  304. package/lib/src/services/wallet/service.d.ts.map +0 -1
  305. package/lib/src/types.d.ts +0 -12
  306. package/lib/src/types.d.ts.map +0 -1
  307. package/lib/src/wallet/memory-storage-interface.d.ts +0 -31
  308. package/lib/src/wallet/memory-storage-interface.d.ts.map +0 -1
  309. package/lib/src/wallet/memory-storage-wallet.d.ts +0 -6
  310. package/lib/src/wallet/memory-storage-wallet.d.ts.map +0 -1
  311. package/lib/src/wallet/rpc-storage-interface.d.ts +0 -32
  312. package/lib/src/wallet/rpc-storage-interface.d.ts.map +0 -1
  313. package/lib/src/wallet/rpc-storage-wallet.d.ts +0 -6
  314. package/lib/src/wallet/rpc-storage-wallet.d.ts.map +0 -1
  315. package/lib/test-utils.js +0 -46
  316. package/lib/test-utils.mjs +0 -38
  317. package/lib/tsconfig.tsbuildinfo +0 -1
  318. package/lib/types.js +0 -7
  319. package/lib/types.mjs +0 -3
  320. package/lib/wallet/memory-storage-interface.js +0 -101
  321. package/lib/wallet/memory-storage-interface.mjs +0 -95
  322. package/lib/wallet/memory-storage-wallet.js +0 -30
  323. package/lib/wallet/memory-storage-wallet.mjs +0 -24
  324. package/lib/wallet/rpc-storage-interface.js +0 -134
  325. package/lib/wallet/rpc-storage-interface.mjs +0 -128
  326. package/lib/wallet/rpc-storage-wallet.js +0 -46
  327. package/lib/wallet/rpc-storage-wallet.mjs +0 -40
@@ -1,95 +0,0 @@
1
- import StorageInterface from '@docknetwork/universal-wallet/storage/storage-interface';
2
-
3
- function generateDocumentId() {
4
- return `doc${Math.floor(Math.random() * 10000)}`;
5
- }
6
-
7
- /* An example file system storage interface implementation. This is not secure and shouldn't be used in production */
8
- class MemoryStorageInterface extends StorageInterface {
9
- constructor(directory) {
10
- super();
11
-
12
- this.directory = directory;
13
-
14
- try {
15
- this.documents = JSON.parse(global.localStorage.getItem(directory));
16
-
17
- if (!this.documents) {
18
- this.documents = {};
19
- }
20
- } catch (err) {
21
- console.error(err);
22
- this.documents = {};
23
- }
24
- }
25
-
26
- updateLocalStorage() {
27
- global.localStorage.setItem(this.directory, JSON.stringify(this.documents));
28
- }
29
-
30
- async get({id}) {
31
- const content = this.documents[id];
32
- return {
33
- id,
34
- content,
35
- };
36
- }
37
-
38
- async update(options) {
39
- return this.insert(options);
40
- }
41
-
42
- async delete({document}) {
43
- delete this.documents[document.id];
44
- this.updateLocalStorage();
45
- }
46
-
47
- async insert({document}) {
48
- const docId = document.id || generateDocumentId();
49
-
50
- this.documents[docId] = document.content;
51
-
52
- this.updateLocalStorage();
53
-
54
- return {
55
- id: docId,
56
- ...document,
57
- };
58
- }
59
-
60
- async count(query) {
61
- const result = await this.find(query);
62
- return result.length;
63
- }
64
-
65
- async find({has = undefined, equals = undefined} = {}) {
66
- const documents = Object.keys(this.documents || {})
67
- .map(docId => {
68
- const content = this.documents[docId];
69
-
70
- let matchesQuery = false;
71
- if (!has && !equals) {
72
- // Return all documents
73
- matchesQuery = true;
74
- } else if (equals && equals['content.id']) {
75
- // Basic "query" support for tests
76
- matchesQuery = content.id === equals['content.id'];
77
- } else if (equals && equals['content.type']) {
78
- matchesQuery = content.type === equals['content.type'];
79
- }
80
-
81
- if (matchesQuery) {
82
- return {
83
- id: docId,
84
- content,
85
- };
86
- }
87
-
88
- return null;
89
- })
90
- .filter(value => !!value);
91
- return {documents};
92
- }
93
- }
94
-
95
- export { MemoryStorageInterface as default };
@@ -1,30 +0,0 @@
1
- 'use strict';
2
-
3
- var StorageWallet = require('@docknetwork/universal-wallet/storage-wallet');
4
- var wallet_memoryStorageInterface = require('./memory-storage-interface.js');
5
- require('@docknetwork/universal-wallet/storage/storage-interface');
6
-
7
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
-
9
- var StorageWallet__default = /*#__PURE__*/_interopDefaultLegacy(StorageWallet);
10
-
11
- class MemoryWallet extends StorageWallet__default["default"] {
12
- constructor(id, storageOptions = {}) {
13
- // Allow user to pass pre-initialized interface or construct a default one
14
- const storageInterface =
15
- storageOptions.storageInterface || new wallet_memoryStorageInterface(id);
16
- super(id, storageInterface);
17
- }
18
-
19
- async import(data, password) {
20
- const result = await super.import(data, password);
21
-
22
- this.contents.forEach(content => {
23
- this.promises.push(this.insertToStorage(content));
24
- });
25
-
26
- return result;
27
- }
28
- }
29
-
30
- module.exports = MemoryWallet;
@@ -1,24 +0,0 @@
1
- import StorageWallet from '@docknetwork/universal-wallet/storage-wallet';
2
- import MemoryStorageInterface from './memory-storage-interface.mjs';
3
- import '@docknetwork/universal-wallet/storage/storage-interface';
4
-
5
- class MemoryWallet extends StorageWallet {
6
- constructor(id, storageOptions = {}) {
7
- // Allow user to pass pre-initialized interface or construct a default one
8
- const storageInterface =
9
- storageOptions.storageInterface || new MemoryStorageInterface(id);
10
- super(id, storageInterface);
11
- }
12
-
13
- async import(data, password) {
14
- const result = await super.import(data, password);
15
-
16
- this.contents.forEach(content => {
17
- this.promises.push(this.insertToStorage(content));
18
- });
19
-
20
- return result;
21
- }
22
- }
23
-
24
- export { MemoryWallet as default };
@@ -1,134 +0,0 @@
1
- 'use strict';
2
-
3
- var StorageInterface = require('@docknetwork/universal-wallet/storage/storage-interface');
4
- var uuid = require('uuid');
5
- var services_storage_index = require('../services/storage/index.js');
6
- var core_logger = require('../core/logger.js');
7
- require('../services/storage/service.js');
8
- require('../services/storage/service-rpc.js');
9
- require('../services/rpc-service-client.js');
10
- require('assert');
11
- require('../rpc-client.js');
12
- require('json-rpc-2.0');
13
- require('../core/crypto.js');
14
- require('crypto');
15
- require('../logger.js');
16
- require('../rpc-util.js');
17
-
18
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
19
-
20
- var StorageInterface__default = /*#__PURE__*/_interopDefaultLegacy(StorageInterface);
21
-
22
- function generateDocumentId() {
23
- return `doc:${uuid.v4()}`;
24
- }
25
-
26
- /* An example file system storage interface implementation. This is not secure and shouldn't be used in production */
27
- class RpcStorageInterface extends StorageInterface__default["default"] {
28
- constructor(directory) {
29
- super();
30
- this.directory = directory;
31
- this.loadStorage(directory);
32
- }
33
-
34
- async loadStorage(directory) {
35
- let data;
36
- try {
37
- core_logger.Logger.debug(`Wallet: Loading storage from ${directory}`);
38
- data = await services_storage_index.storageService.getItem(directory);
39
-
40
- this.documents = typeof data === 'string' ? JSON.parse(data) : data;
41
-
42
- if (!this.documents) {
43
- core_logger.Logger.debug('Wallet: no storage found, creating empty wallet');
44
- this.documents = {};
45
- } else {
46
- core_logger.Logger.debug(`Wallet: existing storage found: ${JSON.stringify(data)}`);
47
- }
48
- } catch (err) {
49
- core_logger.Logger.error(
50
- `error to retrieve data from rpc storage: ${err.toString()}`,
51
- );
52
- core_logger.Logger.info(JSON.stringify(data));
53
- this.documents = {};
54
-
55
- throw err;
56
- }
57
- }
58
-
59
- updateLocalStorage() {
60
- services_storage_index.storageService.setItem(this.directory, JSON.stringify(this.documents));
61
- }
62
-
63
- async get({id}) {
64
- const content = this.documents[id];
65
- return {
66
- id,
67
- content,
68
- };
69
- }
70
-
71
- async update(options) {
72
- return this.insert(options);
73
- }
74
-
75
- async delete({document}) {
76
- delete this.documents[document.id];
77
- this.updateLocalStorage();
78
- }
79
-
80
- async insert({document}) {
81
- const docId = document.id || generateDocumentId();
82
-
83
- this.documents[docId] = document.content;
84
-
85
- this.updateLocalStorage();
86
-
87
- return {
88
- id: docId,
89
- ...document,
90
- };
91
- }
92
-
93
- async count(query) {
94
- const result = await this.find(query);
95
- return result.length;
96
- }
97
-
98
- async find({has = undefined, equals = undefined} = {}) {
99
- core_logger.Logger.debug('Execute find', {
100
- equals,
101
- documents: this.documents,
102
- });
103
-
104
- const documents = Object.keys(this.documents || {})
105
- .map(docId => {
106
- const content = this.documents[docId];
107
-
108
- let matchesQuery = false;
109
- if (!has && !equals) {
110
- // Return all documents
111
- matchesQuery = true;
112
- } else if (equals && equals['content.id']) {
113
- // Basic "query" support for tests
114
- matchesQuery = content.id === equals['content.id'];
115
- } else if (equals && equals['content.type']) {
116
- // Basic "query" support for tests
117
- matchesQuery = content.type === equals['content.type'];
118
- }
119
-
120
- if (matchesQuery) {
121
- return {
122
- id: docId,
123
- content,
124
- };
125
- }
126
-
127
- return null;
128
- })
129
- .filter(value => !!value);
130
- return {documents};
131
- }
132
- }
133
-
134
- module.exports = RpcStorageInterface;
@@ -1,128 +0,0 @@
1
- import StorageInterface from '@docknetwork/universal-wallet/storage/storage-interface';
2
- import { v4 } from 'uuid';
3
- import { storageService } from '../services/storage/index.mjs';
4
- import { Logger } from '../core/logger.mjs';
5
- import '../services/storage/service.mjs';
6
- import '../services/storage/service-rpc.mjs';
7
- import '../services/rpc-service-client.mjs';
8
- import 'assert';
9
- import '../rpc-client.mjs';
10
- import 'json-rpc-2.0';
11
- import '../core/crypto.mjs';
12
- import 'crypto';
13
- import '../logger.mjs';
14
- import '../rpc-util.mjs';
15
-
16
- function generateDocumentId() {
17
- return `doc:${v4()}`;
18
- }
19
-
20
- /* An example file system storage interface implementation. This is not secure and shouldn't be used in production */
21
- class RpcStorageInterface extends StorageInterface {
22
- constructor(directory) {
23
- super();
24
- this.directory = directory;
25
- this.loadStorage(directory);
26
- }
27
-
28
- async loadStorage(directory) {
29
- let data;
30
- try {
31
- Logger.debug(`Wallet: Loading storage from ${directory}`);
32
- data = await storageService.getItem(directory);
33
-
34
- this.documents = typeof data === 'string' ? JSON.parse(data) : data;
35
-
36
- if (!this.documents) {
37
- Logger.debug('Wallet: no storage found, creating empty wallet');
38
- this.documents = {};
39
- } else {
40
- Logger.debug(`Wallet: existing storage found: ${JSON.stringify(data)}`);
41
- }
42
- } catch (err) {
43
- Logger.error(
44
- `error to retrieve data from rpc storage: ${err.toString()}`,
45
- );
46
- Logger.info(JSON.stringify(data));
47
- this.documents = {};
48
-
49
- throw err;
50
- }
51
- }
52
-
53
- updateLocalStorage() {
54
- storageService.setItem(this.directory, JSON.stringify(this.documents));
55
- }
56
-
57
- async get({id}) {
58
- const content = this.documents[id];
59
- return {
60
- id,
61
- content,
62
- };
63
- }
64
-
65
- async update(options) {
66
- return this.insert(options);
67
- }
68
-
69
- async delete({document}) {
70
- delete this.documents[document.id];
71
- this.updateLocalStorage();
72
- }
73
-
74
- async insert({document}) {
75
- const docId = document.id || generateDocumentId();
76
-
77
- this.documents[docId] = document.content;
78
-
79
- this.updateLocalStorage();
80
-
81
- return {
82
- id: docId,
83
- ...document,
84
- };
85
- }
86
-
87
- async count(query) {
88
- const result = await this.find(query);
89
- return result.length;
90
- }
91
-
92
- async find({has = undefined, equals = undefined} = {}) {
93
- Logger.debug('Execute find', {
94
- equals,
95
- documents: this.documents,
96
- });
97
-
98
- const documents = Object.keys(this.documents || {})
99
- .map(docId => {
100
- const content = this.documents[docId];
101
-
102
- let matchesQuery = false;
103
- if (!has && !equals) {
104
- // Return all documents
105
- matchesQuery = true;
106
- } else if (equals && equals['content.id']) {
107
- // Basic "query" support for tests
108
- matchesQuery = content.id === equals['content.id'];
109
- } else if (equals && equals['content.type']) {
110
- // Basic "query" support for tests
111
- matchesQuery = content.type === equals['content.type'];
112
- }
113
-
114
- if (matchesQuery) {
115
- return {
116
- id: docId,
117
- content,
118
- };
119
- }
120
-
121
- return null;
122
- })
123
- .filter(value => !!value);
124
- return {documents};
125
- }
126
- }
127
-
128
- export { RpcStorageInterface as default };
@@ -1,46 +0,0 @@
1
- 'use strict';
2
-
3
- var StorageWallet = require('@docknetwork/universal-wallet/storage-wallet');
4
- var wallet_rpcStorageInterface = require('./rpc-storage-interface.js');
5
- require('@docknetwork/universal-wallet/storage/storage-interface');
6
- require('uuid');
7
- require('../services/storage/index.js');
8
- require('../services/storage/service.js');
9
- require('../services/storage/service-rpc.js');
10
- require('../services/rpc-service-client.js');
11
- require('assert');
12
- require('../rpc-client.js');
13
- require('json-rpc-2.0');
14
- require('../core/crypto.js');
15
- require('crypto');
16
- require('../core/logger.js');
17
- require('../logger.js');
18
- require('../rpc-util.js');
19
-
20
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
21
-
22
- var StorageWallet__default = /*#__PURE__*/_interopDefaultLegacy(StorageWallet);
23
-
24
- class RpcWallet extends StorageWallet__default["default"] {
25
- constructor(id, storageOptions = {}) {
26
- // Allow user to pass pre-initialized interface or construct a default one
27
- const storageInterface =
28
- storageOptions.storageInterface || new wallet_rpcStorageInterface(id);
29
- super(id, storageInterface);
30
- }
31
-
32
- async import(data, password) {
33
- const result = await super.import(data, password);
34
-
35
- // validate wallet data
36
- // migrate wallet data
37
-
38
- this.contents.forEach(content => {
39
- this.promises.push(this.insertToStorage(content));
40
- });
41
-
42
- return result;
43
- }
44
- }
45
-
46
- module.exports = RpcWallet;
@@ -1,40 +0,0 @@
1
- import StorageWallet from '@docknetwork/universal-wallet/storage-wallet';
2
- import RpcStorageInterface from './rpc-storage-interface.mjs';
3
- import '@docknetwork/universal-wallet/storage/storage-interface';
4
- import 'uuid';
5
- import '../services/storage/index.mjs';
6
- import '../services/storage/service.mjs';
7
- import '../services/storage/service-rpc.mjs';
8
- import '../services/rpc-service-client.mjs';
9
- import 'assert';
10
- import '../rpc-client.mjs';
11
- import 'json-rpc-2.0';
12
- import '../core/crypto.mjs';
13
- import 'crypto';
14
- import '../core/logger.mjs';
15
- import '../logger.mjs';
16
- import '../rpc-util.mjs';
17
-
18
- class RpcWallet extends StorageWallet {
19
- constructor(id, storageOptions = {}) {
20
- // Allow user to pass pre-initialized interface or construct a default one
21
- const storageInterface =
22
- storageOptions.storageInterface || new RpcStorageInterface(id);
23
- super(id, storageInterface);
24
- }
25
-
26
- async import(data, password) {
27
- const result = await super.import(data, password);
28
-
29
- // validate wallet data
30
- // migrate wallet data
31
-
32
- this.contents.forEach(content => {
33
- this.promises.push(this.insertToStorage(content));
34
- });
35
-
36
- return result;
37
- }
38
- }
39
-
40
- export { RpcWallet as default };