@onekeyfe/onekey-cross-webview 1.1.0 → 1.1.2

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.
@@ -51,14 +51,14 @@ const DesktopWebView = forwardRef((_a, ref) => {
51
51
  (_a = webviewRef.current) === null || _a === void 0 ? void 0 : _a.closeDevTools();
52
52
  }, []);
53
53
  // TODO extract to hooks
54
- const jsBridge = useMemo(() => new JsBridgeDesktopHost({
54
+ const jsBridgeHost = useMemo(() => new JsBridgeDesktopHost({
55
55
  webviewRef,
56
56
  receiveHandler,
57
57
  }), [receiveHandler]);
58
58
  useImperativeHandle(ref, () => {
59
59
  const wrapper = {
60
60
  innerRef: webviewRef.current,
61
- jsBridge,
61
+ jsBridge: jsBridgeHost,
62
62
  reload: () => { var _a; return (_a = webviewRef.current) === null || _a === void 0 ? void 0 : _a.reload(); },
63
63
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
64
64
  loadURL: (url, options) => {
@@ -73,7 +73,7 @@ const DesktopWebView = forwardRef((_a, ref) => {
73
73
  // webviewRef.current?.loadURL(url);
74
74
  },
75
75
  };
76
- jsBridge.webviewWrapper = wrapper;
76
+ jsBridgeHost.webviewWrapper = wrapper;
77
77
  return wrapper;
78
78
  });
79
79
  const initWebviewByRef = useCallback(($ref) => {
@@ -98,7 +98,7 @@ const DesktopWebView = forwardRef((_a, ref) => {
98
98
  const uri = new URL(url);
99
99
  origin = (uri === null || uri === void 0 ? void 0 : uri.origin) || '';
100
100
  // - receive
101
- jsBridge.receive(data, { origin });
101
+ jsBridgeHost.receive(data, { origin });
102
102
  }
103
103
  else {
104
104
  // TODO log error if url is empty
@@ -111,7 +111,7 @@ const DesktopWebView = forwardRef((_a, ref) => {
111
111
  return () => {
112
112
  webview.removeEventListener('ipc-message', handleMessage);
113
113
  };
114
- }, [jsBridge, isIpcReady, isWebviewReady, src]);
114
+ }, [jsBridgeHost, isIpcReady, isWebviewReady, src]);
115
115
  const preloadJsUrl = usePreloadJsUrl();
116
116
  if (!preloadJsUrl) {
117
117
  return null;
@@ -1,4 +1,4 @@
1
- import { JsBridgeBase, injectedFactory, appDebugLogger, } from '@onekeyfe/cross-inpage-provider-core';
1
+ import { JsBridgeBase, } from '@onekeyfe/cross-inpage-provider-core';
2
2
  class JsBridgeDesktopHost extends JsBridgeBase {
3
3
  constructor(config) {
4
4
  super(config);
@@ -6,16 +6,19 @@ class JsBridgeDesktopHost extends JsBridgeBase {
6
6
  this.webviewRef = config.webviewRef;
7
7
  }
8
8
  sendPayload(payload) {
9
- var _a, _b;
9
+ var _a;
10
10
  if (this.webviewRef && this.webviewRef.current) {
11
11
  const payloadStr = payload;
12
- const inpageReceiveCode = injectedFactory.createCodeJsBridgeReceive(payloadStr);
13
- if (this.webviewRef.current && this.webviewRef.current.executeJavaScript) {
14
- appDebugLogger.webview('executeJavaScript', inpageReceiveCode, payload);
15
- (_b = (_a = this.webviewRef.current) === null || _a === void 0 ? void 0 : _a.executeJavaScript) === null || _b === void 0 ? void 0 : _b.call(_a, inpageReceiveCode);
12
+ if (this.webviewRef.current) {
13
+ // *** executeJavaScript will be blocked by head script loading
14
+ // const inpageReceiveCode = injectedFactory.createCodeJsBridgeReceive(payloadStr);
15
+ // appDebugLogger.webview('executeJavaScript', inpageReceiveCode, payload);
16
+ // this.webviewRef.current?.executeJavaScript?.(inpageReceiveCode);
17
+ // *** use ipcRenderer.on instead
18
+ (_a = this.webviewRef.current) === null || _a === void 0 ? void 0 : _a.send('JsBridgeDesktopHostToInjected', payloadStr);
16
19
  }
17
20
  else {
18
- throw new Error('JsBridgeDesktopHost executeJavaScript failed: webview ref not ready yet');
21
+ throw new Error('JsBridgeDesktopHost executeJavaScript failed: webview ref not ready yet.');
19
22
  }
20
23
  }
21
24
  }
@@ -73,14 +73,14 @@ const DesktopWebView = (0, react_1.forwardRef)((_a, ref) => {
73
73
  (_a = webviewRef.current) === null || _a === void 0 ? void 0 : _a.closeDevTools();
74
74
  }, []);
75
75
  // TODO extract to hooks
76
- const jsBridge = (0, react_1.useMemo)(() => new JsBridgeDesktopHost_1.JsBridgeDesktopHost({
76
+ const jsBridgeHost = (0, react_1.useMemo)(() => new JsBridgeDesktopHost_1.JsBridgeDesktopHost({
77
77
  webviewRef,
78
78
  receiveHandler,
79
79
  }), [receiveHandler]);
80
80
  (0, react_1.useImperativeHandle)(ref, () => {
81
81
  const wrapper = {
82
82
  innerRef: webviewRef.current,
83
- jsBridge,
83
+ jsBridge: jsBridgeHost,
84
84
  reload: () => { var _a; return (_a = webviewRef.current) === null || _a === void 0 ? void 0 : _a.reload(); },
85
85
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
86
86
  loadURL: (url, options) => {
@@ -95,7 +95,7 @@ const DesktopWebView = (0, react_1.forwardRef)((_a, ref) => {
95
95
  // webviewRef.current?.loadURL(url);
96
96
  },
97
97
  };
98
- jsBridge.webviewWrapper = wrapper;
98
+ jsBridgeHost.webviewWrapper = wrapper;
99
99
  return wrapper;
100
100
  });
101
101
  const initWebviewByRef = (0, react_1.useCallback)(($ref) => {
@@ -120,7 +120,7 @@ const DesktopWebView = (0, react_1.forwardRef)((_a, ref) => {
120
120
  const uri = new URL(url);
121
121
  origin = (uri === null || uri === void 0 ? void 0 : uri.origin) || '';
122
122
  // - receive
123
- jsBridge.receive(data, { origin });
123
+ jsBridgeHost.receive(data, { origin });
124
124
  }
125
125
  else {
126
126
  // TODO log error if url is empty
@@ -133,7 +133,7 @@ const DesktopWebView = (0, react_1.forwardRef)((_a, ref) => {
133
133
  return () => {
134
134
  webview.removeEventListener('ipc-message', handleMessage);
135
135
  };
136
- }, [jsBridge, isIpcReady, isWebviewReady, src]);
136
+ }, [jsBridgeHost, isIpcReady, isWebviewReady, src]);
137
137
  const preloadJsUrl = usePreloadJsUrl();
138
138
  if (!preloadJsUrl) {
139
139
  return null;
@@ -9,16 +9,19 @@ class JsBridgeDesktopHost extends cross_inpage_provider_core_1.JsBridgeBase {
9
9
  this.webviewRef = config.webviewRef;
10
10
  }
11
11
  sendPayload(payload) {
12
- var _a, _b;
12
+ var _a;
13
13
  if (this.webviewRef && this.webviewRef.current) {
14
14
  const payloadStr = payload;
15
- const inpageReceiveCode = cross_inpage_provider_core_1.injectedFactory.createCodeJsBridgeReceive(payloadStr);
16
- if (this.webviewRef.current && this.webviewRef.current.executeJavaScript) {
17
- cross_inpage_provider_core_1.appDebugLogger.webview('executeJavaScript', inpageReceiveCode, payload);
18
- (_b = (_a = this.webviewRef.current) === null || _a === void 0 ? void 0 : _a.executeJavaScript) === null || _b === void 0 ? void 0 : _b.call(_a, inpageReceiveCode);
15
+ if (this.webviewRef.current) {
16
+ // *** executeJavaScript will be blocked by head script loading
17
+ // const inpageReceiveCode = injectedFactory.createCodeJsBridgeReceive(payloadStr);
18
+ // appDebugLogger.webview('executeJavaScript', inpageReceiveCode, payload);
19
+ // this.webviewRef.current?.executeJavaScript?.(inpageReceiveCode);
20
+ // *** use ipcRenderer.on instead
21
+ (_a = this.webviewRef.current) === null || _a === void 0 ? void 0 : _a.send('JsBridgeDesktopHostToInjected', payloadStr);
19
22
  }
20
23
  else {
21
- throw new Error('JsBridgeDesktopHost executeJavaScript failed: webview ref not ready yet');
24
+ throw new Error('JsBridgeDesktopHost executeJavaScript failed: webview ref not ready yet.');
22
25
  }
23
26
  }
24
27
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onekeyfe/onekey-cross-webview",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "keywords": [
5
5
  "cross-inpage-provider"
6
6
  ],
@@ -34,9 +34,9 @@
34
34
  "electron": "^17.2.0"
35
35
  },
36
36
  "dependencies": {
37
- "@onekeyfe/cross-inpage-provider-core": "1.1.0",
38
- "@onekeyfe/cross-inpage-provider-types": "1.1.0",
37
+ "@onekeyfe/cross-inpage-provider-core": "1.1.2",
38
+ "@onekeyfe/cross-inpage-provider-types": "1.1.2",
39
39
  "react-native-webview": "^11.17.2"
40
40
  },
41
- "gitHead": "4c6356afe693de7bf11cceeafb36f9708a42876d"
41
+ "gitHead": "08aef327a2fec587de325b1f9dc69caa97a86686"
42
42
  }