@helios-lang/effect 0.3.0 → 0.4.31

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 (173) hide show
  1. package/.vscode/settings.json +3 -0
  2. package/dist/Cardano/Ledger/AssetClass.js +6 -1
  3. package/dist/Cardano/Ledger/AssetClass.js.map +1 -1
  4. package/dist/Cardano/Ledger/Assets.js +85 -3
  5. package/dist/Cardano/Ledger/Assets.js.map +1 -1
  6. package/dist/Cardano/Ledger/Credential.js +1 -1
  7. package/dist/Cardano/Ledger/Credential.js.map +1 -1
  8. package/dist/Cardano/Ledger/DCert.js +2 -1
  9. package/dist/Cardano/Ledger/DCert.js.map +1 -1
  10. package/dist/Cardano/Ledger/DatumHash.js +2 -2
  11. package/dist/Cardano/Ledger/DatumHash.js.map +1 -1
  12. package/dist/Cardano/Ledger/MintingPolicy.js +2 -0
  13. package/dist/Cardano/Ledger/MintingPolicy.js.map +1 -1
  14. package/dist/Cardano/Ledger/NativeScript.js +2 -1
  15. package/dist/Cardano/Ledger/NativeScript.js.map +1 -1
  16. package/dist/Cardano/Ledger/PubKey.js +1 -1
  17. package/dist/Cardano/Ledger/PubKey.js.map +1 -1
  18. package/dist/Cardano/Ledger/PubKeyHash.js +1 -1
  19. package/dist/Cardano/Ledger/PubKeyHash.js.map +1 -1
  20. package/dist/Cardano/Ledger/Redeemer.js +1 -1
  21. package/dist/Cardano/Ledger/Redeemer.js.map +1 -1
  22. package/dist/Cardano/Ledger/Signature.js +1 -0
  23. package/dist/Cardano/Ledger/Signature.js.map +1 -1
  24. package/dist/Cardano/Ledger/Tx.js +165 -17
  25. package/dist/Cardano/Ledger/Tx.js.map +1 -1
  26. package/dist/Cardano/Ledger/TxOutput.js +12 -6
  27. package/dist/Cardano/Ledger/TxOutput.js.map +1 -1
  28. package/dist/Cardano/Ledger/TxOutputDatum.js +36 -34
  29. package/dist/Cardano/Ledger/TxOutputDatum.js.map +1 -1
  30. package/dist/Cardano/Ledger/UTxO.js +1 -1
  31. package/dist/Cardano/Ledger/UTxO.js.map +1 -1
  32. package/dist/Cardano/Ledger/UTxORef.js +1 -0
  33. package/dist/Cardano/Ledger/UTxORef.js.map +1 -1
  34. package/dist/Cardano/Ledger/ValidatorHash.js +1 -1
  35. package/dist/Cardano/Ledger/ValidatorHash.js.map +1 -1
  36. package/dist/Cardano/Network/AssetMetadata.js +11 -0
  37. package/dist/Cardano/Network/AssetMetadata.js.map +1 -0
  38. package/dist/Cardano/Network/IsMainnet.js +1 -1
  39. package/dist/Cardano/Network/IsMainnet.js.map +1 -1
  40. package/dist/Cardano/Network/Params.js +105 -1
  41. package/dist/Cardano/Network/Params.js.map +1 -1
  42. package/dist/Cardano/Network/Submit.js +15 -0
  43. package/dist/Cardano/Network/Submit.js.map +1 -0
  44. package/dist/Cardano/Network/UTxO.js +2 -2
  45. package/dist/Cardano/Network/UTxO.js.map +1 -1
  46. package/dist/Cardano/Network/UTxOsAt.js +3 -2
  47. package/dist/Cardano/Network/UTxOsAt.js.map +1 -1
  48. package/dist/Cardano/Network/errors.js +16 -3
  49. package/dist/Cardano/Network/errors.js.map +1 -1
  50. package/dist/Cardano/Network/index.js +2 -0
  51. package/dist/Cardano/Network/index.js.map +1 -1
  52. package/dist/Cardano/ScriptContext.js +264 -0
  53. package/dist/Cardano/ScriptContext.js.map +1 -0
  54. package/dist/Cardano/TxBuilder.js +88 -42
  55. package/dist/Cardano/TxBuilder.js.map +1 -1
  56. package/dist/Cardano/Uplc/Builtins.js +293 -32
  57. package/dist/Cardano/Uplc/Builtins.js.map +1 -1
  58. package/dist/Cardano/Uplc/Cek.js +6 -5
  59. package/dist/Cardano/Uplc/Cek.js.map +1 -1
  60. package/dist/Cardano/Uplc/Cost.js +257 -1
  61. package/dist/Cardano/Uplc/Cost.js.map +1 -1
  62. package/dist/Cardano/Uplc/Data.js +22 -8
  63. package/dist/Cardano/Uplc/Data.js.map +1 -1
  64. package/dist/Cardano/Uplc/Script.js +52 -10
  65. package/dist/Cardano/Uplc/Script.js.map +1 -1
  66. package/dist/Cardano/Uplc/Term.js +14 -0
  67. package/dist/Cardano/Uplc/Term.js.map +1 -1
  68. package/dist/Cardano/Uplc/index.js +2 -1
  69. package/dist/Cardano/Uplc/index.js.map +1 -1
  70. package/dist/Cardano/Wallet.js +4 -1
  71. package/dist/Cardano/Wallet.js.map +1 -1
  72. package/dist/Cardano/index.js +3 -3
  73. package/dist/Cardano/index.js.map +1 -1
  74. package/dist/Codecs/Base32.js +4 -1
  75. package/dist/Codecs/Base32.js.map +1 -1
  76. package/dist/Codecs/BigEndian.js +1 -1
  77. package/dist/Codecs/BigEndian.js.map +1 -1
  78. package/dist/Codecs/Bytes.js +1 -1
  79. package/dist/Codecs/Bytes.js.map +1 -1
  80. package/dist/Codecs/LittleEndian.js +1 -1
  81. package/dist/Codecs/LittleEndian.js.map +1 -1
  82. package/dist/Codecs/Utf8.js +1 -1
  83. package/dist/Codecs/Utf8.js.map +1 -1
  84. package/dist/Crypto/Bip32.js +5 -2
  85. package/dist/Crypto/Bip32.js.map +1 -1
  86. package/dist/Crypto/Curve.js +1 -0
  87. package/dist/Crypto/Curve.js.map +1 -1
  88. package/dist/Crypto/Ed25519.js +2 -1
  89. package/dist/Crypto/Ed25519.js.map +1 -1
  90. package/dist/Crypto/EdDSA.js +2 -1
  91. package/dist/Crypto/EdDSA.js.map +1 -1
  92. package/dist/Crypto/Sha3_256.js +1 -0
  93. package/dist/Crypto/Sha3_256.js.map +1 -1
  94. package/dist/Crypto/index.js +2 -0
  95. package/dist/Crypto/index.js.map +1 -1
  96. package/dist/index.js +3 -3
  97. package/dist/index.js.map +1 -1
  98. package/package.json +2 -1
  99. package/types/Cardano/Ledger/AssetClass.d.ts +6 -1
  100. package/types/Cardano/Ledger/AssetClass.d.ts.map +1 -1
  101. package/types/Cardano/Ledger/Assets.d.ts +14 -2
  102. package/types/Cardano/Ledger/Assets.d.ts.map +1 -1
  103. package/types/Cardano/Ledger/Credential.d.ts +1 -1
  104. package/types/Cardano/Ledger/Credential.d.ts.map +1 -1
  105. package/types/Cardano/Ledger/DatumHash.d.ts +2 -2
  106. package/types/Cardano/Ledger/DatumHash.d.ts.map +1 -1
  107. package/types/Cardano/Ledger/MintingPolicy.d.ts +1 -0
  108. package/types/Cardano/Ledger/MintingPolicy.d.ts.map +1 -1
  109. package/types/Cardano/Ledger/PubKey.d.ts +2 -2
  110. package/types/Cardano/Ledger/PubKey.d.ts.map +1 -1
  111. package/types/Cardano/Ledger/PubKeyHash.d.ts +2 -2
  112. package/types/Cardano/Ledger/PubKeyHash.d.ts.map +1 -1
  113. package/types/Cardano/Ledger/Redeemer.d.ts +1 -1
  114. package/types/Cardano/Ledger/Redeemer.d.ts.map +1 -1
  115. package/types/Cardano/Ledger/Signature.d.ts +1 -1
  116. package/types/Cardano/Ledger/Signature.d.ts.map +1 -1
  117. package/types/Cardano/Ledger/Tx.d.ts +19 -241
  118. package/types/Cardano/Ledger/Tx.d.ts.map +1 -1
  119. package/types/Cardano/Ledger/TxOutput.d.ts +95 -105
  120. package/types/Cardano/Ledger/TxOutput.d.ts.map +1 -1
  121. package/types/Cardano/Ledger/TxOutputDatum.d.ts +69 -68
  122. package/types/Cardano/Ledger/TxOutputDatum.d.ts.map +1 -1
  123. package/types/Cardano/Ledger/UTxO.d.ts +268 -318
  124. package/types/Cardano/Ledger/UTxO.d.ts.map +1 -1
  125. package/types/Cardano/Ledger/ValidatorHash.d.ts +2 -2
  126. package/types/Cardano/Ledger/ValidatorHash.d.ts.map +1 -1
  127. package/types/Cardano/Network/AssetMetadata.d.ts +15 -0
  128. package/types/Cardano/Network/AssetMetadata.d.ts.map +1 -0
  129. package/types/Cardano/Network/IsMainnet.d.ts +1 -1
  130. package/types/Cardano/Network/Params.d.ts +9 -1
  131. package/types/Cardano/Network/Params.d.ts.map +1 -1
  132. package/types/Cardano/Network/Submit.d.ts +18 -0
  133. package/types/Cardano/Network/Submit.d.ts.map +1 -0
  134. package/types/Cardano/Network/UTxO.d.ts +1 -1
  135. package/types/Cardano/Network/UTxO.d.ts.map +1 -1
  136. package/types/Cardano/Network/UTxOsAt.d.ts +2 -2
  137. package/types/Cardano/Network/UTxOsAt.d.ts.map +1 -1
  138. package/types/Cardano/Network/errors.d.ts +22 -2
  139. package/types/Cardano/Network/errors.d.ts.map +1 -1
  140. package/types/Cardano/Network/index.d.ts +2 -0
  141. package/types/Cardano/Network/index.d.ts.map +1 -1
  142. package/types/Cardano/ScriptContext.d.ts +1340 -0
  143. package/types/Cardano/ScriptContext.d.ts.map +1 -0
  144. package/types/Cardano/TxBuilder.d.ts +7 -5
  145. package/types/Cardano/TxBuilder.d.ts.map +1 -1
  146. package/types/Cardano/Uplc/Builtins.d.ts.map +1 -1
  147. package/types/Cardano/Uplc/Cek.d.ts.map +1 -1
  148. package/types/Cardano/Uplc/Cost.d.ts +1 -0
  149. package/types/Cardano/Uplc/Cost.d.ts.map +1 -1
  150. package/types/Cardano/Uplc/Data.d.ts.map +1 -1
  151. package/types/Cardano/Uplc/Script.d.ts +5 -3
  152. package/types/Cardano/Uplc/Script.d.ts.map +1 -1
  153. package/types/Cardano/Uplc/Term.d.ts +3 -0
  154. package/types/Cardano/Uplc/Term.d.ts.map +1 -1
  155. package/types/Cardano/Uplc/index.d.ts +2 -1
  156. package/types/Cardano/Uplc/index.d.ts.map +1 -1
  157. package/types/Cardano/Wallet.d.ts +18 -23
  158. package/types/Cardano/Wallet.d.ts.map +1 -1
  159. package/types/Cardano/index.d.ts +3 -3
  160. package/types/Cardano/index.d.ts.map +1 -1
  161. package/types/Codecs/Base32.d.ts +4 -1
  162. package/types/Codecs/Base32.d.ts.map +1 -1
  163. package/types/Crypto/Bip32.d.ts +5 -3
  164. package/types/Crypto/Bip32.d.ts.map +1 -1
  165. package/types/Crypto/EdDSA.d.ts +1 -1
  166. package/types/Crypto/EdDSA.d.ts.map +1 -1
  167. package/types/Crypto/index.d.ts +2 -0
  168. package/types/Crypto/index.d.ts.map +1 -1
  169. package/types/index.d.ts +3 -3
  170. package/types/index.d.ts.map +1 -1
  171. package/bun.lock +0 -60
  172. package/tsconfig.build.json +0 -14
  173. package/tsconfig.json +0 -38
