react-native-zcash 0.3.4 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (716) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/LICENSE +22 -0
  3. package/README.md +40 -37
  4. package/android/build.gradle +7 -5
  5. package/android/src/main/assets/saplingtree/mainnet/1310000.json +1 -1
  6. package/android/src/main/assets/saplingtree/mainnet/1320000.json +1 -1
  7. package/android/src/main/assets/saplingtree/mainnet/1330000.json +1 -1
  8. package/android/src/main/assets/saplingtree/mainnet/1340000.json +1 -1
  9. package/android/src/main/assets/saplingtree/mainnet/1350000.json +1 -1
  10. package/android/src/main/assets/saplingtree/mainnet/1360000.json +1 -1
  11. package/android/src/main/assets/saplingtree/mainnet/1370000.json +1 -1
  12. package/android/src/main/assets/saplingtree/mainnet/1380000.json +1 -1
  13. package/android/src/main/assets/saplingtree/mainnet/1390000.json +1 -1
  14. package/android/src/main/assets/saplingtree/mainnet/1400000.json +1 -1
  15. package/android/src/main/assets/saplingtree/mainnet/1410000.json +1 -1
  16. package/android/src/main/assets/saplingtree/mainnet/1420000.json +1 -1
  17. package/android/src/main/assets/saplingtree/mainnet/1430000.json +1 -1
  18. package/android/src/main/assets/saplingtree/mainnet/1440000.json +1 -1
  19. package/android/src/main/assets/saplingtree/mainnet/1450000.json +1 -1
  20. package/android/src/main/assets/saplingtree/mainnet/1460000.json +1 -1
  21. package/android/src/main/assets/saplingtree/mainnet/1470000.json +1 -1
  22. package/android/src/main/assets/saplingtree/mainnet/1480000.json +1 -1
  23. package/android/src/main/assets/saplingtree/mainnet/1490000.json +1 -1
  24. package/android/src/main/assets/saplingtree/mainnet/1500000.json +1 -1
  25. package/android/src/main/assets/saplingtree/mainnet/1510000.json +1 -1
  26. package/android/src/main/assets/saplingtree/mainnet/1520000.json +1 -1
  27. package/android/src/main/assets/saplingtree/mainnet/1530000.json +1 -1
  28. package/android/src/main/assets/saplingtree/mainnet/1540000.json +1 -1
  29. package/android/src/main/assets/saplingtree/mainnet/1550000.json +1 -1
  30. package/android/src/main/assets/saplingtree/mainnet/1560000.json +1 -1
  31. package/android/src/main/assets/saplingtree/mainnet/1570000.json +1 -1
  32. package/android/src/main/assets/saplingtree/mainnet/1580000.json +1 -1
  33. package/android/src/main/assets/saplingtree/mainnet/1590000.json +1 -1
  34. package/android/src/main/assets/saplingtree/mainnet/1600000.json +1 -1
  35. package/android/src/main/assets/saplingtree/mainnet/1610000.json +1 -1
  36. package/android/src/main/assets/saplingtree/mainnet/1620000.json +1 -1
  37. package/android/src/main/assets/saplingtree/mainnet/1630000.json +1 -1
  38. package/android/src/main/assets/saplingtree/mainnet/1640000.json +1 -1
  39. package/android/src/main/assets/saplingtree/mainnet/1650000.json +1 -1
  40. package/android/src/main/assets/saplingtree/mainnet/1660000.json +1 -1
  41. package/android/src/main/assets/saplingtree/mainnet/1670000.json +1 -1
  42. package/android/src/main/assets/saplingtree/mainnet/1680000.json +1 -1
  43. package/android/src/main/assets/saplingtree/mainnet/1690000.json +2 -1
  44. package/android/src/main/assets/saplingtree/mainnet/1700000.json +2 -1
  45. package/android/src/main/assets/saplingtree/mainnet/1710000.json +2 -1
  46. package/android/src/main/assets/saplingtree/mainnet/1720000.json +2 -1
  47. package/android/src/main/assets/saplingtree/mainnet/1730000.json +2 -1
  48. package/android/src/main/assets/saplingtree/mainnet/1740000.json +2 -1
  49. package/android/src/main/assets/saplingtree/mainnet/1750000.json +2 -1
  50. package/android/src/main/assets/saplingtree/mainnet/1760000.json +2 -1
  51. package/android/src/main/assets/saplingtree/mainnet/1770000.json +2 -1
  52. package/android/src/main/assets/saplingtree/mainnet/1780000.json +2 -1
  53. package/android/src/main/assets/saplingtree/mainnet/1790000.json +2 -1
  54. package/android/src/main/assets/saplingtree/mainnet/1800000.json +2 -1
  55. package/android/src/main/assets/saplingtree/mainnet/1810000.json +2 -1
  56. package/android/src/main/assets/saplingtree/mainnet/1820000.json +2 -1
  57. package/android/src/main/assets/saplingtree/mainnet/1830000.json +2 -1
  58. package/android/src/main/assets/saplingtree/mainnet/1840000.json +2 -1
  59. package/android/src/main/assets/saplingtree/mainnet/1850000.json +2 -1
  60. package/android/src/main/assets/saplingtree/mainnet/1860000.json +2 -1
  61. package/android/src/main/assets/saplingtree/mainnet/1870000.json +2 -1
  62. package/android/src/main/assets/saplingtree/mainnet/1880000.json +2 -1
  63. package/android/src/main/assets/saplingtree/mainnet/1890000.json +2 -1
  64. package/android/src/main/assets/saplingtree/mainnet/1900000.json +2 -1
  65. package/android/src/main/assets/saplingtree/mainnet/1910000.json +2 -1
  66. package/android/src/main/assets/saplingtree/mainnet/1920000.json +2 -1
  67. package/android/src/main/assets/saplingtree/mainnet/1930000.json +2 -1
  68. package/android/src/main/assets/saplingtree/mainnet/1940000.json +2 -1
  69. package/android/src/main/assets/saplingtree/mainnet/1950000.json +2 -1
  70. package/android/src/main/assets/saplingtree/mainnet/1960000.json +2 -1
  71. package/android/src/main/assets/saplingtree/mainnet/1970000.json +2 -1
  72. package/android/src/main/assets/saplingtree/mainnet/1980000.json +2 -1
  73. package/android/src/main/assets/saplingtree/mainnet/1990000.json +2 -1
  74. package/android/src/main/assets/saplingtree/mainnet/2000000.json +2 -1
  75. package/android/src/main/assets/saplingtree/mainnet/2010000.json +2 -1
  76. package/android/src/main/assets/saplingtree/mainnet/2020000.json +2 -1
  77. package/android/src/main/assets/saplingtree/mainnet/2030000.json +2 -1
  78. package/android/src/main/assets/saplingtree/mainnet/2040000.json +2 -1
  79. package/android/src/main/assets/saplingtree/mainnet/2050000.json +2 -1
  80. package/android/src/main/assets/saplingtree/mainnet/2060000.json +2 -1
  81. package/android/src/main/assets/saplingtree/mainnet/2070000.json +2 -1
  82. package/android/src/main/assets/saplingtree/mainnet/2080000.json +2 -1
  83. package/android/src/main/assets/saplingtree/mainnet/2090000.json +2 -1
  84. package/android/src/main/assets/saplingtree/mainnet/2100000.json +2 -1
  85. package/android/src/main/assets/saplingtree/mainnet/2110000.json +2 -1
  86. package/android/src/main/assets/saplingtree/mainnet/2120000.json +2 -1
  87. package/android/src/main/assets/saplingtree/mainnet/2130000.json +2 -1
  88. package/android/src/main/assets/saplingtree/mainnet/2140000.json +2 -1
  89. package/android/src/main/assets/saplingtree/mainnet/2150000.json +2 -1
  90. package/android/src/main/assets/saplingtree/mainnet/2160000.json +2 -1
  91. package/android/src/main/assets/saplingtree/mainnet/2170000.json +2 -1
  92. package/android/src/main/assets/saplingtree/mainnet/2180000.json +8 -0
  93. package/android/src/main/assets/saplingtree/mainnet/2190000.json +8 -0
  94. package/android/src/main/assets/saplingtree/mainnet/2200000.json +8 -0
  95. package/android/src/main/assets/saplingtree/mainnet/2210000.json +8 -0
  96. package/android/src/main/java/app/edge/rnzcash/RNZcashModule.kt +179 -175
  97. package/android/src/main/java/app/edge/rnzcash/RNZcashPackage.kt +2 -3
  98. package/ios/RNZcash.m +5 -22
  99. package/ios/RNZcash.swift +532 -514
  100. package/ios/ZCashLightClientKit/Block/CompactBlockProcessor.swift +1365 -0
  101. package/ios/ZCashLightClientKit/Block/DatabaseStorage/ConnectorProvider.swift +12 -0
  102. package/ios/ZCashLightClientKit/Block/DatabaseStorage/DatabaseStorageError.swift +20 -0
  103. package/ios/ZCashLightClientKit/Block/DatabaseStorage/SimpleConnectionProvider.swift +39 -0
  104. package/ios/ZCashLightClientKit/Block/Download/BlockDownloader.swift +295 -0
  105. package/ios/ZCashLightClientKit/Block/Download/BlockDownloaderService.swift +117 -0
  106. package/ios/ZCashLightClientKit/Block/Enhance/BlockEnhancer.swift +123 -0
  107. package/ios/ZCashLightClientKit/Block/FetchUnspentTxOutputs/UTXOFetcher.swift +114 -0
  108. package/ios/ZCashLightClientKit/Block/FilesystemStorage/FSCompactBlockRepository.swift +419 -0
  109. package/ios/ZCashLightClientKit/Block/SaplingParameters/SaplingParametersHandler.swift +52 -0
  110. package/ios/ZCashLightClientKit/Block/Scan/BlockScanner.swift +114 -0
  111. package/ios/ZCashLightClientKit/Block/Utils/AfterSyncHooksManager.swift +88 -0
  112. package/ios/ZCashLightClientKit/Block/Utils/InternalSyncProgress.swift +200 -0
  113. package/ios/ZCashLightClientKit/Block/Validate/BlockValidator.swift +51 -0
  114. package/ios/ZCashLightClientKit/ClosureSynchronizer.swift +84 -0
  115. package/ios/ZCashLightClientKit/CombineSynchronizer.swift +76 -0
  116. package/ios/ZCashLightClientKit/Constants/Checkpoint+Constants.swift +98 -0
  117. package/ios/ZCashLightClientKit/Constants/Checkpoint+mainnet.swift +19 -0
  118. package/ios/ZCashLightClientKit/Constants/Checkpoint+testnet.swift +20 -0
  119. package/ios/ZCashLightClientKit/Constants/ZcashSDK.swift +215 -0
  120. package/ios/ZCashLightClientKit/DAO/BlockDao.swift +112 -0
  121. package/ios/ZCashLightClientKit/DAO/PagedTransactionDao.swift +54 -0
  122. package/ios/ZCashLightClientKit/DAO/TransactionDao.swift +245 -0
  123. package/ios/ZCashLightClientKit/DAO/UnspentTransactionOutputDao.swift +210 -0
  124. package/ios/ZCashLightClientKit/Entity/AccountEntity.swift +199 -0
  125. package/ios/ZCashLightClientKit/Entity/BlockProgress.swift +24 -0
  126. package/ios/ZCashLightClientKit/Entity/EncodedTransactionEntity.swift +26 -0
  127. package/ios/ZCashLightClientKit/Entity/SentNoteEntity.swift +48 -0
  128. package/ios/ZCashLightClientKit/Entity/TransactionEntity.swift +235 -0
  129. package/ios/ZCashLightClientKit/Entity/UnspentTransactionOutputEntity.swift +18 -0
  130. package/ios/ZCashLightClientKit/Entity/ZcashCompactBlock.swift +96 -0
  131. package/ios/ZCashLightClientKit/Error/Sourcery/ZcashError.stencil +40 -0
  132. package/ios/ZCashLightClientKit/Error/Sourcery/ZcashErrorCode.stencil +15 -0
  133. package/ios/ZCashLightClientKit/Error/Sourcery/generateErrorCode.sh +34 -0
  134. package/ios/ZCashLightClientKit/Error/ZcashError.swift +820 -0
  135. package/ios/ZCashLightClientKit/Error/ZcashErrorCode.swift +306 -0
  136. package/ios/ZCashLightClientKit/Error/ZcashErrorCodeDefinition.swift +596 -0
  137. package/ios/ZCashLightClientKit/Extensions/Data+Zcash.swift +17 -0
  138. package/ios/ZCashLightClientKit/Extensions/Data+internal.swift +35 -0
  139. package/ios/ZCashLightClientKit/Extensions/Error+ZcashError.swift +18 -0
  140. package/ios/ZCashLightClientKit/Extensions/HexEncode.swift +41 -0
  141. package/ios/ZCashLightClientKit/Extensions/NumberFormatter+Zcash.swift +19 -0
  142. package/ios/ZCashLightClientKit/Extensions/URL+UpdateWithAlias.swift +36 -0
  143. package/ios/ZCashLightClientKit/Extensions/Undescribable.swift +22 -0
  144. package/ios/ZCashLightClientKit/Extensions/Zatoshi+SQLite.swift +20 -0
  145. package/ios/ZCashLightClientKit/Extensions/ZcashRust+Utils.swift +26 -0
  146. package/ios/ZCashLightClientKit/Extensions/ZcashSDK+extensions.swift +34 -0
  147. package/ios/ZCashLightClientKit/Initializer.swift +433 -0
  148. package/ios/ZCashLightClientKit/Metrics/SDKMetrics.swift +270 -0
  149. package/ios/ZCashLightClientKit/Model/Checkpoint.swift +84 -0
  150. package/ios/ZCashLightClientKit/Model/Memo.swift +236 -0
  151. package/ios/ZCashLightClientKit/Model/WalletTypes.swift +281 -0
  152. package/ios/ZCashLightClientKit/Model/Zatoshi.swift +115 -0
  153. package/ios/ZCashLightClientKit/Modules/Service/GRPC/LightWalletGRPCService.swift +342 -0
  154. package/ios/ZCashLightClientKit/Modules/Service/GRPC/ProtoBuf/Extensions/Protocolbuffer+Extensions.swift +50 -0
  155. package/ios/ZCashLightClientKit/Modules/Service/GRPC/ProtoBuf/compact_formats.pb.swift +399 -0
  156. package/ios/ZCashLightClientKit/Modules/Service/GRPC/ProtoBuf/proto/compact_formats.proto +66 -0
  157. package/ios/ZCashLightClientKit/Modules/Service/GRPC/ProtoBuf/proto/service.proto +185 -0
  158. package/ios/ZCashLightClientKit/Modules/Service/GRPC/ProtoBuf/service.grpc.swift +1123 -0
  159. package/ios/ZCashLightClientKit/Modules/Service/GRPC/ProtoBuf/service.pb.swift +1208 -0
  160. package/ios/ZCashLightClientKit/Modules/Service/LightWalletService.swift +195 -0
  161. package/ios/ZCashLightClientKit/Providers/LatestBlocksDataProvider.swift +69 -0
  162. package/ios/ZCashLightClientKit/Providers/ResourceProvider.swift +65 -0
  163. package/ios/ZCashLightClientKit/Repository/BlockRepository.swift +13 -0
  164. package/ios/ZCashLightClientKit/Repository/CompactBlockRepository.swift +43 -0
  165. package/ios/ZCashLightClientKit/Repository/NotesRepository.swift +17 -0
  166. package/ios/ZCashLightClientKit/Repository/PaginatedTransactionRepository.swift +35 -0
  167. package/ios/ZCashLightClientKit/Repository/TransactionRepository.swift +29 -0
  168. package/ios/ZCashLightClientKit/Repository/TransactionRepositoryBuilder.swift +24 -0
  169. package/ios/ZCashLightClientKit/Repository/UnspentTransactionOutputRepository.swift +16 -0
  170. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1000000.json +7 -0
  171. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1010000.json +7 -0
  172. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1020000.json +7 -0
  173. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1030000.json +7 -0
  174. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1040000.json +7 -0
  175. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1050000.json +7 -0
  176. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1060000.json +7 -0
  177. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1070000.json +7 -0
  178. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1080000.json +7 -0
  179. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1090000.json +7 -0
  180. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1100000.json +7 -0
  181. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1110000.json +7 -0
  182. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1120000.json +7 -0
  183. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1130000.json +7 -0
  184. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1140000.json +7 -0
  185. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1150000.json +7 -0
  186. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1160000.json +7 -0
  187. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1170000.json +7 -0
  188. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1180000.json +7 -0
  189. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1190000.json +7 -0
  190. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1200000.json +7 -0
  191. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1210000.json +7 -0
  192. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1220000.json +7 -0
  193. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1230000.json +7 -0
  194. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1240000.json +7 -0
  195. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1250000.json +7 -0
  196. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1260000.json +7 -0
  197. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1270000.json +7 -0
  198. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1280000.json +7 -0
  199. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1290000.json +7 -0
  200. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1300000.json +7 -0
  201. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1310000.json +7 -0
  202. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1320000.json +7 -0
  203. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1330000.json +7 -0
  204. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1340000.json +7 -0
  205. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1350000.json +7 -0
  206. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1360000.json +7 -0
  207. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1370000.json +7 -0
  208. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1380000.json +7 -0
  209. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1390000.json +7 -0
  210. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1400000.json +7 -0
  211. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1410000.json +7 -0
  212. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1420000.json +7 -0
  213. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1430000.json +7 -0
  214. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1440000.json +7 -0
  215. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1450000.json +7 -0
  216. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1460000.json +7 -0
  217. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1470000.json +7 -0
  218. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1480000.json +7 -0
  219. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1490000.json +7 -0
  220. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1500000.json +7 -0
  221. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1510000.json +7 -0
  222. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1520000.json +7 -0
  223. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1530000.json +7 -0
  224. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1540000.json +7 -0
  225. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1550000.json +7 -0
  226. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1560000.json +7 -0
  227. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1570000.json +7 -0
  228. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1580000.json +7 -0
  229. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1590000.json +7 -0
  230. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1600000.json +7 -0
  231. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1610000.json +7 -0
  232. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1620000.json +7 -0
  233. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1630000.json +7 -0
  234. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1631000.json +7 -0
  235. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1640000.json +7 -0
  236. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1650000.json +7 -0
  237. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1660000.json +7 -0
  238. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1670000.json +7 -0
  239. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1680000.json +7 -0
  240. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1686871.json +7 -0
  241. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1687104.json +8 -0
  242. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1690000.json +8 -0
  243. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1700000.json +8 -0
  244. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1710000.json +8 -0
  245. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1720000.json +8 -0
  246. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1722500.json +8 -0
  247. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1725000.json +8 -0
  248. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1727500.json +8 -0
  249. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1730000.json +8 -0
  250. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1732500.json +8 -0
  251. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1735000.json +8 -0
  252. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1737500.json +8 -0
  253. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1740000.json +8 -0
  254. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1742500.json +8 -0
  255. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1745000.json +8 -0
  256. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1747500.json +8 -0
  257. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1750000.json +8 -0
  258. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1752500.json +8 -0
  259. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1755000.json +9 -0
  260. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1757500.json +8 -0
  261. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1760000.json +8 -0
  262. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1762500.json +8 -0
  263. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1765000.json +8 -0
  264. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1767500.json +8 -0
  265. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1770000.json +8 -0
  266. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1772500.json +8 -0
  267. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1775000.json +8 -0
  268. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1777500.json +8 -0
  269. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1780000.json +8 -0
  270. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1782500.json +8 -0
  271. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1785000.json +8 -0
  272. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1787500.json +8 -0
  273. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1790000.json +8 -0
  274. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1792500.json +8 -0
  275. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1795000.json +8 -0
  276. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1797500.json +8 -0
  277. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1800000.json +8 -0
  278. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1802500.json +8 -0
  279. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1805000.json +8 -0
  280. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1807500.json +8 -0
  281. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1810000.json +8 -0
  282. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1812500.json +8 -0
  283. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1815000.json +8 -0
  284. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1817500.json +8 -0
  285. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1820000.json +8 -0
  286. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1822500.json +8 -0
  287. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1825000.json +8 -0
  288. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1827500.json +8 -0
  289. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1830000.json +8 -0
  290. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1832500.json +8 -0
  291. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1835000.json +8 -0
  292. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1837500.json +8 -0
  293. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1840000.json +8 -0
  294. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1842500.json +8 -0
  295. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1845000.json +8 -0
  296. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1847500.json +8 -0
  297. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1850000.json +8 -0
  298. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1852500.json +8 -0
  299. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1855000.json +8 -0
  300. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1857500.json +8 -0
  301. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1860000.json +8 -0
  302. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1862500.json +8 -0
  303. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1865000.json +8 -0
  304. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1867500.json +8 -0
  305. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1870000.json +8 -0
  306. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1872500.json +8 -0
  307. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1875000.json +8 -0
  308. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1877500.json +8 -0
  309. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1880000.json +8 -0
  310. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1882500.json +8 -0
  311. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1885000.json +8 -0
  312. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1887500.json +8 -0
  313. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1890000.json +8 -0
  314. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1892500.json +8 -0
  315. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1895000.json +8 -0
  316. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1897500.json +8 -0
  317. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1900000.json +8 -0
  318. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1902500.json +8 -0
  319. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1905000.json +8 -0
  320. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1907500.json +8 -0
  321. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1910000.json +8 -0
  322. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1912500.json +8 -0
  323. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1915000.json +8 -0
  324. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1917500.json +8 -0
  325. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1920000.json +8 -0
  326. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1922500.json +8 -0
  327. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1925000.json +8 -0
  328. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1927500.json +8 -0
  329. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1930000.json +8 -0
  330. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1932500.json +8 -0
  331. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1935000.json +8 -0
  332. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1937500.json +8 -0
  333. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1940000.json +8 -0
  334. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1942500.json +8 -0
  335. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1945000.json +8 -0
  336. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1947500.json +8 -0
  337. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1950000.json +8 -0
  338. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1952500.json +8 -0
  339. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1955000.json +8 -0
  340. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1957500.json +8 -0
  341. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1960000.json +8 -0
  342. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1962500.json +8 -0
  343. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1965000.json +8 -0
  344. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1967500.json +8 -0
  345. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1970000.json +8 -0
  346. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1972500.json +8 -0
  347. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1975000.json +8 -0
  348. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1977500.json +8 -0
  349. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1980000.json +8 -0
  350. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1982500.json +8 -0
  351. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1985000.json +8 -0
  352. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1987500.json +8 -0
  353. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1990000.json +8 -0
  354. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1992500.json +8 -0
  355. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1995000.json +8 -0
  356. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/1997500.json +8 -0
  357. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2000000.json +8 -0
  358. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2002500.json +8 -0
  359. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2005000.json +8 -0
  360. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2007500.json +8 -0
  361. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2010000.json +8 -0
  362. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2012500.json +8 -0
  363. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2015000.json +8 -0
  364. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2017500.json +8 -0
  365. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2020000.json +8 -0
  366. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2022500.json +8 -0
  367. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2025000.json +8 -0
  368. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2027500.json +8 -0
  369. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2030000.json +8 -0
  370. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2032500.json +8 -0
  371. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2035000.json +8 -0
  372. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2037500.json +8 -0
  373. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2040000.json +8 -0
  374. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2042500.json +8 -0
  375. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2045000.json +8 -0
  376. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2047500.json +8 -0
  377. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2050000.json +8 -0
  378. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2052500.json +8 -0
  379. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2055000.json +8 -0
  380. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2057500.json +8 -0
  381. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2060000.json +8 -0
  382. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2062500.json +8 -0
  383. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2065000.json +8 -0
  384. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2067500.json +8 -0
  385. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2070000.json +8 -0
  386. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2072500.json +8 -0
  387. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2075000.json +8 -0
  388. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2077500.json +8 -0
  389. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2080000.json +8 -0
  390. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2082500.json +8 -0
  391. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2085000.json +8 -0
  392. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2087500.json +8 -0
  393. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2090000.json +8 -0
  394. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2100000.json +8 -0
  395. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2110000.json +8 -0
  396. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2120000.json +8 -0
  397. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2130000.json +8 -0
  398. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2140000.json +8 -0
  399. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2150000.json +8 -0
  400. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2160000.json +8 -0
  401. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2170000.json +8 -0
  402. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2180000.json +8 -0
  403. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2190000.json +8 -0
  404. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2200000.json +8 -0
  405. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/2210000.json +8 -0
  406. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/419200.json +7 -0
  407. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/500000.json +7 -0
  408. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/510000.json +7 -0
  409. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/520000.json +7 -0
  410. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/530000.json +7 -0
  411. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/540000.json +7 -0
  412. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/550000.json +7 -0
  413. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/560000.json +7 -0
  414. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/570000.json +7 -0
  415. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/580000.json +7 -0
  416. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/590000.json +7 -0
  417. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/600000.json +7 -0
  418. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/610000.json +7 -0
  419. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/620000.json +7 -0
  420. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/630000.json +7 -0
  421. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/640000.json +7 -0
  422. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/650000.json +7 -0
  423. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/660000.json +7 -0
  424. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/663150.json +8 -0
  425. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/670000.json +7 -0
  426. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/680000.json +7 -0
  427. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/690000.json +7 -0
  428. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/700000.json +7 -0
  429. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/710000.json +7 -0
  430. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/720000.json +7 -0
  431. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/730000.json +7 -0
  432. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/740000.json +7 -0
  433. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/750000.json +7 -0
  434. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/760000.json +7 -0
  435. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/770000.json +7 -0
  436. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/780000.json +7 -0
  437. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/790000.json +7 -0
  438. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/800000.json +7 -0
  439. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/810000.json +7 -0
  440. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/820000.json +7 -0
  441. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/830000.json +7 -0
  442. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/840000.json +7 -0
  443. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/850000.json +7 -0
  444. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/860000.json +7 -0
  445. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/870000.json +7 -0
  446. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/880000.json +7 -0
  447. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/890000.json +7 -0
  448. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/900000.json +7 -0
  449. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/910000.json +7 -0
  450. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/920000.json +7 -0
  451. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/930000.json +7 -0
  452. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/940000.json +7 -0
  453. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/950000.json +7 -0
  454. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/960000.json +7 -0
  455. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/970000.json +7 -0
  456. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/980000.json +7 -0
  457. package/ios/ZCashLightClientKit/Resources/checkpoints/mainnet/990000.json +7 -0
  458. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1000000.json +7 -0
  459. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1010000.json +7 -0
  460. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1020000.json +7 -0
  461. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1030000.json +7 -0
  462. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1040000.json +7 -0
  463. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1050000.json +7 -0
  464. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1060000.json +7 -0
  465. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1070000.json +7 -0
  466. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1080000.json +7 -0
  467. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1090000.json +7 -0
  468. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1100000.json +7 -0
  469. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1110000.json +7 -0
  470. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1120000.json +7 -0
  471. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1130000.json +7 -0
  472. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1140000.json +7 -0
  473. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1150000.json +7 -0
  474. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1160000.json +7 -0
  475. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1170000.json +7 -0
  476. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1180000.json +7 -0
  477. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1190000.json +7 -0
  478. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1200000.json +7 -0
  479. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1210000.json +7 -0
  480. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1220000.json +7 -0
  481. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1230000.json +7 -0
  482. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1240000.json +7 -0
  483. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1250000.json +7 -0
  484. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1260000.json +7 -0
  485. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1270000.json +7 -0
  486. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1280000.json +7 -0
  487. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1290000.json +7 -0
  488. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1300000.json +7 -0
  489. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1310000.json +7 -0
  490. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1320000.json +7 -0
  491. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1330000.json +7 -0
  492. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1340000.json +7 -0
  493. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1350000.json +7 -0
  494. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1360000.json +7 -0
  495. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1370000.json +7 -0
  496. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1380000.json +7 -0
  497. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1390000.json +7 -0
  498. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1400000.json +7 -0
  499. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1410000.json +7 -0
  500. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1420000.json +7 -0
  501. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1430000.json +7 -0
  502. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1440000.json +7 -0
  503. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1450000.json +7 -0
  504. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1460000.json +7 -0
  505. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1470000.json +7 -0
  506. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1480000.json +7 -0
  507. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1490000.json +7 -0
  508. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1500000.json +7 -0
  509. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1510000.json +7 -0
  510. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1520000.json +7 -0
  511. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1530000.json +7 -0
  512. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1540000.json +7 -0
  513. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1550000.json +7 -0
  514. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1560000.json +7 -0
  515. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1570000.json +7 -0
  516. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1580000.json +7 -0
  517. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1590000.json +7 -0
  518. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1600000.json +7 -0
  519. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1610000.json +7 -0
  520. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1620000.json +7 -0
  521. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1630000.json +7 -0
  522. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1640000.json +7 -0
  523. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1650000.json +7 -0
  524. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1660000.json +7 -0
  525. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1670000.json +7 -0
  526. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1680000.json +7 -0
  527. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1690000.json +7 -0
  528. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1700000.json +7 -0
  529. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1710000.json +7 -0
  530. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1720000.json +7 -0
  531. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1730000.json +7 -0
  532. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1740000.json +7 -0
  533. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1750000.json +7 -0
  534. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1760000.json +7 -0
  535. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1770000.json +7 -0
  536. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1780000.json +7 -0
  537. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1790000.json +7 -0
  538. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1800000.json +7 -0
  539. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1810000.json +7 -0
  540. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1820000.json +7 -0
  541. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1830000.json +7 -0
  542. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1840000.json +7 -0
  543. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1842420.json +8 -0
  544. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1850000.json +8 -0
  545. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1860000.json +8 -0
  546. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1870000.json +8 -0
  547. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1880000.json +8 -0
  548. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1890000.json +8 -0
  549. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1900000.json +8 -0
  550. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1910000.json +8 -0
  551. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1920000.json +8 -0
  552. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1930000.json +8 -0
  553. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1940000.json +8 -0
  554. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1950000.json +8 -0
  555. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1960000.json +8 -0
  556. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1970000.json +8 -0
  557. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1980000.json +8 -0
  558. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/1990000.json +8 -0
  559. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2000000.json +8 -0
  560. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2010000.json +8 -0
  561. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2020000.json +8 -0
  562. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2030000.json +8 -0
  563. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2040000.json +8 -0
  564. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2050000.json +8 -0
  565. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2060000.json +8 -0
  566. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2070000.json +8 -0
  567. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2080000.json +8 -0
  568. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2090000.json +8 -0
  569. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2100000.json +8 -0
  570. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2110000.json +8 -0
  571. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2120000.json +8 -0
  572. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2130000.json +8 -0
  573. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2140000.json +8 -0
  574. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2150000.json +8 -0
  575. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2160000.json +8 -0
  576. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2170000.json +8 -0
  577. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2180000.json +8 -0
  578. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2190000.json +8 -0
  579. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2200000.json +8 -0
  580. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2210000.json +8 -0
  581. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2220000.json +8 -0
  582. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2230000.json +8 -0
  583. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2240000.json +8 -0
  584. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2250000.json +8 -0
  585. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2260000.json +8 -0
  586. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2270000.json +8 -0
  587. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2280000.json +8 -0
  588. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2290000.json +8 -0
  589. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2300000.json +8 -0
  590. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2310000.json +8 -0
  591. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2320000.json +8 -0
  592. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2330000.json +8 -0
  593. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/2340000.json +8 -0
  594. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/280000.json +7 -0
  595. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/290000.json +7 -0
  596. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/300000.json +7 -0
  597. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/310000.json +7 -0
  598. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/320000.json +7 -0
  599. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/330000.json +7 -0
  600. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/340000.json +7 -0
  601. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/350000.json +7 -0
  602. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/360000.json +7 -0
  603. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/370000.json +7 -0
  604. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/380000.json +7 -0
  605. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/390000.json +7 -0
  606. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/400000.json +7 -0
  607. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/410000.json +7 -0
  608. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/420000.json +7 -0
  609. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/430000.json +7 -0
  610. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/440000.json +7 -0
  611. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/450000.json +7 -0
  612. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/460000.json +7 -0
  613. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/470000.json +7 -0
  614. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/480000.json +7 -0
  615. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/490000.json +7 -0
  616. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/500000.json +7 -0
  617. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/510000.json +7 -0
  618. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/520000.json +7 -0
  619. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/530000.json +7 -0
  620. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/540000.json +7 -0
  621. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/550000.json +7 -0
  622. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/560000.json +7 -0
  623. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/570000.json +7 -0
  624. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/580000.json +7 -0
  625. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/590000.json +7 -0
  626. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/600000.json +7 -0
  627. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/610000.json +7 -0
  628. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/620000.json +7 -0
  629. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/630000.json +7 -0
  630. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/640000.json +7 -0
  631. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/650000.json +7 -0
  632. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/660000.json +7 -0
  633. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/670000.json +7 -0
  634. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/680000.json +7 -0
  635. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/690000.json +7 -0
  636. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/700000.json +7 -0
  637. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/710000.json +7 -0
  638. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/720000.json +7 -0
  639. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/730000.json +7 -0
  640. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/740000.json +7 -0
  641. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/750000.json +7 -0
  642. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/760000.json +7 -0
  643. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/770000.json +7 -0
  644. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/780000.json +7 -0
  645. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/790000.json +7 -0
  646. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/800000.json +7 -0
  647. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/810000.json +7 -0
  648. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/820000.json +7 -0
  649. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/830000.json +7 -0
  650. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/840000.json +7 -0
  651. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/850000.json +7 -0
  652. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/860000.json +7 -0
  653. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/870000.json +7 -0
  654. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/880000.json +7 -0
  655. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/890000.json +7 -0
  656. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/900000.json +7 -0
  657. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/910000.json +7 -0
  658. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/920000.json +7 -0
  659. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/930000.json +7 -0
  660. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/940000.json +7 -0
  661. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/950000.json +7 -0
  662. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/960000.json +7 -0
  663. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/970000.json +7 -0
  664. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/980000.json +7 -0
  665. package/ios/ZCashLightClientKit/Resources/checkpoints/testnet/990000.json +7 -0
  666. package/ios/ZCashLightClientKit/Rust/ZcashKeyDerivationBackend.swift +218 -0
  667. package/ios/ZCashLightClientKit/Rust/ZcashKeyDerivationBackendWelding.swift +88 -0
  668. package/ios/ZCashLightClientKit/Rust/ZcashRustBackend.swift +645 -0
  669. package/ios/ZCashLightClientKit/Rust/ZcashRustBackendWelding.swift +256 -0
  670. package/ios/ZCashLightClientKit/Rust/zcashlc.h +1051 -0
  671. package/ios/ZCashLightClientKit/Synchronizer/ClosureSDKSynchronizer.swift +180 -0
  672. package/ios/ZCashLightClientKit/Synchronizer/CombineSDKSynchronizer.swift +175 -0
  673. package/ios/ZCashLightClientKit/Synchronizer/Dependencies.swift +207 -0
  674. package/ios/ZCashLightClientKit/Synchronizer/SDKSynchronizer.swift +663 -0
  675. package/ios/ZCashLightClientKit/Synchronizer.swift +504 -0
  676. package/ios/ZCashLightClientKit/Tool/DerivationTool.swift +207 -0
  677. package/ios/ZCashLightClientKit/Transaction/TransactionEncoder.swift +66 -0
  678. package/ios/ZCashLightClientKit/Transaction/WalletTransactionEncoder.swift +165 -0
  679. package/ios/ZCashLightClientKit/Utils/AsyncToClosureGateway.swift +46 -0
  680. package/ios/ZCashLightClientKit/Utils/AsyncToCombineGateway.swift +59 -0
  681. package/ios/ZCashLightClientKit/Utils/Clamped.swift +32 -0
  682. package/ios/ZCashLightClientKit/Utils/DIContainer.swift +86 -0
  683. package/ios/ZCashLightClientKit/Utils/GenericActor.swift +18 -0
  684. package/ios/ZCashLightClientKit/Utils/LoggingProxy.swift +48 -0
  685. package/ios/ZCashLightClientKit/Utils/OSLogger.swift +109 -0
  686. package/ios/ZCashLightClientKit/Utils/SaplingParameterDownloader.swift +159 -0
  687. package/ios/ZCashLightClientKit/Utils/SpecificCombineTypes.swift +16 -0
  688. package/ios/ZCashLightClientKit/Utils/SyncSessionIDGenerator.swift +32 -0
  689. package/ios/ZCashLightClientKit/Utils/Task+sleep.swift +14 -0
  690. package/ios/ZCashLightClientKit/Utils/UsedAliasesChecker.swift +41 -0
  691. package/ios/libzcashlc.xcframework/Info.plist +40 -0
  692. package/ios/libzcashlc.xcframework/ios-arm64/libzcashlc.a +0 -0
  693. package/ios/libzcashlc.xcframework/ios-arm64_x86_64-simulator/libzcashlc.a +0 -0
  694. package/ios/react-native-zcash-Bridging-Header.h +2 -0
  695. package/ios/react-native-zcash.xcodeproj/project.pbxproj +1 -0
  696. package/lib/rnzcash.rn.js +37 -80
  697. package/lib/rnzcash.rn.js.map +1 -1
  698. package/lib/scripts/copyCheckpoints.d.ts +5 -0
  699. package/lib/scripts/updateSources.d.ts +1 -0
  700. package/lib/src/react-native.d.ts +5 -10
  701. package/lib/src/types.d.ts +3 -4
  702. package/package.json +23 -37
  703. package/react-native-zcash.podspec +19 -8
  704. package/src/react-native.ts +15 -41
  705. package/src/types.ts +3 -4
  706. package/ios/RNZcash-Bridging-Header.h +0 -6
  707. package/ios/RNZcash.xcodeproj/project.pbxproj +0 -271
  708. package/ios/RNZcash.xcworkspace/contents.xcworkspacedata +0 -7
  709. package/ios/RNZcash.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  710. package/lib/src/browser.d.ts +0 -0
  711. package/lib/src/index.d.ts +0 -0
  712. package/lib/test/test.test.d.ts +0 -0
  713. package/scripts/copyCheckpoints.js +0 -12
  714. package/src/browser.ts +0 -36
  715. package/src/index.flow.js +0 -168
  716. package/src/index.ts +0 -1
