@airgap/tezos 0.13.45-beta.3 → 0.13.45-beta.5

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 (421) hide show
  1. package/package.json +5 -5
  2. package/v0/actions/GetKtAccountsAction.js +81 -11
  3. package/v0/actions/GetKtAccountsAction.js.map +1 -1
  4. package/v0/constants.js +6 -6
  5. package/v0/constants.js.map +1 -1
  6. package/v0/index.js +38 -38
  7. package/v0/index.js.map +1 -1
  8. package/v0/protocol/TezosAddress.d.ts +1 -0
  9. package/v0/protocol/TezosAddress.js +81 -41
  10. package/v0/protocol/TezosAddress.js.map +1 -1
  11. package/v0/protocol/TezosCryptoClient.d.ts +1 -0
  12. package/v0/protocol/TezosCryptoClient.js +123 -68
  13. package/v0/protocol/TezosCryptoClient.js.map +1 -1
  14. package/v0/protocol/TezosProtocol.js +1631 -978
  15. package/v0/protocol/TezosProtocol.js.map +1 -1
  16. package/v0/protocol/TezosProtocolOptions.d.ts +1 -1
  17. package/v0/protocol/TezosProtocolOptions.js +98 -26
  18. package/v0/protocol/TezosProtocolOptions.js.map +1 -1
  19. package/v0/protocol/TezosUtils.d.ts +1 -0
  20. package/v0/protocol/TezosUtils.js +165 -131
  21. package/v0/protocol/TezosUtils.js.map +1 -1
  22. package/v0/protocol/contract/TezosContract.js +472 -243
  23. package/v0/protocol/contract/TezosContract.js.map +1 -1
  24. package/v0/protocol/contract/TezosContractCall.js +10 -8
  25. package/v0/protocol/contract/TezosContractCall.js.map +1 -1
  26. package/v0/protocol/contract/TezosContractEntrypoint.js +19 -14
  27. package/v0/protocol/contract/TezosContractEntrypoint.js.map +1 -1
  28. package/v0/protocol/contract/TezosContractStorage.js +9 -8
  29. package/v0/protocol/contract/TezosContractStorage.js.map +1 -1
  30. package/v0/protocol/contract/remote-data/TezosContractRemoteDataFactory.js +25 -8
  31. package/v0/protocol/contract/remote-data/TezosContractRemoteDataFactory.js.map +1 -1
  32. package/v0/protocol/contract/remote-data/TezosStorageRemoteData.js +113 -39
  33. package/v0/protocol/contract/remote-data/TezosStorageRemoteData.js.map +1 -1
  34. package/v0/protocol/domains/TezosDomains.js +270 -165
  35. package/v0/protocol/domains/TezosDomains.js.map +1 -1
  36. package/v0/protocol/fa/TezosBTC.js +98 -19
  37. package/v0/protocol/fa/TezosBTC.js.map +1 -1
  38. package/v0/protocol/fa/TezosBTCtez.js +48 -17
  39. package/v0/protocol/fa/TezosBTCtez.js.map +1 -1
  40. package/v0/protocol/fa/TezosCTez.js +45 -17
  41. package/v0/protocol/fa/TezosCTez.js.map +1 -1
  42. package/v0/protocol/fa/TezosDOGA.js +45 -17
  43. package/v0/protocol/fa/TezosDOGA.js.map +1 -1
  44. package/v0/protocol/fa/TezosETHtz.js +68 -10
  45. package/v0/protocol/fa/TezosETHtz.js.map +1 -1
  46. package/v0/protocol/fa/TezosFA1Protocol.js +276 -119
  47. package/v0/protocol/fa/TezosFA1Protocol.js.map +1 -1
  48. package/v0/protocol/fa/TezosFA1p2Protocol.js +101 -22
  49. package/v0/protocol/fa/TezosFA1p2Protocol.js.map +1 -1
  50. package/v0/protocol/fa/TezosFA2Protocol.js +402 -213
  51. package/v0/protocol/fa/TezosFA2Protocol.js.map +1 -1
  52. package/v0/protocol/fa/TezosFAProtocol.js +418 -211
  53. package/v0/protocol/fa/TezosFAProtocol.js.map +1 -1
  54. package/v0/protocol/fa/TezosFAProtocolOptions.d.ts +2 -2
  55. package/v0/protocol/fa/TezosFAProtocolOptions.js +195 -92
  56. package/v0/protocol/fa/TezosFAProtocolOptions.js.map +1 -1
  57. package/v0/protocol/fa/TezosKolibriUSD.js +70 -11
  58. package/v0/protocol/fa/TezosKolibriUSD.js.map +1 -1
  59. package/v0/protocol/fa/TezosPlanty.js +45 -17
  60. package/v0/protocol/fa/TezosPlanty.js.map +1 -1
  61. package/v0/protocol/fa/TezosQUIPU.js +48 -17
  62. package/v0/protocol/fa/TezosQUIPU.js.map +1 -1
  63. package/v0/protocol/fa/TezosSIRS.js +45 -17
  64. package/v0/protocol/fa/TezosSIRS.js.map +1 -1
  65. package/v0/protocol/fa/TezosStaker.js +70 -11
  66. package/v0/protocol/fa/TezosStaker.js.map +1 -1
  67. package/v0/protocol/fa/TezosUBTC.js +48 -17
  68. package/v0/protocol/fa/TezosUBTC.js.map +1 -1
  69. package/v0/protocol/fa/TezosUDEFI.js +48 -17
  70. package/v0/protocol/fa/TezosUDEFI.js.map +1 -1
  71. package/v0/protocol/fa/TezosUSD.js +70 -11
  72. package/v0/protocol/fa/TezosUSD.js.map +1 -1
  73. package/v0/protocol/fa/TezosUSDT.js +48 -17
  74. package/v0/protocol/fa/TezosUSDT.js.map +1 -1
  75. package/v0/protocol/fa/TezosUUSD.js +27 -8
  76. package/v0/protocol/fa/TezosUUSD.js.map +1 -1
  77. package/v0/protocol/fa/TezosUXTZ.js +48 -17
  78. package/v0/protocol/fa/TezosUXTZ.js.map +1 -1
  79. package/v0/protocol/fa/TezosWRAP.js +48 -17
  80. package/v0/protocol/fa/TezosWRAP.js.map +1 -1
  81. package/v0/protocol/fa/TezosWrapped.js +70 -11
  82. package/v0/protocol/fa/TezosWrapped.js.map +1 -1
  83. package/v0/protocol/fa/TezosYOU.js +27 -8
  84. package/v0/protocol/fa/TezosYOU.js.map +1 -1
  85. package/v0/protocol/fa/metadata/BigMapTokenMetadataIndexer.js +162 -84
  86. package/v0/protocol/fa/metadata/BigMapTokenMetadataIndexer.js.map +1 -1
  87. package/v0/protocol/fa/metadata/ObjktTokenMetadataIndexer.js +87 -37
  88. package/v0/protocol/fa/metadata/ObjktTokenMetadataIndexer.js.map +1 -1
  89. package/v0/protocol/indexerClient/TezosIndexerClient.js +259 -115
  90. package/v0/protocol/indexerClient/TezosIndexerClient.js.map +1 -1
  91. package/v0/protocol/kt/TezosKtAddress.js +67 -7
  92. package/v0/protocol/kt/TezosKtAddress.js.map +1 -1
  93. package/v0/protocol/kt/TezosKtProtocol.js +309 -161
  94. package/v0/protocol/kt/TezosKtProtocol.js.map +1 -1
  95. package/v0/protocol/sapling/TezosSaplingAddress.d.ts +1 -0
  96. package/v0/protocol/sapling/TezosSaplingAddress.js +117 -46
  97. package/v0/protocol/sapling/TezosSaplingAddress.js.map +1 -1
  98. package/v0/protocol/sapling/TezosSaplingCryptoClient.d.ts +1 -0
  99. package/v0/protocol/sapling/TezosSaplingCryptoClient.js +220 -125
  100. package/v0/protocol/sapling/TezosSaplingCryptoClient.js.map +1 -1
  101. package/v0/protocol/sapling/TezosSaplingProtocol.d.ts +1 -0
  102. package/v0/protocol/sapling/TezosSaplingProtocol.js +1127 -600
  103. package/v0/protocol/sapling/TezosSaplingProtocol.js.map +1 -1
  104. package/v0/protocol/sapling/TezosSaplingProtocolOptions.d.ts +1 -0
  105. package/v0/protocol/sapling/TezosSaplingProtocolOptions.js +61 -32
  106. package/v0/protocol/sapling/TezosSaplingProtocolOptions.js.map +1 -1
  107. package/v0/protocol/sapling/TezosShieldedTezProtocol.js +134 -50
  108. package/v0/protocol/sapling/TezosShieldedTezProtocol.js.map +1 -1
  109. package/v0/protocol/sapling/injector/TezosSaplingInjectorClient.js +56 -10
  110. package/v0/protocol/sapling/injector/TezosSaplingInjectorClient.js.map +1 -1
  111. package/v0/protocol/sapling/node/TezosSaplingNodeClient.js +67 -12
  112. package/v0/protocol/sapling/node/TezosSaplingNodeClient.js.map +1 -1
  113. package/v0/protocol/sapling/utils/TezosSaplingBookkeeper.d.ts +1 -0
  114. package/v0/protocol/sapling/utils/TezosSaplingBookkeeper.js +539 -221
  115. package/v0/protocol/sapling/utils/TezosSaplingBookkeeper.js.map +1 -1
  116. package/v0/protocol/sapling/utils/TezosSaplingEncoder.d.ts +1 -0
  117. package/v0/protocol/sapling/utils/TezosSaplingEncoder.js +104 -101
  118. package/v0/protocol/sapling/utils/TezosSaplingEncoder.js.map +1 -1
  119. package/v0/protocol/sapling/utils/TezosSaplingForger.d.ts +1 -0
  120. package/v0/protocol/sapling/utils/TezosSaplingForger.js +266 -107
  121. package/v0/protocol/sapling/utils/TezosSaplingForger.js.map +1 -1
  122. package/v0/protocol/sapling/utils/TezosSaplingState.js +239 -110
  123. package/v0/protocol/sapling/utils/TezosSaplingState.js.map +1 -1
  124. package/v0/protocol/types/TezosOperationType.js +1 -1
  125. package/v0/protocol/types/TezosOperationType.js.map +1 -1
  126. package/v0/protocol/types/contract/BigMapEntry.d.ts +1 -1
  127. package/v0/protocol/types/contract/TezosContractMetadata.d.ts +2 -2
  128. package/v0/protocol/types/micheline/MichelineNode.d.ts +7 -7
  129. package/v0/protocol/types/micheline/MichelineNodeUtils.js +13 -9
  130. package/v0/protocol/types/micheline/MichelineNodeUtils.js.map +1 -1
  131. package/v0/protocol/types/michelson/MichelsonType.d.ts +1 -0
  132. package/v0/protocol/types/michelson/MichelsonType.js +12 -11
  133. package/v0/protocol/types/michelson/MichelsonType.js.map +1 -1
  134. package/v0/protocol/types/michelson/MichelsonTypeMeta.js +92 -45
  135. package/v0/protocol/types/michelson/MichelsonTypeMeta.js.map +1 -1
  136. package/v0/protocol/types/michelson/MichelsonTypeUtils.d.ts +1 -0
  137. package/v0/protocol/types/michelson/MichelsonTypeUtils.js +219 -58
  138. package/v0/protocol/types/michelson/MichelsonTypeUtils.js.map +1 -1
  139. package/v0/protocol/types/michelson/generics/MichelsonList.js +43 -24
  140. package/v0/protocol/types/michelson/generics/MichelsonList.js.map +1 -1
  141. package/v0/protocol/types/michelson/generics/MichelsonMap.js +61 -39
  142. package/v0/protocol/types/michelson/generics/MichelsonMap.js.map +1 -1
  143. package/v0/protocol/types/michelson/generics/MichelsonOption.d.ts +1 -1
  144. package/v0/protocol/types/michelson/generics/MichelsonOption.js +75 -46
  145. package/v0/protocol/types/michelson/generics/MichelsonOption.js.map +1 -1
  146. package/v0/protocol/types/michelson/generics/MichelsonOr.d.ts +1 -1
  147. package/v0/protocol/types/michelson/generics/MichelsonOr.js +76 -50
  148. package/v0/protocol/types/michelson/generics/MichelsonOr.js.map +1 -1
  149. package/v0/protocol/types/michelson/generics/MichelsonPair.js +85 -52
  150. package/v0/protocol/types/michelson/generics/MichelsonPair.js.map +1 -1
  151. package/v0/protocol/types/michelson/grammar/MichelsonGrammarData.d.ts +1 -1
  152. package/v0/protocol/types/michelson/grammar/MichelsonGrammarInstruction.d.ts +1 -1
  153. package/v0/protocol/types/michelson/grammar/MichelsonGrammarType.d.ts +1 -1
  154. package/v0/protocol/types/michelson/primitives/MichelsonAddress.d.ts +1 -0
  155. package/v0/protocol/types/michelson/primitives/MichelsonAddress.js +47 -28
  156. package/v0/protocol/types/michelson/primitives/MichelsonAddress.js.map +1 -1
  157. package/v0/protocol/types/michelson/primitives/MichelsonBool.js +39 -20
  158. package/v0/protocol/types/michelson/primitives/MichelsonBool.js.map +1 -1
  159. package/v0/protocol/types/michelson/primitives/MichelsonBytes.d.ts +1 -0
  160. package/v0/protocol/types/michelson/primitives/MichelsonBytes.js +54 -35
  161. package/v0/protocol/types/michelson/primitives/MichelsonBytes.js.map +1 -1
  162. package/v0/protocol/types/michelson/primitives/MichelsonInt.d.ts +1 -0
  163. package/v0/protocol/types/michelson/primitives/MichelsonInt.js +49 -30
  164. package/v0/protocol/types/michelson/primitives/MichelsonInt.js.map +1 -1
  165. package/v0/protocol/types/michelson/primitives/MichelsonString.d.ts +1 -0
  166. package/v0/protocol/types/michelson/primitives/MichelsonString.js +52 -33
  167. package/v0/protocol/types/michelson/primitives/MichelsonString.js.map +1 -1
  168. package/v0/protocol/types/michelson/primitives/MichelsonUnit.js +34 -14
  169. package/v0/protocol/types/michelson/primitives/MichelsonUnit.js.map +1 -1
  170. package/v0/protocol/types/sapling/TezosSaplingStateTree.d.ts +1 -1
  171. package/v0/protocol/types/sapling/TezosSaplingTransaction.d.ts +1 -0
  172. package/v0/protocol/types/utils.js +10 -8
  173. package/v0/protocol/types/utils.js.map +1 -1
  174. package/v0/serializer/validators/transaction-validator.js +78 -29
  175. package/v0/serializer/validators/transaction-validator.js.map +1 -1
  176. package/v0/serializer/validators/transaction-xtz-btc-validator.js +129 -55
  177. package/v0/serializer/validators/transaction-xtz-btc-validator.js.map +1 -1
  178. package/v0/serializer/validators/validators.js +103 -43
  179. package/v0/serializer/validators/validators.js.map +1 -1
  180. package/v1/block-explorer/TzKTBlockExplorer.js +61 -12
  181. package/v1/block-explorer/TzKTBlockExplorer.js.map +1 -1
  182. package/v1/block-explorer/factory.js +5 -4
  183. package/v1/block-explorer/factory.js.map +1 -1
  184. package/v1/contract/TezosContract.js +471 -242
  185. package/v1/contract/TezosContract.js.map +1 -1
  186. package/v1/contract/TezosContractCall.js +10 -8
  187. package/v1/contract/TezosContractCall.js.map +1 -1
  188. package/v1/contract/TezosContractEntrypoint.d.ts +1 -1
  189. package/v1/contract/TezosContractEntrypoint.js +19 -14
  190. package/v1/contract/TezosContractEntrypoint.js.map +1 -1
  191. package/v1/contract/TezosContractStorage.js +9 -8
  192. package/v1/contract/TezosContractStorage.js.map +1 -1
  193. package/v1/contract/remote-data/TezosContractRemoteDataFactory.js +25 -8
  194. package/v1/contract/remote-data/TezosContractRemoteDataFactory.js.map +1 -1
  195. package/v1/contract/remote-data/TezosStorageRemoteData.js +113 -39
  196. package/v1/contract/remote-data/TezosStorageRemoteData.js.map +1 -1
  197. package/v1/crypto/TezosCryptoClient.d.ts +1 -0
  198. package/v1/crypto/TezosCryptoClient.js +117 -64
  199. package/v1/crypto/TezosCryptoClient.js.map +1 -1
  200. package/v1/crypto/TezosSaplingCryptoClient.d.ts +1 -0
  201. package/v1/crypto/TezosSaplingCryptoClient.js +194 -116
  202. package/v1/crypto/TezosSaplingCryptoClient.js.map +1 -1
  203. package/v1/data/TezosAddress.js +14 -13
  204. package/v1/data/TezosAddress.js.map +1 -1
  205. package/v1/data/TezosSaplingAddress.d.ts +1 -0
  206. package/v1/data/TezosSaplingAddress.js +94 -29
  207. package/v1/data/TezosSaplingAddress.js.map +1 -1
  208. package/v1/domains/TezosDomains.js +270 -165
  209. package/v1/domains/TezosDomains.js.map +1 -1
  210. package/v1/index.js +39 -39
  211. package/v1/index.js.map +1 -1
  212. package/v1/indexer/TzKTIndexerClient.js +270 -126
  213. package/v1/indexer/TzKTIndexerClient.js.map +1 -1
  214. package/v1/indexer/factory.js +5 -4
  215. package/v1/indexer/factory.js.map +1 -1
  216. package/v1/indexer/token-metadata/BigMapTokenMetadataIndexerClient.js +161 -83
  217. package/v1/indexer/token-metadata/BigMapTokenMetadataIndexerClient.js.map +1 -1
  218. package/v1/indexer/token-metadata/ObjktTokenMetadataIndexerClient.js +85 -36
  219. package/v1/indexer/token-metadata/ObjktTokenMetadataIndexerClient.js.map +1 -1
  220. package/v1/injector/TezosSaplingInjectorClient.js +56 -10
  221. package/v1/injector/TezosSaplingInjectorClient.js.map +1 -1
  222. package/v1/module/TezosModule.js +155 -88
  223. package/v1/module/TezosModule.js.map +1 -1
  224. package/v1/module.js +3 -2
  225. package/v1/module.js.map +1 -1
  226. package/v1/node/TezosSaplingNodeClient.js +67 -12
  227. package/v1/node/TezosSaplingNodeClient.js.map +1 -1
  228. package/v1/protocol/TezosProtocol.js +1385 -848
  229. package/v1/protocol/TezosProtocol.js.map +1 -1
  230. package/v1/protocol/fa/TezosFA1Protocol.js +205 -81
  231. package/v1/protocol/fa/TezosFA1Protocol.js.map +1 -1
  232. package/v1/protocol/fa/TezosFA1p2Protocol.js +111 -32
  233. package/v1/protocol/fa/TezosFA1p2Protocol.js.map +1 -1
  234. package/v1/protocol/fa/TezosFA2Protocol.js +332 -174
  235. package/v1/protocol/fa/TezosFA2Protocol.js.map +1 -1
  236. package/v1/protocol/fa/TezosFAProtocol.js +528 -255
  237. package/v1/protocol/fa/TezosFAProtocol.js.map +1 -1
  238. package/v1/protocol/fa/tokens/BTCTezProtocol.d.ts +2 -2
  239. package/v1/protocol/fa/tokens/BTCTezProtocol.js +47 -30
  240. package/v1/protocol/fa/tokens/BTCTezProtocol.js.map +1 -1
  241. package/v1/protocol/fa/tokens/CTezProtocol.d.ts +2 -2
  242. package/v1/protocol/fa/tokens/CTezProtocol.js +47 -27
  243. package/v1/protocol/fa/tokens/CTezProtocol.js.map +1 -1
  244. package/v1/protocol/fa/tokens/DogamiProtocol.d.ts +2 -2
  245. package/v1/protocol/fa/tokens/DogamiProtocol.js +47 -27
  246. package/v1/protocol/fa/tokens/DogamiProtocol.js.map +1 -1
  247. package/v1/protocol/fa/tokens/ETHTezProtocol.d.ts +2 -2
  248. package/v1/protocol/fa/tokens/ETHTezProtocol.js +90 -30
  249. package/v1/protocol/fa/tokens/ETHTezProtocol.js.map +1 -1
  250. package/v1/protocol/fa/tokens/KolibriUSDProtocol.d.ts +2 -2
  251. package/v1/protocol/fa/tokens/KolibriUSDProtocol.js +90 -30
  252. package/v1/protocol/fa/tokens/KolibriUSDProtocol.js.map +1 -1
  253. package/v1/protocol/fa/tokens/PlentyProtocol.d.ts +2 -2
  254. package/v1/protocol/fa/tokens/PlentyProtocol.js +90 -30
  255. package/v1/protocol/fa/tokens/PlentyProtocol.js.map +1 -1
  256. package/v1/protocol/fa/tokens/QuipuswapProtocol.d.ts +2 -2
  257. package/v1/protocol/fa/tokens/QuipuswapProtocol.js +47 -30
  258. package/v1/protocol/fa/tokens/QuipuswapProtocol.js.map +1 -1
  259. package/v1/protocol/fa/tokens/SiriusProtocol.d.ts +2 -2
  260. package/v1/protocol/fa/tokens/SiriusProtocol.js +47 -27
  261. package/v1/protocol/fa/tokens/SiriusProtocol.js.map +1 -1
  262. package/v1/protocol/fa/tokens/StakerProtocol.d.ts +2 -2
  263. package/v1/protocol/fa/tokens/StakerProtocol.js +90 -30
  264. package/v1/protocol/fa/tokens/StakerProtocol.js.map +1 -1
  265. package/v1/protocol/fa/tokens/TetherUSDProtocol.d.ts +2 -2
  266. package/v1/protocol/fa/tokens/TetherUSDProtocol.js +47 -30
  267. package/v1/protocol/fa/tokens/TetherUSDProtocol.js.map +1 -1
  268. package/v1/protocol/fa/tokens/TzBTCProtocol.d.ts +2 -2
  269. package/v1/protocol/fa/tokens/TzBTCProtocol.js +47 -27
  270. package/v1/protocol/fa/tokens/TzBTCProtocol.js.map +1 -1
  271. package/v1/protocol/fa/tokens/UBTCProtocol.d.ts +2 -2
  272. package/v1/protocol/fa/tokens/UBTCProtocol.js +47 -30
  273. package/v1/protocol/fa/tokens/UBTCProtocol.js.map +1 -1
  274. package/v1/protocol/fa/tokens/UDEFIProtocol.d.ts +2 -2
  275. package/v1/protocol/fa/tokens/UDEFIProtocol.js +47 -30
  276. package/v1/protocol/fa/tokens/UDEFIProtocol.js.map +1 -1
  277. package/v1/protocol/fa/tokens/USDTezProtocol.d.ts +2 -2
  278. package/v1/protocol/fa/tokens/USDTezProtocol.js +47 -27
  279. package/v1/protocol/fa/tokens/USDTezProtocol.js.map +1 -1
  280. package/v1/protocol/fa/tokens/UUSDProtocol.d.ts +2 -2
  281. package/v1/protocol/fa/tokens/UUSDProtocol.js +47 -30
  282. package/v1/protocol/fa/tokens/UUSDProtocol.js.map +1 -1
  283. package/v1/protocol/fa/tokens/UXTZProtocol.d.ts +2 -2
  284. package/v1/protocol/fa/tokens/UXTZProtocol.js +47 -30
  285. package/v1/protocol/fa/tokens/UXTZProtocol.js.map +1 -1
  286. package/v1/protocol/fa/tokens/WrapProtocol.d.ts +2 -2
  287. package/v1/protocol/fa/tokens/WrapProtocol.js +47 -30
  288. package/v1/protocol/fa/tokens/WrapProtocol.js.map +1 -1
  289. package/v1/protocol/fa/tokens/WrappedTezosProtocol.d.ts +2 -2
  290. package/v1/protocol/fa/tokens/WrappedTezosProtocol.js +47 -27
  291. package/v1/protocol/fa/tokens/WrappedTezosProtocol.js.map +1 -1
  292. package/v1/protocol/fa/tokens/YouProtocol.d.ts +2 -2
  293. package/v1/protocol/fa/tokens/YouProtocol.js +47 -30
  294. package/v1/protocol/fa/tokens/YouProtocol.js.map +1 -1
  295. package/v1/protocol/fa/tokens/stXTZProtocol.d.ts +2 -2
  296. package/v1/protocol/fa/tokens/stXTZProtocol.js +47 -30
  297. package/v1/protocol/fa/tokens/stXTZProtocol.js.map +1 -1
  298. package/v1/protocol/kt/TezosKtProtocol.js +498 -254
  299. package/v1/protocol/kt/TezosKtProtocol.js.map +1 -1
  300. package/v1/protocol/sapling/TezosSaplingProtocol.d.ts +1 -0
  301. package/v1/protocol/sapling/TezosSaplingProtocol.js +933 -532
  302. package/v1/protocol/sapling/TezosSaplingProtocol.js.map +1 -1
  303. package/v1/protocol/sapling/TezosShieldedTezProtocol.js +164 -72
  304. package/v1/protocol/sapling/TezosShieldedTezProtocol.js.map +1 -1
  305. package/v1/serializer/v3/schemas/converter/transaction-converter.js +26 -14
  306. package/v1/serializer/v3/schemas/converter/transaction-converter.js.map +1 -1
  307. package/v1/serializer/v3/serializer-companion.js +188 -103
  308. package/v1/serializer/v3/serializer-companion.js.map +1 -1
  309. package/v1/serializer/v3/validators/transaction-validator.js +143 -54
  310. package/v1/serializer/v3/validators/transaction-validator.js.map +1 -1
  311. package/v1/serializer/v3/validators/validators.js +100 -40
  312. package/v1/serializer/v3/validators/validators.js.map +1 -1
  313. package/v1/types/block-explorer.d.ts +1 -1
  314. package/v1/types/contract/TezosContractMetadata.d.ts +2 -2
  315. package/v1/types/contract/bigmap/BigMapEntry.d.ts +1 -1
  316. package/v1/types/crypto.d.ts +2 -2
  317. package/v1/types/fa/TezosFA1ContractEntrypoint.d.ts +1 -1
  318. package/v1/types/fa/TezosFA1p2ContractEntrypoint.d.ts +1 -1
  319. package/v1/types/fa/TezosFA2ContractEntrypoint.d.ts +1 -1
  320. package/v1/types/indexer.d.ts +1 -1
  321. package/v1/types/micheline/MichelineNode.d.ts +7 -7
  322. package/v1/types/micheline/MichelineNodeUtils.js +13 -9
  323. package/v1/types/micheline/MichelineNodeUtils.js.map +1 -1
  324. package/v1/types/michelson/MichelsonType.d.ts +1 -0
  325. package/v1/types/michelson/MichelsonType.js +12 -11
  326. package/v1/types/michelson/MichelsonType.js.map +1 -1
  327. package/v1/types/michelson/MichelsonTypeMeta.js +92 -45
  328. package/v1/types/michelson/MichelsonTypeMeta.js.map +1 -1
  329. package/v1/types/michelson/MichelsonTypeUtils.d.ts +1 -0
  330. package/v1/types/michelson/MichelsonTypeUtils.js +219 -58
  331. package/v1/types/michelson/MichelsonTypeUtils.js.map +1 -1
  332. package/v1/types/michelson/generics/MichelsonList.js +43 -24
  333. package/v1/types/michelson/generics/MichelsonList.js.map +1 -1
  334. package/v1/types/michelson/generics/MichelsonMap.js +61 -39
  335. package/v1/types/michelson/generics/MichelsonMap.js.map +1 -1
  336. package/v1/types/michelson/generics/MichelsonOption.d.ts +1 -1
  337. package/v1/types/michelson/generics/MichelsonOption.js +75 -46
  338. package/v1/types/michelson/generics/MichelsonOption.js.map +1 -1
  339. package/v1/types/michelson/generics/MichelsonOr.d.ts +1 -1
  340. package/v1/types/michelson/generics/MichelsonOr.js +76 -50
  341. package/v1/types/michelson/generics/MichelsonOr.js.map +1 -1
  342. package/v1/types/michelson/generics/MichelsonPair.js +85 -52
  343. package/v1/types/michelson/generics/MichelsonPair.js.map +1 -1
  344. package/v1/types/michelson/grammar/MichelsonGrammarData.d.ts +1 -1
  345. package/v1/types/michelson/grammar/MichelsonGrammarInstruction.d.ts +1 -1
  346. package/v1/types/michelson/grammar/MichelsonGrammarType.d.ts +1 -1
  347. package/v1/types/michelson/primitives/MichelsonAddress.d.ts +1 -0
  348. package/v1/types/michelson/primitives/MichelsonAddress.js +47 -28
  349. package/v1/types/michelson/primitives/MichelsonAddress.js.map +1 -1
  350. package/v1/types/michelson/primitives/MichelsonBool.js +39 -20
  351. package/v1/types/michelson/primitives/MichelsonBool.js.map +1 -1
  352. package/v1/types/michelson/primitives/MichelsonBytes.d.ts +1 -0
  353. package/v1/types/michelson/primitives/MichelsonBytes.js +54 -35
  354. package/v1/types/michelson/primitives/MichelsonBytes.js.map +1 -1
  355. package/v1/types/michelson/primitives/MichelsonInt.d.ts +1 -0
  356. package/v1/types/michelson/primitives/MichelsonInt.js +49 -30
  357. package/v1/types/michelson/primitives/MichelsonInt.js.map +1 -1
  358. package/v1/types/michelson/primitives/MichelsonString.d.ts +1 -0
  359. package/v1/types/michelson/primitives/MichelsonString.js +52 -33
  360. package/v1/types/michelson/primitives/MichelsonString.js.map +1 -1
  361. package/v1/types/michelson/primitives/MichelsonUnit.js +34 -14
  362. package/v1/types/michelson/primitives/MichelsonUnit.js.map +1 -1
  363. package/v1/types/network.js +1 -1
  364. package/v1/types/network.js.map +1 -1
  365. package/v1/types/operations/TezosOperationType.js +1 -1
  366. package/v1/types/operations/TezosOperationType.js.map +1 -1
  367. package/v1/types/protocol.d.ts +3 -3
  368. package/v1/types/sapling/TezosSaplingExternalMethodProvider.d.ts +1 -0
  369. package/v1/types/sapling/TezosSaplingStateTree.d.ts +1 -1
  370. package/v1/types/sapling/TezosSaplingTransaction.d.ts +1 -0
  371. package/v1/types/staking/TezosDelegatorAction.js +1 -1
  372. package/v1/types/staking/TezosDelegatorAction.js.map +1 -1
  373. package/v1/utils/address.js +7 -6
  374. package/v1/utils/address.js.map +1 -1
  375. package/v1/utils/bip.d.ts +1 -0
  376. package/v1/utils/bip.js +7 -6
  377. package/v1/utils/bip.js.map +1 -1
  378. package/v1/utils/convert.js +8 -7
  379. package/v1/utils/convert.js.map +1 -1
  380. package/v1/utils/encoding.d.ts +1 -0
  381. package/v1/utils/encoding.js +64 -74
  382. package/v1/utils/encoding.js.map +1 -1
  383. package/v1/utils/fa.js +3 -2
  384. package/v1/utils/fa.js.map +1 -1
  385. package/v1/utils/key.js +12 -9
  386. package/v1/utils/key.js.map +1 -1
  387. package/v1/utils/micheline.js +10 -8
  388. package/v1/utils/micheline.js.map +1 -1
  389. package/v1/utils/operations.js +22 -21
  390. package/v1/utils/operations.js.map +1 -1
  391. package/v1/utils/pack.d.ts +1 -0
  392. package/v1/utils/pack.js +107 -65
  393. package/v1/utils/pack.js.map +1 -1
  394. package/v1/utils/protocol/fa/TezosFA1Accountant.js +52 -24
  395. package/v1/utils/protocol/fa/TezosFA1Accountant.js.map +1 -1
  396. package/v1/utils/protocol/fa/TezosFA2Accountant.js +77 -40
  397. package/v1/utils/protocol/fa/TezosFA2Accountant.js.map +1 -1
  398. package/v1/utils/protocol/fa/TezosFAAccountant.js +89 -21
  399. package/v1/utils/protocol/fa/TezosFAAccountant.js.map +1 -1
  400. package/v1/utils/protocol/instance.js +26 -90
  401. package/v1/utils/protocol/instance.js.map +1 -1
  402. package/v1/utils/protocol/sapling/TezosSaplingAccountant.d.ts +1 -0
  403. package/v1/utils/protocol/sapling/TezosSaplingAccountant.js +539 -221
  404. package/v1/utils/protocol/sapling/TezosSaplingAccountant.js.map +1 -1
  405. package/v1/utils/protocol/sapling/TezosSaplingEncoder.d.ts +1 -0
  406. package/v1/utils/protocol/sapling/TezosSaplingEncoder.js +104 -101
  407. package/v1/utils/protocol/sapling/TezosSaplingEncoder.js.map +1 -1
  408. package/v1/utils/protocol/sapling/TezosSaplingForger.d.ts +1 -0
  409. package/v1/utils/protocol/sapling/TezosSaplingForger.js +266 -107
  410. package/v1/utils/protocol/sapling/TezosSaplingForger.js.map +1 -1
  411. package/v1/utils/protocol/sapling/TezosSaplingState.js +239 -110
  412. package/v1/utils/protocol/sapling/TezosSaplingState.js.map +1 -1
  413. package/v1/utils/protocol/tezos/TezosAccountant.js +166 -97
  414. package/v1/utils/protocol/tezos/TezosAccountant.js.map +1 -1
  415. package/v1/utils/protocol/tezos/TezosForger.js +76 -21
  416. package/v1/utils/protocol/tezos/TezosForger.js.map +1 -1
  417. package/v1/utils/signature.js +6 -5
  418. package/v1/utils/signature.js.map +1 -1
  419. package/v1/utils/transaction.d.ts +5 -4
  420. package/v1/utils/transaction.js +3 -3
  421. package/v1/utils/transaction.js.map +1 -1
@@ -1,237 +1,443 @@
1
1
  "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __assign = (this && this.__assign) || function () {
18
+ __assign = Object.assign || function(t) {
19
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
20
+ s = arguments[i];
21
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
+ t[p] = s[p];
23
+ }
24
+ return t;
25
+ };
26
+ return __assign.apply(this, arguments);
27
+ };
28
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
29
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
30
+ return new (P || (P = Promise))(function (resolve, reject) {
31
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
32
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
33
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
34
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
35
+ });
36
+ };
37
+ var __generator = (this && this.__generator) || function (thisArg, body) {
38
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
39
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
40
+ function verb(n) { return function (v) { return step([n, v]); }; }
41
+ function step(op) {
42
+ if (f) throw new TypeError("Generator is already executing.");
43
+ while (_) try {
44
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
45
+ if (y = 0, t) op = [op[0] & 2, t.value];
46
+ switch (op[0]) {
47
+ case 0: case 1: t = op; break;
48
+ case 4: _.label++; return { value: op[1], done: false };
49
+ case 5: _.label++; y = op[1]; op = [0]; continue;
50
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
51
+ default:
52
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
53
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
54
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
55
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
56
+ if (t[2]) _.ops.pop();
57
+ _.trys.pop(); continue;
58
+ }
59
+ op = body.call(thisArg, _);
60
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
61
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
62
+ }
63
+ };
2
64
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
65
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
66
  };
