@docknetwork/wallet-sdk-wasm 1.5.8 → 1.5.10

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 (322) hide show
  1. package/lib/core/format-utils.js +0 -28
  2. package/lib/core/format-utils.mjs +1 -24
  3. package/lib/core/validation.js +1 -24
  4. package/lib/core/validation.mjs +2 -21
  5. package/lib/index.js +13 -32
  6. package/lib/index.mjs +13 -32
  7. package/lib/rpc-server.js +13 -32
  8. package/lib/rpc-server.mjs +13 -32
  9. package/lib/rpc-util.js +14 -0
  10. package/lib/rpc-util.mjs +14 -0
  11. package/lib/services/blockchain/index.js +3 -8
  12. package/lib/services/blockchain/index.mjs +3 -8
  13. package/lib/services/blockchain/service.js +37 -80
  14. package/lib/services/blockchain/service.mjs +38 -81
  15. package/lib/services/credential/bbs-revocation.js +4 -9
  16. package/lib/services/credential/bbs-revocation.mjs +3 -8
  17. package/lib/services/credential/bound-check.js +9 -4
  18. package/lib/services/credential/bound-check.mjs +9 -4
  19. package/lib/services/credential/index.js +11 -15
  20. package/lib/services/credential/index.mjs +11 -15
  21. package/lib/services/credential/service.js +18 -20
  22. package/lib/services/credential/service.mjs +15 -17
  23. package/lib/services/credential/utils.js +65 -28
  24. package/lib/services/credential/utils.mjs +62 -32
  25. package/lib/services/dids/index.js +11 -16
  26. package/lib/services/dids/index.mjs +11 -16
  27. package/lib/services/dids/keypair-utils.js +142 -0
  28. package/lib/services/dids/keypair-utils.mjs +113 -0
  29. package/lib/services/dids/service.js +16 -37
  30. package/lib/services/dids/service.mjs +16 -37
  31. package/lib/services/edv/index.js +8 -16
  32. package/lib/services/edv/index.mjs +8 -16
  33. package/lib/services/edv/service.js +10 -24
  34. package/lib/services/edv/service.mjs +10 -24
  35. package/lib/services/index.js +13 -37
  36. package/lib/services/index.mjs +13 -37
  37. package/lib/services/pex/service.js +2 -1
  38. package/lib/services/pex/service.mjs +2 -1
  39. package/lib/services/relay-service/configs.js +0 -1
  40. package/lib/services/relay-service/configs.mjs +0 -1
  41. package/lib/services/relay-service/index.android.js +0 -1
  42. package/lib/services/relay-service/index.android.mjs +0 -1
  43. package/lib/services/relay-service/index.ios.js +0 -1
  44. package/lib/services/relay-service/index.ios.mjs +0 -1
  45. package/lib/services/relay-service/index.js +0 -1
  46. package/lib/services/relay-service/index.mjs +0 -1
  47. package/lib/services/relay-service/service-rpc.js +0 -1
  48. package/lib/services/relay-service/service-rpc.mjs +0 -1
  49. package/lib/services/relay-service/service.js +0 -1
  50. package/lib/services/relay-service/service.mjs +0 -1
  51. package/lib/services/test-utils.js +0 -239
  52. package/lib/services/test-utils.mjs +1 -234
  53. package/lib/services/util-crypto/configs.js +0 -12
  54. package/lib/services/util-crypto/configs.mjs +0 -12
  55. package/lib/services/util-crypto/index.android.js +0 -3
  56. package/lib/services/util-crypto/index.android.mjs +0 -3
  57. package/lib/services/util-crypto/index.ios.js +0 -3
  58. package/lib/services/util-crypto/index.ios.mjs +0 -3
  59. package/lib/services/util-crypto/index.js +4 -7
  60. package/lib/services/util-crypto/index.mjs +4 -7
  61. package/lib/services/util-crypto/service-rpc.js +0 -23
  62. package/lib/services/util-crypto/service-rpc.mjs +0 -23
  63. package/lib/services/util-crypto/service.js +68 -61
  64. package/lib/services/util-crypto/service.mjs +50 -59
  65. package/lib/services/wallet/configs.js +0 -63
  66. package/lib/services/wallet/configs.mjs +1 -64
  67. package/lib/services/wallet/index.android.js +0 -1
  68. package/lib/services/wallet/index.android.mjs +0 -1
  69. package/lib/services/wallet/index.ios.js +0 -1
  70. package/lib/services/wallet/index.ios.mjs +0 -1
  71. package/lib/services/wallet/index.js +2 -12
  72. package/lib/services/wallet/index.mjs +2 -12
  73. package/lib/services/wallet/service-rpc.js +0 -77
  74. package/lib/services/wallet/service-rpc.mjs +0 -77
  75. package/lib/services/wallet/service.js +1 -215
  76. package/lib/services/wallet/service.mjs +1 -211
  77. package/lib/setup-nodejs.js +13 -32
  78. package/lib/setup-nodejs.mjs +13 -32
  79. package/lib/setup-tests.js +13 -32
  80. package/lib/setup-tests.mjs +13 -32
  81. package/lib/src/core/format-utils.d.ts +0 -5
  82. package/lib/src/core/format-utils.d.ts.map +1 -1
  83. package/lib/src/core/validation.d.ts +0 -3
  84. package/lib/src/core/validation.d.ts.map +1 -1
  85. package/lib/src/rpc-util.d.ts.map +1 -1
  86. package/lib/src/services/blockchain/service.d.ts +7 -3
  87. package/lib/src/services/blockchain/service.d.ts.map +1 -1
  88. package/lib/src/services/credential/bbs-revocation.d.ts.map +1 -1
  89. package/lib/src/services/credential/bound-check.d.ts +1 -1
  90. package/lib/src/services/credential/bound-check.d.ts.map +1 -1
  91. package/lib/src/services/credential/service.d.ts.map +1 -1
  92. package/lib/src/services/credential/utils.d.ts +2 -1
  93. package/lib/src/services/credential/utils.d.ts.map +1 -1
  94. package/lib/src/services/dids/keypair-utils.d.ts +15 -0
  95. package/lib/src/services/dids/keypair-utils.d.ts.map +1 -0
  96. package/lib/src/services/dids/service.d.ts +6 -6
  97. package/lib/src/services/dids/service.d.ts.map +1 -1
  98. package/lib/src/services/edv/service.d.ts.map +1 -1
  99. package/lib/src/services/pex/service.d.ts.map +1 -1
  100. package/lib/src/services/util-crypto/configs.d.ts +0 -3
  101. package/lib/src/services/util-crypto/configs.d.ts.map +1 -1
  102. package/lib/src/services/util-crypto/service.d.ts +3 -8
  103. package/lib/src/services/util-crypto/service.d.ts.map +1 -1
  104. package/lib/src/services/wallet/configs.d.ts +13 -0
  105. package/lib/src/services/wallet/configs.d.ts.map +1 -0
  106. package/lib/src/services/wallet/service.d.ts +1 -44
  107. package/lib/src/services/wallet/service.d.ts.map +1 -1
  108. package/lib/test-utils.js +0 -4
  109. package/lib/test-utils.mjs +1 -4
  110. package/lib/tsconfig.tsbuildinfo +1 -1
  111. package/package.json +6 -27
  112. package/readme.md +0 -61
  113. package/src/core/format-utils.test.js +1 -28
  114. package/src/core/format-utils.ts +0 -33
  115. package/src/core/validation.test.js +1 -33
  116. package/src/core/validation.ts +1 -25
  117. package/src/rpc-server.test.js +2 -9
  118. package/src/rpc-util.js +14 -0
  119. package/src/services/blockchain/index.test.js +4 -15
  120. package/src/services/blockchain/service.ts +39 -98
  121. package/src/services/credential/bbs-revocation.ts +2 -1
  122. package/src/services/credential/bound-check.test.ts +6 -6
  123. package/src/services/credential/bound-check.ts +4 -4
  124. package/src/services/credential/index.test.js +0 -2
  125. package/src/services/credential/service.ts +5 -2
  126. package/src/services/credential/utils.js +65 -23
  127. package/src/services/dids/index.test.js +9 -20
  128. package/src/services/dids/keypair-utils.js +111 -0
  129. package/src/services/dids/service.ts +7 -26
  130. package/src/services/edv/service.ts +2 -9
  131. package/src/services/index.js +0 -8
  132. package/src/services/pex/service.ts +7 -1
  133. package/src/services/test-utils.js +0 -207
  134. package/src/services/util-crypto/configs.ts +0 -12
  135. package/src/services/util-crypto/index.test.js +6 -83
  136. package/src/services/util-crypto/service-rpc.js +0 -20
  137. package/src/services/util-crypto/service.ts +62 -75
  138. package/src/services/wallet/configs.ts +1 -113
  139. package/src/services/wallet/index.test.js +0 -159
  140. package/src/services/wallet/service-rpc.js +1 -88
  141. package/src/services/wallet/service.ts +0 -258
  142. package/src/test-utils.js +0 -13
  143. package/lib/account-8fa95046.js +0 -774
  144. package/lib/account-e7156c51.js +0 -764
  145. package/lib/core/polkadot-utils.js +0 -119
  146. package/lib/core/polkadot-utils.mjs +0 -94
  147. package/lib/core/realm-schemas.js +0 -50
  148. package/lib/core/realm-schemas.mjs +0 -44
  149. package/lib/core/subscan.js +0 -75
  150. package/lib/core/subscan.mjs +0 -64
  151. package/lib/fixtures.js +0 -56
  152. package/lib/fixtures.mjs +0 -52
  153. package/lib/modules/account.js +0 -55
  154. package/lib/modules/account.mjs +0 -47
  155. package/lib/modules/accounts.js +0 -56
  156. package/lib/modules/accounts.mjs +0 -47
  157. package/lib/modules/data-migration.js +0 -72
  158. package/lib/modules/data-migration.mjs +0 -68
  159. package/lib/modules/wallet-backup.js +0 -82
  160. package/lib/modules/wallet-backup.mjs +0 -71
  161. package/lib/modules/wallet.js +0 -56
  162. package/lib/modules/wallet.mjs +0 -47
  163. package/lib/services/example/configs.js +0 -21
  164. package/lib/services/example/configs.mjs +0 -13
  165. package/lib/services/example/index.js +0 -18
  166. package/lib/services/example/index.mjs +0 -14
  167. package/lib/services/example/service-rpc.js +0 -25
  168. package/lib/services/example/service-rpc.mjs +0 -21
  169. package/lib/services/example/service.js +0 -25
  170. package/lib/services/example/service.mjs +0 -20
  171. package/lib/services/keyring/configs.js +0 -70
  172. package/lib/services/keyring/configs.mjs +0 -61
  173. package/lib/services/keyring/index.android.js +0 -22
  174. package/lib/services/keyring/index.android.mjs +0 -18
  175. package/lib/services/keyring/index.ios.js +0 -22
  176. package/lib/services/keyring/index.ios.mjs +0 -18
  177. package/lib/services/keyring/index.js +0 -16
  178. package/lib/services/keyring/index.mjs +0 -8
  179. package/lib/services/keyring/service-rpc.js +0 -65
  180. package/lib/services/keyring/service-rpc.mjs +0 -61
  181. package/lib/services/keyring/service.js +0 -84
  182. package/lib/services/keyring/service.mjs +0 -74
  183. package/lib/services/polkadot/configs.js +0 -17
  184. package/lib/services/polkadot/configs.mjs +0 -13
  185. package/lib/services/polkadot/index.android.js +0 -22
  186. package/lib/services/polkadot/index.android.mjs +0 -18
  187. package/lib/services/polkadot/index.ios.js +0 -22
  188. package/lib/services/polkadot/index.ios.mjs +0 -18
  189. package/lib/services/polkadot/index.js +0 -15
  190. package/lib/services/polkadot/index.mjs +0 -7
  191. package/lib/services/polkadot/service-rpc.js +0 -30
  192. package/lib/services/polkadot/service-rpc.mjs +0 -26
  193. package/lib/services/polkadot/service.js +0 -28
  194. package/lib/services/polkadot/service.mjs +0 -23
  195. package/lib/services/substrate/api-utils.js +0 -85
  196. package/lib/services/substrate/api-utils.mjs +0 -74
  197. package/lib/services/substrate/configs.js +0 -30
  198. package/lib/services/substrate/configs.mjs +0 -21
  199. package/lib/services/substrate/index.android.js +0 -22
  200. package/lib/services/substrate/index.android.mjs +0 -18
  201. package/lib/services/substrate/index.ios.js +0 -22
  202. package/lib/services/substrate/index.ios.mjs +0 -18
  203. package/lib/services/substrate/index.js +0 -37
  204. package/lib/services/substrate/index.mjs +0 -29
  205. package/lib/services/substrate/service-rpc.js +0 -37
  206. package/lib/services/substrate/service-rpc.mjs +0 -33
  207. package/lib/services/substrate/service.js +0 -115
  208. package/lib/services/substrate/service.mjs +0 -102
  209. package/lib/services/trust-registry/configs.js +0 -25
  210. package/lib/services/trust-registry/configs.mjs +0 -16
  211. package/lib/services/trust-registry/index.android.js +0 -19
  212. package/lib/services/trust-registry/index.android.mjs +0 -15
  213. package/lib/services/trust-registry/index.ios.js +0 -19
  214. package/lib/services/trust-registry/index.ios.mjs +0 -15
  215. package/lib/services/trust-registry/index.js +0 -33
  216. package/lib/services/trust-registry/index.mjs +0 -25
  217. package/lib/services/trust-registry/service-rpc.js +0 -29
  218. package/lib/services/trust-registry/service-rpc.mjs +0 -25
  219. package/lib/services/trust-registry/service.js +0 -89
  220. package/lib/services/trust-registry/service.mjs +0 -85
  221. package/lib/src/core/polkadot-utils.d.ts +0 -11
  222. package/lib/src/core/polkadot-utils.d.ts.map +0 -1
  223. package/lib/src/modules/account.d.ts +0 -60
  224. package/lib/src/modules/account.d.ts.map +0 -1
  225. package/lib/src/modules/accounts.d.ts +0 -49
  226. package/lib/src/modules/accounts.d.ts.map +0 -1
  227. package/lib/src/modules/data-migration.d.ts +0 -7
  228. package/lib/src/modules/data-migration.d.ts.map +0 -1
  229. package/lib/src/modules/wallet-backup.d.ts +0 -12
  230. package/lib/src/modules/wallet-backup.d.ts.map +0 -1
  231. package/lib/src/modules/wallet.d.ts +0 -134
  232. package/lib/src/modules/wallet.d.ts.map +0 -1
  233. package/lib/src/services/blockchain/index.d.ts +0 -2
  234. package/lib/src/services/blockchain/index.d.ts.map +0 -1
  235. package/lib/src/services/example/configs.d.ts +0 -9
  236. package/lib/src/services/example/configs.d.ts.map +0 -1
  237. package/lib/src/services/example/service.d.ts +0 -8
  238. package/lib/src/services/example/service.d.ts.map +0 -1
  239. package/lib/src/services/keyring/configs.d.ts +0 -39
  240. package/lib/src/services/keyring/configs.d.ts.map +0 -1
  241. package/lib/src/services/keyring/index.d.ts +0 -2
  242. package/lib/src/services/keyring/index.d.ts.map +0 -1
  243. package/lib/src/services/polkadot/configs.d.ts +0 -8
  244. package/lib/src/services/polkadot/configs.d.ts.map +0 -1
  245. package/lib/src/services/polkadot/index.d.ts +0 -2
  246. package/lib/src/services/polkadot/index.d.ts.map +0 -1
  247. package/lib/src/services/polkadot/service.d.ts +0 -8
  248. package/lib/src/services/polkadot/service.d.ts.map +0 -1
  249. package/lib/src/services/substrate/api-utils.d.ts +0 -14
  250. package/lib/src/services/substrate/api-utils.d.ts.map +0 -1
  251. package/lib/src/services/substrate/configs.d.ts +0 -16
  252. package/lib/src/services/substrate/configs.d.ts.map +0 -1
  253. package/lib/src/services/substrate/index.d.ts +0 -2
  254. package/lib/src/services/substrate/index.d.ts.map +0 -1
  255. package/lib/src/services/substrate/service.d.ts +0 -13
  256. package/lib/src/services/substrate/service.d.ts.map +0 -1
  257. package/lib/src/services/trust-registry/configs.d.ts +0 -6
  258. package/lib/src/services/trust-registry/configs.d.ts.map +0 -1
  259. package/lib/src/services/trust-registry/service.d.ts +0 -25
  260. package/lib/src/services/trust-registry/service.d.ts.map +0 -1
  261. package/lib/src/services/wallet/index.d.ts +0 -2
  262. package/lib/src/services/wallet/index.d.ts.map +0 -1
  263. package/lib/test/axiosMocks.js +0 -431
  264. package/lib/test/axiosMocks.mjs +0 -420
  265. package/lib/test/setup-test-state.js +0 -93
  266. package/lib/test/setup-test-state.mjs +0 -85
  267. package/src/core/polkadot-utils.js +0 -99
  268. package/src/core/realm-schemas.js +0 -42
  269. package/src/core/subscan.js +0 -62
  270. package/src/core/subscan.test.js +0 -56
  271. package/src/fixtures.js +0 -43
  272. package/src/modules/account.test.js +0 -56
  273. package/src/modules/account.ts +0 -128
  274. package/src/modules/accounts.test.js +0 -88
  275. package/src/modules/accounts.ts +0 -264
  276. package/src/modules/data-migration.test.js +0 -72
  277. package/src/modules/data-migration.ts +0 -86
  278. package/src/modules/wallet-backup.test.js +0 -24
  279. package/src/modules/wallet-backup.ts +0 -68
  280. package/src/modules/wallet.test.js +0 -227
  281. package/src/modules/wallet.ts +0 -424
  282. package/src/services/example/configs.js +0 -14
  283. package/src/services/example/index.js +0 -3
  284. package/src/services/example/index.test.js +0 -28
  285. package/src/services/example/service-rpc.js +0 -11
  286. package/src/services/example/service.ts +0 -18
  287. package/src/services/keyring/configs.ts +0 -110
  288. package/src/services/keyring/index.android.js +0 -3
  289. package/src/services/keyring/index.ios.js +0 -3
  290. package/src/services/keyring/index.js +0 -1
  291. package/src/services/keyring/index.test.js +0 -48
  292. package/src/services/keyring/service-rpc.js +0 -56
  293. package/src/services/keyring/service.ts +0 -111
  294. package/src/services/polkadot/configs.ts +0 -13
  295. package/src/services/polkadot/index.android.js +0 -3
  296. package/src/services/polkadot/index.ios.js +0 -3
  297. package/src/services/polkadot/index.js +0 -1
  298. package/src/services/polkadot/index.test.js +0 -52
  299. package/src/services/polkadot/service-rpc.js +0 -13
  300. package/src/services/polkadot/service.ts +0 -21
  301. package/src/services/substrate/api-utils.test.js +0 -73
  302. package/src/services/substrate/api-utils.ts +0 -66
  303. package/src/services/substrate/configs.ts +0 -34
  304. package/src/services/substrate/index.android.js +0 -3
  305. package/src/services/substrate/index.ios.js +0 -3
  306. package/src/services/substrate/index.js +0 -1
  307. package/src/services/substrate/index.test.js +0 -116
  308. package/src/services/substrate/service-rpc.js +0 -24
  309. package/src/services/substrate/service.ts +0 -117
  310. package/src/services/trust-registry/configs.ts +0 -14
  311. package/src/services/trust-registry/index.android.js +0 -3
  312. package/src/services/trust-registry/index.ios.js +0 -3
  313. package/src/services/trust-registry/index.js +0 -1
  314. package/src/services/trust-registry/index.test.js +0 -67
  315. package/src/services/trust-registry/service-rpc.js +0 -15
  316. package/src/services/trust-registry/service.ts +0 -94
  317. package/src/test/axiosMocks.js +0 -20
  318. package/src/test/fixtures/subscan-failure.json +0 -5
  319. package/src/test/fixtures/subscan-success.json +0 -370
  320. package/src/test/fixtures/subscan-too-many-requests.json +0 -9
  321. package/src/test/setup-test-state.js +0 -37
  322. package/src/test/test-wallet.test.js +0 -15
