@dzapio/sdk 1.0.1

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 (79) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/LICENSE +21 -0
  3. package/README.md +355 -0
  4. package/dist/api/index.d.ts +19 -0
  5. package/dist/artifacts/ERC20Permit.d.ts +336 -0
  6. package/dist/artifacts/Permit2.d.ts +700 -0
  7. package/dist/artifacts/default/DZapCoreAbi.d.ts +2 -0
  8. package/dist/artifacts/default/DZapDcaAbi.d.ts +2 -0
  9. package/dist/artifacts/default/Permit2Abi.d.ts +70 -0
  10. package/dist/artifacts/default/erc20Abi.d.ts +165 -0
  11. package/dist/artifacts/default/index.d.ts +5 -0
  12. package/dist/artifacts/index.d.ts +2 -0
  13. package/dist/artifacts/staging/DZapCoreSwapAbi.d.ts +2 -0
  14. package/dist/artifacts/staging/index.d.ts +2 -0
  15. package/dist/axios/baseClient.d.ts +2 -0
  16. package/dist/axios/index.d.ts +8 -0
  17. package/dist/config.d.ts +16 -0
  18. package/dist/constants/address.d.ts +13 -0
  19. package/dist/constants/approval.d.ts +5 -0
  20. package/dist/constants/axios.d.ts +2 -0
  21. package/dist/constants/chains.d.ts +16 -0
  22. package/dist/constants/contract.d.ts +6 -0
  23. package/dist/constants/erc20.d.ts +22 -0
  24. package/dist/constants/httpMethods.d.ts +2 -0
  25. package/dist/constants/index.d.ts +43 -0
  26. package/dist/constants/permit.d.ts +5 -0
  27. package/dist/constants/permit2.d.ts +2 -0
  28. package/dist/constants/rpc.d.ts +2 -0
  29. package/dist/constants/urlConstants.d.ts +13 -0
  30. package/dist/dZapClient/index.d.ts +383 -0
  31. package/dist/enums/index.d.ts +36 -0
  32. package/dist/index.d.ts +15 -0
  33. package/dist/index.js +2 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/index.m.js +2 -0
  36. package/dist/index.m.js.map +1 -0
  37. package/dist/index.umd.js +2 -0
  38. package/dist/index.umd.js.map +1 -0
  39. package/dist/service/cache/cacheProvider.d.ts +10 -0
  40. package/dist/service/cache/constant.d.ts +2 -0
  41. package/dist/service/price/index.d.ts +16 -0
  42. package/dist/service/price/provider/coingecko/config.d.ts +6 -0
  43. package/dist/service/price/provider/coingecko/index.d.ts +9 -0
  44. package/dist/service/price/provider/defiLlama/config.d.ts +3 -0
  45. package/dist/service/price/provider/defiLlama/index.d.ts +9 -0
  46. package/dist/service/price/provider/defiLlama/types.d.ts +11 -0
  47. package/dist/service/price/provider/dzap/index.d.ts +6 -0
  48. package/dist/service/price/types/IPriceProvider.d.ts +14 -0
  49. package/dist/transactionHandlers/generic.d.ts +24 -0
  50. package/dist/transactionHandlers/permit.d.ts +58 -0
  51. package/dist/transactionHandlers/trade.d.ts +11 -0
  52. package/dist/transactionHandlers/zap.d.ts +37 -0
  53. package/dist/types/axiosClient.d.ts +6 -0
  54. package/dist/types/btc.d.ts +45 -0
  55. package/dist/types/chains.d.ts +2 -0
  56. package/dist/types/contract.d.ts +14 -0
  57. package/dist/types/eip-2612.d.ts +6 -0
  58. package/dist/types/index.d.ts +317 -0
  59. package/dist/types/zap/index.d.ts +65 -0
  60. package/dist/types/zap/path.d.ts +36 -0
  61. package/dist/types/zap/step.d.ts +15 -0
  62. package/dist/utils/amount.d.ts +82 -0
  63. package/dist/utils/axios.d.ts +13 -0
  64. package/dist/utils/chains.d.ts +2 -0
  65. package/dist/utils/date.d.ts +1 -0
  66. package/dist/utils/erc20.d.ts +61 -0
  67. package/dist/utils/errors.d.ts +16 -0
  68. package/dist/utils/index.d.ts +3940 -0
  69. package/dist/utils/multicall.d.ts +12 -0
  70. package/dist/utils/permit/permit2Methods.d.ts +32 -0
  71. package/dist/utils/permit/permitMethods.d.ts +29 -0
  72. package/dist/utils/signTypedData.d.ts +11 -0
  73. package/dist/utils/tokens.d.ts +7 -0
  74. package/dist/utils/updateQuotes.d.ts +3 -0
  75. package/dist/zap/constants/index.d.ts +2 -0
  76. package/dist/zap/constants/path.d.ts +8 -0
  77. package/dist/zap/constants/step.d.ts +3 -0
  78. package/dist/zap/constants/urls.d.ts +3 -0
  79. package/package.json +115 -0
