Skip to content

Commit 1cdfded

Browse files
authored
Merge pull request #406 from wujunchuan/feature/meetone-provider
feat: Add meetone wallet support
2 parents 68a1b07 + ea9fc87 commit 1cdfded

File tree

4 files changed

+44
-0
lines changed

4 files changed

+44
-0
lines changed

src/modules/select/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ function select(
5454

5555
function getModule(name: string): Promise<any> | undefined {
5656
switch (name) {
57+
case 'meetone':
58+
return import('./wallets/meetone')
5759
case 'metamask':
5860
return import('./wallets/metamask')
5961
case 'dapper':
Loading

src/modules/select/wallets/meetone.ts

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import { extensionInstallMessage } from '../content'
2+
import { WalletModule, Helpers, CommonWalletOptions } from '../../../interfaces'
3+
4+
import meetoneIcon from '../wallet-icons/icon-meetone.png'
5+
import meetoneIcon2x from '../wallet-icons/icon-meetone.png'
6+
7+
function meetone(options: CommonWalletOptions): WalletModule {
8+
const { preferred, label, iconSrc, svg } = options
9+
10+
return {
11+
name: label || 'MEETONE',
12+
iconSrc: iconSrc || meetoneIcon,
13+
iconSrcSet: iconSrc || meetoneIcon2x,
14+
svg,
15+
wallet: async (helpers: Helpers) => {
16+
const { getProviderName, createModernProviderInterface } = helpers
17+
18+
const provider =
19+
(window as any).ethereum ||
20+
((window as any).web3 && (window as any).web3.currentProvider)
21+
22+
return {
23+
provider,
24+
interface:
25+
(getProviderName(provider) === 'MEETONE' &&
26+
createModernProviderInterface(provider)) ||
27+
null
28+
}
29+
},
30+
type: 'injected',
31+
link: 'https://meet.one',
32+
installMessage: extensionInstallMessage,
33+
mobile: true,
34+
preferred
35+
}
36+
}
37+
38+
export default meetone

src/utilities.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,10 @@ export function createLegacyProviderInterface(provider: any): WalletInterface {
163163
export function getProviderName(provider: any): string | undefined {
164164
if (!provider) return
165165

166+
if (provider.wallet === 'MEETONE') {
167+
return 'MEETONE'
168+
}
169+
166170
if (provider.isTorus) {
167171
return 'Torus'
168172
}

0 commit comments

Comments
 (0)