@a.annzzz/directdeposit-widget
Version:
A plug-and-play React component for connecting a Web3 wallet and displaying deposit schedule information.
3 lines (2 loc) • 4.92 kB
JavaScript
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-CxEAEOcL.cjs");function k(a){const{abi:s,data:r}=a,n=t.slice(r,0,4),e=s.find(c=>c.type==="function"&&n===t.toFunctionSelector(t.formatAbiItem(c)));if(!e)throw new t.AbiFunctionSignatureNotFoundError(n,{docsPath:"/docs/contract/decodeFunctionData"});return{functionName:e.name,args:"inputs"in e&&e.inputs&&e.inputs.length>0?t.decodeAbiParameters(e.inputs,t.slice(r,4)):void 0}}const h="/docs/contract/encodeErrorResult";function w(a){const{abi:s,errorName:r,args:n}=a;let e=s[0];if(r){const d=t.getAbiItem({abi:s,args:n,name:r});if(!d)throw new t.AbiErrorNotFoundError(r,{docsPath:h});e=d}if(e.type!=="error")throw new t.AbiErrorNotFoundError(void 0,{docsPath:h});const c=t.formatAbiItem(e),o=t.toFunctionSelector(c);let i="0x";if(n&&n.length>0){if(!e.inputs)throw new t.AbiErrorInputsNotFoundError(e.name,{docsPath:h});i=t.encodeAbiParameters(e.inputs,n)}return t.concatHex([o,i])}const m="/docs/contract/encodeFunctionResult";function F(a){const{abi:s,functionName:r,result:n}=a;let e=s[0];if(r){const o=t.getAbiItem({abi:s,name:r});if(!o)throw new t.AbiFunctionNotFoundError(r,{docsPath:m});e=o}if(e.type!=="function")throw new t.AbiFunctionNotFoundError(void 0,{docsPath:m});if(!e.outputs)throw new t.AbiFunctionOutputsNotFoundError(e.name,{docsPath:m});const c=(()=>{if(e.outputs.length===0)return[];if(e.outputs.length===1)return[n];if(Array.isArray(n))return n;throw new t.InvalidArrayError(n)})();return t.encodeAbiParameters(e.outputs,c)}class L extends t.BaseError{constructor({callbackSelector:s,cause:r,data:n,extraData:e,sender:c,urls:o}){var i;super(r.shortMessage||"An error occurred while fetching for an offchain result.",{cause:r,metaMessages:[...r.metaMessages||[],(i=r.metaMessages)!=null&&i.length?"":[],"Offchain Gateway Call:",o&&[" Gateway URL(s):",...o.map(d=>` ${t.getUrl(d)}`)],` Sender: ${c}`,` Data: ${n}`,` Callback selector: ${s}`,` Extra data: ${e}`].flat(),name:"OffchainLookupError"})}}class O extends t.BaseError{constructor({result:s,url:r}){super("Offchain gateway response is malformed. Response data must be a hex value.",{metaMessages:[`Gateway URL: ${t.getUrl(r)}`,`Response: ${t.stringify(s)}`],name:"OffchainLookupResponseMalformedError"})}}class P extends t.BaseError{constructor({sender:s,to:r}){super("Reverted sender address does not match target contract address (`to`).",{metaMessages:[`Contract address: ${r}`,`OffchainLookup sender address: ${s}`],name:"OffchainLookupSenderMismatchError"})}}const y="x-batch-gateway:true";async function g(a){const{data:s,ccipRequest:r}=a,{args:[n]}=k({abi:t.batchGatewayAbi,data:s}),e=[],c=[];return await Promise.all(n.map(async(o,i)=>{try{c[i]=o.urls.includes(y)?await g({data:o.data,ccipRequest:r}):await r(o),e[i]=!1}catch(d){e[i]=!0,c[i]=S(d)}})),F({abi:t.batchGatewayAbi,functionName:"query",result:[e,c]})}function S(a){return a.name==="HttpRequestError"&&a.status?w({abi:t.batchGatewayAbi,errorName:"HttpError",args:[a.status,a.shortMessage]}):w({abi:[t.solidityError],errorName:"Error",args:["shortMessage"in a?a.shortMessage:a.message]})}const x="0x556f1830",E={name:"OffchainLookup",type:"error",inputs:[{name:"sender",type:"address"},{name:"urls",type:"string[]"},{name:"callData",type:"bytes"},{name:"callbackFunction",type:"bytes4"},{name:"extraData",type:"bytes"}]};async function M(a,{blockNumber:s,blockTag:r,data:n,to:e}){const{args:c}=t.decodeErrorResult({data:n,abi:[E]}),[o,i,d,l,f]=c,{ccipRead:u}=a,b=u&&typeof(u==null?void 0:u.request)=="function"?u.request:A;try{if(!t.isAddressEqual(e,o))throw new P({sender:o,to:e});const p=i.includes(y)?await g({data:d,ccipRequest:b}):await b({data:d,sender:o,urls:i}),{data:R}=await t.call(a,{blockNumber:s,blockTag:r,data:t.concat([l,t.encodeAbiParameters([{type:"bytes"},{type:"bytes"}],[p,f])]),to:e});return R}catch(p){throw new L({callbackSelector:l,cause:p,data:n,extraData:f,sender:o,urls:i})}}async function A({data:a,sender:s,urls:r}){var e;let n=new Error("An unknown error occurred.");for(let c=0;c<r.length;c++){const o=r[c],i=o.includes("{data}")?"GET":"POST",d=i==="POST"?{data:a,sender:s}:void 0,l=i==="POST"?{"Content-Type":"application/json"}:{};try{const f=await fetch(o.replace("{sender}",s.toLowerCase()).replace("{data}",a),{body:JSON.stringify(d),headers:l,method:i});let u;if((e=f.headers.get("Content-Type"))!=null&&e.startsWith("application/json")?u=(await f.json()).data:u=await f.text(),!f.ok){n=new t.HttpRequestError({body:d,details:u!=null&&u.error?t.stringify(u.error):f.statusText,headers:f.headers,status:f.status,url:o});continue}if(!t.isHex(u)){n=new O({result:u,url:o});continue}return u}catch(f){n=new t.HttpRequestError({body:d,details:f.message,url:o})}}throw n}exports.ccipRequest=A;exports.offchainLookup=M;exports.offchainLookupAbiItem=E;exports.offchainLookupSignature=x;
//# sourceMappingURL=ccip-BG-eOLoj.cjs.map