@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.
@@ -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 sdf, provider, address, currentChainId;
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);
@@ -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; } });
@@ -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 = {}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openocean.finance/wallet",
3
- "version": "1.10.68",
3
+ "version": "1.10.69",
4
4
  "description": "A multi-chain wallets manager",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {