react-native-zcash 0.3.3 → 0.3.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 (514) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/LICENSE +22 -0
  3. package/README.md +47 -14
  4. package/android/build.gradle +1 -1
  5. package/android/src/main/assets/saplingtree/mainnet/1310000.json +7 -0
  6. package/android/src/main/assets/saplingtree/mainnet/1320000.json +7 -0
  7. package/android/src/main/assets/saplingtree/mainnet/1330000.json +7 -0
  8. package/android/src/main/assets/saplingtree/mainnet/1340000.json +7 -0
  9. package/android/src/main/assets/saplingtree/mainnet/1350000.json +7 -0
  10. package/android/src/main/assets/saplingtree/mainnet/1360000.json +7 -0
  11. package/android/src/main/assets/saplingtree/mainnet/1370000.json +7 -0
  12. package/android/src/main/assets/saplingtree/mainnet/1380000.json +7 -0
  13. package/android/src/main/assets/saplingtree/mainnet/1390000.json +7 -0
  14. package/android/src/main/assets/saplingtree/mainnet/1400000.json +7 -0
  15. package/android/src/main/assets/saplingtree/mainnet/1410000.json +7 -0
  16. package/android/src/main/assets/saplingtree/mainnet/1420000.json +7 -0
  17. package/android/src/main/assets/saplingtree/mainnet/1430000.json +7 -0
  18. package/android/src/main/assets/saplingtree/mainnet/1440000.json +7 -0
  19. package/android/src/main/assets/saplingtree/mainnet/1450000.json +7 -0
  20. package/android/src/main/assets/saplingtree/mainnet/1460000.json +7 -0
  21. package/android/src/main/assets/saplingtree/mainnet/1470000.json +7 -0
  22. package/android/src/main/assets/saplingtree/mainnet/1480000.json +7 -0
  23. package/android/src/main/assets/saplingtree/mainnet/1490000.json +7 -0
  24. package/android/src/main/assets/saplingtree/mainnet/1500000.json +7 -0
  25. package/android/src/main/assets/saplingtree/mainnet/1510000.json +7 -0
  26. package/android/src/main/assets/saplingtree/mainnet/1520000.json +7 -0
  27. package/android/src/main/assets/saplingtree/mainnet/1530000.json +7 -0
  28. package/android/src/main/assets/saplingtree/mainnet/1540000.json +7 -0
  29. package/android/src/main/assets/saplingtree/mainnet/1550000.json +7 -0
  30. package/android/src/main/assets/saplingtree/mainnet/1560000.json +7 -0
  31. package/android/src/main/assets/saplingtree/mainnet/1570000.json +7 -0
  32. package/android/src/main/assets/saplingtree/mainnet/1580000.json +7 -0
  33. package/android/src/main/assets/saplingtree/mainnet/1590000.json +7 -0
  34. package/android/src/main/assets/saplingtree/mainnet/1600000.json +7 -0
  35. package/android/src/main/assets/saplingtree/mainnet/1610000.json +7 -0
  36. package/android/src/main/assets/saplingtree/mainnet/1620000.json +7 -0
  37. package/android/src/main/assets/saplingtree/mainnet/1630000.json +7 -0
  38. package/android/src/main/assets/saplingtree/mainnet/1640000.json +7 -0
  39. package/android/src/main/assets/saplingtree/mainnet/1650000.json +7 -0
  40. package/android/src/main/assets/saplingtree/mainnet/1660000.json +7 -0
  41. package/android/src/main/assets/saplingtree/mainnet/1670000.json +7 -0
  42. package/android/src/main/assets/saplingtree/mainnet/1680000.json +7 -0
  43. package/android/src/main/assets/saplingtree/mainnet/1690000.json +7 -0
  44. package/android/src/main/assets/saplingtree/mainnet/1700000.json +7 -0
  45. package/android/src/main/assets/saplingtree/mainnet/1710000.json +7 -0
  46. package/android/src/main/assets/saplingtree/mainnet/1720000.json +7 -0
  47. package/android/src/main/assets/saplingtree/mainnet/1730000.json +7 -0
  48. package/android/src/main/assets/saplingtree/mainnet/1740000.json +7 -0
  49. package/android/src/main/assets/saplingtree/mainnet/1750000.json +7 -0
  50. package/android/src/main/assets/saplingtree/mainnet/1760000.json +7 -0
  51. package/android/src/main/assets/saplingtree/mainnet/1770000.json +7 -0
  52. package/android/src/main/assets/saplingtree/mainnet/1780000.json +7 -0
  53. package/android/src/main/assets/saplingtree/mainnet/1790000.json +7 -0
  54. package/android/src/main/assets/saplingtree/mainnet/1800000.json +7 -0
  55. package/android/src/main/assets/saplingtree/mainnet/1810000.json +7 -0
  56. package/android/src/main/assets/saplingtree/mainnet/1820000.json +7 -0
  57. package/android/src/main/assets/saplingtree/mainnet/1830000.json +7 -0
  58. package/android/src/main/assets/saplingtree/mainnet/1840000.json +7 -0
  59. package/android/src/main/assets/saplingtree/mainnet/1850000.json +7 -0
  60. package/android/src/main/assets/saplingtree/mainnet/1860000.json +7 -0
  61. package/android/src/main/assets/saplingtree/mainnet/1870000.json +7 -0
  62. package/android/src/main/assets/saplingtree/mainnet/1880000.json +7 -0
  63. package/android/src/main/assets/saplingtree/mainnet/1890000.json +7 -0
  64. package/android/src/main/assets/saplingtree/mainnet/1900000.json +7 -0
  65. package/android/src/main/assets/saplingtree/mainnet/1910000.json +7 -0
  66. package/android/src/main/assets/saplingtree/mainnet/1920000.json +7 -0
  67. package/android/src/main/assets/saplingtree/mainnet/1930000.json +7 -0
  68. package/android/src/main/assets/saplingtree/mainnet/1940000.json +7 -0
  69. package/android/src/main/assets/saplingtree/mainnet/1950000.json +7 -0
  70. package/android/src/main/assets/saplingtree/mainnet/1960000.json +7 -0
  71. package/android/src/main/assets/saplingtree/mainnet/1970000.json +7 -0
  72. package/android/src/main/assets/saplingtree/mainnet/1980000.json +7 -0
  73. package/android/src/main/assets/saplingtree/mainnet/1990000.json +7 -0
  74. package/android/src/main/assets/saplingtree/mainnet/2000000.json +7 -0
  75. package/android/src/main/assets/saplingtree/mainnet/2010000.json +7 -0
  76. package/android/src/main/assets/saplingtree/mainnet/2020000.json +7 -0
  77. package/android/src/main/assets/saplingtree/mainnet/2030000.json +7 -0
  78. package/android/src/main/assets/saplingtree/mainnet/2040000.json +7 -0
  79. package/android/src/main/assets/saplingtree/mainnet/2050000.json +7 -0
  80. package/android/src/main/assets/saplingtree/mainnet/2060000.json +7 -0
  81. package/android/src/main/assets/saplingtree/mainnet/2070000.json +7 -0
  82. package/android/src/main/assets/saplingtree/mainnet/2080000.json +7 -0
  83. package/android/src/main/assets/saplingtree/mainnet/2090000.json +7 -0
  84. package/android/src/main/assets/saplingtree/mainnet/2100000.json +7 -0
  85. package/android/src/main/assets/saplingtree/mainnet/2110000.json +7 -0
  86. package/android/src/main/assets/saplingtree/mainnet/2120000.json +7 -0
  87. package/android/src/main/assets/saplingtree/mainnet/2130000.json +7 -0
  88. package/android/src/main/assets/saplingtree/mainnet/2140000.json +7 -0
  89. package/android/src/main/assets/saplingtree/mainnet/2150000.json +7 -0
  90. package/android/src/main/assets/saplingtree/mainnet/2160000.json +7 -0
  91. package/android/src/main/assets/saplingtree/mainnet/2170000.json +7 -0
  92. package/ios/RNZcash.m +0 -1
  93. package/ios/RNZcash.swift +14 -15
  94. package/ios/ZCashLightClientKit/Block/DatabaseStorage/CompactBlockStorage.swift +123 -0
  95. package/ios/ZCashLightClientKit/Block/DatabaseStorage/DatabaseMigrationManager.swift +222 -0
  96. package/ios/ZCashLightClientKit/Block/DatabaseStorage/StorageError.swift +22 -0
  97. package/ios/ZCashLightClientKit/Block/DatabaseStorage/StorageManager.swift +73 -0
  98. package/ios/ZCashLightClientKit/Block/Downloader/BlockDownloader.swift +240 -0
  99. package/ios/ZCashLightClientKit/Block/Downloader/CompactBlockDownloaderBuilder.swift +26 -0
  100. package/ios/ZCashLightClientKit/Block/Processor/CompactBlockDownloadOperation.swift +258 -0
  101. package/ios/ZCashLightClientKit/Block/Processor/CompactBlockEnhancementOperation.swift +157 -0
  102. package/ios/ZCashLightClientKit/Block/Processor/CompactBlockProcessor.swift +1454 -0
  103. package/ios/ZCashLightClientKit/Block/Processor/CompactBlockScanningOperation.swift +238 -0
  104. package/ios/ZCashLightClientKit/Block/Processor/CompactBlockValidationInformation.swift +66 -0
  105. package/ios/ZCashLightClientKit/Block/Processor/FetchUnspentTxOutputsOperation.swift +103 -0
  106. package/ios/ZCashLightClientKit/Block/Processor/FigureNextBatchOperation.swift +58 -0
  107. package/ios/ZCashLightClientKit/Block/Processor/ZcashOperation.swift +68 -0
  108. package/ios/ZCashLightClientKit/Constants/WalletBirthday+Constants.swift +58 -0
  109. package/ios/ZCashLightClientKit/Constants/WalletBirthday+mainnet.swift +20 -0
  110. package/ios/ZCashLightClientKit/Constants/WalletBirthday+testnet.swift +20 -0
  111. package/ios/ZCashLightClientKit/Constants/ZcashSDK.swift +245 -0
  112. package/ios/ZCashLightClientKit/DAO/BlockDao.swift +67 -0
  113. package/ios/ZCashLightClientKit/DAO/CompactBlockDAO.swift +24 -0
  114. package/ios/ZCashLightClientKit/DAO/NotesDao.swift +142 -0
  115. package/ios/ZCashLightClientKit/DAO/PagedTransactionDao.swift +62 -0
  116. package/ios/ZCashLightClientKit/DAO/PendingTransactionDao.swift +213 -0
  117. package/ios/ZCashLightClientKit/DAO/TransactionBuilder.swift +169 -0
  118. package/ios/ZCashLightClientKit/DAO/TransactionDao.swift +393 -0
  119. package/ios/ZCashLightClientKit/DAO/UnspentTransactionOutputDao.swift +188 -0
  120. package/ios/ZCashLightClientKit/Entity/AccountEntity.swift +201 -0
  121. package/ios/ZCashLightClientKit/Entity/CompactBlockEntity.swift +13 -0
  122. package/ios/ZCashLightClientKit/Entity/EncodedTransactionEntity.swift +26 -0
  123. package/ios/ZCashLightClientKit/Entity/PendingTransactionEntity.swift +205 -0
  124. package/ios/ZCashLightClientKit/Entity/ReceivedNoteEntity.swift +22 -0
  125. package/ios/ZCashLightClientKit/Entity/SentNoteEntity.swift +45 -0
  126. package/ios/ZCashLightClientKit/Entity/TransactionEntity.swift +161 -0
  127. package/ios/ZCashLightClientKit/Entity/UnspentTransactionOutputEntity.swift +17 -0
  128. package/ios/ZCashLightClientKit/Extensions/Data+Zcash.swift +17 -0
  129. package/ios/ZCashLightClientKit/Extensions/Data+internal.swift +35 -0
  130. package/ios/ZCashLightClientKit/Extensions/HexEncode.swift +41 -0
  131. package/ios/ZCashLightClientKit/Extensions/ZcashRust+Utils.swift +26 -0
  132. package/ios/ZCashLightClientKit/Extensions/ZcashSDK+extensions.swift +34 -0
  133. package/ios/ZCashLightClientKit/Initializer.swift +357 -0
  134. package/ios/ZCashLightClientKit/Model/WalletTypes.swift +108 -0
  135. package/ios/ZCashLightClientKit/Providers/ResourceProvider.swift +47 -0
  136. package/ios/ZCashLightClientKit/Repository/BlockRepository.swift +13 -0
  137. package/ios/ZCashLightClientKit/Repository/CompactBlockRepository.swift +75 -0
  138. package/ios/ZCashLightClientKit/Repository/NotesRepository.swift +16 -0
  139. package/ios/ZCashLightClientKit/Repository/PaginatedTransactionRepository.swift +35 -0
  140. package/ios/ZCashLightClientKit/Repository/PendingTransactionRepository.swift +19 -0
  141. package/ios/ZCashLightClientKit/Repository/TransactionRepository.swift +30 -0
  142. package/ios/ZCashLightClientKit/Repository/TransactionRepositoryBuilder.swift +24 -0
  143. package/ios/ZCashLightClientKit/Repository/UnspentTransactionOutputRepository.swift +18 -0
  144. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1000000.json +7 -0
  145. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1010000.json +7 -0
  146. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1020000.json +7 -0
  147. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1030000.json +7 -0
  148. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1040000.json +7 -0
  149. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1050000.json +7 -0
  150. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1060000.json +7 -0
  151. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1070000.json +7 -0
  152. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1080000.json +7 -0
  153. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1090000.json +7 -0
  154. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1100000.json +7 -0
  155. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1110000.json +7 -0
  156. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1120000.json +7 -0
  157. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1130000.json +7 -0
  158. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1140000.json +7 -0
  159. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1150000.json +7 -0
  160. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1160000.json +7 -0
  161. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1170000.json +7 -0
  162. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1180000.json +7 -0
  163. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1190000.json +7 -0
  164. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1200000.json +7 -0
  165. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1210000.json +7 -0
  166. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1220000.json +7 -0
  167. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1230000.json +7 -0
  168. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1240000.json +7 -0
  169. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1250000.json +7 -0
  170. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1260000.json +7 -0
  171. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1270000.json +7 -0
  172. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1280000.json +7 -0
  173. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1290000.json +7 -0
  174. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1300000.json +7 -0
  175. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1310000.json +7 -0
  176. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1320000.json +7 -0
  177. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1330000.json +7 -0
  178. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1340000.json +7 -0
  179. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1350000.json +7 -0
  180. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1360000.json +7 -0
  181. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1370000.json +7 -0
  182. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1380000.json +7 -0
  183. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1390000.json +7 -0
  184. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1400000.json +7 -0
  185. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1410000.json +7 -0
  186. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1420000.json +7 -0
  187. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1430000.json +7 -0
  188. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1440000.json +7 -0
  189. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1450000.json +7 -0
  190. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1460000.json +7 -0
  191. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1470000.json +7 -0
  192. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1480000.json +7 -0
  193. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1490000.json +7 -0
  194. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1500000.json +7 -0
  195. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1510000.json +7 -0
  196. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1520000.json +7 -0
  197. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1530000.json +7 -0
  198. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1540000.json +7 -0
  199. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1550000.json +7 -0
  200. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1560000.json +7 -0
  201. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1570000.json +7 -0
  202. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1580000.json +7 -0
  203. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1590000.json +7 -0
  204. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1600000.json +7 -0
  205. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1610000.json +7 -0
  206. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1620000.json +7 -0
  207. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1630000.json +7 -0
  208. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1640000.json +7 -0
  209. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1650000.json +7 -0
  210. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1660000.json +7 -0
  211. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1670000.json +7 -0
  212. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1680000.json +7 -0
  213. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1690000.json +7 -0
  214. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1700000.json +7 -0
  215. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1710000.json +7 -0
  216. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1720000.json +7 -0
  217. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1730000.json +7 -0
  218. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1740000.json +7 -0
  219. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1750000.json +7 -0
  220. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1760000.json +7 -0
  221. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1770000.json +7 -0
  222. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1780000.json +7 -0
  223. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1790000.json +7 -0
  224. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1800000.json +7 -0
  225. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1810000.json +7 -0
  226. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1820000.json +7 -0
  227. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1830000.json +7 -0
  228. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1840000.json +7 -0
  229. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1850000.json +7 -0
  230. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1860000.json +7 -0
  231. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1870000.json +7 -0
  232. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1880000.json +7 -0
  233. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1890000.json +7 -0
  234. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1900000.json +7 -0
  235. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1910000.json +7 -0
  236. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1920000.json +7 -0
  237. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1930000.json +7 -0
  238. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1940000.json +7 -0
  239. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1950000.json +7 -0
  240. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1960000.json +7 -0
  241. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1970000.json +7 -0
  242. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1980000.json +7 -0
  243. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/1990000.json +7 -0
  244. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2000000.json +7 -0
  245. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2010000.json +7 -0
  246. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2020000.json +7 -0
  247. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2030000.json +7 -0
  248. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2040000.json +7 -0
  249. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2050000.json +7 -0
  250. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2060000.json +7 -0
  251. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2070000.json +7 -0
  252. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2080000.json +7 -0
  253. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2090000.json +7 -0
  254. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2100000.json +7 -0
  255. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2110000.json +7 -0
  256. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2120000.json +7 -0
  257. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2130000.json +7 -0
  258. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2140000.json +7 -0
  259. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2150000.json +7 -0
  260. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2160000.json +7 -0
  261. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/2170000.json +7 -0
  262. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/419200.json +7 -0
  263. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/500000.json +7 -0
  264. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/510000.json +7 -0
  265. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/520000.json +7 -0
  266. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/530000.json +7 -0
  267. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/540000.json +7 -0
  268. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/550000.json +7 -0
  269. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/560000.json +7 -0
  270. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/570000.json +7 -0
  271. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/580000.json +7 -0
  272. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/590000.json +7 -0
  273. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/600000.json +7 -0
  274. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/610000.json +7 -0
  275. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/620000.json +7 -0
  276. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/630000.json +7 -0
  277. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/640000.json +7 -0
  278. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/650000.json +7 -0
  279. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/660000.json +7 -0
  280. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/663150.json +8 -0
  281. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/670000.json +7 -0
  282. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/680000.json +7 -0
  283. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/690000.json +7 -0
  284. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/700000.json +7 -0
  285. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/710000.json +7 -0
  286. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/720000.json +7 -0
  287. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/730000.json +7 -0
  288. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/740000.json +7 -0
  289. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/750000.json +7 -0
  290. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/760000.json +7 -0
  291. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/770000.json +7 -0
  292. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/780000.json +7 -0
  293. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/790000.json +7 -0
  294. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/800000.json +7 -0
  295. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/810000.json +7 -0
  296. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/820000.json +7 -0
  297. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/830000.json +7 -0
  298. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/840000.json +7 -0
  299. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/850000.json +7 -0
  300. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/860000.json +7 -0
  301. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/870000.json +7 -0
  302. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/880000.json +7 -0
  303. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/890000.json +7 -0
  304. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/900000.json +7 -0
  305. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/910000.json +7 -0
  306. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/920000.json +7 -0
  307. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/930000.json +7 -0
  308. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/940000.json +7 -0
  309. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/950000.json +7 -0
  310. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/960000.json +7 -0
  311. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/970000.json +7 -0
  312. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/980000.json +7 -0
  313. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/mainnet/990000.json +7 -0
  314. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1000000.json +7 -0
  315. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1010000.json +7 -0
  316. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1020000.json +7 -0
  317. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1030000.json +7 -0
  318. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1040000.json +7 -0
  319. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1050000.json +7 -0
  320. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1060000.json +7 -0
  321. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1070000.json +7 -0
  322. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1080000.json +7 -0
  323. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1090000.json +7 -0
  324. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1100000.json +7 -0
  325. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1110000.json +7 -0
  326. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1120000.json +7 -0
  327. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1130000.json +7 -0
  328. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1140000.json +7 -0
  329. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1150000.json +7 -0
  330. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1160000.json +7 -0
  331. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1170000.json +7 -0
  332. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1180000.json +7 -0
  333. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1190000.json +7 -0
  334. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1200000.json +7 -0
  335. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1210000.json +7 -0
  336. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1220000.json +7 -0
  337. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1230000.json +7 -0
  338. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1240000.json +7 -0
  339. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1250000.json +7 -0
  340. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1260000.json +7 -0
  341. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1270000.json +7 -0
  342. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1280000.json +7 -0
  343. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1290000.json +7 -0
  344. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1300000.json +7 -0
  345. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1310000.json +7 -0
  346. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1320000.json +7 -0
  347. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1330000.json +7 -0
  348. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1340000.json +7 -0
  349. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1350000.json +7 -0
  350. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1360000.json +7 -0
  351. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1370000.json +7 -0
  352. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1380000.json +7 -0
  353. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1390000.json +7 -0
  354. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1400000.json +7 -0
  355. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1410000.json +7 -0
  356. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1420000.json +7 -0
  357. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1430000.json +7 -0
  358. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1440000.json +7 -0
  359. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1450000.json +7 -0
  360. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1460000.json +7 -0
  361. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1470000.json +7 -0
  362. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1480000.json +7 -0
  363. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1490000.json +7 -0
  364. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1500000.json +7 -0
  365. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1510000.json +7 -0
  366. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1520000.json +7 -0
  367. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1530000.json +7 -0
  368. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1540000.json +7 -0
  369. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1550000.json +7 -0
  370. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1560000.json +7 -0
  371. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1570000.json +7 -0
  372. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1580000.json +7 -0
  373. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1590000.json +7 -0
  374. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1600000.json +7 -0
  375. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1610000.json +7 -0
  376. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1620000.json +7 -0
  377. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1630000.json +7 -0
  378. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1640000.json +7 -0
  379. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1650000.json +7 -0
  380. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1660000.json +7 -0
  381. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1670000.json +7 -0
  382. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1680000.json +7 -0
  383. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1690000.json +7 -0
  384. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1700000.json +7 -0
  385. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1710000.json +7 -0
  386. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1720000.json +7 -0
  387. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1730000.json +7 -0
  388. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1740000.json +7 -0
  389. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1750000.json +7 -0
  390. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1760000.json +7 -0
  391. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1770000.json +7 -0
  392. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1780000.json +7 -0
  393. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1790000.json +7 -0
  394. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1800000.json +7 -0
  395. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1810000.json +7 -0
  396. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1820000.json +7 -0
  397. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1830000.json +7 -0
  398. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1840000.json +7 -0
  399. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1850000.json +7 -0
  400. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/1860000.json +7 -0
  401. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/280000.json +7 -0
  402. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/290000.json +7 -0
  403. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/300000.json +7 -0
  404. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/310000.json +7 -0
  405. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/320000.json +7 -0
  406. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/330000.json +7 -0
  407. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/340000.json +7 -0
  408. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/350000.json +7 -0
  409. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/360000.json +7 -0
  410. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/370000.json +7 -0
  411. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/380000.json +7 -0
  412. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/390000.json +7 -0
  413. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/400000.json +7 -0
  414. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/410000.json +7 -0
  415. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/420000.json +7 -0
  416. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/430000.json +7 -0
  417. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/440000.json +7 -0
  418. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/450000.json +7 -0
  419. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/460000.json +7 -0
  420. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/470000.json +7 -0
  421. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/480000.json +7 -0
  422. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/490000.json +7 -0
  423. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/500000.json +7 -0
  424. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/510000.json +7 -0
  425. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/520000.json +7 -0
  426. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/530000.json +7 -0
  427. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/540000.json +7 -0
  428. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/550000.json +7 -0
  429. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/560000.json +7 -0
  430. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/570000.json +7 -0
  431. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/580000.json +7 -0
  432. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/590000.json +7 -0
  433. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/600000.json +7 -0
  434. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/610000.json +7 -0
  435. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/620000.json +7 -0
  436. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/630000.json +7 -0
  437. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/640000.json +7 -0
  438. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/650000.json +7 -0
  439. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/660000.json +7 -0
  440. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/670000.json +7 -0
  441. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/680000.json +7 -0
  442. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/690000.json +7 -0
  443. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/700000.json +7 -0
  444. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/710000.json +7 -0
  445. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/720000.json +7 -0
  446. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/730000.json +7 -0
  447. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/740000.json +7 -0
  448. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/750000.json +7 -0
  449. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/760000.json +7 -0
  450. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/770000.json +7 -0
  451. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/780000.json +7 -0
  452. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/790000.json +7 -0
  453. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/800000.json +7 -0
  454. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/810000.json +7 -0
  455. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/820000.json +7 -0
  456. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/830000.json +7 -0
  457. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/840000.json +7 -0
  458. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/850000.json +7 -0
  459. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/860000.json +7 -0
  460. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/870000.json +7 -0
  461. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/880000.json +7 -0
  462. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/890000.json +7 -0
  463. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/900000.json +7 -0
  464. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/910000.json +7 -0
  465. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/920000.json +7 -0
  466. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/930000.json +7 -0
  467. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/940000.json +7 -0
  468. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/950000.json +7 -0
  469. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/960000.json +7 -0
  470. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/970000.json +7 -0
  471. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/980000.json +7 -0
  472. package/ios/ZCashLightClientKit/Resources/saplingtree-checkpoints/testnet/990000.json +7 -0
  473. package/ios/ZCashLightClientKit/Rust/ZcashRustBackend.swift +718 -0
  474. package/ios/ZCashLightClientKit/Rust/ZcashRustBackendWelding.swift +389 -0
  475. package/ios/ZCashLightClientKit/Rust/zcashlc.h +385 -0
  476. package/ios/ZCashLightClientKit/Service/LightWalletGRPCService.swift +551 -0
  477. package/ios/ZCashLightClientKit/Service/LightWalletService.swift +214 -0
  478. package/ios/ZCashLightClientKit/Service/Model/ZcashCompactBlock.swift +46 -0
  479. package/ios/ZCashLightClientKit/Service/ProtoBuf/Extensions/Protocolbuffer+Extensions.swift +50 -0
  480. package/ios/ZCashLightClientKit/Service/ProtoBuf/compact_formats.pb.swift +332 -0
  481. package/ios/ZCashLightClientKit/Service/ProtoBuf/proto/compact_formats.proto +56 -0
  482. package/ios/ZCashLightClientKit/Service/ProtoBuf/proto/service.proto +180 -0
  483. package/ios/ZCashLightClientKit/Service/ProtoBuf/service.grpc.swift +383 -0
  484. package/ios/ZCashLightClientKit/Service/ProtoBuf/service.pb.swift +1173 -0
  485. package/ios/ZCashLightClientKit/Synchronizer/SDKSynchronizer.swift +929 -0
  486. package/ios/ZCashLightClientKit/Synchronizer.swift +430 -0
  487. package/ios/ZCashLightClientKit/Tool/DerivationTool.swift +344 -0
  488. package/ios/ZCashLightClientKit/Transaction/PersistentTransactionManager.swift +339 -0
  489. package/ios/ZCashLightClientKit/Transaction/TransactionEncoder.swift +116 -0
  490. package/ios/ZCashLightClientKit/Transaction/TransactionManager.swift +42 -0
  491. package/ios/ZCashLightClientKit/Transaction/WalletTransactionEncoder.swift +216 -0
  492. package/ios/ZCashLightClientKit/Utils/Bundle+module.swift +30 -0
  493. package/ios/ZCashLightClientKit/Utils/LoggingProxy.swift +47 -0
  494. package/ios/ZCashLightClientKit/Utils/SaplingParameterDownloader.swift +124 -0
  495. package/ios/libzcashlc.xcframework/Info.plist +40 -0
  496. package/ios/libzcashlc.xcframework/ios-arm64/libzcashlc.a +0 -0
  497. package/ios/libzcashlc.xcframework/ios-arm64_x86_64-simulator/libzcashlc.a +0 -0
  498. package/ios/react-native-zcash-Bridging-Header.h +2 -0
  499. package/ios/react-native-zcash.xcodeproj/project.pbxproj +1 -0
  500. package/lib/scripts/copyCheckpoints.d.ts +5 -0
  501. package/lib/scripts/updateCheckpoints.d.ts +1 -0
  502. package/lib/scripts/updateSources.d.ts +1 -0
  503. package/package.json +21 -32
  504. package/react-native-zcash.podspec +17 -7
  505. package/ios/RNZcash-Bridging-Header.h +0 -6
  506. package/ios/RNZcash.xcodeproj/project.pbxproj +0 -271
  507. package/ios/RNZcash.xcworkspace/contents.xcworkspacedata +0 -7
  508. package/ios/RNZcash.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  509. package/lib/src/browser.d.ts +0 -0
  510. package/lib/src/index.d.ts +0 -0
  511. package/lib/test/test.test.d.ts +0 -0
  512. package/src/browser.ts +0 -36
  513. package/src/index.flow.js +0 -168
  514. package/src/index.ts +0 -1
