meshjs 0.0.1 → 1.2.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/README.md +32 -0
  2. package/dist/common/constants.d.ts +27 -0
  3. package/dist/common/contracts/fetcher.d.ts +8 -0
  4. package/dist/common/contracts/index.d.ts +5 -0
  5. package/dist/common/contracts/initiator.d.ts +8 -0
  6. package/dist/common/contracts/signer.d.ts +7 -0
  7. package/dist/common/contracts/submitter.d.ts +3 -0
  8. package/dist/common/contracts/uploader.d.ts +3 -0
  9. package/dist/common/decorators.d.ts +19 -0
  10. package/dist/common/helpers/index.d.ts +1 -0
  11. package/dist/common/helpers/mergeSignatures.d.ts +3 -0
  12. package/dist/common/types/Account.d.ts +5 -0
  13. package/dist/common/types/AccountInfo.d.ts +7 -0
  14. package/dist/common/types/Action.d.ts +12 -0
  15. package/dist/common/types/Asset.d.ts +6 -0
  16. package/dist/common/types/AssetExtended.d.ts +8 -0
  17. package/dist/common/types/AssetMetadata.d.ts +24 -0
  18. package/dist/common/types/Data.d.ts +4 -0
  19. package/dist/common/types/DataSignature.d.ts +4 -0
  20. package/dist/common/types/Era.d.ts +1 -0
  21. package/dist/common/types/Mint.d.ts +10 -0
  22. package/dist/common/types/NativeScript.d.ts +14 -0
  23. package/dist/common/types/Network.d.ts +1 -0
  24. package/dist/common/types/PlutusScript.d.ts +6 -0
  25. package/dist/common/types/PoolParams.d.ts +16 -0
  26. package/dist/common/types/Protocol.d.ts +22 -0
  27. package/dist/common/types/Recipient.d.ts +11 -0
  28. package/dist/common/types/Relay.d.ts +13 -0
  29. package/dist/common/types/UTxO.d.ts +14 -0
  30. package/dist/common/types/Wallet.d.ts +5 -0
  31. package/dist/common/types/index.d.ts +19 -0
  32. package/dist/common/utils/builder.d.ts +17 -0
  33. package/dist/common/utils/converter.d.ts +26 -0
  34. package/dist/common/utils/deserializer.d.ts +17 -0
  35. package/dist/common/utils/index.d.ts +5 -0
  36. package/dist/common/utils/parser.d.ts +1 -0
  37. package/dist/common/utils/resolver.d.ts +17 -0
  38. package/dist/core/CIP14.d.ts +2 -0
  39. package/dist/core/CIP1852.d.ts +4 -0
  40. package/dist/core/CIP1853.d.ts +1 -0
  41. package/dist/core/CIP1855.d.ts +1 -0
  42. package/dist/core/CIP2.d.ts +3 -0
  43. package/dist/core/CIP25.d.ts +19 -0
  44. package/dist/core/CIP8.d.ts +13 -0
  45. package/dist/core/CSL.d.ts +144 -0
  46. package/dist/core/index.d.ts +8 -0
  47. package/dist/index.d.ts +8 -0
  48. package/dist/meshjs.cjs +1 -0
  49. package/dist/meshjs.js +2188 -0
  50. package/dist/providers/blockfrost.provider.d.ts +14 -0
  51. package/dist/providers/index.d.ts +4 -0
  52. package/dist/providers/infura.provider.d.ts +12 -0
  53. package/dist/providers/koios.provider.d.ts +12 -0
  54. package/dist/providers/tango.provider.d.ts +12 -0
  55. package/dist/scripts/forge.script.d.ts +8 -0
  56. package/dist/scripts/index.d.ts +1 -0
  57. package/dist/transaction/index.d.ts +1 -0
  58. package/dist/transaction/transaction.service.d.ts +61 -0
  59. package/dist/transaction/transaction.service.spec.d.ts +1 -0
  60. package/dist/wallet/app.service.d.ts +34 -0
  61. package/dist/wallet/app.service.spec.d.ts +1 -0
  62. package/dist/wallet/browser.service.d.ts +58 -0
  63. package/dist/wallet/browser.service.spec.d.ts +1 -0
  64. package/dist/wallet/embedded.service.d.ts +20 -0
  65. package/dist/wallet/embedded.service.spec.d.ts +1 -0
  66. package/dist/wallet/index.d.ts +4 -0
  67. package/dist/wallet/mina.service.d.ts +11 -0
  68. package/dist/wallet/mina.service.spec.d.ts +1 -0
  69. package/package.json +72 -7
package/dist/meshjs.js ADDED
@@ -0,0 +1,2188 @@
1
+ import { mnemonicToEntropy as le, generateMnemonic as He } from "bip39";
2
+ import * as a from "@emurgo/cardano-serialization-lib-nodejs";
3
+ import it from "axios";
4
+ import { COSEKey as Ne, Label as Z, KeyType as Pe, AlgorithmId as ge, Int as xt, BigNum as Gt, CBORValue as vt, HeaderMap as Rt, Headers as Me, ProtectedHeaderMap as Te, COSESign1Builder as Ve } from "@emurgo/cardano-message-signing-nodejs";
5
+ import { customAlphabet as Oe } from "nanoid";
6
+ const Ye = {
7
+ mem: 7e6,
8
+ steps: 3e9
9
+ }, P = {
10
+ epoch: 0,
11
+ coinsPerUTxOSize: "4310",
12
+ priceMem: 0.0577,
13
+ priceStep: 721e-7,
14
+ minFeeA: 44,
15
+ minFeeB: 155381,
16
+ keyDeposit: "2000000",
17
+ maxTxSize: 16384,
18
+ maxValSize: "5000",
19
+ poolDeposit: "500000000",
20
+ maxCollateralInputs: 3,
21
+ decentralisation: 0,
22
+ maxBlockSize: 98304,
23
+ collateralPercent: 150,
24
+ maxBlockHeaderSize: 1100,
25
+ minPoolCost: "340000000",
26
+ maxTxExMem: "16000000",
27
+ maxTxExSteps: "10000000000",
28
+ maxBlockExMem: "80000000",
29
+ maxBlockExSteps: "40000000000"
30
+ }, St = 2147483648, bt = {
31
+ V1: a.Language.new_plutus_v1(),
32
+ V2: a.Language.new_plutus_v2()
33
+ }, L = 56, Ge = {
34
+ CERT: a.RedeemerTag.new_cert(),
35
+ MINT: a.RedeemerTag.new_mint(),
36
+ REWARD: a.RedeemerTag.new_reward(),
37
+ SPEND: a.RedeemerTag.new_spend()
38
+ }, pt = {
39
+ testnet: ["74", "1598400", "1595967616", "432000"],
40
+ preview: ["0", "0", "1660003200", "86400"],
41
+ preprod: ["0", "0", "1654041600", "432000"],
42
+ mainnet: ["208", "4492800", "1596059091", "432000"]
43
+ }, Lt = {
44
+ ALONZO: a.TxBuilderConstants.plutus_alonzo_cost_models(),
45
+ BABBAGE: a.TxBuilderConstants.plutus_vasil_cost_models()
46
+ }, Re = {
47
+ ALONZO: {
48
+ V1: "a141005901d59f1a000302590001011a00060bc719026d00011a000249f01903e800011a000249f018201a0025cea81971f70419744d186419744d186419744d186419744d186419744d186419744d18641864186419744d18641a000249f018201a000249f018201a000249f018201a000249f01903e800011a000249f018201a000249f01903e800081a000242201a00067e2318760001011a000249f01903e800081a000249f01a0001b79818f7011a000249f0192710011a0002155e19052e011903e81a000249f01903e8011a000249f018201a000249f018201a000249f0182001011a000249f0011a000249f0041a000194af18f8011a000194af18f8011a0002377c190556011a0002bdea1901f1011a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000242201a00067e23187600010119f04c192bd200011a000249f018201a000242201a00067e2318760001011a000242201a00067e2318760001011a0025cea81971f704001a000141bb041a000249f019138800011a000249f018201a000302590001011a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a000249f018201a00330da70101ff"
49
+ },
50
+ BABBAGE: {
51
+ V1: "a141005901b69f1a0003236119032c01011903e819023b00011903e8195e7104011903e818201a0001ca761928eb041959d818641959d818641959d818641959d818641959d818641959d81864186418641959d81864194c5118201a0002acfa182019b551041a000363151901ff00011a00015c3518201a000797751936f404021a0002ff941a0006ea7818dc0001011903e8196ff604021a0003bd081a00034ec5183e011a00102e0f19312a011a00032e801901a5011a0002da781903e819cf06011a00013a34182019a8f118201903e818201a00013aac0119e143041903e80a1a00030219189c011a00030219189c011a0003207c1901d9011a000330001901ff0119ccf3182019fd40182019ffd5182019581e18201940b318201a00012adf18201a0002ff941a0006ea7818dc0001011a00010f92192da7000119eabb18201a0002ff941a0006ea7818dc0001011a0002ff941a0006ea7818dc0001011a000c504e197712041a001d6af61a0001425b041a00040c660004001a00014fab18201a0003236119032c010119a0de18201a00033d7618201979f41820197fb8182019a95d1820197df718201995aa18201a009063b91903fd0aff",
52
+ V2: "a20198af1a0003236119032c01011903e819023b00011903e8195e7104011903e818201a0001ca761928eb041959d818641959d818641959d818641959d818641959d818641959d81864186418641959d81864194c5118201a0002acfa182019b551041a000363151901ff00011a00015c3518201a000797751936f404021a0002ff941a0006ea7818dc0001011903e8196ff604021a0003bd081a00034ec5183e011a00102e0f19312a011a00032e801901a5011a0002da781903e819cf06011a00013a34182019a8f118201903e818201a00013aac0119e143041903e80a1a00030219189c011a00030219189c011a0003207c1901d9011a000330001901ff0119ccf3182019fd40182019ffd5182019581e18201940b318201a00012adf18201a0002ff941a0006ea7818dc0001011a00010f92192da7000119eabb18201a0002ff941a0006ea7818dc0001011a0002ff941a0006ea7818dc0001011a0011b22c1a0005fdde00021a000c504e197712041a001d6af61a0001425b041a00040c660004001a00014fab18201a0003236119032c010119a0de18201a00033d7618201979f41820197fb8182019a95d1820197df718201995aa18201b00000004a817c8001b00000004a817c8001a009063b91903fd0a1b00000004a817c800001b00000004a817c80041005901b69f1a0003236119032c01011903e819023b00011903e8195e7104011903e818201a0001ca761928eb041959d818641959d818641959d818641959d818641959d818641959d81864186418641959d81864194c5118201a0002acfa182019b551041a000363151901ff00011a00015c3518201a000797751936f404021a0002ff941a0006ea7818dc0001011903e8196ff604021a0003bd081a00034ec5183e011a00102e0f19312a011a00032e801901a5011a0002da781903e819cf06011a00013a34182019a8f118201903e818201a00013aac0119e143041903e80a1a00030219189c011a00030219189c011a0003207c1901d9011a000330001901ff0119ccf3182019fd40182019ffd5182019581e18201940b318201a00012adf18201a0002ff941a0006ea7818dc0001011a00010f92192da7000119eabb18201a0002ff941a0006ea7818dc0001011a0002ff941a0006ea7818dc0001011a000c504e197712041a001d6af61a0001425b041a00040c660004001a00014fab18201a0003236119032c010119a0de18201a00033d7618201979f41820197fb8182019a95d1820197df718201995aa18201a009063b91903fd0aff"
53
+ }
54
+ };
55
+ a.NetworkInfo.testnet().network_id() + "", a.NetworkInfo.mainnet().network_id() + "";
56
+ const qt = [
57
+ "begin",
58
+ "eternl",
59
+ "flint",
60
+ "nami",
61
+ "nufi",
62
+ "gerowallet",
63
+ "typhoncip30"
64
+ ], nt = (s) => a.Address.from_bytes(g(s)), Le = (s) => a.Bip32PrivateKey.from_bytes(g(s)), qe = (s) => a.DataHash.from_bytes(g(s)), K = (s) => a.Ed25519KeyHash.from_bytes(g(s)), ft = (s) => a.NativeScript.from_bytes(g(s)), ze = (s) => a.PlutusData.from_bytes(g(s)), wt = (s, e) => a.PlutusScript.from_bytes_with_version(g(s), bt[e]), $e = (s) => a.ScriptRef.from_bytes(g(s)), Je = (s) => a.ScriptHash.from_bytes(g(s)), q = (s) => a.Transaction.from_bytes(g(s)), fe = (s) => a.TransactionHash.from_bytes(g(s)), zt = (s) => a.TransactionUnspentOutput.from_bytes(g(s)), We = (s) => a.TransactionWitnessSet.from_bytes(g(s)), je = (s) => a.Value.from_bytes(g(s)), U = (s) => a.Address.from_bech32(s), kt = (s) => a.BaseAddress.from_address(U(s)), Ce = (s) => a.EnterpriseAddress.from_address(U(s)), _e = (s) => a.RewardAddress.from_address(U(s)), W = (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"), Ft = (s) => {
65
+ const e = (t) => {
66
+ const r = new Array();
67
+ for (let i = 0; i < t.len(); i += 1)
68
+ r.push(Ft(t.get(i)));
69
+ return r;
70
+ };
71
+ switch (s.kind()) {
72
+ case a.NativeScriptKind.ScriptAll: {
73
+ const t = s.as_script_all();
74
+ return {
75
+ type: "all",
76
+ scripts: e(t.native_scripts())
77
+ };
78
+ }
79
+ case a.NativeScriptKind.ScriptAny: {
80
+ const t = s.as_script_any();
81
+ return {
82
+ type: "any",
83
+ scripts: e(t.native_scripts())
84
+ };
85
+ }
86
+ case a.NativeScriptKind.ScriptNOfK: {
87
+ const t = s.as_script_n_of_k();
88
+ return {
89
+ type: "atLeast",
90
+ required: t.n(),
91
+ scripts: e(t.native_scripts())
92
+ };
93
+ }
94
+ case a.NativeScriptKind.TimelockStart: {
95
+ const t = s.as_timelock_start();
96
+ return {
97
+ type: "after",
98
+ slot: t.slot_bignum().to_str()
99
+ };
100
+ }
101
+ case a.NativeScriptKind.TimelockExpiry: {
102
+ const t = s.as_timelock_expiry();
103
+ return {
104
+ type: "before",
105
+ slot: t.slot_bignum().to_str()
106
+ };
107
+ }
108
+ case a.NativeScriptKind.ScriptPubkey: {
109
+ const t = s.as_script_pubkey();
110
+ return {
111
+ type: "sig",
112
+ keyHash: t.addr_keyhash().to_hex()
113
+ };
114
+ }
115
+ default:
116
+ throw new Error(`Script Kind: ${s.kind()}, is not supported`);
117
+ }
118
+ }, Bt = (s) => {
119
+ const e = (t) => {
120
+ const r = a.NativeScripts.new();
121
+ return t.forEach((i) => {
122
+ r.add(Bt(i));
123
+ }), r;
124
+ };
125
+ switch (s.type) {
126
+ case "all":
127
+ return a.NativeScript.new_script_all(a.ScriptAll.new(e(s.scripts)));
128
+ case "any":
129
+ return a.NativeScript.new_script_any(a.ScriptAny.new(e(s.scripts)));
130
+ case "atLeast":
131
+ return a.NativeScript.new_script_n_of_k(a.ScriptNOfK.new(s.required, e(s.scripts)));
132
+ case "after":
133
+ return a.NativeScript.new_timelock_start(a.TimelockStart.new_timelockstart(a.BigNum.from_str(s.slot)));
134
+ case "before":
135
+ return a.NativeScript.new_timelock_expiry(a.TimelockExpiry.new_timelockexpiry(a.BigNum.from_str(s.slot)));
136
+ case "sig":
137
+ return a.NativeScript.new_script_pubkey(a.ScriptPubkey.new(K(s.keyHash)));
138
+ }
139
+ }, J = (s) => {
140
+ const e = (t) => {
141
+ const r = a.PlutusList.new();
142
+ return t.forEach((i) => {
143
+ r.add(J(i));
144
+ }), r;
145
+ };
146
+ switch (typeof s) {
147
+ case "string":
148
+ return a.PlutusData.new_bytes(g(s));
149
+ case "number":
150
+ return a.PlutusData.new_integer(a.BigInt.from_str(s.toString()));
151
+ case "object":
152
+ if (s instanceof Array) {
153
+ const t = e(s);
154
+ return a.PlutusData.new_list(t);
155
+ } else if (s instanceof Map) {
156
+ const t = a.PlutusMap.new();
157
+ return s.forEach((r, i) => {
158
+ t.insert(J(i), J(r));
159
+ }), a.PlutusData.new_map(t);
160
+ } else
161
+ return a.PlutusData.new_constr_plutus_data(a.ConstrPlutusData.new(a.BigNum.from_str(s.alternative.toString()), e(s.fields)));
162
+ }
163
+ }, Xe = (s) => {
164
+ const e = a.Relays.new();
165
+ throw s.relays.forEach((t) => {
166
+ e.add(ts(t));
167
+ }), new Error("toPoolParams not implemented.");
168
+ }, Ze = (s) => {
169
+ const e = (t) => Ge[t];
170
+ return a.Redeemer.new(e(s.tag), a.BigNum.from_str(s.index.toString()), J(s.data), a.ExUnits.new(a.BigNum.from_str(s.budget.mem.toString()), a.BigNum.from_str(s.budget.steps.toString())));
171
+ }, ts = (s) => {
172
+ switch (s.type) {
173
+ case "SingleHostAddr": {
174
+ const e = s.IPV4 ? a.Ipv4.new(new Uint8Array(s.IPV4.split(".").map((r) => parseInt(r)))) : void 0, t = s.IPV6 ? a.Ipv6.new(g(s.IPV6.replaceAll(":", ""))) : void 0;
175
+ return a.Relay.new_single_host_addr(a.SingleHostAddr.new(s.port, e, t));
176
+ }
177
+ case "SingleHostName":
178
+ return a.Relay.new_single_host_name(a.SingleHostName.new(s.port, a.DNSRecordAorAAAA.new(s.domainName)));
179
+ case "MultiHostName":
180
+ return a.Relay.new_multi_host_name(a.MultiHostName.new(a.DNSRecordSRV.new(s.domainName)));
181
+ }
182
+ }, es = (s) => {
183
+ if (s.is_plutus_script()) {
184
+ const t = s.plutus_script();
185
+ return {
186
+ code: t.to_hex(),
187
+ version: Object.keys(bt).find((r) => bt[r].to_hex() === t.language_version().to_hex())
188
+ };
189
+ }
190
+ const e = s.native_script();
191
+ return Ft(e);
192
+ }, Qt = (s) => {
193
+ if ("code" in s) {
194
+ const e = wt(s.code, s.version);
195
+ return a.ScriptRef.new_plutus_script(e);
196
+ }
197
+ return a.ScriptRef.new_native_script(Bt(s));
198
+ }, Et = (s) => {
199
+ var i, n, o;
200
+ 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;
201
+ return {
202
+ input: {
203
+ outputIndex: s.input().index(),
204
+ txHash: s.input().transaction_id().to_hex()
205
+ },
206
+ output: {
207
+ address: s.output().address().to_bech32(),
208
+ amount: pe(s.output().amount()),
209
+ dataHash: e,
210
+ plutusData: t,
211
+ scriptRef: r
212
+ }
213
+ };
214
+ }, R = (s) => {
215
+ const e = a.TransactionInput.new(fe(s.input.txHash), s.input.outputIndex), t = a.TransactionOutput.new(U(s.output.address), Ct(s.output.amount));
216
+ return s.output.dataHash !== void 0 && t.set_data_hash(qe(s.output.dataHash)), s.output.plutusData !== void 0 && t.set_plutus_data(ze(s.output.plutusData)), s.output.scriptRef !== void 0 && t.set_script_ref($e(s.output.scriptRef)), a.TransactionUnspentOutput.new(e, t);
217
+ }, $t = (s) => {
218
+ const e = s.split(".")[1] ?? "0", t = `${parseInt(e, 10)}`, r = "1" + "0".repeat(e.length);
219
+ return a.UnitInterval.new(a.BigNum.from_str(t), a.BigNum.from_str(r));
220
+ }, j = (s) => s.length % 2 === 0 && /^[0-9A-F]*$/i.test(s) ? s : W(Buffer.from(s, "utf-8")), ss = (s) => Buffer.from(s, "hex").toString("utf-8"), pe = (s) => {
221
+ const e = [
222
+ { unit: "lovelace", quantity: s.coin().to_str() }
223
+ ], t = s.multiasset();
224
+ if (t !== void 0) {
225
+ const r = t.keys();
226
+ for (let i = 0; i < r.len(); i += 1) {
227
+ const n = r.get(i), o = t.get(n);
228
+ if (o !== void 0) {
229
+ const c = o.keys();
230
+ for (let A = 0; A < c.len(); A += 1) {
231
+ const u = c.get(A), I = o.get(u) ?? a.BigNum.from_str("0"), h = n.to_hex() + W(u.name());
232
+ e.push({ unit: h, quantity: I.to_str() });
233
+ }
234
+ }
235
+ }
236
+ }
237
+ return e;
238
+ }, Ct = (s) => {
239
+ 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, L)))), r = a.MultiAsset.new();
240
+ t.forEach((n) => {
241
+ const o = a.Assets.new();
242
+ s.filter((c) => c.unit.slice(0, L) === n).forEach((c) => {
243
+ o.insert(a.AssetName.new(g(c.unit.slice(L))), a.BigNum.from_str(c.quantity));
244
+ }), r.insert(Je(n), o);
245
+ });
246
+ const i = a.Value.new(a.BigNum.from_str(e ? e.quantity : "0"));
247
+ return (s.length > 1 || !e) && i.set_multiasset(r), i;
248
+ }, Jt = (s, e, t) => a.BaseAddress.new(s, a.StakeCredential.from_keyhash(e), a.StakeCredential.from_keyhash(t)), we = (s, e = "") => a.Bip32PrivateKey.from_bip39_entropy(g(s), g(j(e))), Wt = (s) => a.DataCost.new_coins_per_byte(a.BigNum.from_str(s)), rs = (s) => {
249
+ if (typeof s != "object" || !("input" in s))
250
+ return a.DatumSource.new(J(s));
251
+ const e = R(s);
252
+ if (e.output().has_plutus_data())
253
+ return a.DatumSource.new_ref_input(e.input());
254
+ throw new Error(`No inline datum found in UTxO: ${e.input().transaction_id().to_hex()}`);
255
+ }, jt = (s, e) => a.EnterpriseAddress.new(s, a.StakeCredential.from_keyhash(e)), Kt = (s, e) => a.RewardAddress.new(s, a.StakeCredential.from_keyhash(e)), is = (s) => {
256
+ if ("code" in s)
257
+ return a.PlutusScriptSource.new(wt(s.code, s.version));
258
+ const e = R(s);
259
+ if (e.output().has_script_ref()) {
260
+ const t = e.output().script_ref();
261
+ if (t.is_plutus_script()) {
262
+ const r = es(t), i = wt(r.code, r.version).hash();
263
+ return a.PlutusScriptSource.new_ref_input(i, e.input());
264
+ }
265
+ }
266
+ throw new Error(`No plutus script reference found in UTxO: ${e.input().transaction_id().to_hex()}`);
267
+ }, ht = (s) => {
268
+ const e = a.ScriptPubkey.new(s);
269
+ return a.NativeScript.new_script_pubkey(e);
270
+ }, as = (s = P) => {
271
+ const e = a.TransactionBuilderConfigBuilder.new().coins_per_utxo_byte(a.BigNum.from_str(s.coinsPerUTxOSize)).ex_unit_prices(a.ExUnitPrices.new($t(s.priceMem.toString()), $t(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();
272
+ return a.TransactionBuilder.new(e);
273
+ }, Xt = (s) => {
274
+ const e = a.TxInputsBuilder.new();
275
+ return s.map((t) => t instanceof a.TransactionUnspentOutput ? t : R(t)).forEach((t) => {
276
+ e.add_input(t.output().address(), t.input(), t.output().amount());
277
+ }), e;
278
+ }, ut = (s) => {
279
+ if (typeof s == "string")
280
+ return a.TransactionOutputBuilder.new().with_address(U(s));
281
+ let e = a.TransactionOutputBuilder.new().with_address(U(s.address));
282
+ if (s.datum) {
283
+ const { value: t, inline: r } = s.datum, i = J(t);
284
+ e = e.with_data_hash(a.hash_plutus_data(i)), r && (e = e.with_plutus_data(i));
285
+ }
286
+ if (s.script) {
287
+ const t = Qt(s.script);
288
+ e = e.with_script_ref(t);
289
+ }
290
+ return e;
291
+ }, C = (s) => it.isAxiosError(s) ? s.response ? JSON.stringify({
292
+ data: s.response.data,
293
+ headers: s.response.headers,
294
+ status: s.response.status
295
+ }) : s.request ? JSON.stringify(s.request) : s.message : JSON.stringify(s), ns = (s, e, t = !1, { maxTxSize: r, minFeeA: i, minFeeB: n } = P) => {
296
+ const o = e.filter((h) => ye(h) === !1).sort(Ee), c = a.BigNum.from_str(Ue(r, i, n)), A = t ? a.BigNum.from_str(s).checked_add(c).to_str() : s;
297
+ return yt(o, /* @__PURE__ */ new Map([
298
+ ["lovelace", A]
299
+ ]));
300
+ }, os = (s, e, t = !1, r = P) => {
301
+ const i = e.filter(ye).sort(Ee), n = s.get("lovelace") ?? "0", { maxTxSize: o, minFeeA: c, minFeeB: A } = r, u = a.BigNum.from_str(Ue(o, c, A)), I = t ? a.BigNum.from_str(n).checked_add(u).to_str() : n;
302
+ return s.set("lovelace", I), yt(i, s);
303
+ }, As = (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) => {
304
+ const n = i.output.amount.reduce((o, c) => o.checked_add(a.BigNum.from_str(c.quantity)), a.BigNum.from_str("0"));
305
+ return r.checked_add(n);
306
+ }, a.BigNum.from_str("0")).less_than(t.quantity) === !1), Ee = (s, e) => {
307
+ var i, n;
308
+ const t = a.BigNum.from_str(((i = s.output.amount.find((o) => o.unit === "lovelace")) == null ? void 0 : i.quantity) ?? "0");
309
+ return a.BigNum.from_str(((n = e.output.amount.find((o) => o.unit === "lovelace")) == null ? void 0 : n.quantity) ?? "0").compare(t);
310
+ }, ye = (s) => s.output.amount.length > 1, yt = (s, e, t = []) => s.length === 0 || As(t, e) ? t : cs(s[0], e) ? yt(s.slice(1), e, [...t, s[0]]) : yt(s.slice(1), e, t), cs = (s, e) => Array.from(e.keys()).some((t) => s.output.amount.find((r) => r.unit === t) !== void 0), Is = (s, e) => {
311
+ const t = hs(e), r = us(s, e);
312
+ return {
313
+ coseKey: W(t.to_bytes()),
314
+ coseSign1: W(r.to_bytes())
315
+ };
316
+ }, hs = (s) => {
317
+ const e = Ne.new(Z.from_key_type(Pe.OKP));
318
+ return e.set_algorithm_id(Z.from_algorithm_id(ge.EdDSA)), e.set_header(Z.new_int(xt.new_negative(Gt.from_str("1"))), vt.new_int(xt.new_i32(6))), e.set_header(Z.new_int(xt.new_negative(Gt.from_str("2"))), vt.new_bytes(s.key.to_public().as_bytes())), e;
319
+ }, us = (s, e) => {
320
+ const t = Rt.new(), r = Rt.new();
321
+ t.set_algorithm_id(Z.from_algorithm_id(ge.EdDSA)), t.set_header(Z.new_text("address"), vt.new_bytes(e.address.to_bytes()));
322
+ const i = Me.new(Te.new(t), r), n = Ve.new(i, g(s.payload), !1);
323
+ s.externalAAD !== void 0 && n.set_external_aad(g(s.externalAAD));
324
+ const o = n.make_data_to_sign(), c = e.key.sign(o.to_bytes());
325
+ return n.build(c.to_bytes());
326
+ };
327
+ var Zt = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {}, me = {}, B = { exports: {} };
328
+ M.notEqual = ls;
329
+ M.notOk = gs;
330
+ M.equal = ds;
331
+ M.ok = M;
332
+ var Be = M;
333
+ function ds(s, e, t) {
334
+ M(s == e, t);
335
+ }
336
+ function ls(s, e, t) {
337
+ M(s != e, t);
338
+ }
339
+ function gs(s, e) {
340
+ M(!s, e);
341
+ }
342
+ function M(s, e) {
343
+ if (!s)
344
+ throw new Error(e || "AssertionError");
345
+ }
346
+ var k = { exports: {} };
347
+ function fs(s) {
348
+ 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.');
349
+ }
350
+ var Cs = Ht;
351
+ Ht.supported = typeof WebAssembly < "u";
352
+ function Ht(s) {
353
+ if (!Ht.supported)
354
+ return null;
355
+ var e = s && s.imports, t = _s("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 = {
356
+ buffer: t,
357
+ memory: null,
358
+ exports: null,
359
+ realloc: n,
360
+ onload: o
361
+ };
362
+ return o(function() {
363
+ }), i;
364
+ function n(A) {
365
+ i.exports.memory.grow(Math.ceil(Math.abs(A - i.memory.length) / 65536)), i.memory = new Uint8Array(i.exports.memory.buffer);
366
+ }
367
+ function o(A) {
368
+ if (i.exports)
369
+ return A();
370
+ if (r) {
371
+ r.then(A.bind(null, null)).catch(A);
372
+ return;
373
+ }
374
+ try {
375
+ if (s && s.async)
376
+ throw new Error("async");
377
+ c({ instance: new WebAssembly.Instance(new WebAssembly.Module(t), e) });
378
+ } catch {
379
+ r = WebAssembly.instantiate(t, e).then(c);
380
+ }
381
+ o(A);
382
+ }
383
+ function c(A) {
384
+ i.exports = A.instance.exports, i.memory = i.exports.memory && i.exports.memory.buffer && new Uint8Array(i.exports.memory.buffer);
385
+ }
386
+ }
387
+ function _s(s) {
388
+ return typeof atob == "function" ? new Uint8Array(atob(s).split("").map(ps)) : new (fs("buffer")).Buffer(s, "base64");
389
+ }
390
+ function ps(s) {
391
+ return s.charCodeAt(0);
392
+ }
393
+ var b = Be, f = Cs(), N = 64, _t = [];
394
+ k.exports = Q;
395
+ var te = k.exports.BYTES_MIN = 16, ee = k.exports.BYTES_MAX = 64;
396
+ k.exports.BYTES = 32;
397
+ var se = k.exports.KEYBYTES_MIN = 16, re = k.exports.KEYBYTES_MAX = 64;
398
+ k.exports.KEYBYTES = 32;
399
+ var ie = k.exports.SALTBYTES = 16, ae = k.exports.PERSONALBYTES = 16;
400
+ function Q(s, e, t, r, i) {
401
+ if (!(this instanceof Q))
402
+ return new Q(s, e, t, r, i);
403
+ if (!(f && f.exports))
404
+ throw new Error("WASM not loaded. Wait for Blake2b.ready(cb)");
405
+ s || (s = 32), i !== !0 && (b(s >= te, "digestLength must be at least " + te + ", was given " + s), b(s <= ee, "digestLength must be at most " + ee + ", was given " + s), e != null && b(e.length >= se, "key must be at least " + se + ", was given " + e.length), e != null && b(e.length <= re, "key must be at least " + re + ", was given " + e.length), t != null && b(t.length === ie, "salt must be exactly " + ie + ", was given " + t.length), r != null && b(r.length === ae, "personal must be exactly " + ae + ", was given " + r.length)), _t.length || (_t.push(N), N += 216), this.digestLength = s, this.finalized = !1, this.pointer = _t.pop(), f.memory.fill(0, 0, 64), f.memory[0] = this.digestLength, f.memory[1] = e ? e.length : 0, f.memory[2] = 1, f.memory[3] = 1, t && f.memory.set(t, 32), r && f.memory.set(r, 48), this.pointer + 216 > f.memory.length && f.realloc(this.pointer + 216), f.exports.blake2b_init(this.pointer, this.digestLength), e && (this.update(e), f.memory.fill(0, N, N + e.length), f.memory[this.pointer + 200] = 128);
406
+ }
407
+ Q.prototype.update = function(s) {
408
+ return b(this.finalized === !1, "Hash instance finalized"), b(s, "input must be TypedArray or Buffer"), N + s.length > f.memory.length && f.realloc(N + s.length), f.memory.set(s, N), f.exports.blake2b_update(this.pointer, N, N + s.length), this;
409
+ };
410
+ Q.prototype.digest = function(s) {
411
+ if (b(this.finalized === !1, "Hash instance finalized"), this.finalized = !0, _t.push(this.pointer), f.exports.blake2b_final(this.pointer), !s || s === "binary")
412
+ return f.memory.slice(this.pointer + 128, this.pointer + 128 + this.digestLength);
413
+ if (s === "hex")
414
+ return Es(f.memory, this.pointer + 128, this.digestLength);
415
+ b(s.length >= this.digestLength, "input must be TypedArray or Buffer");
416
+ for (var e = 0; e < this.digestLength; e++)
417
+ s[e] = f.memory[this.pointer + 128 + e];
418
+ return s;
419
+ };
420
+ Q.prototype.final = Q.prototype.digest;
421
+ Q.WASM = f && f.buffer;
422
+ Q.SUPPORTED = typeof WebAssembly < "u";
423
+ Q.ready = function(s) {
424
+ if (s || (s = ws), !f)
425
+ return s(new Error("WebAssembly not supported"));
426
+ var e = new Promise(function(t, r) {
427
+ f.onload(function(i) {
428
+ i ? r() : t(), s(i);
429
+ });
430
+ });
431
+ return e;
432
+ };
433
+ Q.prototype.ready = Q.ready;
434
+ function ws() {
435
+ }
436
+ function Es(s, e, t) {
437
+ for (var r = "", i = 0; i < t; i++)
438
+ r += ys(s[e + i]);
439
+ return r;
440
+ }
441
+ function ys(s) {
442
+ return s < 16 ? "0" + s.toString(16) : s.toString(16);
443
+ }
444
+ var G = Be, ct = k.exports;
445
+ function dt(s, e, t) {
446
+ var r = s[e] + s[t], i = s[e + 1] + s[t + 1];
447
+ r >= 4294967296 && i++, s[e] = r, s[e + 1] = i;
448
+ }
449
+ function ne(s, e, t, r) {
450
+ var i = s[e] + t;
451
+ t < 0 && (i += 4294967296);
452
+ var n = s[e + 1] + r;
453
+ i >= 4294967296 && n++, s[e] = i, s[e + 1] = n;
454
+ }
455
+ function Qe(s, e) {
456
+ return s[e] ^ s[e + 1] << 8 ^ s[e + 2] << 16 ^ s[e + 3] << 24;
457
+ }
458
+ function O(s, e, t, r, i, n) {
459
+ var o = ot[i], c = ot[i + 1], A = ot[n], u = ot[n + 1];
460
+ dt(d, s, e), ne(d, s, o, c);
461
+ var I = d[r] ^ d[s], h = d[r + 1] ^ d[s + 1];
462
+ d[r] = h, d[r + 1] = I, dt(d, t, r), I = d[e] ^ d[t], h = d[e + 1] ^ d[t + 1], d[e] = I >>> 24 ^ h << 8, d[e + 1] = h >>> 24 ^ I << 8, dt(d, s, e), ne(d, s, A, u), I = d[r] ^ d[s], h = d[r + 1] ^ d[s + 1], d[r] = I >>> 16 ^ h << 16, d[r + 1] = h >>> 16 ^ I << 16, dt(d, t, r), I = d[e] ^ d[t], h = d[e + 1] ^ d[t + 1], d[e] = h >>> 31 ^ I << 1, d[e + 1] = I >>> 31 ^ h << 1;
463
+ }
464
+ var xe = new Uint32Array([
465
+ 4089235720,
466
+ 1779033703,
467
+ 2227873595,
468
+ 3144134277,
469
+ 4271175723,
470
+ 1013904242,
471
+ 1595750129,
472
+ 2773480762,
473
+ 2917565137,
474
+ 1359893119,
475
+ 725511199,
476
+ 2600822924,
477
+ 4215389547,
478
+ 528734635,
479
+ 327033209,
480
+ 1541459225
481
+ ]), ms = [
482
+ 0,
483
+ 1,
484
+ 2,
485
+ 3,
486
+ 4,
487
+ 5,
488
+ 6,
489
+ 7,
490
+ 8,
491
+ 9,
492
+ 10,
493
+ 11,
494
+ 12,
495
+ 13,
496
+ 14,
497
+ 15,
498
+ 14,
499
+ 10,
500
+ 4,
501
+ 8,
502
+ 9,
503
+ 15,
504
+ 13,
505
+ 6,
506
+ 1,
507
+ 12,
508
+ 0,
509
+ 2,
510
+ 11,
511
+ 7,
512
+ 5,
513
+ 3,
514
+ 11,
515
+ 8,
516
+ 12,
517
+ 0,
518
+ 5,
519
+ 2,
520
+ 15,
521
+ 13,
522
+ 10,
523
+ 14,
524
+ 3,
525
+ 6,
526
+ 7,
527
+ 1,
528
+ 9,
529
+ 4,
530
+ 7,
531
+ 9,
532
+ 3,
533
+ 1,
534
+ 13,
535
+ 12,
536
+ 11,
537
+ 14,
538
+ 2,
539
+ 6,
540
+ 5,
541
+ 10,
542
+ 4,
543
+ 0,
544
+ 15,
545
+ 8,
546
+ 9,
547
+ 0,
548
+ 5,
549
+ 7,
550
+ 2,
551
+ 4,
552
+ 10,
553
+ 15,
554
+ 14,
555
+ 1,
556
+ 11,
557
+ 12,
558
+ 6,
559
+ 8,
560
+ 3,
561
+ 13,
562
+ 2,
563
+ 12,
564
+ 6,
565
+ 10,
566
+ 0,
567
+ 11,
568
+ 8,
569
+ 3,
570
+ 4,
571
+ 13,
572
+ 7,
573
+ 5,
574
+ 15,
575
+ 14,
576
+ 1,
577
+ 9,
578
+ 12,
579
+ 5,
580
+ 1,
581
+ 15,
582
+ 14,
583
+ 13,
584
+ 4,
585
+ 10,
586
+ 0,
587
+ 7,
588
+ 6,
589
+ 3,
590
+ 9,
591
+ 2,
592
+ 8,
593
+ 11,
594
+ 13,
595
+ 11,
596
+ 7,
597
+ 14,
598
+ 12,
599
+ 1,
600
+ 3,
601
+ 9,
602
+ 5,
603
+ 0,
604
+ 15,
605
+ 4,
606
+ 8,
607
+ 6,
608
+ 2,
609
+ 10,
610
+ 6,
611
+ 15,
612
+ 14,
613
+ 9,
614
+ 11,
615
+ 3,
616
+ 0,
617
+ 8,
618
+ 12,
619
+ 2,
620
+ 13,
621
+ 7,
622
+ 1,
623
+ 4,
624
+ 10,
625
+ 5,
626
+ 10,
627
+ 2,
628
+ 8,
629
+ 4,
630
+ 7,
631
+ 6,
632
+ 1,
633
+ 5,
634
+ 15,
635
+ 11,
636
+ 9,
637
+ 14,
638
+ 3,
639
+ 12,
640
+ 13,
641
+ 0,
642
+ 0,
643
+ 1,
644
+ 2,
645
+ 3,
646
+ 4,
647
+ 5,
648
+ 6,
649
+ 7,
650
+ 8,
651
+ 9,
652
+ 10,
653
+ 11,
654
+ 12,
655
+ 13,
656
+ 14,
657
+ 15,
658
+ 14,
659
+ 10,
660
+ 4,
661
+ 8,
662
+ 9,
663
+ 15,
664
+ 13,
665
+ 6,
666
+ 1,
667
+ 12,
668
+ 0,
669
+ 2,
670
+ 11,
671
+ 7,
672
+ 5,
673
+ 3
674
+ ], y = new Uint8Array(ms.map(function(s) {
675
+ return s * 2;
676
+ })), d = new Uint32Array(32), ot = new Uint32Array(32);
677
+ function Se(s, e) {
678
+ var t = 0;
679
+ for (t = 0; t < 16; t++)
680
+ d[t] = s.h[t], d[t + 16] = xe[t];
681
+ for (d[24] = d[24] ^ s.t, d[25] = d[25] ^ s.t / 4294967296, e && (d[28] = ~d[28], d[29] = ~d[29]), t = 0; t < 32; t++)
682
+ ot[t] = Qe(s.b, 4 * t);
683
+ for (t = 0; t < 12; t++)
684
+ O(0, 8, 16, 24, y[t * 16 + 0], y[t * 16 + 1]), O(2, 10, 18, 26, y[t * 16 + 2], y[t * 16 + 3]), O(4, 12, 20, 28, y[t * 16 + 4], y[t * 16 + 5]), O(6, 14, 22, 30, y[t * 16 + 6], y[t * 16 + 7]), O(0, 10, 20, 30, y[t * 16 + 8], y[t * 16 + 9]), O(2, 12, 22, 24, y[t * 16 + 10], y[t * 16 + 11]), O(4, 14, 16, 26, y[t * 16 + 12], y[t * 16 + 13]), O(6, 8, 18, 28, y[t * 16 + 14], y[t * 16 + 15]);
685
+ for (t = 0; t < 16; t++)
686
+ s.h[t] = s.h[t] ^ d[t] ^ d[t + 16];
687
+ }
688
+ var Y = new Uint8Array([
689
+ 0,
690
+ 0,
691
+ 0,
692
+ 0,
693
+ 0,
694
+ 0,
695
+ 0,
696
+ 0,
697
+ 0,
698
+ 0,
699
+ 0,
700
+ 0,
701
+ 0,
702
+ 0,
703
+ 0,
704
+ 0,
705
+ 0,
706
+ 0,
707
+ 0,
708
+ 0,
709
+ 0,
710
+ 0,
711
+ 0,
712
+ 0,
713
+ 0,
714
+ 0,
715
+ 0,
716
+ 0,
717
+ 0,
718
+ 0,
719
+ 0,
720
+ 0,
721
+ 0,
722
+ 0,
723
+ 0,
724
+ 0,
725
+ 0,
726
+ 0,
727
+ 0,
728
+ 0,
729
+ 0,
730
+ 0,
731
+ 0,
732
+ 0,
733
+ 0,
734
+ 0,
735
+ 0,
736
+ 0,
737
+ 0,
738
+ 0,
739
+ 0,
740
+ 0,
741
+ 0,
742
+ 0,
743
+ 0,
744
+ 0,
745
+ 0,
746
+ 0,
747
+ 0,
748
+ 0,
749
+ 0,
750
+ 0,
751
+ 0,
752
+ 0
753
+ ]);
754
+ function st(s, e, t, r) {
755
+ Y.fill(0), this.b = new Uint8Array(128), this.h = new Uint32Array(16), this.t = 0, this.c = 0, this.outlen = s, Y[0] = s, e && (Y[1] = e.length), Y[2] = 1, Y[3] = 1, t && Y.set(t, 32), r && Y.set(r, 48);
756
+ for (var i = 0; i < 16; i++)
757
+ this.h[i] = xe[i] ^ Qe(Y, i * 4);
758
+ e && (De(this, e), this.c = 128);
759
+ }
760
+ st.prototype.update = function(s) {
761
+ return G(s != null, "input must be Uint8Array or Buffer"), De(this, s), this;
762
+ };
763
+ st.prototype.digest = function(s) {
764
+ var e = !s || s === "binary" || s === "hex" ? new Uint8Array(this.outlen) : s;
765
+ return G(e.length >= this.outlen, "out must have at least outlen bytes of space"), Bs(this, e), s === "hex" ? Qs(e) : e;
766
+ };
767
+ st.prototype.final = st.prototype.digest;
768
+ st.ready = function(s) {
769
+ ct.ready(function() {
770
+ s();
771
+ });
772
+ };
773
+ function De(s, e) {
774
+ for (var t = 0; t < e.length; t++)
775
+ s.c === 128 && (s.t += s.c, Se(s, !1), s.c = 0), s.b[s.c++] = e[t];
776
+ }
777
+ function Bs(s, e) {
778
+ for (s.t += s.c; s.c < 128; )
779
+ s.b[s.c++] = 0;
780
+ Se(s, !0);
781
+ for (var t = 0; t < s.outlen; t++)
782
+ e[t] = s.h[t >> 2] >> 8 * (t & 3);
783
+ return e;
784
+ }
785
+ function Qs(s) {
786
+ for (var e = "", t = 0; t < s.length; t++)
787
+ e += xs(s[t]);
788
+ return e;
789
+ }
790
+ function xs(s) {
791
+ return s < 16 ? "0" + s.toString(16) : s.toString(16);
792
+ }
793
+ var ve = st;
794
+ B.exports = function(e, t, r, i, n) {
795
+ return n !== !0 && (G(e >= oe, "outlen must be at least " + oe + ", was given " + e), G(e <= Ae, "outlen must be at most " + Ae + ", was given " + e), t != null && G(t.length >= ce, "key must be at least " + ce + ", was given " + t.length), t != null && G(t.length <= Ie, "key must be at most " + Ie + ", was given " + t.length), r != null && G(r.length === he, "salt must be exactly " + he + ", was given " + r.length), i != null && G(i.length === ue, "personal must be exactly " + ue + ", was given " + i.length)), new ve(e, t, r, i);
796
+ };
797
+ B.exports.ready = function(s) {
798
+ ct.ready(function() {
799
+ s();
800
+ });
801
+ };
802
+ B.exports.WASM_SUPPORTED = ct.SUPPORTED;
803
+ B.exports.WASM_LOADED = !1;
804
+ var oe = B.exports.BYTES_MIN = 16, Ae = B.exports.BYTES_MAX = 64;
805
+ B.exports.BYTES = 32;
806
+ var ce = B.exports.KEYBYTES_MIN = 16, Ie = B.exports.KEYBYTES_MAX = 64;
807
+ B.exports.KEYBYTES = 32;
808
+ var he = B.exports.SALTBYTES = 16, ue = B.exports.PERSONALBYTES = 16;
809
+ ct.ready(function(s) {
810
+ s || (B.exports.WASM_LOADED = !0, ve = ct);
811
+ });
812
+ var rt = {};
813
+ Object.defineProperty(rt, "__esModule", { value: !0 });
814
+ rt.bech32m = rt.bech32 = void 0;
815
+ const mt = "qpzry9x8gf2tvdw0s3jn54khce6mua7l", be = {};
816
+ for (let s = 0; s < mt.length; s++) {
817
+ const e = mt.charAt(s);
818
+ be[e] = s;
819
+ }
820
+ function et(s) {
821
+ const e = s >> 25;
822
+ return (s & 33554431) << 5 ^ -(e >> 0 & 1) & 996825010 ^ -(e >> 1 & 1) & 642813549 ^ -(e >> 2 & 1) & 513874426 ^ -(e >> 3 & 1) & 1027748829 ^ -(e >> 4 & 1) & 705979059;
823
+ }
824
+ function de(s) {
825
+ let e = 1;
826
+ for (let t = 0; t < s.length; ++t) {
827
+ const r = s.charCodeAt(t);
828
+ if (r < 33 || r > 126)
829
+ return "Invalid prefix (" + s + ")";
830
+ e = et(e) ^ r >> 5;
831
+ }
832
+ e = et(e);
833
+ for (let t = 0; t < s.length; ++t) {
834
+ const r = s.charCodeAt(t);
835
+ e = et(e) ^ r & 31;
836
+ }
837
+ return e;
838
+ }
839
+ function Nt(s, e, t, r) {
840
+ let i = 0, n = 0;
841
+ const o = (1 << t) - 1, c = [];
842
+ for (let A = 0; A < s.length; ++A)
843
+ for (i = i << e | s[A], n += e; n >= t; )
844
+ n -= t, c.push(i >> n & o);
845
+ if (r)
846
+ n > 0 && c.push(i << t - n & o);
847
+ else {
848
+ if (n >= e)
849
+ return "Excess padding";
850
+ if (i << t - n & o)
851
+ return "Non-zero padding";
852
+ }
853
+ return c;
854
+ }
855
+ function Ss(s) {
856
+ return Nt(s, 8, 5, !0);
857
+ }
858
+ function Ds(s) {
859
+ const e = Nt(s, 5, 8, !1);
860
+ if (Array.isArray(e))
861
+ return e;
862
+ }
863
+ function vs(s) {
864
+ const e = Nt(s, 5, 8, !1);
865
+ if (Array.isArray(e))
866
+ return e;
867
+ throw new Error(e);
868
+ }
869
+ function Ke(s) {
870
+ let e;
871
+ s === "bech32" ? e = 1 : e = 734539939;
872
+ function t(o, c, A) {
873
+ if (A = A || 90, o.length + 7 + c.length > A)
874
+ throw new TypeError("Exceeds length limit");
875
+ o = o.toLowerCase();
876
+ let u = de(o);
877
+ if (typeof u == "string")
878
+ throw new Error(u);
879
+ let I = o + "1";
880
+ for (let h = 0; h < c.length; ++h) {
881
+ const _ = c[h];
882
+ if (_ >> 5 !== 0)
883
+ throw new Error("Non 5-bit word");
884
+ u = et(u) ^ _, I += mt.charAt(_);
885
+ }
886
+ for (let h = 0; h < 6; ++h)
887
+ u = et(u);
888
+ u ^= e;
889
+ for (let h = 0; h < 6; ++h) {
890
+ const _ = u >> (5 - h) * 5 & 31;
891
+ I += mt.charAt(_);
892
+ }
893
+ return I;
894
+ }
895
+ function r(o, c) {
896
+ if (c = c || 90, o.length < 8)
897
+ return o + " too short";
898
+ if (o.length > c)
899
+ return "Exceeds length limit";
900
+ const A = o.toLowerCase(), u = o.toUpperCase();
901
+ if (o !== A && o !== u)
902
+ return "Mixed-case string " + o;
903
+ o = A;
904
+ const I = o.lastIndexOf("1");
905
+ if (I === -1)
906
+ return "No separator character for " + o;
907
+ if (I === 0)
908
+ return "Missing prefix for " + o;
909
+ const h = o.slice(0, I), _ = o.slice(I + 1);
910
+ if (_.length < 6)
911
+ return "Data too short";
912
+ let D = de(h);
913
+ if (typeof D == "string")
914
+ return D;
915
+ const $ = [];
916
+ for (let F = 0; F < _.length; ++F) {
917
+ const V = _.charAt(F), l = be[V];
918
+ if (l === void 0)
919
+ return "Unknown character " + V;
920
+ D = et(D) ^ l, !(F + 6 >= _.length) && $.push(l);
921
+ }
922
+ return D !== e ? "Invalid checksum for " + o : { prefix: h, words: $ };
923
+ }
924
+ function i(o, c) {
925
+ const A = r(o, c);
926
+ if (typeof A == "object")
927
+ return A;
928
+ }
929
+ function n(o, c) {
930
+ const A = r(o, c);
931
+ if (typeof A == "object")
932
+ return A;
933
+ throw new Error(A);
934
+ }
935
+ return {
936
+ decodeUnsafe: i,
937
+ decode: n,
938
+ encode: t,
939
+ toWords: Ss,
940
+ fromWordsUnsafe: Ds,
941
+ fromWords: vs
942
+ };
943
+ }
944
+ rt.bech32 = Ke("bech32");
945
+ rt.bech32m = Ke("bech32m");
946
+ var bs = Zt && Zt.__importDefault || function(s) {
947
+ return s && s.__esModule ? s : { default: s };
948
+ };
949
+ Object.defineProperty(me, "__esModule", { value: !0 });
950
+ const Ks = bs(B.exports), lt = rt, Dt = "asset";
951
+ class At {
952
+ constructor(e) {
953
+ this.hashBuf = e;
954
+ }
955
+ static fromHash(e) {
956
+ return new At(e);
957
+ }
958
+ static fromParts(e, t) {
959
+ const r = (0, Ks.default)(20).update(new Uint8Array([...e, ...t])).digest("binary");
960
+ return At.fromHash(r);
961
+ }
962
+ static fromBech32(e) {
963
+ const { prefix: t, words: r } = lt.bech32.decode(e);
964
+ if (t !== Dt)
965
+ throw new Error("Invalid asset fingerprint");
966
+ const i = Buffer.from(lt.bech32.fromWords(r));
967
+ return At.fromHash(i);
968
+ }
969
+ fingerprint() {
970
+ const e = lt.bech32.toWords(this.hashBuf);
971
+ return lt.bech32.encode(Dt, e);
972
+ }
973
+ hash() {
974
+ return Buffer.from(this.hashBuf).toString("hex");
975
+ }
976
+ prefix() {
977
+ return Dt;
978
+ }
979
+ checksum() {
980
+ return this.fingerprint().slice(-6);
981
+ }
982
+ }
983
+ var Us = me.default = At;
984
+ const ks = Us, Fs = (s, e) => {
985
+ const t = Le(s), r = t.derive(St + 1852).derive(St + 1815).derive(St + e), i = r.derive(0).derive(0).to_raw_key(), n = r.derive(2).derive(0).to_raw_key();
986
+ return r.free(), t.free(), { paymentKey: i, stakeKey: n };
987
+ }, Ls = (s) => {
988
+ const e = J(s);
989
+ return a.hash_plutus_data(e).to_hex();
990
+ }, qs = (s, e = Date.now()) => {
991
+ if (pt[s]) {
992
+ const [t, r, i, n] = pt[s];
993
+ 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);
994
+ }
995
+ throw new Error(`Couldn't resolve EpochNo for network: ${s}`);
996
+ }, Hs = (s, e) => ks.fromParts(g(s), g(e)).fingerprint(), zs = (s, e) => Re[s][e], $s = (s) => Bt(s).hash().to_hex(), tt = (s) => {
997
+ var e, t;
998
+ try {
999
+ const r = [
1000
+ (e = kt(s)) == null ? void 0 : e.payment_cred().to_keyhash(),
1001
+ (t = Ce(s)) == null ? void 0 : t.payment_cred().to_keyhash()
1002
+ ].find((i) => i !== void 0);
1003
+ if (r !== void 0)
1004
+ return r.to_hex();
1005
+ throw new Error(`Couldn't resolve payment key hash from address: ${s}`);
1006
+ } catch (r) {
1007
+ throw new Error(`An error occurred during resolvePaymentKeyHash: ${r}.`);
1008
+ }
1009
+ }, Js = (s, e = 0) => {
1010
+ const t = wt(s.code, s.version);
1011
+ return a.EnterpriseAddress.new(e, a.StakeCredential.from_scripthash(t.hash())).to_address().to_bech32();
1012
+ }, Ws = (s) => {
1013
+ try {
1014
+ const e = Ce(s), t = e == null ? void 0 : e.payment_cred().to_scripthash();
1015
+ if (t !== void 0)
1016
+ return t.to_hex();
1017
+ throw new Error(`Couldn't resolve script hash from address: ${s}`);
1018
+ } catch (e) {
1019
+ throw new Error(`An error occurred during resolveScriptHash: ${e}.`);
1020
+ }
1021
+ }, js = (s) => a.Ed25519KeyHash.from_hex(s).to_bech32("pool1"), Xs = (s) => {
1022
+ const e = le(s.join(" ")), t = we(e), r = t.to_bech32();
1023
+ return t.free(), r;
1024
+ }, Zs = (s) => Qt(s).to_hex(), tr = (s, e = Date.now()) => {
1025
+ if (pt[s]) {
1026
+ const [t, r, i] = pt[s];
1027
+ 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();
1028
+ }
1029
+ throw new Error(`Couldn't resolve SlotNo for network: ${s}`);
1030
+ }, Pt = (s) => {
1031
+ try {
1032
+ const e = U(s), t = kt(s), r = t == null ? void 0 : t.stake_cred().to_keyhash();
1033
+ if (r !== void 0)
1034
+ return Kt(e.network_id(), r).to_address().to_bech32();
1035
+ throw new Error(`Couldn't resolve reward address from address: ${s}`);
1036
+ } catch (e) {
1037
+ throw new Error(`An error occurred during resolveRewardAddress: ${e}.`);
1038
+ }
1039
+ }, gt = (s) => {
1040
+ var e, t;
1041
+ try {
1042
+ const r = [
1043
+ (e = kt(s)) == null ? void 0 : e.stake_cred().to_keyhash(),
1044
+ (t = _e(s)) == null ? void 0 : t.payment_cred().to_keyhash()
1045
+ ].find((i) => i !== void 0);
1046
+ if (r !== void 0)
1047
+ return r.to_hex();
1048
+ throw new Error(`Couldn't resolve stake key hash from address: ${s}`);
1049
+ } catch (r) {
1050
+ throw new Error(`An error occurred during resolveStakeKeyHash: ${r}.`);
1051
+ }
1052
+ }, Ue = (s, e = P.minFeeA, t = P.minFeeB) => (BigInt(e) * BigInt(s) + BigInt(t)).toString(), Ns = (s) => {
1053
+ const e = q(s).body();
1054
+ return a.hash_transaction(e).to_hex();
1055
+ };
1056
+ class er {
1057
+ _axiosInstance;
1058
+ constructor(e, t = 0) {
1059
+ const r = e.slice(0, 7);
1060
+ this._axiosInstance = it.create({
1061
+ baseURL: `https://cardano-${r}.blockfrost.io/api/v${t}`,
1062
+ headers: { project_id: e }
1063
+ });
1064
+ }
1065
+ async fetchAccountInfo(e) {
1066
+ const t = e.startsWith("addr") ? Pt(e) : e;
1067
+ try {
1068
+ const { data: r, status: i } = await this._axiosInstance.get(`accounts/${t}`);
1069
+ if (i === 200)
1070
+ return {
1071
+ active: r.active || r.active_epoch !== null,
1072
+ poolId: r.pool_id,
1073
+ balance: r.controlled_amount,
1074
+ rewards: r.withdrawable_amount,
1075
+ withdrawals: r.withdrawals_sum
1076
+ };
1077
+ throw C(r);
1078
+ } catch (r) {
1079
+ throw C(r);
1080
+ }
1081
+ }
1082
+ async fetchAddressUTxOs(e, t) {
1083
+ const r = t !== void 0 ? `/${t}` : "", i = `addresses/${e}/utxos` + r, n = async (A = 1, u = []) => {
1084
+ const { data: I, status: h } = await this._axiosInstance.get(`${i}?page=${A}`);
1085
+ if (h === 200)
1086
+ return I.length > 0 ? n(A + 1, [...u, ...await Promise.all(I.map(c))]) : u;
1087
+ throw C(I);
1088
+ }, o = async (A) => {
1089
+ if (A) {
1090
+ const { data: u, status: I } = await this._axiosInstance.get(`scripts/${A}`);
1091
+ if (I === 200) {
1092
+ const h = u.type.startsWith("plutus") ? {
1093
+ code: await this.fetchPlutusScriptCBOR(A),
1094
+ version: u.type.replace("plutus", "")
1095
+ } : await this.fetchNativeScriptJSON(A);
1096
+ return Qt(h).to_hex();
1097
+ }
1098
+ throw C(u);
1099
+ }
1100
+ }, c = async (A) => ({
1101
+ input: {
1102
+ outputIndex: A.output_index,
1103
+ txHash: A.tx_hash
1104
+ },
1105
+ output: {
1106
+ address: e,
1107
+ amount: A.amount,
1108
+ dataHash: A.data_hash ?? void 0,
1109
+ plutusData: A.inline_datum ?? void 0,
1110
+ scriptRef: await o(A.reference_script_hash)
1111
+ }
1112
+ });
1113
+ try {
1114
+ return await n();
1115
+ } catch {
1116
+ return [];
1117
+ }
1118
+ }
1119
+ async fetchAssetMetadata(e) {
1120
+ throw new Error("fetchAssetMetadata not implemented.");
1121
+ }
1122
+ async fetchHandleAddress(e) {
1123
+ throw new Error("fetchHandleAddress not implemented.");
1124
+ }
1125
+ async fetchProtocolParameters(e = Number.NaN) {
1126
+ try {
1127
+ const { data: t, status: r } = await this._axiosInstance.get(`epochs/${isNaN(e) ? "latest" : e}/parameters`);
1128
+ if (r === 200)
1129
+ return {
1130
+ coinsPerUTxOSize: t.coins_per_utxo_word,
1131
+ collateralPercent: t.collateral_percent,
1132
+ decentralisation: t.decentralisation_param,
1133
+ epoch: t.epoch,
1134
+ keyDeposit: t.key_deposit,
1135
+ maxBlockExMem: t.max_block_ex_mem,
1136
+ maxBlockExSteps: t.max_block_ex_steps,
1137
+ maxBlockHeaderSize: t.max_block_header_size,
1138
+ maxBlockSize: t.max_block_size,
1139
+ maxCollateralInputs: t.max_collateral_inputs,
1140
+ maxTxExMem: t.max_tx_ex_mem,
1141
+ maxTxExSteps: t.max_tx_ex_steps,
1142
+ maxTxSize: t.max_tx_size,
1143
+ maxValSize: t.max_val_size,
1144
+ minFeeA: t.min_fee_a,
1145
+ minFeeB: t.min_fee_b,
1146
+ minPoolCost: t.min_pool_cost,
1147
+ poolDeposit: t.pool_deposit,
1148
+ priceMem: t.price_mem,
1149
+ priceStep: t.price_step
1150
+ };
1151
+ throw C(t);
1152
+ } catch (t) {
1153
+ throw C(t);
1154
+ }
1155
+ }
1156
+ async submitTx(e) {
1157
+ try {
1158
+ const t = { "Content-Type": "application/cbor" }, { data: r, status: i } = await this._axiosInstance.post("tx/submit", g(e), { headers: t });
1159
+ if (i === 200)
1160
+ return r;
1161
+ throw C(r);
1162
+ } catch (t) {
1163
+ throw C(t);
1164
+ }
1165
+ }
1166
+ async fetchPlutusScriptCBOR(e) {
1167
+ const { data: t, status: r } = await this._axiosInstance.get(`scripts/${e}/cbor`);
1168
+ if (r === 200)
1169
+ return t.cbor;
1170
+ throw C(t);
1171
+ }
1172
+ async fetchNativeScriptJSON(e) {
1173
+ const { data: t, status: r } = await this._axiosInstance.get(`scripts/${e}/json`);
1174
+ if (r === 200)
1175
+ return t.json;
1176
+ throw C(t);
1177
+ }
1178
+ }
1179
+ class sr {
1180
+ _axiosInstance;
1181
+ constructor(e, t, r) {
1182
+ const i = r.host ?? "ipfs.infura.io", n = r.port ?? 5001, o = r.version ?? 0;
1183
+ this._axiosInstance = it.create({
1184
+ baseURL: `https://${i}:${n}/api/v${o}`,
1185
+ auth: { username: e, password: t }
1186
+ });
1187
+ }
1188
+ async uploadContent(e, t = !1) {
1189
+ try {
1190
+ const r = { "Content-Type": "multipart/form-data" }, { data: i, status: n } = await this._axiosInstance.post(`add?recursive=${t}`, e, { headers: r });
1191
+ if (n === 200)
1192
+ return i;
1193
+ throw C(i);
1194
+ } catch (r) {
1195
+ throw C(r);
1196
+ }
1197
+ }
1198
+ }
1199
+ class rr {
1200
+ _axiosInstance;
1201
+ constructor(e, t = 0) {
1202
+ this._axiosInstance = it.create({
1203
+ baseURL: `https://${e}.koios.rest/api/v${t}`
1204
+ });
1205
+ }
1206
+ async fetchAccountInfo(e) {
1207
+ try {
1208
+ const t = e.startsWith("addr") ? Pt(e) : e, { data: r, status: i } = await this._axiosInstance.post("account_info", { _stake_addresses: [t] });
1209
+ if (i === 200)
1210
+ return {
1211
+ poolId: r[0].delegated_pool,
1212
+ active: r[0].status === "registered",
1213
+ balance: r[0].total_balance.toString(),
1214
+ rewards: r[0].rewards_available,
1215
+ withdrawals: r[0].withdrawals
1216
+ };
1217
+ throw C(r);
1218
+ } catch (t) {
1219
+ throw C(t);
1220
+ }
1221
+ }
1222
+ async fetchAddressUTxOs(e, t) {
1223
+ const r = (i) => {
1224
+ if (i) {
1225
+ const n = i.type.startsWith("plutus") ? {
1226
+ code: i.bytes,
1227
+ version: i.type.replace("plutus", "")
1228
+ } : Ft(ft(i.bytes));
1229
+ return Qt(n).to_hex();
1230
+ }
1231
+ };
1232
+ try {
1233
+ const { data: i, status: n } = await this._axiosInstance.post("address_info", { _addresses: [e] });
1234
+ if (n === 200) {
1235
+ const o = i.flatMap((c) => c.utxo_set).map((c) => ({
1236
+ input: {
1237
+ outputIndex: c.tx_index,
1238
+ txHash: c.tx_hash
1239
+ },
1240
+ output: {
1241
+ address: e,
1242
+ amount: [
1243
+ { unit: "lovelace", quantity: c.value },
1244
+ ...c.asset_list.map((A) => ({
1245
+ unit: `${A.policy_id}${A.asset_name}`,
1246
+ quantity: `${A.quantity}`
1247
+ }))
1248
+ ],
1249
+ dataHash: c.datum_hash ?? void 0,
1250
+ plutusData: c.inline_datum.bytes ?? void 0,
1251
+ scriptRef: r(c.reference_script)
1252
+ }
1253
+ }));
1254
+ return t !== void 0 ? o.filter((c) => c.output.amount.find((A) => A.unit === t) !== void 0) : o;
1255
+ }
1256
+ throw C(i);
1257
+ } catch {
1258
+ return [];
1259
+ }
1260
+ }
1261
+ async fetchAssetMetadata(e) {
1262
+ throw new Error("fetchAssetMetadata not implemented.");
1263
+ }
1264
+ async fetchHandleAddress(e) {
1265
+ throw new Error("fetchHandleAddress not implemented.");
1266
+ }
1267
+ async fetchProtocolParameters(e) {
1268
+ try {
1269
+ const { data: t, status: r } = await this._axiosInstance.get(`epoch_params?_epoch_no=${e}`);
1270
+ if (r === 200)
1271
+ return {
1272
+ coinsPerUTxOSize: t[0].coins_per_utxo_size,
1273
+ collateralPercent: t[0].collateral_percent,
1274
+ decentralisation: t[0].decentralisation,
1275
+ epoch: t[0].epoch_no,
1276
+ keyDeposit: t[0].key_deposit,
1277
+ maxBlockExMem: t[0].max_block_ex_mem.toString(),
1278
+ maxBlockExSteps: t[0].max_block_ex_steps.toString(),
1279
+ maxBlockHeaderSize: t[0].max_bh_size,
1280
+ maxBlockSize: t[0].max_block_size,
1281
+ maxCollateralInputs: t[0].max_collateral_inputs,
1282
+ maxTxExMem: t[0].max_tx_ex_mem.toString(),
1283
+ maxTxExSteps: t[0].max_tx_ex_steps.toString(),
1284
+ maxTxSize: t[0].max_tx_size,
1285
+ maxValSize: t[0].max_val_size.toString(),
1286
+ minFeeA: t[0].min_fee_a,
1287
+ minFeeB: t[0].min_fee_b,
1288
+ minPoolCost: t[0].min_pool_cost,
1289
+ poolDeposit: t[0].pool_deposit,
1290
+ priceMem: t[0].price_mem,
1291
+ priceStep: t[0].price_step
1292
+ };
1293
+ throw C(t);
1294
+ } catch (t) {
1295
+ throw C(t);
1296
+ }
1297
+ }
1298
+ async submitTx(e) {
1299
+ try {
1300
+ const t = { "Content-Type": "application/cbor" }, { data: r, status: i } = await this._axiosInstance.post("submittx", g(e), { headers: t });
1301
+ if (i === 202)
1302
+ return r;
1303
+ throw C(r);
1304
+ } catch (t) {
1305
+ throw C(t);
1306
+ }
1307
+ }
1308
+ }
1309
+ class ir {
1310
+ _axiosInstance;
1311
+ constructor(e, t, r, i = 1) {
1312
+ this._axiosInstance = it.create({
1313
+ baseURL: `https://cardano-${e}.tangocrypto.com/${t}/v${i}`,
1314
+ headers: { "x-api-key": r }
1315
+ });
1316
+ }
1317
+ async fetchAccountInfo(e) {
1318
+ try {
1319
+ const t = e.startsWith("addr") ? Pt(e) : e, { data: r, status: i } = await this._axiosInstance.get(`wallets/${t}`);
1320
+ if (i === 200)
1321
+ return {
1322
+ poolId: r.pool_id,
1323
+ active: r.active,
1324
+ balance: r.controlled_total_stake,
1325
+ rewards: r.rewards_sum,
1326
+ withdrawals: r.withdrawals_sum
1327
+ };
1328
+ throw C(r);
1329
+ } catch (t) {
1330
+ throw C(t);
1331
+ }
1332
+ }
1333
+ async fetchAddressUTxOs(e, t) {
1334
+ const r = t !== void 0 ? `/assets/${t}` : "", i = `addresses/${e}${r}/utxos?size=50`, n = async (A = "", u = []) => {
1335
+ var _;
1336
+ const { data: I, status: h } = await this._axiosInstance.get(`${i}&cursor=${A}`);
1337
+ if (h === 200)
1338
+ return I.cursor !== null && ((_ = I.cursor) == null ? void 0 : _.length) > 0 ? n(I.cursor, [...u, ...I.data.map(c)]) : I.data.map(c);
1339
+ throw C(I);
1340
+ }, o = (A, u) => {
1341
+ const I = [{
1342
+ unit: "lovelace",
1343
+ quantity: A.toString()
1344
+ }];
1345
+ return u.forEach((h) => {
1346
+ const _ = j(h.asset_name);
1347
+ I.push({
1348
+ unit: `${h.policy_id}${_}`,
1349
+ quantity: h.quantity.toString()
1350
+ });
1351
+ }), I;
1352
+ }, c = (A) => ({
1353
+ input: {
1354
+ outputIndex: A.index,
1355
+ txHash: A.hash
1356
+ },
1357
+ output: {
1358
+ address: e,
1359
+ amount: o(A.value, A.assets)
1360
+ }
1361
+ });
1362
+ try {
1363
+ return await n();
1364
+ } catch {
1365
+ return [];
1366
+ }
1367
+ }
1368
+ async fetchAssetMetadata(e) {
1369
+ throw new Error("fetchAssetMetadata not implemented.");
1370
+ }
1371
+ async fetchHandleAddress(e) {
1372
+ throw new Error("fetchHandleAddress not implemented.");
1373
+ }
1374
+ async fetchProtocolParameters(e) {
1375
+ try {
1376
+ const { data: t, status: r } = await this._axiosInstance.get(`epochs/${e}/parameters`);
1377
+ if (r === 200)
1378
+ return {
1379
+ coinsPerUTxOSize: t.coins_per_utxo_size.toString(),
1380
+ collateralPercent: t.collateral_percent,
1381
+ decentralisation: t.decentralisation,
1382
+ epoch: t.epoch_no,
1383
+ keyDeposit: t.key_deposit.toString(),
1384
+ maxBlockExMem: t.max_block_ex_mem.toString(),
1385
+ maxBlockExSteps: t.max_block_ex_steps.toString(),
1386
+ maxBlockHeaderSize: t.max_block_header_size,
1387
+ maxBlockSize: t.max_block_size,
1388
+ maxCollateralInputs: t.max_collateral_inputs,
1389
+ maxTxExMem: t.max_tx_ex_mem.toString(),
1390
+ maxTxExSteps: t.max_tx_ex_steps.toString(),
1391
+ maxTxSize: t.max_tx_size,
1392
+ maxValSize: t.max_val_size.toString(),
1393
+ minFeeA: t.min_fee_a,
1394
+ minFeeB: t.min_fee_b,
1395
+ minPoolCost: t.min_pool_cost.toString(),
1396
+ poolDeposit: t.pool_deposit.toString(),
1397
+ priceMem: t.price_mem,
1398
+ priceStep: t.price_step
1399
+ };
1400
+ throw C(t);
1401
+ } catch (t) {
1402
+ throw C(t);
1403
+ }
1404
+ }
1405
+ async submitTx(e) {
1406
+ try {
1407
+ const t = { "Content-Type": "application/json" }, { data: r, status: i } = await this._axiosInstance.post("transactions/submit", { tx: e }, { headers: t });
1408
+ if (i === 200)
1409
+ return r.tx_id;
1410
+ throw C(r);
1411
+ } catch (t) {
1412
+ throw C(t);
1413
+ }
1414
+ }
1415
+ }
1416
+ class ar {
1417
+ static withOneSignature(e) {
1418
+ const t = K(tt(e));
1419
+ return ht(t).to_hex();
1420
+ }
1421
+ static withAtLeastNSignatures(e, t) {
1422
+ const r = a.NativeScripts.new();
1423
+ e.forEach((n) => {
1424
+ const o = K(tt(n));
1425
+ r.add(ht(o));
1426
+ });
1427
+ const i = a.ScriptNOfK.new(t, r);
1428
+ return a.NativeScript.new_script_any(i).to_hex();
1429
+ }
1430
+ static withAnySignature(e) {
1431
+ const t = a.NativeScripts.new();
1432
+ e.forEach((i) => {
1433
+ const n = K(tt(i));
1434
+ t.add(ht(n));
1435
+ });
1436
+ const r = a.ScriptAny.new(t);
1437
+ return a.NativeScript.new_script_any(r).to_hex();
1438
+ }
1439
+ static withAllSignatures(e) {
1440
+ const t = a.NativeScripts.new();
1441
+ e.forEach((i) => {
1442
+ const n = K(tt(i));
1443
+ t.add(ht(n));
1444
+ });
1445
+ const r = a.ScriptAll.new(t);
1446
+ return a.NativeScript.new_script_any(r).to_hex();
1447
+ }
1448
+ static fromNativeScript(e) {
1449
+ return Bt(e).to_hex();
1450
+ }
1451
+ }
1452
+ function z(s, e, t, r) {
1453
+ var i = arguments.length, n = i < 3 ? e : r === null ? r = Object.getOwnPropertyDescriptor(e, t) : r, o;
1454
+ if (typeof Reflect == "object" && typeof Reflect.decorate == "function")
1455
+ n = Reflect.decorate(s, e, t, r);
1456
+ else
1457
+ for (var c = s.length - 1; c >= 0; c--)
1458
+ (o = s[c]) && (n = (i < 3 ? o(n) : i > 3 ? o(e, t, n) : o(e, t)) || n);
1459
+ return i > 3 && n && Object.defineProperty(e, t, n), n;
1460
+ }
1461
+ const Ps = (s) => class extends s {
1462
+ __visits = [];
1463
+ }, X = () => function(s, e, t) {
1464
+ const r = t.value;
1465
+ t.value = function(...i) {
1466
+ const n = r.call(this, ...i);
1467
+ return this.__visits && this.__visits.push(e), n;
1468
+ };
1469
+ };
1470
+ let T = class {
1471
+ _changeAddress;
1472
+ _recipients = /* @__PURE__ */ new Map();
1473
+ _totalBurns = /* @__PURE__ */ new Map();
1474
+ _totalMints = /* @__PURE__ */ new Map();
1475
+ _era;
1476
+ _initiator;
1477
+ _protocolParameters;
1478
+ _txBuilder;
1479
+ _txCertificates;
1480
+ _txInputsBuilder;
1481
+ _txWithdrawals;
1482
+ constructor(e = {}) {
1483
+ this._era = e.era, this._initiator = e.initiator, this._protocolParameters = e.parameters ?? P, this._txBuilder = as(e.parameters), this._txCertificates = a.Certificates.new(), this._txInputsBuilder = a.TxInputsBuilder.new(), this._txWithdrawals = a.Withdrawals.new();
1484
+ }
1485
+ static maskMetadata(e) {
1486
+ var i;
1487
+ const t = q(e), r = (i = t.auxiliary_data()) == null ? void 0 : i.metadata();
1488
+ if (r !== void 0) {
1489
+ const n = a.GeneralTransactionMetadata.new();
1490
+ for (let c = 0; c < r.len(); c += 1) {
1491
+ const A = r.keys().get(c), u = r.get(A);
1492
+ n.insert(A, a.TransactionMetadatum.from_hex("0".repeat(((u == null ? void 0 : u.to_hex()) ?? "").length)));
1493
+ }
1494
+ const o = t.auxiliary_data();
1495
+ return o == null || o.set_metadata(n), a.Transaction.new(t.body(), t.witness_set(), o).to_hex();
1496
+ }
1497
+ return e;
1498
+ }
1499
+ static readMetadata(e) {
1500
+ var r, i;
1501
+ return ((i = (r = q(e).auxiliary_data()) == null ? void 0 : r.metadata()) == null ? void 0 : i.to_hex()) ?? "";
1502
+ }
1503
+ static writeMetadata(e, t) {
1504
+ const r = q(e), i = r.auxiliary_data() ?? a.AuxiliaryData.new();
1505
+ return i.set_metadata(a.GeneralTransactionMetadata.from_hex(t)), a.Transaction.new(r.body(), r.witness_set(), i).to_hex();
1506
+ }
1507
+ get size() {
1508
+ return this._txBuilder.full_size();
1509
+ }
1510
+ async build() {
1511
+ try {
1512
+ return 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();
1513
+ } catch (e) {
1514
+ throw new Error(`[Transaction] An error occurred during build: ${e}.`);
1515
+ }
1516
+ }
1517
+ burnAsset(e, t) {
1518
+ const r = 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;
1519
+ return this._txBuilder.add_mint_asset(ft(e), a.AssetName.new(g(t.unit.slice(L))), a.Int.new_negative(a.BigNum.from_str(t.quantity))), this._totalBurns.set(t.unit, r), this;
1520
+ }
1521
+ delegateStake(e, t) {
1522
+ const r = a.Certificate.new_stake_delegation(a.StakeDelegation.new(a.StakeCredential.from_keyhash(K(gt(e))), a.Ed25519KeyHash.from_bech32(t)));
1523
+ return this._txCertificates.add(r), this;
1524
+ }
1525
+ deregisterStake(e) {
1526
+ const t = a.Certificate.new_stake_deregistration(a.StakeDeregistration.new(a.StakeCredential.from_keyhash(K(gt(e)))));
1527
+ return this._txCertificates.add(t), this;
1528
+ }
1529
+ mintAsset(e, t) {
1530
+ var c, A;
1531
+ const i = ((u, I) => {
1532
+ const h = ft(u).hash().to_hex(), _ = j(I.assetName);
1533
+ return {
1534
+ unit: `${h}${_}`,
1535
+ quantity: I.assetQuantity
1536
+ };
1537
+ })(e, t), o = a.BigNum.from_str(((c = this._totalMints.get(i.unit)) == null ? void 0 : c.assetQuantity) ?? "0").checked_add(a.BigNum.from_str(i.quantity));
1538
+ return this._txBuilder.add_mint_asset(ft(e), a.AssetName.new(g(j(t.assetName))), a.Int.new(a.BigNum.from_str(i.quantity))), this._recipients.has(t.recipient) ? (A = this._recipients.get(t.recipient)) == null || A.push(i) : this._recipients.set(t.recipient, [i]), this._totalMints.set(i.unit, {
1539
+ ...t,
1540
+ assetQuantity: o.to_str()
1541
+ }), this;
1542
+ }
1543
+ redeemValue(e) {
1544
+ if ("assetName" in e.value)
1545
+ throw new Error("Plutus Minting is not implemented yet...");
1546
+ const t = {
1547
+ tag: "SPEND",
1548
+ budget: Ye,
1549
+ index: this._txInputsBuilder.inputs().len(),
1550
+ data: {
1551
+ alternative: 0,
1552
+ fields: []
1553
+ },
1554
+ ...e.redeemer
1555
+ }, r = R(e.value), i = a.PlutusWitness.new_with_ref(is(e.script), rs(e.datum), Ze(t));
1556
+ return this._txInputsBuilder.add_plutus_script_input(i, r.input(), r.output().amount()), this;
1557
+ }
1558
+ registerStake(e) {
1559
+ const t = a.Certificate.new_stake_registration(a.StakeRegistration.new(a.StakeCredential.from_keyhash(K(gt(e)))));
1560
+ return this._txCertificates.add(t), this;
1561
+ }
1562
+ registerPool(e) {
1563
+ const t = a.Certificate.new_pool_registration(a.PoolRegistration.new(Xe(e)));
1564
+ return this._txCertificates.add(t), this;
1565
+ }
1566
+ retirePool(e, t) {
1567
+ const r = a.Certificate.new_pool_retirement(a.PoolRetirement.new(a.Ed25519KeyHash.from_bech32(e), t));
1568
+ return this._txCertificates.add(r), this;
1569
+ }
1570
+ sendAssets(e, t) {
1571
+ const r = Ct(t), i = r.multiasset();
1572
+ if (r.is_zero() || i === void 0)
1573
+ return this;
1574
+ const o = ut(e).next().with_asset_and_min_required_coin_by_utxo_cost(i, Wt(this._protocolParameters.coinsPerUTxOSize)).build();
1575
+ return this._txBuilder.add_output(o), this;
1576
+ }
1577
+ sendLovelace(e, t) {
1578
+ const i = ut(e).next().with_coin(a.BigNum.from_str(t)).build();
1579
+ return this._txBuilder.add_output(i), this;
1580
+ }
1581
+ sendValue(e, t) {
1582
+ const r = Ct(t.output.amount), n = ut(e).next().with_value(r).build();
1583
+ return this._txBuilder.add_output(n), this;
1584
+ }
1585
+ setChangeAddress(e) {
1586
+ return this._changeAddress = U(e), this;
1587
+ }
1588
+ setCollateral(e) {
1589
+ const t = Xt(e);
1590
+ return this._txBuilder.set_collateral(t), this;
1591
+ }
1592
+ setMetadata(e, t) {
1593
+ return this._txBuilder.add_json_metadatum_with_schema(a.BigNum.from_str(e.toString()), JSON.stringify(t), a.MetadataJsonSchema.NoConversions), this;
1594
+ }
1595
+ setRequiredSigners(e) {
1596
+ return Array.from(new Set(e.map((r) => r.startsWith("addr") ? tt(r) : gt(r)).map((r) => K(r)))).forEach((r) => {
1597
+ this._txBuilder.add_required_signer(r);
1598
+ }), this;
1599
+ }
1600
+ setTimeToStart(e) {
1601
+ return this._txBuilder.set_validity_start_interval_bignum(a.BigNum.from_str(e)), this;
1602
+ }
1603
+ setTimeToExpire(e) {
1604
+ return this._txBuilder.set_ttl_bignum(a.BigNum.from_str(e)), this;
1605
+ }
1606
+ setTxInputs(e) {
1607
+ return e.map((t) => R(t)).forEach((t) => {
1608
+ this._txInputsBuilder.add_input(t.output().address(), t.input(), t.output().amount());
1609
+ }), this;
1610
+ }
1611
+ withdrawRewards(e, t) {
1612
+ const r = _e(e);
1613
+ return r !== void 0 && this._txWithdrawals.insert(r, a.BigNum.from_str(t)), this;
1614
+ }
1615
+ async addBurnInputsIfNeeded() {
1616
+ if (this._initiator && this._totalBurns.size > 0 && this.notVisited("setTxInputs")) {
1617
+ const e = await this._initiator.getUsedUTxOs();
1618
+ os(this._totalBurns, e.map((r) => Et(r))).map((r) => R(r)).forEach((r) => {
1619
+ this._txInputsBuilder.add_input(r.output().address(), r.input(), r.output().amount());
1620
+ });
1621
+ }
1622
+ }
1623
+ async addChangeAddress() {
1624
+ if (this._initiator && this._changeAddress === void 0) {
1625
+ const e = await this._initiator.getUsedAddress();
1626
+ this._txBuilder.add_change_if_needed(e);
1627
+ } else
1628
+ this._changeAddress !== void 0 && this._txBuilder.add_change_if_needed(this._changeAddress);
1629
+ }
1630
+ async addCollateralIfNeeded() {
1631
+ if (this._initiator && this.notVisited("setCollateral")) {
1632
+ const e = await this._initiator.getUsedCollateral();
1633
+ this._txBuilder.set_collateral(Xt(e));
1634
+ }
1635
+ }
1636
+ async addRequiredSignersIfNeeded() {
1637
+ if (this._initiator && this.notVisited("setRequiredSigners")) {
1638
+ const e = await this._initiator.getUsedAddress(), t = tt(e.to_bech32());
1639
+ this._txBuilder.add_required_signer(K(t));
1640
+ }
1641
+ }
1642
+ async addTxInputsAsNeeded() {
1643
+ if (this._txBuilder.set_inputs(this._txInputsBuilder), this._txCertificates.len() > 0 && this._txBuilder.set_certs(this._txCertificates), this._txWithdrawals.len() > 0 && this._txBuilder.set_withdrawals(this._txWithdrawals), this.notVisited("setTxInputs")) {
1644
+ 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;
1645
+ this._txBuilder.add_inputs_from(r, i);
1646
+ }
1647
+ if (this.notVisited("redeemValue") === !1) {
1648
+ const e = this._era !== void 0 ? Lt[this._era] : Lt.BABBAGE;
1649
+ this._txBuilder.calc_script_data_hash(e);
1650
+ }
1651
+ }
1652
+ async forgeAssetsIfNeeded() {
1653
+ const e = (t, r) => {
1654
+ const i = t.data.assetName, n = t.data.metadata, o = t.unit.slice(0, L);
1655
+ if (r && r[o]) {
1656
+ const { [o]: c, ...A } = r, u = {
1657
+ [i]: n,
1658
+ ...c
1659
+ };
1660
+ return {
1661
+ [o]: {
1662
+ ...u
1663
+ },
1664
+ ...A
1665
+ };
1666
+ }
1667
+ return r !== void 0 ? {
1668
+ [o]: {
1669
+ [i]: n
1670
+ },
1671
+ ...r
1672
+ } : {
1673
+ [o]: { [i]: n }
1674
+ };
1675
+ };
1676
+ await this.addBurnInputsIfNeeded(), Array.from(this._totalMints, (t) => ({
1677
+ unit: t[0],
1678
+ data: t[1]
1679
+ })).reduce((t, r) => t.set(r.data.label, e(r, t.get(r.data.label))), /* @__PURE__ */ new Map()).forEach((t, r) => {
1680
+ this._txBuilder.add_json_metadatum(a.BigNum.from_str(r), JSON.stringify(t));
1681
+ }), this.addMintOutputs();
1682
+ }
1683
+ async filterAvailableUTxOs(e = []) {
1684
+ const t = a.TransactionUnspentOutputs.new();
1685
+ 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) => {
1686
+ t.add(i);
1687
+ }), t;
1688
+ }
1689
+ async selectLovelaceUTxOs(e) {
1690
+ if (this._initiator === void 0 || e === !1)
1691
+ return [];
1692
+ const t = await this._initiator.getUsedUTxOs(), r = ns("5000000", t.map((n) => Et(n)));
1693
+ return r.map((n) => R(n)).forEach((n) => {
1694
+ this._txBuilder.add_input(n.output().address(), n.input(), n.output().amount());
1695
+ }), r;
1696
+ }
1697
+ addMintOutputs() {
1698
+ this._recipients.forEach((e, t) => {
1699
+ const i = Ct(e).multiasset();
1700
+ if (i !== void 0) {
1701
+ const o = ut(t).next().with_asset_and_min_required_coin_by_utxo_cost(i, Wt(this._protocolParameters.coinsPerUTxOSize)).build();
1702
+ this._txBuilder.add_output(o);
1703
+ }
1704
+ });
1705
+ }
1706
+ notVisited(e) {
1707
+ return this.__visits.includes(e) === !1;
1708
+ }
1709
+ };
1710
+ z([
1711
+ X()
1712
+ ], T.prototype, "mintAsset", null);
1713
+ z([
1714
+ X()
1715
+ ], T.prototype, "redeemValue", null);
1716
+ z([
1717
+ X()
1718
+ ], T.prototype, "sendAssets", null);
1719
+ z([
1720
+ X()
1721
+ ], T.prototype, "sendValue", null);
1722
+ z([
1723
+ X()
1724
+ ], T.prototype, "setCollateral", null);
1725
+ z([
1726
+ X()
1727
+ ], T.prototype, "setRequiredSigners", null);
1728
+ z([
1729
+ X()
1730
+ ], T.prototype, "setTxInputs", null);
1731
+ T = z([
1732
+ Ps
1733
+ ], T);
1734
+ const ke = (s, e) => {
1735
+ const t = s.vkeys();
1736
+ if (t !== void 0) {
1737
+ const r = /* @__PURE__ */ new Set();
1738
+ for (let n = 0; n < t.len(); n += 1)
1739
+ r.add(t.get(n).to_hex());
1740
+ for (let n = 0; n < e.len(); n += 1)
1741
+ r.add(e.get(n).to_hex());
1742
+ const i = a.Vkeywitnesses.new();
1743
+ return r.forEach((n) => {
1744
+ i.add(a.Vkeywitness.from_hex(n));
1745
+ }), i;
1746
+ }
1747
+ return e;
1748
+ };
1749
+ class w {
1750
+ _networkId;
1751
+ _encryptedSecret;
1752
+ constructor(e, t) {
1753
+ this._networkId = e, this._encryptedSecret = t;
1754
+ }
1755
+ getAccount(e, t) {
1756
+ return this.accountContext(e, t, (r, i) => {
1757
+ const n = Jt(this._networkId, r.to_public().hash(), i.to_public().hash()).to_address().to_bech32(), o = jt(this._networkId, r.to_public().hash()).to_address().to_bech32(), c = Kt(this._networkId, i.to_public().hash()).to_address().to_bech32();
1758
+ return {
1759
+ baseAddress: n,
1760
+ enterpriseAddress: o,
1761
+ rewardAddress: c
1762
+ };
1763
+ });
1764
+ }
1765
+ signData(e, t, r, i) {
1766
+ try {
1767
+ return this.accountContext(e, t, (n, o) => {
1768
+ const c = { payload: i }, A = {
1769
+ address: w.resolveAddress(this._networkId, r, n, o),
1770
+ key: r.startsWith("stake") ? o : n
1771
+ }, { coseSign1: u, coseKey: I } = Is(c, A);
1772
+ return { signature: u, key: I };
1773
+ });
1774
+ } catch (n) {
1775
+ throw new Error(`An error occurred during signData: ${n}.`);
1776
+ }
1777
+ }
1778
+ signTx(e, t, r, i, n) {
1779
+ try {
1780
+ const o = fe(Ns(i));
1781
+ return this.accountContext(e, t, (c, A) => {
1782
+ const u = a.Vkeywitnesses.new();
1783
+ return w.resolveSigners(i, r, c.to_public().hash().to_hex()).forEach((h) => {
1784
+ if (h === c.to_public().hash().to_hex())
1785
+ u.add(a.make_vkey_witness(o, c));
1786
+ else if (h === A.to_public().hash().to_hex())
1787
+ u.add(a.make_vkey_witness(o, A));
1788
+ else if (n === !1)
1789
+ throw new Error(`Missing key witness for: ${h}`);
1790
+ }), u;
1791
+ });
1792
+ } catch (o) {
1793
+ throw new Error(`An error occurred during signTx: ${o}.`);
1794
+ }
1795
+ }
1796
+ static encryptMnemonic(e, t) {
1797
+ const r = le(e.join(" ")), i = we(r), n = W(i.as_bytes());
1798
+ return i.free(), w.encrypt(n, t);
1799
+ }
1800
+ static encryptPrivateKey(e, t) {
1801
+ const r = a.Bip32PrivateKey.from_bech32(e), i = W(r.as_bytes());
1802
+ return r.free(), w.encrypt(i, t);
1803
+ }
1804
+ static encryptSigningKeys(e, t, r) {
1805
+ const i = w.encrypt(e.slice(4), r), n = w.encrypt(t.slice(4), r);
1806
+ return [i, n];
1807
+ }
1808
+ static generateMnemonic(e = 256) {
1809
+ return He(e).split(" ");
1810
+ }
1811
+ accountContext(e, t, r) {
1812
+ const { paymentKey: i, stakeKey: n } = w.resolveKeys(e, t, this._encryptedSecret), o = r(i, n);
1813
+ return i.free(), n.free(), o;
1814
+ }
1815
+ static decrypt(e, t) {
1816
+ try {
1817
+ return a.decrypt_with_password(j(t), e);
1818
+ } catch {
1819
+ throw new Error("The password is incorrect.");
1820
+ }
1821
+ }
1822
+ static encrypt(e, t) {
1823
+ const r = Oe("0123456789abcdef"), i = r(64), n = r(24);
1824
+ return a.encrypt_with_password(j(t), i, n, e);
1825
+ }
1826
+ static resolveAddress(e, t, r, i) {
1827
+ const n = [
1828
+ Jt(e, r.to_public().hash(), i.to_public().hash()),
1829
+ jt(e, r.to_public().hash()),
1830
+ Kt(e, i.to_public().hash())
1831
+ ].find((o) => o.to_address().to_bech32() === t);
1832
+ if (n !== void 0)
1833
+ return n.to_address();
1834
+ throw new Error(`Address: ${t} doesn't belong to this account.`);
1835
+ }
1836
+ static resolveKeys(e, t, r) {
1837
+ if (typeof r == "string") {
1838
+ const o = w.decrypt(r, t);
1839
+ return Fs(o, e);
1840
+ }
1841
+ const i = w.decrypt(r[0], t), n = w.decrypt(r[1], t);
1842
+ return {
1843
+ paymentKey: a.PrivateKey.from_hex(i),
1844
+ stakeKey: a.PrivateKey.from_hex(n)
1845
+ };
1846
+ }
1847
+ static resolveSigners(e, t, r) {
1848
+ const i = (c) => {
1849
+ const A = (l, m = [], E = 0) => {
1850
+ var It, at, Mt, Tt, Vt;
1851
+ if (l === void 0 || E >= l.len())
1852
+ return m;
1853
+ const x = l.get(E), S = new Array();
1854
+ switch (x.kind()) {
1855
+ case a.CertificateKind.StakeDeregistration: {
1856
+ const p = (It = x.as_stake_deregistration()) == null ? void 0 : It.stake_credential(), H = (p == null ? void 0 : p.kind()) === a.StakeCredKind.Key ? p.to_keyhash() : void 0;
1857
+ H && S.push(H.to_hex());
1858
+ break;
1859
+ }
1860
+ case a.CertificateKind.StakeDelegation: {
1861
+ const p = (at = x.as_stake_delegation()) == null ? void 0 : at.stake_credential(), H = (p == null ? void 0 : p.kind()) === a.StakeCredKind.Key ? p.to_keyhash() : void 0;
1862
+ H && S.push(H.to_hex());
1863
+ break;
1864
+ }
1865
+ case a.CertificateKind.PoolRegistration: {
1866
+ const p = (Mt = x.as_pool_registration()) == null ? void 0 : Mt.pool_params().pool_owners();
1867
+ S.push(...I(p));
1868
+ break;
1869
+ }
1870
+ case a.CertificateKind.PoolRetirement: {
1871
+ const p = (Tt = x.as_pool_retirement()) == null ? void 0 : Tt.pool_keyhash();
1872
+ p && S.push(p.to_hex());
1873
+ break;
1874
+ }
1875
+ case a.CertificateKind.MoveInstantaneousRewardsCert: {
1876
+ const p = (Vt = x.as_move_instantaneous_rewards_cert()) == null ? void 0 : Vt.move_instantaneous_reward().as_to_stake_creds();
1877
+ if (p)
1878
+ for (let H = 0; H < p.len(); H += 1) {
1879
+ const Ot = p.keys().get(H), Yt = Ot.kind() === a.StakeCredKind.Key ? Ot.to_keyhash() : void 0;
1880
+ Yt && S.push(Yt.to_hex());
1881
+ }
1882
+ break;
1883
+ }
1884
+ }
1885
+ return A(l, [...m, ...S], E + 1);
1886
+ }, u = (l, m = [], E = 0) => {
1887
+ if (l === void 0 || E >= l.len())
1888
+ return m;
1889
+ const x = l.get(E).index(), S = l.get(E).transaction_id(), It = t.find((at) => at.input.outputIndex === x && at.input.txHash === S.to_hex()) !== void 0 ? r : "OUR_PRINCESS_IS_IN_ANOTHER_CASTLE";
1890
+ return u(l, [...m, It], E + 1);
1891
+ }, I = (l, m = [], E = 0) => l === void 0 || E >= l.len() ? m : I(l, [...m, l.get(E).to_hex()], E + 1), h = (l, m = [], E = 0) => {
1892
+ if (l === void 0 || E >= l.len())
1893
+ return m;
1894
+ const x = l.keys().get(E).payment_cred(), S = x.kind() === a.StakeCredKind.Key ? x.to_keyhash() : void 0;
1895
+ return h(l, S ? [...m, S.to_hex()] : m, E + 1);
1896
+ }, _ = c.certs(), D = c.collateral(), $ = c.inputs(), F = c.required_signers(), V = c.withdrawals();
1897
+ return [
1898
+ ...A(_),
1899
+ ...u(D),
1900
+ ...u($),
1901
+ ...I(F),
1902
+ ...h(V)
1903
+ ];
1904
+ }, n = (c) => {
1905
+ const A = (I, h = []) => {
1906
+ var _, D, $, F;
1907
+ if (I)
1908
+ for (let V = 0; V < I.len(); V += 1) {
1909
+ const l = I.get(V);
1910
+ switch (l.kind()) {
1911
+ case a.NativeScriptKind.ScriptPubkey: {
1912
+ const m = (_ = l.as_script_pubkey()) == null ? void 0 : _.addr_keyhash().to_hex();
1913
+ return m ? [...h, m] : h;
1914
+ }
1915
+ case a.NativeScriptKind.ScriptAll:
1916
+ return A((D = l.as_script_all()) == null ? void 0 : D.native_scripts(), h);
1917
+ case a.NativeScriptKind.ScriptAny:
1918
+ return A(($ = l.as_script_any()) == null ? void 0 : $.native_scripts(), h);
1919
+ case a.NativeScriptKind.ScriptNOfK:
1920
+ return A((F = l.as_script_n_of_k()) == null ? void 0 : F.native_scripts(), h);
1921
+ }
1922
+ }
1923
+ return h;
1924
+ }, u = c.native_scripts();
1925
+ return [
1926
+ ...A(u)
1927
+ ];
1928
+ }, o = q(e);
1929
+ return /* @__PURE__ */ new Set([
1930
+ ...i(o.body()),
1931
+ ...n(o.witness_set())
1932
+ ]);
1933
+ }
1934
+ }
1935
+ const v = "MARI0TIME";
1936
+ class or {
1937
+ _fetcher;
1938
+ _submitter;
1939
+ _wallet;
1940
+ constructor(e) {
1941
+ switch (this._fetcher = e.fetcher, this._submitter = e.submitter, e.key.type) {
1942
+ case "mnemonic":
1943
+ this._wallet = new w(e.networkId, w.encryptMnemonic(e.key.words, v));
1944
+ break;
1945
+ case "root":
1946
+ this._wallet = new w(e.networkId, w.encryptPrivateKey(e.key.bech32, v));
1947
+ break;
1948
+ case "cli":
1949
+ this._wallet = new w(e.networkId, w.encryptSigningKeys(e.key.payment, e.key.stake ?? "f0".repeat(34), v));
1950
+ }
1951
+ }
1952
+ getPaymentAddress(e = 0) {
1953
+ return this._wallet.getAccount(e, v).enterpriseAddress;
1954
+ }
1955
+ getRewardAddress(e = 0) {
1956
+ return this._wallet.getAccount(e, v).rewardAddress;
1957
+ }
1958
+ getUsedAddress(e = 0) {
1959
+ const t = this._wallet.getAccount(e, v);
1960
+ return U(t.enterpriseAddress);
1961
+ }
1962
+ getUsedCollateral(e = P.maxCollateralInputs) {
1963
+ throw new Error("getUsedCollateral not implemented.");
1964
+ }
1965
+ async getUsedUTxOs(e = 0) {
1966
+ const t = this._wallet.getAccount(e, v);
1967
+ return (await this._fetcher.fetchAddressUTxOs(t.enterpriseAddress)).map((i) => R(i));
1968
+ }
1969
+ signData(e, t, r = 0) {
1970
+ try {
1971
+ return this._wallet.signData(r, v, e, t);
1972
+ } catch (i) {
1973
+ throw new Error(`[AppWallet] An error occurred during signData: ${i}.`);
1974
+ }
1975
+ }
1976
+ async signTx(e, t = !1, r = 0) {
1977
+ try {
1978
+ const i = this._wallet.getAccount(r, v), n = await this._fetcher.fetchAddressUTxOs(i.enterpriseAddress), o = this._wallet.signTx(r, v, n, e, t), c = q(e), A = c.witness_set(), u = ke(A, o);
1979
+ return A.set_vkeys(u), a.Transaction.new(c.body(), A, c.auxiliary_data()).to_hex();
1980
+ } catch (i) {
1981
+ throw new Error(`[AppWallet] An error occurred during signTx: ${i}.`);
1982
+ }
1983
+ }
1984
+ submitTx(e) {
1985
+ return this._submitter.submitTx(e);
1986
+ }
1987
+ static brew(e = 256) {
1988
+ return w.generateMnemonic(e);
1989
+ }
1990
+ }
1991
+ class Ut {
1992
+ _walletInstance;
1993
+ constructor(e) {
1994
+ this._walletInstance = e;
1995
+ }
1996
+ static getInstalledWallets() {
1997
+ return window.cardano === void 0 ? [] : qt.filter((e) => window.cardano[e] !== void 0).map((e) => ({
1998
+ name: window.cardano[e].name,
1999
+ icon: window.cardano[e].icon,
2000
+ version: window.cardano[e].apiVersion
2001
+ }));
2002
+ }
2003
+ static async enable(e) {
2004
+ try {
2005
+ const t = await Ut.resolveInstance(e);
2006
+ if (t !== void 0)
2007
+ return new Ut(t);
2008
+ throw new Error(`Couldn't create an instance of wallet: ${e}`);
2009
+ } catch (t) {
2010
+ throw new Error(`[BrowserWallet] An error occurred during enable: ${t}.`);
2011
+ }
2012
+ }
2013
+ async getBalance() {
2014
+ const e = await this._walletInstance.getBalance();
2015
+ return pe(je(e));
2016
+ }
2017
+ async getChangeAddress() {
2018
+ const e = await this._walletInstance.getChangeAddress();
2019
+ return nt(e).to_bech32();
2020
+ }
2021
+ async getCollateral(e = P.maxCollateralInputs) {
2022
+ return (await this.getUsedCollateral(e)).map((r) => Et(r));
2023
+ }
2024
+ getNetworkId() {
2025
+ return this._walletInstance.getNetworkId();
2026
+ }
2027
+ async getRewardAddresses() {
2028
+ return (await this._walletInstance.getRewardAddresses()).map((t) => nt(t).to_bech32());
2029
+ }
2030
+ async getUnusedAddresses() {
2031
+ return (await this._walletInstance.getUnusedAddresses()).map((t) => nt(t).to_bech32());
2032
+ }
2033
+ async getUsedAddresses() {
2034
+ return (await this._walletInstance.getUsedAddresses()).map((t) => nt(t).to_bech32());
2035
+ }
2036
+ async getUtxos() {
2037
+ return (await this.getUsedUTxOs()).map((t) => Et(t));
2038
+ }
2039
+ signData(e, t) {
2040
+ const r = U(e).to_hex();
2041
+ return this._walletInstance.signData(r, j(t));
2042
+ }
2043
+ async signTx(e, t = !1) {
2044
+ try {
2045
+ const r = q(e), i = r.witness_set(), n = await this._walletInstance.signTx(e, t), o = We(n).vkeys() ?? a.Vkeywitnesses.new(), c = ke(i, o);
2046
+ return i.set_vkeys(c), W(a.Transaction.new(r.body(), i, r.auxiliary_data()).to_bytes());
2047
+ } catch (r) {
2048
+ throw new Error(`[BrowserWallet] An error occurred during signTx: ${JSON.stringify(r)}.`);
2049
+ }
2050
+ }
2051
+ submitTx(e) {
2052
+ return this._walletInstance.submitTx(e);
2053
+ }
2054
+ async getUsedAddress() {
2055
+ const e = await this._walletInstance.getUsedAddresses();
2056
+ return nt(e[0]);
2057
+ }
2058
+ async getUsedCollateral(e = P.maxCollateralInputs) {
2059
+ return (await this._walletInstance.experimental.getCollateral() ?? []).map((r) => zt(r)).slice(0, e);
2060
+ }
2061
+ async getUsedUTxOs() {
2062
+ return (await this._walletInstance.getUtxos() ?? []).map((t) => zt(t));
2063
+ }
2064
+ async getAssets() {
2065
+ return (await this.getBalance()).filter((t) => t.unit !== "lovelace").map((t) => {
2066
+ const r = t.unit.slice(0, L), i = t.unit.slice(L), n = Hs(r, i);
2067
+ return {
2068
+ unit: t.unit,
2069
+ policyId: r,
2070
+ assetName: ss(i),
2071
+ fingerprint: n,
2072
+ quantity: t.quantity
2073
+ };
2074
+ });
2075
+ }
2076
+ async getLovelace() {
2077
+ const t = (await this.getBalance()).find((r) => r.unit === "lovelace");
2078
+ return t !== void 0 ? t.quantity : "0";
2079
+ }
2080
+ async getPolicyIdAssets(e) {
2081
+ return (await this.getAssets()).filter((r) => r.policyId === e);
2082
+ }
2083
+ async getPolicyIds() {
2084
+ const e = await this.getBalance();
2085
+ return Array.from(new Set(e.map((t) => t.unit.slice(0, L)))).filter((t) => t !== "lovelace");
2086
+ }
2087
+ static resolveInstance(e) {
2088
+ if (window.cardano === void 0)
2089
+ return;
2090
+ const t = qt.map((r) => window.cardano[r]).filter((r) => r !== void 0).find((r) => r.name.toLowerCase() === e.toLowerCase());
2091
+ return t == null ? void 0 : t.enable();
2092
+ }
2093
+ }
2094
+ const Fe = "http://localhost:4000/", Ms = "http://localhost:5000/", Ts = `${Fe}access`, Vs = `${Fe}transaction/signtx`;
2095
+ class Ar {
2096
+ static getAxiosInstance() {
2097
+ return it.create({
2098
+ baseURL: Ms,
2099
+ withCredentials: !0
2100
+ });
2101
+ }
2102
+ static getAppId() {
2103
+ return window.location.hostname;
2104
+ }
2105
+ static async openMinaFrontend(e) {
2106
+ const t = this.getAppId();
2107
+ e.includes("?") ? e = `${e}&appId=${t}` : e = `${e}?appId=${t}`;
2108
+ const r = "left=100,top=100,width=540,height=540", i = window.open(e, "meshWindow", r);
2109
+ return i || console.error("the window did not open", i), await (async () => new Promise((n) => {
2110
+ window.addEventListener("message", async (o) => {
2111
+ o.data.target == "minaWallet" && n(o.data);
2112
+ });
2113
+ }))();
2114
+ }
2115
+ static async get(e, t = {}) {
2116
+ const r = this.getAppId();
2117
+ t = {
2118
+ ...t,
2119
+ appId: r
2120
+ };
2121
+ try {
2122
+ return (await this.getAxiosInstance().get(e, {
2123
+ params: t
2124
+ })).data;
2125
+ } catch {
2126
+ console.error("Not logged in");
2127
+ return;
2128
+ }
2129
+ }
2130
+ static async enable() {
2131
+ return await this.get("wallet/getuserwalletsmeta") === void 0 ? await this.openMinaFrontend(Ts) : !0;
2132
+ }
2133
+ static async getChangeAddress(e = void 0, t = void 0) {
2134
+ return await this.get("wallet/getchangeaddress", {
2135
+ walletId: e,
2136
+ accountIndex: t
2137
+ });
2138
+ }
2139
+ static async getUtxos(e = void 0, t = void 0) {
2140
+ return await this.get("wallet/getutxo", {
2141
+ walletId: e,
2142
+ accountIndex: t
2143
+ });
2144
+ }
2145
+ static async signTx(e, t = !1) {
2146
+ const r = await this.get("wallet/getuserwalletsmeta");
2147
+ if (console.log("userWalletsMeta", r), r) {
2148
+ const i = await this.openMinaFrontend(`${Vs}?unsignedTx=${e}&partialSign=${t}`);
2149
+ if (i instanceof a.Vkeywitnesses) {
2150
+ const n = q(e), o = n.witness_set();
2151
+ o.set_vkeys(i);
2152
+ const c = a.Transaction.new(n.body(), o, n.auxiliary_data()).to_hex();
2153
+ return console.log("signedTx", c), c;
2154
+ }
2155
+ } else
2156
+ return;
2157
+ }
2158
+ }
2159
+ export {
2160
+ or as AppWallet,
2161
+ er as BlockfrostProvider,
2162
+ Ut as BrowserWallet,
2163
+ w as EmbeddedWallet,
2164
+ ar as ForgeScript,
2165
+ sr as InfuraProvider,
2166
+ rr as KoiosProvider,
2167
+ Ar as MinaWallet,
2168
+ ir as TangoProvider,
2169
+ T as Transaction,
2170
+ ns as largestFirst,
2171
+ os as largestFirstMultiAsset,
2172
+ Ls as resolveDataHash,
2173
+ qs as resolveEpochNo,
2174
+ Hs as resolveFingerprint,
2175
+ zs as resolveLanguageView,
2176
+ $s as resolveNativeScriptHash,
2177
+ tt as resolvePaymentKeyHash,
2178
+ Js as resolvePlutusScriptAddress,
2179
+ Ws as resolvePlutusScriptHash,
2180
+ js as resolvePoolId,
2181
+ Xs as resolvePrivateKey,
2182
+ Pt as resolveRewardAddress,
2183
+ Zs as resolveScriptRef,
2184
+ tr as resolveSlotNo,
2185
+ gt as resolveStakeKeyHash,
2186
+ Ue as resolveTxFees,
2187
+ Ns as resolveTxHash
2188
+ };