@super-protocol/sdk-js 2.1.2 → 2.1.3

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 (526) hide show
  1. package/{build → dist/cjs}/TIIGenerator.d.ts +2 -2
  2. package/dist/cjs/TIIGenerator.js +230 -0
  3. package/{build → dist/cjs}/analytics/Analytics.d.ts +2 -2
  4. package/dist/cjs/analytics/Analytics.js +67 -0
  5. package/{build → dist/cjs}/analytics/AnalyticsError.js +2 -1
  6. package/{build → dist/cjs}/analytics/eventProviders/BrowserEventProvider.d.ts +1 -1
  7. package/dist/cjs/analytics/eventProviders/BrowserEventProvider.js +38 -0
  8. package/dist/cjs/analytics/eventProviders/EventProvider.js +25 -0
  9. package/{build → dist/cjs}/analytics/eventProviders/NodeEventProvider.d.ts +1 -1
  10. package/dist/cjs/analytics/eventProviders/NodeEventProvider.js +56 -0
  11. package/{build → dist/cjs}/analytics/transports/AxiosTransport.d.ts +1 -1
  12. package/dist/cjs/analytics/transports/AxiosTransport.js +60 -0
  13. package/{build → dist/cjs}/analytics/transports/FetchTransport.d.ts +1 -1
  14. package/dist/cjs/analytics/transports/FetchTransport.js +31 -0
  15. package/{build → dist/cjs}/analytics/types.d.ts +2 -2
  16. package/{build → dist/cjs}/analytics/types.js +1 -1
  17. package/{build → dist/cjs}/config.js +1 -1
  18. package/{build → dist/cjs}/connectors/BaseConnector.d.ts +1 -1
  19. package/dist/cjs/connectors/BaseConnector.js +41 -0
  20. package/{build → dist/cjs}/connectors/BlockchainConnector.d.ts +3 -3
  21. package/dist/cjs/connectors/BlockchainConnector.js +341 -0
  22. package/{build → dist/cjs}/connectors/BlockchainEventsListener.d.ts +1 -1
  23. package/dist/cjs/connectors/BlockchainEventsListener.js +103 -0
  24. package/{build → dist/cjs}/connectors/index.d.ts +2 -2
  25. package/{build → dist/cjs}/connectors/index.js +5 -5
  26. package/{build → dist/cjs}/constants.js +1 -1
  27. package/{build → dist/cjs}/contracts/abi.js +1 -1
  28. package/dist/cjs/crypto/Crypto.js +100 -0
  29. package/dist/cjs/crypto/index.d.ts +2 -0
  30. package/{build → dist/cjs}/crypto/index.js +3 -3
  31. package/dist/cjs/crypto/nodejs/AES.js +79 -0
  32. package/dist/cjs/crypto/nodejs/ARIA.js +78 -0
  33. package/dist/cjs/crypto/nodejs/ECIES.js +56 -0
  34. package/{build → dist/cjs}/crypto/nodejs/NativeCrypto.d.ts +3 -3
  35. package/dist/cjs/crypto/nodejs/NativeCrypto.js +165 -0
  36. package/dist/cjs/crypto/nodejs/RSA-Hybrid.js +94 -0
  37. package/dist/cjs/index.d.ts +80 -0
  38. package/dist/cjs/index.js +143 -0
  39. package/{build → dist/cjs}/logger.js +1 -1
  40. package/{build → dist/cjs}/models/EtlModel.d.ts +1 -1
  41. package/dist/cjs/models/EtlModel.js +126 -0
  42. package/{build → dist/cjs}/models/Offer.d.ts +1 -1
  43. package/dist/cjs/models/Offer.js +361 -0
  44. package/{build → dist/cjs}/models/Order.d.ts +1 -1
  45. package/dist/cjs/models/Order.js +543 -0
  46. package/{build → dist/cjs}/models/Provider.d.ts +1 -1
  47. package/dist/cjs/models/Provider.js +119 -0
  48. package/{build → dist/cjs}/models/TCB.d.ts +1 -1
  49. package/dist/cjs/models/TCB.js +112 -0
  50. package/{build → dist/cjs}/models/TeeOffer.d.ts +2 -2
  51. package/dist/cjs/models/TeeOffer.js +538 -0
  52. package/dist/cjs/models/index.d.ts +5 -0
  53. package/dist/cjs/models/index.js +17 -0
  54. package/dist/cjs/package.json +1 -0
  55. package/dist/cjs/polyfills.js +7 -0
  56. package/{build → dist/cjs}/proto/Compression.d.ts +1 -1
  57. package/dist/cjs/proto/Compression.js +131 -0
  58. package/{build → dist/cjs}/proto/TRI.d.ts +1 -1
  59. package/dist/cjs/proto/TRI.js +290 -0
  60. package/{build → dist/cjs}/proto/TeeProperties.d.ts +1 -1
  61. package/dist/cjs/proto/TeeProperties.js +397 -0
  62. package/{build → dist/cjs}/providers/storage/ChunksDownloadDecorator.d.ts +2 -2
  63. package/dist/cjs/providers/storage/ChunksDownloadDecorator.js +145 -0
  64. package/{build → dist/cjs}/providers/storage/IStorageProvider.d.ts +1 -1
  65. package/{build → dist/cjs}/providers/storage/IStorageProvider.js +1 -1
  66. package/{build → dist/cjs}/providers/storage/S3StorageProvider.d.ts +2 -2
  67. package/dist/cjs/providers/storage/S3StorageProvider.js +171 -0
  68. package/{build → dist/cjs}/providers/storage/StorageAdapter.d.ts +2 -2
  69. package/dist/cjs/providers/storage/StorageAdapter.js +301 -0
  70. package/{build → dist/cjs}/providers/storage/StorageContentWriter.d.ts +2 -2
  71. package/dist/cjs/providers/storage/StorageContentWriter.js +168 -0
  72. package/{build → dist/cjs}/providers/storage/StorageKeyValueAdapter.d.ts +2 -2
  73. package/dist/cjs/providers/storage/StorageKeyValueAdapter.js +125 -0
  74. package/{build → dist/cjs}/providers/storage/StorageMetadataReader.d.ts +3 -3
  75. package/dist/cjs/providers/storage/StorageMetadataReader.js +57 -0
  76. package/{build → dist/cjs}/providers/storage/StorjAdapter.d.ts +2 -2
  77. package/dist/cjs/providers/storage/StorjAdapter.js +54 -0
  78. package/{build → dist/cjs}/providers/storage/StorjStorageProvider.d.ts +2 -3
  79. package/dist/cjs/providers/storage/StorjStorageProvider.js +145 -0
  80. package/dist/cjs/providers/storage/getStorageProvider.d.ts +4 -0
  81. package/dist/cjs/providers/storage/getStorageProvider.js +20 -0
  82. package/{build → dist/cjs}/providers/storage/types.js +1 -1
  83. package/{build → dist/cjs}/staticModels/ActiveOffers.d.ts +1 -1
  84. package/dist/cjs/staticModels/ActiveOffers.js +37 -0
  85. package/{build → dist/cjs}/staticModels/ActiveOrders.d.ts +1 -1
  86. package/dist/cjs/staticModels/ActiveOrders.js +76 -0
  87. package/{build → dist/cjs}/staticModels/Consensus.d.ts +1 -1
  88. package/dist/cjs/staticModels/Consensus.js +225 -0
  89. package/{build → dist/cjs}/staticModels/Deposits.d.ts +1 -1
  90. package/dist/cjs/staticModels/Deposits.js +195 -0
  91. package/{build → dist/cjs}/staticModels/Marks.d.ts +1 -1
  92. package/dist/cjs/staticModels/Marks.js +30 -0
  93. package/dist/cjs/staticModels/ModelPackager.js +49 -0
  94. package/{build → dist/cjs}/staticModels/Offers.d.ts +2 -2
  95. package/dist/cjs/staticModels/Offers.js +189 -0
  96. package/{build → dist/cjs}/staticModels/Orders.d.ts +1 -1
  97. package/dist/cjs/staticModels/Orders.js +504 -0
  98. package/{build → dist/cjs}/staticModels/ProviderRegistry.d.ts +1 -1
  99. package/dist/cjs/staticModels/ProviderRegistry.js +174 -0
  100. package/{build → dist/cjs}/staticModels/StaticModel.d.ts +2 -2
  101. package/dist/cjs/staticModels/StaticModel.js +35 -0
  102. package/{build → dist/cjs}/staticModels/Superpro.d.ts +2 -2
  103. package/dist/cjs/staticModels/Superpro.js +25 -0
  104. package/{build → dist/cjs}/staticModels/SuperproToken.d.ts +1 -1
  105. package/dist/cjs/staticModels/SuperproToken.js +141 -0
  106. package/{build → dist/cjs}/staticModels/TeeOffers.d.ts +1 -1
  107. package/dist/cjs/staticModels/TeeOffers.js +314 -0
  108. package/dist/cjs/store.js +17 -0
  109. package/{build → dist/cjs}/tee/QuoteParser.d.ts +1 -1
  110. package/dist/cjs/tee/QuoteParser.js +189 -0
  111. package/{build → dist/cjs}/tee/QuoteValidator.d.ts +1 -1
  112. package/dist/cjs/tee/QuoteValidator.js +391 -0
  113. package/{build → dist/cjs}/tee/errors.js +1 -1
  114. package/dist/cjs/tee/helpers.js +120 -0
  115. package/{build → dist/cjs}/tee/interface.d.ts +1 -1
  116. package/{build → dist/cjs}/tee/interface.js +1 -1
  117. package/{build → dist/cjs}/tee/statuses.js +4 -4
  118. package/{build → dist/cjs}/tee/types.d.ts +5 -0
  119. package/{build → dist/cjs}/tee/types.js +1 -1
  120. package/{build → dist/cjs}/types/Compressor.js +1 -1
  121. package/{build → dist/cjs}/types/Consensus.d.ts +1 -1
  122. package/{build → dist/cjs}/types/Consensus.js +2 -2
  123. package/{build → dist/cjs}/types/DepositInfo.d.ts +1 -1
  124. package/{build → dist/cjs}/types/DepositInfo.js +1 -1
  125. package/{build → dist/cjs}/types/EtlModel.js +1 -1
  126. package/{build → dist/cjs}/types/Events.d.ts +2 -2
  127. package/{build → dist/cjs}/types/Events.js +1 -1
  128. package/dist/cjs/types/HardwareInfo.d.ts +6 -0
  129. package/{build → dist/cjs}/types/HardwareInfo.js +1 -1
  130. package/{build → dist/cjs}/types/Marks.js +2 -2
  131. package/{build → dist/cjs}/types/Offer.d.ts +1 -1
  132. package/dist/cjs/types/Offer.js +17 -0
  133. package/{build → dist/cjs}/types/OptionInfo.js +1 -1
  134. package/{build → dist/cjs}/types/Order.d.ts +1 -1
  135. package/{build → dist/cjs}/types/Order.js +2 -2
  136. package/{build → dist/cjs}/types/OrderUsage.d.ts +4 -4
  137. package/{build → dist/cjs}/types/OrderUsage.js +1 -1
  138. package/{build → dist/cjs}/types/Origins.js +1 -1
  139. package/{build → dist/cjs}/types/Provider.js +1 -1
  140. package/{build → dist/cjs}/types/ResourceLoader.d.ts +1 -1
  141. package/{build → dist/cjs}/types/ResourceLoader.js +1 -1
  142. package/{build → dist/cjs}/types/SlotInfo.js +1 -1
  143. package/{build → dist/cjs}/types/SlotUsage.d.ts +1 -1
  144. package/{build → dist/cjs}/types/SlotUsage.js +2 -2
  145. package/{build → dist/cjs}/types/Superpro.js +2 -2
  146. package/{build → dist/cjs}/types/TeeOfferInfo.d.ts +1 -1
  147. package/{build → dist/cjs}/types/TeeOfferInfo.js +1 -1
  148. package/{build → dist/cjs}/types/TeeOfferOption.d.ts +3 -3
  149. package/{build → dist/cjs}/types/TeeOfferOption.js +1 -1
  150. package/dist/cjs/types/TeeOfferSlot.d.ts +8 -0
  151. package/{build → dist/cjs}/types/TeeOfferSlot.js +1 -1
  152. package/{build → dist/cjs}/types/ValueOfferSlot.d.ts +4 -4
  153. package/{build → dist/cjs}/types/ValueOfferSlot.js +1 -1
  154. package/{build → dist/cjs}/types/Web3.js +1 -1
  155. package/{build → dist/cjs}/types/blockchainConnector/StorageAccess.d.ts +1 -1
  156. package/{build → dist/cjs}/types/blockchainConnector/StorageAccess.js +1 -1
  157. package/dist/cjs/types/index.d.ts +22 -0
  158. package/dist/cjs/types/index.js +39 -0
  159. package/{build → dist/cjs}/types/storage/StorageAccess.js +1 -1
  160. package/{build → dist/cjs}/types/storage/StorageFileAccess.d.ts +1 -1
  161. package/{build → dist/cjs}/types/storage/StorageFileAccess.js +1 -1
  162. package/{build → dist/cjs}/types/storage/StorageObject.js +1 -1
  163. package/dist/cjs/utils/Monitoring.js +49 -0
  164. package/dist/cjs/utils/NonceTracker.js +78 -0
  165. package/dist/cjs/utils/PubSub.js +35 -0
  166. package/{build → dist/cjs}/utils/TxManager.d.ts +1 -1
  167. package/dist/cjs/utils/TxManager.js +169 -0
  168. package/{build → dist/cjs}/utils/compressors/GzipCompressor.d.ts +2 -2
  169. package/dist/cjs/utils/compressors/GzipCompressor.js +22 -0
  170. package/{build → dist/cjs}/utils/compressors/UncompressedCompressor.d.ts +2 -2
  171. package/dist/cjs/utils/compressors/UncompressedCompressor.js +17 -0
  172. package/dist/cjs/utils/compressors/index.d.ts +2 -0
  173. package/{build → dist/cjs}/utils/compressors/index.js +3 -3
  174. package/{build → dist/cjs}/utils/helper.d.ts +3 -3
  175. package/dist/cjs/utils/helper.js +289 -0
  176. package/dist/cjs/utils/helpers/getStreamChunks.js +35 -0
  177. package/dist/cjs/utils/helpers/index.d.ts +1 -0
  178. package/{build → dist/cjs}/utils/helpers/index.js +2 -2
  179. package/dist/cjs/utils/helpers/tryWithInterval.js +39 -0
  180. package/{build → dist/cjs}/utils/resourceLoaders/BaseResourceLoader.d.ts +1 -1
  181. package/dist/cjs/utils/resourceLoaders/BaseResourceLoader.js +14 -0
  182. package/{build → dist/cjs}/utils/resourceLoaders/StorageProviderLoader.d.ts +2 -2
  183. package/dist/cjs/utils/resourceLoaders/StorageProviderLoader.js +60 -0
  184. package/{build → dist/cjs}/utils/resourceLoaders/UrlResourceLoader.d.ts +1 -1
  185. package/dist/cjs/utils/resourceLoaders/UrlResourceLoader.js +51 -0
  186. package/{build → dist/cjs}/utils/resourceLoaders/getResourceLoader.d.ts +1 -1
  187. package/dist/cjs/utils/resourceLoaders/getResourceLoader.js +15 -0
  188. package/dist/cjs/utils/resourceLoaders/index.d.ts +1 -0
  189. package/{build → dist/cjs}/utils/resourceLoaders/index.js +2 -2
  190. package/dist/mjs/TIIGenerator.d.ts +22 -0
  191. package/dist/mjs/TIIGenerator.js +225 -0
  192. package/dist/mjs/analytics/Analytics.d.ts +15 -0
  193. package/dist/mjs/analytics/Analytics.js +61 -0
  194. package/dist/mjs/analytics/AnalyticsError.d.ts +7 -0
  195. package/dist/mjs/analytics/AnalyticsError.js +8 -0
  196. package/dist/mjs/analytics/eventProviders/BrowserEventProvider.d.ts +18 -0
  197. package/dist/mjs/analytics/eventProviders/BrowserEventProvider.js +32 -0
  198. package/dist/mjs/analytics/eventProviders/EventProvider.d.ts +24 -0
  199. package/dist/mjs/analytics/eventProviders/EventProvider.js +22 -0
  200. package/dist/mjs/analytics/eventProviders/NodeEventProvider.d.ts +22 -0
  201. package/dist/mjs/analytics/eventProviders/NodeEventProvider.js +50 -0
  202. package/dist/mjs/analytics/transports/AxiosTransport.d.ts +4 -0
  203. package/dist/mjs/analytics/transports/AxiosTransport.js +31 -0
  204. package/dist/mjs/analytics/transports/FetchTransport.d.ts +4 -0
  205. package/dist/mjs/analytics/transports/FetchTransport.js +28 -0
  206. package/dist/mjs/analytics/types.d.ts +22 -0
  207. package/dist/mjs/analytics/types.js +2 -0
  208. package/dist/mjs/config.d.ts +4 -0
  209. package/dist/mjs/config.js +5 -0
  210. package/dist/mjs/connectors/BaseConnector.d.ts +36 -0
  211. package/dist/mjs/connectors/BaseConnector.js +34 -0
  212. package/dist/mjs/connectors/BlockchainConnector.d.ts +81 -0
  213. package/dist/mjs/connectors/BlockchainConnector.js +313 -0
  214. package/dist/mjs/connectors/BlockchainEventsListener.d.ts +15 -0
  215. package/dist/mjs/connectors/BlockchainEventsListener.js +75 -0
  216. package/dist/mjs/connectors/index.d.ts +2 -0
  217. package/dist/mjs/connectors/index.js +3 -0
  218. package/dist/mjs/constants.d.ts +13 -0
  219. package/dist/mjs/constants.js +14 -0
  220. package/dist/mjs/contracts/abi.d.ts +9842 -0
  221. package/dist/mjs/contracts/abi.js +12844 -0
  222. package/dist/mjs/crypto/Crypto.d.ts +54 -0
  223. package/dist/mjs/crypto/Crypto.js +95 -0
  224. package/dist/mjs/crypto/index.d.ts +2 -0
  225. package/dist/mjs/crypto/index.js +3 -0
  226. package/dist/mjs/crypto/nodejs/AES.d.ts +24 -0
  227. package/dist/mjs/crypto/nodejs/AES.js +74 -0
  228. package/dist/mjs/crypto/nodejs/ARIA.d.ts +24 -0
  229. package/dist/mjs/crypto/nodejs/ARIA.js +73 -0
  230. package/dist/mjs/crypto/nodejs/ECIES.d.ts +6 -0
  231. package/dist/mjs/crypto/nodejs/ECIES.js +51 -0
  232. package/dist/mjs/crypto/nodejs/NativeCrypto.d.ts +58 -0
  233. package/dist/mjs/crypto/nodejs/NativeCrypto.js +163 -0
  234. package/dist/mjs/crypto/nodejs/RSA-Hybrid.d.ts +15 -0
  235. package/dist/mjs/crypto/nodejs/RSA-Hybrid.js +89 -0
  236. package/dist/mjs/index.d.ts +80 -0
  237. package/dist/mjs/index.js +76 -0
  238. package/dist/mjs/logger.d.ts +7 -0
  239. package/dist/mjs/logger.js +7 -0
  240. package/dist/mjs/models/EtlModel.d.ts +34 -0
  241. package/dist/mjs/models/EtlModel.js +96 -0
  242. package/dist/mjs/models/Offer.d.ts +130 -0
  243. package/dist/mjs/models/Offer.js +356 -0
  244. package/dist/mjs/models/Order.d.ts +148 -0
  245. package/dist/mjs/models/Order.js +538 -0
  246. package/dist/mjs/models/Provider.d.ts +51 -0
  247. package/dist/mjs/models/Provider.js +114 -0
  248. package/dist/mjs/models/TCB.d.ts +58 -0
  249. package/dist/mjs/models/TCB.js +107 -0
  250. package/dist/mjs/models/TeeOffer.d.ts +204 -0
  251. package/dist/mjs/models/TeeOffer.js +533 -0
  252. package/dist/mjs/models/index.d.ts +5 -0
  253. package/dist/mjs/models/index.js +6 -0
  254. package/dist/mjs/package.json +1 -0
  255. package/dist/mjs/polyfills.d.ts +0 -0
  256. package/dist/mjs/polyfills.js +7 -0
  257. package/dist/mjs/proto/Compression.d.ts +36 -0
  258. package/dist/mjs/proto/Compression.js +123 -0
  259. package/dist/mjs/proto/TRI.d.ts +124 -0
  260. package/dist/mjs/proto/TRI.js +284 -0
  261. package/dist/mjs/proto/TeeProperties.d.ts +263 -0
  262. package/dist/mjs/proto/TeeProperties.js +391 -0
  263. package/dist/mjs/providers/storage/ChunksDownloadDecorator.d.ts +36 -0
  264. package/dist/mjs/providers/storage/ChunksDownloadDecorator.js +139 -0
  265. package/dist/mjs/providers/storage/IStorageProvider.d.ts +15 -0
  266. package/dist/mjs/providers/storage/IStorageProvider.js +2 -0
  267. package/dist/mjs/providers/storage/S3StorageProvider.d.ts +25 -0
  268. package/dist/mjs/providers/storage/S3StorageProvider.js +167 -0
  269. package/dist/mjs/providers/storage/StorageAdapter.d.ts +60 -0
  270. package/dist/mjs/providers/storage/StorageAdapter.js +271 -0
  271. package/dist/mjs/providers/storage/StorageContentWriter.d.ts +46 -0
  272. package/dist/mjs/providers/storage/StorageContentWriter.js +161 -0
  273. package/dist/mjs/providers/storage/StorageKeyValueAdapter.d.ts +23 -0
  274. package/dist/mjs/providers/storage/StorageKeyValueAdapter.js +119 -0
  275. package/dist/mjs/providers/storage/StorageMetadataReader.d.ts +20 -0
  276. package/dist/mjs/providers/storage/StorageMetadataReader.js +51 -0
  277. package/dist/mjs/providers/storage/StorjAdapter.d.ts +19 -0
  278. package/dist/mjs/providers/storage/StorjAdapter.js +48 -0
  279. package/dist/mjs/providers/storage/StorjStorageProvider.d.ts +24 -0
  280. package/dist/mjs/providers/storage/StorjStorageProvider.js +139 -0
  281. package/dist/mjs/providers/storage/getStorageProvider.d.ts +4 -0
  282. package/dist/mjs/providers/storage/getStorageProvider.js +15 -0
  283. package/dist/mjs/providers/storage/types.d.ts +7 -0
  284. package/dist/mjs/providers/storage/types.js +2 -0
  285. package/dist/mjs/staticModels/ActiveOffers.d.ts +15 -0
  286. package/dist/mjs/staticModels/ActiveOffers.js +32 -0
  287. package/dist/mjs/staticModels/ActiveOrders.d.ts +20 -0
  288. package/dist/mjs/staticModels/ActiveOrders.js +71 -0
  289. package/dist/mjs/staticModels/Consensus.d.ts +42 -0
  290. package/dist/mjs/staticModels/Consensus.js +220 -0
  291. package/dist/mjs/staticModels/Deposits.d.ts +70 -0
  292. package/dist/mjs/staticModels/Deposits.js +190 -0
  293. package/dist/mjs/staticModels/Marks.d.ts +8 -0
  294. package/dist/mjs/staticModels/Marks.js +25 -0
  295. package/dist/mjs/staticModels/ModelPackager.d.ts +18 -0
  296. package/dist/mjs/staticModels/ModelPackager.js +45 -0
  297. package/dist/mjs/staticModels/Offers.d.ts +65 -0
  298. package/dist/mjs/staticModels/Offers.js +184 -0
  299. package/dist/mjs/staticModels/Orders.d.ts +155 -0
  300. package/dist/mjs/staticModels/Orders.js +499 -0
  301. package/dist/mjs/staticModels/ProviderRegistry.d.ts +74 -0
  302. package/dist/mjs/staticModels/ProviderRegistry.js +169 -0
  303. package/dist/mjs/staticModels/StaticModel.d.ts +8 -0
  304. package/dist/mjs/staticModels/StaticModel.js +30 -0
  305. package/dist/mjs/staticModels/Superpro.d.ts +16 -0
  306. package/dist/mjs/staticModels/Superpro.js +23 -0
  307. package/dist/mjs/staticModels/SuperproToken.d.ts +48 -0
  308. package/dist/mjs/staticModels/SuperproToken.js +136 -0
  309. package/dist/mjs/staticModels/TeeOffers.d.ts +115 -0
  310. package/dist/mjs/staticModels/TeeOffers.js +309 -0
  311. package/dist/mjs/store.d.ts +15 -0
  312. package/dist/mjs/store.js +15 -0
  313. package/dist/mjs/tee/QuoteParser.d.ts +27 -0
  314. package/dist/mjs/tee/QuoteParser.js +162 -0
  315. package/dist/mjs/tee/QuoteValidator.d.ts +38 -0
  316. package/dist/mjs/tee/QuoteValidator.js +384 -0
  317. package/dist/mjs/tee/errors.d.ts +6 -0
  318. package/dist/mjs/tee/errors.js +7 -0
  319. package/dist/mjs/tee/helpers.d.ts +14 -0
  320. package/dist/mjs/tee/helpers.js +115 -0
  321. package/dist/mjs/tee/interface.d.ts +63 -0
  322. package/dist/mjs/tee/interface.js +2 -0
  323. package/dist/mjs/tee/statuses.d.ts +21 -0
  324. package/dist/mjs/tee/statuses.js +25 -0
  325. package/dist/mjs/tee/types.d.ts +80 -0
  326. package/dist/mjs/tee/types.js +2 -0
  327. package/dist/mjs/types/Compressor.d.ts +5 -0
  328. package/dist/mjs/types/Compressor.js +2 -0
  329. package/dist/mjs/types/Consensus.d.ts +60 -0
  330. package/dist/mjs/types/Consensus.js +16 -0
  331. package/dist/mjs/types/DepositInfo.d.ts +6 -0
  332. package/dist/mjs/types/DepositInfo.js +2 -0
  333. package/dist/mjs/types/EtlModel.d.ts +2 -0
  334. package/dist/mjs/types/EtlModel.js +2 -0
  335. package/dist/mjs/types/Events.d.ts +34 -0
  336. package/dist/mjs/types/Events.js +2 -0
  337. package/dist/mjs/types/HardwareInfo.d.ts +6 -0
  338. package/dist/mjs/types/HardwareInfo.js +2 -0
  339. package/dist/mjs/types/Marks.d.ts +9 -0
  340. package/dist/mjs/types/Marks.js +7 -0
  341. package/dist/mjs/types/Offer.d.ts +33 -0
  342. package/dist/mjs/types/Offer.js +14 -0
  343. package/dist/mjs/types/OptionInfo.d.ts +8 -0
  344. package/dist/mjs/types/OptionInfo.js +2 -0
  345. package/dist/mjs/types/Order.d.ts +44 -0
  346. package/dist/mjs/types/Order.js +12 -0
  347. package/dist/mjs/types/OrderUsage.d.ts +26 -0
  348. package/dist/mjs/types/OrderUsage.js +2 -0
  349. package/dist/mjs/types/Origins.d.ts +6 -0
  350. package/dist/mjs/types/Origins.js +2 -0
  351. package/dist/mjs/types/Provider.d.ts +7 -0
  352. package/dist/mjs/types/Provider.js +2 -0
  353. package/dist/mjs/types/ResourceLoader.d.ts +28 -0
  354. package/dist/mjs/types/ResourceLoader.js +2 -0
  355. package/dist/mjs/types/SlotInfo.d.ts +6 -0
  356. package/dist/mjs/types/SlotInfo.js +2 -0
  357. package/dist/mjs/types/SlotUsage.d.ts +11 -0
  358. package/dist/mjs/types/SlotUsage.js +6 -0
  359. package/dist/mjs/types/Superpro.d.ts +9 -0
  360. package/dist/mjs/types/Superpro.js +11 -0
  361. package/dist/mjs/types/TeeOfferInfo.d.ts +10 -0
  362. package/dist/mjs/types/TeeOfferInfo.js +2 -0
  363. package/dist/mjs/types/TeeOfferOption.d.ts +13 -0
  364. package/dist/mjs/types/TeeOfferOption.js +2 -0
  365. package/dist/mjs/types/TeeOfferSlot.d.ts +8 -0
  366. package/dist/mjs/types/TeeOfferSlot.js +2 -0
  367. package/dist/mjs/types/ValueOfferSlot.d.ts +16 -0
  368. package/dist/mjs/types/ValueOfferSlot.js +2 -0
  369. package/dist/mjs/types/Web3.d.ts +62 -0
  370. package/dist/mjs/types/Web3.js +2 -0
  371. package/dist/mjs/types/blockchainConnector/StorageAccess.d.ts +8 -0
  372. package/dist/mjs/types/blockchainConnector/StorageAccess.js +2 -0
  373. package/dist/mjs/types/index.d.ts +22 -0
  374. package/dist/mjs/types/index.js +23 -0
  375. package/dist/mjs/types/storage/StorageAccess.d.ts +7 -0
  376. package/dist/mjs/types/storage/StorageAccess.js +2 -0
  377. package/dist/mjs/types/storage/StorageFileAccess.d.ts +5 -0
  378. package/dist/mjs/types/storage/StorageFileAccess.js +2 -0
  379. package/dist/mjs/types/storage/StorageObject.d.ts +8 -0
  380. package/dist/mjs/types/storage/StorageObject.js +2 -0
  381. package/dist/mjs/utils/Monitoring.d.ts +11 -0
  382. package/dist/mjs/utils/Monitoring.js +42 -0
  383. package/dist/mjs/utils/NonceTracker.d.ts +19 -0
  384. package/dist/mjs/utils/NonceTracker.js +73 -0
  385. package/dist/mjs/utils/PubSub.d.ts +9 -0
  386. package/dist/mjs/utils/PubSub.js +32 -0
  387. package/dist/mjs/utils/TxManager.d.ts +25 -0
  388. package/dist/mjs/utils/TxManager.js +162 -0
  389. package/dist/mjs/utils/compressors/GzipCompressor.d.ts +8 -0
  390. package/dist/mjs/utils/compressors/GzipCompressor.js +15 -0
  391. package/dist/mjs/utils/compressors/UncompressedCompressor.d.ts +8 -0
  392. package/dist/mjs/utils/compressors/UncompressedCompressor.js +13 -0
  393. package/dist/mjs/utils/compressors/index.d.ts +2 -0
  394. package/dist/mjs/utils/compressors/index.js +3 -0
  395. package/dist/mjs/utils/helper.d.ts +44 -0
  396. package/dist/mjs/utils/helper.js +258 -0
  397. package/dist/mjs/utils/helpers/getStreamChunks.d.ts +9 -0
  398. package/dist/mjs/utils/helpers/getStreamChunks.js +31 -0
  399. package/dist/mjs/utils/helpers/index.d.ts +1 -0
  400. package/dist/mjs/utils/helpers/index.js +2 -0
  401. package/dist/mjs/utils/helpers/tryWithInterval.d.ts +13 -0
  402. package/dist/mjs/utils/helpers/tryWithInterval.js +35 -0
  403. package/dist/mjs/utils/resourceLoaders/BaseResourceLoader.d.ts +10 -0
  404. package/dist/mjs/utils/resourceLoaders/BaseResourceLoader.js +10 -0
  405. package/dist/mjs/utils/resourceLoaders/StorageProviderLoader.d.ts +18 -0
  406. package/dist/mjs/utils/resourceLoaders/StorageProviderLoader.js +53 -0
  407. package/dist/mjs/utils/resourceLoaders/UrlResourceLoader.d.ts +9 -0
  408. package/dist/mjs/utils/resourceLoaders/UrlResourceLoader.js +44 -0
  409. package/dist/mjs/utils/resourceLoaders/getResourceLoader.d.ts +5 -0
  410. package/dist/mjs/utils/resourceLoaders/getResourceLoader.js +11 -0
  411. package/dist/mjs/utils/resourceLoaders/index.d.ts +1 -0
  412. package/dist/mjs/utils/resourceLoaders/index.js +2 -0
  413. package/package.json +16 -18
  414. package/build/TIIGenerator.js +0 -246
  415. package/build/analytics/Analytics.js +0 -74
  416. package/build/analytics/eventProviders/BrowserEventProvider.js +0 -32
  417. package/build/analytics/eventProviders/EventProvider.js +0 -14
  418. package/build/analytics/eventProviders/NodeEventProvider.js +0 -48
  419. package/build/analytics/transports/AxiosTransport.js +0 -72
  420. package/build/analytics/transports/FetchTransport.js +0 -42
  421. package/build/connectors/BaseConnector.js +0 -53
  422. package/build/connectors/BlockchainConnector.js +0 -358
  423. package/build/connectors/BlockchainEventsListener.js +0 -114
  424. package/build/crypto/Crypto.js +0 -119
  425. package/build/crypto/index.d.ts +0 -2
  426. package/build/crypto/nodejs/AES.js +0 -94
  427. package/build/crypto/nodejs/ARIA.js +0 -93
  428. package/build/crypto/nodejs/ECIES.js +0 -69
  429. package/build/crypto/nodejs/NativeCrypto.js +0 -183
  430. package/build/crypto/nodejs/RSA-Hybrid.js +0 -95
  431. package/build/index.d.ts +0 -79
  432. package/build/index.js +0 -142
  433. package/build/models/EtlModel.js +0 -138
  434. package/build/models/Offer.js +0 -407
  435. package/build/models/Order.js +0 -577
  436. package/build/models/Provider.js +0 -137
  437. package/build/models/TCB.js +0 -135
  438. package/build/models/TeeOffer.js +0 -600
  439. package/build/models/index.d.ts +0 -5
  440. package/build/models/index.js +0 -17
  441. package/build/polyfills.js +0 -7
  442. package/build/proto/Compression.js +0 -132
  443. package/build/proto/TRI.js +0 -293
  444. package/build/proto/TeeProperties.js +0 -401
  445. package/build/providers/storage/ChunksDownloadDecorator.js +0 -177
  446. package/build/providers/storage/S3StorageProvider.js +0 -219
  447. package/build/providers/storage/StorageAdapter.js +0 -323
  448. package/build/providers/storage/StorageContentWriter.js +0 -183
  449. package/build/providers/storage/StorageKeyValueAdapter.js +0 -158
  450. package/build/providers/storage/StorageMetadataReader.js +0 -68
  451. package/build/providers/storage/StorjAdapter.js +0 -74
  452. package/build/providers/storage/StorjStorageProvider.js +0 -207
  453. package/build/providers/storage/getStorageProvider.d.ts +0 -4
  454. package/build/providers/storage/getStorageProvider.js +0 -20
  455. package/build/staticModels/ActiveOffers.js +0 -52
  456. package/build/staticModels/ActiveOrders.js +0 -91
  457. package/build/staticModels/Consensus.js +0 -247
  458. package/build/staticModels/Deposits.js +0 -214
  459. package/build/staticModels/Marks.js +0 -43
  460. package/build/staticModels/ModelPackager.js +0 -62
  461. package/build/staticModels/Offers.js +0 -207
  462. package/build/staticModels/Orders.js +0 -518
  463. package/build/staticModels/ProviderRegistry.js +0 -192
  464. package/build/staticModels/StaticModel.js +0 -46
  465. package/build/staticModels/Superpro.js +0 -24
  466. package/build/staticModels/SuperproToken.js +0 -154
  467. package/build/staticModels/TeeOffers.js +0 -344
  468. package/build/store.js +0 -17
  469. package/build/tee/QuoteParser.js +0 -189
  470. package/build/tee/QuoteValidator.js +0 -414
  471. package/build/tee/helpers.js +0 -119
  472. package/build/types/HardwareInfo.d.ts +0 -6
  473. package/build/types/Offer.js +0 -17
  474. package/build/types/TeeOfferSlot.d.ts +0 -8
  475. package/build/types/index.d.ts +0 -22
  476. package/build/types/index.js +0 -39
  477. package/build/utils/Monitoring.js +0 -48
  478. package/build/utils/NonceTracker.js +0 -90
  479. package/build/utils/PubSub.js +0 -37
  480. package/build/utils/TxManager.js +0 -179
  481. package/build/utils/compressors/GzipCompressor.js +0 -29
  482. package/build/utils/compressors/UncompressedCompressor.js +0 -17
  483. package/build/utils/compressors/index.d.ts +0 -2
  484. package/build/utils/helper.js +0 -286
  485. package/build/utils/helpers/getStreamChunks.js +0 -74
  486. package/build/utils/helpers/index.d.ts +0 -1
  487. package/build/utils/helpers/tryWithInterval.js +0 -48
  488. package/build/utils/resourceLoaders/BaseResourceLoader.js +0 -51
  489. package/build/utils/resourceLoaders/StorageProviderLoader.js +0 -69
  490. package/build/utils/resourceLoaders/UrlResourceLoader.js +0 -64
  491. package/build/utils/resourceLoaders/getResourceLoader.js +0 -15
  492. package/build/utils/resourceLoaders/index.d.ts +0 -1
  493. /package/{build → dist/cjs}/analytics/AnalyticsError.d.ts +0 -0
  494. /package/{build → dist/cjs}/analytics/eventProviders/EventProvider.d.ts +0 -0
  495. /package/{build → dist/cjs}/config.d.ts +0 -0
  496. /package/{build → dist/cjs}/constants.d.ts +0 -0
  497. /package/{build → dist/cjs}/contracts/abi.d.ts +0 -0
  498. /package/{build → dist/cjs}/crypto/Crypto.d.ts +0 -0
  499. /package/{build → dist/cjs}/crypto/nodejs/AES.d.ts +0 -0
  500. /package/{build → dist/cjs}/crypto/nodejs/ARIA.d.ts +0 -0
  501. /package/{build → dist/cjs}/crypto/nodejs/ECIES.d.ts +0 -0
  502. /package/{build → dist/cjs}/crypto/nodejs/RSA-Hybrid.d.ts +0 -0
  503. /package/{build → dist/cjs}/logger.d.ts +0 -0
  504. /package/{build → dist/cjs}/polyfills.d.ts +0 -0
  505. /package/{build → dist/cjs}/providers/storage/types.d.ts +0 -0
  506. /package/{build → dist/cjs}/staticModels/ModelPackager.d.ts +0 -0
  507. /package/{build → dist/cjs}/store.d.ts +0 -0
  508. /package/{build → dist/cjs}/tee/errors.d.ts +0 -0
  509. /package/{build → dist/cjs}/tee/helpers.d.ts +0 -0
  510. /package/{build → dist/cjs}/tee/statuses.d.ts +0 -0
  511. /package/{build → dist/cjs}/types/Compressor.d.ts +0 -0
  512. /package/{build → dist/cjs}/types/EtlModel.d.ts +0 -0
  513. /package/{build → dist/cjs}/types/Marks.d.ts +0 -0
  514. /package/{build → dist/cjs}/types/OptionInfo.d.ts +0 -0
  515. /package/{build → dist/cjs}/types/Origins.d.ts +0 -0
  516. /package/{build → dist/cjs}/types/Provider.d.ts +0 -0
  517. /package/{build → dist/cjs}/types/SlotInfo.d.ts +0 -0
  518. /package/{build → dist/cjs}/types/Superpro.d.ts +0 -0
  519. /package/{build → dist/cjs}/types/Web3.d.ts +0 -0
  520. /package/{build → dist/cjs}/types/storage/StorageAccess.d.ts +0 -0
  521. /package/{build → dist/cjs}/types/storage/StorageObject.d.ts +0 -0
  522. /package/{build → dist/cjs}/utils/Monitoring.d.ts +0 -0
  523. /package/{build → dist/cjs}/utils/NonceTracker.d.ts +0 -0
  524. /package/{build → dist/cjs}/utils/PubSub.d.ts +0 -0
  525. /package/{build → dist/cjs}/utils/helpers/getStreamChunks.d.ts +0 -0
  526. /package/{build → dist/cjs}/utils/helpers/tryWithInterval.d.ts +0 -0