@@ -1,9 +1,10 @@
1
- import { Effect, Either, Encoding } from "effect";
1
+ import { Console, Effect, Either, Encoding } from "effect";
2
+ import { TaggedError } from "effect/Data";
2
3
  import * as Bytes from "../../Codecs/Bytes.js";
3
4
  import * as Cbor from "../../Codecs/Cbor.js";
4
- import * as Crypto from "../../Crypto";
5
+ import * as Crypto from "../../Crypto/index.js";
5
6
  import * as Params from "../Network/Params.js";
6
- import { Data, Script } from "../Uplc";
7
+ import { Cek, Data, Script } from "../Uplc/index.js";
7
8
  import * as Address from "./Address.js";
8
9
  import * as Assets from "./Assets.js";
9
10
  import * as DCert from "./DCert.js";
@@ -12,6 +13,7 @@ import * as PubKeyHash from "./PubKeyHash.js";
12
13
  import * as Redeemer from "./Redeemer.js";
13
14
  import * as RewardAddress from "./RewardAddress.js";
14
15
  import * as Signature from "./Signature.js";
16
+ import * as TxHash from "./TxHash.js";
15
17
  import * as TxOutput from "./TxOutput.js";
16
18
  import * as UTxO from "./UTxO.js";
17
19
  import * as DatumHash from "./DatumHash.js";
