@shijiu/jsview-vue 2.3.0 → 2.3.728-alpha.0

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 (451) hide show
  1. package/bin/browser/BrowserAudio.vue.mjs +4 -1
  2. package/bin/browser/BrowserJsvLatex.vue.mjs +9 -90
  3. package/bin/jsview-vue.mjs +13913 -8048
  4. package/bin/types/utils/JsViewEngineWidget/JsvFocus/JsvFocusHub.d.ts +39 -3
  5. package/bin/types/utils/JsViewEngineWidget/MetroWidget/Const.d.ts +4 -1
  6. package/bin/types/utils/JsViewEngineWidget/MetroWidget/ListWidget.vue.d.ts +225 -0
  7. package/bin/types/utils/JsViewEngineWidget/MetroWidget/MetroWidget.vue.d.ts +225 -0
  8. package/bin/types/utils/JsViewEngineWidget/MetroWidget/MetroWidgetDebugger.d.ts +5 -0
  9. package/bin/types/utils/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.d.ts +25 -2
  10. package/bin/types/utils/JsViewEngineWidget/MetroWidget/PageUpdater.d.ts +7 -1
  11. package/bin/types/utils/JsViewEngineWidget/MetroWidget/RenderItem.d.ts +28 -4
  12. package/bin/types/utils/JsViewEngineWidget/MetroWidget/TaskManager.d.ts +2 -1
  13. package/bin/types/utils/JsViewEngineWidget/MetroWidget/Utils.d.ts +2 -0
  14. package/bin/types/utils/JsViewEngineWidget/MetroWidget/WidgetRectInfo.d.ts +1 -1
  15. package/bin/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavProvider.vue.d.ts +70 -0
  16. package/bin/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationAlgorithm.d.ts +24 -0
  17. package/bin/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationNode.d.ts +19 -0
  18. package/bin/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigator.d.ts +42 -0
  19. package/bin/types/utils/JsViewEngineWidget/TemplateParser/CommonMetroTemplate.d.ts +5 -4
  20. package/bin/types/utils/JsViewEngineWidget/TemplateParser/ListMetroTemplate.d.ts +2 -1
  21. package/bin/types/utils/JsViewEngineWidget/TemplateParser/MetroTemplate.d.ts +12 -4
  22. package/bin/types/utils/JsViewEngineWidget/TemplateParser/TemplateItemAdder.d.ts +9 -7
  23. package/bin/types/utils/JsViewEngineWidget/WidgetCommon.d.ts +27 -14
  24. package/bin/types/utils/JsViewEngineWidget/index.d.ts +3 -1
  25. package/bin/types/utils/JsViewPlugin/JsvLatex/BrowserDomBuilder.d.ts +0 -1
  26. package/bin/types/utils/JsViewPlugin/JsvLatex/GetVersion.d.ts +14 -0
  27. package/bin/types/utils/JsViewPlugin/JsvLatex/JsvLatex.vue.d.ts +3 -0
  28. package/bin/types/utils/JsViewPlugin/JsvLatex/JsvLatexBridgeProxy.d.ts +1 -0
  29. package/bin/types/utils/JsViewPlugin/JsvLatex/JsvLatexProxy.vue.d.ts +4 -1
  30. package/bin/types/utils/JsViewPlugin/JsvLatex/version.d.mts +29 -2
  31. package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvMedia.d.ts +107 -4
  32. package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvMediaBrowserInterface.d.ts +62 -0
  33. package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvPlayer.vue.d.ts +94 -18
  34. package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvPlayerBrowser-wasm.vue.d.ts +611 -0
  35. package/bin/types/utils/JsViewPlugin/JsvPlayer/{BrowserJsvPlayer.vue.d.ts → JsvPlayerBrowser.vue.d.ts} +24 -23
  36. package/bin/types/utils/JsViewPlugin/JsvPlayer/index-0.9.d.ts +77 -20
  37. package/bin/types/utils/JsViewPlugin/JsvPlayer/index.d.ts +77 -20
  38. package/bin/types/utils/JsViewVueTools/BlobApi.d.ts +38 -0
  39. package/bin/types/utils/JsViewVueTools/FeatureActive.d.ts +1 -0
  40. package/bin/types/utils/JsViewVueTools/ForgeHandles.d.ts +1 -0
  41. package/bin/types/utils/JsViewVueTools/JsvInteractionMode.d.ts +6 -0
  42. package/bin/types/utils/JsViewVueTools/JsvRuntimeBridge.d.ts +44 -1
  43. package/bin/types/utils/JsViewVueTools/JsvTextTools.d.ts +1 -0
  44. package/bin/types/utils/JsViewVueTools/JsvTextureStore/BitPalette/BitPalette.d.ts +43 -0
  45. package/bin/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/CommandList.d.ts +1 -0
  46. package/bin/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/DrawHelper.d.ts +54 -0
  47. package/bin/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/Path.d.ts +13 -0
  48. package/bin/types/utils/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.d.ts +5 -3
  49. package/bin/types/utils/JsViewVueTools/JsvTextureStore/JsvTextureStore.d.ts +88 -25
  50. package/bin/types/utils/JsViewVueTools/JsvTextureStore/Store.d.ts +2 -0
  51. package/bin/types/utils/JsViewVueTools/JsvTextureStore/Texture.d.ts +4 -0
  52. package/bin/types/utils/JsViewVueTools/JsvTextureStore/TextureBuilder.d.ts +49 -0
  53. package/bin/types/utils/JsViewVueTools/JsvTextureStore/index.d.ts +2 -0
  54. package/bin/types/utils/JsViewVueTools/index.d.ts +3 -1
  55. package/bin/types/utils/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue.d.ts +12 -22
  56. package/bin/types/utils/JsViewVueWidget/JsvApic/JsvApic2/index.d.ts +12 -22
  57. package/bin/types/utils/JsViewVueWidget/JsvDashPath.vue.d.ts +11 -0
  58. package/bin/types/utils/JsViewVueWidget/JsvDomRenderer/JsViewHtmlToVNodesOptions.d.ts +101 -0
  59. package/bin/types/utils/JsViewVueWidget/JsvDomRenderer/JsvDomRenderer.d.ts +61 -0
  60. package/bin/types/utils/JsViewVueWidget/JsvDomRenderer/htmlToVNodes.d.ts +58 -0
  61. package/bin/types/utils/JsViewVueWidget/JsvDomRenderer/index.d.ts +1 -0
  62. package/bin/types/utils/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue.d.ts +3 -1
  63. package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/ActorControl.d.ts +151 -18
  64. package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/CallbackManager.d.ts +2 -1
  65. package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/CmdTypes.d.ts +16 -0
  66. package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/ForgeTypeDefine.d.ts +2 -1
  67. package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/NexusNode.d.ts +3 -1
  68. package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetAction.d.ts +55 -12
  69. package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetCondition.d.ts +178 -35
  70. package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetState.d.ts +119 -17
  71. package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/index.d.ts +9 -3
  72. package/bin/types/utils/JsViewVueWidget/JsvInput/EditViewOperator.d.ts +4 -1
  73. package/bin/types/utils/JsViewVueWidget/JsvInput/JsvInput.vue.d.ts +22 -1
  74. package/bin/types/utils/JsViewVueWidget/JsvLine/JsvLine.vue.d.ts +1 -1
  75. package/bin/types/utils/JsViewVueWidget/JsvPieChart.vue.d.ts +2 -0
  76. package/bin/types/utils/JsViewVueWidget/JsvPreload/JsvPreload.vue.d.ts +5 -2
  77. package/bin/types/utils/JsViewVueWidget/JsvQrcode/JsvQrcode.vue.d.ts +1 -1
  78. package/bin/types/utils/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue.d.ts +39 -1
  79. package/bin/types/utils/JsViewVueWidget/JsvSector.vue.d.ts +1 -0
  80. package/bin/types/utils/JsViewVueWidget/JsvSmoothSlideContainer.vue.d.ts +72 -0
  81. package/bin/types/utils/JsViewVueWidget/JsvSoundPool.d.ts +26 -0
  82. package/bin/types/utils/JsViewVueWidget/JsvSwiper/JsvSmoothSwiper.vue.d.ts +112 -0
  83. package/bin/types/utils/JsViewVueWidget/JsvSwiper/JsvSwiper2.vue.d.ts +142 -0
  84. package/bin/types/utils/JsViewVueWidget/JsvSwiper/index.d.ts +3 -1
  85. package/bin/types/utils/JsViewVueWidget/JsvTextBox.vue.d.ts +15 -3
  86. package/bin/types/utils/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue.d.ts +22 -96
  87. package/bin/types/utils/JsViewVueWidget/JsvTouchModeSwitcher.vue.d.ts +6 -0
  88. package/bin/types/utils/JsViewVueWidget/{JsvPosterDiv.vue.d.ts → TypesDiv/JsvPosterDiv.vue.d.ts} +9 -0
  89. package/bin/types/utils/JsViewVueWidget/{JsvPosterImage.vue.d.ts → TypesDiv/JsvPosterImage.vue.d.ts} +15 -3
  90. package/bin/types/utils/JsViewVueWidget/TypesDiv/JsvSmartDiv.vue.d.ts +72 -0
  91. package/bin/types/utils/JsViewVueWidget/TypesDiv/JsvSmartImage.vue.d.ts +90 -0
  92. package/bin/types/utils/JsViewVueWidget/index.d.ts +8 -4
  93. package/dist/types/utils/JsViewEngineWidget/CheckType.d.ts +7 -0
  94. package/dist/types/utils/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue.d.ts +106 -0
  95. package/dist/types/utils/JsViewEngineWidget/JsvFocus/JsvFocusHub.d.ts +128 -0
  96. package/dist/types/utils/JsViewEngineWidget/JsvFocus/JsvFocusManager.d.ts +25 -0
  97. package/dist/types/utils/JsViewEngineWidget/MetroWidget/Const.d.ts +23 -0
  98. package/dist/types/utils/JsViewEngineWidget/MetroWidget/DebugFrame.vue.d.ts +12 -0
  99. package/dist/types/utils/JsViewEngineWidget/MetroWidget/DebugTools.d.ts +9 -0
  100. package/dist/types/utils/JsViewEngineWidget/MetroWidget/Dispatcher.d.ts +16 -0
  101. package/dist/types/utils/JsViewEngineWidget/MetroWidget/ListWidget.vue.d.ts +412 -0
  102. package/dist/types/utils/JsViewEngineWidget/MetroWidget/MetroWidget.vue.d.ts +751 -0
  103. package/dist/types/utils/JsViewEngineWidget/MetroWidget/MetroWidgetDebugger.d.ts +9 -0
  104. package/dist/types/utils/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.d.ts +82 -0
  105. package/dist/types/utils/JsViewEngineWidget/MetroWidget/PageUpdater.d.ts +31 -0
  106. package/dist/types/utils/JsViewEngineWidget/MetroWidget/RenderItem.d.ts +80 -0
  107. package/dist/types/utils/JsViewEngineWidget/MetroWidget/Slide.d.ts +25 -0
  108. package/dist/types/utils/JsViewEngineWidget/MetroWidget/SlotComponent.vue.d.ts +52 -0
  109. package/dist/types/utils/JsViewEngineWidget/MetroWidget/TaskManager.d.ts +69 -0
  110. package/dist/types/utils/JsViewEngineWidget/MetroWidget/TokenGenerator.d.ts +4 -0
  111. package/dist/types/utils/JsViewEngineWidget/MetroWidget/Utils.d.ts +6 -0
  112. package/dist/types/utils/JsViewEngineWidget/MetroWidget/VisibleInfo.d.ts +20 -0
  113. package/dist/types/utils/JsViewEngineWidget/MetroWidget/WidgetRectInfo.d.ts +21 -0
  114. package/dist/types/utils/JsViewEngineWidget/RangeModel.d.ts +166 -0
  115. package/dist/types/utils/JsViewEngineWidget/RectUtils.d.ts +61 -0
  116. package/dist/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavProvider.vue.d.ts +74 -0
  117. package/dist/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationAlgorithm.d.ts +28 -0
  118. package/dist/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationNode.d.ts +23 -0
  119. package/dist/types/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigator.d.ts +46 -0
  120. package/dist/types/utils/JsViewEngineWidget/TemplateParser/CommonMetroTemplate.d.ts +42 -0
  121. package/dist/types/utils/JsViewEngineWidget/TemplateParser/Fence.d.ts +62 -0
  122. package/dist/types/utils/JsViewEngineWidget/TemplateParser/ListMetroTemplate.d.ts +21 -0
  123. package/dist/types/utils/JsViewEngineWidget/TemplateParser/MetroTemplate.d.ts +103 -0
  124. package/dist/types/utils/JsViewEngineWidget/TemplateParser/TemplateItemAdder.d.ts +28 -0
  125. package/dist/types/utils/JsViewEngineWidget/TemplateParser/index.d.ts +8 -0
  126. package/dist/types/utils/JsViewEngineWidget/WidgetCommon.d.ts +160 -0
  127. package/dist/types/utils/JsViewEngineWidget/index.d.ts +21 -0
  128. package/dist/types/utils/JsViewPlugin/JsvAccount/JsvAccount.d.ts +46 -0
  129. package/dist/types/utils/JsViewPlugin/JsvAudio/AudioProxy.d.ts +6 -0
  130. package/dist/types/utils/JsViewPlugin/JsvAudio/BrowserAudio/BrowserAudio.vue.d.ts +22 -0
  131. package/dist/types/utils/JsViewPlugin/JsvAudio/BrowserAudio/JsvSystemAudio.vue.d.ts +212 -0
  132. package/dist/types/utils/JsViewPlugin/JsvAudio/CheckType.d.ts +6 -0
  133. package/dist/types/utils/JsViewPlugin/JsvAudio/Events.d.ts +17 -0
  134. package/dist/types/utils/JsViewPlugin/JsvAudio/JsvAudio.vue.d.ts +22 -0
  135. package/dist/types/utils/JsViewPlugin/JsvAudio/JsvAudioBridgeProxy.d.ts +12 -0
  136. package/dist/types/utils/JsViewPlugin/JsvAudio/JsvAudioProxy.vue.d.ts +6 -0
  137. package/dist/types/utils/JsViewPlugin/JsvAudio/PluginLoader.d.ts +5 -0
  138. package/dist/types/utils/JsViewPlugin/JsvAudio/ScreenLockManager.d.ts +9 -0
  139. package/dist/types/utils/JsViewPlugin/JsvAudio/index.d.ts +7 -0
  140. package/dist/types/utils/JsViewPlugin/JsvAudio/version.d.mts +14 -0
  141. package/{bin/types/utils/JsViewPlugin/JsvLatex → dist/types/utils/JsViewPlugin/JsvAudio}/version.d.ts +5 -0
  142. package/dist/types/utils/JsViewPlugin/JsvLatex/BrowserDomBuilder.d.ts +0 -0
  143. package/dist/types/utils/JsViewPlugin/JsvLatex/BrowserJsvLatex.vue.d.ts +17 -0
  144. package/dist/types/utils/JsViewPlugin/JsvLatex/Color.d.ts +5 -0
  145. package/dist/types/utils/JsViewPlugin/JsvLatex/GetVersion.d.ts +18 -0
  146. package/dist/types/utils/JsViewPlugin/JsvLatex/JsvLatex.vue.d.ts +46 -0
  147. package/dist/types/utils/JsViewPlugin/JsvLatex/JsvLatexBridgeProxy.d.ts +8 -0
  148. package/dist/types/utils/JsViewPlugin/JsvLatex/JsvLatexProxy.vue.d.ts +9 -0
  149. package/dist/types/utils/JsViewPlugin/JsvLatex/PluginLoader.d.ts +5 -0
  150. package/dist/types/utils/JsViewPlugin/JsvLatex/index.d.ts +8 -0
  151. package/dist/types/utils/JsViewPlugin/JsvLatex/version.d.mts +40 -0
  152. package/dist/types/utils/JsViewPlugin/JsvPlayer/AckEventDefine.d.ts +10 -0
  153. package/dist/types/utils/JsViewPlugin/JsvPlayer/GetVersion.d.ts +13 -0
  154. package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvMedia.d.ts +523 -0
  155. package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvMediaBrowserInterface.d.ts +119 -0
  156. package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvPlayer.vue.d.ts +664 -0
  157. package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvPlayerBrowser-0.9.vue.d.ts +45 -0
  158. package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvPlayerBrowser-wasm.vue.d.ts +611 -0
  159. package/dist/types/utils/JsViewPlugin/JsvPlayer/JsvPlayerBrowser.vue.d.ts +597 -0
  160. package/dist/types/utils/JsViewPlugin/JsvPlayer/index-0.9.d.ts +415 -0
  161. package/dist/types/utils/JsViewPlugin/JsvPlayer/index.d.ts +415 -0
  162. package/dist/types/utils/JsViewPlugin/JsvPlayer/version.d.mts +14 -0
  163. package/dist/types/utils/JsViewPlugin/index.d.ts +7 -0
  164. package/dist/types/utils/JsViewVueTools/BlobApi.d.ts +42 -0
  165. package/dist/types/utils/JsViewVueTools/ConstSymbol.d.ts +6 -0
  166. package/dist/types/utils/JsViewVueTools/DebugContentShellJBridge.d.ts +10 -0
  167. package/dist/types/utils/JsViewVueTools/DebugTool.d.ts +12 -0
  168. package/dist/types/utils/JsViewVueTools/DefaultKeyMap.d.ts +14 -0
  169. package/dist/types/utils/JsViewVueTools/FeatureActive.d.ts +15 -0
  170. package/dist/types/utils/JsViewVueTools/ForgeConstDefine.d.ts +15 -0
  171. package/dist/types/utils/JsViewVueTools/ForgeHandles.d.ts +11 -0
  172. package/dist/types/utils/JsViewVueTools/JsvDynamicCssStyle.d.ts +33 -0
  173. package/dist/types/utils/JsViewVueTools/JsvDynamicKeyFrames.d.ts +40 -0
  174. package/dist/types/utils/JsViewVueTools/JsvFederationTools.d.ts +20 -0
  175. package/dist/types/utils/JsViewVueTools/JsvHashHistory.d.ts +20 -0
  176. package/dist/types/utils/JsViewVueTools/JsvImpactTracer.d.ts +44 -0
  177. package/dist/types/utils/JsViewVueTools/JsvInteractionMode.d.ts +10 -0
  178. package/dist/types/utils/JsViewVueTools/JsvPerformance.d.ts +9 -0
  179. package/dist/types/utils/JsViewVueTools/JsvPreDownloader.d.ts +55 -0
  180. package/dist/types/utils/JsViewVueTools/JsvRefTaker.d.ts +52 -0
  181. package/dist/types/utils/JsViewVueTools/JsvRuntimeBridge.d.ts +378 -0
  182. package/dist/types/utils/JsViewVueTools/JsvStyleClass.d.ts +35 -0
  183. package/dist/types/utils/JsViewVueTools/JsvStyleSheetsDeclarer.d.ts +35 -0
  184. package/dist/types/utils/JsViewVueTools/JsvTextTools.d.ts +66 -0
  185. package/dist/types/utils/JsViewVueTools/JsvTextureDefines.d.ts +10 -0
  186. package/dist/types/utils/JsViewVueTools/JsvTextureLoadTool.d.ts +67 -0
  187. package/dist/types/utils/JsViewVueTools/JsvTextureStore/BitPalette/BitPalette.d.ts +47 -0
  188. package/dist/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/CanvasTexture.d.ts +99 -0
  189. package/dist/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/CommandList.d.ts +20 -0
  190. package/dist/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/DrawHelper.d.ts +58 -0
  191. package/dist/types/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/Path.d.ts +113 -0
  192. package/dist/types/utils/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.d.ts +17 -0
  193. package/dist/types/utils/JsViewVueTools/JsvTextureStore/JsvTextureStore.d.ts +170 -0
  194. package/dist/types/utils/JsViewVueTools/JsvTextureStore/Store.d.ts +16 -0
  195. package/dist/types/utils/JsViewVueTools/JsvTextureStore/Texture.d.ts +31 -0
  196. package/dist/types/utils/JsViewVueTools/JsvTextureStore/TextureBuilder.d.ts +53 -0
  197. package/dist/types/utils/JsViewVueTools/JsvTextureStore/index.d.ts +6 -0
  198. package/dist/types/utils/JsViewVueTools/NinePatchHelper.d.ts +25 -0
  199. package/dist/types/utils/JsViewVueTools/TextureManagerTools.d.ts +11 -0
  200. package/dist/types/utils/JsViewVueTools/TypeCheckAndSet.d.ts +7 -0
  201. package/dist/types/utils/JsViewVueTools/index.d.ts +29 -0
  202. package/dist/types/utils/JsViewVueWidget/Jsv3dDiv.vue.d.ts +124 -0
  203. package/dist/types/utils/JsViewVueWidget/Jsv3dStage.vue.d.ts +148 -0
  204. package/dist/types/utils/JsViewVueWidget/JsvActorMove/ActorControlBase.d.ts +35 -0
  205. package/dist/types/utils/JsViewVueWidget/JsvActorMove/JsvActorMove.vue.d.ts +102 -0
  206. package/dist/types/utils/JsViewVueWidget/JsvActorMove/JsvActorMoveControl.d.ts +37 -0
  207. package/dist/types/utils/JsViewVueWidget/JsvActorMove/index.d.ts +8 -0
  208. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic/BrowserApic.vue.d.ts +15 -0
  209. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic/JsvApic.vue.d.ts +77 -0
  210. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic/index.d.ts +54 -0
  211. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic2/BrowserApic2.vue.d.ts +13 -0
  212. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue.d.ts +44 -0
  213. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvApic2/index.d.ts +17 -0
  214. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/ApicDataBase.d.ts +13 -0
  215. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/BrowserApicLib.d.ts +3 -0
  216. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/GifData.d.ts +5 -0
  217. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/NormalLoopTool.d.ts +7 -0
  218. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/PartLoopTool.d.ts +12 -0
  219. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/SingleLoopTool.d.ts +5 -0
  220. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/Viewer.d.ts +20 -0
  221. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvBrowserApicLib/WebpData.d.ts +5 -0
  222. package/dist/types/utils/JsViewVueWidget/JsvApic/JsvCommonLoopToolBase.d.ts +26 -0
  223. package/dist/types/utils/JsViewVueWidget/JsvClipDiv/JsvClipDiv.vue.d.ts +74 -0
  224. package/dist/types/utils/JsViewVueWidget/JsvClipDiv/index.d.ts +5 -0
  225. package/dist/types/utils/JsViewVueWidget/JsvConnectLine/ArcLineManager.d.ts +5 -0
  226. package/dist/types/utils/JsViewVueWidget/JsvConnectLine/JsvConnectLine.vue.d.ts +34 -0
  227. package/dist/types/utils/JsViewVueWidget/JsvConnectLine/index.d.ts +6 -0
  228. package/dist/types/utils/JsViewVueWidget/JsvDashPath.vue.d.ts +33 -0
  229. package/dist/types/utils/JsViewVueWidget/JsvDomRenderer/JsViewHtmlToVNodesOptions.d.ts +105 -0
  230. package/dist/types/utils/JsViewVueWidget/JsvDomRenderer/JsvDomRenderer.d.ts +65 -0
  231. package/dist/types/utils/JsViewVueWidget/JsvDomRenderer/htmlToVNodes.d.ts +62 -0
  232. package/dist/types/utils/JsViewVueWidget/JsvDomRenderer/index.d.ts +5 -0
  233. package/dist/types/utils/JsViewVueWidget/JsvDragBox/JsvDragBox.vue.d.ts +109 -0
  234. package/dist/types/utils/JsViewVueWidget/JsvDriftScope/JsvDriftScope.vue.d.ts +108 -0
  235. package/dist/types/utils/JsViewVueWidget/JsvDriftScope/index.d.ts +5 -0
  236. package/dist/types/utils/JsViewVueWidget/JsvEnableRenderBreak.vue.d.ts +61 -0
  237. package/dist/types/utils/JsViewVueWidget/JsvFilterView.vue.d.ts +91 -0
  238. package/dist/types/utils/JsViewVueWidget/JsvFlexCell/JsvFlexDiv.vue.d.ts +106 -0
  239. package/dist/types/utils/JsViewVueWidget/JsvFlexCell/JsvFullScrAdjust.vue.d.ts +100 -0
  240. package/dist/types/utils/JsViewVueWidget/JsvFlexCell/JsvScreenFlex.vue.d.ts +108 -0
  241. package/dist/types/utils/JsViewVueWidget/JsvFlexCell/index.d.ts +7 -0
  242. package/dist/types/utils/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue.d.ts +63 -0
  243. package/dist/types/utils/JsViewVueWidget/JsvFragShaderView/index.d.ts +5 -0
  244. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/ActionRefObject.d.ts +4 -0
  245. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/ActorControl.d.ts +228 -0
  246. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/ActorState.d.ts +6 -0
  247. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/CallbackManager.d.ts +16 -0
  248. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/CmdTypes.d.ts +16 -0
  249. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/ForgeTypeDefine.d.ts +20 -0
  250. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/JsvEnvBlocker.vue.d.ts +106 -0
  251. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/JsvFreeMoveActor.vue.d.ts +107 -0
  252. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/KeepFlags.d.ts +11 -0
  253. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/NexusNode.d.ts +12 -0
  254. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetAction.d.ts +118 -0
  255. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetCondition.d.ts +244 -0
  256. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/SetState.d.ts +169 -0
  257. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/SyncLinkManager.d.ts +22 -0
  258. package/dist/types/utils/JsViewVueWidget/JsvFreeMoveActor/index.d.ts +24 -0
  259. package/dist/types/utils/JsViewVueWidget/JsvGrid.vue.d.ts +241 -0
  260. package/dist/types/utils/JsViewVueWidget/JsvHole.d.ts +19 -0
  261. package/dist/types/utils/JsViewVueWidget/JsvInput/Cursor.vue.d.ts +16 -0
  262. package/dist/types/utils/JsViewVueWidget/JsvInput/EditViewOperator.d.ts +52 -0
  263. package/dist/types/utils/JsViewVueWidget/JsvInput/EditVisibleArea.d.ts +30 -0
  264. package/dist/types/utils/JsViewVueWidget/JsvInput/JsvInput.vue.d.ts +98 -0
  265. package/dist/types/utils/JsViewVueWidget/JsvInput/SharedDefine.d.ts +17 -0
  266. package/dist/types/utils/JsViewVueWidget/JsvInput/SystemTextTools.d.ts +20 -0
  267. package/dist/types/utils/JsViewVueWidget/JsvInput/index.d.ts +8 -0
  268. package/dist/types/utils/JsViewVueWidget/JsvLine/JsvLine.vue.d.ts +32 -0
  269. package/dist/types/utils/JsViewVueWidget/JsvLine/LineManager.d.ts +5 -0
  270. package/dist/types/utils/JsViewVueWidget/JsvLine/index.d.ts +6 -0
  271. package/dist/types/utils/JsViewVueWidget/JsvMarquee.vue.d.ts +33 -0
  272. package/dist/types/utils/JsViewVueWidget/JsvMaskClipDiv.vue.d.ts +101 -0
  273. package/dist/types/utils/JsViewVueWidget/JsvMindMap/CommonType.d.ts +1 -0
  274. package/dist/types/utils/JsViewVueWidget/JsvMindMap/Constant.d.ts +13 -0
  275. package/dist/types/utils/JsViewVueWidget/JsvMindMap/DataTree.d.ts +75 -0
  276. package/dist/types/utils/JsViewVueWidget/JsvMindMap/Geometry.d.ts +72 -0
  277. package/dist/types/utils/JsViewVueWidget/JsvMindMap/JsvMindMap.vue.d.ts +235 -0
  278. package/dist/types/utils/JsViewVueWidget/JsvMindMap/index.d.ts +5 -0
  279. package/dist/types/utils/JsViewVueWidget/JsvMindMap/rtree.d.ts +44 -0
  280. package/dist/types/utils/JsViewVueWidget/JsvNativeSharedDiv.vue.d.ts +93 -0
  281. package/dist/types/utils/JsViewVueWidget/JsvNinePatch.vue.d.ts +55 -0
  282. package/dist/types/utils/JsViewVueWidget/JsvPieChart.vue.d.ts +30 -0
  283. package/dist/types/utils/JsViewVueWidget/JsvPreload/JsvPreload.vue.d.ts +68 -0
  284. package/dist/types/utils/JsViewVueWidget/JsvPreload/index.d.ts +6 -0
  285. package/dist/types/utils/JsViewVueWidget/JsvProgressBar.vue.d.ts +31 -0
  286. package/dist/types/utils/JsViewVueWidget/JsvQrcode/JsvQrcode.vue.d.ts +85 -0
  287. package/dist/types/utils/JsViewVueWidget/JsvRadarChart.vue.d.ts +37 -0
  288. package/dist/types/utils/JsViewVueWidget/JsvRipple/Constant.d.ts +8 -0
  289. package/dist/types/utils/JsViewVueWidget/JsvRipple/JsvRipple.vue.d.ts +129 -0
  290. package/dist/types/utils/JsViewVueWidget/JsvRipple/index.d.ts +7 -0
  291. package/dist/types/utils/JsViewVueWidget/JsvScaleTextBox.vue.d.ts +28 -0
  292. package/dist/types/utils/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue.d.ts +278 -0
  293. package/dist/types/utils/JsViewVueWidget/JsvScrollBox/JsvScrollFollow.vue.d.ts +157 -0
  294. package/dist/types/utils/JsViewVueWidget/JsvScrollBox/ScrollInnerSymbol.d.ts +8 -0
  295. package/dist/types/utils/JsViewVueWidget/JsvScrollBox/ScrollSymbol.d.ts +16 -0
  296. package/dist/types/utils/JsViewVueWidget/JsvScrollBox/index.d.ts +7 -0
  297. package/dist/types/utils/JsViewVueWidget/JsvSector.vue.d.ts +30 -0
  298. package/dist/types/utils/JsViewVueWidget/JsvSmoothSlideContainer.vue.d.ts +76 -0
  299. package/dist/types/utils/JsViewVueWidget/JsvSoundPool.d.ts +114 -0
  300. package/dist/types/utils/JsViewVueWidget/JsvSpray/JsvSpray.vue.d.ts +58 -0
  301. package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/FrameBuidler.d.ts +18 -0
  302. package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteAnim.vue.d.ts +70 -0
  303. package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteLoader.vue.d.ts +85 -0
  304. package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteTools.d.ts +15 -0
  305. package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/SpriteController.d.ts +21 -0
  306. package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/index.d.ts +9 -0
  307. package/dist/types/utils/JsViewVueWidget/JsvSpriteAnim/sAnimationToken.d.ts +6 -0
  308. package/dist/types/utils/JsViewVueWidget/JsvSwiper/Indicator.vue.d.ts +16 -0
  309. package/dist/types/utils/JsViewVueWidget/JsvSwiper/JsvSmoothSwiper.vue.d.ts +141 -0
  310. package/dist/types/utils/JsViewVueWidget/JsvSwiper/JsvSwiper.vue.d.ts +248 -0
  311. package/dist/types/utils/JsViewVueWidget/JsvSwiper/JsvSwiper2.vue.d.ts +181 -0
  312. package/dist/types/utils/JsViewVueWidget/JsvSwiper/index.d.ts +8 -0
  313. package/dist/types/utils/JsViewVueWidget/JsvSwiper3D/Indicator.vue.d.ts +16 -0
  314. package/dist/types/utils/JsViewVueWidget/JsvSwiper3D/JsvSwiper.vue.d.ts +121 -0
  315. package/dist/types/utils/JsViewVueWidget/JsvSwiper3D/index.d.ts +6 -0
  316. package/dist/types/utils/JsViewVueWidget/JsvTextBox.vue.d.ts +121 -0
  317. package/dist/types/utils/JsViewVueWidget/JsvTextureAnim/CommonType.d.ts +6 -0
  318. package/dist/types/utils/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue.d.ts +38 -0
  319. package/dist/types/utils/JsViewVueWidget/JsvTextureAnim/index.d.ts +8 -0
  320. package/dist/types/utils/JsViewVueWidget/JsvTouchModeSwitcher.vue.d.ts +109 -0
  321. package/dist/types/utils/JsViewVueWidget/JsvVideo.vue.d.ts +23 -0
  322. package/dist/types/utils/JsViewVueWidget/JsvVisibleSensor/JsvVisibleSensor.vue.d.ts +109 -0
  323. package/dist/types/utils/JsViewVueWidget/JsvVisibleSensor/index.d.ts +88 -0
  324. package/dist/types/utils/JsViewVueWidget/TypesDiv/JsvPosterDiv.vue.d.ts +94 -0
  325. package/dist/types/utils/JsViewVueWidget/TypesDiv/JsvPosterImage.vue.d.ts +115 -0
  326. package/dist/types/utils/JsViewVueWidget/TypesDiv/JsvSmartDiv.vue.d.ts +94 -0
  327. package/dist/types/utils/JsViewVueWidget/TypesDiv/JsvSmartImage.vue.d.ts +115 -0
  328. package/dist/types/utils/JsViewVueWidget/index.d.ts +53 -0
  329. package/dist/types/utils/index.d.ts +8 -0
  330. package/dist/utils/browser/BrowserAudio.vue.mjs +258 -0
  331. package/dist/utils/browser/BrowserJsvLatex.vue.mjs +64 -0
  332. package/dist/utils/export-sfc.mjs +12 -0
  333. package/dist/utils/index.mjs +29000 -0
  334. package/dist/utils/jsview-vue-common.mjs +39 -0
  335. package/package.json +1 -1
  336. package/utils/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue +32 -16
  337. package/utils/JsViewEngineWidget/JsvFocus/JsvFocusHub.ts +51 -3
  338. package/utils/JsViewEngineWidget/MetroWidget/Const.ts +5 -0
  339. package/utils/JsViewEngineWidget/MetroWidget/ListWidget.vue +193 -89
  340. package/utils/JsViewEngineWidget/MetroWidget/MetroWidget.vue +347 -145
  341. package/utils/JsViewEngineWidget/MetroWidget/MetroWidgetDebugger.ts +15 -0
  342. package/utils/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.js +1603 -588
  343. package/utils/JsViewEngineWidget/MetroWidget/PageUpdater.ts +41 -23
  344. package/utils/JsViewEngineWidget/MetroWidget/RenderItem.ts +146 -38
  345. package/utils/JsViewEngineWidget/MetroWidget/TaskManager.ts +39 -26
  346. package/utils/JsViewEngineWidget/MetroWidget/Utils.ts +6 -0
  347. package/utils/JsViewEngineWidget/MetroWidget/WidgetRectInfo.ts +2 -1
  348. package/utils/JsViewEngineWidget/RectUtils.js +1 -1
  349. package/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavProvider.vue +62 -0
  350. package/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationAlgorithm.ts +260 -0
  351. package/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigationNode.ts +32 -0
  352. package/utils/JsViewEngineWidget/SpatialNavigator/SpatialNavigator.ts +236 -0
  353. package/utils/JsViewEngineWidget/TemplateParser/CommonMetroTemplate.ts +434 -264
  354. package/utils/JsViewEngineWidget/TemplateParser/ListMetroTemplate.ts +101 -27
  355. package/utils/JsViewEngineWidget/TemplateParser/MetroTemplate.ts +54 -5
  356. package/utils/JsViewEngineWidget/TemplateParser/TemplateItemAdder.ts +109 -41
  357. package/utils/JsViewEngineWidget/WidgetCommon.ts +29 -7
  358. package/utils/JsViewEngineWidget/index.ts +7 -2
  359. package/utils/JsViewPlugin/JsvAudio/BrowserAudio/BrowserAudio.vue +4 -0
  360. package/utils/JsViewPlugin/JsvAudio/BrowserAudio/JsvSystemAudio.vue +13 -13
  361. package/utils/JsViewPlugin/JsvLatex/BrowserDomBuilder.js +46 -46
  362. package/utils/JsViewPlugin/JsvLatex/BrowserJsvLatex.vue +54 -41
  363. package/utils/JsViewPlugin/JsvLatex/Color.ts +104 -39
  364. package/utils/JsViewPlugin/JsvLatex/GetVersion.js +65 -0
  365. package/utils/JsViewPlugin/JsvLatex/JsvLatex.vue +71 -17
  366. package/utils/JsViewPlugin/JsvLatex/JsvLatexBridgeProxy.js +10 -0
  367. package/utils/JsViewPlugin/JsvLatex/JsvLatexProxy.vue +14 -2
  368. package/utils/JsViewPlugin/JsvLatex/PluginLoader.js +63 -31
  369. package/utils/JsViewPlugin/JsvLatex/version.mjs +26 -13
  370. package/utils/JsViewPlugin/JsvPlayer/GetVersion.js +2 -1
  371. package/utils/JsViewPlugin/JsvPlayer/JsvMedia.js +402 -23
  372. package/utils/JsViewPlugin/JsvPlayer/JsvMediaBrowserInterface.js +100 -0
  373. package/utils/JsViewPlugin/JsvPlayer/JsvPlayer.vue +363 -468
  374. package/utils/JsViewPlugin/JsvPlayer/{BrowserJsvPlayer.vue → JsvPlayerBrowser-wasm.vue} +61 -11
  375. package/utils/JsViewPlugin/JsvPlayer/JsvPlayerBrowser.vue +511 -0
  376. package/utils/JsViewPlugin/JsvPlayer/index-0.9.js +52 -10
  377. package/utils/JsViewPlugin/JsvPlayer/index.js +58 -9
  378. package/utils/JsViewPlugin/JsvPlayer/package.json +8 -0
  379. package/utils/JsViewVueTools/BlobApi.ts +55 -0
  380. package/utils/JsViewVueTools/FeatureActive.ts +5 -1
  381. package/utils/JsViewVueTools/ForgeHandles.ts +8 -2
  382. package/utils/JsViewVueTools/JsvInteractionMode.js +16 -0
  383. package/utils/JsViewVueTools/JsvPreDownloader.ts +2 -2
  384. package/utils/JsViewVueTools/JsvRuntimeBridge.js +125 -8
  385. package/utils/JsViewVueTools/JsvTextTools.ts +12 -2
  386. package/utils/JsViewVueTools/JsvTextureStore/BitPalette/BitPalette.ts +180 -0
  387. package/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/CommandList.ts +1 -0
  388. package/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/DrawHelper.ts +304 -0
  389. package/utils/JsViewVueTools/JsvTextureStore/CanvasTexture/Path.ts +38 -0
  390. package/utils/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.ts +30 -12
  391. package/utils/JsViewVueTools/JsvTextureStore/JsvTextureStore.ts +157 -51
  392. package/utils/JsViewVueTools/JsvTextureStore/Store.ts +33 -21
  393. package/utils/JsViewVueTools/JsvTextureStore/Texture.ts +56 -41
  394. package/utils/JsViewVueTools/JsvTextureStore/TextureBuilder.ts +92 -0
  395. package/utils/JsViewVueTools/JsvTextureStore/index.js +2 -0
  396. package/utils/JsViewVueTools/index.js +3 -1
  397. package/utils/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue +111 -86
  398. package/utils/JsViewVueWidget/JsvDashPath.vue +150 -0
  399. package/utils/JsViewVueWidget/JsvDomRenderer/JsViewHtmlToVNodesOptions.ts +212 -0
  400. package/utils/JsViewVueWidget/JsvDomRenderer/JsvDomRenderer.ts +146 -0
  401. package/utils/JsViewVueWidget/JsvDomRenderer/htmlToVNodes.ts +748 -0
  402. package/utils/JsViewVueWidget/JsvDomRenderer/index.ts +1 -0
  403. package/utils/JsViewVueWidget/JsvDragBox/JsvDragBox.vue +10 -1
  404. package/utils/JsViewVueWidget/JsvEnableRenderBreak.vue +6 -0
  405. package/utils/JsViewVueWidget/JsvFlexCell/JsvFlexDiv.vue +11 -5
  406. package/utils/JsViewVueWidget/JsvFlexCell/JsvFullScrAdjust.vue +3 -1
  407. package/utils/JsViewVueWidget/JsvFlexCell/JsvScreenFlex.vue +3 -1
  408. package/utils/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue +24 -8
  409. package/utils/JsViewVueWidget/JsvFreeMoveActor/ActorControl.ts +269 -26
  410. package/utils/JsViewVueWidget/JsvFreeMoveActor/CallbackManager.ts +2 -1
  411. package/utils/JsViewVueWidget/JsvFreeMoveActor/CmdTypes.ts +24 -0
  412. package/utils/JsViewVueWidget/JsvFreeMoveActor/ForgeTypeDefine.ts +3 -0
  413. package/utils/JsViewVueWidget/JsvFreeMoveActor/{FreeMoveActor.vue → JsvFreeMoveActor.vue} +5 -1
  414. package/utils/JsViewVueWidget/JsvFreeMoveActor/NexusNode.ts +10 -2
  415. package/utils/JsViewVueWidget/JsvFreeMoveActor/SetAction.ts +223 -100
  416. package/utils/JsViewVueWidget/JsvFreeMoveActor/SetCondition.ts +245 -64
  417. package/utils/JsViewVueWidget/JsvFreeMoveActor/SetState.ts +95 -29
  418. package/utils/JsViewVueWidget/JsvFreeMoveActor/index.js +27 -5
  419. package/utils/JsViewVueWidget/JsvInput/EditViewOperator.ts +11 -2
  420. package/utils/JsViewVueWidget/JsvInput/JsvInput.vue +30 -2
  421. package/utils/JsViewVueWidget/JsvLine/JsvLine.vue +24 -7
  422. package/utils/JsViewVueWidget/JsvMarquee.vue +1 -1
  423. package/utils/JsViewVueWidget/JsvNativeSharedDiv.vue +12 -10
  424. package/utils/JsViewVueWidget/JsvNinePatch.vue +22 -12
  425. package/utils/JsViewVueWidget/JsvPieChart.vue +93 -70
  426. package/utils/JsViewVueWidget/JsvPreload/JsvPreload.vue +34 -31
  427. package/utils/JsViewVueWidget/JsvQrcode/JsvQrcode.vue +2 -1
  428. package/utils/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue +56 -25
  429. package/utils/JsViewVueWidget/JsvScrollBox/JsvScrollFollow.vue +11 -11
  430. package/utils/JsViewVueWidget/JsvSector.vue +66 -28
  431. package/utils/JsViewVueWidget/JsvSmoothSlideContainer.vue +108 -0
  432. package/utils/JsViewVueWidget/JsvSoundPool.js +75 -12
  433. package/utils/JsViewVueWidget/JsvSwiper/JsvSmoothSwiper.vue +543 -0
  434. package/utils/JsViewVueWidget/JsvSwiper/JsvSwiper.vue +3 -3
  435. package/utils/JsViewVueWidget/JsvSwiper/JsvSwiper2.vue +644 -0
  436. package/utils/JsViewVueWidget/JsvSwiper/index.js +3 -1
  437. package/utils/JsViewVueWidget/JsvTextBox.vue +30 -1
  438. package/utils/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue +315 -299
  439. package/utils/JsViewVueWidget/JsvTouchModeSwitcher.vue +56 -14
  440. package/utils/JsViewVueWidget/JsvVisibleSensor/JsvVisibleSensor.vue +8 -6
  441. package/utils/JsViewVueWidget/TypesDiv/JsvPosterDiv.vue +54 -0
  442. package/utils/JsViewVueWidget/TypesDiv/JsvPosterImage.vue +88 -0
  443. package/utils/JsViewVueWidget/TypesDiv/JsvSmartDiv.vue +177 -0
  444. package/utils/JsViewVueWidget/TypesDiv/JsvSmartImage.vue +267 -0
  445. package/utils/JsViewVueWidget/index.js +9 -3
  446. package/utils/JsViewPlugin/JsvLatex/version.js +0 -24
  447. package/utils/JsViewVueWidget/JsvPosterDiv.vue +0 -56
  448. package/utils/JsViewVueWidget/JsvPosterImage.vue +0 -105
  449. /package/bin/types/utils/JsViewPlugin/JsvPlayer/{BrowserJsvPlayer-0.9.vue.d.ts → JsvPlayerBrowser-0.9.vue.d.ts} +0 -0
  450. /package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/{FreeMoveActor.vue.d.ts → JsvFreeMoveActor.vue.d.ts} +0 -0
  451. /package/utils/JsViewPlugin/JsvPlayer/{BrowserJsvPlayer-0.9.vue → JsvPlayerBrowser-0.9.vue} +0 -0
