@meshconnect/uwc-react 0.4.1 → 0.5.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"useConnection.d.ts","sourceRoot":"","sources":["../../src/hooks/useConnection.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,mBAAmB,EAEpB,MAAM,wBAAwB,CAAA;AAE/B;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,CA+InE"}
1
+ {"version":3,"file":"useConnection.d.ts","sourceRoot":"","sources":["../../src/hooks/useConnection.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAEV,mBAAmB,EAEpB,MAAM,wBAAwB,CAAA;AAE/B;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,CA2JnE"}
@@ -29,7 +29,8 @@ export function useConnection(walletId) {
29
29
  const [injectedLoading, setInjectedLoading] = useState(false);
30
30
  const [walletConnectError, setWalletConnectError] = useState();
31
31
  const [injectedError, setInjectedError] = useState();
32
- const [connectionURI, setConnectionURI] = useState();
32
+ const [walletConnectURI, setWalletConnectURI] = useState();
33
+ const [tonConnectURI, setTonConnectURI] = useState();
33
34
  const [tonConnectLoading, setTonConnectLoading] = useState(false);
34
35
  const [tonConnectError, setTonConnectError] = useState();
35
36
  const [walletConnectAvailable, setWalletConnectAvailable] = useState(false);
@@ -39,7 +40,12 @@ export function useConnection(walletId) {
39
40
  useEffect(() => {
40
41
  const checkState = () => {
41
42
  const uri = connector.getConnectionURI();
42
- setConnectionURI(uri);
43
+ if (walletConnectLoading) {
44
+ setWalletConnectURI(uri);
45
+ }
46
+ if (tonConnectLoading) {
47
+ setTonConnectURI(uri);
48
+ }
43
49
  // Check availability for both connection modes
44
50
  const wcAvailable = connector.isConnectionModeAvailable('walletConnect', walletId);
45
51
  const injAvailable = connector.isConnectionModeAvailable('injected', walletId);
@@ -52,10 +58,11 @@ export function useConnection(walletId) {
52
58
  checkState();
53
59
  const unsubscribe = connector.subscribe(checkState);
54
60
  return unsubscribe;
55
- }, [connector, walletId]);
61
+ }, [connector, walletId, walletConnectLoading, tonConnectLoading]);
56
62
  const connectWalletConnect = useCallback(async (networkId) => {
57
63
  setWalletConnectLoading(true);
58
64
  setWalletConnectError(undefined);
65
+ setWalletConnectURI(undefined);
59
66
  // Keep retrying if the proposal expires
60
67
  let retrying = true;
61
68
  while (retrying) {
@@ -77,6 +84,7 @@ export function useConnection(walletId) {
77
84
  }
78
85
  }
79
86
  setWalletConnectLoading(false);
87
+ setWalletConnectURI(undefined);
80
88
  }, [connector, walletId]);
81
89
  const connectInjected = useCallback(async (networkId) => {
82
90
  setInjectedLoading(true);
@@ -96,8 +104,10 @@ export function useConnection(walletId) {
96
104
  const connectTonConnect = useCallback(async (networkId) => {
97
105
  setTonConnectLoading(true);
98
106
  setTonConnectError(undefined);
107
+ setTonConnectURI(undefined);
99
108
  try {
100
109
  await connector.connect('tonConnect', walletId, networkId);
110
+ setTonConnectURI(undefined);
101
111
  }
102
112
  catch (error) {
103
113
  const walletError = error;
@@ -111,7 +121,7 @@ export function useConnection(walletId) {
111
121
  return {
112
122
  walletConnect: {
113
123
  connect: connectWalletConnect,
114
- connectionURI,
124
+ connectionURI: walletConnectURI,
115
125
  isLoading: walletConnectLoading,
116
126
  error: walletConnectError,
117
127
  available: walletConnectAvailable
@@ -124,6 +134,7 @@ export function useConnection(walletId) {
124
134
  },
125
135
  tonConnect: {
126
136
  connect: connectTonConnect,
137
+ connectionURI: tonConnectURI,
127
138
  isLoading: tonConnectLoading,
128
139
  error: tonConnectError,
129
140
  available: tonConnectAvailable
@@ -1 +1 @@
1
- {"version":3,"file":"useConnection.js","sourceRoot":"","sources":["../../src/hooks/useConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useConnection.js","sourceRoot":"","sources":["../../src/hooks/useConnection.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@meshconnect/uwc-react",
3
- "version": "0.4.1",
3
+ "version": "0.5.1",
4
4
  "description": "React hooks and components for Universal Wallet Connector",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -16,8 +16,8 @@
16
16
  "src"
17
17
  ],
18
18
  "dependencies": {
19
- "@meshconnect/uwc-core": "0.5.1",
20
- "@meshconnect/uwc-types": "0.8.1"
19
+ "@meshconnect/uwc-core": "0.6.1",
20
+ "@meshconnect/uwc-types": "0.10.0"
21
21
  },
22
22
  "peerDependencies": {
23
23
  "react": "^18.0.0",
@@ -40,7 +40,8 @@ export function useConnection(walletId: string): UseConnectionReturn {
40
40
  WalletError | undefined
41
41
  >()
42
42
  const [injectedError, setInjectedError] = useState<WalletError | undefined>()
43
- const [connectionURI, setConnectionURI] = useState<string | undefined>()
43
+ const [walletConnectURI, setWalletConnectURI] = useState<string | undefined>()
44
+ const [tonConnectURI, setTonConnectURI] = useState<string | undefined>()
44
45
  const [tonConnectLoading, setTonConnectLoading] = useState(false)
45
46
  const [tonConnectError, setTonConnectError] = useState<
46
47
  WalletError | undefined
@@ -53,7 +54,13 @@ export function useConnection(walletId: string): UseConnectionReturn {
53
54
  useEffect(() => {
54
55
  const checkState = () => {
55
56
  const uri = connector.getConnectionURI()
56
- setConnectionURI(uri)
57
+
58
+ if (walletConnectLoading) {
59
+ setWalletConnectURI(uri)
60
+ }
61
+ if (tonConnectLoading) {
62
+ setTonConnectURI(uri)
63
+ }
57
64
 
58
65
  // Check availability for both connection modes
59
66
  const wcAvailable = connector.isConnectionModeAvailable(
@@ -78,12 +85,13 @@ export function useConnection(walletId: string): UseConnectionReturn {
78
85
  const unsubscribe = connector.subscribe(checkState)
79
86
 
80
87
  return unsubscribe
81
- }, [connector, walletId])
88
+ }, [connector, walletId, walletConnectLoading, tonConnectLoading])
82
89
 
83
90
  const connectWalletConnect = useCallback(
84
91
  async (networkId?: NetworkId) => {
85
92
  setWalletConnectLoading(true)
86
93
  setWalletConnectError(undefined)
94
+ setWalletConnectURI(undefined)
87
95
 
88
96
  // Keep retrying if the proposal expires
89
97
  let retrying = true
@@ -108,6 +116,7 @@ export function useConnection(walletId: string): UseConnectionReturn {
108
116
  }
109
117
 
110
118
  setWalletConnectLoading(false)
119
+ setWalletConnectURI(undefined)
111
120
  },
112
121
  [connector, walletId]
113
122
  )
@@ -133,8 +142,10 @@ export function useConnection(walletId: string): UseConnectionReturn {
133
142
  async (networkId?: NetworkId) => {
134
143
  setTonConnectLoading(true)
135
144
  setTonConnectError(undefined)
145
+ setTonConnectURI(undefined)
136
146
  try {
137
147
  await connector.connect('tonConnect', walletId, networkId)
148
+ setTonConnectURI(undefined)
138
149
  } catch (error) {
139
150
  const walletError = error as WalletError
140
151
  setTonConnectError(walletError)
@@ -149,7 +160,7 @@ export function useConnection(walletId: string): UseConnectionReturn {
149
160
  return {
150
161
  walletConnect: {
151
162
  connect: connectWalletConnect,
152
- connectionURI,
163
+ connectionURI: walletConnectURI,
153
164
  isLoading: walletConnectLoading,
154
165
  error: walletConnectError,
155
166
  available: walletConnectAvailable
@@ -162,6 +173,7 @@ export function useConnection(walletId: string): UseConnectionReturn {
162
173
  },
163
174
  tonConnect: {
164
175
  connect: connectTonConnect,
176
+ connectionURI: tonConnectURI,
165
177
  isLoading: tonConnectLoading,
166
178
  error: tonConnectError,
167
179
  available: tonConnectAvailable