@bonfida/spl-name-service 2.4.1 → 2.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.mjs CHANGED
@@ -16,5 +16,5 @@ const Ji=BigInt(0),to=BigInt(1);function eo(t){return Wi(t.Fp,Ki.reduce(((t,e)=>
16
16
  /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const ro=BigInt(0),no=BigInt(1),io=BigInt(2),oo=BigInt(8),so={zip215:!0};function ao(t){const e=function(t){const e=eo(t);return Wi(t,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...e})}(t),{Fp:r,n:n,prehash:i,hash:o,randomBytes:s,nByteLength:a,h:u}=e,c=io<<BigInt(8*a)-no,f=r.create,h=e.uvRatio||((t,e)=>{try{return{isValid:!0,value:r.sqrt(t*r.inv(e))}}catch(t){return{isValid:!1,value:ro}}}),d=e.adjustScalarBytes||(t=>t),l=e.domain||((t,e,r)=>{if(e.length||r)throw new Error("Contexts/pre-hash are not supported");return t}),p=t=>"bigint"==typeof t&&ro<t,y=(t,e)=>p(t)&&p(e)&&t<e,g=t=>t===ro||y(t,c);function w(t,e){if(y(t,e))return t;throw new Error(`Expected valid scalar < ${e}, got ${typeof t} ${t}`)}function b(t){return t===ro?t:w(t,n)}const m=new Map;function v(t){if(!(t instanceof E))throw new Error("ExtendedPoint expected")}class E{constructor(t,e,r,n){if(this.ex=t,this.ey=e,this.ez=r,this.et=n,!g(t))throw new Error("x required");if(!g(e))throw new Error("y required");if(!g(r))throw new Error("z required");if(!g(n))throw new Error("t required")}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(t){if(t instanceof E)throw new Error("extended point not allowed");const{x:e,y:r}=t||{};if(!g(e)||!g(r))throw new Error("invalid affine point");return new E(e,r,no,f(e*r))}static normalizeZ(t){const e=r.invertBatch(t.map((t=>t.ez)));return t.map(((t,r)=>t.toAffine(e[r]))).map(E.fromAffine)}_setWindowSize(t){this._WINDOW_SIZE=t,m.delete(this)}assertValidity(){const{a:t,d:r}=e;if(this.is0())throw new Error("bad point: ZERO");const{ex:n,ey:i,ez:o,et:s}=this,a=f(n*n),u=f(i*i),c=f(o*o),h=f(c*c),d=f(a*t);if(f(c*f(d+u))!==f(h+f(r*f(a*u))))throw new Error("bad point: equation left != right (1)");if(f(n*i)!==f(o*s))throw new Error("bad point: equation left != right (2)")}equals(t){v(t);const{ex:e,ey:r,ez:n}=this,{ex:i,ey:o,ez:s}=t,a=f(e*s),u=f(i*n),c=f(r*s),h=f(o*n);return a===u&&c===h}is0(){return this.equals(E.ZERO)}negate(){return new E(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){const{a:t}=e,{ex:r,ey:n,ez:i}=this,o=f(r*r),s=f(n*n),a=f(io*f(i*i)),u=f(t*o),c=r+n,h=f(f(c*c)-o-s),d=u+s,l=d-a,p=u-s,y=f(h*l),g=f(d*p),w=f(h*p),b=f(l*d);return new E(y,g,b,w)}add(t){v(t);const{a:r,d:n}=e,{ex:i,ey:o,ez:s,et:a}=this,{ex:u,ey:c,ez:h,et:d}=t;if(r===BigInt(-1)){const t=f((o-i)*(c+u)),e=f((o+i)*(c-u)),r=f(e-t);if(r===ro)return this.double();const n=f(s*io*d),l=f(a*io*h),p=l+n,y=e+t,g=l-n,w=f(p*r),b=f(y*g),m=f(p*g),v=f(r*y);return new E(w,b,v,m)}const l=f(i*u),p=f(o*c),y=f(a*n*d),g=f(s*h),w=f((i+o)*(u+c)-l-p),b=g-y,m=g+y,A=f(p-r*l),B=f(w*b),I=f(m*A),S=f(w*A),x=f(b*m);return new E(B,I,x,S)}subtract(t){return this.add(t.negate())}wNAF(t){return I.wNAFCached(this,m,t,E.normalizeZ)}multiply(t){const{p:e,f:r}=this.wNAF(w(t,n));return E.normalizeZ([e,r])[0]}multiplyUnsafe(t){let e=b(t);return e===ro?B:this.equals(B)||e===no?this:this.equals(A)?this.wNAF(e).p:I.unsafeLadder(this,e)}isSmallOrder(){return this.multiplyUnsafe(u).is0()}isTorsionFree(){return I.unsafeLadder(this,n).is0()}toAffine(t){const{ex:e,ey:n,ez:i}=this,o=this.is0();null==t&&(t=o?oo:r.inv(i));const s=f(e*t),a=f(n*t),u=f(i*t);if(o)return{x:ro,y:no};if(u!==no)throw new Error("invZ was invalid");return{x:s,y:a}}clearCofactor(){const{h:t}=e;return t===no?this:this.multiplyUnsafe(t)}static fromHex(t,n=!1){const{d:i,a:o}=e,s=r.BYTES,a=(t=Ci("pointHex",t,s)).slice(),u=t[s-1];a[s-1]=-129&u;const d=Li(a);d===ro||w(d,n?c:r.ORDER);const l=f(d*d),p=f(l-no),y=f(i*l-o);let{isValid:g,value:b}=h(p,y);if(!g)throw new Error("Point.fromHex: invalid y coordinate");const m=(b&no)===no,v=0!=(128&u);if(!n&&b===ro&&v)throw new Error("Point.fromHex: x=0 and x_0=1");return v!==m&&(b=f(-b)),E.fromAffine({x:b,y:d})}static fromPrivateKey(t){return k(t).point}toRawBytes(){const{x:t,y:e}=this.toAffine(),n=Ti(e,r.BYTES);return n[n.length-1]|=t&no?128:0,n}toHex(){return xi(this.toRawBytes())}}E.BASE=new E(e.Gx,e.Gy,no,f(e.Gx*e.Gy)),E.ZERO=new E(ro,no,no,ro);const{BASE:A,ZERO:B}=E,I=function(t,e){const r=(t,e)=>{const r=e.negate();return t?r:e},n=t=>({windows:Math.ceil(e/t)+1,windowSize:2**(t-1)});return{constTimeNegate:r,unsafeLadder(e,r){let n=t.ZERO,i=e;for(;r>Ji;)r&to&&(n=n.add(i)),i=i.double(),r>>=to;return n},precomputeWindow(t,e){const{windows:r,windowSize:i}=n(e),o=[];let s=t,a=s;for(let t=0;t<r;t++){a=s,o.push(a);for(let t=1;t<i;t++)a=a.add(s),o.push(a);s=a.double()}return o},wNAF(e,i,o){const{windows:s,windowSize:a}=n(e);let u=t.ZERO,c=t.BASE;const f=BigInt(2**e-1),h=2**e,d=BigInt(e);for(let t=0;t<s;t++){const e=t*a;let n=Number(o&f);o>>=d,n>a&&(n-=h,o+=to);const s=e,l=e+Math.abs(n)-1,p=t%2!=0,y=n<0;0===n?c=c.add(r(p,i[s])):u=u.add(r(y,i[l]))}return{p:u,f:c}},wNAFCached(t,e,r,n){const i=t._WINDOW_SIZE||1;let o=e.get(t);return o||(o=this.precomputeWindow(t,i),1!==i&&e.set(t,n(o))),this.wNAF(i,o,r)}}}(E,8*a);function S(t){return qi(t,n)}function x(t){return S(Li(t))}function k(t){const e=a;t=Ci("private key",t,e);const r=Ci("hashed private key",o(t),2*e),n=d(r.slice(0,e)),i=r.slice(e,2*e),s=x(n),u=A.multiply(s),c=u.toRawBytes();return{head:n,prefix:i,scalar:s,point:u,pointBytes:c}}function R(t=new Uint8Array,...e){const r=Oi(...e);return x(o(l(r,Ci("context",t),!!i)))}const _=so;A._setWindowSize(8);return{CURVE:e,getPublicKey:function(t){return k(t).pointBytes},sign:function(t,e,n={}){t=Ci("message",t),i&&(t=i(t));const{prefix:o,scalar:s,pointBytes:u}=k(e),c=R(n.context,o,t),f=A.multiply(c).toRawBytes(),h=S(c+R(n.context,f,u,t)*s);return b(h),Ci("result",Oi(f,Ti(h,r.BYTES)),2*a)},verify:function(t,e,n,o=_){const{context:s,zip215:a}=o,u=r.BYTES;t=Ci("signature",t,2*u),e=Ci("message",e),i&&(e=i(e));const c=Li(t.slice(u,2*u));let f,h,d;try{f=E.fromHex(n,a),h=E.fromHex(t.slice(0,u),a),d=A.multiplyUnsafe(c)}catch(t){return!1}if(!a&&f.isSmallOrder())return!1;const l=R(s,h.toRawBytes(),f.toRawBytes(),e);return h.add(f.multiplyUnsafe(l)).subtract(d).clearCofactor().equals(E.ZERO)},ExtendedPoint:E,utils:{getExtendedPublicKey:k,randomPrivateKey:()=>s(r.BYTES),precompute:(t=8,e=E.BASE)=>(e._setWindowSize(t),e.multiply(BigInt(3)),e)}}}
17
17
  /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */const uo=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),co=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");BigInt(0);const fo=BigInt(1),ho=BigInt(2),lo=BigInt(5),po=BigInt(10),yo=BigInt(20),go=BigInt(40),wo=BigInt(80);const bo=function(t,e,r=!1,n={}){if(t<=zi)throw new Error(`Expected Field ORDER > 0, got ${t}`);const{nBitLength:i,nByteLength:o}=Qi(t,e);if(o>2048)throw new Error("Field lengths over 2048 bytes are not supported");const s=Zi(t),a=Object.freeze({ORDER:t,BITS:i,BYTES:o,MASK:Ni(i),ZERO:zi,ONE:Mi,create:e=>qi(e,t),isValid:e=>{if("bigint"!=typeof e)throw new Error("Invalid field element: expected bigint, got "+typeof e);return zi<=e&&e<t},is0:t=>t===zi,isOdd:t=>(t&Mi)===Mi,neg:e=>qi(-e,t),eql:(t,e)=>t===e,sqr:e=>qi(e*e,t),add:(e,r)=>qi(e+r,t),sub:(e,r)=>qi(e-r,t),mul:(e,r)=>qi(e*r,t),pow:(t,e)=>function(t,e,r){if(r<zi)throw new Error("Expected power > 0");if(r===zi)return t.ONE;if(r===Mi)return e;let n=t.ONE,i=e;for(;r>zi;)r&Mi&&(n=t.mul(n,i)),i=t.sqr(i),r>>=Mi;return n}(a,t,e),div:(e,r)=>qi(e*Yi(r,t),t),sqrN:t=>t*t,addN:(t,e)=>t+e,subN:(t,e)=>t-e,mulN:(t,e)=>t*e,inv:e=>Yi(e,t),sqrt:n.sqrt||(t=>s(a,t)),invertBatch:t=>function(t,e){const r=new Array(e.length),n=e.reduce(((e,n,i)=>t.is0(n)?e:(r[i]=e,t.mul(e,n))),t.ONE),i=t.inv(n);return e.reduceRight(((e,n,i)=>t.is0(n)?e:(r[i]=t.mul(e,r[i]),t.mul(e,n))),i),r}(a,t),cmov:(t,e,r)=>r?e:t,toBytes:t=>r?Ti(t,o):Pi(t,o),fromBytes:t=>{if(t.length!==o)throw new Error(`Fp.fromBytes: expected ${o}, got ${t.length}`);return r?Li(t):function(t){return ki(xi(t))}(t)}});return Object.freeze(a)}(uo,void 0,!0),mo={a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:bo,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:BigInt(8),Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:Ei,randomBytes:function(t=32){if(ve&&"function"==typeof ve.getRandomValues)return ve.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")},adjustScalarBytes:function(t){return t[0]&=248,t[31]&=127,t[31]|=64,t},uvRatio:function(t,e){const r=uo,n=qi(e*e*e,r),i=function(t){const e=uo,r=t*t%e*t%e,n=Xi(r,ho,e)*r%e,i=Xi(n,fo,e)*t%e,o=Xi(i,lo,e)*i%e,s=Xi(o,po,e)*o%e,a=Xi(s,yo,e)*s%e,u=Xi(a,go,e)*a%e,c=Xi(u,wo,e)*u%e,f=Xi(c,wo,e)*u%e,h=Xi(f,po,e)*o%e;return{pow_p_5_8:Xi(h,ho,e)*t%e,b2:r}}(t*qi(n*n*e,r)).pow_p_5_8;let o=qi(t*n*i,r);const s=qi(e*o*o,r),a=o,u=qi(o*co,r),c=s===t,f=s===qi(-t,r),h=s===qi(-t*co,r);return c&&(o=a),(f||h)&&(o=u),(qi(o,r)&Mi)===Mi&&(o=qi(-o,r)),{isValid:c||f,value:o}}},vo=ao(mo);const Eo=(bo.ORDER+BigInt(3))/BigInt(8);
18
18
  /*! scure-base - MIT License (c) 2022 Paul Miller (paulmillr.com) */