@@ -21,17 +21,19 @@
21
21
  absolute为依据measures中给的top, left布局
22
22
  *
23
23
  * name {string} 用于设置焦点的名称
24
- * padding {object} 控件内边距, 默认为{left: 0, right: 0, top: 0, bottom: 0}
25
- * direction {enum} (必选)控件方向 HORIZONTAL/VERTICAL
24
+ * padding {object} 控件内边距,默认为{left: 0, right: 0, top: 0, bottom: 0},
25
+ 用于压缩滚动判定区域(可视区域), 以达到扩大Clip区域,解决放大的焦点元素被Clip掉的问题
26
+ * direction {enum} (必选)控件方向 HORIZONTAL/VERTICAL, 子格子的延展方向, vertical代表一行一行来排布纵向无限延展, horizontal为一列列排横向无限
26
27
  * focusMoveType {int} 焦点移动的模式, 可通过 | 运算进行组合. 这些常量在FocusMoveType对象中, 需要import { FocusMoveType } from 'jsview'
27
28
  NO_ADJUST: 无特殊处理
28
- COLUMN_LOOP: 到达列首/尾后跳转到上/下一列, 只在水平滚动时生效
29
- ROW_LOOP: 到达行首/尾后跳转到上/下一行, 只在竖直滚动时生效
30
- COLUMN_FIND_NEAR: 一列中没有下一个元素时是否跳转到相邻列
31
- ROW_FIND_NEAR: 一行中没有下一个元素时是否跳转到相邻行
29
+ COLUMN_LOOP: 到达列首/尾后跳转到上/下一列, 只在direction=水平时生效
30
+ ROW_LOOP: 到达行首/尾后跳转到上/下一行, 只在direction=竖直时生效
31
+ COLUMN_FIND_NEAR: 一列中没有下一个元素时是否跳转到相邻列, 只在direction=水平时生效
32
+ ROW_FIND_NEAR: 一行中没有下一个元素时是否跳转到相邻行, 只在direction=竖直时生效
32
33
  * keepTraceRange { number } 可视区域前后多少屏的item在移出可视范围后不释放(默认移出可视区域的item会被释放)
