Skip to content

Commit 039edf1

Browse files
authored
Merge pull request #1639 from beilunyang/feat/safeheron
feat: add safeheron
2 parents 9d3e748 + 02a5171 commit 039edf1

File tree

6 files changed

+44
-6
lines changed

6 files changed

+44
-6
lines changed

docs/src/routes/docs/[...4]wallets/injected.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -313,6 +313,7 @@ const injected = injectedModule({
313313
- DeFiWallet - _Desktop & Mobile_
314314
- ApexWallet - _Desktop_
315315
- BifrostWallet - _Desktop & Mobile_
316+
- Safeheron - _Desktop_
316317

317318
## Build Environments
318319

packages/injected/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@web3-onboard/injected-wallets",
3-
"version": "2.8.4",
3+
"version": "2.8.5-alpha.1",
44
"description": "Injected wallet module for connecting browser extension and mobile wallets to Web3-Onboard. Web3-Onboard makes it simple to connect Ethereum hardware and software wallets to your dapp. Features standardised spec compliant web3 providers for all supported wallets, framework agnostic modern javascript UI with code splitting, CSS customization, multi-chain and multi-account support, reactive wallet state subscriptions and real-time transaction state change notifications.",
55
"keywords": [
66
"Ethereum",

packages/injected/src/constants.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,5 +24,6 @@ export const WALLET_NAMES: { [key: string]: string } = {
2424
frontier: 'Frontier',
2525
zerion: 'Zerion',
2626
rainbow: 'Rainbow',
27-
defiwallet: 'DeFi Wallet'
27+
defiwallet: 'DeFi Wallet',
28+
safeheron: 'Safeheron'
2829
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
export default `
2+
<?xml version="1.0" encoding="UTF-8"?>
3+
<svg width="100%" height="100%" viewBox="0 0 38 38" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
4+
<defs>
5+
<polygon id="path-1" points="0 0 38 0 38 38 0 38"></polygon>
6+
</defs>
7+
<g id="page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
8+
<g id="about" transform="translate(-340.000000, -14.000000)">
9+
<g id="group" transform="translate(340.000000, 14.000000)">
10+
<mask id="mask-2" fill="white">
11+
<use xlink:href="#path-1"></use>
12+
</mask>
13+
<g id="Clip-2"></g>
14+
<path d="M19,0 C8.50690038,0 0,8.50690038 0,19 C0,29.4930996 8.50690038,38 19,38 C29.4938531,38 38,29.4930996 38,19 C38,8.50690038 29.4938531,0 19,0 L19,0 Z" id="Fill-1" fill="#109D84" mask="url(#mask-2)"></path>
15+
<path d="M7.58990324,15.7916402 L23.6603347,26.2689166 C23.8087722,26.3789261 23.896177,26.5522287 23.896177,26.7375872 L23.8170606,31.8334391 C23.8170606,32.3797192 23.1570035,32.654743 22.7697097,32.2689562 L7.55750317,18.2502776 C7.34652602,18.0408074 7.22747462,17.7544813 7.22747462,17.4568528 L7.22747462,15.9739848 C7.22747462,15.7878728 7.43995876,15.6801237 7.58990324,15.7916402 Z M16.3205901,5.72727633 L31.6096526,19.8808296 C31.8251507,20.0918068 31.9464626,20.3803934 31.9464626,20.6817893 L31.9464626,22.2211691 C31.9464626,22.4072811 31.7354854,22.5150301 31.5847874,22.4050206 L20.0081694,15.2091926 C19.8634994,15.1044575 19.6608106,15.2069321 19.6608106,15.3855092 L19.6608106,16.1570828 C19.6608106,16.4117624 19.7640387,16.6558931 19.9456298,16.8344702 L23.5247065,20.338198 C23.7628093,20.5710263 23.896177,20.888999 23.896177,21.2227951 L23.896177,24.1998334 C23.896177,24.3716291 23.6919813,24.4605409 23.566902,24.3429965 L17.70023,18.8711532 L15.6658074,16.9512611 C15.4171558,16.7169258 15.2770067,16.3921716 15.2770067,16.0515942 L15.2770067,6.16656091 C15.2770067,5.62329473 15.9317893,5.34676396 16.3205901,5.72727633 Z" id="shape" fill="#FFFFFF" mask="url(#mask-2)"></path>
16+
</g>
17+
</g>
18+
</g>
19+
</svg>
20+
`

packages/injected/src/types.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,8 @@ export enum ProviderIdentityFlag {
6060
Zerion = 'isZerion',
6161
Rainbow = 'isRainbow',
6262
SafePal = 'isSafePal',
63-
DeFiWallet = 'isDeficonnectProvider'
63+
DeFiWallet = 'isDeficonnectProvider',
64+
Safeheron = 'isSafeheron'
6465
}
6566

6667
export enum ProviderLabel {
@@ -111,7 +112,8 @@ export enum ProviderLabel {
111112
Zerion = 'Zerion',
112113
Rainbow = 'Rainbow',
113114
SafePal = 'SafePal',
114-
DeFiWallet = 'DeFi Wallet'
115+
DeFiWallet = 'DeFi Wallet',
116+
Safeheron = 'Safeheron'
115117
}
116118

117119
export interface MeetOneProvider extends ExternalProvider {
@@ -141,7 +143,8 @@ export enum InjectedNameSpace {
141143
OKXWallet = 'okxwallet',
142144
Trust = 'trustwallet',
143145
Frontier = 'frontier',
144-
DeFiConnectProvider = 'deficonnectProvider'
146+
DeFiConnectProvider = 'deficonnectProvider',
147+
Safeheron = 'safeheron'
145148
}
146149

147150
export interface CustomWindow extends Window {
@@ -176,6 +179,7 @@ export interface CustomWindow extends Window {
176179
okxwallet: InjectedProvider
177180
trustwallet: InjectedProvider
178181
deficonnectProvider: InjectedProvider
182+
safeheron: InjectedProvider
179183
}
180184

181185
export type InjectedProvider = ExternalProvider &

packages/injected/src/wallets.ts

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -747,6 +747,17 @@ const defiwallet: InjectedWalletModule = {
747747
platforms: ['all']
748748
}
749749

750+
const safeheron: InjectedWalletModule = {
751+
label: ProviderLabel.Safeheron,
752+
injectedNamespace: InjectedNameSpace.Safeheron,
753+
checkProviderIdentity: ({ provider }) => !!provider && !!provider[ProviderIdentityFlag.Safeheron],
754+
getIcon: async () => (await import('./icons/safeheron.js')).default,
755+
getInterface: async () => ({
756+
provider: createEIP1193Provider(window.safeheron)
757+
}),
758+
platforms: ['desktop', 'Chrome', 'Chromium', 'Microsoft Edge']
759+
}
760+
750761
const wallets = [
751762
zeal,
752763
exodus,
@@ -793,7 +804,8 @@ const wallets = [
793804
rainbow,
794805
safepal,
795806
defiwallet,
796-
infinitywallet
807+
infinitywallet,
808+
safeheron,
797809
]
798810

799811
export default wallets

0 commit comments

Comments
 (0)