19
- function Ao(t){if(!Number.isSafeInteger(t))throw new Error(`Wrong integer: ${t}`)}function Bo(...t){const e=t=>t,r=(t,e)=>r=>t(e(r));return{encode:t.map((t=>t.encode)).reduceRight(r,e),decode:t.map((t=>t.decode)).reduce(r,e)}}function Io(t){return{encode:e=>{if(!Array.isArray(e)||e.length&&"number"!=typeof e[0])throw new Error("alphabet.encode input should be an array of numbers");return e.map((e=>{if(Ao(e),e<0||e>=t.length)throw new Error(`Digit index outside alphabet: ${e} (alphabet: ${t.length})`);return t[e]}))},decode:e=>{if(!Array.isArray(e)||e.length&&"string"!=typeof e[0])throw new Error("alphabet.decode input should be array of strings");return e.map((e=>{if("string"!=typeof e)throw new Error(`alphabet.decode: not string element=${e}`);const r=t.indexOf(e);if(-1===r)throw new Error(`Unknown letter: "${e}". Allowed: ${t}`);return r}))}}}function So(t=""){if("string"!=typeof t)throw new Error("join separator should be string");return{encode:e=>{if(!Array.isArray(e)||e.length&&"string"!=typeof e[0])throw new Error("join.encode input should be array of strings");for(let t of e)if("string"!=typeof t)throw new Error(`join.encode: non-string input=${t}`);return e.join(t)},decode:e=>{if("string"!=typeof e)throw new Error("join.decode input should be string");return e.split(t)}}}function xo(t,e="="){if(Ao(t),"string"!=typeof e)throw new Error("padding chr should be string");return{encode(r){if(!Array.isArray(r)||r.length&&"string"!=typeof r[0])throw new Error("padding.encode input should be array of strings");for(let t of r)if("string"!=typeof t)throw new Error(`padding.encode: non-string input=${t}`);for(;r.length*t%8;)r.push(e);return r},decode(r){if(!Array.isArray(r)||r.length&&"string"!=typeof r[0])throw new Error("padding.encode input should be array of strings");for(let t of r)if("string"!=typeof t)throw new Error(`padding.decode: non-string input=${t}`);let n=r.length;if(n*t%8)throw new Error("Invalid padding: string should have whole number of bytes");for(;n>0&&r[n-1]===e;n--)if(!((n-1)*t%8))throw new Error("Invalid padding: string has too much padding");return r.slice(0,n)}}}function ko(t){if("function"!=typeof t)throw new Error("normalize fn should be function");return{encode:t=>t,decode:e=>t(e)}}bo.pow(ho,Eo),bo.sqrt(bo.neg(bo.ONE)),bo.ORDER,BigInt(5),BigInt(8),BigInt(486662),function(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");const r=t.sqrt(e);t.isOdd(r)&&t.neg(r)}(bo,bo.neg(BigInt(486664))),BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");const Ro=(t,e)=>e?Ro(e,t%e):t,_o=(t,e)=>t+(e-Ro(t,e));function Uo(t,e,r,n){if(!Array.isArray(t))throw new Error("convertRadix2: data should be array");if(e<=0||e>32)throw new Error(`convertRadix2: wrong from=${e}`);if(r<=0||r>32)throw new Error(`convertRadix2: wrong to=${r}`);if(_o(e,r)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${r} carryBits=${_o(e,r)}`);let i=0,o=0;const s=2**r-1,a=[];for(const n of t){if(Ao(n),n>=2**e)throw new Error(`convertRadix2: invalid data word=${n} from=${e}`);if(i=i<<e|n,o+e>32)throw new Error(`convertRadix2: carry overflow pos=${o} from=${e}`);for(o+=e;o>=r;o-=r)a.push((i>>o-r&s)>>>0);i&=2**o-1}if(i=i<<r-o&s,!n&&o>=e)throw new Error("Excess padding");if(!n&&i)throw new Error(`Non-zero padding: ${i}`);return n&&o>0&&a.push(i>>>0),a}function Lo(t,e=!1){if(Ao(t),t<=0||t>32)throw new Error("radix2: bits should be in (0..32]");if(_o(8,t)>32||_o(t,8)>32)throw new Error("radix2: carry overflow");return{encode:r=>{if(!function(t){return t instanceof Uint8Array||null!=t&&"object"==typeof t&&"Uint8Array"===t.constructor.name}(r))throw new Error("radix2.encode input should be Uint8Array");return Uo(Array.from(r),8,t,!e)},decode:r=>{if(!Array.isArray(r)||r.length&&"number"!=typeof r[0])throw new Error("radix2.decode input should be array of numbers");return Uint8Array.from(Uo(r,t,8,e))}}}function Po(t){if("function"!=typeof t)throw new Error("unsafeWrapper fn should be function");return function(...e){try{return t.apply(null,e)}catch(t){}}}Lo(4),Io("0123456789ABCDEF"),So(""),Lo(5),Io("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),xo(5),So(""),Lo(5),Io("0123456789ABCDEFGHIJKLMNOPQRSTUV"),xo(5),So(""),Lo(5),Io("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),So(""),ko((t=>t.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1"))),Lo(6),Io("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),xo(6),So(""),Lo(6),Io("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),xo(6),So(""),Lo(6),Io("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),So("");const To=Bo(Io("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),So("")),Co=[996825010,642813549,513874426,1027748829,705979059];function Oo(t){const e=t>>25;let r=(33554431&t)<<5;for(let t=0;t<Co.length;t++)1==(e>>t&1)&&(r^=Co[t]);return r}function No(t,e,r=1){const n=t.length;let i=1;for(let e=0;e<n;e++){const r=t.charCodeAt(e);if(r<33||r>126)throw new Error(`Invalid prefix (${t})`);i=Oo(i)^r>>5}i=Oo(i);for(let e=0;e<n;e++)i=Oo(i)^31&t.charCodeAt(e);for(let t of e)i=Oo(i)^t;for(let t=0;t<6;t++)i=Oo(i);return i^=r,To.encode(Uo([i%2**30],30,5,!1))}function Do(t){const e="bech32"===t?1:734539939,r=Lo(5),n=r.decode,i=r.encode,o=Po(n);function s(t,r=90){if("string"!=typeof t)throw new Error("bech32.decode input should be string, not "+typeof t);if(t.length<8||!1!==r&&t.length>r)throw new TypeError(`Wrong string length: ${t.length} (${t}). Expected (8..${r})`);const n=t.toLowerCase();if(t!==n&&t!==t.toUpperCase())throw new Error("String must be lowercase or uppercase");const i=(t=n).lastIndexOf("1");if(0===i||-1===i)throw new Error('Letter "1" must be present between prefix and data only');const o=t.slice(0,i),s=t.slice(i+1);if(s.length<6)throw new Error("Data must be at least 6 characters long");const a=To.decode(s).slice(0,-6),u=No(o,a,e);if(!s.endsWith(u))throw new Error(`Invalid checksum in ${t}: expected "${u}"`);return{prefix:o,words:a}}return{encode:function(t,r,n=90){if("string"!=typeof t)throw new Error("bech32.encode prefix should be string, not "+typeof t);if(!Array.isArray(r)||r.length&&"number"!=typeof r[0])throw new Error("bech32.encode words should be array of numbers, not "+typeof r);const i=t.length+7+r.length;if(!1!==n&&i>n)throw new TypeError(`Length ${i} exceeds limit ${n}`);const o=t.toLowerCase(),s=No(o,r,e);return`${o}1${To.encode(r)}${s}`},decode:s,decodeToBytes:function(t){const{prefix:e,words:r}=s(t,!1);return{prefix:e,words:r,bytes:n(r)}},decodeUnsafe:Po(s),fromWords:n,fromWordsUnsafe:o,toWords:i}}const Wo=Do("bech32");Lo(4),Io("0123456789abcdef"),So(""),ko((t=>{if("string"!=typeof t||t.length%2)throw new TypeError(`hex.decode: expected string, got ${typeof t} with length ${t.length}`);return t.toLowerCase()}));const zo=(t,e,r)=>vo.verify(e,t,r.toBytes()),Mo=(t,e)=>{const{pubkey:r}=Mn(e+"."+t,Mr.V1);return r};async function jo(t,e,r,n){const i=Mo(e,r);let{registry:o}=await we.retrieve(t,i);if(!o.data)throw new Pt(Lt.NoRecordData);if(n)return fs(o,r,i);const s=zr.get(r);return o.data=o.data.slice(0,s),o}async function Vo(t,e,r,n){const i=r.map((t=>Mo(e,t))),o=await we.retrieveBatch(t,i);return n?o.map(((t,n)=>{if(t)return fs(t,r[n],Mo(e,r[n]))})):o}const Fo=async(t,e)=>await jo(t,e,Wr.IPFS,!0),Ho=async(t,e)=>await jo(t,e,Wr.ARWV,!0),Go=async(t,e)=>await jo(t,e,Wr.ETH,!0),qo=async(t,e)=>await jo(t,e,Wr.BTC,!0),$o=async(t,e)=>await jo(t,e,Wr.LTC,!0),Xo=async(t,e)=>await jo(t,e,Wr.DOGE,!0),Yo=async(t,e)=>await jo(t,e,Wr.Email,!0),Zo=async(t,e)=>await jo(t,e,Wr.Url,!0),Ko=async(t,e)=>await jo(t,e,Wr.Discord,!0),Qo=async(t,e)=>await jo(t,e,Wr.Github,!0),Jo=async(t,e)=>await jo(t,e,Wr.Reddit,!0),ts=async(t,e)=>await jo(t,e,Wr.Twitter,!0),es=async(t,e)=>await jo(t,e,Wr.Telegram,!0),rs=async(t,e)=>await jo(t,e,Wr.Pic,!0),ns=async(t,e)=>await jo(t,e,Wr.SHDW,!0),is=async(t,e)=>await jo(t,e,Wr.SOL),os=async(t,e)=>await jo(t,e,Wr.POINT,!0),ss=async(t,e)=>await jo(t,e,Wr.BSC,!0),as=async(t,e)=>await jo(t,e,Wr.Injective,!0),us=async(t,e)=>await jo(t,e,Wr.Backpack,!0),cs=async(t,e)=>await jo(t,e,Wr.Background,!0),fs=(e,r,n)=>{const i=null==e?void 0:e.data;if(!i)return;if(0===i.compare(s.Buffer.alloc(i.length)))return;const o=zr.get(r),a=(t=>{const e=Array.from(t);return e.length-1-e.reverse().findIndex((t=>0!==t))+1})(i);if(!o){const t=i.slice(0,a).toString("utf-8");return r===Wr.CNAME||r===Wr.TXT?ci(t):t}if(r===Wr.SOL){const t=new TextEncoder,r=s.Buffer.concat([i.slice(0,32),n.toBuffer()]),o=t.encode(r.toString("hex"));if(zo(o,i.slice(32,96),e.owner))return Qn.encode(i.slice(0,32))}if(o&&a!==o){const t=i.slice(0,a).toString("utf-8");if(r===Wr.Injective){const e=Wo.decodeToBytes(t);if("inj"===e.prefix&&20===e.bytes.length)return t}else if(r===Wr.BSC||r===Wr.ETH){const e=t.slice(0,2),r=t.slice(2);if("0x"===e&&20===s.Buffer.from(r,"hex").length)return t}else if((r===Wr.A||r===Wr.AAAA)&&ti.isValid(t))return t;throw new Pt(Lt.InvalidRecordData)}if(r===Wr.ETH||r===Wr.BSC)return"0x"+i.slice(0,o).toString("hex");if(r===Wr.Injective)return Wo.encode("inj",Wo.toWords(i.slice(0,o)));if(r===Wr.A||r===Wr.AAAA)return ti.fromByteArray([...i.slice(0,o)]).toString();if(r===Wr.Background)return new t(i.slice(0,o)).toString();throw new Pt(Lt.InvalidRecordData)},hs=(e,r)=>{if(!zr.get(r))return r!==Wr.CNAME&&r!==Wr.TXT||(e=fi(e)),s.Buffer.from(e,"utf-8");if(r===Wr.SOL)throw new Pt(Lt.UnsupportedRecord,"Use `serializeSolRecord` for SOL record");if(r===Wr.ETH||r===Wr.BSC)return qn("0x"===e.slice(0,2),Lt.InvalidEvmAddress),s.Buffer.from(e.slice(2),"hex");if(r===Wr.Injective){const t=Wo.decodeToBytes(e);return qn("inj"===t.prefix,Lt.InvalidInjectiveAddress),qn(20===t.bytes.length,Lt.InvalidInjectiveAddress),s.Buffer.from(t.bytes)}if(r===Wr.A){const t=ti.parse(e).toByteArray();return qn(4===t.length,Lt.InvalidARecord),s.Buffer.from(t)}if(r===Wr.AAAA){const t=ti.parse(e).toByteArray();return qn(16===t.length,Lt.InvalidAAAARecord),s.Buffer.from(t)}if(r===Wr.Background)return new t(e).toBuffer();throw new Pt(Lt.InvalidRecordInput)},ds=(t,e,r,n)=>{const i=s.Buffer.concat([t.toBuffer(),e.toBuffer()]),o=(new TextEncoder).encode(i.toString("hex")),a=zo(o,n,r);return qn(a,Lt.InvalidSignature),s.Buffer.concat([t.toBuffer(),n])},ls=new Map([[Wr.Url,new t("ExXjtfdQe8JacoqP9Z535WzQKjF4CzW1TTRKRgpxvya3")],[Wr.CNAME,new t("ExXjtfdQe8JacoqP9Z535WzQKjF4CzW1TTRKRgpxvya3")]]),ps=new Set([Wr.ETH,Wr.Injective,Wr.BSC]),ys=async(t,e,r,n)=>{var i;const o=vs(r,e),s=await Dr.retrieve(t,o),a=s.getRoAId(),u=ps.has(e)?Tr.Ethereum:Tr.Solana;if(!(n=null!=n?n:null===(i=ls.get(e))||void 0===i?void 0:i.toBuffer()))throw new Pt(Lt.MissingVerifier);return 0===n.compare(a)&&s.header.rightOfAssociationValidation===u},gs=new Set([Wr.IPFS,Wr.ARWV,Wr.LTC,Wr.DOGE,Wr.Email,Wr.Url,Wr.Discord,Wr.Github,Wr.Reddit,Wr.Twitter,Wr.Telegram,Wr.Pic,Wr.SHDW,Wr.POINT,Wr.Backpack,Wr.TXT,Wr.CNAME,Wr.BTC]),ws=new Set([Wr.ETH,Wr.Injective,Wr.SOL]),bs=(e,r)=>{if(gs.has(r)){const t=e.toString("utf-8");return r===Wr.CNAME||r===Wr.TXT?ci(t):t}if(r===Wr.SOL)return new t(e).toBase58();if(r===Wr.ETH||r===Wr.BSC)return"0x"+e.toString("hex");if(r===Wr.Injective)return Wo.encode("inj",Wo.toWords(e));if(r===Wr.A||r===Wr.AAAA)return ti.fromByteArray([...e]).toString();throw new Pt(Lt.InvalidARecord)},ms=(e,r)=>{if(gs.has(r))return r!==Wr.CNAME&&r!==Wr.TXT||(e=fi(e)),Buffer.from(e,"utf-8");if(r===Wr.SOL)return new t(e).toBuffer();if(r===Wr.ETH||r===Wr.BSC)return qn("0x"===e.slice(0,2),Lt.InvalidEvmAddress),Buffer.from(e.slice(2),"hex");if(r===Wr.Injective){const t=Wo.decodeToBytes(e);return qn("inj"===t.prefix,Lt.InvalidInjectiveAddress),qn(20===t.bytes.length,Lt.InvalidInjectiveAddress),Buffer.from(t.bytes)}if(r===Wr.A){const t=ti.parse(e).toByteArray();return qn(4===t.length,Lt.InvalidARecord),Buffer.from(t)}if(r===Wr.AAAA){const t=ti.parse(e).toByteArray();return qn(16===t.length,Lt.InvalidAAAARecord),Buffer.from(t)}throw new Pt(Lt.InvalidARecord)},vs=(t,e)=>{const{pubkey:r}=Mn(t),n=Cn("".concat(e));return On(n,Pr,r)};async function Es(t,e,r,n={}){const i=vs(e,r),o=await Dr.retrieve(t,i);return n.deserialize?{retrievedRecord:o,deserializedContent:bs(o.getContent(),r)}:{retrievedRecord:o}}async function As(t,e,r,n={}){const i=r.map((t=>vs(e,t))),o=await Dr.retrieveBatch(t,i);return n.deserialize?o.map(((t,e)=>{if(t)return{retrievedRecord:t,record:r[e],deserializedContent:bs(t.getContent(),r[e])}})):o.map(((t,e)=>{if(t)return{retrievedRecord:t,record:r[e]}}))}const Bs=new t("85iDfUvr3HJyLM2zcq5BXSiDvUWfw6cSE1FfNBo8Ap29");class Is{constructor(e){this.tag=e.tag,this.nameAccount=new t(e.nameAccount)}static deserialize(t){return new Is(Yt(this.schema,t))}static async retrieve(t,e){const r=await t.getAccountInfo(e);if(!r||!r.data)throw new Pt(Lt.FavouriteDomainNotFound);return this.deserialize(r.data)}static async getKey(e,r){return await t.findProgramAddress([s.Buffer.from("favourite_domain"),r.toBuffer()],e)}static getKeySync(e,r){return t.findProgramAddressSync([s.Buffer.from("favourite_domain"),r.toBuffer()],e)}}Is.schema={struct:{tag:"u8",nameAccount:{array:{type:"u8",len:32}}}};const Ss=async(e,r)=>{const[n]=Is.getKeySync(Bs,new t(r)),i=await Is.retrieve(e,n),o=await Nn(e,i.nameAccount),{registry:s,nftOwner:a}=await we.retrieve(e,i.nameAccount),u=a||s.owner;return{domain:i.nameAccount,reverse:o,stale:!r.equals(u)}},xs=async(e,r)=>{const n=[],i=r.map((t=>Is.getKeySync(Bs,t)[0])),o=(await e.getMultipleAccountsInfo(i)).map((e=>(null==e?void 0:e.data)?Is.deserialize(null==e?void 0:e.data).nameAccount:t.default)),s=o.map((t=>Gn(t))),a=o.map(((t,e)=>_t(ce(t),r[e],!0))),[u,c,f]=await Promise.all([e.getMultipleAccountsInfo(o),e.getMultipleAccountsInfo(s),e.getMultipleAccountsInfo(a)]);for(let e=0;e<r.length;e++){const i=u[e],o=c[e],s=f[e];if(!i||!o){n.push(void 0);continue}if(new t(null==i?void 0:i.data.slice(32,64)).equals(r[e])){n.push(Yn(null==o?void 0:o.data.slice(96)));continue}if(!s){n.push(void 0);continue}const a=It.decode(s.data);1!==Number(a.amount)?n.push(void 0):n.push(Yn(null==o?void 0:o.data.slice(96)))}return n};async function ks(t,r,n,i,o,s,a,u){const c=Cn(r),f=On(c,a,u),h=s||await t.getMinimumBalanceForRentExemption(n);let d;if(u){const{registry:e}=await nr(t,u);d=e.owner}return Zt(Ne,e.programId,f,o,i,c,new Ct(h),new Tt(n),a,u,d)}async function Rs(t,e,r,n,i,o){const s=Cn(e),a=On(s,i,o);let u;u=i||(await we.retrieve(t,a)).registry.owner;return Kt(Ne,a,new Tt(r),n,u)}async function _s(t,e,r,n,i,o){const s=Cn(e),a=On(s,n,i);let u;u=n||(await we.retrieve(t,a)).registry.owner;return Qt(Ne,a,r,u,n,i,o)}async function Us(t,e,r,n,i){const o=Cn(e),s=On(o,n,i);let a;a=n||(await we.retrieve(t,s)).registry.owner;return Jt(Ne,s,r,a)}const Ls=async(r,i,o,s,a,u=$e,c)=>{if(i.includes(".")||i.trim().toLowerCase()!==i)throw new Pt(Lt.InvalidDomain);const[f]=t.findProgramAddressSync([ze.toBuffer()],ze),h=Cn(i),d=On(h,void 0,We),l=Cn(d.toBase58()),p=On(l,f),[y]=t.findProgramAddressSync([d.toBuffer()],ze),w=Xe.findIndex((t=>null==c?void 0:c.equals(t)));let b;const m=[];if(-1!==w&&c){b=_t(u,c,!0);const t=await r.getAccountInfo(b);if(!(null==t?void 0:t.data)){const t=Ut(s,b,c,u);m.push(t)}}const v=_t(u,Je,!0),E=Ze.get(u.toBase58());if(!E)throw new Pt(Lt.PythFeedNotFound);const A=new re({name:i,space:o,referrerIdxOpt:-1!=w?w:null}).getInstruction(ze,Ne,We,d,p,e.programId,f,s,a,Ke,new t(E.product),new t(E.price),v,g,n,y,b);return m.push(A),[[],m]},Ps=async(r,i,o,s,a)=>{let[u]=await t.findProgramAddress([ze.toBuffer()],ze),c=Cn(r.toBase58()),f=On(c,u,s);return[[],[new ee({name:i}).getInstruction(ze,Ne,We,f,e.programId,u,o,n,s,a)]]},Ts=async(t,e,r,n=2e3)=>{const i=[],o=e.split(".")[0];if(!o)throw new Pt(Lt.InvalidSubdomain);const{parent:s,pubkey:a}=Mn(e),u=await t.getMinimumBalanceForRentExemption(n+we.HEADER_LEN),c=await ks(t,"\0".concat(o),n,r,r,u,void 0,s);i.push(c);const f=Hn(e,!0),h=await t.getAccountInfo(f);if(!(null==h?void 0:h.data)){const[,t]=await Ps(a,"\0".concat(o),r,s,r);i.push(...t)}return[[],i]},Cs=async(t,r,n,i,o,s)=>{qn(n!==Wr.SOL,Lt.UnsupportedRecord);const{pubkey:a,hashed:u,parent:c}=Mn(`${n}.${r}`,Mr.V1),f=hs(i,n).length,h=await t.getMinimumBalanceForRentExemption(f+we.HEADER_LEN);return Zt(Ne,e.programId,a,o,s,u,new Ct(h),new Tt(f),void 0,c,o)},Os=(t,r,n,i,o)=>{let{pubkey:s,parent:a,isSub:u}=Mn(`${r}.${t}`,Mr.V2);if(u&&(a=Mn(t).pubkey),!a)throw new Error("Invalid parent");const c=((t,r,n,i,o,s,a,u)=>new Sr({record:s,content:Array.from(a)}).getInstruction(u,e.programId,o,t,r,n,i,Pr))(o,s,a,i,Ne,"".concat(r),ms(n,r),Lr);return c},Ns=async(t,e,r,n,i,o)=>{qn(r!==Wr.SOL,Lt.UnsupportedRecord);const{pubkey:s}=Mn(`${r}.${e}`,Mr.V1),a=await t.getAccountInfo(s);qn(!!(null==a?void 0:a.data),Lt.AccountDoesNotExist);const u=hs(n,r);if((null==a?void 0:a.data.slice(96).length)!==u.length)return[Jt(Ne,s,o,i),await Cs(t,e,r,n,i,o)];return[Kt(Ne,s,new Tt(0),u,i)]},Ds=(t,r,n,i,o)=>{let{pubkey:s,parent:a,isSub:u}=Mn(`${r}.${t}`,Mr.V2);if(u&&(a=Mn(t).pubkey),!a)throw new Error("Invalid parent");const c=((t,r,n,i,o,s,a,u)=>new Rr({record:s,content:Array.from(a)}).getInstruction(u,e.programId,o,t,r,n,i,Pr))(o,s,a,i,Ne,"".concat(r),ms(n,r),Lr);return c},Ws=(t,r,n,i)=>{let{pubkey:o,parent:s,isSub:a}=Mn(`${r}.${t}`,Mr.V2);if(a&&(s=Mn(t).pubkey),!s)throw new Error("Invalid parent");const u=((t,r,n,i,o,s)=>(new _r).getInstruction(s,e.programId,o,t,i,r,n,Pr))(i,s,n,o,Ne,Lr);return u},zs=(t,r,n,i,o,s)=>{let{pubkey:a,parent:u,isSub:c}=Mn(`${n}.${r}`,Mr.V2);if(c&&(u=Mn(r).pubkey),!u)throw new Error("Invalid parent");const f=((t,r,n,i,o,s,a,u)=>new kr({staleness:a}).getInstruction(u,e.programId,s,t,r,n,i,Pr,o))(o,a,u,i,s,Ne,t,Lr);return f},Ms=(t,r,n,i,o)=>{let{pubkey:s,parent:a,isSub:u}=Mn(`${r}.${t}`,Mr.V2);if(u&&(a=Mn(t).pubkey),!a)throw new Error("Invalid parent");const c=((t,r,n,i,o,s,a)=>new Ur({roaId:Array.from(s.toBuffer())}).getInstruction(a,e.programId,r,t,n,i,o,Pr))(i,Ne,s,a,n,o,Lr);return c},js=(t,r,n,i,o,s)=>{let{pubkey:a,parent:u,isSub:c}=Mn(`${r}.${t}`,Mr.V2);if(c&&(u=Mn(t).pubkey),!u)throw new Error("Invalid parent");const f=((t,r,n,i,o,s,a,u,c)=>new xr({validation:s,signature:Array.from(a),expectedPubkey:Array.from(u)}).getInstruction(c,e.programId,o,t,r,n,i,Pr))(i,a,u,n,Ne,Tr.Ethereum,o,s,Lr);return f},Vs=async(t,r,n,i,o,s)=>{const{pubkey:a,hashed:u,parent:c}=Mn(`${Wr.SOL}.${r}`,Mr.V1),f=ds(n,a,i,o).length,h=await t.getMinimumBalanceForRentExemption(f+we.HEADER_LEN);return[Zt(Ne,e.programId,a,i,s,u,new Ct(h),new Tt(f),void 0,c,i)]},Fs=async(t,e,r,n,i,o)=>{const{pubkey:s}=Mn(`${Wr.SOL}.${e}`,Mr.V1),a=await t.getAccountInfo(s);if(qn(!!(null==a?void 0:a.data),Lt.AccountDoesNotExist),96!==(null==a?void 0:a.data.length))return[Jt(Ne,s,o,n),await Vs(t,e,r,n,i,o)];const u=ds(r,s,n,i);return[Kt(Ne,s,new Tt(0),u,n)]},Hs=(r,n,i)=>{const{pubkey:o}=Mn(r),[s]=t.findProgramAddressSync([o.toBuffer()],ze),[a]=t.findProgramAddressSync([o.toBuffer(),Uint8Array.from([1,1])],ze);return(new ie).getInstruction(ze,Ne,e.programId,o,Hn(r),a,s,Ve,n,i)},Gs=(r,i,o,s,a,u,c,f,h)=>{const[d]=t.findProgramAddressSync([o.toBuffer()],ze);return new ne({space:i,name:r}).getInstruction(ze,Ne,We,o,s,e.programId,Ve,a,u,c,f,h,er,g,n,d,rr)},qs=async(t,e,r,n,i)=>{const{pubkey:o,isSub:s,parent:a}=Mn(e);if(!a||!s)throw new Pt(Lt.InvalidSubdomain);if(!i){const{registry:e}=await we.retrieve(t,o);i=e.owner}let u,c;n&&(u=a,c=(await we.retrieve(t,a)).registry.owner);return Qt(Ne,o,r,i,void 0,u,c)},$s=(t,r)=>{const[n]=Is.getKeySync(Bs,r);return[(new se).getInstruction(Bs,t,n,r,e.programId)]};async function Xs(t,r,n,i,o){const s=Cn(r),a=On(s,void 0,He),u=await t.getMinimumBalanceForRentExemption(i+we.HEADER_LEN);let c=[Zt(Ne,e.programId,a,n,o,s,new Ct(u),new Tt(i),void 0,He,Fe)];return c=c.concat(await ia(t,r,a,n,o)),c}async function Ys(t,e,r,n){const i=Cn(t),o=On(i,void 0,He);return[Kt(Ne,o,new Tt(r),n,e)]}async function Zs(t,e,r,n,i){const o=Cn(e),s=On(o,void 0,He);let a=[Qt(Ne,s,n,r,void 0)];return a.push(await Us(t,r.toString(),i,Fe,He)),a=a.concat(await ia(t,e,s,n,i)),a}async function Ks(t,e){const r=Cn(t),n=On(r,void 0,He),i=Cn(e.toString()),o=On(i,Fe,He);return[Jt(Ne,n,e,e),Jt(Ne,o,e,e)]}async function Qs(t){const e=Cn(t);return On(e,void 0,He)}async function Js(t,e){const r=Cn(e),n=On(r,void 0,He),{registry:i}=await we.retrieve(t,n);return i}async function ta(e,r){const n=Cn(r.toString()),i=On(n,Fe,He);let o=await na.retrieve(e,i);return[o.twitterHandle,new t(o.twitterRegistryKey)]}async function ea(e,r){const n=[{memcmp:{offset:0,bytes:He.toBase58()}},{memcmp:{offset:32,bytes:r.toBase58()}},{memcmp:{offset:64,bytes:Fe.toBase58()}}],i=await e.getProgramAccounts(Ne,{filters:n});for(const e of i)if(e.account.data.length>we.HEADER_LEN+32){const r=e.account.data.slice(we.HEADER_LEN),n=new na(Yt(na.schema,r));return[n.twitterHandle,new t(n.twitterRegistryKey)]}throw new Pt(Lt.AccountDoesNotExist)}async function ra(e,r){const n=[{memcmp:{offset:0,bytes:He.toBase58()}},{memcmp:{offset:32,bytes:r.toBase58()}},{memcmp:{offset:64,bytes:new t(s.Buffer.alloc(32,0)).toBase58()}}],i=await e.getProgramAccounts(Ne,{filters:n});if(i.length>1)throw new Pt(Lt.MultipleRegistries);return i[0].account.data.slice(we.HEADER_LEN)}class na{constructor(t){this.twitterRegistryKey=t.twitterRegistryKey,this.twitterHandle=t.twitterHandle}static async retrieve(t,e){let r=await t.getAccountInfo(e,"processed");if(!r)throw new Pt(Lt.InvalidReverseTwitter);return new na(Yt(na.schema,r.data.slice(we.HEADER_LEN)))}}async function ia(t,r,n,i,o){const a=Cn(i.toString()),u=On(a,Fe,He);let c=Xt(na.schema,new na({twitterRegistryKey:n.toBytes(),twitterHandle:r}));return[Zt(Ne,e.programId,u,i,o,a,new Ct(await t.getMinimumBalanceForRentExemption(c.length+we.HEADER_LEN)),new Tt(c.length),Fe,He,Fe),Kt(Ne,u,new Tt(0),s.Buffer.from(c),Fe)]}var oa;na.schema={struct:{twitterRegistryKey:{array:{type:"u8",len:32}},twitterHandle:"string"}},function(t){t.DegenPoet1="DegenPoet#1",t.Rgb0x001="rgb0x00#1"}(oa||(oa={}));const sa=async(t,e)=>{const{pubkey:r}=Mn(e),{registry:n,nftOwner:i}=await we.retrieve(t,r);if(i)return i;try{const r=await ua(t,n.owner,e);if(void 0!==r)return r;return await aa(t,n.owner,e)}catch(t){if(t instanceof Error&&"FetchError"===t.name)throw t}return n.owner},aa=async(e,r,n)=>{const i=Mo(n,Wr.SOL),o=await is(e,n);if(!(null==o?void 0:o.data))throw new Pt(Lt.NoRecordData);const a=new TextEncoder,u=s.Buffer.concat([o.data.slice(0,32),i.toBuffer()]),c=a.encode(u.toString("hex"));if(!zo(c,o.data.slice(32),r))throw new Pt(Lt.InvalidSignature);return new t(o.data.slice(0,32))},ua=async(e,r,n)=>{try{const i=vs(n,Wr.SOL),o=await Dr.retrieve(e,i),s=o.getStalenessId(),a=o.getRoAId(),u=o.getContent();if(0===s.compare(r.toBuffer())&&o.header.stalenessValidation===Tr.Solana&&0===a.compare(u)&&o.header.rightOfAssociationValidation===Tr.Solana)return new t(u)}catch(t){if(t instanceof Error&&"FetchError"===t.name)throw t}},ca=new t("ART5dr4bDic2sQVZoFheEmUxwQq5VGSx9he7JxHcXNQD"),fa=new t("CSWvuDHXExVGEMR9kP8xYAHuNjXogeRck9Cnr312CC9g"),ha=(t,e)=>{const r=Cn(e),n=Cn(t),i=On(n,void 0,tr);return{domainKey:i,bgKey:On(r,void 0,i)}},da=t=>{switch(t){case oa.DegenPoet1:return ca;case oa.Rgb0x001:return fa;default:throw new Pt(Lt.InvalidCustomBg)}},la=async(e,r,n)=>{const i=vs(n,r),{registry:o,nftOwner:s}=await we.retrieve(e,Mn(n).pubkey),a=s||o.owner,u=await Dr.retrieve(e,i),c=u.getStalenessId();return(null==a?void 0:a.equals(new t(c)))&&u.header.stalenessValidation===Tr.Solana},pa={NAME_PROGRAM_ID:new t("namesLPneVptA9Z5rqUDD9tMTWEJwofgaYwp8cawRkX"),HASH_PREFIX:"SPL Name Service",ROOT_DOMAIN_ACCOUNT:new t("5eoDkP6vCQBXqDV9YN2NdUs3nmML3dMRNmEYpiyVNBm2"),REGISTER_PROGRAM_ID:new t("snshBoEQ9jx4QoHBpZDQPYdNCtw7RMxJvYrKFEhwaPJ"),REVERSE_LOOKUP_CLASS:new t("7NbD1vprif6apthEZAqhRfYuhrqnuderB8qpnfXGCc8H"),USDC_MINT:new t("4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU"),REFERRERS:[new t("3ogYncmMM5CmytsGCqKHydmXmKUZ6sGWvizkzqwT7zb1")],TOKENS_SYM_MINT:new Map([["4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU","USDC"],["EJwZgeZrdC8TXTQbQBoL6bfuAnFUUy1PVCMB4DYPzVaS","USDT"],["So11111111111111111111111111111111111111112","SOL"],["fidaWCioBQjieRrUQDxxS5Uxmq1CLi2VuVRyv4dEBey","FIDA"],["DL4ivZm3NVHWk9ZvtcqTchxoKArDK4rT3vbDx2gYVr7P","INJ"]]),PYTH_FEEDS:new Map([["4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU",{price:"5SSkXsEKQepHHAewytPVwdej4epN1nxgLVM84L4KXgy7",product:"6NpdXrQEpmDZ3jZKmM2rhdmkd3H6QAk23j2x8bkXcHKA"}],["EJwZgeZrdC8TXTQbQBoL6bfuAnFUUy1PVCMB4DYPzVaS",{price:"38xoQ4oeJCBrcVvca2cGk7iV1dAfrmTR1kmhSCJQ8Jto",product:"C5wDxND9E61RZ1wZhaSTWkoA8udumaHnoQY6BBsiaVpn"}],["So11111111111111111111111111111111111111112",{price:"J83w4HKfqxwcq3BEMMkPFSppX3gqekLyLJBexebFVkix",product:"3Mnn2fX6rQyUsyELYms1sBJyChWofzSNRoqYzvgMVz5E"}],["EchesyfXePKdLtoiZSL8pBe8Myagyy8ZRqsACNCFGnvp",{price:"7teETxN9Y8VK6uJxsctHEwST75mKLLwPH1jaFdvTQCpD",product:"5kWV4bhHeZANzg5MWaYCQYEEKHjur5uz1mu5vuLHwiLB"}],["DL4ivZm3NVHWk9ZvtcqTchxoKArDK4rT3vbDx2gYVr7P",{price:"44uRsNnT35kjkscSu59MxRr9CfkLZWf6gny8bWqUbVxE",product:"7UHB783Nh4avW3Yw9yoktf2KjxipU56KPahA51RnCCYE"}]]),PYTH_MAPPING_ACC:new t("BmA9Z6FjioHJPpjT39QazZyhDRUdZy2ezwx4GiDdE2u2"),VAULT_OWNER:new t("SNSaTJbEv2iT3CUrCQYa9zpGjbBVWhFCPaSJHkaJX34")},ya=(e,r,n)=>{const i=[e];r?i.push(r.toBuffer()):i.push(s.Buffer.alloc(32)),n?i.push(n.toBuffer()):i.push(s.Buffer.alloc(32));const[o]=t.findProgramAddressSync(i,pa.NAME_PROGRAM_ID);return o},ga=(t,e=pa.ROOT_DOMAIN_ACCOUNT,r)=>{let n=Cn(t);return{pubkey:ya(n,r,e),hashed:n}},wa=t=>{t.endsWith(".sol")&&(t=t.slice(0,-4));const e=t.split(".");if(2===e.length){const t="\0".concat(e[0]),{pubkey:r}=ga(e[1]);return{...ga(t,r),isSub:!0,parent:r}}if(e.length>=3)throw new Pt(Lt.InvalidInput);return{...ga(t,pa.ROOT_DOMAIN_ACCOUNT),isSub:!1,parent:void 0}},ba=(t,e)=>{const{pubkey:r,parent:n}=wa(t),i=Cn(r.toBase58());return ya(i,pa.REVERSE_LOOKUP_CLASS,e?n:void 0)};async function ma(t,r,n,i,o,s,a,u){const c=await ir(r),f=await ya(c,a,u),h=s||await t.getMinimumBalanceForRentExemption(n);let d;if(u){const{registry:e}=await nr(t,u);d=e.owner}return Zt(pa.NAME_PROGRAM_ID,e.programId,f,o,i,c,new Ct(h),new Tt(n),a,u,d)}const va=async(r,i,o,s,a)=>{let[u]=await t.findProgramAddress([pa.REGISTER_PROGRAM_ID.toBuffer()],pa.REGISTER_PROGRAM_ID),c=await ir(r.toBase58()),f=ya(c,u,s);return[[],[new ee({name:i}).getInstruction(pa.REGISTER_PROGRAM_ID,pa.NAME_PROGRAM_ID,pa.ROOT_DOMAIN_ACCOUNT,f,e.programId,u,o,n,s,a)]]},Ea={utils:{getNameAccountKeySync:ya,reverseLookup:async(t,e)=>{const r=Cn(e.toBase58()),n=ya(r,pa.REVERSE_LOOKUP_CLASS),{registry:i}=await we.retrieve(t,n);if(!i.data)throw new Pt(Lt.NoAccountData);return Yn(i.data)},_deriveSync:ga,getDomainKeySync:wa,getReverseKeySync:ba},constants:pa,bindings:{createNameRegistry:ma,updateNameRegistryData:async function(t,e,r,n,i,o){const s=await ir(e),a=ya(s,i,o);let u;return u=i||(await we.retrieve(t,a)).registry.owner,Kt(pa.NAME_PROGRAM_ID,a,new Tt(r),n,u)},transferNameOwnership:async function(t,e,r,n,i,o){const s=await ir(e),a=ya(s,n,i);let u;return u=n||(await we.retrieve(t,a)).registry.owner,Qt(pa.NAME_PROGRAM_ID,a,r,u,n,i,o)},deleteNameRegistry:async function(t,e,r,n,i){const o=await ir(e),s=ya(o,n,i);let a;return a=n||(await we.retrieve(t,s)).registry.owner,Jt(pa.NAME_PROGRAM_ID,s,r,a)},registerDomainName:async(r,i,o,s,a,u=pa.USDC_MINT,c)=>{if(i.includes(".")||i.trim().toLowerCase()!==i)throw new Pt(Lt.InvalidDomain);const[f]=t.findProgramAddressSync([pa.REGISTER_PROGRAM_ID.toBuffer()],pa.REGISTER_PROGRAM_ID),h=Cn(i),d=ya(h,void 0,pa.ROOT_DOMAIN_ACCOUNT),l=Cn(d.toBase58()),p=ya(l,f),[y]=t.findProgramAddressSync([d.toBuffer()],pa.REGISTER_PROGRAM_ID),w=pa.REFERRERS.findIndex((t=>null==c?void 0:c.equals(t)));let b;const m=[];if(-1!==w&&c){b=_t(u,c,!0);const t=await r.getAccountInfo(b);if(!(null==t?void 0:t.data)){const t=Ut(s,b,c,u);m.push(t)}}const v=_t(u,pa.VAULT_OWNER),E=Ea.constants.PYTH_FEEDS.get(u.toBase58());if(!E)throw new Pt(Lt.PythFeedNotFound);const A=new re({name:i,space:o,referrerIdxOpt:-1!=w?w:null}).getInstruction(pa.REGISTER_PROGRAM_ID,pa.NAME_PROGRAM_ID,pa.ROOT_DOMAIN_ACCOUNT,d,p,e.programId,f,s,a,pa.PYTH_MAPPING_ACC,new t(E.product),new t(E.price),v,g,n,y,b);return m.push(A),[[],m]},createReverseName:va,createSubdomain:async(t,e,r,n=2e3)=>{const i=[],o=e.split(".")[0];if(!o)throw new Pt(Lt.InvalidSubdomain);const{parent:s,pubkey:a}=wa(e),u=await t.getMinimumBalanceForRentExemption(n+we.HEADER_LEN),c=await ma(t,"\0".concat(o),n,r,r,u,void 0,s);i.push(c);const f=ba(e,!0),h=await t.getAccountInfo(f);if(!(null==h?void 0:h.data)){const[,t]=await va(a,"\0".concat(o),r,s,r);i.push(...t)}return[[],i]},burnDomain:(r,n,i)=>{const{pubkey:o}=wa(r),[s]=t.findProgramAddressSync([o.toBuffer()],pa.REGISTER_PROGRAM_ID),[a]=t.findProgramAddressSync([o.toBuffer(),Uint8Array.from([1,1])],pa.REGISTER_PROGRAM_ID);return(new ie).getInstruction(pa.REGISTER_PROGRAM_ID,pa.NAME_PROGRAM_ID,e.programId,o,ba(r),a,s,pa.REVERSE_LOOKUP_CLASS,n,i)},transferSubdomain:async(t,e,r,n,i)=>{const{pubkey:o,isSub:s,parent:a}=wa(e);if(!a||!s)throw new Pt(Lt.InvalidSubdomain);if(!i){const{registry:e}=await we.retrieve(t,o);i=e.owner}let u,c;n&&(u=a,c=(await we.retrieve(t,a)).registry.owner);return Qt(pa.NAME_PROGRAM_ID,o,r,i,void 0,u,c)}}};export{je as BONFIDA_FIDA_BNB,qe as BONFIDA_USDC_BNB,tr as CUSTOM_BG_TLD,oa as CustomBg,ps as ETH_ROA_RECORDS,Lt as ErrorType,Is as FavouriteDomain,ls as GUARDIANS,De as HASH_PREFIX,rr as METAPLEX_ID,Bs as NAME_OFFERS_ID,Ne as NAME_PROGRAM_ID,we as NameRegistryState,Tt as Numberu32,Ct as Numberu64,Ze as PYTH_FEEDS,Me as PYTH_FIDA_PRICE_ACC,Ke as PYTH_MAPPING_ACC,zr as RECORD_V1_SIZE,Xe as REFERRERS,ze as REGISTER_PROGRAM_ID,Ve as REVERSE_LOOKUP_CLASS,We as ROOT_DOMAIN_ACCOUNT,Wr as Record,Mr as RecordVersion,na as ReverseTwitterRegistryState,ws as SELF_SIGNED,Pt as SNSError,Ge as SOL_RECORD_SIG_LEN,Ye as TOKENS_SYM_MINT,He as TWITTER_ROOT_PARENT_REGISTRY_KEY,Fe as TWITTER_VERIFICATION_AUTHORITY,$e as USDC_MINT,gs as UTF8_ENCODED,Je as VAULT_OWNER,Qe as VAULT_OWNER_DEPRECATED,er as WOLVES_COLLECTION_METADATA,Hs as burnDomain,ie as burnInstruction,Ys as changeTwitterRegistryData,Zs as changeVerifiedPubkey,qn as check,zo as checkSolRecord,Zt as createInstruction,re as createInstructionV3,ks as createNameRegistry,Cs as createRecordInstruction,Os as createRecordV2Instruction,ee as createReverseInstruction,Ps as createReverseName,ia as createReverseTwitterRegistry,Vs as createSolRecordInstruction,Ts as createSubdomain,te as createV2Instruction,Xs as createVerifiedTwitterRegistry,ne as createWithNftInstruction,Jt as deleteInstruction,Us as deleteNameRegistry,Ws as deleteRecordV2,Ks as deleteTwitterRegistry,fs as deserializeRecord,bs as deserializeRecordV2Content,Yn as deserializeReverse,Ea as devnet,js as ethValidateRecordV2Content,Wn as findSubdomains,jn as getAllDomains,Fn as getAllRegisteredDomains,da as getArtistPubkey,Ho as getArweaveRecord,cs as getBackgroundRecord,us as getBackpackRecord,ss as getBscRecord,qo as getBtcRecord,ha as getCustomBgKeys,Ko as getDiscordRecord,Xo as getDogeRecord,cr as getDomainKey,Mn as getDomainKeySync,Vn as getDomainKeysWithReverses,ce as getDomainMint,Xn as getDomainPriceFromName,Yo as getEmailRecord,Go as getEthRecord,Ss as getFavoriteDomain,Qo as getGithubRecord,ta as getHandleAndRegistryKey,ir as getHashedName,Cn as getHashedNameSync,as as getInjectiveRecord,Fo as getIpfsRecord,$o as getLtcRecord,xs as getMultipleFavoriteDomains,As as getMultipleRecordsV2,or as getNameAccountKey,On as getNameAccountKeySync,nr as getNameOwner,rs as getPicRecord,os as getPointRecord,jo as getRecord,Mo as getRecordKeySync,Es as getRecordV2,vs as getRecordV2Key,Vo as getRecords,Jo as getRedditRecord,fr as getReverseKey,Gn as getReverseKeyFromDomainKey,Hn as getReverseKeySync,ns as getShdwRecord,is as getSolRecord,es as getTelegramRecord,$n as getTokenizedDomains,ea as getTwitterHandleandRegistryKeyViaFilters,ts as getTwitterRecord,Js as getTwitterRegistry,ra as getTwitterRegistryData,Qs as getTwitterRegistryKey,Zo as getUrlRecord,sr as performReverseLookup,ar as performReverseLookupBatch,oe as reallocInstruction,Ls as registerDomainName,$s as registerFavorite,se as registerFavoriteInstruction,Gs as registerWithNft,sa as resolve,aa as resolveSolRecordV1,ua as resolveSolRecordV2,de as retrieveNftOwner,le as retrieveNfts,ge as retrieveRecords,Nn as reverseLookup,Dn as reverseLookupBatch,hs as serializeRecord,ms as serializeRecordV2Content,ds as serializeSolRecord,Qt as transferInstruction,_s as transferNameOwnership,qs as transferSubdomain,Kt as updateInstruction,Rs as updateNameRegistryData,Ns as updateRecordInstruction,Ds as updateRecordV2Instruction,Fs as updateSolRecordInstruction,zs as validateRecordV2Content,ys as verifyRightOfAssociation,la as verifyStaleness,Ms as writRoaRecordV2};
19
+ function Ao(t){if(!Number.isSafeInteger(t))throw new Error(`Wrong integer: ${t}`)}function Bo(...t){const e=t=>t,r=(t,e)=>r=>t(e(r));return{encode:t.map((t=>t.encode)).reduceRight(r,e),decode:t.map((t=>t.decode)).reduce(r,e)}}function Io(t){return{encode:e=>{if(!Array.isArray(e)||e.length&&"number"!=typeof e[0])throw new Error("alphabet.encode input should be an array of numbers");return e.map((e=>{if(Ao(e),e<0||e>=t.length)throw new Error(`Digit index outside alphabet: ${e} (alphabet: ${t.length})`);return t[e]}))},decode:e=>{if(!Array.isArray(e)||e.length&&"string"!=typeof e[0])throw new Error("alphabet.decode input should be array of strings");return e.map((e=>{if("string"!=typeof e)throw new Error(`alphabet.decode: not string element=${e}`);const r=t.indexOf(e);if(-1===r)throw new Error(`Unknown letter: "${e}". Allowed: ${t}`);return r}))}}}function So(t=""){if("string"!=typeof t)throw new Error("join separator should be string");return{encode:e=>{if(!Array.isArray(e)||e.length&&"string"!=typeof e[0])throw new Error("join.encode input should be array of strings");for(let t of e)if("string"!=typeof t)throw new Error(`join.encode: non-string input=${t}`);return e.join(t)},decode:e=>{if("string"!=typeof e)throw new Error("join.decode input should be string");return e.split(t)}}}function xo(t,e="="){if(Ao(t),"string"!=typeof e)throw new Error("padding chr should be string");return{encode(r){if(!Array.isArray(r)||r.length&&"string"!=typeof r[0])throw new Error("padding.encode input should be array of strings");for(let t of r)if("string"!=typeof t)throw new Error(`padding.encode: non-string input=${t}`);for(;r.length*t%8;)r.push(e);return r},decode(r){if(!Array.isArray(r)||r.length&&"string"!=typeof r[0])throw new Error("padding.encode input should be array of strings");for(let t of r)if("string"!=typeof t)throw new Error(`padding.decode: non-string input=${t}`);let n=r.length;if(n*t%8)throw new Error("Invalid padding: string should have whole number of bytes");for(;n>0&&r[n-1]===e;n--)if(!((n-1)*t%8))throw new Error("Invalid padding: string has too much padding");return r.slice(0,n)}}}function ko(t){if("function"!=typeof t)throw new Error("normalize fn should be function");return{encode:t=>t,decode:e=>t(e)}}bo.pow(ho,Eo),bo.sqrt(bo.neg(bo.ONE)),bo.ORDER,BigInt(5),BigInt(8),BigInt(486662),function(t,e){if(!t.isOdd)throw new Error("Field doesn't have isOdd");const r=t.sqrt(e);t.isOdd(r)&&t.neg(r)}(bo,bo.neg(BigInt(486664))),BigInt("25063068953384623474111414158702152701244531502492656460079210482610430750235"),BigInt("54469307008909316920995813868745141605393597292927456921205312896311721017578"),BigInt("1159843021668779879193775521855586647937357759715417654439879720876111806838"),BigInt("40440834346308536858101042469323190826248399146238708352240133220865137265952"),BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");const Ro=(t,e)=>e?Ro(e,t%e):t,_o=(t,e)=>t+(e-Ro(t,e));function Uo(t,e,r,n){if(!Array.isArray(t))throw new Error("convertRadix2: data should be array");if(e<=0||e>32)throw new Error(`convertRadix2: wrong from=${e}`);if(r<=0||r>32)throw new Error(`convertRadix2: wrong to=${r}`);if(_o(e,r)>32)throw new Error(`convertRadix2: carry overflow from=${e} to=${r} carryBits=${_o(e,r)}`);let i=0,o=0;const s=2**r-1,a=[];for(const n of t){if(Ao(n),n>=2**e)throw new Error(`convertRadix2: invalid data word=${n} from=${e}`);if(i=i<<e|n,o+e>32)throw new Error(`convertRadix2: carry overflow pos=${o} from=${e}`);for(o+=e;o>=r;o-=r)a.push((i>>o-r&s)>>>0);i&=2**o-1}if(i=i<<r-o&s,!n&&o>=e)throw new Error("Excess padding");if(!n&&i)throw new Error(`Non-zero padding: ${i}`);return n&&o>0&&a.push(i>>>0),a}function Lo(t,e=!1){if(Ao(t),t<=0||t>32)throw new Error("radix2: bits should be in (0..32]");if(_o(8,t)>32||_o(t,8)>32)throw new Error("radix2: carry overflow");return{encode:r=>{if(!function(t){return t instanceof Uint8Array||null!=t&&"object"==typeof t&&"Uint8Array"===t.constructor.name}(r))throw new Error("radix2.encode input should be Uint8Array");return Uo(Array.from(r),8,t,!e)},decode:r=>{if(!Array.isArray(r)||r.length&&"number"!=typeof r[0])throw new Error("radix2.decode input should be array of numbers");return Uint8Array.from(Uo(r,t,8,e))}}}function Po(t){if("function"!=typeof t)throw new Error("unsafeWrapper fn should be function");return function(...e){try{return t.apply(null,e)}catch(t){}}}Lo(4),Io("0123456789ABCDEF"),So(""),Lo(5),Io("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),xo(5),So(""),Lo(5),Io("0123456789ABCDEFGHIJKLMNOPQRSTUV"),xo(5),So(""),Lo(5),Io("0123456789ABCDEFGHJKMNPQRSTVWXYZ"),So(""),ko((t=>t.toUpperCase().replace(/O/g,"0").replace(/[IL]/g,"1"))),Lo(6),Io("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"),xo(6),So(""),Lo(6),Io("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),xo(6),So(""),Lo(6),Io("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"),So("");const To=Bo(Io("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),So("")),Co=[996825010,642813549,513874426,1027748829,705979059];function Oo(t){const e=t>>25;let r=(33554431&t)<<5;for(let t=0;t<Co.length;t++)1==(e>>t&1)&&(r^=Co[t]);return r}function No(t,e,r=1){const n=t.length;let i=1;for(let e=0;e<n;e++){const r=t.charCodeAt(e);if(r<33||r>126)throw new Error(`Invalid prefix (${t})`);i=Oo(i)^r>>5}i=Oo(i);for(let e=0;e<n;e++)i=Oo(i)^31&t.charCodeAt(e);for(let t of e)i=Oo(i)^t;for(let t=0;t<6;t++)i=Oo(i);return i^=r,To.encode(Uo([i%2**30],30,5,!1))}function Do(t){const e="bech32"===t?1:734539939,r=Lo(5),n=r.decode,i=r.encode,o=Po(n);function s(t,r=90){if("string"!=typeof t)throw new Error("bech32.decode input should be string, not "+typeof t);if(t.length<8||!1!==r&&t.length>r)throw new TypeError(`Wrong string length: ${t.length} (${t}). Expected (8..${r})`);const n=t.toLowerCase();if(t!==n&&t!==t.toUpperCase())throw new Error("String must be lowercase or uppercase");const i=(t=n).lastIndexOf("1");if(0===i||-1===i)throw new Error('Letter "1" must be present between prefix and data only');const o=t.slice(0,i),s=t.slice(i+1);if(s.length<6)throw new Error("Data must be at least 6 characters long");const a=To.decode(s).slice(0,-6),u=No(o,a,e);if(!s.endsWith(u))throw new Error(`Invalid checksum in ${t}: expected "${u}"`);return{prefix:o,words:a}}return{encode:function(t,r,n=90){if("string"!=typeof t)throw new Error("bech32.encode prefix should be string, not "+typeof t);if(!Array.isArray(r)||r.length&&"number"!=typeof r[0])throw new Error("bech32.encode words should be array of numbers, not "+typeof r);const i=t.length+7+r.length;if(!1!==n&&i>n)throw new TypeError(`Length ${i} exceeds limit ${n}`);const o=t.toLowerCase(),s=No(o,r,e);return`${o}1${To.encode(r)}${s}`},decode:s,decodeToBytes:function(t){const{prefix:e,words:r}=s(t,!1);return{prefix:e,words:r,bytes:n(r)}},decodeUnsafe:Po(s),fromWords:n,fromWordsUnsafe:o,toWords:i}}const Wo=Do("bech32");Lo(4),Io("0123456789abcdef"),So(""),ko((t=>{if("string"!=typeof t||t.length%2)throw new TypeError(`hex.decode: expected string, got ${typeof t} with length ${t.length}`);return t.toLowerCase()}));const zo=(t,e,r)=>vo.verify(e,t,r.toBytes()),Mo=(t,e)=>{const{pubkey:r}=Mn(e+"."+t,Mr.V1);return r};async function jo(t,e,r,n){const i=Mo(e,r);let{registry:o}=await we.retrieve(t,i);if(!o.data)throw new Pt(Lt.NoRecordData);if(n)return fs(o,r,i);const s=zr.get(r);return o.data=o.data.slice(0,s),o}async function Vo(t,e,r,n){const i=r.map((t=>Mo(e,t))),o=await we.retrieveBatch(t,i);return n?o.map(((t,n)=>{if(t)return fs(t,r[n],Mo(e,r[n]))})):o}const Fo=async(t,e)=>await jo(t,e,Wr.IPFS,!0),Ho=async(t,e)=>await jo(t,e,Wr.ARWV,!0),Go=async(t,e)=>await jo(t,e,Wr.ETH,!0),qo=async(t,e)=>await jo(t,e,Wr.BTC,!0),$o=async(t,e)=>await jo(t,e,Wr.LTC,!0),Xo=async(t,e)=>await jo(t,e,Wr.DOGE,!0),Yo=async(t,e)=>await jo(t,e,Wr.Email,!0),Zo=async(t,e)=>await jo(t,e,Wr.Url,!0),Ko=async(t,e)=>await jo(t,e,Wr.Discord,!0),Qo=async(t,e)=>await jo(t,e,Wr.Github,!0),Jo=async(t,e)=>await jo(t,e,Wr.Reddit,!0),ts=async(t,e)=>await jo(t,e,Wr.Twitter,!0),es=async(t,e)=>await jo(t,e,Wr.Telegram,!0),rs=async(t,e)=>await jo(t,e,Wr.Pic,!0),ns=async(t,e)=>await jo(t,e,Wr.SHDW,!0),is=async(t,e)=>await jo(t,e,Wr.SOL),os=async(t,e)=>await jo(t,e,Wr.POINT,!0),ss=async(t,e)=>await jo(t,e,Wr.BSC,!0),as=async(t,e)=>await jo(t,e,Wr.Injective,!0),us=async(t,e)=>await jo(t,e,Wr.Backpack,!0),cs=async(t,e)=>await jo(t,e,Wr.Background,!0),fs=(e,r,n)=>{const i=null==e?void 0:e.data;if(!i)return;if(0===i.compare(s.Buffer.alloc(i.length)))return;const o=zr.get(r),a=(t=>{const e=Array.from(t);return e.length-1-e.reverse().findIndex((t=>0!==t))+1})(i);if(!o){const t=i.slice(0,a).toString("utf-8");return r===Wr.CNAME||r===Wr.TXT?ci(t):t}if(r===Wr.SOL){const t=new TextEncoder,r=s.Buffer.concat([i.slice(0,32),n.toBuffer()]),o=t.encode(r.toString("hex"));if(zo(o,i.slice(32,96),e.owner))return Qn.encode(i.slice(0,32))}if(o&&a!==o){const t=i.slice(0,a).toString("utf-8");if(r===Wr.Injective){const e=Wo.decodeToBytes(t);if("inj"===e.prefix&&20===e.bytes.length)return t}else if(r===Wr.BSC||r===Wr.ETH){const e=t.slice(0,2),r=t.slice(2);if("0x"===e&&20===s.Buffer.from(r,"hex").length)return t}else if((r===Wr.A||r===Wr.AAAA)&&ti.isValid(t))return t;throw new Pt(Lt.InvalidRecordData)}if(r===Wr.ETH||r===Wr.BSC)return"0x"+i.slice(0,o).toString("hex");if(r===Wr.Injective)return Wo.encode("inj",Wo.toWords(i.slice(0,o)));if(r===Wr.A||r===Wr.AAAA)return ti.fromByteArray([...i.slice(0,o)]).toString();if(r===Wr.Background)return new t(i.slice(0,o)).toString();throw new Pt(Lt.InvalidRecordData)},hs=(e,r)=>{if(!zr.get(r))return r!==Wr.CNAME&&r!==Wr.TXT||(e=fi(e)),s.Buffer.from(e,"utf-8");if(r===Wr.SOL)throw new Pt(Lt.UnsupportedRecord,"Use `serializeSolRecord` for SOL record");if(r===Wr.ETH||r===Wr.BSC)return qn("0x"===e.slice(0,2),Lt.InvalidEvmAddress),s.Buffer.from(e.slice(2),"hex");if(r===Wr.Injective){const t=Wo.decodeToBytes(e);return qn("inj"===t.prefix,Lt.InvalidInjectiveAddress),qn(20===t.bytes.length,Lt.InvalidInjectiveAddress),s.Buffer.from(t.bytes)}if(r===Wr.A){const t=ti.parse(e).toByteArray();return qn(4===t.length,Lt.InvalidARecord),s.Buffer.from(t)}if(r===Wr.AAAA){const t=ti.parse(e).toByteArray();return qn(16===t.length,Lt.InvalidAAAARecord),s.Buffer.from(t)}if(r===Wr.Background)return new t(e).toBuffer();throw new Pt(Lt.InvalidRecordInput)},ds=(t,e,r,n)=>{const i=s.Buffer.concat([t.toBuffer(),e.toBuffer()]),o=(new TextEncoder).encode(i.toString("hex")),a=zo(o,n,r);return qn(a,Lt.InvalidSignature),s.Buffer.concat([t.toBuffer(),n])},ls=new Map([[Wr.Url,new t("ExXjtfdQe8JacoqP9Z535WzQKjF4CzW1TTRKRgpxvya3")],[Wr.CNAME,new t("ExXjtfdQe8JacoqP9Z535WzQKjF4CzW1TTRKRgpxvya3")]]),ps=new Set([Wr.ETH,Wr.Injective,Wr.BSC]),ys=async(t,e,r,n)=>{var i;const o=vs(r,e),s=await Dr.retrieve(t,o),a=s.getRoAId(),u=ps.has(e)?Tr.Ethereum:Tr.Solana;if(!(n=null!=n?n:null===(i=ls.get(e))||void 0===i?void 0:i.toBuffer()))throw new Pt(Lt.MissingVerifier);return 0===n.compare(a)&&s.header.rightOfAssociationValidation===u},gs=new Set([Wr.IPFS,Wr.ARWV,Wr.LTC,Wr.DOGE,Wr.Email,Wr.Url,Wr.Discord,Wr.Github,Wr.Reddit,Wr.Twitter,Wr.Telegram,Wr.Pic,Wr.SHDW,Wr.POINT,Wr.Backpack,Wr.TXT,Wr.CNAME,Wr.BTC]),ws=new Set([Wr.ETH,Wr.Injective,Wr.SOL]),bs=(e,r)=>{if(gs.has(r)){const t=e.toString("utf-8");return r===Wr.CNAME||r===Wr.TXT?ci(t):t}if(r===Wr.SOL)return new t(e).toBase58();if(r===Wr.ETH||r===Wr.BSC)return"0x"+e.toString("hex");if(r===Wr.Injective)return Wo.encode("inj",Wo.toWords(e));if(r===Wr.A||r===Wr.AAAA)return ti.fromByteArray([...e]).toString();throw new Pt(Lt.InvalidARecord)},ms=(e,r)=>{if(gs.has(r))return r!==Wr.CNAME&&r!==Wr.TXT||(e=fi(e)),Buffer.from(e,"utf-8");if(r===Wr.SOL)return new t(e).toBuffer();if(r===Wr.ETH||r===Wr.BSC)return qn("0x"===e.slice(0,2),Lt.InvalidEvmAddress),Buffer.from(e.slice(2),"hex");if(r===Wr.Injective){const t=Wo.decodeToBytes(e);return qn("inj"===t.prefix,Lt.InvalidInjectiveAddress),qn(20===t.bytes.length,Lt.InvalidInjectiveAddress),Buffer.from(t.bytes)}if(r===Wr.A){const t=ti.parse(e).toByteArray();return qn(4===t.length,Lt.InvalidARecord),Buffer.from(t)}if(r===Wr.AAAA){const t=ti.parse(e).toByteArray();return qn(16===t.length,Lt.InvalidAAAARecord),Buffer.from(t)}throw new Pt(Lt.InvalidARecord)},vs=(t,e)=>{const{pubkey:r}=Mn(t),n=Cn("".concat(e));return On(n,Pr,r)};async function Es(t,e,r,n={}){const i=vs(e,r),o=await Dr.retrieve(t,i);return n.deserialize?{retrievedRecord:o,deserializedContent:bs(o.getContent(),r)}:{retrievedRecord:o}}async function As(t,e,r,n={}){const i=r.map((t=>vs(e,t))),o=await Dr.retrieveBatch(t,i);return n.deserialize?o.map(((t,e)=>{if(t)return{retrievedRecord:t,record:r[e],deserializedContent:bs(t.getContent(),r[e])}})):o.map(((t,e)=>{if(t)return{retrievedRecord:t,record:r[e]}}))}const Bs=new t("85iDfUvr3HJyLM2zcq5BXSiDvUWfw6cSE1FfNBo8Ap29");class Is{constructor(e){this.tag=e.tag,this.nameAccount=new t(e.nameAccount)}static deserialize(t){return new Is(Yt(this.schema,t))}static async retrieve(t,e){const r=await t.getAccountInfo(e);if(!r||!r.data)throw new Pt(Lt.FavouriteDomainNotFound);return this.deserialize(r.data)}static async getKey(e,r){return await t.findProgramAddress([s.Buffer.from("favourite_domain"),r.toBuffer()],e)}static getKeySync(e,r){return t.findProgramAddressSync([s.Buffer.from("favourite_domain"),r.toBuffer()],e)}}Is.schema={struct:{tag:"u8",nameAccount:{array:{type:"u8",len:32}}}};const Ss=async(e,r)=>{const[n]=Is.getKeySync(Bs,new t(r)),i=await Is.retrieve(e,n),o=await Nn(e,i.nameAccount),{registry:s,nftOwner:a}=await we.retrieve(e,i.nameAccount),u=a||s.owner;return{domain:i.nameAccount,reverse:o,stale:!r.equals(u)}},xs=async(e,r)=>{const n=[],i=r.map((t=>Is.getKeySync(Bs,t)[0])),o=(await e.getMultipleAccountsInfo(i)).map((e=>(null==e?void 0:e.data)?Is.deserialize(null==e?void 0:e.data).nameAccount:t.default)),s=o.map((t=>Gn(t))),a=o.map(((t,e)=>_t(ce(t),r[e],!0))),[u,c,f]=await Promise.all([e.getMultipleAccountsInfo(o),e.getMultipleAccountsInfo(s),e.getMultipleAccountsInfo(a)]);for(let e=0;e<r.length;e++){const i=u[e],o=c[e],s=f[e];if(!i||!o){n.push(void 0);continue}if(new t(null==i?void 0:i.data.slice(32,64)).equals(r[e])){n.push(Yn(null==o?void 0:o.data.slice(96)));continue}if(!s){n.push(void 0);continue}const a=It.decode(s.data);1!==Number(a.amount)?n.push(void 0):n.push(Yn(null==o?void 0:o.data.slice(96)))}return n};async function ks(t,r,n,i,o,s,a,u){const c=Cn(r),f=On(c,a,u),h=s||await t.getMinimumBalanceForRentExemption(n);let d;if(u){const{registry:e}=await nr(t,u);d=e.owner}return Zt(Ne,e.programId,f,o,i,c,new Ct(h),new Tt(n),a,u,d)}async function Rs(t,e,r,n,i,o){const s=Cn(e),a=On(s,i,o);let u;u=i||(await we.retrieve(t,a)).registry.owner;return Kt(Ne,a,new Tt(r),n,u)}async function _s(t,e,r,n,i,o){const s=Cn(e),a=On(s,n,i);let u;u=n||(await we.retrieve(t,a)).registry.owner;return Qt(Ne,a,r,u,n,i,o)}async function Us(t,e,r,n,i){const o=Cn(e),s=On(o,n,i);let a;a=n||(await we.retrieve(t,s)).registry.owner;return Jt(Ne,s,r,a)}const Ls=async(r,i,o,s,a,u=$e,c)=>{if(i.includes(".")||i.trim().toLowerCase()!==i)throw new Pt(Lt.InvalidDomain);const[f]=t.findProgramAddressSync([ze.toBuffer()],ze),h=Cn(i),d=On(h,void 0,We),l=Cn(d.toBase58()),p=On(l,f),[y]=t.findProgramAddressSync([d.toBuffer()],ze),w=Xe.findIndex((t=>null==c?void 0:c.equals(t)));let b;const m=[];if(-1!==w&&c){b=_t(u,c,!0);const t=await r.getAccountInfo(b);if(!(null==t?void 0:t.data)){const t=Ut(s,b,c,u);m.push(t)}}const v=_t(u,Je,!0),E=Ze.get(u.toBase58());if(!E)throw new Pt(Lt.PythFeedNotFound);const A=new re({name:i,space:o,referrerIdxOpt:-1!=w?w:null}).getInstruction(ze,Ne,We,d,p,e.programId,f,s,a,Ke,new t(E.product),new t(E.price),v,g,n,y,b);return m.push(A),[[],m]},Ps=async(r,i,o,s,a)=>{let[u]=await t.findProgramAddress([ze.toBuffer()],ze),c=Cn(r.toBase58()),f=On(c,u,s);return[[],[new ee({name:i}).getInstruction(ze,Ne,We,f,e.programId,u,o,n,s,a)]]},Ts=async(t,e,r,n=2e3,i)=>{const o=[],s=e.split(".")[0];if(!s)throw new Pt(Lt.InvalidSubdomain);const{parent:a,pubkey:u}=Mn(e),c=await t.getMinimumBalanceForRentExemption(n+we.HEADER_LEN),f=await ks(t,"\0".concat(s),n,i||r,r,c,void 0,a);o.push(f);const h=Hn(e,!0),d=await t.getAccountInfo(h);if(!(null==d?void 0:d.data)){const[,t]=await Ps(u,"\0".concat(s),i||r,a,r);o.push(...t)}return[[],o]},Cs=async(t,r,n,i,o,s)=>{qn(n!==Wr.SOL,Lt.UnsupportedRecord);const{pubkey:a,hashed:u,parent:c}=Mn(`${n}.${r}`,Mr.V1),f=hs(i,n).length,h=await t.getMinimumBalanceForRentExemption(f+we.HEADER_LEN);return Zt(Ne,e.programId,a,o,s,u,new Ct(h),new Tt(f),void 0,c,o)},Os=(t,r,n,i,o)=>{let{pubkey:s,parent:a,isSub:u}=Mn(`${r}.${t}`,Mr.V2);if(u&&(a=Mn(t).pubkey),!a)throw new Error("Invalid parent");const c=((t,r,n,i,o,s,a,u)=>new Sr({record:s,content:Array.from(a)}).getInstruction(u,e.programId,o,t,r,n,i,Pr))(o,s,a,i,Ne,"".concat(r),ms(n,r),Lr);return c},Ns=async(t,e,r,n,i,o)=>{qn(r!==Wr.SOL,Lt.UnsupportedRecord);const{pubkey:s}=Mn(`${r}.${e}`,Mr.V1),a=await t.getAccountInfo(s);qn(!!(null==a?void 0:a.data),Lt.AccountDoesNotExist);const u=hs(n,r);if((null==a?void 0:a.data.slice(96).length)!==u.length)return[Jt(Ne,s,o,i),await Cs(t,e,r,n,i,o)];return[Kt(Ne,s,new Tt(0),u,i)]},Ds=(t,r,n,i,o)=>{let{pubkey:s,parent:a,isSub:u}=Mn(`${r}.${t}`,Mr.V2);if(u&&(a=Mn(t).pubkey),!a)throw new Error("Invalid parent");const c=((t,r,n,i,o,s,a,u)=>new Rr({record:s,content:Array.from(a)}).getInstruction(u,e.programId,o,t,r,n,i,Pr))(o,s,a,i,Ne,"".concat(r),ms(n,r),Lr);return c},Ws=(t,r,n,i)=>{let{pubkey:o,parent:s,isSub:a}=Mn(`${r}.${t}`,Mr.V2);if(a&&(s=Mn(t).pubkey),!s)throw new Error("Invalid parent");const u=((t,r,n,i,o,s)=>(new _r).getInstruction(s,e.programId,o,t,i,r,n,Pr))(i,s,n,o,Ne,Lr);return u},zs=(t,r,n,i,o,s)=>{let{pubkey:a,parent:u,isSub:c}=Mn(`${n}.${r}`,Mr.V2);if(c&&(u=Mn(r).pubkey),!u)throw new Error("Invalid parent");const f=((t,r,n,i,o,s,a,u)=>new kr({staleness:a}).getInstruction(u,e.programId,s,t,r,n,i,Pr,o))(o,a,u,i,s,Ne,t,Lr);return f},Ms=(t,r,n,i,o)=>{let{pubkey:s,parent:a,isSub:u}=Mn(`${r}.${t}`,Mr.V2);if(u&&(a=Mn(t).pubkey),!a)throw new Error("Invalid parent");const c=((t,r,n,i,o,s,a)=>new Ur({roaId:Array.from(s.toBuffer())}).getInstruction(a,e.programId,r,t,n,i,o,Pr))(i,Ne,s,a,n,o,Lr);return c},js=(t,r,n,i,o,s)=>{let{pubkey:a,parent:u,isSub:c}=Mn(`${r}.${t}`,Mr.V2);if(c&&(u=Mn(t).pubkey),!u)throw new Error("Invalid parent");const f=((t,r,n,i,o,s,a,u,c)=>new xr({validation:s,signature:Array.from(a),expectedPubkey:Array.from(u)}).getInstruction(c,e.programId,o,t,r,n,i,Pr))(i,a,u,n,Ne,Tr.Ethereum,o,s,Lr);return f},Vs=async(t,r,n,i,o,s)=>{const{pubkey:a,hashed:u,parent:c}=Mn(`${Wr.SOL}.${r}`,Mr.V1),f=ds(n,a,i,o).length,h=await t.getMinimumBalanceForRentExemption(f+we.HEADER_LEN);return[Zt(Ne,e.programId,a,i,s,u,new Ct(h),new Tt(f),void 0,c,i)]},Fs=async(t,e,r,n,i,o)=>{const{pubkey:s}=Mn(`${Wr.SOL}.${e}`,Mr.V1),a=await t.getAccountInfo(s);if(qn(!!(null==a?void 0:a.data),Lt.AccountDoesNotExist),96!==(null==a?void 0:a.data.length))return[Jt(Ne,s,o,n),await Vs(t,e,r,n,i,o)];const u=ds(r,s,n,i);return[Kt(Ne,s,new Tt(0),u,n)]},Hs=(r,n,i)=>{const{pubkey:o}=Mn(r),[s]=t.findProgramAddressSync([o.toBuffer()],ze),[a]=t.findProgramAddressSync([o.toBuffer(),Uint8Array.from([1,1])],ze);return(new ie).getInstruction(ze,Ne,e.programId,o,Hn(r),a,s,Ve,n,i)},Gs=(r,i,o,s,a,u,c,f,h)=>{const[d]=t.findProgramAddressSync([o.toBuffer()],ze);return new ne({space:i,name:r}).getInstruction(ze,Ne,We,o,s,e.programId,Ve,a,u,c,f,h,er,g,n,d,rr)},qs=async(t,e,r,n,i)=>{const{pubkey:o,isSub:s,parent:a}=Mn(e);if(!a||!s)throw new Pt(Lt.InvalidSubdomain);if(!i){const{registry:e}=await we.retrieve(t,o);i=e.owner}let u,c;n&&(u=a,c=(await we.retrieve(t,a)).registry.owner);return Qt(Ne,o,r,i,void 0,u,c)},$s=(t,r)=>{const[n]=Is.getKeySync(Bs,r);return[(new se).getInstruction(Bs,t,n,r,e.programId)]};async function Xs(t,r,n,i,o){const s=Cn(r),a=On(s,void 0,He),u=await t.getMinimumBalanceForRentExemption(i+we.HEADER_LEN);let c=[Zt(Ne,e.programId,a,n,o,s,new Ct(u),new Tt(i),void 0,He,Fe)];return c=c.concat(await ia(t,r,a,n,o)),c}async function Ys(t,e,r,n){const i=Cn(t),o=On(i,void 0,He);return[Kt(Ne,o,new Tt(r),n,e)]}async function Zs(t,e,r,n,i){const o=Cn(e),s=On(o,void 0,He);let a=[Qt(Ne,s,n,r,void 0)];return a.push(await Us(t,r.toString(),i,Fe,He)),a=a.concat(await ia(t,e,s,n,i)),a}async function Ks(t,e){const r=Cn(t),n=On(r,void 0,He),i=Cn(e.toString()),o=On(i,Fe,He);return[Jt(Ne,n,e,e),Jt(Ne,o,e,e)]}async function Qs(t){const e=Cn(t);return On(e,void 0,He)}async function Js(t,e){const r=Cn(e),n=On(r,void 0,He),{registry:i}=await we.retrieve(t,n);return i}async function ta(e,r){const n=Cn(r.toString()),i=On(n,Fe,He);let o=await na.retrieve(e,i);return[o.twitterHandle,new t(o.twitterRegistryKey)]}async function ea(e,r){const n=[{memcmp:{offset:0,bytes:He.toBase58()}},{memcmp:{offset:32,bytes:r.toBase58()}},{memcmp:{offset:64,bytes:Fe.toBase58()}}],i=await e.getProgramAccounts(Ne,{filters:n});for(const e of i)if(e.account.data.length>we.HEADER_LEN+32){const r=e.account.data.slice(we.HEADER_LEN),n=new na(Yt(na.schema,r));return[n.twitterHandle,new t(n.twitterRegistryKey)]}throw new Pt(Lt.AccountDoesNotExist)}async function ra(e,r){const n=[{memcmp:{offset:0,bytes:He.toBase58()}},{memcmp:{offset:32,bytes:r.toBase58()}},{memcmp:{offset:64,bytes:new t(s.Buffer.alloc(32,0)).toBase58()}}],i=await e.getProgramAccounts(Ne,{filters:n});if(i.length>1)throw new Pt(Lt.MultipleRegistries);return i[0].account.data.slice(we.HEADER_LEN)}class na{constructor(t){this.twitterRegistryKey=t.twitterRegistryKey,this.twitterHandle=t.twitterHandle}static async retrieve(t,e){let r=await t.getAccountInfo(e,"processed");if(!r)throw new Pt(Lt.InvalidReverseTwitter);return new na(Yt(na.schema,r.data.slice(we.HEADER_LEN)))}}async function ia(t,r,n,i,o){const a=Cn(i.toString()),u=On(a,Fe,He);let c=Xt(na.schema,new na({twitterRegistryKey:n.toBytes(),twitterHandle:r}));return[Zt(Ne,e.programId,u,i,o,a,new Ct(await t.getMinimumBalanceForRentExemption(c.length+we.HEADER_LEN)),new Tt(c.length),Fe,He,Fe),Kt(Ne,u,new Tt(0),s.Buffer.from(c),Fe)]}var oa;na.schema={struct:{twitterRegistryKey:{array:{type:"u8",len:32}},twitterHandle:"string"}},function(t){t.DegenPoet1="DegenPoet#1",t.Rgb0x001="rgb0x00#1"}(oa||(oa={}));const sa=async(t,e)=>{const{pubkey:r}=Mn(e),{registry:n,nftOwner:i}=await we.retrieve(t,r);if(i)return i;try{const r=await ua(t,n.owner,e);if(void 0!==r)return r;return await aa(t,n.owner,e)}catch(t){if(t instanceof Error&&"FetchError"===t.name)throw t}return n.owner},aa=async(e,r,n)=>{const i=Mo(n,Wr.SOL),o=await is(e,n);if(!(null==o?void 0:o.data))throw new Pt(Lt.NoRecordData);const a=new TextEncoder,u=s.Buffer.concat([o.data.slice(0,32),i.toBuffer()]),c=a.encode(u.toString("hex"));if(!zo(c,o.data.slice(32),r))throw new Pt(Lt.InvalidSignature);return new t(o.data.slice(0,32))},ua=async(e,r,n)=>{try{const i=vs(n,Wr.SOL),o=await Dr.retrieve(e,i),s=o.getStalenessId(),a=o.getRoAId(),u=o.getContent();if(0===s.compare(r.toBuffer())&&o.header.stalenessValidation===Tr.Solana&&0===a.compare(u)&&o.header.rightOfAssociationValidation===Tr.Solana)return new t(u)}catch(t){if(t instanceof Error&&"FetchError"===t.name)throw t}},ca=new t("ART5dr4bDic2sQVZoFheEmUxwQq5VGSx9he7JxHcXNQD"),fa=new t("CSWvuDHXExVGEMR9kP8xYAHuNjXogeRck9Cnr312CC9g"),ha=(t,e)=>{const r=Cn(e),n=Cn(t),i=On(n,void 0,tr);return{domainKey:i,bgKey:On(r,void 0,i)}},da=t=>{switch(t){case oa.DegenPoet1:return ca;case oa.Rgb0x001:return fa;default:throw new Pt(Lt.InvalidCustomBg)}},la=async(e,r,n)=>{const i=vs(n,r),{registry:o,nftOwner:s}=await we.retrieve(e,Mn(n).pubkey),a=s||o.owner,u=await Dr.retrieve(e,i),c=u.getStalenessId();return(null==a?void 0:a.equals(new t(c)))&&u.header.stalenessValidation===Tr.Solana},pa={NAME_PROGRAM_ID:new t("namesLPneVptA9Z5rqUDD9tMTWEJwofgaYwp8cawRkX"),HASH_PREFIX:"SPL Name Service",ROOT_DOMAIN_ACCOUNT:new t("5eoDkP6vCQBXqDV9YN2NdUs3nmML3dMRNmEYpiyVNBm2"),REGISTER_PROGRAM_ID:new t("snshBoEQ9jx4QoHBpZDQPYdNCtw7RMxJvYrKFEhwaPJ"),REVERSE_LOOKUP_CLASS:new t("7NbD1vprif6apthEZAqhRfYuhrqnuderB8qpnfXGCc8H"),USDC_MINT:new t("4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU"),REFERRERS:[new t("3ogYncmMM5CmytsGCqKHydmXmKUZ6sGWvizkzqwT7zb1")],TOKENS_SYM_MINT:new Map([["4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU","USDC"],["EJwZgeZrdC8TXTQbQBoL6bfuAnFUUy1PVCMB4DYPzVaS","USDT"],["So11111111111111111111111111111111111111112","SOL"],["fidaWCioBQjieRrUQDxxS5Uxmq1CLi2VuVRyv4dEBey","FIDA"],["DL4ivZm3NVHWk9ZvtcqTchxoKArDK4rT3vbDx2gYVr7P","INJ"]]),PYTH_FEEDS:new Map([["4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU",{price:"5SSkXsEKQepHHAewytPVwdej4epN1nxgLVM84L4KXgy7",product:"6NpdXrQEpmDZ3jZKmM2rhdmkd3H6QAk23j2x8bkXcHKA"}],["EJwZgeZrdC8TXTQbQBoL6bfuAnFUUy1PVCMB4DYPzVaS",{price:"38xoQ4oeJCBrcVvca2cGk7iV1dAfrmTR1kmhSCJQ8Jto",product:"C5wDxND9E61RZ1wZhaSTWkoA8udumaHnoQY6BBsiaVpn"}],["So11111111111111111111111111111111111111112",{price:"J83w4HKfqxwcq3BEMMkPFSppX3gqekLyLJBexebFVkix",product:"3Mnn2fX6rQyUsyELYms1sBJyChWofzSNRoqYzvgMVz5E"}],["EchesyfXePKdLtoiZSL8pBe8Myagyy8ZRqsACNCFGnvp",{price:"7teETxN9Y8VK6uJxsctHEwST75mKLLwPH1jaFdvTQCpD",product:"5kWV4bhHeZANzg5MWaYCQYEEKHjur5uz1mu5vuLHwiLB"}],["DL4ivZm3NVHWk9ZvtcqTchxoKArDK4rT3vbDx2gYVr7P",{price:"44uRsNnT35kjkscSu59MxRr9CfkLZWf6gny8bWqUbVxE",product:"7UHB783Nh4avW3Yw9yoktf2KjxipU56KPahA51RnCCYE"}]]),PYTH_MAPPING_ACC:new t("BmA9Z6FjioHJPpjT39QazZyhDRUdZy2ezwx4GiDdE2u2"),VAULT_OWNER:new t("SNSaTJbEv2iT3CUrCQYa9zpGjbBVWhFCPaSJHkaJX34")},ya=(e,r,n)=>{const i=[e];r?i.push(r.toBuffer()):i.push(s.Buffer.alloc(32)),n?i.push(n.toBuffer()):i.push(s.Buffer.alloc(32));const[o]=t.findProgramAddressSync(i,pa.NAME_PROGRAM_ID);return o},ga=(t,e=pa.ROOT_DOMAIN_ACCOUNT,r)=>{let n=Cn(t);return{pubkey:ya(n,r,e),hashed:n}},wa=t=>{t.endsWith(".sol")&&(t=t.slice(0,-4));const e=t.split(".");if(2===e.length){const t="\0".concat(e[0]),{pubkey:r}=ga(e[1]);return{...ga(t,r),isSub:!0,parent:r}}if(e.length>=3)throw new Pt(Lt.InvalidInput);return{...ga(t,pa.ROOT_DOMAIN_ACCOUNT),isSub:!1,parent:void 0}},ba=(t,e)=>{const{pubkey:r,parent:n}=wa(t),i=Cn(r.toBase58());return ya(i,pa.REVERSE_LOOKUP_CLASS,e?n:void 0)};async function ma(t,r,n,i,o,s,a,u){const c=await ir(r),f=await ya(c,a,u),h=s||await t.getMinimumBalanceForRentExemption(n);let d;if(u){const{registry:e}=await nr(t,u);d=e.owner}return Zt(pa.NAME_PROGRAM_ID,e.programId,f,o,i,c,new Ct(h),new Tt(n),a,u,d)}const va=async(r,i,o,s,a)=>{let[u]=await t.findProgramAddress([pa.REGISTER_PROGRAM_ID.toBuffer()],pa.REGISTER_PROGRAM_ID),c=await ir(r.toBase58()),f=ya(c,u,s);return[[],[new ee({name:i}).getInstruction(pa.REGISTER_PROGRAM_ID,pa.NAME_PROGRAM_ID,pa.ROOT_DOMAIN_ACCOUNT,f,e.programId,u,o,n,s,a)]]},Ea={utils:{getNameAccountKeySync:ya,reverseLookup:async(t,e)=>{const r=Cn(e.toBase58()),n=ya(r,pa.REVERSE_LOOKUP_CLASS),{registry:i}=await we.retrieve(t,n);if(!i.data)throw new Pt(Lt.NoAccountData);return Yn(i.data)},_deriveSync:ga,getDomainKeySync:wa,getReverseKeySync:ba},constants:pa,bindings:{createNameRegistry:ma,updateNameRegistryData:async function(t,e,r,n,i,o){const s=await ir(e),a=ya(s,i,o);let u;return u=i||(await we.retrieve(t,a)).registry.owner,Kt(pa.NAME_PROGRAM_ID,a,new Tt(r),n,u)},transferNameOwnership:async function(t,e,r,n,i,o){const s=await ir(e),a=ya(s,n,i);let u;return u=n||(await we.retrieve(t,a)).registry.owner,Qt(pa.NAME_PROGRAM_ID,a,r,u,n,i,o)},deleteNameRegistry:async function(t,e,r,n,i){const o=await ir(e),s=ya(o,n,i);let a;return a=n||(await we.retrieve(t,s)).registry.owner,Jt(pa.NAME_PROGRAM_ID,s,r,a)},registerDomainName:async(r,i,o,s,a,u=pa.USDC_MINT,c)=>{if(i.includes(".")||i.trim().toLowerCase()!==i)throw new Pt(Lt.InvalidDomain);const[f]=t.findProgramAddressSync([pa.REGISTER_PROGRAM_ID.toBuffer()],pa.REGISTER_PROGRAM_ID),h=Cn(i),d=ya(h,void 0,pa.ROOT_DOMAIN_ACCOUNT),l=Cn(d.toBase58()),p=ya(l,f),[y]=t.findProgramAddressSync([d.toBuffer()],pa.REGISTER_PROGRAM_ID),w=pa.REFERRERS.findIndex((t=>null==c?void 0:c.equals(t)));let b;const m=[];if(-1!==w&&c){b=_t(u,c,!0);const t=await r.getAccountInfo(b);if(!(null==t?void 0:t.data)){const t=Ut(s,b,c,u);m.push(t)}}const v=_t(u,pa.VAULT_OWNER),E=Ea.constants.PYTH_FEEDS.get(u.toBase58());if(!E)throw new Pt(Lt.PythFeedNotFound);const A=new re({name:i,space:o,referrerIdxOpt:-1!=w?w:null}).getInstruction(pa.REGISTER_PROGRAM_ID,pa.NAME_PROGRAM_ID,pa.ROOT_DOMAIN_ACCOUNT,d,p,e.programId,f,s,a,pa.PYTH_MAPPING_ACC,new t(E.product),new t(E.price),v,g,n,y,b);return m.push(A),[[],m]},createReverseName:va,createSubdomain:async(t,e,r,n=2e3)=>{const i=[],o=e.split(".")[0];if(!o)throw new Pt(Lt.InvalidSubdomain);const{parent:s,pubkey:a}=wa(e),u=await t.getMinimumBalanceForRentExemption(n+we.HEADER_LEN),c=await ma(t,"\0".concat(o),n,r,r,u,void 0,s);i.push(c);const f=ba(e,!0),h=await t.getAccountInfo(f);if(!(null==h?void 0:h.data)){const[,t]=await va(a,"\0".concat(o),r,s,r);i.push(...t)}return[[],i]},burnDomain:(r,n,i)=>{const{pubkey:o}=wa(r),[s]=t.findProgramAddressSync([o.toBuffer()],pa.REGISTER_PROGRAM_ID),[a]=t.findProgramAddressSync([o.toBuffer(),Uint8Array.from([1,1])],pa.REGISTER_PROGRAM_ID);return(new ie).getInstruction(pa.REGISTER_PROGRAM_ID,pa.NAME_PROGRAM_ID,e.programId,o,ba(r),a,s,pa.REVERSE_LOOKUP_CLASS,n,i)},transferSubdomain:async(t,e,r,n,i)=>{const{pubkey:o,isSub:s,parent:a}=wa(e);if(!a||!s)throw new Pt(Lt.InvalidSubdomain);if(!i){const{registry:e}=await we.retrieve(t,o);i=e.owner}let u,c;n&&(u=a,c=(await we.retrieve(t,a)).registry.owner);return Qt(pa.NAME_PROGRAM_ID,o,r,i,void 0,u,c)}}};export{je as BONFIDA_FIDA_BNB,qe as BONFIDA_USDC_BNB,tr as CUSTOM_BG_TLD,oa as CustomBg,ps as ETH_ROA_RECORDS,Lt as ErrorType,Is as FavouriteDomain,ls as GUARDIANS,De as HASH_PREFIX,rr as METAPLEX_ID,Bs as NAME_OFFERS_ID,Ne as NAME_PROGRAM_ID,we as NameRegistryState,Tt as Numberu32,Ct as Numberu64,Ze as PYTH_FEEDS,Me as PYTH_FIDA_PRICE_ACC,Ke as PYTH_MAPPING_ACC,zr as RECORD_V1_SIZE,Xe as REFERRERS,ze as REGISTER_PROGRAM_ID,Ve as REVERSE_LOOKUP_CLASS,We as ROOT_DOMAIN_ACCOUNT,Wr as Record,Mr as RecordVersion,na as ReverseTwitterRegistryState,ws as SELF_SIGNED,Pt as SNSError,Ge as SOL_RECORD_SIG_LEN,Ye as TOKENS_SYM_MINT,He as TWITTER_ROOT_PARENT_REGISTRY_KEY,Fe as TWITTER_VERIFICATION_AUTHORITY,$e as USDC_MINT,gs as UTF8_ENCODED,Je as VAULT_OWNER,Qe as VAULT_OWNER_DEPRECATED,er as WOLVES_COLLECTION_METADATA,Hs as burnDomain,ie as burnInstruction,Ys as changeTwitterRegistryData,Zs as changeVerifiedPubkey,qn as check,zo as checkSolRecord,Zt as createInstruction,re as createInstructionV3,ks as createNameRegistry,Cs as createRecordInstruction,Os as createRecordV2Instruction,ee as createReverseInstruction,Ps as createReverseName,ia as createReverseTwitterRegistry,Vs as createSolRecordInstruction,Ts as createSubdomain,te as createV2Instruction,Xs as createVerifiedTwitterRegistry,ne as createWithNftInstruction,Jt as deleteInstruction,Us as deleteNameRegistry,Ws as deleteRecordV2,Ks as deleteTwitterRegistry,fs as deserializeRecord,bs as deserializeRecordV2Content,Yn as deserializeReverse,Ea as devnet,js as ethValidateRecordV2Content,Wn as findSubdomains,jn as getAllDomains,Fn as getAllRegisteredDomains,da as getArtistPubkey,Ho as getArweaveRecord,cs as getBackgroundRecord,us as getBackpackRecord,ss as getBscRecord,qo as getBtcRecord,ha as getCustomBgKeys,Ko as getDiscordRecord,Xo as getDogeRecord,cr as getDomainKey,Mn as getDomainKeySync,Vn as getDomainKeysWithReverses,ce as getDomainMint,Xn as getDomainPriceFromName,Yo as getEmailRecord,Go as getEthRecord,Ss as getFavoriteDomain,Qo as getGithubRecord,ta as getHandleAndRegistryKey,ir as getHashedName,Cn as getHashedNameSync,as as getInjectiveRecord,Fo as getIpfsRecord,$o as getLtcRecord,xs as getMultipleFavoriteDomains,As as getMultipleRecordsV2,or as getNameAccountKey,On as getNameAccountKeySync,nr as getNameOwner,rs as getPicRecord,os as getPointRecord,jo as getRecord,Mo as getRecordKeySync,Es as getRecordV2,vs as getRecordV2Key,Vo as getRecords,Jo as getRedditRecord,fr as getReverseKey,Gn as getReverseKeyFromDomainKey,Hn as getReverseKeySync,ns as getShdwRecord,is as getSolRecord,es as getTelegramRecord,$n as getTokenizedDomains,ea as getTwitterHandleandRegistryKeyViaFilters,ts as getTwitterRecord,Js as getTwitterRegistry,ra as getTwitterRegistryData,Qs as getTwitterRegistryKey,Zo as getUrlRecord,sr as performReverseLookup,ar as performReverseLookupBatch,oe as reallocInstruction,Ls as registerDomainName,$s as registerFavorite,se as registerFavoriteInstruction,Gs as registerWithNft,sa as resolve,aa as resolveSolRecordV1,ua as resolveSolRecordV2,de as retrieveNftOwner,le as retrieveNfts,ge as retrieveRecords,Nn as reverseLookup,Dn as reverseLookupBatch,hs as serializeRecord,ms as serializeRecordV2Content,ds as serializeSolRecord,Qt as transferInstruction,_s as transferNameOwnership,qs as transferSubdomain,Kt as updateInstruction,Rs as updateNameRegistryData,Ns as updateRecordInstruction,Ds as updateRecordV2Instruction,Fs as updateSolRecordInstruction,zs as validateRecordV2Content,ys as verifyRightOfAssociation,la as verifyStaleness,Ms as writRoaRecordV2};
20
20
  //# sourceMappingURL=index.mjs.map