@onekeyfe/cross-inpage-provider-core 1.1.36 → 1.1.38
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/dist/JsBridgeBase.d.ts +4 -2
- package/dist/JsBridgeBase.js +10 -5
- package/dist/cjs/JsBridgeBase.js +10 -5
- package/dist/cjs/injectedProviderReceiveHandler.js +10 -3
- package/dist/cjs/versionInfo.js +1 -1
- package/dist/injectedProviderReceiveHandler.d.ts +1 -1
- package/dist/injectedProviderReceiveHandler.js +10 -3
- package/dist/versionInfo.js +1 -1
- package/package.json +5 -5
package/dist/JsBridgeBase.d.ts
CHANGED
|
@@ -50,17 +50,19 @@ declare abstract class JsBridgeBase extends CrossEventEmitter {
|
|
|
50
50
|
remoteId?: number | string | null;
|
|
51
51
|
scope?: IInjectedProviderNamesStrings;
|
|
52
52
|
}): Promise<IJsonRpcResponse<unknown>> | undefined;
|
|
53
|
-
response({ id, data, remoteId, scope, }: {
|
|
53
|
+
response({ id, data, remoteId, scope, peerOrigin, }: {
|
|
54
54
|
id: number;
|
|
55
55
|
data: unknown;
|
|
56
56
|
scope?: IInjectedProviderNamesStrings;
|
|
57
57
|
remoteId?: number | string | null;
|
|
58
|
+
peerOrigin?: string;
|
|
58
59
|
}): void;
|
|
59
|
-
responseError({ id, error, scope, remoteId, }: {
|
|
60
|
+
responseError({ id, error, scope, remoteId, peerOrigin, }: {
|
|
60
61
|
id: number;
|
|
61
62
|
error: unknown;
|
|
62
63
|
scope?: IInjectedProviderNamesStrings;
|
|
63
64
|
remoteId?: number | string | null;
|
|
65
|
+
peerOrigin?: string;
|
|
64
66
|
}): void;
|
|
65
67
|
abstract sendPayload(payload: IJsBridgeMessagePayload | string): void;
|
|
66
68
|
}
|
package/dist/JsBridgeBase.js
CHANGED
|
@@ -60,6 +60,7 @@ class JsBridgeBase extends CrossEventEmitter {
|
|
|
60
60
|
scope: message.scope,
|
|
61
61
|
remoteId: message.remoteId,
|
|
62
62
|
data: returnValue,
|
|
63
|
+
peerOrigin: message.origin,
|
|
63
64
|
});
|
|
64
65
|
}
|
|
65
66
|
}
|
|
@@ -71,6 +72,7 @@ class JsBridgeBase extends CrossEventEmitter {
|
|
|
71
72
|
scope: message.scope,
|
|
72
73
|
remoteId: message.remoteId,
|
|
73
74
|
error,
|
|
75
|
+
peerOrigin: message.origin,
|
|
74
76
|
});
|
|
75
77
|
}
|
|
76
78
|
this.emit(BRIDGE_EVENTS.error, error);
|
|
@@ -137,7 +139,7 @@ class JsBridgeBase extends CrossEventEmitter {
|
|
|
137
139
|
payload === null || payload === void 0 ? true : delete payload.reject;
|
|
138
140
|
return payload;
|
|
139
141
|
}
|
|
140
|
-
send({ type, data, error, id, remoteId, sync = false, scope }) {
|
|
142
|
+
send({ type, data, error, id, remoteId, sync = false, scope, peerOrigin, }) {
|
|
141
143
|
const executor = (resolve, reject) => {
|
|
142
144
|
var _a, _b, _c;
|
|
143
145
|
// TODO check resolve when calling without await
|
|
@@ -154,6 +156,7 @@ class JsBridgeBase extends CrossEventEmitter {
|
|
|
154
156
|
error,
|
|
155
157
|
type,
|
|
156
158
|
origin: ((_a = globalWindow === null || globalWindow === void 0 ? void 0 : globalWindow.location) === null || _a === void 0 ? void 0 : _a.origin) || '',
|
|
159
|
+
peerOrigin,
|
|
157
160
|
remoteId,
|
|
158
161
|
scope,
|
|
159
162
|
}, { resolve, reject });
|
|
@@ -228,8 +231,8 @@ class JsBridgeBase extends CrossEventEmitter {
|
|
|
228
231
|
return;
|
|
229
232
|
}
|
|
230
233
|
const now = Date.now();
|
|
231
|
-
|
|
232
|
-
for (
|
|
234
|
+
const callbacksLength = this.callbacks.length;
|
|
235
|
+
for (let id = 0; id < callbacksLength; id++) {
|
|
233
236
|
const callbackInfo = this.callbacks[id];
|
|
234
237
|
if (callbackInfo && callbackInfo.created) {
|
|
235
238
|
if (now - callbackInfo.created > this.callbacksExpireTimeout) {
|
|
@@ -340,7 +343,7 @@ class JsBridgeBase extends CrossEventEmitter {
|
|
|
340
343
|
});
|
|
341
344
|
}
|
|
342
345
|
// send response DATA to remote
|
|
343
|
-
response({ id, data, remoteId, scope, }) {
|
|
346
|
+
response({ id, data, remoteId, scope, peerOrigin, }) {
|
|
344
347
|
void this.send({
|
|
345
348
|
type: IJsBridgeMessageTypes.RESPONSE,
|
|
346
349
|
data,
|
|
@@ -348,10 +351,11 @@ class JsBridgeBase extends CrossEventEmitter {
|
|
|
348
351
|
remoteId,
|
|
349
352
|
scope,
|
|
350
353
|
sync: true,
|
|
354
|
+
peerOrigin,
|
|
351
355
|
});
|
|
352
356
|
}
|
|
353
357
|
// send response ERROR to remote
|
|
354
|
-
responseError({ id, error, scope, remoteId, }) {
|
|
358
|
+
responseError({ id, error, scope, remoteId, peerOrigin, }) {
|
|
355
359
|
void this.send({
|
|
356
360
|
type: IJsBridgeMessageTypes.RESPONSE,
|
|
357
361
|
error,
|
|
@@ -359,6 +363,7 @@ class JsBridgeBase extends CrossEventEmitter {
|
|
|
359
363
|
remoteId,
|
|
360
364
|
scope,
|
|
361
365
|
sync: true,
|
|
366
|
+
peerOrigin,
|
|
362
367
|
});
|
|
363
368
|
}
|
|
364
369
|
}
|
package/dist/cjs/JsBridgeBase.js
CHANGED
|
@@ -67,6 +67,7 @@ class JsBridgeBase extends CrossEventEmitter_1.CrossEventEmitter {
|
|
|
67
67
|
scope: message.scope,
|
|
68
68
|
remoteId: message.remoteId,
|
|
69
69
|
data: returnValue,
|
|
70
|
+
peerOrigin: message.origin,
|
|
70
71
|
});
|
|
71
72
|
}
|
|
72
73
|
}
|
|
@@ -78,6 +79,7 @@ class JsBridgeBase extends CrossEventEmitter_1.CrossEventEmitter {
|
|
|
78
79
|
scope: message.scope,
|
|
79
80
|
remoteId: message.remoteId,
|
|
80
81
|
error,
|
|
82
|
+
peerOrigin: message.origin,
|
|
81
83
|
});
|
|
82
84
|
}
|
|
83
85
|
this.emit(BRIDGE_EVENTS.error, error);
|
|
@@ -144,7 +146,7 @@ class JsBridgeBase extends CrossEventEmitter_1.CrossEventEmitter {
|
|
|
144
146
|
payload === null || payload === void 0 ? true : delete payload.reject;
|
|
145
147
|
return payload;
|
|
146
148
|
}
|
|
147
|
-
send({ type, data, error, id, remoteId, sync = false, scope }) {
|
|
149
|
+
send({ type, data, error, id, remoteId, sync = false, scope, peerOrigin, }) {
|
|
148
150
|
const executor = (resolve, reject) => {
|
|
149
151
|
var _a, _b, _c;
|
|
150
152
|
// TODO check resolve when calling without await
|
|
@@ -161,6 +163,7 @@ class JsBridgeBase extends CrossEventEmitter_1.CrossEventEmitter {
|
|
|
161
163
|
error,
|
|
162
164
|
type,
|
|
163
165
|
origin: ((_a = globalWindow === null || globalWindow === void 0 ? void 0 : globalWindow.location) === null || _a === void 0 ? void 0 : _a.origin) || '',
|
|
166
|
+
peerOrigin,
|
|
164
167
|
remoteId,
|
|
165
168
|
scope,
|
|
166
169
|
}, { resolve, reject });
|
|
@@ -235,8 +238,8 @@ class JsBridgeBase extends CrossEventEmitter_1.CrossEventEmitter {
|
|
|
235
238
|
return;
|
|
236
239
|
}
|
|
237
240
|
const now = Date.now();
|
|
238
|
-
|
|
239
|
-
for (
|
|
241
|
+
const callbacksLength = this.callbacks.length;
|
|
242
|
+
for (let id = 0; id < callbacksLength; id++) {
|
|
240
243
|
const callbackInfo = this.callbacks[id];
|
|
241
244
|
if (callbackInfo && callbackInfo.created) {
|
|
242
245
|
if (now - callbackInfo.created > this.callbacksExpireTimeout) {
|
|
@@ -347,7 +350,7 @@ class JsBridgeBase extends CrossEventEmitter_1.CrossEventEmitter {
|
|
|
347
350
|
});
|
|
348
351
|
}
|
|
349
352
|
// send response DATA to remote
|
|
350
|
-
response({ id, data, remoteId, scope, }) {
|
|
353
|
+
response({ id, data, remoteId, scope, peerOrigin, }) {
|
|
351
354
|
void this.send({
|
|
352
355
|
type: cross_inpage_provider_types_1.IJsBridgeMessageTypes.RESPONSE,
|
|
353
356
|
data,
|
|
@@ -355,10 +358,11 @@ class JsBridgeBase extends CrossEventEmitter_1.CrossEventEmitter {
|
|
|
355
358
|
remoteId,
|
|
356
359
|
scope,
|
|
357
360
|
sync: true,
|
|
361
|
+
peerOrigin,
|
|
358
362
|
});
|
|
359
363
|
}
|
|
360
364
|
// send response ERROR to remote
|
|
361
|
-
responseError({ id, error, scope, remoteId, }) {
|
|
365
|
+
responseError({ id, error, scope, remoteId, peerOrigin, }) {
|
|
362
366
|
void this.send({
|
|
363
367
|
type: cross_inpage_provider_types_1.IJsBridgeMessageTypes.RESPONSE,
|
|
364
368
|
error,
|
|
@@ -366,6 +370,7 @@ class JsBridgeBase extends CrossEventEmitter_1.CrossEventEmitter {
|
|
|
366
370
|
remoteId,
|
|
367
371
|
scope,
|
|
368
372
|
sync: true,
|
|
373
|
+
peerOrigin,
|
|
369
374
|
});
|
|
370
375
|
}
|
|
371
376
|
}
|
|
@@ -11,9 +11,8 @@ function injectedProviderReceiveHandler(payload, bridge) {
|
|
|
11
11
|
(0, loggers_1.consoleErrorInDev)('providerName (scope) is required in injectedProviderReceiveHandler.');
|
|
12
12
|
return;
|
|
13
13
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
.filter(Boolean);
|
|
14
|
+
let providers = [];
|
|
15
|
+
providers = providers.concat(providerHub[providerName]).filter(Boolean);
|
|
17
16
|
if (!providers || !providers.length) {
|
|
18
17
|
(0, loggers_1.consoleErrorInDev)(`[${providerName}] provider is NOT injected to document or bridge.`, payloadData);
|
|
19
18
|
return;
|
|
@@ -22,7 +21,15 @@ function injectedProviderReceiveHandler(payload, bridge) {
|
|
|
22
21
|
providers.forEach((provider) => {
|
|
23
22
|
if (provider && provider.emit) {
|
|
24
23
|
provider.emit('message_low_level', payloadData);
|
|
24
|
+
provider.emit('message_payload_raw', payload);
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
|
+
// $private custom provider receive handler
|
|
28
|
+
if (providerName === '$private') {
|
|
29
|
+
const privateProvider = providers[0];
|
|
30
|
+
if (privateProvider && privateProvider.webembedReceiveHandler) {
|
|
31
|
+
return privateProvider.webembedReceiveHandler(payload, bridge);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
27
34
|
}
|
|
28
35
|
exports.injectedProviderReceiveHandler = injectedProviderReceiveHandler;
|
package/dist/cjs/versionInfo.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { IJsBridgeMessagePayload } from '@onekeyfe/cross-inpage-provider-types';
|
|
2
2
|
import { JsBridgeBase } from './JsBridgeBase';
|
|
3
|
-
declare function injectedProviderReceiveHandler(payload: IJsBridgeMessagePayload, bridge?: JsBridgeBase):
|
|
3
|
+
declare function injectedProviderReceiveHandler(payload: IJsBridgeMessagePayload, bridge?: JsBridgeBase): unknown;
|
|
4
4
|
export { injectedProviderReceiveHandler };
|
|
@@ -8,9 +8,8 @@ function injectedProviderReceiveHandler(payload, bridge) {
|
|
|
8
8
|
consoleErrorInDev('providerName (scope) is required in injectedProviderReceiveHandler.');
|
|
9
9
|
return;
|
|
10
10
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
.filter(Boolean);
|
|
11
|
+
let providers = [];
|
|
12
|
+
providers = providers.concat(providerHub[providerName]).filter(Boolean);
|
|
14
13
|
if (!providers || !providers.length) {
|
|
15
14
|
consoleErrorInDev(`[${providerName}] provider is NOT injected to document or bridge.`, payloadData);
|
|
16
15
|
return;
|
|
@@ -19,7 +18,15 @@ function injectedProviderReceiveHandler(payload, bridge) {
|
|
|
19
18
|
providers.forEach((provider) => {
|
|
20
19
|
if (provider && provider.emit) {
|
|
21
20
|
provider.emit('message_low_level', payloadData);
|
|
21
|
+
provider.emit('message_payload_raw', payload);
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
+
// $private custom provider receive handler
|
|
25
|
+
if (providerName === '$private') {
|
|
26
|
+
const privateProvider = providers[0];
|
|
27
|
+
if (privateProvider && privateProvider.webembedReceiveHandler) {
|
|
28
|
+
return privateProvider.webembedReceiveHandler(payload, bridge);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
24
31
|
}
|
|
25
32
|
export { injectedProviderReceiveHandler };
|
package/dist/versionInfo.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@onekeyfe/cross-inpage-provider-core",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.38",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"cross-inpage-provider"
|
|
6
6
|
],
|
|
@@ -29,12 +29,12 @@
|
|
|
29
29
|
"build-version-info": "node ./scripts/buildVersionInfo.js"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@onekeyfe/cross-inpage-provider-errors": "1.1.
|
|
33
|
-
"@onekeyfe/cross-inpage-provider-events": "1.1.
|
|
34
|
-
"@onekeyfe/cross-inpage-provider-types": "1.1.
|
|
32
|
+
"@onekeyfe/cross-inpage-provider-errors": "1.1.38",
|
|
33
|
+
"@onekeyfe/cross-inpage-provider-events": "1.1.38",
|
|
34
|
+
"@onekeyfe/cross-inpage-provider-types": "1.1.38",
|
|
35
35
|
"events": "^3.3.0",
|
|
36
36
|
"lodash": "^4.17.21",
|
|
37
37
|
"ms": "^2.1.3"
|
|
38
38
|
},
|
|
39
|
-
"gitHead": "
|
|
39
|
+
"gitHead": "260c2345f2591463b20c0f0c855961fe509d01de"
|
|
40
40
|
}
|