@uniswap/router-sdk 2.0.0 → 2.0.2

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 (176) hide show
  1. package/dist/{cjs/src/approveAndCall.d.ts → approveAndCall.d.ts} +33 -33
  2. package/dist/{types/src/constants.d.ts → constants.d.ts} +13 -13
  3. package/dist/{types/src/entities → entities}/mixedRoute/route.d.ts +29 -29
  4. package/dist/{esm/src/entities → entities}/mixedRoute/trade.d.ts +183 -183
  5. package/dist/{cjs/src/entities → entities}/protocol.d.ts +6 -6
  6. package/dist/{esm/src/entities → entities}/route.d.ts +40 -40
  7. package/dist/{esm/src/entities → entities}/trade.d.ts +127 -127
  8. package/dist/{cjs/src/index.d.ts → index.d.ts} +14 -14
  9. package/dist/index.js +8 -0
  10. package/dist/{cjs/src/multicallExtended.d.ts → multicallExtended.d.ts} +11 -11
  11. package/dist/{types/src/paymentsExtended.d.ts → paymentsExtended.d.ts} +15 -15
  12. package/dist/router-sdk.cjs.development.js +2460 -0
  13. package/dist/router-sdk.cjs.development.js.map +1 -0
  14. package/dist/router-sdk.cjs.production.min.js +2 -0
  15. package/dist/router-sdk.cjs.production.min.js.map +1 -0
  16. package/dist/router-sdk.esm.js +2427 -0
  17. package/dist/router-sdk.esm.js.map +1 -0
  18. package/dist/{cjs/src/swapRouter.d.ts → swapRouter.d.ts} +95 -95
  19. package/dist/{cjs/src/utils → utils}/TPool.d.ts +4 -4
  20. package/dist/{cjs/src/utils → utils}/encodeMixedRouteToPath.d.ts +9 -9
  21. package/dist/{types/src/utils → utils}/index.d.ts +16 -16
  22. package/dist/{cjs/src/utils → utils}/pathCurrency.d.ts +4 -4
  23. package/package.json +18 -33
  24. package/dist/cjs/src/approveAndCall.js +0 -111
  25. package/dist/cjs/src/approveAndCall.js.map +0 -1
  26. package/dist/cjs/src/constants.d.ts +0 -13
  27. package/dist/cjs/src/constants.js +0 -22
  28. package/dist/cjs/src/constants.js.map +0 -1
  29. package/dist/cjs/src/entities/mixedRoute/route.d.ts +0 -29
  30. package/dist/cjs/src/entities/mixedRoute/route.js +0 -119
  31. package/dist/cjs/src/entities/mixedRoute/route.js.map +0 -1
  32. package/dist/cjs/src/entities/mixedRoute/route.test.d.ts +0 -1
  33. package/dist/cjs/src/entities/mixedRoute/route.test.js +0 -469
  34. package/dist/cjs/src/entities/mixedRoute/route.test.js.map +0 -1
  35. package/dist/cjs/src/entities/mixedRoute/trade.d.ts +0 -183
  36. package/dist/cjs/src/entities/mixedRoute/trade.js +0 -357
  37. package/dist/cjs/src/entities/mixedRoute/trade.js.map +0 -1
  38. package/dist/cjs/src/entities/mixedRoute/trade.test.d.ts +0 -1
  39. package/dist/cjs/src/entities/mixedRoute/trade.test.js +0 -1010
  40. package/dist/cjs/src/entities/mixedRoute/trade.test.js.map +0 -1
  41. package/dist/cjs/src/entities/protocol.js +0 -11
  42. package/dist/cjs/src/entities/protocol.js.map +0 -1
  43. package/dist/cjs/src/entities/route.d.ts +0 -40
  44. package/dist/cjs/src/entities/route.js +0 -63
  45. package/dist/cjs/src/entities/route.js.map +0 -1
  46. package/dist/cjs/src/entities/route.test.d.ts +0 -1
  47. package/dist/cjs/src/entities/route.test.js +0 -192
  48. package/dist/cjs/src/entities/route.test.js.map +0 -1
  49. package/dist/cjs/src/entities/trade.d.ts +0 -127
  50. package/dist/cjs/src/entities/trade.js +0 -366
  51. package/dist/cjs/src/entities/trade.js.map +0 -1
  52. package/dist/cjs/src/entities/trade.test.d.ts +0 -1
  53. package/dist/cjs/src/entities/trade.test.js +0 -1267
  54. package/dist/cjs/src/entities/trade.test.js.map +0 -1
  55. package/dist/cjs/src/index.js +0 -18
  56. package/dist/cjs/src/index.js.map +0 -1
  57. package/dist/cjs/src/multicallExtended.js +0 -43
  58. package/dist/cjs/src/multicallExtended.js.map +0 -1
  59. package/dist/cjs/src/multicallExtended.test.d.ts +0 -1
  60. package/dist/cjs/src/multicallExtended.test.js +0 -22
  61. package/dist/cjs/src/multicallExtended.test.js.map +0 -1
  62. package/dist/cjs/src/paymentsExtended.d.ts +0 -15
  63. package/dist/cjs/src/paymentsExtended.js +0 -65
  64. package/dist/cjs/src/paymentsExtended.js.map +0 -1
  65. package/dist/cjs/src/paymentsExtended.test.d.ts +0 -1
  66. package/dist/cjs/src/paymentsExtended.test.js +0 -60
  67. package/dist/cjs/src/paymentsExtended.test.js.map +0 -1
  68. package/dist/cjs/src/swapRouter.js +0 -439
  69. package/dist/cjs/src/swapRouter.js.map +0 -1
  70. package/dist/cjs/src/swapRouter.test.d.ts +0 -1
  71. package/dist/cjs/src/swapRouter.test.js +0 -1161
  72. package/dist/cjs/src/swapRouter.test.js.map +0 -1
  73. package/dist/cjs/src/utils/TPool.js +0 -3
  74. package/dist/cjs/src/utils/TPool.js.map +0 -1
  75. package/dist/cjs/src/utils/encodeMixedRouteToPath.js +0 -90
  76. package/dist/cjs/src/utils/encodeMixedRouteToPath.js.map +0 -1
  77. package/dist/cjs/src/utils/encodeMixedRouteToPath.test.d.ts +0 -1
  78. package/dist/cjs/src/utils/encodeMixedRouteToPath.test.js +0 -136
  79. package/dist/cjs/src/utils/encodeMixedRouteToPath.test.js.map +0 -1
  80. package/dist/cjs/src/utils/index.d.ts +0 -16
  81. package/dist/cjs/src/utils/index.js +0 -51
  82. package/dist/cjs/src/utils/index.js.map +0 -1
  83. package/dist/cjs/src/utils/pathCurrency.js +0 -35
  84. package/dist/cjs/src/utils/pathCurrency.js.map +0 -1
  85. package/dist/cjs/src/utils/pathCurrency.test.d.ts +0 -1
  86. package/dist/cjs/src/utils/pathCurrency.test.js +0 -17
  87. package/dist/cjs/src/utils/pathCurrency.test.js.map +0 -1
  88. package/dist/esm/src/approveAndCall.d.ts +0 -33
  89. package/dist/esm/src/approveAndCall.js +0 -105
  90. package/dist/esm/src/approveAndCall.js.map +0 -1
  91. package/dist/esm/src/constants.d.ts +0 -13
  92. package/dist/esm/src/constants.js +0 -18
  93. package/dist/esm/src/constants.js.map +0 -1
  94. package/dist/esm/src/entities/mixedRoute/route.d.ts +0 -29
  95. package/dist/esm/src/entities/mixedRoute/route.js +0 -114
  96. package/dist/esm/src/entities/mixedRoute/route.js.map +0 -1
  97. package/dist/esm/src/entities/mixedRoute/route.test.d.ts +0 -1
  98. package/dist/esm/src/entities/mixedRoute/route.test.js +0 -467
  99. package/dist/esm/src/entities/mixedRoute/route.test.js.map +0 -1
  100. package/dist/esm/src/entities/mixedRoute/trade.js +0 -352
  101. package/dist/esm/src/entities/mixedRoute/trade.js.map +0 -1
  102. package/dist/esm/src/entities/mixedRoute/trade.test.d.ts +0 -1
  103. package/dist/esm/src/entities/mixedRoute/trade.test.js +0 -1008
  104. package/dist/esm/src/entities/mixedRoute/trade.test.js.map +0 -1
  105. package/dist/esm/src/entities/protocol.d.ts +0 -6
  106. package/dist/esm/src/entities/protocol.js +0 -8
  107. package/dist/esm/src/entities/protocol.js.map +0 -1
  108. package/dist/esm/src/entities/route.js +0 -55
  109. package/dist/esm/src/entities/route.js.map +0 -1
  110. package/dist/esm/src/entities/route.test.d.ts +0 -1
  111. package/dist/esm/src/entities/route.test.js +0 -190
  112. package/dist/esm/src/entities/route.test.js.map +0 -1
  113. package/dist/esm/src/entities/trade.js +0 -362
  114. package/dist/esm/src/entities/trade.js.map +0 -1
  115. package/dist/esm/src/entities/trade.test.d.ts +0 -1
  116. package/dist/esm/src/entities/trade.test.js +0 -1265
  117. package/dist/esm/src/entities/trade.test.js.map +0 -1
  118. package/dist/esm/src/index.d.ts +0 -14
  119. package/dist/esm/src/index.js +0 -15
  120. package/dist/esm/src/index.js.map +0 -1
  121. package/dist/esm/src/multicallExtended.d.ts +0 -11
  122. package/dist/esm/src/multicallExtended.js +0 -39
  123. package/dist/esm/src/multicallExtended.js.map +0 -1
  124. package/dist/esm/src/multicallExtended.test.d.ts +0 -1
  125. package/dist/esm/src/multicallExtended.test.js +0 -20
  126. package/dist/esm/src/multicallExtended.test.js.map +0 -1
  127. package/dist/esm/src/paymentsExtended.d.ts +0 -15
  128. package/dist/esm/src/paymentsExtended.js +0 -61
  129. package/dist/esm/src/paymentsExtended.js.map +0 -1
  130. package/dist/esm/src/paymentsExtended.test.d.ts +0 -1
  131. package/dist/esm/src/paymentsExtended.test.js +0 -57
  132. package/dist/esm/src/paymentsExtended.test.js.map +0 -1
  133. package/dist/esm/src/swapRouter.d.ts +0 -95
  134. package/dist/esm/src/swapRouter.js +0 -434
  135. package/dist/esm/src/swapRouter.js.map +0 -1
  136. package/dist/esm/src/swapRouter.test.d.ts +0 -1
  137. package/dist/esm/src/swapRouter.test.js +0 -1159
  138. package/dist/esm/src/swapRouter.test.js.map +0 -1
  139. package/dist/esm/src/utils/TPool.d.ts +0 -4
  140. package/dist/esm/src/utils/TPool.js +0 -2
  141. package/dist/esm/src/utils/TPool.js.map +0 -1
  142. package/dist/esm/src/utils/encodeMixedRouteToPath.d.ts +0 -9
  143. package/dist/esm/src/utils/encodeMixedRouteToPath.js +0 -86
  144. package/dist/esm/src/utils/encodeMixedRouteToPath.js.map +0 -1
  145. package/dist/esm/src/utils/encodeMixedRouteToPath.test.d.ts +0 -1
  146. package/dist/esm/src/utils/encodeMixedRouteToPath.test.js +0 -134
  147. package/dist/esm/src/utils/encodeMixedRouteToPath.test.js.map +0 -1
  148. package/dist/esm/src/utils/index.d.ts +0 -16
  149. package/dist/esm/src/utils/index.js +0 -46
  150. package/dist/esm/src/utils/index.js.map +0 -1
  151. package/dist/esm/src/utils/pathCurrency.d.ts +0 -4
  152. package/dist/esm/src/utils/pathCurrency.js +0 -30
  153. package/dist/esm/src/utils/pathCurrency.js.map +0 -1
  154. package/dist/esm/src/utils/pathCurrency.test.d.ts +0 -1
  155. package/dist/esm/src/utils/pathCurrency.test.js +0 -15
  156. package/dist/esm/src/utils/pathCurrency.test.js.map +0 -1
  157. package/dist/types/src/approveAndCall.d.ts +0 -33
  158. package/dist/types/src/entities/mixedRoute/route.test.d.ts +0 -1
  159. package/dist/types/src/entities/mixedRoute/trade.d.ts +0 -183
  160. package/dist/types/src/entities/mixedRoute/trade.test.d.ts +0 -1
  161. package/dist/types/src/entities/protocol.d.ts +0 -6
  162. package/dist/types/src/entities/route.d.ts +0 -40
  163. package/dist/types/src/entities/route.test.d.ts +0 -1
  164. package/dist/types/src/entities/trade.d.ts +0 -127
  165. package/dist/types/src/entities/trade.test.d.ts +0 -1
  166. package/dist/types/src/index.d.ts +0 -14
  167. package/dist/types/src/multicallExtended.d.ts +0 -11
  168. package/dist/types/src/multicallExtended.test.d.ts +0 -1
  169. package/dist/types/src/paymentsExtended.test.d.ts +0 -1
  170. package/dist/types/src/swapRouter.d.ts +0 -95
  171. package/dist/types/src/swapRouter.test.d.ts +0 -1
  172. package/dist/types/src/utils/TPool.d.ts +0 -4
  173. package/dist/types/src/utils/encodeMixedRouteToPath.d.ts +0 -9
  174. package/dist/types/src/utils/encodeMixedRouteToPath.test.d.ts +0 -1
  175. package/dist/types/src/utils/pathCurrency.d.ts +0 -4
  176. package/dist/types/src/utils/pathCurrency.test.d.ts +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"trade.test.js","sourceRoot":"","sources":["../../../../src/entities/trade.test.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- export * from './constants';
2
- export * from './approveAndCall';
3
- export * from './multicallExtended';
4
- export * from './paymentsExtended';
5
- export * from './swapRouter';
6
- export * from './entities/trade';
7
- export * from './entities/protocol';
8
- export * from './entities/route';
9
- export * from './entities/mixedRoute/route';
10
- export * from './entities/mixedRoute/trade';
11
- export * from './utils/encodeMixedRouteToPath';
12
- export * from './utils/TPool';
13
- export * from './utils/pathCurrency';
14
- export * from './utils';
@@ -1,15 +0,0 @@
1
- export * from './constants';
2
- export * from './approveAndCall';
3
- export * from './multicallExtended';
4
- export * from './paymentsExtended';
5
- export * from './swapRouter';
6
- export * from './entities/trade';
7
- export * from './entities/protocol';
8
- export * from './entities/route';
9
- export * from './entities/mixedRoute/route';
10
- export * from './entities/mixedRoute/trade';
11
- export * from './utils/encodeMixedRouteToPath';
12
- export * from './utils/TPool';
13
- export * from './utils/pathCurrency';
14
- export * from './utils';
15
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,eAAe,CAAA;AAC7B,cAAc,sBAAsB,CAAA;AACpC,cAAc,SAAS,CAAA"}
@@ -1,11 +0,0 @@
1
- import { Interface } from '@ethersproject/abi';
2
- import { BigintIsh } from '@uniswap/sdk-core';
3
- export type Validation = BigintIsh | string;
4
- export declare abstract class MulticallExtended {
5
- static INTERFACE: Interface;
6
- /**
7
- * Cannot be constructed.
8
- */
9
- private constructor();
10
- static encodeMulticall(calldatas: string | string[], validation?: Validation): string;
11
- }
@@ -1,39 +0,0 @@
1
- import { Interface } from '@ethersproject/abi';
2
- import { abi } from '@uniswap/swap-router-contracts/artifacts/contracts/interfaces/IMulticallExtended.sol/IMulticallExtended.json';
3
- import { Multicall, toHex } from '@uniswap/v3-sdk';
4
- function validateAndParseBytes32(bytes32) {
5
- if (!bytes32.match(/^0x[0-9a-fA-F]{64}$/)) {
6
- throw new Error(`${bytes32} is not valid bytes32.`);
7
- }
8
- return bytes32.toLowerCase();
9
- }
10
- export class MulticallExtended {
11
- /**
12
- * Cannot be constructed.
13
- */
14
- constructor() { }
15
- static encodeMulticall(calldatas, validation) {
16
- // if there's no validation, we can just fall back to regular multicall
17
- if (typeof validation === 'undefined') {
18
- return Multicall.encodeMulticall(calldatas);
19
- }
20
- // if there is validation, we have to normalize calldatas
21
- if (!Array.isArray(calldatas)) {
22
- calldatas = [calldatas];
23
- }
24
- // this means the validation value should be a previousBlockhash
25
- if (typeof validation === 'string' && validation.startsWith('0x')) {
26
- const previousBlockhash = validateAndParseBytes32(validation);
27
- return MulticallExtended.INTERFACE.encodeFunctionData('multicall(bytes32,bytes[])', [
28
- previousBlockhash,
29
- calldatas,
30
- ]);
31
- }
32
- else {
33
- const deadline = toHex(validation);
34
- return MulticallExtended.INTERFACE.encodeFunctionData('multicall(uint256,bytes[])', [deadline, calldatas]);
35
- }
36
- }
37
- }
38
- MulticallExtended.INTERFACE = new Interface(abi);
39
- //# sourceMappingURL=multicallExtended.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"multicallExtended.js","sourceRoot":"","sources":["../../../src/multicallExtended.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAE9C,OAAO,EAAE,GAAG,EAAE,MAAM,8GAA8G,CAAA;AAClI,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAKlD,SAAS,uBAAuB,CAAC,OAAe;IAC9C,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE;QACzC,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,wBAAwB,CAAC,CAAA;KACpD;IAED,OAAO,OAAO,CAAC,WAAW,EAAE,CAAA;AAC9B,CAAC;AAED,MAAM,OAAgB,iBAAiB;IAGrC;;OAEG;IACH,gBAAuB,CAAC;IAEjB,MAAM,CAAC,eAAe,CAAC,SAA4B,EAAE,UAAuB;QACjF,uEAAuE;QACvE,IAAI,OAAO,UAAU,KAAK,WAAW,EAAE;YACrC,OAAO,SAAS,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;SAC5C;QAED,yDAAyD;QACzD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC7B,SAAS,GAAG,CAAC,SAAS,CAAC,CAAA;SACxB;QAED,gEAAgE;QAChE,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YACjE,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAA;YAC7D,OAAO,iBAAiB,CAAC,SAAS,CAAC,kBAAkB,CAAC,4BAA4B,EAAE;gBAClF,iBAAiB;gBACjB,SAAS;aACV,CAAC,CAAA;SACH;aAAM;YACL,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAAC,CAAA;YAClC,OAAO,iBAAiB,CAAC,SAAS,CAAC,kBAAkB,CAAC,4BAA4B,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAA;SAC3G;IACH,CAAC;;AA7Ba,2BAAS,GAAc,IAAI,SAAS,CAAC,GAAG,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,20 +0,0 @@
1
- import { MulticallExtended } from './multicallExtended';
2
- describe('MulticallExtended', () => {
3
- it('works with no validation', () => {
4
- const calldata = MulticallExtended.encodeMulticall('0x01');
5
- expect(calldata).toBe('0x01');
6
- });
7
- it('works with deadline as string', () => {
8
- const calldata = MulticallExtended.encodeMulticall('0x01', '123');
9
- expect(calldata).toBe('0x5ae401dc000000000000000000000000000000000000000000000000000000000000007b00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000000000');
10
- });
11
- it('works with deadline as number', () => {
12
- const calldata = MulticallExtended.encodeMulticall('0x01', 123);
13
- expect(calldata).toBe('0x5ae401dc000000000000000000000000000000000000000000000000000000000000007b00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000000000');
14
- });
15
- it('works with previous block hash', () => {
16
- const calldata = MulticallExtended.encodeMulticall('0x01', '0xaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa');
17
- expect(calldata).toBe('0x1f0464d1aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000010100000000000000000000000000000000000000000000000000000000000000');
18
- });
19
- });
20
- //# sourceMappingURL=multicallExtended.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"multicallExtended.test.js","sourceRoot":"","sources":["../../../src/multicallExtended.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAA;QAC1D,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC/B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACjE,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CACnB,4YAA4Y,CAC7Y,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+BAA+B,EAAE,GAAG,EAAE;QACvC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAC/D,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CACnB,4YAA4Y,CAC7Y,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gCAAgC,EAAE,GAAG,EAAE;QACxC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,eAAe,CAChD,MAAM,EACN,oEAAoE,CACrE,CAAA;QACD,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CACnB,4YAA4Y,CAC7Y,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -1,15 +0,0 @@
1
- import { Interface } from '@ethersproject/abi';
2
- import { Token } from '@uniswap/sdk-core';
3
- import { FeeOptions } from '@uniswap/v3-sdk';
4
- import JSBI from 'jsbi';
5
- export declare abstract class PaymentsExtended {
6
- static INTERFACE: Interface;
7
- /**
8
- * Cannot be constructed.
9
- */
10
- private constructor();
11
- static encodeUnwrapWETH9(amountMinimum: JSBI, recipient?: string, feeOptions?: FeeOptions): string;
12
- static encodeSweepToken(token: Token, amountMinimum: JSBI, recipient?: string, feeOptions?: FeeOptions): string;
13
- static encodePull(token: Token, amount: JSBI): string;
14
- static encodeWrapETH(amount: JSBI): string;
15
- }
@@ -1,61 +0,0 @@
1
- import { Interface } from '@ethersproject/abi';
2
- import { validateAndParseAddress } from '@uniswap/sdk-core';
3
- import { abi } from '@uniswap/swap-router-contracts/artifacts/contracts/interfaces/IPeripheryPaymentsWithFeeExtended.sol/IPeripheryPaymentsWithFeeExtended.json';
4
- import { Payments, toHex } from '@uniswap/v3-sdk';
5
- function encodeFeeBips(fee) {
6
- return toHex(fee.multiply(10000).quotient);
7
- }
8
- export class PaymentsExtended {
9
- /**
10
- * Cannot be constructed.
11
- */
12
- constructor() { }
13
- static encodeUnwrapWETH9(amountMinimum, recipient, feeOptions) {
14
- // if there's a recipient, just pass it along
15
- if (typeof recipient === 'string') {
16
- return Payments.encodeUnwrapWETH9(amountMinimum, recipient, feeOptions);
17
- }
18
- if (!!feeOptions) {
19
- const feeBips = encodeFeeBips(feeOptions.fee);
20
- const feeRecipient = validateAndParseAddress(feeOptions.recipient);
21
- return PaymentsExtended.INTERFACE.encodeFunctionData('unwrapWETH9WithFee(uint256,uint256,address)', [
22
- toHex(amountMinimum),
23
- feeBips,
24
- feeRecipient,
25
- ]);
26
- }
27
- else {
28
- return PaymentsExtended.INTERFACE.encodeFunctionData('unwrapWETH9(uint256)', [toHex(amountMinimum)]);
29
- }
30
- }
31
- static encodeSweepToken(token, amountMinimum, recipient, feeOptions) {
32
- // if there's a recipient, just pass it along
33
- if (typeof recipient === 'string') {
34
- return Payments.encodeSweepToken(token, amountMinimum, recipient, feeOptions);
35
- }
36
- if (!!feeOptions) {
37
- const feeBips = encodeFeeBips(feeOptions.fee);
38
- const feeRecipient = validateAndParseAddress(feeOptions.recipient);
39
- return PaymentsExtended.INTERFACE.encodeFunctionData('sweepTokenWithFee(address,uint256,uint256,address)', [
40
- token.address,
41
- toHex(amountMinimum),
42
- feeBips,
43
- feeRecipient,
44
- ]);
45
- }
46
- else {
47
- return PaymentsExtended.INTERFACE.encodeFunctionData('sweepToken(address,uint256)', [
48
- token.address,
49
- toHex(amountMinimum),
50
- ]);
51
- }
52
- }
53
- static encodePull(token, amount) {
54
- return PaymentsExtended.INTERFACE.encodeFunctionData('pull', [token.address, toHex(amount)]);
55
- }
56
- static encodeWrapETH(amount) {
57
- return PaymentsExtended.INTERFACE.encodeFunctionData('wrapETH', [toHex(amount)]);
58
- }
59
- }
60
- PaymentsExtended.INTERFACE = new Interface(abi);
61
- //# sourceMappingURL=paymentsExtended.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"paymentsExtended.js","sourceRoot":"","sources":["../../../src/paymentsExtended.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAkB,uBAAuB,EAAE,MAAM,mBAAmB,CAAA;AAC3E,OAAO,EAAE,GAAG,EAAE,MAAM,4IAA4I,CAAA;AAChK,OAAO,EAAc,QAAQ,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAG7D,SAAS,aAAa,CAAC,GAAY;IACjC,OAAO,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAM,CAAC,CAAC,QAAQ,CAAC,CAAA;AAC7C,CAAC;AAED,MAAM,OAAgB,gBAAgB;IAGpC;;OAEG;IACH,gBAAuB,CAAC;IAEjB,MAAM,CAAC,iBAAiB,CAAC,aAAmB,EAAE,SAAkB,EAAE,UAAuB;QAC9F,6CAA6C;QAC7C,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;YACjC,OAAO,QAAQ,CAAC,iBAAiB,CAAC,aAAa,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;SACxE;QAED,IAAI,CAAC,CAAC,UAAU,EAAE;YAChB,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;YAC7C,MAAM,YAAY,GAAG,uBAAuB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;YAElE,OAAO,gBAAgB,CAAC,SAAS,CAAC,kBAAkB,CAAC,6CAA6C,EAAE;gBAClG,KAAK,CAAC,aAAa,CAAC;gBACpB,OAAO;gBACP,YAAY;aACb,CAAC,CAAA;SACH;aAAM;YACL,OAAO,gBAAgB,CAAC,SAAS,CAAC,kBAAkB,CAAC,sBAAsB,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;SACrG;IACH,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAC5B,KAAY,EACZ,aAAmB,EACnB,SAAkB,EAClB,UAAuB;QAEvB,6CAA6C;QAC7C,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE;YACjC,OAAO,QAAQ,CAAC,gBAAgB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;SAC9E;QAED,IAAI,CAAC,CAAC,UAAU,EAAE;YAChB,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;YAC7C,MAAM,YAAY,GAAG,uBAAuB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;YAElE,OAAO,gBAAgB,CAAC,SAAS,CAAC,kBAAkB,CAAC,oDAAoD,EAAE;gBACzG,KAAK,CAAC,OAAO;gBACb,KAAK,CAAC,aAAa,CAAC;gBACpB,OAAO;gBACP,YAAY;aACb,CAAC,CAAA;SACH;aAAM;YACL,OAAO,gBAAgB,CAAC,SAAS,CAAC,kBAAkB,CAAC,6BAA6B,EAAE;gBAClF,KAAK,CAAC,OAAO;gBACb,KAAK,CAAC,aAAa,CAAC;aACrB,CAAC,CAAA;SACH;IACH,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,KAAY,EAAE,MAAY;QACjD,OAAO,gBAAgB,CAAC,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAC9F,CAAC;IAEM,MAAM,CAAC,aAAa,CAAC,MAAY;QACtC,OAAO,gBAAgB,CAAC,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAClF,CAAC;;AA9Da,0BAAS,GAAc,IAAI,SAAS,CAAC,GAAG,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,57 +0,0 @@
1
- import { Percent, Token } from '@uniswap/sdk-core';
2
- import JSBI from 'jsbi';
3
- import { PaymentsExtended } from './paymentsExtended';
4
- const recipient = '0x0000000000000000000000000000000000000003';
5
- const amount = JSBI.BigInt(123);
6
- const feeOptions = {
7
- fee: new Percent(1, 1000),
8
- recipient: '0x0000000000000000000000000000000000000009',
9
- };
10
- const token = new Token(1, '0x0000000000000000000000000000000000000001', 18, 't0', 'token0');
11
- describe('PaymentsExtended', () => {
12
- describe('#encodeUnwrapWETH9', () => {
13
- it('works without recipient', () => {
14
- const calldata = PaymentsExtended.encodeUnwrapWETH9(amount);
15
- expect(calldata).toBe('0x49616997000000000000000000000000000000000000000000000000000000000000007b');
16
- });
17
- it('works with recipient', () => {
18
- const calldata = PaymentsExtended.encodeUnwrapWETH9(amount, recipient);
19
- expect(calldata).toBe('0x49404b7c000000000000000000000000000000000000000000000000000000000000007b0000000000000000000000000000000000000000000000000000000000000003');
20
- });
21
- it('works with recipient and with fee', () => {
22
- const calldata = PaymentsExtended.encodeUnwrapWETH9(amount, recipient, feeOptions);
23
- expect(calldata).toBe('0x9b2c0a37000000000000000000000000000000000000000000000000000000000000007b0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000009');
24
- });
25
- it('works without recipient and with fee', () => {
26
- const calldata = PaymentsExtended.encodeUnwrapWETH9(amount, undefined, feeOptions);
27
- expect(calldata).toBe('0xd4ef38de000000000000000000000000000000000000000000000000000000000000007b000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000009');
28
- });
29
- });
30
- describe('#encodeSweepToken', () => {
31
- it('works without recipient', () => {
32
- const calldata = PaymentsExtended.encodeSweepToken(token, amount);
33
- expect(calldata).toBe('0xe90a182f0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007b');
34
- });
35
- it('works with recipient', () => {
36
- const calldata = PaymentsExtended.encodeSweepToken(token, amount, recipient);
37
- expect(calldata).toBe('0xdf2ab5bb0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007b0000000000000000000000000000000000000000000000000000000000000003');
38
- });
39
- it('works with recipient and with fee', () => {
40
- const calldata = PaymentsExtended.encodeSweepToken(token, amount, recipient, feeOptions);
41
- expect(calldata).toBe('0xe0e189a00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007b0000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000009');
42
- });
43
- it('works without recipient and with fee', () => {
44
- const calldata = PaymentsExtended.encodeSweepToken(token, amount, undefined, feeOptions);
45
- expect(calldata).toBe('0x3068c5540000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007b000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000009');
46
- });
47
- });
48
- it('#encodePull', () => {
49
- const calldata = PaymentsExtended.encodePull(token, amount);
50
- expect(calldata).toBe('0xf2d5d56b0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000007b');
51
- });
52
- it('#encodeWrapETH', () => {
53
- const calldata = PaymentsExtended.encodeWrapETH(amount);
54
- expect(calldata).toBe('0x1c58db4f000000000000000000000000000000000000000000000000000000000000007b');
55
- });
56
- });
57
- //# sourceMappingURL=paymentsExtended.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"paymentsExtended.test.js","sourceRoot":"","sources":["../../../src/paymentsExtended.test.ts"],"names":[],"mappings":"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"}
@@ -1,95 +0,0 @@
1
- import { Interface } from '@ethersproject/abi';
2
- import { Currency, Percent, TradeType } from '@uniswap/sdk-core';
3
- import { Trade as V2Trade } from '@uniswap/v2-sdk';
4
- import { FeeOptions, MethodParameters, PermitOptions, Position, Trade as V3Trade } from '@uniswap/v3-sdk';
5
- import { ApprovalTypes, CondensedAddLiquidityOptions } from './approveAndCall';
6
- import { Trade } from './entities/trade';
7
- import { Validation } from './multicallExtended';
8
- import { MixedRouteTrade } from './entities/mixedRoute/trade';
9
- /**
10
- * Options for producing the arguments to send calls to the router.
11
- */
12
- export interface SwapOptions {
13
- /**
14
- * How much the execution price is allowed to move unfavorably from the trade execution price.
15
- */
16
- slippageTolerance: Percent;
17
- /**
18
- * The account that should receive the output. If omitted, output is sent to msg.sender.
19
- */
20
- recipient?: string;
21
- /**
22
- * Either deadline (when the transaction expires, in epoch seconds), or previousBlockhash.
23
- */
24
- deadlineOrPreviousBlockhash?: Validation;
25
- /**
26
- * The optional permit parameters for spending the input.
27
- */
28
- inputTokenPermit?: PermitOptions;
29
- /**
30
- * Optional information for taking a fee on output.
31
- */
32
- fee?: FeeOptions;
33
- }
34
- export interface SwapAndAddOptions extends SwapOptions {
35
- /**
36
- * The optional permit parameters for pulling in remaining output token.
37
- */
38
- outputTokenPermit?: PermitOptions;
39
- }
40
- type AnyTradeType = Trade<Currency, Currency, TradeType> | V2Trade<Currency, Currency, TradeType> | V3Trade<Currency, Currency, TradeType> | MixedRouteTrade<Currency, Currency, TradeType> | (V2Trade<Currency, Currency, TradeType> | V3Trade<Currency, Currency, TradeType> | MixedRouteTrade<Currency, Currency, TradeType>)[];
41
- /**
42
- * Represents the Uniswap V2 + V3 SwapRouter02, and has static methods for helping execute trades.
43
- */
44
- export declare abstract class SwapRouter {
45
- static INTERFACE: Interface;
46
- /**
47
- * Cannot be constructed.
48
- */
49
- private constructor();
50
- /**
51
- * @notice Generates the calldata for a Swap with a V2 Route.
52
- * @param trade The V2Trade to encode.
53
- * @param options SwapOptions to use for the trade.
54
- * @param routerMustCustody Flag for whether funds should be sent to the router
55
- * @param performAggregatedSlippageCheck Flag for whether we want to perform an aggregated slippage check
56
- * @returns A string array of calldatas for the trade.
57
- */
58
- private static encodeV2Swap;
59
- /**
60
- * @notice Generates the calldata for a Swap with a V3 Route.
61
- * @param trade The V3Trade to encode.
62
- * @param options SwapOptions to use for the trade.
63
- * @param routerMustCustody Flag for whether funds should be sent to the router
64
- * @param performAggregatedSlippageCheck Flag for whether we want to perform an aggregated slippage check
65
- * @returns A string array of calldatas for the trade.
66
- */
67
- private static encodeV3Swap;
68
- /**
69
- * @notice Generates the calldata for a MixedRouteSwap. Since single hop routes are not MixedRoutes, we will instead generate
70
- * them via the existing encodeV3Swap and encodeV2Swap methods.
71
- * @param trade The MixedRouteTrade to encode.
72
- * @param options SwapOptions to use for the trade.
73
- * @param routerMustCustody Flag for whether funds should be sent to the router
74
- * @param performAggregatedSlippageCheck Flag for whether we want to perform an aggregated slippage check
75
- * @returns A string array of calldatas for the trade.
76
- */
77
- private static encodeMixedRouteSwap;
78
- private static encodeSwaps;
79
- /**
80
- * Produces the on-chain method name to call and the hex encoded parameters to pass as arguments for a given trade.
81
- * @param trades to produce call parameters for
82
- * @param options options for the call parameters
83
- */
84
- static swapCallParameters(trades: Trade<Currency, Currency, TradeType> | V2Trade<Currency, Currency, TradeType> | V3Trade<Currency, Currency, TradeType> | MixedRouteTrade<Currency, Currency, TradeType> | (V2Trade<Currency, Currency, TradeType> | V3Trade<Currency, Currency, TradeType> | MixedRouteTrade<Currency, Currency, TradeType>)[], options: SwapOptions): MethodParameters;
85
- /**
86
- * Produces the on-chain method name to call and the hex encoded parameters to pass as arguments for a given trade.
87
- * @param trades to produce call parameters for
88
- * @param options options for the call parameters
89
- */
90
- static swapAndAddCallParameters(trades: AnyTradeType, options: SwapAndAddOptions, position: Position, addLiquidityOptions: CondensedAddLiquidityOptions, tokenInApprovalType: ApprovalTypes, tokenOutApprovalType: ApprovalTypes): MethodParameters;
91
- private static riskOfPartialFill;
92
- private static v3TradeWithHighPriceImpact;
93
- private static getPositionAmounts;
94
- }
95
- export {};