@uniswap/universal-router-sdk 4.16.0 → 4.18.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.
@@ -1157,10 +1157,12 @@ var RouterTradeAdapter = /*#__PURE__*/function () {
1157
1157
  var outputAmount = sdkCore.CurrencyAmount.fromRawAmount(parsedCurrencyOut, rawAmountOut);
1158
1158
  var isOnlyV2 = RouterTradeAdapter.isVersionedRoute(exports.PoolType.V2Pool, subRoute);
1159
1159
  var isOnlyV3 = RouterTradeAdapter.isVersionedRoute(exports.PoolType.V3Pool, subRoute);
1160
+ var isOnlyV4 = RouterTradeAdapter.isVersionedRoute(exports.PoolType.V4Pool, subRoute);
1160
1161
  return {
1161
- routev3: isOnlyV3 ? new v3Sdk.Route(subRoute.map(RouterTradeAdapter.toPool), parsedCurrencyIn, parsedCurrencyOut) : null,
1162
+ routev4: isOnlyV4 ? new v4Sdk.Route(subRoute.map(RouterTradeAdapter.toV4Pool), parsedCurrencyIn, parsedCurrencyOut) : null,
1163
+ routev3: isOnlyV3 ? new v3Sdk.Route(subRoute.map(RouterTradeAdapter.toV3Pool), parsedCurrencyIn, parsedCurrencyOut) : null,
1162
1164
  routev2: isOnlyV2 ? new v2Sdk.Route(subRoute.map(RouterTradeAdapter.toPair), parsedCurrencyIn, parsedCurrencyOut) : null,
1163
- mixedRoute: !isOnlyV3 && !isOnlyV2 ? new routerSdk.MixedRouteSDK(subRoute.map(RouterTradeAdapter.toPoolOrPair), parsedCurrencyIn, parsedCurrencyOut) : null,
1165
+ mixedRoute: !isOnlyV4 && !isOnlyV3 && !isOnlyV2 ? new routerSdk.MixedRouteSDK(subRoute.map(RouterTradeAdapter.toPoolOrPair), parsedCurrencyIn, parsedCurrencyOut) : null,
1164
1166
  inputAmount: inputAmount,
1165
1167
  outputAmount: outputAmount
1166
1168
  };
@@ -1184,8 +1186,15 @@ var RouterTradeAdapter = /*#__PURE__*/function () {
1184
1186
  outputAmount: route.outputAmount
1185
1187
  };
1186
1188
  }),
1187
- // TODO: ROUTE-219 - Support v4 trade in universal-router sdk
1188
- v4Routes: [],
1189
+ v4Routes: typedRoutes.filter(function (route) {
1190
+ return route.routev4;
1191
+ }).map(function (route) {
1192
+ return {
1193
+ routev4: route.routev4,
1194
+ inputAmount: route.inputAmount,
1195
+ outputAmount: route.outputAmount
1196
+ };
1197
+ }),
1189
1198
  mixedRoutes: typedRoutes.filter(function (route) {
1190
1199
  return route.mixedRoute;
1191
1200
  }).map(function (route) {
@@ -1213,7 +1222,7 @@ var RouterTradeAdapter = /*#__PURE__*/function () {
1213
1222
  sellFeeBps = token.sellFeeBps;
1214
1223
  return new sdkCore.Token(chainId, address, parseInt(decimals.toString()), symbol, /* name */undefined, false, buyFeeBps ? ethers.BigNumber.from(buyFeeBps) : undefined, sellFeeBps ? ethers.BigNumber.from(sellFeeBps) : undefined);
1215
1224
  };
1216
- RouterTradeAdapter.toPool = function toPool(_ref) {
1225
+ RouterTradeAdapter.toV3Pool = function toV3Pool(_ref) {
1217
1226
  var fee = _ref.fee,
1218
1227
  sqrtRatioX96 = _ref.sqrtRatioX96,
1219
1228
  liquidity = _ref.liquidity,
@@ -1222,6 +1231,11 @@ var RouterTradeAdapter = /*#__PURE__*/function () {
1222
1231
  tokenOut = _ref.tokenOut;
1223
1232
  return new v3Sdk.Pool(RouterTradeAdapter.toToken(tokenIn), RouterTradeAdapter.toToken(tokenOut), parseInt(fee), sqrtRatioX96, liquidity, parseInt(tickCurrent));
1224
1233
  };
1234
+ RouterTradeAdapter.toV4Pool = function toV4Pool(pool) {
1235
+ var parsedCurrencyIn = RouterTradeAdapter.toCurrency(isNativeCurrency(pool.tokenIn.address), pool.tokenIn);
1236
+ var parsedCurrencyOut = RouterTradeAdapter.toCurrency(isNativeCurrency(pool.tokenOut.address), pool.tokenOut);
1237
+ return new v4Sdk.Pool(parsedCurrencyIn, parsedCurrencyOut, parseInt(pool.fee), parseInt(pool.tickSpacing), pool.hooks, pool.sqrtRatioX96, pool.liquidity, parseInt(pool.tickCurrent));
1238
+ };
1225
1239
  RouterTradeAdapter.isVersionedRoute = function isVersionedRoute(type, route) {
1226
1240
  return route.every(function (pool) {
1227
1241
  return pool.type === type;
@@ -1230,7 +1244,16 @@ var RouterTradeAdapter = /*#__PURE__*/function () {
1230
1244
  return RouterTradeAdapter;
1231
1245
  }();
1232
1246
  RouterTradeAdapter.toPoolOrPair = function (pool) {
1233
- return pool.type === exports.PoolType.V3Pool ? RouterTradeAdapter.toPool(pool) : RouterTradeAdapter.toPair(pool);
1247
+ switch (pool.type) {
1248
+ case exports.PoolType.V4Pool:
1249
+ return RouterTradeAdapter.toV4Pool(pool);
1250
+ case exports.PoolType.V3Pool:
1251
+ return RouterTradeAdapter.toV3Pool(pool);
1252
+ case exports.PoolType.V2Pool:
1253
+ return RouterTradeAdapter.toPair(pool);
1254
+ default:
1255
+ throw new Error('Invalid pool type');
1256
+ }
1234
1257
  };
1235
1258
  RouterTradeAdapter.toPair = function (_ref2) {
1236
1259
  var reserve0 = _ref2.reserve0,