@superfluid-finance/sdk-core 0.1.1-dev.8caff13.0 → 0.1.1-dev.b8d3bbf.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. package/README.md +37 -11
  2. package/dist/index.umd.js +45852 -0
  3. package/dist/main/BatchCall.d.ts +1 -0
  4. package/dist/main/BatchCall.d.ts.map +1 -0
  5. package/dist/main/BatchCall.js +128 -0
  6. package/dist/main/BatchCall.js.map +1 -0
  7. package/dist/main/ConstantFlowAgreementV1.d.ts +7 -3
  8. package/dist/main/ConstantFlowAgreementV1.d.ts.map +1 -0
  9. package/dist/main/ConstantFlowAgreementV1.js +178 -0
  10. package/dist/main/ConstantFlowAgreementV1.js.map +1 -0
  11. package/dist/main/Framework.d.ts +7 -2
  12. package/dist/main/Framework.d.ts.map +1 -0
  13. package/dist/main/Framework.js +177 -0
  14. package/dist/main/Framework.js.map +1 -0
  15. package/dist/main/Host.d.ts +6 -1
  16. package/dist/main/Host.d.ts.map +1 -0
  17. package/dist/main/Host.js +31 -0
  18. package/dist/main/Host.js.map +1 -0
  19. package/dist/main/InstantDistributionAgreementV1.d.ts +18 -9
  20. package/dist/main/InstantDistributionAgreementV1.d.ts.map +1 -0
  21. package/dist/main/InstantDistributionAgreementV1.js +249 -0
  22. package/dist/main/InstantDistributionAgreementV1.js.map +1 -0
  23. package/dist/main/Operation.d.ts +1 -0
  24. package/dist/main/Operation.d.ts.map +1 -0
  25. package/dist/main/Operation.js +86 -0
  26. package/dist/main/Operation.js.map +1 -0
  27. package/dist/main/Query.d.ts +1 -0
  28. package/dist/main/Query.d.ts.map +1 -0
  29. package/dist/main/Query.js +310 -0
  30. package/dist/main/Query.js.map +1 -0
  31. package/dist/main/SFError.d.ts +1 -0
  32. package/dist/main/SFError.d.ts.map +1 -0
  33. package/dist/main/SFError.js +36 -0
  34. package/dist/main/SFError.js.map +1 -0
  35. package/dist/main/SuperToken.d.ts +34 -14
  36. package/dist/main/SuperToken.d.ts.map +1 -0
  37. package/dist/main/SuperToken.js +396 -0
  38. package/dist/main/SuperToken.js.map +1 -0
  39. package/dist/main/Token.d.ts +7 -3
  40. package/dist/main/Token.d.ts.map +1 -0
  41. package/dist/main/Token.js +166 -0
  42. package/dist/main/Token.js.map +1 -0
  43. package/dist/main/abi/ERC20WithTokenInfo.json +224 -0
  44. package/dist/main/abi/IConstantFlowAgreementV1.json +406 -0
  45. package/dist/main/abi/IInstantDistributionAgreementV1.json +947 -0
  46. package/dist/main/abi/IResolver.json +58 -0
  47. package/dist/main/abi/SuperToken.json +1549 -0
  48. package/dist/main/abi/Superfluid.json +1159 -0
  49. package/dist/main/abi/SuperfluidLoader.json +54 -0
  50. package/dist/main/constants.d.ts +2 -1
  51. package/dist/main/constants.d.ts.map +1 -0
  52. package/dist/main/constants.js +134 -0
  53. package/dist/main/constants.js.map +1 -0
  54. package/dist/main/events.d.ts +1 -0
  55. package/dist/main/events.d.ts.map +1 -0
  56. package/dist/main/events.js +3 -0
  57. package/dist/main/events.js.map +1 -0
  58. package/dist/main/frameworkHelpers.d.ts +1 -0
  59. package/dist/main/frameworkHelpers.d.ts.map +1 -0
  60. package/dist/main/frameworkHelpers.js +89 -0
  61. package/dist/main/frameworkHelpers.js.map +1 -0
  62. package/dist/main/index.d.ts +6 -0
  63. package/dist/main/index.d.ts.map +1 -0
  64. package/dist/main/index.js +38 -7597
  65. package/dist/main/index.js.map +1 -0
  66. package/dist/main/interfaces.d.ts +100 -10
  67. package/dist/main/interfaces.d.ts.map +1 -0
  68. package/dist/main/interfaces.js +3 -0
  69. package/dist/main/interfaces.js.map +1 -0
  70. package/dist/main/mapGetAllEventsQueryEvents.d.ts +1 -0
  71. package/dist/main/mapGetAllEventsQueryEvents.d.ts.map +1 -0
  72. package/dist/main/mapGetAllEventsQueryEvents.js +432 -0
  73. package/dist/main/mapGetAllEventsQueryEvents.js.map +1 -0
  74. package/dist/main/ordering.d.ts +1 -0
  75. package/dist/main/ordering.d.ts.map +1 -0
  76. package/dist/main/ordering.js +3 -0
  77. package/dist/main/ordering.js.map +1 -0
  78. package/dist/main/pagination.d.ts +1 -0
  79. package/dist/main/pagination.d.ts.map +1 -0
  80. package/dist/main/pagination.js +60 -0
  81. package/dist/main/pagination.js.map +1 -0
  82. package/dist/main/subgraph/SubgraphClient.d.ts +1 -0
  83. package/dist/main/subgraph/SubgraphClient.d.ts.map +1 -0
  84. package/dist/main/subgraph/SubgraphClient.js +51 -0
  85. package/dist/main/subgraph/SubgraphClient.js.map +1 -0
  86. package/dist/main/subgraph/queries/getAccountTokenSnapshots.generated.d.ts +1 -0
  87. package/dist/main/subgraph/queries/getAccountTokenSnapshots.generated.d.ts.map +1 -0
  88. package/dist/main/subgraph/queries/getAccountTokenSnapshots.generated.js +5 -0
  89. package/dist/main/subgraph/queries/getAccountTokenSnapshots.generated.js.map +1 -0
  90. package/dist/main/subgraph/queries/getAllEvents.generated.d.ts +1 -0
  91. package/dist/main/subgraph/queries/getAllEvents.generated.d.ts.map +1 -0
  92. package/dist/main/subgraph/queries/getAllEvents.generated.js +6 -0
  93. package/dist/main/subgraph/queries/getAllEvents.generated.js.map +1 -0
  94. package/dist/main/subgraph/queries/getIndexSubscriptions.generated.d.ts +1 -0
  95. package/dist/main/subgraph/queries/getIndexSubscriptions.generated.d.ts.map +1 -0
  96. package/dist/main/subgraph/queries/getIndexSubscriptions.generated.js +5 -0
  97. package/dist/main/subgraph/queries/getIndexSubscriptions.generated.js.map +1 -0
  98. package/dist/main/subgraph/queries/getIndexes.generated.d.ts +1 -0
  99. package/dist/main/subgraph/queries/getIndexes.generated.d.ts.map +1 -0
  100. package/dist/main/subgraph/queries/getIndexes.generated.js +5 -0
  101. package/dist/main/subgraph/queries/getIndexes.generated.js.map +1 -0
  102. package/dist/main/subgraph/queries/getStreams.generated.d.ts +1 -0
  103. package/dist/main/subgraph/queries/getStreams.generated.d.ts.map +1 -0
  104. package/dist/main/subgraph/queries/getStreams.generated.js +5 -0
  105. package/dist/main/subgraph/queries/getStreams.generated.js.map +1 -0
  106. package/dist/main/subgraph/queries/getTokens.generated.d.ts +1 -0
  107. package/dist/main/subgraph/queries/getTokens.generated.d.ts.map +1 -0
  108. package/dist/main/subgraph/queries/getTokens.generated.js +5 -0
  109. package/dist/main/subgraph/queries/getTokens.generated.js.map +1 -0
  110. package/dist/main/subgraph/schema.generated.d.ts +1 -0
  111. package/dist/main/subgraph/schema.generated.d.ts.map +1 -0
  112. package/dist/main/subgraph/schema.generated.js +3 -0
  113. package/dist/main/subgraph/schema.generated.js.map +1 -0
  114. package/dist/main/typechain/ERC20WithTokenInfo.d.ts +1 -0
  115. package/dist/main/typechain/ERC20WithTokenInfo.d.ts.map +1 -0
  116. package/dist/main/typechain/ERC20WithTokenInfo.js +3 -0
  117. package/dist/main/typechain/ERC20WithTokenInfo.js.map +1 -0
  118. package/dist/main/typechain/IConstantFlowAgreementV1.d.ts +1 -0
  119. package/dist/main/typechain/IConstantFlowAgreementV1.d.ts.map +1 -0
  120. package/dist/main/typechain/IConstantFlowAgreementV1.js +3 -0
  121. package/dist/main/typechain/IConstantFlowAgreementV1.js.map +1 -0
  122. package/dist/main/typechain/IInstantDistributionAgreementV1.d.ts +1 -0
  123. package/dist/main/typechain/IInstantDistributionAgreementV1.d.ts.map +1 -0
  124. package/dist/main/typechain/IInstantDistributionAgreementV1.js +3 -0
  125. package/dist/main/typechain/IInstantDistributionAgreementV1.js.map +1 -0
  126. package/dist/main/typechain/IResolver.d.ts +7 -6
  127. package/dist/main/typechain/IResolver.d.ts.map +1 -0
  128. package/dist/main/typechain/IResolver.js +3 -0
  129. package/dist/main/typechain/IResolver.js.map +1 -0
  130. package/dist/main/typechain/SuperToken.d.ts +1 -0
  131. package/dist/main/typechain/SuperToken.d.ts.map +1 -0
  132. package/dist/main/typechain/SuperToken.js +3 -0
  133. package/dist/main/typechain/SuperToken.js.map +1 -0
  134. package/dist/main/typechain/Superfluid.d.ts +1 -0
  135. package/dist/main/typechain/Superfluid.d.ts.map +1 -0
  136. package/dist/main/typechain/Superfluid.js +3 -0
  137. package/dist/main/typechain/Superfluid.js.map +1 -0
  138. package/dist/main/typechain/SuperfluidLoader.d.ts +1 -0
  139. package/dist/main/typechain/SuperfluidLoader.d.ts.map +1 -0
  140. package/dist/main/typechain/SuperfluidLoader.js +3 -0
  141. package/dist/main/typechain/SuperfluidLoader.js.map +1 -0
  142. package/dist/main/typechain/TestToken.d.ts +1 -0
  143. package/dist/main/typechain/TestToken.d.ts.map +1 -0
  144. package/dist/main/typechain/TestToken.js +3 -0
  145. package/dist/main/typechain/TestToken.js.map +1 -0
  146. package/dist/main/typechain/common.d.ts +1 -0
  147. package/dist/main/typechain/common.d.ts.map +1 -0
  148. package/dist/main/typechain/common.js +3 -0
  149. package/dist/main/typechain/common.js.map +1 -0
  150. package/dist/main/typechain/factories/ERC20WithTokenInfo__factory.d.ts +1 -0
  151. package/dist/main/typechain/factories/ERC20WithTokenInfo__factory.d.ts.map +1 -0
  152. package/dist/main/typechain/factories/ERC20WithTokenInfo__factory.js +242 -0
  153. package/dist/main/typechain/factories/ERC20WithTokenInfo__factory.js.map +1 -0
  154. package/dist/main/typechain/factories/IConstantFlowAgreementV1__factory.d.ts +1 -0
  155. package/dist/main/typechain/factories/IConstantFlowAgreementV1__factory.d.ts.map +1 -0
  156. package/dist/main/typechain/factories/IConstantFlowAgreementV1__factory.js +424 -0
  157. package/dist/main/typechain/factories/IConstantFlowAgreementV1__factory.js.map +1 -0
  158. package/dist/main/typechain/factories/IInstantDistributionAgreementV1__factory.d.ts +1 -0
  159. package/dist/main/typechain/factories/IInstantDistributionAgreementV1__factory.d.ts.map +1 -0
  160. package/dist/main/typechain/factories/IInstantDistributionAgreementV1__factory.js +965 -0
  161. package/dist/main/typechain/factories/IInstantDistributionAgreementV1__factory.js.map +1 -0
  162. package/dist/main/typechain/factories/IResolver__factory.d.ts +1 -0
  163. package/dist/main/typechain/factories/IResolver__factory.d.ts.map +1 -0
  164. package/dist/main/typechain/factories/IResolver__factory.js +76 -0
  165. package/dist/main/typechain/factories/IResolver__factory.js.map +1 -0
  166. package/dist/main/typechain/factories/SuperToken__factory.d.ts +1 -0
  167. package/dist/main/typechain/factories/SuperToken__factory.d.ts.map +1 -0
  168. package/dist/main/typechain/factories/SuperToken__factory.js +1567 -0
  169. package/dist/main/typechain/factories/SuperToken__factory.js.map +1 -0
  170. package/dist/main/typechain/factories/SuperfluidLoader__factory.d.ts +1 -0
  171. package/dist/main/typechain/factories/SuperfluidLoader__factory.d.ts.map +1 -0
  172. package/dist/main/typechain/factories/SuperfluidLoader__factory.js +72 -0
  173. package/dist/main/typechain/factories/SuperfluidLoader__factory.js.map +1 -0
  174. package/dist/main/typechain/factories/Superfluid__factory.d.ts +1 -0
  175. package/dist/main/typechain/factories/Superfluid__factory.d.ts.map +1 -0
  176. package/dist/main/typechain/factories/Superfluid__factory.js +1177 -0
  177. package/dist/main/typechain/factories/Superfluid__factory.js.map +1 -0
  178. package/dist/main/typechain/factories/TestToken__factory.d.ts +1 -0
  179. package/dist/main/typechain/factories/TestToken__factory.d.ts.map +1 -0
  180. package/dist/main/typechain/factories/TestToken__factory.js +348 -0
  181. package/dist/main/typechain/factories/TestToken__factory.js.map +1 -0
  182. package/dist/main/typechain/index.d.ts +1 -0
  183. package/dist/main/typechain/index.d.ts.map +1 -0
  184. package/dist/main/typechain/index.js +20 -0
  185. package/dist/main/typechain/index.js.map +1 -0
  186. package/dist/main/types.d.ts +1 -0
  187. package/dist/main/types.d.ts.map +1 -0
  188. package/dist/main/types.js +3 -0
  189. package/dist/main/types.js.map +1 -0
  190. package/dist/main/utils.d.ts +6 -0
  191. package/dist/main/utils.d.ts.map +1 -0
  192. package/dist/main/utils.js +178 -0
  193. package/dist/main/utils.js.map +1 -0
  194. package/dist/main/validation.d.ts +1 -0
  195. package/dist/main/validation.d.ts.map +1 -0
  196. package/dist/main/validation.js +98 -0
  197. package/dist/main/validation.js.map +1 -0
  198. package/dist/module/BatchCall.d.ts +1 -0
  199. package/dist/module/BatchCall.d.ts.map +1 -0
  200. package/dist/module/BatchCall.js +122 -0
  201. package/dist/module/BatchCall.js.map +1 -0
  202. package/dist/module/ConstantFlowAgreementV1.d.ts +7 -3
  203. package/dist/module/ConstantFlowAgreementV1.d.ts.map +1 -0
  204. package/dist/module/ConstantFlowAgreementV1.js +172 -0
  205. package/dist/module/ConstantFlowAgreementV1.js.map +1 -0
  206. package/dist/module/Framework.d.ts +7 -2
  207. package/dist/module/Framework.d.ts.map +1 -0
  208. package/dist/module/Framework.js +171 -0
  209. package/dist/module/Framework.js.map +1 -0
  210. package/dist/module/Host.d.ts +6 -1
  211. package/dist/module/Host.d.ts.map +1 -0
  212. package/dist/module/Host.js +25 -0
  213. package/dist/module/Host.js.map +1 -0
  214. package/dist/module/InstantDistributionAgreementV1.d.ts +18 -9
  215. package/dist/module/InstantDistributionAgreementV1.d.ts.map +1 -0
  216. package/dist/module/InstantDistributionAgreementV1.js +243 -0
  217. package/dist/module/InstantDistributionAgreementV1.js.map +1 -0
  218. package/dist/module/Operation.d.ts +1 -0
  219. package/dist/module/Operation.d.ts.map +1 -0
  220. package/dist/module/Operation.js +80 -0
  221. package/dist/module/Operation.js.map +1 -0
  222. package/dist/module/Query.d.ts +1 -0
  223. package/dist/module/Query.d.ts.map +1 -0
  224. package/dist/module/Query.js +304 -0
  225. package/dist/module/Query.js.map +1 -0
  226. package/dist/module/SFError.d.ts +1 -0
  227. package/dist/module/SFError.d.ts.map +1 -0
  228. package/dist/module/SFError.js +33 -0
  229. package/dist/module/SFError.js.map +1 -0
  230. package/dist/module/SuperToken.d.ts +34 -14
  231. package/dist/module/SuperToken.d.ts.map +1 -0
  232. package/dist/module/SuperToken.js +390 -0
  233. package/dist/module/SuperToken.js.map +1 -0
  234. package/dist/module/Token.d.ts +7 -3
  235. package/dist/module/Token.d.ts.map +1 -0
  236. package/dist/module/Token.js +160 -0
  237. package/dist/module/Token.js.map +1 -0
  238. package/dist/module/abi/ERC20WithTokenInfo.json +224 -0
  239. package/dist/module/abi/IConstantFlowAgreementV1.json +406 -0
  240. package/dist/module/abi/IInstantDistributionAgreementV1.json +947 -0
  241. package/dist/module/abi/IResolver.json +58 -0
  242. package/dist/module/abi/SuperToken.json +1549 -0
  243. package/dist/module/abi/Superfluid.json +1159 -0
  244. package/dist/module/abi/SuperfluidLoader.json +54 -0
  245. package/dist/module/constants.d.ts +2 -1
  246. package/dist/module/constants.d.ts.map +1 -0
  247. package/dist/module/constants.js +131 -0
  248. package/dist/module/constants.js.map +1 -0
  249. package/dist/module/events.d.ts +1 -0
  250. package/dist/module/events.d.ts.map +1 -0
  251. package/dist/module/events.js +2 -0
  252. package/dist/module/events.js.map +1 -0
  253. package/dist/module/frameworkHelpers.d.ts +1 -0
  254. package/dist/module/frameworkHelpers.d.ts.map +1 -0
  255. package/dist/module/frameworkHelpers.js +80 -0
  256. package/dist/module/frameworkHelpers.js.map +1 -0
  257. package/dist/module/index.d.ts +6 -0
  258. package/dist/module/index.d.ts.map +1 -0
  259. package/dist/module/index.js +25 -7561
  260. package/dist/module/index.js.map +1 -0
  261. package/dist/module/interfaces.d.ts +100 -10
  262. package/dist/module/interfaces.d.ts.map +1 -0
  263. package/dist/module/interfaces.js +2 -0
  264. package/dist/module/interfaces.js.map +1 -0
  265. package/dist/module/mapGetAllEventsQueryEvents.d.ts +1 -0
  266. package/dist/module/mapGetAllEventsQueryEvents.d.ts.map +1 -0
  267. package/dist/module/mapGetAllEventsQueryEvents.js +428 -0
  268. package/dist/module/mapGetAllEventsQueryEvents.js.map +1 -0
  269. package/dist/module/ordering.d.ts +1 -0
  270. package/dist/module/ordering.d.ts.map +1 -0
  271. package/dist/module/ordering.js +2 -0
  272. package/dist/module/ordering.js.map +1 -0
  273. package/dist/module/pagination.d.ts +1 -0
  274. package/dist/module/pagination.d.ts.map +1 -0
  275. package/dist/module/pagination.js +51 -0
  276. package/dist/module/pagination.js.map +1 -0
  277. package/dist/module/subgraph/SubgraphClient.d.ts +1 -0
  278. package/dist/module/subgraph/SubgraphClient.d.ts.map +1 -0
  279. package/dist/module/subgraph/SubgraphClient.js +44 -0
  280. package/dist/module/subgraph/SubgraphClient.js.map +1 -0
  281. package/dist/module/subgraph/queries/getAccountTokenSnapshots.generated.d.ts +1 -0
  282. package/dist/module/subgraph/queries/getAccountTokenSnapshots.generated.d.ts.map +1 -0
  283. package/dist/module/subgraph/queries/getAccountTokenSnapshots.generated.js +2 -0
  284. package/dist/module/subgraph/queries/getAccountTokenSnapshots.generated.js.map +1 -0
  285. package/dist/module/subgraph/queries/getAllEvents.generated.d.ts +1 -0
  286. package/dist/module/subgraph/queries/getAllEvents.generated.d.ts.map +1 -0
  287. package/dist/module/subgraph/queries/getAllEvents.generated.js +3 -0
  288. package/dist/module/subgraph/queries/getAllEvents.generated.js.map +1 -0
  289. package/dist/module/subgraph/queries/getIndexSubscriptions.generated.d.ts +1 -0
  290. package/dist/module/subgraph/queries/getIndexSubscriptions.generated.d.ts.map +1 -0
  291. package/dist/module/subgraph/queries/getIndexSubscriptions.generated.js +2 -0
  292. package/dist/module/subgraph/queries/getIndexSubscriptions.generated.js.map +1 -0
  293. package/dist/module/subgraph/queries/getIndexes.generated.d.ts +1 -0
  294. package/dist/module/subgraph/queries/getIndexes.generated.d.ts.map +1 -0
  295. package/dist/module/subgraph/queries/getIndexes.generated.js +2 -0
  296. package/dist/module/subgraph/queries/getIndexes.generated.js.map +1 -0
  297. package/dist/module/subgraph/queries/getStreams.generated.d.ts +1 -0
  298. package/dist/module/subgraph/queries/getStreams.generated.d.ts.map +1 -0
  299. package/dist/module/subgraph/queries/getStreams.generated.js +2 -0
  300. package/dist/module/subgraph/queries/getStreams.generated.js.map +1 -0
  301. package/dist/module/subgraph/queries/getTokens.generated.d.ts +1 -0
  302. package/dist/module/subgraph/queries/getTokens.generated.d.ts.map +1 -0
  303. package/dist/module/subgraph/queries/getTokens.generated.js +2 -0
  304. package/dist/module/subgraph/queries/getTokens.generated.js.map +1 -0
  305. package/dist/module/subgraph/schema.generated.d.ts +1 -0
  306. package/dist/module/subgraph/schema.generated.d.ts.map +1 -0
  307. package/dist/module/subgraph/schema.generated.js +2 -0
  308. package/dist/module/subgraph/schema.generated.js.map +1 -0
  309. package/dist/module/typechain/ERC20WithTokenInfo.d.ts +1 -0
  310. package/dist/module/typechain/ERC20WithTokenInfo.d.ts.map +1 -0
  311. package/dist/module/typechain/ERC20WithTokenInfo.js +2 -0
  312. package/dist/module/typechain/ERC20WithTokenInfo.js.map +1 -0
  313. package/dist/module/typechain/IConstantFlowAgreementV1.d.ts +1 -0
  314. package/dist/module/typechain/IConstantFlowAgreementV1.d.ts.map +1 -0
  315. package/dist/module/typechain/IConstantFlowAgreementV1.js +2 -0
  316. package/dist/module/typechain/IConstantFlowAgreementV1.js.map +1 -0
  317. package/dist/module/typechain/IInstantDistributionAgreementV1.d.ts +1 -0
  318. package/dist/module/typechain/IInstantDistributionAgreementV1.d.ts.map +1 -0
  319. package/dist/module/typechain/IInstantDistributionAgreementV1.js +2 -0
  320. package/dist/module/typechain/IInstantDistributionAgreementV1.js.map +1 -0
  321. package/dist/module/typechain/IResolver.d.ts +7 -6
  322. package/dist/module/typechain/IResolver.d.ts.map +1 -0
  323. package/dist/module/typechain/IResolver.js +2 -0
  324. package/dist/module/typechain/IResolver.js.map +1 -0
  325. package/dist/module/typechain/SuperToken.d.ts +1 -0
  326. package/dist/module/typechain/SuperToken.d.ts.map +1 -0
  327. package/dist/module/typechain/SuperToken.js +2 -0
  328. package/dist/module/typechain/SuperToken.js.map +1 -0
  329. package/dist/module/typechain/Superfluid.d.ts +1 -0
  330. package/dist/module/typechain/Superfluid.d.ts.map +1 -0
  331. package/dist/module/typechain/Superfluid.js +2 -0
  332. package/dist/module/typechain/Superfluid.js.map +1 -0
  333. package/dist/module/typechain/SuperfluidLoader.d.ts +1 -0
  334. package/dist/module/typechain/SuperfluidLoader.d.ts.map +1 -0
  335. package/dist/module/typechain/SuperfluidLoader.js +2 -0
  336. package/dist/module/typechain/SuperfluidLoader.js.map +1 -0
  337. package/dist/module/typechain/TestToken.d.ts +1 -0
  338. package/dist/module/typechain/TestToken.d.ts.map +1 -0
  339. package/dist/module/typechain/TestToken.js +2 -0
  340. package/dist/module/typechain/TestToken.js.map +1 -0
  341. package/dist/module/typechain/common.d.ts +1 -0
  342. package/dist/module/typechain/common.d.ts.map +1 -0
  343. package/dist/module/typechain/common.js +2 -0
  344. package/dist/module/typechain/common.js.map +1 -0
  345. package/dist/module/typechain/factories/ERC20WithTokenInfo__factory.d.ts +1 -0
  346. package/dist/module/typechain/factories/ERC20WithTokenInfo__factory.d.ts.map +1 -0
  347. package/dist/module/typechain/factories/ERC20WithTokenInfo__factory.js +238 -0
  348. package/dist/module/typechain/factories/ERC20WithTokenInfo__factory.js.map +1 -0
  349. package/dist/module/typechain/factories/IConstantFlowAgreementV1__factory.d.ts +1 -0
  350. package/dist/module/typechain/factories/IConstantFlowAgreementV1__factory.d.ts.map +1 -0
  351. package/dist/module/typechain/factories/IConstantFlowAgreementV1__factory.js +420 -0
  352. package/dist/module/typechain/factories/IConstantFlowAgreementV1__factory.js.map +1 -0
  353. package/dist/module/typechain/factories/IInstantDistributionAgreementV1__factory.d.ts +1 -0
  354. package/dist/module/typechain/factories/IInstantDistributionAgreementV1__factory.d.ts.map +1 -0
  355. package/dist/module/typechain/factories/IInstantDistributionAgreementV1__factory.js +961 -0
  356. package/dist/module/typechain/factories/IInstantDistributionAgreementV1__factory.js.map +1 -0
  357. package/dist/module/typechain/factories/IResolver__factory.d.ts +1 -0
  358. package/dist/module/typechain/factories/IResolver__factory.d.ts.map +1 -0
  359. package/dist/module/typechain/factories/IResolver__factory.js +72 -0
  360. package/dist/module/typechain/factories/IResolver__factory.js.map +1 -0
  361. package/dist/module/typechain/factories/SuperToken__factory.d.ts +1 -0
  362. package/dist/module/typechain/factories/SuperToken__factory.d.ts.map +1 -0
  363. package/dist/module/typechain/factories/SuperToken__factory.js +1563 -0
  364. package/dist/module/typechain/factories/SuperToken__factory.js.map +1 -0
  365. package/dist/module/typechain/factories/SuperfluidLoader__factory.d.ts +1 -0
  366. package/dist/module/typechain/factories/SuperfluidLoader__factory.d.ts.map +1 -0
  367. package/dist/module/typechain/factories/SuperfluidLoader__factory.js +68 -0
  368. package/dist/module/typechain/factories/SuperfluidLoader__factory.js.map +1 -0
  369. package/dist/module/typechain/factories/Superfluid__factory.d.ts +1 -0
  370. package/dist/module/typechain/factories/Superfluid__factory.d.ts.map +1 -0
  371. package/dist/module/typechain/factories/Superfluid__factory.js +1173 -0
  372. package/dist/module/typechain/factories/Superfluid__factory.js.map +1 -0
  373. package/dist/module/typechain/factories/TestToken__factory.d.ts +1 -0
  374. package/dist/module/typechain/factories/TestToken__factory.d.ts.map +1 -0
  375. package/dist/module/typechain/factories/TestToken__factory.js +344 -0
  376. package/dist/module/typechain/factories/TestToken__factory.js.map +1 -0
  377. package/dist/module/typechain/index.d.ts +1 -0
  378. package/dist/module/typechain/index.d.ts.map +1 -0
  379. package/dist/{umd/typechain/index.d.ts → module/typechain/index.js} +1 -8
  380. package/dist/module/typechain/index.js.map +1 -0
  381. package/dist/module/types.d.ts +1 -0
  382. package/dist/module/types.d.ts.map +1 -0
  383. package/dist/module/types.js +2 -0
  384. package/dist/module/types.js.map +1 -0
  385. package/dist/module/utils.d.ts +6 -0
  386. package/dist/module/utils.d.ts.map +1 -0
  387. package/dist/module/utils.js +153 -0
  388. package/dist/module/utils.js.map +1 -0
  389. package/dist/module/validation.d.ts +1 -0
  390. package/dist/module/validation.d.ts.map +1 -0
  391. package/dist/module/validation.js +92 -0
  392. package/dist/module/validation.js.map +1 -0
  393. package/package.json +29 -15
  394. package/dist/umd/BatchCall.d.ts +0 -53
  395. package/dist/umd/ConstantFlowAgreementV1.d.ts +0 -74
  396. package/dist/umd/Framework.d.ts +0 -75
  397. package/dist/umd/Host.d.ts +0 -18
  398. package/dist/umd/InstantDistributionAgreementV1.d.ts +0 -107
  399. package/dist/umd/Operation.d.ts +0 -38
  400. package/dist/umd/Query.d.ts +0 -31
  401. package/dist/umd/SFError.d.ts +0 -13
  402. package/dist/umd/SuperToken.d.ts +0 -191
  403. package/dist/umd/Token.d.ts +0 -76
  404. package/dist/umd/constants.d.ts +0 -17
  405. package/dist/umd/events.d.ts +0 -255
  406. package/dist/umd/frameworkHelpers.d.ts +0 -20
  407. package/dist/umd/index.d.ts +0 -19
  408. package/dist/umd/index.js +0 -7599
  409. package/dist/umd/interfaces.d.ts +0 -304
  410. package/dist/umd/mapGetAllEventsQueryEvents.d.ts +0 -3
  411. package/dist/umd/ordering.d.ts +0 -13
  412. package/dist/umd/pagination.d.ts +0 -65
  413. package/dist/umd/subgraph/SubgraphClient.d.ts +0 -16
  414. package/dist/umd/subgraph/queries/getAccountTokenSnapshots.generated.d.ts +0 -45
  415. package/dist/umd/subgraph/queries/getAllEvents.generated.d.ts +0 -651
  416. package/dist/umd/subgraph/queries/getIndexSubscriptions.generated.d.ts +0 -46
  417. package/dist/umd/subgraph/queries/getIndexes.generated.d.ts +0 -44
  418. package/dist/umd/subgraph/queries/getStreams.generated.d.ts +0 -58
  419. package/dist/umd/subgraph/queries/getTokens.generated.d.ts +0 -27
  420. package/dist/umd/subgraph/schema.generated.d.ts +0 -6478
  421. package/dist/umd/typechain/ERC20WithTokenInfo.d.ts +0 -159
  422. package/dist/umd/typechain/IConstantFlowAgreementV1.d.ts +0 -305
  423. package/dist/umd/typechain/IInstantDistributionAgreementV1.d.ts +0 -585
  424. package/dist/umd/typechain/IResolver.d.ts +0 -71
  425. package/dist/umd/typechain/SuperToken.d.ts +0 -1011
  426. package/dist/umd/typechain/Superfluid.d.ts +0 -780
  427. package/dist/umd/typechain/SuperfluidLoader.d.ts +0 -55
  428. package/dist/umd/typechain/TestToken.d.ts +0 -215
  429. package/dist/umd/typechain/common.d.ts +0 -21
  430. package/dist/umd/typechain/factories/ERC20WithTokenInfo__factory.d.ts +0 -35
  431. package/dist/umd/typechain/factories/IConstantFlowAgreementV1__factory.d.ts +0 -35
  432. package/dist/umd/typechain/factories/IInstantDistributionAgreementV1__factory.d.ts +0 -35
  433. package/dist/umd/typechain/factories/IResolver__factory.d.ts +0 -35
  434. package/dist/umd/typechain/factories/SuperToken__factory.d.ts +0 -46
  435. package/dist/umd/typechain/factories/SuperfluidLoader__factory.d.ts +0 -37
  436. package/dist/umd/typechain/factories/Superfluid__factory.d.ts +0 -82
  437. package/dist/umd/typechain/factories/TestToken__factory.d.ts +0 -46
  438. package/dist/umd/types.d.ts +0 -2
  439. package/dist/umd/utils.d.ts +0 -106
  440. package/dist/umd/validation.d.ts +0 -8
