diff --git a/package.json b/package.json index 0295e0de7..278f89937 100644 --- a/package.json +++ b/package.json @@ -33,7 +33,8 @@ "Mempool", "pending", "confirmed", - "Injected Wallet" + "Injected Wallet", + "GameStop" ], "repository": { "type": "git", diff --git a/packages/injected/package.json b/packages/injected/package.json index a946d7858..a8616db01 100644 --- a/packages/injected/package.json +++ b/packages/injected/package.json @@ -1,6 +1,6 @@ { "name": "@web3-onboard/injected-wallets", - "version": "2.0.13", + "version": "2.0.14-alpha.1", "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.", "keywords": [ "Ethereum", @@ -29,7 +29,8 @@ "Mempool", "pending", "confirmed", - "Injected Wallet" + "Injected Wallet", + "GameStop" ], "repository": { "type": "git", diff --git a/packages/injected/src/icons/gamestop.ts b/packages/injected/src/icons/gamestop.ts new file mode 100644 index 000000000..e59687a0b --- /dev/null +++ b/packages/injected/src/icons/gamestop.ts @@ -0,0 +1,7 @@ +export default ` + + + + + +` \ No newline at end of file diff --git a/packages/injected/src/types.ts b/packages/injected/src/types.ts index 30db52e76..d075e6125 100644 --- a/packages/injected/src/types.ts +++ b/packages/injected/src/types.ts @@ -42,7 +42,8 @@ export enum ProviderIdentityFlag { Tally = 'isTally', BraveWallet = 'isBraveWallet', Rabby = 'isRabby', - MathWallet = 'isMathWallet' + MathWallet = 'isMathWallet', + GameStop = 'isGamestop' } export enum ProviderLabel { @@ -77,6 +78,7 @@ export enum ProviderLabel { Tally = 'Tally Wallet', Rabby = 'Rabby', MathWallet = 'MathWallet', + GameStop = 'GameStop Wallet' } export interface MeetOneProvider extends ExternalProvider { @@ -95,7 +97,8 @@ export enum InjectedNameSpace { Tally = 'tally', Web3 = 'web3', Arbitrum = 'arbitrum', - XFI = 'xfi' + XFI = 'xfi', + GameStop = 'gamestop' } export interface CustomWindow extends Window { @@ -107,6 +110,7 @@ export interface CustomWindow extends Window { xfi: { ethereum: InjectedProvider } + gamestop: InjectedProvider } export type InjectedProvider = ExternalProvider & diff --git a/packages/injected/src/wallets.ts b/packages/injected/src/wallets.ts index 6e09882de..7be24561a 100644 --- a/packages/injected/src/wallets.ts +++ b/packages/injected/src/wallets.ts @@ -500,6 +500,18 @@ const mathwallet: InjectedWalletModule = { platforms: ['all'] } +const gamestop: InjectedWalletModule = { + label: ProviderLabel.GameStop, + injectedNamespace: InjectedNameSpace.GameStop, + checkProviderIdentity: ({ provider }) => + !!provider && !!provider[ProviderIdentityFlag.GameStop], + getIcon: async () => (await import('./icons/gamestop.js')).default, + getInterface: async () => ({ + provider: createEIP1193Provider(window.gamestop) + }), + platforms: ['desktop'] +} + const wallets = [ exodus, metamask, @@ -529,7 +541,8 @@ const wallets = [ tokenary, tally, rabby, - mathwallet + mathwallet, + gamestop ] export default wallets