@cityofzion/bs-neo-legacy 0.1.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 (61) hide show
  1. package/.rush/temp/shrinkwrap-deps.json +103 -0
  2. package/bs-neo-legacy.build.error.log +4 -0
  3. package/bs-neo-legacy.build.log +6 -0
  4. package/dist/BDSNeoLegacy.d.ts +15 -0
  5. package/dist/BDSNeoLegacy.js +199 -0
  6. package/dist/BSNeoLegacy.d.ts +49 -0
  7. package/dist/BSNeoLegacy.js +217 -0
  8. package/dist/asset/tokens.json +480 -0
  9. package/dist/constants.d.ts +10 -0
  10. package/dist/constants.js +20 -0
  11. package/dist/explorer/dora/DoraResponsesNeoLegacy.d.ts +95 -0
  12. package/dist/explorer/dora/DoraResponsesNeoLegacy.js +2 -0
  13. package/dist/explorer/dora/DoraRoutesNeoLegacy.d.ts +7 -0
  14. package/dist/explorer/dora/DoraRoutesNeoLegacy.js +10 -0
  15. package/dist/explorer/index.d.ts +6 -0
  16. package/dist/explorer/index.js +23 -0
  17. package/dist/index.d.ts +3 -0
  18. package/dist/index.js +19 -0
  19. package/docs/.nojekyll +1 -0
  20. package/docs/assets/highlight.css +22 -0
  21. package/docs/assets/main.js +58 -0
  22. package/docs/assets/search.js +1 -0
  23. package/docs/assets/style.css +1280 -0
  24. package/docs/classes/BDSNeoLegacy.html +243 -0
  25. package/docs/classes/BSNeoLegacy.html +435 -0
  26. package/docs/index.html +70 -0
  27. package/docs/interfaces/DoraNeoLegacyAsset.html +103 -0
  28. package/docs/interfaces/DoraNeoLegacyAssetResponse.html +117 -0
  29. package/docs/interfaces/DoraNeoLegacyBalance.html +89 -0
  30. package/docs/interfaces/DoraNeoLegacyConsensusNode.html +75 -0
  31. package/docs/interfaces/DoraNeoLegacyDetails.html +138 -0
  32. package/docs/interfaces/DoraNeoLegacyEntriesEntity.html +110 -0
  33. package/docs/interfaces/DoraNeoLegacyNameEntity.html +75 -0
  34. package/docs/interfaces/DoraNeoLegacyScriptsEntity.html +75 -0
  35. package/docs/interfaces/DoraNeoLegacyTransaction.html +152 -0
  36. package/docs/interfaces/DoraNeoLegacyTransactionsHistory.html +96 -0
  37. package/docs/interfaces/DoraNeoLegacyUnclaimed.html +82 -0
  38. package/docs/interfaces/DoraNeoLegacyVinEntity.html +75 -0
  39. package/docs/interfaces/DoraNeoLegacyVoutEntity.html +89 -0
  40. package/docs/modules.html +98 -0
  41. package/docs/variables/DORA_NEO_LEGACY_ASSET.html +69 -0
  42. package/docs/variables/DORA_NEO_LEGACY_BALANCE.html +69 -0
  43. package/docs/variables/DORA_NEO_LEGACY_CONTRACT.html +69 -0
  44. package/docs/variables/DORA_NEO_LEGACY_HISTORY_TRANSACTIONS.html +69 -0
  45. package/docs/variables/DORA_NEO_LEGACY_NODES.html +69 -0
  46. package/docs/variables/DORA_NEO_LEGACY_TRANSACTION.html +69 -0
  47. package/docs/variables/DORA_NEO_LEGACY_UNCLAIMED.html +69 -0
  48. package/docs/variables/explorerNeoLegacyOption.html +74 -0
  49. package/neo-neo-logo.png +0 -0
  50. package/package.json +28 -0
  51. package/src/BDSNeoLegacy.ts +164 -0
  52. package/src/BSNeoLegacy.ts +162 -0
  53. package/src/asset/tokens.json +481 -0
  54. package/src/blockchain_icon_neo_legacy.png +0 -0
  55. package/src/blockchain_icon_neo_legacy_white.png +0 -0
  56. package/src/constants.ts +18 -0
  57. package/src/explorer/dora/DoraResponsesNeoLegacy.ts +107 -0
  58. package/src/explorer/dora/DoraRoutesNeoLegacy.ts +7 -0
  59. package/src/explorer/index.ts +8 -0
  60. package/src/index.ts +3 -0
  61. package/tsconfig.json +13 -0