33
34
  * initFocusId {int} 初始焦点,默认为0
34
- * slideSetting {SlideSetting} 页面滑动的设置, 目前SlideSetting有三个子类, 具体见 WidgetCommon 中的说明
35
+ * slideSetting {SlideSetting} 页面滑动的设置, 滚动的判定区域是MetroWidget的宽高去除padding后的区域,
36
+ 目前SlideSetting有三个子类, 具体见如下
35
37
  WholePageSlide
36
38
  @description 整页滚动的设置类
37
39
  @constructor {Object} {speed, easing, boundProtect}
@@ -39,25 +41,43 @@
39
41
  @description 无缝滚动的设置类
40
42
  @constructor {Object} {
41
43
  * startPercent: 左/上侧触发滚动的比例 0-1
42
- * endPercennt: 右/下侧触发滚动的比例 0-1
44
+ * endPercent: 右/下侧触发滚动的比例 0-1, 从起点计数, 末尾为1.0
43
45
  * headRange: 左/上按键触发滚动的区域比例 0-1
44
- * tailRange: 右/下按键触发滚动的区域比例 0-1
45
- * speed: 滚动速度, 像素/毫秒
46
- * easing: 滚动动画的easing
47
- * boundaryProtect: 确定滚动位置能否小于0或者大于最大长度
48
- * fixFirstPage: 首页不滚动
46
+ * tailRange: 右/下按键触发滚动的区域比例 0-1 从终点计数,末尾为0
47
+ startPercent/endPercent headRange/tailRange 二选一
48
+ * speed: 滚动速度, 像素/毫秒
49
+ * 用于计算duration的辅助值, 因为MetroWidget每个行间可能距离不一样;
50
+ * duration 未显式指定时, 会根据speed按匀速反算duration
51
+ * duration: 动画时长(毫秒)。当 duration 为 number 时优先于 speed;
52
+ * 若为 null/不传则按 speed 计算时长
53
+ * easing(String): 滚动动画的easing,可不填(实现中默认为空字符串);
54
+ * 非匀速时推荐为 "cubic-bezier(X, X, X, X)"
55
+ * boundaryProtect: 确定滚动位置能否小于0或者大于最大长度, 默认值为 START_PROTECT | END_PROTECT, 即都开启
56
+ START_PROTECT: 是否要让头部卡在边缘而不是滚动到headRange的位置
57
+ END_PROTECT: 是否要让尾部卡在边缘而不是滚动到tailRange的位置
58
+ 若不开启, 则slide出来的项目可能不是完整的项目, 而是以焦点元素的边缘对齐range(head或者tail)的百分比位置
59
+ 对齐其百分比值的方案为, 往head滑动时, 用起始边缘对准headRange, 往tail滑动时, 也是用起始边缘对准tailRange
60
+ * fixFirstPage: 默认为false, 代表第一屏不滚动, 当到第一屏边缘开始才按照正常的无缝滚动逻辑滚动,
61
+ 若回到第一屏区域时则会把第一屏完整的滚动回来
49
62
  * }
