Skip to content

Commit

Permalink
feat: Track recent dApp url accessed (#236)
Browse files Browse the repository at this point in the history
* feat: Record last focus url

* chore: update version
  • Loading branch information
originalix authored Sep 13, 2024
1 parent d846287 commit 40fd9b6
Show file tree
Hide file tree
Showing 36 changed files with 192 additions and 162 deletions.
8 changes: 4 additions & 4 deletions packages/core/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/cross-inpage-provider-core",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -29,9 +29,9 @@
"build-version-info": "node ./scripts/buildVersionInfo.js"
},
"dependencies": {
"@onekeyfe/cross-inpage-provider-errors": "2.1.7",
"@onekeyfe/cross-inpage-provider-events": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7",
"@onekeyfe/cross-inpage-provider-errors": "2.1.8",
"@onekeyfe/cross-inpage-provider-events": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8",
"events": "^3.3.0",
"lodash-es": "^4.17.21",
"ms": "^2.1.3"
Expand Down
4 changes: 2 additions & 2 deletions packages/core/src/notification/index.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@

import notification from './notification'
export { notification }
import notification, { isInSameOriginIframe} from './notification'
export { notification, isInSameOriginIframe }

export * from './swtichDefaultWalletNotification'
export * from './switchNetworkNotification'
2 changes: 1 addition & 1 deletion packages/core/src/versionInfo.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

const version = '2.1.6';
const version = '2.1.7';
const versionBuild = '2020-0101-1';

export default {
Expand Down
6 changes: 3 additions & 3 deletions packages/desktop/desktop-bridge-injected/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/desktop-bridge-injected",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -34,7 +34,7 @@
"electron": "^17.2.0"
},
"dependencies": {
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7"
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8"
}
}
2 changes: 1 addition & 1 deletion packages/empty/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/cross-inpage-provider-empty",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down
2 changes: 1 addition & 1 deletion packages/errors/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/cross-inpage-provider-errors",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down
2 changes: 1 addition & 1 deletion packages/events/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/cross-inpage-provider-events",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down
24 changes: 12 additions & 12 deletions packages/example/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/cross-inpage-provider-example",
"version": "2.1.7",
"version": "2.1.8",
"private": true,
"scripts": {
"postinstall": "patch-package",
Expand All @@ -21,17 +21,17 @@
"@metamask/eth-sig-util": "^7.0.2",
"@metamask/onboarding": "^1.0.1",
"@mysten/dapp-kit": "0.13.2",
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7",
"@onekeyfe/onekey-aptos-provider": "2.1.7",
"@onekeyfe/onekey-cardano-provider": "2.1.7",
"@onekeyfe/onekey-conflux-provider": "2.1.7",
"@onekeyfe/onekey-cosmos-provider": "2.1.7",
"@onekeyfe/onekey-near-provider": "2.1.7",
"@onekeyfe/onekey-solana-provider": "2.1.7",
"@onekeyfe/onekey-sui-provider": "2.1.7",
"@onekeyfe/onekey-tron-provider": "2.1.7",
"@onekeyfe/onekey-webln-provider": "2.1.7",
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8",
"@onekeyfe/onekey-aptos-provider": "2.1.8",
"@onekeyfe/onekey-cardano-provider": "2.1.8",
"@onekeyfe/onekey-conflux-provider": "2.1.8",
"@onekeyfe/onekey-cosmos-provider": "2.1.8",
"@onekeyfe/onekey-near-provider": "2.1.8",
"@onekeyfe/onekey-solana-provider": "2.1.8",
"@onekeyfe/onekey-sui-provider": "2.1.8",
"@onekeyfe/onekey-tron-provider": "2.1.8",
"@onekeyfe/onekey-webln-provider": "2.1.8",
"@polkadot/api": "^9.11.3",
"@polkadot/extension-dapp": "^0.47.5",
"@radix-ui/react-checkbox": "^1.1.0",
Expand Down
6 changes: 3 additions & 3 deletions packages/extension/extension-bridge-hosted/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/extension-bridge-hosted",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -28,8 +28,8 @@
"start": "tsc --watch"
},
"dependencies": {
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7",
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8",
"uuid": "^8.3.2"
},
"devDependencies": {
Expand Down
6 changes: 3 additions & 3 deletions packages/extension/extension-bridge-injected/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/extension-bridge-injected",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -28,7 +28,7 @@
"start": "tsc --watch"
},
"dependencies": {
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7"
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8"
}
}
14 changes: 7 additions & 7 deletions packages/injected/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/cross-inpage-provider-injected",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -42,12 +42,12 @@
"electron": "*"
},
"dependencies": {
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7",
"@onekeyfe/desktop-bridge-injected": "2.1.7",
"@onekeyfe/extension-bridge-injected": "2.1.7",
"@onekeyfe/inpage-providers-hub": "2.1.7",
"@onekeyfe/native-bridge-injected": "2.1.7",
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8",
"@onekeyfe/desktop-bridge-injected": "2.1.8",
"@onekeyfe/extension-bridge-injected": "2.1.8",
"@onekeyfe/inpage-providers-hub": "2.1.8",
"@onekeyfe/native-bridge-injected": "2.1.8",
"buffer": "^6.0.3",
"crypto-browserify": "^3.12.0"
}
Expand Down
6 changes: 3 additions & 3 deletions packages/native/native-bridge-injected/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/native-bridge-injected",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -28,7 +28,7 @@
"start": "tsc --watch"
},
"dependencies": {
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7"
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8"
}
}
42 changes: 21 additions & 21 deletions packages/providers/inpage-providers-hub/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/inpage-providers-hub",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -30,26 +30,26 @@
"start": "tsc --watch"
},
"dependencies": {
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7",
"@onekeyfe/onekey-algo-provider": "2.1.7",
"@onekeyfe/onekey-alph-provider": "2.1.7",
"@onekeyfe/onekey-aptos-provider": "2.1.7",
"@onekeyfe/onekey-btc-provider": "2.1.7",
"@onekeyfe/onekey-cardano-provider": "2.1.7",
"@onekeyfe/onekey-conflux-provider": "2.1.7",
"@onekeyfe/onekey-cosmos-provider": "2.1.7",
"@onekeyfe/onekey-eth-provider": "2.1.7",
"@onekeyfe/onekey-nostr-provider": "2.1.7",
"@onekeyfe/onekey-polkadot-provider": "2.1.7",
"@onekeyfe/onekey-private-external-account-provider": "2.1.7",
"@onekeyfe/onekey-private-provider": "2.1.7",
"@onekeyfe/onekey-scdo-provider": "2.1.7",
"@onekeyfe/onekey-solana-provider": "2.1.7",
"@onekeyfe/onekey-sui-provider": "2.1.7",
"@onekeyfe/onekey-ton-provider": "2.1.7",
"@onekeyfe/onekey-tron-provider": "2.1.7",
"@onekeyfe/onekey-webln-provider": "2.1.7",
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8",
"@onekeyfe/onekey-algo-provider": "2.1.8",
"@onekeyfe/onekey-alph-provider": "2.1.8",
"@onekeyfe/onekey-aptos-provider": "2.1.8",
"@onekeyfe/onekey-btc-provider": "2.1.8",
"@onekeyfe/onekey-cardano-provider": "2.1.8",
"@onekeyfe/onekey-conflux-provider": "2.1.8",
"@onekeyfe/onekey-cosmos-provider": "2.1.8",
"@onekeyfe/onekey-eth-provider": "2.1.8",
"@onekeyfe/onekey-nostr-provider": "2.1.8",
"@onekeyfe/onekey-polkadot-provider": "2.1.8",
"@onekeyfe/onekey-private-external-account-provider": "2.1.8",
"@onekeyfe/onekey-private-provider": "2.1.8",
"@onekeyfe/onekey-scdo-provider": "2.1.8",
"@onekeyfe/onekey-solana-provider": "2.1.8",
"@onekeyfe/onekey-sui-provider": "2.1.8",
"@onekeyfe/onekey-ton-provider": "2.1.8",
"@onekeyfe/onekey-tron-provider": "2.1.8",
"@onekeyfe/onekey-webln-provider": "2.1.8",
"web3": "^1.7.3"
},
"devDependencies": {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/* eslint-disable @typescript-eslint/no-unsafe-call */
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
import { isInSameOriginIframe } from '@onekeyfe/cross-inpage-provider-core';
import { styleContent } from "./style";

enum EHostSecurityLevel {
Expand Down Expand Up @@ -175,3 +176,30 @@ export async function detectWebsiteRiskLevel() {
console.error("Detect Risk website error: ", e);
}
}

export function listenPageFocus() {
// Notify the frontend of the last focused URL when the function is called
try {
void window.$onekey.$private.request({
method: "wallet_lastFocusUrl",
});
} catch {
// ignore
}

// Add a focus event listener to the window
window.addEventListener('focus', () => {
try {
if (isInSameOriginIframe()) {
return
}
void window.$onekey.$private.request({
method: "wallet_lastFocusUrl",
});
} catch (error) {
console.error('Error notifying frontend of page focus:', error);
}
});
}


Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ import { ProviderNostr } from '@onekeyfe/onekey-nostr-provider';
import { ProviderBtc, ProviderBtcWallet } from '@onekeyfe/onekey-btc-provider';
import { ProviderAlgo } from '@onekeyfe/onekey-algo-provider';
import { hackAllConnectButtons } from './connectButtonHack';
import { detectWebsiteRiskLevel } from './detectRiskWebsite';
import { detectWebsiteRiskLevel, listenPageFocus } from './detectRiskWebsite';
import { WALLET_CONNECT_INFO } from './connectButtonHack/consts';
// import Web3 from 'web3'; // cause build error

Expand Down Expand Up @@ -278,7 +278,9 @@ function injectWeb3Provider(): unknown {
setTimeout(() => {
void detectWebsiteRiskLevel();
void hackAllConnectButtons();
void listenPageFocus();
}, 1000);

return $onekey;
}
export { injectWeb3Provider };
10 changes: 5 additions & 5 deletions packages/providers/onekey-algo-provider/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/onekey-algo-provider",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -28,9 +28,9 @@
"start": "tsc --watch"
},
"dependencies": {
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-errors": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7",
"@onekeyfe/extension-bridge-injected": "2.1.7"
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-errors": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8",
"@onekeyfe/extension-bridge-injected": "2.1.8"
}
}
10 changes: 5 additions & 5 deletions packages/providers/onekey-alph-provider/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/onekey-alph-provider",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -31,9 +31,9 @@
"@alephium/get-extension-wallet": "^1.5.2",
"@alephium/walletconnect-provider": "^1.5.2",
"@alephium/web3": "^1.5.2",
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-errors": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7",
"@onekeyfe/extension-bridge-injected": "2.1.7"
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-errors": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8",
"@onekeyfe/extension-bridge-injected": "2.1.8"
}
}
10 changes: 5 additions & 5 deletions packages/providers/onekey-aptos-provider/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/onekey-aptos-provider",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -28,10 +28,10 @@
"start": "tsc --watch"
},
"dependencies": {
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-errors": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7",
"@onekeyfe/extension-bridge-injected": "2.1.7",
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-errors": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8",
"@onekeyfe/extension-bridge-injected": "2.1.8",
"aptos": "^1.3.17",
"eth-rpc-errors": "^4.0.3"
}
Expand Down
10 changes: 5 additions & 5 deletions packages/providers/onekey-btc-provider/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@onekeyfe/onekey-btc-provider",
"version": "2.1.7",
"version": "2.1.8",
"keywords": [
"cross-inpage-provider"
],
Expand Down Expand Up @@ -28,9 +28,9 @@
"start": "tsc --watch"
},
"dependencies": {
"@onekeyfe/cross-inpage-provider-core": "2.1.7",
"@onekeyfe/cross-inpage-provider-errors": "2.1.7",
"@onekeyfe/cross-inpage-provider-types": "2.1.7",
"@onekeyfe/extension-bridge-injected": "2.1.7"
"@onekeyfe/cross-inpage-provider-core": "2.1.8",
"@onekeyfe/cross-inpage-provider-errors": "2.1.8",
"@onekeyfe/cross-inpage-provider-types": "2.1.8",
"@onekeyfe/extension-bridge-injected": "2.1.8"
}
}
Loading

0 comments on commit 40fd9b6

Please sign in to comment.