@@ -0,0 +1,214 @@
1
+ //
2
+ // LightWalletService.swift
3
+ // ZcashLightClientKit
4
+ //
5
+ // Created by Francisco Gindre on 12/09/2019.
6
+ // Copyright © 2019 Electric Coin Company. All rights reserved.
7
+ //
8
+
9
+ import Foundation
10
+ import GRPC
11
+ import SwiftProtobuf
12
+
13
+ /**
14
+ Wrapper for errors received from a Lightwalletd endpoint
15
+ */
16
+ public enum LightWalletServiceError: Error {
17
+ case generalError(message: String)
18
+ case failed(statusCode: Int, message: String)
19
+ case invalidBlock
20
+ case sentFailed(error: Error)
21
+ case genericError(error: Error)
22
+ case timeOut
23
+ case criticalError
24
+ case userCancelled
25
+ case unknown
26
+ }
27
+
28
+ extension LightWalletServiceError: Equatable {
29
+ // swiftlint:disable cyclomatic_complexity
30
+ public static func == (lhs: Self, rhs: Self) -> Bool {
31
+ switch lhs {
32
+ case .generalError(let message):
33
+ switch rhs {
34
+ case .generalError(let msg):
35
+ return message == msg
36
+ default:
37
+ return false
38
+ }
39
+ case .failed(let statusCode, _):
40
+ switch rhs {
41
+ case .failed(let anotherStatus, _):
42
+ return statusCode == anotherStatus
43
+ default:
44
+ return false
45
+ }
46
+
47
+ case .invalidBlock:
48
+ switch rhs {
49
+ case .invalidBlock:
50
+ return true
51
+ default:
52
+ return false
53
+ }
54
+ case .sentFailed:
55
+ switch rhs {
56
+ case .sentFailed:
57
+ return true
58
+ default:
59
+ return false
60
+ }
61
+ case .genericError:
62
+ return false
63
+
64
+ case .timeOut:
65
+ switch rhs {
66
+ case .timeOut:
67
+ return true
68
+ default:
69
+ return false
70
+ }
71
+ case .criticalError:
72
+ switch rhs {
73
+ case .criticalError:
74
+ return true
75
+ default:
76
+ return false
77
+ }
78
+ case .userCancelled:
79
+ switch rhs {
80
+ case .userCancelled:
81
+ return true
82
+ default:
83
+ return false
84
+ }
85
+ case .unknown:
86
+ switch rhs {
87
+ case .unknown:
88
+ return true
89
+ default:
90
+ return false
91
+ }
92
+ }
93
+ }
94
+ }
95
+
96
+ public protocol LightWalletServiceResponse {
97
+ var errorCode: Int32 { get }
98
+ var errorMessage: String { get }
99
+ var unknownFields: SwiftProtobuf.UnknownStorage { get }
100
+ }
101
+
102
+ extension SendResponse: LightWalletServiceResponse {}
103
+
104
+ public protocol LightWalletService {
105
+ /**
106
+ returns the info for this lightwalletd server (blocking)
107
+ */
108
+ func getInfo() throws -> LightWalletdInfo
109
+
110
+ /**
111
+ returns the info for this lightwalletd server
112
+ */
113
+ func getInfo(result: @escaping (Result<LightWalletdInfo, LightWalletServiceError>) -> Void)
114
+
115
+ /**
116
+ Return the latest block height known to the service.
117
+
118
+ - Parameter result: a result containing the height or an Error
119
+ */
120
+ func latestBlockHeight(result: @escaping (Result<BlockHeight, LightWalletServiceError>) -> Void)
121
+
122
+ /**
123
+ Return the latest block height known to the service.
124
+
125
+ - Parameter result: a result containing the height or an Error
126
+ */
127
+ func latestBlockHeight() throws -> BlockHeight
128
+
129
+ /**
130
+ Return the given range of blocks.
131
+
132
+ - Parameter range: the inclusive range to fetch.
133
+ For instance if 1..5 is given, then every block in that will be fetched, including 1 and 5.
134
+ Non blocking
135
+ */
136
+ func blockRange(_ range: CompactBlockRange, result: @escaping (Result<[ZcashCompactBlock], LightWalletServiceError>) -> Void )
137
+
138
+ /**
139
+ Return the given range of blocks.
140
+
141
+ - Parameter range: the inclusive range to fetch.
142
+ For instance if 1..5 is given, then every block in that will be fetched, including 1 and 5.
143
+ blocking
144
+ */
145
+ func blockRange(_ range: CompactBlockRange) throws -> [ZcashCompactBlock]
146
+
147
+ @discardableResult
148
+ func blockStream(
149
+ startHeight: BlockHeight,
150
+ endHeight: BlockHeight,
151
+ result: @escaping (Result<GRPCResult, LightWalletServiceError>) -> Void,
152
+ handler: @escaping (ZcashCompactBlock) -> Void,
153
+ progress: @escaping (BlockProgress) -> Void
154
+ ) -> CancellableCall
155
+
156
+ /**
157
+ Submits a raw transaction over lightwalletd. Non-Blocking
158
+ - Parameter spendTransaction: data representing the transaction to be sent
159
+ - Parameter result: escaping closure that takes a result containing either LightWalletServiceResponse or LightWalletServiceError
160
+ */
161
+ func submit(spendTransaction: Data, result: @escaping(Result<LightWalletServiceResponse, LightWalletServiceError>) -> Void)
162
+
163
+ /**
164
+ Submits a raw transaction over lightwalletd. Blocking
165
+ - Parameter spendTransaction: data representing the transaction to be sent
166
+ - Throws: LightWalletServiceError
167
+ - Returns: LightWalletServiceResponse
168
+ */
169
+ func submit(spendTransaction: Data) throws -> LightWalletServiceResponse
170
+
171
+ /**
172
+ Gets a transaction by id
173
+ - Parameter txId: data representing the transaction ID
174
+ - Throws: LightWalletServiceError
175
+ - Returns: LightWalletServiceResponse
176
+ */
177
+ func fetchTransaction(txId: Data) throws -> TransactionEntity
178
+
179
+ /**
180
+ Gets a transaction by id
181
+ - Parameter txId: data representing the transaction ID
182
+ - Parameter result: handler for the result
183
+ - Throws: LightWalletServiceError
184
+ - Returns: LightWalletServiceResponse
185
+ */
186
+ func fetchTransaction(
187
+ txId: Data,
188
+ result: @escaping (Result<TransactionEntity, LightWalletServiceError>) -> Void
189
+ )
190
+
191
+ func fetchUTXOs(
192
+ for tAddress: String,
193
+ height: BlockHeight
194
+ ) throws -> [UnspentTransactionOutputEntity]
195
+
196
+ func fetchUTXOs(
197
+ for tAddress: String,
198
+ height: BlockHeight,
199
+ result: @escaping(Result<[UnspentTransactionOutputEntity], LightWalletServiceError>) -> Void
200
+ )
201
+
202
+ func fetchUTXOs(
203
+ for tAddresses: [String],
204
+ height: BlockHeight
205
+ ) throws -> [UnspentTransactionOutputEntity]
206
+
207
+ func fetchUTXOs(
208
+ for tAddresses: [String],
209
+ height: BlockHeight,
210
+ result: @escaping(Result<[UnspentTransactionOutputEntity], LightWalletServiceError>) -> Void
211
+ )
212
+
213
+ func closeConnection()
214
+ }
@@ -0,0 +1,46 @@
1
+ //
2
+ // ZcashCompactBlock.swift
3
+ // ZcashLightClientKit
4
+ //
5
+ // Created by Francisco Gindre on 12/09/2019.
6
+ // Copyright © 2019 Electric Coin Company. All rights reserved.
7
+ //
8
+
9
+ import Foundation
10
+
11
+ public typealias BlockHeight = Int
12
+ public typealias CompactBlockRange = ClosedRange<BlockHeight>
13
+
14
+ enum ZcashCompactBlockError: Error {
15
+ case unreadableBlock(compactBlock: CompactBlock)
16
+ }
17
+
18
+ extension BlockHeight {
19
+ static func empty() -> BlockHeight {
20
+ BlockHeight(-1)
21
+ }
22
+ }
23
+
24
+ extension ZcashCompactBlock {
25
+ init(compactBlock: CompactBlock) {
26
+ self.height = Int(compactBlock.height)
27
+ self.data = (try? compactBlock.serializedData()) ?? Data()
28
+ }
29
+ }
30
+
31
+ extension ZcashCompactBlock: Equatable {
32
+ public static func == (lhs: Self, rhs: Self) -> Bool {
33
+ if lhs.height != rhs.height {
34
+ return false
35
+ }
36
+
37
+ return lhs.data == rhs.data
38
+ }
39
+ }
40
+
41
+ extension ZcashCompactBlock: Hashable {
42
+ public func hash(into hasher: inout Hasher) {
43
+ hasher.combine(height)
44
+ hasher.combine(data)
45
+ }
46
+ }
@@ -0,0 +1,50 @@
1
+ //
2
+ // Protocolbuffer+Extensions.swift
3
+ // ZcashLightClientKit
4
+ //
5
+ // Created by Francisco Gindre on 12/09/2019.
6
+ // Copyright © 2019 Electric Coin Company. All rights reserved.
7
+ //
8
+
9
+ import Foundation
10
+
11
+ extension CompactBlockRange {
12
+ func blockRange() -> BlockRange {
13
+ BlockRange(startHeight: lowerBound, endHeight: upperBound)
14
+ }
15
+ }
16
+
17
+ extension BlockID {
18
+ init(height: UInt64) {
19
+ self = BlockID()
20
+ self.height = height
21
+ }
22
+
23
+ init(height: BlockHeight) {
24
+ self.init(height: UInt64(height))
25
+ }
26
+
27
+ func compactBlockHeight() -> BlockHeight? {
28
+ BlockHeight(exactly: self.height)
29
+ }
30
+ }
31
+
32
+ extension BlockRange {
33
+ init(startHeight: Int, endHeight: Int? = nil) {
34
+ self = BlockRange()
35
+ self.start = BlockID(height: UInt64(startHeight))
36
+ if let endHeight = endHeight {
37
+ self.end = BlockID(height: UInt64(endHeight))
38
+ }
39
+ }
40
+
41
+ var compactBlockRange: CompactBlockRange {
42
+ return Int(self.start.height) ... Int(self.end.height)
43
+ }
44
+ }
45
+
46
+ extension Array where Element == CompactBlock {
47
+ func asZcashCompactBlocks() -> [ZcashCompactBlock] {
48
+ self.map { ZcashCompactBlock(compactBlock: $0) }
49
+ }
50
+ }
@@ -0,0 +1,332 @@
1
+ // DO NOT EDIT.
2
+ // swift-format-ignore-file
3
+ //
4
+ // Generated by the Swift generator plugin for the protocol buffer compiler.
5
+ // Source: compact_formats.proto
6
+ //
7
+ // For information on using the generated types, please see the documentation:
8
+ // https://github.com/apple/swift-protobuf/
9
+
10
+ // Copyright (c) 2019-2020 The Zcash developers
11
+ // Distributed under the MIT software license, see the accompanying
12
+ // file COPYING or https://www.opensource.org/licenses/mit-license.php .
13
+
14
+ import Foundation
15
+ import SwiftProtobuf
16
+
17
+ // If the compiler emits an error on this type, it is because this file
18
+ // was generated by a version of the `protoc` Swift plug-in that is
19
+ // incompatible with the version of SwiftProtobuf to which you are linking.
20
+ // Please ensure that you are building against the same version of the API
21
+ // that was used to generate this file.
22
+ fileprivate struct _GeneratedWithProtocGenSwiftVersion: SwiftProtobuf.ProtobufAPIVersionCheck {
23
+ struct _2: SwiftProtobuf.ProtobufAPIVersion_2 {}
24
+ typealias Version = _2
25
+ }
26
+
27
+ /// CompactBlock is a packaging of ONLY the data from a block that's needed to:
28
+ /// 1. Detect a payment to your shielded Sapling address
29
+ /// 2. Detect a spend of your shielded Sapling notes
30
+ /// 3. Update your witnesses to generate new Sapling spend proofs.
31
+ struct CompactBlock {
32
+ // SwiftProtobuf.Message conformance is added in an extension below. See the
33
+ // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
34
+ // methods supported on all messages.
35
+
36
+ /// the version of this wire format, for storage
37
+ var protoVersion: UInt32 = 0
38
+
39
+ /// the height of this block
40
+ var height: UInt64 = 0
41
+
42
+ /// the ID (hash) of this block, same as in block explorers
43
+ var hash: Data = Data()
44
+
45
+ /// the ID (hash) of this block's predecessor
46
+ var prevHash: Data = Data()
47
+
48
+ /// Unix epoch time when the block was mined
49
+ var time: UInt32 = 0
50
+
51
+ /// (hash, prevHash, and time) OR (full header)
52
+ var header: Data = Data()
53
+
54
+ /// zero or more compact transactions from this block
55
+ var vtx: [CompactTx] = []
56
+
57
+ var unknownFields = SwiftProtobuf.UnknownStorage()
58
+
59
+ init() {}
60
+ }
61
+
62
+ /// CompactTx contains the minimum information for a wallet to know if this transaction
63
+ /// is relevant to it (either pays to it or spends from it) via shielded elements
64
+ /// only. This message will not encode a transparent-to-transparent transaction.
65
+ struct CompactTx {
66
+ // SwiftProtobuf.Message conformance is added in an extension below. See the
67
+ // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
68
+ // methods supported on all messages.
69
+
70
+ /// the index within the full block
71
+ var index: UInt64 = 0
72
+
73
+ /// the ID (hash) of this transaction, same as in block explorers
74
+ var hash: Data = Data()
75
+
76
+ /// The transaction fee: present if server can provide. In the case of a
77
+ /// stateless server and a transaction with transparent inputs, this will be
78
+ /// unset because the calculation requires reference to prior transactions.
79
+ /// in a pure-Sapling context, the fee will be calculable as:
80
+ /// valueBalance + (sum(vPubNew) - sum(vPubOld) - sum(tOut))
81
+ var fee: UInt32 = 0
82
+
83
+ /// inputs
84
+ var spends: [CompactSpend] = []
85
+
86
+ /// outputs
87
+ var outputs: [CompactOutput] = []
88
+
89
+ var unknownFields = SwiftProtobuf.UnknownStorage()
90
+
91
+ init() {}
92
+ }
93
+
94
+ /// CompactSpend is a Sapling Spend Description as described in 7.3 of the Zcash
95
+ /// protocol specification.
96
+ struct CompactSpend {
97
+ // SwiftProtobuf.Message conformance is added in an extension below. See the
98
+ // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
99
+ // methods supported on all messages.
100
+
101
+ /// nullifier (see the Zcash protocol specification)
102
+ var nf: Data = Data()
103
+
104
+ var unknownFields = SwiftProtobuf.UnknownStorage()
105
+
106
+ init() {}
107
+ }
108
+
109
+ /// output is a Sapling Output Description as described in section 7.4 of the
110
+ /// Zcash protocol spec. Total size is 948.
111
+ struct CompactOutput {
112
+ // SwiftProtobuf.Message conformance is added in an extension below. See the
113
+ // `Message` and `Message+*Additions` files in the SwiftProtobuf library for
114
+ // methods supported on all messages.
115
+
116
+ /// note commitment u-coordinate
117
+ var cmu: Data = Data()
118
+
119
+ /// ephemeral public key
120
+ var epk: Data = Data()
121
+
122
+ /// ciphertext and zkproof
123
+ var ciphertext: Data = Data()
124
+
125
+ var unknownFields = SwiftProtobuf.UnknownStorage()
126
+
127
+ init() {}
128
+ }
129
+
130
+ // MARK: - Code below here is support for the SwiftProtobuf runtime.
131
+
132
+ fileprivate let _protobuf_package = "cash.z.wallet.sdk.rpc"
133
+
134
+ extension CompactBlock: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
135
+ static let protoMessageName: String = _protobuf_package + ".CompactBlock"
136
+ static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
137
+ 1: .same(proto: "protoVersion"),
138
+ 2: .same(proto: "height"),
139
+ 3: .same(proto: "hash"),
140
+ 4: .same(proto: "prevHash"),
141
+ 5: .same(proto: "time"),
142
+ 6: .same(proto: "header"),
143
+ 7: .same(proto: "vtx"),
144
+ ]
145
+
146
+ mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
147
+ while let fieldNumber = try decoder.nextFieldNumber() {
148
+ // The use of inline closures is to circumvent an issue where the compiler
149
+ // allocates stack space for every case branch when no optimizations are
150
+ // enabled. https://github.com/apple/swift-protobuf/issues/1034
151
+ switch fieldNumber {
152
+ case 1: try { try decoder.decodeSingularUInt32Field(value: &self.protoVersion) }()
153
+ case 2: try { try decoder.decodeSingularUInt64Field(value: &self.height) }()
154
+ case 3: try { try decoder.decodeSingularBytesField(value: &self.hash) }()
155
+ case 4: try { try decoder.decodeSingularBytesField(value: &self.prevHash) }()
156
+ case 5: try { try decoder.decodeSingularUInt32Field(value: &self.time) }()
157
+ case 6: try { try decoder.decodeSingularBytesField(value: &self.header) }()
158
+ case 7: try { try decoder.decodeRepeatedMessageField(value: &self.vtx) }()
159
+ default: break
160
+ }
161
+ }
162
+ }
163
+
164
+ func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
165
+ if self.protoVersion != 0 {
166
+ try visitor.visitSingularUInt32Field(value: self.protoVersion, fieldNumber: 1)
167
+ }
168
+ if self.height != 0 {
169
+ try visitor.visitSingularUInt64Field(value: self.height, fieldNumber: 2)
170
+ }
171
+ if !self.hash.isEmpty {
172
+ try visitor.visitSingularBytesField(value: self.hash, fieldNumber: 3)
173
+ }
174
+ if !self.prevHash.isEmpty {
175
+ try visitor.visitSingularBytesField(value: self.prevHash, fieldNumber: 4)
176
+ }
177
+ if self.time != 0 {
178
+ try visitor.visitSingularUInt32Field(value: self.time, fieldNumber: 5)
179
+ }
180
+ if !self.header.isEmpty {
181
+ try visitor.visitSingularBytesField(value: self.header, fieldNumber: 6)
182
+ }
183
+ if !self.vtx.isEmpty {
184
+ try visitor.visitRepeatedMessageField(value: self.vtx, fieldNumber: 7)
185
+ }
186
+ try unknownFields.traverse(visitor: &visitor)
187
+ }
188
+
189
+ static func ==(lhs: CompactBlock, rhs: CompactBlock) -> Bool {
190
+ if lhs.protoVersion != rhs.protoVersion {return false}
191
+ if lhs.height != rhs.height {return false}
192
+ if lhs.hash != rhs.hash {return false}
193
+ if lhs.prevHash != rhs.prevHash {return false}
194
+ if lhs.time != rhs.time {return false}
195
+ if lhs.header != rhs.header {return false}
196
+ if lhs.vtx != rhs.vtx {return false}
197
+ if lhs.unknownFields != rhs.unknownFields {return false}
198
+ return true
199
+ }
200
+ }
201
+
202
+ extension CompactTx: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
203
+ static let protoMessageName: String = _protobuf_package + ".CompactTx"
204
+ static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
205
+ 1: .same(proto: "index"),
206
+ 2: .same(proto: "hash"),
207
+ 3: .same(proto: "fee"),
208
+ 4: .same(proto: "spends"),
209
+ 5: .same(proto: "outputs"),
210
+ ]
211
+
212
+ mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
213
+ while let fieldNumber = try decoder.nextFieldNumber() {
214
+ // The use of inline closures is to circumvent an issue where the compiler
215
+ // allocates stack space for every case branch when no optimizations are
216
+ // enabled. https://github.com/apple/swift-protobuf/issues/1034
217
+ switch fieldNumber {
218
+ case 1: try { try decoder.decodeSingularUInt64Field(value: &self.index) }()
219
+ case 2: try { try decoder.decodeSingularBytesField(value: &self.hash) }()
220
+ case 3: try { try decoder.decodeSingularUInt32Field(value: &self.fee) }()
221
+ case 4: try { try decoder.decodeRepeatedMessageField(value: &self.spends) }()
222
+ case 5: try { try decoder.decodeRepeatedMessageField(value: &self.outputs) }()
223
+ default: break
224
+ }
225
+ }
226
+ }
227
+
228
+ func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
229
+ if self.index != 0 {
230
+ try visitor.visitSingularUInt64Field(value: self.index, fieldNumber: 1)
231
+ }
232
+ if !self.hash.isEmpty {
233
+ try visitor.visitSingularBytesField(value: self.hash, fieldNumber: 2)
234
+ }
235
+ if self.fee != 0 {
236
+ try visitor.visitSingularUInt32Field(value: self.fee, fieldNumber: 3)
237
+ }
238
+ if !self.spends.isEmpty {
239
+ try visitor.visitRepeatedMessageField(value: self.spends, fieldNumber: 4)
240
+ }
241
+ if !self.outputs.isEmpty {
242
+ try visitor.visitRepeatedMessageField(value: self.outputs, fieldNumber: 5)
243
+ }
244
+ try unknownFields.traverse(visitor: &visitor)
245
+ }
246
+
247
+ static func ==(lhs: CompactTx, rhs: CompactTx) -> Bool {
248
+ if lhs.index != rhs.index {return false}
249
+ if lhs.hash != rhs.hash {return false}
250
+ if lhs.fee != rhs.fee {return false}
251
+ if lhs.spends != rhs.spends {return false}
252
+ if lhs.outputs != rhs.outputs {return false}
253
+ if lhs.unknownFields != rhs.unknownFields {return false}
254
+ return true
255
+ }
256
+ }
257
+
258
+ extension CompactSpend: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
259
+ static let protoMessageName: String = _protobuf_package + ".CompactSpend"
260
+ static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
261
+ 1: .same(proto: "nf"),
262
+ ]
263
+
264
+ mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
265
+ while let fieldNumber = try decoder.nextFieldNumber() {
266
+ // The use of inline closures is to circumvent an issue where the compiler
267
+ // allocates stack space for every case branch when no optimizations are
268
+ // enabled. https://github.com/apple/swift-protobuf/issues/1034
269
+ switch fieldNumber {
270
+ case 1: try { try decoder.decodeSingularBytesField(value: &self.nf) }()
271
+ default: break
272
+ }
273
+ }
274
+ }
275
+
276
+ func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
277
+ if !self.nf.isEmpty {
278
+ try visitor.visitSingularBytesField(value: self.nf, fieldNumber: 1)
279
+ }
280
+ try unknownFields.traverse(visitor: &visitor)
281
+ }
282
+
283
+ static func ==(lhs: CompactSpend, rhs: CompactSpend) -> Bool {
284
+ if lhs.nf != rhs.nf {return false}
285
+ if lhs.unknownFields != rhs.unknownFields {return false}
286
+ return true
287
+ }
288
+ }
289
+
290
+ extension CompactOutput: SwiftProtobuf.Message, SwiftProtobuf._MessageImplementationBase, SwiftProtobuf._ProtoNameProviding {
291
+ static let protoMessageName: String = _protobuf_package + ".CompactOutput"
292
+ static let _protobuf_nameMap: SwiftProtobuf._NameMap = [
293
+ 1: .same(proto: "cmu"),
294
+ 2: .same(proto: "epk"),
295
+ 3: .same(proto: "ciphertext"),
296
+ ]
297
+
298
+ mutating func decodeMessage<D: SwiftProtobuf.Decoder>(decoder: inout D) throws {
299
+ while let fieldNumber = try decoder.nextFieldNumber() {
300
+ // The use of inline closures is to circumvent an issue where the compiler
301
+ // allocates stack space for every case branch when no optimizations are
302
+ // enabled. https://github.com/apple/swift-protobuf/issues/1034
303
+ switch fieldNumber {
304
+ case 1: try { try decoder.decodeSingularBytesField(value: &self.cmu) }()
305
+ case 2: try { try decoder.decodeSingularBytesField(value: &self.epk) }()
306
+ case 3: try { try decoder.decodeSingularBytesField(value: &self.ciphertext) }()
307
+ default: break
308
+ }
309
+ }
310
+ }
311
+
312
+ func traverse<V: SwiftProtobuf.Visitor>(visitor: inout V) throws {
313
+ if !self.cmu.isEmpty {
314
+ try visitor.visitSingularBytesField(value: self.cmu, fieldNumber: 1)
315
+ }
316
+ if !self.epk.isEmpty {
317
+ try visitor.visitSingularBytesField(value: self.epk, fieldNumber: 2)
318
+ }
319
+ if !self.ciphertext.isEmpty {
320
+ try visitor.visitSingularBytesField(value: self.ciphertext, fieldNumber: 3)
321
+ }
322
+ try unknownFields.traverse(visitor: &visitor)
323
+ }
324
+
325
+ static func ==(lhs: CompactOutput, rhs: CompactOutput) -> Bool {
326
+ if lhs.cmu != rhs.cmu {return false}
327
+ if lhs.epk != rhs.epk {return false}
328
+ if lhs.ciphertext != rhs.ciphertext {return false}
329
+ if lhs.unknownFields != rhs.unknownFields {return false}
330
+ return true
331
+ }
332
+ }
@@ -0,0 +1,56 @@
1
+ // Copyright (c) 2019-2020 The Zcash developers
2
+ // Distributed under the MIT software license, see the accompanying
3
+ // file COPYING or https://www.opensource.org/licenses/mit-license.php .
4
+
5
+ syntax = "proto3";
6
+ package cash.z.wallet.sdk.rpc;
7
+ option go_package = "lightwalletd/walletrpc";
8
+ option swift_prefix = "";
9
+ // Remember that proto3 fields are all optional. A field that is not present will be set to its zero value.
10
+ // bytes fields of hashes are in canonical little-endian format.
11
+
12
+ // CompactBlock is a packaging of ONLY the data from a block that's needed to:
13
+ // 1. Detect a payment to your shielded Sapling address
14
+ // 2. Detect a spend of your shielded Sapling notes
15
+ // 3. Update your witnesses to generate new Sapling spend proofs.
16
+ message CompactBlock {
17
+ uint32 protoVersion = 1; // the version of this wire format, for storage
18
+ uint64 height = 2; // the height of this block
19
+ bytes hash = 3; // the ID (hash) of this block, same as in block explorers
20
+ bytes prevHash = 4; // the ID (hash) of this block's predecessor
21
+ uint32 time = 5; // Unix epoch time when the block was mined
22
+ bytes header = 6; // (hash, prevHash, and time) OR (full header)
23
+ repeated CompactTx vtx = 7; // zero or more compact transactions from this block
24
+ }
25
+
26
+ // CompactTx contains the minimum information for a wallet to know if this transaction
27
+ // is relevant to it (either pays to it or spends from it) via shielded elements
28
+ // only. This message will not encode a transparent-to-transparent transaction.
29
+ message CompactTx {
30
+ uint64 index = 1; // the index within the full block
31
+ bytes hash = 2; // the ID (hash) of this transaction, same as in block explorers
32
+
33
+ // The transaction fee: present if server can provide. In the case of a
34
+ // stateless server and a transaction with transparent inputs, this will be
35
+ // unset because the calculation requires reference to prior transactions.
36
+ // in a pure-Sapling context, the fee will be calculable as:
37
+ // valueBalance + (sum(vPubNew) - sum(vPubOld) - sum(tOut))
38
+ uint32 fee = 3;
39
+
40
+ repeated CompactSpend spends = 4; // inputs
41
+ repeated CompactOutput outputs = 5; // outputs
42
+ }
43
+
44
+ // CompactSpend is a Sapling Spend Description as described in 7.3 of the Zcash
45
+ // protocol specification.
46
+ message CompactSpend {
47
+ bytes nf = 1; // nullifier (see the Zcash protocol specification)
48
+ }
49
+
50
+ // output is a Sapling Output Description as described in section 7.4 of the
51
+ // Zcash protocol spec. Total size is 948.
52
+ message CompactOutput {
53
+ bytes cmu = 1; // note commitment u-coordinate
54
+ bytes epk = 2; // ephemeral public key
55
+ bytes ciphertext = 3; // ciphertext and zkproof
56
+ }