@openocean.finance/wallet 1.10.68 → 1.10.69
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Wallets/BinanceWallet.d.ts +17 -0
- package/lib/Wallets/BinanceWallet.js +170 -0
- package/lib/Wallets/RainbowWallet.js +1 -3
- package/lib/Wallets/index.js +2 -0
- package/lib/index.d.ts +2 -1
- package/lib/index.js +3 -1
- package/lib/injectedTargets.js +2 -0
- package/lib/types.d.ts +3 -1
- package/lib/types.js +2 -0
- package/package.json +1 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { EnumChains, EnumWalletName, EnumWalletType } from "../types";
|
|
2
|
+
import BaseWallet from "./BaseWallet";
|
|
3
|
+
import Web3 from "web3";
|
|
4
|
+
declare class BinanceWallet extends BaseWallet {
|
|
5
|
+
name: EnumWalletName;
|
|
6
|
+
icon: any;
|
|
7
|
+
supportChains: EnumChains[];
|
|
8
|
+
type: EnumWalletType;
|
|
9
|
+
sdk: Web3 | null;
|
|
10
|
+
installUrl: string;
|
|
11
|
+
/**
|
|
12
|
+
* connect Binance wallet and get wallet address
|
|
13
|
+
* @param chainId specific chainId, throw error when not match
|
|
14
|
+
*/
|
|
15
|
+
requestConnect(chainId?: number): Promise<string>;
|
|
16
|
+
}
|
|
17
|
+
export default BinanceWallet;
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
20
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
21
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
22
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
23
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
27
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
28
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
29
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
30
|
+
function step(op) {
|
|
31
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
32
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
33
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
34
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
35
|
+
switch (op[0]) {
|
|
36
|
+
case 0: case 1: t = op; break;
|
|
37
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
38
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
39
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
40
|
+
default:
|
|
41
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
42
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
43
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
44
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
45
|
+
if (t[2]) _.ops.pop();
|
|
46
|
+
_.trys.pop(); continue;
|
|
47
|
+
}
|
|
48
|
+
op = body.call(thisArg, _);
|
|
49
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
50
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
54
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
55
|
+
};
|
|
56
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
57
|
+
/**
|
|
58
|
+
* @name BinanceWallet
|
|
59
|
+
* @author openocean
|
|
60
|
+
* @date 2025/12/22
|
|
61
|
+
* @desc Binance(Binance Web3 Wallet)
|
|
62
|
+
*/
|
|
63
|
+
// @ts-ignore
|
|
64
|
+
var bscwallet_svg_1 = __importDefault(require("../assets/bscwallet.svg"));
|
|
65
|
+
var types_1 = require("../types");
|
|
66
|
+
var BaseWallet_1 = __importDefault(require("./BaseWallet"));
|
|
67
|
+
var web3_1 = __importDefault(require("web3"));
|
|
68
|
+
var injectedTargets_1 = require("../injectedTargets");
|
|
69
|
+
var BinanceWallet = /** @class */ (function (_super) {
|
|
70
|
+
__extends(BinanceWallet, _super);
|
|
71
|
+
function BinanceWallet() {
|
|
72
|
+
var _this = _super !== null && _super.apply(this, arguments) || this;
|
|
73
|
+
_this.name = types_1.EnumWalletName.BinanceWallet;
|
|
74
|
+
_this.icon = bscwallet_svg_1.default;
|
|
75
|
+
_this.supportChains = [
|
|
76
|
+
types_1.EnumChains.ETH,
|
|
77
|
+
types_1.EnumChains.ROPSTEN,
|
|
78
|
+
types_1.EnumChains.RINKEBY,
|
|
79
|
+
types_1.EnumChains.BSC,
|
|
80
|
+
types_1.EnumChains.BSCTEST,
|
|
81
|
+
types_1.EnumChains.Polygon,
|
|
82
|
+
types_1.EnumChains.OKEX,
|
|
83
|
+
types_1.EnumChains.XDai,
|
|
84
|
+
types_1.EnumChains.HECO,
|
|
85
|
+
types_1.EnumChains.Fantom,
|
|
86
|
+
types_1.EnumChains.Sonic,
|
|
87
|
+
types_1.EnumChains.Avalanche,
|
|
88
|
+
types_1.EnumChains.Arbitrum,
|
|
89
|
+
types_1.EnumChains.Optimism,
|
|
90
|
+
types_1.EnumChains.Boba,
|
|
91
|
+
types_1.EnumChains.Moonriver,
|
|
92
|
+
types_1.EnumChains.Aurora,
|
|
93
|
+
types_1.EnumChains.Cronos,
|
|
94
|
+
types_1.EnumChains.Harmony,
|
|
95
|
+
types_1.EnumChains.ONTEVM,
|
|
96
|
+
types_1.EnumChains.Metis,
|
|
97
|
+
types_1.EnumChains.Kava,
|
|
98
|
+
types_1.EnumChains.Celo,
|
|
99
|
+
types_1.EnumChains.Klaytn,
|
|
100
|
+
types_1.EnumChains.ZKSYNC,
|
|
101
|
+
types_1.EnumChains.Linea,
|
|
102
|
+
types_1.EnumChains.LineaTest,
|
|
103
|
+
types_1.EnumChains.PolygonzkEVM,
|
|
104
|
+
types_1.EnumChains.Telos,
|
|
105
|
+
types_1.EnumChains.Scroll,
|
|
106
|
+
types_1.EnumChains.Base,
|
|
107
|
+
types_1.EnumChains.OpBNB,
|
|
108
|
+
types_1.EnumChains.Mantle,
|
|
109
|
+
types_1.EnumChains.Manta,
|
|
110
|
+
types_1.EnumChains.X1,
|
|
111
|
+
types_1.EnumChains.Blast,
|
|
112
|
+
types_1.EnumChains.Mode,
|
|
113
|
+
types_1.EnumChains.PulseChain,
|
|
114
|
+
types_1.EnumChains.MerlinChain,
|
|
115
|
+
types_1.EnumChains.Rootstock,
|
|
116
|
+
types_1.EnumChains.Sei,
|
|
117
|
+
types_1.EnumChains.ArbitrumSepolia,
|
|
118
|
+
types_1.EnumChains.Gravity,
|
|
119
|
+
types_1.EnumChains.ApeChain,
|
|
120
|
+
types_1.EnumChains.Bera,
|
|
121
|
+
types_1.EnumChains.UniChain,
|
|
122
|
+
types_1.EnumChains.Flare,
|
|
123
|
+
types_1.EnumChains.Monad,
|
|
124
|
+
types_1.EnumChains.MonadTest,
|
|
125
|
+
types_1.EnumChains.Swell,
|
|
126
|
+
types_1.EnumChains.HyperEvm,
|
|
127
|
+
types_1.EnumChains.Plume,
|
|
128
|
+
types_1.EnumChains.Tac,
|
|
129
|
+
types_1.EnumChains.Plasma,
|
|
130
|
+
types_1.EnumChains.Injective
|
|
131
|
+
];
|
|
132
|
+
_this.type = types_1.EnumWalletType.Extension;
|
|
133
|
+
_this.sdk = null;
|
|
134
|
+
_this.installUrl = "https://chromewebstore.google.com/detail/binance-wallet/cadiboklkpojfamcoggejbbdjcoiljjk";
|
|
135
|
+
return _this;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* connect Binance wallet and get wallet address
|
|
139
|
+
* @param chainId specific chainId, throw error when not match
|
|
140
|
+
*/
|
|
141
|
+
BinanceWallet.prototype.requestConnect = function (chainId) {
|
|
142
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
143
|
+
var provider, address, currentChainId;
|
|
144
|
+
return __generator(this, function (_a) {
|
|
145
|
+
switch (_a.label) {
|
|
146
|
+
case 0:
|
|
147
|
+
provider = (0, injectedTargets_1.getEthereumProvider)('binance') || (window.ethereum && window.ethereum.isBinance ? window.ethereum : null);
|
|
148
|
+
if (!provider) {
|
|
149
|
+
throw new Error(types_1.EnumErrors.NoBinanceWallet);
|
|
150
|
+
}
|
|
151
|
+
this.sdk = new web3_1.default(provider);
|
|
152
|
+
return [4 /*yield*/, this.sdk.eth.requestAccounts()];
|
|
153
|
+
case 1:
|
|
154
|
+
address = (_a.sent())[0];
|
|
155
|
+
return [4 /*yield*/, this.sdk.eth.getChainId()];
|
|
156
|
+
case 2:
|
|
157
|
+
currentChainId = _a.sent();
|
|
158
|
+
if (chainId && currentChainId !== chainId) {
|
|
159
|
+
throw new Error(types_1.EnumErrors.ChainIdNotMath);
|
|
160
|
+
}
|
|
161
|
+
this.address = address;
|
|
162
|
+
this.chainId = currentChainId;
|
|
163
|
+
return [2 /*return*/, address];
|
|
164
|
+
}
|
|
165
|
+
});
|
|
166
|
+
});
|
|
167
|
+
};
|
|
168
|
+
return BinanceWallet;
|
|
169
|
+
}(BaseWallet_1.default));
|
|
170
|
+
exports.default = BinanceWallet;
|
|
@@ -108,12 +108,10 @@ var RainbowWallet = /** @class */ (function (_super) {
|
|
|
108
108
|
*/
|
|
109
109
|
RainbowWallet.prototype.requestConnect = function (chainId) {
|
|
110
110
|
return __awaiter(this, void 0, void 0, function () {
|
|
111
|
-
var
|
|
111
|
+
var provider, address, currentChainId;
|
|
112
112
|
return __generator(this, function (_a) {
|
|
113
113
|
switch (_a.label) {
|
|
114
114
|
case 0:
|
|
115
|
-
sdf = (0, injectedTargets_1.getEthereumProvider)('rainbow');
|
|
116
|
-
debugger;
|
|
117
115
|
provider = (0, injectedTargets_1.getEthereumProvider)('rainbow') || (window.ethereum && window.ethereum.isRainbow ? window.ethereum : null);
|
|
118
116
|
if (!provider) {
|
|
119
117
|
throw new Error(types_1.EnumErrors.NoRainbowWallet);
|
package/lib/Wallets/index.js
CHANGED
|
@@ -60,6 +60,7 @@ var SlushWallet_1 = __importDefault(require("./SlushWallet"));
|
|
|
60
60
|
var SuietWallet_1 = __importDefault(require("./SuietWallet"));
|
|
61
61
|
var BifrostWallet_1 = __importDefault(require("./BifrostWallet"));
|
|
62
62
|
var RainbowWallet_1 = __importDefault(require("./RainbowWallet"));
|
|
63
|
+
var BinanceWallet_1 = __importDefault(require("./BinanceWallet"));
|
|
63
64
|
var WalletObj = {
|
|
64
65
|
MetaMask: new MetaMask_1.default(),
|
|
65
66
|
// BscWallet: new BscWallet(),
|
|
@@ -116,6 +117,7 @@ var WalletObj = {
|
|
|
116
117
|
SuietWallet: new SuietWallet_1.default(),
|
|
117
118
|
BifrostWallet: new BifrostWallet_1.default(),
|
|
118
119
|
RainbowWallet: new RainbowWallet_1.default(),
|
|
120
|
+
BinanceWallet: new BinanceWallet_1.default(),
|
|
119
121
|
};
|
|
120
122
|
var Wallets = /** @class */ (function () {
|
|
121
123
|
function Wallets() {
|
package/lib/index.d.ts
CHANGED
|
@@ -50,9 +50,10 @@ import SlushWallet from './Wallets/SlushWallet';
|
|
|
50
50
|
import SuietWallet from './Wallets/SuietWallet';
|
|
51
51
|
import BifrostWallet from './Wallets/BifrostWallet';
|
|
52
52
|
import RainbowWallet from './Wallets/RainbowWallet';
|
|
53
|
+
import BinanceWallet from './Wallets/BinanceWallet';
|
|
53
54
|
import { EnumChains, EnumWalletName } from "./types";
|
|
54
55
|
import { getSidName, tryWalletConnect, ReqConnectWalletVo } from "./TryWalletConnect";
|
|
55
56
|
import { chainsObj, Chains, Chain } from "./Chains";
|
|
56
57
|
import { walletsObj, Wallets } from "./Wallets/index";
|
|
57
58
|
import solanaWeb3 from "@solana/web3.js";
|
|
58
|
-
export { solanaWeb3, chainsObj, Chains, Chain, walletsObj, Wallets, ReqConnectWalletVo, tryWalletConnect, getSidName, EnumChains, EnumWalletName, BaseWallet, MetaMask, Cyano, TronLink, Sollet, SolletIo, OntoMobile, WalletConnect, MathWallet, OntoWallet, SafePalWallet, TokenPocket, TrustWallet, Coin98, Phantom, TerraStation, CoinbaseWallet, CloverWallet, XDEFIWallet, SolflareWallet, OKXWallet, KeplrWallet, BraveWallet, CryptoCom, BitgetWallet, GnosisSafeWallet, PetraWallet, MartianWallet, PontemWallet, UnstoppableDomains, MyNearWallet, MeteorWallet, SenderWallet, LedgerWallet, LedgerEmbedWallet, Krystal, Risewallet, Fewcha, ZerionWallet, CompassWallet, OKXBtcWallet, UnisatWallet, SlushWallet, SuietWallet, BifrostWallet, RainbowWallet, };
|
|
59
|
+
export { solanaWeb3, chainsObj, Chains, Chain, walletsObj, Wallets, ReqConnectWalletVo, tryWalletConnect, getSidName, EnumChains, EnumWalletName, BaseWallet, MetaMask, Cyano, TronLink, Sollet, SolletIo, OntoMobile, WalletConnect, MathWallet, OntoWallet, SafePalWallet, TokenPocket, TrustWallet, Coin98, Phantom, TerraStation, CoinbaseWallet, CloverWallet, XDEFIWallet, SolflareWallet, OKXWallet, KeplrWallet, BraveWallet, CryptoCom, BitgetWallet, GnosisSafeWallet, PetraWallet, MartianWallet, PontemWallet, UnstoppableDomains, MyNearWallet, MeteorWallet, SenderWallet, LedgerWallet, LedgerEmbedWallet, Krystal, Risewallet, Fewcha, ZerionWallet, CompassWallet, OKXBtcWallet, UnisatWallet, SlushWallet, SuietWallet, BifrostWallet, RainbowWallet, BinanceWallet, };
|
package/lib/index.js
CHANGED
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.OKXBtcWallet = exports.CompassWallet = exports.ZerionWallet = exports.Fewcha = exports.Risewallet = exports.Krystal = exports.LedgerEmbedWallet = exports.LedgerWallet = exports.SenderWallet = exports.MeteorWallet = exports.MyNearWallet = exports.UnstoppableDomains = exports.PontemWallet = exports.MartianWallet = exports.PetraWallet = exports.GnosisSafeWallet = exports.BitgetWallet = exports.CryptoCom = exports.BraveWallet = exports.KeplrWallet = exports.OKXWallet = exports.SolflareWallet = exports.XDEFIWallet = exports.CloverWallet = exports.CoinbaseWallet = exports.TerraStation = exports.Phantom = exports.Coin98 = exports.TrustWallet = exports.TokenPocket = exports.SafePalWallet = exports.OntoWallet = exports.MathWallet = exports.WalletConnect = exports.OntoMobile = exports.SolletIo = exports.Sollet = exports.TronLink = exports.Cyano = exports.MetaMask = exports.BaseWallet = exports.EnumWalletName = exports.EnumChains = exports.getSidName = exports.tryWalletConnect = exports.Wallets = exports.walletsObj = exports.Chains = exports.chainsObj = exports.solanaWeb3 = void 0;
|
|
7
|
-
exports.RainbowWallet = exports.BifrostWallet = exports.SuietWallet = exports.SlushWallet = exports.UnisatWallet = void 0;
|
|
7
|
+
exports.BinanceWallet = exports.RainbowWallet = exports.BifrostWallet = exports.SuietWallet = exports.SlushWallet = exports.UnisatWallet = void 0;
|
|
8
8
|
/**
|
|
9
9
|
* wallets-manager entry
|
|
10
10
|
* @author openocean
|
|
@@ -109,6 +109,8 @@ var BifrostWallet_1 = __importDefault(require("./Wallets/BifrostWallet"));
|
|
|
109
109
|
exports.BifrostWallet = BifrostWallet_1.default;
|
|
110
110
|
var RainbowWallet_1 = __importDefault(require("./Wallets/RainbowWallet"));
|
|
111
111
|
exports.RainbowWallet = RainbowWallet_1.default;
|
|
112
|
+
var BinanceWallet_1 = __importDefault(require("./Wallets/BinanceWallet"));
|
|
113
|
+
exports.BinanceWallet = BinanceWallet_1.default;
|
|
112
114
|
var types_1 = require("./types");
|
|
113
115
|
Object.defineProperty(exports, "EnumChains", { enumerable: true, get: function () { return types_1.EnumChains; } });
|
|
114
116
|
Object.defineProperty(exports, "EnumWalletName", { enumerable: true, get: function () { return types_1.EnumWalletName; } });
|
package/lib/injectedTargets.js
CHANGED
|
@@ -40,6 +40,8 @@ function setupEip6963Listener() {
|
|
|
40
40
|
id = "bifrost";
|
|
41
41
|
else if (name.includes("Rainbow") || rdns.includes("rainbow"))
|
|
42
42
|
id = "rainbow";
|
|
43
|
+
else if (name.includes("Binance") || rdns.includes("binance"))
|
|
44
|
+
id = "binance";
|
|
43
45
|
addTarget({
|
|
44
46
|
id: id,
|
|
45
47
|
name: (info === null || info === void 0 ? void 0 : info.name) || id,
|
package/lib/types.d.ts
CHANGED
|
@@ -88,6 +88,7 @@ export declare enum EnumWalletName {
|
|
|
88
88
|
NearWallet = "NearWallet",
|
|
89
89
|
MetaMask = "MetaMask",
|
|
90
90
|
BscWallet = "Binance Wallet",
|
|
91
|
+
BinanceWallet = "Binance Wallet",
|
|
91
92
|
Cyano = "Cyano",
|
|
92
93
|
TronLink = "TronLink",
|
|
93
94
|
WalletConnect = "WalletConnect",
|
|
@@ -195,7 +196,8 @@ export declare enum EnumErrors {
|
|
|
195
196
|
NoSlushWallet = "40051",
|
|
196
197
|
NoSuietWallet = "40052",
|
|
197
198
|
NoBifrostWallet = "40053",
|
|
198
|
-
NoRainbowWallet = "40054"
|
|
199
|
+
NoRainbowWallet = "40054",
|
|
200
|
+
NoBinanceWallet = "40055"
|
|
199
201
|
}
|
|
200
202
|
export interface ConnectResult {
|
|
201
203
|
chain: EnumChains;
|
package/lib/types.js
CHANGED
|
@@ -90,6 +90,7 @@ var EnumWalletName;
|
|
|
90
90
|
EnumWalletName["NearWallet"] = "NearWallet";
|
|
91
91
|
EnumWalletName["MetaMask"] = "MetaMask";
|
|
92
92
|
EnumWalletName["BscWallet"] = "Binance Wallet";
|
|
93
|
+
EnumWalletName["BinanceWallet"] = "Binance Wallet";
|
|
93
94
|
EnumWalletName["Cyano"] = "Cyano";
|
|
94
95
|
EnumWalletName["TronLink"] = "TronLink";
|
|
95
96
|
EnumWalletName["WalletConnect"] = "WalletConnect";
|
|
@@ -199,4 +200,5 @@ var EnumErrors;
|
|
|
199
200
|
EnumErrors["NoSuietWallet"] = "40052";
|
|
200
201
|
EnumErrors["NoBifrostWallet"] = "40053";
|
|
201
202
|
EnumErrors["NoRainbowWallet"] = "40054";
|
|
203
|
+
EnumErrors["NoBinanceWallet"] = "40055";
|
|
202
204
|
})(EnumErrors || (exports.EnumErrors = EnumErrors = {}));
|