FRE-600: Fix code review blockers

- Consolidated duplicate UndoManagers to single instance
- Fixed connection promise to only resolve on 'connected' status
- Fixed WebSocketProvider import (WebsocketProvider)
- Added proper doc.destroy() cleanup
- Renamed isPresenceInitialized property to avoid conflict

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
2026-04-25 00:08:01 -04:00
parent 65b552bb08
commit 7c684a42cc
48450 changed files with 5679671 additions and 383 deletions

View File

@@ -0,0 +1,134 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.BaseWalletAdapter = exports.WalletReadyState = exports.EventEmitter = void 0;
exports.scopePollingDetectionStrategy = scopePollingDetectionStrategy;
exports.isIosAndRedirectable = isIosAndRedirectable;
const eventemitter3_1 = __importDefault(require("eventemitter3"));
exports.EventEmitter = eventemitter3_1.default;
const errors_js_1 = require("./errors.js");
/**
* A wallet's readiness describes a series of states that the wallet can be in,
* depending on what kind of wallet it is. An installable wallet (eg. a browser
* extension like Phantom) might be `Installed` if we've found the Phantom API
* in the global scope, or `NotDetected` otherwise. A loadable, zero-install
* runtime (eg. Torus Wallet) might simply signal that it's `Loadable`. Use this
* metadata to personalize the wallet list for each user (eg. to show their
* installed wallets first).
*/
var WalletReadyState;
(function (WalletReadyState) {
/**
* User-installable wallets can typically be detected by scanning for an API
* that they've injected into the global context. If such an API is present,
* we consider the wallet to have been installed.
*/
WalletReadyState["Installed"] = "Installed";
WalletReadyState["NotDetected"] = "NotDetected";
/**
* Loadable wallets are always available to you. Since you can load them at
* any time, it's meaningless to say that they have been detected.
*/
WalletReadyState["Loadable"] = "Loadable";
/**
* If a wallet is not supported on a given platform (eg. server-rendering, or
* mobile) then it will stay in the `Unsupported` state.
*/
WalletReadyState["Unsupported"] = "Unsupported";
})(WalletReadyState || (exports.WalletReadyState = WalletReadyState = {}));
class BaseWalletAdapter extends eventemitter3_1.default {
get connected() {
return !!this.publicKey;
}
autoConnect() {
return __awaiter(this, void 0, void 0, function* () {
yield this.connect();
});
}
prepareTransaction(transaction_1, connection_1) {
return __awaiter(this, arguments, void 0, function* (transaction, connection, options = {}) {
const publicKey = this.publicKey;
if (!publicKey)
throw new errors_js_1.WalletNotConnectedError();
transaction.feePayer = transaction.feePayer || publicKey;
transaction.recentBlockhash =
transaction.recentBlockhash ||
(yield connection.getLatestBlockhash({
commitment: options.preflightCommitment,
minContextSlot: options.minContextSlot,
})).blockhash;
return transaction;
});
}
}
exports.BaseWalletAdapter = BaseWalletAdapter;
function scopePollingDetectionStrategy(detect) {
// Early return when server-side rendering
if (typeof window === 'undefined' || typeof document === 'undefined')
return;
const disposers = [];
function detectAndDispose() {
const detected = detect();
if (detected) {
for (const dispose of disposers) {
dispose();
}
}
}
// Strategy #1: Try detecting every second.
const interval =
// TODO: #334 Replace with idle callback strategy.
setInterval(detectAndDispose, 1000);
disposers.push(() => clearInterval(interval));
// Strategy #2: Detect as soon as the DOM becomes 'ready'/'interactive'.
if (
// Implies that `DOMContentLoaded` has not yet fired.
document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', detectAndDispose, { once: true });
disposers.push(() => document.removeEventListener('DOMContentLoaded', detectAndDispose));
}
// Strategy #3: Detect after the `window` has fully loaded.
if (
// If the `complete` state has been reached, we're too late.
document.readyState !== 'complete') {
window.addEventListener('load', detectAndDispose, { once: true });
disposers.push(() => window.removeEventListener('load', detectAndDispose));
}
// Strategy #4: Detect synchronously, now.
detectAndDispose();
}
/**
* Users on iOS can be redirected into a wallet's in-app browser automatically,
* if that wallet has a universal link configured to do so
* But should not be redirected from within a webview, eg. if they're already
* inside a wallet's browser
* This function can be used to identify users who are on iOS and can be redirected
*
* @returns true if the user can be redirected
*/
function isIosAndRedirectable() {
// SSR: return false
if (!navigator)
return false;
const userAgent = navigator.userAgent.toLowerCase();
// if on iOS the user agent will contain either iPhone or iPad
// caveat: if requesting desktop site then this won't work
const isIos = userAgent.includes('iphone') || userAgent.includes('ipad');
// if in a webview then it will not include Safari
// note that other iOS browsers also include Safari
// so we will redirect only if Safari is also included
const isSafari = userAgent.includes('safari');
return isIos && isSafari;
}
//# sourceMappingURL=adapter.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,131 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.WalletWindowClosedError = exports.WalletWindowBlockedError = exports.WalletTimeoutError = exports.WalletSignInError = exports.WalletSignMessageError = exports.WalletSignTransactionError = exports.WalletSendTransactionError = exports.WalletNotConnectedError = exports.WalletKeypairError = exports.WalletPublicKeyError = exports.WalletAccountError = exports.WalletDisconnectionError = exports.WalletDisconnectedError = exports.WalletConnectionError = exports.WalletConfigError = exports.WalletLoadError = exports.WalletNotReadyError = exports.WalletError = void 0;
class WalletError extends Error {
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
constructor(message, error) {
super(message);
this.error = error;
}
}
exports.WalletError = WalletError;
class WalletNotReadyError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletNotReadyError';
}
}
exports.WalletNotReadyError = WalletNotReadyError;
class WalletLoadError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletLoadError';
}
}
exports.WalletLoadError = WalletLoadError;
class WalletConfigError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletConfigError';
}
}
exports.WalletConfigError = WalletConfigError;
class WalletConnectionError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletConnectionError';
}
}
exports.WalletConnectionError = WalletConnectionError;
class WalletDisconnectedError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletDisconnectedError';
}
}
exports.WalletDisconnectedError = WalletDisconnectedError;
class WalletDisconnectionError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletDisconnectionError';
}
}
exports.WalletDisconnectionError = WalletDisconnectionError;
class WalletAccountError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletAccountError';
}
}
exports.WalletAccountError = WalletAccountError;
class WalletPublicKeyError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletPublicKeyError';
}
}
exports.WalletPublicKeyError = WalletPublicKeyError;
class WalletKeypairError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletKeypairError';
}
}
exports.WalletKeypairError = WalletKeypairError;
class WalletNotConnectedError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletNotConnectedError';
}
}
exports.WalletNotConnectedError = WalletNotConnectedError;
class WalletSendTransactionError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletSendTransactionError';
}
}
exports.WalletSendTransactionError = WalletSendTransactionError;
class WalletSignTransactionError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletSignTransactionError';
}
}
exports.WalletSignTransactionError = WalletSignTransactionError;
class WalletSignMessageError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletSignMessageError';
}
}
exports.WalletSignMessageError = WalletSignMessageError;
class WalletSignInError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletSignInError';
}
}
exports.WalletSignInError = WalletSignInError;
class WalletTimeoutError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletTimeoutError';
}
}
exports.WalletTimeoutError = WalletTimeoutError;
class WalletWindowBlockedError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletWindowBlockedError';
}
}
exports.WalletWindowBlockedError = WalletWindowBlockedError;
class WalletWindowClosedError extends WalletError {
constructor() {
super(...arguments);
this.name = 'WalletWindowClosedError';
}
}
exports.WalletWindowClosedError = WalletWindowClosedError;
//# sourceMappingURL=errors.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/errors.ts"],"names":[],"mappings":";;;AAAA,MAAa,WAAY,SAAQ,KAAK;IAGlC,6EAA6E;IAC7E,YAAY,OAAgB,EAAE,KAAW;QACrC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;CACJ;AARD,kCAQC;AAED,MAAa,mBAAoB,SAAQ,WAAW;IAApD;;QACI,SAAI,GAAG,qBAAqB,CAAC;IACjC,CAAC;CAAA;AAFD,kDAEC;AAED,MAAa,eAAgB,SAAQ,WAAW;IAAhD;;QACI,SAAI,GAAG,iBAAiB,CAAC;IAC7B,CAAC;CAAA;AAFD,0CAEC;AAED,MAAa,iBAAkB,SAAQ,WAAW;IAAlD;;QACI,SAAI,GAAG,mBAAmB,CAAC;IAC/B,CAAC;CAAA;AAFD,8CAEC;AAED,MAAa,qBAAsB,SAAQ,WAAW;IAAtD;;QACI,SAAI,GAAG,uBAAuB,CAAC;IACnC,CAAC;CAAA;AAFD,sDAEC;AAED,MAAa,uBAAwB,SAAQ,WAAW;IAAxD;;QACI,SAAI,GAAG,yBAAyB,CAAC;IACrC,CAAC;CAAA;AAFD,0DAEC;AAED,MAAa,wBAAyB,SAAQ,WAAW;IAAzD;;QACI,SAAI,GAAG,0BAA0B,CAAC;IACtC,CAAC;CAAA;AAFD,4DAEC;AAED,MAAa,kBAAmB,SAAQ,WAAW;IAAnD;;QACI,SAAI,GAAG,oBAAoB,CAAC;IAChC,CAAC;CAAA;AAFD,gDAEC;AAED,MAAa,oBAAqB,SAAQ,WAAW;IAArD;;QACI,SAAI,GAAG,sBAAsB,CAAC;IAClC,CAAC;CAAA;AAFD,oDAEC;AAED,MAAa,kBAAmB,SAAQ,WAAW;IAAnD;;QACI,SAAI,GAAG,oBAAoB,CAAC;IAChC,CAAC;CAAA;AAFD,gDAEC;AAED,MAAa,uBAAwB,SAAQ,WAAW;IAAxD;;QACI,SAAI,GAAG,yBAAyB,CAAC;IACrC,CAAC;CAAA;AAFD,0DAEC;AAED,MAAa,0BAA2B,SAAQ,WAAW;IAA3D;;QACI,SAAI,GAAG,4BAA4B,CAAC;IACxC,CAAC;CAAA;AAFD,gEAEC;AAED,MAAa,0BAA2B,SAAQ,WAAW;IAA3D;;QACI,SAAI,GAAG,4BAA4B,CAAC;IACxC,CAAC;CAAA;AAFD,gEAEC;AAED,MAAa,sBAAuB,SAAQ,WAAW;IAAvD;;QACI,SAAI,GAAG,wBAAwB,CAAC;IACpC,CAAC;CAAA;AAFD,wDAEC;AAED,MAAa,iBAAkB,SAAQ,WAAW;IAAlD;;QACI,SAAI,GAAG,mBAAmB,CAAC;IAC/B,CAAC;CAAA;AAFD,8CAEC;AAED,MAAa,kBAAmB,SAAQ,WAAW;IAAnD;;QACI,SAAI,GAAG,oBAAoB,CAAC;IAChC,CAAC;CAAA;AAFD,gDAEC;AAED,MAAa,wBAAyB,SAAQ,WAAW;IAAzD;;QACI,SAAI,GAAG,0BAA0B,CAAC;IACtC,CAAC;CAAA;AAFD,4DAEC;AAED,MAAa,uBAAwB,SAAQ,WAAW;IAAxD;;QACI,SAAI,GAAG,yBAAyB,CAAC;IACrC,CAAC;CAAA;AAFD,0DAEC"}

