@shijiu/jsview 1.9.731 → 1.9.759

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 (124) hide show
  1. package/dom/jsv-browser-debug-dom.js +12 -5
  2. package/dom/jsv-code-debug.mjs +14 -0
  3. package/dom/jsv-dom.js +12 -5
  4. package/dom/jsv-engine-js-browser.js +12 -5
  5. package/dom/jsv-forge-define.js +17 -5
  6. package/package.json +14 -17
  7. package/patches/node_modules/react-scripts/config/paths.js +161 -0
  8. package/patches/node_modules/react-scripts/config/webpack.config.js +825 -0
  9. package/patches/node_modules/react-scripts/package.json +108 -0
  10. package/patches/node_modules/vite/dist/node/chunks/dep-0fc8e132.js +8 -1
  11. package/patches/node_modules/vite/dist/node/jsview.vite.config.js +15 -7
  12. package/tools/common.js +7 -2
  13. package/tools/jsview-post-build.js +3 -3
  14. package/tools/jsview-post-install-react.js +1 -3
  15. package/tools/jsview-post-install.js +1 -1
  16. package/dom/jsview-dom/README.md +0 -5
  17. package/dom/jsview-dom/package-lock.json-perfect +0 -3898
  18. package/dom/jsview-dom/package.json +0 -23
  19. package/dom/jsview-dom/rollup/browser-debug-dom.rollup.config.js +0 -15
  20. package/dom/jsview-dom/rollup/dom.rollup.config.js +0 -14
  21. package/dom/jsview-dom/rollup/engine-js-browser.rollup.config.js +0 -14
  22. package/dom/jsview-dom/rollup/forge-define.rollup.config.js +0 -14
  23. package/dom/jsview-dom/scripts/release_dist.sh +0 -36
  24. package/dom/jsview-dom/src/dom-browser-hook/HookDocument.js +0 -118
  25. package/dom/jsview-dom/src/dom-browser-hook/OriginDocument.js +0 -19
  26. package/dom/jsview-dom/src/dom-browser-hook/StyleFormatCheck.js +0 -559
  27. package/dom/jsview-dom/src/dom-browser-hook/index.js +0 -6
  28. package/dom/jsview-dom/src/dom-wrapper/ForgeExtension.js +0 -226
  29. package/dom/jsview-dom/src/dom-wrapper/JsViewForgeApp.js +0 -85
  30. package/dom/jsview-dom/src/dom-wrapper/JsViewProxy.js +0 -51
  31. package/dom/jsview-dom/src/dom-wrapper/event/AnimationEvent.js +0 -7
  32. package/dom/jsview-dom/src/dom-wrapper/event/Event.js +0 -12
  33. package/dom/jsview-dom/src/dom-wrapper/event/FocusEvent.js +0 -9
  34. package/dom/jsview-dom/src/dom-wrapper/event/KeyboardEvent.js +0 -43
  35. package/dom/jsview-dom/src/dom-wrapper/event/LoadEvent.js +0 -8
  36. package/dom/jsview-dom/src/dom-wrapper/index.js +0 -16
  37. package/dom/jsview-dom/src/dom-wrapper/node/AnchorElement.js +0 -24
  38. package/dom/jsview-dom/src/dom-wrapper/node/AudioElement.js +0 -60
  39. package/dom/jsview-dom/src/dom-wrapper/node/Comment.js +0 -10
  40. package/dom/jsview-dom/src/dom-wrapper/node/DivElement.js +0 -498
  41. package/dom/jsview-dom/src/dom-wrapper/node/Document.js +0 -274
  42. package/dom/jsview-dom/src/dom-wrapper/node/Element.js +0 -852
  43. package/dom/jsview-dom/src/dom-wrapper/node/FDivElement.js +0 -48
  44. package/dom/jsview-dom/src/dom-wrapper/node/HeadElement.js +0 -47
  45. package/dom/jsview-dom/src/dom-wrapper/node/ImageElement.js +0 -203
  46. package/dom/jsview-dom/src/dom-wrapper/node/JsvAudioTrackElement.js +0 -22
  47. package/dom/jsview-dom/src/dom-wrapper/node/JsvElement.js +0 -40
  48. package/dom/jsview-dom/src/dom-wrapper/node/LinkElement.js +0 -48
  49. package/dom/jsview-dom/src/dom-wrapper/node/MediaElement.js +0 -230
  50. package/dom/jsview-dom/src/dom-wrapper/node/Node.js +0 -178
  51. package/dom/jsview-dom/src/dom-wrapper/node/SVGElement.js +0 -9
  52. package/dom/jsview-dom/src/dom-wrapper/node/ScriptElement.js +0 -45
  53. package/dom/jsview-dom/src/dom-wrapper/node/StyleElement.js +0 -33
  54. package/dom/jsview-dom/src/dom-wrapper/node/StyleElementCache.js +0 -41
  55. package/dom/jsview-dom/src/dom-wrapper/node/Text.js +0 -22
  56. package/dom/jsview-dom/src/dom-wrapper/node/UnknownElement.js +0 -4
  57. package/dom/jsview-dom/src/dom-wrapper/node/VideoElement.js +0 -237
  58. package/dom/jsview-dom/src/dom-wrapper/style/BorderImage.js +0 -25
  59. package/dom/jsview-dom/src/dom-wrapper/style/Inset.js +0 -26
  60. package/dom/jsview-dom/src/dom-wrapper/style/JsvStyleVariable.js +0 -65
  61. package/dom/jsview-dom/src/dom-wrapper/style/KeyframeRule.js +0 -11
  62. package/dom/jsview-dom/src/dom-wrapper/style/StyleDeclaration.js +0 -609
  63. package/dom/jsview-dom/src/dom-wrapper/style/StyleSheet.js +0 -51
  64. package/dom/jsview-dom/src/dom-wrapper/style/StyleValue.js +0 -385
  65. package/dom/jsview-dom/src/dom-wrapper/style/TextStylePackMap.js +0 -43
  66. package/dom/jsview-dom/src/dom-wrapper/style/URL.js +0 -144
  67. package/dom/jsview-dom/src/dom-wrapper/utils/EventHandler.js +0 -42
  68. package/dom/jsview-dom/src/dom-wrapper/utils/FDivRoot.js +0 -86
  69. package/dom/jsview-dom/src/dom-wrapper/utils/JsvLazySyncCache.js +0 -64
  70. package/dom/jsview-dom/src/dom-wrapper/utils/Log.js +0 -42
  71. package/dom/jsview-dom/src/dom-wrapper/utils/MutationObserver.js +0 -32
  72. package/dom/jsview-dom/src/dom-wrapper/utils/focusableNode.js +0 -715
  73. package/dom/jsview-dom/src/engine-js/ForgeDefine.js +0 -8
  74. package/dom/jsview-dom/src/engine-js/ForgeExtensionDefine.js +0 -14
  75. package/dom/jsview-dom/src/engine-js/browser/PlatformUtils.js +0 -100
  76. package/dom/jsview-dom/src/engine-js/browser/animation_base.js +0 -313
  77. package/dom/jsview-dom/src/engine-js/browser/animation_keyframe.js +0 -64
  78. package/dom/jsview-dom/src/engine-js/browser/animation_progress.js +0 -287
  79. package/dom/jsview-dom/src/engine-js/browser/animation_proxy.js +0 -906
  80. package/dom/jsview-dom/src/engine-js/browser/apic_decoder/demux.js +0 -143
  81. package/dom/jsview-dom/src/engine-js/browser/apic_decoder/gifDecoder.js +0 -12
  82. package/dom/jsview-dom/src/engine-js/browser/apic_decoder/libwebp-0.6.0.min.js +0 -160
  83. package/dom/jsview-dom/src/engine-js/browser/console_log.js +0 -25
  84. package/dom/jsview-dom/src/engine-js/browser/dynamic_key_frames.js +0 -95
  85. package/dom/jsview-dom/src/engine-js/browser/easing.js +0 -114
  86. package/dom/jsview-dom/src/engine-js/browser/html_shared_tools/element_transform.js +0 -122
  87. package/dom/jsview-dom/src/engine-js/browser/html_shared_tools/gjk.js +0 -450
  88. package/dom/jsview-dom/src/engine-js/browser/html_shared_tools/mat.js +0 -102
  89. package/dom/jsview-dom/src/engine-js/browser/html_shared_tools/range_model.js +0 -296
  90. package/dom/jsview-dom/src/engine-js/browser/html_shared_tools/test_collide.js +0 -10
  91. package/dom/jsview-dom/src/engine-js/browser/index.js +0 -38
  92. package/dom/jsview-dom/src/engine-js/browser/latex_parse.js +0 -336
  93. package/dom/jsview-dom/src/engine-js/browser/layout_params.js +0 -113
  94. package/dom/jsview-dom/src/engine-js/browser/layout_view.js +0 -3545
  95. package/dom/jsview-dom/src/engine-js/browser/layout_view_debug.js +0 -15
  96. package/dom/jsview-dom/src/engine-js/browser/media.js +0 -379
  97. package/dom/jsview-dom/src/engine-js/browser/page_base.js +0 -941
  98. package/dom/jsview-dom/src/engine-js/browser/particle_view.js +0 -526
  99. package/dom/jsview-dom/src/engine-js/browser/platform_timer.js +0 -61
  100. package/dom/jsview-dom/src/engine-js/browser/react_utils.js +0 -5
  101. package/dom/jsview-dom/src/engine-js/browser/rect_utils.js +0 -91
  102. package/dom/jsview-dom/src/engine-js/browser/render_bridge.js +0 -128
  103. package/dom/jsview-dom/src/engine-js/browser/render_texture_proxy.js +0 -155
  104. package/dom/jsview-dom/src/engine-js/browser/renderer_deprecated.js +0 -75
  105. package/dom/jsview-dom/src/engine-js/browser/sound_pool.js +0 -139
  106. package/dom/jsview-dom/src/engine-js/browser/steps_animation.js +0 -192
  107. package/dom/jsview-dom/src/engine-js/browser/text_style_cache.js +0 -454
  108. package/dom/jsview-dom/src/engine-js/browser/text_utils.js +0 -299
  109. package/dom/jsview-dom/src/engine-js/browser/text_view.js +0 -428
  110. package/dom/jsview-dom/src/engine-js/browser/texture_manager.js +0 -1060
  111. package/dom/jsview-dom/src/engine-js/browser/url.js +0 -69
  112. package/dom/jsview-dom/src/engine-js/browser/velocity.js +0 -40
  113. package/dom/jsview-dom/src/engine-js/browser/view_sensor/autofroze_sensor.js +0 -77
  114. package/dom/jsview-dom/src/engine-js/browser/view_sensor/drag_impact_sensor.js +0 -67
  115. package/dom/jsview-dom/src/engine-js/browser/view_sensor/impact_sensor.js +0 -98
  116. package/dom/jsview-dom/src/engine-js/browser/view_sensor/impact_sensor_callback.js +0 -21
  117. package/dom/jsview-dom/src/engine-js/browser/view_sensor/impact_sensor_manager.js +0 -24
  118. package/dom/jsview-dom/src/engine-js/browser/view_sensor/index.js +0 -9
  119. package/dom/jsview-dom/src/engine-js/browser/view_sensor/view_sensor.js +0 -268
  120. package/dom/jsview-dom/src/engine-js/browser/view_sensor/view_sensor_manager.js +0 -84
  121. package/dom/jsview-dom/src/engine-js/browser/view_sensor/visible_sensor.js +0 -213
  122. package/dom/jsview-dom/src/engine-js/browser/view_store.js +0 -41
  123. package/dom/jsview-dom/src/engine-js/index.js +0 -2
  124. package/dom/jsview-dom/src/engine-js/native/README.md +0 -1