@@ -0,0 +1,103 @@
1
+ {
2
+ "../../packages/bs-neo-legacy": "../../packages/bs-neo-legacy:h3RAijXNoABRoRlJrjIvcArqL7aGeu04D2KCweDOmug=:",
3
+ "/@cityofzion/blockchain-service/0.1.1": "sha512-2b0zWzyhi8/7aeIsL1m/MaiFyUN/IVkZaFKtGH1OFD7vi45+GUXgyzKTFSGM7q0nP12kU7xNP7iKsghjc1oPJg==",
4
+ "/@cityofzion/dora-ts/0.0.11": "sha512-LJWGU29BHPTHkt0i/OwhNdMfUGM/rgAa4rqlDwBy95spxSoUHGSoAtOD5k4aSVKmLFwq77ghNna0Lpc7lEuHBA==",
5
+ "/@cityofzion/neon-api/4.9.0_@cityofzion+neon-core@4.9.0": "sha512-8eN3N3sGgd4L7qFaFATKr94kA/65626eo6hB7fHL+S8OGCVCrrl3tfh8GAOv50vLxd2YyoDu9pBY/0NPKY8tsQ==",
6
+ "/@cityofzion/neon-core/4.9.0": "sha512-z4UgEIjAS9E2QP6HSTzri02DFY++nYmfzbspi1818mvnTst6Lf8bDNYYxG/686wdYN2dEF3RuccMXraw2Bm31g==",
7
+ "/@cityofzion/neon-js/4.9.0": "sha512-YYeMbQGZJkC8Wq2UQt98OUys8f8tPCaXMplbV8GwiJEdG+PJJOFGg3NkvrDGUfcuasff0dcn8LWjXTPKPp+Gyw==",
8
+ "/@cityofzion/neon-nep5/4.9.0": "sha512-MSRXHl+UGYnh8f9FC7zZvMNRblnl496VxG3tjA+GIShtLR6u75/FK7syVXua9h8/khljL7qqSfnNqA+sy7q+eg==",
9
+ "/@cspotcode/source-map-support/0.8.1": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
10
+ "/@jridgewell/resolve-uri/3.1.0": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==",
11
+ "/@jridgewell/sourcemap-codec/1.4.14": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==",
12
+ "/@jridgewell/trace-mapping/0.3.9": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
13
+ "/@tsconfig/node10/1.0.9": "sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==",
14
+ "/@tsconfig/node12/1.0.11": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==",
15
+ "/@tsconfig/node14/1.0.3": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==",
16
+ "/@tsconfig/node16/1.0.3": "sha512-yOlFc+7UtL/89t2ZhjPvvB/DeAr3r+Dq58IgzsFkOAvVC6NMJXmCGjbptdXdR9qsX7pKcTL+s87FtYREi2dEEQ==",
17
+ "/@types/bn.js/5.1.0": "sha512-QSSVYj7pYFN49kW77o2s9xTCwZ8F2xLbjLLSEVh8D2F4JUhZtPAGOFLTD+ffqksBx/u4cE/KImFjyhqCjn/LIA==",
18
+ "/@types/bs58/4.0.1": "sha512-yfAgiWgVLjFCmRv8zAcOIHywYATEwiTVccTLnRp6UxTNavT55M9d/uhK3T03St/+8/z/wW+CRjGKUNmEqoHHCA==",
19
+ "/@types/crypto-js/4.0.1": "sha512-6+OPzqhKX/cx5xh+yO8Cqg3u3alrkhoxhE5ZOdSEv0DOzJ13lwJ6laqGU0Kv6+XDMFmlnGId04LtY22PsFLQUw==",
20
+ "/@types/elliptic/6.4.12": "sha512-gP1KsqoouLJGH6IJa28x7PXb3cRqh83X8HCLezd2dF+XcAIMKYv53KV+9Zn6QA561E120uOqZBQ+Jy/cl+fviw==",
21
+ "/@types/lodash/4.14.191": "sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==",
22
+ "/@types/loglevel/1.6.3": "sha512-v2YWQQgqtNXAzybOT9qV3CIJqSeoaMUwmBfIMTQdvhsWUybYic/zNGccKH494naWKJ7zUm+VTgFepJfTrbCCJQ==",
23
+ "/@types/node/11.11.6": "sha512-Exw4yUWMBXM3X+8oqzJNRqZSwUAaS4+7NdvHqQuFi/d+synz++xmX3QIf+BFqneW8N31R8Ky+sikfZUXq07ggQ==",
24
+ "/@types/node/15.0.3": "sha512-/WbxFeBU+0F79z9RdEOXH4CsDga+ibi5M8uEYr91u3CkT/pdWcV8MCook+4wDPnZBexRdwWS+PiVZ2xJviAzcQ==",
25
+ "/@types/node/18.13.0": "sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg==",
26
+ "/acorn-walk/8.2.0": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==",
27
+ "/acorn/8.8.2": "sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==",
28
+ "/arg/4.1.3": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==",
29
+ "/asynckit/0.4.0": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
30
+ "/axios/0.19.2": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==",
31
+ "/axios/0.21.1": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==",
32
+ "/axios/1.3.2": "sha512-1M3O703bYqYuPhbHeya5bnhpYVsDDRyQSabNja04mZtboLNSuZ4YrltestrLXfHgmzua4TpUqRiVKbiQuo2epw==",
33
+ "/balanced-match/1.0.2": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
34
+ "/base-x/3.0.9": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==",
35
+ "/bignumber.js/7.2.1": "sha512-S4XzBk5sMB+Rcb/LNcpzXr57VRTxgAvaAEDAl1AwRx27j00hT84O6OkteE7u8UB3NuaaygCRrEpqox4uDOrbdQ==",
36
+ "/bip39/3.0.4": "sha512-YZKQlb752TrUWqHWj7XAwCSjYEgGAk+/Aas3V7NyjQeZYsztO8JnQUaCWhcnL4T+jL8nvB8typ2jRPzTlgugNw==",
37
+ "/bn.js/4.12.0": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
38
+ "/bn.js/5.2.0": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==",
39
+ "/brace-expansion/2.0.1": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
40
+ "/brorand/1.1.0": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==",
41
+ "/bs58/4.0.1": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==",
42
+ "/bs58check/2.1.2": "sha512-0TS1jicxdU09dwJMNZtVAfzPi6Q6QeN0pM1Fkzrjn+XYHvzMKPU3pHVpva+769iNVSfIYWf7LJ6WR+BuuMf8cA==",
43
+ "/build-url/2.0.0": "sha512-LYvvOlDc9jT07wFXTQTKoQLYaXIJriVl/DgatTsSzY963+ip1O7M6G/jWBrlKKJ1L7HGD3oK+WykmOvbcSYXlQ==",
44
+ "/cipher-base/1.0.4": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
45
+ "/combined-stream/1.0.8": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
46
+ "/create-hash/1.2.0": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
47
+ "/create-hmac/1.1.7": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
48
+ "/create-require/1.1.1": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==",
49
+ "/crypto-js/4.0.0": "sha512-bzHZN8Pn+gS7DQA6n+iUmBfl0hO5DJq++QP3U6uTucDtk/0iGpXd/Gg7CGR0p8tJhofJyaKoWBuJI4eAO00BBg==",
50
+ "/crypto/1.0.1": "sha512-VxBKmeNcqQdiUQUW2Tzq0t377b54N2bMtXO/qiLa+6eRRmmC4qT3D4OnTGoT/U6O9aklQ/jTwbOtRMTTY8G0Ig==",
51
+ "/debug/3.1.0": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
52
+ "/delayed-stream/1.0.0": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
53
+ "/diff/4.0.2": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
54
+ "/elliptic/6.5.4": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==",
55
+ "/follow-redirects/1.15.2": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==",
56
+ "/follow-redirects/1.5.10": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==",
57
+ "/form-data/4.0.0": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
58
+ "/hash-base/3.1.0": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==",
59
+ "/hash.js/1.1.7": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
60
+ "/hmac-drbg/1.0.1": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==",
61
+ "/inherits/2.0.4": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
62
+ "/isomorphic-ws/4.0.1_ws@7.4.5": "sha512-BhBvN2MBpWTaSHdWRb/bwdZJ1WaehQ2L1KngkCkfLUGF0mAWAT1sQUQacEmQ0jXkFw/czDXPNQSL5u2/Krsz1w==",
63
+ "/json-rpc-error/2.0.0": "sha512-EwUeWP+KgAZ/xqFpaP6YDAXMtCJi+o/QQpCQFIYyxr01AdADi2y413eM8hSqJcoQym9WMePAJWoaODEJufC4Ug==",
64
+ "/jsonc-parser/3.2.0": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==",
65
+ "/lodash/4.17.21": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
66
+ "/loglevel-plugin-prefix/0.8.4": "sha512-WpG9CcFAOjz/FtNht+QJeGpvVl/cdR6P0z6OcXSkr8wFJOsV2GRj2j10JLfjuA4aYkcKCNIEqRGCyTife9R8/g==",
67
+ "/loglevel/1.7.1": "sha512-Hesni4s5UkWkwCGJMQGAh71PaLUmKFM60dHvq0zi/vDhhrzuk+4GgNbTXJ12YYQJn6ZKBDNIjYcuQGKudvqrIw==",
68
+ "/loglevel/1.8.1": "sha512-tCRIJM51SHjAayKwC+QAg8hT8vg6z7GSgLJKGvzuPb1Wc+hLzqtuVLxp6/HzSPOozuK+8ErAhy7U/sVzw8Dgfg==",
69
+ "/lunr/2.3.9": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow==",
70
+ "/make-error/1.3.6": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==",
71
+ "/marked/4.2.12": "sha512-yr8hSKa3Fv4D3jdZmtMMPghgVt6TWbk86WQaWhDloQjRSQhMMYCAro7jP7VDJrjjdV8pxVxMssXS8B8Y5DZ5aw==",
72
+ "/md5.js/1.3.5": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
73
+ "/mime-db/1.52.0": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
74
+ "/mime-types/2.1.35": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
75
+ "/minimalistic-assert/1.0.1": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
76
+ "/minimalistic-crypto-utils/1.0.1": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==",
77
+ "/minimatch/5.1.6": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
78
+ "/moment/2.29.4": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==",
79
+ "/ms/2.0.0": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
80
+ "/node-log-it/2.0.0": "sha512-+hWjAW6ZW+P70cSmq7lwka884pQvitN+nKqgEwNPyZgqNybr563Z/yM/6KXONlkGZ+Pjwin0v8/FBe12Rbthfg==",
81
+ "/pbkdf2/3.1.2": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==",
82
+ "/proxy-from-env/1.1.0": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
83
+ "/randombytes/2.1.0": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
84
+ "/readable-stream/3.6.0": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
85
+ "/ripemd160/2.0.2": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
86
+ "/safe-buffer/5.2.1": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
87
+ "/scrypt-js/3.0.1": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==",
88
+ "/secure-random/1.1.2": "sha512-H2bdSKERKdBV1SwoqYm6C0y+9EA94v6SUBOWO8kDndc4NoUih7Dv6Tsgma7zO1lv27wIvjlD0ZpMQk7um5dheQ==",
89
+ "/sha.js/2.4.11": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
90
+ "/shiki/0.12.1": "sha512-aieaV1m349rZINEBkjxh2QbBvFFQOlgqYTNtCal82hHj4dDZ76oMlQIX+C7ryerBTDiga3e5NfH6smjdJ02BbQ==",
91
+ "/string_decoder/1.3.0": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
92
+ "/ts-node/10.9.1_typescript@4.9.5": "sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==",
93
+ "/typedoc/0.23.24_typescript@4.9.5": "sha512-bfmy8lNQh+WrPYcJbtjQ6JEEsVl/ce1ZIXyXhyW+a1vFrjO39t6J8sL/d6FfAGrJTc7McCXgk9AanYBSNvLdIA==",
94
+ "/typescript/4.9.5": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==",
95
+ "/util-deprecate/1.0.2": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
96
+ "/v8-compile-cache-lib/3.0.1": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==",
97
+ "/vscode-oniguruma/1.7.0": "sha512-L9WMGRfrjOhgHSdOYgCt/yRMsXzLDJSL7BPrOZt73gU0iWO4mpqzqQzOz5srxqTvMBaR0XZTSrVWo4j55Rc6cA==",
98
+ "/vscode-textmate/8.0.0": "sha512-AFbieoL7a5LMqcnOF04ji+rpXadgOXnZsxQr//r83kLPr7biP7am3g9zbaZIaBGwBRWeSvoMD4mgPdX3e4NWBg==",
99
+ "/wif/2.0.6": "sha512-HIanZn1zmduSF+BQhkE+YXIbEiH0xPr1012QbFEGB0xsKqJii0/SqJjyn8dFv6y36kOznMgMB+LGcbZTJ1xACQ==",
100
+ "/ws/7.4.5": "sha512-xzyu3hFvomRfXKH8vOFMU3OguG6oOvhXMo3xsGy3xWExqaM2dxBbVxuD99O7m3ZUFMvvscsZDqxfgMaRr/Nr1g==",
101
+ "/yn/3.1.1": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==",
102
+ "github.com/Moonlight-io/asteroid-sdk-js/7f067dc2f6be0bf77cabc10771c204035770be52": "github.com/Moonlight-io/asteroid-sdk-js/7f067dc2f6be0bf77cabc10771c204035770be52:mDnTjFFTGh2EHEpFaZmzCZqYy+KACa+0kd0cK+WGigs=:"
103
+ }
@@ -0,0 +1,4 @@
1
+ ./src/BSNeoLegacy.ts:87:8 - warning TransactionIntentResponse is referenced by BSNeoLegacy.setTypeIntents.setTypeIntents but not included in the documentation.
2
+
3
+ 87 type TransactionIntentResponse = IntentTransactionParam & { type: 'native' | 'nep5' }
4
+
@@ -0,0 +1,6 @@
1
+ Invoking: tsc && typedoc src/index.ts
2
+ ./src/BSNeoLegacy.ts:87:8 - warning TransactionIntentResponse is referenced by BSNeoLegacy.setTypeIntents.setTypeIntents but not included in the documentation.
3
+
4
+ 87 type TransactionIntentResponse = IntentTransactionParam & { type: 'native' | 'nep5' }
5
+
6
+ Documentation generated at ./docs
@@ -0,0 +1,15 @@
1
+ import { BalanceResponse, BlockchainNetwork, BlockchainDataService, ConsensusNodeResponse, ContractResponse, TokenInfoResponse, TransactionHistoryResponse, TransactionResponse, BDSClaimable, UnclaimedResponse } from '@cityofzion/blockchain-service';
2
+ export declare class BDSNeoLegacy implements BlockchainDataService, BDSClaimable {
3
+ explorer: string;
4
+ network: BlockchainNetwork;
5
+ private request;
6
+ setNetwork(network: BlockchainNetwork): void;
7
+ getTransaction(txid: string): Promise<TransactionResponse>;
8
+ getHistoryTransactions(address: string, page?: number): Promise<TransactionHistoryResponse>;
9
+ getContract(contractHash: string): Promise<ContractResponse>;
10
+ getTokenInfo(tokenHash: string): Promise<TokenInfoResponse>;
11
+ getBalance(address: string): Promise<BalanceResponse[]>;
12
+ getAllNodes(): Promise<ConsensusNodeResponse[]>;
13
+ getHigherNode(): Promise<ConsensusNodeResponse>;
14
+ getUnclaimed(address: string): Promise<UnclaimedResponse>;
15
+ }
@@ -0,0 +1,199 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.BDSNeoLegacy = void 0;
16
+ const axios_1 = __importDefault(require("axios"));
17
+ const DoraRoutesNeoLegacy_1 = require("./explorer/dora/DoraRoutesNeoLegacy");
18
+ const dora_ts_1 = require("@cityofzion/dora-ts");
19
+ class BDSNeoLegacy {
20
+ constructor() {
21
+ this.explorer = 'https://dora.coz.io/';
22
+ this.network = 'mainnet';
23
+ this.request = axios_1.default.create({ baseURL: `https://dora.coz.io/api/v1/neo2/${this.network}` });
24
+ }
25
+ setNetwork(network) {
26
+ this.network = network;
27
+ }
28
+ getTransaction(txid) {
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ try {
31
+ const { data } = yield this.request.get(`/${DoraRoutesNeoLegacy_1.DORA_NEO_LEGACY_TRANSACTION}/${txid}`);
32
+ const result = {
33
+ block: data.block,
34
+ netfee: data.net_fee,
35
+ sysfee: data.sys_fee,
36
+ time: data.time,
37
+ txid: data.txid,
38
+ totfee: (Number(data.sys_fee) + Number(data.net_fee)).toString(),
39
+ notifications: [],
40
+ transfers: data.vout.map((transfer) => {
41
+ var _a;
42
+ return {
43
+ amount: transfer.value,
44
+ from: (_a = data.vout[data.vout.length - 1]) === null || _a === void 0 ? void 0 : _a.address,
45
+ hash: transfer.asset,
46
+ to: transfer.address
47
+ };
48
+ })
49
+ };
50
+ return result;
51
+ }
52
+ catch (error) {
53
+ throw error;
54
+ }
55
+ });
56
+ }
57
+ getHistoryTransactions(address, page = 1) {
58
+ return __awaiter(this, void 0, void 0, function* () {
59
+ try {
60
+ const data = yield dora_ts_1.api.NeoLegacyREST.getAddressAbstracts(address, page, this.network);
61
+ const entriesGroupByTxid = {};
62
+ const transactionsGroupByTxid = [];
63
+ data.entries.forEach((entry) => {
64
+ entriesGroupByTxid[entry.txid] = data.entries.filter(it => it.txid === entry.txid);
65
+ const haveTransaction = transactionsGroupByTxid.find(it => it.txid === entry.txid);
66
+ if (!haveTransaction) {
67
+ transactionsGroupByTxid.push({
68
+ block: entry.block_height,
69
+ netfee: '0',
70
+ sysfee: '0',
71
+ totfee: '0',
72
+ txid: entry.txid,
73
+ notifications: [],
74
+ time: entry.time.toString(),
75
+ transfers: entriesGroupByTxid[entry.txid].map((entryGrouped) => {
76
+ return {
77
+ amount: entryGrouped.amount.toString(),
78
+ from: entryGrouped.address_from,
79
+ to: entryGrouped.address_to,
80
+ hash: entryGrouped.asset
81
+ };
82
+ })
83
+ });
84
+ }
85
+ else {
86
+ haveTransaction.transfers = entriesGroupByTxid[entry.txid].map((entryGrouped) => {
87
+ return {
88
+ amount: entryGrouped.amount.toString(),
89
+ from: entryGrouped.address_from,
90
+ to: entryGrouped.address_to,
91
+ hash: entryGrouped.asset
92
+ };
93
+ });
94
+ transactionsGroupByTxid[transactionsGroupByTxid.indexOf(haveTransaction)] = haveTransaction;
95
+ }
96
+ });
97
+ const result = {
98
+ totalCount: data.total_entries,
99
+ transactions: transactionsGroupByTxid
100
+ };
101
+ return result;
102
+ }
103
+ catch (error) {
104
+ throw error;
105
+ }
106
+ });
107
+ }
108
+ getContract(contractHash) {
109
+ return __awaiter(this, void 0, void 0, function* () {
110
+ try {
111
+ const response = yield dora_ts_1.api.NeoLegacyREST.contract(contractHash, this.network);
112
+ const result = {
113
+ hash: response.hash,
114
+ name: response.name,
115
+ methods: []
116
+ };
117
+ return result;
118
+ }
119
+ catch (error) {
120
+ throw error;
121
+ }
122
+ });
123
+ }
124
+ getTokenInfo(tokenHash) {
125
+ return __awaiter(this, void 0, void 0, function* () {
126
+ try {
127
+ const data = yield dora_ts_1.api.NeoLegacyREST.asset(tokenHash);
128
+ const result = {
129
+ decimals: data.decimals,
130
+ symbol: data.symbol
131
+ };
132
+ return result;
133
+ }
134
+ catch (error) {
135
+ throw error;
136
+ }
137
+ });
138
+ }
139
+ getBalance(address) {
140
+ return __awaiter(this, void 0, void 0, function* () {
141
+ try {
142
+ const data = yield dora_ts_1.api.NeoLegacyREST.balance(address, this.network);
143
+ const result = data.map(balance => {
144
+ return {
145
+ hash: balance.asset,
146
+ amount: Number(balance.balance),
147
+ name: balance.asset_name,
148
+ symbol: balance.symbol
149
+ };
150
+ });
151
+ return result;
152
+ }
153
+ catch (error) {
154
+ throw error;
155
+ }
156
+ });
157
+ }
158
+ getAllNodes() {
159
+ return __awaiter(this, void 0, void 0, function* () {
160
+ try {
161
+ const data = yield dora_ts_1.api.NeoLegacyREST.getAllNodes();
162
+ const result = data;
163
+ return result;
164
+ }
165
+ catch (error) {
166
+ throw error;
167
+ }
168
+ });
169
+ }
170
+ getHigherNode() {
171
+ return __awaiter(this, void 0, void 0, function* () {
172
+ const nodes = yield this.getAllNodes();
173
+ const node = nodes.reduce((bestNode, node) => {
174
+ if (bestNode.height >= node.height) {
175
+ return bestNode;
176
+ }
177
+ return node;
178
+ });
179
+ return node;
180
+ });
181
+ }
182
+ //Implementation of BDSClaimable
183
+ getUnclaimed(address) {
184
+ return __awaiter(this, void 0, void 0, function* () {
185
+ try {
186
+ const data = yield dora_ts_1.api.NeoLegacyREST.getUnclaimed(address);
187
+ const result = {
188
+ address,
189
+ unclaimed: data.unclaimed,
190
+ };
191
+ return result;
192
+ }
193
+ catch (error) {
194
+ throw error;
195
+ }
196
+ });
197
+ }
198
+ }
199
+ exports.BDSNeoLegacy = BDSNeoLegacy;
@@ -0,0 +1,49 @@
1
+ import { Account, BDSClaimable, BlockchainDataService, BlockchainService, CalculateTransferFeeDetails, Claimable, Exchange, SendTransactionParam, Token } from '@cityofzion/blockchain-service';
2
+ export declare class BSNeoLegacy<BSCustomName extends string = string> implements BlockchainService, Claimable {
3
+ dataService: BlockchainDataService & BDSClaimable;
4
+ blockchainName: BSCustomName;
5
+ derivationPath: string;
6
+ feeToken: {
7
+ hash: string;
8
+ symbol: string;
9
+ decimals: number;
10
+ };
11
+ exchange: Exchange;
12
+ tokenClaim: {
13
+ hash: string;
14
+ symbol: string;
15
+ decimals: number;
16
+ };
17
+ tokens: Token[];
18
+ private keychain;
19
+ private nativeAssets;
20
+ constructor(blockchainName: BSCustomName);
21
+ sendTransaction(param: SendTransactionParam): Promise<string>;
22
+ private buildNativeTransaction;
23
+ private buildNep5Transaction;
24
+ private setTypeIntents;
25
+ private isNativeTransaction;
26
+ generateMnemonic(): string;
27
+ generateWif(mnemonic: string, index: number): string;
28
+ generateAccount(mnemonic: string, index: number): {
29
+ wif: string;
30
+ address: string;
31
+ };
32
+ generateAccountFromWif(wif: string): string;
33
+ decryptKey(encryptedKey: string, password: string): Promise<{
34
+ wif: string;
35
+ address: string;
36
+ }>;
37
+ validateAddress(address: string): boolean;
38
+ validateEncryptedKey(encryptedKey: string): boolean;
39
+ validateWif(wif: string): boolean;
40
+ calculateTransferFee(param: SendTransactionParam, details?: boolean): Promise<{
41
+ result: number;
42
+ details?: CalculateTransferFeeDetails;
43
+ }>;
44
+ claim(account: Account): Promise<{
45
+ txid: string;
46
+ symbol: string;
47
+ hash: string;
48
+ }>;
49
+ }
@@ -0,0 +1,217 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ var __rest = (this && this.__rest) || function (s, e) {
35
+ var t = {};
36
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
37
+ t[p] = s[p];
38
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
39
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
40
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
41
+ t[p[i]] = s[p[i]];
42
+ }
43
+ return t;
44
+ };
45
+ var __importDefault = (this && this.__importDefault) || function (mod) {
46
+ return (mod && mod.__esModule) ? mod : { "default": mod };
47
+ };
48
+ Object.defineProperty(exports, "__esModule", { value: true });
49
+ exports.BSNeoLegacy = void 0;
50
+ const AsteroidSDK = __importStar(require("@moonlight-io/asteroid-sdk-js"));
51
+ const neon_js_1 = require("@cityofzion/neon-js");
52
+ const explorer_1 = require("./explorer");
53
+ const constants_1 = require("./constants");
54
+ const [gasToken, neoToken] = constants_1.nativeAssetsNeoLegacy;
55
+ const tokens_json_1 = __importDefault(require("./asset/tokens.json"));
56
+ class BSNeoLegacy {
57
+ constructor(blockchainName) {
58
+ this.dataService = explorer_1.explorerNeoLegacyOption.dora;
59
+ this.derivationPath = "m/44'/888'/0'/0/?";
60
+ this.tokenClaim = neoToken;
61
+ this.tokens = tokens_json_1.default;
62
+ this.keychain = new AsteroidSDK.Keychain();
63
+ this.nativeAssets = constants_1.nativeAssetsNeoLegacy;
64
+ this.blockchainName = blockchainName;
65
+ }
66
+ sendTransaction(param) {
67
+ var _a;
68
+ return __awaiter(this, void 0, void 0, function* () {
69
+ const url = (yield this.dataService.getHigherNode()).url;
70
+ const apiProvider = new neon_js_1.api.neoscan.instance("MainNet");
71
+ const account = new neon_js_1.wallet.Account(param.senderAccount.getWif());
72
+ const intentsWithTye = this.setTypeIntents(param.transactionIntents);
73
+ const isNativeTransaction = intentsWithTye.every(intent => intent.type === 'native');
74
+ const priorityFee = (_a = param.priorityFee) !== null && _a !== void 0 ? _a : 0;
75
+ const [gasAsset] = this.nativeAssets;
76
+ const gasBalance = (yield this.dataService.getBalance(param.senderAccount.getAddress())).find(balance => balance.hash === gasAsset.hash);
77
+ if ((gasBalance === null || gasBalance === void 0 ? void 0 : gasBalance.amount) < priorityFee)
78
+ throw new Error("Don't have funds to pay the transaction");
79
+ const transactionOperations = {
80
+ native: () => {
81
+ return neon_js_1.api.sendAsset({
82
+ account,
83
+ api: apiProvider,
84
+ url,
85
+ intents: this.buildNativeTransaction(param.transactionIntents),
86
+ fees: priorityFee
87
+ });
88
+ },
89
+ nep5: () => {
90
+ const extraIntentsNep5 = intentsWithTye.filter(it => it.type === 'native').map(it => {
91
+ const { type } = it, rest = __rest(it, ["type"]);
92
+ return rest;
93
+ });
94
+ return neon_js_1.api.doInvoke({
95
+ intents: extraIntentsNep5.length > 0 ? this.buildNativeTransaction(extraIntentsNep5) : undefined,
96
+ account,
97
+ api: apiProvider,
98
+ script: this.buildNep5Transaction(param.transactionIntents, param.senderAccount).str,
99
+ url,
100
+ fees: priorityFee
101
+ });
102
+ }
103
+ };
104
+ const result = isNativeTransaction ? yield transactionOperations.native() : yield transactionOperations.nep5();
105
+ if (!result.tx)
106
+ throw new Error("Failed to send transaction");
107
+ return result.tx.hash;
108
+ });
109
+ }
110
+ buildNativeTransaction(transactionIntents) {
111
+ let intents = [];
112
+ transactionIntents.forEach(transaction => {
113
+ const nativeAsset = this.nativeAssets.find(asset => asset.hash === transaction.tokenHash);
114
+ if (nativeAsset) {
115
+ intents = [...intents, ...neon_js_1.api.makeIntent({ [nativeAsset.symbol]: transaction.amount }, transaction.receiverAddress)];
116
+ }
117
+ });
118
+ return intents;
119
+ }
120
+ buildNep5Transaction(transactionIntents, senderAccount) {
121
+ const sb = new neon_js_1.sc.ScriptBuilder();
122
+ transactionIntents.forEach(transaction => {
123
+ if (!this.isNativeTransaction(transaction)) {
124
+ const senderHash = neon_js_1.u.reverseHex(neon_js_1.wallet.getScriptHashFromAddress(senderAccount.getAddress()));
125
+ const receiveHash = neon_js_1.u.reverseHex(neon_js_1.wallet.getScriptHashFromAddress(transaction.receiverAddress));
126
+ const adjustedAmount = new neon_js_1.u.Fixed8(transaction.amount).toRawNumber();
127
+ sb.emitAppCall(transaction.tokenHash.replace('0x', ''), "transfer", [
128
+ senderHash,
129
+ receiveHash,
130
+ neon_js_1.sc.ContractParam.integer(adjustedAmount.toString())
131
+ ]);
132
+ }
133
+ });
134
+ return sb;
135
+ }
136
+ setTypeIntents(transactionIntents) {
137
+ const intents = transactionIntents.map(transaction => {
138
+ return Object.assign(Object.assign({}, transaction), { type: this.isNativeTransaction(transaction) ? 'native' : 'nep5' });
139
+ });
140
+ return intents;
141
+ }
142
+ isNativeTransaction(transactionParam) {
143
+ return this.nativeAssets.some(asset => asset.hash === transactionParam.tokenHash);
144
+ }
145
+ generateMnemonic() {
146
+ var _a;
147
+ this.keychain.generateMnemonic(128);
148
+ const list = (_a = this.keychain.mnemonic) === null || _a === void 0 ? void 0 : _a.toString();
149
+ if (!list)
150
+ throw new Error("Failed to generate mnemonic");
151
+ return list;
152
+ }
153
+ generateWif(mnemonic, index) {
154
+ this.keychain.importMnemonic(mnemonic);
155
+ const childKey = this.keychain.generateChildKey('neo', this.derivationPath.replace('?', index.toString()));
156
+ return childKey.getWIF();
157
+ }
158
+ generateAccount(mnemonic, index) {
159
+ const wif = this.generateWif(mnemonic, index);
160
+ const { address } = new neon_js_1.wallet.Account(wif);
161
+ const result = { address, wif };
162
+ return result;
163
+ }
164
+ generateAccountFromWif(wif) {
165
+ return new neon_js_1.wallet.Account(wif).address;
166
+ }
167
+ decryptKey(encryptedKey, password) {
168
+ return __awaiter(this, void 0, void 0, function* () {
169
+ const wif = yield neon_js_1.wallet.decrypt(encryptedKey, password);
170
+ const { address } = new neon_js_1.wallet.Account(wif);
171
+ const result = { address, wif };
172
+ return result;
173
+ });
174
+ }
175
+ validateAddress(address) {
176
+ return neon_js_1.wallet.isAddress(address);
177
+ }
178
+ validateEncryptedKey(encryptedKey) {
179
+ return neon_js_1.wallet.isNEP2(encryptedKey);
180
+ }
181
+ validateWif(wif) {
182
+ return neon_js_1.wallet.isWIF(wif);
183
+ }
184
+ calculateTransferFee(param, details) {
185
+ throw new Error(`Doesn't have fee to make a transaction on ${this.blockchainName}`);
186
+ }
187
+ //Implementation Claim interface
188
+ claim(account) {
189
+ return __awaiter(this, void 0, void 0, function* () {
190
+ const neoAccount = new neon_js_1.wallet.Account(account.getWif());
191
+ const balances = yield this.dataService.getBalance(account.getAddress());
192
+ const neoBalance = balances.find(balance => balance.symbol === 'NEO');
193
+ const apiProvider = new neon_js_1.api.neoscan.instance("MainNet");
194
+ const neoNativeAsset = this.nativeAssets.find(nativeAsset => nativeAsset.symbol === (neoBalance === null || neoBalance === void 0 ? void 0 : neoBalance.symbol));
195
+ if (!neoNativeAsset || !neoBalance)
196
+ throw new Error("Neo it's necessary to do a claim");
197
+ const hasClaim = yield this.dataService.getUnclaimed(account.getAddress());
198
+ if (hasClaim.unclaimed <= 0)
199
+ throw new Error(`Doesn't have gas to claim`);
200
+ const url = (yield this.dataService.getHigherNode()).url;
201
+ const claims = yield neon_js_1.api.neoCli.getClaims(url, account.getAddress());
202
+ const claimGasResponse = yield neon_js_1.api.claimGas({
203
+ claims,
204
+ api: apiProvider,
205
+ account: neoAccount,
206
+ url
207
+ });
208
+ const result = {
209
+ txid: claimGasResponse.response.txid,
210
+ hash: constants_1.unclaimedTokenNeoLegacy.hash,
211
+ symbol: constants_1.unclaimedTokenNeoLegacy.symbol
212
+ };
213
+ return result;
214
+ });
215
+ }
216
+ }
217
+ exports.BSNeoLegacy = BSNeoLegacy;