package/dist/index.js ADDED
@@ -0,0 +1,2 @@
1
+ var e=require("viem"),t=require("ethers"),n=require("viem/chains"),a=require("axios"),r=require("node-cache"),s=require("decimal.js");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function o(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach(function(n){if("default"!==n){var a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:function(){return e[n]}})}}),t.default=e,t}var p,u,d,y,m,l,c=/*#__PURE__*/o(n),T=/*#__PURE__*/i(a),f=/*#__PURE__*/i(r),v=/*#__PURE__*/i(s);!function(e){e.production="production",e.development="development"}(p||(p={})),function(e){e[e.PERMIT=0]="PERMIT",e[e.PERMIT2=1]="PERMIT2"}(u||(u={})),exports.PermitType=void 0,(d=exports.PermitType||(exports.PermitType={}))[d.PERMIT=0]="PERMIT",d[d.PERMIT2_TRANSFER_FROM=1]="PERMIT2_TRANSFER_FROM",d[d.PERMIT2_APPROVE=2]="PERMIT2_APPROVE",exports.TxnStatus=void 0,(y=exports.TxnStatus||(exports.TxnStatus={})).mining="mining",y.success="success",y.rejected="rejected",y.error="error",y.reverted="reverted",y.pendingWalletConfirmation="pendingWalletConfirmation",y.partialSuccess="partialSuccess",function(e){e.V1="v1",e.V1_2="v1.2",e.V2="v2"}(m||(m={})),exports.StatusCodes=void 0,(l=exports.StatusCodes||(exports.StatusCodes={}))[l.UserRejectedRequest=4001]="UserRejectedRequest",l[l.Success=200]="Success",l[l.FunctionNotFound=32771]="FunctionNotFound",l[l.Error=500]="Error",l[l.WalletRPCFailure=429]="WalletRPCFailure",l[l.SimulationFailure=417]="SimulationFailure",l[l.ContractExecutionError=-500]="ContractExecutionError";var b={permit2:"permit2",erc20:"erc20"},h={trade:"trade",dca:"dca",zap:"zap"},g=e.encodeAbiParameters(e.parseAbiParameters("uint8, bytes"),[exports.PermitType.PERMIT,"0x"]),x=e.encodeAbiParameters(e.parseAbiParameters("uint8, bytes"),[exports.PermitType.PERMIT2_APPROVE,"0x"]),A=1800;function w(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,a=Array(t);n<t;n++)a[n]=e[n];return a}function I(){return I=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var a in n)({}).hasOwnProperty.call(n,a)&&(e[a]=n[a])}return e},I.apply(null,arguments)}function S(e){var t=function(e){if("object"!=typeof e||!e)return e;var t=e[Symbol.toPrimitive];if(void 0!==t){var n=t.call(e,"string");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:t+""}var P,C,_=[{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"AllowanceExpired",type:"error"},{inputs:[],name:"ExcessiveInvalidation",type:"error"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"InsufficientAllowance",type:"error"},{inputs:[{internalType:"uint256",name:"maxAmount",type:"uint256"}],name:"InvalidAmount",type:"error"},{inputs:[],name:"InvalidContractSignature",type:"error"},{inputs:[],name:"InvalidNonce",type:"error"},{inputs:[],name:"InvalidSignature",type:"error"},{inputs:[],name:"InvalidSignatureLength",type:"error"},{inputs:[],name:"InvalidSigner",type:"error"},{inputs:[],name:"LengthMismatch",type:"error"},{inputs:[{internalType:"uint256",name:"signatureDeadline",type:"uint256"}],name:"SignatureExpired",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint160",name:"amount",type:"uint160"},{indexed:!1,internalType:"uint48",name:"expiration",type:"uint48"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"address",name:"spender",type:"address"}],name:"Lockdown",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint48",name:"newNonce",type:"uint48"},{indexed:!1,internalType:"uint48",name:"oldNonce",type:"uint48"}],name:"NonceInvalidation",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint160",name:"amount",type:"uint160"},{indexed:!1,internalType:"uint48",name:"expiration",type:"uint48"},{indexed:!1,internalType:"uint48",name:"nonce",type:"uint48"}],name:"Permit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"uint256",name:"word",type:"uint256"},{indexed:!1,internalType:"uint256",name:"mask",type:"uint256"}],name:"UnorderedNonceInvalidation",type:"event"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"allowance",outputs:[{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"}],name:"approve",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint48",name:"newNonce",type:"uint48"}],name:"invalidateNonces",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"wordPos",type:"uint256"},{internalType:"uint256",name:"mask",type:"uint256"}],name:"invalidateUnorderedNonces",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"}],internalType:"struct IAllowanceTransfer.TokenSpenderPair[]",name:"approvals",type:"tuple[]"}],name:"lockdown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"}],name:"nonceBitmap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],internalType:"struct IAllowanceTransfer.PermitDetails[]",name:"details",type:"tuple[]"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"sigDeadline",type:"uint256"}],internalType:"struct IAllowanceTransfer.PermitBatch",name:"permitBatch",type:"tuple"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],internalType:"struct IAllowanceTransfer.PermitDetails",name:"details",type:"tuple"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"sigDeadline",type:"uint256"}],internalType:"struct IAllowanceTransfer.PermitSingle",name:"permitSingle",type:"tuple"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions",name:"permitted",type:"tuple"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails",name:"transferDetails",type:"tuple"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions[]",name:"permitted",type:"tuple[]"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitBatchTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails[]",name:"transferDetails",type:"tuple[]"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions",name:"permitted",type:"tuple"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails",name:"transferDetails",type:"tuple"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes32",name:"witness",type:"bytes32"},{internalType:"string",name:"witnessTypeString",type:"string"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitWitnessTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions[]",name:"permitted",type:"tuple[]"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitBatchTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails[]",name:"transferDetails",type:"tuple[]"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes32",name:"witness",type:"bytes32"},{internalType:"string",name:"witnessTypeString",type:"string"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitWitnessTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"address",name:"token",type:"address"}],internalType:"struct IAllowanceTransfer.AllowanceTransferDetails[]",name:"transferDetails",type:"tuple[]"}],name:"transferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"address",name:"token",type:"address"}],name:"transferFrom",outputs:[],stateMutability:"nonpayable",type:"function"}],k=[{constant:!0,inputs:[],name:"name",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_spender",type:"address"},{name:"_value",type:"uint256"}],name:"approve",outputs:[],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"totalSupply",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_from",type:"address"},{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transferFrom",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{name:"",type:"uint8"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[{name:"_owner",type:"address"}],name:"balanceOf",outputs:[{name:"balance",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],payable:!1,stateMutability:"view",type:"function"},{constant:!1,inputs:[{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transfer",outputs:[{name:"",type:"bool"}],payable:!1,stateMutability:"nonpayable",type:"function"},{constant:!0,inputs:[{name:"_owner",type:"address"},{name:"_spender",type:"address"}],name:"allowance",outputs:[{name:"",type:"uint256"}],payable:!1,stateMutability:"view",type:"function"},{payable:!0,stateMutability:"payable",type:"fallback"},{anonymous:!1,inputs:[{indexed:!0,name:"owner",type:"address"},{indexed:!0,name:"spender",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,name:"from",type:"address"},{indexed:!0,name:"to",type:"address"},{indexed:!1,name:"value",type:"uint256"}],name:"Transfer",type:"event"}],D=[{inputs:[{internalType:"address",name:"_relayReceiver",type:"address"},{internalType:"address",name:"_relaySolver",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{type:"error",name:"CannotAuthorizeSelf",inputs:[]},{type:"error",name:"OnlyContractOwner",inputs:[]},{type:"error",name:"BridgeCallFailed",inputs:[{type:"bytes",name:"reason"}]},{type:"error",name:"CannotBridgeToSameNetwork",inputs:[]},{type:"error",name:"InformationMismatch",inputs:[]},{type:"error",name:"InsufficientBalance",inputs:[{type:"uint256",name:"amount"},{type:"uint256",name:"contractBalance"}]},{type:"error",name:"IntegratorNotAllowed",inputs:[]},{type:"error",name:"InvalidAmount",inputs:[]},{type:"error",name:"InvalidLength",inputs:[]},{type:"error",name:"InvalidPermit",inputs:[]},{type:"error",name:"InvalidPermitData",inputs:[]},{type:"error",name:"NativeTransferFailed",inputs:[]},{type:"error",name:"NoTransferToNullAddress",inputs:[]},{type:"error",name:"NotAContract",inputs:[]},{type:"error",name:"NullAddrIsNotAValidSpender",inputs:[]},{type:"error",name:"NullAddrIsNotAnERC20Token",inputs:[]},{type:"error",name:"UnAuthorizedCall",inputs:[{type:"address"}]},{type:"error",name:"CannotBridgeToSameNetwork",inputs:[]},{type:"error",name:"InformationMismatch",inputs:[]},{type:"error",name:"InsufficientBalance",inputs:[{type:"uint256",name:"amount"},{type:"uint256",name:"contractBalance"}]},{type:"error",name:"IntegratorNotAllowed",inputs:[]},{type:"error",name:"InvalidAmount",inputs:[]},{type:"error",name:"InvalidLength",inputs:[]},{type:"error",name:"InvalidPermit",inputs:[]},{type:"error",name:"InvalidPermitData",inputs:[]},{type:"error",name:"NativeTransferFailed",inputs:[]},{type:"error",name:"NoTransferToNullAddress",inputs:[]},{type:"error",name:"NullAddrIsNotAnERC20Token",inputs:[]},{type:"error",name:"BridgeNotAdded",inputs:[{type:"address"}]},{type:"error",name:"CannotAuthorizeSelf",inputs:[]},{type:"error",name:"UnAuthorized",inputs:[]},{type:"error",name:"BridgeCallFailed",inputs:[{type:"bytes",name:"reason"}]},{type:"error",name:"CannotBridgeToSameNetwork",inputs:[]},{type:"error",name:"ContractCallNotAllowed",inputs:[]},{type:"error",name:"InformationMismatch",inputs:[]},{type:"error",name:"InsufficientBalance",inputs:[{type:"uint256",name:"amount"},{type:"uint256",name:"contractBalance"}]},{type:"error",name:"IntegratorNotAllowed",inputs:[]},{type:"error",name:"InvalidAmount",inputs:[]},{type:"error",name:"InvalidContract",inputs:[]},{type:"error",name:"InvalidLength",inputs:[]},{type:"error",name:"InvalidPermit",inputs:[]},{type:"error",name:"InvalidPermitData",inputs:[]},{type:"error",name:"InvalidSwapDetails",inputs:[]},{type:"error",name:"NativeTransferFailed",inputs:[]},{type:"error",name:"NoSwapFromZeroBalance",inputs:[]},{type:"error",name:"NoTransferToNullAddress",inputs:[]},{type:"error",name:"NotAContract",inputs:[]},{type:"error",name:"NullAddrIsNotAValidSpender",inputs:[]},{type:"error",name:"NullAddrIsNotAnERC20Token",inputs:[]},{type:"error",name:"SlippageTooLow",inputs:[{type:"uint256",name:"minAmount"},{type:"uint256",name:"returnAmount"}]},{type:"error",name:"SwapCallFailed",inputs:[{type:"bytes",name:"reason"}]},{type:"error",name:"UnAuthorizedCall",inputs:[{type:"address"}]},{type:"error",name:"CannotAuthorizeSelf",inputs:[]},{type:"error",name:"InvalidContract",inputs:[]},{type:"error",name:"UnAuthorized",inputs:[]},{type:"error",name:"CalldataEmptyButInitNotZero",inputs:[]},{type:"error",name:"FacetAddressIsNotZero",inputs:[]},{type:"error",name:"FacetAddressIsZero",inputs:[]},{type:"error",name:"FacetContainsNoCode",inputs:[]},{type:"error",name:"FunctionAlreadyExists",inputs:[]},{type:"error",name:"FunctionDoesNotExist",inputs:[]},{type:"error",name:"FunctionIsImmutable",inputs:[]},{type:"error",name:"IncorrectFacetCutAction",inputs:[]},{type:"error",name:"InitReverted",inputs:[{type:"bytes",name:"reason"}]},{type:"error",name:"InitZeroButCalldataNotEmpty",inputs:[]},{type:"error",name:"NoSelectorsInFace",inputs:[]},{type:"error",name:"OnlyContractOwner",inputs:[]},{type:"error",name:"AlreadyInitialized",inputs:[]},{type:"error",name:"FeeTooHigh",inputs:[]},{type:"error",name:"InvalidFee",inputs:[]},{type:"error",name:"OnlyContractOwner",inputs:[]},{type:"error",name:"ZeroAddress",inputs:[]},{type:"error",name:"CalldataEmptyButInitNotZero",inputs:[]},{type:"error",name:"FacetAddressIsNotZero",inputs:[]},{type:"error",name:"FacetAddressIsZero",inputs:[]},{type:"error",name:"FacetContainsNoCode",inputs:[]},{type:"error",name:"FunctionAlreadyExists",inputs:[]},{type:"error",name:"FunctionDoesNotExist",inputs:[]},{type:"error",name:"FunctionIsImmutable",inputs:[]},{type:"error",name:"IncorrectFacetCutAction",inputs:[]},{type:"error",name:"InitReverted",inputs:[{type:"bytes",name:"reason"}]},{type:"error",name:"InitZeroButCalldataNotEmpty",inputs:[]},{type:"error",name:"NoSelectorsInFace",inputs:[]},{type:"error",name:"ZeroAddress",inputs:[]},{type:"error",name:"FeeTooHigh",inputs:[]},{type:"error",name:"IntegratorNotActive",inputs:[]},{type:"error",name:"IntegratorNotAllowed",inputs:[]},{type:"error",name:"ShareTooHigh",inputs:[]},{type:"error",name:"UnAuthorized",inputs:[]},{type:"error",name:"ZeroAddress",inputs:[]},{type:"error",name:"OnlyContractOwner",inputs:[]},{type:"error",name:"AllSwapsFailed",inputs:[]},{type:"error",name:"ContractCallNotAllowed",inputs:[]},{type:"error",name:"InsufficientBalance",inputs:[{type:"uint256",name:"amount"},{type:"uint256",name:"contractBalance"}]},{type:"error",name:"IntegratorNotAllowed",inputs:[]},{type:"error",name:"InvalidAmount",inputs:[]},{type:"error",name:"InvalidContract",inputs:[]},{type:"error",name:"InvalidPermit",inputs:[]},{type:"error",name:"InvalidPermitData",inputs:[]},{type:"error",name:"NativeTransferFailed",inputs:[]},{type:"error",name:"NoSwapFromZeroBalance",inputs:[]},{type:"error",name:"NoTransferToNullAddress",inputs:[]},{type:"error",name:"NullAddrIsNotAValidSpender",inputs:[]},{type:"error",name:"NullAddrIsNotAnERC20Token",inputs:[]},{type:"error",name:"SlippageTooLow",inputs:[{type:"uint256",name:"minAmount"},{type:"uint256",name:"returnAmount"}]},{type:"error",name:"SwapCallFailed",inputs:[{type:"bytes",name:"reason"}]},{type:"error",name:"ZeroAddress",inputs:[]},{type:"error",name:"InsufficientBalance",inputs:[{type:"uint256",name:"amount"},{type:"uint256",name:"contractBalance"}]},{type:"error",name:"NativeTransferFailed",inputs:[]},{type:"error",name:"NoTransferToNullAddress",inputs:[]},{type:"error",name:"NotAContract",inputs:[]},{type:"error",name:"NullAddrIsNotAnERC20Token",inputs:[]},{type:"error",name:"ReentrancyError",inputs:[]},{type:"error",name:"UnAuthorized",inputs:[]},{type:"error",name:"WithdrawFailed",inputs:[]},{type:"event",anonymous:!1,name:"DexAdded",inputs:[{type:"address",name:"dexAddress",indexed:!0}]},{type:"event",anonymous:!1,name:"DexRemoved",inputs:[{type:"address",name:"dexAddress",indexed:!0}]},{type:"event",anonymous:!1,name:"FunctionSignatureApprovalChanged",inputs:[{type:"address",name:"dex",indexed:!0},{type:"bytes4",name:"functionSignature",indexed:!0},{type:"bool",name:"approved",indexed:!0}]},{type:"event",anonymous:!1,name:"AdaptersAdded",inputs:[{type:"address[]",name:"adapters",indexed:!1}]},{type:"event",anonymous:!1,name:"AdaptersRemoved",inputs:[{type:"address[]",name:"adapters",indexed:!1}]},{type:"event",anonymous:!1,name:"BridgeAdded",inputs:[{type:"address[]",name:"bridges",indexed:!1}]},{type:"event",anonymous:!1,name:"BridgeRemoved",inputs:[{type:"address[]",name:"bridges",indexed:!1}]},{type:"event",anonymous:!1,name:"SelectorToInfoUpdated",inputs:[{type:"address[]",name:"bridges",indexed:!1},{type:"bytes4[]",name:"selectors",indexed:!1},{type:"uint256[]",name:"info",indexed:!1}]},{type:"event",anonymous:!1,name:"SetDzapFixedNativeFeeAmount",inputs:[{type:"uint256",name:"fee",indexed:!1}]},{type:"event",anonymous:!1,name:"SetDzapTokenFee",inputs:[{type:"uint256",name:"fee",indexed:!1}]},{type:"event",anonymous:!1,name:"SetFixedNativeFee",inputs:[{type:"uint256",name:"fee",indexed:!1}]},{type:"event",anonymous:!1,name:"SetIntegrator",inputs:[{type:"address",name:"integrator",indexed:!1},{type:"uint8[]",name:"feeType",indexed:!1},{type:"tuple[]",name:"info",indexed:!1,components:[{type:"uint256",name:"tokenFee"},{type:"uint256",name:"fixedNativeFeeAmount"},{type:"uint256",name:"dzapTokenShare"},{type:"uint256",name:"dzapFixedNativeShare"}]}]},{type:"event",anonymous:!1,name:"SetMaxPlatformFee",inputs:[{type:"uint256",name:"fee",indexed:!1}]},{type:"event",anonymous:!1,name:"SetPlatformFee",inputs:[{type:"uint256",name:"fee",indexed:!1}]},{type:"event",anonymous:!1,name:"MultiSwapped",inputs:[{type:"bytes32",name:"transactionId",indexed:!0},{type:"address",name:"integrator",indexed:!0},{type:"address",name:"sender",indexed:!0},{type:"address",name:"recipient",indexed:!1},{type:"tuple[]",name:"swapInfo",indexed:!1,components:[{type:"address",name:"dex"},{type:"address",name:"fromToken"},{type:"address",name:"toToken"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"leftOverFromAmount"},{type:"uint256",name:"returnToAmount"}]}]},{type:"event",anonymous:!1,name:"Swapped",inputs:[{type:"bytes32",name:"transactionId",indexed:!0},{type:"address",name:"integrator",indexed:!0},{type:"address",name:"sender",indexed:!0},{type:"address",name:"recipient",indexed:!1},{type:"tuple",name:"swapInfo",indexed:!1,components:[{type:"address",name:"dex"},{type:"address",name:"fromToken"},{type:"address",name:"toToken"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"leftOverFromAmount"},{type:"uint256",name:"returnToAmount"}]}]},{type:"event",anonymous:!1,name:"SwappedSingleToken",inputs:[{type:"bytes32",name:"transactionId",indexed:!0},{type:"address",name:"sender",indexed:!0},{type:"address",name:"recipient",indexed:!1},{type:"tuple",name:"swapInfo",indexed:!1,components:[{type:"address",name:"dex"},{type:"address",name:"fromToken"},{type:"address",name:"toToken"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"leftOverFromAmount"},{type:"uint256",name:"returnToAmount"}]}]},{type:"event",anonymous:!1,name:"BridgeTransferStarted",inputs:[{type:"bytes32",name:"transactionId",indexed:!0},{type:"address",name:"integrator",indexed:!0},{type:"address",name:"sender",indexed:!0},{type:"tuple",name:"bridgeData",indexed:!1,components:[{type:"string",name:"bridge"},{type:"bytes",name:"to"},{type:"bytes",name:"receiver"},{type:"address",name:"from"},{type:"bool",name:"hasSourceSwaps"},{type:"bool",name:"hasDestinationCall"},{type:"uint256",name:"minAmountIn"},{type:"uint256",name:"destinationChainId"}]}]},{type:"event",anonymous:!1,name:"MultiTokenBridgeTransferStarted",inputs:[{type:"bytes32",name:"transactionId",indexed:!0},{type:"address",name:"integrator",indexed:!0},{type:"address",name:"sender",indexed:!0},{type:"tuple[]",name:"bridgeData",indexed:!1,components:[{type:"string",name:"bridge"},{type:"bytes",name:"to"},{type:"bytes",name:"receiver"},{type:"address",name:"from"},{type:"bool",name:"hasSourceSwaps"},{type:"bool",name:"hasDestinationCall"},{type:"uint256",name:"minAmountIn"},{type:"uint256",name:"destinationChainId"}]}]},{type:"event",anonymous:!1,name:"SwapBridgeTransferStarted",inputs:[{type:"bytes32",name:"transactionId",indexed:!0},{type:"address",name:"integrator",indexed:!0},{type:"address",name:"sender",indexed:!0},{type:"tuple[]",name:"bridgeData",indexed:!1,components:[{type:"string",name:"bridge"},{type:"bytes",name:"to"},{type:"bytes",name:"receiver"},{type:"address",name:"from"},{type:"bool",name:"hasSourceSwaps"},{type:"bool",name:"hasDestinationCall"},{type:"uint256",name:"minAmountIn"},{type:"uint256",name:"destinationChainId"}]},{type:"tuple[]",name:"swapInfo",indexed:!1,components:[{type:"address",name:"dex"},{type:"address",name:"fromToken"},{type:"address",name:"toToken"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"leftOverFromAmount"},{type:"uint256",name:"returnToAmount"}]}]},{type:"event",anonymous:!1,name:"BatchBridgeTransferStart",inputs:[{type:"bytes32",name:"transactionId",indexed:!0},{type:"address",name:"integrator",indexed:!0},{type:"address",name:"sender",indexed:!0},{type:"tuple[]",name:"bridgeData",indexed:!1,components:[{type:"string",name:"bridge"},{type:"bytes",name:"to"},{type:"bytes",name:"receiver"},{type:"address",name:"from"},{type:"bool",name:"hasSourceSwaps"},{type:"bool",name:"hasDestinationCall"},{type:"uint256",name:"minAmountIn"},{type:"uint256",name:"destinationChainId"}]}]},{type:"event",anonymous:!1,name:"BatchSwapAndBridgeTransferStart",inputs:[{type:"bytes32",name:"transactionId",indexed:!0},{type:"address",name:"integrator",indexed:!0},{type:"address",name:"sender",indexed:!0},{type:"tuple[]",name:"bridgeData",indexed:!1,components:[{type:"string",name:"bridge"},{type:"bytes",name:"to"},{type:"bytes",name:"receiver"},{type:"address",name:"from"},{type:"bool",name:"hasSourceSwaps"},{type:"bool",name:"hasDestinationCall"},{type:"uint256",name:"minAmountIn"},{type:"uint256",name:"destinationChainId"}]},{type:"tuple[]",name:"swapInfo",indexed:!1,components:[{type:"address",name:"dex"},{type:"address",name:"fromToken"},{type:"address",name:"toToken"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"leftOverFromAmount"},{type:"uint256",name:"returnToAmount"}]}]},{type:"event",anonymous:!1,name:"GasZipBridgeTransferStarted",inputs:[{type:"bytes32",name:"transactionId",indexed:!0},{type:"address",name:"integrator",indexed:!0},{type:"address",name:"sender",indexed:!0},{type:"tuple",name:"gasZipData",indexed:!1,components:[{type:"bytes32",name:"recipient"},{type:"uint256",name:"destChains"},{type:"uint256",name:"depositAmount"}]}]},{type:"event",anonymous:!1,name:"GasZipSwapBridgeTransferStarted",inputs:[{type:"bytes32",name:"transactionId",indexed:!0},{type:"address",name:"integrator",indexed:!0},{type:"address",name:"sender",indexed:!0},{type:"tuple",name:"gasZipData",indexed:!1,components:[{type:"bytes32",name:"recipient"},{type:"uint256",name:"destChains"},{type:"uint256",name:"depositAmount"}]},{type:"tuple[]",name:"swapInfo",indexed:!1,components:[{type:"address",name:"dex"},{type:"address",name:"fromToken"},{type:"address",name:"toToken"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"leftOverFromAmount"},{type:"uint256",name:"returnToAmount"}]}]},{type:"function",name:"addressCanExecuteMethod",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"bytes4",name:"_selector"},{type:"address",name:"_executor"}],outputs:[{type:"bool"}]},{type:"function",name:"setBatchCanExecute",constant:!1,payable:!1,inputs:[{type:"bytes4[]",name:"_selector"},{type:"address[]",name:"_executor"},{type:"bool[]",name:"_canExecute"}],outputs:[]},{type:"function",name:"setCanExecute",constant:!1,payable:!1,inputs:[{type:"bytes4",name:"_selector"},{type:"address",name:"_executor"},{type:"bool",name:"_canExecute"}],outputs:[]},{type:"function",name:"addAggregatorsAndBridges",constant:!1,payable:!1,inputs:[{type:"address[]",name:"_bridgeAddresses"}],outputs:[]},{type:"function",name:"getSelectorInfo",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"address",name:"_bridge"},{type:"bytes4",name:"_selector"}],outputs:[{type:"bool"},{type:"uint256"}]},{type:"function",name:"isBridgeWhitelisted",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"address",name:"_bridge"}],outputs:[{type:"bool"}]},{type:"function",name:"removeAggregatorsAndBridges",constant:!1,payable:!1,inputs:[{type:"address[]",name:"_bridgeAddresses"}],outputs:[]},{type:"function",name:"updateSelectorInfo",constant:!1,payable:!1,inputs:[{type:"address[]",name:"_bridgeAddresses"},{type:"bytes4[]",name:"_selectors"},{type:"uint256[]",name:"_offset"}],outputs:[]},{type:"function",name:"bridge",constant:!1,stateMutability:"payable",payable:!0,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_integrator"},{type:"tuple",name:"_bridgeData",components:[{type:"string",name:"bridge"},{type:"bytes",name:"to"},{type:"bytes",name:"receiver"},{type:"address",name:"from"},{type:"bool",name:"hasSourceSwaps"},{type:"bool",name:"hasDestinationCall"},{type:"uint256",name:"minAmountIn"},{type:"uint256",name:"destinationChainId"}]},{type:"tuple",name:"_genericData",components:[{type:"address",name:"callTo"},{type:"address",name:"approveTo"},{type:"uint256",name:"extraNative"},{type:"bytes",name:"permit"},{type:"bytes",name:"callData"}]}],outputs:[]},{type:"function",name:"bridgeMultipleTokens",constant:!1,stateMutability:"payable",payable:!0,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_integrator"},{type:"tuple[]",name:"_bridgeData",components:[{type:"string",name:"bridge"},{type:"bytes",name:"to"},{type:"bytes",name:"receiver"},{type:"address",name:"from"},{type:"bool",name:"hasSourceSwaps"},{type:"bool",name:"hasDestinationCall"},{type:"uint256",name:"minAmountIn"},{type:"uint256",name:"destinationChainId"}]},{type:"tuple[]",name:"_genericData",components:[{type:"address",name:"callTo"},{type:"address",name:"approveTo"},{type:"uint256",name:"extraNative"},{type:"bytes",name:"permit"},{type:"bytes",name:"callData"}]}],outputs:[]},{type:"function",name:"swapAndBridge",constant:!1,stateMutability:"payable",payable:!0,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_integrator"},{type:"tuple[]",name:"_bridgeData",components:[{type:"string",name:"bridge"},{type:"bytes",name:"to"},{type:"bytes",name:"receiver"},{type:"address",name:"from"},{type:"bool",name:"hasSourceSwaps"},{type:"bool",name:"hasDestinationCall"},{type:"uint256",name:"minAmountIn"},{type:"uint256",name:"destinationChainId"}]},{type:"tuple[]",name:"_swapData",components:[{type:"address",name:"callTo"},{type:"address",name:"approveTo"},{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"minToAmount"},{type:"bytes",name:"swapCallData"},{type:"bytes",name:"permit"}]},{type:"tuple[]",name:"_genericData",components:[{type:"address",name:"callTo"},{type:"address",name:"approveTo"},{type:"uint256",name:"extraNative"},{type:"bytes",name:"permit"},{type:"bytes",name:"callData"}]}],outputs:[]},{type:"function",name:"addDex",constant:!1,payable:!1,inputs:[{type:"address",name:"_dex"}],outputs:[]},{type:"function",name:"batchAddDex",constant:!1,payable:!1,inputs:[{type:"address[]",name:"_dexs"}],outputs:[]},{type:"function",name:"batchRemoveDex",constant:!1,payable:!1,inputs:[{type:"address[]",name:"_dexs"}],outputs:[]},{type:"function",name:"batchSetFunctionApprovalBySignature",constant:!1,payable:!1,inputs:[{type:"address[]",name:"_dexs"},{type:"bytes4[]",name:"_signatures"},{type:"bool[]",name:"_approval"}],outputs:[]},{type:"function",name:"isContractApproved",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"address",name:"_dex"}],outputs:[{type:"bool",name:"approved"}]},{type:"function",name:"isFunctionApproved",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"address",name:"_dex"},{type:"bytes4",name:"_signature"}],outputs:[{type:"bool",name:"approved"}]},{type:"function",name:"removeDex",constant:!1,payable:!1,inputs:[{type:"address",name:"_dex"}],outputs:[]},{type:"function",name:"setFunctionApprovalBySignature",constant:!1,payable:!1,inputs:[{type:"address",name:"_dex"},{type:"bytes4",name:"_signature"},{type:"bool",name:"_approval"}],outputs:[]},{type:"function",name:"diamondCut",constant:!1,payable:!1,inputs:[{type:"tuple[]",name:"_diamondCut",components:[{type:"address",name:"facetAddress"},{type:"uint8",name:"action"},{type:"bytes4[]",name:"functionSelectors"}]},{type:"address",name:"_init"},{type:"bytes",name:"_calldata"}],outputs:[]},{type:"function",name:"initialize",constant:!1,payable:!1,inputs:[{type:"address",name:"_permit2"},{type:"address",name:"_protocolFeeVault"},{type:"uint256",name:"_maxTokenFee"},{type:"uint256",name:"_maxFixedNativeFeeAmount"}],outputs:[]},{type:"function",name:"facetAddress",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"bytes4",name:"_functionSelector"}],outputs:[{type:"address",name:"facetAddress_"}]},{type:"function",name:"facetAddresses",constant:!0,stateMutability:"view",payable:!1,inputs:[],outputs:[{type:"address[]",name:"facetAddresses_"}]},{type:"function",name:"facetFunctionSelectors",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"address",name:"_facet"}],outputs:[{type:"bytes4[]",name:"facetFunctionSelectors_"}]},{type:"function",name:"facets",constant:!0,stateMutability:"view",payable:!1,inputs:[],outputs:[{type:"tuple[]",name:"facets_",components:[{type:"address",name:"facetAddress"},{type:"bytes4[]",name:"functionSelectors"}]}]},{type:"function",name:"supportsInterface",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"bytes4",name:"_interfaceId"}],outputs:[{type:"bool"}]},{type:"constructor",stateMutability:"payable",payable:!0,inputs:[{type:"address",name:"_contractOwner"},{type:"address",name:"_diamondCutFacet"}]},{type:"function",name:"calcFixedNativeFees",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"address",name:"_integrator"},{type:"uint8",name:"_feeType"}],outputs:[{type:"uint256",name:"fixedNativeFeeAmount"},{type:"uint256",name:"dzapShare"}]},{type:"function",name:"calcTokenFees",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"address",name:"_integrator"},{type:"uint8",name:"_feeType"},{type:"uint256",name:"_amount"}],outputs:[{type:"uint256",name:"totalFee"},{type:"uint256",name:"dzapShare"}]},{type:"function",name:"integratorFeeInfo",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"address",name:"_integrator"},{type:"uint8",name:"_feeType"}],outputs:[{type:"tuple",components:[{type:"uint256",name:"tokenFee"},{type:"uint256",name:"fixedNativeFeeAmount"},{type:"uint256",name:"dzapTokenShare"},{type:"uint256",name:"dzapFixedNativeShare"}]}]},{type:"function",name:"isIntegratorAllowed",constant:!0,stateMutability:"view",payable:!1,inputs:[{type:"address",name:"_integrator"}],outputs:[{type:"bool"}]},{type:"function",name:"maxFixedNativeFeeAmount",constant:!0,stateMutability:"view",payable:!1,inputs:[],outputs:[{type:"uint256",name:"_maxFixedNativeFee"}]},{type:"function",name:"maxTokenFee",constant:!0,stateMutability:"view",payable:!1,inputs:[],outputs:[{type:"uint256"}]},{type:"function",name:"protocolFeeVault",constant:!0,stateMutability:"view",payable:!1,inputs:[],outputs:[{type:"address"}]},{type:"function",name:"removeIntegrator",constant:!1,payable:!1,inputs:[{type:"address",name:"_integrator"}],outputs:[]},{type:"function",name:"setIntegratorInfo",constant:!1,payable:!1,inputs:[{type:"address",name:"_integrator"},{type:"uint8[]",name:"_feeTypes"},{type:"tuple[]",name:"_feeInfo",components:[{type:"uint256",name:"tokenFee"},{type:"uint256",name:"fixedNativeFeeAmount"},{type:"uint256",name:"dzapTokenShare"},{type:"uint256",name:"dzapFixedNativeShare"}]}],outputs:[]},{type:"function",name:"setProtocolFeeVault",constant:!1,payable:!1,inputs:[{type:"address",name:"_protocolFeeVault"}],outputs:[]},{type:"function",name:"owner",constant:!0,stateMutability:"view",payable:!1,inputs:[],outputs:[{type:"address",name:"owner_"}]},{type:"function",name:"transferOwnership",constant:!1,payable:!1,inputs:[{type:"address",name:"_newOwner"}],outputs:[]},{type:"function",name:"multiSwap",constant:!1,stateMutability:"payable",payable:!0,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_integrator"},{type:"address",name:"_recipient"},{type:"tuple[]",name:"_data",components:[{type:"address",name:"callTo"},{type:"address",name:"approveTo"},{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"minToAmount"},{type:"bytes",name:"swapCallData"},{type:"bytes",name:"permit"}]}],outputs:[]},{type:"function",name:"multiSwapWithoutRevert",constant:!1,stateMutability:"payable",payable:!0,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_integrator"},{type:"address",name:"_recipient"},{type:"tuple[]",name:"_data",components:[{type:"address",name:"callTo"},{type:"address",name:"approveTo"},{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"minToAmount"},{type:"bytes",name:"swapCallData"},{type:"bytes",name:"permit"}]}],outputs:[]},{type:"function",name:"swap",constant:!1,stateMutability:"payable",payable:!0,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_integrator"},{type:"address",name:"_recipient"},{type:"tuple",name:"_data",components:[{type:"address",name:"callTo"},{type:"address",name:"approveTo"},{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"minToAmount"},{type:"bytes",name:"swapCallData"},{type:"bytes",name:"permit"}]}],outputs:[]},{type:"function",name:"swapErc20ToErc20",constant:!1,payable:!1,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_recipient"},{type:"tuple",name:"_data",components:[{type:"address",name:"callTo"},{type:"address",name:"approveTo"},{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"minToAmount"},{type:"bytes",name:"swapCallData"},{type:"bytes",name:"permit"}]}],outputs:[]},{type:"function",name:"swapErc20ToNative",constant:!1,payable:!1,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_recipient"},{type:"tuple",name:"_data",components:[{type:"address",name:"callTo"},{type:"address",name:"approveTo"},{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"minToAmount"},{type:"bytes",name:"swapCallData"},{type:"bytes",name:"permit"}]}],outputs:[]},{type:"function",name:"swapNativeToErc20",constant:!1,stateMutability:"payable",payable:!0,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_recipient"},{type:"tuple",name:"_data",components:[{type:"address",name:"callTo"},{type:"address",name:"approveTo"},{type:"address",name:"from"},{type:"address",name:"to"},{type:"uint256",name:"fromAmount"},{type:"uint256",name:"minToAmount"},{type:"bytes",name:"swapCallData"},{type:"bytes",name:"permit"}]}],outputs:[]},{type:"function",name:"executeCallAndWithdraw",constant:!1,payable:!1,inputs:[{type:"address",name:"_callTo"},{type:"bytes",name:"_callData"},{type:"address",name:"_token"},{type:"address",name:"_to"},{type:"uint256",name:"_amount"}],outputs:[]},{type:"function",name:"withdraw",constant:!1,payable:!1,inputs:[{type:"address",name:"_token"},{type:"address",name:"_to"},{type:"uint256",name:"_amount"}],outputs:[]},{type:"function",name:"bridgeMultipleTokensViaTransfer",constant:!1,stateMutability:"payable",payable:!0,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_integrator"},{type:"tuple[]",name:"_bridgeData",components:[{type:"string",name:"bridge"},{type:"bytes",name:"to"},{type:"bytes",name:"receiver"},{type:"address",name:"from"},{type:"bool",name:"hasSourceSwaps"},{type:"bool",name:"hasDestinationCall"},{type:"uint256",name:"minAmountIn"},{type:"uint256",name:"destinationChainId"}]},{type:"tuple[]",name:"_transferData",components:[{type:"address",name:"transferTo"},{type:"bytes",name:"permit"}]}],outputs:[]},{type:"function",name:"bridgeViaTransfer",constant:!1,stateMutability:"payable",payable:!0,inputs:[{type:"bytes32",name:"_transactionId"},{type:"address",name:"_integrator"},{type:"tuple",name:"_bridgeData",components:[{type:"string",name:"bridge"},{type:"bytes",name:"to"},{type:"bytes",name:"receiver"},{type:"address",name:"from"},{type:"bool",name:"hasSourceSwaps"},{type:"bool",name:"hasDestinationCall"},{type:"uint256",name:"minAmountIn"},{type:"uint256",name:"destinationChainId"}]},{type:"tuple",name:"_transferData",components:[{type:"address",name:"transferTo"},{type:"bytes",name:"permit"}]}],outputs:[]},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{internalType:"address",name:"_recipient",type:"address"},{components:[{internalType:"address",name:"callTo",type:"address"},{internalType:"address",name:"approveTo",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"bytes",name:"swapCallData",type:"bytes"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct SwapData[]",name:"_data",type:"tuple[]"}],name:"multiSwapAndTransfer",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{internalType:"address",name:"_recipient",type:"address"},{components:[{internalType:"address",name:"callTo",type:"address"},{internalType:"address",name:"approveTo",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"bytes",name:"swapCallData",type:"bytes"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct SwapData[]",name:"_data",type:"tuple[]"}],name:"multiSwapAndTransferWithoutRevert",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{internalType:"address",name:"_recipient",type:"address"},{components:[{internalType:"address",name:"callTo",type:"address"},{internalType:"address",name:"approveTo",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"bytes",name:"swapCallData",type:"bytes"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct SwapData",name:"_data",type:"tuple"}],name:"swapAndTransfer",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{internalType:"address",name:"_recipient",type:"address"},{components:[{internalType:"address",name:"callTo",type:"address"},{internalType:"address",name:"approveTo",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"bytes",name:"swapCallData",type:"bytes"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct SwapData[]",name:"_data",type:"tuple[]"},{internalType:"bool[]",name:"_isDirectTransfer",type:"bool[]"}],name:"batchSwap",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{components:[{internalType:"string",name:"bridge",type:"string"},{internalType:"bytes",name:"to",type:"bytes"},{internalType:"bytes",name:"receiver",type:"bytes"},{internalType:"address",name:"from",type:"address"},{internalType:"bool",name:"hasSourceSwaps",type:"bool"},{internalType:"bool",name:"hasDestinationCall",type:"bool"},{internalType:"uint256",name:"minAmountIn",type:"uint256"},{internalType:"uint256",name:"destinationChainId",type:"uint256"}],internalType:"struct GenericBridgeData[]",name:"_bridgeData",type:"tuple[]"},{components:[{internalType:"address",name:"callTo",type:"address"},{internalType:"address",name:"approveTo",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"bytes",name:"swapCallData",type:"bytes"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct SwapData[]",name:"_swapData",type:"tuple[]"},{components:[{internalType:"address",name:"transferTo",type:"address"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct TransferData[]",name:"_transferData",type:"tuple[]"}],name:"swapAndBridgeViaTransfer",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{components:[{internalType:"bytes32",name:"recipeint",type:"bytes32"},{internalType:"uint256",name:"destChains",type:"uint256"},{internalType:"uint256",name:"depositAmount",type:"uint256"}],internalType:"struct GasZipData",name:"_gasZipData",type:"tuple"}],name:"bridgeTokensViaGasZip",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"getGasZipRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getGasZipRouter",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{components:[{internalType:"address",name:"callTo",type:"address"},{internalType:"address",name:"approveTo",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"bytes",name:"swapCallData",type:"bytes"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct SwapData[]",name:"_swapData",type:"tuple[]"},{components:[{internalType:"bytes32",name:"recipeint",type:"bytes32"},{internalType:"uint256",name:"destChains",type:"uint256"},{internalType:"uint256",name:"depositAmount",type:"uint256"}],internalType:"struct GasZipData",name:"_gasZipData",type:"tuple"}],name:"swapAndBridgeTokensViaGasZip",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"RELAY_RECIEVER",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"RELAY_SOLVER",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{components:[{internalType:"string",name:"bridge",type:"string"},{internalType:"bytes",name:"to",type:"bytes"},{internalType:"bytes",name:"receiver",type:"bytes"},{internalType:"address",name:"from",type:"address"},{internalType:"bool",name:"hasSourceSwaps",type:"bool"},{internalType:"bool",name:"hasDestinationCall",type:"bool"},{internalType:"uint256",name:"minAmountIn",type:"uint256"},{internalType:"uint256",name:"destinationChainId",type:"uint256"}],internalType:"struct GenericBridgeData[]",name:"_bridgeData",type:"tuple[]"},{components:[{internalType:"bytes32",name:"requestId",type:"bytes32"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct RelayData[]",name:"_relayData",type:"tuple[]"}],name:"bridgeMultipleTokensViaRelay",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{components:[{internalType:"string",name:"bridge",type:"string"},{internalType:"bytes",name:"to",type:"bytes"},{internalType:"bytes",name:"receiver",type:"bytes"},{internalType:"address",name:"from",type:"address"},{internalType:"bool",name:"hasSourceSwaps",type:"bool"},{internalType:"bool",name:"hasDestinationCall",type:"bool"},{internalType:"uint256",name:"minAmountIn",type:"uint256"},{internalType:"uint256",name:"destinationChainId",type:"uint256"}],internalType:"struct GenericBridgeData",name:"_bridgeData",type:"tuple"},{components:[{internalType:"bytes32",name:"requestId",type:"bytes32"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct RelayData",name:"_relayData",type:"tuple"}],name:"bridgeViaRelay",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"getRelayAddress",outputs:[{internalType:"address",name:"reciever",type:"address"},{internalType:"address",name:"solver",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{components:[{internalType:"string",name:"bridge",type:"string"},{internalType:"bytes",name:"to",type:"bytes"},{internalType:"bytes",name:"receiver",type:"bytes"},{internalType:"address",name:"from",type:"address"},{internalType:"bool",name:"hasSourceSwaps",type:"bool"},{internalType:"bool",name:"hasDestinationCall",type:"bool"},{internalType:"uint256",name:"minAmountIn",type:"uint256"},{internalType:"uint256",name:"destinationChainId",type:"uint256"}],internalType:"struct GenericBridgeData[]",name:"_bridgeData",type:"tuple[]"},{components:[{internalType:"address",name:"callTo",type:"address"},{internalType:"address",name:"approveTo",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"bytes",name:"swapCallData",type:"bytes"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct SwapData[]",name:"_swapData",type:"tuple[]"},{components:[{internalType:"bytes32",name:"requestId",type:"bytes32"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct RelayData[]",name:"_relayData",type:"tuple[]"}],name:"swapAndBridgeViaRelay",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"address",name:"_srcToken",type:"address"},{internalType:"uint256",name:"_amount",type:"uint256"},{internalType:"bytes",name:"_data",type:"bytes"}],name:"bridge",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{components:[{internalType:"string",name:"bridge",type:"string"},{internalType:"bytes",name:"to",type:"bytes"},{internalType:"bytes",name:"receiver",type:"bytes"},{internalType:"address",name:"from",type:"address"},{internalType:"bool",name:"hasSourceSwaps",type:"bool"},{internalType:"bool",name:"hasDestinationCall",type:"bool"},{internalType:"uint256",name:"minAmountIn",type:"uint256"},{internalType:"uint256",name:"destinationChainId",type:"uint256"}],internalType:"struct GenericBridgeData[]",name:"_bridgeData",type:"tuple[]"},{components:[{internalType:"address",name:"adapter",type:"address"},{internalType:"bytes",name:"data",type:"bytes"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct AdapterData[]",name:"_data",type:"tuple[]"}],name:"batchBridge",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{internalType:"bytes32",name:"_transactionId",type:"bytes32"},{internalType:"address",name:"_integrator",type:"address"},{components:[{internalType:"string",name:"bridge",type:"string"},{internalType:"bytes",name:"to",type:"bytes"},{internalType:"bytes",name:"receiver",type:"bytes"},{internalType:"address",name:"from",type:"address"},{internalType:"bool",name:"hasSourceSwaps",type:"bool"},{internalType:"bool",name:"hasDestinationCall",type:"bool"},{internalType:"uint256",name:"minAmountIn",type:"uint256"},{internalType:"uint256",name:"destinationChainId",type:"uint256"}],internalType:"struct GenericBridgeData[]",name:"_bridgeData",type:"tuple[]"},{components:[{internalType:"address",name:"callTo",type:"address"},{internalType:"address",name:"approveTo",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"fromAmount",type:"uint256"},{internalType:"uint256",name:"minToAmount",type:"uint256"},{internalType:"bytes",name:"swapCallData",type:"bytes"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct SwapData[]",name:"_swapData",type:"tuple[]"},{components:[{internalType:"address",name:"adapter",type:"address"},{internalType:"bytes",name:"data",type:"bytes"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct AdapterData[]",name:"_data",type:"tuple[]"}],name:"batchSwapAndBridge",outputs:[],stateMutability:"payable",type:"function"}],M=[{inputs:[{internalType:"address",name:"governor_",type:"address"},{internalType:"address",name:"wNative_",type:"address"},{internalType:"address",name:"feeVault_",type:"address"},{internalType:"address",name:"permit2_",type:"address"},{internalType:"uint256",name:"maxNoOfSwap_",type:"uint256"}],stateMutability:"nonpayable",type:"constructor"},{inputs:[],name:"HighFee",type:"error"},{inputs:[],name:"HighPlatformFeeRatio",type:"error"},{inputs:[],name:"InvalidAmount",type:"error"},{inputs:[],name:"InvalidBlankSwap",type:"error"},{inputs:[],name:"InvalidInterval",type:"error"},{inputs:[],name:"InvalidLength",type:"error"},{inputs:[],name:"InvalidMask",type:"error"},{inputs:[],name:"InvalidNativeAmount",type:"error"},{inputs:[],name:"InvalidNoOfSwaps",type:"error"},{inputs:[],name:"InvalidPermit",type:"error"},{inputs:[],name:"InvalidPermitData",type:"error"},{inputs:[],name:"InvalidPosition",type:"error"},{inputs:[],name:"InvalidRate",type:"error"},{inputs:[],name:"InvalidReturnAmount",type:"error"},{inputs:[],name:"InvalidSwapAmount",type:"error"},{inputs:[],name:"InvalidToken",type:"error"},{inputs:[],name:"NativeTransferFailed",type:"error"},{inputs:[],name:"NoAvailableSwap",type:"error"},{inputs:[],name:"NoChanges",type:"error"},{inputs:[],name:"NotWNative",type:"error"},{inputs:[],name:"SwapCallFailed",type:"error"},{inputs:[],name:"UnauthorizedCaller",type:"error"},{inputs:[],name:"UnauthorizedTokens",type:"error"},{inputs:[],name:"ZeroAddress",type:"error"},{inputs:[],name:"ZeroSwappedTokens",type:"error"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address[]",name:"accounts",type:"address[]"}],name:"AdminAdded",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address[]",name:"accounts",type:"address[]"}],name:"AdminRemoved",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!1,internalType:"address",name:"from",type:"address"},{indexed:!1,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"bytes1",name:"interval",type:"bytes1"}],name:"BlankSwapped",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"positionId",type:"uint256"},{indexed:!1,internalType:"bool",name:"isNative",type:"bool"}],name:"Created",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"finalIndex",type:"uint256"},{indexed:!1,internalType:"uint256",name:"noOfPositions",type:"uint256"},{indexed:!1,internalType:"bool[]",name:"isNative",type:"bool[]"}],name:"CreatedBatched",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"feeVault",type:"address"}],name:"FeeVaultUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"formerGov",type:"address"},{indexed:!0,internalType:"address",name:"newGov",type:"address"}],name:"GovernanceChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!1,internalType:"uint256",name:"positionId",type:"uint256"},{indexed:!1,internalType:"uint256",name:"rate",type:"uint256"},{indexed:!1,internalType:"uint256",name:"startingSwap",type:"uint256"},{indexed:!1,internalType:"uint256",name:"finalSwap",type:"uint256"},{indexed:!1,internalType:"bool",name:"isNative",type:"bool"}],name:"Modified",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Paused",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"platformFeeRatio",type:"uint256"}],name:"PlatformFeeRatioUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"oldOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"},{indexed:!1,internalType:"uint256",name:"positionId",type:"uint256"}],name:"PositionOwnerUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address[]",name:"accounts",type:"address[]"}],name:"SwapExecutorAdded",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address[]",name:"accounts",type:"address[]"}],name:"SwapExecutorRemoved",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint32[]",name:"intervals",type:"uint32[]"},{indexed:!1,internalType:"uint256[]",name:"swapFee",type:"uint256[]"}],name:"SwapFeeUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint32[]",name:"swapIntervals",type:"uint32[]"}],name:"SwapIntervalsAdded",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint32[]",name:"swapIntervals",type:"uint32[]"}],name:"SwapIntervalsRemoved",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"noOfSwaps",type:"uint256"}],name:"SwapLimitUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"threshold",type:"uint256"}],name:"SwapThresholdUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"sender",type:"address"},{indexed:!0,internalType:"address",name:"rewardRecipient",type:"address"},{components:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"swappedAmount",type:"uint256"},{internalType:"uint256",name:"receivedAmount",type:"uint256"},{internalType:"uint256",name:"reward",type:"uint256"},{internalType:"uint256",name:"fee",type:"uint256"},{internalType:"bytes1",name:"intervalsInSwap",type:"bytes1"}],indexed:!1,internalType:"struct SwapInfo[]",name:"swapInformation",type:"tuple[]"}],name:"Swapped",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"uint256",name:"positionId",type:"uint256"},{indexed:!1,internalType:"uint256",name:"unswapped",type:"uint256"},{indexed:!1,internalType:"uint256",name:"swapped",type:"uint256"},{indexed:!1,internalType:"bool",name:"isNative",type:"bool"}],name:"Terminated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address[]",name:"tokens",type:"address[]"}],name:"TokensAdded",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address[]",name:"tokens",type:"address[]"}],name:"TokensRemoved",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"uint256",name:"amount",type:"uint256"}],name:"TokensRescued",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"address",name:"account",type:"address"}],name:"Unpaused",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"user",type:"address"},{indexed:!0,internalType:"address",name:"recipient",type:"address"},{indexed:!1,internalType:"uint256",name:"positionId",type:"uint256"},{indexed:!1,internalType:"uint256",name:"swapped",type:"uint256"},{indexed:!1,internalType:"bool",name:"isNative",type:"bool"}],name:"Withdrawn",type:"event"},{inputs:[],name:"BPS_DENOMINATOR",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"MAX_FEE",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"MAX_PLATFORM_FEE_RATIO",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"NATIVE_TOKEN",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"PERMIT2",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"bytes1",name:"",type:"bytes1"},{internalType:"uint256",name:"",type:"uint256"}],name:"accumRatio",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"activeSwapIntervals",outputs:[{internalType:"bytes1",name:"",type:"bytes1"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"accounts_",type:"address[]"}],name:"addAdmins",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address[]",name:"tokens_",type:"address[]"}],name:"addAllowedTokens",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address[]",name:"executor_",type:"address[]"}],name:"addSwapExecutors",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint32[]",name:"swapIntervals_",type:"uint32[]"}],name:"addSwapIntervalsToAllowedList",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"admins",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"allowedSwapIntervals",outputs:[{internalType:"bytes1",name:"",type:"bytes1"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"allowedTokens",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes[]",name:"data_",type:"bytes[]"}],name:"batchCall",outputs:[{internalType:"bytes[]",name:"results",type:"bytes[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from_",type:"address"},{internalType:"address",name:"to_",type:"address"},{internalType:"bytes1",name:"maskedInterval_",type:"bytes1"}],name:"blankSwap",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newGov",type:"address"}],name:"changeGovernance",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint32",name:"swapInterval",type:"uint32"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"noOfSwaps",type:"uint256"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct CreatePositionDetails[]",name:"details_",type:"tuple[]"}],name:"createBatchPositions",outputs:[],stateMutability:"payable",type:"function"},{inputs:[{components:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint32",name:"swapInterval",type:"uint32"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"noOfSwaps",type:"uint256"},{internalType:"bytes",name:"permit",type:"bytes"}],internalType:"struct CreatePositionDetails",name:"details_",type:"tuple"}],name:"createPosition",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"feeVault",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{components:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"}],internalType:"struct Pair[]",name:"pairs_",type:"tuple[]"}],name:"getNextSwapInfo",outputs:[{components:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"swappedAmount",type:"uint256"},{internalType:"uint256",name:"receivedAmount",type:"uint256"},{internalType:"uint256",name:"reward",type:"uint256"},{internalType:"uint256",name:"fee",type:"uint256"},{internalType:"bytes1",name:"intervalsInSwap",type:"bytes1"}],internalType:"struct SwapInfo[]",name:"",type:"tuple[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"positionId_",type:"uint256"}],name:"getPositionDetails",outputs:[{components:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint32",name:"swapInterval",type:"uint32"},{internalType:"uint256",name:"rate",type:"uint256"},{internalType:"uint256",name:"swapsExecuted",type:"uint256"},{internalType:"uint256",name:"swapsLeft",type:"uint256"},{internalType:"uint256",name:"swapped",type:"uint256"},{internalType:"uint256",name:"unswapped",type:"uint256"}],internalType:"struct PositionInfo",name:"positionInfo",type:"tuple"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint32",name:"interval_",type:"uint32"}],name:"getSwapFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"governance",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"maxNoOfSwap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"positionId_",type:"uint256"},{internalType:"uint256",name:"amount_",type:"uint256"},{internalType:"uint256",name:"noOfSwaps_",type:"uint256"},{internalType:"bool",name:"isIncrease_",type:"bool"},{internalType:"bool",name:"isNative_",type:"bool"},{internalType:"bytes",name:"permit_",type:"bytes"}],name:"modifyPosition",outputs:[],stateMutability:"payable",type:"function"},{inputs:[],name:"nextToNextTimeThreshold",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"pause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"paused",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[],name:"platformFeeRatio",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address[]",name:"accounts_",type:"address[]"}],name:"removeAdmins",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address[]",name:"tokens_",type:"address[]"}],name:"removeAllowedTokens",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address[]",name:"executor_",type:"address[]"}],name:"removeSwapExecutors",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint32[]",name:"swapIntervals_",type:"uint32[]"}],name:"removeSwapIntervalsFromAllowedList",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"}],internalType:"struct Pair[]",name:"pairs_",type:"tuple[]"}],name:"secondsUntilNextSwap",outputs:[{internalType:"uint256[]",name:"",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"newVault_",type:"address"}],name:"setFeeVault",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"platformFeeRatio_",type:"uint256"}],name:"setPlatformFeeRatio",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint32[]",name:"intervals_",type:"uint32[]"},{internalType:"uint256[]",name:"swapFee_",type:"uint256[]"}],name:"setSwapFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"executor",type:"address"},{internalType:"address",name:"tokenProxy",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"},{internalType:"uint256",name:"minReturnAmount",type:"uint256"},{internalType:"bytes",name:"swapCallData",type:"bytes"}],internalType:"struct SwapDetails[]",name:"data_",type:"tuple[]"},{internalType:"address",name:"rewardRecipient_",type:"address"}],name:"swap",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"bytes1",name:"",type:"bytes1"},{internalType:"uint256",name:"",type:"uint256"}],name:"swapAmountDelta",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"bytes1",name:"",type:"bytes1"}],name:"swapData",outputs:[{internalType:"uint256",name:"performedSwaps",type:"uint256"},{internalType:"uint256",name:"nextAmountToSwap",type:"uint256"},{internalType:"uint256",name:"nextToNextAmountToSwap",type:"uint256"},{internalType:"uint256",name:"lastSwappedAt",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"swapExecutors",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"positionId_",type:"uint256"},{internalType:"address",name:"recipient_",type:"address"},{internalType:"bool",name:"isNative_",type:"bool"}],name:"terminatePosition",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"}],name:"tokenMagnitude",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalCreatedPositions",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"positionId_",type:"uint256"},{internalType:"address",name:"newOwner_",type:"address"}],name:"transferPositionOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"unpause",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"maxNoOfSwap_",type:"uint256"}],name:"updateMaxSwapLimit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"nextToNextTimeThreshold_",type:"uint256"}],name:"updateSwapTimeThreshold",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"",type:"uint256"}],name:"userPositions",outputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"bytes1",name:"swapIntervalMask",type:"bytes1"},{internalType:"uint256",name:"rate",type:"uint256"},{internalType:"uint256",name:"swapWhereLastUpdated",type:"uint256"},{internalType:"uint256",name:"startingSwap",type:"uint256"},{internalType:"uint256",name:"finalSwap",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"wNative",outputs:[{internalType:"contract IWNative",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"positionId_",type:"uint256"},{internalType:"address",name:"recipient_",type:"address"},{internalType:"bool",name:"isNative_",type:"bool"}],name:"withdrawPosition",outputs:[],stateMutability:"nonpayable",type:"function"},{stateMutability:"payable",type:"receive"}];"undefined"!=typeof process&&process.env&&(process.env.REACT_APP_ENV||process,P=process.env.REACT_APP_BASE_API_URL||process.env.NEXT_PUBLIC_BASE_API_URL,C=process.env.REACT_APP_ZAP_API_URL||process.env.NEXT_PUBLIC_ZAP_API_URL);var E=P||"https://api.dzap.io",F=C||"https://zap.dzap.io",N="0x0000000000000000000000000000000000000000",R=["0x0000000000000000000000000000000000001010","0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee","0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE",N,"0x000000000000000000000000000000000000800A","11111111111111111111111111111111","0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000","EQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAM9c","0x000000000000000000000000000000000000aA09","0x2::sui::SUI","0x1::aptos_coin::AptosCoin","0x471EcE3750Da237f93B8E339c536989b8978a438"],U=e.defineChain({id:995,name:"5ire",nativeCurrency:{decimals:18,name:"5ire",symbol:"5ire"},rpcUrls:{default:{http:["https://rpc.5ire.network"]}},blockExplorers:{default:{name:"5ire Scan",url:"https://5irescan.io"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:47416}}}),B=e.defineChain({id:10242,name:"Arthera",nativeCurrency:{decimals:18,name:"AA",symbol:"AA"},rpcUrls:{default:{http:["https://rpc.arthera.net"]}},blockExplorers:{default:{name:"Arthera Scan",url:"https://explorer.arthera.net"}},contracts:{multicall3:{address:"0xcA11bde05977b3631167028862bE2a173976CA11",blockCreated:4502791}}}),j=[].concat(Object.values(c),[U,B]).reduce(function(e,t){var n;return t.id?I({},e,((n={})[t.id]=t,n)):e},{}),O={batch:{wait:100},retryDelay:500},q=function(t){var n=t.rpcUrls,a=t.chainId,r=n&&Array.isArray(n)&&n.length>0;return e.createPublicClient({chain:j[a],transport:e.fallback(r?n.map(function(t){return e.http(t,O)}):[e.http()])})},L=function(t,n){return void 0===n&&(n=N),e.isAddress(t)?R.includes(t)?n:e.getAddress(t):t};function Z(e){var t=e.destToken,n=e.destChainId,a=e.srcChainNativeAddress,r=e.destChainNativeAddress,s=void 0===r?N:r;return e.srcChainId+"_"+L(e.srcToken,void 0===a?N:a)+"-"+n+"_"+L(t,s)}BigInt(15),BigInt(10);var z=function(e){return e instanceof t.Signer},V=function(e){return"0x0000000000000000000000000000000000000000"===e},H=function(e){switch(e){case h.trade:return D;case h.dca:return M;default:throw new Error("Invalid Service")}},W={EIP2612Permit:"EIP2612Permit",Permit2:"Permit2",AutoPermit:"AutoPermit"},G=I({},function(e,t){if(null==e)return{};var n={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(-1!==t.indexOf(a))continue;n[a]=e[a]}return n}(W,["EIP2612Permit"]),{Default:"Default"}),K={name:"name",allowance:"allowance",approve:"approve",transfer:"transfer",transferFrom:"transferFrom",balanceOf:"balanceOf",decimals:"decimals",symbol:"symbol"},Q="get",Y="post",X=/*#__PURE__*/function(){function e(e){var t=this;this.axiosInstance=void 0,this.axiosInstance=T.default.create({baseURL:e}),this.axiosInstance.interceptors.response.use(function(e){return e},function(e){try{var n,a,r,s=function(t){return r?t:Promise.reject(e)},i=e.config;if(!i)return Promise.reject(e);i.retryCount=null!=(n=i.retryCount)?n:0,i.shouldRetry=null!=(a=i.shouldRetry)&&a;var o=function(){if(i.shouldRetry&&i.retryCount<2)return i.retryCount+=1,Promise.resolve(new Promise(function(e){return setTimeout(e,500)})).then(function(){var e=t.axiosInstance(i);return r=1,e})}();return Promise.resolve(o&&o.then?o.then(s):s(o))}catch(e){return Promise.reject(e)}})}return e.getInstance=function(t){return e.instances.has(t)||e.instances.set(t,new e(t)),e.instances.get(t).axiosInstance},e}();X.instances=new Map;var J=X.getInstance(E+"/v1/"),$=X.getInstance(F+"/v1/"),ee=function(e){var t=e.endpoint,n=e.data,a=e.method,r=void 0===a?Y:a,s=e.cancelToken,i=e.shouldRetry,o=void 0!==i&&i;try{return Promise.resolve(J({method:r,url:t,data:r===Q?void 0:n,params:r===Q?n:void 0,cancelToken:s,shouldRetry:o}).then(function(e){return e.data}).catch(function(e){return Promise.reject(e)}))}catch(e){return Promise.reject(e)}},te=function(e){var t=e.endpoint,n=e.data,a=e.method,r=void 0===a?Y:a,s=e.cancelToken,i=e.shouldRetry,o=void 0!==i&&i;try{return Promise.resolve($({method:r,url:t,data:r===Q?void 0:n,params:r===Q?n:void 0,cancelToken:s,shouldRetry:o}).then(function(e){return e.data}).catch(function(e){return Promise.reject(e)}))}catch(e){return Promise.reject(e)}},ne="dZap",ae="defiLlama",re="coingecko",se=function(e,t){return!!t&&Object.values(t).some(function(t){return t.isEnabled&&t.nativeToken.contract===e})},ie=function(){var e=this;this.id=re,this.requiresChainConfig=!0,this.fetchNativePrice=function(e,t){try{if(!t||!t[e].isEnabled)return Promise.resolve(0);var n=t[e].coingecko;return n?Promise.resolve(ee({endpoint:(a=null==n?void 0:n.nativeTokenKey,"https://api.coingecko.com/api/v3/simple/price?ids="+a+"&vs_currencies=usd&include_last_updated_at=true"),method:Q})).then(function(e){var t;return(null==(t=e[null==n?void 0:n.nativeTokenKey])?void 0:t.usd)||null}):Promise.resolve(0)}catch(e){return Promise.reject(e)}var a},this.fetchERC20Prices=function(e,t,n){try{if(!t.length||!n||!n[e].isEnabled)return Promise.resolve({});var a=n[e].coingecko;if(!a)return Promise.resolve({});var r=t.map(function(e){return ee({endpoint:(t=e,n=a.chainKey,"https://api.coingecko.com/api/v3/simple/token_price/"+n+"?contract_addresses="+t+"&vs_currencies=usd&include_last_updated_at=true"),method:Q});var t,n});return Promise.resolve(Promise.allSettled(r)).then(function(e){return e.reduce(function(e,n,a){var r=t[a];if("fulfilled"===n.status){var s,i=null==(s=n.value[r.toLowerCase()])?void 0:s.usd;e[r]=void 0===i?null:i.toString()}else e[r]=null,console.error("Error fetching data for address "+r+":",n.reason);return e},{})})}catch(e){return Promise.reject(e)}},this.fetchPrices=function(t,n,a){return Promise.resolve(function(){try{var r=(s=n.filter(function(e){return!se(e,a)}),Promise.resolve(Promise.all([e.fetchERC20Prices(t,s,a),s.length!==n.length?e.fetchNativePrice(t,a):void 0])).then(function(e){var n=e[0],r=e[1];return a[t].isEnabled&&r&&(n[a[t].nativeToken.contract]=r.toString()),n}))}catch(e){return{}}var s;return r&&r.then?r.then(void 0,function(){return{}}):r}())}},oe=/*#__PURE__*/function(){function e(){var e=this;this.id=ae,this.requiresChainConfig=!0,this.postProcess=function(e,t,n,a){var r=n[e].name;return r?t.reduce(function(e,t){var n=a.coins[r+":"+t];return n?(e[t]=n.price.toString(),e):(e[t]=null,e)},{}):{}},this.fetchPrices=function(t,n,a){return Promise.resolve(function(){try{var r=(i=e.preProcess(t,n,a)).length?Promise.resolve(ee({endpoint:(s=i,"https://coins.llama.fi/prices/current/"+s.join(",")),method:Q})).then(function(r){return e.postProcess(t,n,a,r)}):{}}catch(e){return{}}var s,i;return r&&r.then?r.then(void 0,function(){return{}}):r}())}}return e.prototype.preProcess=function(e,t,n){var a=n[e];if(!a.isEnabled||null==a||!a.name)return[];var r=a.name,s=a.defiLlama;return t.map(function(e){return null!=s&&s.chainKey?se(e,n)?s.chainKey+":"+s.nativeTokenKey:s.chainKey+":"+e:r+":"+e})},e}(),pe=function(e){return ee({endpoint:"/buildTx",data:e,method:Y})},ue=function(e,t){return te({endpoint:"buildTx",data:e,method:Y,cancelToken:t})},de=function(){return ee({endpoint:"chains",data:{},method:Q,shouldRetry:!0})},ye=function(e,t,n){return ee({endpoint:"token/tokens",data:{chainId:e,source:t,account:n},method:Q,shouldRetry:!0})},me=function(e,t,n,a,r){var s={tokenAddress:Array.isArray(e)?void 0:e,tokenAddresses:Array.isArray(e)?e.join(","):void 0,chainId:t,account:n,includeBalance:a,includePrice:r};return ee({endpoint:"token/details",data:s,method:Q})},le=function(){this.id=ne,this.requiresChainConfig=!1,this.fetchPrices=function(e,t){try{return Promise.resolve(function(n,a){try{var r=Promise.resolve(function(e,t){return ee({endpoint:"token/price",data:{tokenAddresses:e,chainId:t},method:Q})}(t,e))}catch(e){return a(e)}return r&&r.then?r.then(void 0,a):r}(0,function(e){return console.error("Failed to fetch token price",e),{}}))}catch(e){return Promise.reject(e)}}},ce=/*#__PURE__*/function(){function e(){this.client=void 0,this.client=new f.default({checkperiod:10,deleteOnExpire:!0})}return e.set=function(e,t,n){null!=t&&this.instance.client.set(e,t,null!=n?n:0)},e.get=function(e){return this.instance.client.get(e)},e.delete=function(e){return this.instance.client.del(e)},e.flush=function(){this.instance.client.flushAll()},t=e,(n=[{key:"instance",get:function(){return e._instance||(e._instance=new e),e._instance}}])&&function(e,t){for(var n=0;n<t.length;n++){var a=t[n];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,S(a.key),a)}}(t,n),Object.defineProperty(t,"prototype",{writable:!1}),t;var t,n}();ce._instance=void 0;const Te="undefined"!=typeof Symbol?Symbol.iterator||(Symbol.iterator=Symbol("Symbol.iterator")):"@@iterator";function fe(e,t,n){if(!e.s){if(n instanceof ve){if(!n.s)return void(n.o=fe.bind(null,e,t));1&t&&(t=n.s),n=n.v}if(n&&n.then)return void n.then(fe.bind(null,e,t),fe.bind(null,e,2));e.s=t,e.v=n;var a=e.o;a&&a(e)}}var ve=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,n){var a=new e,r=this.s;if(r){var s=1&r?t:n;if(s){try{fe(a,1,s(this.v))}catch(e){fe(a,2,e)}return a}return this}return this.o=function(e){try{var r=e.v;1&e.s?fe(a,1,t?t(r):r):n?fe(a,1,n(r)):fe(a,2,r)}catch(e){fe(a,2,e)}},a},e}();function be(e){return e instanceof ve&&1&e.s}var he=/*#__PURE__*/function(){function e(){this.providers=void 0,this.providers=this.initailizeProviders()}var t=e.prototype;return t.initailizeProviders=function(){return new Map([[ne,new le],[ae,new oe],[re,new ie]])},t.getPrices=function(e){var t=e.chainId,n=e.tokenAddresses,a=e.chainConfig,r=e.allowedSources,s=e.notAllowSources,i=void 0===s?[]:s;try{var o,p=function(){for(var e=[],t=0,n=Object.entries(c);t<n.length;t++){var a=n[t],r=a[0],s=a[1];null===s?e.push(r):l[r]=s}return e.length>0&&console.warn("Prices not found for tokens:",e),Object.keys(l).length>0&&ce.set(y,I({},m,l),900),I({},m,c)},u=this;if(!n||0===n.length)return console.warn("No token addresses provided"),Promise.resolve({});var d=u.getValidProviders({allowedSources:r,notAllowSources:i,chainConfig:a});if(0===d.length)return console.warn("No valid providers available based on the provided constraints"),Promise.resolve({});var y=function(e){return"tokenPrices_"+e}(t),m=ce.get(y)||{},l={},c={};n.forEach(function(e){null!=m&&m[e]||(c[e]=null)});var T=function(e,t,n){if("function"==typeof e[Te]){var a,r,s,i=function(e){try{for(;!((a=o.next()).done||n&&n());)if((e=t(a.value))&&e.then){if(!be(e))return void e.then(i,s||(s=fe.bind(null,r=new ve,2)));e=e.v}r?fe(r,1,e):r=e}catch(e){fe(r||(r=new ve),2,e)}},o=e[Te]();if(i(),o.return){var p=function(e){try{a.done||o.return()}catch(e){}return e};if(r&&r.then)return r.then(p,function(e){throw p(e)});p()}return r}if(!("length"in e))throw new TypeError("Object is not iterable");for(var u=[],d=0;d<e.length;d++)u.push(e[d]);return function(e,t,n){var a,r,s=-1;return function i(o){try{for(;++s<e.length&&(!n||!n());)if((o=t(s))&&o.then){if(!be(o))return void o.then(i,r||(r=fe.bind(null,a=new ve,2)));o=o.v}a?fe(a,1,o):a=o}catch(e){fe(a||(a=new ve),2,e)}}(),a}(u,function(e){return t(u[e])},n)}(d,function(e){var n=Object.keys(c).filter(function(e){return null===c[e]});if(0!==n.length)return Promise.resolve(e.fetchPrices(t,n,a)).then(function(e){u.updateTokensPrice(e,c)});o=1},function(){return o});return Promise.resolve(T&&T.then?T.then(p):p())}catch(e){return Promise.reject(e)}},t.getValidProviders=function(e){var t=e.allowedSources,n=e.notAllowSources,a=e.chainConfig;return Array.from(this.providers.values()).filter(function(e){var r,s,i=null==(r=null==t?void 0:t.includes(e.id))||r,o=null!=(s=null==n?void 0:n.includes(e.id))&&s,p=t?i&&!o:!o;return e.requiresChainConfig&&!a?(console.error("Provider "+e.id+" requires chainConfig but none was provided."),!1):p})},t.updateTokensPrice=function(e,t){Object.entries(e).forEach(function(e){var n=e[1];null!==n&&(t[e[0]]=n)})},e}(),ge="BridgeCallFailed",xe=function(t){var n,a,r=t.error;if((null==r?void 0:r.code)===exports.StatusCodes.WalletRPCFailure||(null==r||null==(n=r.cause)?void 0:n.code)===exports.StatusCodes.WalletRPCFailure)return{error:r,errorMsg:"Too many requests, failure on user wallet",code:exports.StatusCodes.WalletRPCFailure,status:exports.TxnStatus.error};if((null==r?void 0:r.code)===exports.StatusCodes.UserRejectedRequest||(null==r||null==(a=r.cause)?void 0:a.code)===exports.StatusCodes.UserRejectedRequest)return{error:r,errorMsg:"Rejected by User",code:exports.StatusCodes.UserRejectedRequest,status:exports.TxnStatus.rejected};var s,i=r.shortMessage,o=(s=r.metaMessages[0].match(/Error: (\w+)/))?s[1]:null;if(o==ge){var p=r.metaMessages[1];try{p=function(t){if(t.length<68)return t;var n="0x"+t.slice(10);return e.decodeAbiParameters(e.parseAbiParameters("string"),n)[0]}(r.metaMessages[1].match(/\((.*?)\)/)[1])}catch(e){}i=ge+" : "+p}else o&&(i=o);return{status:exports.TxnStatus.error,error:r,errorMsg:i,code:exports.StatusCodes.ContractExecutionError}},Ae=function(){};Ae.sendTransaction=function(e){var t=e.chainId,n=e.signer,a=e.from,r=e.to,s=e.data,i=e.value;try{return Promise.resolve(function(e,o){try{var p=z(n)?(console.log("Using ethers signer."),Promise.resolve(n.sendTransaction({from:a,to:r,data:s,value:i})).then(function(e){return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,txnHash:e.hash}})):(console.log("Using viem walletClient."),Promise.resolve(n.sendTransaction({chain:j[t],account:a,to:r,data:s,value:BigInt(i)})).then(function(e){return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,txnHash:e}}))}catch(e){return o(e)}return p&&p.then?p.then(void 0,o):p}(0,function(e){return console.log({error:e}),xe({error:e})}))}catch(e){return Promise.reject(e)}};var we,Ie=((we={})[324]="0x0000000000225e31D15943971F47aD3022F714Fa",we[10242]="0x5Aeec43fF96b9B6c5a1dC1DAdA662ACE3c236C49",we[100]="0x5Aeec43fF96b9B6c5a1dC1DAdA662ACE3c236C49",we[8217]="0x08208a5f56696E7AA3eAF7a307fa63B37bd8e8A5",we[6001]="0x08208a5f56696E7AA3eAF7a307fa63B37bd8e8A5",we[996]="0x08208a5f56696E7AA3eAF7a307fa63B37bd8e8A5",we[14]="0x08208a5f56696E7AA3eAF7a307fa63B37bd8e8A5",we[8822]="0x08208a5f56696E7AA3eAF7a307fa63B37bd8e8A5",we[204]="0x08208a5f56696E7AA3eAF7a307fa63B37bd8e8A5",we[42766]="0x08208a5f56696E7AA3eAF7a307fa63B37bd8e8A5",we[5165]="0x08208a5f56696E7AA3eAF7a307fa63B37bd8e8A5",we[13371]="0x08208a5f56696E7AA3eAF7a307fa63B37bd8e8A5",we[2741]="0x0000000000225e31D15943971F47aD3022F714Fa",we[232]="0x0000000000225e31D15943971F47aD3022F714Fa",we),Se=[{inputs:[{internalType:"uint256",name:"deadline",type:"uint256"}],name:"AllowanceExpired",type:"error"},{inputs:[],name:"ExcessiveInvalidation",type:"error"},{inputs:[{internalType:"uint256",name:"amount",type:"uint256"}],name:"InsufficientAllowance",type:"error"},{inputs:[{internalType:"uint256",name:"maxAmount",type:"uint256"}],name:"InvalidAmount",type:"error"},{inputs:[],name:"InvalidContractSignature",type:"error"},{inputs:[],name:"InvalidNonce",type:"error"},{inputs:[],name:"InvalidSignature",type:"error"},{inputs:[],name:"InvalidSignatureLength",type:"error"},{inputs:[],name:"InvalidSigner",type:"error"},{inputs:[],name:"LengthMismatch",type:"error"},{inputs:[{internalType:"uint256",name:"signatureDeadline",type:"uint256"}],name:"SignatureExpired",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint160",name:"amount",type:"uint160"},{indexed:!1,internalType:"uint48",name:"expiration",type:"uint48"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"address",name:"token",type:"address"},{indexed:!1,internalType:"address",name:"spender",type:"address"}],name:"Lockdown",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint48",name:"newNonce",type:"uint48"},{indexed:!1,internalType:"uint48",name:"oldNonce",type:"uint48"}],name:"NonceInvalidation",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"token",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint160",name:"amount",type:"uint160"},{indexed:!1,internalType:"uint48",name:"expiration",type:"uint48"},{indexed:!1,internalType:"uint48",name:"nonce",type:"uint48"}],name:"Permit",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!1,internalType:"uint256",name:"word",type:"uint256"},{indexed:!1,internalType:"uint256",name:"mask",type:"uint256"}],name:"UnorderedNonceInvalidation",type:"event"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"},{internalType:"address",name:"",type:"address"}],name:"allowance",outputs:[{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"}],name:"approve",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint48",name:"newNonce",type:"uint48"}],name:"invalidateNonces",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"wordPos",type:"uint256"},{internalType:"uint256",name:"mask",type:"uint256"}],name:"invalidateUnorderedNonces",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"address",name:"spender",type:"address"}],internalType:"struct IAllowanceTransfer.TokenSpenderPair[]",name:"approvals",type:"tuple[]"}],name:"lockdown",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"",type:"address"},{internalType:"uint256",name:"",type:"uint256"}],name:"nonceBitmap",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],internalType:"struct IAllowanceTransfer.PermitDetails[]",name:"details",type:"tuple[]"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"sigDeadline",type:"uint256"}],internalType:"struct IAllowanceTransfer.PermitBatch",name:"permitBatch",type:"tuple"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"uint48",name:"expiration",type:"uint48"},{internalType:"uint48",name:"nonce",type:"uint48"}],internalType:"struct IAllowanceTransfer.PermitDetails",name:"details",type:"tuple"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"sigDeadline",type:"uint256"}],internalType:"struct IAllowanceTransfer.PermitSingle",name:"permitSingle",type:"tuple"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions",name:"permitted",type:"tuple"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails",name:"transferDetails",type:"tuple"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions[]",name:"permitted",type:"tuple[]"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitBatchTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails[]",name:"transferDetails",type:"tuple[]"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions",name:"permitted",type:"tuple"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails",name:"transferDetails",type:"tuple"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes32",name:"witness",type:"bytes32"},{internalType:"string",name:"witnessTypeString",type:"string"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitWitnessTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{components:[{internalType:"address",name:"token",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],internalType:"struct ISignatureTransfer.TokenPermissions[]",name:"permitted",type:"tuple[]"},{internalType:"uint256",name:"nonce",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"}],internalType:"struct ISignatureTransfer.PermitBatchTransferFrom",name:"permit",type:"tuple"},{components:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"requestedAmount",type:"uint256"}],internalType:"struct ISignatureTransfer.SignatureTransferDetails[]",name:"transferDetails",type:"tuple[]"},{internalType:"address",name:"owner",type:"address"},{internalType:"bytes32",name:"witness",type:"bytes32"},{internalType:"string",name:"witnessTypeString",type:"string"},{internalType:"bytes",name:"signature",type:"bytes"}],name:"permitWitnessTransferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"address",name:"token",type:"address"}],internalType:"struct IAllowanceTransfer.AllowanceTransferDetails[]",name:"transferDetails",type:"tuple[]"}],name:"transferFrom",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint160",name:"amount",type:"uint160"},{internalType:"address",name:"token",type:"address"}],name:"transferFrom",outputs:[],stateMutability:"nonpayable",type:"function"}],Pe=function(e){var t=e.signer,n=e.domain,a=e.message,r=e.types,s=e.account,i=e.primaryType;try{var o,p=z(t)?Promise.resolve(t._signTypedData(n,r,a)).then(function(e){o=e}):Promise.resolve(t.signTypedData({account:s,domain:n,message:a,primaryType:i,types:r})).then(function(e){o=e});return Promise.resolve(p&&p.then?p.then(function(){return o}):o)}catch(e){return Promise.reject(e)}},Ce=function(e){var t=Math.floor(Date.now()/1e3);return BigInt(t+e)};function _e(e){var t;return null!=(t=Ie[e])?t:"0x000000000022D473030F116dDEE9F6B43aC78BA3"}var ke,De=[{inputs:[],name:"InvalidShortString",type:"error"},{inputs:[{internalType:"string",name:"str",type:"string"}],name:"StringTooLong",type:"error"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"owner",type:"address"},{indexed:!0,internalType:"address",name:"spender",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Approval",type:"event"},{anonymous:!1,inputs:[],name:"EIP712DomainChanged",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"from",type:"address"},{indexed:!0,internalType:"address",name:"to",type:"address"},{indexed:!1,internalType:"uint256",name:"value",type:"uint256"}],name:"Transfer",type:"event"},{inputs:[],name:"DOMAIN_SEPARATOR",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"PERMIT_TYPEHASH",outputs:[{internalType:"bytes32",name:"",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"}],name:"allowance",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"approve",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"account",type:"address"}],name:"balanceOf",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"decimals",outputs:[{internalType:"uint8",name:"",type:"uint8"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"subtractedValue",type:"uint256"}],name:"decreaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"eip712Domain",outputs:[{internalType:"bytes1",name:"fields",type:"bytes1"},{internalType:"string",name:"name",type:"string"},{internalType:"string",name:"version",type:"string"},{internalType:"uint256",name:"chainId",type:"uint256"},{internalType:"address",name:"verifyingContract",type:"address"},{internalType:"bytes32",name:"salt",type:"bytes32"},{internalType:"uint256[]",name:"extensions",type:"uint256[]"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"addedValue",type:"uint256"}],name:"increaseAllowance",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"name",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"version",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"}],name:"nonces",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"owner",type:"address"},{internalType:"address",name:"spender",type:"address"},{internalType:"uint256",name:"value",type:"uint256"},{internalType:"uint256",name:"deadline",type:"uint256"},{internalType:"uint8",name:"v",type:"uint8"},{internalType:"bytes32",name:"r",type:"bytes32"},{internalType:"bytes32",name:"s",type:"bytes32"}],name:"permit",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"symbol",outputs:[{internalType:"string",name:"",type:"string"}],stateMutability:"view",type:"function"},{inputs:[],name:"totalSupply",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transfer",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"from",type:"address"},{internalType:"address",name:"to",type:"address"},{internalType:"uint256",name:"amount",type:"uint256"}],name:"transferFrom",outputs:[{internalType:"bool",name:"",type:"bool"}],stateMutability:"nonpayable",type:"function"}],Me={Permit:[{name:"owner",type:"address"},{name:"spender",type:"address"},{name:"value",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]},Ee=function(t){var n=t.address,a=t.chainId,r=t.rpcUrls,s=t.permitEIP2612DisabledTokens;try{if(null!=s&&s.some(function(e){return e.toLowerCase()===n.toLowerCase()}))return Promise.resolve({supportsPermit:!1});var i=e.getContract({abi:De,address:n,client:q({chainId:a,rpcUrls:r})});return Promise.resolve(Promise.allSettled([i.read.DOMAIN_SEPARATOR(),i.read.nonces([N]),i.read.version()])).then(function(e){var t=e[0],n=e[2];return"rejected"===t.status||"rejected"===e[1].status?{supportsPermit:!1}:{supportsPermit:!0,domainSeparator:t.value,version:"fulfilled"===n.status?n.value:void 0}})}catch(e){return Promise.reject(e)}};function Fe(e,t,n){if(!e.s){if(n instanceof Ne){if(!n.s)return void(n.o=Fe.bind(null,e,t));1&t&&(t=n.s),n=n.v}if(n&&n.then)return void n.then(Fe.bind(null,e,t),Fe.bind(null,e,2));e.s=t,e.v=n;var a=e.o;a&&a(e)}}var Ne=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,n){var a=new e,r=this.s;if(r){var s=1&r?t:n;if(s){try{Fe(a,1,s(this.v))}catch(e){Fe(a,2,e)}return a}return this}return this.o=function(e){try{var r=e.v;1&e.s?Fe(a,1,t?t(r):r):n?Fe(a,1,n(r)):Fe(a,2,r)}catch(e){Fe(a,2,e)}},a},e}();function Re(e){return e instanceof Ne&&1&e.s}var Ue=function(){};ke=Ue,Ue.generatePermitDataForToken=function(n){var a=n.token,r=n.isFirstToken,s=n.oneToMany,i=n.totalSrcAmount,o=n.chainId,p=n.rpcUrls,d=n.sender,y=n.spender,m=n.permitType,l=n.signer,c=n.service,T=n.permitEIP2612DisabledTokens;try{if(V(a.address))return Promise.resolve({status:exports.TxnStatus.success,code:exports.StatusCodes.Success,permitData:g,permitType:W.EIP2612Permit});var f=s&&r?i:BigInt(a.amount);return Promise.resolve(Ee({address:a.address,chainId:o,rpcUrls:p,permitEIP2612DisabledTokens:T})).then(function(n){if(m===W.EIP2612Permit||m===W.AutoPermit&&n.supportsPermit){if(!n.supportsPermit)throw new Error("Token does not support EIP-2612 permits");return s&&!r?{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,permitData:g,permitType:W.EIP2612Permit}:Promise.resolve(function(n){var a=n.chainId,r=n.spender,s=n.account,i=n.token,o=n.signer,p=n.version,u=n.rpcUrls,d=n.amount,y=void 0===d?e.maxUint256:d,m=n.sigDeadline,l=void 0===m?Ce(A):m;try{return Promise.resolve(function(n,d){try{var m=(T=s,f=l,v=e.getContract({abi:De,address:c=i,client:q({chainId:a,rpcUrls:u})}),Promise.resolve(Promise.allSettled([v.read.name(),v.read.nonces([T])])).then(function(n){var s=n[0],i=n[1];if("rejected"===s.status||"rejected"===i.status)return{status:exports.TxnStatus.error,code:exports.StatusCodes.Error};var u=s.value,d=i.value;if(!u||Number.isNaN(Number(d)))throw new Error("Failed to retrieve token name or nonce");return Promise.resolve(Pe({signer:o,domain:{name:u,version:p,chainId:a,verifyingContract:c},message:{owner:T,spender:r,value:y,nonce:d,deadline:f},types:Me,account:T,primaryType:"Permit"})).then(function(n){var a=t.ethers.utils.splitSignature(n),s=t.ethers.utils.defaultAbiCoder.encode(["address","address","uint256","uint256","uint8","bytes32","bytes32"],[T,r,y,f,a.v,a.r,a.s]),i=e.encodeAbiParameters(e.parseAbiParameters("uint8, bytes"),[exports.PermitType.PERMIT,s]);return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,permitData:i}})}))}catch(e){return d(e)}var c,T,f,v;return m&&m.then?m.then(void 0,d):m}(0,function(e){var t;return console.log("Error generating permit signature:",e),(null==e||null==(t=e.cause)?void 0:t.code)===exports.StatusCodes.UserRejectedRequest||(null==e?void 0:e.code)===exports.StatusCodes.UserRejectedRequest?{status:exports.TxnStatus.rejected,code:exports.StatusCodes.UserRejectedRequest}:{status:exports.TxnStatus.error,code:exports.StatusCodes.Error}}))}catch(e){return Promise.reject(e)}}({chainId:o,account:d,token:a.address,spender:y,amount:f,signer:l,rpcUrls:p,version:n.version||"1"})).then(function(e){return{status:e.status,code:e.code,permitData:e.permitData,permitType:W.EIP2612Permit}})}return s&&!r?{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,permitData:x,permitType:W.Permit2}:Promise.resolve(function(t){var n=t.chainId,a=t.spender,r=t.service,s=t.account,i=t.token,o=t.signer,p=t.rpcUrls,d=t.amount,y=void 0===d?e.maxUint256:d,m=t.sigDeadline,l=void 0===m?Ce(A):m,c=t.expiration,T=void 0===c?e.maxUint48:c;try{return Promise.resolve(function(t,d){try{var m=(c=_e(n),f=q({chainId:n,rpcUrls:p}),Promise.resolve(f.readContract({address:c,abi:Se,functionName:"allowance",args:[s,i,a]})).then(function(t){var p={details:{token:i,amount:y,expiration:T,nonce:t[2]},spender:a,sigDeadline:l};return Promise.resolve(Pe({signer:o,domain:{chainId:n,name:"Permit2",verifyingContract:c},message:p,types:{PermitSingle:[{name:"details",type:"PermitDetails"},{name:"spender",type:"address"},{name:"sigDeadline",type:"uint256"}],PermitDetails:[{name:"token",type:"address"},{name:"amount",type:"uint160"},{name:"expiration",type:"uint48"},{name:"nonce",type:"uint48"}]},account:s,primaryType:"PermitSingle"})).then(function(t){var n=e.encodeAbiParameters(e.parseAbiParameters("uint160 allowanceAmount, uint48 nonce, uint48 expiration, uint256 sigDeadline, bytes signature"),[BigInt(p.details.amount.toString()),Number(p.details.nonce.toString()),Number(p.details.expiration.toString()),BigInt(p.sigDeadline.toString()),t]),a=r===h.zap?u.PERMIT2:exports.PermitType.PERMIT2_APPROVE,s=e.encodeAbiParameters(e.parseAbiParameters("uint8, bytes"),[a,n]);return{status:exports.TxnStatus.success,permitData:s,code:exports.StatusCodes.Success}})}))}catch(e){return d(e)}var c,f;return m&&m.then?m.then(void 0,d):m}(0,function(e){var t;return(null==e||null==(t=e.cause)?void 0:t.code)===exports.StatusCodes.UserRejectedRequest||(null==e?void 0:e.code)===exports.StatusCodes.UserRejectedRequest?{status:exports.TxnStatus.rejected,code:exports.StatusCodes.UserRejectedRequest,permitdata:null}:{status:exports.TxnStatus.error,code:e.code,permitData:null}}))}catch(e){return Promise.reject(e)}}({chainId:o,account:d,token:a.address,spender:y,amount:f,service:c,signer:l,rpcUrls:p})).then(function(e){return{status:e.status,code:e.code,permitData:e.permitData,permitType:W.Permit2}})})}catch(e){return Promise.reject(e)}},Ue.signPermit=function(e){var t,n,a,r,s,i,o=e.chainId,p=e.tokens,u=e.rpcUrls,d=e.sender,y=e.signer,m=e.service,l=e.signatureCallback,c=e.spender,T=e.permitType,f=e.permitEIP2612DisabledTokens;try{var v,b=function(e){return v?e:{status:exports.TxnStatus.success,tokens:p,code:exports.StatusCodes.Success}};if(0===p.length)return Promise.resolve({status:exports.TxnStatus.success,code:exports.StatusCodes.Success,tokens:p});var h=p.length>1&&p[0].address===p[1].address,g=p.reduce(function(e,t){return e+BigInt(t.amount)},BigInt(0)),x=(t=p,n=function(e){var t=0===e;return Promise.resolve(ke.generatePermitDataForToken({token:p[e],isFirstToken:t,oneToMany:h,totalSrcAmount:g,chainId:o,rpcUrls:u,sender:d,spender:c,permitType:T,signer:y,service:m,permitEIP2612DisabledTokens:f})).then(function(n){var a=n.status,r=n.permitData,s=n.permitType;if(a!==exports.TxnStatus.success)return v=1,{status:a,code:n.code,tokens:p};p[e].permitData=r;var i=function(){if(l&&!V(p[e].address)){var n=h&&t?g:BigInt(p[e].amount);return Promise.resolve(l({permitData:r,srcToken:p[e].address,amount:n,permitType:s})).then(function(){})}}();return i&&i.then?i.then(function(){}):void 0})},a=function(){return v},i=-1,function e(o){try{for(;++i<t.length&&(!a||!a());)if((o=n(i))&&o.then){if(!Re(o))return void o.then(e,s||(s=Fe.bind(null,r=new Ne,2)));o=o.v}r?Fe(r,1,o):r=o}catch(e){Fe(r||(r=new Ne),2,e)}}(),r);return Promise.resolve(x&&x.then?x.then(b):b(x))}catch(e){return Promise.reject(e)}};var Be=function(){};Be.buildAndSendTransaction=function(e){var t=e.request,n=e.signer,a=e.txnData;try{return Promise.resolve(function(e,r){try{var s=function(){function e(){var e=r.data,t=r.from,a=r.to,i=r.value,o=r.gasLimit,p=r.additionalInfo,u=r.updatedQuotes;return z(n)?(console.log("Using ethers signer."),Promise.resolve(n.sendTransaction({from:t,to:a,data:e,value:i,gasLimit:o})).then(function(e){return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,txnHash:e.hash,additionalInfo:p,updatedQuotes:u}})):(console.log("Using viem walletClient."),Promise.resolve(n.sendTransaction({chain:j[s],account:t,to:a,data:e,value:BigInt(i)})).then(function(e){return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,txnHash:e,additionalInfo:p}}))}var r,s=t.fromChain,i=function(){if(!a)return Promise.resolve(pe(t)).then(function(e){r=e});r=a}();return i&&i.then?i.then(e):e()}()}catch(e){return r(e)}return s&&s.then?s.then(void 0,r):s}(0,function(e){var t,n,a,r,s,i,o,p,u;return console.log({error:e}),function(e){return Boolean(e)&&e.isAxiosError}(e)?(null==e||null==(t=e.response)?void 0:t.status)===exports.StatusCodes.SimulationFailure?{status:exports.TxnStatus.error,errorMsg:"Simulation Failed",error:(null==(o=e.response)?void 0:o.data).message,code:(null==(p=e.response)?void 0:p.data).code,action:(null==(u=e.response)?void 0:u.data).action}:{status:exports.TxnStatus.error,errorMsg:"Params Failed: "+JSON.stringify(null==e||null==(n=e.response)||null==(n=n.data)?void 0:n.message),error:null!=(a=null==e||null==(r=e.response)?void 0:r.data)?a:e,code:null!=(s=null==e||null==(i=e.response)?void 0:i.status)?s:exports.StatusCodes.Error}:xe({error:e})}))}catch(e){return Promise.reject(e)}};var je,Oe={execute:"execute"};function qe(e,t){try{var n=e()}catch(e){return t(e)}return n&&n.then?n.then(void 0,t):n}function Le(e,t,n){if(!e.s){if(n instanceof ze){if(!n.s)return void(n.o=Le.bind(null,e,t));1&t&&(t=n.s),n=n.v}if(n&&n.then)return void n.then(Le.bind(null,e,t),Le.bind(null,e,2));e.s=t,e.v=n;var a=e.o;a&&a(e)}}var Ze=function(){};const ze=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,n){const a=new e,r=this.s;if(r){const e=1&r?t:n;if(e){try{Le(a,1,e(this.v))}catch(e){Le(a,2,e)}return a}return this}return this.o=function(e){try{const r=e.v;1&e.s?Le(a,1,t?t(r):r):n?Le(a,1,n(r)):Le(a,2,r)}catch(e){Le(a,2,e)}},a},e}();function Ve(e){return e instanceof ze&&1&e.s}function He(e,t,n){if(!e.s){if(n instanceof We){if(!n.s)return void(n.o=He.bind(null,e,t));1&t&&(t=n.s),n=n.v}if(n&&n.then)return void n.then(He.bind(null,e,t),He.bind(null,e,2));e.s=t,e.v=n;const a=e.o;a&&a(e)}}je=Ze,Ze.execute=function(e){var t=e.chainId,n=e.txnData,a=e.signer;try{return Promise.resolve(qe(function(){var e,r=n.callData,s=n.callTo,i=n.value,o=n.estimatedGas;return z(a)?(console.log("Using ethers signer."),Promise.resolve(a.getAddress()).then(function(e){return Promise.resolve(a.sendTransaction({from:e,to:s,data:r,value:BigInt(i),gasLimit:BigInt(o)?BigInt(o):void 0})).then(function(e){return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,txnHash:e.hash}})})):(console.log("Using viem walletClient."),Promise.resolve(a.sendTransaction({chain:j[t],account:null==(e=a.account)?void 0:e.address,to:n.callTo,data:n.callData,value:BigInt(n.value)})).then(function(e){return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,txnHash:e}}))},function(e){return console.log({error:e}),xe({error:e})}))}catch(e){return Promise.reject(e)}},Ze.approve=function(e){var t=e.chainId,n=e.data,a=e.signer;try{return Promise.resolve(qe(function(){var e=n.callData,r=n.callTo,s=n.value,i=n.estimatedGas,o=q({chainId:t,rpcUrls:void 0});return Promise.resolve(o.getBlockNumber()).then(function(o){return console.log("block Number and data"),console.dir(I({blockNumber:o},n),{depth:null}),z(a)?(console.log("Using ethers signer."),Promise.resolve(a.getAddress()).then(function(t){return Promise.resolve(a.sendTransaction({from:t,to:r,data:e,value:BigInt(s),gasLimit:BigInt(i)?BigInt(i):void 0})).then(function(e){return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,txnHash:e.hash}})})):(console.log("Using viem walletClient."),Promise.resolve(a.sendTransaction({chain:j[t],account:null==(p=a.account)?void 0:p.address,to:n.callTo,data:n.callData,value:BigInt(n.value)})).then(function(e){return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,txnHash:e}}));var p})},function(e){return console.log({error:e}),xe({error:e})}))}catch(e){return Promise.reject(e)}},Ze.zap=function(e){var t=e.request,n=e.steps,a=e.signer;try{var r;return Promise.resolve(qe(function(){function e(e){var t,i;if(r)return e;function o(e){return t?e:{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,txnHash:i}}var p,u,d,y,m,l,c=(p=n,u=function(e){var r=n[e];return function(){if(r.action===Oe.execute)return Promise.resolve(je.execute({chainId:s,txnData:r.data,signer:a})).then(function(e){if(e.status!==exports.TxnStatus.success)return t=1,e;i=e.txnHash})}()},d=function(){return t},l=-1,function e(t){try{for(;++l<p.length&&(!d||!d());)if((t=u(l))&&t.then){if(!Ve(t))return void t.then(e,m||(m=Le.bind(null,y=new ze,2)));t=t.v}y?Le(y,1,t):y=t}catch(e){Le(y||(y=new ze),2,e)}}(),y);return c&&c.then?c.then(o):o(c)}var s=t.srcChainId,i=function(){if(!n||0===n.length)return Promise.resolve(ue(t)).then(function(e){if(!(n=e.data.steps)||0===n.length){var t={status:exports.TxnStatus.error,code:exports.StatusCodes.FunctionNotFound,errorMsg:"No steps found in the zap route."};return r=1,t}})}();return i&&i.then?i.then(e):e(i)},function(e){return console.log({error:e}),xe({error:e})}))}catch(e){return Promise.reject(e)}};var We=/*#__PURE__*/function(){function e(){}return e.prototype.then=function(t,n){var a=new e,r=this.s;if(r){var s=1&r?t:n;if(s){try{He(a,1,s(this.v))}catch(e){He(a,2,e)}return a}return this}return this.o=function(e){try{var r=e.v;1&e.s?He(a,1,t?t(r):r):n?He(a,1,n(r)):He(a,2,r)}catch(e){He(a,2,e)}},a},e}();function Ge(e){return e instanceof We&&1&e.s}var Ke=function(t,n,a){return n?new v.default(e.formatUnits(BigInt(t),n)).mul(a||0).toFixed(5):"0"},Qe=function(e){var t=new v.default(function(e){return e.fee.gasFee.reduce(function(e,t){return t.included?e:e.plus(t.amountUSD||"0")},new v.default(0)).toFixed(5)}(e));return e.fee.providerFee.forEach(function(e){e.included||(t=t.plus(new v.default(e.amountUSD||"0")))}),new v.default(e.destAmountUSD||"0").minus(t).toFixed(5)},Ye=function(e,t){var n=!1,a=function(e,a,r,s,i){var o,p=(null==(o=t[a])?void 0:o[r])||"0";return e.amountUSD&&0!==parseFloat(e.amountUSD)?e.amountUSD:(n=!1===e.included,Ke(s,i,p))},r=function(e){return e.map(function(e){return I({},e,{amountUSD:a(e,e.chainId,e.address,e.amount,e.decimals)})})},s={gasFee:r(e.gasFee),providerFee:r(e.providerFee),protocolFee:r(e.protocolFee)};return{isUpdated:n,fee:s}},Xe=function(e,t){return e.path.map(function(n){return I({},n,{fee:Ye(n.fee,t).fee,srcAmountUSD:e.srcAmountUSD,destAmountUSD:e.destAmountUSD})})},Je=/*#__PURE__*/function(){function t(e){this.cancelTokenSource=null,this.priceService=void 0,this.rpcUrlsByChainId={},this.priceService=new he,e&&(this.rpcUrlsByChainId=e)}t.getInstance=function(e){return t.instance||(t.instance=new t(e)),t.instance},t.getChainConfig=function(){try{var e=function(){return t.chainConfig},n=function(){if(!t.chainConfig)return Promise.resolve(de()).then(function(e){var n={};e.forEach(function(e){n[e.chainId]||(n[e.chainId]=e)}),t.chainConfig=n})}();return Promise.resolve(n&&n.then?n.then(e):e())}catch(e){return Promise.reject(e)}},t.getDZapAbi=function(e){return H(e)};var n=t.prototype;return n.getTradeQuotes=function(e){try{var n=this;return Promise.resolve(function(e){return ee({endpoint:"/quotes",data:e,method:Y,shouldRetry:!0})}(e)).then(function(a){return Promise.resolve(t.getChainConfig()).then(function(t){return null===t?a:function(e,t,n,a){try{var r={};return Object.values(e).forEach(function(e){e.tokensWithoutPrice&&Object.entries(e.tokensWithoutPrice).forEach(function(e){var t=e[1],n=Number(e[0]);r[n]||(r[n]=new Set),t.forEach(function(e){return r[n].add(e)})})}),0===Object.keys(r).length?Promise.resolve(e):Promise.resolve(Promise.all(Object.entries(r).map(function(e){var t=e[0],r=e[1];try{var s=Number(t),i=Array.from(r);return Promise.resolve(n.getPrices({chainId:s,tokenAddresses:i,chainConfig:a,notAllowSources:[ne]})).then(function(e){return[s,e]})}catch(e){return Promise.reject(e)}}))).then(function(n){for(var a=Object.fromEntries(n),r=0,s=Object.values(e);r<s.length;r++){var i=s[r];if(i.quoteRates&&Object.keys(i.quoteRates).length){for(var o=!0,p=function(){var e=d[u],n=t.data.find(function(t){return t.srcToken===e.srcToken.address&&t.destToken===e.destToken.address});if(!n)return 1;var r=n.srcDecimals,s=n.destDecimals,i=n.toChain;if(!Number(e.srcAmountUSD)){var p;o=!1;var y=(null==(p=a[t.fromChain])?void 0:p[e.srcToken.address])||"0";e.srcAmountUSD=Ke(e.srcAmount,r,y)}if(!Number(e.destAmountUSD)){var m;o=!1;var l=(null==(m=a[i])?void 0:m[e.destToken.address])||"0";e.destAmountUSD=Ke(e.destAmount,s,l)}if(Number(e.srcAmountUSD)&&Number(e.destAmountUSD)){var c=new v.default(e.destAmountUSD).minus(e.srcAmountUSD).div(e.srcAmountUSD).mul(100);e.priceImpactPercent=c.toFixed(2)}var T=Ye(e.fee,a);o=o&&!T.isUpdated,e.fee=T.fee,e.path=Xe(e,a)},u=0,d=Object.values(i.quoteRates);u<d.length;u++)p();0!==Object.keys(i.tokensWithoutPrice).length&&!1===o&&(i.quoteRates=Object.fromEntries(Object.entries(i.quoteRates).sort(function(e,t){var n=t[1],a=Qe(e[1]),r=Qe(n);return Number(r)-Number(a)})),i.recommendedSource=Object.keys(i.quoteRates)[0])}}return e})}catch(e){return Promise.reject(e)}}(a,e,n.priceService,t)})})}catch(e){return Promise.reject(e)}},n.buildTradeTxn=function(e){try{return Promise.resolve(pe(e))}catch(e){return Promise.reject(e)}},n.getTradeTxnStatus=function(e){return function(e){return ee({endpoint:"/status",data:{txHash:e.txHash,txIds:e.txIds,chainId:e.chainId},method:Q})}({txHash:e.txHash,txIds:e.txIds,chainId:e.chainId})},n.getAllSupportedChains=function(){return de()},n.getAllTokens=function(n,a,r){try{var s=this;return Promise.resolve(function(i,o){try{var p=Promise.resolve(Promise.allSettled([ye(n,a,r),t.getChainConfig()])).then(function(t){var a=t[0],r=t[1],i="fulfilled"===a.status?a.value:{},o="fulfilled"===r.status?r.value:null;return o?Promise.resolve(function(t,n,a,r){try{return Promise.resolve(function(s,i){try{var o=0===(p=Object.values(t).filter(function(e){var t=e.price;return(!t||"0"===t)&&"0"!==e.balance}).map(function(e){return e.contract})).length?t:Promise.resolve(r.getPrices({chainId:n,tokenAddresses:p,chainConfig:a,notAllowSources:[ne]})).then(function(n){return p.forEach(function(a){t[a].price=n[a]||t[a].price,t[a].balanceInUsd=n[a]?parseFloat(n[a])*parseFloat(e.formatUnits(BigInt(t[a].balance),t[a].decimals)):null}),s=(a=Object.entries(t).reduce(function(e,t){var n=t[0],a=t[1];return null!==a.balanceInUsd?e.withBalanceInUsd.push([n,a]):e.withoutBalanceInUsd.push([n,a]),e},{withBalanceInUsd:[],withoutBalanceInUsd:[]})).withoutBalanceInUsd,(r=a.withBalanceInUsd).sort(function(e,t){return t[1].balanceInUsd-e[1].balanceInUsd}),Object.fromEntries([].concat(r,s));var a,r,s})}catch(e){return i(e)}var p;return o&&o.then?o.then(void 0,i):o}(0,function(e){return console.error("Error fetching token prices:",e),t}))}catch(e){return Promise.reject(e)}}(i,n,o,s.priceService)):i})}catch(e){return o(e)}return p&&p.then?p.then(void 0,o):p}(0,function(e){return console.error("Error fetching or updating tokens:",e),{}}))}catch(e){return Promise.reject(e)}},n.getTokenDetails=function(e,t,n,a,r){try{return Promise.resolve(me(e,t,n,a,r))}catch(e){return Promise.reject(e)}},n.getTokensDetails=function(e,t,n,a,r){try{return Promise.resolve(me(e,t,n,a,r))}catch(e){return Promise.reject(e)}},n.getTokenPrices=function(e,n){try{var a=this;return Promise.resolve(t.getChainConfig()).then(function(t){return Promise.resolve(a.priceService.getPrices({chainId:n,tokenAddresses:e,chainConfig:t}))})}catch(e){return Promise.reject(e)}},n.trade=function(e){var t=e.request,n=e.signer,a=e.txnData;try{return Promise.resolve(Be.buildAndSendTransaction({request:t,signer:n,txnData:a}))}catch(e){return Promise.reject(e)}},n.sendTransaction=function(e){var t=e.signer,n=e.txnData;try{return Promise.resolve(Ae.sendTransaction(I({signer:t},n)))}catch(e){return Promise.reject(e)}},n.decodeTxnData=function(n){var a=n.data,r=n.service,s=n.chainId;try{return Promise.resolve(t.getChainConfig()).then(function(t){if(null===t||null==(null==t?void 0:t[s]))throw new Error("Chains config not found");return function(t,n,a){var r,s,i=[],o=H(n);try{i=e.parseEventLogs({abi:o,logs:t.logs})}catch(e){i=[]}var p=null==(s=(i=null==(r=i)?void 0:r.filter(function(e){return null!==e}))[0])?void 0:s.args,u=[],d=[];if(Array.isArray(null==p?void 0:p.swapInfo))d=p.swapInfo.map(function(e){var t,n,r,s;return BigInt(e.returnToAmount)!==BigInt(0)&&BigInt(e.fromAmount)!==BigInt(0)||u.push(Z({srcToken:e.fromToken,destToken:e.toToken,srcChainId:a.chainId,destChainId:a.chainId,srcChainNativeAddress:null==a||null==(r=a.nativeToken)?void 0:r.contract,destChainNativeAddress:null==a||null==(s=a.nativeToken)?void 0:s.contract})),I({},e,{fromToken:L(e.fromToken,null==a||null==(t=a.nativeToken)?void 0:t.contract),toToken:L(e.toToken,null==a||null==(n=a.nativeToken)?void 0:n.contract)})});else if("object"==typeof(null==p?void 0:p.swapInfo)&&Object.keys(null==p?void 0:p.swapInfo).length>0){var y,m,l,c,T=p.swapInfo,f=T.fromAmount,v=T.fromToken,b=T.toToken;BigInt(T.returnToAmount)!==BigInt(0)&&BigInt(f)!==BigInt(0)||u.push(Z({srcToken:v,destToken:b,srcChainId:a.chainId,destChainId:a.chainId,srcChainNativeAddress:null==a||null==(l=a.nativeToken)?void 0:l.contract,destChainNativeAddress:null==a||null==(c=a.nativeToken)?void 0:c.contract})),d=I({},p.swapInfo,{fromToken:L(p.swapInfo.fromToken,null==a||null==(y=a.nativeToken)?void 0:y.contract),toToken:L(p.swapInfo.toToken,null==a||null==(m=a.nativeToken)?void 0:m.contract)})}return{swapInfo:d,swapFailPairs:u}}(a,r,t[s])})}catch(e){return Promise.reject(e)}},n.calculatePoints=function(e){try{return Promise.resolve(function(e){return ee({endpoint:"user/calculatePoints",data:e,method:Y})}(e))}catch(e){return Promise.reject(e)}},n.getDZapContractAddress=function(e){var n=e.chainId,a=e.service;try{return Promise.resolve(t.getChainConfig()).then(function(e){var t;if(!e[n].isEnabled||!e)throw new Error("Chains config not found");var r=e[n];if(null==r||!r.contracts)throw new Error("No contracts found for chain: "+n);var s=((t={})[h.trade]=r.contracts.router,t[h.dca]=r.contracts.dca,t[h.zap]=r.contracts.zap,t)[a];if(!s)throw new Error('Contract not found for service "'+a+'" on chain: '+n);return s})}catch(e){return Promise.reject(e)}},n.getAllowance=function(n){var a=n.chainId,r=n.sender,s=n.tokens,i=n.service,o=n.rpcUrls,p=n.spender,u=n.mode,d=void 0===u?G.AutoPermit:u;try{var y=this;return Promise.resolve(t.getChainConfig()).then(function(t){function n(n){var i;return Promise.resolve(function(t){var n=t.chainId,a=t.sender,r=t.tokens,s=t.rpcUrls,i=t.mode,o=void 0===i?G.Default:i,p=t.spender,u=t.permitEIP2612DisabledTokens;try{var d={},y=r.filter(function(e){return V(e.address)}),m=r.filter(function(e){return!V(e.address)});return Promise.resolve(Promise.all(m.map(function(e){var t=e.address,a=e.amount;try{var r,i=function(e){return r?e:{token:t,spender:p,amount:a}},d=function(){if(o===G.Permit2){var e=_e(n);return r=1,{token:t,spender:e,amount:a}}return function(){if(o===G.AutoPermit)return Promise.resolve(Ee({address:t,chainId:n,rpcUrls:s,permitEIP2612DisabledTokens:u})).then(function(e){var s={token:t,spender:e.supportsPermit?p:_e(n),amount:a,isEIP2612PermitSupported:e.supportsPermit};return r=1,s})}()}();return Promise.resolve(d&&d.then?d.then(i):i(d))}catch(e){return Promise.reject(e)}}))).then(function(t){for(var r,i=function(e){var t="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(t)return(t=t.call(e)).next.bind(t);if(Array.isArray(e)||(t=function(e,t){if(e){if("string"==typeof e)return w(e,t);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?w(e,t):void 0}}(e))){t&&(e=t);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(y);!(r=i()).done;)d[r.value.address]={allowance:e.maxUint256,approvalNeeded:!1,signatureNeeded:!1};return 0===m.length?{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,data:d}:function(r,i){try{var p=Promise.resolve(function(e){var t=e.chainId,n=e.data,a=e.owner,r=e.rpcUrls;try{var s=n.map(function(e){return{address:e.token,abi:k,functionName:K.allowance,args:[a,e.spender]}});return Promise.resolve(function(e){var t=e.chainId,n=e.contracts,a=e.rpcUrls,r=e.allowFailure,s=void 0!==r&&r;try{return Promise.resolve(function(e,r){try{var i=(o=q({chainId:t,rpcUrls:a}),Promise.resolve(o.multicall({contracts:n,allowFailure:s})).then(function(e){return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,data:e}}))}catch(e){return r(e)}var o;return i&&i.then?i.then(void 0,r):i}(0,function(e){return console.error("Multicall failed:",e),{status:exports.TxnStatus.error,code:e.code||exports.StatusCodes.Error,data:[]}}))}catch(e){return Promise.reject(e)}}({chainId:t,contracts:s,rpcUrls:r,allowFailure:!1})).then(function(e){var t=e.status,a=e.code,r=e.data;if(t!==exports.TxnStatus.success)return{status:t,code:a,data:{}};for(var s={},i=0;i<n.length;i++)s[n[i].token]=r[i];return{status:t,code:a,data:s}})}catch(e){return Promise.reject(e)}}({chainId:n,data:t,owner:a,rpcUrls:s})).then(function(n){for(var a=n.data,r=0;r<t.length;r++){var s=t[r],i=s.token,p=s.isEIP2612PermitSupported,u=p?e.maxUint256:a[i];d[i]={allowance:u,approvalNeeded:!p&&u<s.amount,signatureNeeded:o===G.Permit2||o===G.AutoPermit}}return{status:exports.TxnStatus.success,code:exports.StatusCodes.Success,data:d}})}catch(e){return i(e)}return p&&p.then?p.then(void 0,i):p}(0,function(e){return console.error("Multicall allowance check failed:",e),{status:exports.TxnStatus.error,code:exports.StatusCodes.Error,data:d}})})}catch(e){return Promise.reject(e)}}({chainId:a,sender:r,tokens:s,rpcUrls:o||y.rpcUrlsByChainId[a],mode:d,spender:n,permitEIP2612DisabledTokens:null==(i=t[a].permitDisabledTokens)?void 0:i.eip2612}))}return p?n(p):Promise.resolve(y.getDZapContractAddress({chainId:a,service:i})).then(n)})}catch(e){return Promise.reject(e)}},n.approve=function(t){var n=t.chainId,a=t.signer,r=t.tokens,s=t.approvalTxnCallback,i=t.service,o=t.mode,p=void 0===o?G.AutoPermit:o,u=t.rpcUrls,d=t.spender;try{var y=function(t){return Promise.resolve(function(t){var n,a,r,s,i,o,p=t.chainId,u=t.signer,d=t.rpcUrls,y=t.mode,m=t.tokens,l=t.approvalTxnCallback,c=t.spender;try{var T,f=function(e){return T?e:{status:exports.TxnStatus.success,code:exports.StatusCodes.Success}};y!==G.AutoPermit&&y!==G.Permit2||(c=_e(p));var v=(n=m,a=function(t){function n(e){if(T)return e;if(a.code!==exports.StatusCodes.Success){var n,r={status:a.status,code:(null==(n=a)?void 0:n.code)||exports.StatusCodes.FunctionNotFound};return T=1,r}return function(){if(l)return Promise.resolve(l({txnDetails:a,address:m[t].address})).then(function(e){if(e&&e!==exports.TxnStatus.success){var t,n={status:a.status,code:(null==(t=a)?void 0:t.code)||exports.StatusCodes.Error};return T=1,n}})}()}var a={status:exports.TxnStatus.success,code:exports.StatusCodes.Success,txnHash:""},r=z(u)?Promise.resolve(u.getAddress()).then(function(n){var a=e.encodeFunctionData({abi:k,functionName:K.approve,args:[c,m[t].amount]});return Promise.resolve(u.sendTransaction({from:n,chainId:p,to:m[t].address,data:a})).then(function(){var e={status:exports.TxnStatus.success,code:exports.StatusCodes.Success};return T=1,e})}):Promise.resolve(function(e){var t=e.chainId,n=e.contractAddress,a=e.abi,r=e.functionName,s=e.args,i=void 0===s?[]:s,o=e.value,p=void 0===o?"0":o,u=e.rpcUrls,d=void 0===u?[""]:u,y=e.signer;try{var m=q({chainId:t,rpcUrls:d});return Promise.resolve(function(e,t){try{var s=Promise.resolve(m.simulateContract({address:n,abi:a,functionName:r,args:i,account:y.account,value:BigInt(p)})).then(function(e){return Promise.resolve(y.writeContract(e.request)).then(function(e){return{txnHash:e,status:exports.TxnStatus.success,code:exports.StatusCodes.Success}})})}catch(e){return t(e)}return s&&s.then?s.then(void 0,t):s}(0,function(e){return console.log({e:e}),(null==e?void 0:e.code)===exports.StatusCodes.UserRejectedRequest?{status:exports.TxnStatus.rejected,code:null==e?void 0:e.code,txnHash:""}:{status:exports.TxnStatus.error,code:null==e?void 0:e.code,txnHash:""}}))}catch(e){return Promise.reject(e)}}({chainId:p,contractAddress:m[t].address,abi:k,functionName:K.approve,args:[c,m[t].amount],rpcUrls:d,signer:u})).then(function(e){a=e});return r&&r.then?r.then(n):n(r)},r=function(){return T},o=-1,function e(t){try{for(;++o<n.length&&(!r||!r());)if((t=a(o))&&t.then){if(!Ge(t))return void t.then(e,i||(i=He.bind(null,s=new We,2)));t=t.v}s?He(s,1,t):s=t}catch(e){He(s||(s=new We),2,e)}}(),s);return Promise.resolve(v&&v.then?v.then(f):f(v))}catch(e){return Promise.reject(e)}}({chainId:n,signer:a,rpcUrls:u||m.rpcUrlsByChainId[n],tokens:r,approvalTxnCallback:s,mode:p,spender:t}))},m=this;return Promise.resolve(d?y(d):Promise.resolve(m.getDZapContractAddress({chainId:n,service:i})).then(y))}catch(e){return Promise.reject(e)}},n.sign=function(e){var n=e.chainId,a=e.sender,r=e.tokens,s=e.service,i=e.spender,o=e.rpcUrls,p=e.signer,u=e.permitType,d=void 0===u?W.AutoPermit:u,y=e.signatureCallback;try{var m=function(e){return Promise.resolve(t.getChainConfig()).then(function(t){var i;return Promise.resolve(Ue.signPermit({chainId:n,sender:a,tokens:r,rpcUrls:o||l.rpcUrlsByChainId[n],service:s,signer:p,spender:e,permitType:d,signatureCallback:y,permitEIP2612DisabledTokens:null==(i=t[n].permitDisabledTokens)?void 0:i.eip2612}))})},l=this;return Promise.resolve(i?m(i):Promise.resolve(l.getDZapContractAddress({chainId:n,service:s})).then(m))}catch(e){return Promise.reject(e)}},n.zap=function(e){var t=e.request,n=e.steps,a=e.signer;try{return Promise.resolve(Ze.zap({request:t,steps:n,signer:a}))}catch(e){return Promise.reject(e)}},n.buildZapTxn=function(e){try{var t=this;return t.cancelTokenSource&&t.cancelTokenSource.cancel("Cancelled due to new request"),t.cancelTokenSource=T.default.CancelToken.source(),Promise.resolve(ue(e,t.cancelTokenSource.token)).then(function(e){return e.data})}catch(e){return Promise.reject(e)}},n.getZapQuote=function(e){try{var t=this;return t.cancelTokenSource&&t.cancelTokenSource.cancel("Cancelled due to new request"),t.cancelTokenSource=T.default.CancelToken.source(),Promise.resolve(function(e,t){return te({endpoint:"quote",data:e,method:Y,cancelToken:t})}(e,t.cancelTokenSource.token)).then(function(e){return e.data})}catch(e){return Promise.reject(e)}},n.getZapTxnStatus=function(e){try{return Promise.resolve(function(e){return te({endpoint:"status",data:e,method:Q})}(e)).then(function(e){return e.data})}catch(e){return Promise.reject(e)}},n.getBalances=function(e,t){try{return Promise.resolve(function(e,t){return ee({endpoint:"token/balance-of",data:{chainId:e,account:t},method:Q})}(e,t)).then(function(e){return e.result})}catch(e){return Promise.reject(e)}},t}();Je.instance=void 0,Je.chainConfig=null,Je.getOtherAbi=function(e){return function(e){switch(e){case b.permit2:return _;case b.erc20:return k;default:throw new Error("Invalid Abi")}}(e)},exports.ApprovalModes=G,exports.DZapClient=Je,exports.OtherAbis=b,exports.PermitTypes=W,exports.QuoteFilters={fastest:"fastest",best:"best",all:"all"},exports.STATUS={pending:"pending",inProgress:"in-progress",success:"success",rejected:"rejected",error:"error"},exports.Services=h,exports.SignatureExpiryInSecs=A,exports.checkEIP2612PermitSupport=Ee,exports.contractErrorActions={TRY_ANOTHER_ROUTE:"TRY_ANOTHER_ROUTE",INCREASE_SLIPPAGE:"INCREASE_SLIPPAGE",INCREASE_ALLOWANCE:"INCREASE_ALLOWANCE"},exports.erc20Functions=K,exports.formatToken=L,exports.getTokensPairKey=Z,exports.zapPathAction={swap:"swap",bridge:"bridge",deposit:"deposit",withdraw:"withdraw",stake:"stake",unstake:"unstake"},exports.zapStepAction=Oe;
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}