@shadow-corp/nearconnect 1.0.4 → 1.0.5
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.
|
@@ -16,6 +16,8 @@ export interface InjectedWalletInfo {
|
|
|
16
16
|
altKeys?: string[];
|
|
17
17
|
/** Website URL */
|
|
18
18
|
website: string;
|
|
19
|
+
/** Uses HOT Protocol (hotWalletsProviders array) */
|
|
20
|
+
usesHotProtocol?: boolean;
|
|
19
21
|
}
|
|
20
22
|
export interface DetectedWallet {
|
|
21
23
|
info: InjectedWalletInfo;
|
|
@@ -43,6 +45,11 @@ export declare class InjectedWalletDetector {
|
|
|
43
45
|
* Directly probe window globals for known wallets
|
|
44
46
|
*/
|
|
45
47
|
private probeGlobals;
|
|
48
|
+
/**
|
|
49
|
+
* Probe HOT Protocol providers (used by Meteor and potentially others)
|
|
50
|
+
* HOT Protocol injects wallet providers into window.hotWalletsProviders array
|
|
51
|
+
*/
|
|
52
|
+
private probeHotProtocol;
|
|
46
53
|
/**
|
|
47
54
|
* Find provider by checking global key and alternatives
|
|
48
55
|
*/
|
|
@@ -15,9 +15,10 @@ const KNOWN_INJECTED_WALLETS = [
|
|
|
15
15
|
id: 'meteor-wallet',
|
|
16
16
|
name: 'Meteor Wallet',
|
|
17
17
|
icon: 'https://wallet.meteorwallet.app/assets/logo.svg',
|
|
18
|
-
globalKey: '
|
|
19
|
-
altKeys: ['
|
|
18
|
+
globalKey: 'hotWalletsProviders', // Meteor uses HOT Protocol
|
|
19
|
+
altKeys: ['meteorCom', 'hotWallet'],
|
|
20
20
|
website: 'https://wallet.meteorwallet.app',
|
|
21
|
+
usesHotProtocol: true,
|
|
21
22
|
},
|
|
22
23
|
{
|
|
23
24
|
id: 'sender',
|
|
@@ -122,9 +123,12 @@ class InjectedWalletDetector {
|
|
|
122
123
|
* Directly probe window globals for known wallets
|
|
123
124
|
*/
|
|
124
125
|
probeGlobals() {
|
|
126
|
+
// First, check HOT Protocol providers (hotWalletsProviders array)
|
|
127
|
+
this.probeHotProtocol();
|
|
128
|
+
// Then check regular globals
|
|
125
129
|
for (const wallet of KNOWN_INJECTED_WALLETS) {
|
|
126
|
-
// Skip if already detected
|
|
127
|
-
if (this.detected.has(wallet.id))
|
|
130
|
+
// Skip if already detected or uses HOT Protocol (handled separately)
|
|
131
|
+
if (this.detected.has(wallet.id) || wallet.usesHotProtocol)
|
|
128
132
|
continue;
|
|
129
133
|
const provider = this.findProvider(wallet);
|
|
130
134
|
if (provider) {
|
|
@@ -132,6 +136,44 @@ class InjectedWalletDetector {
|
|
|
132
136
|
}
|
|
133
137
|
}
|
|
134
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* Probe HOT Protocol providers (used by Meteor and potentially others)
|
|
141
|
+
* HOT Protocol injects wallet providers into window.hotWalletsProviders array
|
|
142
|
+
*/
|
|
143
|
+
probeHotProtocol() {
|
|
144
|
+
const win = window;
|
|
145
|
+
const hotProviders = win['hotWalletsProviders'];
|
|
146
|
+
if (!Array.isArray(hotProviders))
|
|
147
|
+
return;
|
|
148
|
+
for (const provider of hotProviders) {
|
|
149
|
+
if (!provider || typeof provider !== 'object')
|
|
150
|
+
continue;
|
|
151
|
+
const p = provider;
|
|
152
|
+
const providerId = p.id;
|
|
153
|
+
const providerName = p.name;
|
|
154
|
+
if (!providerId)
|
|
155
|
+
continue;
|
|
156
|
+
// Skip if already detected
|
|
157
|
+
if (this.detected.has(providerId))
|
|
158
|
+
continue;
|
|
159
|
+
// Find matching known wallet config
|
|
160
|
+
const knownWallet = KNOWN_INJECTED_WALLETS.find((w) => w.usesHotProtocol && (w.id === providerId || w.name === providerName));
|
|
161
|
+
// Create wallet info (use known config or create from provider)
|
|
162
|
+
const walletInfo = knownWallet || {
|
|
163
|
+
id: providerId,
|
|
164
|
+
name: providerName || providerId,
|
|
165
|
+
icon: p.icon || '',
|
|
166
|
+
globalKey: 'hotWalletsProviders',
|
|
167
|
+
website: p.website || '',
|
|
168
|
+
usesHotProtocol: true,
|
|
169
|
+
};
|
|
170
|
+
// Validate it has wallet methods
|
|
171
|
+
if (this.isValidProvider(provider)) {
|
|
172
|
+
console.log(`[NearConnect] Detected HOT Protocol wallet: ${walletInfo.name}`);
|
|
173
|
+
this.addDetected(walletInfo, provider);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
135
177
|
/**
|
|
136
178
|
* Find provider by checking global key and alternatives
|
|
137
179
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detector.js","sourceRoot":"","sources":["../../../src/wallets/injected/detector.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;
|
|
1
|
+
{"version":3,"file":"detector.js","sourceRoot":"","sources":["../../../src/wallets/injected/detector.ts"],"names":[],"mappings":"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"}
|