@@ -1,287 +0,0 @@
1
- /* eslint-disable no-prototype-builtins */
2
- import { animationToStyle, getStaticFrameControl, convertTimingFunc } from "./animation_keyframe";
3
-
4
- const is_char = char_code => (char_code >= 65 && char_code <= 90) || (char_code >= 97 && char_code <= 122);
5
- const is_num = char_code => char_code >= 48 && char_code <= 57;
6
- const __parseTransform = (transform) => {
7
- if (!transform) { return null; }
8
- let func_name = "";
9
- let param = "";
10
- let param_list = [];
11
- let mode = 0; // 0 parse name; 1 parse params;
12
- for (let i = 0; i < transform.length; i++) {
13
- const char_code = transform.charCodeAt(i);
14
- if (mode === 0) {
15
- if (is_char(char_code) || is_num(char_code)) {
16
- func_name += transform[i];
17
- }
18
- } else {
19
- if (is_num(char_code) || char_code === 46 || char_code === 45 || char_code === 101) { // 科学计数
20
- param += transform[i];
21
- }
22
- }
23
-
24
- if (char_code === 40) { // (
25
- mode = 1;
26
- param = "";
27
- param_list = [];
28
- } else if (char_code === 41) { // )
29
- param_list.push(parseFloat(param));
30
- return {
31
- name: func_name,
32
- params: param_list
33
- };
34
- } else if (char_code === 44) { // ,
35
- param_list.push(parseFloat(param));
36
- param = "";
37
- }
38
- }
39
- console.error("transform error", transform);
40
- return null;
41
- };
42
-
43
- function _BuildTracer(layout_view) {
44
- const children = layout_view.Element.children;
45
- let found_tracer = null;
46
- // 寻找进度跟踪器,以免重复创建,浪费资源
47
- for (let i = 0; i < children.length; i++) {
48
- if (children[i].id === "_AnimateProgressTracer") {
49
- found_tracer = children[i];
50
- break;
51
- }
52
- }
53
-
54
- if (found_tracer === null) {
55
- // 若在此节点下没有进度跟踪器,则创建一个
56
- found_tracer = window.originDocument.createElement("div");
57
- found_tracer.id = "_AnimateProgressTracer";
58
- layout_view.Element.appendChild(found_tracer);
59
- }
60
-
61
- return found_tracer;
62
- }
63
-
64
- let sIdToken = 0;
65
-
66
- class AnimationProgress {
67
- constructor(layout_view) {
68
- this._TracerDiv = _BuildTracer(layout_view);
69
- this._IdToken = (sIdToken++);
70
- this._KeyFrameName = null;
71
- this._AdvanceTimer = null;
72
- this._AdvanceListener = null;
73
- if (!this._TracerDiv.hasOwnProperty("_ForgeProgressToken")) {
74
- this._TracerDiv._ForgeProgressToken = 0;
75
- }
76
-
77
- // 阻止事件上发到父节点
78
- this._OnEndListener = ((event) => {
79
- event.stopPropagation();
80
- });
81
-
82
- // TODO: 要支持Android WebView? WebkitAnimationEnd...
83
- this._TracerDiv.addEventListener("animationend", this._OnEndListener);
84
- }
85
-
86
- _ClearAdvanceTimer() {
87
- if (this._AdvanceTimer !== null) {
88
- clearInterval(this._AdvanceTimer);
89
- this._AdvanceTimer = null;
90
- }
91
- }
92
-
93
- _NotifyAdvance() {
94
- this._ClearAdvanceTimer();
95
- if (this._AdvanceListener !== null) {
96
- this._AdvanceTimer = setInterval(() => {
97
- const progress = this.GetProgress();
98
- this._AdvanceListener(progress);
99
- if (progress === 1) {
100
- this._ClearAdvanceTimer();
101
- }
102
- }, 100);
103
- }
104
- }
105
-
106
- Start(host_animation, starter_progress, advance_listener) {
107
- this._AdvanceListener = advance_listener;
108
-
109
- // 保证可用的Animation动画
110
- if (this._KeyFrameName) {
111
- console.error("Error: Asset!! should Stop before start");
112
- }
113
- this._TracerDiv._ForgeProgressToken = (this._TracerDiv._ForgeProgressToken + 1) % 2;
114
- this._KeyFrameName = this._BuildTraceKeyFrame(
115
- starter_progress,
116
- this._IdToken,
117
- this._TracerDiv._ForgeProgressToken);
118
- this._TracerDiv.style.animation = animationToStyle(host_animation, this._KeyFrameName);
119
- // TODO: 要支持Android WebView? WebkitAnimationEnd...
120
- this._TracerDiv.addEventListener("animationend", this._OnEndListener);
121
-
122
- this._NotifyAdvance();
123
- }
124
-
125
- // 停止进度跟进,并返回进度值
126
- Stop() {
127
- const progress = this.GetProgress();
128
- this._TracerDiv.style.animation = null;
129
-
130
- if (this._KeyFrameName) {
131
- this._RemoveTraceKeyFrame(this._KeyFrameName);
132
- this._KeyFrameName = null;
133
- }
134
-
135
- if (this._AdvanceListener) {
136
- this._ClearAdvanceTimer();
137
- this._AdvanceListener(progress);
138
- this._AdvanceListener = null;
139
- }
140
-
141
- return progress;
142
- }
143
-
144
- GetProgress() {
145
- const s = window.getComputedStyle(this._TracerDiv);
146
- if (s.transform.length === 0) {
147
- // 没有transform,以目前调查结果认为是动画结束
148
- } else if (s.transform.length > 0 && s.transform !== "none") {
149
- const trans_values = __parseTransform(s.transform);
150
- if (trans_values !== null) {
151
- return (trans_values.params[4] / 1000); // type is matrix...
152
- }
153
- console.error("Error:internal error");
154
- return 0;
155
- }
156
- // none的场合代表动画结束了
157
- return 1;
158
- }
159
-
160
- _BuildTraceKeyFrame(starter_progress/* 0~1 */, token, dynamic_count) {
161
- const keyframe_name = `_AnimateProgress_${token}_${dynamic_count}`;
162
- const keyframe_control = getStaticFrameControl();
163
- const animate_progress = `@keyframes ${keyframe_name}
164
- {0%{transform:translate3d(${Math.floor(starter_progress * 1000)}px,0,0)}
165
- 100%{transform:translate3d(1000px,0,0)}}`;
166
- keyframe_control.insertRule(animate_progress);
167
- return keyframe_name;
168
- }
169
-
170
- _RemoveTraceKeyFrame(name) {
171
- const keyframe_control = getStaticFrameControl();
172
- keyframe_control.removeRule(name);
173
- }
174
- }
175
-
176
- class AnimationGroupProgress {
177
- constructor(layout_view, steps_total) {
178
- this._TracerDiv = _BuildTracer(layout_view);
179
- this._IdToken = (sIdToken++);
180
- this._KeyFrameNameArray = null;
181
- this._StepsTotal = steps_total;
182
- this._RunAnimList = null;
183
-
184
- if (!this._TracerDiv.hasOwnProperty("_ForgeProgressToken")) {
185
- this._TracerDiv._ForgeProgressToken = 0;
186
- }
187
-
188
- // 阻止事件上发到父节点
189
- this._OnEndListener = ((event) => {
190
- event.stopPropagation();
191
- });
192
-
193
- // TODO: 要支持Android WebView? WebkitAnimationEnd...
194
- this._TracerDiv.addEventListener("animationend", this._OnEndListener);
195
- }
196
-
197
- Start(steps_settings/* [{easing:xxx, duration:xxxx},{}...] */) {
198
- // 保证可用的Animation动画
199
- if (this._KeyFrameName) {
200
- console.error("Error: Asset!! should Stop before start");
201
- }
202
-
203
- // 交替token,避免animation属性中KeyFrames名字不变导致不触发动画启动
204
- this._TracerDiv._ForgeProgressToken = (this._TracerDiv._ForgeProgressToken + 1) % 2;
205
- this._BuildTraceKeyFrameGroup(this._IdToken, this._TracerDiv._ForgeProgressToken);
206
-
207
- this._RunAnimList = this._ConvertToAnimationStyle(steps_settings);
208
- this._TracerDiv.style.animation = this._RunAnimList[0];
209
- }
210
-
211
- // 下个步骤的触发由KeyFrameGroupAnimation来完成
212
- TriggerNextStep(index) {
213
- this._TracerDiv.style.animation = this._RunAnimList[index];
214
- }
215
-
216
- // 停止进度跟进,并返回进度值
217
- Stop() {
218
- const progress = this.GetProgress();
219
- this._TracerDiv.style.animation = null;
220
-
221
- if (this._KeyFrameNameArray !== null) {
222
- this._RemoveTraceKeyFrameGroup();
223
- this._KeyFrameNameArray = null;
224
- }
225
-
226
- return progress;
227
- }
228
-
229
- GetProgress() {
230
- const s = window.getComputedStyle(this._TracerDiv);
231
- if (s.transform.length === 0) {
232
- // 没有transform,以目前调查结果认为是动画结束
233
- } else if (s.transform !== "none") {
234
- const trans_values = __parseTransform(s.transform);
235
- if (trans_values !== null) {
236
- const p = (trans_values.params[4] / (this._StepsTotal * 100)); // type is matrix...
237
- // console.log("Report progress=" + p + " v=" + trans_values.params);
238
- return p;
239
- }
240
- console.error("Error:internal error");
241
- return 0;
242
- }
243
- // none的场合代表动画结束了
244
- return 1;
245
- }
246
-
247
- _BuildTraceKeyFrameGroup(token, dynamic_count) {
248
- this._KeyFrameNameArray = new Array(this._StepsTotal);
249
- const keyframe_control = getStaticFrameControl();
250
- for (let i = 0; i < this._KeyFrameNameArray.length; i++) {
251
- const step_name = (i === this._KeyFrameNameArray.length - 1 ? "finalStep" : `${i}`);
252
- const keyframe_name = `_AnimateGroupProgress_${token}_${dynamic_count}_Cnt_${step_name}`;
253
- const animate_progress = `@keyframes ${keyframe_name}
254
- {0%{transform:translate3d(${100 * i}px,0,0)}
255
- 100%{transform:translate3d(${100 + 100 * i}px,0,0)}}`;
256
- keyframe_control.insertRule(animate_progress);
257
- this._KeyFrameNameArray[i] = keyframe_name;
258
- }
259
- }
260
-
261
- _RemoveTraceKeyFrameGroup() {
262
- const keyframe_control = getStaticFrameControl();
263
- this._KeyFrameNameArray.forEach((name) => {
264
- keyframe_control.removeRule(name);
265
- });
266
- }
267
-
268
- _ConvertToAnimationStyle(steps_settings) {
269
- const anim_list = [];
270
- for (let i = 0; i < steps_settings.length; i++) {
271
- let timing_func = "linear";
272
- const settings = steps_settings[i];
273
- if (settings.easing) {
274
- timing_func = convertTimingFunc(settings.easing);
275
- }
276
- anim_list.push(`${this._KeyFrameNameArray[i]} ${settings.duration / 1000}s ${timing_func}`);
277
- }
278
-
279
- return anim_list;
280
- }
281
- }
282
-
283
- export default AnimationProgress;
284
- export {
285
- AnimationGroupProgress,
286
- AnimationProgress
287
- };