@openocean.finance/wallet 0.4.40 → 0.4.42

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.
@@ -89,6 +89,7 @@ var types_1 = require("../types");
89
89
  var BaseWallet_1 = __importDefault(require("./BaseWallet"));
90
90
  var web3_1 = __importDefault(require("web3"));
91
91
  var fcl = __importStar(require("@onflow/fcl"));
92
+ var helper_1 = require("../helper");
92
93
  var BloctoWallet = /** @class */ (function (_super) {
93
94
  __extends(BloctoWallet, _super);
94
95
  function BloctoWallet() {
@@ -183,20 +184,32 @@ var BloctoWallet = /** @class */ (function (_super) {
183
184
  */
184
185
  BloctoWallet.prototype.requestSolanaConnect = function (chainId) {
185
186
  var _this = this;
186
- return new Promise(function (res) {
187
- if (!((window.solana && window.solana.isBlocto) || (window.parent && window.parent.solana))) {
188
- throw new Error(types_1.EnumErrors.NoPhantom);
189
- }
190
- var wallet = window.parent && window.parent.solana ? window.parent.solana : window.solana;
191
- _this.sdk = wallet;
192
- wallet.on('connect', function (publicKey) {
193
- var address = wallet.publicKey.toString();
194
- _this.address = address;
195
- _this.chainId = ''; // todo sollet chainId
196
- res(address);
187
+ return new Promise(function (res) { return __awaiter(_this, void 0, void 0, function () {
188
+ var result, wallet;
189
+ var _this = this;
190
+ return __generator(this, function (_a) {
191
+ switch (_a.label) {
192
+ case 0: return [4 /*yield*/, (0, helper_1.autoWalletCheck)(function () {
193
+ return (window.solana && window.solana.isBlocto) || (window.parent && window.parent.solana);
194
+ }, 3000)];
195
+ case 1:
196
+ result = _a.sent();
197
+ if (!result) {
198
+ throw new Error(types_1.EnumErrors.NoBlocto);
199
+ }
200
+ wallet = window.parent && window.parent.solana ? window.parent.solana : window.solana;
201
+ this.sdk = wallet;
202
+ wallet.on('connect', function (publicKey) {
203
+ var address = wallet.publicKey.toString();
204
+ _this.address = address;
205
+ _this.chainId = ''; // todo sollet chainId
206
+ res(address);
207
+ });
208
+ wallet.connect();
209
+ return [2 /*return*/];
210
+ }
197
211
  });
198
- wallet.connect();
199
- });
212
+ }); });
200
213
  };
201
214
  /**
202
215
  * connect metamask and get wallet address
@@ -65,6 +65,7 @@ var clover_svg_1 = __importDefault(require("../assets/clover.svg"));
65
65
  var types_1 = require("../types");
66
66
  var BaseWallet_1 = __importDefault(require("./BaseWallet"));
67
67
  var web3_1 = __importDefault(require("web3"));
68
+ var helper_1 = require("../helper");
68
69
  var CloverWallet = /** @class */ (function (_super) {
69
70
  __extends(CloverWallet, _super);
70
71
  function CloverWallet() {
@@ -113,17 +114,21 @@ var CloverWallet = /** @class */ (function (_super) {
113
114
  */
114
115
  CloverWallet.prototype.requestSolanaConnect = function () {
115
116
  return __awaiter(this, void 0, void 0, function () {
116
- var wallet, address;
117
+ var result, wallet, address;
117
118
  return __generator(this, function (_a) {
118
119
  switch (_a.label) {
119
- case 0:
120
- if (!window.clover_solana) {
120
+ case 0: return [4 /*yield*/, (0, helper_1.autoWalletCheck)(function () {
121
+ return window.clover_solana;
122
+ }, 3000)];
123
+ case 1:
124
+ result = _a.sent();
125
+ if (!result) {
121
126
  throw new Error(types_1.EnumErrors.NoClover);
122
127
  }
123
128
  wallet = window.clover_solana;
124
129
  this.sdk = wallet;
125
130
  return [4 /*yield*/, wallet.getAccount()];
126
- case 1:
131
+ case 2:
127
132
  address = _a.sent();
128
133
  this.address = address;
129
134
  this.chainId = '';
@@ -65,6 +65,7 @@ var coin98_svg_1 = __importDefault(require("../assets/coin98.svg"));
65
65
  var types_1 = require("../types");
66
66
  var BaseWallet_1 = __importDefault(require("./BaseWallet"));
67
67
  var web3_1 = __importDefault(require("web3"));
68
+ var helper_1 = require("../helper");
68
69
  var Coin98 = /** @class */ (function (_super) {
69
70
  __extends(Coin98, _super);
70
71
  function Coin98() {
@@ -115,17 +116,20 @@ var Coin98 = /** @class */ (function (_super) {
115
116
  */
116
117
  Coin98.prototype.requestSolanaConnect = function () {
117
118
  return __awaiter(this, void 0, void 0, function () {
118
- var accounts, address;
119
+ var result, accounts, address;
119
120
  return __generator(this, function (_a) {
120
121
  switch (_a.label) {
121
- case 0:
122
- if (!(window.ethereum.isCoin98 || window.coin98 && window.coin98.sol)) {
123
- // go2 download page
122
+ case 0: return [4 /*yield*/, (0, helper_1.autoWalletCheck)(function () {
123
+ return window.ethereum.isCoin98 || (window.coin98 && window.coin98.sol);
124
+ }, 3000)];
125
+ case 1:
126
+ result = _a.sent();
127
+ if (!result) {
124
128
  throw new Error(types_1.EnumErrors.NoCoin98);
125
129
  }
126
130
  this.sdk = window.coin98.sol;
127
131
  return [4 /*yield*/, this.sdk.request({ method: 'sol_accounts' })];
128
- case 1:
132
+ case 2:
129
133
  accounts = _a.sent();
130
134
  address = accounts && accounts[0] || "";
131
135
  this.address = address;
@@ -14,6 +14,42 @@ var __extends = (this && this.__extends) || (function () {
14
14
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
15
  };
16
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;
28
+ return g = { next: verb(0), "throw": verb(1), "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 (_) 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
+ };
17
53
  var __importDefault = (this && this.__importDefault) || function (mod) {
18
54
  return (mod && mod.__esModule) ? mod : { "default": mod };
19
55
  };
@@ -28,6 +64,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
28
64
  var phantom_svg_1 = __importDefault(require("../assets/phantom.svg"));
29
65
  var types_1 = require("../types");
30
66
  var BaseWallet_1 = __importDefault(require("./BaseWallet"));
67
+ var helper_1 = require("../helper");
31
68
  var Phantom = /** @class */ (function (_super) {
32
69
  __extends(Phantom, _super);
33
70
  function Phantom() {
@@ -46,20 +83,32 @@ var Phantom = /** @class */ (function (_super) {
46
83
  */
47
84
  Phantom.prototype.requestSolanaConnect = function (chainId) {
48
85
  var _this = this;
49
- return new Promise(function (res) {
50
- if (!((window.solana && window.solana.isPhantom) || (window.parent && window.parent.solana))) {
51
- throw new Error(types_1.EnumErrors.NoPhantom);
52
- }
53
- var wallet = window.parent && window.parent.solana ? window.parent.solana : window.solana;
54
- _this.sdk = wallet;
55
- wallet.on('connect', function (publicKey) {
56
- var address = wallet.publicKey.toString();
57
- _this.address = address;
58
- _this.chainId = ''; // todo sollet chainId
59
- res(address);
86
+ return new Promise(function (res) { return __awaiter(_this, void 0, void 0, function () {
87
+ var result, wallet;
88
+ var _this = this;
89
+ return __generator(this, function (_a) {
90
+ switch (_a.label) {
91
+ case 0: return [4 /*yield*/, (0, helper_1.autoWalletCheck)(function () {
92
+ return (window.solana && window.solana.isPhantom) || (window.parent && window.parent.solana);
93
+ }, 3000, 30)];
94
+ case 1:
95
+ result = _a.sent();
96
+ if (!result) {
97
+ throw new Error(types_1.EnumErrors.NoPhantom);
98
+ }
99
+ wallet = window.parent && window.parent.solana ? window.parent.solana : window.solana;
100
+ this.sdk = wallet;
101
+ wallet.on('connect', function (publicKey) {
102
+ var address = wallet.publicKey.toString();
103
+ _this.address = address;
104
+ _this.chainId = ''; // todo sollet chainId
105
+ res(address);
106
+ });
107
+ wallet.connect();
108
+ return [2 /*return*/];
109
+ }
60
110
  });
61
- wallet.connect();
62
- });
111
+ }); });
63
112
  };
64
113
  return Phantom;
65
114
  }(BaseWallet_1.default));
@@ -62,6 +62,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
62
62
  */
63
63
  // @ts-ignore
64
64
  var slope_svg_1 = __importDefault(require("../assets/slope.svg"));
65
+ var helper_1 = require("../helper");
65
66
  var types_1 = require("../types");
66
67
  var BaseWallet_1 = __importDefault(require("./BaseWallet"));
67
68
  var SlopeWallet = /** @class */ (function (_super) {
@@ -82,18 +83,22 @@ var SlopeWallet = /** @class */ (function (_super) {
82
83
  */
83
84
  SlopeWallet.prototype.requestSolanaConnect = function (chainId) {
84
85
  return __awaiter(this, void 0, void 0, function () {
85
- var wallet, _a, msg, data, address;
86
+ var result, wallet, _a, msg, data, address;
86
87
  return __generator(this, function (_b) {
87
88
  switch (_b.label) {
88
- case 0:
89
- if (!window.Slope) {
89
+ case 0: return [4 /*yield*/, (0, helper_1.autoWalletCheck)(function () {
90
+ return window.Slope;
91
+ }, 3000)];
92
+ case 1:
93
+ result = _b.sent();
94
+ if (!result) {
90
95
  throw new Error(types_1.EnumErrors.NoSlope);
91
96
  }
92
97
  wallet = new window.Slope();
93
98
  wallet.isSlopeWallet = true;
94
99
  this.sdk = wallet;
95
100
  return [4 /*yield*/, wallet.connect()];
96
- case 1:
101
+ case 2:
97
102
  _a = _b.sent(), msg = _a.msg, data = _a.data;
98
103
  address = '';
99
104
  if (msg === 'ok') {
@@ -62,6 +62,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
62
62
  */
63
63
  // @ts-ignore
64
64
  var solflare_svg_1 = __importDefault(require("../assets/solflare.svg"));
65
+ var helper_1 = require("../helper");
65
66
  var types_1 = require("../types");
66
67
  var BaseWallet_1 = __importDefault(require("./BaseWallet"));
67
68
  var SolflareWallet = /** @class */ (function (_super) {
@@ -84,21 +85,33 @@ var SolflareWallet = /** @class */ (function (_super) {
84
85
  return __awaiter(this, void 0, void 0, function () {
85
86
  var _this = this;
86
87
  return __generator(this, function (_a) {
87
- return [2 /*return*/, new Promise(function (res) {
88
- if (!(window.solflare && window.solflare.isSolflare)) {
89
- throw new Error(types_1.EnumErrors.NoSolflare);
90
- }
91
- var wallet = window.parent && window.parent.solflare ? window.parent.solflare : window.solflare;
92
- // const wallet = window.solflare;
93
- _this.sdk = wallet;
94
- wallet.on('connect', function (publicKey) {
95
- var address = wallet.publicKey.toString();
96
- _this.address = address;
97
- _this.chainId = ''; // todo sollet chainId
98
- res(address);
88
+ return [2 /*return*/, new Promise(function (res) { return __awaiter(_this, void 0, void 0, function () {
89
+ var result, wallet;
90
+ var _this = this;
91
+ return __generator(this, function (_a) {
92
+ switch (_a.label) {
93
+ case 0: return [4 /*yield*/, (0, helper_1.autoWalletCheck)(function () {
94
+ return window.solflare && window.solflare.isSolflare;
95
+ }, 3000)];
96
+ case 1:
97
+ result = _a.sent();
98
+ if (!result) {
99
+ throw new Error(types_1.EnumErrors.NoSolflare);
100
+ }
101
+ wallet = window.parent && window.parent.solflare ? window.parent.solflare : window.solflare;
102
+ // const wallet = window.solflare;
103
+ this.sdk = wallet;
104
+ wallet.on('connect', function (publicKey) {
105
+ var address = wallet.publicKey.toString();
106
+ _this.address = address;
107
+ _this.chainId = ''; // todo sollet chainId
108
+ res(address);
109
+ });
110
+ wallet.connect();
111
+ return [2 /*return*/];
112
+ }
99
113
  });
100
- wallet.connect();
101
- })];
114
+ }); })];
102
115
  });
103
116
  });
104
117
  };
@@ -14,6 +14,42 @@ var __extends = (this && this.__extends) || (function () {
14
14
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
15
  };
16
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;
28
+ return g = { next: verb(0), "throw": verb(1), "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 (_) 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
+ };
17
53
  var __importDefault = (this && this.__importDefault) || function (mod) {
18
54
  return (mod && mod.__esModule) ? mod : { "default": mod };
19
55
  };
@@ -30,6 +66,7 @@ var types_1 = require("../types");
30
66
  var BaseWallet_1 = __importDefault(require("./BaseWallet"));
31
67
  // @ts-ignore
32
68
  var sol_wallet_adapter_1 = __importDefault(require("@project-serum/sol-wallet-adapter"));
69
+ var helper_1 = require("../helper");
33
70
  var Sollet = /** @class */ (function (_super) {
34
71
  __extends(Sollet, _super);
35
72
  function Sollet() {
@@ -48,20 +85,32 @@ var Sollet = /** @class */ (function (_super) {
48
85
  */
49
86
  Sollet.prototype.requestSolanaConnect = function (chainId) {
50
87
  var _this = this;
51
- return new Promise(function (res) {
52
- if (!window.sollet) {
53
- throw new Error(types_1.EnumErrors.NoSollet);
54
- }
55
- var wallet = new sol_wallet_adapter_1.default(window.sollet);
56
- _this.sdk = wallet;
57
- wallet.on('connect', function (publicKey) {
58
- var address = publicKey.toBase58();
59
- _this.address = address;
60
- _this.chainId = ''; // todo sollet chainId
61
- res(address);
88
+ return new Promise(function (res) { return __awaiter(_this, void 0, void 0, function () {
89
+ var result, wallet;
90
+ var _this = this;
91
+ return __generator(this, function (_a) {
92
+ switch (_a.label) {
93
+ case 0: return [4 /*yield*/, (0, helper_1.autoWalletCheck)(function () {
94
+ return window.sollet;
95
+ }, 3000)];
96
+ case 1:
97
+ result = _a.sent();
98
+ if (!result) {
99
+ throw new Error(types_1.EnumErrors.NoSollet);
100
+ }
101
+ wallet = new sol_wallet_adapter_1.default(window.sollet);
102
+ this.sdk = wallet;
103
+ wallet.on('connect', function (publicKey) {
104
+ var address = publicKey.toBase58();
105
+ _this.address = address;
106
+ _this.chainId = ''; // todo sollet chainId
107
+ res(address);
108
+ });
109
+ wallet.connect();
110
+ return [2 /*return*/];
111
+ }
62
112
  });
63
- wallet.connect();
64
- });
113
+ }); });
65
114
  };
66
115
  return Sollet;
67
116
  }(BaseWallet_1.default));
@@ -108,7 +108,7 @@ var UnstoppableDomains = /** @class */ (function (_super) {
108
108
  case 0:
109
109
  uauth = new js_1.default({
110
110
  clientID: "05c3a150-4fef-49c9-a153-af16851c75ba",
111
- redirectUri: window.location.origin,
111
+ redirectUri: window.location.origin + (window.location.pathname || ""),
112
112
  // responseMode: "fragment",
113
113
  // clientAuthMethod: "none",
114
114
  prompt: "login",
@@ -0,0 +1 @@
1
+ export declare function autoWalletCheck(check: any, time: number, count?: number): Promise<boolean>;
package/lib/helper.js ADDED
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.autoWalletCheck = void 0;
4
+ function autoWalletCheck(check, time, count) {
5
+ return new Promise(function (resolve) {
6
+ var i = 0;
7
+ var s = count || 10;
8
+ var id = setInterval(function () {
9
+ if (i++ > s) {
10
+ clearInterval(id);
11
+ resolve(false);
12
+ }
13
+ else {
14
+ var r = check && check();
15
+ console.log('autoWalletCheck', r);
16
+ if (r) {
17
+ clearInterval(id);
18
+ resolve(true);
19
+ }
20
+ }
21
+ }, time / s);
22
+ });
23
+ }
24
+ exports.autoWalletCheck = autoWalletCheck;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openocean.finance/wallet",
3
- "version": "0.4.40",
3
+ "version": "0.4.42",
4
4
  "description": "A multi-chain wallets manager",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {