@react-native-ohos/react-native-webview 13.10.5-rc.2 → 13.15.1-rc.3

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.
Files changed (44) hide show
  1. package/LICENSE +1 -1
  2. package/README.OpenSource +11 -0
  3. package/README.md +2 -2
  4. package/harmony/rn_webview/index.ets +4 -25
  5. package/harmony/rn_webview/oh-package.json5 +2 -2
  6. package/harmony/rn_webview/src/main/cpp/WebViewPackage.h +4 -24
  7. package/harmony/rn_webview/src/main/cpp/generated/RNOH/generated/BaseReactNativeWebviewPackage.h +69 -69
  8. package/harmony/rn_webview/src/main/cpp/generated/RNOH/generated/components/RNCWebViewJSIBinder.h +109 -116
  9. package/harmony/rn_webview/src/main/cpp/generated/RNOH/generated/turbo_modules/RNCWebView.cpp +1 -3
  10. package/harmony/rn_webview/src/main/cpp/generated/RNOH/generated/turbo_modules/RNCWebViewModule.cpp +1 -3
  11. package/harmony/rn_webview/src/main/cpp/generated/react/renderer/components/react_native_webview/ComponentDescriptors.h +7 -5
  12. package/harmony/rn_webview/src/main/cpp/generated/react/renderer/components/react_native_webview/EventEmitters.cpp +231 -230
  13. package/harmony/rn_webview/src/main/cpp/generated/react/renderer/components/react_native_webview/EventEmitters.h +250 -272
  14. package/harmony/rn_webview/src/main/cpp/generated/react/renderer/components/react_native_webview/Props.cpp +62 -110
  15. package/harmony/rn_webview/src/main/cpp/generated/react/renderer/components/react_native_webview/Props.h +494 -322
  16. package/harmony/rn_webview/src/main/cpp/generated/react/renderer/components/react_native_webview/ShadowNodes.cpp +4 -6
  17. package/harmony/rn_webview/src/main/cpp/generated/react/renderer/components/react_native_webview/ShadowNodes.h +7 -9
  18. package/harmony/rn_webview/src/main/cpp/generated/react/renderer/components/react_native_webview/States.cpp +5 -5
  19. package/harmony/rn_webview/src/main/cpp/generated/react/renderer/components/react_native_webview/States.h +14 -5
  20. package/harmony/rn_webview/src/main/ets/CutomReference.ts +3 -23
  21. package/harmony/rn_webview/src/main/ets/Logger.ts +3 -23
  22. package/harmony/rn_webview/src/main/ets/Magic.ets +3 -24
  23. package/harmony/rn_webview/src/main/ets/RNCWebView.ets +7 -81
  24. package/harmony/rn_webview/src/main/ets/RNCWebViewPackage.ets +5 -33
  25. package/harmony/rn_webview/src/main/ets/ShouldRequestUrl.ts +3 -23
  26. package/harmony/rn_webview/src/main/ets/WebViewBaseOperate.ets +3 -23
  27. package/harmony/rn_webview/src/main/ets/WebViewTurboModule.ets +3 -23
  28. package/harmony/rn_webview/src/main/ets/generated/components/RNCWebView.ts +47 -32
  29. package/harmony/rn_webview/ts.ets +3 -23
  30. package/harmony/rn_webview.har +0 -0
  31. package/package.json +11 -16
  32. package/src/NativeRNCWebView.ts +6 -0
  33. package/src/NativeRNCWebViewModule.ts +5 -3
  34. package/src/RNCWebViewNativeComponent.ts +158 -90
  35. package/src/WebView.harmony.tsx +17 -4
  36. package/src/WebView.tsx +6 -0
  37. package/src/codegenUtils.ts +5 -3
  38. package/src/index.ts +6 -0
  39. package/harmony/rn_webview/BuildProfile.ets +0 -41
  40. package/harmony/rn_webview/LICENSE +0 -21
  41. package/harmony/rn_webview/NOTICE +0 -33
  42. package/harmony/rn_webview/README.OpenSource +0 -11
  43. package/harmony/rn_webview/consumer-rules.txt +0 -0
  44. package/harmony/rn_webview/obfuscation-rules.txt +0 -18
@@ -8,233 +8,234 @@
8
8
  * @generated by codegen project: GenerateEventEmitterCpp.js
9
9
  */
10
10
 