View File

@@ -0,0 +1,23 @@
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
__exportStar(require("./adapter.js"), exports);
__exportStar(require("./errors.js"), exports);
__exportStar(require("./signer.js"), exports);
__exportStar(require("./standard.js"), exports);
__exportStar(require("./transaction.js"), exports);
__exportStar(require("./types.js"), exports);
//# sourceMappingURL=index.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,8CAA4B;AAC5B,8CAA4B;AAC5B,gDAA8B;AAC9B,mDAAiC;AACjC,6CAA2B"}

View File

@@ -0,0 +1 @@
{ "type": "commonjs" }

View File

@@ -0,0 +1,103 @@
"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __rest = (this && this.__rest) || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function")
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
t[p[i]] = s[p[i]];
}
return t;
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.BaseSignInMessageSignerWalletAdapter = exports.BaseMessageSignerWalletAdapter = exports.BaseSignerWalletAdapter = void 0;
const adapter_js_1 = require("./adapter.js");
const errors_js_1 = require("./errors.js");
const transaction_js_1 = require("./transaction.js");
class BaseSignerWalletAdapter extends adapter_js_1.BaseWalletAdapter {
sendTransaction(transaction_1, connection_1) {
return __awaiter(this, arguments, void 0, function* (transaction, connection, options = {}) {
let emit = true;
try {
if ((0, transaction_js_1.isVersionedTransaction)(transaction)) {
if (!this.supportedTransactionVersions)
throw new errors_js_1.WalletSendTransactionError(`Sending versioned transactions isn't supported by this wallet`);
if (!this.supportedTransactionVersions.has(transaction.version))
throw new errors_js_1.WalletSendTransactionError(`Sending transaction version ${transaction.version} isn't supported by this wallet`);
try {
transaction = yield this.signTransaction(transaction);
const rawTransaction = transaction.serialize();
return yield connection.sendRawTransaction(rawTransaction, options);
}
catch (error) {
// If the error was thrown by `signTransaction`, rethrow it and don't emit a duplicate event
if (error instanceof errors_js_1.WalletSignTransactionError) {
emit = false;
throw error;
}
throw new errors_js_1.WalletSendTransactionError(error === null || error === void 0 ? void 0 : error.message, error);
}
}
else {
try {
const { signers } = options, sendOptions = __rest(options, ["signers"]);
transaction = yield this.prepareTransaction(transaction, connection, sendOptions);
(signers === null || signers === void 0 ? void 0 : signers.length) && transaction.partialSign(...signers);
transaction = yield this.signTransaction(transaction);
const rawTransaction = transaction.serialize();
return yield connection.sendRawTransaction(rawTransaction, sendOptions);
}
catch (error) {
// If the error was thrown by `signTransaction`, rethrow it and don't emit a duplicate event
if (error instanceof errors_js_1.WalletSignTransactionError) {
emit = false;
throw error;
}
throw new errors_js_1.WalletSendTransactionError(error === null || error === void 0 ? void 0 : error.message, error);
}
}
}
catch (error) {
if (emit) {
this.emit('error', error);
}
throw error;
}
});
}
signAllTransactions(transactions) {
return __awaiter(this, void 0, void 0, function* () {
for (const transaction of transactions) {
if ((0, transaction_js_1.isVersionedTransaction)(transaction)) {
if (!this.supportedTransactionVersions)
throw new errors_js_1.WalletSignTransactionError(`Signing versioned transactions isn't supported by this wallet`);
if (!this.supportedTransactionVersions.has(transaction.version))
throw new errors_js_1.WalletSignTransactionError(`Signing transaction version ${transaction.version} isn't supported by this wallet`);
}
}
const signedTransactions = [];
for (const transaction of transactions) {
signedTransactions.push(yield this.signTransaction(transaction));
}
return signedTransactions;
});
}
}
exports.BaseSignerWalletAdapter = BaseSignerWalletAdapter;
class BaseMessageSignerWalletAdapter extends BaseSignerWalletAdapter {
}
exports.BaseMessageSignerWalletAdapter = BaseMessageSignerWalletAdapter;
class BaseSignInMessageSignerWalletAdapter extends BaseMessageSignerWalletAdapter {
}
exports.BaseSignInMessageSignerWalletAdapter = BaseSignInMessageSignerWalletAdapter;
//# sourceMappingURL=signer.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"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"}