@@ -0,0 +1,504 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ const utils_js_1 = require("ethers/lib/utils.js");
16
+ const logger_js_1 = __importDefault(require("../logger.js"));
17
+ const helper_js_1 = require("../utils/helper.js");
18
+ const Superpro_1 = __importDefault(require("./Superpro"));
19
+ const TxManager_1 = __importDefault(require("../utils/TxManager"));
20
+ const connectors_1 = require("../connectors");
21
+ const models_1 = require("../models");
22
+ const StaticModel_js_1 = __importDefault(require("./StaticModel.js"));
23
+ class Orders {
24
+ static logger = logger_js_1.default.child({ className: 'Orders' });
25
+ static orders;
26
+ static get address() {
27
+ return Superpro_1.default.address;
28
+ }
29
+ /**
30
+ * Function for fetching list of all orders ids
31
+ * @returns list of orders ids
32
+ */
33
+ static async getAll() {
34
+ const contract = connectors_1.BlockchainConnector.getInstance().getContract();
35
+ this.orders = this.orders ?? [];
36
+ const ordersSet = new Set(this.orders);
37
+ const ordersCount = Number(await contract.methods.getOrdersCount().call());
38
+ for (let orderId = ordersSet.size + 1; orderId <= ordersCount; orderId++) {
39
+ ordersSet.add(orderId.toString());
40
+ }
41
+ this.orders = Array.from(ordersSet);
42
+ return this.orders;
43
+ }
44
+ /**
45
+ * Function for fetching orders count
46
+ */
47
+ static async getCount() {
48
+ const contract = connectors_1.BlockchainConnector.getInstance().getContract();
49
+ return Number(await contract.methods.getOrdersCount().call());
50
+ }
51
+ /**
52
+ * Function for creating orders
53
+ * @param orderInfo - order info for new order
54
+ * @param suspended - is orders suspended
55
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
56
+ * @returns {Promise<void>} - Does not return id of created order!
57
+ */
58
+ static async createOrder(orderInfo, slots, deposit, suspended = false, transactionOptions, checkTxBeforeSend = false) {
59
+ const contract = connectors_1.BlockchainConnector.getInstance().getContract();
60
+ (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
61
+ deposit = deposit ?? '0';
62
+ const orderInfoArguments = {
63
+ ...orderInfo,
64
+ externalId: (0, utils_js_1.formatBytes32String)(orderInfo.externalId),
65
+ };
66
+ const { args, ...restOrderInfoArguments } = orderInfoArguments;
67
+ if (checkTxBeforeSend) {
68
+ await TxManager_1.default.dryRun(contract.methods.createOrder({
69
+ ...restOrderInfoArguments,
70
+ expectedPrice: restOrderInfoArguments.expectedPrice ?? '0',
71
+ maxPriceSlippage: restOrderInfoArguments.maxPriceSlippage ?? '0',
72
+ }, slots, args, deposit, suspended), transactionOptions);
73
+ }
74
+ await TxManager_1.default.execute(contract.methods.createOrder({
75
+ ...restOrderInfoArguments,
76
+ expectedPrice: restOrderInfoArguments.expectedPrice ?? '0',
77
+ maxPriceSlippage: restOrderInfoArguments.maxPriceSlippage ?? '0',
78
+ }, slots, args, deposit, suspended), transactionOptions);
79
+ }
80
+ static async getByExternalId(filter, fromBlock, toBlock) {
81
+ const founded = await StaticModel_js_1.default.findItemsById('OrderCreated', filter, fromBlock, toBlock);
82
+ if (!founded)
83
+ return null;
84
+ return founded;
85
+ }
86
+ /**
87
+ * Function for create workflow
88
+ * @param parentOrderInfo - order info for new order
89
+ * @param subOrdersInfo - array of sub orders infos
90
+ * @param externalId - external id
91
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
92
+ * @returns {Promise<void>} - Does not return id of created order!
93
+ */
94
+ static async createWorkflow(parentOrderInfo, parentOrderSlot, subOrdersInfo, subOrdersSlots, workflowDeposit, transactionOptions, checkTxBeforeSend = false) {
95
+ const contract = connectors_1.BlockchainConnector.getInstance().getContract();
96
+ (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
97
+ workflowDeposit = workflowDeposit ?? '0';
98
+ const parentOrderInfoArgs = {
99
+ ...parentOrderInfo,
100
+ externalId: (0, utils_js_1.formatBytes32String)(parentOrderInfo.externalId),
101
+ };
102
+ const subOrdersInfoArgs = subOrdersInfo.map((o) => ({
103
+ ...o,
104
+ externalId: (0, utils_js_1.formatBytes32String)(o.externalId),
105
+ expectedPrice: o.expectedPrice ?? '0',
106
+ maxPriceSlippage: o.maxPriceSlippage ?? '0',
107
+ }));
108
+ const subOrdersArgs = subOrdersInfo.map((i) => i.args);
109
+ if (checkTxBeforeSend) {
110
+ const { args, ...restParentOrderInfoArgs } = parentOrderInfoArgs;
111
+ await TxManager_1.default.dryRun(contract.methods.createWorkflow({
112
+ ...restParentOrderInfoArgs,
113
+ expectedPrice: restParentOrderInfoArgs.expectedPrice ?? '0',
114
+ maxPriceSlippage: restParentOrderInfoArgs.maxPriceSlippage ?? '0',
115
+ }, parentOrderSlot, args, workflowDeposit, subOrdersInfoArgs, subOrdersSlots, subOrdersArgs), transactionOptions);
116
+ }
117
+ const { args, ...restParentOrderInfoArgs } = parentOrderInfoArgs;
118
+ await TxManager_1.default.execute(contract.methods.createWorkflow({
119
+ ...restParentOrderInfoArgs,
120
+ expectedPrice: restParentOrderInfoArgs.expectedPrice ?? '0',
121
+ maxPriceSlippage: restParentOrderInfoArgs.maxPriceSlippage ?? '0',
122
+ }, parentOrderSlot, args, workflowDeposit, subOrdersInfoArgs, subOrdersSlots, subOrdersArgs), transactionOptions);
123
+ }
124
+ /**
125
+ * Function for cancel workflow
126
+ * @param parentOrderId - Parent order id
127
+ * @returns {Promise<void>} - Does not return id of created order!
128
+ */
129
+ static async cancelWorkflow(perentOrderId, transactionOptions) {
130
+ const contract = connectors_1.BlockchainConnector.getInstance().getContract();
131
+ (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
132
+ await TxManager_1.default.execute(contract.methods.cancelWorkflow(perentOrderId), transactionOptions);
133
+ }
134
+ /**
135
+ * Function for refilling order deposit
136
+ * @param orderId - order id
137
+ * @param amount - amount of tokens to refilling
138
+ * @param transactionOptions - object what contains alternative action account or gas limit (optional)
139
+ */
140
+ static async refillOrderDeposit(orderId, amount, transactionOptions) {
141
+ const contract = connectors_1.BlockchainConnector.getInstance().getContract();
142
+ (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
143
+ await TxManager_1.default.execute(contract.methods.refillOrder(orderId, amount), transactionOptions);
144
+ }
145
+ static async unlockProfitByOrderList(orderIds, transactionOptions) {
146
+ const contract = connectors_1.BlockchainConnector.getInstance().getContract();
147
+ (0, helper_js_1.checkIfActionAccountInitialized)(transactionOptions);
148
+ let executedCount;
149
+ try {
150
+ executedCount = Number((await TxManager_1.default.dryRun(contract.methods.unlockProfitByList(orderIds), transactionOptions)));
151
+ }
152
+ catch (e) {
153
+ executedCount = 0;
154
+ }
155
+ if (executedCount === orderIds.length) {
156
+ await TxManager_1.default.execute(contract.methods.unlockProfitByList(orderIds), transactionOptions);
157
+ }
158
+ else {
159
+ for (const orderId of orderIds) {
160
+ await new models_1.Order(orderId).unlockProfit();
161
+ }
162
+ }
163
+ }
164
+ /**
165
+ * Function for adding event listeners on order created event in orders factory contract
166
+ * @param callback - function for processing created order
167
+ * @returns unsubscribe - unsubscribe function from event
168
+ */
169
+ static onCreated(callback) {
170
+ const contract = connectors_1.BlockchainEventsListener.getInstance().getContract();
171
+ const logger = this.logger.child({ method: 'onOrderCreated' });
172
+ const subscription = contract.events.OrderCreated();
173
+ subscription.on('data', (event) => {
174
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
175
+ callback(parsedEvent.consumer, (0, utils_js_1.parseBytes32String)(parsedEvent.externalId), parsedEvent.offerId, parsedEvent.parentOrderId, parsedEvent.orderId, parsedEvent.deposit, parsedEvent.status, {
176
+ index: Number(event.blockNumber),
177
+ hash: event.blockHash,
178
+ });
179
+ });
180
+ subscription.on('error', (error) => {
181
+ logger.warn(error);
182
+ });
183
+ return () => subscription.unsubscribe();
184
+ }
185
+ /**
186
+ * Function for adding event listeners on order started event in orders contract
187
+ * @param callback - function for processing suborder filled event
188
+ * @param orderId - order id
189
+ * @returns unsubscribe - unsubscribe function from event
190
+ */
191
+ static onStarted(callback, orderId) {
192
+ const contract = connectors_1.BlockchainEventsListener.getInstance().getContract();
193
+ const logger = this.logger.child({ method: 'onOrderStarted' });
194
+ const subscription = contract.events.OrderStarted();
195
+ subscription.on('data', (event) => {
196
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
197
+ if (orderId && parsedEvent.orderId != (0, helper_js_1.convertBigIntToString)(orderId)) {
198
+ return;
199
+ }
200
+ callback(parsedEvent.orderId, parsedEvent.consumer, {
201
+ index: Number(event.blockNumber),
202
+ hash: event.blockHash,
203
+ });
204
+ });
205
+ subscription.on('error', (error) => {
206
+ logger.warn(error);
207
+ });
208
+ return () => subscription.unsubscribe();
209
+ }
210
+ /**
211
+ * Function for adding event listeners on order updated status event in orders contract
212
+ * @param callback - function for processing order updated status event
213
+ * @param orderId - order id
214
+ * @returns unsubscribe - unsubscribe function from event
215
+ */
216
+ static onStatusUpdated(callback, orderId) {
217
+ const contract = connectors_1.BlockchainEventsListener.getInstance().getContract();
218
+ const logger = this.logger.child({ method: 'onOrdersStatusUpdated' });
219
+ const subscription = contract.events.OrderStatusUpdated();
220
+ subscription.on('data', (event) => {
221
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
222
+ if (orderId && parsedEvent.orderId != (0, helper_js_1.convertBigIntToString)(orderId)) {
223
+ return;
224
+ }
225
+ callback(parsedEvent.orderId, parsedEvent.status, {
226
+ index: Number(event.blockNumber),
227
+ hash: event.blockHash,
228
+ });
229
+ });
230
+ subscription.on('error', (error) => {
231
+ logger.warn(error);
232
+ });
233
+ return () => subscription.unsubscribe();
234
+ }
235
+ /**
236
+ * Function for adding event listeners on order refilled event in orders contract
237
+ * @param callback - function for processing order refilled event
238
+ * @param consumer - consumer address
239
+ * @param orderId - order id
240
+ * @returns unsubscribe - unsubscribe function from event
241
+ */
242
+ static onDepositRefilled(callback, consumer, orderId) {
243
+ const contract = connectors_1.BlockchainEventsListener.getInstance().getContract();
244
+ const logger = this.logger.child({ method: 'onOrderDepositRefilled' });
245
+ const subscription = contract.events.OrderDepositRefilled();
246
+ subscription.on('data', (event) => {
247
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
248
+ if (orderId && parsedEvent.orderId != (0, helper_js_1.convertBigIntToString)(orderId)) {
249
+ return;
250
+ }
251
+ if (consumer && parsedEvent.consumer != consumer) {
252
+ return;
253
+ }
254
+ callback(parsedEvent.orderId, parsedEvent.consumer, parsedEvent.amount, {
255
+ index: Number(event.blockNumber),
256
+ hash: event.blockHash,
257
+ });
258
+ });
259
+ subscription.on('error', (error) => {
260
+ logger.warn(error);
261
+ });
262
+ return () => subscription.unsubscribe();
263
+ }
264
+ /**
265
+ * Function for adding event listeners on order changed withdrawn event in orders contract
266
+ * @param callback - function for processing order changed withdrawn event
267
+ * @param orderId - order id
268
+ * @returns unsubscribe - unsubscribe function from event
269
+ */
270
+ static onChangedWithdrawn(callback, orderId) {
271
+ const contract = connectors_1.BlockchainEventsListener.getInstance().getContract();
272
+ const logger = this.logger.child({ method: 'onOrderChangeWithdrawn' });
273
+ const subscription = contract.events.OrderChangeWithdrawn();
274
+ subscription.on('data', (event) => {
275
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
276
+ if (orderId && parsedEvent.orderId != (0, helper_js_1.convertBigIntToString)(orderId)) {
277
+ return;
278
+ }
279
+ callback(parsedEvent.orderId, parsedEvent.consumer, parsedEvent.change, {
280
+ index: Number(event.blockNumber),
281
+ hash: event.blockHash,
282
+ });
283
+ });
284
+ subscription.on('error', (error) => {
285
+ logger.warn(error);
286
+ });
287
+ return () => subscription.unsubscribe();
288
+ }
289
+ /**
290
+ * Function for adding event listeners on order changed refunded event in orders contract
291
+ * @param callback - function for processing order changed refunded event
292
+ * @param tokenReceiver - token receiver address
293
+ * @param orderId - order id
294
+ * @returns unsubscribe - unsubscribe function from event
295
+ */
296
+ static onProfitWithdrawn(callback, orderId, tokenReceiver) {
297
+ const contract = connectors_1.BlockchainEventsListener.getInstance().getContract();
298
+ const logger = this.logger.child({ method: 'onOrderProfitWithdrawn' });
299
+ const subscription = contract.events.OrderProfitWithdrawn();
300
+ subscription.on('data', (event) => {
301
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
302
+ if (orderId && parsedEvent.orderId != (0, helper_js_1.convertBigIntToString)(orderId)) {
303
+ return;
304
+ }
305
+ if (tokenReceiver && parsedEvent.tokenReceiver != tokenReceiver) {
306
+ return;
307
+ }
308
+ callback(parsedEvent.orderId, parsedEvent.tokenReceiver, parsedEvent.profit, {
309
+ index: Number(event.blockNumber),
310
+ hash: event.blockHash,
311
+ });
312
+ });
313
+ subscription.on('error', (error) => {
314
+ logger.warn(error);
315
+ });
316
+ return () => subscription.unsubscribe();
317
+ }
318
+ /**
319
+ * Function for adding event listeners on order awaiting payment event in orders contract
320
+ * @param callback - function for processing order awaiting payment event
321
+ * @param consumer - order creator address
322
+ * @param orderId - order id
323
+ * @returns unsubscribe - unsubscribe function from event
324
+ */
325
+ static onAwaitingPaymentChanged(callback, consumer, orderId) {
326
+ const contract = connectors_1.BlockchainEventsListener.getInstance().getContract();
327
+ const logger = this.logger.child({ method: 'onOrderAwaitingPaymentChanged' });
328
+ const subscription = contract.events.OrderAwaitingPaymentChanged();
329
+ subscription.on('data', (event) => {
330
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
331
+ if (orderId && parsedEvent.orderId != (0, helper_js_1.convertBigIntToString)(orderId)) {
332
+ return;
333
+ }
334
+ if (consumer && parsedEvent.consumer != consumer) {
335
+ return;
336
+ }
337
+ callback(parsedEvent.orderId, parsedEvent.consumer, parsedEvent.awaitingPayment, {
338
+ index: Number(event.blockNumber),
339
+ hash: event.blockHash,
340
+ });
341
+ });
342
+ subscription.on('error', (error) => {
343
+ logger.warn(error);
344
+ });
345
+ return () => subscription.unsubscribe();
346
+ }
347
+ /**
348
+ * Function for adding event listeners on order encrypted result updated event in orders contract
349
+ * @param callback - function for processing order encrypted result updated event
350
+ * @param consumer - order creator address
351
+ * @param orderId - order id
352
+ * @returns unsubscribe - unsubscribe function from event
353
+ */
354
+ static onEncryptedResultUpdated(callback, consumer, orderId) {
355
+ const contract = connectors_1.BlockchainEventsListener.getInstance().getContract();
356
+ const logger = this.logger.child({ method: 'onOrderEncryptedResultUpdated' });
357
+ const subscription = contract.events.OrderEncryptedResultUpdated();
358
+ subscription.on('data', (event) => {
359
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
360
+ if (orderId && parsedEvent.orderId != (0, helper_js_1.convertBigIntToString)(orderId)) {
361
+ return;
362
+ }
363
+ if (consumer && parsedEvent.consumer != consumer) {
364
+ return;
365
+ }
366
+ callback(parsedEvent.orderId, parsedEvent.consumer, parsedEvent.encryptedResult, {
367
+ index: Number(event.blockNumber),
368
+ hash: event.blockHash,
369
+ });
370
+ });
371
+ subscription.on('error', (error) => {
372
+ logger.warn(error);
373
+ });
374
+ return () => subscription.unsubscribe();
375
+ }
376
+ /**
377
+ * Function for adding event listeners on OrderOptionsDepositSpentChanged event in orders contract
378
+ * @param callback - function for processing order encrypted result updated event
379
+ * @param consumer - order creator address
380
+ * @param orderId - order id
381
+ * @returns unsubscribe - unsubscribe function from event
382
+ */
383
+ static onOptionsDepositSpentChanged(callback, consumer, orderId) {
384
+ const contract = connectors_1.BlockchainEventsListener.getInstance().getContract();
385
+ const logger = this.logger.child({ method: 'onOrderOptionsDepositSpentChanged' });
386
+ const subscription = contract.events.OrderOptionsDepositSpentChanged();
387
+ subscription.on('data', (event) => {
388
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
389
+ if (orderId && parsedEvent.orderId != (0, helper_js_1.convertBigIntToString)(orderId)) {
390
+ return;
391
+ }
392
+ if (consumer && parsedEvent.consumer != consumer) {
393
+ return;
394
+ }
395
+ callback(parsedEvent.consumer, parsedEvent.orderId, parsedEvent.value, {
396
+ index: Number(event.blockNumber),
397
+ hash: event.blockHash,
398
+ });
399
+ });
400
+ subscription.on('error', (error) => {
401
+ logger.warn(error);
402
+ });
403
+ return () => subscription.unsubscribe();
404
+ }
405
+ /**
406
+ * Function for adding event listeners on onOrderProfitUnlocked event in orders contract
407
+ * @param callback - function for processing order encrypted result updated event
408
+ * @param tokenReceiver - tokenReceiver
409
+ * @param orderId - order id
410
+ * @returns unsubscribe - unsubscribe function from event
411
+ */
412
+ static onOProfitUnlocked(callback, tokenReceiver, orderId) {
413
+ const contract = connectors_1.BlockchainEventsListener.getInstance().getContract();
414
+ const logger = this.logger.child({ method: 'onOrderProfitUnlocked' });
415
+ const subscription = contract.events.OrderProfitUnlocked();
416
+ subscription.on('data', (event) => {
417
+ const parsedEvent = (0, helper_js_1.cleanWeb3Data)(event.returnValues);
418
+ if (orderId && parsedEvent.orderId != (0, helper_js_1.convertBigIntToString)(orderId)) {
419
+ return;
420
+ }
421
+ if (tokenReceiver && parsedEvent.tokenReceiver != tokenReceiver) {
422
+ return;
423
+ }
424
+ callback(parsedEvent.tokenReceiver, parsedEvent.orderId, parsedEvent.profit, {
425
+ index: Number(event.blockNumber),
426
+ hash: event.blockHash,
427
+ });
428
+ });
429
+ subscription.on('error', (error) => {
430
+ logger.warn(error);
431
+ });
432
+ return () => subscription.unsubscribe();
433
+ }
434
+ /**
435
+ * Function that calculates resource needed for order
436
+ * @param selectedUsage - structure that order.getSelectedUsage() method returns
437
+ * @returns calculated resources
438
+ */
439
+ static accumulatedSlotInfo(selectedUsage) {
440
+ const slotCount = selectedUsage.slotCount;
441
+ const { cpuCores, ram, diskUsage, gpuCores } = selectedUsage.slotInfo;
442
+ return {
443
+ cpuCores: cpuCores * slotCount,
444
+ ram: ram * slotCount,
445
+ diskUsage: diskUsage * slotCount,
446
+ gpuCores: gpuCores * slotCount,
447
+ };
448
+ }
449
+ /**
450
+ * Function that calculates total price for slot usage
451
+ * @param selectedUsage - structure that order.getSelectedUsage() method returns
452
+ * @returns slotUsage with totalPrices
453
+ */
454
+ static accumulatedSlotUsage(selectedUsage) {
455
+ const slotCount = selectedUsage.slotCount;
456
+ const slotUsage = selectedUsage.slotUsage;
457
+ const totalPrice = BigInt(slotUsage.price) * BigInt(slotCount);
458
+ return {
459
+ priceType: slotUsage.priceType,
460
+ price: totalPrice.toString(),
461
+ minTimeMinutes: slotUsage.minTimeMinutes,
462
+ maxTimeMinutes: slotUsage.maxTimeMinutes,
463
+ };
464
+ }
465
+ /**
466
+ * function that calculated requested options for order run
467
+ * @param selectedUsage - structure that order.getSelectedUsage() method returns
468
+ * @returns calculated options
469
+ */
470
+ static accumulatedOptionsInfo(selectedUsage) {
471
+ return selectedUsage.optionInfo.reduce((accumulatedInfo, optionInfo, optionInfoIndex) => {
472
+ const { bandwidth, externalPort, traffic } = optionInfo;
473
+ const optionCount = selectedUsage.optionsCount.at(optionInfoIndex) || 0;
474
+ accumulatedInfo.bandwidth += bandwidth * optionCount;
475
+ accumulatedInfo.externalPort += externalPort * optionCount;
476
+ accumulatedInfo.traffic += traffic * optionCount;
477
+ return accumulatedInfo;
478
+ }, {
479
+ bandwidth: 0,
480
+ externalPort: 0,
481
+ traffic: 0,
482
+ });
483
+ }
484
+ }
485
+ __decorate([
486
+ (0, helper_js_1.incrementMethodCall)(),
487
+ __metadata("design:type", Function),
488
+ __metadata("design:paramtypes", [Object, Object, String, Object, Object, Object]),
489
+ __metadata("design:returntype", Promise)
490
+ ], Orders, "createOrder", null);
491
+ __decorate([
492
+ (0, helper_js_1.incrementMethodCall)(),
493
+ __metadata("design:type", Function),
494
+ __metadata("design:paramtypes", [Object, Object, Object]),
495
+ __metadata("design:returntype", Promise)
496
+ ], Orders, "getByExternalId", null);
497
+ __decorate([
498
+ (0, helper_js_1.incrementMethodCall)(),
499
+ __metadata("design:type", Function),
500
+ __metadata("design:paramtypes", [Object, Object, Array, Array, String, Object, Object]),
501
+ __metadata("design:returntype", Promise)
502
+ ], Orders, "createWorkflow", null);
503
+ exports.default = Orders;
504
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3JkZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N0YXRpY01vZGVscy9PcmRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBQSxrREFBOEU7QUFDOUUsNkRBQXNDO0FBQ3RDLGtEQUs0QjtBQWU1QiwwREFBa0M7QUFDbEMsbUVBQTJDO0FBQzNDLDhDQUE4RTtBQUM5RSxzQ0FBa0M7QUFFbEMsc0VBQTJDO0FBRTNDLE1BQU0sTUFBTTtJQUNGLE1BQU0sQ0FBVSxNQUFNLEdBQUcsbUJBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUVwRSxNQUFNLENBQUMsTUFBTSxDQUFrQjtJQUUvQixNQUFNLEtBQUssT0FBTztRQUN2QixPQUFPLGtCQUFRLENBQUMsT0FBTyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU07UUFDeEIsTUFBTSxRQUFRLEdBQUcsZ0NBQW1CLENBQUMsV0FBVyxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDakUsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQztRQUNoQyxNQUFNLFNBQVMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFdkMsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLE1BQU0sUUFBUSxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzNFLEtBQUssSUFBSSxPQUFPLEdBQUcsU0FBUyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsT0FBTyxJQUFJLFdBQVcsRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDO1lBQ3pFLFNBQVMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDcEMsQ0FB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
@@ -1,4 +1,4 @@
1
- import { ProviderInfo, BlockInfo, TransactionOptions, TokenAmount } from '../types';
1
+ import { ProviderInfo, BlockInfo, TransactionOptions, TokenAmount } from '../types/index.js';
2
2
  declare class ProviderRegistry {
3
3
  private static readonly logger;
4
4
  static providers?: string[];