@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.
@@ -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 mobileWalletAdapterProtocolWeb3js.transact(callback, config);
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
- transactions,
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 signatures = yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { transactions: [transaction] }));
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 transaction = web3_js.VersionedTransaction.deserialize(input.transaction);
753
- const signature = (yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, transaction, input.options));
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
- const transactions = inputs.map(({ transaction }) => web3_js.VersionedTransaction.deserialize(transaction));
760
- const signedTransactions = yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, transactions);
761
- return signedTransactions.map((signedTransaction) => {
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 mobileWalletAdapterProtocolWeb3js.startRemoteScenario(remoteConfig);
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), { transactions: [transaction] }));
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 transaction = web3_js.VersionedTransaction.deserialize(input.transaction);
1147
- const signature = (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, transaction, input.options));
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
- const transactions = inputs.map(({ transaction }) => web3_js.VersionedTransaction.deserialize(transaction));
1154
- const signedTransactions = yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, transactions);
1155
- return signedTransactions.map((signedTransaction) => {
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
- : new web3_js.PublicKey(account.address).toBytes() });
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 mobileWalletAdapterProtocolWeb3js.transact(callback, config);
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
- transactions,
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 signatures = yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { transactions: [transaction] }));
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 transaction = web3_js.VersionedTransaction.deserialize(input.transaction);
753
- const signature = (yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, transaction, input.options));
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
- const transactions = inputs.map(({ transaction }) => web3_js.VersionedTransaction.deserialize(transaction));
760
- const signedTransactions = yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, transactions);
761
- return signedTransactions.map((signedTransaction) => {
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 mobileWalletAdapterProtocolWeb3js.startRemoteScenario(remoteConfig);
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), { transactions: [transaction] }));
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 transaction = web3_js.VersionedTransaction.deserialize(input.transaction);
1147
- const signature = (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, transaction, input.options));
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
- const transactions = inputs.map(({ transaction }) => web3_js.VersionedTransaction.deserialize(transaction));
1154
- const signedTransactions = yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, transactions);
1155
- return signedTransactions.map((signedTransaction) => {
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
- : new web3_js.PublicKey(account.address).toBytes() });
1563
+ : base58__default["default"].decode(account.address) });
1583
1564
  });
1584
1565
  return Object.assign(Object.assign({}, parsed), { accounts: parsedAccounts });
1585
1566
  }
@@ -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 mobileWalletAdapterProtocolWeb3js.transact(callback, config);
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
- transactions,
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 signatures = yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { transactions: [transaction] }));
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 transaction = web3_js.VersionedTransaction.deserialize(input.transaction);
746
- const signature = (yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, transaction, input.options));
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
- const transactions = inputs.map(({ transaction }) => web3_js.VersionedTransaction.deserialize(transaction));
753
- const signedTransactions = yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, transactions);
754
- return signedTransactions.map((signedTransaction) => {
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 mobileWalletAdapterProtocolWeb3js.startRemoteScenario(remoteConfig);
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), { transactions: [transaction] }));
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 transaction = web3_js.VersionedTransaction.deserialize(input.transaction);
1140
- const signature = (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, transaction, input.options));
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
- const transactions = inputs.map(({ transaction }) => web3_js.VersionedTransaction.deserialize(transaction));
1147
- const signedTransactions = yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, transactions);
1148
- return signedTransactions.map((signedTransaction) => {
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
- : new web3_js.PublicKey(account.address).toBytes() });
1873
+ : base58__default["default"].decode(account.address) });
1893
1874
  });
1894
1875
  return Object.assign(Object.assign({}, parsed), { accounts: parsedAccounts });
1895
1876
  }
@@ -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
- transactions,
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 signatures = yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { transactions: [transaction] }));
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 transaction = VersionedTransaction.deserialize(input.transaction);
744
- const signature = (yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, transaction, input.options));
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
- const transactions = inputs.map(({ transaction }) => VersionedTransaction.deserialize(transaction));
751
- const signedTransactions = yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, transactions);
752
- return signedTransactions.map((signedTransaction) => {
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), { transactions: [transaction] }));
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 transaction = VersionedTransaction.deserialize(input.transaction);
1138
- const signature = (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, transaction, input.options));
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
- const transactions = inputs.map(({ transaction }) => VersionedTransaction.deserialize(transaction));
1145
- const signedTransactions = yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, transactions);
1146
- return signedTransactions.map((signedTransaction) => {
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
- : new PublicKey(account.address).toBytes() });
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
- transactions,
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 signatures = yield wallet.signAndSendTransactions(Object.assign(Object.assign({}, options), { transactions: [transaction] }));
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 transaction = VersionedTransaction.deserialize(input.transaction);
744
- const signature = (yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, transaction, input.options));
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
- const transactions = inputs.map(({ transaction }) => VersionedTransaction.deserialize(transaction));
751
- const signedTransactions = yield __classPrivateFieldGet$1(this, _LocalSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, transactions);
752
- return signedTransactions.map((signedTransaction) => {
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), { transactions: [transaction] }));
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 transaction = VersionedTransaction.deserialize(input.transaction);
1138
- const signature = (yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignAndSendTransaction, "f").call(this, transaction, input.options));
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
- const transactions = inputs.map(({ transaction }) => VersionedTransaction.deserialize(transaction));
1145
- const signedTransactions = yield __classPrivateFieldGet$1(this, _RemoteSolanaMobileWalletAdapterWallet_performSignTransactions, "f").call(this, transactions);
1146
- return signedTransactions.map((signedTransaction) => {
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
- : new PublicKey(account.address).toBytes() });
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/solana.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
+ {"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":""}
@@ -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/solana.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
+ {"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/solana.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":""}
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.1.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-web3js": "^2.1.5",
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",