@@ -1,42 +0,0 @@
1
- export const TokenPrice = {
2
- name: 'TokenPrice',
3
- properties: {
4
- symbol: 'string',
5
- name: 'string?',
6
- price: 'float',
7
- },
8
- primaryKey: 'symbol',
9
- };
10
-
11
- export const Account = {
12
- name: 'Account',
13
- properties: {
14
- id: 'string',
15
- name: 'string',
16
- balance: 'string?',
17
- },
18
- network: {
19
- type: 'string',
20
- default: 'testnet',
21
- },
22
- readyOnly: {
23
- type: 'bool',
24
- default: false,
25
- },
26
- primaryKey: 'id',
27
- };
28
-
29
- export const RequestLog = {
30
- name: 'RequestLog',
31
- properties: {
32
- id: 'string',
33
- url: 'string',
34
- status: 'int',
35
- method: 'string',
36
- headers: 'string',
37
- body: 'string',
38
- response: 'string',
39
- createdAt: 'date',
40
- },
41
- primaryKey: 'id',
42
- };
@@ -1,62 +0,0 @@
1
- import axios from 'axios';
2
- import axiosRetry from 'axios-retry';
3
- import assert from 'assert';
4
- import {Logger} from './logger';
5
- import {TaskQueue} from 'cwait';
6
-
7
- axiosRetry(axios, {
8
- retries: 4,
9
- retryDelay: retryCount => {
10
- return retryCount * 500;
11
- },
12
- retryCondition: error => {
13
- return error.response.status === 503 || error.response.status === 429;
14
- },
15
- });
16
-
17
- const SUBSCAN_URL = 'https://dock.api.subscan.io';
18
- export const SUBSCAN_TRANSFER_URL = `${SUBSCAN_URL}/api/v2/scan/transfers`;
19
-
20
- const queue = new TaskQueue(global.Promise, 1);
21
-
22
- function doFetchTransactions({address, page = 0, itemsPerPage = 50}) {
23
- assert(typeof address === 'string', 'address must be a string');
24
- assert(typeof page === 'number', 'page must be a number');
25
- assert(typeof itemsPerPage === 'number', 'itemsPerPage must be a number');
26
-
27
- const body = {
28
- row: itemsPerPage,
29
- page,
30
- address: address,
31
- };
32
-
33
- Logger.info(
34
- `Fetching transactions from subscan ${SUBSCAN_TRANSFER_URL} with body ${JSON.stringify(
35
- body,
36
- )}`,
37
- );
38
-
39
- return axios
40
- .post(SUBSCAN_TRANSFER_URL, body, {})
41
- .then(res => {
42
- const {data, message} = res.data;
43
-
44
- if (message === 'Success') {
45
- const {transfers, count} = data;
46
- return {
47
- items: transfers,
48
- count,
49
- page,
50
- hasNextPage: (page + 1) * itemsPerPage < count,
51
- };
52
- }
53
-
54
- throw new Error(message);
55
- })
56
- .catch(err => {
57
- console.error(err);
58
- throw err;
59
- });
60
- }
61
-
62
- export const fetchTransactions = queue.wrap(doFetchTransactions);
@@ -1,56 +0,0 @@
1
- import {fetchTransactions} from './subscan';
2
- import {mockSubscanParamsFailure, mockSubscanSuccess} from '../test/axiosMocks';
3
- import {getPromiseError} from '../services/test-utils';
4
-
5
- describe('Subscan integration', () => {
6
- describe('fetchTransactions', () => {
7
- it('expect to return transactions', async () => {
8
- mockSubscanSuccess();
9
-
10
- const transactions = await fetchTransactions({address: '123'});
11
-
12
- expect(transactions.items.length).toBe(12);
13
- expect(transactions.hasNextPage).toBe(true);
14
- });
15
-
16
- it('expect to return transactions (last page)', async () => {
17
- mockSubscanSuccess();
18
-
19
- const transactions = await fetchTransactions({address: '123', page: 2});
20
-
21
- expect(transactions.hasNextPage).toBe(false);
22
- });
23
-
24
- it('expect to handle api error', async () => {
25
- let error;
26
- mockSubscanParamsFailure();
27
-
28
- try {
29
- await fetchTransactions({address: '123', page: 2});
30
- } catch (err) {
31
- error = err;
32
- }
33
-
34
- expect(error.message).toBe('Params Error');
35
- });
36
-
37
- it('validate adddress param', async () => {
38
- const error = await getPromiseError(() => fetchTransactions({}));
39
- expect(error.message).toBe('address must be a string');
40
- });
41
-
42
- it('validate page param', async () => {
43
- const error = await getPromiseError(() =>
44
- fetchTransactions({address: '123', page: 'test'}),
45
- );
46
- await expect(error.message).toBe('page must be a number');
47
- });
48
-
49
- it('validate itemsPerPage param', async () => {
50
- const error = await getPromiseError(() =>
51
- fetchTransactions({address: '123', itemsPerPage: 'test'}),
52
- );
53
- await expect(error.message).toBe('itemsPerPage must be a number');
54
- });
55
- });
56
- });
package/src/fixtures.js DELETED
@@ -1,43 +0,0 @@
1
- import {getKeyring} from './services/keyring/service';
2
-
3
- export const TestFixtures = {
4
- account1: {
5
- name: 'Account 1',
6
- mnemonic:
7
- 'twenty fat wood hub lock cattle thought base lazy apology lyrics innocent',
8
- address: '393NFT43eUgKnEthAaKXnuCzizuxExMYULWrsjep5c1TmV4X',
9
- balance: 100,
10
- getKeyring: () =>
11
- getKeyring().addFromMnemonic(
12
- TestFixtures.account1.mnemonic,
13
- null,
14
- 'sr25519',
15
- ),
16
- },
17
- account2: {
18
- name: 'Account 2',
19
- mnemonic:
20
- 'multiply obtain exact matrix write chimney observe blind siege mobile spoon club',
21
- address: '38Pg2Kiod34RiWMEKNZHR6oLUahatQxaeMSfVXAGU3MbX83g',
22
- balance: 200,
23
- getKeyring: () =>
24
- getKeyring().addFromMnemonic(
25
- TestFixtures.account2.mnemonic,
26
- null,
27
- 'sr25519',
28
- ),
29
- },
30
- noBalanceAccount: {
31
- name: 'Account No Balance',
32
- mnemonic:
33
- 'raise genuine melt wagon make sense paddle sea human skirt lucky humor',
34
- address: '3AxrRtwmcmezJLv9Nj6uD6MHJY5HN4buFX1r8vyGVpJmeZmE',
35
- balance: 0,
36
- getKeyring: () =>
37
- getKeyring().addFromMnemonic(
38
- TestFixtures.noBalanceAccount.mnemonic,
39
- null,
40
- 'sr25519',
41
- ),
42
- },
43
- };
@@ -1,56 +0,0 @@
1
- import {Account} from './account';
2
- import {Wallet} from './wallet';
3
- import {NetworkManager} from './network-manager';
4
- import {TestFixtures} from '../fixtures';
5
- import {getTestWallet} from '../test/setup-test-state';
6
-
7
- describe('Account', () => {
8
- let wallet: Wallet;
9
- let account: Account;
10
-
11
- beforeAll(async () => {
12
- NetworkManager.getInstance().setNetworkId('testnet');
13
- wallet = await getTestWallet();
14
- await wallet.ensureNetwork();
15
- account = await wallet.accounts.getByAddress(TestFixtures.account1.address);
16
- await account.loadDetails();
17
- });
18
-
19
- it('expect to get account name', () => {
20
- expect(account.getName()).toBe(TestFixtures.account1.name);
21
- });
22
-
23
- it('expect to get address', () => {
24
- expect(account.getAddress()).toBe(TestFixtures.account1.address);
25
- });
26
-
27
- it('expect to get mnemonic phrase', async () => {
28
- const phrase = await account.getMnemonic();
29
- expect(phrase).toBe(TestFixtures.account1.mnemonic);
30
- });
31
-
32
- it('expect to get keyring pair', async () => {
33
- const pair = await account.getKeyPair();
34
- expect(pair.address).toBe(TestFixtures.account1.address);
35
- });
36
-
37
- it('expect to export account', () => {
38
- const password = '123';
39
- jest.spyOn(account.accounts, 'exportAccount');
40
- account.export(password);
41
- expect(account.accounts.exportAccount).toBeCalledWith(
42
- account.address,
43
- password,
44
- );
45
- });
46
-
47
- it('expect to remove account', () => {
48
- jest.spyOn(account.accounts, 'remove');
49
- account.remove();
50
- expect(account.accounts.remove).toBeCalledWith(account.address);
51
- });
52
-
53
- afterAll(() => {
54
- return wallet.close();
55
- });
56
- });
@@ -1,128 +0,0 @@
1
- // @ts-nocheck
2
- import assert from 'assert';
3
- import {isAddressValid} from '../core/validation';
4
- import {Accounts} from './accounts';
5
- import { KeypairType } from '../types';
6
-
7
- export type AccountDetails = {
8
- id: string,
9
- name: string,
10
- type: KeypairType,
11
- address: string,
12
- correlations: any[],
13
- balance?: number,
14
- readonly?: boolean,
15
- meta?: {
16
- keypairNotFoundWarning: boolean,
17
- name: string,
18
- keypairType: KeypairType,
19
- derivationPath: string,
20
- }
21
- };
22
-
23
- /**
24
- * Account
25
- */
26
- export class Account {
27
- details: AccountDetails;
28
- address: string;
29
- name: string;
30
- accounts: Accounts;
31
-
32
- constructor(address: string, accounts: Accounts) {
33
- this.accounts = accounts;
34
- this.address = address;
35
- this.id = address;
36
- }
37
-
38
- /**
39
- * Get account for a given address
40
- * The account needs to exist in the wallet
41
- *
42
- * @example
43
- * const accounts = Account.with('some-address')
44
- * @param {string} address
45
- * @returns
46
- */
47
- static with(address, accounts) {
48
- assert(isAddressValid(address), 'invalid address');
49
-
50
- const account = new Account(address, accounts || Accounts.getInstance());
51
-
52
- account.loadPromise = account.loadDetails();
53
-
54
- return account;
55
- }
56
-
57
- /**
58
- *
59
- * @param {string} address
60
- * @returns
61
- */
62
- static async withAsync(address, accounts) {
63
- const account = Account.with(address, accounts);
64
-
65
- await account.loadPromise;
66
-
67
- return account;
68
- }
69
-
70
- /**
71
- * @returns {Promise<void>}
72
- */
73
- async loadDetails() {
74
- this.details = await this.accounts.wallet.getDocumentById(this.id);
75
- this.name = this.details && this.details.name;
76
- }
77
-
78
- getAddress() {
79
- return this.details.address;
80
- }
81
-
82
- getDetails(): AccountDetails {
83
- return this.details;
84
- }
85
-
86
- async getBalance(skipFetch?) {
87
- return this.accounts.getBalance(this.details.address, skipFetch);
88
- }
89
-
90
- export(password: string) {
91
- return this.accounts.exportAccount(this.address, password);
92
- }
93
-
94
- remove() {
95
- return this.accounts.remove(this.address);
96
- }
97
-
98
- update({name}) {
99
- return this.accounts.update({
100
- ...this.details,
101
- name,
102
- });
103
- }
104
-
105
- async getMnemonic() {
106
- const doc = await this.accounts.findCorrelationByType(
107
- this.address,
108
- 'Mnemonic',
109
- );
110
- return doc.value;
111
- }
112
-
113
- async getKeyPair() {
114
- const doc = await this.accounts.findCorrelationByType(
115
- this.address,
116
- 'KeyringPair',
117
- );
118
- return doc.value;
119
- }
120
-
121
- getName(): string {
122
- return this.details.name;
123
- }
124
-
125
- getIcon(isAlternative?: boolean): Promise<any> {
126
- return this.accounts.getAccountIcon(this.details.address, isAlternative);
127
- }
128
- }
@@ -1,88 +0,0 @@
1
- import {substrateService} from '../services/substrate';
2
- import {Accounts} from './accounts';
3
- import {Wallet} from './wallet';
4
- import {getTestWallet} from '../test/setup-test-state';
5
-
6
- describe('Accounts module', () => {
7
- let wallet: Wallet;
8
- let accounts: Accounts;
9
-
10
- beforeAll(async () => {
11
- wallet = await getTestWallet();
12
- await wallet.ensureNetwork();
13
-
14
- accounts = wallet.accounts;
15
- });
16
-
17
- it('Expect to create account', async () => {
18
- const name = 'Test account';
19
- const account = await accounts.create({
20
- name,
21
- });
22
- const foundDocument = accounts
23
- .getAccounts()
24
- .find(item => item.id === account.address);
25
-
26
- expect(account.name).toBe(name);
27
- expect(account.address).toBeDefined();
28
- expect(foundDocument.id).toBe(account.address);
29
- });
30
-
31
- it('Expect to create accounts with existing mnemonic', async () => {
32
- const name = 'test';
33
- const mnemonic =
34
- 'young defense crouch puzzle mosquito wire front town trophy assist salt entire';
35
- const address = '3APujz7DViXXKyh7oKQRR2771aLxMHhh9ZwVadXQZnHSH2kF';
36
-
37
- const account = await accounts.create({
38
- name: name,
39
- mnemonic: mnemonic,
40
- });
41
-
42
- expect(account.getName()).toBe(name);
43
- expect(account.address).toBe(address);
44
- });
45
-
46
- it('expect to fetch account balance and update currency document', async () => {
47
- const account = await accounts.create({
48
- name: 'test',
49
- });
50
- const balance = 10;
51
- jest.spyOn(substrateService, 'getAccountBalance').mockReturnValue(balance);
52
-
53
- let result = await accounts.fetchBalance(account.address);
54
-
55
- expect(substrateService.getAccountBalance).toBeCalled();
56
- expect(result).toBe(balance);
57
-
58
- const currency = await accounts.findCorrelationByType(
59
- account.address,
60
- 'Currency',
61
- );
62
-
63
- expect(currency.value).toBe(balance);
64
-
65
- result = await accounts.getBalance(account.address);
66
-
67
- expect(result).toBe(balance);
68
- });
69
-
70
- it('Expect to export account and import account', async () => {
71
- const account = await accounts.create({
72
- name: 'test',
73
- });
74
- const json = await accounts.exportAccount(account.address, 'test');
75
-
76
- expect(json.address).toBe(account.address);
77
-
78
- await accounts.remove(account.address);
79
-
80
- const account2 = await accounts.create({
81
- name: 'json account',
82
- json,
83
- password: 'test',
84
- });
85
-
86
- expect(account2.address).toBe(account.address);
87
- });
88
- });