@solana-mobile/wallet-standard-mobile 0.1.0 → 0.3.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/lib/cjs/index.browser.js +31 -50
- package/lib/cjs/index.js +31 -50
- package/lib/cjs/index.native.js +31 -50
- package/lib/esm/index.browser.js +29 -48
- package/lib/esm/index.js +29 -48
- package/lib/types/index.browser.d.ts.map +1 -1
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/index.native.d.ts.map +1 -1
- package/package.json +2 -6
package/lib/cjs/index.browser.js
CHANGED
@@ -3,12 +3,11 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
var walletStandardFeatures = require('@solana/wallet-standard-features');
|
6
|
-
var web3_js = require('@solana/web3.js');
|
7
6
|
var QRCode = require('qrcode');
|
7
|
+
var mobileWalletAdapterProtocol = require('@solana-mobile/mobile-wallet-adapter-protocol');
|
8
8
|
var features = require('@wallet-standard/features');
|
9
|
-
var walletStandardChains = require('@solana/wallet-standard-chains');
|
10
|
-
var mobileWalletAdapterProtocolWeb3js = require('@solana-mobile/mobile-wallet-adapter-protocol-web3js');
|
11
9
|
var base58 = require('bs58');
|
10
|
+
var walletStandardChains = require('@solana/wallet-standard-chains');
|
12
11
|
|
13
12
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
14
13
|
|
@@ -500,10 +499,6 @@ const css$1 = `
|
|
500
499
|
|
501
500
|
const icon = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik03IDIuNUgxN0MxNy44Mjg0IDIuNSAxOC41IDMuMTcxNTcgMTguNSA0VjIwQzE4LjUgMjAuODI4NCAxNy44Mjg0IDIxLjUgMTcgMjEuNUg3QzYuMTcxNTcgMjEuNSA1LjUgMjAuODI4NCA1LjUgMjBWNEM1LjUgMy4xNzE1NyA2LjE3MTU3IDIuNSA3IDIuNVpNMyA0QzMgMS43OTA4NiA0Ljc5MDg2IDAgNyAwSDE3QzE5LjIwOTEgMCAyMSAxLjc5MDg2IDIxIDRWMjBDMjEgMjIuMjA5MSAxOS4yMDkxIDI0IDE3IDI0SDdDNC43OTA4NiAyNCAzIDIyLjIwOTEgMyAyMFY0Wk0xMSA0LjYxNTM4QzEwLjQ0NzcgNC42MTUzOCAxMCA1LjA2MzEgMTAgNS42MTUzOFY2LjM4NDYyQzEwIDYuOTM2OSAxMC40NDc3IDcuMzg0NjIgMTEgNy4zODQ2MkgxM0MxMy41NTIzIDcuMzg0NjIgMTQgNi45MzY5IDE0IDYuMzg0NjJWNS42MTUzOEMxNCA1LjA2MzEgMTMuNTUyMyA0LjYxNTM4IDEzIDQuNjE1MzhIMTFaIiBmaWxsPSIjRENCOEZGIi8+Cjwvc3ZnPgo=';
|
502
501
|
|
503
|
-
function isVersionedTransaction(transaction) {
|
504
|
-
return 'version' in transaction;
|
505
|
-
}
|
506
|
-
|
507
502
|
function fromUint8Array(byteArray) {
|
508
503
|
return window.btoa(String.fromCharCode.call(null, ...byteArray));
|
509
504
|
}
|
@@ -676,7 +671,7 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
676
671
|
const config = walletUriBase ? { baseUri: walletUriBase } : undefined;
|
677
672
|
const currentConnectionGeneration = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_connectionGeneration, "f");
|
678
673
|
try {
|
679
|
-
return yield
|
674
|
+
return yield mobileWalletAdapterProtocol.transact(callback, config);
|
680
675
|
}
|
681
676
|
catch (e) {
|
682
677
|
if (__classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_connectionGeneration, "f") !== currentConnectionGeneration) {
|
@@ -713,11 +708,12 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
713
708
|
_LocalSolanaMobileWalletAdapterWallet_performSignTransactions.set(this, (transactions) => __awaiter(this, void 0, void 0, function* () {
|
714
709
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
715
710
|
try {
|
711
|
+
const base64Transactions = transactions.map((tx) => { return fromUint8Array(tx); });
|
716
712
|
return yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
717
713
|
yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
718
|
-
const signedTransactions = yield wallet.signTransactions({
|
719
|
-
|
720
|
-
});
|
714
|
+
const signedTransactions = (yield wallet.signTransactions({
|
715
|
+
payloads: base64Transactions,
|
716
|
+
})).signed_payloads.map(toUint8Array);
|
721
717
|
return signedTransactions;
|
722
718
|
}));
|
723
719
|
}
|
@@ -734,7 +730,8 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
734
730
|
__classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain)
|
735
731
|
]);
|
736
732
|
if (capabilities.supports_sign_and_send_transactions) {
|
737
|
-
const
|
733
|
+
const base64Transaction = fromUint8Array(transaction);
|
734
|
+
const signatures = (yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { payloads: [base64Transaction] }))).signatures.map(toUint8Array);
|
738
735
|
return signatures[0];
|
739
736
|
}
|
740
737
|
else {
|
@@ -749,36 +746,28 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
749
746
|
_LocalSolanaMobileWalletAdapterWallet_signAndSendTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
750
747
|
const outputs = [];
|
751
748
|
for (const input of inputs) {
|
752
|
-
const
|
753
|
-
|
754
|
-
outputs.push({ signature: base58__default["default"].decode(signature) });
|
749
|
+
const signature = yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, input.transaction, input.options);
|
750
|
+
outputs.push({ signature });
|
755
751
|
}
|
756
752
|
return outputs;
|
757
753
|
}));
|
758
754
|
_LocalSolanaMobileWalletAdapterWallet_signTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
759
|
-
|
760
|
-
|
761
|
-
|
762
|
-
const serializedTransaction = isVersionedTransaction(signedTransaction)
|
763
|
-
? signedTransaction.serialize()
|
764
|
-
: new Uint8Array(signedTransaction.serialize({
|
765
|
-
requireAllSignatures: false,
|
766
|
-
verifySignatures: false,
|
767
|
-
}));
|
768
|
-
return { signedTransaction: serializedTransaction };
|
755
|
+
return (yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, inputs.map(({ transaction }) => transaction)))
|
756
|
+
.map((signedTransaction) => {
|
757
|
+
return { signedTransaction };
|
769
758
|
});
|
770
759
|
}));
|
771
760
|
_LocalSolanaMobileWalletAdapterWallet_signMessage.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
772
761
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
773
762
|
const addresses = inputs.map(({ account }) => fromUint8Array(account.publicKey));
|
774
|
-
const messages = inputs.map(({ message }) => message);
|
763
|
+
const messages = inputs.map(({ message }) => fromUint8Array(message));
|
775
764
|
try {
|
776
765
|
return yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
777
766
|
yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
778
|
-
const signedMessages = yield wallet.signMessages({
|
767
|
+
const signedMessages = (yield wallet.signMessages({
|
779
768
|
addresses: addresses,
|
780
769
|
payloads: messages,
|
781
|
-
});
|
770
|
+
})).signed_payloads.map(toUint8Array);
|
782
771
|
return signedMessages.map((signedMessage) => {
|
783
772
|
return { signedMessage: signedMessage, signature: signedMessage.slice(-SIGNATURE_LENGTH_IN_BYTES) };
|
784
773
|
});
|
@@ -1059,7 +1048,7 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1059
1048
|
return callback(__classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_session, "f").wallet);
|
1060
1049
|
}
|
1061
1050
|
try {
|
1062
|
-
const { associationUrl, close, wallet } = yield
|
1051
|
+
const { associationUrl, close, wallet } = yield mobileWalletAdapterProtocol.startRemoteScenario(remoteConfig);
|
1063
1052
|
const removeCloseListener = modal.addEventListener('close', (event) => {
|
1064
1053
|
if (event)
|
1065
1054
|
close();
|
@@ -1109,9 +1098,9 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1109
1098
|
try {
|
1110
1099
|
return yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
1111
1100
|
yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
1112
|
-
const signedTransactions = yield wallet.signTransactions({
|
1113
|
-
transactions,
|
1114
|
-
});
|
1101
|
+
const signedTransactions = (yield wallet.signTransactions({
|
1102
|
+
payloads: transactions.map(fromUint8Array),
|
1103
|
+
})).signed_payloads.map(toUint8Array);
|
1115
1104
|
return signedTransactions;
|
1116
1105
|
}));
|
1117
1106
|
}
|
@@ -1128,7 +1117,7 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1128
1117
|
__classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain)
|
1129
1118
|
]);
|
1130
1119
|
if (capabilities.supports_sign_and_send_transactions) {
|
1131
|
-
const signatures = yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), {
|
1120
|
+
const signatures = (yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { payloads: [fromUint8Array(transaction)] }))).signatures.map(toUint8Array);
|
1132
1121
|
return signatures[0];
|
1133
1122
|
}
|
1134
1123
|
else {
|
@@ -1143,36 +1132,28 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1143
1132
|
_RemoteSolanaMobileWalletAdapterWallet_signAndSendTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1144
1133
|
const outputs = [];
|
1145
1134
|
for (const input of inputs) {
|
1146
|
-
const
|
1147
|
-
|
1148
|
-
outputs.push({ signature: base58__default["default"].decode(signature) });
|
1135
|
+
const signature = (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, input.transaction, input.options));
|
1136
|
+
outputs.push({ signature });
|
1149
1137
|
}
|
1150
1138
|
return outputs;
|
1151
1139
|
}));
|
1152
1140
|
_RemoteSolanaMobileWalletAdapterWallet_signTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1153
|
-
|
1154
|
-
|
1155
|
-
|
1156
|
-
const serializedTransaction = isVersionedTransaction(signedTransaction)
|
1157
|
-
? signedTransaction.serialize()
|
1158
|
-
: new Uint8Array(signedTransaction.serialize({
|
1159
|
-
requireAllSignatures: false,
|
1160
|
-
verifySignatures: false,
|
1161
|
-
}));
|
1162
|
-
return { signedTransaction: serializedTransaction };
|
1141
|
+
return (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, inputs.map(({ transaction }) => transaction)))
|
1142
|
+
.map((signedTransaction) => {
|
1143
|
+
return { signedTransaction };
|
1163
1144
|
});
|
1164
1145
|
}));
|
1165
1146
|
_RemoteSolanaMobileWalletAdapterWallet_signMessage.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1166
1147
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
1167
1148
|
const addresses = inputs.map(({ account }) => fromUint8Array(account.publicKey));
|
1168
|
-
const messages = inputs.map(({ message }) => message);
|
1149
|
+
const messages = inputs.map(({ message }) => fromUint8Array(message));
|
1169
1150
|
try {
|
1170
1151
|
return yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
1171
1152
|
yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
1172
|
-
const signedMessages = yield wallet.signMessages({
|
1153
|
+
const signedMessages = (yield wallet.signMessages({
|
1173
1154
|
addresses: addresses,
|
1174
1155
|
payloads: messages,
|
1175
|
-
});
|
1156
|
+
})).signed_payloads.map(toUint8Array);
|
1176
1157
|
return signedMessages.map((signedMessage) => {
|
1177
1158
|
return { signedMessage: signedMessage, signature: signedMessage.slice(-SIGNATURE_LENGTH_IN_BYTES) };
|
1178
1159
|
});
|
@@ -1579,7 +1560,7 @@ function createDefaultAuthorizationCache() {
|
|
1579
1560
|
const parsedAccounts = parsed.accounts.map((account) => {
|
1580
1561
|
return Object.assign(Object.assign({}, account), { publicKey: 'publicKey' in account
|
1581
1562
|
? new Uint8Array(Object.values(account.publicKey)) // Rebuild publicKey for WalletAccount
|
1582
|
-
:
|
1563
|
+
: base58__default["default"].decode(account.address) });
|
1583
1564
|
});
|
1584
1565
|
return Object.assign(Object.assign({}, parsed), { accounts: parsedAccounts });
|
1585
1566
|
}
|
package/lib/cjs/index.js
CHANGED
@@ -3,12 +3,11 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
var walletStandardFeatures = require('@solana/wallet-standard-features');
|
6
|
-
var web3_js = require('@solana/web3.js');
|
7
6
|
var QRCode = require('qrcode');
|
7
|
+
var mobileWalletAdapterProtocol = require('@solana-mobile/mobile-wallet-adapter-protocol');
|
8
8
|
var features = require('@wallet-standard/features');
|
9
|
-
var walletStandardChains = require('@solana/wallet-standard-chains');
|
10
|
-
var mobileWalletAdapterProtocolWeb3js = require('@solana-mobile/mobile-wallet-adapter-protocol-web3js');
|
11
9
|
var base58 = require('bs58');
|
10
|
+
var walletStandardChains = require('@solana/wallet-standard-chains');
|
12
11
|
|
13
12
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
14
13
|
|
@@ -500,10 +499,6 @@ const css$1 = `
|
|
500
499
|
|
501
500
|
const icon = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik03IDIuNUgxN0MxNy44Mjg0IDIuNSAxOC41IDMuMTcxNTcgMTguNSA0VjIwQzE4LjUgMjAuODI4NCAxNy44Mjg0IDIxLjUgMTcgMjEuNUg3QzYuMTcxNTcgMjEuNSA1LjUgMjAuODI4NCA1LjUgMjBWNEM1LjUgMy4xNzE1NyA2LjE3MTU3IDIuNSA3IDIuNVpNMyA0QzMgMS43OTA4NiA0Ljc5MDg2IDAgNyAwSDE3QzE5LjIwOTEgMCAyMSAxLjc5MDg2IDIxIDRWMjBDMjEgMjIuMjA5MSAxOS4yMDkxIDI0IDE3IDI0SDdDNC43OTA4NiAyNCAzIDIyLjIwOTEgMyAyMFY0Wk0xMSA0LjYxNTM4QzEwLjQ0NzcgNC42MTUzOCAxMCA1LjA2MzEgMTAgNS42MTUzOFY2LjM4NDYyQzEwIDYuOTM2OSAxMC40NDc3IDcuMzg0NjIgMTEgNy4zODQ2MkgxM0MxMy41NTIzIDcuMzg0NjIgMTQgNi45MzY5IDE0IDYuMzg0NjJWNS42MTUzOEMxNCA1LjA2MzEgMTMuNTUyMyA0LjYxNTM4IDEzIDQuNjE1MzhIMTFaIiBmaWxsPSIjRENCOEZGIi8+Cjwvc3ZnPgo=';
|
502
501
|
|
503
|
-
function isVersionedTransaction(transaction) {
|
504
|
-
return 'version' in transaction;
|
505
|
-
}
|
506
|
-
|
507
502
|
function fromUint8Array(byteArray) {
|
508
503
|
return window.btoa(String.fromCharCode.call(null, ...byteArray));
|
509
504
|
}
|
@@ -676,7 +671,7 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
676
671
|
const config = walletUriBase ? { baseUri: walletUriBase } : undefined;
|
677
672
|
const currentConnectionGeneration = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_connectionGeneration, "f");
|
678
673
|
try {
|
679
|
-
return yield
|
674
|
+
return yield mobileWalletAdapterProtocol.transact(callback, config);
|
680
675
|
}
|
681
676
|
catch (e) {
|
682
677
|
if (__classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_connectionGeneration, "f") !== currentConnectionGeneration) {
|
@@ -713,11 +708,12 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
713
708
|
_LocalSolanaMobileWalletAdapterWallet_performSignTransactions.set(this, (transactions) => __awaiter(this, void 0, void 0, function* () {
|
714
709
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
715
710
|
try {
|
711
|
+
const base64Transactions = transactions.map((tx) => { return fromUint8Array(tx); });
|
716
712
|
return yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
717
713
|
yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
718
|
-
const signedTransactions = yield wallet.signTransactions({
|
719
|
-
|
720
|
-
});
|
714
|
+
const signedTransactions = (yield wallet.signTransactions({
|
715
|
+
payloads: base64Transactions,
|
716
|
+
})).signed_payloads.map(toUint8Array);
|
721
717
|
return signedTransactions;
|
722
718
|
}));
|
723
719
|
}
|
@@ -734,7 +730,8 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
734
730
|
__classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain)
|
735
731
|
]);
|
736
732
|
if (capabilities.supports_sign_and_send_transactions) {
|
737
|
-
const
|
733
|
+
const base64Transaction = fromUint8Array(transaction);
|
734
|
+
const signatures = (yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { payloads: [base64Transaction] }))).signatures.map(toUint8Array);
|
738
735
|
return signatures[0];
|
739
736
|
}
|
740
737
|
else {
|
@@ -749,36 +746,28 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
749
746
|
_LocalSolanaMobileWalletAdapterWallet_signAndSendTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
750
747
|
const outputs = [];
|
751
748
|
for (const input of inputs) {
|
752
|
-
const
|
753
|
-
|
754
|
-
outputs.push({ signature: base58__default["default"].decode(signature) });
|
749
|
+
const signature = yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, input.transaction, input.options);
|
750
|
+
outputs.push({ signature });
|
755
751
|
}
|
756
752
|
return outputs;
|
757
753
|
}));
|
758
754
|
_LocalSolanaMobileWalletAdapterWallet_signTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
759
|
-
|
760
|
-
|
761
|
-
|
762
|
-
const serializedTransaction = isVersionedTransaction(signedTransaction)
|
763
|
-
? signedTransaction.serialize()
|
764
|
-
: new Uint8Array(signedTransaction.serialize({
|
765
|
-
requireAllSignatures: false,
|
766
|
-
verifySignatures: false,
|
767
|
-
}));
|
768
|
-
return { signedTransaction: serializedTransaction };
|
755
|
+
return (yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, inputs.map(({ transaction }) => transaction)))
|
756
|
+
.map((signedTransaction) => {
|
757
|
+
return { signedTransaction };
|
769
758
|
});
|
770
759
|
}));
|
771
760
|
_LocalSolanaMobileWalletAdapterWallet_signMessage.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
772
761
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
773
762
|
const addresses = inputs.map(({ account }) => fromUint8Array(account.publicKey));
|
774
|
-
const messages = inputs.map(({ message }) => message);
|
763
|
+
const messages = inputs.map(({ message }) => fromUint8Array(message));
|
775
764
|
try {
|
776
765
|
return yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
777
766
|
yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
778
|
-
const signedMessages = yield wallet.signMessages({
|
767
|
+
const signedMessages = (yield wallet.signMessages({
|
779
768
|
addresses: addresses,
|
780
769
|
payloads: messages,
|
781
|
-
});
|
770
|
+
})).signed_payloads.map(toUint8Array);
|
782
771
|
return signedMessages.map((signedMessage) => {
|
783
772
|
return { signedMessage: signedMessage, signature: signedMessage.slice(-SIGNATURE_LENGTH_IN_BYTES) };
|
784
773
|
});
|
@@ -1059,7 +1048,7 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1059
1048
|
return callback(__classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_session, "f").wallet);
|
1060
1049
|
}
|
1061
1050
|
try {
|
1062
|
-
const { associationUrl, close, wallet } = yield
|
1051
|
+
const { associationUrl, close, wallet } = yield mobileWalletAdapterProtocol.startRemoteScenario(remoteConfig);
|
1063
1052
|
const removeCloseListener = modal.addEventListener('close', (event) => {
|
1064
1053
|
if (event)
|
1065
1054
|
close();
|
@@ -1109,9 +1098,9 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1109
1098
|
try {
|
1110
1099
|
return yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
1111
1100
|
yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
1112
|
-
const signedTransactions = yield wallet.signTransactions({
|
1113
|
-
transactions,
|
1114
|
-
});
|
1101
|
+
const signedTransactions = (yield wallet.signTransactions({
|
1102
|
+
payloads: transactions.map(fromUint8Array),
|
1103
|
+
})).signed_payloads.map(toUint8Array);
|
1115
1104
|
return signedTransactions;
|
1116
1105
|
}));
|
1117
1106
|
}
|
@@ -1128,7 +1117,7 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1128
1117
|
__classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain)
|
1129
1118
|
]);
|
1130
1119
|
if (capabilities.supports_sign_and_send_transactions) {
|
1131
|
-
const signatures = yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), {
|
1120
|
+
const signatures = (yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { payloads: [fromUint8Array(transaction)] }))).signatures.map(toUint8Array);
|
1132
1121
|
return signatures[0];
|
1133
1122
|
}
|
1134
1123
|
else {
|
@@ -1143,36 +1132,28 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1143
1132
|
_RemoteSolanaMobileWalletAdapterWallet_signAndSendTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1144
1133
|
const outputs = [];
|
1145
1134
|
for (const input of inputs) {
|
1146
|
-
const
|
1147
|
-
|
1148
|
-
outputs.push({ signature: base58__default["default"].decode(signature) });
|
1135
|
+
const signature = (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, input.transaction, input.options));
|
1136
|
+
outputs.push({ signature });
|
1149
1137
|
}
|
1150
1138
|
return outputs;
|
1151
1139
|
}));
|
1152
1140
|
_RemoteSolanaMobileWalletAdapterWallet_signTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1153
|
-
|
1154
|
-
|
1155
|
-
|
1156
|
-
const serializedTransaction = isVersionedTransaction(signedTransaction)
|
1157
|
-
? signedTransaction.serialize()
|
1158
|
-
: new Uint8Array(signedTransaction.serialize({
|
1159
|
-
requireAllSignatures: false,
|
1160
|
-
verifySignatures: false,
|
1161
|
-
}));
|
1162
|
-
return { signedTransaction: serializedTransaction };
|
1141
|
+
return (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, inputs.map(({ transaction }) => transaction)))
|
1142
|
+
.map((signedTransaction) => {
|
1143
|
+
return { signedTransaction };
|
1163
1144
|
});
|
1164
1145
|
}));
|
1165
1146
|
_RemoteSolanaMobileWalletAdapterWallet_signMessage.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1166
1147
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
1167
1148
|
const addresses = inputs.map(({ account }) => fromUint8Array(account.publicKey));
|
1168
|
-
const messages = inputs.map(({ message }) => message);
|
1149
|
+
const messages = inputs.map(({ message }) => fromUint8Array(message));
|
1169
1150
|
try {
|
1170
1151
|
return yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
1171
1152
|
yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
1172
|
-
const signedMessages = yield wallet.signMessages({
|
1153
|
+
const signedMessages = (yield wallet.signMessages({
|
1173
1154
|
addresses: addresses,
|
1174
1155
|
payloads: messages,
|
1175
|
-
});
|
1156
|
+
})).signed_payloads.map(toUint8Array);
|
1176
1157
|
return signedMessages.map((signedMessage) => {
|
1177
1158
|
return { signedMessage: signedMessage, signature: signedMessage.slice(-SIGNATURE_LENGTH_IN_BYTES) };
|
1178
1159
|
});
|
@@ -1579,7 +1560,7 @@ function createDefaultAuthorizationCache() {
|
|
1579
1560
|
const parsedAccounts = parsed.accounts.map((account) => {
|
1580
1561
|
return Object.assign(Object.assign({}, account), { publicKey: 'publicKey' in account
|
1581
1562
|
? new Uint8Array(Object.values(account.publicKey)) // Rebuild publicKey for WalletAccount
|
1582
|
-
:
|
1563
|
+
: base58__default["default"].decode(account.address) });
|
1583
1564
|
});
|
1584
1565
|
return Object.assign(Object.assign({}, parsed), { accounts: parsedAccounts });
|
1585
1566
|
}
|
package/lib/cjs/index.native.js
CHANGED
@@ -3,14 +3,13 @@
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
4
4
|
|
5
5
|
var walletStandardFeatures = require('@solana/wallet-standard-features');
|
6
|
-
var web3_js = require('@solana/web3.js');
|
7
6
|
var QRCode = require('qrcode');
|
7
|
+
var mobileWalletAdapterProtocol = require('@solana-mobile/mobile-wallet-adapter-protocol');
|
8
8
|
var features = require('@wallet-standard/features');
|
9
|
-
var walletStandardChains = require('@solana/wallet-standard-chains');
|
10
|
-
var mobileWalletAdapterProtocolWeb3js = require('@solana-mobile/mobile-wallet-adapter-protocol-web3js');
|
11
9
|
var jsBase64 = require('js-base64');
|
12
10
|
var base58 = require('bs58');
|
13
11
|
var require$$0 = require('is-plain-obj');
|
12
|
+
var walletStandardChains = require('@solana/wallet-standard-chains');
|
14
13
|
|
15
14
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
16
15
|
|
@@ -503,10 +502,6 @@ const css$1 = `
|
|
503
502
|
|
504
503
|
const icon = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik03IDIuNUgxN0MxNy44Mjg0IDIuNSAxOC41IDMuMTcxNTcgMTguNSA0VjIwQzE4LjUgMjAuODI4NCAxNy44Mjg0IDIxLjUgMTcgMjEuNUg3QzYuMTcxNTcgMjEuNSA1LjUgMjAuODI4NCA1LjUgMjBWNEM1LjUgMy4xNzE1NyA2LjE3MTU3IDIuNSA3IDIuNVpNMyA0QzMgMS43OTA4NiA0Ljc5MDg2IDAgNyAwSDE3QzE5LjIwOTEgMCAyMSAxLjc5MDg2IDIxIDRWMjBDMjEgMjIuMjA5MSAxOS4yMDkxIDI0IDE3IDI0SDdDNC43OTA4NiAyNCAzIDIyLjIwOTEgMyAyMFY0Wk0xMSA0LjYxNTM4QzEwLjQ0NzcgNC42MTUzOCAxMCA1LjA2MzEgMTAgNS42MTUzOFY2LjM4NDYyQzEwIDYuOTM2OSAxMC40NDc3IDcuMzg0NjIgMTEgNy4zODQ2MkgxM0MxMy41NTIzIDcuMzg0NjIgMTQgNi45MzY5IDE0IDYuMzg0NjJWNS42MTUzOEMxNCA1LjA2MzEgMTMuNTUyMyA0LjYxNTM4IDEzIDQuNjE1MzhIMTFaIiBmaWxsPSIjRENCOEZGIi8+Cjwvc3ZnPgo=';
|
505
504
|
|
506
|
-
function isVersionedTransaction(transaction) {
|
507
|
-
return 'version' in transaction;
|
508
|
-
}
|
509
|
-
|
510
505
|
var _LocalSolanaMobileWalletAdapterWallet_instances, _LocalSolanaMobileWalletAdapterWallet_listeners, _LocalSolanaMobileWalletAdapterWallet_version, _LocalSolanaMobileWalletAdapterWallet_name, _LocalSolanaMobileWalletAdapterWallet_url, _LocalSolanaMobileWalletAdapterWallet_icon, _LocalSolanaMobileWalletAdapterWallet_appIdentity, _LocalSolanaMobileWalletAdapterWallet_authorization, _LocalSolanaMobileWalletAdapterWallet_authorizationCache, _LocalSolanaMobileWalletAdapterWallet_connecting, _LocalSolanaMobileWalletAdapterWallet_connectionGeneration, _LocalSolanaMobileWalletAdapterWallet_chains, _LocalSolanaMobileWalletAdapterWallet_chainSelector, _LocalSolanaMobileWalletAdapterWallet_optionalFeatures, _LocalSolanaMobileWalletAdapterWallet_onWalletNotFound, _LocalSolanaMobileWalletAdapterWallet_on, _LocalSolanaMobileWalletAdapterWallet_emit, _LocalSolanaMobileWalletAdapterWallet_off, _LocalSolanaMobileWalletAdapterWallet_connect, _LocalSolanaMobileWalletAdapterWallet_performAuthorization, _LocalSolanaMobileWalletAdapterWallet_handleAuthorizationResult, _LocalSolanaMobileWalletAdapterWallet_handleWalletCapabilitiesResult, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, _LocalSolanaMobileWalletAdapterWallet_disconnect, _LocalSolanaMobileWalletAdapterWallet_transact, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, _LocalSolanaMobileWalletAdapterWallet_accountsToWalletStandardAccounts, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, _LocalSolanaMobileWalletAdapterWallet_signAndSendTransaction, _LocalSolanaMobileWalletAdapterWallet_signTransaction, _LocalSolanaMobileWalletAdapterWallet_signMessage, _LocalSolanaMobileWalletAdapterWallet_signIn, _LocalSolanaMobileWalletAdapterWallet_performSignIn, _RemoteSolanaMobileWalletAdapterWallet_instances, _RemoteSolanaMobileWalletAdapterWallet_listeners, _RemoteSolanaMobileWalletAdapterWallet_version, _RemoteSolanaMobileWalletAdapterWallet_name, _RemoteSolanaMobileWalletAdapterWallet_url, _RemoteSolanaMobileWalletAdapterWallet_icon, _RemoteSolanaMobileWalletAdapterWallet_appIdentity, _RemoteSolanaMobileWalletAdapterWallet_authorization, _RemoteSolanaMobileWalletAdapterWallet_authorizationCache, _RemoteSolanaMobileWalletAdapterWallet_connecting, _RemoteSolanaMobileWalletAdapterWallet_connectionGeneration, _RemoteSolanaMobileWalletAdapterWallet_chains, _RemoteSolanaMobileWalletAdapterWallet_chainSelector, _RemoteSolanaMobileWalletAdapterWallet_optionalFeatures, _RemoteSolanaMobileWalletAdapterWallet_onWalletNotFound, _RemoteSolanaMobileWalletAdapterWallet_hostAuthority, _RemoteSolanaMobileWalletAdapterWallet_session, _RemoteSolanaMobileWalletAdapterWallet_on, _RemoteSolanaMobileWalletAdapterWallet_emit, _RemoteSolanaMobileWalletAdapterWallet_off, _RemoteSolanaMobileWalletAdapterWallet_connect, _RemoteSolanaMobileWalletAdapterWallet_performAuthorization, _RemoteSolanaMobileWalletAdapterWallet_handleAuthorizationResult, _RemoteSolanaMobileWalletAdapterWallet_handleWalletCapabilitiesResult, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, _RemoteSolanaMobileWalletAdapterWallet_disconnect, _RemoteSolanaMobileWalletAdapterWallet_transact, _RemoteSolanaMobileWalletAdapterWallet_assertIsAuthorized, _RemoteSolanaMobileWalletAdapterWallet_accountsToWalletStandardAccounts, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, _RemoteSolanaMobileWalletAdapterWallet_signAndSendTransaction, _RemoteSolanaMobileWalletAdapterWallet_signTransaction, _RemoteSolanaMobileWalletAdapterWallet_signMessage, _RemoteSolanaMobileWalletAdapterWallet_signIn, _RemoteSolanaMobileWalletAdapterWallet_performSignIn;
|
511
506
|
const SolanaMobileWalletAdapterWalletName = 'Mobile Wallet Adapter';
|
512
507
|
const SIGNATURE_LENGTH_IN_BYTES = 64;
|
@@ -669,7 +664,7 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
669
664
|
const config = walletUriBase ? { baseUri: walletUriBase } : undefined;
|
670
665
|
const currentConnectionGeneration = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_connectionGeneration, "f");
|
671
666
|
try {
|
672
|
-
return yield
|
667
|
+
return yield mobileWalletAdapterProtocol.transact(callback, config);
|
673
668
|
}
|
674
669
|
catch (e) {
|
675
670
|
if (__classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_connectionGeneration, "f") !== currentConnectionGeneration) {
|
@@ -706,11 +701,12 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
706
701
|
_LocalSolanaMobileWalletAdapterWallet_performSignTransactions.set(this, (transactions) => __awaiter(this, void 0, void 0, function* () {
|
707
702
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
708
703
|
try {
|
704
|
+
const base64Transactions = transactions.map((tx) => { return jsBase64.fromUint8Array(tx); });
|
709
705
|
return yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
710
706
|
yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
711
|
-
const signedTransactions = yield wallet.signTransactions({
|
712
|
-
|
713
|
-
});
|
707
|
+
const signedTransactions = (yield wallet.signTransactions({
|
708
|
+
payloads: base64Transactions,
|
709
|
+
})).signed_payloads.map(jsBase64.toUint8Array);
|
714
710
|
return signedTransactions;
|
715
711
|
}));
|
716
712
|
}
|
@@ -727,7 +723,8 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
727
723
|
__classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain)
|
728
724
|
]);
|
729
725
|
if (capabilities.supports_sign_and_send_transactions) {
|
730
|
-
const
|
726
|
+
const base64Transaction = jsBase64.fromUint8Array(transaction);
|
727
|
+
const signatures = (yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { payloads: [base64Transaction] }))).signatures.map(jsBase64.toUint8Array);
|
731
728
|
return signatures[0];
|
732
729
|
}
|
733
730
|
else {
|
@@ -742,36 +739,28 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
742
739
|
_LocalSolanaMobileWalletAdapterWallet_signAndSendTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
743
740
|
const outputs = [];
|
744
741
|
for (const input of inputs) {
|
745
|
-
const
|
746
|
-
|
747
|
-
outputs.push({ signature: base58__default["default"].decode(signature) });
|
742
|
+
const signature = yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, input.transaction, input.options);
|
743
|
+
outputs.push({ signature });
|
748
744
|
}
|
749
745
|
return outputs;
|
750
746
|
}));
|
751
747
|
_LocalSolanaMobileWalletAdapterWallet_signTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
752
|
-
|
753
|
-
|
754
|
-
|
755
|
-
const serializedTransaction = isVersionedTransaction(signedTransaction)
|
756
|
-
? signedTransaction.serialize()
|
757
|
-
: new Uint8Array(signedTransaction.serialize({
|
758
|
-
requireAllSignatures: false,
|
759
|
-
verifySignatures: false,
|
760
|
-
}));
|
761
|
-
return { signedTransaction: serializedTransaction };
|
748
|
+
return (yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, inputs.map(({ transaction }) => transaction)))
|
749
|
+
.map((signedTransaction) => {
|
750
|
+
return { signedTransaction };
|
762
751
|
});
|
763
752
|
}));
|
764
753
|
_LocalSolanaMobileWalletAdapterWallet_signMessage.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
765
754
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
766
755
|
const addresses = inputs.map(({ account }) => jsBase64.fromUint8Array(account.publicKey));
|
767
|
-
const messages = inputs.map(({ message }) => message);
|
756
|
+
const messages = inputs.map(({ message }) => jsBase64.fromUint8Array(message));
|
768
757
|
try {
|
769
758
|
return yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
770
759
|
yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
771
|
-
const signedMessages = yield wallet.signMessages({
|
760
|
+
const signedMessages = (yield wallet.signMessages({
|
772
761
|
addresses: addresses,
|
773
762
|
payloads: messages,
|
774
|
-
});
|
763
|
+
})).signed_payloads.map(jsBase64.toUint8Array);
|
775
764
|
return signedMessages.map((signedMessage) => {
|
776
765
|
return { signedMessage: signedMessage, signature: signedMessage.slice(-SIGNATURE_LENGTH_IN_BYTES) };
|
777
766
|
});
|
@@ -1052,7 +1041,7 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1052
1041
|
return callback(__classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_session, "f").wallet);
|
1053
1042
|
}
|
1054
1043
|
try {
|
1055
|
-
const { associationUrl, close, wallet } = yield
|
1044
|
+
const { associationUrl, close, wallet } = yield mobileWalletAdapterProtocol.startRemoteScenario(remoteConfig);
|
1056
1045
|
const removeCloseListener = modal.addEventListener('close', (event) => {
|
1057
1046
|
if (event)
|
1058
1047
|
close();
|
@@ -1102,9 +1091,9 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1102
1091
|
try {
|
1103
1092
|
return yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
1104
1093
|
yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
1105
|
-
const signedTransactions = yield wallet.signTransactions({
|
1106
|
-
transactions,
|
1107
|
-
});
|
1094
|
+
const signedTransactions = (yield wallet.signTransactions({
|
1095
|
+
payloads: transactions.map(jsBase64.fromUint8Array),
|
1096
|
+
})).signed_payloads.map(jsBase64.toUint8Array);
|
1108
1097
|
return signedTransactions;
|
1109
1098
|
}));
|
1110
1099
|
}
|
@@ -1121,7 +1110,7 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1121
1110
|
__classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain)
|
1122
1111
|
]);
|
1123
1112
|
if (capabilities.supports_sign_and_send_transactions) {
|
1124
|
-
const signatures = yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), {
|
1113
|
+
const signatures = (yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { payloads: [jsBase64.fromUint8Array(transaction)] }))).signatures.map(jsBase64.toUint8Array);
|
1125
1114
|
return signatures[0];
|
1126
1115
|
}
|
1127
1116
|
else {
|
@@ -1136,36 +1125,28 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1136
1125
|
_RemoteSolanaMobileWalletAdapterWallet_signAndSendTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1137
1126
|
const outputs = [];
|
1138
1127
|
for (const input of inputs) {
|
1139
|
-
const
|
1140
|
-
|
1141
|
-
outputs.push({ signature: base58__default["default"].decode(signature) });
|
1128
|
+
const signature = (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, input.transaction, input.options));
|
1129
|
+
outputs.push({ signature });
|
1142
1130
|
}
|
1143
1131
|
return outputs;
|
1144
1132
|
}));
|
1145
1133
|
_RemoteSolanaMobileWalletAdapterWallet_signTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1146
|
-
|
1147
|
-
|
1148
|
-
|
1149
|
-
const serializedTransaction = isVersionedTransaction(signedTransaction)
|
1150
|
-
? signedTransaction.serialize()
|
1151
|
-
: new Uint8Array(signedTransaction.serialize({
|
1152
|
-
requireAllSignatures: false,
|
1153
|
-
verifySignatures: false,
|
1154
|
-
}));
|
1155
|
-
return { signedTransaction: serializedTransaction };
|
1134
|
+
return (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, inputs.map(({ transaction }) => transaction)))
|
1135
|
+
.map((signedTransaction) => {
|
1136
|
+
return { signedTransaction };
|
1156
1137
|
});
|
1157
1138
|
}));
|
1158
1139
|
_RemoteSolanaMobileWalletAdapterWallet_signMessage.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1159
1140
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
1160
1141
|
const addresses = inputs.map(({ account }) => jsBase64.fromUint8Array(account.publicKey));
|
1161
|
-
const messages = inputs.map(({ message }) => message);
|
1142
|
+
const messages = inputs.map(({ message }) => jsBase64.fromUint8Array(message));
|
1162
1143
|
try {
|
1163
1144
|
return yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
1164
1145
|
yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
1165
|
-
const signedMessages = yield wallet.signMessages({
|
1146
|
+
const signedMessages = (yield wallet.signMessages({
|
1166
1147
|
addresses: addresses,
|
1167
1148
|
payloads: messages,
|
1168
|
-
});
|
1149
|
+
})).signed_payloads.map(jsBase64.toUint8Array);
|
1169
1150
|
return signedMessages.map((signedMessage) => {
|
1170
1151
|
return { signedMessage: signedMessage, signature: signedMessage.slice(-SIGNATURE_LENGTH_IN_BYTES) };
|
1171
1152
|
});
|
@@ -1889,7 +1870,7 @@ function createDefaultAuthorizationCache() {
|
|
1889
1870
|
const parsedAccounts = parsed.accounts.map((account) => {
|
1890
1871
|
return Object.assign(Object.assign({}, account), { publicKey: 'publicKey' in account
|
1891
1872
|
? new Uint8Array(Object.values(account.publicKey)) // Rebuild publicKey for WalletAccount
|
1892
|
-
:
|
1873
|
+
: base58__default["default"].decode(account.address) });
|
1893
1874
|
});
|
1894
1875
|
return Object.assign(Object.assign({}, parsed), { accounts: parsedAccounts });
|
1895
1876
|
}
|
package/lib/esm/index.browser.js
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
import { SolanaSignAndSendTransaction, SolanaSignTransaction, SolanaSignMessage, SolanaSignIn } from '@solana/wallet-standard-features';
|
2
|
-
import { VersionedTransaction, PublicKey } from '@solana/web3.js';
|
3
2
|
import QRCode from 'qrcode';
|
3
|
+
import { transact, startRemoteScenario } from '@solana-mobile/mobile-wallet-adapter-protocol';
|
4
4
|
import { StandardConnect, StandardDisconnect, StandardEvents } from '@wallet-standard/features';
|
5
|
-
import { SOLANA_MAINNET_CHAIN } from '@solana/wallet-standard-chains';
|
6
|
-
import { transact, startRemoteScenario } from '@solana-mobile/mobile-wallet-adapter-protocol-web3js';
|
7
5
|
import base58 from 'bs58';
|
6
|
+
import { SOLANA_MAINNET_CHAIN } from '@solana/wallet-standard-chains';
|
8
7
|
|
9
8
|
/******************************************************************************
|
10
9
|
Copyright (c) Microsoft Corporation.
|
@@ -491,10 +490,6 @@ const css$1 = `
|
|
491
490
|
|
492
491
|
const icon = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik03IDIuNUgxN0MxNy44Mjg0IDIuNSAxOC41IDMuMTcxNTcgMTguNSA0VjIwQzE4LjUgMjAuODI4NCAxNy44Mjg0IDIxLjUgMTcgMjEuNUg3QzYuMTcxNTcgMjEuNSA1LjUgMjAuODI4NCA1LjUgMjBWNEM1LjUgMy4xNzE1NyA2LjE3MTU3IDIuNSA3IDIuNVpNMyA0QzMgMS43OTA4NiA0Ljc5MDg2IDAgNyAwSDE3QzE5LjIwOTEgMCAyMSAxLjc5MDg2IDIxIDRWMjBDMjEgMjIuMjA5MSAxOS4yMDkxIDI0IDE3IDI0SDdDNC43OTA4NiAyNCAzIDIyLjIwOTEgMyAyMFY0Wk0xMSA0LjYxNTM4QzEwLjQ0NzcgNC42MTUzOCAxMCA1LjA2MzEgMTAgNS42MTUzOFY2LjM4NDYyQzEwIDYuOTM2OSAxMC40NDc3IDcuMzg0NjIgMTEgNy4zODQ2MkgxM0MxMy41NTIzIDcuMzg0NjIgMTQgNi45MzY5IDE0IDYuMzg0NjJWNS42MTUzOEMxNCA1LjA2MzEgMTMuNTUyMyA0LjYxNTM4IDEzIDQuNjE1MzhIMTFaIiBmaWxsPSIjRENCOEZGIi8+Cjwvc3ZnPgo=';
|
493
492
|
|
494
|
-
function isVersionedTransaction(transaction) {
|
495
|
-
return 'version' in transaction;
|
496
|
-
}
|
497
|
-
|
498
493
|
function fromUint8Array(byteArray) {
|
499
494
|
return window.btoa(String.fromCharCode.call(null, ...byteArray));
|
500
495
|
}
|
@@ -704,11 +699,12 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
704
699
|
_LocalSolanaMobileWalletAdapterWallet_performSignTransactions.set(this, (transactions) => __awaiter(this, void 0, void 0, function* () {
|
705
700
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
706
701
|
try {
|
702
|
+
const base64Transactions = transactions.map((tx) => { return fromUint8Array(tx); });
|
707
703
|
return yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
708
704
|
yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
709
|
-
const signedTransactions = yield wallet.signTransactions({
|
710
|
-
|
711
|
-
});
|
705
|
+
const signedTransactions = (yield wallet.signTransactions({
|
706
|
+
payloads: base64Transactions,
|
707
|
+
})).signed_payloads.map(toUint8Array);
|
712
708
|
return signedTransactions;
|
713
709
|
}));
|
714
710
|
}
|
@@ -725,7 +721,8 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
725
721
|
__classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain)
|
726
722
|
]);
|
727
723
|
if (capabilities.supports_sign_and_send_transactions) {
|
728
|
-
const
|
724
|
+
const base64Transaction = fromUint8Array(transaction);
|
725
|
+
const signatures = (yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { payloads: [base64Transaction] }))).signatures.map(toUint8Array);
|
729
726
|
return signatures[0];
|
730
727
|
}
|
731
728
|
else {
|
@@ -740,36 +737,28 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
740
737
|
_LocalSolanaMobileWalletAdapterWallet_signAndSendTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
741
738
|
const outputs = [];
|
742
739
|
for (const input of inputs) {
|
743
|
-
const
|
744
|
-
|
745
|
-
outputs.push({ signature: base58.decode(signature) });
|
740
|
+
const signature = yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, input.transaction, input.options);
|
741
|
+
outputs.push({ signature });
|
746
742
|
}
|
747
743
|
return outputs;
|
748
744
|
}));
|
749
745
|
_LocalSolanaMobileWalletAdapterWallet_signTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
750
|
-
|
751
|
-
|
752
|
-
|
753
|
-
const serializedTransaction = isVersionedTransaction(signedTransaction)
|
754
|
-
? signedTransaction.serialize()
|
755
|
-
: new Uint8Array(signedTransaction.serialize({
|
756
|
-
requireAllSignatures: false,
|
757
|
-
verifySignatures: false,
|
758
|
-
}));
|
759
|
-
return { signedTransaction: serializedTransaction };
|
746
|
+
return (yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, inputs.map(({ transaction }) => transaction)))
|
747
|
+
.map((signedTransaction) => {
|
748
|
+
return { signedTransaction };
|
760
749
|
});
|
761
750
|
}));
|
762
751
|
_LocalSolanaMobileWalletAdapterWallet_signMessage.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
763
752
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
764
753
|
const addresses = inputs.map(({ account }) => fromUint8Array(account.publicKey));
|
765
|
-
const messages = inputs.map(({ message }) => message);
|
754
|
+
const messages = inputs.map(({ message }) => fromUint8Array(message));
|
766
755
|
try {
|
767
756
|
return yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
768
757
|
yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
769
|
-
const signedMessages = yield wallet.signMessages({
|
758
|
+
const signedMessages = (yield wallet.signMessages({
|
770
759
|
addresses: addresses,
|
771
760
|
payloads: messages,
|
772
|
-
});
|
761
|
+
})).signed_payloads.map(toUint8Array);
|
773
762
|
return signedMessages.map((signedMessage) => {
|
774
763
|
return { signedMessage: signedMessage, signature: signedMessage.slice(-SIGNATURE_LENGTH_IN_BYTES) };
|
775
764
|
});
|
@@ -1100,9 +1089,9 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1100
1089
|
try {
|
1101
1090
|
return yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
1102
1091
|
yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
1103
|
-
const signedTransactions = yield wallet.signTransactions({
|
1104
|
-
transactions,
|
1105
|
-
});
|
1092
|
+
const signedTransactions = (yield wallet.signTransactions({
|
1093
|
+
payloads: transactions.map(fromUint8Array),
|
1094
|
+
})).signed_payloads.map(toUint8Array);
|
1106
1095
|
return signedTransactions;
|
1107
1096
|
}));
|
1108
1097
|
}
|
@@ -1119,7 +1108,7 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1119
1108
|
__classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain)
|
1120
1109
|
]);
|
1121
1110
|
if (capabilities.supports_sign_and_send_transactions) {
|
1122
|
-
const signatures = yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), {
|
1111
|
+
const signatures = (yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { payloads: [fromUint8Array(transaction)] }))).signatures.map(toUint8Array);
|
1123
1112
|
return signatures[0];
|
1124
1113
|
}
|
1125
1114
|
else {
|
@@ -1134,36 +1123,28 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1134
1123
|
_RemoteSolanaMobileWalletAdapterWallet_signAndSendTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1135
1124
|
const outputs = [];
|
1136
1125
|
for (const input of inputs) {
|
1137
|
-
const
|
1138
|
-
|
1139
|
-
outputs.push({ signature: base58.decode(signature) });
|
1126
|
+
const signature = (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, input.transaction, input.options));
|
1127
|
+
outputs.push({ signature });
|
1140
1128
|
}
|
1141
1129
|
return outputs;
|
1142
1130
|
}));
|
1143
1131
|
_RemoteSolanaMobileWalletAdapterWallet_signTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1144
|
-
|
1145
|
-
|
1146
|
-
|
1147
|
-
const serializedTransaction = isVersionedTransaction(signedTransaction)
|
1148
|
-
? signedTransaction.serialize()
|
1149
|
-
: new Uint8Array(signedTransaction.serialize({
|
1150
|
-
requireAllSignatures: false,
|
1151
|
-
verifySignatures: false,
|
1152
|
-
}));
|
1153
|
-
return { signedTransaction: serializedTransaction };
|
1132
|
+
return (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, inputs.map(({ transaction }) => transaction)))
|
1133
|
+
.map((signedTransaction) => {
|
1134
|
+
return { signedTransaction };
|
1154
1135
|
});
|
1155
1136
|
}));
|
1156
1137
|
_RemoteSolanaMobileWalletAdapterWallet_signMessage.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1157
1138
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
1158
1139
|
const addresses = inputs.map(({ account }) => fromUint8Array(account.publicKey));
|
1159
|
-
const messages = inputs.map(({ message }) => message);
|
1140
|
+
const messages = inputs.map(({ message }) => fromUint8Array(message));
|
1160
1141
|
try {
|
1161
1142
|
return yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
1162
1143
|
yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
1163
|
-
const signedMessages = yield wallet.signMessages({
|
1144
|
+
const signedMessages = (yield wallet.signMessages({
|
1164
1145
|
addresses: addresses,
|
1165
1146
|
payloads: messages,
|
1166
|
-
});
|
1147
|
+
})).signed_payloads.map(toUint8Array);
|
1167
1148
|
return signedMessages.map((signedMessage) => {
|
1168
1149
|
return { signedMessage: signedMessage, signature: signedMessage.slice(-SIGNATURE_LENGTH_IN_BYTES) };
|
1169
1150
|
});
|
@@ -1570,7 +1551,7 @@ function createDefaultAuthorizationCache() {
|
|
1570
1551
|
const parsedAccounts = parsed.accounts.map((account) => {
|
1571
1552
|
return Object.assign(Object.assign({}, account), { publicKey: 'publicKey' in account
|
1572
1553
|
? new Uint8Array(Object.values(account.publicKey)) // Rebuild publicKey for WalletAccount
|
1573
|
-
:
|
1554
|
+
: base58.decode(account.address) });
|
1574
1555
|
});
|
1575
1556
|
return Object.assign(Object.assign({}, parsed), { accounts: parsedAccounts });
|
1576
1557
|
}
|
package/lib/esm/index.js
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
import { SolanaSignAndSendTransaction, SolanaSignTransaction, SolanaSignMessage, SolanaSignIn } from '@solana/wallet-standard-features';
|
2
|
-
import { VersionedTransaction, PublicKey } from '@solana/web3.js';
|
3
2
|
import QRCode from 'qrcode';
|
3
|
+
import { transact, startRemoteScenario } from '@solana-mobile/mobile-wallet-adapter-protocol';
|
4
4
|
import { StandardConnect, StandardDisconnect, StandardEvents } from '@wallet-standard/features';
|
5
|
-
import { SOLANA_MAINNET_CHAIN } from '@solana/wallet-standard-chains';
|
6
|
-
import { transact, startRemoteScenario } from '@solana-mobile/mobile-wallet-adapter-protocol-web3js';
|
7
5
|
import base58 from 'bs58';
|
6
|
+
import { SOLANA_MAINNET_CHAIN } from '@solana/wallet-standard-chains';
|
8
7
|
|
9
8
|
/******************************************************************************
|
10
9
|
Copyright (c) Microsoft Corporation.
|
@@ -491,10 +490,6 @@ const css$1 = `
|
|
491
490
|
|
492
491
|
const icon = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik03IDIuNUgxN0MxNy44Mjg0IDIuNSAxOC41IDMuMTcxNTcgMTguNSA0VjIwQzE4LjUgMjAuODI4NCAxNy44Mjg0IDIxLjUgMTcgMjEuNUg3QzYuMTcxNTcgMjEuNSA1LjUgMjAuODI4NCA1LjUgMjBWNEM1LjUgMy4xNzE1NyA2LjE3MTU3IDIuNSA3IDIuNVpNMyA0QzMgMS43OTA4NiA0Ljc5MDg2IDAgNyAwSDE3QzE5LjIwOTEgMCAyMSAxLjc5MDg2IDIxIDRWMjBDMjEgMjIuMjA5MSAxOS4yMDkxIDI0IDE3IDI0SDdDNC43OTA4NiAyNCAzIDIyLjIwOTEgMyAyMFY0Wk0xMSA0LjYxNTM4QzEwLjQ0NzcgNC42MTUzOCAxMCA1LjA2MzEgMTAgNS42MTUzOFY2LjM4NDYyQzEwIDYuOTM2OSAxMC40NDc3IDcuMzg0NjIgMTEgNy4zODQ2MkgxM0MxMy41NTIzIDcuMzg0NjIgMTQgNi45MzY5IDE0IDYuMzg0NjJWNS42MTUzOEMxNCA1LjA2MzEgMTMuNTUyMyA0LjYxNTM4IDEzIDQuNjE1MzhIMTFaIiBmaWxsPSIjRENCOEZGIi8+Cjwvc3ZnPgo=';
|
493
492
|
|
494
|
-
function isVersionedTransaction(transaction) {
|
495
|
-
return 'version' in transaction;
|
496
|
-
}
|
497
|
-
|
498
493
|
function fromUint8Array(byteArray) {
|
499
494
|
return window.btoa(String.fromCharCode.call(null, ...byteArray));
|
500
495
|
}
|
@@ -704,11 +699,12 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
704
699
|
_LocalSolanaMobileWalletAdapterWallet_performSignTransactions.set(this, (transactions) => __awaiter(this, void 0, void 0, function* () {
|
705
700
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
706
701
|
try {
|
702
|
+
const base64Transactions = transactions.map((tx) => { return fromUint8Array(tx); });
|
707
703
|
return yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
708
704
|
yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
709
|
-
const signedTransactions = yield wallet.signTransactions({
|
710
|
-
|
711
|
-
});
|
705
|
+
const signedTransactions = (yield wallet.signTransactions({
|
706
|
+
payloads: base64Transactions,
|
707
|
+
})).signed_payloads.map(toUint8Array);
|
712
708
|
return signedTransactions;
|
713
709
|
}));
|
714
710
|
}
|
@@ -725,7 +721,8 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
725
721
|
__classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain)
|
726
722
|
]);
|
727
723
|
if (capabilities.supports_sign_and_send_transactions) {
|
728
|
-
const
|
724
|
+
const base64Transaction = fromUint8Array(transaction);
|
725
|
+
const signatures = (yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { payloads: [base64Transaction] }))).signatures.map(toUint8Array);
|
729
726
|
return signatures[0];
|
730
727
|
}
|
731
728
|
else {
|
@@ -740,36 +737,28 @@ class LocalSolanaMobileWalletAdapterWallet {
|
|
740
737
|
_LocalSolanaMobileWalletAdapterWallet_signAndSendTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
741
738
|
const outputs = [];
|
742
739
|
for (const input of inputs) {
|
743
|
-
const
|
744
|
-
|
745
|
-
outputs.push({ signature: base58.decode(signature) });
|
740
|
+
const signature = yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, input.transaction, input.options);
|
741
|
+
outputs.push({ signature });
|
746
742
|
}
|
747
743
|
return outputs;
|
748
744
|
}));
|
749
745
|
_LocalSolanaMobileWalletAdapterWallet_signTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
750
|
-
|
751
|
-
|
752
|
-
|
753
|
-
const serializedTransaction = isVersionedTransaction(signedTransaction)
|
754
|
-
? signedTransaction.serialize()
|
755
|
-
: new Uint8Array(signedTransaction.serialize({
|
756
|
-
requireAllSignatures: false,
|
757
|
-
verifySignatures: false,
|
758
|
-
}));
|
759
|
-
return { signedTransaction: serializedTransaction };
|
746
|
+
return (yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, inputs.map(({ transaction }) => transaction)))
|
747
|
+
.map((signedTransaction) => {
|
748
|
+
return { signedTransaction };
|
760
749
|
});
|
761
750
|
}));
|
762
751
|
_LocalSolanaMobileWalletAdapterWallet_signMessage.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
763
752
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
764
753
|
const addresses = inputs.map(({ account }) => fromUint8Array(account.publicKey));
|
765
|
-
const messages = inputs.map(({ message }) => message);
|
754
|
+
const messages = inputs.map(({ message }) => fromUint8Array(message));
|
766
755
|
try {
|
767
756
|
return yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
768
757
|
yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
769
|
-
const signedMessages = yield wallet.signMessages({
|
758
|
+
const signedMessages = (yield wallet.signMessages({
|
770
759
|
addresses: addresses,
|
771
760
|
payloads: messages,
|
772
|
-
});
|
761
|
+
})).signed_payloads.map(toUint8Array);
|
773
762
|
return signedMessages.map((signedMessage) => {
|
774
763
|
return { signedMessage: signedMessage, signature: signedMessage.slice(-SIGNATURE_LENGTH_IN_BYTES) };
|
775
764
|
});
|
@@ -1100,9 +1089,9 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1100
1089
|
try {
|
1101
1090
|
return yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
1102
1091
|
yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
1103
|
-
const signedTransactions = yield wallet.signTransactions({
|
1104
|
-
transactions,
|
1105
|
-
});
|
1092
|
+
const signedTransactions = (yield wallet.signTransactions({
|
1093
|
+
payloads: transactions.map(fromUint8Array),
|
1094
|
+
})).signed_payloads.map(toUint8Array);
|
1106
1095
|
return signedTransactions;
|
1107
1096
|
}));
|
1108
1097
|
}
|
@@ -1119,7 +1108,7 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1119
1108
|
__classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain)
|
1120
1109
|
]);
|
1121
1110
|
if (capabilities.supports_sign_and_send_transactions) {
|
1122
|
-
const signatures = yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), {
|
1111
|
+
const signatures = (yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { payloads: [fromUint8Array(transaction)] }))).signatures.map(toUint8Array);
|
1123
1112
|
return signatures[0];
|
1124
1113
|
}
|
1125
1114
|
else {
|
@@ -1134,36 +1123,28 @@ class RemoteSolanaMobileWalletAdapterWallet {
|
|
1134
1123
|
_RemoteSolanaMobileWalletAdapterWallet_signAndSendTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1135
1124
|
const outputs = [];
|
1136
1125
|
for (const input of inputs) {
|
1137
|
-
const
|
1138
|
-
|
1139
|
-
outputs.push({ signature: base58.decode(signature) });
|
1126
|
+
const signature = (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, input.transaction, input.options));
|
1127
|
+
outputs.push({ signature });
|
1140
1128
|
}
|
1141
1129
|
return outputs;
|
1142
1130
|
}));
|
1143
1131
|
_RemoteSolanaMobileWalletAdapterWallet_signTransaction.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1144
|
-
|
1145
|
-
|
1146
|
-
|
1147
|
-
const serializedTransaction = isVersionedTransaction(signedTransaction)
|
1148
|
-
? signedTransaction.serialize()
|
1149
|
-
: new Uint8Array(signedTransaction.serialize({
|
1150
|
-
requireAllSignatures: false,
|
1151
|
-
verifySignatures: false,
|
1152
|
-
}));
|
1153
|
-
return { signedTransaction: serializedTransaction };
|
1132
|
+
return (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, inputs.map(({ transaction }) => transaction)))
|
1133
|
+
.map((signedTransaction) => {
|
1134
|
+
return { signedTransaction };
|
1154
1135
|
});
|
1155
1136
|
}));
|
1156
1137
|
_RemoteSolanaMobileWalletAdapterWallet_signMessage.set(this, (...inputs) => __awaiter(this, void 0, void 0, function* () {
|
1157
1138
|
const { authToken, chain } = __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_assertIsAuthorized, "f").call(this);
|
1158
1139
|
const addresses = inputs.map(({ account }) => fromUint8Array(account.publicKey));
|
1159
|
-
const messages = inputs.map(({ message }) => message);
|
1140
|
+
const messages = inputs.map(({ message }) => fromUint8Array(message));
|
1160
1141
|
try {
|
1161
1142
|
return yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_transact, "f").call(this, (wallet) => __awaiter(this, void 0, void 0, function* () {
|
1162
1143
|
yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performReauthorization, "f").call(this, wallet, authToken, chain);
|
1163
|
-
const signedMessages = yield wallet.signMessages({
|
1144
|
+
const signedMessages = (yield wallet.signMessages({
|
1164
1145
|
addresses: addresses,
|
1165
1146
|
payloads: messages,
|
1166
|
-
});
|
1147
|
+
})).signed_payloads.map(toUint8Array);
|
1167
1148
|
return signedMessages.map((signedMessage) => {
|
1168
1149
|
return { signedMessage: signedMessage, signature: signedMessage.slice(-SIGNATURE_LENGTH_IN_BYTES) };
|
1169
1150
|
});
|
@@ -1570,7 +1551,7 @@ function createDefaultAuthorizationCache() {
|
|
1570
1551
|
const parsedAccounts = parsed.accounts.map((account) => {
|
1571
1552
|
return Object.assign(Object.assign({}, account), { publicKey: 'publicKey' in account
|
1572
1553
|
? new Uint8Array(Object.values(account.publicKey)) // Rebuild publicKey for WalletAccount
|
1573
|
-
:
|
1554
|
+
: base58.decode(account.address) });
|
1574
1555
|
});
|
1575
1556
|
return Object.assign(Object.assign({}, parsed), { accounts: parsedAccounts });
|
1576
1557
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../../src/index.ts","../../src/embedded-modal/modal.ts","../../src/embedded-modal/remoteConnectionModal.ts","../../src/icon.ts","../../src/
|
1
|
+
{"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../../src/index.ts","../../src/embedded-modal/modal.ts","../../src/embedded-modal/remoteConnectionModal.ts","../../src/icon.ts","../../src/base64Utils.ts","../../src/wallet.ts","../../src/getIsSupported.ts","../../src/initialize.ts","../../src/embedded-modal/errorModal.ts","../../src/createDefaultWalletNotFoundHandler.ts","../../src/createDefaultAuthorizationCache.ts","../../src/createDefaultChainSelector.ts"],"names":[],"mappings":""}
|
package/lib/types/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts","../../src/embedded-modal/modal.ts","../../src/embedded-modal/remoteConnectionModal.ts","../../src/icon.ts","../../src/
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts","../../src/embedded-modal/modal.ts","../../src/embedded-modal/remoteConnectionModal.ts","../../src/icon.ts","../../src/base64Utils.ts","../../src/wallet.ts","../../src/getIsSupported.ts","../../src/initialize.ts","../../src/embedded-modal/errorModal.ts","../../src/createDefaultWalletNotFoundHandler.ts","../../src/createDefaultAuthorizationCache.ts","../../src/createDefaultChainSelector.ts"],"names":[],"mappings":""}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../src/index.ts","../../src/embedded-modal/modal.ts","../../src/embedded-modal/remoteConnectionModal.ts","../../src/icon.ts","../../src/
|
1
|
+
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../src/index.ts","../../src/embedded-modal/modal.ts","../../src/embedded-modal/remoteConnectionModal.ts","../../src/icon.ts","../../src/base64Utils.ts","../../src/wallet.ts","../../src/getIsSupported.ts","../../src/initialize.ts","../../src/embedded-modal/errorModal.ts","../../src/createDefaultWalletNotFoundHandler.ts","../../src/createDefaultAuthorizationCache.ts","../../src/createDefaultChainSelector.ts","../../src/__forks__/react-native/createDefaultAuthorizationCache.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@solana-mobile/wallet-standard-mobile",
|
3
3
|
"description": "A wallet-standard wallet for mobile wallet apps that conform to the Solana Mobile Wallet Adapter protocol",
|
4
|
-
"version": "0.
|
4
|
+
"version": "0.3.0",
|
5
5
|
"author": "Marco Martinez <marco.martinez@solana.com>",
|
6
6
|
"repository": "https://github.com/solana-mobile/mobile-wallet-adapter",
|
7
7
|
"license": "Apache-2.0",
|
@@ -37,11 +37,8 @@
|
|
37
37
|
"postbuild": "cross-env echo {\\\"type\\\":\\\"commonjs\\\"} | npx json > lib/cjs/package.json && echo {\\\"type\\\":\\\"module\\\"} | npx json > lib/esm/package.json",
|
38
38
|
"prepublishOnly": "agadoo"
|
39
39
|
},
|
40
|
-
"peerDependencies": {
|
41
|
-
"@solana/web3.js": "^1.58.0"
|
42
|
-
},
|
43
40
|
"dependencies": {
|
44
|
-
"@solana-mobile/mobile-wallet-adapter-protocol
|
41
|
+
"@solana-mobile/mobile-wallet-adapter-protocol": "^2.2.1",
|
45
42
|
"@solana/wallet-standard-chains": "^1.1.0",
|
46
43
|
"@solana/wallet-standard-features": "^1.2.0",
|
47
44
|
"@wallet-standard/base": "^1.0.1",
|
@@ -51,7 +48,6 @@
|
|
51
48
|
"qrcode": "^1.5.4"
|
52
49
|
},
|
53
50
|
"devDependencies": {
|
54
|
-
"@solana/web3.js": "^1.95.3",
|
55
51
|
"@types/qrcode": "^1.5.5",
|
56
52
|
"agadoo": "^3.0.0",
|
57
53
|
"cross-env": "^7.0.3",
|