@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.
- package/.vscode/settings.json +3 -0
- package/dist/Cardano/Ledger/AssetClass.js +6 -1
- package/dist/Cardano/Ledger/AssetClass.js.map +1 -1
- package/dist/Cardano/Ledger/Assets.js +85 -3
- package/dist/Cardano/Ledger/Assets.js.map +1 -1
- package/dist/Cardano/Ledger/Credential.js +1 -1
- package/dist/Cardano/Ledger/Credential.js.map +1 -1
- package/dist/Cardano/Ledger/DCert.js +2 -1
- package/dist/Cardano/Ledger/DCert.js.map +1 -1
- package/dist/Cardano/Ledger/DatumHash.js +2 -2
- package/dist/Cardano/Ledger/DatumHash.js.map +1 -1
- package/dist/Cardano/Ledger/MintingPolicy.js +2 -0
- package/dist/Cardano/Ledger/MintingPolicy.js.map +1 -1
- package/dist/Cardano/Ledger/NativeScript.js +2 -1
- package/dist/Cardano/Ledger/NativeScript.js.map +1 -1
- package/dist/Cardano/Ledger/PubKey.js +1 -1
- package/dist/Cardano/Ledger/PubKey.js.map +1 -1
- package/dist/Cardano/Ledger/PubKeyHash.js +1 -1
- package/dist/Cardano/Ledger/PubKeyHash.js.map +1 -1
- package/dist/Cardano/Ledger/Redeemer.js +1 -1
- package/dist/Cardano/Ledger/Redeemer.js.map +1 -1
- package/dist/Cardano/Ledger/Signature.js +1 -0
- package/dist/Cardano/Ledger/Signature.js.map +1 -1
- package/dist/Cardano/Ledger/Tx.js +165 -17
- package/dist/Cardano/Ledger/Tx.js.map +1 -1
- package/dist/Cardano/Ledger/TxOutput.js +12 -6
- package/dist/Cardano/Ledger/TxOutput.js.map +1 -1
- package/dist/Cardano/Ledger/TxOutputDatum.js +36 -34
- package/dist/Cardano/Ledger/TxOutputDatum.js.map +1 -1
- package/dist/Cardano/Ledger/UTxO.js +1 -1
- package/dist/Cardano/Ledger/UTxO.js.map +1 -1
- package/dist/Cardano/Ledger/UTxORef.js +1 -0
- package/dist/Cardano/Ledger/UTxORef.js.map +1 -1
- package/dist/Cardano/Ledger/ValidatorHash.js +1 -1
- package/dist/Cardano/Ledger/ValidatorHash.js.map +1 -1
- package/dist/Cardano/Network/AssetMetadata.js +11 -0
- package/dist/Cardano/Network/AssetMetadata.js.map +1 -0
- package/dist/Cardano/Network/IsMainnet.js +1 -1
- package/dist/Cardano/Network/IsMainnet.js.map +1 -1
- package/dist/Cardano/Network/Params.js +105 -1
- package/dist/Cardano/Network/Params.js.map +1 -1
- package/dist/Cardano/Network/Submit.js +15 -0
- package/dist/Cardano/Network/Submit.js.map +1 -0
- package/dist/Cardano/Network/UTxO.js +2 -2
- package/dist/Cardano/Network/UTxO.js.map +1 -1
- package/dist/Cardano/Network/UTxOsAt.js +3 -2
- package/dist/Cardano/Network/UTxOsAt.js.map +1 -1
- package/dist/Cardano/Network/errors.js +16 -3
- package/dist/Cardano/Network/errors.js.map +1 -1
- package/dist/Cardano/Network/index.js +2 -0
- package/dist/Cardano/Network/index.js.map +1 -1
- package/dist/Cardano/ScriptContext.js +264 -0
- package/dist/Cardano/ScriptContext.js.map +1 -0
- package/dist/Cardano/TxBuilder.js +88 -42
- package/dist/Cardano/TxBuilder.js.map +1 -1
- package/dist/Cardano/Uplc/Builtins.js +293 -32
- package/dist/Cardano/Uplc/Builtins.js.map +1 -1
- package/dist/Cardano/Uplc/Cek.js +6 -5
- package/dist/Cardano/Uplc/Cek.js.map +1 -1
- package/dist/Cardano/Uplc/Cost.js +257 -1
- package/dist/Cardano/Uplc/Cost.js.map +1 -1
- package/dist/Cardano/Uplc/Data.js +22 -8
- package/dist/Cardano/Uplc/Data.js.map +1 -1
- package/dist/Cardano/Uplc/Script.js +52 -10
- package/dist/Cardano/Uplc/Script.js.map +1 -1
- package/dist/Cardano/Uplc/Term.js +14 -0
- package/dist/Cardano/Uplc/Term.js.map +1 -1
- package/dist/Cardano/Uplc/index.js +2 -1
- package/dist/Cardano/Uplc/index.js.map +1 -1
- package/dist/Cardano/Wallet.js +4 -1
- package/dist/Cardano/Wallet.js.map +1 -1
- package/dist/Cardano/index.js +3 -3
- package/dist/Cardano/index.js.map +1 -1
- package/dist/Codecs/Base32.js +4 -1
- package/dist/Codecs/Base32.js.map +1 -1
- package/dist/Codecs/BigEndian.js +1 -1
- package/dist/Codecs/BigEndian.js.map +1 -1
- package/dist/Codecs/Bytes.js +1 -1
- package/dist/Codecs/Bytes.js.map +1 -1
- package/dist/Codecs/LittleEndian.js +1 -1
- package/dist/Codecs/LittleEndian.js.map +1 -1
- package/dist/Codecs/Utf8.js +1 -1
- package/dist/Codecs/Utf8.js.map +1 -1
- package/dist/Crypto/Bip32.js +5 -2
- package/dist/Crypto/Bip32.js.map +1 -1
- package/dist/Crypto/Curve.js +1 -0
- package/dist/Crypto/Curve.js.map +1 -1
- package/dist/Crypto/Ed25519.js +2 -1
- package/dist/Crypto/Ed25519.js.map +1 -1
- package/dist/Crypto/EdDSA.js +2 -1
- package/dist/Crypto/EdDSA.js.map +1 -1
- package/dist/Crypto/Sha3_256.js +1 -0
- package/dist/Crypto/Sha3_256.js.map +1 -1
- package/dist/Crypto/index.js +2 -0
- package/dist/Crypto/index.js.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/package.json +2 -1
- package/types/Cardano/Ledger/AssetClass.d.ts +6 -1
- package/types/Cardano/Ledger/AssetClass.d.ts.map +1 -1
- package/types/Cardano/Ledger/Assets.d.ts +14 -2
- package/types/Cardano/Ledger/Assets.d.ts.map +1 -1
- package/types/Cardano/Ledger/Credential.d.ts +1 -1
- package/types/Cardano/Ledger/Credential.d.ts.map +1 -1
- package/types/Cardano/Ledger/DatumHash.d.ts +2 -2
- package/types/Cardano/Ledger/DatumHash.d.ts.map +1 -1
- package/types/Cardano/Ledger/MintingPolicy.d.ts +1 -0
- package/types/Cardano/Ledger/MintingPolicy.d.ts.map +1 -1
- package/types/Cardano/Ledger/PubKey.d.ts +2 -2
- package/types/Cardano/Ledger/PubKey.d.ts.map +1 -1
- package/types/Cardano/Ledger/PubKeyHash.d.ts +2 -2
- package/types/Cardano/Ledger/PubKeyHash.d.ts.map +1 -1
- package/types/Cardano/Ledger/Redeemer.d.ts +1 -1
- package/types/Cardano/Ledger/Redeemer.d.ts.map +1 -1
- package/types/Cardano/Ledger/Signature.d.ts +1 -1
- package/types/Cardano/Ledger/Signature.d.ts.map +1 -1
- package/types/Cardano/Ledger/Tx.d.ts +19 -241
- package/types/Cardano/Ledger/Tx.d.ts.map +1 -1
- package/types/Cardano/Ledger/TxOutput.d.ts +95 -105
- package/types/Cardano/Ledger/TxOutput.d.ts.map +1 -1
- package/types/Cardano/Ledger/TxOutputDatum.d.ts +69 -68
- package/types/Cardano/Ledger/TxOutputDatum.d.ts.map +1 -1
- package/types/Cardano/Ledger/UTxO.d.ts +268 -318
- package/types/Cardano/Ledger/UTxO.d.ts.map +1 -1
- package/types/Cardano/Ledger/ValidatorHash.d.ts +2 -2
- package/types/Cardano/Ledger/ValidatorHash.d.ts.map +1 -1
- package/types/Cardano/Network/AssetMetadata.d.ts +15 -0
- package/types/Cardano/Network/AssetMetadata.d.ts.map +1 -0
- package/types/Cardano/Network/IsMainnet.d.ts +1 -1
- package/types/Cardano/Network/Params.d.ts +9 -1
- package/types/Cardano/Network/Params.d.ts.map +1 -1
- package/types/Cardano/Network/Submit.d.ts +18 -0
- package/types/Cardano/Network/Submit.d.ts.map +1 -0
- package/types/Cardano/Network/UTxO.d.ts +1 -1
- package/types/Cardano/Network/UTxO.d.ts.map +1 -1
- package/types/Cardano/Network/UTxOsAt.d.ts +2 -2
- package/types/Cardano/Network/UTxOsAt.d.ts.map +1 -1
- package/types/Cardano/Network/errors.d.ts +22 -2
- package/types/Cardano/Network/errors.d.ts.map +1 -1
- package/types/Cardano/Network/index.d.ts +2 -0
- package/types/Cardano/Network/index.d.ts.map +1 -1
- package/types/Cardano/ScriptContext.d.ts +1340 -0
- package/types/Cardano/ScriptContext.d.ts.map +1 -0
- package/types/Cardano/TxBuilder.d.ts +7 -5
- package/types/Cardano/TxBuilder.d.ts.map +1 -1
- package/types/Cardano/Uplc/Builtins.d.ts.map +1 -1
- package/types/Cardano/Uplc/Cek.d.ts.map +1 -1
- package/types/Cardano/Uplc/Cost.d.ts +1 -0
- package/types/Cardano/Uplc/Cost.d.ts.map +1 -1
- package/types/Cardano/Uplc/Data.d.ts.map +1 -1
- package/types/Cardano/Uplc/Script.d.ts +5 -3
- package/types/Cardano/Uplc/Script.d.ts.map +1 -1
- package/types/Cardano/Uplc/Term.d.ts +3 -0
- package/types/Cardano/Uplc/Term.d.ts.map +1 -1
- package/types/Cardano/Uplc/index.d.ts +2 -1
- package/types/Cardano/Uplc/index.d.ts.map +1 -1
- package/types/Cardano/Wallet.d.ts +18 -23
- package/types/Cardano/Wallet.d.ts.map +1 -1
- package/types/Cardano/index.d.ts +3 -3
- package/types/Cardano/index.d.ts.map +1 -1
- package/types/Codecs/Base32.d.ts +4 -1
- package/types/Codecs/Base32.d.ts.map +1 -1
- package/types/Crypto/Bip32.d.ts +5 -3
- package/types/Crypto/Bip32.d.ts.map +1 -1
- package/types/Crypto/EdDSA.d.ts +1 -1
- package/types/Crypto/EdDSA.d.ts.map +1 -1
- package/types/Crypto/index.d.ts +2 -0
- package/types/Crypto/index.d.ts.map +1 -1
- package/types/index.d.ts +3 -3
- package/types/index.d.ts.map +1 -1
- package/bun.lock +0 -60
- package/tsconfig.build.json +0 -14
- package/tsconfig.json +0 -38
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { Console, Context, Data, Effect } from "effect";
|
|
2
|
+
import { Bytes } from "../Codecs/index.js";
|
|
2
3
|
import * as CoinSelection from "./CoinSelection.js";
|
|
3
|
-
import { Address, Assets, DCert, MintingPolicy, NativeScript, RewardAddress, Tx, TxOutput, UTxO } from "./Ledger";
|
|
4
|
-
import * as Network from "./Network";
|
|
5
|
-
import * as
|
|
4
|
+
import { Address, AssetClass, Assets, Credential, DatumHash, DCert, MintingPolicy, NativeScript, PubKeyHash, Redeemer, RewardAddress, Tx, TxOutput, UTxO, UTxORef, ValidatorHash } from "./Ledger/index.js";
|
|
5
|
+
import * as Network from "./Network/index.js";
|
|
6
|
+
import * as ScriptContext from "./ScriptContext.js";
|
|
7
|
+
import * as Uplc from "./Uplc/index.js";
|
|
6
8
|
import { Balancing as BalancingWallet } from "./Wallet.js";
|
|
7
9
|
export class UTxOAlreadyAdded extends Data.TaggedError("Cardano.TxBuilder.UTxOAlreadyAdded") {
|
|
8
10
|
constructor(ref) {
|
|
@@ -192,7 +194,7 @@ export const mint = (assets, redeemer = undefined) => (b) => Effect.gen(function
|
|
|
192
194
|
if (!hasUplcScript(b, hash)) {
|
|
193
195
|
return yield* Effect.fail(new MissingScript(hash));
|
|
194
196
|
}
|
|
195
|
-
addMintingRedeemer(b, policy, redeemer);
|
|
197
|
+
b = yield* addMintingRedeemer(b, policy, redeemer);
|
|
196
198
|
}
|
|
197
199
|
else {
|
|
198
200
|
if (!hasNativeScript(b, hash)) {
|
|
@@ -257,7 +259,7 @@ export const spend = (utxos, redeemer = undefined) => (b) => Effect.gen(function
|
|
|
257
259
|
if (!datum && !hasDatumlessScript(b, spendingCred.hash)) {
|
|
258
260
|
return yield* Effect.fail(new MissingDatum());
|
|
259
261
|
}
|
|
260
|
-
if (datum &&
|
|
262
|
+
if (datum && "hash" in datum) {
|
|
261
263
|
// provide datum through service
|
|
262
264
|
const getDatum = yield* GetDatum;
|
|
263
265
|
const datumData = yield* getDatum(datum.hash);
|
|
@@ -609,6 +611,7 @@ export const build = (options = {}) => (b) => Effect.gen(function* () {
|
|
|
609
611
|
* Calculate the validity time range slots
|
|
610
612
|
*/
|
|
611
613
|
const { firstValidSlot, lastValidSlot } = yield* buildValidityTimeRange;
|
|
614
|
+
yield* Console.log(`Built validatity slots: ${firstValidSlot}:${lastValidSlot}`);
|
|
612
615
|
/**
|
|
613
616
|
* Make sure the outputs contain enough lovelace
|
|
614
617
|
*/
|
|
@@ -661,10 +664,17 @@ export const build = (options = {}) => (b) => Effect.gen(function* () {
|
|
|
661
664
|
isValid: false,
|
|
662
665
|
metadata
|
|
663
666
|
};
|
|
667
|
+
yield* Console.log("validating outputs...");
|
|
668
|
+
for (const output of outputs) {
|
|
669
|
+
yield* Console.log(`Output lovelace: ${output.assets[""]?.toString()}`);
|
|
670
|
+
}
|
|
671
|
+
yield* Tx.validateOutputs(true)(tx);
|
|
672
|
+
yield* Console.log(`Initialized tx`);
|
|
664
673
|
/**
|
|
665
674
|
* The redeemer indices depend on some tx body fields, so are initialized after the init tx is created
|
|
666
675
|
*/
|
|
667
676
|
tx = yield* buildRedeemersWithoutCost(tx);
|
|
677
|
+
yield* Console.log(`Built redeemers without cost`);
|
|
668
678
|
/**
|
|
669
679
|
* Now in a loop the transaction is updated:
|
|
670
680
|
* - fee is set to min fee
|
|
@@ -676,12 +686,19 @@ export const build = (options = {}) => (b) => Effect.gen(function* () {
|
|
|
676
686
|
* The loop continues as long as the tx.fee field is smaller than the min required field.
|
|
677
687
|
* We know that this loop will run at least once because initially tx.fee=0n, ensuring the tx is balanced
|
|
678
688
|
*/
|
|
689
|
+
yield* Console.log(`Start loop`);
|
|
679
690
|
while (tx.body.fee < (yield* Tx.minFee(tx))) {
|
|
691
|
+
yield* Console.log(`Updating fee`);
|
|
680
692
|
tx = yield* updateFee(tx);
|
|
693
|
+
yield* Console.log(`Updated fee`);
|
|
681
694
|
tx = yield* balanceTx(tx);
|
|
695
|
+
yield* Console.log(`Balanced tx`);
|
|
682
696
|
tx = yield* buildRedeemersWithCost(tx);
|
|
697
|
+
yield* Console.log(`Built redeemers with cost`);
|
|
683
698
|
tx = yield* updateScriptDataHash(tx);
|
|
699
|
+
yield* Console.log(`Updated script hash`);
|
|
684
700
|
}
|
|
701
|
+
yield* Console.log(`End loop`);
|
|
685
702
|
/**
|
|
686
703
|
* Sign using balancing wallet
|
|
687
704
|
*/
|
|
@@ -726,18 +743,29 @@ const buildNonChangeOutputs = Effect.gen(function* () {
|
|
|
726
743
|
const b = yield* CurrentTxBuilder;
|
|
727
744
|
const outputs = b.outputs.slice();
|
|
728
745
|
for (let i = 0; i < outputs.length; i++) {
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
746
|
+
let output = outputs[i];
|
|
747
|
+
let lovelace = yield* TxOutput.minLovelace(output);
|
|
748
|
+
// iterate, because including lovelace value requires more lovelace itself
|
|
749
|
+
while (lovelace > (output.assets[""] ?? 0n)) {
|
|
750
|
+
yield* Console.log(`Updated output ${i} to contain ${lovelace} lovelace (${"" in output.assets ? `contained only ${output.assets[""]} before` : `didn't contain any lovelace before`})`);
|
|
751
|
+
output = {
|
|
733
752
|
...output,
|
|
734
753
|
assets: {
|
|
735
754
|
...output.assets,
|
|
736
755
|
"": lovelace
|
|
737
756
|
}
|
|
738
757
|
};
|
|
758
|
+
outputs[i] = output;
|
|
759
|
+
lovelace = yield* TxOutput.minLovelace(output);
|
|
739
760
|
}
|
|
740
761
|
}
|
|
762
|
+
// sort all assets
|
|
763
|
+
for (let i = 0; i < outputs.length; i++) {
|
|
764
|
+
outputs[i] = {
|
|
765
|
+
...outputs[i],
|
|
766
|
+
assets: Assets.sort()(outputs[i].assets)
|
|
767
|
+
};
|
|
768
|
+
}
|
|
741
769
|
return outputs;
|
|
742
770
|
});
|
|
743
771
|
const selectCollateralInputs = Effect.gen(function* () {
|
|
@@ -802,6 +830,7 @@ const buildRedeemersWithCost = (tx) => Effect.gen(function* () {
|
|
|
802
830
|
* Rebuild the redeemers to make sure the indices point to the correct policy/input/withdrawal/dcert
|
|
803
831
|
*/
|
|
804
832
|
tx = yield* buildRedeemersWithoutCost(tx);
|
|
833
|
+
yield* Console.log("rebuilt redeemers without cost");
|
|
805
834
|
/**
|
|
806
835
|
* Now calculate the cost of each redeemer
|
|
807
836
|
*/
|
|
@@ -842,11 +871,26 @@ const redeemerValidatorHash = (redeemer) => {
|
|
|
842
871
|
}
|
|
843
872
|
};
|
|
844
873
|
const profileRedeemer = (b, tx) => (vh, redeemerIndex) => Effect.gen(function* () {
|
|
874
|
+
yield* Console.log(`Profiling redeemer of ${vh}`);
|
|
845
875
|
const script = getUplcScript(b, vh);
|
|
846
|
-
const args = yield*
|
|
876
|
+
const args = yield* ScriptContext.makeArgs(script.version, tx, redeemerIndex);
|
|
847
877
|
const costModel = yield* Network.Params.costModel(script.version);
|
|
878
|
+
yield* Console.log(`Evaluating script`);
|
|
848
879
|
const profile = yield* Uplc.Script.eval(script, args, costModel);
|
|
880
|
+
yield* Console.log(`Done evaluating script`);
|
|
849
881
|
if (profile.value._tag == "Left") {
|
|
882
|
+
yield* Console.log(profile.value.left);
|
|
883
|
+
yield* Console.error(`Script evaluation failed`);
|
|
884
|
+
yield* Console.log(`Script cborHex: ${Bytes.toHex(script.root)}`);
|
|
885
|
+
for (const arg of args) {
|
|
886
|
+
if (Uplc.Value.isData(arg)) {
|
|
887
|
+
yield* Console.log(Bytes.toHex(Uplc.Data.encode(arg.data)));
|
|
888
|
+
}
|
|
889
|
+
else {
|
|
890
|
+
yield* Console.log(arg);
|
|
891
|
+
}
|
|
892
|
+
}
|
|
893
|
+
yield* Console.log(``);
|
|
850
894
|
// TODO: return a RuntimeError with nice stack trace
|
|
851
895
|
return yield* Effect.fail(new Error(profile.value.left.error));
|
|
852
896
|
}
|
|
@@ -880,21 +924,35 @@ const selectCoinsForBalancing = CoinSelection.smallestFirst({
|
|
|
880
924
|
allowSelectingUninvolvedAssets: true
|
|
881
925
|
});
|
|
882
926
|
const balanceTx = (tx) => Effect.gen(function* () {
|
|
927
|
+
yield* Console.log("Balancing tx...");
|
|
928
|
+
const balancingWallet = yield* BalancingWallet;
|
|
929
|
+
const changeAddress = yield* balancingWallet.changeAddress;
|
|
930
|
+
const spareUTxOs = yield* balancingWallet.utxos;
|
|
931
|
+
/**
|
|
932
|
+
* Lookup or create the change output (TODO: support multiple change outputs?)
|
|
933
|
+
*/
|
|
934
|
+
let changeOutput = tx.body.outputs.find((output) => output.address == changeAddress &&
|
|
935
|
+
output.datum === undefined &&
|
|
936
|
+
output.refScript === undefined);
|
|
937
|
+
const nonChangeOutputs = tx.body.outputs.filter((output) => output != changeOutput);
|
|
938
|
+
/**
|
|
939
|
+
* Create the change output if no change output was found
|
|
940
|
+
*/
|
|
941
|
+
if (changeOutput === undefined) {
|
|
942
|
+
changeOutput = {
|
|
943
|
+
address: changeAddress,
|
|
944
|
+
assets: {}
|
|
945
|
+
};
|
|
946
|
+
}
|
|
883
947
|
const inputAssets = UTxO.sumAssets(...tx.body.inputs);
|
|
884
|
-
|
|
948
|
+
// don't count the changeOutput!
|
|
949
|
+
const outputAssets = Assets.sum(...nonChangeOutputs.map((output) => output.assets));
|
|
885
950
|
const feeAssets = { "": tx.body.fee };
|
|
886
951
|
const mintedAssets = tx.body.minted;
|
|
952
|
+
yield* Console.log("Summing assets...");
|
|
887
953
|
let net = Assets.sum(inputAssets, mintedAssets, Assets.negate(outputAssets), Assets.negate(feeAssets));
|
|
888
|
-
/**
|
|
889
|
-
* Return if already balanced
|
|
890
|
-
*/
|
|
891
|
-
if (Assets.isEmpty(net)) {
|
|
892
|
-
return tx;
|
|
893
|
-
}
|
|
894
|
-
const balancingWallet = yield* BalancingWallet;
|
|
895
|
-
const changeAddress = yield* balancingWallet.changeAddress;
|
|
896
|
-
const spareUTxOs = yield* balancingWallet.utxos;
|
|
897
954
|
const selectAndAddInputs = (amount) => Effect.gen(function* () {
|
|
955
|
+
yield* Console.log("Selecting coins...");
|
|
898
956
|
const extraInputs = yield* selectCoinsForBalancing(UTxO.difference(spareUTxOs ?? [], tx.body.inputs.concat(tx.body.refInputs)), amount);
|
|
899
957
|
net = Assets.add(net, UTxO.sumAssets(...extraInputs));
|
|
900
958
|
tx = {
|
|
@@ -912,38 +970,26 @@ const balanceTx = (tx) => Effect.gen(function* () {
|
|
|
912
970
|
yield* selectAndAddInputs(Assets.negate(Assets.filterNegative(net)));
|
|
913
971
|
}
|
|
914
972
|
/**
|
|
915
|
-
*
|
|
973
|
+
* `net` must be positive at this point
|
|
916
974
|
*/
|
|
917
|
-
if (Assets.isEmpty(net)) {
|
|
918
|
-
|
|
975
|
+
if (!Assets.isEmpty(Assets.filterNegative(net))) {
|
|
976
|
+
throw new Error("net not positive");
|
|
919
977
|
}
|
|
920
978
|
if (Address.isValidator(changeAddress)) {
|
|
921
979
|
throw new Error("can't send change to validator");
|
|
922
980
|
}
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
output.refScript === undefined);
|
|
929
|
-
const nonChangeOutputs = tx.body.outputs.filter((output) => output != changeOutput);
|
|
930
|
-
/**
|
|
931
|
-
* Create the change output if no change output was found
|
|
932
|
-
*/
|
|
933
|
-
if (changeOutput === undefined) {
|
|
934
|
-
changeOutput = {
|
|
935
|
-
address: changeAddress,
|
|
936
|
-
assets: Assets.filterPositive(net)
|
|
937
|
-
};
|
|
938
|
-
net = {};
|
|
939
|
-
}
|
|
981
|
+
changeOutput = {
|
|
982
|
+
...changeOutput,
|
|
983
|
+
assets: Assets.sort()(net)
|
|
984
|
+
};
|
|
985
|
+
net = {};
|
|
940
986
|
const minLovelace = yield* TxOutput.minLovelace(changeOutput);
|
|
941
987
|
let diff = minLovelace - (changeOutput.assets[""] ?? 0n);
|
|
942
988
|
while (diff > 0n) {
|
|
943
|
-
yield* selectAndAddInputs({ "": diff });
|
|
989
|
+
yield* selectAndAddInputs(Assets.add({ "": diff }, Assets.negate(Assets.filterNegative(changeOutput.assets))));
|
|
944
990
|
changeOutput = {
|
|
945
991
|
...changeOutput,
|
|
946
|
-
assets: Assets.add(changeOutput.assets,
|
|
992
|
+
assets: Assets.sort()(Assets.add(changeOutput.assets, net))
|
|
947
993
|
};
|
|
948
994
|
net = {};
|
|
949
995
|
diff =
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TxBuilder.js","sourceRoot":"","sources":["../../src/Cardano/TxBuilder.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TxBuilder.js","sourceRoot":"","sources":["../../src/Cardano/TxBuilder.ts"],"names":[],"mappings":"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"}
|