View File

@@ -0,0 +1,11 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isWalletAdapterCompatibleStandardWallet = isWalletAdapterCompatibleStandardWallet;
const wallet_standard_features_1 = require("@solana/wallet-standard-features");
const features_1 = require("@wallet-standard/features");
function isWalletAdapterCompatibleStandardWallet(wallet) {
return (features_1.StandardConnect in wallet.features &&
features_1.StandardEvents in wallet.features &&
(wallet_standard_features_1.SolanaSignAndSendTransaction in wallet.features || wallet_standard_features_1.SolanaSignTransaction in wallet.features));
}
//# sourceMappingURL=standard.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"standard.js","sourceRoot":"","sources":["../../src/standard.ts"],"names":[],"mappings":";;AAiCA,0FAQC;AAzCD,+EAO0C;AAE1C,wDAMmC;AAkBnC,SAAgB,uCAAuC,CACnD,MAAsB;IAEtB,OAAO,CACH,0BAAe,IAAI,MAAM,CAAC,QAAQ;QAClC,yBAAc,IAAI,MAAM,CAAC,QAAQ;QACjC,CAAC,uDAA4B,IAAI,MAAM,CAAC,QAAQ,IAAI,gDAAqB,IAAI,MAAM,CAAC,QAAQ,CAAC,CAChG,CAAC;AACN,CAAC"}