50
- FixPositionSlide
63
+ FixPositionSlide(废弃)
51
64
  @description 固定位置滚动的设置类
52
65
  @constructor {Object} {fixPercent, speed, easing, boundProtect}
53
66
  * itemConfig {Function (item) => {takeOverSlide: true}} 返回item的配置信息
54
- * enableItemRenderBreak {boolean} 按键事件是否能打断item的描画, 默认为false
67
+ * enableItemRenderBreak {boolean} 这个骨架图的开关, 默认为false
68
+ 开启后,
69
+ 1. MetroWidget首次展示时, 所有item均以骨架图绘制
70
+ 2. 用户输入事件(例如按键输入)可打断正在进行的item描画解析,
71
+ 处于打断状态时, 剩余未绘制的item不会绘制其内容而是显示这个位置的骨架图
55
72
  * placeHolderSetting {Object} item描画可打断时, 显示的占位符
56
73
  {
57
74
  backgroundColor: 纯色占位符
58
75
  focusBackgroundColor: 获焦时的颜色
59
76
  borderRadius: 占位符圆角设置
60
77
  gap: 占位符之间的gap
78
+ logoUrl: 占位符logo的url
79
+ logoWidth: 占位符logo的宽度
80
+ logoHeight: 占位符logo的高度
61
81
  }