@@ -0,0 +1,41 @@
1
+ //
2
+ // HexEncode.swift
3
+ // ZcashLightClientKit
4
+ //
5
+ // Created by Francisco Gindre on 12/13/19.
6
+ //
7
+
8
+ import Foundation
9
+ import CommonCrypto
10
+
11
+ /**
12
+ Thanks Stack Overflow (once again) https://stackoverflow.com/questions/39075043/how-to-convert-data-to-hex-string-in-swift
13
+ */
14
+ struct HexEncodingOptions: OptionSet {
15
+ public static let upperCase = HexEncodingOptions(rawValue: 1 << 0)
16
+
17
+ public let rawValue: Int
18
+
19
+ public init(rawValue: Int) {
20
+ self.rawValue = rawValue
21
+ }
22
+ }
23
+
24
+ extension Data {
25
+ func hexEncodedString(options: HexEncodingOptions = []) -> String {
26
+ z_hexEncodedString(data: self, options: options)
27
+ }
28
+ }
29
+
30
+ func z_hexEncodedString(data: Data, options: HexEncodingOptions = []) -> String {
31
+ let hexDigits = Array((options.contains(.upperCase) ? "0123456789ABCDEF" : "0123456789abcdef").utf16)
32
+ var chars: [unichar] = []
33
+
34
+ chars.reserveCapacity(2 * data.count)
35
+ for byte in data {
36
+ chars.append(hexDigits[Int(byte / 16)])
37
+ chars.append(hexDigits[Int(byte % 16)])
38
+ }
39
+
40
+ return String(utf16CodeUnits: chars, count: chars.count)
41
+ }
@@ -0,0 +1,19 @@
1
+ //
2
+ // NumberFormatter+Zcash.swift
3
+ //
4
+ // Created by Lukáš Korba on 02.06.2022.
5
+ // modified by Francisco Gindre on 6/17/22.
6
+ //
7
+
8
+ import Foundation
9
+
10
+ public extension NumberFormatter {
11
+ static let zcashNumberFormatter: NumberFormatter = {
12
+ var formatter = NumberFormatter()
13
+ formatter.maximumFractionDigits = 8
14
+ formatter.maximumIntegerDigits = 8
15
+ formatter.numberStyle = .decimal
16
+ formatter.usesGroupingSeparator = true
17
+ return formatter
18
+ }()
19
+ }
@@ -0,0 +1,36 @@
1
+ //
2
+ // URL+UpdateWithAlias.swift
3
+ //
4
+ //
5
+ // Created by Michal Fousek on 23.03.2023.
6
+ //
7
+
8
+ import Foundation
9
+
10
+ extension URL {
11
+ /// Try to update URLs with `alias`.
12
+ ///
13
+ /// If the `default` alias is used then the URL isn't changed at all.
14
+ /// If the `custom("anotherInstance")` is used then last path component or the URL is updated like this:
15
+ /// - /some/path/to.file -> /some/path/c_anotherInstance_to.file
16
+ /// - /some/path/to/directory -> /some/path/to/c_anotherInstance_directory
17
+ ///
18
+ /// If the URLs can't be parsed then `nil` is returned.
19
+ func updateLastPathComponent(with alias: ZcashSynchronizerAlias) -> URL? {
20
+ let lastPathComponent = self.lastPathComponent
21
+ guard !lastPathComponent.isEmpty else {
22
+ return nil
23
+ }
24
+
25
+ switch alias {
26
+ case .`default`:
27
+ // When using default alias everything should work as before aliases to be backwards compatible.
28
+ return self
29
+
30
+ case .custom:
31
+ let newLastPathComponent = "\(alias.description)_\(lastPathComponent)"
32
+ return self.deletingLastPathComponent()
33
+ .appendingPathComponent(newLastPathComponent)
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,22 @@
1
+ //
2
+ // undescribable.swift
3
+ //
4
+ //
5
+ // Created by Francisco Gindre on 8/30/22.
6
+ //
7
+
8
+ public protocol Undescribable: CustomStringConvertible, CustomDebugStringConvertible, CustomLeafReflectable {}
9
+
10
+ extension Undescribable {
11
+ public var description: String {
12
+ return "--redacted--"
13
+ }
14
+
15
+ public var debugDescription: String {
16
+ return "--redacted--"
17
+ }
18
+
19
+ public var customMirror: Mirror {
20
+ return Mirror(reflecting: "--redacted--")
21
+ }
22
+ }
@@ -0,0 +1,20 @@
1
+ //
2
+ // Zatoshi+SQLite.swift
3
+ //
4
+ //
5
+ // Created by Francisco Gindre on 6/20/22.
6
+ //
7
+
8
+ import SQLite
9
+
10
+ extension Zatoshi: Value {
11
+ public static let declaredDatatype = Int64.declaredDatatype
12
+
13
+ public static func fromDatatypeValue(_ datatypeValue: Int64) -> Zatoshi {
14
+ Zatoshi(datatypeValue)
15
+ }
16
+
17
+ public var datatypeValue: Int64 {
18
+ self.amount
19
+ }
20
+ }
@@ -0,0 +1,26 @@
1
+ //
2
+ // ZcashRust+Utils.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
+ Attempts to show the data as a Zcash Transaction Memo
12
+ */
13
+ public extension Data {
14
+ func asZcashTransactionMemo() -> String? {
15
+ String(data: self, encoding: .utf8)
16
+ }
17
+ }
18
+
19
+ /**
20
+ Attempts to convert this string to a Zcash Transaction Memo data
21
+ */
22
+ public extension String {
23
+ func encodeAsZcashTransactionMemo() -> Data? {
24
+ return self.data(using: .utf8)
25
+ }
26
+ }
@@ -0,0 +1,34 @@
1
+ //
2
+ // ZcashSDK+extensions.swift
3
+ // ZcashLightClientKit
4
+ //
5
+ // Created by Francisco Gindre on 12/8/20.
6
+ //
7
+
8
+ import Foundation
9
+
10
+ public typealias ConsensusBranchID = Int32
11
+
12
+ public extension ConsensusBranchID {
13
+ func toString() -> String {
14
+ String(format: "%02x", self)
15
+ }
16
+
17
+ static func fromString(_ str: String) -> ConsensusBranchID? {
18
+ guard let bitpattern = UInt32(str, radix: 16) else { return nil }
19
+ return Int32(bitPattern: bitpattern)
20
+ }
21
+ }
22
+
23
+ extension NetworkType {
24
+ init?(_ string: String) {
25
+ switch string {
26
+ case "main":
27
+ self = .mainnet
28
+ case "test":
29
+ self = .testnet
30
+ default:
31
+ return nil
32
+ }
33
+ }
34
+ }
@@ -0,0 +1,433 @@
1
+ //
2
+ // Initializer.swift
3
+ // ZcashLightClientKit
4
+ //
5
+ // Created by Francisco Gindre on 13/09/2019.
6
+ // Copyright © 2019 Electric Coin Company. All rights reserved.
7
+ //
8
+
9
+ import Foundation
10
+
11
+ /**
12
+ Represents a lightwallet instance endpoint to connect to
13
+ */
14
+ public struct LightWalletEndpoint {
15
+ public let host: String
16
+ public let port: Int
17
+ public let secure: Bool
18
+ public let singleCallTimeoutInMillis: Int64
19
+ public let streamingCallTimeoutInMillis: Int64
20
+
21
+ /**
22
+ initializes a LightWalletEndpoint
23
+ - Parameters:
24
+ - address: a String containing the host address
25
+ - port: string with the port of the host address
26
+ - secure: true if connecting through TLS. Default value is true
27
+ - singleCallTimeoutInMillis: timeout for single calls in Milliseconds. Default 30 seconds
28
+ - streamingCallTimeoutInMillis: timeout for streaming calls in Milliseconds. Default 100 seconds
29
+ */
30
+ public init(
31
+ address: String,
32
+ port: Int,
33
+ secure: Bool = true,
34
+ singleCallTimeoutInMillis: Int64 = 30000,
35
+ streamingCallTimeoutInMillis: Int64 = 100000
36
+ ) {
37
+ self.host = address
38
+ self.port = port
39
+ self.secure = secure
40
+ self.singleCallTimeoutInMillis = singleCallTimeoutInMillis
41
+ self.streamingCallTimeoutInMillis = streamingCallTimeoutInMillis
42
+ }
43
+ }
44
+
45
+ /// This contains URLs from which can the SDK fetch files that contain sapling parameters.
46
+ /// Use `SaplingParamsSourceURL.default` when initilizing the SDK.
47
+ public struct SaplingParamsSourceURL {
48
+ public let spendParamFileURL: URL
49
+ public let outputParamFileURL: URL
50
+
51
+ public static var `default`: SaplingParamsSourceURL {
52
+ return SaplingParamsSourceURL(spendParamFileURL: ZcashSDK.spendParamFileURL, outputParamFileURL: ZcashSDK.outputParamFileURL)
53
+ }
54
+ }
55
+
56
+ /// This identifies different instances of the synchronizer. It is usefull when the client app wants to support multiple wallets (with different
57
+ /// seeds) in one app. If the client app support only one wallet then it doesn't have to care about alias atall.
58
+ ///
59
+ /// When custom alias is used to create instance of the synchronizer then paths to all resources (databases, storages...) are updated accordingly to
60
+ /// be sure that each instance is using unique paths to resources.
61
+ ///
62
+ /// Custom alias identifiers shouldn't contain any confidential information because it may be logged. It also should have a reasonable length and
63
+ /// form. It will be part of the paths to the files (databases, storage...)
64
+ ///
65
+ /// IMPORTANT: Always use `default` alias for one of the instances of the synchronizer.
66
+ public enum ZcashSynchronizerAlias: Hashable {
67
+ case `default`
68
+ case custom(String)
69
+ }
70
+
71
+ extension ZcashSynchronizerAlias: CustomStringConvertible {
72
+ public var description: String {
73
+ switch self {
74
+ case .`default`:
75
+ return "default"
76
+ case let .custom(alias):
77
+ return "c_\(alias)"
78
+ }
79
+ }
80
+ }
81
+
82
+ /**
83
+ Wrapper for all the Rust backend functionality that does not involve processing blocks. This
84
+ class initializes the Rust backend and the supporting data required to exercise those abilities.
85
+ The [cash.z.wallet.sdk.block.CompactBlockProcessor] handles all the remaining Rust backend
86
+ functionality, related to processing blocks.
87
+ */
88
+ // swiftlint:disable:next type_body_length
89
+ public class Initializer {
90
+ struct URLs {
91
+ let fsBlockDbRoot: URL
92
+ let dataDbURL: URL
93
+ let spendParamsURL: URL
94
+ let outputParamsURL: URL
95
+ }
96
+
97
+ public enum InitializationResult {
98
+ case success
99
+ case seedRequired
100
+ }
101
+
102
+ public enum LoggingPolicy {
103
+ case `default`(OSLogger.LogLevel)
104
+ case custom(Logger)
105
+ case noLogging
106
+ }
107
+
108
+ // This is used to uniquely identify instance of the SDKSynchronizer. It's used when checking if the Alias is already used or not.
109
+ let id = UUID()
110
+
111
+ let container: DIContainer
112
+ let alias: ZcashSynchronizerAlias
113
+ let endpoint: LightWalletEndpoint
114
+ let fsBlockDbRoot: URL
115
+ let dataDbURL: URL
116
+ let spendParamsURL: URL
117
+ let outputParamsURL: URL
118
+ let saplingParamsSourceURL: SaplingParamsSourceURL
119
+ let lightWalletService: LightWalletService
120
+ let transactionRepository: TransactionRepository
121
+ let accountRepository: AccountRepository
122
+ let storage: CompactBlockRepository
123
+ let blockDownloaderService: BlockDownloaderService
124
+ let network: ZcashNetwork
125
+ let logger: Logger
126
+ let rustBackend: ZcashRustBackendWelding
127
+
128
+ /// The effective birthday of the wallet based on the height provided when initializing and the checkpoints available on this SDK.
129
+ ///
130
+ /// This contains valid value only after `initialize` function is called.
131
+ public private(set) var walletBirthday: BlockHeight
132
+
133
+ /// The purpose of this to migrate from cacheDb to fsBlockDb
134
+ private let cacheDbURL: URL?
135
+
136
+ /// Error that can be created when updating URLs according to alias. If this error is created then it is thrown from `SDKSynchronizer.prepare()`
137
+ /// or `SDKSynchronizer.wipe()`.
138
+ var urlsParsingError: ZcashError?
139
+
140
+ /// Constructs the Initializer and migrates an old cacheDb to the new file system block cache if a `cacheDbURL` is provided.
141
+ /// - Parameters:
142
+ /// - cacheDbURL: previous location of the cacheDb. If you don't know what a cacheDb is and you are adopting this SDK for the first time then
143
+ /// just pass `nil` here.
144
+ /// - fsBlockDbRoot: location of the compact blocks cache
145
+ /// - dataDbURL: Location of the data db
146
+ /// - endpoint: the endpoint representing the lightwalletd instance you want to point to
147
+ /// - spendParamsURL: location of the spend parameters
148
+ /// - outputParamsURL: location of the output parameters
149
+ convenience public init(
150
+ cacheDbURL: URL?,
151
+ fsBlockDbRoot: URL,
152
+ dataDbURL: URL,
153
+ endpoint: LightWalletEndpoint,
154
+ network: ZcashNetwork,
155
+ spendParamsURL: URL,
156
+ outputParamsURL: URL,
157
+ saplingParamsSourceURL: SaplingParamsSourceURL,
158
+ alias: ZcashSynchronizerAlias = .default,
159
+ loggingPolicy: LoggingPolicy = .default(.debug)
160
+ ) {
161
+ let container = DIContainer()
162
+
163
+ // It's not possible to fail from constructor. Technically it's possible but it can be pain for the client apps to handle errors thrown
164
+ // from constructor. So `parsingError` is just stored in initializer and `SDKSynchronizer.prepare()` throw this error if it exists.
165
+ let (updatedURLs, parsingError) = Self.setup(
166
+ container: container,
167
+ cacheDbURL: cacheDbURL,
168
+ fsBlockDbRoot: fsBlockDbRoot,
169
+ dataDbURL: dataDbURL,
170
+ endpoint: endpoint,
171
+ network: network,
172
+ spendParamsURL: spendParamsURL,
173
+ outputParamsURL: outputParamsURL,
174
+ saplingParamsSourceURL: saplingParamsSourceURL,
175
+ alias: alias,
176
+ loggingPolicy: loggingPolicy
177
+ )
178
+
179
+ self.init(
180
+ container: container,
181
+ cacheDbURL: cacheDbURL,
182
+ urls: updatedURLs,
183
+ endpoint: endpoint,
184
+ network: network,
185
+ saplingParamsSourceURL: saplingParamsSourceURL,
186
+ alias: alias,
187
+ urlsParsingError: parsingError,
188
+ loggingPolicy: loggingPolicy
189
+ )
190
+ }
191
+
192
+ /// Internal for dependency injection purposes.
193
+ convenience init(
194
+ container: DIContainer,
195
+ cacheDbURL: URL?,
196
+ fsBlockDbRoot: URL,
197
+ dataDbURL: URL,
198
+ endpoint: LightWalletEndpoint,
199
+ network: ZcashNetwork,
200
+ spendParamsURL: URL,
201
+ outputParamsURL: URL,
202
+ saplingParamsSourceURL: SaplingParamsSourceURL,
203
+ alias: ZcashSynchronizerAlias = .default,
204
+ loggingPolicy: LoggingPolicy = .default(.debug)
205
+ ) {
206
+ // It's not possible to fail from constructor. Technically it's possible but it can be pain for the client apps to handle errors thrown
207
+ // from constructor. So `parsingError` is just stored in initializer and `SDKSynchronizer.prepare()` throw this error if it exists.
208
+ let (updatedURLs, parsingError) = Self.setup(
209
+ container: container,
210
+ cacheDbURL: cacheDbURL,
211
+ fsBlockDbRoot: fsBlockDbRoot,
212
+ dataDbURL: dataDbURL,
213
+ endpoint: endpoint,
214
+ network: network,
215
+ spendParamsURL: spendParamsURL,
216
+ outputParamsURL: outputParamsURL,
217
+ saplingParamsSourceURL: saplingParamsSourceURL,
218
+ alias: alias,
219
+ loggingPolicy: loggingPolicy
220
+ )
221
+
222
+ self.init(
223
+ container: container,
224
+ cacheDbURL: cacheDbURL,
225
+ urls: updatedURLs,
226
+ endpoint: endpoint,
227
+ network: network,
228
+ saplingParamsSourceURL: saplingParamsSourceURL,
229
+ alias: alias,
230
+ urlsParsingError: parsingError,
231
+ loggingPolicy: loggingPolicy
232
+ )
233
+ }
234
+
235
+ private init(
236
+ container: DIContainer,
237
+ cacheDbURL: URL?,
238
+ urls: URLs,
239
+ endpoint: LightWalletEndpoint,
240
+ network: ZcashNetwork,
241
+ saplingParamsSourceURL: SaplingParamsSourceURL,
242
+ alias: ZcashSynchronizerAlias,
243
+ urlsParsingError: ZcashError?,
244
+ loggingPolicy: LoggingPolicy = .default(.debug)
245
+ ) {
246
+ self.container = container
247
+ self.cacheDbURL = cacheDbURL
248
+ self.rustBackend = container.resolve(ZcashRustBackendWelding.self)
249
+ self.fsBlockDbRoot = urls.fsBlockDbRoot
250
+ self.dataDbURL = urls.dataDbURL
251
+ self.endpoint = endpoint
252
+ self.spendParamsURL = urls.spendParamsURL
253
+ self.outputParamsURL = urls.outputParamsURL
254
+ self.saplingParamsSourceURL = saplingParamsSourceURL
255
+ self.alias = alias
256
+ self.lightWalletService = container.resolve(LightWalletService.self)
257
+ self.transactionRepository = container.resolve(TransactionRepository.self)
258
+ self.accountRepository = AccountRepositoryBuilder.build(
259
+ dataDbURL: urls.dataDbURL,
260
+ readOnly: true,
261
+ caching: true,
262
+ logger: container.resolve(Logger.self)
263
+ )
264
+ self.storage = container.resolve(CompactBlockRepository.self)
265
+ self.blockDownloaderService = container.resolve(BlockDownloaderService.self)
266
+ self.network = network
267
+ self.walletBirthday = Checkpoint.birthday(with: 0, network: network).height
268
+ self.urlsParsingError = urlsParsingError
269
+ self.logger = container.resolve(Logger.self)
270
+ }
271
+
272
+ private static func makeLightWalletServiceFactory(endpoint: LightWalletEndpoint) -> LightWalletServiceFactory {
273
+ return LightWalletServiceFactory(endpoint: endpoint)
274
+ }
275
+
276
+ // swiftlint:disable:next function_parameter_count
277
+ private static func setup(
278
+ container: DIContainer,
279
+ cacheDbURL: URL?,
280
+ fsBlockDbRoot: URL,
281
+ dataDbURL: URL,
282
+ endpoint: LightWalletEndpoint,
283
+ network: ZcashNetwork,
284
+ spendParamsURL: URL,
285
+ outputParamsURL: URL,
286
+ saplingParamsSourceURL: SaplingParamsSourceURL,
287
+ alias: ZcashSynchronizerAlias,
288
+ loggingPolicy: LoggingPolicy = .default(.debug)
289
+ ) -> (URLs, ZcashError?) {
290
+ let urls = URLs(
291
+ fsBlockDbRoot: fsBlockDbRoot,
292
+ dataDbURL: dataDbURL,
293
+ spendParamsURL: spendParamsURL,
294
+ outputParamsURL: outputParamsURL
295
+ )
296
+
297
+ // It's not possible to fail from constructor. Technically it's possible but it can be pain for the client apps to handle errors thrown
298
+ // from constructor. So `parsingError` is just stored in initializer and `SDKSynchronizer.prepare()` throw this error if it exists.
299
+ let (updatedURLs, parsingError) = Self.tryToUpdateURLs(with: alias, urls: urls)
300
+
301
+ Dependencies.setup(
302
+ in: container,
303
+ urls: updatedURLs,
304
+ alias: alias,
305
+ networkType: network.networkType,
306
+ endpoint: endpoint,
307
+ loggingPolicy: loggingPolicy
308
+ )
309
+
310
+ return (updatedURLs, parsingError)
311
+ }
312
+
313
+ /// Try to update URLs with `alias`.
314
+ ///
315
+ /// If the `default` alias is used then the URLs are changed at all.
316
+ /// If the `custom("anotherInstance")` is used then last path component or the URL is updated like this:
317
+ /// - /some/path/to.file -> /some/path/c_anotherInstance_to.file
318
+ /// - /some/path/to/directory -> /some/path/to/c_anotherInstance_directory
319
+ ///
320
+ /// If any of the URLs can't be parsed then returned error isn't nil.
321
+ static func tryToUpdateURLs(
322
+ with alias: ZcashSynchronizerAlias,
323
+ urls: URLs
324
+ ) -> (URLs, ZcashError?) {
325
+ let updatedURLsResult = Self.updateURLs(with: alias, urls: urls)
326
+
327
+ let parsingError: ZcashError?
328
+ let updatedURLs: URLs
329
+ switch updatedURLsResult {
330
+ case let .success(updated):
331
+ parsingError = nil
332
+ updatedURLs = updated
333
+ case let .failure(error):
334
+ parsingError = error
335
+ // When failure happens just use original URLs because something must be used. But this shouldn't be a problem because
336
+ // `SDKSynchronizer.prepare()` handles this error. And the SDK won't work if it isn't switched from `unprepared` state.
337
+ updatedURLs = urls
338
+ }
339
+
340
+ return (updatedURLs, parsingError)
341
+ }
342
+
343
+ private static func updateURLs(
344
+ with alias: ZcashSynchronizerAlias,
345
+ urls: URLs
346
+ ) -> Result<URLs, ZcashError> {
347
+ guard let updatedFsBlockDbRoot = urls.fsBlockDbRoot.updateLastPathComponent(with: alias) else {
348
+ return .failure(.initializerCantUpdateURLWithAlias(urls.fsBlockDbRoot))
349
+ }
350
+
351
+ guard let updatedDataDbURL = urls.dataDbURL.updateLastPathComponent(with: alias) else {
352
+ return .failure(.initializerCantUpdateURLWithAlias(urls.dataDbURL))
353
+ }
354
+
355
+ guard let updatedSpendParamsURL = urls.spendParamsURL.updateLastPathComponent(with: alias) else {
356
+ return .failure(.initializerCantUpdateURLWithAlias(urls.spendParamsURL))
357
+ }
358
+
359
+ guard let updateOutputParamsURL = urls.outputParamsURL.updateLastPathComponent(with: alias) else {
360
+ return .failure(.initializerCantUpdateURLWithAlias(urls.outputParamsURL))
361
+ }
362
+
363
+ return .success(
364
+ URLs(
365
+ fsBlockDbRoot: updatedFsBlockDbRoot,
366
+ dataDbURL: updatedDataDbURL,
367
+ spendParamsURL: updatedSpendParamsURL,
368
+ outputParamsURL: updateOutputParamsURL
369
+ )
370
+ )
371
+ }
372
+
373
+ /// Initialize the wallet. The ZIP-32 seed bytes can optionally be passed to perform
374
+ /// database migrations. most of the times the seed won't be needed. If they do and are
375
+ /// not provided this will fail with `InitializationResult.seedRequired`. It could
376
+ /// be the case that this method is invoked by a wallet that does not contain the seed phrase
377
+ /// and is view-only, or by a wallet that does have the seed but the process does not have the
378
+ /// consent of the OS to fetch the keys from the secure storage, like on background tasks.
379
+ ///
380
+ /// 'cache.db' and 'data.db' files are created by this function (if they
381
+ /// do not already exist). These files can be given a prefix for scenarios where multiple wallets
382
+ ///
383
+ /// - Parameter seed: ZIP-32 Seed bytes for the wallet that will be initialized
384
+ /// - Throws: `InitializerError.dataDbInitFailed` if the creation of the dataDb fails
385
+ /// `InitializerError.accountInitFailed` if the account table can't be initialized.
386
+ func initialize(with seed: [UInt8]?, viewingKeys: [UnifiedFullViewingKey], walletBirthday: BlockHeight) async throws -> InitializationResult {
387
+ try await storage.create()
388
+
389
+ if case .seedRequired = try await rustBackend.initDataDb(seed: seed) {
390
+ return .seedRequired
391
+ }
392
+
393
+ let checkpoint = Checkpoint.birthday(with: walletBirthday, network: network)
394
+ do {
395
+ try await rustBackend.initBlocksTable(
396
+ height: Int32(checkpoint.height),
397
+ hash: checkpoint.hash,
398
+ time: checkpoint.time,
399
+ saplingTree: checkpoint.saplingTree
400
+ )
401
+ } catch ZcashError.rustInitBlocksTableDataDbNotEmpty {
402
+ // this is fine
403
+ } catch {
404
+ throw error
405
+ }
406
+
407
+ self.walletBirthday = checkpoint.height
408
+
409
+ do {
410
+ try await rustBackend.initAccountsTable(ufvks: viewingKeys)
411
+ } catch ZcashError.rustInitAccountsTableDataDbNotEmpty {
412
+ // this is fine
413
+ } catch {
414
+ throw error
415
+ }
416
+
417
+ return .success
418
+ }
419
+
420
+ /**
421
+ checks if the provided address is a valid sapling address
422
+ */
423
+ public func isValidSaplingAddress(_ address: String) -> Bool {
424
+ DerivationTool(networkType: network.networkType).isValidSaplingAddress(address)
425
+ }
426
+
427
+ /**
428
+ checks if the provided address is a transparent zAddress
429
+ */
430
+ public func isValidTransparentAddress(_ address: String) -> Bool {
431
+ DerivationTool(networkType: network.networkType).isValidTransparentAddress(address)
432
+ }
433
+ }