View File

@@ -0,0 +1,7 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isVersionedTransaction = isVersionedTransaction;
function isVersionedTransaction(transaction) {
return 'version' in transaction;
}
//# sourceMappingURL=transaction.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/transaction.ts"],"names":[],"mappings":";;AAQA,wDAIC;AAJD,SAAgB,sBAAsB,CAClC,WAA+C;IAE/C,OAAO,SAAS,IAAI,WAAW,CAAC;AACpC,CAAC"}

View File

@@ -0,0 +1 @@
{"root":["../../src/adapter.ts","../../src/errors.ts","../../src/index.ts","../../src/signer.ts","../../src/standard.ts","../../src/transaction.ts","../../src/types.ts"],"version":"5.8.3"}

View File

@@ -0,0 +1,10 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.WalletAdapterNetwork = void 0;
var WalletAdapterNetwork;
(function (WalletAdapterNetwork) {
WalletAdapterNetwork["Mainnet"] = "mainnet-beta";
WalletAdapterNetwork["Testnet"] = "testnet";
WalletAdapterNetwork["Devnet"] = "devnet";
})(WalletAdapterNetwork || (exports.WalletAdapterNetwork = WalletAdapterNetwork = {}));
//# sourceMappingURL=types.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAWA,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC5B,gDAAwB,CAAA;IACxB,2CAAmB,CAAA;IACnB,yCAAiB,CAAA;AACrB,CAAC,EAJW,oBAAoB,oCAApB,oBAAoB,QAI/B"}