62
82
  * sendFocusRectEvent {boolean} item获焦时在焦点树上冒泡一个事件, MetroWidget接收到事件时会触发滚动操作, 一般用于嵌套
63
83
  时的滚动
@@ -82,9 +102,19 @@
82
102
  METRO_WIDGET_CONST.ITEM_SLIDE.ACT_FOCUS_RECT_EVENT 按照子组件发送的focusRect事件滚动
83
103
  zIndex {int | object}: item的zIndex, 为object时可以分别设置{focus: 0, normal: 0}, 为number时则同时设置获焦和不获焦的zIndex,
84
104
  uid {string}: item的uid, 可以通过uid来设置焦点
85
- permanent {boolean}: 出去与是否保留
86
- enableTap {boolean}: 是否接受触控tap
87
- showSkeleton {boolean}: 打断描画时, 是否显示骨架图, 默认为true
105
+ permanent {boolean}: 离开可视范围后, 是否保留
106
+ enableTap {boolean}: 是否接受触控tap, 需要触控模式时设为true
107
+ showSkeleton {boolean}: 打断描画时, 是否显示为骨架图, 默认为true
108
+ enableLongPress {boolean}: item是否支持长按, 默认值为props.enableLongPress
109
+ placeHolderLayout{{left: number, top: number, width: number, height: number, logoWidth: number, logoHeight: number}}:
110
+ 占位符的布局微调:
111
+ left: 占位符的left偏移量, 可不填, 默认等于格子布局的左上角位置(0px)
112
+ top: 占位符的top偏移量, 可不填, 默认等于格子布局的左上角位置(0px)
113
+ width: 占位符的width, 可不填, 默认等于格子布局的宽度(和placeHolderLayout平级的width设定)
114
+ height: 占位符的height, 可不填, 默认等于格子布局的高度(和placeHolderLayout平级的height设定)
115
+ logoWidth: 占位符的logoWidth偏移量, 可不填, 默认等于props.placeHolderSetting的LogoWidth
116
+ logoHeight: 占位符的logoHeight偏移量, 可不填, 默认等于props.placeHolderSetting的LogoHeight
117
+ bindSpatialNav {boolean}: 是否绑定空间导航, 默认值为false
88
118
  }
