@solana/web3.js 1.43.2 → 1.43.5
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/lib/index.browser.cjs.js +16 -7
- package/lib/index.browser.cjs.js.map +1 -1
- package/lib/index.browser.esm.js +16 -7
- package/lib/index.browser.esm.js.map +1 -1
- package/lib/index.cjs.js +16 -7
- package/lib/index.cjs.js.map +1 -1
- package/lib/index.esm.js +16 -7
- package/lib/index.esm.js.map +1 -1
- package/lib/index.iife.js +16 -7
- package/lib/index.iife.js.map +1 -1
- package/lib/index.iife.min.js +1 -1
- package/lib/index.iife.min.js.map +1 -1
- package/package.json +2 -2
- package/src/transaction.ts +16 -11
package/lib/index.cjs.js
CHANGED
|
@@ -2626,13 +2626,6 @@ class Transaction {
|
|
|
2626
2626
|
isSigner: false,
|
|
2627
2627
|
isWritable: false
|
|
2628
2628
|
});
|
|
2629
|
-
}); // Sort. Prioritizing first by signer, then by writable
|
|
2630
|
-
|
|
2631
|
-
accountMetas.sort(function (x, y) {
|
|
2632
|
-
const pubkeySorting = x.pubkey.toBase58().localeCompare(y.pubkey.toBase58());
|
|
2633
|
-
const checkSigner = x.isSigner === y.isSigner ? 0 : x.isSigner ? -1 : 1;
|
|
2634
|
-
const checkWritable = x.isWritable === y.isWritable ? pubkeySorting : x.isWritable ? -1 : 1;
|
|
2635
|
-
return checkSigner || checkWritable;
|
|
2636
2629
|
}); // Cull duplicate account metas
|
|
2637
2630
|
|
|
2638
2631
|
const uniqueMetas = [];
|
|
@@ -2644,9 +2637,25 @@ class Transaction {
|
|
|
2644
2637
|
|
|
2645
2638
|
if (uniqueIndex > -1) {
|
|
2646
2639
|
uniqueMetas[uniqueIndex].isWritable = uniqueMetas[uniqueIndex].isWritable || accountMeta.isWritable;
|
|
2640
|
+
uniqueMetas[uniqueIndex].isSigner = uniqueMetas[uniqueIndex].isSigner || accountMeta.isSigner;
|
|
2647
2641
|
} else {
|
|
2648
2642
|
uniqueMetas.push(accountMeta);
|
|
2649
2643
|
}
|
|
2644
|
+
}); // Sort. Prioritizing first by signer, then by writable
|
|
2645
|
+
|
|
2646
|
+
uniqueMetas.sort(function (x, y) {
|
|
2647
|
+
if (x.isSigner !== y.isSigner) {
|
|
2648
|
+
// Signers always come before non-signers
|
|
2649
|
+
return x.isSigner ? -1 : 1;
|
|
2650
|
+
}
|
|
2651
|
+
|
|
2652
|
+
if (x.isWritable !== y.isWritable) {
|
|
2653
|
+
// Writable accounts always come before read-only accounts
|
|
2654
|
+
return x.isWritable ? -1 : 1;
|
|
2655
|
+
} // Otherwise, sort by pubkey, stringwise.
|
|
2656
|
+
|
|
2657
|
+
|
|
2658
|
+
return x.pubkey.toBase58().localeCompare(y.pubkey.toBase58());
|
|
2650
2659
|
}); // Move fee payer to the front
|
|
2651
2660
|
|
|
2652
2661
|
const feePayerIndex = uniqueMetas.findIndex(x => {
|