Skip to content

Commit 5248146

Browse files
Merge pull request #641 from blocknative/release/1.32.0
1.32.0: Release
2 parents 6fc5637 + e19414e commit 5248146

File tree

10 files changed

+214
-178
lines changed

10 files changed

+214
-178
lines changed

package.json

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "bnc-onboard",
3-
"version": "1.31.0",
3+
"version": "1.32.0",
44
"description": "Onboard users to web3 by allowing them to select a wallet, get that wallet ready to transact and have access to synced wallet state.",
55
"keywords": [
66
"ethereum",
@@ -67,7 +67,7 @@
6767
"@shapeshiftoss/hdwallet-keepkey": "^1.15.2",
6868
"@shapeshiftoss/hdwallet-keepkey-webusb": "^1.15.2",
6969
"@toruslabs/torus-embed": "^1.10.11",
70-
"@walletconnect/web3-provider": "^1.4.1",
70+
"@walletconnect/web3-provider": "^1.5.2",
7171
"authereum": "^0.1.12",
7272
"bignumber.js": "^9.0.0",
7373
"bnc-sdk": "^3.4.1",
@@ -86,7 +86,9 @@
8686
},
8787
"resolutions": {
8888
"authereum/web3-utils/underscore": "^1.12.1",
89+
"authereum/ethereum-private-key-to-address/meow/trim-newlines": "^3.0.1",
8990
"authereum/ethers/elliptic": "^6.5.3",
90-
"@portis/web3/pocket-js-core/axios": "^0.21.1"
91+
"@portis/web3/pocket-js-core/axios": "^0.21.1",
92+
"@shapeshiftoss/hdwallet-keepkey/bnb-javascript-sdk-nobroadcast/axios": "^0.21.1"
9193
}
9294
}

src/interfaces.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ export interface WalletSelectModuleOptions {
3030
export interface WalletSelectModule {
3131
heading: string
3232
description: string
33-
wallets: Array<WalletModule | WalletInitOptions>
33+
wallets: Promise<Array<WalletModule | WalletInitOptions>>
3434
explanation?: string
3535
agreement?: TermsOfServiceAgreementOptions
3636
}

src/modules/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export default function initializeModules(
2626
heading = defaultHeading,
2727
description = defaultDescription,
2828
explanation = defaultWalletExplanation,
29-
agreement = {}
29+
agreement
3030
} = walletSelectOptions || {}
3131

3232
return {

src/modules/select/index.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,8 @@ const mobileDefaultWalletNames = [
3434
'alphawallet',
3535
'ownbit',
3636
'bitpie',
37-
'authereum'
37+
'authereum',
38+
'tp'
3839
]
3940

4041
const injectedWalletDetected = () =>
@@ -179,6 +180,8 @@ function getModule(name: string): Promise<{
179180
return import('./wallets/gnosis')
180181
case 'detectedwallet':
181182
return import('./wallets/detectedwallet')
183+
case 'tp':
184+
return import('./wallets/tp')
182185
default:
183186
throw new Error(`${name} is not a valid walletName.`)
184187
}
2.02 KB
Loading
4.15 KB
Loading

src/modules/select/wallets/tp.ts

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import { mobileWalletInstallMessage } from '../content'
2+
import { WalletModule, Helpers, CommonWalletOptions } from '../../../interfaces'
3+
4+
import tpIcon from '../wallet-icons/icon-tp.png'
5+
import tpIcon2x from '../wallet-icons/icon-tp@2x.png'
6+
7+
function tp(options: CommonWalletOptions): WalletModule {
8+
const { preferred, label, iconSrc, svg } = options
9+
10+
return {
11+
name: label || 'tp',
12+
iconSrc: iconSrc || tpIcon,
13+
iconSrcSet: iconSrc || tpIcon2x,
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) === 'tp' &&
26+
createModernProviderInterface(provider)) ||
27+
null
28+
}
29+
},
30+
type: 'injected',
31+
link: 'https://tokenpocket.jp',
32+
installMessage: mobileWalletInstallMessage,
33+
mobile: true,
34+
preferred
35+
}
36+
}
37+
38+
export default tp

src/utilities.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -306,6 +306,10 @@ export function getProviderName(provider: any): string | undefined {
306306
return 'Bitpie'
307307
}
308308

309+
if (provider.isTp) {
310+
return 'tp'
311+
}
312+
309313
// =====================================
310314
// When adding new wallet place above this metamask check as some providers
311315
// have an isMetaMask property in addition to the wallet's own `is[WalletName]`

src/views/WalletSelect.svelte

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
export let module: WalletSelectModule = {
3535
heading: '',
3636
description: '',
37-
wallets: [],
37+
wallets: Promise.resolve([]),
3838
agreement: undefined
3939
}
4040
@@ -46,7 +46,7 @@
4646
let selectedWalletModule: WalletModule | null
4747
4848
const { mobileDevice, os } = get(app)
49-
let { heading, description, explanation, wallets, agreement } = module
49+
let { heading, description, explanation, agreement } = module
5050
5151
const { termsUrl, privacyUrl, version } = agreement || {}
5252
const {
@@ -109,7 +109,7 @@
109109
110110
async function renderWalletSelect() {
111111
const appState = get(app)
112-
wallets = await wallets
112+
const wallets = await module.wallets
113113
114114
const deviceWallets = (wallets as WalletModule[])
115115
.filter(wallet => wallet[mobileDevice ? 'mobile' : 'desktop'])

0 commit comments

Comments
 (0)