89
119
  *
90
120
  * onFocus {function} 控件获取焦点的回调
@@ -94,19 +124,37 @@
94
124
  "direction": {EdgeDirection}边缘方向,
95
125
  "rect": 到达边缘时的区域{x: 0, y: 0, width: 0,height: 0}
96
126
  }
97
- onScroll {function} 滚动时的回调 (visibleStart, visibleRange, totalSize) => {}
127
+ onScroll {function} 滚动时的回调, 此为异步回调, 可以进行refreshData, slideTo, updateItemSize等操作
128
+ (visibleStart, visibleRange, totalSize) => {}
129
+ visibleStart: 可视区域的起点
130
+ visibleRange: 可视区域大小(不含padding)
131
+ totalSize: 所有item的总长
132
+ syncOnScroll {function} 滚动时同步的回调,只用来触发与自身无关的操作,不要调用自身的refreshData, slideTo, updateItemSize等方法
133
+ (visibleStart, visibleRange, totalSize) => {}
98
134
  visibleStart: 可视区域的起点
99
135
  visibleRange: 可视区域大小(不含padding)
100
136
  totalSize: 所有item的总长
101
137
  * onFocusRectChange {() => void} 焦点区域变化的回调
102
138
  * onAllItemResizeDone {() => void} 所有item resize完成的回调
139
+ * onFocusChange {(id: number) => void} 焦点变化的回调
103
140
  * loadAll {boolean} 加载不显示的view,触控场景使用
104
- * flingPageWidth {}
105
- * flingPageEdge {}
141
+ * flingPageWidth {number} Fling 手势分页宽度(像素),-1 表示使用默认策略
142
+ * flingPageEdge {number} Fling 边缘触发区域比例(0-1),默认 1/4
106
143
  * disableClip {boolean} 取消显示范围的clipView
107
144
  * touchFlag {int} 触控的开关, 0:关闭, 1:打开. 打开后支持drag, fling; item的tap则由measuresObject的enableTap控制
145
+ * mouseFlag {int} 鼠标滚轮的开关, 0:关闭, 1:打开. 打开后支持鼠标滚轮滚动
146
+ * mouseConfig {Object} 鼠标配置, 仅在mouseFlag为1时生效
147
+ {
148
+ wheelRate: {number} 鼠标滚轮滚动速度, 默认值为10
149
+ }
108
150
  * enableLongPress {boolean} 支持长按, 长按模式下, onkeyup时触发onclick, 长按触发后, onclik不触发
109
151
  * enableDebug {boolean} 显示debug用的item框
152
+ * renderAcc {boolean} 是否使用Fbo加速渲染
153
+ * fullDisplayMode {boolean} 是否全屏显示
154
+ * onSizeChange {function} 尺寸变化时的回调, 仅在fullDisplayMode为true时生效
155
+ * onTouchFocus {function} 有触控的时候回调
156
+ * onMouseEnter {function} 鼠标进入的时候回调
157
+ * onMouseLeave {function} 鼠标离开的时候回调
110
158
 
111
159
  * methods:
112
160
  getFocusBlockRef 获取此MetroWidget的 jsv-focus-block句柄,可以使用requestFocus完成获焦
@@ -221,44 +269,56 @@
221
269
  @description 获取 item 的布局位置信息, index对应的item不存在时, 返回null
222
270
  @params {number} index item 的 index
223
271
  @return {object} {left: number, top: number, width: number, height: number} | null
272
+ tmpDisableRenderBreak
273
+ @description 临时设置是否打断描画, 一般用于防止刷新数据导致闪烁
274
+ cleanFocusStatus
275
+ @description 清除焦点状态
276
+ getItemVisibleState
277
+ @description 获取 item 的可见状态
278
+ @params {object} leftTop 左上角坐标
279
+ @params {object} rightBottom 右下角坐标
280
+ @return {array} 可见状态列表
281
+ getParentWidgetHandler
282
+ @description 获取父MetroWidget的handler对象
283
+ @return {object} 父MetroWidget对象
224
284
  slots:
225
- renderItem: 该slot用于描画每个单元格
285
+ renderItem: 该slot用于描画MetroWidget的item内容
286
+ slotProps: {
287
+ data: {Object} 当前item的数据
288
+ query: {Object} 获取一些额外信息的对象
289
+ {
290
+ id: {int} item的id,
291
+ position: {Function} (index : int) => {left: 0, top: 0, width: 0, height: 0}
292
+ 获取 item 相对 MetroWidget 左上角坐标
293
+ templatePosition: {Function} (index : int) => {left: 0, top: 0, width: 0, height: 0}
294
+ 获取 item 的布局坐标, 一般用于自定义滚动
295
+ getCurrentFocusId: {Function} () => {id: 0, index: 0}
296
+ 获取当前焦点信息,id 为在可获得焦点元素列表中的索引,index 为在所有元素列表中的索引
297
+ slideTo: {Function} (targetPosition : int, doAnim : Boolean) => void
298
+ 滚动到指定位置,注意这个位置是 item 的布局坐标,另外当某些item需要接管滚动时,itemConfig中takeOverSlide要为true。
299
+ updateItemSize: {(index: number, newSize: {width: number, height: number}, animInfo: {anchor: number, duration: number, onEnd: Function}) => void} 更新item的尺寸, 目前仅在list模式下可用.
300
+ params:
301
+ index: 更新item的index,
302
+ newSize: 新的尺寸
303
+ animInfo: 动画设置
304
+ anchor: 缩放锚点
305
+ duration: 动画时长(毫秒)
306
+ onEnd: 动画结束回调
307
+ widgetHandler: {Object} 获取MetroWidget的handler对象
308
+ }
309
+ onAction: {Object} 单元格内控件需要通过onAction.register方法向MetroWidget注册 item 的回调, 回调函数有:
310
+ onFocus: {Function} widget获焦状态下, item获焦的回调
311
+ onBlur: {Function} widget获焦状态下, item失焦的回调
312
+ onGaze: {Function} item获焦的回调, 无论widget是否为获焦状态, 此时该item绘制的zIndex会高于其他item, 可盖住其他item
313
+ onIgnore: {Function} itemh失焦的回调, 无论widget是否为获焦状态, 此时item从高zIndex降回原值, 继续遵照index变化越高zIndex越高的顺序
314
+ onClick: {Function} item点击的回调
315
+ onWidgetEdge: {Function} 到达边缘的回调
316
+ onLongPress: {Function} item长按的回调
317
+ onItemEdge: {Function} 若单元格内另有可接管按键的控件(如MetroWidget),该控件到达边缘需要通知MetroWidget时的回调
318
+ }
226
319
  background: 该slot描画在item后, 一般用于描画需要跟随MetroWidget滚动的内容
227
320
  foreground: 该slot描画在item前, 一般用于描画需要跟随MetroWidget滚动的内容
228
321
  * 【技巧说明】
229
- * Q: 插槽props如何使用?
230
- * A: data: 当前item的数据
231
- * query: 获取一些额外信息的对象
232
- {
233
- id: {int} item的id,
234
- position: {Function} (index : int) => {left: 0, top: 0, width: 0, height: 0}
235
- 获取 item 相对 MetroWidget 左上角坐标
236
- templatePosition: {Function} (index : int) => {left: 0, top: 0, width: 0, height: 0}
237
- 获取 item 的布局坐标, 一般用于自定义滚动
238
- getCurrentFocusId: {Function} () => {id: 0, index: 0}
239
- 获取当前焦点信息,id 为在可获得焦点元素列表中的索引,index 为在所有元素列表中的索引
240
- slideTo: {Function} (targetPosition : int, doAnim : Boolean) => void
241
- 滚动到指定位置,注意这个位置是 item 的布局坐标,另外当某些item需要接管滚动时,itemConfig中takeOverSlide要为true。
242
- updateItemSize: {(index: number, newSize: {width: number, height: number}, animInfo: {anchor: number, duration: number, onEnd: Function}) => void} 更新item的尺寸, 目前仅在list模式下可用.
243
- params:
244
- index: 更新item的index,
245
- newSize: 新的尺寸
246
- animInfo: 动画设置
247
- anchor: 缩放锚点
248
- duration: 动画时长(毫秒)
249
- onEnd: 动画结束回调
250
-
251
- }
252
- * onItemEdge: 若单元格内另有可接管按键的控件(如MetroWidget),该控件到达边缘需要通知MetroWidget时的回调
253
- * onAction: 单元格内控件需要通过onAction.register方法向MetroWidget注册 item 的回调,回调函数有
254
- onFocus: widget获焦状态下, item获焦的回调
255
- onBlur: widget获焦状态下, item失焦的回调
256
- onGaze: item获焦的回调, 无论widget是否为获焦状态
257
- onIgnore: itemh失焦的回调, 无论widget是否为获焦状态
258
- onClick: item点击的回调
259
- onWidgetEdge: 到达边缘的回调
260
- onLongPress: item长按的回调
261
- *
262
322
  * Q: 如何进行布局,定制每个格的尺寸?
263
323
  * A: 首先选定一个布局的方式,一列列地横向布局(HROIZONTAL)还是一行行地纵向(VERTICAL)布局,设置给属性direction
264
324
  * 然后将单元格尺寸反馈器(函数)设置到measures中,进行布局时,组件会回调measures函数获得每个单元格的尺寸,
@@ -281,6 +341,8 @@
281
341
  * A: 焦点处理: item内的元素需要在注册的onFocus和onBlue回调中管理焦点. 即在onFocus时把焦点设置到内部的可获焦节点;
282
342
  onBlur时将焦点给回父MetroWidget, 注意此时是焦点树上的子节点往父节点切换, 此时为了把子节点blur掉,
283
343
  requestFocus函数需要传递一个false参数
344
+ * Q: 如何校验元素重复导致的问题
345
+ * A: 通过MetroWidgetDebugger.enableOverlapCheck(true)来开启元素重复校验,开启后每次addItem会检查新加入的item与之前所有item的内容矩形(不含margin)是否重叠,重叠则errorLogger报错。导入方式为import { MetroWidgetDebugger } from "jsview";
284
346
  * 注意点:
285
347
  * 1. MetroWidget中存在一些处理依赖vue的callback执行顺序, 因此涉及更改MetroWidget状态的处理不要在watchPostEffect中调用
286
348
  -->
@@ -306,8 +368,10 @@ import {
306
368
  import { ForgeConst } from "../../JsViewVueTools/ForgeConstDefine.ts";
307
369
  import DebugFrame from "./DebugFrame.vue";
308
370
  import { createCanvasText } from "./DebugTools.ts";
371
+ import { KEY_MODE, TOUCH_MODE, JsvInteractionMode } from "../../JsViewVueTools/JsvInteractionMode";
309
372
 
310
373
  const props = defineProps({
374
+ // 内边距;用于压缩滚动判定区域(可视区域),默认四边为 0
311
375
  padding: {
312
376
  type: Object,
313
377
  default() {
@@ -319,91 +383,119 @@ const props = defineProps({
319
383
  };
320
384
  },
321
385
  },
386
+ // 列表方向:HORIZONTAL(横向)或 VERTICAL(纵向)
322
387
  direction: {
323
388
  type: Symbol,
324
389
  default: HORIZONTAL,
325
390
  },
391
+ // 控件高度(必选)
326
392
  height: {
327
393
  type: Number,
328
394
  required: true,
329
395
  },
396
+ // 控件宽度(必选)
330
397
  width: {
331
398
  type: Number,
332
399
  required: true,
333
400
  },
401
+ // 焦点移动到边缘时的回调;可为函数或字符串(见引擎约定)
334
402
  onEdge: {
335
- type: Function,
403
+ type: [Function, String],
336
404
  default: null,
337
405
  },
406
+ // 控件获取焦点时的回调
338
407
  onFocus: {
339
408
  type: Function,
340
409
  default: null,
341
410
  },
411
+ // 控件失去焦点时的回调
342
412
  onBlur: {
343
413
  type: Function,
344
414
  default: null,
345
415
  },
416
+ // 触控按下并建立焦点相关流程后的回调(如滚动锚点更新后触发)
417
+ onTouchFocus: {
418
+ type: Function,
419
+ default: null,
420
+ },
421
+ // 是否预加载当前不可见区域的 item 视图;触控场景可设为 true
346
422
  loadAll: {
347
423
  type: Boolean,
348
424
  default: false,
349
425
  },
426
+ // Fling 分页宽度(像素),-1 表示使用默认
350
427
  flingPageWidth: {
351
428
  type: Number,
352
429
  default: -1,
353
430
  },
431
+ // Fling 边缘区域比例(0-1),用于分页/吸附等策略
354
432
  flingPageEdge: {
355
433
  type: Number,
356
434
  default: 1 / 4,
357
435
  },
436
+ // 根据数据项返回模板尺寸与行为信息(必选)
358
437
  measures: {
359
438
  type: Function,
360
439
  required: true,
361
440
  },
441
+ // 初始可获焦 item 的 id,默认 0
362
442
  initFocusId: {
363
443
  type: Number,
364
444
  default: 0,
365
445
  },
446
+ // 静态数据列表;与 provideData 二选一
366
447
  data: {
367
448
  type: Array,
368
449
  },
450
+ // 控件左上角 x,默认 0
369
451
  left: {
370
452
  type: Number,
371
453
  default: 0,
372
454
  },
455
+ // 控件左上角 y,默认 0
373
456
  top: {
374
457
  type: Number,
375
458
  default: 0,
376
459
  },
460
+ // 焦点块名称,用于焦点树与调试标识
377
461
  name: {
378
462
  type: String,
379
463
  },
464
+ // 空间导航邻接查找是否使用历史路径信息(传给 Metro 模板)
380
465
  supportHistoryPath: {
381
466
  type: Boolean,
382
467
  default: true,
383
468
  },
469
+ // 返回单项额外配置(如 takeOverSlide 等)
384
470
  itemConfig: {
385
471
  type: Function,
386
472
  },
473
+ // 焦点 id 变化时的回调 (id) => void
387
474
  onFocusChange: {
388
475
  type: Function,
389
476
  },
477
+ // 页面滑动/滚动策略配置(如 SeamlessSlide)
390
478
  slideSetting: {
391
479
  type: SlideSetting,
392
480
  default() {
393
481
  return new SeamlessSlide({ startPercent: 0.2, endPercent: 0.8 });
394
482
  },
395
483
  },
484
+ // 布局类型:"relative"(自动)或 "absolute"(按 measures 的 left/top)
396
485
  layoutType: {
397
486
  type: String,
398
487
  default: "relative",
399
488
  },
489
+ // 是否启用骨架图与描画打断(首屏骨架、按键打断等)
400
490
  enableItemRenderBreak: {
401
491
  type: Boolean,
402
492
  default: false,
403
493
  },
494
+ // 异步/分页提供数据的回调;与 data 二选一
404
495
  provideData: {
405
496
  type: Function,
406
497
  },
498
+ // 占位符样式(背景色、圆角、logo 等)
407
499
  placeHolderSetting: {
408
500
  type: Object,
409
501
  default() {
@@ -412,43 +504,89 @@ const props = defineProps({
412
504
  };
413
505
  },
414
506
  },
507
+ // item 获焦时是否在焦点树上冒泡 focusRect 事件(嵌套滚动时常用)
415
508
  sendFocusRectEvent: {
416
509
  type: Boolean,
417
510
  default: false,
418
511
  },
512
+ // 可视区前后保留多少屏 item 不释放;-1 等表示走内部默认策略
419
513
  keepTraceRange: {
420
514
  type: Number,
421
515
  default: -1,
422
516
  },
517
+ // 滚动结束后的异步回调 (visibleStart, visibleRange, totalSize) => {}
423
518
  onScroll: {
424
519
  type: Function,
425
520
  },
521
+ // 滚动时的同步回调;勿在其中调用 refreshData/slideTo 等改变自身状态的方法
522
+ syncOnScroll: {
523
+ type: Function,
524
+ },
525
+ // 焦点移动模式位标志(FocusMoveType 组合)
426
526
  focusMoveType: {
427
527
  type: Number,
428
528
  default: 0,
429
529
  },
530
+ // 是否取消可视区域 clip(子项可绘制到 MetroWidget 矩形外)
430
531
  disableClip: {
431
532
  type: Boolean,
432
533
  default: false,
433
534
  },
535
+ // 焦点矩形区域变化时的回调
434
536
  onFocusRectChange: {
435
537
  type: Function,
436
538
  },
539
+ // 所有 item 尺寸计算完成后的回调
437
540
  onAllItemResizeDone: {
438
541
  type: Function,
439
542
  },
543
+ // 触控开关:0 关闭,大于 0 开启(支持 drag、fling 等)
440
544
  touchFlag: {
441
545
  type: Number,
442
546
  default: 0,
443
547
  },
548
+ // 是否支持长按;长按模式下 onkeyup 触发 onclick 等行为见引擎约定
444
549
  enableLongPress: {
445
550
  type: Boolean,
446
551
  default: false,
447
552
  },
553
+ // 是否绘制调试用 item 边框
448
554
  enableDebug: {
449
555
  type: Boolean,
450
556
  default: false,
451
557
  },
558
+ // 是否使用 FBO 加速渲染
559
+ renderAcc: {
560
+ type: Boolean,
561
+ default: false,
562
+ },
563
+ // 鼠标滚轮开关:0 关闭,1 开启
564
+ mouseFlag: {
565
+ type: Number,
566
+ default: 0,
567
+ },
568
+ // 鼠标相关配置(如 wheelRate),仅在 mouseFlag 为 1 时生效
569
+ mouseConfig: {
570
+ type: Object,
571
+ },
572
+ // 是否全屏显示模式(影响布局与 onSizeChange 等)
573
+ fullDisplayMode: {
574
+ type: Boolean,
575
+ default: false,
576
+ },
577
+ // 尺寸变化回调;仅在 fullDisplayMode 为 true 时由引擎侧触发
578
+ onSizeChange: {
579
+ type: Function,
580
+ default: null,
581
+ },
582
+ onMouseEnter: {
583
+ type: Function,
584
+ default: null,
585
+ },
586
+ onMouseLeave: {
587
+ type: Function,
588
+ default: null,
589
+ },
452
590
  });
453
591
 
454
592
  const renderBreakKey = props.enableItemRenderBreak ? RENDER_ITEM_BREAK_KEY : "";
@@ -460,6 +598,7 @@ const slideDivLeft = ref(0);
460
598
  const slideDivTop = ref(0);
461
599
  const focusNode = shallowRef(null);
462
600
  const pageUpdateToken = ref(0);
601
+ const rootDiv = shallowRef(null);
463
602
 
464
603
  const touchDiv = shallowRef(null);
465
604
  const touchDivSize = reactive({
@@ -468,8 +607,21 @@ const touchDivSize = reactive({
468
607
  });
469
608
 
470
609
  const normalizedPlaceHolder = computed(() => {
610
+ let logoInfo = null;
611
+ if (
612
+ typeof props.placeHolderSetting.logoUrl == "string" &&
613
+ typeof props.placeHolderSetting.logoWidth == "number" &&
614
+ typeof props.placeHolderSetting.logoHeight == "number"
615
+ ) {
616
+ logoInfo = {
617
+ url: props.placeHolderSetting.logoUrl,
618
+ width: props.placeHolderSetting.logoWidth,
619
+ height: props.placeHolderSetting.logoHeight,
620
+ };
621
+ }
471
622
  return {
472
623
  gap: props.placeHolderSetting.gap ?? 0,
624
+ logoInfo: logoInfo,
473
625
  borderRadius: props.placeHolderSetting.borderRadius ?? 0,
474
626
  backgroundColor: props.placeHolderSetting.backgroundColor,
475
627
  focusBackgroundColor:
@@ -490,8 +642,9 @@ const {
490
642
  onTouchDown,
491
643
  onTouchRelease,
492
644
  currentFocusIndex,
493
- modeForExport,
494
645
  onDispatchKeyDown,
646
+ isFocus,
647
+ rootNativeViewId,
495
648
  } = setup(
496
649
  props,
497
650
  itemRender,
@@ -504,6 +657,7 @@ const {
504
657
  pageUpdateToken,
505
658
  touchDiv,
506
659
  touchDivSize,
660
+ rootDiv,
507
661
  "common"
508
662
  );
509
663
 
@@ -536,125 +690,173 @@ onBeforeUnmount(() => {
536
690
  }
537
691
  });
538
692
 
693
+ const innerDisableClip = computed(() => {
694
+ return props.disableClip || props.fullDisplayMode;
695
+ });
696
+
539
697
  defineExpose(exportObject);
540
698
  </script>
541
699
 
542
700
  <template>
543
701
  <div
702
+ ref="rootDiv"
544
703
  :style="{
545
704
  left: left,
546
705
  top: top,
547
706
  width: width,
548
707
  height: height,
549
- overflow: disableClip ? null : 'hidden',
708
+ overflow: innerDisableClip ? null : 'hidden',
550
709
  }"
710
+ @mouseenter="props.onMouseEnter"
711
+ @mouseleave="props.onMouseLeave"
551
712
  >
552
713
  <div
553
714
  :style="{
554
- left: widgetRectInfo.padding.left,
555
- top: widgetRectInfo.padding.top,
715
+ width: width,
716
+ height: height,
556
717
  }"
718
+ :data-jsv-vw-innerview="rootNativeViewId"
557
719
  >
558
720
  <div
559
- id="slideDiv"
560
- key="slideDiv"
561
- ref="slideDiv"
562
721
  :style="{
563
- left: slideDivLeft,
564
- top: slideDivTop,
722
+ left: widgetRectInfo.padding.left,
723
+ top: widgetRectInfo.padding.top,
565
724
  }"
566
725
  >
567
726
  <div
568
- ref="touchDiv"
727
+ id="slideDiv"
728
+ key="slideDiv"
729
+ ref="slideDiv"
569
730
  :style="{
570
- width: touchDivSize.width,
571
- height: touchDivSize.height,
731
+ left: slideDivLeft,
732
+ top: slideDivTop,
572
733
  }"
573
734
  >
574
- <div>
575
- <slot name="background"></slot>
576
- </div>
577
- <div ref="locateDiv">
578
- <jsv-focus-block
579
- ref="focusNode"
580
- :name="name"
581
- :onAction="{
582
- onFocus: focusBlockOnFocus,
583
- onBlur: focusBlockOnBlur,
584
- onKeyDown: focusBlockOnKeyDown,
585
- onKeyUp: focusBlockOnKeyUp,
586
- onCustomEvent: focusBlockOnCustomEvent,
587
- onDispatchKeyDown,
588
- }"
589
- >
590
- <div
591
- v-for="(item, index) in renderData"
592
- :key="
593
- pageUpdateToken +
594
- '_' +
595
- item.index +
596
- '-' +
597
- item.renderKey.value
598
- "
599
- :ref="item.divRef"
600
- data-jsv-vw-test-rect="1"
601
- :style="{
602
- left: item.templateInfo.left,
603
- top: item.templateInfo.top,
604
- width: item.templateInfo.width,
605
- height: item.templateInfo.height,
606
- zIndex: item.renderStyle.zIndex,
735
+ <div
736
+ ref="touchDiv"
737
+ :style="{
738
+ width: touchDivSize.width,
739
+ height: touchDivSize.height,
740
+ }"
741
+ >
742
+ <div>
743
+ <slot name="background"></slot>
744
+ </div>
745
+ <div ref="locateDiv">
746
+ <jsv-focus-block
747
+ ref="focusNode"
748
+ :name="name"
749
+ :onAction="{
750
+ onFocus: focusBlockOnFocus,
751
+ onBlur: focusBlockOnBlur,
752
+ onKeyDown: focusBlockOnKeyDown,
753
+ onKeyUp: focusBlockOnKeyUp,
754
+ onCustomEvent: focusBlockOnCustomEvent,
755
+ onDispatchKeyDown,
607
756
  }"
608
- @click="item.onTap.value"
609
757
  >
610
- <DebugFrame
611
- v-if="enableDebug"
612
- :width="item.templateInfo.width"
613
- :height="item.templateInfo.height"
614
- :sourceId="debugFrameSourceId"
615
- ></DebugFrame>
616
- <div
617
- v-if="
618
- !enableItemRenderBreak || item.mounted.value || itemRender
619
- "
620
- :key="renderBreakKey"
621
- :ref="item.slotRef"
622
- :id="`${name}_${index}`"
623
- >
624
- <slot-component key="__QcodeJsviewFreezeComponent">
625
- <slot
626
- name="renderItem"
627
- :data="item.customerData"
628
- :onEdge="_onFocusableItemEdge"
629
- :onAction="item.registerObj"
630
- :query="item.query"
631
- :onItemEdge="_onFocusableItemEdge"
632
- ></slot>
633
- </slot-component>
634
- </div>
635
758
  <div
636
- v-if="
637
- enableItemRenderBreak &&
638
- placeHolderSetting &&
639
- !item.mounted.value &&
640
- item.itemConfig.showSkeleton
759
+ v-for="(item, index) in renderData"
760
+ :key="
761
+ pageUpdateToken +
762
+ '_' +
763
+ item.index +
764
+ '-' +
765
+ item.renderKey.value
641
766
  "
767
+ :ref="item.divRef"
768
+ data-jsv-vw-test-rect="1"
642
769
  :style="{
643
- width: item.renderStyle.width - normalizedPlaceHolder.gap,
644
- height: item.renderStyle.height - normalizedPlaceHolder.gap,
645
- backgroundColor:
646
- currentFocusIndex == item.index && modeForExport == 2
647
- ? normalizedPlaceHolder.focusBackgroundColor
648
- : normalizedPlaceHolder.backgroundColor,
649
- borderRadius: normalizedPlaceHolder.borderRadius,
770
+ left: item.templateInfo.left,
771
+ top: item.templateInfo.top,
772
+ width: item.templateInfo.width,
773
+ height: item.templateInfo.height,
774
+ zIndex: item.renderStyle.zIndex,
650
775
  }"