11
- #include <react/renderer/components/react_native_webview/EventEmitters.h>
12
-
13
- namespace facebook {
14
- namespace react {
15
- void RNCWebViewEventEmitter::onContentSizeChange(OnContentSizeChange $event) const
16
- {
17
- dispatchEvent("contentSizeChange", [$event = std::move($event)](jsi::Runtime &runtime) {
18
- auto $payload = jsi::Object(runtime);
19
- $payload.setProperty(runtime, "url", $event.url);
20
- $payload.setProperty(runtime, "loading", $event.loading);
21
- $payload.setProperty(runtime, "title", $event.title);
22
- $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
23
- $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
24
- $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
25
- return $payload;
26
- });
27
- }
28
- void RNCWebViewEventEmitter::onRenderProcessGone(OnRenderProcessGone $event) const
29
- {
30
- dispatchEvent("renderProcessGone", [$event = std::move($event)](jsi::Runtime &runtime) {
31
- auto $payload = jsi::Object(runtime);
32
- $payload.setProperty(runtime, "didCrash", $event.didCrash);
33
- return $payload;
34
- });
35
- }
36
-
37
- void RNCWebViewEventEmitter::onContentProcessDidTerminate(OnContentProcessDidTerminate $event) const
38
- {
39
- dispatchEvent("contentProcessDidTerminate", [$event = std::move($event)](jsi::Runtime &runtime) {
40
- auto $payload = jsi::Object(runtime);
41
- $payload.setProperty(runtime, "url", $event.url);
42
- $payload.setProperty(runtime, "loading", $event.loading);
43
- $payload.setProperty(runtime, "title", $event.title);
44
- $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
45
- $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
46
- $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
47
- return $payload;
48
- });
49
- }
50
-
51
- void RNCWebViewEventEmitter::onCustomMenuSelection(OnCustomMenuSelection $event) const
52
- {
53
- dispatchEvent("customMenuSelection", [$event = std::move($event)](jsi::Runtime &runtime) {
54
- auto $payload = jsi::Object(runtime);
55
- $payload.setProperty(runtime, "label", $event.label);
56
- $payload.setProperty(runtime, "key", $event.key);
57
- $payload.setProperty(runtime, "selectedText", $event.selectedText);
58
- return $payload;
59
- });
60
- }
61
-
62
- void RNCWebViewEventEmitter::onFileDownload(OnFileDownload $event) const
63
- {
64
- dispatchEvent("fileDownload", [$event = std::move($event)](jsi::Runtime &runtime) {
65
- auto $payload = jsi::Object(runtime);
66
- $payload.setProperty(runtime, "downloadUrl", $event.downloadUrl);
67
- return $payload;
68
- });
69
- }
70
-
71
- void RNCWebViewEventEmitter::onLoadingError(OnLoadingError $event) const
72
- {
73
- dispatchEvent("loadingError", [$event = std::move($event)](jsi::Runtime &runtime) {
74
- auto $payload = jsi::Object(runtime);
75
- $payload.setProperty(runtime, "url", $event.url);
76
- $payload.setProperty(runtime, "loading", $event.loading);
77
- $payload.setProperty(runtime, "title", $event.title);
78
- $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
79
- $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
80
- $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
81
- $payload.setProperty(runtime, "domain", $event.domain);
82
- $payload.setProperty(runtime, "code", $event.code);
83
- $payload.setProperty(runtime, "description", $event.description);
84
- return $payload;
85
- });
86
- }
87
-
88
- void RNCWebViewEventEmitter::onLoadingFinish(OnLoadingFinish $event) const
89
- {
90
- dispatchEvent("loadingFinish", [$event = std::move($event)](jsi::Runtime &runtime) {
91
- auto $payload = jsi::Object(runtime);
92
- $payload.setProperty(runtime, "url", $event.url);
93
- $payload.setProperty(runtime, "loading", $event.loading);
94
- $payload.setProperty(runtime, "title", $event.title);
95
- $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
96
- $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
97
- $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
98
- $payload.setProperty(runtime, "navigationType", toString($event.navigationType));
99
- $payload.setProperty(runtime, "mainDocumentURL", $event.mainDocumentURL);
100
- return $payload;
101
- });
102
- }
103
-
104
- void RNCWebViewEventEmitter::onLoadingProgress(OnLoadingProgress $event) const
105
- {
106
- dispatchEvent("loadingProgress", [$event = std::move($event)](jsi::Runtime &runtime) {
107
- auto $payload = jsi::Object(runtime);
108
- $payload.setProperty(runtime, "url", $event.url);
109
- $payload.setProperty(runtime, "loading", $event.loading);
110
- $payload.setProperty(runtime, "title", $event.title);
111
- $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
112
- $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
113
- $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
114
- $payload.setProperty(runtime, "progress", $event.progress);
115
- return $payload;
116
- });
117
- }
118
-
119
- void RNCWebViewEventEmitter::onLoadingStart(OnLoadingStart $event) const
120
- {
121
- dispatchEvent("loadingStart", [$event = std::move($event)](jsi::Runtime &runtime) {
122
- auto $payload = jsi::Object(runtime);
123
- $payload.setProperty(runtime, "url", $event.url);
124
- $payload.setProperty(runtime, "loading", $event.loading);
125
- $payload.setProperty(runtime, "title", $event.title);
126
- $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
127
- $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
128
- $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
129
- $payload.setProperty(runtime, "navigationType", toString($event.navigationType));
130
- $payload.setProperty(runtime, "mainDocumentURL", $event.mainDocumentURL);
131
- return $payload;
132
- });
133
- }
134
-
135
- void RNCWebViewEventEmitter::onHttpError(OnHttpError $event) const
136
- {
137
- dispatchEvent("httpError", [$event = std::move($event)](jsi::Runtime &runtime) {
138
- auto $payload = jsi::Object(runtime);
139
- $payload.setProperty(runtime, "url", $event.url);
140
- $payload.setProperty(runtime, "loading", $event.loading);
141
- $payload.setProperty(runtime, "title", $event.title);
142
- $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
143
- $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
144
- $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
145
- $payload.setProperty(runtime, "description", $event.description);
146
- $payload.setProperty(runtime, "statusCode", $event.statusCode);
147
- return $payload;
148
- });
149
- }
150
-
151
- void RNCWebViewEventEmitter::onMessage(OnMessage $event) const
152
- {
153
- dispatchEvent("message", [$event = std::move($event)](jsi::Runtime &runtime) {
154
- auto $payload = jsi::Object(runtime);
155
- $payload.setProperty(runtime, "url", $event.url);
156
- $payload.setProperty(runtime, "loading", $event.loading);
157
- $payload.setProperty(runtime, "title", $event.title);
158
- $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
159
- $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
160
- $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
161
- $payload.setProperty(runtime, "data", $event.data);
162
- return $payload;
163
- });
164
- }
165
-
166
- void RNCWebViewEventEmitter::onOpenWindow(OnOpenWindow $event) const
167
- {
168
- dispatchEvent("openWindow", [$event = std::move($event)](jsi::Runtime &runtime) {
169
- auto $payload = jsi::Object(runtime);
170
- $payload.setProperty(runtime, "targetUrl", $event.targetUrl);
171
- return $payload;
172
- });
173
- }
174
-
175
- void RNCWebViewEventEmitter::onScroll(OnScroll $event) const
176
- {
177
- dispatchEvent("scroll", [$event = std::move($event)](jsi::Runtime &runtime) {
178
- auto $payload = jsi::Object(runtime);
179
- {
180
- auto contentInset = jsi::Object(runtime);
181
- contentInset.setProperty(runtime, "bottom", $event.contentInset.bottom);
182
- contentInset.setProperty(runtime, "left", $event.contentInset.left);
183
- contentInset.setProperty(runtime, "right", $event.contentInset.right);
184
- contentInset.setProperty(runtime, "top", $event.contentInset.top);
185
- $payload.setProperty(runtime, "contentInset", contentInset);
186
- }
187
- {
188
- auto contentOffset = jsi::Object(runtime);
189
- contentOffset.setProperty(runtime, "y", $event.contentOffset.y);
190
- contentOffset.setProperty(runtime, "x", $event.contentOffset.x);
191
- $payload.setProperty(runtime, "contentOffset", contentOffset);
192
- }
193
- {
194
- auto contentSize = jsi::Object(runtime);
195
- contentSize.setProperty(runtime, "height", $event.contentSize.height);
196
- contentSize.setProperty(runtime, "width", $event.contentSize.width);
197
- $payload.setProperty(runtime, "contentSize", contentSize);
198
- }
199
- {
200
- auto layoutMeasurement = jsi::Object(runtime);
201
- layoutMeasurement.setProperty(runtime, "height", $event.layoutMeasurement.height);
202
- layoutMeasurement.setProperty(runtime, "width", $event.layoutMeasurement.width);
203
- $payload.setProperty(runtime, "layoutMeasurement", layoutMeasurement);
204
- }
205
- {
206
- auto targetContentOffset = jsi::Object(runtime);
207
- targetContentOffset.setProperty(runtime, "y", $event.targetContentOffset.y);
208
- targetContentOffset.setProperty(runtime, "x", $event.targetContentOffset.x);
209
- $payload.setProperty(runtime, "targetContentOffset", targetContentOffset);
210
- }
211
- {
212
- auto velocity = jsi::Object(runtime);
213
- velocity.setProperty(runtime, "y", $event.velocity.y);
214
- velocity.setProperty(runtime, "x", $event.velocity.x);
215
- $payload.setProperty(runtime, "velocity", velocity);
216
- }
217
- $payload.setProperty(runtime, "zoomScale", $event.zoomScale);
218
- $payload.setProperty(runtime, "responderIgnoreScroll", $event.responderIgnoreScroll);
219
- return $payload;
220
- });
221
- }
222
-
223
- void RNCWebViewEventEmitter::onShouldStartLoadWithRequest(OnShouldStartLoadWithRequest $event) const
224
- {
225
- dispatchEvent("shouldStartLoadWithRequest", [$event = std::move($event)](jsi::Runtime &runtime) {
226
- auto $payload = jsi::Object(runtime);
227
- $payload.setProperty(runtime, "url", $event.url);
228
- $payload.setProperty(runtime, "loading", $event.loading);
229
- $payload.setProperty(runtime, "title", $event.title);
230
- $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
231
- $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
232
- $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
233
- $payload.setProperty(runtime, "navigationType", toString($event.navigationType));
234
- $payload.setProperty(runtime, "mainDocumentURL", $event.mainDocumentURL);
235
- $payload.setProperty(runtime, "isTopFrame", $event.isTopFrame);
236
- return $payload;
237
- });
238
- }
239
- } // namespace react
240
- } // namespace facebook
11
+ #include "EventEmitters.h"
12
+
13
+
14
+ namespace facebook::react {
15
+
16
+ void RNCWebViewEventEmitter::onContentSizeChange(OnContentSizeChange $event) const {
17
+ dispatchEvent("contentSizeChange", [$event=std::move($event)](jsi::Runtime &runtime) {
18
+ auto $payload = jsi::Object(runtime);
19
+ $payload.setProperty(runtime, "url", $event.url);
20
+ $payload.setProperty(runtime, "loading", $event.loading);
21
+ $payload.setProperty(runtime, "title", $event.title);
22
+ $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
23
+ $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
24
+ $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
25
+ return $payload;
26
+ });
27
+ }
28
+
29
+
30
+ void RNCWebViewEventEmitter::onRenderProcessGone(OnRenderProcessGone $event) const {
31
+ dispatchEvent("renderProcessGone", [$event=std::move($event)](jsi::Runtime &runtime) {
32
+ auto $payload = jsi::Object(runtime);
33
+ $payload.setProperty(runtime, "didCrash", $event.didCrash);
34
+ return $payload;
35
+ });
36
+ }
37
+
38
+
39
+ void RNCWebViewEventEmitter::onContentProcessDidTerminate(OnContentProcessDidTerminate $event) const {
40
+ dispatchEvent("contentProcessDidTerminate", [$event=std::move($event)](jsi::Runtime &runtime) {
41
+ auto $payload = jsi::Object(runtime);
42
+ $payload.setProperty(runtime, "url", $event.url);
43
+ $payload.setProperty(runtime, "loading", $event.loading);
44
+ $payload.setProperty(runtime, "title", $event.title);
45
+ $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
46
+ $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
47
+ $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
48
+ return $payload;
49
+ });
50
+ }
51
+
52
+
53
+ void RNCWebViewEventEmitter::onCustomMenuSelection(OnCustomMenuSelection $event) const {
54
+ dispatchEvent("customMenuSelection", [$event=std::move($event)](jsi::Runtime &runtime) {
55
+ auto $payload = jsi::Object(runtime);
56
+ $payload.setProperty(runtime, "label", $event.label);
57
+ $payload.setProperty(runtime, "key", $event.key);
58
+ $payload.setProperty(runtime, "selectedText", $event.selectedText);
59
+ return $payload;
60
+ });
61
+ }
62
+
63
+
64
+ void RNCWebViewEventEmitter::onFileDownload(OnFileDownload $event) const {
65
+ dispatchEvent("fileDownload", [$event=std::move($event)](jsi::Runtime &runtime) {
66
+ auto $payload = jsi::Object(runtime);
67
+ $payload.setProperty(runtime, "downloadUrl", $event.downloadUrl);
68
+ return $payload;
69
+ });
70
+ }
71
+
72
+
73
+ void RNCWebViewEventEmitter::onLoadingError(OnLoadingError $event) const {
74
+ dispatchEvent("loadingError", [$event=std::move($event)](jsi::Runtime &runtime) {
75
+ auto $payload = jsi::Object(runtime);
76
+ $payload.setProperty(runtime, "url", $event.url);
77
+ $payload.setProperty(runtime, "loading", $event.loading);
78
+ $payload.setProperty(runtime, "title", $event.title);
79
+ $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
80
+ $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
81
+ $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
82
+ $payload.setProperty(runtime, "domain", $event.domain);
83
+ $payload.setProperty(runtime, "code", $event.code);
84
+ $payload.setProperty(runtime, "description", $event.description);
85
+ return $payload;
86
+ });
87
+ }
88
+
89
+
90
+ void RNCWebViewEventEmitter::onLoadingFinish(OnLoadingFinish $event) const {
91
+ dispatchEvent("loadingFinish", [$event=std::move($event)](jsi::Runtime &runtime) {
92
+ auto $payload = jsi::Object(runtime);
93
+ $payload.setProperty(runtime, "url", $event.url);
94
+ $payload.setProperty(runtime, "loading", $event.loading);
95
+ $payload.setProperty(runtime, "title", $event.title);
96
+ $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
97
+ $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
98
+ $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
99
+ $payload.setProperty(runtime, "navigationType", toString($event.navigationType));
100
+ $payload.setProperty(runtime, "mainDocumentURL", $event.mainDocumentURL);
101
+ return $payload;
102
+ });
103
+ }
104
+
105
+
106
+ void RNCWebViewEventEmitter::onLoadingProgress(OnLoadingProgress $event) const {
107
+ dispatchEvent("loadingProgress", [$event=std::move($event)](jsi::Runtime &runtime) {
108
+ auto $payload = jsi::Object(runtime);
109
+ $payload.setProperty(runtime, "url", $event.url);
110
+ $payload.setProperty(runtime, "loading", $event.loading);
111
+ $payload.setProperty(runtime, "title", $event.title);
112
+ $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
113
+ $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
114
+ $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
115
+ $payload.setProperty(runtime, "progress", $event.progress);
116
+ return $payload;
117
+ });
118
+ }
119
+
120
+
121
+ void RNCWebViewEventEmitter::onLoadingStart(OnLoadingStart $event) const {
122
+ dispatchEvent("loadingStart", [$event=std::move($event)](jsi::Runtime &runtime) {
123
+ auto $payload = jsi::Object(runtime);
124
+ $payload.setProperty(runtime, "url", $event.url);
125
+ $payload.setProperty(runtime, "loading", $event.loading);
126
+ $payload.setProperty(runtime, "title", $event.title);
127
+ $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
128
+ $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
129
+ $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
130
+ $payload.setProperty(runtime, "navigationType", toString($event.navigationType));
131
+ $payload.setProperty(runtime, "mainDocumentURL", $event.mainDocumentURL);
132
+ return $payload;
133
+ });
134
+ }
135
+
136
+
137
+ void RNCWebViewEventEmitter::onHttpError(OnHttpError $event) const {
138
+ dispatchEvent("httpError", [$event=std::move($event)](jsi::Runtime &runtime) {
139
+ auto $payload = jsi::Object(runtime);
140
+ $payload.setProperty(runtime, "url", $event.url);
141
+ $payload.setProperty(runtime, "loading", $event.loading);
142
+ $payload.setProperty(runtime, "title", $event.title);
143
+ $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
144
+ $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
145
+ $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
146
+ $payload.setProperty(runtime, "description", $event.description);
147
+ $payload.setProperty(runtime, "statusCode", $event.statusCode);
148
+ return $payload;
149
+ });
150
+ }
151
+
152
+
153
+ void RNCWebViewEventEmitter::onMessage(OnMessage $event) const {
154
+ dispatchEvent("message", [$event=std::move($event)](jsi::Runtime &runtime) {
155
+ auto $payload = jsi::Object(runtime);
156
+ $payload.setProperty(runtime, "url", $event.url);
157
+ $payload.setProperty(runtime, "loading", $event.loading);
158
+ $payload.setProperty(runtime, "title", $event.title);
159
+ $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
160
+ $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
161
+ $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
162
+ $payload.setProperty(runtime, "data", $event.data);
163
+ return $payload;
164
+ });
165
+ }
166
+
167
+
168
+ void RNCWebViewEventEmitter::onOpenWindow(OnOpenWindow $event) const {
169
+ dispatchEvent("openWindow", [$event=std::move($event)](jsi::Runtime &runtime) {
170
+ auto $payload = jsi::Object(runtime);
171
+ $payload.setProperty(runtime, "targetUrl", $event.targetUrl);
172
+ return $payload;
173
+ });
174
+ }
175
+
176
+
177
+ void RNCWebViewEventEmitter::onScroll(OnScroll $event) const {
178
+ dispatchEvent("scroll", [$event=std::move($event)](jsi::Runtime &runtime) {
179
+ auto $payload = jsi::Object(runtime);
180
+ {
181
+ auto contentInset = jsi::Object(runtime);
182
+ contentInset.setProperty(runtime, "bottom", $event.contentInset.bottom);
183
+ contentInset.setProperty(runtime, "left", $event.contentInset.left);
184
+ contentInset.setProperty(runtime, "right", $event.contentInset.right);
185
+ contentInset.setProperty(runtime, "top", $event.contentInset.top);
186
+ $payload.setProperty(runtime, "contentInset", contentInset);
187
+ }
188
+ {
189
+ auto contentOffset = jsi::Object(runtime);
190
+ contentOffset.setProperty(runtime, "y", $event.contentOffset.y);
191
+ contentOffset.setProperty(runtime, "x", $event.contentOffset.x);
192
+ $payload.setProperty(runtime, "contentOffset", contentOffset);
193
+ }
194
+ {
195
+ auto contentSize = jsi::Object(runtime);
196
+ contentSize.setProperty(runtime, "height", $event.contentSize.height);
197
+ contentSize.setProperty(runtime, "width", $event.contentSize.width);
198
+ $payload.setProperty(runtime, "contentSize", contentSize);
199
+ }
200
+ {
201
+ auto layoutMeasurement = jsi::Object(runtime);
202
+ layoutMeasurement.setProperty(runtime, "height", $event.layoutMeasurement.height);
203
+ layoutMeasurement.setProperty(runtime, "width", $event.layoutMeasurement.width);
204
+ $payload.setProperty(runtime, "layoutMeasurement", layoutMeasurement);
205
+ }
206
+ {
207
+ auto targetContentOffset = jsi::Object(runtime);
208
+ targetContentOffset.setProperty(runtime, "y", $event.targetContentOffset.y);
209
+ targetContentOffset.setProperty(runtime, "x", $event.targetContentOffset.x);
210
+ $payload.setProperty(runtime, "targetContentOffset", targetContentOffset);
211
+ }
212
+ {
213
+ auto velocity = jsi::Object(runtime);
214
+ velocity.setProperty(runtime, "y", $event.velocity.y);
215
+ velocity.setProperty(runtime, "x", $event.velocity.x);
216
+ $payload.setProperty(runtime, "velocity", velocity);
217
+ }
218
+ $payload.setProperty(runtime, "zoomScale", $event.zoomScale);
219
+ $payload.setProperty(runtime, "responderIgnoreScroll", $event.responderIgnoreScroll);
220
+ return $payload;
221
+ });
222
+ }
223
+
224
+
225
+ void RNCWebViewEventEmitter::onShouldStartLoadWithRequest(OnShouldStartLoadWithRequest $event) const {
226
+ dispatchEvent("shouldStartLoadWithRequest", [$event=std::move($event)](jsi::Runtime &runtime) {
227
+ auto $payload = jsi::Object(runtime);
228
+ $payload.setProperty(runtime, "url", $event.url);
229
+ $payload.setProperty(runtime, "loading", $event.loading);
230
+ $payload.setProperty(runtime, "title", $event.title);
231
+ $payload.setProperty(runtime, "canGoBack", $event.canGoBack);
232
+ $payload.setProperty(runtime, "canGoForward", $event.canGoForward);
233
+ $payload.setProperty(runtime, "lockIdentifier", $event.lockIdentifier);
234
+ $payload.setProperty(runtime, "navigationType", toString($event.navigationType));
235
+ $payload.setProperty(runtime, "mainDocumentURL", $event.mainDocumentURL);
236
+ $payload.setProperty(runtime, "isTopFrame", $event.isTopFrame);
237
+ return $payload;
238
+ });
239
+ }
240
+
241
+ } // namespace facebook::react