@meshsdk/core 1.4.0 → 1.5.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/dist/common/constants.d.ts +30 -0
- package/dist/common/contracts/fetcher.d.ts +5 -1
- package/dist/common/types/Token.d.ts +2 -0
- package/dist/common/types/index.d.ts +1 -0
- package/dist/core/CIP2.d.ts +4 -3
- package/dist/core.cjs +1 -1
- package/dist/core.js +1102 -963
- package/dist/index.d.ts +1 -1
- package/dist/providers/blockfrost.provider.d.ts +5 -1
- package/dist/providers/koios.provider.d.ts +5 -1
- package/dist/providers/tango.provider.d.ts +5 -1
- package/dist/transaction/transaction.service.d.ts +12 -2
- package/package.json +3 -3
|
@@ -25,4 +25,34 @@ export declare const SUPPORTED_COST_MODELS: Record<Era, Costmdls>;
|
|
|
25
25
|
export declare const SUPPORTED_LANGUAGE_VIEWS: Record<Era, Partial<Record<keyof typeof LANGUAGE_VERSIONS, string>>>;
|
|
26
26
|
export declare const SUPPORTED_HANDLES: Record<number, string>;
|
|
27
27
|
export declare const SUPPORTED_OGMIOS_LINKS: Record<Network, string>;
|
|
28
|
+
export declare const SUPPORTED_TOKENS: {
|
|
29
|
+
LQ: string;
|
|
30
|
+
MIN: string;
|
|
31
|
+
NTX: string;
|
|
32
|
+
iBTC: string;
|
|
33
|
+
iETH: string;
|
|
34
|
+
iUSD: string;
|
|
35
|
+
MILK: string;
|
|
36
|
+
AGIX: string;
|
|
37
|
+
MELD: string;
|
|
38
|
+
INDY: string;
|
|
39
|
+
CLAY: string;
|
|
40
|
+
MCOS: string;
|
|
41
|
+
DING: string;
|
|
42
|
+
GERO: string;
|
|
43
|
+
NMKR: string;
|
|
44
|
+
PAVIA: string;
|
|
45
|
+
HOSKY: string;
|
|
46
|
+
YUMMI: string;
|
|
47
|
+
C3: string;
|
|
48
|
+
GIMBAL: string;
|
|
49
|
+
SUNDAE: string;
|
|
50
|
+
GREENS: string;
|
|
51
|
+
GENS: string;
|
|
52
|
+
SOCIETY: string;
|
|
53
|
+
DJED: string;
|
|
54
|
+
SHEN: string;
|
|
55
|
+
WMT: string;
|
|
56
|
+
COPI: string;
|
|
57
|
+
};
|
|
28
58
|
export declare const SUPPORTED_WALLETS: string[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AccountInfo, AssetMetadata, BlockInfo, Protocol,
|
|
1
|
+
import type { AccountInfo, Asset, AssetMetadata, BlockInfo, Protocol, TransactionInfo, UTxO } from '@mesh/common/types';
|
|
2
2
|
export interface IFetcher {
|
|
3
3
|
fetchAccountInfo(address: string): Promise<AccountInfo>;
|
|
4
4
|
fetchAddressUTxOs(address: string, asset?: string): Promise<UTxO[]>;
|
|
@@ -8,6 +8,10 @@ export interface IFetcher {
|
|
|
8
8
|
}[]>;
|
|
9
9
|
fetchAssetMetadata(asset: string): Promise<AssetMetadata>;
|
|
10
10
|
fetchBlockInfo(hash: string): Promise<BlockInfo>;
|
|
11
|
+
fetchCollectionAssets(policyId: string, cursor?: number | string): Promise<{
|
|
12
|
+
assets: Asset[];
|
|
13
|
+
next: string | number | null;
|
|
14
|
+
}>;
|
|
11
15
|
fetchHandleAddress(handle: string): Promise<string>;
|
|
12
16
|
fetchProtocolParameters(epoch: number): Promise<Protocol>;
|
|
13
17
|
fetchTxInfo(hash: string): Promise<TransactionInfo>;
|
package/dist/core/CIP2.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import type { Quantity, Unit, UTxO } from '@mesh/common/types';
|
|
2
|
-
export declare const
|
|
3
|
-
export declare const
|
|
1
|
+
import type { Protocol, Quantity, Unit, UTxO } from '@mesh/common/types';
|
|
2
|
+
export declare const keepRelevant: (requestedOutputSet: Map<Unit, Quantity>, initialUTxOSet: UTxO[], minimumLovelaceRequired?: string) => UTxO[];
|
|
3
|
+
export declare const largestFirst: (lovelace: Quantity, initialUTxOSet: UTxO[], includeTxFees?: boolean, { maxTxSize, minFeeA, minFeeB }?: Protocol) => UTxO[];
|
|
4
|
+
export declare const largestFirstMultiAsset: (requestedOutputSet: Map<Unit, Quantity>, initialUTxOSet: UTxO[], includeTxFees?: boolean, parameters?: Protocol) => UTxO[];
|
package/dist/core.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const ge=require("nanoid"),Ge=require("@emurgo/cardano-serialization-lib-nodejs"),Re=require("axios"),Kt=require("bip39"),p=require("@emurgo/cardano-message-signing-nodejs"),Le=s=>s&&typeof s=="object"&&"default"in s?s:{default:s};function qe(s){if(s&&s.__esModule)return s;const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(s){for(const t in s)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(s,t);Object.defineProperty(e,t,r.get?r:{enumerable:!0,get:()=>s[t]})}}return e.default=s,Object.freeze(e)}const a=qe(Ge),J=Le(Re),$e=["testnet","preview","preprod","mainnet"],fe=s=>$e.includes(s),_e={mem:7e6,steps:3e9},G={epoch:0,coinsPerUTxOSize:"4310",priceMem:.0577,priceStep:721e-7,minFeeA:44,minFeeB:155381,keyDeposit:"2000000",maxTxSize:16384,maxValSize:"5000",poolDeposit:"500000000",maxCollateralInputs:3,decentralisation:0,maxBlockSize:98304,collateralPercent:150,maxBlockHeaderSize:1100,minPoolCost:"340000000",maxTxExMem:"16000000",maxTxExSteps:"10000000000",maxBlockExMem:"80000000",maxBlockExSteps:"40000000000"},Dt=2147483648,wt={V1:a.Language.new_plutus_v1(),V2:a.Language.new_plutus_v2()},H=56,ze={CERT:a.RedeemerTag.new_cert(),MINT:a.RedeemerTag.new_mint(),REWARD:a.RedeemerTag.new_reward(),SPEND:a.RedeemerTag.new_spend()},yt={testnet:["74","1598400","1595967616","432000"],preview:["0","0","1660003200","86400"],preprod:["0","0","1654041600","432000"],mainnet:["208","4492800","1596059091","432000"]},Lt={ALONZO:a.TxBuilderConstants.plutus_alonzo_cost_models(),BABBAGE:a.TxBuilderConstants.plutus_vasil_cost_models()},We={ALONZO:{V1:"a141005901d59f1a000302590001011a00060bc719026d00011a000249f01903e800011a000249f018201a0025cea81971f70419744d186419744d186419744d186419744d186419744d186419744d18641864186419744d18641a000249f018201a000249f018201a000249f018201a000249f01903e800011a000249f018201a000249f01903e800081a000242201a00067e2318760001011a000249f01903e800081a000249f01a0001b79818f7011a000249f0192710011a0002155e19052e011903e81a000249f01903e8011a000249f018201a000249f018201a000249f0182001011a000249f0011a000249f0041a000194af18f8011a000194af18f8011a0002377c190556011a0002bdea1901f1011a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000242201a00067e23187600010119f04c192bd200011a000249f018201a000242201a00067e2318760001011a000242201a00067e2318760001011a0025cea81971f704001a000141bb041a000249f019138800011a000249f018201a000302590001011a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a00330da70101ff"},BABBAGE:{V1:"a141005901b69f1a0003236119032c01011903e819023b00011903e8195e7104011903e818201a0001ca761928eb041959d818641959d818641959d818641959d818641959d818641959d81864186418641959d81864194c5118201a0002acfa182019b551041a000363151901ff00011a00015c3518201a000797751936f404021a0002ff941a0006ea7818dc0001011903e8196ff604021a0003bd081a00034ec5183e011a00102e0f19312a011a00032e801901a5011a0002da781903e819cf06011a00013a34182019a8f118201903e818201a00013aac0119e143041903e80a1a00030219189c011a00030219189c011a0003207c1901d9011a000330001901ff0119ccf3182019fd40182019ffd5182019581e18201940b318201a00012adf18201a0002ff941a0006ea7818dc0001011a00010f92192da7000119eabb18201a0002ff941a0006ea7818dc0001011a0002ff941a0006ea7818dc0001011a000c504e197712041a001d6af61a0001425b041a00040c660004001a00014fab18201a0003236119032c010119a0de18201a00033d7618201979f41820197fb8182019a95d1820197df718201995aa18201a009063b91903fd0aff",V2:"a20198af1a0003236119032c01011903e819023b00011903e8195e7104011903e818201a0001ca761928eb041959d818641959d818641959d818641959d818641959d818641959d81864186418641959d81864194c5118201a0002acfa182019b551041a000363151901ff00011a00015c3518201a000797751936f404021a0002ff941a0006ea7818dc0001011903e8196ff604021a0003bd081a00034ec5183e011a00102e0f19312a011a00032e801901a5011a0002da781903e819cf06011a00013a34182019a8f118201903e818201a00013aac0119e143041903e80a1a00030219189c011a00030219189c011a0003207c1901d9011a000330001901ff0119ccf3182019fd40182019ffd5182019581e18201940b318201a00012adf18201a0002ff941a0006ea7818dc0001011a00010f92192da7000119eabb18201a0002ff941a0006ea7818dc0001011a0002ff941a0006ea7818dc0001011a0011b22c1a0005fdde00021a000c504e197712041a001d6af61a0001425b041a00040c660004001a00014fab18201a0003236119032c010119a0de18201a00033d7618201979f41820197fb8182019a95d1820197df718201995aa18201b00000004a817c8001b00000004a817c8001a009063b91903fd0a1b00000004a817c800001b00000004a817c80041005901b69f1a0003236119032c01011903e819023b00011903e8195e7104011903e818201a0001ca761928eb041959d818641959d818641959d818641959d818641959d818641959d81864186418641959d81864194c5118201a0002acfa182019b551041a000363151901ff00011a00015c3518201a000797751936f404021a0002ff941a0006ea7818dc0001011903e8196ff604021a0003bd081a00034ec5183e011a00102e0f19312a011a00032e801901a5011a0002da781903e819cf06011a00013a34182019a8f118201903e818201a00013aac0119e143041903e80a1a00030219189c011a00030219189c011a0003207c1901d9011a000330001901ff0119ccf3182019fd40182019ffd5182019581e18201940b318201a00012adf18201a0002ff941a0006ea7818dc0001011a00010f92192da7000119eabb18201a0002ff941a0006ea7818dc0001011a0002ff941a0006ea7818dc0001011a000c504e197712041a001d6af61a0001425b041a00040c660004001a00014fab18201a0003236119032c010119a0de18201a00033d7618201979f41820197fb8182019a95d1820197df718201995aa18201a009063b91903fd0aff"}},Nt={[a.NetworkInfo.testnet().network_id()]:"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3",[a.NetworkInfo.mainnet().network_id()]:"f0ff48bbb7bbe9d59a40f1ce90e9e9d0ff5002ec48f232b49ca0fb9a"},Je={mainnet:"wss://ogmios-api.mainnet.dandelion.link",preprod:"wss://ogmios-api.iohk-preprod.dandelion.link",preview:"__TBD_SOON_TM__",testnet:"wss://ogmios-api.testnet.dandelion.link"},qt=["begin","eternl","flint","nami","nufi","gerowallet","typhoncip30"],pe=(s,e,t=!1,{maxTxSize:r,minFeeA:i,minFeeB:n}=G)=>{const o=e.filter(u=>ye(u)===!1).sort(we),c=a.BigNum.from_str(Mt(r,i,n)),A=t?a.BigNum.from_str(s).checked_add(c).to_str():s;return mt(o,new Map([["lovelace",A]]))},Ce=(s,e,t=!1,r=G)=>{const i=e.filter(ye).sort(we),n=s.get("lovelace")??"0",{maxTxSize:o,minFeeA:c,minFeeB:A}=r,h=a.BigNum.from_str(Mt(o,c,A)),d=t?a.BigNum.from_str(n).checked_add(h).to_str():n;return s.set("lovelace",d),mt(i,s)},je=(s,e)=>Array.from(e,t=>({unit:t[0],quantity:a.BigNum.from_str(t[1])})).every(t=>s.filter(r=>r.output.amount.find(i=>i.unit===t.unit)!==void 0).reduce((r,i)=>{const n=i.output.amount.reduce((o,c)=>o.checked_add(a.BigNum.from_str(t.unit===c.unit?c.quantity:"0")),a.BigNum.from_str("0"));return r.checked_add(n)},a.BigNum.from_str("0")).less_than(t.quantity)===!1),we=(s,e)=>{var i,n;const t=a.BigNum.from_str(((i=s.output.amount.find(o=>o.unit==="lovelace"))==null?void 0:i.quantity)??"0");return a.BigNum.from_str(((n=e.output.amount.find(o=>o.unit==="lovelace"))==null?void 0:n.quantity)??"0").compare(t)},ye=s=>s.output.amount.length>1,mt=(s,e,t=[])=>s.length===0||je(t,e)?t:Xe(s[0],e)?mt(s.slice(1),e,[...t,s[0]]):mt(s.slice(1),e,t),Xe=(s,e)=>Array.from(e.keys()).some(t=>s.output.amount.find(r=>r.unit===t)!==void 0),Ze=(s,e)=>{const t=ss(e),r=rs(s,e);return{coseKey:K(t.to_bytes()),coseSign1:K(r.to_bytes())}},ts=(s,e,{key:t,signature:r})=>{var o,c;const i=p.COSEKey.from_bytes(f(t)),n=p.COSESign1.from_bytes(f(r));if((s==null?void 0:s.length)>0){const A=K(n.payload()??new Uint8Array);if(v(s)!==A)return!1}if((e==null?void 0:e.length)>0){const h=(o=n.headers().protected().deserialized_headers().header(p.Label.new_text("address")))==null?void 0:o.as_bytes();if(h===void 0)throw new Error("Couldn't find a signer address in signature");const d=(c=i.header(p.Label.new_int(p.Int.new_negative(p.BigNum.from_str("2")))))==null?void 0:c.as_bytes();if(d===void 0)throw new Error("Couldn't find a signer key in signature");const u=et(K(h)),g=bs(K(d));if(es(e,u,g)===!1)throw new Error("Couldn't check signature because of address mismatch");const w=vs(K(n.signature())),S=n.signed_data().to_bytes();return g.verify(S,w)}return!1},es=(s,e,t)=>{if(s!==e.to_bech32())return!1;try{return st(s)===t.hash().to_hex()}catch{return!1}},ss=s=>{const e=p.COSEKey.new(p.Label.from_key_type(p.KeyType.OKP));return e.set_algorithm_id(p.Label.from_algorithm_id(p.AlgorithmId.EdDSA)),e.set_header(p.Label.new_int(p.Int.new_negative(p.BigNum.from_str("1"))),p.CBORValue.new_int(p.Int.new_i32(6))),e.set_header(p.Label.new_int(p.Int.new_negative(p.BigNum.from_str("2"))),p.CBORValue.new_bytes(s.key.to_public().as_bytes())),e},rs=(s,e)=>{const t=p.HeaderMap.new(),r=p.HeaderMap.new();t.set_algorithm_id(p.Label.from_algorithm_id(p.AlgorithmId.EdDSA)),t.set_header(p.Label.new_text("address"),p.CBORValue.new_bytes(e.address.to_bytes()));const i=p.Headers.new(p.ProtectedHeaderMap.new(t),r),n=p.COSESign1Builder.new(i,f(s.payload),!1);s.externalAAD!==void 0&&n.set_external_aad(f(s.externalAAD));const o=n.make_data_to_sign(),c=e.key.sign(o.to_bytes());return n.build(c.to_bytes())};var $t=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},me={},Q={exports:{}};R.notEqual=as;R.notOk=ns;R.equal=is;R.ok=R;var Be=R;function is(s,e,t){R(s==e,t)}function as(s,e,t){R(s!=e,t)}function ns(s,e){R(!s,e)}function R(s,e){if(!s)throw new Error(e||"AssertionError")}var T={exports:{}};function os(s){throw new Error('Could not dynamically require "'+s+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var cs=Ft;Ft.supported=typeof WebAssembly<"u";function Ft(s){if(!Ft.supported)return null;var e=s&&s.imports,t=As("AGFzbQEAAAABEANgAn9/AGADf39/AGABfwADBQQAAQICBQUBAQroBwdNBQZtZW1vcnkCAAxibGFrZTJiX2luaXQAAA5ibGFrZTJiX3VwZGF0ZQABDWJsYWtlMmJfZmluYWwAAhBibGFrZTJiX2NvbXByZXNzAAMK00AElgMAIABCADcDACAAQQhqQgA3AwAgAEEQakIANwMAIABBGGpCADcDACAAQSBqQgA3AwAgAEEoakIANwMAIABBMGpCADcDACAAQThqQgA3AwAgAEHAAGpCADcDACAAQcgAakIANwMAIABB0ABqQgA3AwAgAEHYAGpCADcDACAAQeAAakIANwMAIABB6ABqQgA3AwAgAEHwAGpCADcDACAAQfgAakIANwMAIABBgAFqQoiS853/zPmE6gBBACkDAIU3AwAgAEGIAWpCu86qptjQ67O7f0EIKQMAhTcDACAAQZABakKr8NP0r+68tzxBECkDAIU3AwAgAEGYAWpC8e30+KWn/aelf0EYKQMAhTcDACAAQaABakLRhZrv+s+Uh9EAQSApAwCFNwMAIABBqAFqQp/Y+dnCkdqCm39BKCkDAIU3AwAgAEGwAWpC6/qG2r+19sEfQTApAwCFNwMAIABBuAFqQvnC+JuRo7Pw2wBBOCkDAIU3AwAgAEHAAWpCADcDACAAQcgBakIANwMAIABB0AFqQgA3AwALbQEDfyAAQcABaiEDIABByAFqIQQgBCkDAKchBQJAA0AgASACRg0BIAVBgAFGBEAgAyADKQMAIAWtfDcDAEEAIQUgABADCyAAIAVqIAEtAAA6AAAgBUEBaiEFIAFBAWohAQwACwsgBCAFrTcDAAtkAQN/IABBwAFqIQEgAEHIAWohAiABIAEpAwAgAikDAHw3AwAgAEHQAWpCfzcDACACKQMApyEDAkADQCADQYABRg0BIAAgA2pBADoAACADQQFqIQMMAAsLIAIgA603AwAgABADC+U7AiB+CX8gAEGAAWohISAAQYgBaiEiIABBkAFqISMgAEGYAWohJCAAQaABaiElIABBqAFqISYgAEGwAWohJyAAQbgBaiEoICEpAwAhASAiKQMAIQIgIykDACEDICQpAwAhBCAlKQMAIQUgJikDACEGICcpAwAhByAoKQMAIQhCiJLznf/M+YTqACEJQrvOqqbY0Ouzu38hCkKr8NP0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"),r=null,i={buffer:t,memory:null,exports:null,realloc:n,onload:o};return o(function(){}),i;function n(A){i.exports.memory.grow(Math.ceil(Math.abs(A-i.memory.length)/65536)),i.memory=new Uint8Array(i.exports.memory.buffer)}function o(A){if(i.exports)return A();if(r){r.then(A.bind(null,null)).catch(A);return}try{if(s&&s.async)throw new Error("async");c({instance:new WebAssembly.Instance(new WebAssembly.Module(t),e)})}catch{r=WebAssembly.instantiate(t,e).then(c)}o(A)}function c(A){i.exports=A.instance.exports,i.memory=i.exports.memory&&i.exports.memory.buffer&&new Uint8Array(i.exports.memory.buffer)}}function As(s){return typeof atob=="function"?new Uint8Array(atob(s).split("").map(hs)):new(os("buffer")).Buffer(s,"base64")}function hs(s){return s.charCodeAt(0)}var N=Be,C=cs(),V=64,pt=[];T.exports=b;var zt=T.exports.BYTES_MIN=16,Wt=T.exports.BYTES_MAX=64;T.exports.BYTES=32;var Jt=T.exports.KEYBYTES_MIN=16,jt=T.exports.KEYBYTES_MAX=64;T.exports.KEYBYTES=32;var Xt=T.exports.SALTBYTES=16,Zt=T.exports.PERSONALBYTES=16;function b(s,e,t,r,i){if(!(this instanceof b))return new b(s,e,t,r,i);if(!(C&&C.exports))throw new Error("WASM not loaded. Wait for Blake2b.ready(cb)");s||(s=32),i!==!0&&(N(s>=zt,"digestLength must be at least "+zt+", was given "+s),N(s<=Wt,"digestLength must be at most "+Wt+", was given "+s),e!=null&&N(e.length>=Jt,"key must be at least "+Jt+", was given "+e.length),e!=null&&N(e.length<=jt,"key must be at least "+jt+", was given "+e.length),t!=null&&N(t.length===Xt,"salt must be exactly "+Xt+", was given "+t.length),r!=null&&N(r.length===Zt,"personal must be exactly "+Zt+", was given "+r.length)),pt.length||(pt.push(V),V+=216),this.digestLength=s,this.finalized=!1,this.pointer=pt.pop(),C.memory.fill(0,0,64),C.memory[0]=this.digestLength,C.memory[1]=e?e.length:0,C.memory[2]=1,C.memory[3]=1,t&&C.memory.set(t,32),r&&C.memory.set(r,48),this.pointer+216>C.memory.length&&C.realloc(this.pointer+216),C.exports.blake2b_init(this.pointer,this.digestLength),e&&(this.update(e),C.memory.fill(0,V,V+e.length),C.memory[this.pointer+200]=128)}b.prototype.update=function(s){return N(this.finalized===!1,"Hash instance finalized"),N(s,"input must be TypedArray or Buffer"),V+s.length>C.memory.length&&C.realloc(V+s.length),C.memory.set(s,V),C.exports.blake2b_update(this.pointer,V,V+s.length),this};b.prototype.digest=function(s){if(N(this.finalized===!1,"Hash instance finalized"),this.finalized=!0,pt.push(this.pointer),C.exports.blake2b_final(this.pointer),!s||s==="binary")return C.memory.slice(this.pointer+128,this.pointer+128+this.digestLength);if(s==="hex")return ds(C.memory,this.pointer+128,this.digestLength);N(s.length>=this.digestLength,"input must be TypedArray or Buffer");for(var e=0;e<this.digestLength;e++)s[e]=C.memory[this.pointer+128+e];return s};b.prototype.final=b.prototype.digest;b.WASM=C&&C.buffer;b.SUPPORTED=typeof WebAssembly<"u";b.ready=function(s){if(s||(s=us),!C)return s(new Error("WebAssembly not supported"));var e=new Promise(function(t,r){C.onload(function(i){i?r():t(),s(i)})});return e};b.prototype.ready=b.ready;function us(){}function ds(s,e,t){for(var r="",i=0;i<t;i++)r+=Is(s[e+i]);return r}function Is(s){return s<16?"0"+s.toString(16):s.toString(16)}var z=Be,ut=T.exports;function lt(s,e,t){var r=s[e]+s[t],i=s[e+1]+s[t+1];r>=4294967296&&i++,s[e]=r,s[e+1]=i}function te(s,e,t,r){var i=s[e]+t;t<0&&(i+=4294967296);var n=s[e+1]+r;i>=4294967296&&n++,s[e]=i,s[e+1]=n}function Ee(s,e){return s[e]^s[e+1]<<8^s[e+2]<<16^s[e+3]<<24}function q(s,e,t,r,i,n){var o=At[i],c=At[i+1],A=At[n],h=At[n+1];lt(l,s,e),te(l,s,o,c);var d=l[r]^l[s],u=l[r+1]^l[s+1];l[r]=u,l[r+1]=d,lt(l,t,r),d=l[e]^l[t],u=l[e+1]^l[t+1],l[e]=d>>>24^u<<8,l[e+1]=u>>>24^d<<8,lt(l,s,e),te(l,s,A,h),d=l[r]^l[s],u=l[r+1]^l[s+1],l[r]=d>>>16^u<<16,l[r+1]=u>>>16^d<<16,lt(l,t,r),d=l[e]^l[t],u=l[e+1]^l[t+1],l[e]=u>>>31^d<<1,l[e+1]=d>>>31^u<<1}var xe=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),ls=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3],E=new Uint8Array(ls.map(function(s){return s*2})),l=new Uint32Array(32),At=new Uint32Array(32);function Se(s,e){var t=0;for(t=0;t<16;t++)l[t]=s.h[t],l[t+16]=xe[t];for(l[24]=l[24]^s.t,l[25]=l[25]^s.t/4294967296,e&&(l[28]=~l[28],l[29]=~l[29]),t=0;t<32;t++)At[t]=Ee(s.b,4*t);for(t=0;t<12;t++)q(0,8,16,24,E[t*16+0],E[t*16+1]),q(2,10,18,26,E[t*16+2],E[t*16+3]),q(4,12,20,28,E[t*16+4],E[t*16+5]),q(6,14,22,30,E[t*16+6],E[t*16+7]),q(0,10,20,30,E[t*16+8],E[t*16+9]),q(2,12,22,24,E[t*16+10],E[t*16+11]),q(4,14,16,26,E[t*16+12],E[t*16+13]),q(6,8,18,28,E[t*16+14],E[t*16+15]);for(t=0;t<16;t++)s.h[t]=s.h[t]^l[t]^l[t+16]}var $=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function it(s,e,t,r){$.fill(0),this.b=new Uint8Array(128),this.h=new Uint32Array(16),this.t=0,this.c=0,this.outlen=s,$[0]=s,e&&($[1]=e.length),$[2]=1,$[3]=1,t&&$.set(t,32),r&&$.set(r,48);for(var i=0;i<16;i++)this.h[i]=xe[i]^Ee($,i*4);e&&(Qe(this,e),this.c=128)}it.prototype.update=function(s){return z(s!=null,"input must be Uint8Array or Buffer"),Qe(this,s),this};it.prototype.digest=function(s){var e=!s||s==="binary"||s==="hex"?new Uint8Array(this.outlen):s;return z(e.length>=this.outlen,"out must have at least outlen bytes of space"),gs(this,e),s==="hex"?fs(e):e};it.prototype.final=it.prototype.digest;it.ready=function(s){ut.ready(function(){s()})};function Qe(s,e){for(var t=0;t<e.length;t++)s.c===128&&(s.t+=s.c,Se(s,!1),s.c=0),s.b[s.c++]=e[t]}function gs(s,e){for(s.t+=s.c;s.c<128;)s.b[s.c++]=0;Se(s,!0);for(var t=0;t<s.outlen;t++)e[t]=s.h[t>>2]>>8*(t&3);return e}function fs(s){for(var e="",t=0;t<s.length;t++)e+=_s(s[t]);return e}function _s(s){return s<16?"0"+s.toString(16):s.toString(16)}var ve=it;Q.exports=function(e,t,r,i,n){return n!==!0&&(z(e>=ee,"outlen must be at least "+ee+", was given "+e),z(e<=se,"outlen must be at most "+se+", was given "+e),t!=null&&z(t.length>=re,"key must be at least "+re+", was given "+t.length),t!=null&&z(t.length<=ie,"key must be at most "+ie+", was given "+t.length),r!=null&&z(r.length===ae,"salt must be exactly "+ae+", was given "+r.length),i!=null&&z(i.length===ne,"personal must be exactly "+ne+", was given "+i.length)),new ve(e,t,r,i)};Q.exports.ready=function(s){ut.ready(function(){s()})};Q.exports.WASM_SUPPORTED=ut.SUPPORTED;Q.exports.WASM_LOADED=!1;var ee=Q.exports.BYTES_MIN=16,se=Q.exports.BYTES_MAX=64;Q.exports.BYTES=32;var re=Q.exports.KEYBYTES_MIN=16,ie=Q.exports.KEYBYTES_MAX=64;Q.exports.KEYBYTES=32;var ae=Q.exports.SALTBYTES=16,ne=Q.exports.PERSONALBYTES=16;ut.ready(function(s){s||(Q.exports.WASM_LOADED=!0,ve=ut)});var at={};Object.defineProperty(at,"__esModule",{value:!0});at.bech32m=at.bech32=void 0;const Bt="qpzry9x8gf2tvdw0s3jn54khce6mua7l",be={};for(let s=0;s<Bt.length;s++){const e=Bt.charAt(s);be[e]=s}function rt(s){const e=s>>25;return(s&33554431)<<5^-(e>>0&1)&996825010^-(e>>1&1)&642813549^-(e>>2&1)&513874426^-(e>>3&1)&1027748829^-(e>>4&1)&705979059}function oe(s){let e=1;for(let t=0;t<s.length;++t){const r=s.charCodeAt(t);if(r<33||r>126)return"Invalid prefix ("+s+")";e=rt(e)^r>>5}e=rt(e);for(let t=0;t<s.length;++t){const r=s.charCodeAt(t);e=rt(e)^r&31}return e}function Ht(s,e,t,r){let i=0,n=0;const o=(1<<t)-1,c=[];for(let A=0;A<s.length;++A)for(i=i<<e|s[A],n+=e;n>=t;)n-=t,c.push(i>>n&o);if(r)n>0&&c.push(i<<t-n&o);else{if(n>=e)return"Excess padding";if(i<<t-n&o)return"Non-zero padding"}return c}function ps(s){return Ht(s,8,5,!0)}function Cs(s){const e=Ht(s,5,8,!1);if(Array.isArray(e))return e}function ws(s){const e=Ht(s,5,8,!1);if(Array.isArray(e))return e;throw new Error(e)}function De(s){let e;s==="bech32"?e=1:e=734539939;function t(o,c,A){if(A=A||90,o.length+7+c.length>A)throw new TypeError("Exceeds length limit");o=o.toLowerCase();let h=oe(o);if(typeof h=="string")throw new Error(h);let d=o+"1";for(let u=0;u<c.length;++u){const g=c[u];if(g>>5!==0)throw new Error("Non 5-bit word");h=rt(h)^g,d+=Bt.charAt(g)}for(let u=0;u<6;++u)h=rt(h);h^=e;for(let u=0;u<6;++u){const g=h>>(5-u)*5&31;d+=Bt.charAt(g)}return d}function r(o,c){if(c=c||90,o.length<8)return o+" too short";if(o.length>c)return"Exceeds length limit";const A=o.toLowerCase(),h=o.toUpperCase();if(o!==A&&o!==h)return"Mixed-case string "+o;o=A;const d=o.lastIndexOf("1");if(d===-1)return"No separator character for "+o;if(d===0)return"Missing prefix for "+o;const u=o.slice(0,d),g=o.slice(d+1);if(g.length<6)return"Data too short";let w=oe(u);if(typeof w=="string")return w;const S=[];for(let M=0;M<g.length;++M){const L=g.charAt(M),_=be[L];if(_===void 0)return"Unknown character "+L;w=rt(w)^_,!(M+6>=g.length)&&S.push(_)}return w!==e?"Invalid checksum for "+o:{prefix:u,words:S}}function i(o,c){const A=r(o,c);if(typeof A=="object")return A}function n(o,c){const A=r(o,c);if(typeof A=="object")return A;throw new Error(A)}return{decodeUnsafe:i,decode:n,encode:t,toWords:ps,fromWordsUnsafe:Cs,fromWords:ws}}at.bech32=De("bech32");at.bech32m=De("bech32m");var ys=$t&&$t.__importDefault||function(s){return s&&s.__esModule?s:{default:s}};Object.defineProperty(me,"__esModule",{value:!0});const ms=ys(Q.exports),gt=at,kt="asset";class ht{constructor(e){this.hashBuf=e}static fromHash(e){return new ht(e)}static fromParts(e,t){const r=(0,ms.default)(20).update(new Uint8Array([...e,...t])).digest("binary");return ht.fromHash(r)}static fromBech32(e){const{prefix:t,words:r}=gt.bech32.decode(e);if(t!==kt)throw new Error("Invalid asset fingerprint");const i=Buffer.from(gt.bech32.fromWords(r));return ht.fromHash(i)}fingerprint(){const e=gt.bech32.toWords(this.hashBuf);return gt.bech32.encode(kt,e)}hash(){return Buffer.from(this.hashBuf).toString("hex")}prefix(){return kt}checksum(){return this.fingerprint().slice(-6)}}var Bs=me.default=ht;const Es=Bs,xs=(s,e)=>{const t=Ss(s),r=t.derive(Dt+1852).derive(Dt+1815).derive(Dt+e),i=r.derive(0).derive(0).to_raw_key(),n=r.derive(2).derive(0).to_raw_key();return r.free(),t.free(),{paymentKey:i,stakeKey:n}},et=s=>a.Address.from_bytes(f(s)),Ss=s=>a.Bip32PrivateKey.from_bytes(f(s)),Qs=s=>a.DataHash.from_bytes(f(s)),F=s=>a.Ed25519KeyHash.from_bytes(f(s)),vs=s=>a.Ed25519Signature.from_bytes(f(s)),St=s=>a.NativeScript.from_bytes(f(s)),bs=s=>a.PublicKey.from_bytes(f(s)),Ds=s=>a.PlutusData.from_bytes(f(s)),nt=(s,e)=>a.PlutusScript.from_bytes_with_version(f(s),wt[e]),ks=s=>a.ScriptRef.from_bytes(f(s)),Ks=s=>a.ScriptHash.from_bytes(f(s)),W=s=>a.Transaction.from_bytes(f(s)),ke=s=>a.TransactionHash.from_bytes(f(s)),ce=s=>a.TransactionUnspentOutput.from_bytes(f(s)),Us=s=>a.TransactionWitnessSet.from_bytes(f(s)),Ns=s=>a.Value.from_bytes(f(s)),P=s=>a.Address.from_bech32(s),Pt=s=>a.BaseAddress.from_address(P(s)),Ke=s=>a.EnterpriseAddress.from_address(P(s)),Ue=s=>a.RewardAddress.from_address(P(s)),K=s=>Buffer.from(s).toString("hex"),f=s=>s.length%2===0&&/^[0-9A-F]*$/i.test(s)?Buffer.from(s,"hex"):Buffer.from(s,"utf-8"),Qt=s=>{const e=t=>{const r=new Array;for(let i=0;i<t.len();i+=1)r.push(Qt(t.get(i)));return r};switch(s.kind()){case a.NativeScriptKind.ScriptAll:{const t=s.as_script_all();return{type:"all",scripts:e(t.native_scripts())}}case a.NativeScriptKind.ScriptAny:{const t=s.as_script_any();return{type:"any",scripts:e(t.native_scripts())}}case a.NativeScriptKind.ScriptNOfK:{const t=s.as_script_n_of_k();return{type:"atLeast",required:t.n(),scripts:e(t.native_scripts())}}case a.NativeScriptKind.TimelockStart:{const t=s.as_timelock_start();return{type:"after",slot:t.slot_bignum().to_str()}}case a.NativeScriptKind.TimelockExpiry:{const t=s.as_timelock_expiry();return{type:"before",slot:t.slot_bignum().to_str()}}case a.NativeScriptKind.ScriptPubkey:{const t=s.as_script_pubkey();return{type:"sig",keyHash:t.addr_keyhash().to_hex()}}default:throw new Error(`Script Kind: ${s.kind()}, is not supported`)}},vt=s=>{const e=t=>{const r=a.NativeScripts.new();return t.forEach(i=>{r.add(vt(i))}),r};switch(s.type){case"all":return a.NativeScript.new_script_all(a.ScriptAll.new(e(s.scripts)));case"any":return a.NativeScript.new_script_any(a.ScriptAny.new(e(s.scripts)));case"atLeast":return a.NativeScript.new_script_n_of_k(a.ScriptNOfK.new(s.required,e(s.scripts)));case"after":return a.NativeScript.new_timelock_start(a.TimelockStart.new_timelockstart(a.BigNum.from_str(s.slot)));case"before":return a.NativeScript.new_timelock_expiry(a.TimelockExpiry.new_timelockexpiry(a.BigNum.from_str(s.slot)));case"sig":return a.NativeScript.new_script_pubkey(a.ScriptPubkey.new(F(s.keyHash)))}},Z=s=>{const e=t=>{const r=a.PlutusList.new();return t.forEach(i=>{r.add(Z(i))}),r};switch(typeof s){case"string":return a.PlutusData.new_bytes(f(s));case"number":return a.PlutusData.new_integer(a.BigInt.from_str(s.toString()));case"object":if(s instanceof Array){const t=e(s);return a.PlutusData.new_list(t)}else if(s instanceof Map){const t=a.PlutusMap.new();return s.forEach((r,i)=>{t.insert(Z(i),Z(r))}),a.PlutusData.new_map(t)}else return a.PlutusData.new_constr_plutus_data(a.ConstrPlutusData.new(a.BigNum.from_str(s.alternative.toString()),e(s.fields)))}},Fs=s=>{const e=a.Relays.new();throw s.relays.forEach(t=>{e.add(Hs(t))}),new Error("toPoolParams not implemented.")},Ne=s=>{const e=t=>ze[t];return a.Redeemer.new(e(s.tag),a.BigNum.from_str(s.index.toString()),Z(s.data),a.ExUnits.new(a.BigNum.from_str(s.budget.mem.toString()),a.BigNum.from_str(s.budget.steps.toString())))},Hs=s=>{switch(s.type){case"SingleHostAddr":{const e=s.IPV4?a.Ipv4.new(new Uint8Array(s.IPV4.split(".").map(r=>parseInt(r)))):void 0,t=s.IPV6?a.Ipv6.new(f(s.IPV6.replaceAll(":",""))):void 0;return a.Relay.new_single_host_addr(a.SingleHostAddr.new(s.port,e,t))}case"SingleHostName":return a.Relay.new_single_host_name(a.SingleHostName.new(s.port,a.DNSRecordAorAAAA.new(s.domainName)));case"MultiHostName":return a.Relay.new_multi_host_name(a.MultiHostName.new(a.DNSRecordSRV.new(s.domainName)))}},Fe=s=>{if(s.is_plutus_script()){const t=s.plutus_script();return{code:t.to_hex(),version:Object.keys(wt).find(r=>wt[r].to_hex()===t.language_version().to_hex())}}const e=s.native_script();return Qt(e)},dt=s=>{if("code"in s){const e=nt(s.code,s.version);return a.ScriptRef.new_plutus_script(e)}return a.ScriptRef.new_native_script(vt(s))},Et=s=>{var i,n,o;const e=s.output().has_data_hash()?(i=s.output().data_hash())==null?void 0:i.to_hex():void 0,t=s.output().has_plutus_data()?(n=s.output().plutus_data())==null?void 0:n.to_hex():void 0,r=s.output().has_script_ref()?(o=s.output().script_ref())==null?void 0:o.to_hex():void 0;return{input:{outputIndex:s.input().index(),txHash:s.input().transaction_id().to_hex()},output:{address:s.output().address().to_bech32(),amount:He(s.output().amount()),dataHash:e,plutusData:t,scriptRef:r}}},Y=s=>{const e=a.TransactionInput.new(ke(s.input.txHash),s.input.outputIndex),t=a.TransactionOutput.new(P(s.output.address),Ct(s.output.amount));return s.output.dataHash!==void 0&&t.set_data_hash(Qs(s.output.dataHash)),s.output.plutusData!==void 0&&t.set_plutus_data(Ds(s.output.plutusData)),s.output.scriptRef!==void 0&&t.set_script_ref(ks(s.output.scriptRef)),a.TransactionUnspentOutput.new(e,t)},Ae=s=>{const e=s.split(".")[1]??"0",t=`${parseInt(e,10)}`,r="1"+"0".repeat(e.length);return a.UnitInterval.new(a.BigNum.from_str(t),a.BigNum.from_str(r))},v=s=>s.length%2===0&&/^[0-9A-F]*$/i.test(s)?s:K(Buffer.from(s,"utf-8")),Tt=s=>Buffer.from(s,"hex").toString("utf-8"),He=s=>{const e=[{unit:"lovelace",quantity:s.coin().to_str()}],t=s.multiasset();if(t!==void 0){const r=t.keys();for(let i=0;i<r.len();i+=1){const n=r.get(i),o=t.get(n);if(o!==void 0){const c=o.keys();for(let A=0;A<c.len();A+=1){const h=c.get(A),d=o.get(h)??a.BigNum.from_str("0"),u=n.to_hex()+K(h.name());e.push({unit:u,quantity:d.to_str()})}}}}return e},Ct=s=>{const e=s.find(n=>n.unit==="lovelace"),t=Array.from(new Set(s.filter(n=>n.unit!=="lovelace").map(n=>n.unit.slice(0,H)))),r=a.MultiAsset.new();t.forEach(n=>{const o=a.Assets.new();s.filter(c=>c.unit.slice(0,H)===n).forEach(c=>{o.insert(a.AssetName.new(f(c.unit.slice(H))),a.BigNum.from_str(c.quantity))}),r.insert(Ks(n),o)});const i=a.Value.new(a.BigNum.from_str(e?e.quantity:"0"));return(s.length>1||!e)&&i.set_multiasset(r),i},he=(s,e,t)=>a.BaseAddress.new(s,a.StakeCredential.from_keyhash(e),a.StakeCredential.from_keyhash(t)),Pe=(s,e="")=>a.Bip32PrivateKey.from_bip39_entropy(f(s),f(v(e))),ue=s=>a.DataCost.new_coins_per_byte(a.BigNum.from_str(s)),Ps=s=>{if(typeof s!="object"||!("input"in s))return a.DatumSource.new(Z(s));const e=Y(s);if(e.output().has_plutus_data())return a.DatumSource.new_ref_input(e.input());throw new Error(`No inline datum found in UTxO: ${e.input().transaction_id().to_hex()}`)},de=(s,e)=>a.EnterpriseAddress.new(s,a.StakeCredential.from_keyhash(e)),Ie=(s,e)=>{if(typeof s=="string")return a.MintWitness.new_native_script(St(s));if(e===void 0)throw new Error("Minting with plutus requires a redeemer to be defined");if(e.tag!=="MINT")throw new Error("Minting redeemer's tag must be defined as 'MINT'");return a.MintWitness.new_plutus_script(Te(s),Ne({tag:"MINT",index:0,budget:_e,data:{alternative:0,fields:[]},...e}))},Ut=(s,e)=>a.RewardAddress.new(s,a.StakeCredential.from_keyhash(e)),Te=s=>{if("code"in s)return a.PlutusScriptSource.new(nt(s.code,s.version));const e=Y(s);if(e.output().has_script_ref()){const t=e.output().script_ref();if(t.is_plutus_script()){const r=Fe(t),i=nt(r.code,r.version).hash();return a.PlutusScriptSource.new_ref_input_with_lang_ver(i,e.input(),wt[r.version])}}throw new Error(`No plutus script reference found in UTxO: ${e.input().transaction_id().to_hex()}`)},ft=s=>{const e=a.ScriptPubkey.new(s);return a.NativeScript.new_script_pubkey(e)},Ts=(s=G)=>{const e=a.TransactionBuilderConfigBuilder.new().coins_per_utxo_byte(a.BigNum.from_str(s.coinsPerUTxOSize)).ex_unit_prices(a.ExUnitPrices.new(Ae(s.priceMem.toString()),Ae(s.priceStep.toString()))).fee_algo(a.LinearFee.new(a.BigNum.from_str(s.minFeeA.toString()),a.BigNum.from_str(s.minFeeB.toString()))).key_deposit(a.BigNum.from_str(s.keyDeposit)).max_tx_size(s.maxTxSize).max_value_size(parseInt(s.maxValSize,10)).pool_deposit(a.BigNum.from_str(s.poolDeposit)).build();return a.TransactionBuilder.new(e)},le=s=>{const e=a.TxInputsBuilder.new();return s.map(t=>t instanceof a.TransactionUnspentOutput?t:Y(t)).forEach(t=>{e.add_input(t.output().address(),t.input(),t.output().amount())}),e},_t=s=>{if(typeof s=="string")return a.TransactionOutputBuilder.new().with_address(P(s));let e=a.TransactionOutputBuilder.new().with_address(P(s.address));if(s.datum){const{value:t,inline:r}=s.datum,i=Z(t);e=e.with_data_hash(a.hash_plutus_data(i)),r&&(e=e.with_plutus_data(i))}if(s.script){const t=dt(s.script);e=e.with_script_ref(t)}return e},ot=s=>{const e=s.slice(0,H),t=s.includes(".")?v(s.split(".")[1]):s.slice(H);return{policyId:e,assetName:t}},I=s=>J.default.isAxiosError(s)?s.response?JSON.stringify({data:s.response.data,headers:s.response.headers,status:s.response.status}):s.request?JSON.stringify(s.request):s.message:JSON.stringify(s),Ms=s=>{const e=Z(s);return a.hash_plutus_data(e).to_hex()},Os=(s,e=Date.now())=>{if(yt[s]){const[t,r,i,n]=yt[s];return parseInt(a.BigNum.from_str(e.toString()).div_floor(a.BigNum.from_str("1000")).checked_sub(a.BigNum.from_str(i)).div_floor(a.BigNum.from_str(n)).checked_add(a.BigNum.from_str(t)).to_str(),10)}throw new Error(`Couldn't resolve EpochNo for network: ${s}`)},Me=(s,e)=>Es.fromParts(f(s),f(e)).fingerprint(),Vs=(s,e)=>We[s][e],Ys=s=>vt(s).hash().to_hex(),X=s=>{var e,t;try{const r=[(e=Pt(s))==null?void 0:e.payment_cred().to_keyhash(),(t=Ke(s))==null?void 0:t.payment_cred().to_keyhash()].find(i=>i!==void 0);if(r!==void 0)return r.to_hex();throw new Error(`Couldn't resolve payment key hash from address: ${s}`)}catch(r){throw new Error(`An error occurred during resolvePaymentKeyHash: ${r}.`)}},Gs=(s,e=0)=>{const t=nt(s.code,s.version);return a.EnterpriseAddress.new(e,a.StakeCredential.from_scripthash(t.hash())).to_address().to_bech32()},Rs=s=>{try{const e=Ke(s),t=e==null?void 0:e.payment_cred().to_scripthash();if(t!==void 0)return t.to_hex();throw new Error(`Couldn't resolve script hash from address: ${s}`)}catch(e){throw new Error(`An error occurred during resolveScriptHash: ${e}.`)}},Ls=s=>a.Ed25519KeyHash.from_hex(s).to_bech32("pool1"),qs=s=>{const e=Kt.mnemonicToEntropy(s.join(" ")),t=Pe(e),r=t.to_bech32();return t.free(),r},$s=s=>dt(s).to_hex(),zs=(s,e=Date.now())=>{if(yt[s]){const[t,r,i]=yt[s];return a.BigNum.from_str(e.toString()).div_floor(a.BigNum.from_str("1000")).checked_sub(a.BigNum.from_str(i)).checked_add(a.BigNum.from_str(r)).to_str()}throw new Error(`Couldn't resolve SlotNo for network: ${s}`)},bt=s=>{try{const e=P(s),t=Pt(s),r=t==null?void 0:t.stake_cred().to_keyhash();if(r!==void 0)return Ut(e.network_id(),r).to_address().to_bech32();throw new Error(`Couldn't resolve reward address from address: ${s}`)}catch(e){throw new Error(`An error occurred during resolveRewardAddress: ${e}.`)}},st=s=>{var e,t;try{const r=[(e=Pt(s))==null?void 0:e.stake_cred().to_keyhash(),(t=Ue(s))==null?void 0:t.payment_cred().to_keyhash()].find(i=>i!==void 0);if(r!==void 0)return r.to_hex();throw new Error(`Couldn't resolve stake key hash from address: ${s}`)}catch(r){throw new Error(`An error occurred during resolveStakeKeyHash: ${r}.`)}},Mt=(s,e=G.minFeeA,t=G.minFeeB)=>(BigInt(e)*BigInt(s)+BigInt(t)).toString(),Oe=s=>{const e=W(s).body();return a.hash_transaction(e).to_hex()},Ws=(s="",e=32)=>{if(e<=0||e>2048)throw new Error("Length must be bewteen 1 and 2048");const r=ge.customAlphabet("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789")(e);return v(`${s}${r}`)},Ve=(s,e)=>{const t=s.vkeys();if(t!==void 0){const r=new Set;for(let n=0;n<t.len();n+=1)r.add(t.get(n).to_hex());for(let n=0;n<e.len();n+=1)r.add(e.get(n).to_hex());const i=a.Vkeywitnesses.new();return r.forEach(n=>{i.add(a.Vkeywitness.from_hex(n))}),i}return e};class Js{_axiosInstance;constructor(...e){if(typeof e[0]=="string"&&e[0].startsWith("http"))this._axiosInstance=J.default.create({baseURL:e[0]});else{const t=e[0],r=t.slice(0,7);this._axiosInstance=J.default.create({baseURL:`https://cardano-${r}.blockfrost.io/api/v${e[1]??0}`,headers:{project_id:t}})}}async fetchAccountInfo(e){const t=e.startsWith("addr")?bt(e):e;try{const{data:r,status:i}=await this._axiosInstance.get(`accounts/${t}`);if(i===200)return{poolId:r.pool_id,active:r.active||r.active_epoch!==null,balance:r.controlled_amount,rewards:r.withdrawable_amount,withdrawals:r.withdrawals_sum};throw I(r)}catch(r){throw I(r)}}async fetchAddressUTxOs(e,t){const r=t!==void 0?`/${t}`:"",i=`addresses/${e}/utxos`+r,n=async(A=1,h=[])=>{const{data:d,status:u}=await this._axiosInstance.get(`${i}?page=${A}`);if(u===200)return d.length>0?n(A+1,[...h,...await Promise.all(d.map(c))]):h;throw I(d)},o=async A=>{if(A){const{data:h,status:d}=await this._axiosInstance.get(`scripts/${A}`);if(d===200){const u=h.type.startsWith("plutus")?{code:await this.fetchPlutusScriptCBOR(A),version:h.type.replace("plutus","")}:await this.fetchNativeScriptJSON(A);return dt(u).to_hex()}throw I(h)}},c=async A=>({input:{outputIndex:A.output_index,txHash:A.tx_hash},output:{address:e,amount:A.amount,dataHash:A.data_hash??void 0,plutusData:A.inline_datum??void 0,scriptRef:await o(A.reference_script_hash)}});try{return await n()}catch{return[]}}async fetchAssetAddresses(e){const t=async(r=1,i=[])=>{const{policyId:n,assetName:o}=ot(e),{data:c,status:A}=await this._axiosInstance.get(`assets/${n}${o}/addresses?page=${r}`);if(A===200)return c.length>0?t(r+1,[...i,...c]):i;throw I(c)};try{return await t()}catch{return[]}}async fetchAssetMetadata(e){try{const{policyId:t,assetName:r}=ot(e),{data:i,status:n}=await this._axiosInstance.get(`assets/${t}${r}`);if(n===200)return{...i.onchain_metadata};throw I(i)}catch(t){throw I(t)}}async fetchBlockInfo(e){try{const{data:t,status:r}=await this._axiosInstance.get(`blocks/${e}`);if(r===200)return{confirmations:t.confirmations,epoch:t.epoch,epochSlot:t.epoch_slot.toString(),fees:t.fees,hash:t.hash,nextBlock:t.next_block??"",operationalCertificate:t.op_cert,output:t.output??"0",previousBlock:t.previous_block,size:t.size,slot:t.slot.toString(),slotLeader:t.slot_leader??"",time:t.time,txCount:t.tx_count,VRFKey:t.block_vrf};throw I(t)}catch(t){throw I(t)}}async fetchHandleAddress(e){try{const t=v(e.replace("$","")),{data:r,status:i}=await this._axiosInstance.get(`assets/${Nt[1]}${t}/addresses`);if(i===200)return r[0].address;throw I(r)}catch(t){throw I(t)}}async fetchProtocolParameters(e=Number.NaN){try{const{data:t,status:r}=await this._axiosInstance.get(`epochs/${isNaN(e)?"latest":e}/parameters`);if(r===200)return{coinsPerUTxOSize:t.coins_per_utxo_word,collateralPercent:t.collateral_percent,decentralisation:t.decentralisation_param,epoch:t.epoch,keyDeposit:t.key_deposit,maxBlockExMem:t.max_block_ex_mem,maxBlockExSteps:t.max_block_ex_steps,maxBlockHeaderSize:t.max_block_header_size,maxBlockSize:t.max_block_size,maxCollateralInputs:t.max_collateral_inputs,maxTxExMem:t.max_tx_ex_mem,maxTxExSteps:t.max_tx_ex_steps,maxTxSize:t.max_tx_size,maxValSize:t.max_val_size,minFeeA:t.min_fee_a,minFeeB:t.min_fee_b,minPoolCost:t.min_pool_cost,poolDeposit:t.pool_deposit,priceMem:t.price_mem,priceStep:t.price_step};throw I(t)}catch(t){throw I(t)}}async fetchTxInfo(e){try{const{data:t,status:r}=await this._axiosInstance.get(`txs/${e}`);if(r===200)return{block:t.block,deposit:t.deposit,fees:t.fees,hash:t.hash,index:t.index,invalidAfter:t.invalid_hereafter??"",invalidBefore:t.invalid_before??"",slot:t.slot.toString(),size:t.size};throw I(t)}catch(t){throw I(t)}}onTxConfirmed(e,t,r=20){let i=0;const n=setInterval(()=>{i>=r&&clearInterval(n),this.fetchTxInfo(e).then(o=>{this.fetchBlockInfo(o.block).then(c=>{(c==null?void 0:c.confirmations)>0&&(clearInterval(n),t())}).catch(()=>{i+=1})}).catch(()=>{i+=1})},5e3)}async submitTx(e){try{const t={"Content-Type":"application/cbor"},{data:r,status:i}=await this._axiosInstance.post("tx/submit",f(e),{headers:t});if(i===200)return r;throw I(r)}catch(t){throw I(t)}}async fetchPlutusScriptCBOR(e){const{data:t,status:r}=await this._axiosInstance.get(`scripts/${e}/cbor`);if(r===200)return t.cbor;throw I(t)}async fetchNativeScriptJSON(e){const{data:t,status:r}=await this._axiosInstance.get(`scripts/${e}/json`);if(r===200)return t.json;throw I(t)}}class js{_axiosInstance;constructor(e,t,r){const i=r.host??"ipfs.infura.io",n=r.port??5001,o=r.version??0;this._axiosInstance=J.default.create({baseURL:`https://${i}:${n}/api/v${o}`,auth:{username:e,password:t}})}async uploadContent(e,t=!1){try{const r={"Content-Type":"multipart/form-data"},{data:i,status:n}=await this._axiosInstance.post(`add?recursive=${t}`,e,{headers:r});if(n===200)return i;throw I(i)}catch(r){throw I(r)}}}class Xs{_axiosInstance;constructor(...e){typeof e[0]=="string"&&e[0].startsWith("http")?this._axiosInstance=J.default.create({baseURL:e[0]}):this._axiosInstance=J.default.create({baseURL:`https://${e[0]}.koios.rest/api/v${e[1]??0}`})}async fetchAccountInfo(e){try{const t=e.startsWith("addr")?bt(e):e,{data:r,status:i}=await this._axiosInstance.post("account_info",{_stake_addresses:[t]});if(i===200)return{poolId:r[0].delegated_pool,active:r[0].status==="registered",balance:r[0].total_balance.toString(),rewards:r[0].rewards_available,withdrawals:r[0].withdrawals};throw I(r)}catch(t){throw I(t)}}async fetchAddressUTxOs(e,t){const r=i=>{if(i){const n=i.type.startsWith("plutus")?{code:i.bytes,version:i.type.replace("plutus","")}:Qt(St(i.bytes));return dt(n).to_hex()}};try{const{data:i,status:n}=await this._axiosInstance.post("address_info",{_addresses:[e]});if(n===200){const o=i.flatMap(c=>c.utxo_set).map(c=>{var A;return{input:{outputIndex:c.tx_index,txHash:c.tx_hash},output:{address:e,amount:[{unit:"lovelace",quantity:c.value},...c.asset_list.map(h=>({unit:`${h.policy_id}${h.asset_name}`,quantity:`${h.quantity}`}))],dataHash:c.datum_hash??void 0,plutusData:((A=c.inline_datum)==null?void 0:A.bytes)??void 0,scriptRef:r(c.reference_script)}}});return t!==void 0?o.filter(c=>c.output.amount.find(A=>A.unit===t)!==void 0):o}throw I(i)}catch{return[]}}async fetchAssetAddresses(e){try{const{policyId:t,assetName:r}=ot(e),{data:i,status:n}=await this._axiosInstance.get(`asset_address_list?_asset_policy=${t}&_asset_name=${r}`);if(n===200)return i.map(o=>({address:o.payment_address,quantity:o.quantity}));throw I(i)}catch(t){throw I(t)}}async fetchAssetMetadata(e){try{const{policyId:t,assetName:r}=ot(e),{data:i,status:n}=await this._axiosInstance.get(`asset_info?_asset_policy=${t}&_asset_name=${r}`);if(n===200)return{...i[0].minting_tx_metadata[721][t][Tt(r)]};throw I(i)}catch(t){throw I(t)}}async fetchBlockInfo(e){try{const{data:t,status:r}=await this._axiosInstance.post("block_info",{_block_hashes:[e]});if(r===200)return{confirmations:t[0].num_confirmations,epoch:t[0].epoch_no,epochSlot:t[0].epoch_slot.toString(),fees:t[0].total_fees??"",hash:t[0].hash,nextBlock:t[0].child_hash??"",operationalCertificate:t[0].op_cert,output:t[0].total_output??"0",previousBlock:t[0].parent_hash,size:t[0].block_size,slot:t[0].abs_slot.toString(),slotLeader:t[0].pool??"",time:t[0].block_time,txCount:t[0].tx_count,VRFKey:t[0].vrf_key};throw I(t)}catch(t){throw I(t)}}async fetchHandleAddress(e){try{const t=v(e.replace("$","")),{data:r,status:i}=await this._axiosInstance.get(`asset_address_list?_asset_policy=${Nt[1]}&_asset_name=${t}`);if(i===200)return r[0].payment_address;throw I(r)}catch(t){throw I(t)}}async fetchProtocolParameters(e){try{const{data:t,status:r}=await this._axiosInstance.get(`epoch_params?_epoch_no=${e}`);if(r===200)return{coinsPerUTxOSize:t[0].coins_per_utxo_size,collateralPercent:t[0].collateral_percent,decentralisation:t[0].decentralisation,epoch:t[0].epoch_no,keyDeposit:t[0].key_deposit,maxBlockExMem:t[0].max_block_ex_mem.toString(),maxBlockExSteps:t[0].max_block_ex_steps.toString(),maxBlockHeaderSize:t[0].max_bh_size,maxBlockSize:t[0].max_block_size,maxCollateralInputs:t[0].max_collateral_inputs,maxTxExMem:t[0].max_tx_ex_mem.toString(),maxTxExSteps:t[0].max_tx_ex_steps.toString(),maxTxSize:t[0].max_tx_size,maxValSize:t[0].max_val_size.toString(),minFeeA:t[0].min_fee_a,minFeeB:t[0].min_fee_b,minPoolCost:t[0].min_pool_cost,poolDeposit:t[0].pool_deposit,priceMem:t[0].price_mem,priceStep:t[0].price_step};throw I(t)}catch(t){throw I(t)}}async fetchTxInfo(e){var t,r;try{const{data:i,status:n}=await this._axiosInstance.post("tx_info",{_tx_hashes:[e]});if(n===200)return{block:i[0].block_hash,deposit:i[0].deposit,fees:i[0].fee,hash:i[0].tx_hash,index:i[0].tx_block_index,invalidAfter:((t=i[0].invalid_after)==null?void 0:t.toString())??"",invalidBefore:((r=i[0].invalid_before)==null?void 0:r.toString())??"",slot:i[0].absolute_slot.toString(),size:i[0].tx_size};throw I(i)}catch(i){throw I(i)}}onTxConfirmed(e,t,r=20){let i=0;const n=setInterval(()=>{i>=r&&clearInterval(n),this.fetchTxInfo(e).then(o=>{this.fetchBlockInfo(o.block).then(c=>{(c==null?void 0:c.confirmations)>0&&(clearInterval(n),t())}).catch(()=>{i+=1})}).catch(()=>{i+=1})},5e3)}async submitTx(e){try{const t={"Content-Type":"application/cbor"},{data:r,status:i}=await this._axiosInstance.post("submittx",f(e),{headers:t});if(i===202)return r;throw I(r)}catch(t){throw I(t)}}}class Zs{_baseUrl;constructor(...e){this._baseUrl=fe(e[0])?Je[e[0]]:e[0]}async evaluateTx(e){const t=await this.open();return this.send(t,"EvaluateTx",{evaluate:e}),new Promise((r,i)=>{t.addEventListener("message",n=>{try{const{result:o}=JSON.parse(n.data);o.EvaluationResult?r(Object.keys(o.EvaluationResult).map(c=>({index:parseInt(c.split(":")[1],10),tag:c.split(":")[0].toUpperCase(),budget:{mem:o.EvaluationResult[c].memory,steps:o.EvaluationResult[c].steps}}))):i(o.EvaluationFailure),t.close()}catch(o){i(o)}},{once:!0})})}async onNextTx(e){const t=await this.open();return this.send(t,"AwaitAcquire",{}),t.addEventListener("message",r=>{const{result:i}=JSON.parse(r.data);if(i===null)return this.send(t,"AwaitAcquire",{});i.AwaitAcquired===void 0&&e(i),this.send(t,"NextTx",{})}),()=>t.close()}async submitTx(e){const t=await this.open();return this.send(t,"SubmitTx",{submit:e}),new Promise((r,i)=>{t.addEventListener("message",n=>{try{const{result:o}=JSON.parse(n.data);o.SubmitSuccess?r(o.SubmitSuccess.txId):i(o.SubmitFail),t.close()}catch(o){i(o)}},{once:!0})})}async open(){const e=new WebSocket(this._baseUrl);return await new Promise(t=>{e.addEventListener("open",()=>t(!0),{once:!0})}),e}send(e,t,r){e.send(JSON.stringify({version:"1.0",type:"jsonwsp/request",servicename:"ogmios",methodname:t,args:r}))}}class tr{_axiosInstance;constructor(e,t,r,i=1){this._axiosInstance=J.default.create({baseURL:`https://cardano-${e}.tangocrypto.com/${t}/v${i}`,headers:{"x-api-key":r}})}async evaluateTx(e){try{const{data:t,status:r}=await this._axiosInstance.post("transactions/evaluate",{tx:e,utxos:[]});if(r===200)return t.redeemers.map(i=>({index:i.index,tag:i.purpose.toUpperCase(),budget:{mem:i.unit_mem,steps:i.unit_steps}}));throw I(t)}catch(t){throw I(t)}}async fetchAccountInfo(e){try{const t=e.startsWith("addr")?bt(e):e,{data:r,status:i}=await this._axiosInstance.get(`wallets/${t}`);if(i===200)return{poolId:r.pool_id,active:r.active,balance:r.controlled_total_stake,rewards:r.rewards_sum,withdrawals:r.withdrawals_sum};throw I(r)}catch(t){throw I(t)}}async fetchAddressUTxOs(e,t){const r=t!==void 0?`/assets/${t}`:"",i=`addresses/${e}${r}/utxos?size=50`,n=async(h="",d=[])=>{var w;const{data:u,status:g}=await this._axiosInstance.get(`${i}&cursor=${h}`);if(g===200)return u.cursor!==null&&((w=u.cursor)==null?void 0:w.length)>0?n(u.cursor,[...d,...u.data.map(A)]):u.data.map(A);throw I(u)},o=(h,d)=>{const u=[{unit:"lovelace",quantity:h.toString()}];return d.forEach(g=>{const w=v(g.asset_name);u.push({unit:`${g.policy_id}${w}`,quantity:g.quantity.toString()})}),u},c=h=>{if(h){const d=h.type.startsWith("plutus")?{code:h.code,version:h.type.replace("plutus","")}:Qt(St(h.json));return dt(d).to_hex()}},A=h=>{var d;return{input:{outputIndex:h.index,txHash:h.hash},output:{address:e,amount:o(h.value,h.assets),dataHash:void 0,plutusData:((d=h.inline_datum)==null?void 0:d.value_raw)??void 0,scriptRef:c(h.reference_script)}}};try{return await n()}catch{return[]}}async fetchAssetAddresses(e){const t=i=>({address:i.address,quantity:i.quantity.toString()}),r=async(i="",n=[])=>{var d;const{policyId:o,assetName:c}=ot(e),{data:A,status:h}=await this._axiosInstance.get(`assets/${o}${c}/addresses?size=100&cursor=${i}`);if(h===200)return A.cursor!==null&&((d=A.cursor)==null?void 0:d.length)>0?r(A.cursor,[...n,...A.data.map(t)]):A.data.map(t);throw I(A)};try{return await r()}catch{return[]}}async fetchAssetMetadata(e){var t;try{const{policyId:r,assetName:i}=ot(e),{data:n,status:o}=await this._axiosInstance.get(`assets/${r}${i}`);if(o===200)return{...(t=n.metadata.find(c=>c.label===721))==null?void 0:t.json[r][Tt(i)]};throw I(n)}catch(r){throw I(r)}}async fetchBlockInfo(e){try{const{data:t,status:r}=await this._axiosInstance.get(`blocks/${e}`);if(r===200)return{confirmations:t.confirmations,epoch:t.epoch_no,epochSlot:t.epoch_slot_no.toString(),fees:t.fees.toString(),hash:t.hash,nextBlock:t.next_block.toString()??"",operationalCertificate:t.op_cert,output:t.out_sum.toString()??"0",previousBlock:t.previous_block.toString(),size:t.size,slot:t.slot_no.toString(),slotLeader:t.slot_leader??"",time:Date.parse(t.time),txCount:t.tx_count,VRFKey:t.vrf_key};throw I(t)}catch(t){throw I(t)}}async fetchHandleAddress(e){try{const t=v(e.replace("$","")),{data:r,status:i}=await this._axiosInstance.get(`assets/${Nt[1]}${t}/addresses`);if(i===200)return r.data[0].address;throw I(r)}catch(t){throw I(t)}}async fetchProtocolParameters(e){try{const{data:t,status:r}=await this._axiosInstance.get(`epochs/${e}/parameters`);if(r===200)return{coinsPerUTxOSize:t.coins_per_utxo_size.toString(),collateralPercent:t.collateral_percent,decentralisation:t.decentralisation,epoch:t.epoch_no,keyDeposit:t.key_deposit.toString(),maxBlockExMem:t.max_block_ex_mem.toString(),maxBlockExSteps:t.max_block_ex_steps.toString(),maxBlockHeaderSize:t.max_block_header_size,maxBlockSize:t.max_block_size,maxCollateralInputs:t.max_collateral_inputs,maxTxExMem:t.max_tx_ex_mem.toString(),maxTxExSteps:t.max_tx_ex_steps.toString(),maxTxSize:t.max_tx_size,maxValSize:t.max_val_size.toString(),minFeeA:t.min_fee_a,minFeeB:t.min_fee_b,minPoolCost:t.min_pool_cost.toString(),poolDeposit:t.pool_deposit.toString(),priceMem:t.price_mem,priceStep:t.price_step};throw I(t)}catch(t){throw I(t)}}async fetchTxInfo(e){try{const{data:t,status:r}=await this._axiosInstance.get(`transactions/${e}`);if(r===200)return{block:t.block.hash,deposit:t.deposit,fees:t.fee,hash:t.hash,index:t.block_index,invalidAfter:t.invalid_hereafter??"",invalidBefore:t.invalid_before??"",slot:t.block.slot_no.toString(),size:t.size};throw I(t)}catch(t){throw I(t)}}onTxConfirmed(e,t,r=20){let i=0;const n=setInterval(()=>{i>=r&&clearInterval(n),this.fetchTxInfo(e).then(o=>{this.fetchBlockInfo(o.block).then(c=>{(c==null?void 0:c.confirmations)>0&&(clearInterval(n),t())}).catch(()=>{i+=1})}).catch(()=>{i+=1})},5e3)}async submitTx(e){try{const t={"Content-Type":"application/json"},{data:r,status:i}=await this._axiosInstance.post("transactions/submit",{tx:e},{headers:t});if(i===200)return r.tx_id;throw I(r)}catch(t){throw I(t)}}}class er{static withOneSignature(e){const t=F(X(e));return ft(t).to_hex()}static withAtLeastNSignatures(e,t){const r=a.NativeScripts.new();e.forEach(n=>{const o=F(X(n));r.add(ft(o))});const i=a.ScriptNOfK.new(t,r);return a.NativeScript.new_script_any(i).to_hex()}static withAnySignature(e){const t=a.NativeScripts.new();e.forEach(i=>{const n=F(X(i));t.add(ft(n))});const r=a.ScriptAny.new(t);return a.NativeScript.new_script_any(r).to_hex()}static withAllSignatures(e){const t=a.NativeScripts.new();e.forEach(i=>{const n=F(X(i));t.add(ft(n))});const r=a.ScriptAll.new(t);return a.NativeScript.new_script_any(r).to_hex()}static fromNativeScript(e){return vt(e).to_hex()}}function j(s,e,t,r){var i=arguments.length,n=i<3?e:r===null?r=Object.getOwnPropertyDescriptor(e,t):r,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(s,e,t,r);else for(var c=s.length-1;c>=0;c--)(o=s[c])&&(n=(i<3?o(n):i>3?o(e,t,n):o(e,t))||n);return i>3&&n&&Object.defineProperty(e,t,n),n}const sr=s=>class extends s{__visits=[]},tt=()=>function(s,e,t){const r=t.value;t.value=function(...i){const n=r.call(this,...i);return this.__visits&&this.__visits.push(e),n}};exports.Transaction=class{_changeAddress;_recipients=new Map;_totalBurns=new Map;_totalMints=new Map;_era;_initiator;_mintBuilder;_protocolParameters;_txBuilder;_txCertificates;_txInputsBuilder;_txWithdrawals;constructor(e={}){this._era=e.era,this._initiator=e.initiator,this._mintBuilder=a.MintBuilder.new(),this._protocolParameters=e.parameters??G,this._txBuilder=Ts(e.parameters),this._txCertificates=a.Certificates.new(),this._txInputsBuilder=a.TxInputsBuilder.new(),this._txWithdrawals=a.Withdrawals.new()}static maskMetadata(e,t="BABBAGE"){var n;const r=W(e),i=(n=r.auxiliary_data())==null?void 0:n.metadata();if(i!==void 0){const o=a.GeneralTransactionMetadata.new();for(let A=0;A<i.len();A+=1){const h=i.keys().get(A),d=i.get(h);o.insert(h,a.TransactionMetadatum.from_hex("0".repeat(((d==null?void 0:d.to_hex())??"").length)))}const c=r.auxiliary_data();return c!==void 0&&(c.set_metadata(o),c.set_prefer_alonzo_format(t==="ALONZO")),a.Transaction.new(r.body(),r.witness_set(),c).to_hex()}return e}static readMetadata(e){var r,i;return((i=(r=W(e).auxiliary_data())==null?void 0:r.metadata())==null?void 0:i.to_hex())??""}static writeMetadata(e,t,r="BABBAGE"){const i=W(e),n=i.auxiliary_data()??a.AuxiliaryData.new();return n.set_metadata(a.GeneralTransactionMetadata.from_hex(t)),n.set_prefer_alonzo_format(r==="ALONZO"),a.Transaction.new(i.body(),i.witness_set(),n).to_hex()}get size(){return this._txBuilder.full_size()}async build(){try{return(this._mintBuilder.has_plutus_scripts()||this.notVisited("redeemValue")===!1)&&(await this.addRequiredSignersIfNeeded(),await this.addCollateralIfNeeded()),await this.forgeAssetsIfNeeded(),await this.addTxInputsAsNeeded(),await this.addChangeAddress(),this._txBuilder.build_tx().to_hex()}catch(e){throw new Error(`[Transaction] An error occurred during build: ${e}.`)}}burnAsset(e,t,r){const i=this._totalBurns.has(t.unit)?a.BigNum.from_str(this._totalBurns.get(t.unit)??"0").checked_add(a.BigNum.from_str(t.quantity)).to_str():t.quantity;return this._mintBuilder.add_asset(Ie(e,r),a.AssetName.new(f(t.unit.slice(H))),a.Int.new_negative(a.BigNum.from_str(t.quantity))),this._totalBurns.set(t.unit,i),this}delegateStake(e,t){const r=a.Certificate.new_stake_delegation(a.StakeDelegation.new(a.StakeCredential.from_keyhash(F(st(e))),a.Ed25519KeyHash.from_bech32(t)));return this._txCertificates.add(r),this}deregisterStake(e){const t=a.Certificate.new_stake_deregistration(a.StakeDeregistration.new(a.StakeCredential.from_keyhash(F(st(e)))));return this._txCertificates.add(t),this}mintAsset(e,t,r){var h,d;const i=(u,g)=>{const w=typeof u=="string"?St(u).hash().to_hex():n(u).hash().to_hex(),S=v(g.assetName);return{unit:`${w}${S}`,quantity:g.assetQuantity}},n=u=>{if("code"in u)return nt(u.code,u.version);const g=Y(u);if(g.output().has_script_ref()){const w=g.output().script_ref();if(w.is_plutus_script()){const S=Fe(w);return nt(S.code,S.version)}}throw new Error(`No plutus script reference found in UTxO: ${g.input().transaction_id().to_hex()}`)},o=i(e,t),A=a.BigNum.from_str(((h=this._totalMints.get(o.unit))==null?void 0:h.assetQuantity)??"0").checked_add(a.BigNum.from_str(o.quantity));return this._mintBuilder.add_asset(Ie(e,r),a.AssetName.new(f(v(t.assetName))),a.Int.new(a.BigNum.from_str(o.quantity))),this._recipients.has(t.recipient)?(d=this._recipients.get(t.recipient))==null||d.push(o):this._recipients.set(t.recipient,[o]),this._totalMints.set(o.unit,{...t,assetQuantity:A.to_str()}),this}redeemValue(e){const t={tag:"SPEND",budget:_e,index:this._txInputsBuilder.inputs().len(),data:{alternative:0,fields:[]},...e.redeemer},r=Y(e.value),i=a.PlutusWitness.new_with_ref(Te(e.script),Ps(e.datum),Ne(t));return this._txInputsBuilder.add_plutus_script_input(i,r.input(),r.output().amount()),this}registerStake(e){const t=a.Certificate.new_stake_registration(a.StakeRegistration.new(a.StakeCredential.from_keyhash(F(st(e)))));return this._txCertificates.add(t),this}registerPool(e){const t=a.Certificate.new_pool_registration(a.PoolRegistration.new(Fs(e)));return this._txCertificates.add(t),this}retirePool(e,t){const r=a.Certificate.new_pool_retirement(a.PoolRetirement.new(a.Ed25519KeyHash.from_bech32(e),t));return this._txCertificates.add(r),this}sendAssets(e,t){const r=Ct(t),i=r.multiasset();if(r.is_zero()||i===void 0)return this;const n=_t(e).next(),o=r.coin().is_zero()?n.with_asset_and_min_required_coin_by_utxo_cost(i,ue(this._protocolParameters.coinsPerUTxOSize)).build():n.with_coin_and_asset(r.coin(),i).build();return this._txBuilder.add_output(o),this}sendLovelace(e,t){const i=_t(e).next().with_coin(a.BigNum.from_str(t)).build();return this._txBuilder.add_output(i),this}sendValue(e,t){const r=Ct(t.output.amount),n=_t(e).next().with_value(r).build();return this._txBuilder.add_output(n),this}setChangeAddress(e){return this._changeAddress=P(e),this}setCollateral(e){const t=le(e);return this._txBuilder.set_collateral(t),this}setMetadata(e,t){return this._txBuilder.add_json_metadatum_with_schema(a.BigNum.from_str(e.toString()),JSON.stringify(t),a.MetadataJsonSchema.NoConversions),this}setRequiredSigners(e){return Array.from(new Set(e.map(r=>r.startsWith("addr")?X(r):st(r)).map(r=>F(r)))).forEach(r=>{this._txBuilder.add_required_signer(r)}),this}setTimeToStart(e){return this._txBuilder.set_validity_start_interval_bignum(a.BigNum.from_str(e)),this}setTimeToExpire(e){return this._txBuilder.set_ttl_bignum(a.BigNum.from_str(e)),this}setTxInputs(e){return e.map(t=>Y(t)).forEach(t=>{this._txInputsBuilder.add_input(t.output().address(),t.input(),t.output().amount())}),this}withdrawRewards(e,t){const r=Ue(e);return r!==void 0&&this._txWithdrawals.insert(r,a.BigNum.from_str(t)),this}async addBurnInputsIfNeeded(){if(this._initiator&&this._totalBurns.size>0&&this.notVisited("setTxInputs")){const e=await this._initiator.getUsedUTxOs();Ce(this._totalBurns,e.map(r=>Et(r))).map(r=>Y(r)).forEach(r=>{this._txInputsBuilder.add_input(r.output().address(),r.input(),r.output().amount())})}}async addChangeAddress(){if(this._initiator&&this._changeAddress===void 0){const e=await this._initiator.getUsedAddress();this._txBuilder.add_change_if_needed(e)}else this._changeAddress!==void 0&&this._txBuilder.add_change_if_needed(this._changeAddress)}async addCollateralIfNeeded(){if(this._initiator&&this.notVisited("setCollateral")){const e=await this._initiator.getUsedCollateral();this._txBuilder.set_collateral(le(e))}}async addRequiredSignersIfNeeded(){if(this._initiator&&this.notVisited("setRequiredSigners")){const e=await this._initiator.getUsedAddress(),t=X(e.to_bech32());this._txBuilder.add_required_signer(F(t))}}async addTxInputsAsNeeded(){if(this._txBuilder.set_inputs(this._txInputsBuilder),(this._mintBuilder.has_native_scripts()||this._mintBuilder.has_plutus_scripts())&&this._txBuilder.set_mint_builder(this._mintBuilder),this._txCertificates.len()>0&&this._txBuilder.set_certs(this._txCertificates),this._txWithdrawals.len()>0&&this._txBuilder.set_withdrawals(this._txWithdrawals),this.notVisited("setTxInputs")){const e=!this.notVisited("mintAsset")||!this.notVisited("sendAssets")||!this.notVisited("sendValue"),t=await this.selectLovelaceUTxOs(!1),r=await this.filterAvailableUTxOs(t),i=e?a.CoinSelectionStrategyCIP2.LargestFirstMultiAsset:a.CoinSelectionStrategyCIP2.LargestFirst;this._txBuilder.add_inputs_from(r,i)}if(this._txBuilder.get_mint_builder()||this.notVisited("redeemValue")===!1){const e=this._era!==void 0?Lt[this._era]:Lt.BABBAGE;this._txBuilder.calc_script_data_hash(e)}}async forgeAssetsIfNeeded(){const e=(t,r)=>{const i=t.data.assetName,n=t.data.metadata,o=t.unit.slice(0,H);if(r&&r[o]){const{[o]:c,...A}=r,h={[i]:n,...c};return{[o]:{...h},...A}}return r!==void 0?{[o]:{[i]:n},...r}:{[o]:{[i]:n}}};await this.addBurnInputsIfNeeded(),Array.from(this._totalMints,t=>({unit:t[0],data:t[1]})).reduce((t,r)=>t.set(r.data.label,e(r,t.get(r.data.label))),new Map).forEach((t,r)=>{this._txBuilder.add_json_metadatum(a.BigNum.from_str(r),JSON.stringify(t))}),this.addMintOutputs()}async filterAvailableUTxOs(e=[]){const t=a.TransactionUnspentOutputs.new();return this._initiator===void 0||(await this._initiator.getUsedUTxOs()).filter(i=>e.find(n=>n.input.txHash===i.input().transaction_id().to_hex())===void 0).forEach(i=>{t.add(i)}),t}async selectLovelaceUTxOs(e){if(this._initiator===void 0||e===!1)return[];const t=await this._initiator.getUsedUTxOs(),r=pe("5000000",t.map(n=>Et(n)));return r.map(n=>Y(n)).forEach(n=>{this._txBuilder.add_input(n.output().address(),n.input(),n.output().amount())}),r}addMintOutputs(){this._recipients.forEach((e,t)=>{const i=Ct(e).multiasset();if(i!==void 0){const o=_t(t).next().with_asset_and_min_required_coin_by_utxo_cost(i,ue(this._protocolParameters.coinsPerUTxOSize)).build();this._txBuilder.add_output(o)}})}notVisited(e){return this.__visits.includes(e)===!1}};j([tt()],exports.Transaction.prototype,"mintAsset",null);j([tt()],exports.Transaction.prototype,"redeemValue",null);j([tt()],exports.Transaction.prototype,"sendAssets",null);j([tt()],exports.Transaction.prototype,"sendValue",null);j([tt()],exports.Transaction.prototype,"setCollateral",null);j([tt()],exports.Transaction.prototype,"setRequiredSigners",null);j([tt()],exports.Transaction.prototype,"setTxInputs",null);exports.Transaction=j([sr],exports.Transaction);class y{_networkId;_encryptedSecret;constructor(e,t){this._networkId=e,this._encryptedSecret=t}getAccount(e,t){return this.accountContext(e,t,(r,i)=>{const n=he(this._networkId,r.to_public().hash(),i.to_public().hash()).to_address().to_bech32(),o=de(this._networkId,r.to_public().hash()).to_address().to_bech32(),c=Ut(this._networkId,i.to_public().hash()).to_address().to_bech32();return{baseAddress:n,enterpriseAddress:o,rewardAddress:c}})}signData(e,t,r,i){try{return this.accountContext(e,t,(n,o)=>{const c={payload:i},A={address:y.resolveAddress(this._networkId,r,n,o),key:r.startsWith("stake")?o:n},{coseSign1:h,coseKey:d}=Ze(c,A);return{signature:h,key:d}})}catch(n){throw new Error(`An error occurred during signData: ${n}.`)}}signTx(e,t,r,i,n){try{const o=ke(Oe(i));return this.accountContext(e,t,(c,A)=>{const h=a.Vkeywitnesses.new();return y.resolveSigners(i,r,c.to_public().hash().to_hex()).forEach(u=>{if(u===c.to_public().hash().to_hex())h.add(a.make_vkey_witness(o,c));else if(u===A.to_public().hash().to_hex())h.add(a.make_vkey_witness(o,A));else if(n===!1)throw new Error(`Missing key witness for: ${u}`)}),h})}catch(o){throw new Error(`An error occurred during signTx: ${o}.`)}}static encryptMnemonic(e,t){const r=Kt.mnemonicToEntropy(e.join(" ")),i=Pe(r),n=K(i.as_bytes());return i.free(),y.encrypt(n,t)}static encryptPrivateKey(e,t){const r=a.Bip32PrivateKey.from_bech32(e),i=K(r.as_bytes());return r.free(),y.encrypt(i,t)}static encryptSigningKeys(e,t,r){const i=y.encrypt(e.slice(4),r),n=y.encrypt(t.slice(4),r);return[i,n]}static generateMnemonic(e=256){return Kt.generateMnemonic(e).split(" ")}accountContext(e,t,r){const{paymentKey:i,stakeKey:n}=y.resolveKeys(e,t,this._encryptedSecret),o=r(i,n);return i.free(),n.free(),o}static decrypt(e,t){try{return a.decrypt_with_password(v(t),e)}catch{throw new Error("The password is incorrect.")}}static encrypt(e,t){const r=ge.customAlphabet("0123456789abcdef"),i=r(64),n=r(24);return a.encrypt_with_password(v(t),i,n,e)}static resolveAddress(e,t,r,i){const n=[he(e,r.to_public().hash(),i.to_public().hash()),de(e,r.to_public().hash()),Ut(e,i.to_public().hash())].find(o=>o.to_address().to_bech32()===t);if(n!==void 0)return n.to_address();throw new Error(`Address: ${t} doesn't belong to this account.`)}static resolveKeys(e,t,r){if(typeof r=="string"){const o=y.decrypt(r,t);return xs(o,e)}const i=y.decrypt(r[0],t),n=y.decrypt(r[1],t);return{paymentKey:a.PrivateKey.from_hex(i),stakeKey:a.PrivateKey.from_hex(n)}}static resolveSigners(e,t,r){const i=c=>{const A=(_,x=[],B=0)=>{var It,ct,Ot,Vt,Yt;if(_===void 0||B>=_.len())return x;const D=_.get(B),k=new Array;switch(D.kind()){case a.CertificateKind.StakeDeregistration:{const m=(It=D.as_stake_deregistration())==null?void 0:It.stake_credential(),O=(m==null?void 0:m.kind())===a.StakeCredKind.Key?m.to_keyhash():void 0;O&&k.push(O.to_hex());break}case a.CertificateKind.StakeDelegation:{const m=(ct=D.as_stake_delegation())==null?void 0:ct.stake_credential(),O=(m==null?void 0:m.kind())===a.StakeCredKind.Key?m.to_keyhash():void 0;O&&k.push(O.to_hex());break}case a.CertificateKind.PoolRegistration:{const m=(Ot=D.as_pool_registration())==null?void 0:Ot.pool_params().pool_owners();k.push(...d(m));break}case a.CertificateKind.PoolRetirement:{const m=(Vt=D.as_pool_retirement())==null?void 0:Vt.pool_keyhash();m&&k.push(m.to_hex());break}case a.CertificateKind.MoveInstantaneousRewardsCert:{const m=(Yt=D.as_move_instantaneous_rewards_cert())==null?void 0:Yt.move_instantaneous_reward().as_to_stake_creds();if(m)for(let O=0;O<m.len();O+=1){const Gt=m.keys().get(O),Rt=Gt.kind()===a.StakeCredKind.Key?Gt.to_keyhash():void 0;Rt&&k.push(Rt.to_hex())}break}}return A(_,[...x,...k],B+1)},h=(_,x=[],B=0)=>{if(_===void 0||B>=_.len())return x;const D=_.get(B).index(),k=_.get(B).transaction_id(),It=t.find(ct=>ct.input.outputIndex===D&&ct.input.txHash===k.to_hex())!==void 0?r:"OUR_PRINCESS_IS_IN_ANOTHER_CASTLE";return h(_,[...x,It],B+1)},d=(_,x=[],B=0)=>_===void 0||B>=_.len()?x:d(_,[...x,_.get(B).to_hex()],B+1),u=(_,x=[],B=0)=>{if(_===void 0||B>=_.len())return x;const D=_.keys().get(B).payment_cred(),k=D.kind()===a.StakeCredKind.Key?D.to_keyhash():void 0;return u(_,k?[...x,k.to_hex()]:x,B+1)},g=c.certs(),w=c.collateral(),S=c.inputs(),M=c.required_signers(),L=c.withdrawals();return[...A(g),...h(w),...h(S),...d(M),...u(L)]},n=c=>{const A=(d,u=[])=>{var g,w,S,M;if(d)for(let L=0;L<d.len();L+=1){const _=d.get(L);switch(_.kind()){case a.NativeScriptKind.ScriptPubkey:{const x=(g=_.as_script_pubkey())==null?void 0:g.addr_keyhash().to_hex();return x?[...u,x]:u}case a.NativeScriptKind.ScriptAll:return A((w=_.as_script_all())==null?void 0:w.native_scripts(),u);case a.NativeScriptKind.ScriptAny:return A((S=_.as_script_any())==null?void 0:S.native_scripts(),u);case a.NativeScriptKind.ScriptNOfK:return A((M=_.as_script_n_of_k())==null?void 0:M.native_scripts(),u)}}return u},h=c.native_scripts();return[...A(h)]},o=W(e);return new Set([...i(o.body()),...n(o.witness_set())])}}const U="MARI0TIME";class rr{_fetcher;_submitter;_wallet;constructor(e){switch(this._fetcher=e.fetcher,this._submitter=e.submitter,e.key.type){case"mnemonic":this._wallet=new y(e.networkId,y.encryptMnemonic(e.key.words,U));break;case"root":this._wallet=new y(e.networkId,y.encryptPrivateKey(e.key.bech32,U));break;case"cli":this._wallet=new y(e.networkId,y.encryptSigningKeys(e.key.payment,e.key.stake??"f0".repeat(34),U))}}getPaymentAddress(e=0){return this._wallet.getAccount(e,U).enterpriseAddress}getRewardAddress(e=0){return this._wallet.getAccount(e,U).rewardAddress}getUsedAddress(e=0){const t=this._wallet.getAccount(e,U);return P(t.enterpriseAddress)}getUsedCollateral(e=G.maxCollateralInputs){throw new Error("getUsedCollateral not implemented.")}async getUsedUTxOs(e=0){const t=this._wallet.getAccount(e,U);return(await this._fetcher.fetchAddressUTxOs(t.enterpriseAddress)).map(i=>Y(i))}signData(e,t,r=0){try{return this._wallet.signData(r,U,e,t)}catch(i){throw new Error(`[AppWallet] An error occurred during signData: ${i}.`)}}async signTx(e,t=!1,r=0){try{const i=this._wallet.getAccount(r,U),n=await this._fetcher.fetchAddressUTxOs(i.enterpriseAddress),o=this._wallet.signTx(r,U,n,e,t),c=W(e),A=c.witness_set(),h=Ve(A,o);return A.set_vkeys(h),a.Transaction.new(c.body(),A,c.auxiliary_data()).to_hex()}catch(i){throw new Error(`[AppWallet] An error occurred during signTx: ${i}.`)}}submitTx(e){return this._submitter.submitTx(e)}static brew(e=256){return y.generateMnemonic(e)}}class xt{_walletInstance;constructor(e){this._walletInstance=e}static getInstalledWallets(){return window.cardano===void 0?[]:qt.filter(e=>window.cardano[e]!==void 0).map(e=>({name:window.cardano[e].name,icon:window.cardano[e].icon,version:window.cardano[e].apiVersion}))}static async enable(e){try{const t=await xt.resolveInstance(e);if(t!==void 0)return new xt(t);throw new Error(`Couldn't create an instance of wallet: ${e}`)}catch(t){throw new Error(`[BrowserWallet] An error occurred during enable: ${t}.`)}}async getBalance(){const e=await this._walletInstance.getBalance();return He(Ns(e))}async getChangeAddress(){const e=await this._walletInstance.getChangeAddress();return et(e).to_bech32()}async getCollateral(e=G.maxCollateralInputs){return(await this.getUsedCollateral(e)).map(r=>Et(r))}getNetworkId(){return this._walletInstance.getNetworkId()}async getRewardAddresses(){return(await this._walletInstance.getRewardAddresses()).map(t=>et(t).to_bech32())}async getUnusedAddresses(){return(await this._walletInstance.getUnusedAddresses()).map(t=>et(t).to_bech32())}async getUsedAddresses(){return(await this._walletInstance.getUsedAddresses()).map(t=>et(t).to_bech32())}async getUtxos(){return(await this.getUsedUTxOs()).map(t=>Et(t))}signData(e,t){const r=P(e).to_hex();return this._walletInstance.signData(r,v(t))}async signTx(e,t=!1){try{const r=W(e),i=r.witness_set(),n=await this._walletInstance.signTx(e,t),o=Us(n).vkeys()??a.Vkeywitnesses.new(),c=Ve(i,o);return i.set_vkeys(c),K(a.Transaction.new(r.body(),i,r.auxiliary_data()).to_bytes())}catch(r){throw new Error(`[BrowserWallet] An error occurred during signTx: ${JSON.stringify(r)}.`)}}submitTx(e){return this._walletInstance.submitTx(e)}async getUsedAddress(){const e=await this._walletInstance.getUsedAddresses();return et(e[0])}async getUsedCollateral(e=G.maxCollateralInputs){return(await this._walletInstance.experimental.getCollateral()??[]).map(r=>ce(r)).slice(0,e)}async getUsedUTxOs(){return(await this._walletInstance.getUtxos()??[]).map(t=>ce(t))}async getAssets(){return(await this.getBalance()).filter(t=>t.unit!=="lovelace").map(t=>{const r=t.unit.slice(0,H),i=t.unit.slice(H),n=Me(r,i);return{unit:t.unit,policyId:r,assetName:Tt(i),fingerprint:n,quantity:t.quantity}})}async getLovelace(){const t=(await this.getBalance()).find(r=>r.unit==="lovelace");return t!==void 0?t.quantity:"0"}async getPolicyIdAssets(e){return(await this.getAssets()).filter(r=>r.policyId===e)}async getPolicyIds(){const e=await this.getBalance();return Array.from(new Set(e.map(t=>t.unit.slice(0,H)))).filter(t=>t!=="lovelace")}static resolveInstance(e){if(window.cardano===void 0)return;const t=qt.map(r=>window.cardano[r]).filter(r=>r!==void 0).find(r=>r.name.toLowerCase()===e.toLowerCase());return t==null?void 0:t.enable()}}const Ye="http://localhost:4000/",ir="http://localhost:5000/",ar=`${Ye}access`,nr=`${Ye}transaction/signtx`;class or{static getAxiosInstance(){return J.default.create({baseURL:ir,withCredentials:!0})}static getAppId(){return window.location.hostname}static async openMinaFrontend(e){const t=this.getAppId();e.includes("?")?e=`${e}&appId=${t}`:e=`${e}?appId=${t}`;const r="left=100,top=100,width=540,height=540",i=window.open(e,"meshWindow",r);return i||console.error("the window did not open",i),await(async()=>new Promise(n=>{window.addEventListener("message",async o=>{o.data.target=="minaWallet"&&n(o.data)})}))()}static async get(e,t={}){const r=this.getAppId();t={...t,appId:r};try{return(await this.getAxiosInstance().get(e,{params:t})).data}catch{console.error("Not logged in");return}}static async enable(){return await this.get("wallet/getuserwalletsmeta")===void 0?await this.openMinaFrontend(ar):!0}static async getChangeAddress(e=void 0,t=void 0){return await this.get("wallet/getchangeaddress",{walletId:e,accountIndex:t})}static async getUtxos(e=void 0,t=void 0){return await this.get("wallet/getutxo",{walletId:e,accountIndex:t})}static async signTx(e,t=!1){const r=await this.get("wallet/getuserwalletsmeta");if(console.log("userWalletsMeta",r),r){const i=await this.openMinaFrontend(`${nr}?unsignedTx=${e}&partialSign=${t}`);if(i instanceof a.Vkeywitnesses){const n=W(e),o=n.witness_set();o.set_vkeys(i);const c=a.Transaction.new(n.body(),o,n.auxiliary_data()).to_hex();return console.log("signedTx",c),c}}else return}}exports.AppWallet=rr;exports.BlockfrostProvider=Js;exports.BrowserWallet=xt;exports.EmbeddedWallet=y;exports.ForgeScript=er;exports.InfuraProvider=js;exports.KoiosProvider=Xs;exports.MinaWallet=or;exports.OgmiosProvider=Zs;exports.TangoProvider=tr;exports.checkSignature=ts;exports.generateNonce=Ws;exports.isNetwork=fe;exports.largestFirst=pe;exports.largestFirstMultiAsset=Ce;exports.resolveDataHash=Ms;exports.resolveEpochNo=Os;exports.resolveFingerprint=Me;exports.resolveLanguageView=Vs;exports.resolveNativeScriptHash=Ys;exports.resolvePaymentKeyHash=X;exports.resolvePlutusScriptAddress=Gs;exports.resolvePlutusScriptHash=Rs;exports.resolvePoolId=Ls;exports.resolvePrivateKey=qs;exports.resolveRewardAddress=bt;exports.resolveScriptRef=$s;exports.resolveSlotNo=zs;exports.resolveStakeKeyHash=st;exports.resolveTxFees=Mt;exports.resolveTxHash=Oe;
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const _e=require("nanoid"),Re=require("@emurgo/cardano-serialization-lib-nodejs"),qe=require("axios"),Nt=require("bip39"),p=require("@emurgo/cardano-message-signing-nodejs"),$e=s=>s&&typeof s=="object"&&"default"in s?s:{default:s};function ze(s){if(s&&s.__esModule)return s;const e=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(s){for(const t in s)if(t!=="default"){const a=Object.getOwnPropertyDescriptor(s,t);Object.defineProperty(e,t,a.get?a:{enumerable:!0,get:()=>s[t]})}}return e.default=s,Object.freeze(e)}const i=ze(Re),J=$e(qe),We=["testnet","preview","preprod","mainnet"],pe=s=>We.includes(s),Ce={mem:7e6,steps:3e9},L={epoch:0,coinsPerUTxOSize:"4310",priceMem:.0577,priceStep:721e-7,minFeeA:44,minFeeB:155381,keyDeposit:"2000000",maxTxSize:16384,maxValSize:"5000",poolDeposit:"500000000",maxCollateralInputs:3,decentralisation:0,maxBlockSize:98304,collateralPercent:150,maxBlockHeaderSize:1100,minPoolCost:"340000000",maxTxExMem:"16000000",maxTxExSteps:"10000000000",maxBlockExMem:"80000000",maxBlockExSteps:"40000000000"},kt=2147483648,mt={V1:i.Language.new_plutus_v1(),V2:i.Language.new_plutus_v2()},P=56,Je={CERT:i.RedeemerTag.new_cert(),MINT:i.RedeemerTag.new_mint(),REWARD:i.RedeemerTag.new_reward(),SPEND:i.RedeemerTag.new_spend()},Et={testnet:["74","1598400","1595967616","432000"],preview:["0","0","1660003200","86400"],preprod:["0","0","1654041600","432000"],mainnet:["208","4492800","1596059091","432000"]},$t={ALONZO:i.TxBuilderConstants.plutus_alonzo_cost_models(),BABBAGE:i.TxBuilderConstants.plutus_vasil_cost_models()},je={ALONZO:{V1:"a141005901d59f1a000302590001011a00060bc719026d00011a000249f01903e800011a000249f018201a0025cea81971f70419744d186419744d186419744d186419744d186419744d186419744d18641864186419744d18641a000249f018201a000249f018201a000249f018201a000249f01903e800011a000249f018201a000249f01903e800081a000242201a00067e2318760001011a000249f01903e800081a000249f01a0001b79818f7011a000249f0192710011a0002155e19052e011903e81a000249f01903e8011a000249f018201a000249f018201a000249f0182001011a000249f0011a000249f0041a000194af18f8011a000194af18f8011a0002377c190556011a0002bdea1901f1011a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000242201a00067e23187600010119f04c192bd200011a000249f018201a000242201a00067e2318760001011a000242201a00067e2318760001011a0025cea81971f704001a000141bb041a000249f019138800011a000249f018201a000302590001011a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a00330da70101ff"},BABBAGE:{V1:"a141005901b69f1a0003236119032c01011903e819023b00011903e8195e7104011903e818201a0001ca761928eb041959d818641959d818641959d818641959d818641959d818641959d81864186418641959d81864194c5118201a0002acfa182019b551041a000363151901ff00011a00015c3518201a000797751936f404021a0002ff941a0006ea7818dc0001011903e8196ff604021a0003bd081a00034ec5183e011a00102e0f19312a011a00032e801901a5011a0002da781903e819cf06011a00013a34182019a8f118201903e818201a00013aac0119e143041903e80a1a00030219189c011a00030219189c011a0003207c1901d9011a000330001901ff0119ccf3182019fd40182019ffd5182019581e18201940b318201a00012adf18201a0002ff941a0006ea7818dc0001011a00010f92192da7000119eabb18201a0002ff941a0006ea7818dc0001011a0002ff941a0006ea7818dc0001011a000c504e197712041a001d6af61a0001425b041a00040c660004001a00014fab18201a0003236119032c010119a0de18201a00033d7618201979f41820197fb8182019a95d1820197df718201995aa18201a009063b91903fd0aff",V2:"a20198af1a0003236119032c01011903e819023b00011903e8195e7104011903e818201a0001ca761928eb041959d818641959d818641959d818641959d818641959d818641959d81864186418641959d81864194c5118201a0002acfa182019b551041a000363151901ff00011a00015c3518201a000797751936f404021a0002ff941a0006ea7818dc0001011903e8196ff604021a0003bd081a00034ec5183e011a00102e0f19312a011a00032e801901a5011a0002da781903e819cf06011a00013a34182019a8f118201903e818201a00013aac0119e143041903e80a1a00030219189c011a00030219189c011a0003207c1901d9011a000330001901ff0119ccf3182019fd40182019ffd5182019581e18201940b318201a00012adf18201a0002ff941a0006ea7818dc0001011a00010f92192da7000119eabb18201a0002ff941a0006ea7818dc0001011a0002ff941a0006ea7818dc0001011a0011b22c1a0005fdde00021a000c504e197712041a001d6af61a0001425b041a00040c660004001a00014fab18201a0003236119032c010119a0de18201a00033d7618201979f41820197fb8182019a95d1820197df718201995aa18201b00000004a817c8001b00000004a817c8001a009063b91903fd0a1b00000004a817c800001b00000004a817c80041005901b69f1a0003236119032c01011903e819023b00011903e8195e7104011903e818201a0001ca761928eb041959d818641959d818641959d818641959d818641959d818641959d81864186418641959d81864194c5118201a0002acfa182019b551041a000363151901ff00011a00015c3518201a000797751936f404021a0002ff941a0006ea7818dc0001011903e8196ff604021a0003bd081a00034ec5183e011a00102e0f19312a011a00032e801901a5011a0002da781903e819cf06011a00013a34182019a8f118201903e818201a00013aac0119e143041903e80a1a00030219189c011a00030219189c011a0003207c1901d9011a000330001901ff0119ccf3182019fd40182019ffd5182019581e18201940b318201a00012adf18201a0002ff941a0006ea7818dc0001011a00010f92192da7000119eabb18201a0002ff941a0006ea7818dc0001011a0002ff941a0006ea7818dc0001011a000c504e197712041a001d6af61a0001425b041a00040c660004001a00014fab18201a0003236119032c010119a0de18201a00033d7618201979f41820197fb8182019a95d1820197df718201995aa18201a009063b91903fd0aff"}},Ft={[i.NetworkInfo.testnet().network_id()]:"8d18d786e92776c824607fd8e193ec535c79dc61ea2405ddf3b09fe3",[i.NetworkInfo.mainnet().network_id()]:"f0ff48bbb7bbe9d59a40f1ce90e9e9d0ff5002ec48f232b49ca0fb9a"},Xe={mainnet:"wss://ogmios-api.mainnet.dandelion.link",preprod:"wss://ogmios-api.iohk-preprod.dandelion.link",preview:"__TBD_SOON_TM__",testnet:"wss://ogmios-api.testnet.dandelion.link"},Ze={LQ:"da8c30857834c6ae7203935b89278c532b3995245295456f993e1d244c51",MIN:"29d222ce763455e3d7a09a665ce554f00ac89d2e99a1a83d267170c64d494e",NTX:"edfd7a1d77bcb8b884c474bdc92a16002d1fb720e454fa6e993444794e5458",iBTC:"f66d78b4a3cb3d37afa0ec36461e51ecbde00f26c8f0a68f94b6988069425443",iETH:"f66d78b4a3cb3d37afa0ec36461e51ecbde00f26c8f0a68f94b6988069455448",iUSD:"f66d78b4a3cb3d37afa0ec36461e51ecbde00f26c8f0a68f94b6988069555344",MILK:"8a1cfae21368b8bebbbed9800fec304e95cce39a2a57dc35e2e3ebaa4d494c4b",AGIX:"f43a62fdc3965df486de8a0d32fe800963589c41b38946602a0dc53541474958",MELD:"6ac8ef33b510ec004fe11585f7c5a9f0c07f0c23428ab4f29c1d7d104d454c44",INDY:"533bb94a8850ee3ccbe483106489399112b74c905342cb1792a797a0494e4459",CLAY:"38ad9dc3aec6a2f38e220142b9aa6ade63ebe71f65e7cc2b7d8a8535434c4159",MCOS:"6f46e1304b16d884c85c62fb0eef35028facdc41aaa0fd319a152ed64d434f53",DING:"ce5b9e0f8a88255b65f2e4d065c6e716e9fa9a8a86dfb86423dd1ac044494e47",GERO:"10a49b996e2402269af553a8a96fb8eb90d79e9eca79e2b4223057b64745524f",NMKR:"5dac8536653edc12f6f5e1045d8164b9f59998d3bdc300fc928434894e4d4b52",PAVIA:"884892bcdc360bcef87d6b3f806e7f9cd5ac30d999d49970e7a903ae5041564941",HOSKY:"a0028f350aaabe0545fdcb56b039bfb08e4bb4d8c4d7c3c7d481c235484f534b59",YUMMI:"078eafce5cd7edafdf63900edef2c1ea759e77f30ca81d6bbdeec92479756d6d69",C3:"8e51398904a5d3fc129fbf4f1589701de23c7824d5c90fdb9490e15a434841524c4933",GIMBAL:"2b0a04a7b60132b1805b296c7fcb3b217ff14413991bf76f72663c3067696d62616c",SUNDAE:"9a9693a9a37912a5097918f97918d15240c92ab729a0b7c4aa144d7753554e444145",GREENS:"4623ab311b7d982d8d26fcbe1a9439ca56661aafcdcd8d8a0ef31fd6475245454e53",GENS:"dda5fdb1002f7389b33e036b6afee82a8189becb6cba852e8b79b4fb0014df1047454e53",SOCIETY:"25f0fc240e91bd95dcdaebd2ba7713fc5168ac77234a3d79449fc20c534f4349455459",DJED:"8db269c3ec630e06ae29f74bc39edd1f87c819f1056206e879a1cd61446a65644d6963726f555344",SHEN:"8db269c3ec630e06ae29f74bc39edd1f87c819f1056206e879a1cd615368656e4d6963726f555344",WMT:"1d7f33bd23d85e1a25d87d86fac4f199c3197a2f7afeb662a0f34e1e776f726c646d6f62696c65746f6b656e",COPI:"b6a7467ea1deb012808ef4e87b5ff371e85f7142d7b356a40d9b42a0436f726e75636f70696173205b76696120436861696e506f72742e696f5d"},zt=["begin","eternl","flint","nami","nufi","gerowallet","typhoncip30"],we=(s,e,t="5000000")=>{const a=i.BigNum.from_str(s.get("lovelace")??"0").checked_add(i.BigNum.from_str(t)),r=e.filter(c=>c.output.amount.filter(A=>A.unit!=="lovelace").some(A=>s.has(A.unit))),n=as(r);return[...n.less_than(a)?rs(a.clamped_sub(n).to_str(),e.filter(c=>!r.map(A=>A.input.txHash).includes(c.input.txHash))):[],...r]},ts=(s,e,t=!1,{maxTxSize:a,minFeeA:r,minFeeB:n}=L)=>{const o=e.filter(d=>me(d)===!1).sort(Pt),c=i.BigNum.from_str(Vt(a,r,n)),A=t?i.BigNum.from_str(s).checked_add(c).to_str():s;return dt(o,new Map([["lovelace",A]]))},ye=(s,e,t=!1,a=L)=>{const r=e.filter(me).sort(Pt),n=ss(a),o=s.get("lovelace")??"0",c=t?i.BigNum.from_str(o).checked_add(n).to_str():o;return s.set("lovelace",c),dt(r,s)},es=(s,e)=>Array.from(e,t=>({unit:t[0],quantity:i.BigNum.from_str(t[1])})).every(t=>s.filter(a=>a.output.amount.find(r=>r.unit===t.unit)!==void 0).reduce((a,r)=>{const n=r.output.amount.reduce((o,c)=>o.checked_add(i.BigNum.from_str(t.unit===c.unit?c.quantity:"0")),i.BigNum.from_str("0"));return a.checked_add(n)},i.BigNum.from_str("0")).less_than(t.quantity)===!1),Pt=(s,e)=>{var r,n;const t=i.BigNum.from_str(((r=s.output.amount.find(o=>o.unit==="lovelace"))==null?void 0:r.quantity)??"0");return i.BigNum.from_str(((n=e.output.amount.find(o=>o.unit==="lovelace"))==null?void 0:n.quantity)??"0").compare(t)},ss=s=>{const{maxTxSize:e,minFeeA:t,minFeeB:a}=s;return i.BigNum.from_str(Vt(e,t,a))},me=s=>s.output.amount.length>1,as=s=>s.reduce((e,t)=>{var r;const a=((r=t.output.amount.find(n=>n.unit==="lovelace"))==null?void 0:r.quantity)??"0";return e.checked_add(i.BigNum.from_str(a))},i.BigNum.from_str("0")),rs=(s,e)=>{const t=e.sort(Pt);return dt(t,new Map([["lovelace",s]]))},dt=(s,e,t=[])=>s.length===0||es(t,e)?t:is(s[0],e)?dt(s.slice(1),e,[...t,s[0]]):dt(s.slice(1),e,t),is=(s,e)=>Array.from(e.keys()).some(t=>s.output.amount.find(a=>a.unit===t)!==void 0),ns=(s,e)=>{const t=As(e),a=us(s,e);return{coseKey:v(t.to_bytes()),coseSign1:v(a.to_bytes())}},os=(s,e,{key:t,signature:a})=>{var o,c;const r=p.COSEKey.from_bytes(g(t)),n=p.COSESign1.from_bytes(g(a));if((s==null?void 0:s.length)>0){const A=v(n.payload()??new Uint8Array);if(Q(s)!==A)return!1}if((e==null?void 0:e.length)>0){const u=(o=n.headers().protected().deserialized_headers().header(p.Label.new_text("address")))==null?void 0:o.as_bytes();if(u===void 0)throw new Error("Couldn't find a signer address in signature");const h=(c=r.header(p.Label.new_int(p.Int.new_negative(p.BigNum.from_str("2")))))==null?void 0:c.as_bytes();if(h===void 0)throw new Error("Couldn't find a signer key in signature");const d=et(v(u)),f=Ps(v(h));if(cs(e,d,f)===!1)throw new Error("Couldn't check signature because of address mismatch");const w=Fs(v(n.signature())),S=n.signed_data().to_bytes();return f.verify(S,w)}return!1},cs=(s,e,t)=>{if(s!==e.to_bech32())return!1;try{return st(s)===t.hash().to_hex()}catch{return!1}},As=s=>{const e=p.COSEKey.new(p.Label.from_key_type(p.KeyType.OKP));return e.set_algorithm_id(p.Label.from_algorithm_id(p.AlgorithmId.EdDSA)),e.set_header(p.Label.new_int(p.Int.new_negative(p.BigNum.from_str("1"))),p.CBORValue.new_int(p.Int.new_i32(6))),e.set_header(p.Label.new_int(p.Int.new_negative(p.BigNum.from_str("2"))),p.CBORValue.new_bytes(s.key.to_public().as_bytes())),e},us=(s,e)=>{const t=p.HeaderMap.new(),a=p.HeaderMap.new();t.set_algorithm_id(p.Label.from_algorithm_id(p.AlgorithmId.EdDSA)),t.set_header(p.Label.new_text("address"),p.CBORValue.new_bytes(e.address.to_bytes()));const r=p.Headers.new(p.ProtectedHeaderMap.new(t),a),n=p.COSESign1Builder.new(r,g(s.payload),!1);s.externalAAD!==void 0&&n.set_external_aad(g(s.externalAAD));const o=n.make_data_to_sign(),c=e.key.sign(o.to_bytes());return n.build(c.to_bytes())};var Wt=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Ee={},b={exports:{}};R.notEqual=hs;R.notOk=ls;R.equal=ds;R.ok=R;var Be=R;function ds(s,e,t){R(s==e,t)}function hs(s,e,t){R(s!=e,t)}function ls(s,e){R(!s,e)}function R(s,e){if(!s)throw new Error(e||"AssertionError")}var T={exports:{}};function Is(s){throw new Error('Could not dynamically require "'+s+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var fs=Ht;Ht.supported=typeof WebAssembly<"u";function Ht(s){if(!Ht.supported)return null;var e=s&&s.imports,t=gs("AGFzbQEAAAABEANgAn9/AGADf39/AGABfwADBQQAAQICBQUBAQroBwdNBQZtZW1vcnkCAAxibGFrZTJiX2luaXQAAA5ibGFrZTJiX3VwZGF0ZQABDWJsYWtlMmJfZmluYWwAAhBibGFrZTJiX2NvbXByZXNzAAMK00AElgMAIABCADcDACAAQQhqQgA3AwAgAEEQakIANwMAIABBGGpCADcDACAAQSBqQgA3AwAgAEEoakIANwMAIABBMGpCADcDACAAQThqQgA3AwAgAEHAAGpCADcDACAAQcgAakIANwMAIABB0ABqQgA3AwAgAEHYAGpCADcDACAAQeAAakIANwMAIABB6ABqQgA3AwAgAEHwAGpCADcDACAAQfgAakIANwMAIABBgAFqQoiS853/zPmE6gBBACkDAIU3AwAgAEGIAWpCu86qptjQ67O7f0EIKQMAhTcDACAAQZABakKr8NP0r+68tzxBECkDAIU3AwAgAEGYAWpC8e30+KWn/aelf0EYKQMAhTcDACAAQaABakLRhZrv+s+Uh9EAQSApAwCFNwMAIABBqAFqQp/Y+dnCkdqCm39BKCkDAIU3AwAgAEGwAWpC6/qG2r+19sEfQTApAwCFNwMAIABBuAFqQvnC+JuRo7Pw2wBBOCkDAIU3AwAgAEHAAWpCADcDACAAQcgBakIANwMAIABB0AFqQgA3AwALbQEDfyAAQcABaiEDIABByAFqIQQgBCkDAKchBQJAA0AgASACRg0BIAVBgAFGBEAgAyADKQMAIAWtfDcDAEEAIQUgABADCyAAIAVqIAEtAAA6AAAgBUEBaiEFIAFBAWohAQwACwsgBCAFrTcDAAtkAQN/IABBwAFqIQEgAEHIAWohAiABIAEpAwAgAikDAHw3AwAgAEHQAWpCfzcDACACKQMApyEDAkADQCADQYABRg0BIAAgA2pBADoAACADQQFqIQMMAAsLIAIgA603AwAgABADC+U7AiB+CX8gAEGAAWohISAAQYgBaiEiIABBkAFqISMgAEGYAWohJCAAQaABaiElIABBqAFqISYgAEGwAWohJyAAQbgBaiEoICEpAwAhASAiKQMAIQIgIykDACEDICQpAwAhBCAlKQMAIQUgJikDACEGICcpAwAhByAoKQMAIQhCiJLznf/M+YTqACEJQrvOqqbY0Ouzu38hCkKr8NP0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"),a=null,r={buffer:t,memory:null,exports:null,realloc:n,onload:o};return o(function(){}),r;function n(A){r.exports.memory.grow(Math.ceil(Math.abs(A-r.memory.length)/65536)),r.memory=new Uint8Array(r.exports.memory.buffer)}function o(A){if(r.exports)return A();if(a){a.then(A.bind(null,null)).catch(A);return}try{if(s&&s.async)throw new Error("async");c({instance:new WebAssembly.Instance(new WebAssembly.Module(t),e)})}catch{a=WebAssembly.instantiate(t,e).then(c)}o(A)}function c(A){r.exports=A.instance.exports,r.memory=r.exports.memory&&r.exports.memory.buffer&&new Uint8Array(r.exports.memory.buffer)}}function gs(s){return typeof atob=="function"?new Uint8Array(atob(s).split("").map(_s)):new(Is("buffer")).Buffer(s,"base64")}function _s(s){return s.charCodeAt(0)}var U=Be,C=fs(),V=64,Ct=[];T.exports=D;var Jt=T.exports.BYTES_MIN=16,jt=T.exports.BYTES_MAX=64;T.exports.BYTES=32;var Xt=T.exports.KEYBYTES_MIN=16,Zt=T.exports.KEYBYTES_MAX=64;T.exports.KEYBYTES=32;var te=T.exports.SALTBYTES=16,ee=T.exports.PERSONALBYTES=16;function D(s,e,t,a,r){if(!(this instanceof D))return new D(s,e,t,a,r);if(!(C&&C.exports))throw new Error("WASM not loaded. Wait for Blake2b.ready(cb)");s||(s=32),r!==!0&&(U(s>=Jt,"digestLength must be at least "+Jt+", was given "+s),U(s<=jt,"digestLength must be at most "+jt+", was given "+s),e!=null&&U(e.length>=Xt,"key must be at least "+Xt+", was given "+e.length),e!=null&&U(e.length<=Zt,"key must be at least "+Zt+", was given "+e.length),t!=null&&U(t.length===te,"salt must be exactly "+te+", was given "+t.length),a!=null&&U(a.length===ee,"personal must be exactly "+ee+", was given "+a.length)),Ct.length||(Ct.push(V),V+=216),this.digestLength=s,this.finalized=!1,this.pointer=Ct.pop(),C.memory.fill(0,0,64),C.memory[0]=this.digestLength,C.memory[1]=e?e.length:0,C.memory[2]=1,C.memory[3]=1,t&&C.memory.set(t,32),a&&C.memory.set(a,48),this.pointer+216>C.memory.length&&C.realloc(this.pointer+216),C.exports.blake2b_init(this.pointer,this.digestLength),e&&(this.update(e),C.memory.fill(0,V,V+e.length),C.memory[this.pointer+200]=128)}D.prototype.update=function(s){return U(this.finalized===!1,"Hash instance finalized"),U(s,"input must be TypedArray or Buffer"),V+s.length>C.memory.length&&C.realloc(V+s.length),C.memory.set(s,V),C.exports.blake2b_update(this.pointer,V,V+s.length),this};D.prototype.digest=function(s){if(U(this.finalized===!1,"Hash instance finalized"),this.finalized=!0,Ct.push(this.pointer),C.exports.blake2b_final(this.pointer),!s||s==="binary")return C.memory.slice(this.pointer+128,this.pointer+128+this.digestLength);if(s==="hex")return Cs(C.memory,this.pointer+128,this.digestLength);U(s.length>=this.digestLength,"input must be TypedArray or Buffer");for(var e=0;e<this.digestLength;e++)s[e]=C.memory[this.pointer+128+e];return s};D.prototype.final=D.prototype.digest;D.WASM=C&&C.buffer;D.SUPPORTED=typeof WebAssembly<"u";D.ready=function(s){if(s||(s=ps),!C)return s(new Error("WebAssembly not supported"));var e=new Promise(function(t,a){C.onload(function(r){r?a():t(),s(r)})});return e};D.prototype.ready=D.ready;function ps(){}function Cs(s,e,t){for(var a="",r=0;r<t;r++)a+=ws(s[e+r]);return a}function ws(s){return s<16?"0"+s.toString(16):s.toString(16)}var W=Be,ht=T.exports;function ft(s,e,t){var a=s[e]+s[t],r=s[e+1]+s[t+1];a>=4294967296&&r++,s[e]=a,s[e+1]=r}function se(s,e,t,a){var r=s[e]+t;t<0&&(r+=4294967296);var n=s[e+1]+a;r>=4294967296&&n++,s[e]=r,s[e+1]=n}function xe(s,e){return s[e]^s[e+1]<<8^s[e+2]<<16^s[e+3]<<24}function $(s,e,t,a,r,n){var o=At[r],c=At[r+1],A=At[n],u=At[n+1];ft(I,s,e),se(I,s,o,c);var h=I[a]^I[s],d=I[a+1]^I[s+1];I[a]=d,I[a+1]=h,ft(I,t,a),h=I[e]^I[t],d=I[e+1]^I[t+1],I[e]=h>>>24^d<<8,I[e+1]=d>>>24^h<<8,ft(I,s,e),se(I,s,A,u),h=I[a]^I[s],d=I[a+1]^I[s+1],I[a]=h>>>16^d<<16,I[a+1]=d>>>16^h<<16,ft(I,t,a),h=I[e]^I[t],d=I[e+1]^I[t+1],I[e]=d>>>31^h<<1,I[e+1]=h>>>31^d<<1}var Se=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),ys=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3],B=new Uint8Array(ys.map(function(s){return s*2})),I=new Uint32Array(32),At=new Uint32Array(32);function Qe(s,e){var t=0;for(t=0;t<16;t++)I[t]=s.h[t],I[t+16]=Se[t];for(I[24]=I[24]^s.t,I[25]=I[25]^s.t/4294967296,e&&(I[28]=~I[28],I[29]=~I[29]),t=0;t<32;t++)At[t]=xe(s.b,4*t);for(t=0;t<12;t++)$(0,8,16,24,B[t*16+0],B[t*16+1]),$(2,10,18,26,B[t*16+2],B[t*16+3]),$(4,12,20,28,B[t*16+4],B[t*16+5]),$(6,14,22,30,B[t*16+6],B[t*16+7]),$(0,10,20,30,B[t*16+8],B[t*16+9]),$(2,12,22,24,B[t*16+10],B[t*16+11]),$(4,14,16,26,B[t*16+12],B[t*16+13]),$(6,8,18,28,B[t*16+14],B[t*16+15]);for(t=0;t<16;t++)s.h[t]=s.h[t]^I[t]^I[t+16]}var z=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function rt(s,e,t,a){z.fill(0),this.b=new Uint8Array(128),this.h=new Uint32Array(16),this.t=0,this.c=0,this.outlen=s,z[0]=s,e&&(z[1]=e.length),z[2]=1,z[3]=1,t&&z.set(t,32),a&&z.set(a,48);for(var r=0;r<16;r++)this.h[r]=Se[r]^xe(z,r*4);e&&(be(this,e),this.c=128)}rt.prototype.update=function(s){return W(s!=null,"input must be Uint8Array or Buffer"),be(this,s),this};rt.prototype.digest=function(s){var e=!s||s==="binary"||s==="hex"?new Uint8Array(this.outlen):s;return W(e.length>=this.outlen,"out must have at least outlen bytes of space"),ms(this,e),s==="hex"?Es(e):e};rt.prototype.final=rt.prototype.digest;rt.ready=function(s){ht.ready(function(){s()})};function be(s,e){for(var t=0;t<e.length;t++)s.c===128&&(s.t+=s.c,Qe(s,!1),s.c=0),s.b[s.c++]=e[t]}function ms(s,e){for(s.t+=s.c;s.c<128;)s.b[s.c++]=0;Qe(s,!0);for(var t=0;t<s.outlen;t++)e[t]=s.h[t>>2]>>8*(t&3);return e}function Es(s){for(var e="",t=0;t<s.length;t++)e+=Bs(s[t]);return e}function Bs(s){return s<16?"0"+s.toString(16):s.toString(16)}var ve=rt;b.exports=function(e,t,a,r,n){return n!==!0&&(W(e>=ae,"outlen must be at least "+ae+", was given "+e),W(e<=re,"outlen must be at most "+re+", was given "+e),t!=null&&W(t.length>=ie,"key must be at least "+ie+", was given "+t.length),t!=null&&W(t.length<=ne,"key must be at most "+ne+", was given "+t.length),a!=null&&W(a.length===oe,"salt must be exactly "+oe+", was given "+a.length),r!=null&&W(r.length===ce,"personal must be exactly "+ce+", was given "+r.length)),new ve(e,t,a,r)};b.exports.ready=function(s){ht.ready(function(){s()})};b.exports.WASM_SUPPORTED=ht.SUPPORTED;b.exports.WASM_LOADED=!1;var ae=b.exports.BYTES_MIN=16,re=b.exports.BYTES_MAX=64;b.exports.BYTES=32;var ie=b.exports.KEYBYTES_MIN=16,ne=b.exports.KEYBYTES_MAX=64;b.exports.KEYBYTES=32;var oe=b.exports.SALTBYTES=16,ce=b.exports.PERSONALBYTES=16;ht.ready(function(s){s||(b.exports.WASM_LOADED=!0,ve=ht)});var it={};Object.defineProperty(it,"__esModule",{value:!0});it.bech32m=it.bech32=void 0;const Bt="qpzry9x8gf2tvdw0s3jn54khce6mua7l",De={};for(let s=0;s<Bt.length;s++){const e=Bt.charAt(s);De[e]=s}function at(s){const e=s>>25;return(s&33554431)<<5^-(e>>0&1)&996825010^-(e>>1&1)&642813549^-(e>>2&1)&513874426^-(e>>3&1)&1027748829^-(e>>4&1)&705979059}function Ae(s){let e=1;for(let t=0;t<s.length;++t){const a=s.charCodeAt(t);if(a<33||a>126)return"Invalid prefix ("+s+")";e=at(e)^a>>5}e=at(e);for(let t=0;t<s.length;++t){const a=s.charCodeAt(t);e=at(e)^a&31}return e}function Tt(s,e,t,a){let r=0,n=0;const o=(1<<t)-1,c=[];for(let A=0;A<s.length;++A)for(r=r<<e|s[A],n+=e;n>=t;)n-=t,c.push(r>>n&o);if(a)n>0&&c.push(r<<t-n&o);else{if(n>=e)return"Excess padding";if(r<<t-n&o)return"Non-zero padding"}return c}function xs(s){return Tt(s,8,5,!0)}function Ss(s){const e=Tt(s,5,8,!1);if(Array.isArray(e))return e}function Qs(s){const e=Tt(s,5,8,!1);if(Array.isArray(e))return e;throw new Error(e)}function ke(s){let e;s==="bech32"?e=1:e=734539939;function t(o,c,A){if(A=A||90,o.length+7+c.length>A)throw new TypeError("Exceeds length limit");o=o.toLowerCase();let u=Ae(o);if(typeof u=="string")throw new Error(u);let h=o+"1";for(let d=0;d<c.length;++d){const f=c[d];if(f>>5!==0)throw new Error("Non 5-bit word");u=at(u)^f,h+=Bt.charAt(f)}for(let d=0;d<6;++d)u=at(u);u^=e;for(let d=0;d<6;++d){const f=u>>(5-d)*5&31;h+=Bt.charAt(f)}return h}function a(o,c){if(c=c||90,o.length<8)return o+" too short";if(o.length>c)return"Exceeds length limit";const A=o.toLowerCase(),u=o.toUpperCase();if(o!==A&&o!==u)return"Mixed-case string "+o;o=A;const h=o.lastIndexOf("1");if(h===-1)return"No separator character for "+o;if(h===0)return"Missing prefix for "+o;const d=o.slice(0,h),f=o.slice(h+1);if(f.length<6)return"Data too short";let w=Ae(d);if(typeof w=="string")return w;const S=[];for(let M=0;M<f.length;++M){const q=f.charAt(M),_=De[q];if(_===void 0)return"Unknown character "+q;w=at(w)^_,!(M+6>=f.length)&&S.push(_)}return w!==e?"Invalid checksum for "+o:{prefix:d,words:S}}function r(o,c){const A=a(o,c);if(typeof A=="object")return A}function n(o,c){const A=a(o,c);if(typeof A=="object")return A;throw new Error(A)}return{decodeUnsafe:r,decode:n,encode:t,toWords:xs,fromWordsUnsafe:Ss,fromWords:Qs}}it.bech32=ke("bech32");it.bech32m=ke("bech32m");var bs=Wt&&Wt.__importDefault||function(s){return s&&s.__esModule?s:{default:s}};Object.defineProperty(Ee,"__esModule",{value:!0});const vs=bs(b.exports),gt=it,Kt="asset";class ut{constructor(e){this.hashBuf=e}static fromHash(e){return new ut(e)}static fromParts(e,t){const a=(0,vs.default)(20).update(new Uint8Array([...e,...t])).digest("binary");return ut.fromHash(a)}static fromBech32(e){const{prefix:t,words:a}=gt.bech32.decode(e);if(t!==Kt)throw new Error("Invalid asset fingerprint");const r=Buffer.from(gt.bech32.fromWords(a));return ut.fromHash(r)}fingerprint(){const e=gt.bech32.toWords(this.hashBuf);return gt.bech32.encode(Kt,e)}hash(){return Buffer.from(this.hashBuf).toString("hex")}prefix(){return Kt}checksum(){return this.fingerprint().slice(-6)}}var Ds=Ee.default=ut;const ks=Ds,Ks=(s,e)=>{const t=Ns(s),a=t.derive(kt+1852).derive(kt+1815).derive(kt+e),r=a.derive(0).derive(0).to_raw_key(),n=a.derive(2).derive(0).to_raw_key();return a.free(),t.free(),{paymentKey:r,stakeKey:n}},et=s=>i.Address.from_bytes(g(s)),Ns=s=>i.Bip32PrivateKey.from_bytes(g(s)),Us=s=>i.DataHash.from_bytes(g(s)),F=s=>i.Ed25519KeyHash.from_bytes(g(s)),Fs=s=>i.Ed25519Signature.from_bytes(g(s)),Qt=s=>i.NativeScript.from_bytes(g(s)),Ps=s=>i.PublicKey.from_bytes(g(s)),Ke=s=>i.PlutusData.from_bytes(g(s)),nt=(s,e)=>i.PlutusScript.from_bytes_with_version(g(s),mt[e]),Hs=s=>i.ScriptRef.from_bytes(g(s)),Ts=s=>i.ScriptHash.from_bytes(g(s)),G=s=>i.Transaction.from_bytes(g(s)),Ne=s=>i.TransactionHash.from_bytes(g(s)),ue=s=>i.TransactionUnspentOutput.from_bytes(g(s)),Ms=s=>i.TransactionWitnessSet.from_bytes(g(s)),Os=s=>i.Value.from_bytes(g(s)),H=s=>i.Address.from_bech32(s),Mt=s=>i.BaseAddress.from_address(H(s)),Ue=s=>i.EnterpriseAddress.from_address(H(s)),Fe=s=>i.RewardAddress.from_address(H(s)),v=s=>Buffer.from(s).toString("hex"),g=s=>s.length%2===0&&/^[0-9A-F]*$/i.test(s)?Buffer.from(s,"hex"):Buffer.from(s,"utf-8"),bt=s=>{const e=t=>{const a=new Array;for(let r=0;r<t.len();r+=1)a.push(bt(t.get(r)));return a};switch(s.kind()){case i.NativeScriptKind.ScriptAll:{const t=s.as_script_all();return{type:"all",scripts:e(t.native_scripts())}}case i.NativeScriptKind.ScriptAny:{const t=s.as_script_any();return{type:"any",scripts:e(t.native_scripts())}}case i.NativeScriptKind.ScriptNOfK:{const t=s.as_script_n_of_k();return{type:"atLeast",required:t.n(),scripts:e(t.native_scripts())}}case i.NativeScriptKind.TimelockStart:{const t=s.as_timelock_start();return{type:"after",slot:t.slot_bignum().to_str()}}case i.NativeScriptKind.TimelockExpiry:{const t=s.as_timelock_expiry();return{type:"before",slot:t.slot_bignum().to_str()}}case i.NativeScriptKind.ScriptPubkey:{const t=s.as_script_pubkey();return{type:"sig",keyHash:t.addr_keyhash().to_hex()}}default:throw new Error(`Script Kind: ${s.kind()}, is not supported`)}},vt=s=>{const e=t=>{const a=i.NativeScripts.new();return t.forEach(r=>{a.add(vt(r))}),a};switch(s.type){case"all":return i.NativeScript.new_script_all(i.ScriptAll.new(e(s.scripts)));case"any":return i.NativeScript.new_script_any(i.ScriptAny.new(e(s.scripts)));case"atLeast":return i.NativeScript.new_script_n_of_k(i.ScriptNOfK.new(s.required,e(s.scripts)));case"after":return i.NativeScript.new_timelock_start(i.TimelockStart.new_timelockstart(i.BigNum.from_str(s.slot)));case"before":return i.NativeScript.new_timelock_expiry(i.TimelockExpiry.new_timelockexpiry(i.BigNum.from_str(s.slot)));case"sig":return i.NativeScript.new_script_pubkey(i.ScriptPubkey.new(F(s.keyHash)))}},wt=s=>{var a,r,n;const e=o=>{const c=[];for(let A=0;A<o.len();A+=1)c.push(wt(o.get(A)));return c},t=o=>{const c=new Map;for(let A=0;A<o.len();A+=1){const u=o.keys().get(A),h=o.get(u)??i.PlutusData.from_hex(Q("NO_ITEM_FOUND_INSIDE_GOLD_ROOM"));c.set(wt(u),wt(h))}return c};switch(s.kind()){case i.PlutusDataKind.Bytes:return v(s.as_bytes()??new Uint8Array);case i.PlutusDataKind.Integer:return parseInt(((a=s.as_integer())==null?void 0:a.to_str())??"0",10);case i.PlutusDataKind.List:return e(s.as_list()??i.PlutusList.new());case i.PlutusDataKind.Map:return t(s.as_map()??i.PlutusMap.new());case i.PlutusDataKind.ConstrPlutusData:return{alternative:parseInt(((r=s.as_constr_plutus_data())==null?void 0:r.alternative().to_str())??"0",10),fields:e(((n=s.as_constr_plutus_data())==null?void 0:n.data())??i.PlutusList.new())};default:throw new Error(`PlutusData Kind: ${s.kind()}, is not supported`)}},Z=s=>{const e=t=>{const a=i.PlutusList.new();return t.forEach(r=>{a.add(Z(r))}),a};switch(typeof s){case"string":return i.PlutusData.new_bytes(g(s));case"number":return i.PlutusData.new_integer(i.BigInt.from_str(s.toString()));case"object":if(s instanceof Array){const t=e(s);return i.PlutusData.new_list(t)}else if(s instanceof Map){const t=i.PlutusMap.new();return s.forEach((a,r)=>{t.insert(Z(r),Z(a))}),i.PlutusData.new_map(t)}else return i.PlutusData.new_constr_plutus_data(i.ConstrPlutusData.new(i.BigNum.from_str(s.alternative.toString()),e(s.fields)))}},Vs=s=>{const e=i.Relays.new();throw s.relays.forEach(t=>{e.add(Ys(t))}),new Error("toPoolParams not implemented.")},Pe=s=>{const e=t=>Je[t];return i.Redeemer.new(e(s.tag),i.BigNum.from_str(s.index.toString()),Z(s.data),i.ExUnits.new(i.BigNum.from_str(s.budget.mem.toString()),i.BigNum.from_str(s.budget.steps.toString())))},Ys=s=>{switch(s.type){case"SingleHostAddr":{const e=s.IPV4?i.Ipv4.new(new Uint8Array(s.IPV4.split(".").map(a=>parseInt(a)))):void 0,t=s.IPV6?i.Ipv6.new(g(s.IPV6.replaceAll(":",""))):void 0;return i.Relay.new_single_host_addr(i.SingleHostAddr.new(s.port,e,t))}case"SingleHostName":return i.Relay.new_single_host_name(i.SingleHostName.new(s.port,i.DNSRecordAorAAAA.new(s.domainName)));case"MultiHostName":return i.Relay.new_multi_host_name(i.MultiHostName.new(i.DNSRecordSRV.new(s.domainName)))}},He=s=>{if(s.is_plutus_script()){const t=s.plutus_script();return{code:t.to_hex(),version:Object.keys(mt).find(a=>mt[a].to_hex()===t.language_version().to_hex())}}const e=s.native_script();return bt(e)},lt=s=>{if("code"in s){const e=nt(s.code,s.version);return i.ScriptRef.new_plutus_script(e)}return i.ScriptRef.new_native_script(vt(s))},xt=s=>{var r,n,o;const e=s.output().has_data_hash()?(r=s.output().data_hash())==null?void 0:r.to_hex():void 0,t=s.output().has_plutus_data()?(n=s.output().plutus_data())==null?void 0:n.to_hex():void 0,a=s.output().has_script_ref()?(o=s.output().script_ref())==null?void 0:o.to_hex():void 0;return{input:{outputIndex:s.input().index(),txHash:s.input().transaction_id().to_hex()},output:{address:s.output().address().to_bech32(),amount:Te(s.output().amount()),dataHash:e,plutusData:t,scriptRef:a}}},Y=s=>{const e=i.TransactionInput.new(Ne(s.input.txHash),s.input.outputIndex),t=i.TransactionOutput.new(H(s.output.address),yt(s.output.amount));return s.output.dataHash!==void 0&&t.set_data_hash(Us(s.output.dataHash)),s.output.plutusData!==void 0&&t.set_plutus_data(Ke(s.output.plutusData)),s.output.scriptRef!==void 0&&t.set_script_ref(Hs(s.output.scriptRef)),i.TransactionUnspentOutput.new(e,t)},de=s=>{const e=s.split(".")[1]??"0",t=`${parseInt(e,10)}`,a="1"+"0".repeat(e.length);return i.UnitInterval.new(i.BigNum.from_str(t),i.BigNum.from_str(a))},Q=s=>s.length%2===0&&/^[0-9A-F]*$/i.test(s)?s:v(Buffer.from(s,"utf-8")),Ot=s=>Buffer.from(s,"hex").toString("utf-8"),Te=s=>{const e=[{unit:"lovelace",quantity:s.coin().to_str()}],t=s.multiasset();if(t!==void 0){const a=t.keys();for(let r=0;r<a.len();r+=1){const n=a.get(r),o=t.get(n);if(o!==void 0){const c=o.keys();for(let A=0;A<c.len();A+=1){const u=c.get(A),h=o.get(u)??i.BigNum.from_str("0"),d=n.to_hex()+v(u.name());e.push({unit:d,quantity:h.to_str()})}}}}return e},yt=s=>{const e=s.find(n=>n.unit==="lovelace"),t=Array.from(new Set(s.filter(n=>n.unit!=="lovelace").map(n=>n.unit.slice(0,P)))),a=i.MultiAsset.new();t.forEach(n=>{const o=i.Assets.new();s.filter(c=>c.unit.slice(0,P)===n).forEach(c=>{o.insert(i.AssetName.new(g(c.unit.slice(P))),i.BigNum.from_str(c.quantity))}),a.insert(Ts(n),o)});const r=i.Value.new(i.BigNum.from_str(e?e.quantity:"0"));return(s.length>1||!e)&&r.set_multiasset(a),r},he=(s,e,t)=>i.BaseAddress.new(s,i.StakeCredential.from_keyhash(e),i.StakeCredential.from_keyhash(t)),Me=(s,e="")=>i.Bip32PrivateKey.from_bip39_entropy(g(s),g(Q(e))),le=s=>i.DataCost.new_coins_per_byte(i.BigNum.from_str(s)),Gs=s=>{if(typeof s!="object"||!("input"in s))return i.DatumSource.new(Z(s));const e=Y(s);if(e.output().has_plutus_data())return i.DatumSource.new_ref_input(e.input());throw new Error(`No inline datum found in UTxO: ${e.input().transaction_id().to_hex()}`)},Ie=(s,e)=>i.EnterpriseAddress.new(s,i.StakeCredential.from_keyhash(e)),fe=(s,e)=>{if(typeof s=="string")return i.MintWitness.new_native_script(Qt(s));if(e===void 0)throw new Error("Minting with plutus requires a redeemer to be defined");if(e.tag!=="MINT")throw new Error("Minting redeemer's tag must be defined as 'MINT'");return i.MintWitness.new_plutus_script(Oe(s),Pe({tag:"MINT",index:0,budget:Ce,data:{alternative:0,fields:[]},...e}))},Ut=(s,e)=>i.RewardAddress.new(s,i.StakeCredential.from_keyhash(e)),Oe=s=>{if("code"in s)return i.PlutusScriptSource.new(nt(s.code,s.version));const e=Y(s);if(e.output().has_script_ref()){const t=e.output().script_ref();if(t.is_plutus_script()){const a=He(t),r=nt(a.code,a.version).hash();return i.PlutusScriptSource.new_ref_input_with_lang_ver(r,e.input(),mt[a.version])}}throw new Error(`No plutus script reference found in UTxO: ${e.input().transaction_id().to_hex()}`)},_t=s=>{const e=i.ScriptPubkey.new(s);return i.NativeScript.new_script_pubkey(e)},Ls=(s=L)=>{const e=i.TransactionBuilderConfigBuilder.new().coins_per_utxo_byte(i.BigNum.from_str(s.coinsPerUTxOSize)).ex_unit_prices(i.ExUnitPrices.new(de(s.priceMem.toString()),de(s.priceStep.toString()))).fee_algo(i.LinearFee.new(i.BigNum.from_str(s.minFeeA.toString()),i.BigNum.from_str(s.minFeeB.toString()))).key_deposit(i.BigNum.from_str(s.keyDeposit)).max_tx_size(s.maxTxSize).max_value_size(parseInt(s.maxValSize,10)).pool_deposit(i.BigNum.from_str(s.poolDeposit)).build();return i.TransactionBuilder.new(e)},ge=s=>{const e=i.TxInputsBuilder.new();return s.map(t=>t instanceof i.TransactionUnspentOutput?t:Y(t)).forEach(t=>{e.add_input(t.output().address(),t.input(),t.output().amount())}),e},pt=s=>{if(typeof s=="string")return i.TransactionOutputBuilder.new().with_address(H(s));let e=i.TransactionOutputBuilder.new().with_address(H(s.address));if(s.datum){const{value:t,inline:a}=s.datum,r=Z(t);e=e.with_data_hash(i.hash_plutus_data(r)),a&&(e=e.with_plutus_data(r))}if(s.script){const t=lt(s.script);e=e.with_script_ref(t)}return e},ot=s=>{const e=s.slice(0,P),t=s.includes(".")?Q(s.split(".")[1]):s.slice(P);return{policyId:e,assetName:t}},l=s=>J.default.isAxiosError(s)?s.response?JSON.stringify({data:s.response.data,headers:s.response.headers,status:s.response.status}):s.request?JSON.stringify(s.request):s.message:JSON.stringify(s),Rs=s=>{const e=Z(s);return i.hash_plutus_data(e).to_hex()},qs=(s,e=Date.now())=>{if(Et[s]){const[t,a,r,n]=Et[s];return parseInt(i.BigNum.from_str(e.toString()).div_floor(i.BigNum.from_str("1000")).checked_sub(i.BigNum.from_str(r)).div_floor(i.BigNum.from_str(n)).checked_add(i.BigNum.from_str(t)).to_str(),10)}throw new Error(`Couldn't resolve EpochNo for network: ${s}`)},Ve=(s,e)=>ks.fromParts(g(s),g(e)).fingerprint(),$s=(s,e)=>je[s][e],zs=s=>vt(s).hash().to_hex(),X=s=>{var e,t;try{const a=[(e=Mt(s))==null?void 0:e.payment_cred().to_keyhash(),(t=Ue(s))==null?void 0:t.payment_cred().to_keyhash()].find(r=>r!==void 0);if(a!==void 0)return a.to_hex();throw new Error(`Couldn't resolve payment key hash from address: ${s}`)}catch(a){throw new Error(`An error occurred during resolvePaymentKeyHash: ${a}.`)}},Ws=(s,e=0)=>{const t=nt(s.code,s.version);return i.EnterpriseAddress.new(e,i.StakeCredential.from_scripthash(t.hash())).to_address().to_bech32()},Js=s=>{try{const e=Ue(s),t=e==null?void 0:e.payment_cred().to_scripthash();if(t!==void 0)return t.to_hex();throw new Error(`Couldn't resolve script hash from address: ${s}`)}catch(e){throw new Error(`An error occurred during resolveScriptHash: ${e}.`)}},js=s=>i.Ed25519KeyHash.from_hex(s).to_bech32("pool1"),Xs=s=>{const e=Nt.mnemonicToEntropy(s.join(" ")),t=Me(e),a=t.to_bech32();return t.free(),a},Zs=s=>lt(s).to_hex(),ta=(s,e=Date.now())=>{if(Et[s]){const[t,a,r]=Et[s];return i.BigNum.from_str(e.toString()).div_floor(i.BigNum.from_str("1000")).checked_sub(i.BigNum.from_str(r)).checked_add(i.BigNum.from_str(a)).to_str()}throw new Error(`Couldn't resolve SlotNo for network: ${s}`)},Dt=s=>{try{const e=H(s),t=Mt(s),a=t==null?void 0:t.stake_cred().to_keyhash();if(a!==void 0)return Ut(e.network_id(),a).to_address().to_bech32();throw new Error(`Couldn't resolve reward address from address: ${s}`)}catch(e){throw new Error(`An error occurred during resolveRewardAddress: ${e}.`)}},st=s=>{var e,t;try{const a=[(e=Mt(s))==null?void 0:e.stake_cred().to_keyhash(),(t=Fe(s))==null?void 0:t.payment_cred().to_keyhash()].find(r=>r!==void 0);if(a!==void 0)return a.to_hex();throw new Error(`Couldn't resolve stake key hash from address: ${s}`)}catch(a){throw new Error(`An error occurred during resolveStakeKeyHash: ${a}.`)}},Vt=(s,e=L.minFeeA,t=L.minFeeB)=>(BigInt(e)*BigInt(s)+BigInt(t)).toString(),Ye=s=>{const e=G(s).body();return i.hash_transaction(e).to_hex()},ea=(s="",e=32)=>{if(e<=0||e>2048)throw new Error("Length must be bewteen 1 and 2048");const a=_e.customAlphabet("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789")(e);return Q(`${s}${a}`)},Ge=(s,e)=>{const t=s.vkeys();if(t!==void 0){const a=new Set;for(let n=0;n<t.len();n+=1)a.add(t.get(n).to_hex());for(let n=0;n<e.len();n+=1)a.add(e.get(n).to_hex());const r=i.Vkeywitnesses.new();return a.forEach(n=>{r.add(i.Vkeywitness.from_hex(n))}),r}return e},sa=s=>wt(Ke(s)),aa=s=>G(s).to_js_value();class ra{_axiosInstance;constructor(...e){if(typeof e[0]=="string"&&e[0].startsWith("http"))this._axiosInstance=J.default.create({baseURL:e[0]});else{const t=e[0],a=t.slice(0,7);this._axiosInstance=J.default.create({baseURL:`https://cardano-${a}.blockfrost.io/api/v${e[1]??0}`,headers:{project_id:t}})}}async fetchAccountInfo(e){const t=e.startsWith("addr")?Dt(e):e;try{const{data:a,status:r}=await this._axiosInstance.get(`accounts/${t}`);if(r===200)return{poolId:a.pool_id,active:a.active||a.active_epoch!==null,balance:a.controlled_amount,rewards:a.withdrawable_amount,withdrawals:a.withdrawals_sum};throw l(a)}catch(a){throw l(a)}}async fetchAddressUTxOs(e,t){const a=t!==void 0?`/${t}`:"",r=`addresses/${e}/utxos`+a,n=async(A=1,u=[])=>{const{data:h,status:d}=await this._axiosInstance.get(`${r}?page=${A}`);if(d===200)return h.length>0?n(A+1,[...u,...await Promise.all(h.map(c))]):u;throw l(h)},o=async A=>{if(A){const{data:u,status:h}=await this._axiosInstance.get(`scripts/${A}`);if(h===200){const d=u.type.startsWith("plutus")?{code:await this.fetchPlutusScriptCBOR(A),version:u.type.replace("plutus","")}:await this.fetchNativeScriptJSON(A);return lt(d).to_hex()}throw l(u)}},c=async A=>({input:{outputIndex:A.output_index,txHash:A.tx_hash},output:{address:e,amount:A.amount,dataHash:A.data_hash??void 0,plutusData:A.inline_datum??void 0,scriptRef:await o(A.reference_script_hash)}});try{return await n()}catch{return[]}}async fetchAssetAddresses(e){const t=async(a=1,r=[])=>{const{policyId:n,assetName:o}=ot(e),{data:c,status:A}=await this._axiosInstance.get(`assets/${n}${o}/addresses?page=${a}`);if(A===200)return c.length>0?t(a+1,[...r,...c]):r;throw l(c)};try{return await t()}catch{return[]}}async fetchAssetMetadata(e){try{const{policyId:t,assetName:a}=ot(e),{data:r,status:n}=await this._axiosInstance.get(`assets/${t}${a}`);if(n===200)return{...r.onchain_metadata};throw l(r)}catch(t){throw l(t)}}async fetchBlockInfo(e){try{const{data:t,status:a}=await this._axiosInstance.get(`blocks/${e}`);if(a===200)return{confirmations:t.confirmations,epoch:t.epoch,epochSlot:t.epoch_slot.toString(),fees:t.fees,hash:t.hash,nextBlock:t.next_block??"",operationalCertificate:t.op_cert,output:t.output??"0",previousBlock:t.previous_block,size:t.size,slot:t.slot.toString(),slotLeader:t.slot_leader??"",time:t.time,txCount:t.tx_count,VRFKey:t.block_vrf};throw l(t)}catch(t){throw l(t)}}async fetchCollectionAssets(e,t=1){try{const{data:a,status:r}=await this._axiosInstance.get(`assets/policy/${e}?page=${t}`);if(r===200)return{assets:a.map(n=>({unit:n.asset,quantity:n.quantity})),next:a.length===100?t+1:null};throw l(a)}catch{return{assets:[],next:null}}}async fetchHandleAddress(e){try{const t=Q(e.replace("$","")),{data:a,status:r}=await this._axiosInstance.get(`assets/${Ft[1]}${t}/addresses`);if(r===200)return a[0].address;throw l(a)}catch(t){throw l(t)}}async fetchProtocolParameters(e=Number.NaN){try{const{data:t,status:a}=await this._axiosInstance.get(`epochs/${isNaN(e)?"latest":e}/parameters`);if(a===200)return{coinsPerUTxOSize:t.coins_per_utxo_word,collateralPercent:t.collateral_percent,decentralisation:t.decentralisation_param,epoch:t.epoch,keyDeposit:t.key_deposit,maxBlockExMem:t.max_block_ex_mem,maxBlockExSteps:t.max_block_ex_steps,maxBlockHeaderSize:t.max_block_header_size,maxBlockSize:t.max_block_size,maxCollateralInputs:t.max_collateral_inputs,maxTxExMem:t.max_tx_ex_mem,maxTxExSteps:t.max_tx_ex_steps,maxTxSize:t.max_tx_size,maxValSize:t.max_val_size,minFeeA:t.min_fee_a,minFeeB:t.min_fee_b,minPoolCost:t.min_pool_cost,poolDeposit:t.pool_deposit,priceMem:t.price_mem,priceStep:t.price_step};throw l(t)}catch(t){throw l(t)}}async fetchTxInfo(e){try{const{data:t,status:a}=await this._axiosInstance.get(`txs/${e}`);if(a===200)return{block:t.block,deposit:t.deposit,fees:t.fees,hash:t.hash,index:t.index,invalidAfter:t.invalid_hereafter??"",invalidBefore:t.invalid_before??"",slot:t.slot.toString(),size:t.size};throw l(t)}catch(t){throw l(t)}}onTxConfirmed(e,t,a=20){let r=0;const n=setInterval(()=>{r>=a&&clearInterval(n),this.fetchTxInfo(e).then(o=>{this.fetchBlockInfo(o.block).then(c=>{(c==null?void 0:c.confirmations)>0&&(clearInterval(n),t())}).catch(()=>{r+=1})}).catch(()=>{r+=1})},5e3)}async submitTx(e){try{const t={"Content-Type":"application/cbor"},{data:a,status:r}=await this._axiosInstance.post("tx/submit",g(e),{headers:t});if(r===200)return a;throw l(a)}catch(t){throw l(t)}}async fetchPlutusScriptCBOR(e){const{data:t,status:a}=await this._axiosInstance.get(`scripts/${e}/cbor`);if(a===200)return t.cbor;throw l(t)}async fetchNativeScriptJSON(e){const{data:t,status:a}=await this._axiosInstance.get(`scripts/${e}/json`);if(a===200)return t.json;throw l(t)}}class ia{_axiosInstance;constructor(e,t,a){const r=a.host??"ipfs.infura.io",n=a.port??5001,o=a.version??0;this._axiosInstance=J.default.create({baseURL:`https://${r}:${n}/api/v${o}`,auth:{username:e,password:t}})}async uploadContent(e,t=!1){try{const a={"Content-Type":"multipart/form-data"},{data:r,status:n}=await this._axiosInstance.post(`add?recursive=${t}`,e,{headers:a});if(n===200)return r;throw l(r)}catch(a){throw l(a)}}}class na{_axiosInstance;constructor(...e){typeof e[0]=="string"&&e[0].startsWith("http")?this._axiosInstance=J.default.create({baseURL:e[0]}):this._axiosInstance=J.default.create({baseURL:`https://${e[0]}.koios.rest/api/v${e[1]??0}`})}async fetchAccountInfo(e){try{const t=e.startsWith("addr")?Dt(e):e,{data:a,status:r}=await this._axiosInstance.post("account_info",{_stake_addresses:[t]});if(r===200)return{poolId:a[0].delegated_pool,active:a[0].status==="registered",balance:a[0].total_balance.toString(),rewards:a[0].rewards_available,withdrawals:a[0].withdrawals};throw l(a)}catch(t){throw l(t)}}async fetchAddressUTxOs(e,t){const a=r=>{if(r){const n=r.type.startsWith("plutus")?{code:r.bytes,version:r.type.replace("plutus","")}:bt(Qt(r.bytes));return lt(n).to_hex()}};try{const{data:r,status:n}=await this._axiosInstance.post("address_info",{_addresses:[e]});if(n===200){const o=r.flatMap(c=>c.utxo_set).map(c=>{var A;return{input:{outputIndex:c.tx_index,txHash:c.tx_hash},output:{address:e,amount:[{unit:"lovelace",quantity:c.value},...c.asset_list.map(u=>({unit:`${u.policy_id}${u.asset_name}`,quantity:`${u.quantity}`}))],dataHash:c.datum_hash??void 0,plutusData:((A=c.inline_datum)==null?void 0:A.bytes)??void 0,scriptRef:a(c.reference_script)}}});return t!==void 0?o.filter(c=>c.output.amount.find(A=>A.unit===t)!==void 0):o}throw l(r)}catch{return[]}}async fetchAssetAddresses(e){try{const{policyId:t,assetName:a}=ot(e),{data:r,status:n}=await this._axiosInstance.get(`asset_address_list?_asset_policy=${t}&_asset_name=${a}`);if(n===200)return r.map(o=>({address:o.payment_address,quantity:o.quantity}));throw l(r)}catch(t){throw l(t)}}async fetchAssetMetadata(e){try{const{policyId:t,assetName:a}=ot(e),{data:r,status:n}=await this._axiosInstance.get(`asset_info?_asset_policy=${t}&_asset_name=${a}`);if(n===200)return{...r[0].minting_tx_metadata[721][t][Ot(a)]};throw l(r)}catch(t){throw l(t)}}async fetchBlockInfo(e){try{const{data:t,status:a}=await this._axiosInstance.post("block_info",{_block_hashes:[e]});if(a===200)return{confirmations:t[0].num_confirmations,epoch:t[0].epoch_no,epochSlot:t[0].epoch_slot.toString(),fees:t[0].total_fees??"",hash:t[0].hash,nextBlock:t[0].child_hash??"",operationalCertificate:t[0].op_cert,output:t[0].total_output??"0",previousBlock:t[0].parent_hash,size:t[0].block_size,slot:t[0].abs_slot.toString(),slotLeader:t[0].pool??"",time:t[0].block_time,txCount:t[0].tx_count,VRFKey:t[0].vrf_key};throw l(t)}catch(t){throw l(t)}}async fetchCollectionAssets(e,t=0){try{const{data:a,status:r}=await this._axiosInstance.get(`asset_policy_info?_asset_policy=${e}&limit=100&offset=${t}`);if(r===200)return{assets:a.map(n=>({unit:`${e}${n.asset_name}`,quantity:n.total_supply})),next:a.length===100?t+100:null};throw l(a)}catch(a){throw l(a)}}async fetchHandleAddress(e){try{const t=Q(e.replace("$","")),{data:a,status:r}=await this._axiosInstance.get(`asset_address_list?_asset_policy=${Ft[1]}&_asset_name=${t}`);if(r===200)return a[0].payment_address;throw l(a)}catch(t){throw l(t)}}async fetchProtocolParameters(e){try{const{data:t,status:a}=await this._axiosInstance.get(`epoch_params?_epoch_no=${e}`);if(a===200)return{coinsPerUTxOSize:t[0].coins_per_utxo_size,collateralPercent:t[0].collateral_percent,decentralisation:t[0].decentralisation,epoch:t[0].epoch_no,keyDeposit:t[0].key_deposit,maxBlockExMem:t[0].max_block_ex_mem.toString(),maxBlockExSteps:t[0].max_block_ex_steps.toString(),maxBlockHeaderSize:t[0].max_bh_size,maxBlockSize:t[0].max_block_size,maxCollateralInputs:t[0].max_collateral_inputs,maxTxExMem:t[0].max_tx_ex_mem.toString(),maxTxExSteps:t[0].max_tx_ex_steps.toString(),maxTxSize:t[0].max_tx_size,maxValSize:t[0].max_val_size.toString(),minFeeA:t[0].min_fee_a,minFeeB:t[0].min_fee_b,minPoolCost:t[0].min_pool_cost,poolDeposit:t[0].pool_deposit,priceMem:t[0].price_mem,priceStep:t[0].price_step};throw l(t)}catch(t){throw l(t)}}async fetchTxInfo(e){var t,a;try{const{data:r,status:n}=await this._axiosInstance.post("tx_info",{_tx_hashes:[e]});if(n===200)return{block:r[0].block_hash,deposit:r[0].deposit,fees:r[0].fee,hash:r[0].tx_hash,index:r[0].tx_block_index,invalidAfter:((t=r[0].invalid_after)==null?void 0:t.toString())??"",invalidBefore:((a=r[0].invalid_before)==null?void 0:a.toString())??"",slot:r[0].absolute_slot.toString(),size:r[0].tx_size};throw l(r)}catch(r){throw l(r)}}onTxConfirmed(e,t,a=20){let r=0;const n=setInterval(()=>{r>=a&&clearInterval(n),this.fetchTxInfo(e).then(o=>{this.fetchBlockInfo(o.block).then(c=>{(c==null?void 0:c.confirmations)>0&&(clearInterval(n),t())}).catch(()=>{r+=1})}).catch(()=>{r+=1})},5e3)}async submitTx(e){try{const t={"Content-Type":"application/cbor"},{data:a,status:r}=await this._axiosInstance.post("submittx",g(e),{headers:t});if(r===202)return a;throw l(a)}catch(t){throw l(t)}}}class oa{_baseUrl;constructor(...e){this._baseUrl=pe(e[0])?Xe[e[0]]:e[0]}async evaluateTx(e){const t=await this.open();return this.send(t,"EvaluateTx",{evaluate:e}),new Promise((a,r)=>{t.addEventListener("message",n=>{try{const{result:o}=JSON.parse(n.data);o.EvaluationResult?a(Object.keys(o.EvaluationResult).map(c=>({index:parseInt(c.split(":")[1],10),tag:c.split(":")[0].toUpperCase(),budget:{mem:o.EvaluationResult[c].memory,steps:o.EvaluationResult[c].steps}}))):r(o.EvaluationFailure),t.close()}catch(o){r(o)}},{once:!0})})}async onNextTx(e){const t=await this.open();return this.send(t,"AwaitAcquire",{}),t.addEventListener("message",a=>{const{result:r}=JSON.parse(a.data);if(r===null)return this.send(t,"AwaitAcquire",{});r.AwaitAcquired===void 0&&e(r),this.send(t,"NextTx",{})}),()=>t.close()}async submitTx(e){const t=await this.open();return this.send(t,"SubmitTx",{submit:e}),new Promise((a,r)=>{t.addEventListener("message",n=>{try{const{result:o}=JSON.parse(n.data);o.SubmitSuccess?a(o.SubmitSuccess.txId):r(o.SubmitFail),t.close()}catch(o){r(o)}},{once:!0})})}async open(){const e=new WebSocket(this._baseUrl);return await new Promise(t=>{e.addEventListener("open",()=>t(!0),{once:!0})}),e}send(e,t,a){e.send(JSON.stringify({version:"1.0",type:"jsonwsp/request",servicename:"ogmios",methodname:t,args:a}))}}class ca{_axiosInstance;constructor(e,t,a,r=1){this._axiosInstance=J.default.create({baseURL:`https://cardano-${e}.tangocrypto.com/${t}/v${r}`,headers:{"x-api-key":a}})}async evaluateTx(e){try{const{data:t,status:a}=await this._axiosInstance.post("transactions/evaluate",{tx:e,utxos:[]});if(a===200)return t.redeemers.map(r=>({index:r.index,tag:r.purpose.toUpperCase(),budget:{mem:r.unit_mem,steps:r.unit_steps}}));throw l(t)}catch(t){throw l(t)}}async fetchAccountInfo(e){try{const t=e.startsWith("addr")?Dt(e):e,{data:a,status:r}=await this._axiosInstance.get(`wallets/${t}`);if(r===200)return{poolId:a.pool_id,active:a.active,balance:a.controlled_total_stake,rewards:a.rewards_sum,withdrawals:a.withdrawals_sum};throw l(a)}catch(t){throw l(t)}}async fetchAddressUTxOs(e,t){const a=t!==void 0?`/assets/${t}`:"",r=`addresses/${e}${a}/utxos?size=50`,n=async(u="",h=[])=>{var w;const{data:d,status:f}=await this._axiosInstance.get(`${r}&cursor=${u}`);if(f===200)return d.cursor!==null&&((w=d.cursor)==null?void 0:w.length)>0?n(d.cursor,[...h,...d.data.map(A)]):d.data.map(A);throw l(d)},o=(u,h)=>{const d=[{unit:"lovelace",quantity:u.toString()}];return h.forEach(f=>{const w=Q(f.asset_name);d.push({unit:`${f.policy_id}${w}`,quantity:f.quantity.toString()})}),d},c=u=>{if(u){const h=u.type.startsWith("plutus")?{code:u.code,version:u.type.replace("plutus","")}:bt(Qt(u.json));return lt(h).to_hex()}},A=u=>{var h;return{input:{outputIndex:u.index,txHash:u.hash},output:{address:e,amount:o(u.value,u.assets),dataHash:void 0,plutusData:((h=u.inline_datum)==null?void 0:h.value_raw)??void 0,scriptRef:c(u.reference_script)}}};try{return await n()}catch{return[]}}async fetchAssetAddresses(e){const t=r=>({address:r.address,quantity:r.quantity.toString()}),a=async(r="",n=[])=>{var h;const{policyId:o,assetName:c}=ot(e),{data:A,status:u}=await this._axiosInstance.get(`assets/${o}${c}/addresses?size=100&cursor=${r}`);if(u===200)return A.cursor!==null&&((h=A.cursor)==null?void 0:h.length)>0?a(A.cursor,[...n,...A.data.map(t)]):A.data.map(t);throw l(A)};try{return await a()}catch{return[]}}async fetchAssetMetadata(e){var t;try{const{policyId:a,assetName:r}=ot(e),{data:n,status:o}=await this._axiosInstance.get(`assets/${a}${r}`);if(o===200)return{...(t=n.metadata.find(c=>c.label===721))==null?void 0:t.json[a][Ot(r)]};throw l(n)}catch(a){throw l(a)}}async fetchBlockInfo(e){try{const{data:t,status:a}=await this._axiosInstance.get(`blocks/${e}`);if(a===200)return{confirmations:t.confirmations,epoch:t.epoch_no,epochSlot:t.epoch_slot_no.toString(),fees:t.fees.toString(),hash:t.hash,nextBlock:t.next_block.toString()??"",operationalCertificate:t.op_cert,output:t.out_sum.toString()??"0",previousBlock:t.previous_block.toString(),size:t.size,slot:t.slot_no.toString(),slotLeader:t.slot_leader??"",time:Date.parse(t.time),txCount:t.tx_count,VRFKey:t.vrf_key};throw l(t)}catch(t){throw l(t)}}async fetchCollectionAssets(e,t=""){try{const{data:a,status:r}=await this._axiosInstance.get(`policies/${e}/assets?size=100&cursor=${t}`);if(r===200)return{assets:a.data.map(n=>({unit:`${n.policy_id}${n.asset_name}`,quantity:n.quantity})),next:a.cursor};throw l(a)}catch{return{assets:[],next:null}}}async fetchHandleAddress(e){try{const t=Q(e.replace("$","")),{data:a,status:r}=await this._axiosInstance.get(`assets/${Ft[1]}${t}/addresses`);if(r===200)return a.data[0].address;throw l(a)}catch(t){throw l(t)}}async fetchProtocolParameters(e){try{const{data:t,status:a}=await this._axiosInstance.get(`epochs/${e}/parameters`);if(a===200)return{coinsPerUTxOSize:t.coins_per_utxo_size.toString(),collateralPercent:t.collateral_percent,decentralisation:t.decentralisation,epoch:t.epoch_no,keyDeposit:t.key_deposit.toString(),maxBlockExMem:t.max_block_ex_mem.toString(),maxBlockExSteps:t.max_block_ex_steps.toString(),maxBlockHeaderSize:t.max_block_header_size,maxBlockSize:t.max_block_size,maxCollateralInputs:t.max_collateral_inputs,maxTxExMem:t.max_tx_ex_mem.toString(),maxTxExSteps:t.max_tx_ex_steps.toString(),maxTxSize:t.max_tx_size,maxValSize:t.max_val_size.toString(),minFeeA:t.min_fee_a,minFeeB:t.min_fee_b,minPoolCost:t.min_pool_cost.toString(),poolDeposit:t.pool_deposit.toString(),priceMem:t.price_mem,priceStep:t.price_step};throw l(t)}catch(t){throw l(t)}}async fetchTxInfo(e){try{const{data:t,status:a}=await this._axiosInstance.get(`transactions/${e}`);if(a===200)return{block:t.block.hash,deposit:t.deposit,fees:t.fee,hash:t.hash,index:t.block_index,invalidAfter:t.invalid_hereafter??"",invalidBefore:t.invalid_before??"",slot:t.block.slot_no.toString(),size:t.size};throw l(t)}catch(t){throw l(t)}}onTxConfirmed(e,t,a=20){let r=0;const n=setInterval(()=>{r>=a&&clearInterval(n),this.fetchTxInfo(e).then(o=>{this.fetchBlockInfo(o.block).then(c=>{(c==null?void 0:c.confirmations)>0&&(clearInterval(n),t())}).catch(()=>{r+=1})}).catch(()=>{r+=1})},5e3)}async submitTx(e){try{const t={"Content-Type":"application/json"},{data:a,status:r}=await this._axiosInstance.post("transactions/submit",{tx:e},{headers:t});if(r===200)return a.tx_id;throw l(a)}catch(t){throw l(t)}}}class Aa{static withOneSignature(e){const t=F(X(e));return _t(t).to_hex()}static withAtLeastNSignatures(e,t){const a=i.NativeScripts.new();e.forEach(n=>{const o=F(X(n));a.add(_t(o))});const r=i.ScriptNOfK.new(t,a);return i.NativeScript.new_script_any(r).to_hex()}static withAnySignature(e){const t=i.NativeScripts.new();e.forEach(r=>{const n=F(X(r));t.add(_t(n))});const a=i.ScriptAny.new(t);return i.NativeScript.new_script_any(a).to_hex()}static withAllSignatures(e){const t=i.NativeScripts.new();e.forEach(r=>{const n=F(X(r));t.add(_t(n))});const a=i.ScriptAll.new(t);return i.NativeScript.new_script_any(a).to_hex()}static fromNativeScript(e){return vt(e).to_hex()}}function j(s,e,t,a){var r=arguments.length,n=r<3?e:a===null?a=Object.getOwnPropertyDescriptor(e,t):a,o;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")n=Reflect.decorate(s,e,t,a);else for(var c=s.length-1;c>=0;c--)(o=s[c])&&(n=(r<3?o(n):r>3?o(e,t,n):o(e,t))||n);return r>3&&n&&Object.defineProperty(e,t,n),n}const ua=s=>class extends s{__visits=[]},tt=()=>function(s,e,t){const a=t.value;t.value=function(...r){const n=a.call(this,...r);return this.__visits&&this.__visits.push(e),n}};exports.Transaction=class{_changeAddress;_txOutputs=new Map;_recipients=new Map;_totalBurns=new Map;_totalMints=new Map;_era;_initiator;_mintBuilder;_protocolParameters;_txBuilder;_txCertificates;_txInputsBuilder;_txWithdrawals;constructor(e={}){this._era=e.era,this._initiator=e.initiator,this._mintBuilder=i.MintBuilder.new(),this._protocolParameters=e.parameters??L,this._txBuilder=Ls(e.parameters),this._txCertificates=i.Certificates.new(),this._txInputsBuilder=i.TxInputsBuilder.new(),this._txWithdrawals=i.Withdrawals.new()}static maskMetadata(e,t="BABBAGE"){var n;const a=G(e),r=(n=a.auxiliary_data())==null?void 0:n.metadata();if(r!==void 0){const o=i.GeneralTransactionMetadata.new();for(let A=0;A<r.len();A+=1){const u=r.keys().get(A),h=r.get(u);o.insert(u,i.TransactionMetadatum.from_hex("0".repeat(((h==null?void 0:h.to_hex())??"").length)))}const c=a.auxiliary_data();return c!==void 0&&(c.set_metadata(o),c.set_prefer_alonzo_format(t==="ALONZO")),i.Transaction.new(a.body(),a.witness_set(),c).to_hex()}return e}static readMetadata(e){var a,r;return((r=(a=G(e).auxiliary_data())==null?void 0:a.metadata())==null?void 0:r.to_hex())??""}static writeMetadata(e,t,a="BABBAGE"){const r=G(e),n=r.auxiliary_data()??i.AuxiliaryData.new();return n.set_metadata(i.GeneralTransactionMetadata.from_hex(t)),n.set_prefer_alonzo_format(a==="ALONZO"),i.Transaction.new(r.body(),r.witness_set(),n).to_hex()}get size(){return this._txBuilder.full_size()}async build(){try{return(this._mintBuilder.has_plutus_scripts()||this.notVisited("redeemValue")===!1)&&(await this.addRequiredSignersIfNeeded(),await this.addCollateralIfNeeded()),await this.forgeAssetsIfNeeded(),await this.addTxInputsAsNeeded(),await this.addChangeAddress(),this._txBuilder.build_tx().to_hex()}catch(e){throw new Error(`[Transaction] An error occurred during build: ${e}.`)}}burnAsset(e,t,a){const r=this._totalBurns.has(t.unit)?i.BigNum.from_str(this._totalBurns.get(t.unit)??"0").checked_add(i.BigNum.from_str(t.quantity)).to_str():t.quantity;return this._mintBuilder.add_asset(fe(e,a),i.AssetName.new(g(t.unit.slice(P))),i.Int.new_negative(i.BigNum.from_str(t.quantity))),this._totalBurns.set(t.unit,r),this}delegateStake(e,t){const a=i.Certificate.new_stake_delegation(i.StakeDelegation.new(i.StakeCredential.from_keyhash(F(st(e))),i.Ed25519KeyHash.from_bech32(t)));return this._txCertificates.add(a),this}deregisterStake(e){const t=i.Certificate.new_stake_deregistration(i.StakeDeregistration.new(i.StakeCredential.from_keyhash(F(st(e)))));return this._txCertificates.add(t),this}mintAsset(e,t,a){var u,h;const r=(d,f)=>{const w=typeof d=="string"?Qt(d).hash().to_hex():n(d).hash().to_hex(),S=Q(f.assetName);return{unit:`${w}${S}`,quantity:f.assetQuantity}},n=d=>{if("code"in d)return nt(d.code,d.version);const f=Y(d);if(f.output().has_script_ref()){const w=f.output().script_ref();if(w.is_plutus_script()){const S=He(w);return nt(S.code,S.version)}}throw new Error(`No plutus script reference found in UTxO: ${f.input().transaction_id().to_hex()}`)},o=r(e,t),A=i.BigNum.from_str(((u=this._totalMints.get(o.unit))==null?void 0:u.assetQuantity)??"0").checked_add(i.BigNum.from_str(o.quantity));return this._mintBuilder.add_asset(fe(e,a),i.AssetName.new(g(Q(t.assetName))),i.Int.new(i.BigNum.from_str(o.quantity))),this._recipients.has(t.recipient)?(h=this._recipients.get(t.recipient))==null||h.push(o):this._recipients.set(t.recipient,[o]),this._totalMints.set(o.unit,{...t,assetQuantity:A.to_str()}),this}redeemValue(e){const t={tag:"SPEND",budget:Ce,index:this._txInputsBuilder.inputs().len(),data:{alternative:0,fields:[]},...e.redeemer},a=Y(e.value),r=i.PlutusWitness.new_with_ref(Oe(e.script),Gs(e.datum),Pe(t));return this._txInputsBuilder.add_plutus_script_input(r,a.input(),a.output().amount()),this}registerStake(e){const t=i.Certificate.new_stake_registration(i.StakeRegistration.new(i.StakeCredential.from_keyhash(F(st(e)))));return this._txCertificates.add(t),this}registerPool(e){const t=i.Certificate.new_pool_registration(i.PoolRegistration.new(Vs(e)));return this._txCertificates.add(t),this}retirePool(e,t){const a=i.Certificate.new_pool_retirement(i.PoolRetirement.new(i.Ed25519KeyHash.from_bech32(e),t));return this._txCertificates.add(a),this}sendAssets(e,t){const a=yt(t),r=a.multiasset();if(a.is_zero()||r===void 0)return this;const n=pt(e).next(),o=a.coin().is_zero()?n.with_asset_and_min_required_coin_by_utxo_cost(r,le(this._protocolParameters.coinsPerUTxOSize)).build():n.with_coin_and_asset(a.coin(),r).build();return t.forEach(c=>{this.setTxOutput(c)}),this._txBuilder.add_output(o),this}sendLovelace(e,t){const r=pt(e).next().with_coin(i.BigNum.from_str(t)).build();return this.setTxOutput({unit:"lovelace",quantity:t}),this._txBuilder.add_output(r),this}sendToken(e,t,a){return this.sendAssets(e,[{quantity:a,unit:Ze[t]}]),this}sendValue(e,t){const a=yt(t.output.amount),n=pt(e).next().with_value(a).build();return t.output.amount.forEach(o=>{this.setTxOutput(o)}),this._txBuilder.add_output(n),this}setChangeAddress(e){return this._changeAddress=H(e),this}setCollateral(e){const t=ge(e);return this._txBuilder.set_collateral(t),this}setMetadata(e,t){return this._txBuilder.add_json_metadatum_with_schema(i.BigNum.from_str(e.toString()),JSON.stringify(t),i.MetadataJsonSchema.NoConversions),this}setRequiredSigners(e){return Array.from(new Set(e.map(a=>a.startsWith("addr")?X(a):st(a)).map(a=>F(a)))).forEach(a=>{this._txBuilder.add_required_signer(a)}),this}setTimeToStart(e){return this._txBuilder.set_validity_start_interval_bignum(i.BigNum.from_str(e)),this}setTimeToExpire(e){return this._txBuilder.set_ttl_bignum(i.BigNum.from_str(e)),this}setTxInputs(e){return e.map(t=>Y(t)).forEach(t=>{this._txInputsBuilder.add_input(t.output().address(),t.input(),t.output().amount())}),this}withdrawRewards(e,t){const a=Fe(e);return a!==void 0&&this._txWithdrawals.insert(a,i.BigNum.from_str(t)),this}async addBurnInputsIfNeeded(){if(this._initiator&&this._totalBurns.size>0&&this.notVisited("setTxInputs")){const e=await this._initiator.getUsedUTxOs();ye(this._totalBurns,e.map(a=>xt(a))).map(a=>Y(a)).forEach(a=>{this._txInputsBuilder.add_input(a.output().address(),a.input(),a.output().amount())})}}async addChangeAddress(){if(this._initiator&&this._changeAddress===void 0){const e=await this._initiator.getUsedAddress();this._txBuilder.add_change_if_needed(e)}else this._changeAddress!==void 0&&this._txBuilder.add_change_if_needed(this._changeAddress)}async addCollateralIfNeeded(){if(this._initiator&&this.notVisited("setCollateral")){const e=await this._initiator.getUsedCollateral();this._txBuilder.set_collateral(ge(e))}}async addRequiredSignersIfNeeded(){if(this._initiator&&this.notVisited("setRequiredSigners")){const e=await this._initiator.getUsedAddress(),t=X(e.to_bech32());this._txBuilder.add_required_signer(F(t))}}async addTxInputsAsNeeded(){if(this.notVisited("setTxInputs")){const e=await this.filterAvailableUTxOs();we(this._txOutputs,e.map(a=>xt(a))).map(a=>Y(a)).forEach(a=>{this._txInputsBuilder.add_input(a.output().address(),a.input(),a.output().amount())})}if(this._txBuilder.set_inputs(this._txInputsBuilder),(this._mintBuilder.has_native_scripts()||this._mintBuilder.has_plutus_scripts())&&this._txBuilder.set_mint_builder(this._mintBuilder),this._txCertificates.len()>0&&this._txBuilder.set_certs(this._txCertificates),this._txWithdrawals.len()>0&&this._txBuilder.set_withdrawals(this._txWithdrawals),this._txBuilder.get_mint_builder()||this.notVisited("redeemValue")===!1){const e=this._era!==void 0?$t[this._era]:$t.BABBAGE;this._txBuilder.calc_script_data_hash(e)}}async forgeAssetsIfNeeded(){const e=(t,a)=>{const r=t.data.assetName,n=t.data.metadata,o=t.unit.slice(0,P);if(a&&a[o]){const{[o]:c,...A}=a,u={[r]:n,...c};return{[o]:{...u},...A}}return a!==void 0?{[o]:{[r]:n},...a}:{[o]:{[r]:n}}};await this.addBurnInputsIfNeeded(),Array.from(this._totalMints,t=>({unit:t[0],data:t[1]})).reduce((t,a)=>t.set(a.data.label,e(a,t.get(a.data.label))),new Map).forEach((t,a)=>{this._txBuilder.add_json_metadatum(i.BigNum.from_str(a),JSON.stringify(t))}),this.addMintOutputs()}async filterAvailableUTxOs(e=[]){return this._initiator===void 0?[]:(await this._initiator.getUsedUTxOs()).filter(a=>e.find(r=>r.input.txHash===a.input().transaction_id().to_hex())===void 0)}addMintOutputs(){this._recipients.forEach((e,t)=>{const r=yt(e).multiasset();if(r!==void 0){const o=pt(t).next().with_asset_and_min_required_coin_by_utxo_cost(r,le(this._protocolParameters.coinsPerUTxOSize)).build();this._txBuilder.add_output(o)}})}notVisited(e){return this.__visits.includes(e)===!1}setTxOutput(e){const a=i.BigNum.from_str(this._txOutputs.get(e.unit)??"0").checked_add(i.BigNum.from_str(e.quantity)).to_str();this._txOutputs.set(e.unit,a)}};j([tt()],exports.Transaction.prototype,"mintAsset",null);j([tt()],exports.Transaction.prototype,"redeemValue",null);j([tt()],exports.Transaction.prototype,"sendAssets",null);j([tt()],exports.Transaction.prototype,"sendValue",null);j([tt()],exports.Transaction.prototype,"setCollateral",null);j([tt()],exports.Transaction.prototype,"setRequiredSigners",null);j([tt()],exports.Transaction.prototype,"setTxInputs",null);exports.Transaction=j([ua],exports.Transaction);class y{_networkId;_encryptedSecret;constructor(e,t){this._networkId=e,this._encryptedSecret=t}getAccount(e,t){return this.accountContext(e,t,(a,r)=>{const n=he(this._networkId,a.to_public().hash(),r.to_public().hash()).to_address().to_bech32(),o=Ie(this._networkId,a.to_public().hash()).to_address().to_bech32(),c=Ut(this._networkId,r.to_public().hash()).to_address().to_bech32();return{baseAddress:n,enterpriseAddress:o,rewardAddress:c}})}signData(e,t,a,r){try{return this.accountContext(e,t,(n,o)=>{const c={payload:r},A={address:y.resolveAddress(this._networkId,a,n,o),key:a.startsWith("stake")?o:n},{coseSign1:u,coseKey:h}=ns(c,A);return{signature:u,key:h}})}catch(n){throw new Error(`An error occurred during signData: ${n}.`)}}signTx(e,t,a,r,n){try{const o=Ne(Ye(r));return this.accountContext(e,t,(c,A)=>{const u=i.Vkeywitnesses.new();return y.resolveSigners(r,a,c.to_public().hash().to_hex()).forEach(d=>{if(d===c.to_public().hash().to_hex())u.add(i.make_vkey_witness(o,c));else if(d===A.to_public().hash().to_hex())u.add(i.make_vkey_witness(o,A));else if(n===!1)throw new Error(`Missing key witness for: ${d}`)}),u})}catch(o){throw new Error(`An error occurred during signTx: ${o}.`)}}static encryptMnemonic(e,t){const a=Nt.mnemonicToEntropy(e.join(" ")),r=Me(a),n=v(r.as_bytes());return r.free(),y.encrypt(n,t)}static encryptPrivateKey(e,t){const a=i.Bip32PrivateKey.from_bech32(e),r=v(a.as_bytes());return a.free(),y.encrypt(r,t)}static encryptSigningKeys(e,t,a){const r=y.encrypt(e.slice(4),a),n=y.encrypt(t.slice(4),a);return[r,n]}static generateMnemonic(e=256){return Nt.generateMnemonic(e).split(" ")}accountContext(e,t,a){const{paymentKey:r,stakeKey:n}=y.resolveKeys(e,t,this._encryptedSecret),o=a(r,n);return r.free(),n.free(),o}static decrypt(e,t){try{return i.decrypt_with_password(Q(t),e)}catch{throw new Error("The password is incorrect.")}}static encrypt(e,t){const a=_e.customAlphabet("0123456789abcdef"),r=a(64),n=a(24);return i.encrypt_with_password(Q(t),r,n,e)}static resolveAddress(e,t,a,r){const n=[he(e,a.to_public().hash(),r.to_public().hash()),Ie(e,a.to_public().hash()),Ut(e,r.to_public().hash())].find(o=>o.to_address().to_bech32()===t);if(n!==void 0)return n.to_address();throw new Error(`Address: ${t} doesn't belong to this account.`)}static resolveKeys(e,t,a){if(typeof a=="string"){const o=y.decrypt(a,t);return Ks(o,e)}const r=y.decrypt(a[0],t),n=y.decrypt(a[1],t);return{paymentKey:i.PrivateKey.from_hex(r),stakeKey:i.PrivateKey.from_hex(n)}}static resolveSigners(e,t,a){const r=c=>{const A=(_,x=[],E=0)=>{var It,ct,Yt,Gt,Lt;if(_===void 0||E>=_.len())return x;const k=_.get(E),K=new Array;switch(k.kind()){case i.CertificateKind.StakeDeregistration:{const m=(It=k.as_stake_deregistration())==null?void 0:It.stake_credential(),O=(m==null?void 0:m.kind())===i.StakeCredKind.Key?m.to_keyhash():void 0;O&&K.push(O.to_hex());break}case i.CertificateKind.StakeDelegation:{const m=(ct=k.as_stake_delegation())==null?void 0:ct.stake_credential(),O=(m==null?void 0:m.kind())===i.StakeCredKind.Key?m.to_keyhash():void 0;O&&K.push(O.to_hex());break}case i.CertificateKind.PoolRegistration:{const m=(Yt=k.as_pool_registration())==null?void 0:Yt.pool_params().pool_owners();K.push(...h(m));break}case i.CertificateKind.PoolRetirement:{const m=(Gt=k.as_pool_retirement())==null?void 0:Gt.pool_keyhash();m&&K.push(m.to_hex());break}case i.CertificateKind.MoveInstantaneousRewardsCert:{const m=(Lt=k.as_move_instantaneous_rewards_cert())==null?void 0:Lt.move_instantaneous_reward().as_to_stake_creds();if(m)for(let O=0;O<m.len();O+=1){const Rt=m.keys().get(O),qt=Rt.kind()===i.StakeCredKind.Key?Rt.to_keyhash():void 0;qt&&K.push(qt.to_hex())}break}}return A(_,[...x,...K],E+1)},u=(_,x=[],E=0)=>{if(_===void 0||E>=_.len())return x;const k=_.get(E).index(),K=_.get(E).transaction_id(),It=t.find(ct=>ct.input.outputIndex===k&&ct.input.txHash===K.to_hex())!==void 0?a:"OUR_PRINCESS_IS_IN_ANOTHER_CASTLE";return u(_,[...x,It],E+1)},h=(_,x=[],E=0)=>_===void 0||E>=_.len()?x:h(_,[...x,_.get(E).to_hex()],E+1),d=(_,x=[],E=0)=>{if(_===void 0||E>=_.len())return x;const k=_.keys().get(E).payment_cred(),K=k.kind()===i.StakeCredKind.Key?k.to_keyhash():void 0;return d(_,K?[...x,K.to_hex()]:x,E+1)},f=c.certs(),w=c.collateral(),S=c.inputs(),M=c.required_signers(),q=c.withdrawals();return[...A(f),...u(w),...u(S),...h(M),...d(q)]},n=c=>{const A=(h,d=[])=>{var f,w,S,M;if(h)for(let q=0;q<h.len();q+=1){const _=h.get(q);switch(_.kind()){case i.NativeScriptKind.ScriptPubkey:{const x=(f=_.as_script_pubkey())==null?void 0:f.addr_keyhash().to_hex();return x?[...d,x]:d}case i.NativeScriptKind.ScriptAll:return A((w=_.as_script_all())==null?void 0:w.native_scripts(),d);case i.NativeScriptKind.ScriptAny:return A((S=_.as_script_any())==null?void 0:S.native_scripts(),d);case i.NativeScriptKind.ScriptNOfK:return A((M=_.as_script_n_of_k())==null?void 0:M.native_scripts(),d)}}return d},u=c.native_scripts();return[...A(u)]},o=G(e);return new Set([...r(o.body()),...n(o.witness_set())])}}const N="MARI0TIME";class da{_fetcher;_submitter;_wallet;constructor(e){switch(this._fetcher=e.fetcher,this._submitter=e.submitter,e.key.type){case"mnemonic":this._wallet=new y(e.networkId,y.encryptMnemonic(e.key.words,N));break;case"root":this._wallet=new y(e.networkId,y.encryptPrivateKey(e.key.bech32,N));break;case"cli":this._wallet=new y(e.networkId,y.encryptSigningKeys(e.key.payment,e.key.stake??"f0".repeat(34),N))}}getPaymentAddress(e=0){return this._wallet.getAccount(e,N).enterpriseAddress}getRewardAddress(e=0){return this._wallet.getAccount(e,N).rewardAddress}getUsedAddress(e=0){const t=this._wallet.getAccount(e,N);return H(t.enterpriseAddress)}getUsedCollateral(e=L.maxCollateralInputs){throw new Error("getUsedCollateral not implemented.")}async getUsedUTxOs(e=0){const t=this._wallet.getAccount(e,N);return(await this._fetcher.fetchAddressUTxOs(t.enterpriseAddress)).map(r=>Y(r))}signData(e,t,a=0){try{return this._wallet.signData(a,N,e,t)}catch(r){throw new Error(`[AppWallet] An error occurred during signData: ${r}.`)}}async signTx(e,t=!1,a=0){try{const r=this._wallet.getAccount(a,N),n=await this._fetcher.fetchAddressUTxOs(r.enterpriseAddress),o=this._wallet.signTx(a,N,n,e,t),c=G(e),A=c.witness_set(),u=Ge(A,o);return A.set_vkeys(u),i.Transaction.new(c.body(),A,c.auxiliary_data()).to_hex()}catch(r){throw new Error(`[AppWallet] An error occurred during signTx: ${r}.`)}}submitTx(e){return this._submitter.submitTx(e)}static brew(e=256){return y.generateMnemonic(e)}}class St{_walletInstance;constructor(e){this._walletInstance=e}static getInstalledWallets(){return window.cardano===void 0?[]:zt.filter(e=>window.cardano[e]!==void 0).map(e=>({name:window.cardano[e].name,icon:window.cardano[e].icon,version:window.cardano[e].apiVersion}))}static async enable(e){try{const t=await St.resolveInstance(e);if(t!==void 0)return new St(t);throw new Error(`Couldn't create an instance of wallet: ${e}`)}catch(t){throw new Error(`[BrowserWallet] An error occurred during enable: ${t}.`)}}async getBalance(){const e=await this._walletInstance.getBalance();return Te(Os(e))}async getChangeAddress(){const e=await this._walletInstance.getChangeAddress();return et(e).to_bech32()}async getCollateral(e=L.maxCollateralInputs){return(await this.getUsedCollateral(e)).map(a=>xt(a))}getNetworkId(){return this._walletInstance.getNetworkId()}async getRewardAddresses(){return(await this._walletInstance.getRewardAddresses()).map(t=>et(t).to_bech32())}async getUnusedAddresses(){return(await this._walletInstance.getUnusedAddresses()).map(t=>et(t).to_bech32())}async getUsedAddresses(){return(await this._walletInstance.getUsedAddresses()).map(t=>et(t).to_bech32())}async getUtxos(){return(await this.getUsedUTxOs()).map(t=>xt(t))}signData(e,t){const a=H(e).to_hex();return this._walletInstance.signData(a,Q(t))}async signTx(e,t=!1){try{const a=G(e),r=a.witness_set(),n=await this._walletInstance.signTx(e,t),o=Ms(n).vkeys()??i.Vkeywitnesses.new(),c=Ge(r,o);return r.set_vkeys(c),v(i.Transaction.new(a.body(),r,a.auxiliary_data()).to_bytes())}catch(a){throw new Error(`[BrowserWallet] An error occurred during signTx: ${JSON.stringify(a)}.`)}}submitTx(e){return this._walletInstance.submitTx(e)}async getUsedAddress(){const e=await this._walletInstance.getUsedAddresses();return et(e[0])}async getUsedCollateral(e=L.maxCollateralInputs){return(await this._walletInstance.experimental.getCollateral()??[]).map(a=>ue(a)).slice(0,e)}async getUsedUTxOs(){return(await this._walletInstance.getUtxos()??[]).map(t=>ue(t))}async getAssets(){return(await this.getBalance()).filter(t=>t.unit!=="lovelace").map(t=>{const a=t.unit.slice(0,P),r=t.unit.slice(P),n=Ve(a,r);return{unit:t.unit,policyId:a,assetName:Ot(r),fingerprint:n,quantity:t.quantity}})}async getLovelace(){const t=(await this.getBalance()).find(a=>a.unit==="lovelace");return t!==void 0?t.quantity:"0"}async getPolicyIdAssets(e){return(await this.getAssets()).filter(a=>a.policyId===e)}async getPolicyIds(){const e=await this.getBalance();return Array.from(new Set(e.map(t=>t.unit.slice(0,P)))).filter(t=>t!=="lovelace")}static resolveInstance(e){if(window.cardano===void 0)return;const t=zt.map(a=>window.cardano[a]).filter(a=>a!==void 0).find(a=>a.name.toLowerCase()===e.toLowerCase());return t==null?void 0:t.enable()}}const Le="http://localhost:4000/",ha="http://localhost:5000/",la=`${Le}access`,Ia=`${Le}transaction/signtx`;class fa{static getAxiosInstance(){return J.default.create({baseURL:ha,withCredentials:!0})}static getAppId(){return window.location.hostname}static async openMinaFrontend(e){const t=this.getAppId();e.includes("?")?e=`${e}&appId=${t}`:e=`${e}?appId=${t}`;const a="left=100,top=100,width=540,height=540",r=window.open(e,"meshWindow",a);return r||console.error("the window did not open",r),await(async()=>new Promise(n=>{window.addEventListener("message",async o=>{o.data.target=="minaWallet"&&n(o.data)})}))()}static async get(e,t={}){const a=this.getAppId();t={...t,appId:a};try{return(await this.getAxiosInstance().get(e,{params:t})).data}catch{console.error("Not logged in");return}}static async enable(){return await this.get("wallet/getuserwalletsmeta")===void 0?await this.openMinaFrontend(la):!0}static async getChangeAddress(e=void 0,t=void 0){return await this.get("wallet/getchangeaddress",{walletId:e,accountIndex:t})}static async getUtxos(e=void 0,t=void 0){return await this.get("wallet/getutxo",{walletId:e,accountIndex:t})}static async signTx(e,t=!1){const a=await this.get("wallet/getuserwalletsmeta");if(console.log("userWalletsMeta",a),a){const r=await this.openMinaFrontend(`${Ia}?unsignedTx=${e}&partialSign=${t}`);if(r instanceof i.Vkeywitnesses){const n=G(e),o=n.witness_set();o.set_vkeys(r);const c=i.Transaction.new(n.body(),o,n.auxiliary_data()).to_hex();return console.log("signedTx",c),c}}else return}}exports.AppWallet=da;exports.BlockfrostProvider=ra;exports.BrowserWallet=St;exports.EmbeddedWallet=y;exports.ForgeScript=Aa;exports.InfuraProvider=ia;exports.KoiosProvider=na;exports.MinaWallet=fa;exports.OgmiosProvider=oa;exports.TangoProvider=ca;exports.checkSignature=os;exports.generateNonce=ea;exports.isNetwork=pe;exports.keepRelevant=we;exports.largestFirst=ts;exports.largestFirstMultiAsset=ye;exports.readPlutusData=sa;exports.readTransaction=aa;exports.resolveDataHash=Rs;exports.resolveEpochNo=qs;exports.resolveFingerprint=Ve;exports.resolveLanguageView=$s;exports.resolveNativeScriptHash=zs;exports.resolvePaymentKeyHash=X;exports.resolvePlutusScriptAddress=Ws;exports.resolvePlutusScriptHash=Js;exports.resolvePoolId=js;exports.resolvePrivateKey=Xs;exports.resolveRewardAddress=Dt;exports.resolveScriptRef=Zs;exports.resolveSlotNo=ta;exports.resolveStakeKeyHash=st;exports.resolveTxFees=Vt;exports.resolveTxHash=Ye;
|