@superfluid-finance/sdk-core 0.6.7-dev.fffa179.0 → 0.6.8-dev.952e286.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.
@@ -1,9 +1,8 @@
1
- import { Superfluid__factory } from "@superfluid-finance/ethereum-contracts/build/typechain";
2
- import { ethers } from "ethers";
3
1
  import Host from "./Host";
2
+ import Operation from "./Operation";
4
3
  import { SFError } from "./SFError";
5
- import { getTransactionDescription, removeSigHashFromCallData } from "./utils";
6
- const batchOperationTypeStringToTypeMap = new Map([
4
+ import { getTransactionDescription } from "./utils";
5
+ export const batchOperationTypeStringToTypeMap = new Map([
7
6
  ["ERC20_APPROVE", 1],
8
7
  ["ERC20_TRANSFER_FROM", 2],
9
8
  ["ERC777_SEND", 3],
@@ -14,84 +13,36 @@ const batchOperationTypeStringToTypeMap = new Map([
14
13
  ["SUPERFLUID_CALL_AGREEMENT", 201],
15
14
  ["CALL_APP_ACTION", 202],
16
15
  ]);
16
+ /**
17
+ * Gets function arguments given an ABI and callData.
18
+ * @param abi the abi fragments of a contract/function
19
+ * @param callData call data of the function
20
+ * @returns {ethers.utils.Result} call agreement function arguments
21
+ */
22
+ export const getCallDataFunctionArgs = (abi, callData) => getTransactionDescription(abi, callData).args;
17
23
  /**
18
24
  * BatchCall Helper Class
19
25
  * @description A helper class to create `BatchCall` objects which can be executed.
20
26
  */
21
27
  export default class BatchCall {
22
28
  constructor(options) {
23
- /**
24
- * Gets function arguments given an ABI and callData.
25
- * @param abi the abi fragments of a contract/function
26
- * @param callData call data of the function
27
- * @returns {ethers.utils.Result} call agreement function arguments
28
- */
29
- this.getCallDataFunctionArgs = (abi, callData) => getTransactionDescription(abi, callData).args;
29
+ this.getCallDataFunctionArgs = getCallDataFunctionArgs;
30
30
  /**
31
31
  * Given an `Operation` object, gets the `OperationStruct` object.
32
32
  * @param operation an `Operation` object
33
33
  * @param index the index of the `Operation` in the batchCall
34
34
  * @returns {Promise<OperationStruct>} OperationStruct object for batchCall
35
35
  */
36
- this.getOperationStruct = async (operation, index) => {
37
- const batchOperationType = batchOperationTypeStringToTypeMap.get(operation.type);
38
- const populatedTransaction = await operation.populateTransactionPromise;
39
- if (!batchOperationType) {
40
- throw new SFError({
41
- type: "UNSUPPORTED_OPERATION",
42
- message: "The operation at index " + index + " is unsupported.",
43
- });
44
- }
45
- /* istanbul ignore next */
46
- if (!populatedTransaction.to || !populatedTransaction.data) {
47
- throw new SFError({
48
- type: "MISSING_TRANSACTION_PROPERTIES",
49
- message: "The transaction is missing the to or data property.",
50
- });
51
- }
52
- const encoder = ethers.utils.defaultAbiCoder;
53
- // Handles Superfluid.callAgreement
54
- if (operation.type === "SUPERFLUID_CALL_AGREEMENT") {
55
- const functionArgs = this.getCallDataFunctionArgs(Superfluid__factory.abi, populatedTransaction.data);
56
- const data = encoder.encode(["bytes", "bytes"], [functionArgs["callData"], functionArgs["userData"]]);
57
- return {
58
- operationType: batchOperationType,
59
- target: functionArgs["agreementClass"],
60
- data,
61
- };
62
- }
63
- // Handles Superfluid.callAppAction
64
- if (operation.type === "CALL_APP_ACTION") {
65
- const functionArgs = this.getCallDataFunctionArgs(Superfluid__factory.abi, populatedTransaction.data);
66
- return {
67
- operationType: batchOperationType,
68
- target: functionArgs["app"],
69
- data: functionArgs["callData"],
70
- };
71
- }
72
- // Handles remaining ERC20/ERC777/SuperToken Operations
73
- return {
74
- operationType: batchOperationType,
75
- target: populatedTransaction.to,
76
- data: removeSigHashFromCallData(populatedTransaction.data),
77
- };
78
- };
36
+ this.getOperationStruct = async (operation, index) => operation.toOperationStruct(index);
79
37
  /**
80
38
  * Executes a batch call given the operations on this class.
81
39
  * @param signer the signer of the transaction
40
+ * @param gasLimitMultiplier A multiplier to provide gasLimit buffer on top of the estimated gas limit (1.2x is the default)
82
41
  * @returns {Promise<ethers.ContractTransaction>} ContractTransaction object
83
42
  */
84
- this.exec = async (signer) => {
85
- if (this.getOperationStructArrayPromises.length === 0) {
86
- throw new SFError({
87
- type: "BATCH_CALL_ERROR",
88
- message: "There are no operations to execute in the batch.",
89
- });
90
- }
91
- const operationStructArray = await Promise.all(this.getOperationStructArrayPromises);
92
- return await this.host.contract
93
- .connect(signer)
94
- .batchCall(operationStructArray);
43
+ this.exec = async (signer, gasLimitMultiplier = 1.2) => {
44
+ const operation = await this.toOperation();
45
+ return await operation.exec(signer, gasLimitMultiplier);
95
46
  };
96
47
  /* istanbul ignore next */
97
48
  // TODO: user signs the transaction they'd like to execute and gives
@@ -123,5 +74,16 @@ export default class BatchCall {
123
74
  get getOperationStructArrayPromises() {
124
75
  return this.options.operations.map((x, i) => this.getOperationStruct(x, i));
125
76
  }
77
+ async toOperation() {
78
+ if (this.getOperationStructArrayPromises.length === 0) {
79
+ throw new SFError({
80
+ type: "BATCH_CALL_ERROR",
81
+ message: "There are no operations to execute in the batch.",
82
+ });
83
+ }
84
+ const operationStructArray = await Promise.all(this.getOperationStructArrayPromises);
85
+ const tx = this.host.contract.populateTransaction.batchCall(operationStructArray);
86
+ return new Operation(tx, "UNSUPPORTED");
87
+ }
126
88
  }
127
89
  //# sourceMappingURL=BatchCall.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BatchCall.js","sourceRoot":"","sources":["../../src/BatchCall.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BatchCall.js","sourceRoot":"","sources":["../../src/BatchCall.ts"],"names":[],"mappings":"AAGA,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,SAAiC,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAapD,MAAM,CAAC,MAAM,iCAAiC,GAAG,IAAI,GAAG,CAGtD;IACE,CAAC,eAAe,EAAE,CAAC,CAAC;IACpB,CAAC,qBAAqB,EAAE,CAAC,CAAC;IAC1B,CAAC,aAAa,EAAE,CAAC,CAAC;IAClB,CAAC,0BAA0B,EAAE,CAAC,CAAC;IAC/B,CAAC,0BAA0B,EAAE,CAAC,CAAC;IAC/B,CAAC,oBAAoB,EAAE,GAAG,CAAC;IAC3B,CAAC,sBAAsB,EAAE,GAAG,CAAC;IAC7B,CAAC,2BAA2B,EAAE,GAAG,CAAC;IAClC,CAAC,iBAAiB,EAAE,GAAG,CAAC;CAC3B,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACnC,GAAwE,EACxE,QAAgB,EACG,EAAE,CAAC,yBAAyB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC;AAExE;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,SAAS;IAI1B,YAAY,OAA0B;QAKtC,4BAAuB,GAAG,uBAAuB,CAAC;QAElD;;;;;WAKG;QACH,uBAAkB,GAAG,KAAK,EACtB,SAAoB,EACpB,KAAa,EACW,EAAE,CAAC,SAAS,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;QA6BlE;;;;;WAKG;QACH,SAAI,GAAG,KAAK,EACR,MAAqB,EACrB,kBAAkB,GAAG,GAAG,EACW,EAAE;YACrC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YAC3C,OAAO,MAAM,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;QAC5D,CAAC,CAAC;QAEF,0BAA0B;QAC1B,oEAAoE;QACpE,6CAA6C;QAC7C;;;;WAIG;QACH,gBAAW,GAAG,KAAK,EACf,MAAqB,EACc,EAAE;YACrC,IAAI,IAAI,CAAC,+BAA+B,CAAC,MAAM,KAAK,CAAC,EAAE;gBACnD,MAAM,IAAI,OAAO,CAAC;oBACd,IAAI,EAAE,kBAAkB;oBACxB,OAAO,EAAE,kDAAkD;iBAC9D,CAAC,CAAC;aACN;YACD,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1C,IAAI,CAAC,+BAA+B,CACvC,CAAC;YACF,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ;iBAC1B,OAAO,CAAC,MAAM,CAAC;iBACf,gBAAgB,CAAC,oBAAoB,CAAC,CAAC;QAChD,CAAC,CAAC;QAjFE,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAeD;;;OAGG;IACH,IAAI,+BAA+B;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACxC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,CAAC,CAChC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,WAAW;QACb,IAAI,IAAI,CAAC,+BAA+B,CAAC,MAAM,KAAK,CAAC,EAAE;YACnD,MAAM,IAAI,OAAO,CAAC;gBACd,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,kDAAkD;aAC9D,CAAC,CAAC;SACN;QACD,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1C,IAAI,CAAC,+BAA+B,CACvC,CAAC;QACF,MAAM,EAAE,GACJ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,SAAS,CAC5C,oBAAoB,CACvB,CAAC;QACN,OAAO,IAAI,SAAS,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;IAC5C,CAAC;CAwCJ"}
@@ -1,4 +1,5 @@
1
1
  import { ethers } from "ethers";
2
+ import { OperationStruct } from "./BatchCall";
2
3
  export type BatchOperationType = "UNSUPPORTED" | "ERC20_APPROVE" | "ERC20_TRANSFER_FROM" | "ERC777_SEND" | "ERC20_INCREASE_ALLOWANCE" | "ERC20_DECREASE_ALLOWANCE" | "SUPERTOKEN_UPGRADE" | "SUPERTOKEN_DOWNGRADE" | "SUPERFLUID_CALL_AGREEMENT" | "CALL_APP_ACTION";
3
4
  /**
4
5
  * Operation Helper Class
@@ -36,5 +37,12 @@ export default class Operation {
36
37
  * @returns {Promise<string>} The transaction hash of the transaction
37
38
  */
38
39
  getTransactionHash: (signer: ethers.Signer) => Promise<string>;
40
+ /**
41
+ * Gets the `OperationStruct` object.
42
+ * @param operation an `Operation` object
43
+ * @param index the index of the `Operation` in the batchCall
44
+ * @returns {Promise<OperationStruct>} OperationStruct object for batchCall
45
+ */
46
+ toOperationStruct: (index: number) => Promise<OperationStruct>;
39
47
  }
40
48
  //# sourceMappingURL=Operation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Operation.d.ts","sourceRoot":"","sources":["../../src/Operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,MAAM,kBAAkB,GACxB,aAAa,GACb,eAAe,GACf,qBAAqB,GACrB,aAAa,GACb,0BAA0B,GAC1B,0BAA0B,GAC1B,oBAAoB,GACpB,sBAAsB,GACtB,2BAA2B,GAC3B,iBAAiB,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC1E,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAIlC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;gBAGtE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,EACzC,IAAI,EAAE,kBAAkB,EACxB,yBAAyB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;IAOpE;;;;;;OAMG;IACH,IAAI,WACQ,OAAO,MAAM,kCAEtB,QAAQ,OAAO,SAAS,CAAC,mBAAmB,CAAC,CAM9C;IAEF;;;;OAIG;IACH,8BAA8B,qBACR,OAAO,SAAS,CAAC,QAAQ,GAAG,OAAO,MAAM,kCAE5D,QAAQ,OAAO,oBAAoB,CAAC,CA4BrC;IACF;;;;OAIG;IACH,oBAAoB,WACR,OAAO,MAAM,kCAEtB,QAAQ,MAAM,CAAC,CAYhB;IAEF;;;;;OAKG;IACH,kBAAkB,WAAkB,OAAO,MAAM,KAAG,QAAQ,MAAM,CAAC,CAGjE;CACL"}
1
+ {"version":3,"file":"Operation.d.ts","sourceRoot":"","sources":["../../src/Operation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAGH,eAAe,EAClB,MAAM,aAAa,CAAC;AAKrB,MAAM,MAAM,kBAAkB,GACxB,aAAa,GACb,eAAe,GACf,qBAAqB,GACrB,aAAa,GACb,0BAA0B,GAC1B,0BAA0B,GAC1B,oBAAoB,GACpB,sBAAsB,GACtB,2BAA2B,GAC3B,iBAAiB,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,SAAS;IAC1B,QAAQ,CAAC,0BAA0B,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC1E,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAIlC,QAAQ,CAAC,yBAAyB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;gBAGtE,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC,EACzC,IAAI,EAAE,kBAAkB,EACxB,yBAAyB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAC;IAOpE;;;;;;OAMG;IACH,IAAI,WACQ,OAAO,MAAM,kCAEtB,QAAQ,OAAO,SAAS,CAAC,mBAAmB,CAAC,CAM9C;IAEF;;;;OAIG;IACH,8BAA8B,qBACR,OAAO,SAAS,CAAC,QAAQ,GAAG,OAAO,MAAM,kCAE5D,QAAQ,OAAO,oBAAoB,CAAC,CAmBrC;IACF;;;;OAIG;IACH,oBAAoB,WACR,OAAO,MAAM,kCAEtB,QAAQ,MAAM,CAAC,CAYhB;IAEF;;;;;OAKG;IACH,kBAAkB,WAAkB,OAAO,MAAM,KAAG,QAAQ,MAAM,CAAC,CAGjE;IAEF;;;;;OAKG;IACH,iBAAiB,UAAiB,MAAM,KAAG,QAAQ,eAAe,CAAC,CA4DjE;CACL"}
@@ -1,4 +1,9 @@
1
+ import { Superfluid__factory } from "@superfluid-finance/ethereum-contracts/build/typechain";
1
2
  import { ethers } from "ethers";
3
+ import { batchOperationTypeStringToTypeMap, getCallDataFunctionArgs, } from "./BatchCall";
4
+ import { SFError } from "./SFError";
5
+ import multiplyGasLimit from "./multiplyGasLimit";
6
+ import { removeSigHashFromCallData } from "./utils";
2
7
  /**
3
8
  * Operation Helper Class
4
9
  * @description A helper class to create `Operation` objects which can be executed or batched.
@@ -30,14 +35,7 @@ export default class Operation {
30
35
  // a specified or the default (1.2) multiplier on the gas limit.
31
36
  if (!populatedTransaction.gasLimit) {
32
37
  const estimatedGasLimit = await providerOrSigner.estimateGas(populatedTransaction);
33
- // NOTE: BigNumber doesn't support multiplication with decimals.
34
- const commonDenominator = 100;
35
- const multipliedGasLimit = gasLimitMultiplier === 1 // No need to modify estimated gas limit when multiplier is 1.
36
- ? estimatedGasLimit
37
- : estimatedGasLimit
38
- .div(commonDenominator)
39
- .mul(Math.round(gasLimitMultiplier * commonDenominator));
40
- populatedTransaction.gasLimit = multipliedGasLimit;
38
+ populatedTransaction.gasLimit = multiplyGasLimit(estimatedGasLimit, gasLimitMultiplier);
41
39
  }
42
40
  return populatedTransaction;
43
41
  };
@@ -62,6 +60,55 @@ export default class Operation {
62
60
  const signedTxn = await this.getSignedTransaction(signer);
63
61
  return ethers.utils.keccak256(signedTxn);
64
62
  };
63
+ /**
64
+ * Gets the `OperationStruct` object.
65
+ * @param operation an `Operation` object
66
+ * @param index the index of the `Operation` in the batchCall
67
+ * @returns {Promise<OperationStruct>} OperationStruct object for batchCall
68
+ */
69
+ this.toOperationStruct = async (index) => {
70
+ const batchOperationType = batchOperationTypeStringToTypeMap.get(this.type);
71
+ const populatedTransaction = await this.populateTransactionPromise;
72
+ if (!batchOperationType) {
73
+ throw new SFError({
74
+ type: "UNSUPPORTED_OPERATION",
75
+ message: "The operation at index " + index + " is unsupported.",
76
+ });
77
+ }
78
+ /* istanbul ignore next */
79
+ if (!populatedTransaction.to || !populatedTransaction.data) {
80
+ throw new SFError({
81
+ type: "MISSING_TRANSACTION_PROPERTIES",
82
+ message: "The transaction is missing the to or data property.",
83
+ });
84
+ }
85
+ const encoder = ethers.utils.defaultAbiCoder;
86
+ // Handles Superfluid.callAgreement
87
+ if (this.type === "SUPERFLUID_CALL_AGREEMENT") {
88
+ const functionArgs = getCallDataFunctionArgs(Superfluid__factory.abi, populatedTransaction.data);
89
+ const data = encoder.encode(["bytes", "bytes"], [functionArgs["callData"], functionArgs["userData"]]);
90
+ return {
91
+ operationType: batchOperationType,
92
+ target: functionArgs["agreementClass"],
93
+ data,
94
+ };
95
+ }
96
+ // Handles Superfluid.callAppAction
97
+ if (this.type === "CALL_APP_ACTION") {
98
+ const functionArgs = getCallDataFunctionArgs(Superfluid__factory.abi, populatedTransaction.data);
99
+ return {
100
+ operationType: batchOperationType,
101
+ target: functionArgs["app"],
102
+ data: functionArgs["callData"],
103
+ };
104
+ }
105
+ // Handles remaining ERC20/ERC777/SuperToken Operations
106
+ return {
107
+ operationType: batchOperationType,
108
+ target: populatedTransaction.to,
109
+ data: removeSigHashFromCallData(populatedTransaction.data),
110
+ };
111
+ };
65
112
  this.populateTransactionPromise = txn;
66
113
  this.type = type;
67
114
  this.forwarderPopulatedPromise = forwarderPopulatedPromise;
@@ -1 +1 @@
1
- {"version":3,"file":"Operation.js","sourceRoot":"","sources":["../../src/Operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAchC;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,SAAS;IAQ1B,YACI,GAAyC,EACzC,IAAwB,EACxB,yBAAgE;QAOpE;;;;;;WAMG;QACH,SAAI,GAAG,KAAK,EACR,MAAqB,EACrB,kBAAkB,GAAG,GAAG,EACqB,EAAE;YAC/C,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAClE,MAAM,EACN,kBAAkB,CACrB,CAAC;YACF,OAAO,MAAM,MAAM,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;QAC9D,CAAC,CAAC;QAEF;;;;WAIG;QACH,mCAA8B,GAAG,KAAK,EAClC,gBAA2D,EAC3D,kBAAkB,GAAG,GAAG,EACY,EAAE;YACtC,MAAM,oBAAoB,GAAG,IAAI,CAAC,yBAAyB;gBACvD,CAAC,CAAC,MAAM,IAAI,CAAC,yBAAyB;gBACtC,CAAC,CAAC,MAAM,IAAI,CAAC,0BAA0B,CAAC;YAE5C,yFAAyF;YACzF,4FAA4F;YAC5F,gEAAgE;YAChE,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE;gBAChC,MAAM,iBAAiB,GAAG,MAAM,gBAAgB,CAAC,WAAW,CACxD,oBAAoB,CACvB,CAAC;gBAEF,gEAAgE;gBAChE,MAAM,iBAAiB,GAAG,GAAG,CAAC;gBAC9B,MAAM,kBAAkB,GACpB,kBAAkB,KAAK,CAAC,CAAC,8DAA8D;oBACnF,CAAC,CAAC,iBAAiB;oBACnB,CAAC,CAAC,iBAAiB;yBACZ,GAAG,CAAC,iBAAiB,CAAC;yBACtB,GAAG,CACA,IAAI,CAAC,KAAK,CAAC,kBAAkB,GAAG,iBAAiB,CAAC,CACrD,CAAC;gBAEhB,oBAAoB,CAAC,QAAQ,GAAG,kBAAkB,CAAC;aACtD;YAED,OAAO,oBAAoB,CAAC;QAChC,CAAC,CAAC;QACF;;;;WAIG;QACH,yBAAoB,GAAG,KAAK,EACxB,MAAqB,EACrB,kBAAkB,GAAG,GAAG,EACT,EAAE;YACjB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAClE,MAAM,EACN,kBAAkB,CACrB,CAAC;YACF,MAAM,0BAA0B,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAC/D,oBAAoB,CACvB,CAAC;YACF,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,eAAe,CAClD,0BAA0B,CAC7B,CAAC;YACF,OAAO,iBAAiB,CAAC;QAC7B,CAAC,CAAC;QAEF;;;;;WAKG;QACH,uBAAkB,GAAG,KAAK,EAAE,MAAqB,EAAmB,EAAE;YAClE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC1D,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC7C,CAAC,CAAC;QA3FE,IAAI,CAAC,0BAA0B,GAAG,GAAG,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,yBAAyB,GAAG,yBAAyB,CAAC;IAC/D,CAAC;CAyFJ"}
1
+ {"version":3,"file":"Operation.js","sourceRoot":"","sources":["../../src/Operation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wDAAwD,CAAC;AAC7F,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EACH,iCAAiC,EACjC,uBAAuB,GAE1B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,gBAAgB,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,SAAS,CAAC;AAcpD;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,SAAS;IAQ1B,YACI,GAAyC,EACzC,IAAwB,EACxB,yBAAgE;QAOpE;;;;;;WAMG;QACH,SAAI,GAAG,KAAK,EACR,MAAqB,EACrB,kBAAkB,GAAG,GAAG,EACqB,EAAE;YAC/C,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAClE,MAAM,EACN,kBAAkB,CACrB,CAAC;YACF,OAAO,MAAM,MAAM,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;QAC9D,CAAC,CAAC;QAEF;;;;WAIG;QACH,mCAA8B,GAAG,KAAK,EAClC,gBAA2D,EAC3D,kBAAkB,GAAG,GAAG,EACY,EAAE;YACtC,MAAM,oBAAoB,GAAG,IAAI,CAAC,yBAAyB;gBACvD,CAAC,CAAC,MAAM,IAAI,CAAC,yBAAyB;gBACtC,CAAC,CAAC,MAAM,IAAI,CAAC,0BAA0B,CAAC;YAE5C,yFAAyF;YACzF,4FAA4F;YAC5F,gEAAgE;YAChE,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE;gBAChC,MAAM,iBAAiB,GAAG,MAAM,gBAAgB,CAAC,WAAW,CACxD,oBAAoB,CACvB,CAAC;gBACF,oBAAoB,CAAC,QAAQ,GAAG,gBAAgB,CAC5C,iBAAiB,EACjB,kBAAkB,CACrB,CAAC;aACL;YAED,OAAO,oBAAoB,CAAC;QAChC,CAAC,CAAC;QACF;;;;WAIG;QACH,yBAAoB,GAAG,KAAK,EACxB,MAAqB,EACrB,kBAAkB,GAAG,GAAG,EACT,EAAE;YACjB,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,8BAA8B,CAClE,MAAM,EACN,kBAAkB,CACrB,CAAC;YACF,MAAM,0BAA0B,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAC/D,oBAAoB,CACvB,CAAC;YACF,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,eAAe,CAClD,0BAA0B,CAC7B,CAAC;YACF,OAAO,iBAAiB,CAAC;QAC7B,CAAC,CAAC;QAEF;;;;;WAKG;QACH,uBAAkB,GAAG,KAAK,EAAE,MAAqB,EAAmB,EAAE;YAClE,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAC1D,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF;;;;;WAKG;QACH,sBAAiB,GAAG,KAAK,EAAE,KAAa,EAA4B,EAAE;YAClE,MAAM,kBAAkB,GAAG,iCAAiC,CAAC,GAAG,CAC5D,IAAI,CAAC,IAAI,CACZ,CAAC;YACF,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC;YACnE,IAAI,CAAC,kBAAkB,EAAE;gBACrB,MAAM,IAAI,OAAO,CAAC;oBACd,IAAI,EAAE,uBAAuB;oBAC7B,OAAO,EAAE,yBAAyB,GAAG,KAAK,GAAG,kBAAkB;iBAClE,CAAC,CAAC;aACN;YAED,0BAA0B;YAC1B,IAAI,CAAC,oBAAoB,CAAC,EAAE,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE;gBACxD,MAAM,IAAI,OAAO,CAAC;oBACd,IAAI,EAAE,gCAAgC;oBACtC,OAAO,EAAE,qDAAqD;iBACjE,CAAC,CAAC;aACN;YAED,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC;YAE7C,mCAAmC;YACnC,IAAI,IAAI,CAAC,IAAI,KAAK,2BAA2B,EAAE;gBAC3C,MAAM,YAAY,GAAG,uBAAuB,CACxC,mBAAmB,CAAC,GAAG,EACvB,oBAAoB,CAAC,IAAI,CAC5B,CAAC;gBACF,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CACvB,CAAC,OAAO,EAAE,OAAO,CAAC,EAClB,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC,CACvD,CAAC;gBAEF,OAAO;oBACH,aAAa,EAAE,kBAAkB;oBACjC,MAAM,EAAE,YAAY,CAAC,gBAAgB,CAAC;oBACtC,IAAI;iBACP,CAAC;aACL;YAED,mCAAmC;YACnC,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE;gBACjC,MAAM,YAAY,GAAG,uBAAuB,CACxC,mBAAmB,CAAC,GAAG,EACvB,oBAAoB,CAAC,IAAI,CAC5B,CAAC;gBAEF,OAAO;oBACH,aAAa,EAAE,kBAAkB;oBACjC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC;oBAC3B,IAAI,EAAE,YAAY,CAAC,UAAU,CAAC;iBACjC,CAAC;aACL;YAED,uDAAuD;YACvD,OAAO;gBACH,aAAa,EAAE,kBAAkB;gBACjC,MAAM,EAAE,oBAAoB,CAAC,EAAE;gBAC/B,IAAI,EAAE,yBAAyB,CAAC,oBAAoB,CAAC,IAAI,CAAC;aAC7D,CAAC;QACN,CAAC,CAAC;QAtJE,IAAI,CAAC,0BAA0B,GAAG,GAAG,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,yBAAyB,GAAG,yBAAyB,CAAC;IAC/D,CAAC;CAoJJ"}
@@ -28,7 +28,7 @@ export interface ISuperTokenRequestFilter {
28
28
  export interface IShouldUseCallAgreement {
29
29
  readonly shouldUseCallAgreement?: boolean;
30
30
  }
31
- interface EthersParams {
31
+ export interface EthersParams {
32
32
  readonly overrides?: Overrides & {
33
33
  from?: string | Promise<string>;
34
34
  };
@@ -431,5 +431,4 @@ export interface SuperTokenFlowRateAllowanceParams extends EthersParams {
431
431
  export interface FlowRateAllowanceParams extends SuperTokenFlowRateAllowanceParams {
432
432
  readonly superToken: string;
433
433
  }
434
- export {};
435
434
  //# sourceMappingURL=interfaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { BigNumber, BigNumberish } from "ethers";
2
+ export default function multiplyGasLimit(gasLimitish: BigNumberish, multiplier: number): BigNumber;
3
+ //# sourceMappingURL=multiplyGasLimit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiplyGasLimit.d.ts","sourceRoot":"","sources":["../../src/multiplyGasLimit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEjD,MAAM,CAAC,OAAO,UAAU,gBAAgB,CACpC,WAAW,EAAE,YAAY,EACzB,UAAU,EAAE,MAAM,GACnB,SAAS,CAcX"}
@@ -0,0 +1,14 @@
1
+ import { BigNumber } from "ethers";
2
+ export default function multiplyGasLimit(gasLimitish, multiplier) {
3
+ const gasLimit = BigNumber.from(gasLimitish);
4
+ // if gasLimit exists, an Overrides object has been passed or the user has explicitly set
5
+ // NOTE: BigNumber doesn't support multiplication with decimals.
6
+ const commonDenominator = 100;
7
+ const multipliedGasLimit = multiplier === 1 // No need to modify gas limit when multiplier is 1.
8
+ ? gasLimit
9
+ : gasLimit
10
+ .div(commonDenominator)
11
+ .mul(Math.round(multiplier * commonDenominator));
12
+ return multipliedGasLimit;
13
+ }
14
+ //# sourceMappingURL=multiplyGasLimit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiplyGasLimit.js","sourceRoot":"","sources":["../../src/multiplyGasLimit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,MAAM,QAAQ,CAAC;AAEjD,MAAM,CAAC,OAAO,UAAU,gBAAgB,CACpC,WAAyB,EACzB,UAAkB;IAElB,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAE7C,yFAAyF;IACzF,gEAAgE;IAChE,MAAM,iBAAiB,GAAG,GAAG,CAAC;IAC9B,MAAM,kBAAkB,GACpB,UAAU,KAAK,CAAC,CAAC,oDAAoD;QACjE,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,QAAQ;aACH,GAAG,CAAC,iBAAiB,CAAC;aACtB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,iBAAiB,CAAC,CAAC,CAAC;IAE/D,OAAO,kBAAkB,CAAC;AAC9B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@superfluid-finance/sdk-core",
3
- "version": "0.6.7-dev.fffa179.0",
3
+ "version": "0.6.8-dev.952e286.0",
4
4
  "description": "SDK Core for building with Superfluid Protocol",
5
5
  "homepage": "https://github.com/superfluid-finance/protocol-monorepo/tree/dev/packages/sdk-core#readme",
6
6
  "repository": {
@@ -56,8 +56,8 @@
56
56
  },
57
57
  "dependencies": {
58
58
  "@nomiclabs/hardhat-ethers": "^2.2.1",
59
- "@superfluid-finance/ethereum-contracts": "^1.6.1-dev.fffa179.0",
60
- "@superfluid-finance/metadata": "git+https://github.com/superfluid-finance/metadata.git",
59
+ "@superfluid-finance/ethereum-contracts": "^1.7.2-dev.952e286.0",
60
+ "@superfluid-finance/metadata": "^1.1.9-dev.952e286.0",
61
61
  "browserify": "^17.0.0",
62
62
  "graphql-request": "^4.3.0",
63
63
  "lodash": "^4.17.21",