@@ -51,3 +51,4 @@ export default class BatchCall {
51
51
  execForward: (signer: ethers.Signer) => Promise<ethers.ContractTransaction>;
52
52
  }
53
53
  export {};
54
+ //# sourceMappingURL=BatchCall.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BatchCall.d.ts","sourceRoot":"","sources":["../../src/BatchCall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,SAA4B,MAAM,aAAa,CAAC;AAGvD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,UAAU,iBAAiB;IACvB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,aAAa,CAAC,SAAS,CAAC,CAAC;CACxC;AAED,UAAU,eAAe;IACrB,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB;AAWD;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,IAAI,EAAE,IAAI,CAAC;gBAEC,OAAO,EAAE,iBAAiB;IAKtC;;;;OAIG;IACH,4BAA4B,aAAc,MAAM,KAAG,OAAO,KAAK,CAAC,MAAM,CACN;IAEhE;;;;;OAKG;IACH,kBAAkB,cACH,SAAS,SACb,MAAM,KACd,QAAQ,eAAe,CAAC,CA8CzB;IAEF;;;OAGG;IACH,IAAI,+BAA+B,IAAI,OAAO,CAAC,eAAe,CAAC,EAAE,CAIhE;IAED;;;;OAIG;IACH,IAAI,WACQ,OAAO,MAAM,KACtB,QAAQ,OAAO,mBAAmB,CAAC,CAepC;IAKF;;;;OAIG;IACH,WAAW,WACC,OAAO,MAAM,KACtB,QAAQ,OAAO,mBAAmB,CAAC,CAepC;CACL"}
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const ethers_1 = require("ethers");
7
+ const Host_1 = __importDefault(require("./Host"));
8
+ const SFError_1 = __importDefault(require("./SFError"));
9
+ const Superfluid_json_1 = __importDefault(require("./abi/Superfluid.json"));
10
+ const utils_1 = require("./utils");
11
+ const operationTypeStringToTypeMap = new Map([
12
+ ["ERC20_APPROVE", 1],
13
+ ["ERC20_TRANSFER_FROM", 2],
14
+ ["SUPERTOKEN_UPGRADE", 101],
15
+ ["SUPERTOKEN_DOWNGRADE", 102],
16
+ ["SUPERFLUID_CALL_AGREEMENT", 201],
17
+ ["CALL_APP_ACTION", 202],
18
+ ]);
19
+ /**
20
+ * @dev BatchCall Helper Class
21
+ * @description A helper class to create `BatchCall` objects which can be executed.
22
+ */
23
+ class BatchCall {
24
+ constructor(options) {
25
+ /**
26
+ * @dev Gets the call agreement function arguments.
27
+ * @param callData callData of the function
28
+ * @returns {ethers.utils.Result} call agreement function arguments
29
+ */
30
+ this.getCallAgreementFunctionArgs = (callData) => (0, utils_1.getTransactionDescription)(Superfluid_json_1.default.abi, callData).args;
31
+ /**
32
+ * @dev Given an `Operation` object, gets the `OperationStruct` object.
33
+ * @param operation an `Operation` object
34
+ * @param index the index of the `Operation` in the batchCall
35
+ * @returns {Promise<OperationStruct>} OperationStruct object for batchCall
36
+ */
37
+ this.getOperationStruct = async (operation, index) => {
38
+ const operationType = operationTypeStringToTypeMap.get(operation.type);
39
+ const populatedTransaction = await operation.populateTransactionPromise;
40
+ if (!operationType) {
41
+ throw new SFError_1.default({
42
+ type: "UNSUPPORTED_OPERATION",
43
+ customMessage: "The operation at index " + index + " is unsupported.",
44
+ });
45
+ }
46
+ /* istanbul ignore next */
47
+ if (!populatedTransaction.to || !populatedTransaction.data) {
48
+ throw new SFError_1.default({
49
+ type: "MISSING_TRANSACTION_PROPERTIES",
50
+ customMessage: "The transaction is missing the to or data property.",
51
+ });
52
+ }
53
+ // Handles the Superfluid Call Agreement
54
+ // The only operation which has a target that is not the
55
+ // same as the to property of the transaction.
56
+ if (operation.type === "SUPERFLUID_CALL_AGREEMENT") {
57
+ const encoder = ethers_1.ethers.utils.defaultAbiCoder;
58
+ const functionArgs = this.getCallAgreementFunctionArgs(populatedTransaction.data);
59
+ const data = encoder.encode(["bytes", "bytes"], [functionArgs["callData"], functionArgs["userData"]]);
60
+ return {
61
+ operationType,
62
+ target: functionArgs["agreementClass"],
63
+ data,
64
+ };
65
+ }
66
+ // Handles other cases which are not call agreeement operation
67
+ return {
68
+ operationType,
69
+ target: populatedTransaction.to,
70
+ data: (0, utils_1.removeSigHashFromCallData)(populatedTransaction.data),
71
+ };
72
+ };
73
+ /**
74
+ * @dev Executes a batch call given the operations on this class.
75
+ * @param signer the signer of the transaction
76
+ * @returns {Promise<ethers.ContractTransaction>} ContractTransaction object
77
+ */
78
+ this.exec = async (signer) => {
79
+ try {
80
+ const operationStructArray = await Promise.all(this.getOperationStructArrayPromises);
81
+ return await this.host.hostContract
82
+ .connect(signer)
83
+ .batchCall(operationStructArray);
84
+ }
85
+ catch (err) {
86
+ throw new SFError_1.default({
87
+ type: "BATCH_CALL_ERROR",
88
+ customMessage: "There was an error executing your batch call:",
89
+ errorObject: err,
90
+ });
91
+ }
92
+ };
93
+ /* istanbul ignore next */
94
+ // TODO: user signs the transaction they'd like to execute and gives
95
+ // this data to the trusted forwarder to sign
96
+ /**
97
+ * @dev Executes a forward batch call given the operations on this class.
98
+ * @param signer the signer of the transaction
99
+ * @returns {Promise<ethers.ContractTransaction>} ContractTransaction object
100
+ */
101
+ this.execForward = async (signer) => {
102
+ try {
103
+ const operationStructArray = await Promise.all(this.getOperationStructArrayPromises);
104
+ return await this.host.hostContract
105
+ .connect(signer)
106
+ .forwardBatchCall(operationStructArray);
107
+ }
108
+ catch (err) {
109
+ throw new SFError_1.default({
110
+ type: "BATCH_CALL_ERROR",
111
+ customMessage: "There was an error executing your batch call:",
112
+ errorObject: err,
113
+ });
114
+ }
115
+ };
116
+ this.options = options;
117
+ this.host = new Host_1.default(options.config.hostAddress);
118
+ }
119
+ /**
120
+ * @dev Gets an array of `OperationStruct` objects to be passed to batchCall.
121
+ * @returns {Promise<OperationStruct>[]} array of operation struct promises
122
+ */
123
+ get getOperationStructArrayPromises() {
124
+ return this.options.operations.map((x, i) => this.getOperationStruct(x, i));
125
+ }
126
+ }
127
+ exports.default = BatchCall;
128
+ //# sourceMappingURL=BatchCall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BatchCall.js","sourceRoot":"","sources":["../../src/BatchCall.ts"],"names":[],"mappings":"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"}
@@ -41,27 +41,30 @@ export default class ConstantFlowAgreementV1 {
41
41
  * @param receiver The receiver of the flow.
42
42
  * @param superToken The token to be flowed.
43
43
  * @param userData Extra user data provided.
44
+ * @param overrides ethers overrides object for more control over the transaction sent.
44
45
  * @returns {Operation} An instance of Operation which can be executed or batched.
45
46
  */
46
- createFlow: ({ flowRate, receiver, superToken, userData, }: ICreateFlowParams) => Operation;
47
+ createFlow: ({ flowRate, receiver, superToken, userData, overrides, }: ICreateFlowParams) => Operation;
47
48
  /**
48
49
  * @dev Update a flow.
49
50
  * @param flowRate The specified flow rate.
50
51
  * @param receiver The receiver of the flow.
51
52
  * @param superToken The token to be flowed.
52
53
  * @param userData Extra user data provided.
54
+ * @param overrides ethers overrides object for more control over the transaction sent.
53
55
  * @returns {Operation} An instance of Operation which can be executed or batched.
54
56
  */
55
- updateFlow: ({ flowRate, receiver, superToken, userData, }: IUpdateFlowParams) => Operation;
57
+ updateFlow: ({ flowRate, receiver, superToken, userData, overrides, }: IUpdateFlowParams) => Operation;
56
58
  /**
57
59
  * @dev Delete a flow.
58
60
  * @param superToken The token to be flowed.
59
61
  * @param sender The sender of the flow.
60
62
  * @param receiver The receiver of the flow.
61
63
  * @param userData Extra user data provided.
64
+ * @param overrides ethers overrides object for more control over the transaction sent.
62
65
  * @returns {Operation} An instance of Operation which can be executed or batched.
63
66
  */
64
- deleteFlow: ({ superToken, sender, receiver, userData, }: IDeleteFlowParams) => Operation;
67
+ deleteFlow: ({ superToken, sender, receiver, userData, overrides, }: IDeleteFlowParams) => Operation;
65
68
  /**
66
69
  * @dev Sanitizes flow info, converting BigNumber to string.
67
70
  * @param timestamp last updated timestamp of flow
@@ -72,3 +75,4 @@ export default class ConstantFlowAgreementV1 {
72
75
  */
73
76
  _sanitizeflowInfo: ({ timestamp, flowRate, deposit, owedDeposit, }: IWeb3FlowInfoParams) => IWeb3FlowInfo;
74
77
  }
