@ckb-ccc/core 1.22.0 → 1.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +71 -0
- package/dist/advanced.d.mts +1 -1
- package/dist/advanced.mjs +1 -1
- package/dist/{advancedBarrel-Daj_LJkz.d.mts → advancedBarrel-BBbQZ2OW.d.mts} +480 -379
- package/dist/advancedBarrel-BBbQZ2OW.d.mts.map +1 -0
- package/dist/advancedBarrel.d.mts +1 -1
- package/dist/advancedBarrel.mjs +1 -1
- package/dist/barrel-Dz1WLXRX.mjs +7 -0
- package/dist/barrel-Dz1WLXRX.mjs.map +1 -0
- package/dist/barrel.d.mts +2 -2
- package/dist/barrel.mjs +1 -1
- package/dist/index.d.mts +2 -2
- package/dist/index.mjs +1 -1
- package/dist/transformers-BHt442Nd.mjs +2 -0
- package/dist/transformers-BHt442Nd.mjs.map +1 -0
- package/dist.commonjs/advanced.d.ts +1 -1
- package/dist.commonjs/advanced.js +1 -1
- package/dist.commonjs/{advancedBarrel-CJL3rfuW.d.ts → advancedBarrel-BS4zFcFI.d.ts} +480 -379
- package/dist.commonjs/advancedBarrel-BS4zFcFI.d.ts.map +1 -0
- package/dist.commonjs/advancedBarrel.d.ts +1 -1
- package/dist.commonjs/advancedBarrel.js +1 -1
- package/dist.commonjs/{barrel-DZkApbAR.js → barrel-CZYID7jh.js} +10 -10
- package/dist.commonjs/barrel-CZYID7jh.js.map +1 -0
- package/dist.commonjs/barrel.d.ts +2 -2
- package/dist.commonjs/barrel.js +1 -1
- package/dist.commonjs/index.d.ts +2 -2
- package/dist.commonjs/index.js +1 -1
- package/dist.commonjs/transformers-CYUULrnt.js +2 -0
- package/dist.commonjs/transformers-CYUULrnt.js.map +1 -0
- package/package.json +1 -1
- package/src/address/index.ts +32 -4
- package/src/ckb/transaction.ts +79 -31
- package/src/client/cache/memory.advanced.ts +18 -3
- package/src/client/client.ts +41 -2
- package/src/client/clientPublicMainnet.ts +9 -2
- package/src/client/clientPublicTestnet.ts +9 -2
- package/src/client/jsonRpc/client.ts +8 -8
- package/src/codec/codec.ts +51 -27
- package/src/codec/entity.ts +26 -16
- package/src/fixedPoint/index.ts +17 -8
- package/src/jsonRpc/transports/webSocket.ts +3 -1
- package/src/molecule/codec.ts +437 -202
- package/src/utils/index.ts +3 -1
- package/dist/advancedBarrel-Daj_LJkz.d.mts.map +0 -1
- package/dist/barrel-CFOWSjcM.mjs +0 -7
- package/dist/barrel-CFOWSjcM.mjs.map +0 -1
- package/dist/transformers-DAMi6ZOq.mjs +0 -2
- package/dist/transformers-DAMi6ZOq.mjs.map +0 -1
- package/dist.commonjs/advancedBarrel-CJL3rfuW.d.ts.map +0 -1
- package/dist.commonjs/barrel-DZkApbAR.js.map +0 -1
- package/dist.commonjs/transformers-C6jbFO7W.js +0 -2
- package/dist.commonjs/transformers-C6jbFO7W.js.map +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{bech32 as e,bech32m as t}from"bech32";import{base64ToUint8Array as n,hexToUint8Array as r,stringToUint8Array as i,uint8ArrayToBase64 as a,uint8ArrayToHex as o,uint8ArrayToString as s}from"uint8array-extras";import{blake2b as c}from"@noble/hashes/blake2.js";import l from"isomorphic-ws";const u=Uint8Array;function d(e,...t){return t.reduce((t,n)=>{let r=p(n);for(let t of r)e.push(t);return t},e)}function f(...e){return new Uint8Array(d([],...e))}function ee(e,t){let n=p(e);switch(t){case`utf8`:return s(n);case`base64`:return a(n);case`base64url`:return a(n,{urlSafe:!0});case`hex`:return o(n)}}function p(e,t){if(e instanceof Uint8Array)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(typeof e==`string`){if(t!==void 0&&t!==`hex`)return te(e,t);let n=e.startsWith(`0x`)?e.slice(2):e,i=n.length%2==0?n:`0${n}`;return r(i)}if(Array.from(e).some(e=>e<0||255<e))throw Error(`Invalid bytes ${JSON.stringify(e)}`);return new Uint8Array(e)}function te(e,t){switch(t){case`utf8`:return i(e);case`base64`:case`base64url`:return n(e)}}function ne(e,t){if(e===t)return!0;let n=p(e),r=p(t);if(n.length!==r.length)return!1;for(let e=0;e<n.length;e++)if(n[e]!==r[e])return!1;return!0}var m=class e{constructor(e,t,n){this.encode=e,this.decode=t,this.byteLength=n}encodeOr(e,t){try{return this.encode(e)}catch{return t}}decodeOr(e,t,n){try{return this.decode(e,n)}catch{return t}}static from({encode:t,decode:n,byteLength:r}){return new e(e=>{let n=t(e);if(r!==void 0&&n.byteLength!==r)throw Error(`Codec.encode: expected byte length ${r}, got ${n.byteLength}`);return n},(e,t)=>{let i=p(e);if(r!==void 0&&i.byteLength!==r)throw Error(`Codec.decode: expected byte length ${r}, got ${i.byteLength}`);return n(e,t)},r)}map({inMap:t,outMap:n}){return new e(e=>this.encode(t?t(e):e),(e,t)=>n?n(this.decode(e,t)):this.decode(e,t),this.byteLength)}mapIn(e){return this.map({inMap:e})}mapOut(e){return this.map({outMap:e})}};function re(e){if(!(typeof e==`string`&&e.length%2==0&&e.startsWith(`0x`)))return!1;for(let t=2;t<e.length;t++){let n=e.charAt(t);if(!(`0`<=n&&n<=`9`||`a`<=n&&n<=`f`))return!1}return!0}function h(e){return re(e)?e:`0x${ee(p(e),`hex`)}`}function ie(e){return re(e)?ae(e):p(e).length}function ae(e){return Math.floor((e.length-1)/2)}const oe=p(`ckb-default-hash`,`utf8`),se=32,ce=20;var le=class{constructor(e=32,t=oe){this.hasher=c.create({personalization:t,dkLen:e})}update(e){return this.hasher.update(p(e)),this}digest(){return h(this.hasher.digest())}};function g(...e){let t=new le;return e.forEach(e=>t.update(e)),t.digest()}function ue(...e){return g(...e).slice(0,42)}var _=class{static Base(){class e extends _{static encode(e){throw Error(`encode not implemented, use @ccc.codec to decorate your type`)}static decode(e){throw Error(`decode not implemented, use @ccc.codec to decorate your type`)}static fromBytes(e){throw Error(`fromBytes not implemented, use @ccc.codec to decorate your type`)}static from(e){throw Error(`from not implemented`)}toBytes(){return this.constructor.encode(this)}clone(){return this.constructor.fromBytes(this.toBytes())}eq(e){return this===e||ne(this.toBytes(),(this.constructor?.from(e)??e).toBytes())}hash(){return g(this.toBytes())}toHex(){return h(this.toBytes())}}return e.encode=void 0,e.decode=void 0,e.fromBytes=void 0,e}static BaseUnion(){class e extends _.Base(){constructor(e){super(),this.inner=e}match(e){let t=e[this.inner.type];return t==null?e._(this.inner):t(this.inner.value)}}return e}};function v(e){return function(t,...n){return t.byteLength=e.byteLength,t.encode===void 0&&(t.encode=function(n){return e.encode(t.from(n))}),t.decode===void 0&&(t.decode=function(n){return t.from(e.decode(p(n)))}),t.fromBytes===void 0&&(t.fromBytes=function(n){return t.from(e.decode(p(n)))}),t}}function de(e,t=8){let n=y(e).toString();if(t===0)return n;let r=n.length<=t?`0`:n.slice(0,-t),i=n.slice(-t).padStart(t,`0`).replace(/0*$/,``);return i===``?r:`${r}.${i}`}function y(e,t=8){if(typeof e==`bigint`)return e;let[n,r]=(typeof e==`number`?e.toFixed(t):e.toString()).split(`.`),i=BigInt(n.padEnd(n.length+t,`0`));return r===void 0?i:i+BigInt(r.slice(0,t).padEnd(t,`0`))}const b=0n,fe=y(`1`);function pe(e,...t){let n=x(e);return t.forEach(e=>{let t=x(e);t<n&&(n=t)}),n}function me(e,...t){let n=x(e);return t.forEach(e=>{let t=x(e);t>n&&(n=t)}),n}function x(e){if(typeof e==`bigint`)return e;if(e===`0x`)return BigInt(0);if(typeof e==`string`||typeof e==`number`)return BigInt(e);let t=h(e);return BigInt(t)}function S(e){let t=x(e);if(t<0n)throw Error(`value must be non-negative`);return`0x${t.toString(16)}`}function he(e,t){return ge(e,t)}function ge(e,t){return _e(e,t).reverse()}function _e(e,t){let n=x(e);if(n<x(0)){if(t==null)throw Error(`negative number can not be serialized without knowing bytes length`);if(n=(x(1)<<x(8)*x(t))+n,n<0)throw Error(`negative number underflow`)}let r=p(n.toString(16));if(t==null)return r;if(r.length>t)throw Error(`number overflow`);return f(`00`.repeat(t-r.length),r)}function ve(e){return C(e)}function C(e){return ye(p(e).map(e=>e).reverse())}function ye(e){return x(p(e))}function w(e,t=!1){return m.from({byteLength:e,encode:n=>t?he(n,e):_e(n,e),decode:e=>t?ve(e):ye(e)})}function T(e,t=!1){if(e>4)throw Error(`uintNumber: byteLength must be less than or equal to 4`);return w(e,t).map({outMap:e=>Number(e)})}function be(e){return m.from({byteLength:e,encode:()=>new Uint8Array(e),decode:()=>{}})}const xe=m.from({encode:e=>p(e),decode:e=>p(e)}),Se=m.from({encode:e=>p(e),decode:e=>h(e)}),Ce=T(1,!0),we=T(2,!0),Te=T(2),Ee=we,De=T(4,!0),Oe=T(4),ke=De,Ae=w(8,!0),je=w(8),Me=Ae,Ne=w(16,!0),Pe=w(16),Fe=Ne,Ie=w(32,!0),Le=w(32),Re=Ie,ze=w(64,!0),Be=w(64),Ve=ze,He=m.from({byteLength:1,encode:e=>p(e?[1]:[0]),decode:e=>p(e)[0]!==0}),Ue=m.from({byteLength:1,encode:e=>p(e),decode:e=>h(e)}),We=m.from({byteLength:4,encode:e=>p(e),decode:e=>h(e)}),Ge=m.from({byteLength:8,encode:e=>p(e),decode:e=>h(e)}),Ke=m.from({byteLength:16,encode:e=>p(e),decode:e=>h(e)}),qe=m.from({byteLength:32,encode:e=>p(e),decode:e=>h(e)});function E(e){return he(e,4)}function D(e){return Number(ve(e))}function O(e){return e instanceof Error?e.message:String(e)}function Je(e){let t=e.byteLength;if(t===void 0)throw Error(`fixedItemVec: itemCodec requires a byte length`);return m.from({encode(t){try{let n=[];d(n,E(t.length));for(let r of t)d(n,e.encode(r));return p(n)}catch(e){throw Error(`fixedItemVec - ${O(e)}`,{cause:e})}},decode(n,r){let i=p(n);if(i.byteLength<4)throw Error(`fixedItemVec: too short buffer, expected at least 4 bytes, but got ${i.byteLength}`);let a=4+D(i.subarray(0,4))*t;if(i.byteLength!==a)throw Error(`fixedItemVec: invalid buffer size, expected ${a}, but got ${i.byteLength}`);try{let n=[];for(let o=4;o<a;o+=t)n.push(e.decode(i.subarray(o,o+t),r));return n}catch(e){throw Error(`fixedItemVec - ${O(e)}`,{cause:e})}}})}function Ye(e){return m.from({encode(t){try{let n=4+t.length*4,r=[],i=[];for(let a of t){let t=e.encode(a);d(r,E(n)),d(i,t),n+=t.byteLength}return f(E(r.length+i.length+4),r,i)}catch(e){throw Error(`dynItemVec - ${O(e)}`,{cause:e})}},decode(t,n){let r=p(t);if(r.byteLength<4)throw Error(`dynItemVec: too short buffer, expected at least 4 bytes, but got ${r.byteLength}`);let i=D(r.subarray(0,4));if(i!==r.byteLength)throw Error(`dynItemVec: invalid buffer size, expected ${i}, but got ${r.byteLength}`);if(i===4)return[];let a=(D(r.subarray(4,8))-4)/4,o=Array.from(Array(a),(e,t)=>D(r.subarray(4+t*4,8+t*4)));o.push(i);try{let t=[];for(let i=0;i<o.length-1;i++){let a=o[i],s=o[i+1],c=r.subarray(a,s);t.push(e.decode(c,n))}return t}catch(e){throw Error(`dynItemVec - ${O(e)}`,{cause:e})}}})}function k(e){return e.byteLength===void 0?Ye(e):Je(e)}function A(e){return m.from({encode(t){if(t==null)return p([]);try{return e.encode(t)}catch(e){throw Error(`option - ${O(e)}`,{cause:e})}},decode(t,n){if(p(t).byteLength!==0)try{return e.decode(t,n)}catch(e){throw Error(`option - ${O(e)}`,{cause:e})}}})}function Xe(e){return m.from({encode(t){try{let n=p(e.encode(t));return f(E(n.byteLength),n)}catch(e){throw Error(`byteVec - ${O(e)}`,{cause:e})}},decode(t,n){let r=p(t);if(r.byteLength<4)throw Error(`byteVec: too short buffer, expected at least 4 bytes, but got ${r.byteLength}`);let i=D(r.subarray(0,4));if(i!==r.byteLength-4)throw Error(`byteVec: invalid buffer size, expected ${i}, but got ${r.byteLength}`);try{return e.decode(r.subarray(4),n)}catch(e){throw Error(`byteVec - ${O(e)}`,{cause:e})}}})}function j(e){let t=Object.keys(e);return m.from({encode(n){let r=4+t.length*4,i=[],a=[];for(let o of t)try{let t=e[o].encode(n[o]);d(i,E(r)),d(a,t),r+=t.byteLength}catch(e){throw Error(`table.${o} - ${O(e)}`,{cause:e})}return f(E(i.length+a.length+4),i,a)},decode(n,r){let i=p(n);if(i.byteLength<4)throw Error(`table: too short buffer, expected at least 4 bytes, but got ${i.byteLength}`);let a=D(i.subarray(0,4)),o=(D(i.subarray(4,8))-4)/4;if(a!==i.byteLength)throw Error(`table: invalid buffer size, expected ${a}, but got ${i.byteLength}`);if(o<t.length)throw Error(`table: invalid field count, expected ${t.length}, but got ${o}`);if(o>t.length&&!r?.isExtraFieldIgnored)throw Error(`table: invalid field count, expected ${t.length}, but got ${o}, and extra fields are not allowed in the current configuration. If you want to ignore extra fields, set isExtraFieldIgnored to true.`);let s=t.map((e,t)=>D(i.subarray(4+t*4,8+t*4)));o>t.length?s.push(D(i.subarray(4+t.length*4,8+t.length*4))):s.push(a);let c={};for(let n=0;n<s.length-1;n++){let a=s[n],o=s[n+1],l=t[n],u=e[l],d=i.subarray(a,o);try{Object.assign(c,{[l]:u.decode(d,r)})}catch(e){throw Error(`table.${l} - ${O(e)}`,{cause:e})}}return c}})}function Ze(e,t){let n=Object.entries(e),r;if(n.length>0){let e=n[0][1].byteLength;e!==void 0&&n.every(([,{byteLength:t}])=>t===e)&&(r=e+4)}function i(e){return`type`in e&&`value`in e?e:e.inner}return m.from({byteLength:r,encode(r){let{type:a,value:o}=i(r),s=a.toString(),c=e[s];if(!c)throw Error(`union: invalid type, expected ${n.map(e=>e[0]).toString()}, but got ${s}`);let l=t?t[s]??-1:n.findIndex(e=>e[0]===s);if(l<0)throw Error(`union: invalid field id ${l} of ${s}`);let u=E(l);try{return f(u,c.encode(o))}catch(e){throw Error(`union.(${s}) - ${O(e)}`,{cause:e})}},decode(n,r){let i=p(n),a=D(i.subarray(0,4)),o=Object.keys(e),s=t?Object.entries(t).find(([,e])=>e===a)?.[0]:o[a];if(!s){if(!t)throw Error(`union: unknown union field index ${a}, only ${o.toString()} are allowed`);let e=Object.keys(t);throw Error(`union: unknown union field index ${a}, only ${e.toString()} and ${o.toString()} are allowed`)}return{type:s,value:e[s].decode(i.subarray(4),r)}}})}function M(e){let t=Object.values(e),n=Object.keys(e);return m.from({byteLength:t.reduce((e,t)=>{if(t.byteLength===void 0)throw Error(`struct: all fields must be fixed-size`);return e+t.byteLength},0),encode(t){let r=[];for(let i of n)try{d(r,e[i].encode(t[i]))}catch(e){throw Error(`struct.${i} - ${O(e)}`,{cause:e})}return p(r)},decode(t,n){let r=p(t),i={},a=0;return Object.entries(e).forEach(([e,t])=>{let o=r.subarray(a,a+t.byteLength);try{Object.assign(i,{[e]:t.decode(o,n)})}catch(t){throw Error(`struct.${e} - ${O(t)}`,{cause:t})}a+=t.byteLength}),i}})}function Qe(e,t){if(e.byteLength===void 0)throw Error(`array: itemCodec requires a byte length`);let n=e.byteLength*t;return m.from({byteLength:n,encode(t){try{let n=[];for(let r of t)d(n,e.encode(r));return p(n)}catch(e){throw Error(`array - ${O(e)}`,{cause:e})}},decode(t,r){let i=p(t);if(i.byteLength!=n)throw Error(`array: invalid buffer size, expected ${n}, but got ${i.byteLength}`);try{let t=[];for(let n=0;n<i.byteLength;n+=e.byteLength)t.push(e.decode(i.subarray(n,n+e.byteLength),r));return t}catch(e){throw Error(`array - ${O(e)}`,{cause:e})}}})}const $e=A(Ce),et=k(Ce),tt=A(Ee),nt=k(Ee),rt=A(ke),it=k(ke),at=A(Me),ot=k(Me),st=A(Fe),ct=k(Fe),lt=A(Re),ut=k(Re),dt=A(Ve),ft=k(Ve),pt=Xe(Se),mt=A(pt),ht=k(pt),gt=A(He),_t=k(He),vt=A(Ue),yt=k(Ue),bt=A(We),xt=k(We),St=A(Ge),Ct=k(Ge),wt=A(Ke),Tt=k(Ke),Et=A(qe),Dt=k(qe),Ot=Xe({encode:e=>p(e,`utf8`),decode:e=>ee(e,`utf8`)}),kt=k(Ot),At=A(Ot);function jt(e){if(typeof AbortSignal.any==`function`)return AbortSignal.any([...e]);let t=new AbortController,n=new Map,r=()=>{for(let[e,t]of n)e.removeEventListener(`abort`,t);n.clear()},i=e=>{r(),t.abort(e.reason)};for(let t of e){if(t.aborted){i(t);break}if(n.has(t))continue;let e=()=>i(t);n.set(t,e),t.addEventListener(`abort`,e,{once:!0})}return t.signal}function Mt(e){return new Promise((t,n)=>{e.throwIfAborted(),e.addEventListener(`abort`,()=>n(e.reason),{once:!0})})}var Nt=class{constructor(e,t){this.value=e,this.disposer=t}dispose(){return this.disposing??=Promise.resolve().then(()=>this.disposer(this.value)),this.disposing}};const Pt=Symbol.for(`@ckb-ccc/core.Owner`);var Ft=class{constructor(){this[Pt]=!0}get isValid(){return this.disposing===void 0}static is(e){return typeof e==`object`&&!!e&&e[Pt]===!0}get value(){if(this.disposing)throw Error(`Cannot access a moved or disposed Owner`);return this.value_}dispose(){return this.disposing??=Promise.resolve().then(()=>this.release(this.value_)),this.disposing}map(e){return new It(e(this.value),this.move())}move(){if(this.disposing)throw Error(`Owner has already been moved or disposed`);return this.disposing=Promise.resolve(),new Nt(this.value_,e=>this.release(e))}static moveFrom(e){return e.move()}},It=class extends Ft{constructor(e,t){super(),this.value_=e,this.source=t}release(){return this.source.dispose()}},Lt=class extends Ft{constructor(e,t){super(),this.value_=e,this.disposer=t}release(e){return this.disposer(e)}};function N(e,t){if(t!=null)return e(t)}async function Rt(e,t,n){if(n===void 0){if(e.length===0)throw TypeError(`Reduce of empty array with no initial value`);n=e[0],e=e.slice(1)}return e.reduce((e,n,r,i)=>e.then(e=>Promise.resolve(t(e,n,r,i)).then(t=>t??e)),Promise.resolve(n))}function zt(e,t){return new Promise((n,r)=>{t?.throwIfAborted();let i=()=>{clearTimeout(a),r(t?.reason)},a=setTimeout(()=>{t?.removeEventListener(`abort`,i),n()},Number(x(e)));t?.addEventListener(`abort`,i,{once:!0})})}function Bt(e){return{status:`resolved`,value:e}}function Vt(e){return{status:`rejected`,error:e}}function Ht(){return{status:`retry`}}async function Ut(e,t,n){let r=e[Symbol.iterator](),i=0;for(;;){n?.signal?.throwIfAborted();let e;try{if(e=await t({index:i,resolve:Bt,reject:Vt,next:Ht}),e.status===`retry`)throw Error(`Retry limit exhausted`)}catch(e){let t=r.next(),a=t.done?n?.repeat:t.value;if(a===void 0)throw e;await zt(a,n?.signal),i+=1;continue}if(e.status===`rejected`)throw e.error;return e.value}}async function Wt(e){if(e?.throwIfAborted(),typeof window>`u`||typeof document>`u`||typeof navigator>`u`)return;let t=()=>document.visibilityState===`visible`&&navigator.onLine;t()||await new Promise((n,r)=>{let i=!1;function a(){document.removeEventListener(`visibilitychange`,o),window.removeEventListener(`online`,o),e?.removeEventListener(`abort`,s)}function o(){!i&&t()&&(i=!0,a(),n())}function s(){i||(i=!0,a(),r(e?.reason))}document.addEventListener(`visibilitychange`,o),window.addEventListener(`online`,o),e?.addEventListener(`abort`,s,{once:!0}),e?.aborted?s():o()})}function Gt(e){return/webview|wv|ip((?!.*Safari)|(?=.*like Safari))/i.test(e)}function Kt(e){return JSON.stringify(e,(e,t)=>typeof t==`bigint`?S(t):t)}function qt(e,t){for(e=x(e),t=x(t),e=e<0n?-e:e,t=t<0n?-t:t;t!==b;)[e,t]=[t,e%t];return e}function P(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}var F;let I=F=class extends _.Base(){constructor(e,t,n){super(),this.integer=e,this.numerator=t,this.denominator=n}normalizeBase(){return this.denominator===0n?F.from([this.integer,b,x(1)]):this.denominator<0n?F.from([this.integer,-this.numerator,-this.denominator]):this}normalizeCanonical(){let{integer:e,numerator:t,denominator:n}=this.normalizeBase();if(t<0n){let r=(-t+n-1n)/n;e-=r,t+=n*r}let r=qt(t,n);return t/=r,n/=r,e+=t/n,t%=n,F.from([e,t,n])}get 0(){return this.integer}get 1(){return this.numerator}get 2(){return this.denominator}toNum(){if(this.integer<0n||this.numerator<0n||this.denominator<0n)throw Error(`Negative values in Epoch to Num conversion`);if(this.integer>=x(`0x1000000`)||this.numerator>=x(`0x10000`)||this.denominator>=x(`0x10000`))throw Error(`Integer must be < 2^24, numerator and denominator must be < 2^16`);return this.integer+(this.numerator<<x(24))+(this.denominator<<x(40))}toPackedHex(){return S(this.toNum())}static fromNum(e){let t=x(e);return new F(t&x(`0xffffff`),t>>x(24)&x(`0xffff`),t>>x(40)&x(`0xffff`))}static from(e){return e instanceof F?e:Array.isArray(e)?new F(x(e[0]),x(e[1]),x(e[2])):typeof e==`object`?new F(x(e.integer),x(e.numerator),x(e.denominator)):F.fromNum(e)}clone(){return F.from([this.integer,this.numerator,this.denominator])}static get Genesis(){return F.from([b,b,b])}static get OneNervosDaoCycle(){return F.from([x(180),b,x(1)])}compare(e){if(this===e)return 0;let t=this.normalizeBase(),n=F.from(e).normalizeBase(),r=(t.integer*t.denominator+t.numerator)*n.denominator,i=(n.integer*n.denominator+n.numerator)*t.denominator;return r>i?1:r<i?-1:0}lt(e){return this.compare(e)<0}le(e){return this.compare(e)<=0}eq(e){return this.compare(e)===0}ge(e){return this.compare(e)>=0}gt(e){return this.compare(e)>0}add(e){let t=this.normalizeBase(),n=F.from(e).normalizeBase(),r=t.integer+n.integer,i,a;return t.denominator===n.denominator?(i=t.numerator+n.numerator,a=t.denominator):(i=t.numerator*n.denominator+n.numerator*t.denominator,a=t.denominator*n.denominator),F.from([r,i,a]).normalizeCanonical()}sub(e){let{integer:t,numerator:n,denominator:r}=F.from(e);return this.add(F.from([-t,-n,r]))}toUnix(e,t=x(144e5)){let{integer:n,numerator:r,denominator:i}=this.sub(e.epoch);return e.timestamp+t*n+t*r/i}};I=F=P([v(M({padding:be(1),denominator:w(2),numerator:w(2),integer:w(3)}))],I);function Jt(e){return I.from(e)}function Yt(e){return I.fromNum(e)}function Xt(e){return I.from(e).toPackedHex()}const Zt=x(1e7),Qt=x(1e3);function L([e,t]){return[x(e),x(t)]}var $t=class e{constructor(e,t){this.cellDep=e,this.type=t}static from(t){return t instanceof e?t:new e(X.from(t.cellDep),N(V.from,t.type))}},en=class e{constructor(e,t,n){this.codeHash=e,this.hashType=t,this.cellDeps=n}static from(t){return t instanceof e?t:new e(h(t.codeHash),yn(t.hashType),t.cellDeps.map(e=>$t.from(e)))}},tn=class e{constructor(e,t,n,r,i,a,o){this.transaction=e,this.status=t,this.cycles=n,this.blockHash=r,this.blockNumber=i,this.txIndex=a,this.reason=o}static from(t){return t instanceof e?t:new e($.from(t.transaction),t.status,N(x,t.cycles),N(h,t.blockHash),N(x,t.blockNumber),N(x,t.txIndex),t.reason)}clone(){return new e(this.transaction.clone(),this.status,this.cycles,this.blockHash,this.blockNumber,this.txIndex,this.reason)}},nn=class e{constructor(e,t,n,r,i,a,o){this.script=e,this.scriptLenRange=t,this.outputData=n,this.outputDataSearchMode=r,this.outputDataLenRange=i,this.outputCapacityRange=a,this.blockRange=o}static from(t){return t instanceof e?t:new e(N(V.from,t.script),N(L,t.scriptLenRange),N(h,t.outputData),t.outputDataSearchMode??void 0,N(L,t.outputDataLenRange),N(L,t.outputCapacityRange),N(L,t.blockRange))}},rn=class e{constructor(e,t,n,r,i){this.script=e,this.scriptType=t,this.scriptSearchMode=n,this.filter=r,this.withData=i}static from(t){return t instanceof e?t:new e(V.from(t.script),t.scriptType,t.scriptSearchMode,N(nn.from,t.filter),t.withData??void 0)}},an=class e{constructor(e,t,n,r,i){this.script=e,this.scriptType=t,this.scriptSearchMode=n,this.filter=r,this.groupByTransaction=i}static from(t){return t instanceof e?t:new e(V.from(t.script),t.scriptType,t.scriptSearchMode,N(nn.from,t.filter),t.groupByTransaction??void 0)}},R=class e{constructor(e,t,n,r,i,a,o,s,c,l,u,d){this.compactTarget=e,this.dao=t,this.epoch=n,this.extraHash=r,this.hash=i,this.nonce=a,this.number=o,this.parentHash=s,this.proposalsHash=c,this.timestamp=l,this.transactionsRoot=u,this.version=d}static from(t){return t instanceof e?t:new e(x(t.compactTarget),{c:x(t.dao.c),ar:x(t.dao.ar),s:x(t.dao.s),u:x(t.dao.u)},I.from(t.epoch),h(t.extraHash),h(t.hash),x(t.nonce),x(t.number),h(t.parentHash),h(t.proposalsHash),x(t.timestamp),h(t.transactionsRoot),x(t.version))}},on=class e{constructor(e,t){this.header=e,this.proposals=t}static from(t){return t instanceof e?t:new e(R.from(t.header),t.proposals.map(h))}},sn=class e{constructor(e,t,n,r){this.header=e,this.proposals=t,this.transactions=n,this.uncles=r}static from(t){return t instanceof e?t:new e(R.from(t.header),t.proposals.map(h),t.transactions.map($.from),t.uncles.map(on.from))}},z=class extends Error{constructor(e){super(`Client request error ${e.message}`),this.code=e.code,this.data=e.data}},cn=class extends z{constructor(e,t){super(e),this.outPoint=G.from(t)}},ln=class extends z{constructor(e,t,n,r,i,a){super(e),this.source=t,this.errorCode=r,this.scriptHashType=i,this.sourceIndex=x(n),this.scriptCodeHash=h(a)}},un=class extends z{constructor(e,t){super(e),this.txHash=h(t)}},dn=class extends z{constructor(e,t,n){super(e),this.currentFee=x(t),this.leastFee=x(n)}},fn=class extends z{constructor(e){let t=x(e).toString();super({message:`Wait transaction timeout ${t}ms`,data:JSON.stringify({timeout:t})})}},pn=class extends z{constructor(e,t){let n=x(e).toString(),r=x(t).toString();super({message:`Max fee rate exceeded limit ${n}, actual ${r}. Developer might forgot to complete transaction fee before sending. See https://api.ckbccc.com/classes/_ckb_ccc_core.index.ccc.Transaction.html#completeFeeBy.`,data:JSON.stringify({limit:n,actual:r})})}};let mn=function(e){return e.NervosDao=`NervosDao`,e.Secp256k1Blake160=`Secp256k1Blake160`,e.Secp256k1Multisig=`Secp256k1Multisig`,e.Secp256k1MultisigV2Beta=`Secp256k1MultisigV2Beta`,e.Secp256k1MultisigV2=`Secp256k1MultisigV2`,e.AnyoneCanPay=`AnyoneCanPay`,e.TypeId=`TypeId`,e.SUdt=`SUdt`,e.XUdt=`XUdt`,e.JoyId=`JoyId`,e.COTA=`COTA`,e.PWLock=`PWLock`,e.OmniLock=`OmniLock`,e.NostrLock=`NostrLock`,e.UniqueType=`UniqueType`,e.DidCkb=`DidCkb`,e.AlwaysSuccess=`AlwaysSuccess`,e.InputTypeProxyLock=`InputTypeProxyLock`,e.OutputTypeProxyLock=`OutputTypeProxyLock`,e.LockProxyLock=`LockProxyLock`,e.SingleUseLock=`SingleUseLock`,e.TypeBurnLock=`TypeBurnLock`,e.EasyToDiscoverType=`EasyToDiscoverType`,e.TimeLock=`TimeLock`,e}({});const hn={type:1,data:0,data1:2,data2:4},gn={1:`type`,0:`data`,2:`data1`,4:`data2`},_n=Object.keys(hn);var B;const vn=m.from({byteLength:1,encode:bn,decode:xn});function yn(e){let t=(()=>{if(typeof e==`number`)return gn[e];if(typeof e==`bigint`)return gn[Number(e)];if(_n.includes(e))return e})();if(t===void 0)throw Error(`Invalid hash type ${e}`);return t}function bn(e){return p([hn[yn(e)]])}function xn(e){return gn[p(e)[0]]}let V=B=class extends _.Base(){constructor(e,t,n){super(),this.codeHash=e,this.hashType=t,this.args=n}get occupiedSize(){return 33+p(this.args).length}clone(){return B.from({codeHash:this.codeHash,hashType:this.hashType,args:this.args})}eq(e){return e=B.from(e),this.args===e.args&&this.codeHash===e.codeHash&&this.hashType===e.hashType}static from(e){return e instanceof B?e:new B(h(e.codeHash),yn(e.hashType),h(e.args))}static async fromKnownScript(e,t,n){let r=await e.getKnownScript(t);return B.from({codeHash:r.codeHash,hashType:r.hashType,args:h(n)})}};V=B=P([v(j({codeHash:qe,hashType:vn,args:pt}))],V);const Sn=A(V),Cn=k(V),wn={code:0,depGroup:1},Tn={0:`code`,1:`depGroup`},En=Object.keys(wn);var Dn=class extends Error{constructor(e,t){let n=x(e),r=t?.isForChange??!1;super(`Insufficient CKB, need ${de(n)} extra CKB${r?` for the change cell`:``}`),this.amount=n,this.isForChange=r}},On=class extends Error{constructor(e,t){let n=x(e),r=V.from(t);super(`Insufficient coin, need ${n} extra coin`),this.amount=n,this.type=r}},H,kn,U,An,jn,Mn,W;const Nn=2n**32n-2n;function Pn(e){try{let t=x(e);return t<0n||t>Nn?void 0:Number(t)}catch{return}}function Fn(e){let t=Pn(e);if(t===void 0)throw Error(`Index ${e} must be a valid array index between 0 and ${Nn}`);return t}const In=m.from({byteLength:1,encode:Rn,decode:zn});function Ln(e){let t=typeof e==`number`?Tn[e]:typeof e==`bigint`?Tn[Number(e)]:e;if(t===void 0)throw Error(`Invalid dep type ${e}`);return t}function Rn(e){return p([wn[Ln(e)]])}function zn(e){return Tn[p(e)[0]]}let G=H=class extends _.Base(){constructor(e,t){super(),this.txHash=e,this.index=t}static from(e){return e instanceof H?e:new H(h(e.txHash),x(e.index))}clone(){return H.from({txHash:this.txHash,index:this.index})}eq(e){return e=H.from(e),this.txHash===e.txHash&&this.index===e.index}};G=H=P([v(M({txHash:qe,index:ke}))],G);let K=kn=class extends _.Base(){constructor(e,t,n){super(),this.capacity=e,this.lock=t,this.type=n}get occupiedSize(){return 8+this.lock.occupiedSize+(this.type?.occupiedSize??0)}static from(e,t){let n=e instanceof kn?e:new kn(x(e.capacity??0),V.from(e.lock),N(V.from,e.type));return t!=null&&(n.capacity=me(n.capacity,y(n.occupiedSize+p(t).length))),n}clone(){return kn.from({capacity:this.capacity,lock:this.lock.clone(),type:this.type?.clone()})}};K=kn=P([v(j({capacity:Me,lock:V,type:Sn}))],K);const Bn=k(K);var q=class e{constructor(e,t,n){this.cellOutput=e,this.outputData=t,this.outPoint=n}static from(t){if(t instanceof e)return t.cellOutput=K.from(t.cellOutput,t.outputData),t;let n=h(t.outputData??`0x`);return new e(K.from(t.cellOutput,n),n,N(G.from,t.outPoint??t.previousOutput))}get occupiedSize(){return this.cellOutput.occupiedSize+p(this.outputData).byteLength}get capacityFree(){return this.cellOutput.capacity-y(this.occupiedSize)}async isNervosDao(e,t){let{type:n}=this.cellOutput,r=await e.getKnownScript(`NervosDao`);if(!n||n.codeHash!==r.codeHash||n.hashType!==r.hashType)return!1;let i=x(this.outputData)!==b;return!t||t===`deposited`&&!i||t===`withdrew`&&i}clone(){return e.from({cellOutput:this.cellOutput.clone(),outputData:this.outputData,outPoint:this.outPoint?.clone()})}},Vn=class e extends q{constructor(e,t,n){super(t,n,e),this.outPoint=e}static from(t){return t instanceof e?(t.cellOutput=K.from(t.cellOutput,t.outputData),t):new e(G.from(t.outPoint??t.previousOutput),K.from(t.cellOutput,t.outputData),h(t.outputData??`0x`))}async getDaoProfit(e){if(!await this.isNervosDao(e,`withdrew`))return b;let{depositHeader:t,withdrawHeader:n}=await this.getNervosDaoInfo(e);if(!n||!t)throw Error(`Unable to get headers of a Nervos DAO cell ${this.outPoint.txHash}:${this.outPoint.index.toString()}`);return Kn(this.capacityFree,t,n)}async getNervosDaoInfo(e){if(!await this.isNervosDao(e))return{};if(x(this.outputData)===0n){let t=await e.getCellWithHeader(this.outPoint);if(!t?.header)throw Error(`Unable to get header of a Nervos DAO deposited cell ${this.outPoint.txHash}:${this.outPoint.index.toString()}`);return{depositHeader:t.header}}let[t,n]=await Promise.all([e.getHeaderByNumber(ve(this.outputData)),e.getCellWithHeader(this.outPoint)]);if(!n?.header||!t)throw Error(`Unable to get headers of a Nervos DAO withdrew cell ${this.outPoint.txHash}:${this.outPoint.index.toString()}`);return{depositHeader:t,withdrawHeader:n.header}}clone(){return e.from({outPoint:this.outPoint.clone(),cellOutput:this.cellOutput.clone(),outputData:this.outputData})}};let J=U=class extends _.Base(){constructor(e,t,n){super(),this.relative=e,this.metric=t,this.value=n}clone(){return U.from({relative:this.relative,metric:this.metric,value:this.value})}static from(e){return e instanceof U?e:typeof e==`object`&&`relative`in e?new U(e.relative,e.metric,x(e.value)):U.fromNum(e)}toNum(){return this.value|(this.relative===`absolute`?b:x(`0x8000000000000000`))|{blockNumber:x(`0x0000000000000000`),epoch:x(`0x2000000000000000`),timestamp:x(`0x4000000000000000`)}[this.metric]}static fromNum(e){let t=x(e),n=t>>x(63)===0n?`absolute`:`relative`,r=[`blockNumber`,`epoch`,`timestamp`][Number(t>>x(61)&x(3))],i=t&x(`0x00ffffffffffffff`);return new U(n,r,i)}};J=U=P([v(Me.mapIn(e=>J.from(e).toNum()))],J);let Y=An=class extends _.Base(){constructor(e,t,n,r){super(),this.previousOutput=e,this.since=t,this.cellOutput=n,this.outputData=r}static from(e){return e instanceof An?e:new An(G.from(`previousOutput`in e?e.previousOutput:e.outPoint),J.from(e.since??0).toNum(),N(K.from,e.cellOutput),N(h,e.outputData))}async getCell(e){if(await this.completeExtraInfos(e),!this.cellOutput||!this.outputData)throw Error(`Unable to complete input`);return Vn.from({outPoint:this.previousOutput,cellOutput:this.cellOutput,outputData:this.outputData})}async completeExtraInfos(e){if(this.cellOutput&&this.outputData)return;let t=await e.getCell(this.previousOutput);t&&(this.cellOutput=t.cellOutput,this.outputData=t.outputData)}async getExtraCapacity(e){return(await this.getCell(e)).getDaoProfit(e)}clone(){return An.from({previousOutput:this.previousOutput.clone(),since:this.since,cellOutput:this.cellOutput?.clone(),outputData:this.outputData})}};Y=An=P([v(M({since:J,previousOutput:G}).mapIn(e=>Y.from(e)))],Y);const Hn=k(Y);let X=jn=class extends _.Base(){constructor(e,t){super(),this.outPoint=e,this.depType=t}static from(e){return e instanceof jn?e:new jn(G.from(e.outPoint),Ln(e.depType))}clone(){return jn.from({outPoint:this.outPoint.clone(),depType:this.depType})}};X=jn=P([v(M({outPoint:G,depType:In}))],X);const Un=k(X);let Z=Mn=class extends _.Base(){constructor(e,t,n){super(),this.lock=e,this.inputType=t,this.outputType=n}static from(e){return e instanceof Mn?e:new Mn(N(h,e.lock),N(h,e.inputType),N(h,e.outputType))}};Z=Mn=P([v(j({lock:mt,inputType:mt,outputType:mt}))],Z);function Q(e){let t=p(e).subarray(0,16);return t.length===0?b:ve(t)}const Wn=j({version:ke,cellDeps:Un,headerDeps:Dt,inputs:Hn,outputs:Bn,outputsData:ht});let $=W=class extends _.Base(){constructor(e,t,n,r,i,a,o){super(),this.version=e,this.cellDeps=t,this.headerDeps=n,this.inputs=r,this.outputs=i,this.outputsData=a,this.witnesses=o}static default(){return W.from({})}copy(e){if(e===this)return;let t=W.from(e);this.version=t.version,this.cellDeps=t.cellDeps,this.headerDeps=t.headerDeps,this.inputs=t.inputs,this.outputs=t.outputs,this.outputsData=t.outputsData,this.witnesses=t.witnesses}clone(){return W.from({version:this.version,cellDeps:this.cellDeps.map(e=>e.clone()),headerDeps:this.headerDeps.map(e=>e),inputs:this.inputs.map(e=>e.clone()),outputs:this.outputs.map(e=>e.clone()),outputsData:this.outputsData.map(e=>e),witnesses:this.witnesses.map(e=>e)})}static from(e){if(e instanceof W)return e.outputs.forEach((t,n)=>{e.outputs[n]=K.from(t,e.outputsData[n]??`0x`)}),e;let t=e.outputs?.map((t,n)=>K.from(t,e.outputsData?.[n]??[]))??[],n=t.map((t,n)=>h(e.outputsData?.[n]??`0x`));return e.outputsData!=null&&n.length<e.outputsData.length&&n.push(...e.outputsData.slice(n.length).map(e=>h(e))),new W(x(e.version??0),e.cellDeps?.map(e=>X.from(e))??[],e.headerDeps?.map(h)??[],e.inputs?.map(e=>Y.from(e))??[],t,n,e.witnesses?.map(h)??[])}static fromLumosSkeleton(e){return W.from({version:0n,cellDeps:e.cellDeps.toArray(),headerDeps:e.headerDeps.toArray(),inputs:e.inputs.toArray().map((t,n)=>{if(!t.outPoint)throw Error(`outPoint is required in input`);return Y.from({previousOutput:t.outPoint,since:e.inputSinces.get(n,`0x0`),cellOutput:t.cellOutput,outputData:t.data})}),outputs:e.outputs.toArray().map(e=>e.cellOutput),outputsData:e.outputs.toArray().map(e=>e.data),witnesses:e.witnesses.toArray()})}stringify(){return JSON.stringify(this,(e,t)=>typeof t==`bigint`?S(t):t)}rawToBytes(){return Wn.encode(this)}hash(){return g(this.rawToBytes())}hashFull(){return g(this.toBytes())}static hashWitnessToHasher(e,t){let n=p(h(e));t.update(he(n.length,8)),t.update(n)}async getSignHashInfo(e,t,n=new le){let r=V.from(e),i=-1;n.update(this.hash());for(let e=0;e<this.witnesses.length;e+=1){let a=this.inputs[e];if(a){let{cellOutput:n}=await a.getCell(t);if(!r.eq(n.lock))continue;i===-1&&(i=e)}if(i===-1)return;W.hashWitnessToHasher(this.witnesses[e],n)}if(i!==-1)return{message:n.digest(),position:i}}async findInputIndexByLockId(e,t){let n=V.from({...e,args:`0x`});for(let e=0;e<this.inputs.length;e+=1){let{cellOutput:r}=await this.inputs[e].getCell(t);if(n.codeHash===r.lock.codeHash&&n.hashType===r.lock.hashType)return e}}async findInputIndexByLock(e,t){let n=V.from(e);for(let e=0;e<this.inputs.length;e+=1){let{cellOutput:r}=await this.inputs[e].getCell(t);if(n.eq(r.lock))return e}}async findLastInputIndexByLock(e,t){let n=V.from(e);for(let e=this.inputs.length-1;e>=0;--e){let{cellOutput:r}=await this.inputs[e].getCell(t);if(n.eq(r.lock))return e}}addCellDeps(...e){e.flat().forEach(e=>{let t=X.from(e);this.cellDeps.some(e=>e.eq(t))||this.cellDeps.push(t)})}addCellDepsAtStart(...e){e.flat().forEach(e=>{let t=X.from(e);this.cellDeps.some(e=>e.eq(t))||this.cellDeps.unshift(t)})}async addCellDepInfos(e,...t){this.addCellDeps(await e.getCellDeps(...t))}async addCellDepsOfKnownScripts(e,...t){await Promise.all(t.flat().map(async t=>this.addCellDepInfos(e,(await e.getKnownScript(t)).cellDeps)))}setOutputDataAt(e,t){this.setOutputData(e,t)}setOutputData(e,t){let n=Fn(e);if(n>=this.outputs.length)throw Error(`Index ${e} is out of bounds for outputs of length ${this.outputs.length}`);this.outputsData.length<n&&this.outputsData.push(...Array.from(Array(n-this.outputsData.length),()=>`0x`));let r=h(t);this.outputs[n]=K.from(this.outputs[n],r),this.outputsData[n]=r}getOutputData(e){let t=Pn(e);return t!==void 0&&t<this.outputs.length?this.outputsData[t]??`0x`:void 0}getInput(e){let t=Pn(e);return t===void 0?void 0:this.inputs[t]}addInput(e){return this.witnesses.length>this.inputs.length&&this.witnesses.splice(this.inputs.length,0,`0x`),this.inputs.push(Y.from(e))}getOutput(e){let t=Pn(e);if(!(t===void 0||t>=this.outputs.length))return q.from({cellOutput:this.outputs[t],outputData:this.outputsData[t]??`0x`})}get outputCells(){let{outputs:e,outputsData:t}=this;function*n(){for(let n=0;n<e.length;n++)yield q.from({cellOutput:e[n],outputData:t[n]??`0x`})}return n()}addOutput(e,t){let n=`cellOutput`in e?q.from(e):q.from({cellOutput:e,outputData:t}),r=this.outputs.push(n.cellOutput);return this.setOutputData(r-1,n.outputData),r}setOutput(e,t,n){let r=Fn(e);if(r>this.outputs.length)throw Error(`Index ${e} is out of bounds for outputs of length ${this.outputs.length}`);let i=`cellOutput`in t?q.from(t):q.from({cellOutput:t,outputData:n});r===this.outputs.length?this.addOutput(i):(this.outputs[r]=i.cellOutput,this.setOutputData(r,i.outputData))}setInput(e,t){let n=Fn(e);if(n>this.inputs.length)throw Error(`Index ${e} is out of bounds for inputs of length ${this.inputs.length}`);n===this.inputs.length?this.addInput(t):this.inputs[n]=Y.from(t)}getWitness(e){let t=Pn(e);return t===void 0?void 0:this.witnesses[t]}getWitnessArgs(e){try{return this.getWitnessArgsUnsafe(e)}catch{return}}getWitnessArgsUnsafe(e){let t=this.getWitness(e);return t&&t!==`0x`?Z.fromBytes(t):void 0}setWitnessArgs(e,t){this.setWitness(e,Z.from(t).toBytes())}setWitness(e,t){let n=Fn(e);this.witnesses.length<n&&this.witnesses.push(...Array.from(Array(n-this.witnesses.length),()=>`0x`)),this.witnesses[n]=h(t)}getWitnessArgsAt(e){return this.getWitnessArgs(e)}getWitnessArgsAtUnsafe(e){return this.getWitnessArgsUnsafe(e)}setWitnessArgsAt(e,t){this.setWitnessArgs(e,t)}setWitnessAt(e,t){this.setWitness(e,t)}async prepareSighashAllWitness(e,t,n){let r=await this.findInputIndexByLock(e,n);if(r===void 0)return;let i=this.getWitnessArgs(r)??Z.from({});i.lock=h(Array.from(Array(t),()=>0)),this.setWitnessArgs(r,i)}async getInputsCapacityExtra(e){return Rt(this.inputs,async(t,n)=>t+await n.getExtraCapacity(e),b)}async getInputsCapacity(e){return await Rt(this.inputs,async(t,n)=>{let{cellOutput:{capacity:r}}=await n.getCell(e);return t+r},b)+await this.getInputsCapacityExtra(e)}getOutputsCapacity(){return this.outputs.reduce((e,{capacity:t})=>e+t,b)}async getInputsUdtBalance(e,t){return Rt(this.inputs,async(n,r)=>{let{cellOutput:i,outputData:a}=await r.getCell(e);if(i.type?.eq(t))return n+Q(a)},b)}getOutputsUdtBalance(e){return this.outputs.reduce((t,n,r)=>n.type?.eq(e)?t+Q(this.outputsData[r]):t,b)}async completeInputs(e,t,n,r){let i=[],a=r,o=!1;for await(let r of e.findCells(t,!0)){if(this.inputs.some(({previousOutput:e})=>e.eq(r.outPoint)))continue;let e=i.push(r),t=await Promise.resolve(n(a,r,e-1,i));if(t===void 0){o=!0;break}a=t}return i.forEach(e=>this.addInput(e)),o?{addedCount:i.length}:{addedCount:i.length,accumulated:a}}async completeInputsByCapacity(e,t,n){let r=this.getOutputsCapacity()+x(t??0),i=await this.getInputsCapacity(e.client);if(i>=r)return 0;let{addedCount:a,accumulated:o}=await this.completeInputs(e,n??{scriptLenRange:[0,1],outputDataLenRange:[0,1]},(e,{cellOutput:{capacity:t}})=>{let n=e+t;return n>=r?void 0:n},i);if(o===void 0)return a;throw new Dn(r-o)}async completeInputsAll(e,t){let{addedCount:n}=await this.completeInputs(e,t??{scriptLenRange:[0,1],outputDataLenRange:[0,1]},(e,{cellOutput:{capacity:t}})=>e+t,b);return n}async completeInputsByUdt(e,t,n){let r=V.from(t).occupiedSize,i=this.getOutputsUdtBalance(t)+x(n??0);if(i===0n)return 0;let[a,o]=await Rt(this.inputs,async([n,r],i)=>{let{cellOutput:a,outputData:o}=await i.getCell(e.client);if(a.type?.eq(t))return[n+Q(o),r+1]},[b,0]);if(a===i||a>=i&&o>=2)return 0;let{addedCount:s,accumulated:c}=await this.completeInputs(e,{script:t,scriptLenRange:[r,r+1],outputDataLenRange:[16,x(`0xffffffff`)]},(e,{outputData:t},n,r)=>{let a=e+Q(t);return a===i||a>=i&&o+r.length>=2?void 0:a},a);if(c===void 0||c>=i)return s;throw new On(i-c,t)}async completeInputsAddOne(e,t){let{addedCount:n,accumulated:r}=await this.completeInputs(e,t??{scriptLenRange:[0,1],outputDataLenRange:[0,1]},()=>void 0,!0);if(r===void 0)return n;throw Error(`Insufficient CKB, need at least one new cell`)}async completeInputsAtLeastOne(e,t){return this.inputs.length>0?0:this.completeInputsAddOne(e,t)}async getFee(e){return await this.getInputsCapacity(e)-this.getOutputsCapacity()}async getFeeRate(e){return await this.getFee(e)*x(1e3)/x(this.toBytes().length+4)}estimateFee(e){return(x(this.toBytes().length+4)*x(e)+x(999))/x(1e3)}async completeFee(e,t,n,r,i){let a=n??await e.client.getFeeRate(i?.feeRateBlockRange,i);await this.getInputsCapacity(e.client);let o=b,s=b,c=0,l=this;for(;;){c+=await(async()=>{if(!(i?.shouldAddInputs??!0))return 0;try{return await l.completeInputsByCapacity(e,o+s,r)}catch(e){throw e instanceof Dn&&s!==0n?new Dn(e.amount,{isForChange:!0}):e}})(),l=await e.prepareTransaction(l);let n=await l.getFee(e.client);if(n<o+s)throw new Dn(o+s-n,{isForChange:s!==b});if(o===0n&&(o=l.estimateFee(a)),n===o)return this.copy(l),[c,!1];let u=l.clone(),d=x(await Promise.resolve(t(u,n-o)));if(d>0n){s=d;continue}if(await u.getFee(e.client)!==o)throw Error(`The change function doesn't use all available capacity`);u=await e.prepareTransaction(u);let f=u.estimateFee(a);if(o>f)throw Error(`The change function removed existed transaction data`);if(o===f)return this.copy(u),[c,!0];o=f}}completeFeeChangeToLock(e,t,n,r,i){let a=V.from(t);return this.completeFee(e,(e,t)=>{let n=K.from({capacity:0,lock:a}),r=y(n.occupiedSize);return t<r?r:(n.capacity=t,e.addOutput(n),0)},n,r,i)}async completeFeeBy(e,t,n,r){let{script:i}=await e.getRecommendedAddressObj();return this.completeFeeChangeToLock(e,i,t,n,r)}completeFeeChangeToOutput(e,t,n,r,i){let a=Number(x(t));if(!this.outputs[a])throw Error(`Non-existed output to change`);return this.completeFee(e,(e,t)=>(e.outputs[a].capacity+=t,0),n,r,i)}};$=W=P([v(j({raw:Wn,witnesses:ht}).mapIn(e=>{let t=$.from(e);return{raw:t,witnesses:t.witnesses}}).mapOut(e=>$.from({...e.raw,witnesses:e.witnesses})))],$);async function Gn(e,t){if(e.outputs.length<=64)return!1;let{codeHash:n,hashType:r}=await t.getKnownScript(`NervosDao`),i=V.from({codeHash:n,hashType:r,args:`0x`});if(e.outputs.some(e=>e.type?.eq(i)))return!0;for(let n of e.inputs)if(await n.completeExtraInfos(t),n.cellOutput?.type?.eq(i))return!0;return!1}function Kn(e,t,n){let r=R.from(t),i=R.from(n),a=x(e);return a*i.dao.ar/r.dao.ar-a}function qn(e,t){let n=R.from(e).epoch.normalizeBase(),r=R.from(t).epoch.normalizeBase(),i=x(180),a=(r.integer-n.integer)%i,o=r.integer;return(a!==0n||n.numerator*r.denominator<r.numerator*n.denominator)&&(o+=-a+i),I.from([o,n.numerator,n.denominator])}const Jn=x(5e5);function Yn(e,t,n){if(!t)return!0;let r=h(e),i=h(t);return!(n===`exact`&&r!==i||n===`prefix`&&!r.startsWith(i)||n===`partial`&&r.search(i)===-1)}function Xn(e,t,n){if(!t)return!0;if(!e)return!1;let r=V.from(e),i=V.from(t);return r.codeHash!==i.codeHash||r.hashType!==i.hashType?!1:Yn(r.args,i?.args,n)}function Zn(e,t){if(!t)return!0;let n=x(e),[r,i]=L(t);return r<=n&&n<i}function Qn(e,t){return!t||Zn(e?p(V.from(e).args).length+33:0,t)}function $n(e,t){let n=rn.from(e),r=Vn.from(t);return!(n.scriptType===`lock`&&(!Xn(r.cellOutput.lock,n.script,n.scriptSearchMode)||!Xn(r.cellOutput.type,n.filter?.script,`prefix`)||!Qn(r.cellOutput.type,n.filter?.scriptLenRange))||n.scriptType===`type`&&(!Xn(r.cellOutput.type,n.script,n.scriptSearchMode)||!Xn(r.cellOutput.lock,n.filter?.script,`prefix`)||!Qn(r.cellOutput.lock,n.filter?.scriptLenRange))||!Yn(r.outputData,n.filter?.outputData,n.filter?.outputDataSearchMode??`prefix`)||!Zn(p(r.outputData).length,n.filter?.outputDataLenRange)||!Zn(r.cellOutput.capacity,n.filter?.outputCapacityRange))}var er=class extends Map{constructor(e){if(super(),this.capacity=e,this.lru=new Set,!Number.isInteger(e)||e<1)throw Error(`Capacity must be a positive integer`)}get(e){if(super.has(e))return this.lru.delete(e),this.lru.add(e),super.get(e)}set(e,t){if(super.set(e,t),this.lru.delete(e),this.lru.add(e),this.lru.size>this.capacity){let e=this.lru.keys().next().value;this.delete(e)}return this}delete(e){return super.delete(e)?(this.lru.delete(e),!0):!1}clear(){super.clear(),this.lru.clear()}};const tr=Object.freeze({NervosDao:{codeHash:`0x82d76d1b75fe2fd9a27dfbaa65a039221a380d76c926f378d3f81cf3e7e13f2e`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xe2fb199810d49a4d8beec56718ba2593b665db9d52299a0f9e6e75416d73ff5c`,index:2},depType:`code`}}]},Secp256k1Blake160:{codeHash:`0x9bd7e06f3ecf4be0f2fcd2188b23f1b9fcc88e5d4b65a8637b17723bbda3cce8`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x71a7ba8fc96349fea0ed3a5c47992e3b4084b031a42264a018e0072e8172e46c`,index:0},depType:`depGroup`}}]},Secp256k1Multisig:{codeHash:`0x5c5069eb0857efc65e1bca0c07df34c31663b3622fd3876c876320fc9634e2a8`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x71a7ba8fc96349fea0ed3a5c47992e3b4084b031a42264a018e0072e8172e46c`,index:1},depType:`depGroup`}}]},Secp256k1MultisigV2Beta:{codeHash:`0xd1a9f877aed3f5e07cb9c52b61ab96d06f250ae6883cc7f0a2423db0976fc821`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x44be4f4feda80c0e41783ab10e191df3b2bb5c3731b0970c916dbec385dcdc60`,index:0},depType:`depGroup`}}]},Secp256k1MultisigV2:{codeHash:`0x36c971b8d41fbd94aabca77dc75e826729ac98447b46f91e00796155dddb0d29`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x6888aa39ab30c570c2c30d9d5684d3769bf77265a7973211a3c087fe8efbf738`,index:0},depType:`depGroup`}}]},AnyoneCanPay:{codeHash:`0xd369597ff47f29fbc0d47d2e3775370d1250b85140c670e4718af712983a2354`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x4153a2014952d7cac45f285ce9a7c5c0c0e1b21f2d378b82ac1433cb11c25c4d`,index:0},depType:`depGroup`}}]},TypeId:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,cellDeps:[]},SUdt:{codeHash:`0x5e7a36a77e68eecc013dfa2fe6a23f3b6c344b04005808694ae6dd45eea4cfd5`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xc7813f6a415144643970c2e88e0bb6ca6a8edc5dd7c1022746f628284a9936d5`,index:0},depType:`code`}}]},XUdt:{codeHash:`0x50bd8d6680b8b9cf98b73f3c08faf8b2a21914311954118ad6609be6e78a1b95`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0xc07844ce21b38e4b071dd0e1ee3b0e27afd8d7532491327f39b786343f558ab7`,index:0},depType:`code`}}]},JoyId:{codeHash:`0xd00c84f0ec8fd441c38bc3f87a371f547190f2fcff88e642bc5bf54b9e318323`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x8a605a4402cadda69fa64fd25cbbd74058e3eb86a7a72aee3d25df278564d31b`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x2d1f2d4d1514ccc3bb4f04f5437a5ae30d00636ee57cedd2c70ab3ea75b62adc`}},{cellDep:{outPoint:{txHash:`0x8a605a4402cadda69fa64fd25cbbd74058e3eb86a7a72aee3d25df278564d31b`,index:1},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0xc086090432098835ec542a1b94bdd1b842c5aa1ccd1616873fe77f4a04044417`}},{cellDep:{outPoint:{txHash:`0x8a605a4402cadda69fa64fd25cbbd74058e3eb86a7a72aee3d25df278564d31b`,index:2},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x165b225c6fbed7e655b024384d9083de3243375f9893706f4452858ecd694e96`}},{cellDep:{outPoint:{txHash:`0x8a605a4402cadda69fa64fd25cbbd74058e3eb86a7a72aee3d25df278564d31b`,index:3},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0xafb8408d0094ab944e6286aac750b9bb854ac0bcb66dfe5c60559744a700e70c`}},{cellDep:{outPoint:{txHash:`0x8a605a4402cadda69fa64fd25cbbd74058e3eb86a7a72aee3d25df278564d31b`,index:4},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x773bf0647be24b4e18ef44068fd069b9de5549c4b86be227779ceb9179598ec4`}}]},COTA:{codeHash:`0x1122a4fb54697cf2e6e3a96c9d80fd398a936559b90954c6e88eb7ba0cf652df`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xabaa25237554f0d6c586dc010e7e85e6870bcfd9fb8773257ecacfbe1fd738a0`,index:0},depType:`depGroup`}}]},PWLock:{codeHash:`0xbf43c3602455798c1a61a596e0d95278864c552fafe231c063b3fabf97a8febc`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x71a7ba8fc96349fea0ed3a5c47992e3b4084b031a42264a018e0072e8172e46c`,index:0},depType:`depGroup`}},{cellDep:{outPoint:{txHash:`0x1d60cb8f4666e039f418ea94730b1a8c5aa0bf2f7781474406387462924d15d4`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x42ade2f25eb938b5dbfd3d8f07b8b07aa593d848e7ff14bdfbbea5aeb6175261`}}]},OmniLock:{codeHash:`0x9b819793a64463aed77c615d6cb226eea5487ccfc0783043a587254cda2b6f26`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x71a7ba8fc96349fea0ed3a5c47992e3b4084b031a42264a018e0072e8172e46c`,index:0},depType:`depGroup`}},{cellDep:{outPoint:{txHash:`0xc76edf469816aa22f416503c38d0b533d2a018e253e379f134c3985b3472c842`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x855508fe0f0ca25b935b070452ecaee48f6c9f1d66cd15f046616b99e948236a`}}]},NostrLock:{codeHash:`0x641a89ad2f77721b803cd50d01351c1f308444072d5fa20088567196c0574c68`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x99b116dd1e4f1fa903b70112ae672c18bb34241d3d03a9ad555cd2a611be7327`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0xfad8cb75eb0bb01718e2336002064568bc05887af107f74ed5dd501829e192f8`}}]},UniqueType:{codeHash:`0x2c8c11c985da60b0a330c61a85507416d6382c130ba67f0c47ab071e00aec628`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x67524c01c0cb5492e499c7c7e406f2f9d823e162d6b0cf432eacde0c9808c2ad`,index:0},depType:`code`}}]},DidCkb:{codeHash:`0x4a06164dc34dccade5afe3e847a97b6db743e79f5477fa3295acf02849c5984a`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xe2f74c56cdc610d2b9fe898a96a80118845f5278605d7f9ad535dad69ae015bf`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,args:`0x55573ef6d78e3ca75170ff476176732309a8b31efe94320a954ded3d75c2cb18`,hashType:`type`}}]},AlwaysSuccess:{codeHash:`0x3b521cc4b552f109d092d8cc468a8048acb53c5952dbe769d2b2f9cf6e47f7f1`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x10d63a996157d32c01078058000052674ca58d15f921bec7f1dcdac2160eb66b`,index:0},depType:`code`}}]},InputTypeProxyLock:{codeHash:`0x5123908965c711b0ffd8aec642f1ede329649bda1ebdca6bd24124d3796f768a`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x10d63a996157d32c01078058000052674ca58d15f921bec7f1dcdac2160eb66b`,index:1},depType:`code`}}]},OutputTypeProxyLock:{codeHash:`0x2df53b592db3ae3685b7787adcfef0332a611edb83ca3feca435809964c3aff2`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x10d63a996157d32c01078058000052674ca58d15f921bec7f1dcdac2160eb66b`,index:2},depType:`code`}}]},LockProxyLock:{codeHash:`0x5d41e32e224c15f152b7e6529100ebeac83b162f5f692a5365774dad2c1a1d02`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x10d63a996157d32c01078058000052674ca58d15f921bec7f1dcdac2160eb66b`,index:3},depType:`code`}}]},SingleUseLock:{codeHash:`0x8290467a512e5b9a6b816469b0edabba1f4ac474e28ffdd604c2a7c76446bbaf`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x10d63a996157d32c01078058000052674ca58d15f921bec7f1dcdac2160eb66b`,index:4},depType:`code`}}]},TypeBurnLock:{codeHash:`0xff78bae0abf17d7a404c0be0f9ad9c9185b3f88dcc60403453d5ba8e1f22f53a`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x10d63a996157d32c01078058000052674ca58d15f921bec7f1dcdac2160eb66b`,index:5},depType:`code`}}]},EasyToDiscoverType:{codeHash:`0xaba4430cc7110d699007095430a1faa72973edf2322ddbfd4d1d219cacf237af`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0xb0ed754fb27d67fd8388c97fed914fb7998eceaa01f3e6f967e498de1ba0ac9b`,index:0},depType:`code`}}]},TimeLock:{codeHash:`0x6fac4b2e89360a1e692efcddcb3a28656d8446549fb83da6d896db8b714f4451`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0xb0ed754fb27d67fd8388c97fed914fb7998eceaa01f3e6f967e498de1ba0ac9b`,index:1},depType:`code`}}]}});var nr=class{constructor(e,t=3e4){this.url=e,this.timeout=t}async request(e,t){let n=AbortSignal.timeout(t?.timeout??this.timeout),r=t?.signal?jt([t.signal,n]):n;return await(await fetch(this.url,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e),signal:r})).json()}},rr=class e{constructor(e,t=3e4){this.url=e,this.timeout=t,this.ongoing=new Map,this.disposed=!1}static open(t,n=3e4){return new Lt(new e(t,n),e=>e.dispose())}request(e,t){if(this.disposed)return Promise.reject(Error(`Cannot use a disposed JsonRpcTransportWebSocket`));if(t?.signal?.aborted)return Promise.reject(t.signal.reason??Error(`Request aborted`));let[n,r]=(()=>{if(this.socket&&this.socket.readyState!==this.socket.CLOSING&&this.socket.readyState!==this.socket.CLOSED&&this.openSocket)return[this.socket,this.openSocket];let e=new l(this.url),t=({data:t})=>{let n;try{n=JSON.parse(t)}catch{return}if(typeof n!=`object`||!n||typeof n.id!=`number`&&typeof n.id!=`string`)return;let r=n.id;this.firstTimeout?.socket===e&&(this.firstTimeout=void 0);let i=this.ongoing.get(r);if(!i||i[2]!==e)return;let[a]=i;a(n)},n=()=>{this.firstTimeout?.socket===e&&(this.firstTimeout=void 0),this.ongoing.forEach(([t,n,r])=>{r===e&&n(Error(`Connection closed`))})};return e.onclose=n,e.onerror=n,e.onmessage=t,this.socket=e,this.openSocket=new Promise(t=>{e.readyState===e.OPEN?t(e):e.onopen=()=>{t(e)}}),[e,this.openSocket]})();return new Promise((i,a)=>{let o=t?.signal,s,c=[e=>{l()&&i(e)},e=>{l()&&a(e)},n],l=()=>this.ongoing.get(e.id)===c&&(this.ongoing.delete(e.id),clearTimeout(s),o?.removeEventListener(`abort`,u),!0),u=()=>{c[1](o?.reason??Error(`Request aborted`))};if(s=setTimeout(()=>{if(this.ongoing.get(e.id)===c){if(c[1](Error(`Request timeout`)),![...this.ongoing.values()].some(([,,e])=>e===n)){n.close();return}let e=this.firstTimeout;e?.socket===n?Date.now()-e.at>=1e4&&n.close():this.firstTimeout={socket:n,at:Date.now()}}},t?.timeout??this.timeout),this.ongoing.set(e.id,c),o?.addEventListener(`abort`,u,{once:!0}),o?.aborted){u();return}r.then(t=>{this.ongoing.get(e.id)===c&&(t.readyState===t.CLOSED||t.readyState===t.CLOSING?c[1](Error(`Connection closed`)):t.send(JSON.stringify(e)))}).catch(e=>{c[1](e)})})}async dispose(){this.disposed=!0;let e=this.socket;e&&e.readyState!==e.CLOSED&&await new Promise(t=>{e.addEventListener(`close`,()=>t(),{once:!0}),e.close()})}};function ir(e,t){return e.startsWith(`wss://`)||e.startsWith(`ws://`)?rr.open(e,t?.timeout):new Lt(new nr(e,t?.timeout),()=>{})}var ar=class e{static hashTypeFrom(e){return yn(e)}static hashTypeTo(e){return e}static depTypeFrom(e){switch(Ln(e)){case`code`:return`code`;case`depGroup`:return`dep_group`}}static depTypeTo(e){switch(e){case`code`:return`code`;case`dep_group`:return`depGroup`}}static scriptFrom(t){let n=V.from(t);return{code_hash:n.codeHash,hash_type:e.hashTypeFrom(n.hashType),args:n.args}}static scriptTo(t){return V.from({codeHash:t.code_hash,hashType:e.hashTypeTo(t.hash_type),args:t.args})}static outPointFrom(e){let t=G.from(e);return{index:S(t.index),tx_hash:t.txHash}}static outPointTo(e){return G.from({index:e.index,txHash:e.tx_hash})}static cellInputFrom(t){let n=Y.from(t);return{previous_output:e.outPointFrom(n.previousOutput),since:S(n.since)}}static cellInputTo(t){return Y.from({previousOutput:e.outPointTo(t.previous_output),since:t.since})}static cellOutputFrom(t,n){let r=K.from(t,n);return{capacity:S(r.capacity),lock:e.scriptFrom(r.lock),type:N(e.scriptFrom,r.type)}}static cellOutputTo(t){return K.from({capacity:t.capacity,lock:e.scriptTo(t.lock),type:N(e.scriptTo,t.type)})}static cellDepFrom(t){return{out_point:e.outPointFrom(t.outPoint),dep_type:e.depTypeFrom(t.depType)}}static cellDepTo(t){return X.from({outPoint:e.outPointTo(t.out_point),depType:e.depTypeTo(t.dep_type)})}static transactionFrom(t){let n=$.from(t);return{version:S(n.version),cell_deps:n.cellDeps.map(t=>e.cellDepFrom(t)),header_deps:n.headerDeps,inputs:n.inputs.map(t=>e.cellInputFrom(t)),outputs:n.outputs.map(t=>e.cellOutputFrom(t)),outputs_data:n.outputsData,witnesses:n.witnesses}}static transactionTo(t){return $.from({version:t.version,cellDeps:t.cell_deps.map(t=>e.cellDepTo(t)),headerDeps:t.header_deps,inputs:t.inputs.map(t=>e.cellInputTo(t)),outputs:t.outputs.map(t=>e.cellOutputTo(t)),outputsData:t.outputs_data,witnesses:t.witnesses})}static transactionResponseTo({cycles:t,tx_status:{status:n,block_number:r,block_hash:i,tx_index:a,reason:o},transaction:s}){if(s!=null)return tn.from({transaction:e.transactionTo(s),status:n,cycles:N(x,t),blockHash:N(h,i),blockNumber:N(x,r),txIndex:N(x,a),reason:o})}static blockHeaderTo(e){let t=p(e.dao);return{compactTarget:x(e.compact_target),dao:{c:C(t.subarray(0,8)),ar:C(t.subarray(8,16)),s:C(t.subarray(16,24)),u:C(t.subarray(24,32))},epoch:I.fromNum(e.epoch),extraHash:e.extra_hash,hash:e.hash,nonce:x(e.nonce),number:x(e.number),parentHash:e.parent_hash,proposalsHash:e.proposals_hash,timestamp:x(e.timestamp),transactionsRoot:e.transactions_root,version:x(e.version)}}static blockUncleTo(t){return{header:e.blockHeaderTo(t.header),proposals:t.proposals}}static blockTo(t){return{header:e.blockHeaderTo(t.header),proposals:t.proposals,transactions:t.transactions.map(t=>e.transactionTo(t)),uncles:t.uncles.map(t=>e.blockUncleTo(t))}}static rangeFrom([e,t]){return[S(e),S(t)]}static indexerSearchKeyFilterFrom(t){return{script:N(e.scriptFrom,t.script),script_len_range:N(e.rangeFrom,t.scriptLenRange),output_data:t.outputData,output_data_filter_mode:t.outputDataSearchMode,output_data_len_range:N(e.rangeFrom,t.outputDataLenRange),output_capacity_range:N(e.rangeFrom,t.outputCapacityRange),block_range:N(e.rangeFrom,t.blockRange)}}static indexerSearchKeyFrom(t){let n=rn.from(t);return{script:e.scriptFrom(n.script),script_type:n.scriptType,script_search_mode:n.scriptSearchMode,filter:N(e.indexerSearchKeyFilterFrom,n.filter),with_data:n.withData}}static findCellsResponseTo({last_cursor:t,objects:n}){return{lastCursor:t,cells:n.map(t=>Vn.from({outPoint:e.outPointTo(t.out_point),cellOutput:e.cellOutputTo(t.output),outputData:t.output_data??`0x`}))}}static indexerSearchKeyTransactionFrom(t){let n=an.from(t);return{script:e.scriptFrom(n.script),script_type:n.scriptType,script_search_mode:n.scriptSearchMode,filter:N(e.indexerSearchKeyFilterFrom,n.filter),group_by_transaction:n.groupByTransaction}}static findTransactionsResponseTo({last_cursor:e,objects:t}){return t.length===0?{lastCursor:e,transactions:[]}:`io_index`in t[0]?{lastCursor:e,transactions:t.map(e=>({txHash:e.tx_hash,blockNumber:x(e.block_number),txIndex:x(e.tx_index),cellIndex:x(e.io_index),isInput:e.io_type===`input`}))}:{lastCursor:e,transactions:t.map(e=>({txHash:e.tx_hash,blockNumber:x(e.block_number),txIndex:x(e.tx_index),cells:e.cells.map(([e,t])=>({isInput:e===`input`,cellIndex:x(t)}))}))}}};const or=Object.freeze({NervosDao:{codeHash:`0x82d76d1b75fe2fd9a27dfbaa65a039221a380d76c926f378d3f81cf3e7e13f2e`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x8f8c79eb6671709633fe6a46de93c0fedc9c1b8a6527a18d3983879542635c9f`,index:2},depType:`code`}}]},Secp256k1Blake160:{codeHash:`0x9bd7e06f3ecf4be0f2fcd2188b23f1b9fcc88e5d4b65a8637b17723bbda3cce8`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xf8de3bb47d055cdf460d93a2a6e1b05f7432f9777c8c474abf4eec1d4aee5d37`,index:0},depType:`depGroup`}}]},Secp256k1Multisig:{codeHash:`0x5c5069eb0857efc65e1bca0c07df34c31663b3622fd3876c876320fc9634e2a8`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xf8de3bb47d055cdf460d93a2a6e1b05f7432f9777c8c474abf4eec1d4aee5d37`,index:1},depType:`depGroup`}}]},Secp256k1MultisigV2Beta:{codeHash:`0x765b3ed6ae264b335d07e73ac332bf2c0f38f8d3340ed521cb447b4c42dd5f09`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xf2013f123b2cb745e3fdf5c935a3925647496f88090503eef58332a9245b4172`,index:0},depType:`depGroup`}}]},Secp256k1MultisigV2:{codeHash:`0x36c971b8d41fbd94aabca77dc75e826729ac98447b46f91e00796155dddb0d29`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x2eefdeb21f3a3edf697c28a52601b4419806ed60bb427420455cc29a090b26d5`,index:0},depType:`depGroup`}}]},AnyoneCanPay:{codeHash:`0x3419a1c09eb2567f6552ee7a8ecffd64155cffe0f1796e6e61ec088d740c1356`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xec26b0f85ed839ece5f11c4c4e837ec359f5adc4420410f6453b1f6b60fb96a6`,index:0},depType:`depGroup`}}]},TypeId:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,cellDeps:[]},SUdt:{codeHash:`0xc5e5dcf215925f7ef4dfaf5f4b4f105bc321c02776d6e7d52a1db3fcd9d011a4`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xe12877ebd2c3c364dc46c5c992bcfaf4fee33fa13eebdf82c591fc9825aab769`,index:0},depType:`code`}}]},XUdt:{codeHash:`0x25c29dc317811a6f6f3985a7a9ebc4838bd388d19d0feeecf0bcd60f6c0975bb`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xbf6fb538763efec2a70a6a3dcb7242787087e1030c4e7d86585bc63a9d337f5f`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x44ec8b96663e06cc94c8c468a4d46d7d9af69eaf418f6390c9f11bb763dda0ae`}}]},JoyId:{codeHash:`0xd23761b364210735c19c60561d213fb3beae2fd6172743719eff6920e020baac`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x4a596d31dc35e88fb1591debbf680b04a44b4a434e3a94453c21ea8950ffb4d9`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x1c9fc299ba0570d077b4d7fb9acff1ccc0de69d369942d82678bae937c44ec30`}},{cellDep:{outPoint:{txHash:`0x4a596d31dc35e88fb1591debbf680b04a44b4a434e3a94453c21ea8950ffb4d9`,index:1},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x27f0d3ccdc2fcd52ae31fbacad5f86b97bc147d7093e4807cd6e3d21c1fe6841`}},{cellDep:{outPoint:{txHash:`0xf2c9dbfe7438a8c622558da8fa912d36755271ea469d3a25cb8d3373d35c8638`,index:1},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x0ac15fe5b2d059ec39de03f2d3159d5463abb918a1a07a9fa00d2b9c61d89ef3`}},{cellDep:{outPoint:{txHash:`0x95ecf9b41701b45d431657a67bbfa3f07ef7ceb53bf87097f3674e1a4a19ce62`,index:1},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0xc7bafc5550ccad7cea32c27764f5df6aca4de547da65e3e67fa08477a1af7f5e`}},{cellDep:{outPoint:{txHash:`0x8b3255491f3c4dcc1cfca33d5c6bcaec5409efe4bbda243900f9580c47e0242e`,index:1},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x71decef9ca8725e64ec99a5521790d16b8d5daadb4989b45dd6ab51806a8c0e4`}}]},COTA:{codeHash:`0x89cd8003a0eaf8e65e0c31525b7d1d5c1becefd2ea75bb4cff87810ae37764d8`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x636a786001f87cb615acfcf408be0f9a1f077001f0bbc75ca54eadfe7e221713`,index:0},depType:`depGroup`}}]},PWLock:{codeHash:`0x58c5f491aba6d61678b7cf7edf4910b1f5e00ec0cde2f42e0abb4fd9aff25a63`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xf8de3bb47d055cdf460d93a2a6e1b05f7432f9777c8c474abf4eec1d4aee5d37`,index:0},depType:`depGroup`}},{cellDep:{outPoint:{txHash:`0x57a62003daeab9d54aa29b944fc3b451213a5ebdf2e232216a3cfed0dde61b38`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0xf6d90bfe3041d0fd7e01c45770241697f5f837974bd6ae1672a7ec0f9f523268`}}]},OmniLock:{codeHash:`0xf329effd1c475a2978453c8600e1eaf0bc2087ee093c3ee64cc96ec6847752cb`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xf8de3bb47d055cdf460d93a2a6e1b05f7432f9777c8c474abf4eec1d4aee5d37`,index:0},depType:`depGroup`}},{cellDep:{outPoint:{txHash:`0xec18bf0d857c981c3d1f4e17999b9b90c484b303378e94de1a57b0872f5d4602`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x761f51fc9cd6a504c32c6ae64b3746594d1af27629b427c5ccf6c9a725a89144`}}]},NostrLock:{codeHash:`0x6ae5ee0cb887b2df5a9a18137315b9bdc55be8d52637b2de0624092d5f0c91d5`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xa2a434dcdbe280b9ed75bb7d6c7d68186a842456aba0fc506657dc5ed7c01d68`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0x8dc56c6f35f0c535e23ded1629b1f20535477a1b43e59f14617d11e32c50e0aa`}}]},UniqueType:{codeHash:`0x8e341bcfec6393dcd41e635733ff2dca00a6af546949f70c57a706c0f344df8b`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0xff91b063c78ed06f10a1ed436122bd7d671f9a72ef5f5fa28d05252c17cf4cef`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,hashType:`type`,args:`0xe04976b67600fd25ac50305f77b33aee2c12e3c18e63ece9119e5b32117884b5`}}]},DidCkb:{codeHash:`0x510150477b10d6ab551a509b71265f3164e9fd4137fcb5a4322f49f03092c7c5`,hashType:`type`,cellDeps:[{cellDep:{outPoint:{txHash:`0x0e7a830e2d5ebd05cd45a55f93f94559edea0ef1237b7233f49f7facfb3d6a6c`,index:0},depType:`code`},type:{codeHash:`0x00000000000000000000000000000000000000000000000000545950455f4944`,args:`0x3c27695173b888ed44ddf36f901789014384ad6c05a9137f3db9a0779c141c35`,hashType:`type`}}]},AlwaysSuccess:{codeHash:`0x3b521cc4b552f109d092d8cc468a8048acb53c5952dbe769d2b2f9cf6e47f7f1`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0xb4f171c9c9caf7401f54a8e56225ae21d95032150a87a4678eac3f66a3137b93`,index:0},depType:`code`}}]},InputTypeProxyLock:{codeHash:`0x5123908965c711b0ffd8aec642f1ede329649bda1ebdca6bd24124d3796f768a`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0xb4f171c9c9caf7401f54a8e56225ae21d95032150a87a4678eac3f66a3137b93`,index:1},depType:`code`}}]},OutputTypeProxyLock:{codeHash:`0x2df53b592db3ae3685b7787adcfef0332a611edb83ca3feca435809964c3aff2`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0xb4f171c9c9caf7401f54a8e56225ae21d95032150a87a4678eac3f66a3137b93`,index:2},depType:`code`}}]},LockProxyLock:{codeHash:`0x5d41e32e224c15f152b7e6529100ebeac83b162f5f692a5365774dad2c1a1d02`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0xb4f171c9c9caf7401f54a8e56225ae21d95032150a87a4678eac3f66a3137b93`,index:3},depType:`code`}}]},SingleUseLock:{codeHash:`0x8290467a512e5b9a6b816469b0edabba1f4ac474e28ffdd604c2a7c76446bbaf`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0xb4f171c9c9caf7401f54a8e56225ae21d95032150a87a4678eac3f66a3137b93`,index:4},depType:`code`}}]},TypeBurnLock:{codeHash:`0xff78bae0abf17d7a404c0be0f9ad9c9185b3f88dcc60403453d5ba8e1f22f53a`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0xb4f171c9c9caf7401f54a8e56225ae21d95032150a87a4678eac3f66a3137b93`,index:5},depType:`code`}}]},EasyToDiscoverType:{codeHash:`0xaba4430cc7110d699007095430a1faa72973edf2322ddbfd4d1d219cacf237af`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x1b4ffcad55ecd36ffb2715b6816b83da73851f1a24fe594f263c4f34dad90792`,index:0},depType:`code`}}]},TimeLock:{codeHash:`0x6fac4b2e89360a1e692efcddcb3a28656d8446549fb83da6d896db8b714f4451`,hashType:`data1`,cellDeps:[{cellDep:{outPoint:{txHash:`0x1b4ffcad55ecd36ffb2715b6816b83da73851f1a24fe594f263c4f34dad90792`,index:1},depType:`code`}}]}});function sr(n){try{let{words:e,prefix:r}=t.decode(n,ur),i=t.fromWords(e),a=i[0],o=i.slice(1);if(a===0)return{prefix:r,format:0,payload:o}}catch{}try{let{prefix:t,words:r}=e.decode(n,ur),i=e.fromWords(r),a=i[0],o=i.slice(1);if([2,4,1].includes(a))return{prefix:t,format:a,payload:o}}catch{}throw Error(`Unknown address format ${n}`)}async function cr(e,t,n,r){if(t===0){if(n.length<33)throw Error(`Invalid full address without enough payload ${h(n)}`);return{script:{codeHash:n.slice(0,32),hashType:xn(n.slice(32,33)),args:n.slice(33)},prefix:e}}if(t===2){if(n.length<32)throw Error(`Invalid full data address without enough payload ${h(n)}`);return{script:{codeHash:n.slice(0,32),hashType:`data`,args:n.slice(32)},prefix:e}}if(t===4){if(n.length<32)throw Error(`Invalid full type address without enough payload ${h(n)}`);return{script:{codeHash:n.slice(0,32),hashType:`type`,args:n.slice(32)},prefix:e}}if(n.length!==21)throw Error(`Invalid short address without enough payload ${h(n)}`);let i=[`Secp256k1Blake160`,`Secp256k1Multisig`,`AnyoneCanPay`][n[0]];if(i===void 0)throw Error(`Invalid short address with unknown script ${h(n)}`);return{script:await V.fromKnownScript(r,i,n.slice(1)),prefix:e}}let lr=function(e){return e[e.Full=0]=`Full`,e[e.Short=1]=`Short`,e[e.FullData=2]=`FullData`,e[e.FullType=4]=`FullType`,e}({});const ur=1023;var dr=class{static infoFrom(e){return{session_id:e.sessionId,type:e.type,sign_type:e.signType,name:e.name,icon:e.icon}}static infoTo(e){return{sessionId:e.session_id,type:e.type,signType:e.sign_type,name:e.name,icon:e.icon}}static messageFrom(e){return typeof e==`string`?{type:`string`,value:e}:{type:`bytes`,value:h(e)}}static messageTo(e){if(!fr(e)||typeof e.value!=`string`)throw Error(`Invalid signer message`);if(e.type===`string`)return e.value;if(e.type===`bytes`)return p(e.value);throw Error(`Invalid signer message type`)}};function fr(e){return typeof e==`object`&&!!e}export{hn as $,be as $n,ht as $t,J as A,We as An,d as Ar,Ut as At,Dn as B,Re as Bn,_t as Bt,Y as C,j as Cn,oe as Cr,Yt as Ct,In as D,Ue as Dn,m as Dr,qt as Dt,Bn as E,He as En,h as Er,N as Et,Ln as F,Pe as Fn,Ft,vn as G,De as Gn,bt as Gt,En as H,Ie as Hn,Tt as Ht,zn as I,Ne as In,Nt as It,Cn as J,ze as Jn,Ct as Jt,V as K,Ve as Kn,xt as Kt,Rn as L,Ee as Ln,jt as Lt,Z as M,Se as Mn,p as Mr,Kt as Mt,qn as N,xe as Nn,ee as Nr,Wt as Nt,G as O,Ke as On,u as Or,Gt as Ot,Kn as P,Fe as Pn,Lt as Pt,_n as Q,Ce as Qn,mt as Qt,Gn as R,Te as Rn,Mt as Rt,Un as S,M as Sn,ue as Sr,Jt as St,K as T,k as Tn,ae as Tr,P as Tt,wn as U,ke as Un,Et as Ut,On as V,Le as Vn,wt as Vt,Tn as W,Oe as Wn,Dt as Wt,xn as X,je as Xn,yt as Xt,yn as Y,Me as Yn,vt as Yt,bn as Z,Ae as Zn,pt as Zt,Xn as _,Qe as _n,v as _r,en as _t,sr as a,tt as an,ve as ar,on as at,q as b,Je as bn,le as br,L as bt,ir as c,ut as cn,me as cr,an as ct,tr as d,dt as dn,S as dr,un as dt,Ot as en,w as er,gn as et,Jn as f,ft as fn,fe as fr,pn as ft,Zn as g,et as gn,_ as gr,fn as gt,Yn as h,$e as hn,de as hr,ln as ht,cr as i,ct as in,x as ir,R as it,$ as j,Ge as jn,ne as jr,zt as jt,Wn as k,qe as kn,f as kr,Rt as kt,rr as l,rt as ln,pe as lr,tn as lt,$n as m,ot as mn,y as mr,cn as mt,ur as n,kt as nn,ye as nr,$t as nt,or as o,nt as on,C as or,rn as ot,er as p,at as pn,b as pr,dn as pt,Sn as q,Be as qn,St as qt,lr as r,st as rn,_e as rr,sn as rt,ar as s,lt as sn,ge as sr,nn as st,dr as t,At as tn,T as tr,mn as tt,nr as u,it as un,he as ur,z as ut,Qn as v,Xe as vn,se as vr,Zt as vt,Hn as w,Ze as wn,ie as wr,Xt as wt,X as x,A as xn,g as xr,I as xt,Vn as y,Ye as yn,ce as yr,Qt as yt,Q as z,we as zn,gt as zt};
|
|
2
|
-
//# sourceMappingURL=transformers-DAMi6ZOq.mjs.map
|