@onekeyfe/inpage-providers-hub 1.1.7 → 1.1.8
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/dist/cjs/injectWeb3Provider.js +65 -17
- package/dist/injectWeb3Provider.d.ts +1 -0
- package/dist/injectWeb3Provider.js +65 -17
- package/package.json +12 -12
|
@@ -8,8 +8,27 @@ const onekey_starcoin_provider_1 = require("@onekeyfe/onekey-starcoin-provider")
|
|
|
8
8
|
const onekey_aptos_provider_1 = require("@onekeyfe/onekey-aptos-provider");
|
|
9
9
|
const onekey_conflux_provider_1 = require("@onekeyfe/onekey-conflux-provider");
|
|
10
10
|
const onekey_tron_provider_1 = require("@onekeyfe/onekey-tron-provider");
|
|
11
|
+
const cross_inpage_provider_core_1 = require("@onekeyfe/cross-inpage-provider-core");
|
|
11
12
|
const onekey_sui_provider_1 = require("@onekeyfe/onekey-sui-provider");
|
|
12
13
|
require("./connectButtonHack");
|
|
14
|
+
// import Web3 from 'web3'; // cause build error
|
|
15
|
+
const { WALLET_INFO_LOACAL_KEY } = cross_inpage_provider_core_1.consts;
|
|
16
|
+
function defineWindowProperty(property, provider) {
|
|
17
|
+
try {
|
|
18
|
+
Object.defineProperty(window, property, {
|
|
19
|
+
get() {
|
|
20
|
+
return provider;
|
|
21
|
+
},
|
|
22
|
+
set(val) {
|
|
23
|
+
// skip the assignment
|
|
24
|
+
return;
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
catch (ex) {
|
|
29
|
+
console.error(ex);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
13
32
|
function injectWeb3Provider() {
|
|
14
33
|
var _a, _b;
|
|
15
34
|
if (!((_a = window === null || window === void 0 ? void 0 : window.$onekey) === null || _a === void 0 ? void 0 : _a.jsBridge)) {
|
|
@@ -46,21 +65,19 @@ function injectWeb3Provider() {
|
|
|
46
65
|
solana,
|
|
47
66
|
starcoin, aptos: martian, conflux,
|
|
48
67
|
tron, sollet: null, sui });
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
window.aptos = martian;
|
|
63
|
-
window.martian = new Proxy(martian, {
|
|
68
|
+
defineWindowProperty('$onekey', $onekey);
|
|
69
|
+
try {
|
|
70
|
+
const walletInfoLocalStr = localStorage.getItem(WALLET_INFO_LOACAL_KEY);
|
|
71
|
+
const walletInfoLocal = walletInfoLocalStr ? JSON.parse(walletInfoLocalStr) : null;
|
|
72
|
+
if (walletInfoLocal && walletInfoLocal.platformEnv.isExtension && walletInfoLocal.disableExt) {
|
|
73
|
+
// disable onekey ext stop inject
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
catch (e) {
|
|
78
|
+
console.error(e);
|
|
79
|
+
}
|
|
80
|
+
const martianProxy = new Proxy(martian, {
|
|
64
81
|
get: (target, property, ...args) => {
|
|
65
82
|
if (property === 'aptosProviderType') {
|
|
66
83
|
return 'martian';
|
|
@@ -69,9 +86,40 @@ function injectWeb3Provider() {
|
|
|
69
86
|
return Reflect.get(target, property, ...args);
|
|
70
87
|
},
|
|
71
88
|
});
|
|
89
|
+
defineWindowProperty('ethereum', ethereum);
|
|
90
|
+
defineWindowProperty('solana', solana);
|
|
91
|
+
defineWindowProperty('phantom', { solana });
|
|
92
|
+
defineWindowProperty('starcoin', starcoin);
|
|
93
|
+
defineWindowProperty('aptos', martian);
|
|
94
|
+
defineWindowProperty('martian', martianProxy);
|
|
95
|
+
defineWindowProperty('conflux', conflux);
|
|
96
|
+
defineWindowProperty('tronLink', tron);
|
|
97
|
+
// window.$onekey = $onekey;
|
|
98
|
+
// ** EVM
|
|
99
|
+
// TODO conflict with MetaMask
|
|
100
|
+
// window.ethereum = ethereum;
|
|
101
|
+
// ** SOL
|
|
102
|
+
// window.solana = solana;
|
|
103
|
+
// window.phantom = { solana };
|
|
104
|
+
// sim multiple providers may cause opensea.io prompts Connection twice.
|
|
105
|
+
// window.solflare = solana;
|
|
106
|
+
// window.glowSolana = solana;
|
|
107
|
+
// ** STC
|
|
108
|
+
// window.starcoin = starcoin;
|
|
109
|
+
// ** Aptos
|
|
110
|
+
// window.aptos = martian;
|
|
111
|
+
// window.martian = new Proxy(martian, {
|
|
112
|
+
// get: (target, property, ...args) => {
|
|
113
|
+
// if (property === 'aptosProviderType') {
|
|
114
|
+
// return 'martian';
|
|
115
|
+
// }
|
|
116
|
+
// // eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
117
|
+
// return Reflect.get(target, property, ...args);
|
|
118
|
+
// },
|
|
119
|
+
// });
|
|
72
120
|
// ** Conflux
|
|
73
|
-
window.conflux = conflux;
|
|
74
|
-
window.tronLink = tron;
|
|
121
|
+
// window.conflux = conflux;
|
|
122
|
+
// window.tronLink = tron;
|
|
75
123
|
window.suiWallet = sui;
|
|
76
124
|
// ** shim or inject real web3
|
|
77
125
|
//
|
|
@@ -5,8 +5,27 @@ import { ProviderStarcoin } from '@onekeyfe/onekey-starcoin-provider';
|
|
|
5
5
|
import { ProviderAptosMartian } from '@onekeyfe/onekey-aptos-provider';
|
|
6
6
|
import { ProviderConflux } from '@onekeyfe/onekey-conflux-provider';
|
|
7
7
|
import { ProviderTron } from '@onekeyfe/onekey-tron-provider';
|
|
8
|
+
import { consts } from '@onekeyfe/cross-inpage-provider-core';
|
|
8
9
|
import { ProviderSui } from '@onekeyfe/onekey-sui-provider';
|
|
9
10
|
import './connectButtonHack';
|
|
11
|
+
// import Web3 from 'web3'; // cause build error
|
|
12
|
+
const { WALLET_INFO_LOACAL_KEY } = consts;
|
|
13
|
+
function defineWindowProperty(property, provider) {
|
|
14
|
+
try {
|
|
15
|
+
Object.defineProperty(window, property, {
|
|
16
|
+
get() {
|
|
17
|
+
return provider;
|
|
18
|
+
},
|
|
19
|
+
set(val) {
|
|
20
|
+
// skip the assignment
|
|
21
|
+
return;
|
|
22
|
+
},
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
catch (ex) {
|
|
26
|
+
console.error(ex);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
10
29
|
function injectWeb3Provider() {
|
|
11
30
|
var _a, _b;
|
|
12
31
|
if (!((_a = window === null || window === void 0 ? void 0 : window.$onekey) === null || _a === void 0 ? void 0 : _a.jsBridge)) {
|
|
@@ -43,21 +62,19 @@ function injectWeb3Provider() {
|
|
|
43
62
|
solana,
|
|
44
63
|
starcoin, aptos: martian, conflux,
|
|
45
64
|
tron, sollet: null, sui });
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
window.aptos = martian;
|
|
60
|
-
window.martian = new Proxy(martian, {
|
|
65
|
+
defineWindowProperty('$onekey', $onekey);
|
|
66
|
+
try {
|
|
67
|
+
const walletInfoLocalStr = localStorage.getItem(WALLET_INFO_LOACAL_KEY);
|
|
68
|
+
const walletInfoLocal = walletInfoLocalStr ? JSON.parse(walletInfoLocalStr) : null;
|
|
69
|
+
if (walletInfoLocal && walletInfoLocal.platformEnv.isExtension && walletInfoLocal.disableExt) {
|
|
70
|
+
// disable onekey ext stop inject
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
catch (e) {
|
|
75
|
+
console.error(e);
|
|
76
|
+
}
|
|
77
|
+
const martianProxy = new Proxy(martian, {
|
|
61
78
|
get: (target, property, ...args) => {
|
|
62
79
|
if (property === 'aptosProviderType') {
|
|
63
80
|
return 'martian';
|
|
@@ -66,9 +83,40 @@ function injectWeb3Provider() {
|
|
|
66
83
|
return Reflect.get(target, property, ...args);
|
|
67
84
|
},
|
|
68
85
|
});
|
|
86
|
+
defineWindowProperty('ethereum', ethereum);
|
|
87
|
+
defineWindowProperty('solana', solana);
|
|
88
|
+
defineWindowProperty('phantom', { solana });
|
|
89
|
+
defineWindowProperty('starcoin', starcoin);
|
|
90
|
+
defineWindowProperty('aptos', martian);
|
|
91
|
+
defineWindowProperty('martian', martianProxy);
|
|
92
|
+
defineWindowProperty('conflux', conflux);
|
|
93
|
+
defineWindowProperty('tronLink', tron);
|
|
94
|
+
// window.$onekey = $onekey;
|
|
95
|
+
// ** EVM
|
|
96
|
+
// TODO conflict with MetaMask
|
|
97
|
+
// window.ethereum = ethereum;
|
|
98
|
+
// ** SOL
|
|
99
|
+
// window.solana = solana;
|
|
100
|
+
// window.phantom = { solana };
|
|
101
|
+
// sim multiple providers may cause opensea.io prompts Connection twice.
|
|
102
|
+
// window.solflare = solana;
|
|
103
|
+
// window.glowSolana = solana;
|
|
104
|
+
// ** STC
|
|
105
|
+
// window.starcoin = starcoin;
|
|
106
|
+
// ** Aptos
|
|
107
|
+
// window.aptos = martian;
|
|
108
|
+
// window.martian = new Proxy(martian, {
|
|
109
|
+
// get: (target, property, ...args) => {
|
|
110
|
+
// if (property === 'aptosProviderType') {
|
|
111
|
+
// return 'martian';
|
|
112
|
+
// }
|
|
113
|
+
// // eslint-disable-next-line @typescript-eslint/no-unsafe-return
|
|
114
|
+
// return Reflect.get(target, property, ...args);
|
|
115
|
+
// },
|
|
116
|
+
// });
|
|
69
117
|
// ** Conflux
|
|
70
|
-
window.conflux = conflux;
|
|
71
|
-
window.tronLink = tron;
|
|
118
|
+
// window.conflux = conflux;
|
|
119
|
+
// window.tronLink = tron;
|
|
72
120
|
window.suiWallet = sui;
|
|
73
121
|
// ** shim or inject real web3
|
|
74
122
|
//
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onekeyfe/inpage-providers-hub",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.8",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"cross-inpage-provider"
|
|
6
6
|
],
|
|
@@ -28,17 +28,17 @@
|
|
|
28
28
|
"start": "tsc --watch"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@onekeyfe/cross-inpage-provider-core": "1.1.
|
|
32
|
-
"@onekeyfe/cross-inpage-provider-types": "1.1.
|
|
33
|
-
"@onekeyfe/onekey-aptos-provider": "1.1.
|
|
34
|
-
"@onekeyfe/onekey-conflux-provider": "1.1.
|
|
35
|
-
"@onekeyfe/onekey-eth-provider": "1.1.
|
|
36
|
-
"@onekeyfe/onekey-private-provider": "1.1.
|
|
37
|
-
"@onekeyfe/onekey-solana-provider": "1.1.
|
|
38
|
-
"@onekeyfe/onekey-starcoin-provider": "1.1.
|
|
39
|
-
"@onekeyfe/onekey-sui-provider": "1.1.
|
|
40
|
-
"@onekeyfe/onekey-tron-provider": "1.1.
|
|
31
|
+
"@onekeyfe/cross-inpage-provider-core": "1.1.8",
|
|
32
|
+
"@onekeyfe/cross-inpage-provider-types": "1.1.8",
|
|
33
|
+
"@onekeyfe/onekey-aptos-provider": "1.1.8",
|
|
34
|
+
"@onekeyfe/onekey-conflux-provider": "1.1.8",
|
|
35
|
+
"@onekeyfe/onekey-eth-provider": "1.1.8",
|
|
36
|
+
"@onekeyfe/onekey-private-provider": "1.1.8",
|
|
37
|
+
"@onekeyfe/onekey-solana-provider": "1.1.8",
|
|
38
|
+
"@onekeyfe/onekey-starcoin-provider": "1.1.8",
|
|
39
|
+
"@onekeyfe/onekey-sui-provider": "1.1.8",
|
|
40
|
+
"@onekeyfe/onekey-tron-provider": "1.1.8",
|
|
41
41
|
"web3": "^1.7.3"
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "2fb531749aeda978c3974b9d3b53982e5cf18d8d"
|
|
44
44
|
}
|