@@ -51,7 +53,7 @@ export const decode = (options = {}) => (bytes) => Effect.gen(function* () {
51
53
  Cbor.decodeBool,
52
54
  Cbor.decodeNullOption(decodeMetadata)
53
55
  ])(bytes);
54
- return {
56
+ const tx = {
55
57
  body: {
56
58
  ...body,
57
59
  inputs: yield* UTxO.resolveAll(options)(body.inputs),
@@ -62,6 +64,7 @@ export const decode = (options = {}) => (bytes) => Effect.gen(function* () {
62
64
  isValid,
63
65
  metadata
64
66
  };
67
+ return tx;
65
68
  });
66
69
  export const encode = (options = {}) => (tx) => {
67
70
  if (options.forFeeCalculation === true) {
@@ -174,7 +177,7 @@ const encodeBody = (options) => (body) => {
174
177
  m.set(8, Cbor.encodeInt(body.firstValidSlot));
175
178
  }
176
179
  if (!Assets.isEmpty(body.minted)) {
177
- m.set(9, Assets.encode(body.minted));
180
+ m.set(9, Assets.encode({ withoutLovelace: true })(body.minted));
178
181
  }
179
182
  if (body.scriptDataHash !== undefined) {
180
183
  m.set(11, Cbor.encodeBytes(body.scriptDataHash));
@@ -420,38 +423,69 @@ const refScriptsFee = (feePerByte, growthIncrement = 25600, growthFactor = 1.2)
420
423
  let multiplier = 1.0;
421
424
  let fee = 0n;
422
425
  while (s > growthIncrement) {
423
- fee += BigInt(Math.floor(Number(growthIncrement) * multiplier * feePerByte));
426
+ fee += BigInt(Math.floor(growthIncrement * multiplier * feePerByte));
424
427
  s -= growthIncrement;
425
428
  multiplier *= growthFactor;
426
429
  }
427
- fee += BigInt(Math.floor(Number(size) * multiplier * feePerByte));
430
+ fee += BigInt(Math.floor(s * multiplier * feePerByte));
428
431
  return fee;
429
432
  };
430
433
  export const minFee = (tx) => Effect.gen(function* () {
431
- const params = yield* Params.params;
432
- const sizeFee = BigInt(params.txFeeFixed) +
433
- BigInt(size(true)(tx)) * BigInt(params.txFeePerByte);
434
+ const p = yield* Params.params;
435
+ if (p.txFeeFixed === undefined) {
436
+ throw new Error(`Network.Params.params.txFeeFixed undefined in Cardano.Ledger.Tx.minFee()`);
437
+ }
438
+ if (p.txFeePerByte === undefined) {
439
+ throw new Error(`Network.Params.params.txFeePerByte undefined in Cardano.Ledger.Tx.minFee()`);
440
+ }
441
+ const s = size(true)(tx);
442
+ if (!Number.isFinite(s)) {
443
+ throw new Error(`tx size not finite in Cardano.Ledger.Tx.minFee()`);
444
+ }
445
+ const sizeFee = BigInt(p.txFeeFixed) + BigInt(size(true)(tx)) * BigInt(p.txFeePerByte);
434
446
  const { mem: totalMem, cpu: totalCpu } = tx.witnesses.redeemers.reduce((cost, r) => ({ cpu: cost.cpu + r.cost.cpu, mem: cost.mem + r.cost.mem }), { cpu: 0n, mem: 0n });
435
- const exFee = BigInt(Math.ceil(Number(totalMem) * params.exMemFeePerUnit +
436
- Number(totalCpu) * params.exCpuFeePerUnit));
437
- const rsFee = refScriptsFee(params.refScriptsFeePerByte)(tx);
447
+ if (p.exMemFeePerUnit === undefined) {
448
+ throw new Error(`Network.Params.params.exMemFeePerUnit undefined in Cardano.Ledger.Tx.minFee()`);
449
+ }
450
+ if (p.exCpuFeePerUnit === undefined) {
451
+ throw new Error(`Network.Params.params.exCpuFeePerUnit undefined in Cardano.Ledger.Tx.minFee()`);
452
+ }
453
+ const exFee = BigInt(Math.ceil(Number(totalMem) * p.exMemFeePerUnit +
454
+ Number(totalCpu) * p.exCpuFeePerUnit));
455
+ if (p.refScriptsFeePerByte === undefined) {
456
+ throw new Error(`Network.Params.params.refScriptsFeePerByte undefined in Cardano.Ledger.Tx.minFee()`);
457
+ }
458
+ const rsFee = refScriptsFee(p.refScriptsFeePerByte)(tx);
438
459
  return sizeFee + exFee + rsFee;
439
460
  });
461
+ export const minCollateral = (tx) => Effect.gen(function* () {
462
+ if (!isSmart(tx)) {
463
+ return 0n;
464
+ }
465
+ const p = yield* Params.params;
466
+ if (p.collateralPercentage === undefined) {
467
+ throw new Error(`Network.Params.params.collateralPercentage undefined in Cardano.Ledger.Tx.minFee()`);
468
+ }
469
+ const fee = tx.body.fee;
470
+ const pct = p.collateralPercentage;
471
+ const mc = BigInt(Math.ceil((pct * Number(fee)) / 100.0));
472
+ return mc;
473
+ });
440
474
  export const inputDatum = (inputIndex) => (tx) => {
441
475
  const datum = tx.body.inputs[inputIndex]?.output?.datum;
442
476
  if (datum === undefined) {
443
477
  return datum;
444
478
  }
445
- else if (datum._tag == "Inline") {
446
- return datum.data;
447
- }
448
- else {
479
+ else if ("hash" in datum) {
449
480
  const resolvedDatum = tx.witnesses.datums.find((d) => DatumHash.hash(d) == datum.hash);
450
481
  if (resolvedDatum === undefined) {
451
482
  throw new Error(`Datum for hash '${datum.hash}' not found in tx.witnesses.datums`);
452
483
  }
453
484
  return resolvedDatum;
454
485
  }
486
+ else {
487
+ return datum;
488
+ }
455
489
  };
456
490
  function isSmart(tx) {
457
491
  return (tx.witnesses.v1Scripts.length > 0 ||
@@ -495,4 +529,118 @@ export const scriptDataHash = (tx) => Effect.gen(function* () {
495
529
  bytes = bytes.concat(Cbor.encodeMap(encodedCostModels));
496
530
  return Bytes.toArray(Crypto.Blake2b.hashSync(bytes));
497
531
  });
532
+ export class InvalidTx extends TaggedError("Cardano.Ledger.Tx.InvalidTx") {
533
+ constructor(reason) {
534
+ super({ message: `Invalid tx (${reason})` });
535
+ }
536
+ }
537
+ export const validate = ({ strict = false, verbose: _verbose = false, logger: _logger = undefined } = {}) => (tx) => Effect.gen(function* () {
538
+ yield* validateSize(tx);
539
+ yield* validateFee(tx);
540
+ yield* validateConservation(tx);
541
+ yield* validateCollateral(strict)(tx);
542
+ yield* validateOutputs(strict)(tx);
543
+ tx = {
544
+ ...tx,
545
+ isValid: true
546
+ };
547
+ return tx;
548
+ });
549
+ /**
550
+ * The guards throwing defects help during debugging
551
+ */
552
+ const validateSize = (tx) => Effect.gen(function* () {
553
+ const p = yield* Params.params;
554
+ if (p.maxTxSize === undefined) {
555
+ throw new Error(`Network.Params.params.maxTxSize undefined in Cardano.Ledger.Tx.validateSize()`);
556
+ }
557
+ const s = size()(tx);
558
+ if (s > p.maxTxSize) {
559
+ return yield* new InvalidTx(`size too big, ${s} > ${p.maxTxSize}`);
560
+ }
561
+ });
562
+ /**
563
+ * The guards throwing defects help during debugging
564
+ */
565
+ const validateFee = (tx) => Effect.gen(function* () {
566
+ const f = yield* minFee(tx);
567
+ if (tx.body.fee < f) {
568
+ return yield* new InvalidTx(`fee too small, expected at least ${f} but got ${tx.body.fee}`);
569
+ }
570
+ });
571
+ /**
572
+ * The guards throwing defects help during debugging
573
+ */
574
+ const validateConservation = (tx) => Effect.gen(function* () {
575
+ const p = yield* Params.params;
576
+ if (p.stakeAddrDeposit === undefined) {
577
+ throw new Error(`Network.Params.params.stakeAddrDeposit undefined in Cardano.Ledger.Tx.validateConservation()`);
578
+ }
579
+ let sum = UTxO.sumAssets(...tx.body.inputs);
580
+ sum = tx.body.dcerts.reduce((prev, dcert) => dcert._tag == "Deregistration"
581
+ ? Assets.add(prev, { "": BigInt(p.stakeAddrDeposit) })
582
+ : dcert._tag == "Registration"
583
+ ? Assets.subtract(prev, { "": BigInt(p.stakeAddrDeposit) })
584
+ : prev, sum);
585
+ sum = Assets.subtract(sum, { "": tx.body.fee });
586
+ sum = Assets.add(sum, tx.body.minted);
587
+ sum = Assets.subtract(sum, TxOutput.sumAssets(...tx.body.outputs));
588
+ if (!Assets.isEmpty(sum)) {
589
+ return yield* new InvalidTx(`value not conserved (diff: ${Assets.pretty(sum)})`);
590
+ }
591
+ });
592
+ /**
593
+ * The guards throwing defects help during debugging
594
+ */
595
+ const validateCollateral = (strict) => (tx) => Effect.gen(function* () {
596
+ const p = yield* Params.params;
597
+ if (p.maxCollateralInputs === undefined) {
598
+ throw new Error(`Network.Params.params.maxCollateralInputs undefined in Cardano.Ledger.Tx.validateCollateral()`);
599
+ }
600
+ if (tx.body.collateral.length > p.maxCollateralInputs) {
601
+ return yield* new InvalidTx(`too many collateral inputs (${tx.body.collateral.length} > ${p.maxCollateralInputs})`);
602
+ }
603
+ if (!isSmart(tx)) {
604
+ if (strict && tx.body.collateral.length != 0) {
605
+ return yield* new InvalidTx(`unnecessary collateral included`);
606
+ }
607
+ return;
608
+ }
609
+ // skip this validation if the NetworkParams.collateralUTXO is used (we can assume that such a UTXO is always clean and contains enough lovelace)
610
+ if (p.collateralUTXO !== undefined &&
611
+ tx.body.collateral.some((utxo) => utxo.ref == p.collateralUTXO)) {
612
+ return;
613
+ }
614
+ const mc = yield* minCollateral(tx);
615
+ let sum = 0n;
616
+ for (const utxo of tx.body.collateral) {
617
+ if (!Assets.containsOnlyAda(utxo.output.assets)) {
618
+ return yield* new InvalidTx(`collateral can only contain lovelace (collateral utxo ${utxo.ref} contains ${Object.keys(utxo.output.assets).join(", ")})`);
619
+ }
620
+ sum += utxo.output.assets[""] ?? 0n;
621
+ }
622
+ if (tx.body.collateralReturn !== undefined) {
623
+ if (!Assets.containsOnlyAda(tx.body.collateralReturn.assets)) {
624
+ return yield* new InvalidTx(`collateral return can only contain lovelace (collateral return contains ${Object.keys(tx.body.collateralReturn.assets).join(", ")})`);
625
+ }
626
+ sum -= tx.body.collateralReturn.assets[""] ?? 0n;
627
+ }
628
+ if (sum < mc) {
629
+ return yield* new InvalidTx(`insufficient collateral lovelace (${sum} < ${mc})`);
630
+ }
631
+ if (sum > mc * 5n) {
632
+ yield* Console.warn(`way too much collateral (${sum} >> ${mc})`);
633
+ }
634
+ });
635
+ export const validateOutputs = (strict) => (tx) => Effect.gen(function* () {
636
+ for (const output of tx.body.outputs) {
637
+ const minLovelace = yield* TxOutput.minLovelace(output);
638
+ if (minLovelace > (output.assets[""] ?? 0n)) {
639
+ return yield* new InvalidTx(`not enough lovelace in output (expected at least ${minLovelace.toString()}, got ${output.assets[""] ?? 0n})`);
640
+ }
641
+ if (strict && !Assets.isSorted(output.assets)) {
642
+ return yield* new InvalidTx(`output assets not sorted`);
643
+ }
644
+ }
645
+ });
498
646
  //# sourceMappingURL=Tx.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tx.js","sourceRoot":"","sources":["../../../src/Cardano/Ledger/Tx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tx.js","sourceRoot":"","sources":["../../../src/Cardano/Ledger/Tx.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { Effect, Either, Option, Schema } from "effect";
2
2
  import * as Bytes from "../../Codecs/Bytes.js";
3
3
  import * as Cbor from "../../Codecs/Cbor.js";
4
- import { Params } from "../Network";
5
- import * as Uplc from "../Uplc";
4
+ import * as Params from "../Network/Params.js";
5
+ import * as Uplc from "../Uplc/index.js";
6
6
  import * as Address from "./Address.js";
7
7
  import * as Assets from "./Assets.js";
8
8
  import * as DatumHash from "./DatumHash.js";
@@ -125,7 +125,7 @@ export const decode = (bytes) => Either.gen(function* () {
125
125
  }
126
126
  });
127
127
  export function encode(output) {
128
- if ((!output.datum || output.datum._tag == "Hash") &&
128
+ if ((!output.datum || "hash" in output.datum) &&
129
129
  !output.refScript &&
130
130
  (!output.encodingConfig ||
131
131
  output.encodingConfig.strictBabbage == null ||
@@ -134,9 +134,9 @@ export function encode(output) {
134
134
  // hopefully cardano-cli signs whatever serialization we choose (so we use the eternl variant in order to be compatible with both)
135
135
  const fields = [
136
136
  Address.encode(output.address),
137
- Assets.encode(output.assets)
137
+ Assets.encode({ withoutLovelace: false })(output.assets)
138
138
  ];
139
- if (output.datum && output.datum._tag == "Hash") {
139
+ if (output.datum && "hash" in output.datum) {
140
140
  fields.push(DatumHash.encode(output.datum.hash));
141
141
  }
142
142
  return Cbor.encodeTuple(fields);
@@ -144,7 +144,7 @@ export function encode(output) {
144
144
  else {
145
145
  const object = new Map();
146
146
  object.set(0, Address.encode(output.address));
147
- object.set(1, Assets.encode(output.assets));
147
+ object.set(1, Assets.encode({ withoutLovelace: false })(output.assets));
148
148
  if (output.datum) {
149
149
  object.set(2, TxOutputDatum.encode(output.datum));
150
150
  }
@@ -159,8 +159,14 @@ export function encode(output) {
159
159
  }
160
160
  export const minLovelace = (output) => Params.params.pipe(Effect.map((p) => {
161
161
  const lovelacePerByte = p.utxoDepositPerByte;
162
+ if (p.utxoDepositPerByte === undefined) {
163
+ throw new Error(`Network.Params.params.utxoDepositPerByte undefined in Cardano.Ledger.TxOutput.minLovelace()`);
164
+ }
162
165
  // 160 accounts for some database overhead?
163
166
  const correctedSize = encode(output).length + 160;
167
+ if (!Number.isFinite(correctedSize)) {
168
+ throw new Error("correctedSize isn't finite in Cardano.Ledger.TxOutput.minLovelace()");
169
+ }
164
170
  return BigInt(correctedSize) * BigInt(lovelacePerByte);
165
171
  }));
166
172
  export const sumAssets = (...outputs) => Assets.sum(...outputs.map((output) => output.assets));
@@ -1 +1 @@
1
- {"version":3,"file":"TxOutput.js","sourceRoot":"","sources":["../../../src/Cardano/Ledger/TxOutput.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TxOutput.js","sourceRoot":"","sources":["../../../src/Cardano/Ledger/TxOutput.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,10 @@ import * as Bytes from "../../Codecs/Bytes.js";
3
3
  import * as Cbor from "../../Codecs/Cbor.js";
4
4
  import * as Data from "../Uplc/Data.js";
5
5
  import * as DatumHash from "./DatumHash.js";
6
- export const TxOutputDatum = Schema.Union(Schema.TaggedStruct("Inline", { data: Data.Data }), Schema.TaggedStruct("Hash", { hash: DatumHash.DatumHash }));
6
+ /**
7
+ * Keep things simple by not requiring a tag here
8
+ */
9
+ export const TxOutputDatum = Schema.Union(Data.Data, Schema.Struct({ hash: DatumHash.DatumHash }));
7
10
  export const FromUplcData = Schema.transform(Data.Enum({
8
11
  None: {},
9
12
  Hash: {
@@ -12,30 +15,32 @@ export const FromUplcData = Schema.transform(Data.Enum({
12
15
  Inline: {
13
16
  data: Schema.typeSchema(Data.Data)
14
17
  }
15
- }), Schema.Union(TxOutputDatum, Schema.Undefined), {
18
+ }), Schema.typeSchema(Schema.Union(TxOutputDatum, Schema.Undefined)), {
16
19
  strict: true,
17
20
  decode: (data) => {
18
- if (data._tag == "None") {
19
- return undefined;
20
- }
21
- else {
22
- return data;
21
+ switch (data._tag) {
22
+ case "None":
23
+ return undefined;
24
+ case "Inline":
25
+ return data.data;
26
+ case "Hash":
27
+ return { hash: data.hash };
23
28
  }
24
29
  },
25
30
  encode: (datum) => {
26
31
  if (datum === undefined) {
27
32
  return { _tag: "None" };
28
33
  }
29
- else if (datum._tag == "Inline") {
34
+ else if ("hash" in datum) {
30
35
  return {
31
- _tag: "Inline",
32
- data: datum.data
36
+ _tag: "Hash",
37
+ hash: datum.hash
33
38
  };
34
39
  }
35
40
  else {
36
41
  return {
37
- _tag: "Hash",
38
- hash: datum.hash
42
+ _tag: "Inline",
43
+ data: datum
39
44
  };
40
45
  }
41
46
  }
@@ -44,34 +49,31 @@ export const decode = (bytes) => Either.gen(function* () {
44
49
  const [type, decodeItem] = yield* Cbor.decodeTagged(bytes);
45
50
  switch (type) {
46
51
  case 0:
47
- return { _tag: "Hash", hash: yield* decodeItem(DatumHash.decode) };
52
+ return { hash: yield* decodeItem(DatumHash.decode) };
48
53
  case 1:
49
- return {
50
- _tag: "Inline",
51
- data: yield* decodeItem((stream) => Either.gen(function* () {
52
- const tag = yield* Cbor.decodeTag(stream);
53
- if (tag != 24n) {
54
- return yield* Either.left(new Cbor.DecodeError(stream, `expected 24 as tag, got ${tag}`));
55
- }
56
- return yield* Data.decode(yield* Cbor.decodeBytes(stream));
57
- }))
58
- };
54
+ return yield* decodeItem((stream) => Either.gen(function* () {
55
+ const tag = yield* Cbor.decodeTag(stream);
56
+ if (tag != 24n) {
57
+ return yield* Either.left(new Cbor.DecodeError(stream, `expected 24 as tag, got ${tag}`));
58
+ }
59
+ return yield* Data.decode(yield* Cbor.decodeBytes(stream));
60
+ }));
59
61
  default:
60
62
  return yield* Either.left(new Cbor.DecodeError(Bytes.makeStream(bytes), `unhandled TxOutputDatum type ${type}`));
61
63
  }
62
64
  });
63
65
  export function encode(txOutputDatum) {
64
- switch (txOutputDatum._tag) {
65
- case "Hash":
66
- return Cbor.encodeTuple([
67
- Cbor.encodeInt(0n),
68
- DatumHash.encode(txOutputDatum.hash)
69
- ]);
70
- case "Inline":
71
- return Cbor.encodeTuple([
72
- Cbor.encodeInt(1n),
73
- Cbor.encodeTag(24n).concat(Cbor.encodeBytes(Data.encode(txOutputDatum.data)))
74
- ]);
66
+ if ("hash" in txOutputDatum) {
67
+ return Cbor.encodeTuple([
68
+ Cbor.encodeInt(0n),
69
+ DatumHash.encode(txOutputDatum.hash)
70
+ ]);
71
+ }
72
+ else {
73
+ return Cbor.encodeTuple([
74
+ Cbor.encodeInt(1n),
75
+ Cbor.encodeTag(24n).concat(Cbor.encodeBytes(Data.encode(txOutputDatum)))
76
+ ]);
75
77
  }
76
78
  }
77
79
  //# sourceMappingURL=TxOutputDatum.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TxOutputDatum.js","sourceRoot":"","sources":["../../../src/Cardano/Ledger/TxOutputDatum.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TxOutputDatum.js","sourceRoot":"","sources":["../../../src/Cardano/Ledger/TxOutputDatum.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { Effect, Either, Schema } from "effect";
2
2
  import * as Bytes from "../../Codecs/Bytes.js";
3
3
  import * as Cbor from "../../Codecs/Cbor.js";
4
- import * as Network from "../Network";
4
+ import * as Network from "../Network/index.js";
5
5
  import * as Data from "../Uplc/Data.js";
6
6
  import * as Assets from "./Assets.js";
7
7
  import * as TxOutput from "./TxOutput.js";
@@ -1 +1 @@
1
- {"version":3,"file":"UTxO.js","sourceRoot":"","sources":["../../../src/Cardano/Ledger/UTxO.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UTxO.js","sourceRoot":"","sources":["../../../src/Cardano/Ledger/UTxO.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { Either, Schema } from "effect";
2
+ import * as Bytes from "../../Codecs/Bytes.js";
2
3
  import * as Cbor from "../../Codecs/Cbor.js";
3
4
  import * as Data from "../Uplc/Data.js";
4
5
  import * as TxHash from "./TxHash.js";