@drift-labs/sdk-browser
Version:
SDK for Drift Protocol
47 lines (46 loc) • 1.25 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.WalletV2 = exports.Wallet = void 0;
const tweetnacl_1 = __importDefault(require("tweetnacl"));
class Wallet {
constructor(payer) {
this.payer = payer;
}
async signTransaction(tx) {
tx.partialSign(this.payer);
return tx;
}
async signVersionedTransaction(tx) {
tx.sign([this.payer]);
return tx;
}
async signAllTransactions(txs) {
return txs.map((t) => {
t.partialSign(this.payer);
return t;
});
}
async signAllVersionedTransactions(txs) {
return txs.map((t) => {
t.sign([this.payer]);
return t;
});
}
get publicKey() {
return this.payer.publicKey;
}
}
exports.Wallet = Wallet;
class WalletV2 extends Wallet {
constructor(payer) {
super(payer);
this.payer = payer;
}
async signMessage(message) {
return Buffer.from(tweetnacl_1.default.sign.detached(message, this.payer.secretKey));
}
}
exports.WalletV2 = WalletV2;
;