nem-libray 2.0.0-RC4

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 (388) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +30 -0
  3. package/dist/index.d.ts +4 -0
  4. package/dist/index.js +38 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/src/NEMLibrary.d.ts +25 -0
  7. package/dist/src/NEMLibrary.js +69 -0
  8. package/dist/src/NEMLibrary.js.map +1 -0
  9. package/dist/src/infrastrcture.d.ts +13 -0
  10. package/dist/src/infrastrcture.js +44 -0
  11. package/dist/src/infrastrcture.js.map +1 -0
  12. package/dist/src/infrastructure/AccountHttp.d.ts +204 -0
  13. package/dist/src/infrastructure/AccountHttp.js +415 -0
  14. package/dist/src/infrastructure/AccountHttp.js.map +1 -0
  15. package/dist/src/infrastructure/AccountListener.d.ts +20 -0
  16. package/dist/src/infrastructure/AccountListener.js +71 -0
  17. package/dist/src/infrastructure/AccountListener.js.map +1 -0
  18. package/dist/src/infrastructure/AllTransactionsPageable.d.ts +1 -0
  19. package/dist/src/infrastructure/AllTransactionsPageable.js +35 -0
  20. package/dist/src/infrastructure/AllTransactionsPageable.js.map +1 -0
  21. package/dist/src/infrastructure/AssetHttp.d.ts +36 -0
  22. package/dist/src/infrastructure/AssetHttp.js +85 -0
  23. package/dist/src/infrastructure/AssetHttp.js.map +1 -0
  24. package/dist/src/infrastructure/BlockHttp.d.ts +14 -0
  25. package/dist/src/infrastructure/BlockHttp.js +54 -0
  26. package/dist/src/infrastructure/BlockHttp.js.map +1 -0
  27. package/dist/src/infrastructure/BlockchainListener.d.ts +24 -0
  28. package/dist/src/infrastructure/BlockchainListener.js +93 -0
  29. package/dist/src/infrastructure/BlockchainListener.js.map +1 -0
  30. package/dist/src/infrastructure/ChainHttp.d.ts +23 -0
  31. package/dist/src/infrastructure/ChainHttp.js +68 -0
  32. package/dist/src/infrastructure/ChainHttp.js.map +1 -0
  33. package/dist/src/infrastructure/ConfirmedTransactionListener.d.ts +20 -0
  34. package/dist/src/infrastructure/ConfirmedTransactionListener.js +76 -0
  35. package/dist/src/infrastructure/ConfirmedTransactionListener.js.map +1 -0
  36. package/dist/src/infrastructure/HarvestInfoPageable.d.ts +1 -0
  37. package/dist/src/infrastructure/HarvestInfoPageable.js +52 -0
  38. package/dist/src/infrastructure/HarvestInfoPageable.js.map +1 -0
  39. package/dist/src/infrastructure/HttpEndpoint.d.ts +15 -0
  40. package/dist/src/infrastructure/HttpEndpoint.js +132 -0
  41. package/dist/src/infrastructure/HttpEndpoint.js.map +1 -0
  42. package/dist/src/infrastructure/IncomingTransactionsPageable.d.ts +1 -0
  43. package/dist/src/infrastructure/IncomingTransactionsPageable.js +29 -0
  44. package/dist/src/infrastructure/IncomingTransactionsPageable.js.map +1 -0
  45. package/dist/src/infrastructure/Listener.d.ts +14 -0
  46. package/dist/src/infrastructure/Listener.js +101 -0
  47. package/dist/src/infrastructure/Listener.js.map +1 -0
  48. package/dist/src/infrastructure/NamespaceHttp.d.ts +27 -0
  49. package/dist/src/infrastructure/NamespaceHttp.js +78 -0
  50. package/dist/src/infrastructure/NamespaceHttp.js.map +1 -0
  51. package/dist/src/infrastructure/NamespacesPageable.d.ts +1 -0
  52. package/dist/src/infrastructure/NamespacesPageable.js +28 -0
  53. package/dist/src/infrastructure/NamespacesPageable.js.map +1 -0
  54. package/dist/src/infrastructure/NodeHttp.d.ts +45 -0
  55. package/dist/src/infrastructure/NodeHttp.js +116 -0
  56. package/dist/src/infrastructure/NodeHttp.js.map +1 -0
  57. package/dist/src/infrastructure/OutgoingTransactionsPageable.d.ts +1 -0
  58. package/dist/src/infrastructure/OutgoingTransactionsPageable.js +59 -0
  59. package/dist/src/infrastructure/OutgoingTransactionsPageable.js.map +1 -0
  60. package/dist/src/infrastructure/Pageable.d.ts +10 -0
  61. package/dist/src/infrastructure/Pageable.js +55 -0
  62. package/dist/src/infrastructure/Pageable.js.map +1 -0
  63. package/dist/src/infrastructure/TransactionHttp.d.ts +20 -0
  64. package/dist/src/infrastructure/TransactionHttp.js +68 -0
  65. package/dist/src/infrastructure/TransactionHttp.js.map +1 -0
  66. package/dist/src/infrastructure/UnconfirmedTransactionListener.d.ts +20 -0
  67. package/dist/src/infrastructure/UnconfirmedTransactionListener.js +76 -0
  68. package/dist/src/infrastructure/UnconfirmedTransactionListener.js.map +1 -0
  69. package/dist/src/infrastructure/account/AccountHistoricalDataViewModelDTO.d.ts +1 -0
  70. package/dist/src/infrastructure/account/AccountHistoricalDataViewModelDTO.js +26 -0
  71. package/dist/src/infrastructure/account/AccountHistoricalDataViewModelDTO.js.map +1 -0
  72. package/dist/src/infrastructure/account/AccountImportanceViewModelDTO.d.ts +1 -0
  73. package/dist/src/infrastructure/account/AccountImportanceViewModelDTO.js +26 -0
  74. package/dist/src/infrastructure/account/AccountImportanceViewModelDTO.js.map +1 -0
  75. package/dist/src/infrastructure/account/AccountInfoDTO.d.ts +10 -0
  76. package/dist/src/infrastructure/account/AccountInfoDTO.js +26 -0
  77. package/dist/src/infrastructure/account/AccountInfoDTO.js.map +1 -0
  78. package/dist/src/infrastructure/account/AccountMetaDataDTO.d.ts +1 -0
  79. package/dist/src/infrastructure/account/AccountMetaDataDTO.js +26 -0
  80. package/dist/src/infrastructure/account/AccountMetaDataDTO.js.map +1 -0
  81. package/dist/src/infrastructure/account/AccountMetaDataPairDTO.d.ts +1 -0
  82. package/dist/src/infrastructure/account/AccountMetaDataPairDTO.js +26 -0
  83. package/dist/src/infrastructure/account/AccountMetaDataPairDTO.js.map +1 -0
  84. package/dist/src/infrastructure/account/AccountPrivateKeyTransactionsPageDTO.d.ts +1 -0
  85. package/dist/src/infrastructure/account/AccountPrivateKeyTransactionsPageDTO.js +26 -0
  86. package/dist/src/infrastructure/account/AccountPrivateKeyTransactionsPageDTO.js.map +1 -0
  87. package/dist/src/infrastructure/account/HarvestInfoDTO.d.ts +1 -0
  88. package/dist/src/infrastructure/account/HarvestInfoDTO.js +26 -0
  89. package/dist/src/infrastructure/account/HarvestInfoDTO.js.map +1 -0
  90. package/dist/src/infrastructure/account/KeyPairViewModelDTO.d.ts +1 -0
  91. package/dist/src/infrastructure/account/KeyPairViewModelDTO.js +26 -0
  92. package/dist/src/infrastructure/account/KeyPairViewModelDTO.js.map +1 -0
  93. package/dist/src/infrastructure/account/PrivateKeyDTO.d.ts +1 -0
  94. package/dist/src/infrastructure/account/PrivateKeyDTO.js +26 -0
  95. package/dist/src/infrastructure/account/PrivateKeyDTO.js.map +1 -0
  96. package/dist/src/infrastructure/asset/MosaicDTO.d.ts +1 -0
  97. package/dist/src/infrastructure/asset/MosaicDTO.js +26 -0
  98. package/dist/src/infrastructure/asset/MosaicDTO.js.map +1 -0
  99. package/dist/src/infrastructure/asset/MosaicDefinitionDTO.d.ts +1 -0
  100. package/dist/src/infrastructure/asset/MosaicDefinitionDTO.js +26 -0
  101. package/dist/src/infrastructure/asset/MosaicDefinitionDTO.js.map +1 -0
  102. package/dist/src/infrastructure/asset/MosaicDefinitionMetaDataPairDTO.d.ts +1 -0
  103. package/dist/src/infrastructure/asset/MosaicDefinitionMetaDataPairDTO.js +26 -0
  104. package/dist/src/infrastructure/asset/MosaicDefinitionMetaDataPairDTO.js.map +1 -0
  105. package/dist/src/infrastructure/asset/MosaicIdDTO.d.ts +1 -0
  106. package/dist/src/infrastructure/asset/MosaicIdDTO.js +26 -0
  107. package/dist/src/infrastructure/asset/MosaicIdDTO.js.map +1 -0
  108. package/dist/src/infrastructure/asset/MosaicLevyDTO.d.ts +1 -0
  109. package/dist/src/infrastructure/asset/MosaicLevyDTO.js +26 -0
  110. package/dist/src/infrastructure/asset/MosaicLevyDTO.js.map +1 -0
  111. package/dist/src/infrastructure/asset/MosaicPropertyDTO.d.ts +8 -0
  112. package/dist/src/infrastructure/asset/MosaicPropertyDTO.js +26 -0
  113. package/dist/src/infrastructure/asset/MosaicPropertyDTO.js.map +1 -0
  114. package/dist/src/infrastructure/blockchain/BlockChainScoreDTO.d.ts +1 -0
  115. package/dist/src/infrastructure/blockchain/BlockChainScoreDTO.js +26 -0
  116. package/dist/src/infrastructure/blockchain/BlockChainScoreDTO.js.map +1 -0
  117. package/dist/src/infrastructure/blockchain/BlockDTO.d.ts +6 -0
  118. package/dist/src/infrastructure/blockchain/BlockDTO.js +26 -0
  119. package/dist/src/infrastructure/blockchain/BlockDTO.js.map +1 -0
  120. package/dist/src/infrastructure/blockchain/BlockHeightDTO.d.ts +1 -0
  121. package/dist/src/infrastructure/blockchain/BlockHeightDTO.js +26 -0
  122. package/dist/src/infrastructure/blockchain/BlockHeightDTO.js.map +1 -0
  123. package/dist/src/infrastructure/blockchain/ExplorerBlockViewModelDTO.d.ts +1 -0
  124. package/dist/src/infrastructure/blockchain/ExplorerBlockViewModelDTO.js +26 -0
  125. package/dist/src/infrastructure/blockchain/ExplorerBlockViewModelDTO.js.map +1 -0
  126. package/dist/src/infrastructure/debug/AuditCollectionDTO.d.ts +22 -0
  127. package/dist/src/infrastructure/debug/AuditCollectionDTO.js +26 -0
  128. package/dist/src/infrastructure/debug/AuditCollectionDTO.js.map +1 -0
  129. package/dist/src/infrastructure/debug/NemAsyncTimerVisitorDTO.d.ts +1 -0
  130. package/dist/src/infrastructure/debug/NemAsyncTimerVisitorDTO.js +26 -0
  131. package/dist/src/infrastructure/debug/NemAsyncTimerVisitorDTO.js.map +1 -0
  132. package/dist/src/infrastructure/debug/NisNodeInfoDTO.d.ts +1 -0
  133. package/dist/src/infrastructure/debug/NisNodeInfoDTO.js +26 -0
  134. package/dist/src/infrastructure/debug/NisNodeInfoDTO.js.map +1 -0
  135. package/dist/src/infrastructure/debug/TimeSynchronizationResultDTO.d.ts +1 -0
  136. package/dist/src/infrastructure/debug/TimeSynchronizationResultDTO.js +26 -0
  137. package/dist/src/infrastructure/debug/TimeSynchronizationResultDTO.js.map +1 -0
  138. package/dist/src/infrastructure/namespace/NamespaceDTO.d.ts +1 -0
  139. package/dist/src/infrastructure/namespace/NamespaceDTO.js +26 -0
  140. package/dist/src/infrastructure/namespace/NamespaceDTO.js.map +1 -0
  141. package/dist/src/infrastructure/namespace/NamespaceMetaDataPairDTO.d.ts +1 -0
  142. package/dist/src/infrastructure/namespace/NamespaceMetaDataPairDTO.js +26 -0
  143. package/dist/src/infrastructure/namespace/NamespaceMetaDataPairDTO.js.map +1 -0
  144. package/dist/src/infrastructure/node/ApplicationMetaDataDTO.d.ts +1 -0
  145. package/dist/src/infrastructure/node/ApplicationMetaDataDTO.js +26 -0
  146. package/dist/src/infrastructure/node/ApplicationMetaDataDTO.js.map +1 -0
  147. package/dist/src/infrastructure/node/BootNodeRequestDTO.d.ts +1 -0
  148. package/dist/src/infrastructure/node/BootNodeRequestDTO.js +26 -0
  149. package/dist/src/infrastructure/node/BootNodeRequestDTO.js.map +1 -0
  150. package/dist/src/infrastructure/node/CommunicationTimeStampsDTO.d.ts +1 -0
  151. package/dist/src/infrastructure/node/CommunicationTimeStampsDTO.js +26 -0
  152. package/dist/src/infrastructure/node/CommunicationTimeStampsDTO.js.map +1 -0
  153. package/dist/src/infrastructure/node/ExtendedNodeExperiencePairDTO.d.ts +1 -0
  154. package/dist/src/infrastructure/node/ExtendedNodeExperiencePairDTO.js +26 -0
  155. package/dist/src/infrastructure/node/ExtendedNodeExperiencePairDTO.js.map +1 -0
  156. package/dist/src/infrastructure/node/NodeCollectionDTO.d.ts +1 -0
  157. package/dist/src/infrastructure/node/NodeCollectionDTO.js +26 -0
  158. package/dist/src/infrastructure/node/NodeCollectionDTO.js.map +1 -0
  159. package/dist/src/infrastructure/node/NodeDTO.d.ts +19 -0
  160. package/dist/src/infrastructure/node/NodeDTO.js +26 -0
  161. package/dist/src/infrastructure/node/NodeDTO.js.map +1 -0
  162. package/dist/src/infrastructure/transaction/CreateTransactionFromDTO.d.ts +1 -0
  163. package/dist/src/infrastructure/transaction/CreateTransactionFromDTO.js +162 -0
  164. package/dist/src/infrastructure/transaction/CreateTransactionFromDTO.js.map +1 -0
  165. package/dist/src/infrastructure/transaction/CreateUnconfirmedTransactionFromDTO.d.ts +1 -0
  166. package/dist/src/infrastructure/transaction/CreateUnconfirmedTransactionFromDTO.js +104 -0
  167. package/dist/src/infrastructure/transaction/CreateUnconfirmedTransactionFromDTO.js.map +1 -0
  168. package/dist/src/infrastructure/transaction/ErrorObjectDTO.d.ts +1 -0
  169. package/dist/src/infrastructure/transaction/ErrorObjectDTO.js +26 -0
  170. package/dist/src/infrastructure/transaction/ErrorObjectDTO.js.map +1 -0
  171. package/dist/src/infrastructure/transaction/HashData.d.ts +10 -0
  172. package/dist/src/infrastructure/transaction/HashData.js +26 -0
  173. package/dist/src/infrastructure/transaction/HashData.js.map +1 -0
  174. package/dist/src/infrastructure/transaction/ImportanceTransferTransactionDTO.d.ts +1 -0
  175. package/dist/src/infrastructure/transaction/ImportanceTransferTransactionDTO.js +26 -0
  176. package/dist/src/infrastructure/transaction/ImportanceTransferTransactionDTO.js.map +1 -0
  177. package/dist/src/infrastructure/transaction/Message.d.ts +1 -0
  178. package/dist/src/infrastructure/transaction/Message.js +26 -0
  179. package/dist/src/infrastructure/transaction/Message.js.map +1 -0
  180. package/dist/src/infrastructure/transaction/MosaicDefinitionCreationTransactionDTO.d.ts +1 -0
  181. package/dist/src/infrastructure/transaction/MosaicDefinitionCreationTransactionDTO.js +26 -0
  182. package/dist/src/infrastructure/transaction/MosaicDefinitionCreationTransactionDTO.js.map +1 -0
  183. package/dist/src/infrastructure/transaction/MosaicSupplyChangeTransactionDTO.d.ts +1 -0
  184. package/dist/src/infrastructure/transaction/MosaicSupplyChangeTransactionDTO.js +26 -0
  185. package/dist/src/infrastructure/transaction/MosaicSupplyChangeTransactionDTO.js.map +1 -0
  186. package/dist/src/infrastructure/transaction/MultisigAggregateModificationTransactionDTO.d.ts +1 -0
  187. package/dist/src/infrastructure/transaction/MultisigAggregateModificationTransactionDTO.js +26 -0
  188. package/dist/src/infrastructure/transaction/MultisigAggregateModificationTransactionDTO.js.map +1 -0
  189. package/dist/src/infrastructure/transaction/MultisigCosignatoryModificationDTO.d.ts +1 -0
  190. package/dist/src/infrastructure/transaction/MultisigCosignatoryModificationDTO.js +26 -0
  191. package/dist/src/infrastructure/transaction/MultisigCosignatoryModificationDTO.js.map +1 -0
  192. package/dist/src/infrastructure/transaction/MultisigSignatureTransactionDTO.d.ts +1 -0
  193. package/dist/src/infrastructure/transaction/MultisigSignatureTransactionDTO.js +26 -0
  194. package/dist/src/infrastructure/transaction/MultisigSignatureTransactionDTO.js.map +1 -0
  195. package/dist/src/infrastructure/transaction/MultisigTransactionDTO.d.ts +1 -0
  196. package/dist/src/infrastructure/transaction/MultisigTransactionDTO.js +26 -0
  197. package/dist/src/infrastructure/transaction/MultisigTransactionDTO.js.map +1 -0
  198. package/dist/src/infrastructure/transaction/NemAnnounceResultDTO.d.ts +1 -0
  199. package/dist/src/infrastructure/transaction/NemAnnounceResultDTO.js +26 -0
  200. package/dist/src/infrastructure/transaction/NemAnnounceResultDTO.js.map +1 -0
  201. package/dist/src/infrastructure/transaction/NemRequestResultDTO.d.ts +10 -0
  202. package/dist/src/infrastructure/transaction/NemRequestResultDTO.js +26 -0
  203. package/dist/src/infrastructure/transaction/NemRequestResultDTO.js.map +1 -0
  204. package/dist/src/infrastructure/transaction/ProvisionNamespaceTransactionDTO.d.ts +1 -0
  205. package/dist/src/infrastructure/transaction/ProvisionNamespaceTransactionDTO.js +26 -0
  206. package/dist/src/infrastructure/transaction/ProvisionNamespaceTransactionDTO.js.map +1 -0
  207. package/dist/src/infrastructure/transaction/RequestPrepareAnnonceDTO.d.ts +1 -0
  208. package/dist/src/infrastructure/transaction/RequestPrepareAnnonceDTO.js +26 -0
  209. package/dist/src/infrastructure/transaction/RequestPrepareAnnonceDTO.js.map +1 -0
  210. package/dist/src/infrastructure/transaction/TransactionDTO.d.ts +31 -0
  211. package/dist/src/infrastructure/transaction/TransactionDTO.js +26 -0
  212. package/dist/src/infrastructure/transaction/TransactionDTO.js.map +1 -0
  213. package/dist/src/infrastructure/transaction/TransactionMetaDataDTO.d.ts +1 -0
  214. package/dist/src/infrastructure/transaction/TransactionMetaDataDTO.js +26 -0
  215. package/dist/src/infrastructure/transaction/TransactionMetaDataDTO.js.map +1 -0
  216. package/dist/src/infrastructure/transaction/TransactionMetaDataPairDTO.d.ts +1 -0
  217. package/dist/src/infrastructure/transaction/TransactionMetaDataPairDTO.js +26 -0
  218. package/dist/src/infrastructure/transaction/TransactionMetaDataPairDTO.js.map +1 -0
  219. package/dist/src/infrastructure/transaction/TransferTransactionDTO.d.ts +1 -0
  220. package/dist/src/infrastructure/transaction/TransferTransactionDTO.js +26 -0
  221. package/dist/src/infrastructure/transaction/TransferTransactionDTO.js.map +1 -0
  222. package/dist/src/infrastructure/transaction/UnconfirmedTransactionMetaDataDTO.d.ts +1 -0
  223. package/dist/src/infrastructure/transaction/UnconfirmedTransactionMetaDataDTO.js +26 -0
  224. package/dist/src/infrastructure/transaction/UnconfirmedTransactionMetaDataDTO.js.map +1 -0
  225. package/dist/src/infrastructure/transaction/UnconfirmedTransactionMetaDataPairDTO.d.ts +1 -0
  226. package/dist/src/infrastructure/transaction/UnconfirmedTransactionMetaDataPairDTO.js +26 -0
  227. package/dist/src/infrastructure/transaction/UnconfirmedTransactionMetaDataPairDTO.js.map +1 -0
  228. package/dist/src/infrastructure/transaction/UnconfirmedTransactionsDTO.d.ts +1 -0
  229. package/dist/src/infrastructure/transaction/UnconfirmedTransactionsDTO.js +26 -0
  230. package/dist/src/infrastructure/transaction/UnconfirmedTransactionsDTO.js.map +1 -0
  231. package/dist/src/models/account/Account.d.ts +52 -0
  232. package/dist/src/models/account/Account.js +136 -0
  233. package/dist/src/models/account/Account.js.map +1 -0
  234. package/dist/src/models/account/AccountHarvestInfo.d.ts +25 -0
  235. package/dist/src/models/account/AccountHarvestInfo.js +55 -0
  236. package/dist/src/models/account/AccountHarvestInfo.js.map +1 -0
  237. package/dist/src/models/account/AccountHistoricalInfo.d.ts +25 -0
  238. package/dist/src/models/account/AccountHistoricalInfo.js +58 -0
  239. package/dist/src/models/account/AccountHistoricalInfo.js.map +1 -0
  240. package/dist/src/models/account/AccountImportanceInfo.d.ts +35 -0
  241. package/dist/src/models/account/AccountImportanceInfo.js +77 -0
  242. package/dist/src/models/account/AccountImportanceInfo.js.map +1 -0
  243. package/dist/src/models/account/AccountInfo.d.ts +79 -0
  244. package/dist/src/models/account/AccountInfo.js +129 -0
  245. package/dist/src/models/account/AccountInfo.js.map +1 -0
  246. package/dist/src/models/account/Address.d.ts +25 -0
  247. package/dist/src/models/account/Address.js +80 -0
  248. package/dist/src/models/account/Address.js.map +1 -0
  249. package/dist/src/models/account/Balance.d.ts +17 -0
  250. package/dist/src/models/account/Balance.js +42 -0
  251. package/dist/src/models/account/Balance.js.map +1 -0
  252. package/dist/src/models/account/NodeHarvestInfo.d.ts +10 -0
  253. package/dist/src/models/account/NodeHarvestInfo.js +38 -0
  254. package/dist/src/models/account/NodeHarvestInfo.js.map +1 -0
  255. package/dist/src/models/account/PublicAccount.d.ts +25 -0
  256. package/dist/src/models/account/PublicAccount.js +82 -0
  257. package/dist/src/models/account/PublicAccount.js.map +1 -0
  258. package/dist/src/models/asset/Asset.d.ts +20 -0
  259. package/dist/src/models/asset/Asset.js +59 -0
  260. package/dist/src/models/asset/Asset.js.map +1 -0
  261. package/dist/src/models/asset/AssetDefinition.d.ts +83 -0
  262. package/dist/src/models/asset/AssetDefinition.js +136 -0
  263. package/dist/src/models/asset/AssetDefinition.js.map +1 -0
  264. package/dist/src/models/asset/AssetId.d.ts +31 -0
  265. package/dist/src/models/asset/AssetId.js +77 -0
  266. package/dist/src/models/asset/AssetId.js.map +1 -0
  267. package/dist/src/models/asset/AssetLevy.d.ts +40 -0
  268. package/dist/src/models/asset/AssetLevy.js +76 -0
  269. package/dist/src/models/asset/AssetLevy.js.map +1 -0
  270. package/dist/src/models/asset/AssetTransferable.d.ts +65 -0
  271. package/dist/src/models/asset/AssetTransferable.js +88 -0
  272. package/dist/src/models/asset/AssetTransferable.js.map +1 -0
  273. package/dist/src/models/asset/XEM.d.ts +49 -0
  274. package/dist/src/models/asset/XEM.js +83 -0
  275. package/dist/src/models/asset/XEM.js.map +1 -0
  276. package/dist/src/models/blockchain/Block.d.ts +57 -0
  277. package/dist/src/models/blockchain/Block.js +81 -0
  278. package/dist/src/models/blockchain/Block.js.map +1 -0
  279. package/dist/src/models/namespace/Namespace.d.ts +23 -0
  280. package/dist/src/models/namespace/Namespace.js +64 -0
  281. package/dist/src/models/namespace/Namespace.js.map +1 -0
  282. package/dist/src/models/node/ExtendedNodeExperience.d.ts +34 -0
  283. package/dist/src/models/node/ExtendedNodeExperience.js +79 -0
  284. package/dist/src/models/node/ExtendedNodeExperience.js.map +1 -0
  285. package/dist/src/models/node/NetworkTypes.d.ts +17 -0
  286. package/dist/src/models/node/NetworkTypes.js +44 -0
  287. package/dist/src/models/node/NetworkTypes.js.map +1 -0
  288. package/dist/src/models/node/NisNodeInfo.d.ts +39 -0
  289. package/dist/src/models/node/NisNodeInfo.js +79 -0
  290. package/dist/src/models/node/NisNodeInfo.js.map +1 -0
  291. package/dist/src/models/node/Node.d.ts +76 -0
  292. package/dist/src/models/node/Node.js +131 -0
  293. package/dist/src/models/node/Node.js.map +1 -0
  294. package/dist/src/models/node/NodeCollection.d.ts +22 -0
  295. package/dist/src/models/node/NodeCollection.js +54 -0
  296. package/dist/src/models/node/NodeCollection.js.map +1 -0
  297. package/dist/src/models/transaction/AssetDefinitionCreationTransaction.d.ts +39 -0
  298. package/dist/src/models/transaction/AssetDefinitionCreationTransaction.js +94 -0
  299. package/dist/src/models/transaction/AssetDefinitionCreationTransaction.js.map +1 -0
  300. package/dist/src/models/transaction/AssetSupplyChangeTransaction.d.ts +48 -0
  301. package/dist/src/models/transaction/AssetSupplyChangeTransaction.js +94 -0
  302. package/dist/src/models/transaction/AssetSupplyChangeTransaction.js.map +1 -0
  303. package/dist/src/models/transaction/EncryptedMessage.d.ts +8 -0
  304. package/dist/src/models/transaction/EncryptedMessage.js +86 -0
  305. package/dist/src/models/transaction/EncryptedMessage.js.map +1 -0
  306. package/dist/src/models/transaction/HexMessage.d.ts +10 -0
  307. package/dist/src/models/transaction/HexMessage.js +37 -0
  308. package/dist/src/models/transaction/HexMessage.js.map +1 -0
  309. package/dist/src/models/transaction/ImportanceTransferTransaction.d.ts +45 -0
  310. package/dist/src/models/transaction/ImportanceTransferTransaction.js +92 -0
  311. package/dist/src/models/transaction/ImportanceTransferTransaction.js.map +1 -0
  312. package/dist/src/models/transaction/Message.d.ts +12 -0
  313. package/dist/src/models/transaction/Message.js +110 -0
  314. package/dist/src/models/transaction/Message.js.map +1 -0
  315. package/dist/src/models/transaction/MultisigAggregateModificationTransaction.d.ts +55 -0
  316. package/dist/src/models/transaction/MultisigAggregateModificationTransaction.js +112 -0
  317. package/dist/src/models/transaction/MultisigAggregateModificationTransaction.js.map +1 -0
  318. package/dist/src/models/transaction/MultisigSignatureTransaction.d.ts +35 -0
  319. package/dist/src/models/transaction/MultisigSignatureTransaction.js +92 -0
  320. package/dist/src/models/transaction/MultisigSignatureTransaction.js.map +1 -0
  321. package/dist/src/models/transaction/MultisigTransaction.d.ts +49 -0
  322. package/dist/src/models/transaction/MultisigTransaction.js +102 -0
  323. package/dist/src/models/transaction/MultisigTransaction.js.map +1 -0
  324. package/dist/src/models/transaction/NemAnnounceResult.d.ts +77 -0
  325. package/dist/src/models/transaction/NemAnnounceResult.js +66 -0
  326. package/dist/src/models/transaction/NemAnnounceResult.js.map +1 -0
  327. package/dist/src/models/transaction/PlainMessage.d.ts +19 -0
  328. package/dist/src/models/transaction/PlainMessage.js +77 -0
  329. package/dist/src/models/transaction/PlainMessage.js.map +1 -0
  330. package/dist/src/models/transaction/ProvisionNamespaceTransaction.d.ts +57 -0
  331. package/dist/src/models/transaction/ProvisionNamespaceTransaction.js +117 -0
  332. package/dist/src/models/transaction/ProvisionNamespaceTransaction.js.map +1 -0
  333. package/dist/src/models/transaction/SignedTransaction.d.ts +13 -0
  334. package/dist/src/models/transaction/SignedTransaction.js +26 -0
  335. package/dist/src/models/transaction/SignedTransaction.js.map +1 -0
  336. package/dist/src/models/transaction/TimeWindow.d.ts +24 -0
  337. package/dist/src/models/transaction/TimeWindow.js +84 -0
  338. package/dist/src/models/transaction/TimeWindow.js.map +1 -0
  339. package/dist/src/models/transaction/Transaction.d.ts +56 -0
  340. package/dist/src/models/transaction/Transaction.js +98 -0
  341. package/dist/src/models/transaction/Transaction.js.map +1 -0
  342. package/dist/src/models/transaction/TransactionInfo.d.ts +39 -0
  343. package/dist/src/models/transaction/TransactionInfo.js +60 -0
  344. package/dist/src/models/transaction/TransactionInfo.js.map +1 -0
  345. package/dist/src/models/transaction/TransactionTypes.d.ts +80 -0
  346. package/dist/src/models/transaction/TransactionTypes.js +159 -0
  347. package/dist/src/models/transaction/TransactionTypes.js.map +1 -0
  348. package/dist/src/models/transaction/TransferTransaction.d.ts +78 -0
  349. package/dist/src/models/transaction/TransferTransaction.js +176 -0
  350. package/dist/src/models/transaction/TransferTransaction.js.map +1 -0
  351. package/dist/src/models/wallet/BrainPassword.d.ts +11 -0
  352. package/dist/src/models/wallet/BrainPassword.js +42 -0
  353. package/dist/src/models/wallet/BrainPassword.js.map +1 -0
  354. package/dist/src/models/wallet/BrainWallet.d.ts +34 -0
  355. package/dist/src/models/wallet/BrainWallet.js +101 -0
  356. package/dist/src/models/wallet/BrainWallet.js.map +1 -0
  357. package/dist/src/models/wallet/EncryptedPrivateKey.d.ts +13 -0
  358. package/dist/src/models/wallet/EncryptedPrivateKey.js +56 -0
  359. package/dist/src/models/wallet/EncryptedPrivateKey.js.map +1 -0
  360. package/dist/src/models/wallet/Password.d.ts +14 -0
  361. package/dist/src/models/wallet/Password.js +41 -0
  362. package/dist/src/models/wallet/Password.js.map +1 -0
  363. package/dist/src/models/wallet/SimpleWallet.d.ts +47 -0
  364. package/dist/src/models/wallet/SimpleWallet.js +143 -0
  365. package/dist/src/models/wallet/SimpleWallet.js.map +1 -0
  366. package/dist/src/models/wallet/Wallet.d.ts +51 -0
  367. package/dist/src/models/wallet/Wallet.js +81 -0
  368. package/dist/src/models/wallet/Wallet.js.map +1 -0
  369. package/dist/src/models.d.ts +46 -0
  370. package/dist/src/models.js +74 -0
  371. package/dist/src/models.js.map +1 -0
  372. package/dist/src/services/AccountOwnedAssetService.d.ts +30 -0
  373. package/dist/src/services/AccountOwnedAssetService.js +63 -0
  374. package/dist/src/services/AccountOwnedAssetService.js.map +1 -0
  375. package/dist/src/services/AssetService.d.ts +23 -0
  376. package/dist/src/services/AssetService.js +87 -0
  377. package/dist/src/services/AssetService.js.map +1 -0
  378. package/dist/src/services/QRService.d.ts +66 -0
  379. package/dist/src/services/QRService.js +155 -0
  380. package/dist/src/services/QRService.js.map +1 -0
  381. package/dist/src/services.d.ts +3 -0
  382. package/dist/src/services.js +32 -0
  383. package/dist/src/services.js.map +1 -0
  384. package/dist/src/vendor/sockjs-0.3.4.d.ts +25 -0
  385. package/dist/src/vendor/sockjs-0.3.4.js +2516 -0
  386. package/dist/src/vendor/sockjs-0.3.4.min.js +27 -0
  387. package/package.json +87 -0
  388. package/z4bfo2p7.cjs +1 -0
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ /*
3
+ * The MIT License (MIT)
4
+ *
5
+ * Copyright (c) 2017 NEM
6
+ *
7
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ * of this software and associated documentation files (the "Software"), to deal
9
+ * in the Software without restriction, including without limitation the rights
10
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ * copies of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included in all
15
+ * copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
+ * SOFTWARE.
24
+ */
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const js_base64_1 = require("js-base64");
27
+ const js_joda_1 = require("js-joda");
28
+ const nemSdk = require("nem-sdk");
29
+ const NEMLibrary_1 = require("../../NEMLibrary");
30
+ const Account_1 = require("../account/Account");
31
+ const Address_1 = require("../account/Address");
32
+ const NetworkTypes_1 = require("../node/NetworkTypes");
33
+ const EncryptedPrivateKey_1 = require("./EncryptedPrivateKey");
34
+ const Wallet_1 = require("./Wallet");
35
+ /**
36
+ * Simple wallet model generates a private key from a PRNG
37
+ */
38
+ class SimpleWallet extends Wallet_1.Wallet {
39
+ /**
40
+ * @internal
41
+ * @param name
42
+ * @param network
43
+ * @param address
44
+ * @param creationDate
45
+ * @param encryptedPrivateKey
46
+ */
47
+ constructor(name, network, address, creationDate, encryptedPrivateKey) {
48
+ super(name, network, address, creationDate, 1);
49
+ this.encryptedPrivateKey = encryptedPrivateKey;
50
+ }
51
+ /**
52
+ * Create a SimpleWallet
53
+ * @param name
54
+ * @param password
55
+ * @returns {SimpleWallet}
56
+ */
57
+ static create(name, password) {
58
+ const network = NEMLibrary_1.NEMLibrary.getNetworkType();
59
+ const wallet = nemSdk.default.model.wallet.createPRNG(name, password.value, SimpleWallet.networkTypesSDKAdapter(network));
60
+ return new SimpleWallet(name, network, new Address_1.Address(wallet.accounts["0"].address), js_joda_1.LocalDateTime.now(), new EncryptedPrivateKey_1.EncryptedPrivateKey(wallet.accounts["0"].encrypted, wallet.accounts["0"].iv));
61
+ }
62
+ /**
63
+ * Create a SimpleWallet from private key
64
+ * @param name
65
+ * @param password
66
+ * @param privateKey
67
+ * @returns {SimpleWallet}
68
+ */
69
+ static createWithPrivateKey(name, password, privateKey) {
70
+ const network = NEMLibrary_1.NEMLibrary.getNetworkType();
71
+ const wallet = nemSdk.default.model.wallet.importPrivateKey(name, password.value, privateKey, SimpleWallet.networkTypesSDKAdapter(network));
72
+ return new SimpleWallet(name, network, new Address_1.Address(wallet.accounts["0"].address), js_joda_1.LocalDateTime.now(), new EncryptedPrivateKey_1.EncryptedPrivateKey(wallet.accounts["0"].encrypted, wallet.accounts["0"].iv));
73
+ }
74
+ /**
75
+ * Open a wallet and generate an Account
76
+ * @param password
77
+ * @returns {Account}
78
+ */
79
+ open(password) {
80
+ const account = Account_1.Account.createWithPrivateKey(this.encryptedPrivateKey.decrypt(password));
81
+ if (account.address.equals(this.address)) {
82
+ return account;
83
+ }
84
+ throw new Error("wrong password");
85
+ }
86
+ unlockPrivateKey(password) {
87
+ const privateKey = this.encryptedPrivateKey.decrypt(password);
88
+ if (privateKey === "" || (privateKey.length !== 64 && privateKey.length !== 66)) {
89
+ throw new Error("Invalid password");
90
+ }
91
+ const account = Account_1.Account.createWithPrivateKey(privateKey);
92
+ if (!account.address.equals(this.address)) {
93
+ throw new Error("Invalid password");
94
+ }
95
+ return privateKey;
96
+ }
97
+ /**
98
+ * Converts SimpleWallet into writable string to persist into a file
99
+ * @returns {string}
100
+ */
101
+ writeWLTFile() {
102
+ return js_base64_1.Base64.encode(JSON.stringify({
103
+ name: this.name,
104
+ network: this.network.toString(),
105
+ address: this.address.plain(),
106
+ creationDate: this.creationDate.toString(),
107
+ schema: this.schema,
108
+ type: "simple",
109
+ encryptedPrivateKey: this.encryptedPrivateKey.encryptedKey,
110
+ iv: this.encryptedPrivateKey.iv,
111
+ }));
112
+ }
113
+ /**
114
+ * Reads the WLT content and converts it into a SimpleWallet
115
+ * @param {string} wlt
116
+ * @returns {SimpleWallet}
117
+ */
118
+ static readFromWLT(wlt) {
119
+ const wallet = JSON.parse(js_base64_1.Base64.decode(wlt));
120
+ if (wallet.type !== "simple") {
121
+ throw new Error("ERROR WLT TYPE");
122
+ }
123
+ return new SimpleWallet(wallet.name, wallet.network, new Address_1.Address(wallet.address), js_joda_1.LocalDateTime.parse(wallet.creationDate), new EncryptedPrivateKey_1.EncryptedPrivateKey(wallet.encryptedPrivateKey, wallet.iv));
124
+ }
125
+ static readFromNanoWalletWLF(wlt) {
126
+ const wallet = JSON.parse(js_base64_1.Base64.decode(wlt));
127
+ // TODO: Check the encrypted and iv fields, if they aren't null, it's a simple wallet
128
+ const account = wallet.accounts[0];
129
+ let network;
130
+ if (account.network < 0) {
131
+ network = NetworkTypes_1.NetworkTypes.TEST_NET;
132
+ }
133
+ else if (account.network == 104) {
134
+ network = NetworkTypes_1.NetworkTypes.MAIN_NET;
135
+ }
136
+ else {
137
+ network = NetworkTypes_1.NetworkTypes.MIJIN_NET;
138
+ }
139
+ return new SimpleWallet(wallet.name, network, new Address_1.Address(account.address), js_joda_1.LocalDateTime.now(), new EncryptedPrivateKey_1.EncryptedPrivateKey(account.encrypted, account.iv));
140
+ }
141
+ }
142
+ exports.SimpleWallet = SimpleWallet;
143
+ //# sourceMappingURL=SimpleWallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SimpleWallet.js","sourceRoot":"","sources":["../../../../src/models/wallet/SimpleWallet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import { LocalDateTime } from "js-joda";
2
+ import { Account } from "../account/Account";
3
+ import { Address } from "../account/Address";
4
+ import { NetworkTypes } from "../node/NetworkTypes";
5
+ import { Password } from "./Password";
6
+ export declare enum WalletType {
7
+ SIMPLE = 0,
8
+ BRAIN = 1,
9
+ }
10
+ /**
11
+ * Wallet base model
12
+ */
13
+ export declare abstract class Wallet {
14
+ /**
15
+ * The wallet's name
16
+ */
17
+ readonly name: string;
18
+ /**
19
+ * The wallet's network
20
+ */
21
+ readonly network: NetworkTypes;
22
+ /**
23
+ * The wallet's address
24
+ */
25
+ readonly address: Address;
26
+ /**
27
+ * The wallet's creation date
28
+ */
29
+ readonly creationDate: LocalDateTime;
30
+ /**
31
+ * Wallet schema number
32
+ */
33
+ readonly schema: number;
34
+ /**
35
+ * Abstract open wallet method returning an account from current wallet.
36
+ * @param password
37
+ */
38
+ abstract open(password: Password): Account;
39
+ /**
40
+ * Receives the Private Key for the Wallet
41
+ * @param {Password} password
42
+ * @returns {string}
43
+ */
44
+ abstract unlockPrivateKey(password: Password): string;
45
+ /**
46
+ * Given a WLT string, retusn the WalletType
47
+ * @param {string} wlt
48
+ * @returns {WalletType}
49
+ */
50
+ static walletTypeGivenWLT(wlt: string): WalletType;
51
+ }
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ /*
3
+ * The MIT License (MIT)
4
+ *
5
+ * Copyright (c) 2017 NEM
6
+ *
7
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ * of this software and associated documentation files (the "Software"), to deal
9
+ * in the Software without restriction, including without limitation the rights
10
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ * copies of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included in all
15
+ * copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
+ * SOFTWARE.
24
+ */
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const js_base64_1 = require("js-base64");
27
+ const NetworkTypes_1 = require("../node/NetworkTypes");
28
+ var WalletType;
29
+ (function (WalletType) {
30
+ WalletType[WalletType["SIMPLE"] = 0] = "SIMPLE";
31
+ WalletType[WalletType["BRAIN"] = 1] = "BRAIN";
32
+ })(WalletType = exports.WalletType || (exports.WalletType = {}));
33
+ /**
34
+ * Wallet base model
35
+ */
36
+ class Wallet {
37
+ /**
38
+ * @internal
39
+ * @param name
40
+ * @param network
41
+ * @param address
42
+ * @param creationDate
43
+ * @param schema
44
+ */
45
+ constructor(name, network, address, creationDate, schema) {
46
+ this.name = name;
47
+ this.network = network;
48
+ this.address = address;
49
+ this.creationDate = creationDate;
50
+ this.schema = schema;
51
+ }
52
+ /**
53
+ * @internal
54
+ */
55
+ static networkTypesSDKAdapter(network) {
56
+ if (network == NetworkTypes_1.NetworkTypes.MAIN_NET) {
57
+ return 104;
58
+ }
59
+ else if (network == NetworkTypes_1.NetworkTypes.TEST_NET) {
60
+ return -104;
61
+ }
62
+ else {
63
+ return 96;
64
+ }
65
+ }
66
+ /**
67
+ * Given a WLT string, retusn the WalletType
68
+ * @param {string} wlt
69
+ * @returns {WalletType}
70
+ */
71
+ static walletTypeGivenWLT(wlt) {
72
+ const wallet = JSON.parse(js_base64_1.Base64.decode(wlt));
73
+ if (wallet.type == "simple")
74
+ return WalletType.SIMPLE;
75
+ else if (wallet.type == "brain")
76
+ return WalletType.BRAIN;
77
+ throw new Error("ILLEGAL WALLET TYPE");
78
+ }
79
+ }
80
+ exports.Wallet = Wallet;
81
+ //# sourceMappingURL=Wallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Wallet.js","sourceRoot":"","sources":["../../../../src/models/wallet/Wallet.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;AAEH,yCAAiC;AAIjC,uDAAkD;AAGlD,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,+CAAM,CAAA;IACN,6CAAK,CAAA;AACP,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB;AAED;;GAEG;AACH;IA0BE;;;;;;;OAOG;IACH,YAAY,IAAY,EAAE,OAAqB,EAAE,OAAgB,EAAE,YAA2B,EAAE,MAAc;QAC5G,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAeD;;OAEG;IACI,MAAM,CAAC,sBAAsB,CAAC,OAAqB;QACxD,IAAI,OAAO,IAAI,2BAAY,CAAC,QAAQ,EAAE;YACpC,OAAO,GAAG,CAAC;SACZ;aAAM,IAAI,OAAO,IAAI,2BAAY,CAAC,QAAQ,EAAE;YAC3C,OAAO,CAAC,GAAG,CAAC;SACb;aAAM;YACL,OAAO,EAAE,CAAC;SACX;IACH,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,kBAAkB,CAAC,GAAW;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,IAAI,MAAM,CAAC,IAAI,IAAI,QAAQ;YAAE,OAAO,UAAU,CAAC,MAAM,CAAC;aACjD,IAAI,MAAM,CAAC,IAAI,IAAI,OAAO;YAAE,OAAO,UAAU,CAAC,KAAK,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;CACF;AA/ED,wBA+EC"}
@@ -0,0 +1,46 @@
1
+ export * from "./models/account/Account";
2
+ export * from "./models/account/AccountHarvestInfo";
3
+ export * from "./models/account/AccountHistoricalInfo";
4
+ export * from "./models/account/AccountImportanceInfo";
5
+ export * from "./models/account/AccountInfo";
6
+ export * from "./models/account/Address";
7
+ export * from "./models/account/Balance";
8
+ export * from "./models/account/NodeHarvestInfo";
9
+ export * from "./models/account/PublicAccount";
10
+ export * from "./models/blockchain/Block";
11
+ export * from "./models/asset/Asset";
12
+ export * from "./models/asset/AssetDefinition";
13
+ export * from "./models/asset/AssetId";
14
+ export * from "./models/asset/AssetLevy";
15
+ export * from "./models/asset/XEM";
16
+ export * from "./models/asset/AssetTransferable";
17
+ export * from "./models/namespace/Namespace";
18
+ export * from "./models/node/ExtendedNodeExperience";
19
+ export * from "./models/node/NetworkTypes";
20
+ export * from "./models/node/NisNodeInfo";
21
+ export * from "./models/node/Node";
22
+ export * from "./models/node/NodeCollection";
23
+ export * from "./models/transaction/ImportanceTransferTransaction";
24
+ export * from "./models/transaction/Message";
25
+ export * from "./models/transaction/PlainMessage";
26
+ export * from "./models/transaction/EncryptedMessage";
27
+ export * from "./models/transaction/HexMessage";
28
+ export * from "./models/transaction/AssetDefinitionCreationTransaction";
29
+ export * from "./models/transaction/AssetSupplyChangeTransaction";
30
+ export * from "./models/transaction/MultisigAggregateModificationTransaction";
31
+ export * from "./models/transaction/MultisigSignatureTransaction";
32
+ export * from "./models/transaction/MultisigTransaction";
33
+ export * from "./models/transaction/NemAnnounceResult";
34
+ export * from "./models/transaction/ProvisionNamespaceTransaction";
35
+ export * from "./models/transaction/SignedTransaction";
36
+ export * from "./models/transaction/Transaction";
37
+ export * from "./models/transaction/TransactionInfo";
38
+ export * from "./models/transaction/TransactionTypes";
39
+ export * from "./models/transaction/TransferTransaction";
40
+ export * from "./models/transaction/TimeWindow";
41
+ export * from "./models/wallet/SimpleWallet";
42
+ export * from "./models/wallet/EncryptedPrivateKey";
43
+ export * from "./models/wallet/Password";
44
+ export * from "./models/wallet/BrainWallet";
45
+ export * from "./models/wallet/BrainPassword";
46
+ export * from "./models/wallet/Wallet";
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ /*
3
+ * The MIT License (MIT)
4
+ *
5
+ * Copyright (c) 2017 NEM
6
+ *
7
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ * of this software and associated documentation files (the "Software"), to deal
9
+ * in the Software without restriction, including without limitation the rights
10
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ * copies of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included in all
15
+ * copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
+ * SOFTWARE.
24
+ */
25
+ function __export(m) {
26
+ for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
27
+ }
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ __export(require("./models/account/Account"));
30
+ __export(require("./models/account/AccountHarvestInfo"));
31
+ __export(require("./models/account/AccountHistoricalInfo"));
32
+ __export(require("./models/account/AccountImportanceInfo"));
33
+ __export(require("./models/account/AccountInfo"));
34
+ __export(require("./models/account/Address"));
35
+ __export(require("./models/account/Balance"));
36
+ __export(require("./models/account/NodeHarvestInfo"));
37
+ __export(require("./models/account/PublicAccount"));
38
+ __export(require("./models/blockchain/Block"));
39
+ __export(require("./models/asset/Asset"));
40
+ __export(require("./models/asset/AssetDefinition"));
41
+ __export(require("./models/asset/AssetId"));
42
+ __export(require("./models/asset/AssetLevy"));
43
+ __export(require("./models/asset/XEM"));
44
+ __export(require("./models/asset/AssetTransferable"));
45
+ __export(require("./models/namespace/Namespace"));
46
+ __export(require("./models/node/ExtendedNodeExperience"));
47
+ __export(require("./models/node/NetworkTypes"));
48
+ __export(require("./models/node/NisNodeInfo"));
49
+ __export(require("./models/node/Node"));
50
+ __export(require("./models/node/NodeCollection"));
51
+ __export(require("./models/transaction/ImportanceTransferTransaction"));
52
+ __export(require("./models/transaction/Message"));
53
+ __export(require("./models/transaction/PlainMessage"));
54
+ __export(require("./models/transaction/EncryptedMessage"));
55
+ __export(require("./models/transaction/HexMessage"));
56
+ __export(require("./models/transaction/AssetDefinitionCreationTransaction"));
57
+ __export(require("./models/transaction/AssetSupplyChangeTransaction"));
58
+ __export(require("./models/transaction/MultisigAggregateModificationTransaction"));
59
+ __export(require("./models/transaction/MultisigSignatureTransaction"));
60
+ __export(require("./models/transaction/MultisigTransaction"));
61
+ __export(require("./models/transaction/NemAnnounceResult"));
62
+ __export(require("./models/transaction/ProvisionNamespaceTransaction"));
63
+ __export(require("./models/transaction/Transaction"));
64
+ __export(require("./models/transaction/TransactionInfo"));
65
+ __export(require("./models/transaction/TransactionTypes"));
66
+ __export(require("./models/transaction/TransferTransaction"));
67
+ __export(require("./models/transaction/TimeWindow"));
68
+ __export(require("./models/wallet/SimpleWallet"));
69
+ __export(require("./models/wallet/EncryptedPrivateKey"));
70
+ __export(require("./models/wallet/Password"));
71
+ __export(require("./models/wallet/BrainWallet"));
72
+ __export(require("./models/wallet/BrainPassword"));
73
+ __export(require("./models/wallet/Wallet"));
74
+ //# sourceMappingURL=models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/models.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;;;AAEH,8CAAyC;AACzC,yDAAoD;AACpD,4DAAuD;AACvD,4DAAuD;AACvD,kDAA6C;AAC7C,8CAAyC;AACzC,8CAAyC;AACzC,sDAAiD;AACjD,oDAA+C;AAC/C,+CAA0C;AAC1C,0CAAqC;AACrC,oDAA+C;AAC/C,4CAAuC;AACvC,8CAAyC;AACzC,wCAAmC;AACnC,sDAAiD;AACjD,kDAA6C;AAC7C,0DAAqD;AACrD,gDAA2C;AAC3C,+CAA0C;AAC1C,wCAAmC;AACnC,kDAA6C;AAC7C,wEAAmE;AACnE,kDAA6C;AAC7C,uDAAkD;AAClD,2DAAsD;AACtD,qDAAgD;AAChD,6EAAwE;AACxE,uEAAkE;AAClE,mFAA8E;AAC9E,uEAAkE;AAClE,8DAAyD;AACzD,4DAAuD;AACvD,wEAAmE;AAEnE,sDAAiD;AACjD,0DAAqD;AACrD,2DAAsD;AACtD,8DAAyD;AACzD,qDAAgD;AAChD,kDAA6C;AAC7C,yDAAoD;AACpD,8CAAyC;AACzC,iDAA4C;AAC5C,mDAA8C;AAC9C,4CAAuC"}
@@ -0,0 +1,30 @@
1
+ import { Observable } from "rxjs";
2
+ import { AccountHttp } from "../infrastructure/AccountHttp";
3
+ import { AssetHttp } from "../infrastructure/AssetHttp";
4
+ import { Address } from "../models/account/Address";
5
+ import { AssetTransferable } from "../models/asset/AssetTransferable";
6
+ /**
7
+ * Service to get account owned mosaics
8
+ */
9
+ export declare class AccountOwnedAssetService {
10
+ /**
11
+ * accountHttp
12
+ */
13
+ private accountHttp;
14
+ /**
15
+ * assetHttp
16
+ */
17
+ private assetHttp;
18
+ /**
19
+ * constructor
20
+ * @param accountHttp
21
+ * @param assetHttp
22
+ */
23
+ constructor(accountHttp: AccountHttp, assetHttp: AssetHttp);
24
+ /**
25
+ * Account owned assets definitions
26
+ * @param address
27
+ * @returns {Observable<AssetDefinition[]>}
28
+ */
29
+ fromAddress(address: Address): Observable<AssetTransferable[]>;
30
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+ /*
3
+ * The MIT License (MIT)
4
+ *
5
+ * Copyright (c) 2017 NEM
6
+ *
7
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ * of this software and associated documentation files (the "Software"), to deal
9
+ * in the Software without restriction, including without limitation the rights
10
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ * copies of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included in all
15
+ * copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
+ * SOFTWARE.
24
+ */
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const rxjs_1 = require("rxjs");
27
+ const AssetTransferable_1 = require("../models/asset/AssetTransferable");
28
+ const XEM_1 = require("../models/asset/XEM");
29
+ const operators_1 = require("rxjs/operators");
30
+ /**
31
+ * Service to get account owned mosaics
32
+ */
33
+ class AccountOwnedAssetService {
34
+ /**
35
+ * constructor
36
+ * @param accountHttp
37
+ * @param assetHttp
38
+ */
39
+ constructor(accountHttp, assetHttp) {
40
+ this.accountHttp = accountHttp;
41
+ this.assetHttp = assetHttp;
42
+ }
43
+ /**
44
+ * Account owned assets definitions
45
+ * @param address
46
+ * @returns {Observable<AssetDefinition[]>}
47
+ */
48
+ fromAddress(address) {
49
+ return this.accountHttp.getAssetsOwnedByAddress(address)
50
+ .pipe(operators_1.flatMap((_) => _), operators_1.flatMap((mosaic) => {
51
+ if (XEM_1.XEM.MOSAICID.equals(mosaic.assetId))
52
+ return rxjs_1.of(new XEM_1.XEM(mosaic.quantity / Math.pow(10, 6)));
53
+ else {
54
+ return this.assetHttp.getAssetDefinition(mosaic.assetId)
55
+ .pipe(operators_1.map((assetDefinition) => {
56
+ return AssetTransferable_1.AssetTransferable.createWithAssetDefinition(assetDefinition, mosaic.quantity / Math.pow(10, assetDefinition.properties.divisibility));
57
+ }));
58
+ }
59
+ }), operators_1.toArray());
60
+ }
61
+ }
62
+ exports.AccountOwnedAssetService = AccountOwnedAssetService;
63
+ //# sourceMappingURL=AccountOwnedAssetService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AccountOwnedAssetService.js","sourceRoot":"","sources":["../../../src/services/AccountOwnedAssetService.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;AAEH,+BAAoC;AAMpC,yEAAoE;AACpE,6CAAwC;AACxC,8CAAqD;AAErD;;GAEG;AACH;IAWE;;;;OAIG;IACH,YAAY,WAAwB,EAAE,SAAoB;QACxD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACI,WAAW,CAAC,OAAgB;QACjC,OAAO,IAAI,CAAC,WAAW,CAAC,uBAAuB,CAAC,OAAO,CAAC;aACrD,IAAI,CACH,mBAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EACjB,mBAAO,CAAC,CAAC,MAAa,EAAE,EAAE;YACxB,IAAI,SAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;gBAAE,OAAO,SAAE,CAAC,IAAI,SAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;iBAC1F;gBACH,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,CAAC,OAAO,CAAC;qBACrD,IAAI,CACH,eAAG,CAAC,CAAC,eAAe,EAAE,EAAE;oBACtB,OAAO,qCAAiB,CAAC,yBAAyB,CAAC,eAAe,EAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC/I,CAAC,CAAC,CACH,CAAC;aACL;QACH,CAAC,CAAC,EACF,mBAAO,EAAE,CACV,CAAA;IACL,CAAC;CACF;AA5CD,4DA4CC"}
@@ -0,0 +1,23 @@
1
+ import { Observable } from "rxjs";
2
+ import { AssetHttp } from "../infrastructure/AssetHttp";
3
+ import { AssetTransferable } from "../models/asset/AssetTransferable";
4
+ /**
5
+ * Mosaic service
6
+ */
7
+ export declare class AssetService {
8
+ /**
9
+ * assetHttp
10
+ */
11
+ private assetHttp;
12
+ /**
13
+ * constructor
14
+ * @param assetHttp
15
+ */
16
+ constructor(assetHttp: AssetHttp);
17
+ /**
18
+ * Calculate levy for a given assetTransferable
19
+ * @param assetTransferable
20
+ * @returns {any}
21
+ */
22
+ calculateLevy(assetTransferable: AssetTransferable): Observable<number>;
23
+ }
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ /*
3
+ * The MIT License (MIT)
4
+ *
5
+ * Copyright (c) 2017 NEM
6
+ *
7
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ * of this software and associated documentation files (the "Software"), to deal
9
+ * in the Software without restriction, including without limitation the rights
10
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ * copies of the Software, and to permit persons to whom the Software is
12
+ * furnished to do so, subject to the following conditions:
13
+ *
14
+ * The above copyright notice and this permission notice shall be included in all
15
+ * copies or substantial portions of the Software.
16
+ *
17
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
+ * SOFTWARE.
24
+ */
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ const rxjs_1 = require("rxjs");
27
+ const AssetDefinition_1 = require("../models/asset/AssetDefinition");
28
+ const AssetLevy_1 = require("../models/asset/AssetLevy");
29
+ const XEM_1 = require("../models/asset/XEM");
30
+ const operators_1 = require("rxjs/operators");
31
+ /**
32
+ * Mosaic service
33
+ */
34
+ class AssetService {
35
+ /**
36
+ * constructor
37
+ * @param assetHttp
38
+ */
39
+ constructor(assetHttp) {
40
+ this.assetHttp = assetHttp;
41
+ }
42
+ /**
43
+ * Calculate levy for a given assetTransferable
44
+ * @param assetTransferable
45
+ * @returns {any}
46
+ */
47
+ calculateLevy(assetTransferable) {
48
+ if (assetTransferable.levy == undefined)
49
+ return rxjs_1.of(0);
50
+ if (assetTransferable.levy.assetId.equals(XEM_1.XEM.MOSAICID)) {
51
+ return rxjs_1.of(this.levyFee(assetTransferable, new AssetDefinition_1.AssetProperties(XEM_1.XEM.DIVISIBILITY, XEM_1.XEM.INITIALSUPPLY, XEM_1.XEM.TRANSFERABLE, XEM_1.XEM.SUPPLYMUTABLE)));
52
+ }
53
+ else {
54
+ return this.assetHttp.getAssetDefinition(assetTransferable.levy.assetId)
55
+ .pipe(operators_1.map((levyMosaicDefinition) => {
56
+ return this.levyFee(assetTransferable, levyMosaicDefinition.properties);
57
+ }));
58
+ }
59
+ }
60
+ /**
61
+ * @internal
62
+ * @param assetTransferable
63
+ * @param levyProperties
64
+ * @returns number
65
+ */
66
+ levyFee(assetTransferable, levyProperties) {
67
+ let levyValue;
68
+ if (assetTransferable.levy.type == AssetLevy_1.AssetLevyType.Absolute) {
69
+ levyValue = assetTransferable.levy.fee;
70
+ }
71
+ else {
72
+ levyValue = assetTransferable.relativeQuantity() * assetTransferable.levy.fee / 10000;
73
+ }
74
+ const o = parseInt(levyValue, 10);
75
+ if (!o) {
76
+ if (levyProperties.divisibility === 0) {
77
+ return 0;
78
+ }
79
+ else {
80
+ return parseFloat("0." + o.toFixed(levyProperties.divisibility).split(".")[1]);
81
+ }
82
+ }
83
+ return o / Math.pow(10, levyProperties.divisibility);
84
+ }
85
+ }
86
+ exports.AssetService = AssetService;
87
+ //# sourceMappingURL=AssetService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AssetService.js","sourceRoot":"","sources":["../../../src/services/AssetService.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;AAEH,+BAAoC;AAEpC,qEAAgE;AAChE,yDAAwD;AAExD,6CAAwC;AACxC,8CAAmC;AAEnC;;GAEG;AACH;IAOE;;;OAGG;IACH,YAAY,SAAoB;QAC9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAE7B,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,iBAAoC;QACvD,IAAI,iBAAiB,CAAC,IAAI,IAAI,SAAS;YAAE,OAAO,SAAE,CAAC,CAAC,CAAC,CAAC;QACtD,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAG,CAAC,QAAQ,CAAC,EAAE;YACvD,OAAO,SAAE,CACP,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,iCAAe,CAAC,SAAG,CAAC,YAAY,EAAE,SAAG,CAAC,aAAa,EAAE,SAAG,CAAC,YAAY,EAAE,SAAG,CAAC,aAAa,CAAC,CAAC,CAC/H,CAAC;SACH;aAAM;YACL,OAAO,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;iBACrE,IAAI,CAAC,eAAG,CAAC,CAAC,oBAAoB,EAAE,EAAE;gBACjC,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;YAC1E,CAAC,CAAC,CAAC,CAAA;SACN;IACH,CAAC;IAED;;;;;OAKG;IACK,OAAO,CAAC,iBAAoC,EAAE,cAA+B;QACnF,IAAI,SAAS,CAAC;QAEd,IAAI,iBAAiB,CAAC,IAAK,CAAC,IAAI,IAAI,yBAAa,CAAC,QAAQ,EAAE;YAC1D,SAAS,GAAG,iBAAiB,CAAC,IAAK,CAAC,GAAG,CAAC;SACzC;aAAM;YACL,SAAS,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,GAAG,iBAAiB,CAAC,IAAK,CAAC,GAAG,GAAG,KAAK,CAAC;SACxF;QAED,MAAM,CAAC,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAElC,IAAI,CAAC,CAAC,EAAE;YACN,IAAI,cAAc,CAAC,YAAY,KAAK,CAAC,EAAE;gBACrC,OAAO,CAAC,CAAC;aACV;iBAAM;gBACL,OAAO,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;SACF;QAED,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;IACvD,CAAC;CACF;AA9DD,oCA8DC"}