651
- ></div>
652
- </div>
653
- </jsv-focus-block>
776
+ @click="item.onTap.value"
777
+ >
778
+ <DebugFrame
779
+ v-if="enableDebug"
780
+ :width="item.templateInfo.width"
781
+ :height="item.templateInfo.height"
782
+ :sourceId="debugFrameSourceId"
783
+ ></DebugFrame>
784
+ <div
785
+ :style="{
786
+ width: item.templateInfo.width,
787
+ height: item.templateInfo.height,
788
+ }"
789
+ :data-jsv-vw-innerview="item.rootNativeViewId"
790
+ >
791
+ <div
792
+ v-if="
793
+ !item.renderBreak ||
794
+ item.mounted.value ||
795
+ itemRender
796
+ "
797
+ :key="renderBreakKey"
798
+ :ref="item.slotRef"
799
+ :id="`${name}_${index}`"
800
+ :__metrowidget-index="item.index"
801
+ >
802
+ <slot-component key="__QcodeJsviewFreezeComponent">
803
+ <slot
804
+ name="renderItem"
805
+ :data="item.customerData"
806
+ :onEdge="_onFocusableItemEdge"
807
+ :onAction="item.registerObj"
808
+ :query="item.query"
809
+ :onItemEdge="_onFocusableItemEdge"
810
+ ></slot>
811
+ </slot-component>
812
+ </div>
813
+ <div
814
+ v-if="
815
+ item.renderBreak
816
+ && placeHolderSetting
817
+ && !item.mounted.value
818
+ && item.itemConfig.showSkeleton
819
+ && item.placeHolderLayout
820
+ "
821
+ :style="{
822
+ left: item.placeHolderLayout.left,
823
+ top: item.placeHolderLayout.top,
824
+ width: item.placeHolderLayout.width,
825
+ height: item.placeHolderLayout.height,
826
+ backgroundColor:
827
+ isFocus &&
828
+ currentFocusIndex == item.index &&
829
+ JsvInteractionMode == KEY_MODE
830
+ ? normalizedPlaceHolder.focusBackgroundColor
831
+ : normalizedPlaceHolder.backgroundColor,
832
+ borderRadius: normalizedPlaceHolder.borderRadius,
833
+ }"
834
+ >
835
+ <img
836
+ v-if="normalizedPlaceHolder.logoInfo"
837
+ :src="`url(${normalizedPlaceHolder.logoInfo.url})`"
838
+ :style="{
839
+ left:
840
+ (item.placeHolderLayout.width -
841
+ item.placeHolderLayout.logoWidth) /
842
+ 2,
843
+ top:
844
+ (item.placeHolderLayout.height -
845
+ item.placeHolderLayout.logoHeight) /
846
+ 2,
847
+ width: item.placeHolderLayout.logoWidth,
848
+ height: item.placeHolderLayout.logoHeight,
849
+ }"
850
+ />
851
+ </div>
852
+ </div>
853
+ </div>
854
+ </jsv-focus-block>
855
+ </div>
856
+ </div>
857
+ <div>
858
+ <slot name="foreground"></slot>
654
859
  </div>
655
- </div>
656
- <div>
657
- <slot name="foreground"></slot>
658
860
  </div>
659
861
  </div>
660
862
  </div>