78
+ //# sourceMappingURL=ConstantFlowAgreementV1.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConstantFlowAgreementV1.d.ts","sourceRoot":"","sources":["../../src/ConstantFlowAgreementV1.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,SAAS,MAAM,aAAa,CAAC;AAGpC,OAAO,EACH,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,yBAAyB,EACzB,cAAc,EACd,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACtB,MAAM,cAAc,CAAC;AAQtB;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,uBAAuB;IACxC,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;gBAER,OAAO,EAAE,mBAAmB;IAKxC,OAAO,KAAK,WAAW,GAKtB;IAID;;;;;;;OAOG;IACH,OAAO,wDAKJ,cAAc,KAAG,QAAQ,aAAa,CAAC,CAgBxC;IAEF;;;;;;OAMG;IACH,kBAAkB,+CAIf,yBAAyB,KAAG,QAAQ,aAAa,CAAC,CAgBnD;IAEF;;;;;;OAMG;IACH,UAAU,+CAIP,yBAAyB,KAAG,QAAQ,MAAM,CAAC,CAgB5C;IAIF;;;;;;;;OAQG;IACH,UAAU,6DAMP,iBAAiB,KAAG,SAAS,CAiB9B;IAEF;;;;;;;;OAQG;IACH,UAAU,6DAMP,iBAAiB,KAAG,SAAS,CAiB9B;IAEF;;;;;;;;OAQG;IACH,UAAU,2DAMP,iBAAiB,KAAG,SAAS,CAkB9B;IAEF;;;;;;;OAOG;IACH,iBAAiB,mDAKd,mBAAmB,KAAG,aAAa,CAOpC;CACL"}
@@ -0,0 +1,178 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const ethers_1 = require("ethers");
7
+ const Host_1 = __importDefault(require("./Host"));
8
+ const SFError_1 = __importDefault(require("./SFError"));
9
+ const IConstantFlowAgreementV1_json_1 = __importDefault(require("./abi/IConstantFlowAgreementV1.json"));
10
+ const utils_1 = require("./utils");
11
+ const cfaInterface = new ethers_1.ethers.utils.Interface(IConstantFlowAgreementV1_json_1.default.abi);
12
+ /**
13
+ * @dev Constant Flow Agreement V1 Helper Class
14
+ * @description A helper class to interact with the CFAV1 contract.
15
+ */
16
+ class ConstantFlowAgreementV1 {
17
+ constructor(options) {
18
+ // CFA Read Functions
19
+ /**
20
+ * @dev Get the details of a flow.
21
+ * @param superToken the superToken of the agreement
22
+ * @param sender the sender of the flow
23
+ * @param receiver the receiver of the flow
24
+ * @param providerOrSigner a provider or signer object
25
+ * @returns {Promise<IWeb3FlowInfo>} Web3 Flow info object
26
+ */
27
+ this.getFlow = async ({ superToken, sender, receiver, providerOrSigner, }) => {
28
+ const normalizedToken = (0, utils_1.normalizeAddress)(superToken);
29
+ const normalizedSender = (0, utils_1.normalizeAddress)(sender);
30
+ const normalizedReceiver = (0, utils_1.normalizeAddress)(receiver);
31
+ try {
32
+ const flowData = await this.cfaContract
33
+ .connect(providerOrSigner)
34
+ .getFlow(normalizedToken, normalizedSender, normalizedReceiver);
35
+ return this._sanitizeflowInfo(flowData);
36
+ }
37
+ catch (err) {
38
+ throw new SFError_1.default({
39
+ type: "CFAV1_READ",
40
+ customMessage: "There was an error getting the flow",
41
+ errorObject: err,
42
+ });
43
+ }
44
+ };
45
+ /**
46
+ * @dev Get the flow info of an account (net flow).
47
+ * @param superToken the superToken of the agreement
48
+ * @param account the account we're querying
49
+ * @param providerOrSigner a provider or signer object
50
+ * @returns {Promise<IWeb3FlowInfo>} Web3 Flow info object
51
+ */
52
+ this.getAccountFlowInfo = async ({ superToken, account, providerOrSigner, }) => {
53
+ const normalizedToken = (0, utils_1.normalizeAddress)(superToken);
54
+ const normalizedAccount = (0, utils_1.normalizeAddress)(account);
55
+ try {
56
+ const flowData = await this.cfaContract
57
+ .connect(providerOrSigner)
58
+ .getAccountFlowInfo(normalizedToken, normalizedAccount);
59
+ return this._sanitizeflowInfo(flowData);
60
+ }
61
+ catch (err) {
62
+ throw new SFError_1.default({
63
+ type: "CFAV1_READ",
64
+ customMessage: "There was an error getting the account flow information",
65
+ errorObject: err,
66
+ });
67
+ }
68
+ };
69
+ /**
70
+ * @dev Get the net flow of an account.
71
+ * @param superToken the superToken of the agreement
72
+ * @param account the account we're querying
73
+ * @param providerOrSigner a provider or signer object
74
+ * @returns {Promise<string>} Web3 Flow info object
75
+ */
76
+ this.getNetFlow = async ({ superToken, account, providerOrSigner, }) => {
77
+ const normalizedToken = (0, utils_1.normalizeAddress)(superToken);
78
+ const normalizedAccount = (0, utils_1.normalizeAddress)(account);
79
+ try {
80
+ return (await this.cfaContract
81
+ .connect(providerOrSigner)
82
+ .getNetFlow(normalizedToken, normalizedAccount)).toString();
83
+ }
84
+ catch (err) {
85
+ throw new SFError_1.default({
86
+ type: "CFAV1_READ",
87
+ customMessage: "There was an error getting net flow",
88
+ errorObject: err,
89
+ });
90
+ }
91
+ };
92
+ // CFA Write Functions
93
+ /**
94
+ * @dev Create a flow.
95
+ * @param flowRate The specified flow rate.
96
+ * @param receiver The receiver of the flow.
97
+ * @param superToken The token to be flowed.
98
+ * @param userData Extra user data provided.
99
+ * @param overrides ethers overrides object for more control over the transaction sent.
100
+ * @returns {Operation} An instance of Operation which can be executed or batched.
101
+ */
102
+ this.createFlow = ({ flowRate, receiver, superToken, userData, overrides, }) => {
103
+ const normalizedToken = (0, utils_1.normalizeAddress)(superToken);
104
+ const normalizedReceiver = (0, utils_1.normalizeAddress)(receiver);
105
+ const callData = cfaInterface.encodeFunctionData("createFlow", [
106
+ normalizedToken,
107
+ normalizedReceiver,
108
+ flowRate,
109
+ "0x",
110
+ ]);
111
+ return this.host.populateCallAgreementTxnAndReturnOperation(this.options.config.cfaV1Address, callData, userData, overrides);
112
+ };
113
+ /**
114
+ * @dev Update a flow.
115
+ * @param flowRate The specified flow rate.
116
+ * @param receiver The receiver of the flow.
117
+ * @param superToken The token to be flowed.
118
+ * @param userData Extra user data provided.
119
+ * @param overrides ethers overrides object for more control over the transaction sent.
120
+ * @returns {Operation} An instance of Operation which can be executed or batched.
121
+ */
122
+ this.updateFlow = ({ flowRate, receiver, superToken, userData, overrides, }) => {
123
+ const normalizedToken = (0, utils_1.normalizeAddress)(superToken);
124
+ const normalizedReceiver = (0, utils_1.normalizeAddress)(receiver);
125
+ const callData = cfaInterface.encodeFunctionData("updateFlow", [
126
+ normalizedToken,
127
+ normalizedReceiver,
128
+ flowRate,
129
+ "0x",
130
+ ]);
131
+ return this.host.populateCallAgreementTxnAndReturnOperation(this.options.config.cfaV1Address, callData, userData, overrides);
132
+ };
133
+ /**
134
+ * @dev Delete a flow.
135
+ * @param superToken The token to be flowed.
136
+ * @param sender The sender of the flow.
137
+ * @param receiver The receiver of the flow.
138
+ * @param userData Extra user data provided.
139
+ * @param overrides ethers overrides object for more control over the transaction sent.
140
+ * @returns {Operation} An instance of Operation which can be executed or batched.
141
+ */
142
+ this.deleteFlow = ({ superToken, sender, receiver, userData, overrides, }) => {
143
+ const normalizedToken = (0, utils_1.normalizeAddress)(superToken);
144
+ const normalizedSender = (0, utils_1.normalizeAddress)(sender);
145
+ const normalizedReceiver = (0, utils_1.normalizeAddress)(receiver);
146
+ const callData = cfaInterface.encodeFunctionData("deleteFlow", [
147
+ normalizedToken,
148
+ normalizedSender,
149
+ normalizedReceiver,
150
+ "0x",
151
+ ]);
152
+ return this.host.populateCallAgreementTxnAndReturnOperation(this.options.config.cfaV1Address, callData, userData, overrides);
153
+ };
154
+ /**
155
+ * @dev Sanitizes flow info, converting BigNumber to string.
156
+ * @param timestamp last updated timestamp of flow
157
+ * @param flowRate the current flow rate
158
+ * @param deposit the deposit amount
159
+ * @param owedDeposit any owed depsit
160
+ * @returns {IWeb3FlowInfo} sanitized web3 flow info
161
+ */
162
+ this._sanitizeflowInfo = ({ timestamp, flowRate, deposit, owedDeposit, }) => {
163
+ return {
164
+ timestamp: (0, utils_1.getSanitizedTimestamp)(timestamp),
165
+ flowRate: flowRate.toString(),
166
+ deposit: deposit.toString(),
167
+ owedDeposit: owedDeposit.toString(),
168
+ };
169
+ };
170
+ this.options = options;
171
+ this.host = new Host_1.default(options.config.hostAddress);
172
+ }
173
+ get cfaContract() {
174
+ return new ethers_1.ethers.Contract(this.options.config.cfaV1Address, IConstantFlowAgreementV1_json_1.default.abi);
175
+ }
176
+ }
177
+ exports.default = ConstantFlowAgreementV1;
178
+ //# sourceMappingURL=ConstantFlowAgreementV1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConstantFlowAgreementV1.js","sourceRoot":"","sources":["../../src/ConstantFlowAgreementV1.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  import { Signer } from "@ethersproject/abstract-signer";
2
+ import { HardhatEthersHelpers } from "@nomiclabs/hardhat-ethers/types";
2
3
  import { ethers } from "ethers";
4
+ import Web3 from "web3";
3
5
  import BatchCall from "./BatchCall";
4
6
  import ConstantFlowAgreementV1 from "./ConstantFlowAgreementV1";
5
7
  import Host from "./Host";
@@ -9,6 +11,7 @@ import Query from "./Query";
9
11
  import SuperToken from "./SuperToken";
10
12
  import { IConfig, ISignerConstructorOptions } from "./interfaces";
11
13
  import { DataMode } from "./types";
14
+ declare type SupportedProvider = ethers.providers.Provider | (typeof ethers & HardhatEthersHelpers) | Web3;
12
15
  export interface IFrameworkOptions {
13
16
  chainId?: number;
14
17
  customSubgraphQueriesEndpoint?: string;
@@ -16,7 +19,7 @@ export interface IFrameworkOptions {
16
19
  networkName?: string;
17
20
  resolverAddress?: string;
18
21
  protocolReleaseVersion?: string;
19
- provider: ethers.providers.Provider;
22
+ provider: SupportedProvider;
20
23
  }
21
24
  export interface IFrameworkSettings {
22
25
  chainId: number;
@@ -47,7 +50,7 @@ export default class Framework {
47
50
  * @param options.networkName the desired network (e.g. "matic", "rinkeby", etc.)
48
51
  * @param options.resolverAddress a custom resolver address (advanced use for testing)
49
52
  * @param options.protocolReleaseVersion a custom release version (advanced use for testing)
50
- * @param options.provider a provider object necessary for initializing the framework
53
+ * @param options.provider a provider object (injected web3, injected ethers, ethers provider) necessary for initializing the framework
51
54
  * @returns `Framework` class
52
55
  */
53
56
  static create: (options: IFrameworkOptions) => Promise<Framework>;
@@ -73,3 +76,5 @@ export default class Framework {
73
76
  */
74
77
  loadSuperToken: (address: string) => Promise<SuperToken>;
75
78
  }
79
+ export {};
80
+ //# sourceMappingURL=Framework.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Framework.d.ts","sourceRoot":"","sources":["../../src/Framework.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,8BAA8B,MAAM,kCAAkC,CAAC;AAC9E,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,OAAO,UAAU,MAAM,cAAc,CAAC;AAStC,OAAO,EAAE,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AAElE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGnC,aAAK,iBAAiB,GAChB,MAAM,CAAC,SAAS,CAAC,QAAQ,GACzB,CAAC,OAAO,MAAM,GAAG,oBAAoB,CAAC,GACtC,IAAI,CAAC;AAIX,MAAM,WAAW,iBAAiB;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6BAA6B,CAAC,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,EAAE,iBAAiB,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,6BAA6B,EAAE,MAAM,CAAC;IACtC,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC;IACpC,MAAM,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,QAAQ,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;IAC7C,QAAQ,EAAE,kBAAkB,CAAC;IAE7B,KAAK,EAAE,uBAAuB,CAAC;IAC/B,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,8BAA8B,CAAC;IACtC,KAAK,EAAE,KAAK,CAAC;IAEb,OAAO;IAiBP;;;;;;;;;;OAUG;IACH,MAAM,CAAC,MAAM,YAAmB,iBAAiB,wBA+F/C;IAEF;;;;;;;OAOG;IACH,YAAY,YAAa,yBAAyB,KAAG,MAAM,CAqCzD;IAEF;;;;OAIG;IACH,SAAS,eAAgB,SAAS,EAAE,eAElC;IAEF;;;;OAIG;IACH,cAAc,YAAmB,MAAM,KAAG,QAAQ,UAAU,CAAC,CAE3D;CACL"}
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ var _a;
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ const ethers_1 = require("ethers");
8
+ const BatchCall_1 = __importDefault(require("./BatchCall"));
9
+ const ConstantFlowAgreementV1_1 = __importDefault(require("./ConstantFlowAgreementV1"));
10
+ const Host_1 = __importDefault(require("./Host"));
11
+ const InstantDistributionAgreementV1_1 = __importDefault(require("./InstantDistributionAgreementV1"));
12
+ const Query_1 = __importDefault(require("./Query"));
13
+ const SFError_1 = __importDefault(require("./SFError"));
14
+ const SuperToken_1 = __importDefault(require("./SuperToken"));
15
+ const IResolver_json_1 = __importDefault(require("./abi/IResolver.json"));
16
+ const SuperfluidLoader_json_1 = __importDefault(require("./abi/SuperfluidLoader.json"));
17
+ const constants_1 = require("./constants");
18
+ const frameworkHelpers_1 = require("./frameworkHelpers");
19
+ const utils_1 = require("./utils");
20
+ /**
21
+ * @dev Superfluid Framework Class
22
+ * @description The entrypoint for the SDK-core, `create` an instance of this for full functionality.
23
+ */
24
+ class Framework {
25
+ constructor(options, settings) {
26
+ /**
27
+ * @dev Create a signer which can be used to sign transactions.
28
+ * @param options.web3Provider a Web3Provider object (e.g. client side - metamask, web3modal)
29
+ * @param options.provider an ethers Provider object (e.g. via Hardhat ethers)
30
+ * @param options.privateKey a test account private key
31
+ * @param options.signer a signer object (e.g. ethers.Wallet instance)
32
+ * @returns `ethers.Signer` object
33
+ */
34
+ this.createSigner = (options) => {
35
+ if (!options.privateKey &&
36
+ !options.provider &&
37
+ !options.signer &&
38
+ !options.web3Provider) {
39
+ throw new SFError_1.default({
40
+ type: "CREATE_SIGNER",
41
+ customMessage: "You must pass in a private key, provider or signer.",
42
+ });
43
+ }
44
+ /* istanbul ignore else */
45
+ if (options.privateKey) {
46
+ if (!options.provider) {
47
+ throw new SFError_1.default({
48
+ type: "CREATE_SIGNER",
49
+ customMessage: "You must pass in a provider with your private key.",
50
+ });
51
+ }
52
+ return new ethers_1.ethers.Wallet(options.privateKey, options.provider);
53
+ }
54
+ else if (options.signer) {
55
+ return options.signer;
56
+ }
57
+ // NOTE: tested by sdk-redux already
58
+ else if (options.web3Provider) {
59
+ return options.web3Provider.getSigner();
60
+ }
61
+ /* istanbul ignore next */
62
+ throw new SFError_1.default({
63
+ type: "CREATE_SIGNER",
64
+ customMessage: "Something went wrong, this should never occur.",
65
+ });
66
+ };
67
+ /**
68
+ * @dev Create a `BatchCall` class from the `Framework`.
69
+ * @param operations the list of operations to execute
70
+ * @returns `BatchCall` class
71
+ */
72
+ this.batchCall = (operations) => {
73
+ return new BatchCall_1.default({ operations, config: this.settings.config });
74
+ };
75
+ /**
76
+ * @dev Load a `SuperToken` class from the `Framework`.
77
+ * @param address the `SuperToken` address
78
+ * @returns `SuperToken` class
79
+ */
80
+ this.loadSuperToken = async (address) => {
81
+ return await SuperToken_1.default.create({ ...this.settings, address });
82
+ };
83
+ this.userInputOptions = options;
84
+ this.settings = settings;
85
+ this.cfaV1 = new ConstantFlowAgreementV1_1.default({
86
+ config: this.settings.config,
87
+ });
88
+ this.host = new Host_1.default(this.settings.config.hostAddress);
89
+ this.idaV1 = new InstantDistributionAgreementV1_1.default({
90
+ config: this.settings.config,
91
+ });
92
+ this.query = new Query_1.default(this.settings);
93
+ }
94
+ }
95
+ exports.default = Framework;
96
+ _a = Framework;
97
+ /**
98
+ * @dev Creates the Framework object based on user provided `options`.
99
+ * @param options.chainId the chainId of your desired network (e.g. 137 = matic)
100
+ * @param options.customSubgraphQueriesEndpoint your custom subgraph endpoint
101
+ * @param options.dataMode the data mode you'd like the framework to use (SUBGRAPH_ONLY, SUBGRAPH_WEB3, WEB3_ONLY)
102
+ * @param options.networkName the desired network (e.g. "matic", "rinkeby", etc.)
103
+ * @param options.resolverAddress a custom resolver address (advanced use for testing)
104
+ * @param options.protocolReleaseVersion a custom release version (advanced use for testing)
105
+ * @param options.provider a provider object (injected web3, injected ethers, ethers provider) necessary for initializing the framework
106
+ * @returns `Framework` class
107
+ */
108
+ Framework.create = async (options) => {
109
+ (0, frameworkHelpers_1.validateFrameworkConstructorOptions)({
110
+ ...options,
111
+ dataMode: options.dataMode || "SUBGRAPH_ONLY",
112
+ protocolReleaseVersion: options.protocolReleaseVersion || "v1",
113
+ });
114
+ const networkName = (0, frameworkHelpers_1.getNetworkName)(options);
115
+ const chainId = options.chainId || constants_1.networkNameToChainIdMap.get(networkName);
116
+ const releaseVersion = options.protocolReleaseVersion || "v1";
117
+ // NOTE: endpoint can be empty in WEB3_ONLY mode
118
+ const customSubgraphQueriesEndpoint = options.dataMode === "WEB3_ONLY"
119
+ ? ""
120
+ : options.customSubgraphQueriesEndpoint ||
121
+ (0, frameworkHelpers_1.getSubgraphQueriesEndpoint)(options);
122
+ const provider = (0, utils_1.isEthersProvider)(options.provider)
123
+ ? options.provider
124
+ : (0, utils_1.isInjectedWeb3)(options.provider)
125
+ ? // must explicitly cast web3 provider type because
126
+ // ethers.providers.Web3Provider doesn't like
127
+ // the type passed.
128
+ new ethers_1.ethers.providers.Web3Provider(options.provider.currentProvider)
129
+ : options.provider.provider;
130
+ const network = await provider.getNetwork();
131
+ if (network.chainId !== chainId && chainId != null) {
132
+ throw new SFError_1.default({
133
+ type: "NETWORK_MISMATCH",
134
+ customMessage: "Your provider network chainId is: " +
135
+ network.chainId +
136
+ " whereas your desired chainId is: " +
137
+ chainId,
138
+ });
139
+ }
140
+ try {
141
+ const data = constants_1.chainIdToDataMap.get(chainId) || {
142
+ subgraphAPIEndpoint: "",
143
+ resolverAddress: "",
144
+ networkName: "",
145
+ };
146
+ const resolverAddress = options.resolverAddress
147
+ ? options.resolverAddress
148
+ : data.resolverAddress;
149
+ const resolver = new ethers_1.ethers.Contract(resolverAddress, IResolver_json_1.default.abi, provider);
150
+ const superfluidLoaderAddress = await resolver.get("SuperfluidLoader-v1");
151
+ const superfluidLoader = new ethers_1.ethers.Contract(superfluidLoaderAddress, SuperfluidLoader_json_1.default.abi, provider);
152
+ const framework = await superfluidLoader.loadFramework(releaseVersion);
153
+ const settings = {
154
+ chainId,
155
+ customSubgraphQueriesEndpoint,
156
+ dataMode: options.dataMode || "SUBGRAPH_ONLY",
157
+ protocolReleaseVersion: options.protocolReleaseVersion || "v1",
158
+ provider,
159
+ networkName,
160
+ config: {
161
+ hostAddress: framework.superfluid,
162
+ superTokenFactoryAddress: framework.superTokenFactory,
163
+ cfaV1Address: framework.agreementCFAv1,
164
+ idaV1Address: framework.agreementIDAv1,
165
+ },
166
+ };
167
+ return new Framework(options, settings);
168
+ }
169
+ catch (err) {
170
+ throw new SFError_1.default({
171
+ type: "FRAMEWORK_INITIALIZATION",
172
+ customMessage: "There was an error initializing the framework",
173
+ errorObject: err,
174
+ });
175
+ }
176
+ };
177
+ //# sourceMappingURL=Framework.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Framework.js","sourceRoot":"","sources":["../../src/Framework.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { ethers } from "ethers";
1
2
  import Operation from "./Operation";
2
3
  import { Superfluid } from "./typechain";
3
4
  /**
@@ -12,7 +13,11 @@ export default class Host {
12
13
  * @param agreementAddress the agreement address (cfa or ida address)
13
14
  * @param callData the encoded callData for the function
14
15
  * @param userData any additional user data
16
+ * @param overrides ethers overrides object for more control over the transaction sent.
15
17
  * @returns {Operation} an `Operation` class
16
18
  */
17
- populateCallAgreementTxnAndReturnOperation: (agreementAddress: string, callData: string, userData: string | undefined) => Operation;
19
+ populateCallAgreementTxnAndReturnOperation: (agreementAddress: string, callData: string, userData: string | undefined, overrides?: (ethers.Overrides & {
20
+ from?: string | Promise<string> | undefined;
21
+ }) | undefined) => Operation;
18
22
  }
23
+ //# sourceMappingURL=Host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Host.d.ts","sourceRoot":"","sources":["../../src/Host.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAa,MAAM,QAAQ,CAAC;AAE3C,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,IAAI;IACrB,YAAY,EAAE,UAAU,CAAC;gBAEb,WAAW,EAAE,MAAM;IAO/B;;;;;;;OAOG;IACH,0CAA0C,qBACpB,MAAM,YACd,MAAM,YACN,MAAM,GAAG,SAAS;;uBAE7B,SAAS,CAQV;CACL"}