5
67
  Object.defineProperty(exports, "__esModule", { value: true });
6
68
  exports.TezosFAProtocol = void 0;
7
- const coinlib_core_1 = require("@airgap/coinlib-core");
8
- const index_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/axios-0.19.0/index"));
9
- const bignumber_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber"));
10
- const errors_1 = require("@airgap/coinlib-core/errors");
11
- const coinlib_error_1 = require("@airgap/coinlib-core/errors/coinlib-error");
12
- const TezosContractRemoteDataFactory_1 = require("../contract/remote-data/TezosContractRemoteDataFactory");
13
- const TezosContract_1 = require("../contract/TezosContract");
14
- const TezosProtocol_1 = require("../TezosProtocol");
15
- const TezosOperationType_1 = require("../types/TezosOperationType");
16
- const utils_1 = require("../types/utils");
17
- const BigMapTokenMetadataIndexer_1 = require("./metadata/BigMapTokenMetadataIndexer");
18
- const ObjktTokenMetadataIndexer_1 = require("./metadata/ObjktTokenMetadataIndexer");
19
- const SYMBOL_GENERIC_FA = 'XTZ';
20
- const NAME_GENERIC_FA = 'Generic FA';
21
- const MARKET_SYMBOL_GENERIC_FA = 'xtz';
22
- const DECIMALS_GENERIC_FA = NaN;
23
- class TezosFAProtocol extends TezosProtocol_1.TezosProtocol {
24
- constructor(options) {
25
- super(options);
26
- this.options = options;
27
- this.isSubProtocol = true;
28
- this.subProtocolType = coinlib_core_1.SubProtocolType.TOKEN;
29
- this.defaultSourceAddress = 'tz1Mj7RzPmMAqDUNFBn5t5VbXmWW4cSUAdtT';
30
- this.remoteDataFactory = new TezosContractRemoteDataFactory_1.TezosContractRemoteDataFactory();
31
- this.contractAddress = this.options.config.contractAddress;
32
- this.identifier = this.options.config.identifier;
33
- this.symbol = this.options.config.symbol ?? SYMBOL_GENERIC_FA;
34
- this.name = this.options.config.name ?? NAME_GENERIC_FA;
35
- this.marketSymbol = this.options.config.marketSymbol ?? MARKET_SYMBOL_GENERIC_FA;
36
- this.decimals = this.options.config.decimals ?? DECIMALS_GENERIC_FA;
37
- if (this.options.config.feeDefaults) {
38
- this.feeDefaults = this.options.config.feeDefaults;
69
+ var coinlib_core_1 = require("@airgap/coinlib-core");
70
+ var index_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/axios-0.19.0/index"));
71
+ var bignumber_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber"));
72
+ var errors_1 = require("@airgap/coinlib-core/errors");
73
+ var coinlib_error_1 = require("@airgap/coinlib-core/errors/coinlib-error");
74
+ var TezosContractRemoteDataFactory_1 = require("../contract/remote-data/TezosContractRemoteDataFactory");
75
+ var TezosContract_1 = require("../contract/TezosContract");
76
+ var TezosProtocol_1 = require("../TezosProtocol");
77
+ var TezosOperationType_1 = require("../types/TezosOperationType");
78
+ var utils_1 = require("../types/utils");
79
+ var BigMapTokenMetadataIndexer_1 = require("./metadata/BigMapTokenMetadataIndexer");
80
+ var ObjktTokenMetadataIndexer_1 = require("./metadata/ObjktTokenMetadataIndexer");
81
+ var SYMBOL_GENERIC_FA = 'XTZ';
82
+ var NAME_GENERIC_FA = 'Generic FA';
83
+ var MARKET_SYMBOL_GENERIC_FA = 'xtz';
84
+ var DECIMALS_GENERIC_FA = NaN;
85
+ var TezosFAProtocol = /** @class */ (function (_super) {
86
+ __extends(TezosFAProtocol, _super);
87
+ function TezosFAProtocol(options) {
88
+ var _this = this;
89
+ var _a, _b, _c, _d;
90
+ _this = _super.call(this, options) || this;
91
+ _this.options = options;
92
+ _this.isSubProtocol = true;
93
+ _this.subProtocolType = coinlib_core_1.SubProtocolType.TOKEN;
94
+ _this.defaultSourceAddress = 'tz1Mj7RzPmMAqDUNFBn5t5VbXmWW4cSUAdtT';
95
+ _this.remoteDataFactory = new TezosContractRemoteDataFactory_1.TezosContractRemoteDataFactory();
96
+ _this.contractAddress = _this.options.config.contractAddress;
97
+ _this.identifier = _this.options.config.identifier;
98
+ _this.symbol = (_a = _this.options.config.symbol) !== null && _a !== void 0 ? _a : SYMBOL_GENERIC_FA;
99
+ _this.name = (_b = _this.options.config.name) !== null && _b !== void 0 ? _b : NAME_GENERIC_FA;
100
+ _this.marketSymbol = (_c = _this.options.config.marketSymbol) !== null && _c !== void 0 ? _c : MARKET_SYMBOL_GENERIC_FA;
101
+ _this.decimals = (_d = _this.options.config.decimals) !== null && _d !== void 0 ? _d : DECIMALS_GENERIC_FA;
102
+ if (_this.options.config.feeDefaults) {
103
+ _this.feeDefaults = _this.options.config.feeDefaults;
39
104
  }
40
- this.contract = new TezosContract_1.TezosContract(this.options.config.contractAddress, this.options.network);
41
- this.tokenMetadataBigMapID = options.config.tokenMetadataBigMapID;
42
- this.objktTokenMetadataIndexer = new ObjktTokenMetadataIndexer_1.ObjktTokenMetadataIndexer(this.contractAddress);
43
- this.bigMapTokenMetadataIndexer = new BigMapTokenMetadataIndexer_1.BigMapTokenMetadataIndexer(this.contract, this.tokenMetadataBigMapID);
105
+ _this.contract = new TezosContract_1.TezosContract(_this.options.config.contractAddress, _this.options.network);
106
+ _this.tokenMetadataBigMapID = options.config.tokenMetadataBigMapID;
107
+ _this.objktTokenMetadataIndexer = new ObjktTokenMetadataIndexer_1.ObjktTokenMetadataIndexer(_this.contractAddress);
108
+ _this.bigMapTokenMetadataIndexer = new BigMapTokenMetadataIndexer_1.BigMapTokenMetadataIndexer(_this.contract, _this.tokenMetadataBigMapID);
109
+ return _this;
44
110
  }
45
- async getIsSubProtocol() {
46
- return this.isSubProtocol;
47
- }
48
- async getSubProtocolType() {
49
- return this.subProtocolType;
50
- }
51
- async getContractAddress() {
52
- return this.contractAddress;
53
- }
54
- async getOptions() {
55
- return this.options;
56
- }
57
- async bigMapValue(key, isKeyHash = false, bigMapID) {
58
- const bigMaps = await this.contract.getBigMaps();
59
- const bigMap = bigMapID !== undefined ? bigMaps.find((bigMap) => bigMap.id === bigMapID) : bigMaps[0];
60
- if (!bigMap) {
61
- return null;
62
- }
63
- const result = await this.contract.getBigMapValue({
64
- bigMap,
65
- key,
66
- resultType: 'micheline'
111
+ TezosFAProtocol.prototype.getIsSubProtocol = function () {
112
+ return __awaiter(this, void 0, void 0, function () {
113
+ return __generator(this, function (_a) {
114
+ return [2 /*return*/, this.isSubProtocol];
115
+ });
67
116
  });
68
- return result !== undefined ? result.value : null;
69
- }
70
- async contractMetadata(networkResolver) {
71
- return this.contract.metadata(networkResolver);
72
- }
73
- async estimateMaxTransactionValueFromPublicKey(publicKey, recipients, fee, data) {
74
- return this.getBalanceOfPublicKey(publicKey, data);
75
- }
76
- async getTransactionsFromPublicKey(publicKey, limit, cursor) {
77
- const addresses = (await this.getAddressesFromPublicKey(publicKey)).map((address) => address.address);
78
- return this.getTransactionsFromAddresses(addresses, limit, cursor);
79
- }
80
- async getTransactionsFromAddresses(addresses, limit, cursor) {
81
- const transactions = await this.contract.network.extras.indexerClient.getTokenTransactionsForAddress({ contractAddress: this.contract.address, id: 0 }, addresses[0], limit, cursor?.offset);
82
- return {
83
- transactions: transactions.map((transaction) => ({
84
- ...transaction,
85
- protocolIdentifier: this.identifier,
86
- network: this.options.network
87
- })),
88
- cursor: {
89
- offset: (cursor?.offset ?? 0) + transactions.length
90
- }
91
- };
92
- }
93
- async getTransactions(limit, cursor) {
94
- const transactions = await this.contract.network.extras.indexerClient.getTokenTransactions({ contractAddress: this.contract.address, id: 0 }, limit, cursor?.offset);
95
- return {
96
- transactions: transactions.map((transaction) => ({
97
- ...transaction,
98
- protocolIdentifier: this.identifier,
99
- network: this.options.network
100
- })),
101
- cursor: {
102
- offset: (cursor?.offset ?? 0) + transactions.length
103
- }
104
- };
105
- }
106
- async normalizeTransactionParameters(parameters, fallbackEntrypointName) {
107
- const parsedParameters = this.parseParameters(parameters);
108
- if (!(parsedParameters instanceof Object && 'value' in parsedParameters) && !(0, utils_1.isMichelineNode)(parsedParameters)) {
109
- throw new errors_1.InvalidValueError(coinlib_error_1.Domain.TEZOSFA, `Invalid parameters: ${JSON.stringify(parsedParameters)}`);
110
- }
111
- return this.contract.normalizeContractCallParameters(parsedParameters, fallbackEntrypointName);
112
- }
113
- async getAllTokenMetadata() {
114
- const objktMetadata = await this.objktTokenMetadataIndexer.getTokenMetadata();
115
- const missingTokenIDs = objktMetadata !== undefined
116
- ? new Set(Object.entries(objktMetadata)
117
- .filter(([_, metadata]) => !metadata.symbol && !metadata.name && !metadata.decimals)
118
- .map(([tokenID, _]) => parseInt(tokenID, 10)))
119
- : undefined;
120
- const bigMapMetadata = missingTokenIDs === undefined || missingTokenIDs.size > 0
121
- ? await this.bigMapTokenMetadataIndexer.getTokenMetadata(missingTokenIDs ? Array.from(missingTokenIDs) : undefined)
122
- : undefined;
123
- if (objktMetadata === undefined && bigMapMetadata === undefined) {
124
- return undefined;
125
- }
126
- return Object.entries(objktMetadata ?? {})
127
- .filter(([tokenID, _]) => !(missingTokenIDs?.has(parseInt(tokenID, 10)) ?? false))
128
- .concat(Object.entries(bigMapMetadata ?? {}))
129
- .reduce((obj, [tokenID, metadata]) => {
130
- return Object.assign(obj, {
131
- [parseInt(tokenID, 10)]: {
132
- symbol: metadata.symbol ?? '',
133
- name: metadata.name ?? '',
134
- decimals: metadata.decimals ?? 0
117
+ };
118
+ TezosFAProtocol.prototype.getSubProtocolType = function () {
119
+ return __awaiter(this, void 0, void 0, function () {
120
+ return __generator(this, function (_a) {
121
+ return [2 /*return*/, this.subProtocolType];
122
+ });
123
+ });
124
+ };
125
+ TezosFAProtocol.prototype.getContractAddress = function () {
126
+ return __awaiter(this, void 0, void 0, function () {
127
+ return __generator(this, function (_a) {
128
+ return [2 /*return*/, this.contractAddress];
129
+ });
130
+ });
131
+ };
132
+ TezosFAProtocol.prototype.getOptions = function () {
133
+ return __awaiter(this, void 0, void 0, function () {
134
+ return __generator(this, function (_a) {
135
+ return [2 /*return*/, this.options];
136
+ });
137
+ });
138
+ };
139
+ TezosFAProtocol.prototype.bigMapValue = function (key, isKeyHash, bigMapID) {
140
+ if (isKeyHash === void 0) { isKeyHash = false; }
141
+ return __awaiter(this, void 0, void 0, function () {
142
+ var bigMaps, bigMap, result;
143
+ return __generator(this, function (_a) {
144
+ switch (_a.label) {
145
+ case 0: return [4 /*yield*/, this.contract.getBigMaps()];
146
+ case 1:
147
+ bigMaps = _a.sent();
148
+ bigMap = bigMapID !== undefined ? bigMaps.find(function (bigMap) { return bigMap.id === bigMapID; }) : bigMaps[0];
149
+ if (!bigMap) {
150
+ return [2 /*return*/, null];
151
+ }
152
+ return [4 /*yield*/, this.contract.getBigMapValue({
153
+ bigMap: bigMap,
154
+ key: key,
155
+ resultType: 'micheline'
156
+ })];
157
+ case 2:
158
+ result = _a.sent();
159
+ return [2 /*return*/, result !== undefined ? result.value : null];
135
160
  }
136
161
  });
137
- }, {});
138
- }
139
- async getTokenMetadataForTokenID(tokenID) {
140
- const tokenMetadata = await this.getAllTokenMetadata();
141
- return tokenMetadata ? tokenMetadata[tokenID] : undefined;
142
- }
143
- async getTransactionOperationDetails(transactionOperation) {
144
- let partials = [];
145
- try {
146
- partials = transactionOperation.parameters ? (this.transactionDetailsFromParameters(transactionOperation.parameters) ?? []) : [];
147
- }
148
- catch { }
149
- if (partials.length === 0) {
150
- partials.push({});
151
- }
152
- return partials.map((partial) => {
153
- return {
154
- from: [transactionOperation.source],
155
- amount: transactionOperation.amount,
156
- to: [transactionOperation.destination],
157
- ...partial
158
- };
159
162
  });
160
- }
161
- parseParameters(parameters) {
162
- const toBeRemoved = 'Unparsable code: ';
163
+ };
164
+ TezosFAProtocol.prototype.contractMetadata = function (networkResolver) {
165
+ return __awaiter(this, void 0, void 0, function () {
166
+ return __generator(this, function (_a) {
167
+ return [2 /*return*/, this.contract.metadata(networkResolver)];
168
+ });
169
+ });
170
+ };
171
+ TezosFAProtocol.prototype.estimateMaxTransactionValueFromPublicKey = function (publicKey, recipients, fee, data) {
172
+ return __awaiter(this, void 0, void 0, function () {
173
+ return __generator(this, function (_a) {
174
+ return [2 /*return*/, this.getBalanceOfPublicKey(publicKey, data)];
175
+ });
176
+ });
177
+ };
178
+ TezosFAProtocol.prototype.getTransactionsFromPublicKey = function (publicKey, limit, cursor) {
179
+ return __awaiter(this, void 0, void 0, function () {
180
+ var addresses;
181
+ return __generator(this, function (_a) {
182
+ switch (_a.label) {
183
+ case 0: return [4 /*yield*/, this.getAddressesFromPublicKey(publicKey)];
184
+ case 1:
185
+ addresses = (_a.sent()).map(function (address) { return address.address; });
186
+ return [2 /*return*/, this.getTransactionsFromAddresses(addresses, limit, cursor)];
187
+ }
188
+ });
189
+ });
190
+ };
191
+ TezosFAProtocol.prototype.getTransactionsFromAddresses = function (addresses, limit, cursor) {
192
+ var _a;
193
+ return __awaiter(this, void 0, void 0, function () {
194
+ var transactions;
195
+ var _this = this;
196
+ return __generator(this, function (_b) {
197
+ switch (_b.label) {
198
+ case 0: return [4 /*yield*/, this.contract.network.extras.indexerClient.getTokenTransactionsForAddress({ contractAddress: this.contract.address, id: 0 }, addresses[0], limit, cursor === null || cursor === void 0 ? void 0 : cursor.offset)];
199
+ case 1:
200
+ transactions = _b.sent();
201
+ return [2 /*return*/, {
202
+ transactions: transactions.map(function (transaction) { return (__assign(__assign({}, transaction), { protocolIdentifier: _this.identifier, network: _this.options.network })); }),
203
+ cursor: {
204
+ offset: ((_a = cursor === null || cursor === void 0 ? void 0 : cursor.offset) !== null && _a !== void 0 ? _a : 0) + transactions.length
205
+ }
206
+ }];
207
+ }
208
+ });
209
+ });
210
+ };
211
+ TezosFAProtocol.prototype.getTransactions = function (limit, cursor) {
212
+ var _a;
213
+ return __awaiter(this, void 0, void 0, function () {
214
+ var transactions;
215
+ var _this = this;
216
+ return __generator(this, function (_b) {
217
+ switch (_b.label) {
218
+ case 0: return [4 /*yield*/, this.contract.network.extras.indexerClient.getTokenTransactions({ contractAddress: this.contract.address, id: 0 }, limit, cursor === null || cursor === void 0 ? void 0 : cursor.offset)];
219
+ case 1:
220
+ transactions = _b.sent();
221
+ return [2 /*return*/, {
222
+ transactions: transactions.map(function (transaction) { return (__assign(__assign({}, transaction), { protocolIdentifier: _this.identifier, network: _this.options.network })); }),
223
+ cursor: {
224
+ offset: ((_a = cursor === null || cursor === void 0 ? void 0 : cursor.offset) !== null && _a !== void 0 ? _a : 0) + transactions.length
225
+ }
226
+ }];
227
+ }
228
+ });
229
+ });
230
+ };
231
+ TezosFAProtocol.prototype.normalizeTransactionParameters = function (parameters, fallbackEntrypointName) {
232
+ return __awaiter(this, void 0, void 0, function () {
233
+ var parsedParameters;
234
+ return __generator(this, function (_a) {
235
+ parsedParameters = this.parseParameters(parameters);
236
+ if (!(parsedParameters instanceof Object && 'value' in parsedParameters) && !(0, utils_1.isMichelineNode)(parsedParameters)) {
237
+ throw new errors_1.InvalidValueError(coinlib_error_1.Domain.TEZOSFA, "Invalid parameters: ".concat(JSON.stringify(parsedParameters)));
238
+ }
239
+ return [2 /*return*/, this.contract.normalizeContractCallParameters(parsedParameters, fallbackEntrypointName)];
240
+ });
241
+ });
242
+ };
243
+ TezosFAProtocol.prototype.getAllTokenMetadata = function () {
244
+ return __awaiter(this, void 0, void 0, function () {
245
+ var objktMetadata, missingTokenIDs, bigMapMetadata, _a;
246
+ return __generator(this, function (_b) {
247
+ switch (_b.label) {
248
+ case 0: return [4 /*yield*/, this.objktTokenMetadataIndexer.getTokenMetadata()];
249
+ case 1:
250
+ objktMetadata = _b.sent();
251
+ missingTokenIDs = objktMetadata !== undefined
252
+ ? new Set(Object.entries(objktMetadata)
253
+ .filter(function (_a) {
254
+ var _ = _a[0], metadata = _a[1];
255
+ return !metadata.symbol && !metadata.name && !metadata.decimals;
256
+ })
257
+ .map(function (_a) {
258
+ var tokenID = _a[0], _ = _a[1];
259
+ return parseInt(tokenID, 10);
260
+ }))
261
+ : undefined;
262
+ if (!(missingTokenIDs === undefined || missingTokenIDs.size > 0)) return [3 /*break*/, 3];
263
+ return [4 /*yield*/, this.bigMapTokenMetadataIndexer.getTokenMetadata(missingTokenIDs ? Array.from(missingTokenIDs) : undefined)];
264
+ case 2:
265
+ _a = _b.sent();
266
+ return [3 /*break*/, 4];
267
+ case 3:
268
+ _a = undefined;
269
+ _b.label = 4;
270
+ case 4:
271
+ bigMapMetadata = _a;
272
+ if (objktMetadata === undefined && bigMapMetadata === undefined) {
273
+ return [2 /*return*/, undefined];
274
+ }
275
+ return [2 /*return*/, Object.entries(objktMetadata !== null && objktMetadata !== void 0 ? objktMetadata : {})
276
+ .filter(function (_a) {
277
+ var _b;
278
+ var tokenID = _a[0], _ = _a[1];
279
+ return !((_b = missingTokenIDs === null || missingTokenIDs === void 0 ? void 0 : missingTokenIDs.has(parseInt(tokenID, 10))) !== null && _b !== void 0 ? _b : false);
280
+ })
281
+ .concat(Object.entries(bigMapMetadata !== null && bigMapMetadata !== void 0 ? bigMapMetadata : {}))
282
+ .reduce(function (obj, _a) {
283
+ var _b;
284
+ var _c, _d, _e;
285
+ var tokenID = _a[0], metadata = _a[1];
286
+ return Object.assign(obj, (_b = {},
287
+ _b[parseInt(tokenID, 10)] = {
288
+ symbol: (_c = metadata.symbol) !== null && _c !== void 0 ? _c : '',
289
+ name: (_d = metadata.name) !== null && _d !== void 0 ? _d : '',
290
+ decimals: (_e = metadata.decimals) !== null && _e !== void 0 ? _e : 0
291
+ },
292
+ _b));
293
+ }, {})];
294
+ }
295
+ });
296
+ });
297
+ };
298
+ TezosFAProtocol.prototype.getTokenMetadataForTokenID = function (tokenID) {
299
+ return __awaiter(this, void 0, void 0, function () {
300
+ var tokenMetadata;
301
+ return __generator(this, function (_a) {
302
+ switch (_a.label) {
303
+ case 0: return [4 /*yield*/, this.getAllTokenMetadata()];
304
+ case 1:
305
+ tokenMetadata = _a.sent();
306
+ return [2 /*return*/, tokenMetadata ? tokenMetadata[tokenID] : undefined];
307
+ }
308
+ });
309
+ });
310
+ };
311
+ TezosFAProtocol.prototype.getTransactionOperationDetails = function (transactionOperation) {
312
+ var _a;
313
+ return __awaiter(this, void 0, void 0, function () {
314
+ var partials;
315
+ return __generator(this, function (_b) {
316
+ partials = [];
317
+ try {
318
+ partials = transactionOperation.parameters ? ((_a = this.transactionDetailsFromParameters(transactionOperation.parameters)) !== null && _a !== void 0 ? _a : []) : [];
319
+ }
320
+ catch (_c) { }
321
+ if (partials.length === 0) {
322
+ partials.push({});
323
+ }
324
+ return [2 /*return*/, partials.map(function (partial) {
325
+ return __assign({ from: [transactionOperation.source], amount: transactionOperation.amount, to: [transactionOperation.destination] }, partial);
326
+ })];
327
+ });
328
+ });
329
+ };
330
+ TezosFAProtocol.prototype.parseParameters = function (parameters) {
331
+ var toBeRemoved = 'Unparsable code: ';
163
332
  if (parameters.startsWith(toBeRemoved)) {
164
333
  parameters = parameters.slice(toBeRemoved.length);
165
334
  }
166
335
  return JSON.parse(parameters);
167
- }
168
- async runContractCall(contractCall, source) {
169
- const results = await Promise.all([
170
- index_1.default.get(this.url(`/chains/main/blocks/head/context/contracts/${source}/counter`)),
171
- index_1.default.get(this.url('/chains/main/blocks/head/header'))
172
- ]).catch((error) => {
173
- throw new errors_1.NetworkError(coinlib_error_1.Domain.TEZOS, error);
174
- });
175
- const counter = new bignumber_1.default(results[0].data).plus(1);
176
- const branch = results[1].data.hash;
177
- const chainID = results[1].data.chain_id;
178
- const body = this.prepareMockContractCall(contractCall, chainID, branch, counter, source, this.contractAddress);
179
- try {
180
- const response = await index_1.default.post(this.url('/chains/main/blocks/head/helpers/scripts/run_operation'), body, {
181
- headers: { 'Content-Type': 'application/json' }
182
- });
183
- const metadata = response.data.contents[0].metadata;
184
- if (metadata.internal_operation_results !== undefined && metadata.operation_result.status === 'applied') {
185
- return metadata.internal_operation_results[0].parameters.value;
186
- }
187
- else {
188
- throw new errors_1.NetworkError(coinlib_error_1.Domain.TEZOSFA, { response });
189
- }
190
- }
191
- catch (runOperationError) {
192
- throw new errors_1.NetworkError(coinlib_error_1.Domain.TEZOSFA, runOperationError);
193
- }
194
- }
195
- async prepareContractCall(contractCalls, fee, publicKey) {
196
- const operations = await Promise.all(contractCalls.map(async (contractCall) => {
197
- return {
198
- kind: TezosOperationType_1.TezosOperationType.TRANSACTION,
199
- fee,
200
- amount: '0',
201
- destination: this.contractAddress,
202
- parameters: contractCall.toJSON()
203
- };
204
- }));
205
- try {
206
- const tezosWrappedOperation = await this.prepareOperations(publicKey, operations, false);
207
- const binaryTx = await this.forgeTezosOperation(tezosWrappedOperation);
208
- return { binaryTransaction: binaryTx };
209
- }
210
- catch (error) {
211
- console.error(error.message);
212
- throw new errors_1.OperationFailedError(coinlib_error_1.Domain.TEZOSFA, 'Forging Tezos TX failed.');
336
+ };
337
+ TezosFAProtocol.prototype.runContractCall = function (contractCall, source) {
338
+ return __awaiter(this, void 0, void 0, function () {
339
+ var results, counter, branch, chainID, body, response, metadata, runOperationError_1;
340
+ return __generator(this, function (_a) {
341
+ switch (_a.label) {
342
+ case 0: return [4 /*yield*/, Promise.all([
343
+ index_1.default.get(this.url("/chains/main/blocks/head/context/contracts/".concat(source, "/counter"))),
344
+ index_1.default.get(this.url('/chains/main/blocks/head/header'))
345
+ ]).catch(function (error) {
346
+ throw new errors_1.NetworkError(coinlib_error_1.Domain.TEZOS, error);
347
+ })];
348
+ case 1:
349
+ results = _a.sent();
350
+ counter = new bignumber_1.default(results[0].data).plus(1);
351
+ branch = results[1].data.hash;
352
+ chainID = results[1].data.chain_id;
353
+ body = this.prepareMockContractCall(contractCall, chainID, branch, counter, source, this.contractAddress);
354
+ _a.label = 2;
355
+ case 2:
356
+ _a.trys.push([2, 4, , 5]);
357
+ return [4 /*yield*/, index_1.default.post(this.url('/chains/main/blocks/head/helpers/scripts/run_operation'), body, {
358
+ headers: { 'Content-Type': 'application/json' }
359
+ })];
360
+ case 3:
361
+ response = _a.sent();
362
+ metadata = response.data.contents[0].metadata;
363
+ if (metadata.internal_operation_results !== undefined && metadata.operation_result.status === 'applied') {
364
+ return [2 /*return*/, metadata.internal_operation_results[0].parameters.value];
365
+ }
366
+ else {
367
+ throw new errors_1.NetworkError(coinlib_error_1.Domain.TEZOSFA, { response: response });
368
+ }
369
+ return [3 /*break*/, 5];
370
+ case 4:
371
+ runOperationError_1 = _a.sent();
372
+ throw new errors_1.NetworkError(coinlib_error_1.Domain.TEZOSFA, runOperationError_1);
373
+ case 5: return [2 /*return*/];
374
+ }
375
+ });
376
+ });
377
+ };
378
+ TezosFAProtocol.prototype.prepareContractCall = function (contractCalls, fee, publicKey) {
379
+ return __awaiter(this, void 0, void 0, function () {
380
+ var operations, tezosWrappedOperation, binaryTx, error_1;
381
+ var _this = this;
382
+ return __generator(this, function (_a) {
383
+ switch (_a.label) {
384
+ case 0: return [4 /*yield*/, Promise.all(contractCalls.map(function (contractCall) { return __awaiter(_this, void 0, void 0, function () {
385
+ return __generator(this, function (_a) {
386
+ return [2 /*return*/, {
387
+ kind: TezosOperationType_1.TezosOperationType.TRANSACTION,
388
+ fee: fee,
389
+ amount: '0',
390
+ destination: this.contractAddress,
391
+ parameters: contractCall.toJSON()
392
+ }];
393
+ });
394
+ }); }))];
395
+ case 1:
396
+ operations = _a.sent();
397
+ _a.label = 2;
398
+ case 2:
399
+ _a.trys.push([2, 5, , 6]);
400
+ return [4 /*yield*/, this.prepareOperations(publicKey, operations, false)];
401
+ case 3:
402
+ tezosWrappedOperation = _a.sent();
403
+ return [4 /*yield*/, this.forgeTezosOperation(tezosWrappedOperation)];
404
+ case 4:
405
+ binaryTx = _a.sent();
406
+ return [2 /*return*/, { binaryTransaction: binaryTx }];
407
+ case 5:
408
+ error_1 = _a.sent();
409
+ console.error(error_1.message);
410
+ throw new errors_1.OperationFailedError(coinlib_error_1.Domain.TEZOSFA, 'Forging Tezos TX failed.');
411
+ case 6: return [2 /*return*/];
412
+ }
413
+ });
414
+ });
415
+ };
416
+ TezosFAProtocol.prototype.requireSource = function (source, defaultSource) {
417
+ var excludedPrefixes = [];
418
+ for (var _i = 2; _i < arguments.length; _i++) {
419
+ excludedPrefixes[_i - 2] = arguments[_i];
213
420
  }
214
- }
215
- requireSource(source, defaultSource, ...excludedPrefixes) {
216
- const _source = source ?? defaultSource;
217
- return _source === undefined || excludedPrefixes.some((excluded) => _source.toLowerCase().startsWith(excluded.toLowerCase()))
421
+ var _source = source !== null && source !== void 0 ? source : defaultSource;
422
+ return _source === undefined || excludedPrefixes.some(function (excluded) { return _source.toLowerCase().startsWith(excluded.toLowerCase()); })
218
423
  ? this.defaultSourceAddress
219
424
  : _source;
220
- }
221
- prepareMockContractCall(contractCall, chainID, branch, counter, source, contractAddress, fee = '0') {
425
+ };
426
+ TezosFAProtocol.prototype.prepareMockContractCall = function (contractCall, chainID, branch, counter, source, contractAddress, fee) {
427
+ if (fee === void 0) { fee = '0'; }
222
428
  return {
223
429
  chain_id: chainID,
224
430
  operation: {
225
- branch,
226
- signature: 'sigUHx32f9wesZ1n2BWpixXz4AQaZggEtchaQNHYGRCoWNAXx45WGW2ua3apUUUAGMLPwAU41QoaFCzVSL61VaessLg4YbbP', // signature will not be checked, so it is ok to always use this one
431
+ branch: branch,
432
+ signature: 'sigUHx32f9wesZ1n2BWpixXz4AQaZggEtchaQNHYGRCoWNAXx45WGW2ua3apUUUAGMLPwAU41QoaFCzVSL61VaessLg4YbbP',
227
433
  contents: [
228
434
  {
229
435
  kind: TezosOperationType_1.TezosOperationType.TRANSACTION,
230
436
  counter: counter.toFixed(),
231
437
  amount: '0',
232
- source,
438
+ source: source,
233
439
  destination: contractAddress,
234
- fee,
440
+ fee: fee,
235
441
  gas_limit: '400000',
236
442
  storage_limit: '60000',
237
443
  parameters: contractCall.toJSON()
@@ -239,10 +445,11 @@ class TezosFAProtocol extends TezosProtocol_1.TezosProtocol {
239
445
  ]
240
446
  }
241
447
  };
242
- }
243
- url(path) {
244
- return `${this.jsonRPCAPI}${path}`;
245
- }
246
- }
448
+ };
449
+ TezosFAProtocol.prototype.url = function (path) {
450
+ return "".concat(this.jsonRPCAPI).concat(path);
451
+ };
452
+ return TezosFAProtocol;
453
+ }(TezosProtocol_1.TezosProtocol));
247
454
  exports.TezosFAProtocol = TezosFAProtocol;
248
455
  //# sourceMappingURL=TezosFAProtocol.js.map