@reown/appkit-utils 1.6.6-rc.2.0 → 1.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reown/appkit-utils",
3
- "version": "1.6.6-rc.2.0",
3
+ "version": "1.6.6",
4
4
  "type": "module",
5
5
  "main": "./dist/esm/exports/index.js",
6
6
  "types": "./dist/types/exports/index.d.ts",
@@ -40,10 +40,10 @@
40
40
  "@walletconnect/universal-provider": "2.18.0",
41
41
  "valtio": "1.13.2",
42
42
  "viem": "2.x",
43
- "@reown/appkit-common": "1.6.6-rc.2.0",
44
- "@reown/appkit-polyfills": "1.6.6-rc.2.0",
45
- "@reown/appkit-wallet": "1.6.6-rc.2.0",
46
- "@reown/appkit-core": "1.6.6-rc.2.0"
43
+ "@reown/appkit-common": "1.6.6",
44
+ "@reown/appkit-core": "1.6.6",
45
+ "@reown/appkit-polyfills": "1.6.6",
46
+ "@reown/appkit-wallet": "1.6.6"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@coinbase/wallet-sdk": "4.2.4",
@@ -1,28 +0,0 @@
1
- import { ConstantsUtil } from '@reown/appkit-common';
2
- import { ChainController, ConnectorController, RouterController } from '@reown/appkit-core';
3
- export const MobileWalletUtil = {
4
- handleMobileWalletRedirection(wallet) {
5
- const connector = ConnectorController.getConnector(wallet.id, wallet.rdns);
6
- if (ChainController.state.activeChain === ConstantsUtil.CHAIN.SOLANA) {
7
- const href = window.location.href;
8
- const encodedHref = encodeURIComponent(href);
9
- const name = connector?.name || wallet?.name || '';
10
- if (name === 'Phantom' && !('phantom' in window)) {
11
- const protocol = href.startsWith('https') ? 'https' : 'http';
12
- const host = href.split('/')[2];
13
- const encodedRef = encodeURIComponent(`${protocol}://${host}`);
14
- window.location.href = `https://phantom.app/ul/browse/${encodedHref}?ref=${encodedRef}`;
15
- }
16
- if (name === 'Coinbase Wallet' && !('coinbaseSolana' in window)) {
17
- window.location.href = `https://go.cb-w.com/dapp?cb_url=${encodedHref}`;
18
- }
19
- }
20
- if (connector) {
21
- RouterController.push('ConnectingExternal', { connector });
22
- }
23
- else {
24
- RouterController.push('ConnectingWalletConnect', { wallet });
25
- }
26
- }
27
- };
28
- //# sourceMappingURL=MobileWallet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MobileWallet.js","sourceRoot":"","sources":["../../../src/MobileWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAEjB,MAAM,oBAAoB,CAAA;AAE3B,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAO9B,6BAA6B,CAAC,MAAgB;QAC5C,MAAM,SAAS,GAAG,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAE1E,IAAI,eAAe,CAAC,KAAK,CAAC,WAAW,KAAK,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAMrE,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAA;YACjC,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;YAC5C,MAAM,IAAI,GAAG,SAAS,EAAE,IAAI,IAAI,MAAM,EAAE,IAAI,IAAI,EAAE,CAAA;YAClD,IAAI,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;gBACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAA;gBAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/B,MAAM,UAAU,GAAG,kBAAkB,CAAC,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC,CAAA;gBAE9D,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,iCAAiC,WAAW,QAAQ,UAAU,EAAE,CAAA;YACzF,CAAC;YAED,IAAI,IAAI,KAAK,iBAAiB,IAAI,CAAC,CAAC,gBAAgB,IAAI,MAAM,CAAC,EAAE,CAAC;gBAChE,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,mCAAmC,WAAW,EAAE,CAAA;YACzE,CAAC;QACH,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,gBAAgB,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,SAAS,EAAE,CAAC,CAAA;QAC5D,CAAC;aAAM,CAAC;YACN,gBAAgB,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAA;QAC9D,CAAC;IACH,CAAC;CACF,CAAA"}
@@ -1,95 +0,0 @@
1
- import { afterAll, beforeEach, describe, expect, it, vi } from 'vitest';
2
- import { ChainController, ConnectorController, RouterController } from '@reown/appkit-core';
3
- import { MobileWalletUtil } from '../../core/src/utils/MobileWallet';
4
- const ORIGINAL_HREF = 'https://example.com/path';
5
- const mockWindow = {
6
- location: {
7
- href: ORIGINAL_HREF
8
- }
9
- };
10
- const WALLETS = {
11
- phantom: {
12
- name: 'Phantom',
13
- id: 'phantom'
14
- },
15
- coinbase: {
16
- name: 'Coinbase Wallet',
17
- id: 'cbw'
18
- }
19
- };
20
- describe('MobileWalletUtil', () => {
21
- beforeEach(() => {
22
- vi.stubGlobal('window', {
23
- location: {
24
- href: ORIGINAL_HREF
25
- }
26
- });
27
- vi.spyOn(ChainController, 'state', 'get').mockReturnValue({
28
- activeChain: 'solana'
29
- });
30
- });
31
- afterAll(() => {
32
- vi.unstubAllGlobals();
33
- });
34
- describe('handleMobileWalletRedirection', () => {
35
- it('should redirect to Phantom app when Phantom is not installed', () => {
36
- MobileWalletUtil.handleMobileWalletRedirection(WALLETS.phantom);
37
- const encodedHref = encodeURIComponent(ORIGINAL_HREF);
38
- const encodedRef = encodeURIComponent('https://example.com');
39
- const expectedUrl = `https://phantom.app/ul/browse/${encodedHref}?ref=${encodedRef}`;
40
- expect(window.location.href).toBe(expectedUrl);
41
- });
42
- it('should not redirect when Phantom is installed', () => {
43
- vi.stubGlobal('window', {
44
- ...mockWindow,
45
- phantom: {}
46
- });
47
- const originalHref = window.location.href;
48
- MobileWalletUtil.handleMobileWalletRedirection(WALLETS.phantom);
49
- expect(window.location.href).toBe(originalHref);
50
- });
51
- it('should redirect to Coinbase Wallet when it is not installed', () => {
52
- MobileWalletUtil.handleMobileWalletRedirection(WALLETS.coinbase);
53
- const encodedHref = encodeURIComponent(ORIGINAL_HREF);
54
- const expectedUrl = `https://go.cb-w.com/dapp?cb_url=${encodedHref}`;
55
- expect(window.location.href).toBe(expectedUrl);
56
- });
57
- it('should not redirect when Coinbase Wallet is installed', () => {
58
- vi.stubGlobal('window', {
59
- ...mockWindow,
60
- coinbaseSolana: {}
61
- });
62
- const originalHref = window.location.href;
63
- MobileWalletUtil.handleMobileWalletRedirection(WALLETS.coinbase);
64
- expect(window.location.href).toBe(originalHref);
65
- });
66
- it('should not redirect for unknown wallet names', () => {
67
- const originalHref = window.location.href;
68
- MobileWalletUtil.handleMobileWalletRedirection({ name: 'Unknown', id: 'unknown' });
69
- expect(window.location.href).toBe(originalHref);
70
- });
71
- it('should route to ConnectingExternal if there is a connector', () => {
72
- const mockConnector = {
73
- id: 'connector',
74
- name: 'Connector',
75
- type: 'INJECTED',
76
- chain: 'solana'
77
- };
78
- vi.spyOn(ConnectorController, 'getConnector').mockReturnValue(mockConnector);
79
- vi.spyOn(RouterController, 'push');
80
- MobileWalletUtil.handleMobileWalletRedirection({ name: 'Connector', id: 'connector' });
81
- expect(RouterController.push).toHaveBeenCalledWith('ConnectingExternal', {
82
- connector: mockConnector
83
- });
84
- });
85
- it('should route to ConnectingWalletConnect if there is not a connector', () => {
86
- vi.spyOn(ConnectorController, 'getConnector').mockReturnValue(undefined);
87
- vi.spyOn(RouterController, 'push');
88
- MobileWalletUtil.handleMobileWalletRedirection({ name: 'WalletConnect', id: 'wc' });
89
- expect(RouterController.push).toHaveBeenCalledWith('ConnectingWalletConnect', {
90
- wallet: { name: 'WalletConnect', id: 'wc' }
91
- });
92
- });
93
- });
94
- });
95
- //# sourceMappingURL=MobileWallet.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MobileWallet.test.js","sourceRoot":"","sources":["../../../tests/MobileWallet.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { type WcWallet } from '@reown/appkit-core';
2
- export declare const MobileWalletUtil: {
3
- handleMobileWalletRedirection(wallet: WcWallet): void;
4
- };
@@ -1 +0,0 @@
1
- export {};