@solana/transaction-messages 4.0.0-canary-20251008101046 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.browser.cjs +5 -2
- package/dist/index.browser.cjs.map +1 -1
- package/dist/index.browser.mjs +5 -2
- package/dist/index.browser.mjs.map +1 -1
- package/dist/index.native.mjs +5 -2
- package/dist/index.native.mjs.map +1 -1
- package/dist/index.node.cjs +5 -2
- package/dist/index.node.cjs.map +1 -1
- package/dist/index.node.mjs +5 -2
- package/dist/index.node.mjs.map +1 -1
- package/dist/types/compress-transaction-message.d.ts.map +1 -1
- package/package.json +10 -10
package/dist/index.browser.cjs
CHANGED
|
@@ -628,7 +628,10 @@ function findAddressInLookupTables(address, role, addressesByLookupTableAddress)
|
|
|
628
628
|
}
|
|
629
629
|
}
|
|
630
630
|
function compressTransactionMessageUsingAddressLookupTables(transactionMessage, addressesByLookupTableAddress) {
|
|
631
|
-
const
|
|
631
|
+
const programAddresses = new Set(transactionMessage.instructions.map((ix) => ix.programAddress));
|
|
632
|
+
const eligibleLookupAddresses = new Set(
|
|
633
|
+
Object.values(addressesByLookupTableAddress).flatMap((a) => a).filter((address) => !programAddresses.has(address))
|
|
634
|
+
);
|
|
632
635
|
const newInstructions = [];
|
|
633
636
|
let updatedAnyInstructions = false;
|
|
634
637
|
for (const instruction of transactionMessage.instructions) {
|
|
@@ -639,7 +642,7 @@ function compressTransactionMessageUsingAddressLookupTables(transactionMessage,
|
|
|
639
642
|
const newAccounts = [];
|
|
640
643
|
let updatedAnyAccounts = false;
|
|
641
644
|
for (const account of instruction.accounts) {
|
|
642
|
-
if ("lookupTableAddress" in account || !
|
|
645
|
+
if ("lookupTableAddress" in account || !eligibleLookupAddresses.has(account.address) || instructions.isSignerRole(account.role)) {
|
|
643
646
|
newAccounts.push(account);
|
|
644
647
|
continue;
|
|
645
648
|
}
|