@shijiu/jsview-vue 2.2.201 → 2.2.373

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 (299) hide show
  1. package/bin/browser/BrowserApic.vue.mjs +2 -13
  2. package/bin/browser/BrowserApic2.vue.mjs +2 -13
  3. package/bin/browser/BrowserApicLib.mjs +24 -24
  4. package/bin/browser/BrowserAudio.vue.mjs +2 -10
  5. package/bin/browser/BrowserJsvFragShaderView.vue.mjs +21 -5
  6. package/bin/browser/BrowserJsvLatex.vue.mjs +39 -16
  7. package/bin/browser/BrowserPreload.vue.mjs +1 -5
  8. package/bin/browser/BrowserQrcode.vue.mjs +1 -5
  9. package/bin/browser/BrowserSpray.vue.mjs +2 -12
  10. package/bin/browser/BrowserTextureAnim.vue.mjs +2 -12
  11. package/bin/export-sfc.mjs +3 -3
  12. package/bin/jsview-vue-common.mjs +3 -3
  13. package/bin/jsview-vue.mjs +3216 -2086
  14. package/bin/types/JsViewEngineWidget/CheckType.d.ts +4 -0
  15. package/bin/types/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue.d.ts +37 -33
  16. package/bin/types/JsViewEngineWidget/JsvFocus/JsvFocusHub.d.ts +4 -0
  17. package/bin/types/JsViewEngineWidget/JsvFocus/JsvFocusManager.d.ts +15 -2
  18. package/bin/types/JsViewEngineWidget/MetroWidget/Const.d.ts +4 -0
  19. package/bin/types/JsViewEngineWidget/MetroWidget/Dispatcher.d.ts +4 -0
  20. package/bin/types/JsViewEngineWidget/MetroWidget/ListWidget.vue.d.ts +14 -3
  21. package/bin/types/JsViewEngineWidget/MetroWidget/MetroWidget.vue.d.ts +280 -3
  22. package/bin/types/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.d.ts +7 -1
  23. package/bin/types/JsViewEngineWidget/MetroWidget/PageUpdater.d.ts +4 -0
  24. package/bin/types/JsViewEngineWidget/MetroWidget/RenderItem.d.ts +4 -0
  25. package/bin/types/JsViewEngineWidget/MetroWidget/Slide.d.ts +4 -0
  26. package/bin/types/JsViewEngineWidget/MetroWidget/SlotComponent.vue.d.ts +4 -0
  27. package/bin/types/JsViewEngineWidget/MetroWidget/VisibleInfo.d.ts +4 -0
  28. package/bin/types/JsViewEngineWidget/MetroWidget/WidgetRectInfo.d.ts +4 -0
  29. package/bin/types/JsViewEngineWidget/RangeModel.d.ts +4 -0
  30. package/bin/types/JsViewEngineWidget/TemplateParser/CommonMetroTemplate.d.ts +4 -0
  31. package/bin/types/JsViewEngineWidget/TemplateParser/Fence.d.ts +4 -0
  32. package/bin/types/JsViewEngineWidget/TemplateParser/ListMetroTemplate.d.ts +4 -0
  33. package/bin/types/JsViewEngineWidget/TemplateParser/MetroTemplate.d.ts +4 -0
  34. package/bin/types/JsViewEngineWidget/TemplateParser/TemplateItemAdder.d.ts +4 -0
  35. package/bin/types/JsViewEngineWidget/TemplateParser/index.d.ts +4 -0
  36. package/bin/types/JsViewEngineWidget/WidgetCommon.d.ts +4 -0
  37. package/bin/types/JsViewEngineWidget/index.d.ts +5 -1
  38. package/bin/types/JsViewPlugin/JsvAccount/JsvAccount.d.ts +4 -0
  39. package/bin/types/JsViewPlugin/JsvAudio/AudioProxy.d.ts +4 -0
  40. package/bin/types/JsViewPlugin/JsvAudio/BrowserAudio/BrowserAudio.vue.d.ts +4 -0
  41. package/bin/types/JsViewPlugin/JsvAudio/BrowserAudio/JsvSystemAudio.vue.d.ts +4 -0
  42. package/bin/types/JsViewPlugin/JsvAudio/CheckType.d.ts +4 -0
  43. package/bin/types/JsViewPlugin/JsvAudio/Events.d.ts +4 -0
  44. package/bin/types/JsViewPlugin/JsvAudio/JsvAudio.vue.d.ts +4 -0
  45. package/bin/types/JsViewPlugin/JsvAudio/JsvAudioBridgeProxy.d.ts +4 -0
  46. package/bin/types/JsViewPlugin/JsvAudio/JsvAudioProxy.vue.d.ts +4 -0
  47. package/bin/types/JsViewPlugin/JsvAudio/PluginLoader.d.ts +4 -0
  48. package/bin/types/JsViewPlugin/JsvAudio/ScreenLockManager.d.ts +4 -0
  49. package/bin/types/JsViewPlugin/JsvAudio/index.d.ts +4 -0
  50. package/bin/types/JsViewPlugin/JsvAudio/version.d.ts +5 -0
  51. package/bin/types/JsViewPlugin/JsvLatex/BrowserDomBuilder.d.ts +4 -0
  52. package/bin/types/JsViewPlugin/JsvLatex/BrowserJsvLatex.vue.d.ts +4 -0
  53. package/bin/types/JsViewPlugin/JsvLatex/Color.d.ts +4 -0
  54. package/bin/types/JsViewPlugin/JsvLatex/JsvLatex.vue.d.ts +24 -0
  55. package/bin/types/JsViewPlugin/JsvLatex/JsvLatexBridgeProxy.d.ts +4 -0
  56. package/bin/types/JsViewPlugin/JsvLatex/JsvLatexProxy.vue.d.ts +4 -0
  57. package/bin/types/JsViewPlugin/JsvLatex/PluginLoader.d.ts +4 -0
  58. package/bin/types/JsViewPlugin/JsvLatex/index.d.ts +5 -0
  59. package/bin/types/JsViewPlugin/JsvLatex/version.d.ts +4 -0
  60. package/bin/types/JsViewPlugin/index.d.ts +4 -0
  61. package/bin/types/JsViewVueTools/ConstSymbol.d.ts +4 -0
  62. package/bin/types/JsViewVueTools/DebugContentShellJBridge.d.ts +4 -0
  63. package/bin/types/JsViewVueTools/DebugTool.d.ts +4 -0
  64. package/bin/types/JsViewVueTools/DefaultKeyMap.d.ts +4 -0
  65. package/bin/types/JsViewVueTools/FeatureActive.d.ts +14 -0
  66. package/bin/types/JsViewVueTools/ForgeConstDefine.d.ts +4 -0
  67. package/bin/types/JsViewVueTools/ForgeHandles.d.ts +7 -3
  68. package/bin/types/JsViewVueTools/JsvDemoTester.d.ts +4 -0
  69. package/bin/types/JsViewVueTools/JsvDynamicCssStyle.d.ts +20 -1
  70. package/bin/types/JsViewVueTools/JsvDynamicKeyFrames.d.ts +21 -2
  71. package/bin/types/JsViewVueTools/JsvFederationTools.d.ts +4 -0
  72. package/bin/types/JsViewVueTools/JsvHashHistory.d.ts +4 -0
  73. package/bin/types/JsViewVueTools/JsvImpactTracer.d.ts +8 -4
  74. package/bin/types/JsViewVueTools/JsvPerformance.d.ts +4 -0
  75. package/bin/types/JsViewVueTools/JsvPreDownloader.d.ts +24 -2
  76. package/bin/types/JsViewVueTools/JsvRefTaker.d.ts +28 -3
  77. package/bin/types/JsViewVueTools/JsvRuntimeBridge.d.ts +50 -0
  78. package/bin/types/JsViewVueTools/JsvStyleClass.d.ts +4 -0
  79. package/bin/types/JsViewVueTools/JsvStyleSheetsDeclarer.d.ts +21 -1
  80. package/bin/types/JsViewVueTools/JsvTextTools.d.ts +85 -27
  81. package/bin/types/JsViewVueTools/JsvTextureDefines.d.ts +4 -0
  82. package/bin/types/JsViewVueTools/JsvTextureLoadTool.d.ts +67 -0
  83. package/bin/types/JsViewVueTools/JsvTextureStore/CanvasTexture/CanvasTexture.d.ts +4 -0
  84. package/bin/types/JsViewVueTools/JsvTextureStore/CanvasTexture/CommandList.d.ts +4 -0
  85. package/bin/types/JsViewVueTools/JsvTextureStore/CanvasTexture/Path.d.ts +4 -0
  86. package/bin/types/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.d.ts +4 -0
  87. package/bin/types/JsViewVueTools/JsvTextureStore/JsvTextureStore.d.ts +30 -4
  88. package/bin/types/JsViewVueTools/JsvTextureStore/Store.d.ts +4 -0
  89. package/bin/types/JsViewVueTools/JsvTextureStore/Texture.d.ts +4 -0
  90. package/bin/types/JsViewVueTools/NinePatchHelper.d.ts +5 -1
  91. package/bin/types/JsViewVueTools/TextureManagerTools.d.ts +11 -0
  92. package/bin/types/JsViewVueTools/TypeCheckAndSet.d.ts +4 -0
  93. package/bin/types/JsViewVueTools/index.d.ts +7 -0
  94. package/bin/types/JsViewVueWidget/JsvActorMove/ActorControlBase.d.ts +4 -0
  95. package/bin/types/JsViewVueWidget/JsvActorMove/JsvActorMove.vue.d.ts +38 -0
  96. package/bin/types/JsViewVueWidget/JsvActorMove/JsvActorMoveControl.d.ts +4 -0
  97. package/bin/types/JsViewVueWidget/JsvActorMove/index.d.ts +4 -0
  98. package/bin/types/JsViewVueWidget/JsvApic/JsvApic/BrowserApic.vue.d.ts +4 -0
  99. package/bin/types/JsViewVueWidget/JsvApic/JsvApic/JsvApic.vue.d.ts +27 -0
  100. package/bin/types/JsViewVueWidget/JsvApic/JsvApic/index.d.ts +4 -0
  101. package/bin/types/JsViewVueWidget/JsvApic/JsvApic2/BrowserApic2.vue.d.ts +4 -0
  102. package/bin/types/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue.d.ts +28 -0
  103. package/bin/types/JsViewVueWidget/JsvApic/JsvApic2/index.d.ts +4 -0
  104. package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/ApicDataBase.d.ts +4 -0
  105. package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/BrowserApicLib.d.ts +4 -0
  106. package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/GifData.d.ts +4 -0
  107. package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/NormalLoopTool.d.ts +4 -0
  108. package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/PartLoopTool.d.ts +4 -0
  109. package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/SingleLoopTool.d.ts +4 -0
  110. package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/Viewer.d.ts +4 -0
  111. package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/WebpData.d.ts +4 -0
  112. package/bin/types/JsViewVueWidget/JsvApic/JsvCommonLoopToolBase.d.ts +4 -0
  113. package/bin/types/JsViewVueWidget/JsvClipDiv/JsvClipDiv.vue.d.ts +4 -0
  114. package/bin/types/JsViewVueWidget/JsvClipDiv/index.d.ts +4 -0
  115. package/bin/types/JsViewVueWidget/JsvConnectLine/ArcLineManager.d.ts +4 -0
  116. package/bin/types/JsViewVueWidget/JsvConnectLine/JsvConnectLine.vue.d.ts +21 -0
  117. package/bin/types/JsViewVueWidget/JsvConnectLine/index.d.ts +4 -0
  118. package/bin/types/JsViewVueWidget/JsvDragBox/JsvDragBox.vue.d.ts +109 -0
  119. package/bin/types/JsViewVueWidget/JsvDriftScope/JsvDriftScope.vue.d.ts +4 -0
  120. package/bin/types/JsViewVueWidget/JsvDriftScope/index.d.ts +4 -0
  121. package/bin/types/JsViewVueWidget/JsvEnableRenderBreak.vue.d.ts +4 -0
  122. package/bin/types/JsViewVueWidget/JsvFilterView.vue.d.ts +19 -0
  123. package/bin/types/JsViewVueWidget/JsvFlexCell/JsvFlexDiv.vue.d.ts +34 -0
  124. package/bin/types/JsViewVueWidget/JsvFlexCell/JsvScreenFlex.vue.d.ts +106 -0
  125. package/bin/types/JsViewVueWidget/JsvFlexCell/index.d.ts +6 -2
  126. package/bin/types/JsViewVueWidget/JsvFragShaderView/BrowserJsvFragShaderView.vue.d.ts +6 -0
  127. package/bin/types/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue.d.ts +48 -1
  128. package/bin/types/JsViewVueWidget/JsvFragShaderView/index.d.ts +4 -0
  129. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/ActorControl.d.ts +4 -0
  130. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/CallbackManager.d.ts +4 -0
  131. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/ForgeTypeDefine.d.ts +4 -0
  132. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/FreeMoveActor.vue.d.ts +25 -0
  133. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/JsvEnvBlocker.vue.d.ts +22 -0
  134. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/NexusNode.d.ts +4 -0
  135. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/SetAction.d.ts +4 -0
  136. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/SetCondition.d.ts +4 -0
  137. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/SetState.d.ts +4 -0
  138. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/SyncLinkManager.d.ts +4 -0
  139. package/bin/types/JsViewVueWidget/JsvFreeMoveActor/index.d.ts +4 -0
  140. package/bin/types/JsViewVueWidget/JsvGrid.vue.d.ts +73 -0
  141. package/bin/types/JsViewVueWidget/JsvHole.d.ts +17 -0
  142. package/bin/types/JsViewVueWidget/JsvInput/Cursor.vue.d.ts +14 -34
  143. package/bin/types/JsViewVueWidget/JsvInput/EditViewOperator.d.ts +48 -0
  144. package/bin/types/JsViewVueWidget/JsvInput/EditVisibleArea.d.ts +27 -0
  145. package/bin/types/JsViewVueWidget/JsvInput/JsvInput.vue.d.ts +64 -209
  146. package/bin/types/JsViewVueWidget/JsvInput/SharedDefine.d.ts +17 -0
  147. package/bin/types/JsViewVueWidget/JsvInput/SystemTextTools.d.ts +14 -0
  148. package/bin/types/JsViewVueWidget/JsvInput/index.d.ts +4 -0
  149. package/bin/types/JsViewVueWidget/JsvLine/JsvLine.vue.d.ts +20 -0
  150. package/bin/types/JsViewVueWidget/JsvLine/LineManager.d.ts +4 -0
  151. package/bin/types/JsViewVueWidget/JsvLine/index.d.ts +4 -0
  152. package/bin/types/JsViewVueWidget/JsvMarquee.vue.d.ts +21 -0
  153. package/bin/types/JsViewVueWidget/JsvMaskClipDiv.vue.d.ts +20 -0
  154. package/bin/types/JsViewVueWidget/JsvMindMap/Constant.d.ts +4 -0
  155. package/bin/types/JsViewVueWidget/JsvMindMap/DataTree.d.ts +7 -1
  156. package/bin/types/JsViewVueWidget/JsvMindMap/Geometry.d.ts +4 -0
  157. package/bin/types/JsViewVueWidget/JsvMindMap/JsvMindMap.vue.d.ts +90 -0
  158. package/bin/types/JsViewVueWidget/JsvMindMap/index.d.ts +4 -0
  159. package/bin/types/JsViewVueWidget/JsvMindMap/rtree.d.ts +4 -0
  160. package/bin/types/JsViewVueWidget/JsvNativeSharedDiv.vue.d.ts +24 -0
  161. package/bin/types/JsViewVueWidget/JsvNinePatch.vue.d.ts +30 -0
  162. package/bin/types/JsViewVueWidget/JsvPieChart.vue.d.ts +17 -0
  163. package/bin/types/JsViewVueWidget/JsvPosterDiv.vue.d.ts +17 -0
  164. package/bin/types/JsViewVueWidget/JsvPosterImage.vue.d.ts +18 -0
  165. package/bin/types/JsViewVueWidget/JsvPreload/BrowserPreload.vue.d.ts +4 -0
  166. package/bin/types/JsViewVueWidget/JsvPreload/JsvPreload.vue.d.ts +42 -0
  167. package/bin/types/JsViewVueWidget/JsvPreload/index.d.ts +4 -0
  168. package/bin/types/JsViewVueWidget/JsvProgressBar.vue.d.ts +19 -0
  169. package/bin/types/JsViewVueWidget/JsvQrcode/BrowserQrcode.vue.d.ts +4 -0
  170. package/bin/types/JsViewVueWidget/JsvQrcode/JsvQrcode.vue.d.ts +25 -0
  171. package/bin/types/JsViewVueWidget/JsvQrcode/index.d.ts +4 -0
  172. package/bin/types/JsViewVueWidget/JsvRadarChart.vue.d.ts +24 -0
  173. package/bin/types/JsViewVueWidget/JsvRipple/Constant.d.ts +4 -0
  174. package/bin/types/JsViewVueWidget/JsvRipple/JsvRipple.vue.d.ts +45 -0
  175. package/bin/types/JsViewVueWidget/JsvRipple/index.d.ts +4 -0
  176. package/bin/types/JsViewVueWidget/JsvScaleTextBox.vue.d.ts +18 -0
  177. package/bin/types/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue.d.ts +4 -0
  178. package/bin/types/JsViewVueWidget/JsvScrollBox/JsvScrollFollow.vue.d.ts +4 -0
  179. package/bin/types/JsViewVueWidget/JsvScrollBox/ScrollInnerSymbol.d.ts +4 -0
  180. package/bin/types/JsViewVueWidget/JsvScrollBox/ScrollSymbol.d.ts +4 -0
  181. package/bin/types/JsViewVueWidget/JsvScrollBox/index.d.ts +4 -0
  182. package/bin/types/JsViewVueWidget/JsvSector.vue.d.ts +18 -0
  183. package/bin/types/JsViewVueWidget/JsvSoundPool.d.ts +42 -0
  184. package/bin/types/JsViewVueWidget/JsvSpray/BrowserSpray.vue.d.ts +4 -0
  185. package/bin/types/JsViewVueWidget/JsvSpray/JsvSpray.vue.d.ts +40 -0
  186. package/bin/types/JsViewVueWidget/JsvSpray/index.d.ts +4 -0
  187. package/bin/types/JsViewVueWidget/JsvSpriteAnim/FrameBuidler.d.ts +4 -0
  188. package/bin/types/JsViewVueWidget/JsvSpriteAnim/JsvSpriteAnim.vue.d.ts +52 -0
  189. package/bin/types/JsViewVueWidget/JsvSpriteAnim/JsvSpriteLoader.vue.d.ts +16 -0
  190. package/bin/types/JsViewVueWidget/JsvSpriteAnim/JsvSpriteTools.d.ts +4 -0
  191. package/bin/types/JsViewVueWidget/JsvSpriteAnim/SpriteController.d.ts +4 -0
  192. package/bin/types/JsViewVueWidget/JsvSpriteAnim/index.d.ts +4 -0
  193. package/bin/types/JsViewVueWidget/JsvSpriteAnim/sAnimationToken.d.ts +4 -0
  194. package/bin/types/JsViewVueWidget/JsvSwiper/JsvSwiper.vue.d.ts +39 -0
  195. package/bin/types/JsViewVueWidget/JsvSwiper/index.d.ts +4 -0
  196. package/bin/types/JsViewVueWidget/JsvSwiper3D/JsvSwiper.vue.d.ts +24 -0
  197. package/bin/types/JsViewVueWidget/JsvSwiper3D/index.d.ts +4 -0
  198. package/bin/types/JsViewVueWidget/JsvTextBox.vue.d.ts +26 -0
  199. package/bin/types/JsViewVueWidget/JsvTextureAnim/BrowserTextureAnim.vue.d.ts +4 -0
  200. package/bin/types/JsViewVueWidget/JsvTextureAnim/CommonType.d.ts +4 -0
  201. package/bin/types/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue.d.ts +7 -2
  202. package/bin/types/JsViewVueWidget/JsvTextureAnim/index.d.ts +4 -0
  203. package/bin/types/JsViewVueWidget/JsvTouchModeSwitcher.vue.d.ts +100 -0
  204. package/bin/types/JsViewVueWidget/JsvVisibleSensor/JsvVisibleSensor.vue.d.ts +25 -0
  205. package/bin/types/JsViewVueWidget/JsvVisibleSensor/index.d.ts +4 -0
  206. package/bin/types/JsViewVueWidget/index.d.ts +6 -0
  207. package/bin/types/index.d.ts +4 -0
  208. package/index.d.ts +8 -0
  209. package/package.json +1 -1
  210. package/tools/config/toolkit.mjs +81 -0
  211. package/tools/config/tsconfig.json +1 -0
  212. package/tools/config/vite.config.ts +24 -14
  213. package/tools/jsview-vue-build.mjs +66 -21
  214. package/utils/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue +6 -2
  215. package/utils/JsViewEngineWidget/JsvFocus/JsvFocusManager.ts +22 -3
  216. package/utils/JsViewEngineWidget/MetroWidget/ListWidget.vue +3 -1
  217. package/utils/JsViewEngineWidget/MetroWidget/MetroWidget.vue +12 -5
  218. package/utils/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.js +208 -84
  219. package/utils/JsViewEngineWidget/TemplateParser/ListMetroTemplate.ts +15 -9
  220. package/utils/JsViewEngineWidget/TemplateParser/MetroTemplate.ts +2 -2
  221. package/utils/JsViewPlugin/JsvAudio/version.js +1 -1
  222. package/utils/JsViewPlugin/JsvAudio/version.mjs +1 -1
  223. package/utils/JsViewPlugin/JsvLatex/BrowserDomBuilder.js +13 -3
  224. package/utils/JsViewPlugin/JsvLatex/BrowserJsvLatex.vue +27 -6
  225. package/utils/JsViewPlugin/JsvLatex/JsvLatex.vue +34 -28
  226. package/utils/JsViewPlugin/JsvLatex/index.js +22 -0
  227. package/utils/JsViewVueTools/FeatureActive.ts +84 -0
  228. package/utils/JsViewVueTools/ForgeHandles.ts +7 -3
  229. package/utils/JsViewVueTools/JsvDynamicCssStyle.js +2 -0
  230. package/utils/JsViewVueTools/JsvDynamicKeyFrames.ts +2 -0
  231. package/utils/JsViewVueTools/JsvImpactTracer.js +2 -0
  232. package/utils/JsViewVueTools/JsvPreDownloader.ts +2 -1
  233. package/utils/JsViewVueTools/JsvRefTaker.js +1 -2
  234. package/utils/JsViewVueTools/JsvRuntimeBridge.js +67 -1
  235. package/utils/JsViewVueTools/JsvStyleClass.js +2 -0
  236. package/utils/JsViewVueTools/JsvStyleSheetsDeclarer.js +2 -0
  237. package/utils/JsViewVueTools/JsvTextTools.ts +223 -0
  238. package/utils/JsViewVueTools/JsvTextureLoadTool.ts +233 -0
  239. package/utils/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.ts +4 -1
  240. package/utils/JsViewVueTools/JsvTextureStore/JsvTextureStore.ts +7 -3
  241. package/utils/JsViewVueTools/JsvTextureStore/Texture.ts +1 -0
  242. package/utils/JsViewVueTools/TextureManagerTools.ts +17 -0
  243. package/utils/JsViewVueTools/index.js +3 -0
  244. package/utils/JsViewVueWidget/JsvActorMove/JsvActorMove.vue +2 -0
  245. package/utils/JsViewVueWidget/JsvApic/JsvApic/JsvApic.vue +10 -2
  246. package/utils/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue +12 -1
  247. package/utils/JsViewVueWidget/JsvClipDiv/JsvClipDiv.vue +4 -2
  248. package/utils/JsViewVueWidget/JsvConnectLine/JsvConnectLine.vue +2 -0
  249. package/utils/JsViewVueWidget/JsvDragBox/JsvDragBox.vue +219 -0
  250. package/utils/JsViewVueWidget/JsvDriftScope/JsvDriftScope.vue +11 -9
  251. package/utils/JsViewVueWidget/JsvFilterView.vue +2 -0
  252. package/utils/JsViewVueWidget/JsvFlexCell/JsvFlexDiv.vue +5 -2
  253. package/utils/JsViewVueWidget/JsvFlexCell/JsvScreenFlex.vue +145 -0
  254. package/utils/JsViewVueWidget/JsvFlexCell/index.js +2 -5
  255. package/utils/JsViewVueWidget/JsvFragShaderView/BrowserJsvFragShaderView.vue +39 -12
  256. package/utils/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue +210 -62
  257. package/utils/JsViewVueWidget/JsvFreeMoveActor/FreeMoveActor.vue +9 -0
  258. package/utils/JsViewVueWidget/JsvFreeMoveActor/JsvEnvBlocker.vue +2 -0
  259. package/utils/JsViewVueWidget/JsvGrid.vue +2 -0
  260. package/utils/JsViewVueWidget/JsvHole.js +2 -0
  261. package/utils/JsViewVueWidget/JsvInput/Cursor.vue +49 -45
  262. package/utils/JsViewVueWidget/JsvInput/EditViewOperator.ts +320 -0
  263. package/utils/JsViewVueWidget/JsvInput/EditVisibleArea.ts +222 -0
  264. package/utils/JsViewVueWidget/JsvInput/JsvInput.vue +281 -681
  265. package/utils/JsViewVueWidget/JsvInput/SharedDefine.ts +17 -0
  266. package/utils/JsViewVueWidget/JsvInput/SystemTextTools.ts +47 -0
  267. package/utils/JsViewVueWidget/JsvLine/JsvLine.vue +2 -0
  268. package/utils/JsViewVueWidget/JsvMarquee.vue +2 -0
  269. package/utils/JsViewVueWidget/JsvMaskClipDiv.vue +2 -0
  270. package/utils/JsViewVueWidget/JsvMindMap/DataTree.ts +14 -1
  271. package/utils/JsViewVueWidget/JsvMindMap/JsvMindMap.vue +277 -117
  272. package/utils/JsViewVueWidget/JsvNativeSharedDiv.vue +91 -68
  273. package/utils/JsViewVueWidget/JsvNinePatch.vue +5 -0
  274. package/utils/JsViewVueWidget/JsvPieChart.vue +2 -0
  275. package/utils/JsViewVueWidget/JsvPosterDiv.vue +2 -0
  276. package/utils/JsViewVueWidget/JsvPosterImage.vue +2 -0
  277. package/utils/JsViewVueWidget/JsvPreload/JsvPreload.vue +2 -0
  278. package/utils/JsViewVueWidget/JsvProgressBar.vue +2 -0
  279. package/utils/JsViewVueWidget/JsvQrcode/JsvQrcode.vue +10 -11
  280. package/utils/JsViewVueWidget/JsvRadarChart.vue +2 -0
  281. package/utils/JsViewVueWidget/JsvRipple/Constant.js +2 -2
  282. package/utils/JsViewVueWidget/JsvRipple/JsvRipple.vue +3 -1
  283. package/utils/JsViewVueWidget/JsvScaleTextBox.vue +2 -0
  284. package/utils/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue +9 -0
  285. package/utils/JsViewVueWidget/JsvScrollBox/JsvScrollFollow.vue +9 -0
  286. package/utils/JsViewVueWidget/JsvSector.vue +2 -0
  287. package/utils/JsViewVueWidget/JsvSoundPool.js +2 -0
  288. package/utils/JsViewVueWidget/JsvSpray/JsvSpray.vue +30 -13
  289. package/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteAnim.vue +2 -0
  290. package/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteLoader.vue +2 -0
  291. package/utils/JsViewVueWidget/JsvSwiper/JsvSwiper.vue +2 -0
  292. package/utils/JsViewVueWidget/JsvSwiper3D/JsvSwiper.vue +2 -0
  293. package/utils/JsViewVueWidget/JsvTextBox.vue +2 -4
  294. package/utils/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue +44 -41
  295. package/utils/JsViewVueWidget/JsvTouchModeSwitcher.vue +101 -0
  296. package/utils/JsViewVueWidget/JsvVideo.vue +2 -2
  297. package/utils/JsViewVueWidget/JsvVisibleSensor/JsvVisibleSensor.vue +2 -0
  298. package/utils/JsViewVueWidget/index.js +2 -0
  299. package/utils/JsViewVueTools/JsvTextTools.js +0 -89
@@ -1,37 +1,57 @@
1
- <!--
2
- [模块 export 内容]
3
- JsvFragShaderView:自定义Fragment shader的组件
4
- props说明:
5
- style {Object} (必填)left, top, width, height
6
- shaderStr {String} (必填)shader的函数体
7
- duration {int} 动画时长
8
- autoplay {boolean} 自动播放
9
- uniforms {Array} uniform参数, [{ name: string, value: number }]
10
- textures {Array} texture参数, [{ name: string, resource: string }]
11
- methods:
12
- startAnim
13
- @description 开始动画
14
- @params {int} duration: 动画时长, 默认为props.duration
15
- stopAnim
16
- @description 停止动画
17
- shader函数体说明:
18
- 参考网站: https://www.shadertoy.com
19
- 主函数:
20
- void mainImage( out vec4 fragColor, in vec2 fragCoord )
21
- @params {vec4} fragColor: 输出的片元颜色
22
- @params {vec2} fragCoord: 片元坐标, 左下角为原点, 往右为x正, 往上为y正
23
- 注意事项:
24
- * 盒子端使用OpenGL ES 2.0版本, 而网站 https://www.shadertoy.com 上使用WebGL, glsl支持的函数和操作符有区别.
25
- * 由于坐标系的差异, texture()采样函数需要替换为jsvTexture2D()
26
- * 盒子端的精度有限, 可能会出现精度导致的计算错误
27
-
28
- -->
1
+ <script>
2
+ /**
3
+ * @file
4
+ *
5
+ * [模块 export 内容]
6
+ * JsvFragShaderView:自定义Fragment shader的组件
7
+ * props说明:
8
+ * @prop {Object} style (必填)left, top, width, height
9
+ * @prop {String} shaderStr (必填)shader的函数体
10
+ * @prop {int} duration 动画时长
11
+ * @prop {boolean} autoplay 自动播放
12
+ * @prop {Array} uniforms uniform参数, [{ name: string, value: number }]
13
+ * @prop {Array} textures texture参数, [{ name: string, resource: string }]
14
+ * @prop {() => void} onStart 动画开始回调
15
+ * @prop {(int,boolean) => void} onEnd
16
+ * 动画结束回调,
17
+ * 返回值1号 int: 回到参数为动画的序列号,和startAnim的返回值匹配
18
+ * 返回值2号 boolean: true: 动画正常结束,false:动画因为cancel而结束
19
+ * methods:
20
+ * @method startAnim
21
+ * @description 开始动画
22
+ * @param {int} duration: 动画时长, 默认为props.duration
23
+ * @param {()=>void} onTimeout: 如果到达duration的时长,动画因为资源问题还没开始动画的时会回调此函数
24
+ * @return {int} 所开动画的序列号,用于和onEnd收到的值匹配
25
+ * @method stopAnim
26
+ * @description 停止动画
27
+ * shader函数体说明:
28
+ * 参考网站: https://www.shadertoy.com
29
+ * 主函数:
30
+ * void mainImage( out vec4 fragColor, in vec2 fragCoord )
31
+ * @params {vec4} fragColor: 输出的片元颜色
32
+ * @params {vec2} fragCoord: 片元坐标, 左下角为原点, 往右为x正, 往上为y正
33
+ * 可用的uniform:
34
+ * iResolution: {vec3} view的大小, vec3(width, height, 0)
35
+ * iTime: {float} 动画时间
36
+ * iDuration: {float} 动画总时间
37
+ * 注意事项:
38
+ * * 盒子端使用OpenGL ES 2.0版本, 而网站 https://www.shadertoy.com 上使用WebGL, glsl支持的函数和操作符有区别.
39
+ * * 由于坐标系的差异, texture()采样函数需要替换为jsvTexture2D()
40
+ * * 盒子端的精度有限, 可能会出现精度导致的计算错误
41
+ */
42
+ </script>
43
+
29
44
  <script setup>
30
- import { onMounted, onBeforeUnmount } from "vue";
45
+ import { onMounted, onUnmounted, shallowRef } from "vue";
31
46
  import { Forge } from "@shijiu/jsview/dom/jsv-forge-define";
32
47
  import ForgeHandles from "../../JsViewVueTools/ForgeHandles";
48
+ import {
49
+ FeatureNames,
50
+ JsvUseFeature,
51
+ } from "../../JsViewVueTools/FeatureActive.ts";
52
+ import { JsvTextureLoadTool } from "../../JsViewVueTools/JsvTextureLoadTool";
33
53
 
34
- const props = defineProps({
54
+ const rProps = defineProps({
35
55
  style: {
36
56
  type: Object,
37
57
  required: true,
@@ -56,13 +76,29 @@ const props = defineProps({
56
76
  textures: {
57
77
  type: Array,
58
78
  },
79
+ onEnd: {
80
+ type: Function,
81
+ },
82
+ onStart: {
83
+ type: Function,
84
+ },
59
85
  });
60
86
 
87
+ // 激活引擎中的功能支持
88
+ JsvUseFeature("JsvFragShaderView", FeatureNames.CustomFragShader);
89
+
90
+ let rAnimRunning = shallowRef(false); // 动画是否在执行,画面只在动画进行时进行显示
91
+ let vPreloadHandler = null;
92
+ let vPreloadDone = false;
93
+ let vStartingPromise = null; // 用于后加载启动处理
94
+ let vStartToken = 0; // 计数,规避onEnd和start的不匹配
95
+ let vStartAnimTimeoutId = -1; // 动画启动的timeout句柄
96
+
61
97
  //uniforms
62
- let uniformList = [];
63
- if (props.uniforms) {
64
- for (let item of props.uniforms) {
65
- uniformList.push({
98
+ let cUniformList = [];
99
+ if (rProps.uniforms) {
100
+ for (let item of rProps.uniforms) {
101
+ cUniformList.push({
66
102
  name: item.name,
67
103
  type: 1,
68
104
  value: item.value,
@@ -71,10 +107,11 @@ if (props.uniforms) {
71
107
  }
72
108
 
73
109
  //prepare texture
74
- let textureList = [];
75
- if (props.textures) {
110
+ let cTextureList = [];
111
+ if (rProps.textures) {
76
112
  const texture_manager = ForgeHandles.TextureManager;
77
- for (let item of props.textures) {
113
+ let preload_textures = [];
114
+ for (let item of rProps.textures) {
78
115
  if (typeof item.resource == "string") {
79
116
  let image_url = item.resource;
80
117
  if (item.resource && item.resource.trim().indexOf("url(") === 0) {
@@ -87,51 +124,161 @@ if (props.textures) {
87
124
  "RGB_8888",
88
125
  null
89
126
  );
90
- textureList.push({
127
+ cTextureList.push({
91
128
  name: item.name,
92
129
  id: texture.TexId,
93
130
  });
131
+ preload_textures.push(new JsvTextureLoadTool.ItemSet(image_url));
132
+ }
133
+
134
+ // 对图片进行预加载,等所有图片预加载完成后才能开始动画,以确保动画的完整性
135
+
136
+ vPreloadHandler = JsvTextureLoadTool.preload(preload_textures, () => {
137
+ vPreloadDone = true;
138
+
139
+ // 加载完成后直接释放句柄即可
140
+ vPreloadHandler.recycleResource();
141
+ vPreloadHandler = null;
142
+
143
+ if (vStartingPromise != null) {
144
+ vStartingPromise.resolve();
145
+ }
146
+ });
147
+ if (vPreloadHandler == null) {
148
+ // 无需要preload的内容,直接视为preloadDone
149
+ vPreloadDone = true;
150
+ if (vStartingPromise != null) {
151
+ vStartingPromise.resolve();
152
+ }
94
153
  }
95
154
  }
96
155
  }
97
156
 
98
- const fragShaderView = new Forge.FragShaderView();
99
- fragShaderView.SetShaderInfo(
100
- props.shaderStr,
101
- uniformList,
102
- textureList,
103
- (state, detail) => {
104
- console.log("haha", state, detail);
105
- }
157
+ const cFragShaderView = new Forge.FragShaderView();
158
+ cFragShaderView.SetShaderInfo(
159
+ rProps.shaderStr,
160
+ cUniformList,
161
+ cTextureList,
162
+ null
163
+ // (state, detail) => {
164
+ // console.log("set shader reuslt: ", state, detail);
165
+ // }
106
166
  );
107
- let viewId = Forge.sViewStore.add(new Forge.ViewInfo(fragShaderView, ""));
167
+ let vViewId = Forge.sViewStore.add(new Forge.ViewInfo(cFragShaderView, ""));
108
168
 
109
- const { left, top, width, height } = props.style;
169
+ const { left: cLeft, top: cTop, width: cWidth, height: cHeight } = rProps.style;
110
170
 
111
- const startAnim = (d) => {
112
- let duration = typeof d == "number" ? d : props.duration;
113
- if (duration > 0) {
114
- let shaderAnimation = new Forge.ShaderAnimation(duration, null);
115
- fragShaderView.StartAnimation(shaderAnimation);
171
+ function clearStartAnimTimeout() {
172
+ if (vStartAnimTimeoutId != -1) {
173
+ clearTimeout(vStartAnimTimeoutId);
174
+ vStartAnimTimeoutId = -1;
116
175
  }
176
+ }
177
+
178
+ const startAnim = (alt_duration, on_timeout_func) => {
179
+ vStartingPromise = null; // 重置promise回执处理
180
+ rAnimRunning.value = false;
181
+ vStartToken++;
182
+
183
+ let track_token = vStartToken;
184
+
185
+ // 确认duration的具体值
186
+ let duration =
187
+ typeof alt_duration == "number" ? alt_duration : rProps.duration;
188
+
189
+ // 制作timeout回调
190
+ clearStartAnimTimeout();
191
+ if (typeof on_timeout_func == "function" && !vPreloadDone) {
192
+ // 启动动画时,加载未结束
193
+ vStartAnimTimeoutId = setTimeout(() => {
194
+ vStartAnimTimeoutId = -1;
195
+ if (!rAnimRunning.value) {
196
+ // 超时后动画仍未开始则执行timeout回调
197
+ on_timeout_func();
198
+ }
199
+ }, Math.max(500, duration)); // 最低延迟500毫秒,避免0ms的时序问题
200
+ }
201
+
202
+ // 等待图片加载完成后进行
203
+ new Promise((resolve, reject) => {
204
+ if (!vPreloadDone) {
205
+ vStartingPromise = {
206
+ resolve,
207
+ reject,
208
+ };
209
+ } else {
210
+ resolve();
211
+ }
212
+ })
213
+ .then(() => {
214
+ if (vStartToken != track_token) {
215
+ // 序列不匹配
216
+ return;
217
+ }
218
+
219
+ vStartingPromise = null; // 重置promise回执处理
220
+
221
+ if (duration > 0) {
222
+ let shaderAnimation = new Forge.ShaderAnimation(duration, null);
223
+ shaderAnimation.Enable(0x1); // ReleaseAfterEndCallback
224
+ shaderAnimation.SetAnimationListener(
225
+ new Forge.AnimationListener(
226
+ null /* animation的onStart目前不调用 */,
227
+ (status) => {
228
+ if (vStartToken == track_token) {
229
+ // 序列匹配时才调整全局状态
230
+ rAnimRunning.value = false; // 动画结束,停止展示
231
+ }
232
+ rProps.onEnd?.(track_token, status);
233
+ },
234
+ null
235
+ )
236
+ );
237
+ rProps.onStart?.();
238
+ cFragShaderView.StartAnimation(shaderAnimation);
239
+ }
240
+
241
+ clearStartAnimTimeout();
242
+ rAnimRunning.value = true; // 动画启动后,展示界面,无论是否动画是否有时长
243
+ })
244
+ .catch(() => {
245
+ vStartingPromise = null;
246
+ });
247
+
248
+ return vStartToken;
117
249
  };
118
250
 
119
251
  const stopAnim = () => {
120
- fragShaderView?.StopAnimation();
252
+ if (rAnimRunning.value) {
253
+ cFragShaderView?.StopAnimation();
254
+ } else {
255
+ if (vStartingPromise != null) {
256
+ vStartingPromise.reject();
257
+ }
258
+ }
121
259
  };
122
260
 
123
261
  onMounted(() => {
124
- if (props.autoplay) {
125
- startAnim(props.duration);
262
+ if (rProps.autoplay) {
263
+ startAnim(rProps.duration);
126
264
  }
127
265
  });
128
266
 
129
- onBeforeUnmount(() => {
130
- if (viewId != -1) {
131
- Forge.sViewStore.remove(viewId);
132
- viewId = -1;
267
+ onUnmounted(() => {
268
+ clearStartAnimTimeout();
269
+
270
+ if (vViewId != -1) {
271
+ Forge.sViewStore.remove(vViewId);
272
+ vViewId = -1;
273
+ }
274
+
275
+ if (vPreloadHandler != null) {
276
+ // 当preload句柄仍然未加载完并释放掉的场景
277
+ vPreloadHandler.recycleResource();
278
+ vPreloadHandler = null;
133
279
  }
134
280
  });
281
+
135
282
  defineExpose({
136
283
  startAnim,
137
284
  stopAnim,
@@ -139,7 +286,8 @@ defineExpose({
139
286
  </script>
140
287
  <template>
141
288
  <div
142
- :style="{ left, top, width, height }"
143
- :data-jsv-vw-innerview="viewId"
289
+ v-show="rAnimRunning"
290
+ :style="{ left: cLeft, top: cTop, width: cWidth, height: cHeight }"
291
+ :data-jsv-vw-innerview="vViewId"
144
292
  ></div>
145
293
  </template>
@@ -6,6 +6,8 @@
6
6
  -->
7
7
 
8
8
  <!--
9
+ * @file
10
+ *
9
11
  * 【模块 export 内容】
10
12
  * JsvFreeMoveActor/JsvFreeMoveDiv:
11
13
  * 帧动画控制组件,通过control
@@ -26,6 +28,10 @@
26
28
  <script setup>
27
29
  import ActControl from "./ActorControl.ts";
28
30
  import { shallowRef, onMounted } from "vue";
31
+ import {
32
+ FeatureNames,
33
+ JsvUseFeature,
34
+ } from "../../JsViewVueTools/FeatureActive.ts";
29
35
 
30
36
  const props = defineProps({
31
37
  // div的style设置,
@@ -67,6 +73,9 @@ const props = defineProps({
67
73
  },
68
74
  });
69
75
 
76
+ // 激活引擎中的功能支持
77
+ JsvUseFeature("FreeMoveActor", FeatureNames.FreeMoveDiv);
78
+
70
79
  let mainDivRef = shallowRef(null);
71
80
  let controller = new ActControl();
72
81
  if (props.sizeMode) {
@@ -1,4 +1,6 @@
1
1
  <!--
2
+ * @file
3
+ *
2
4
  * 【模块 export 内容】
3
5
  * JsvEnvBlocker: 触发FreeMoveAnimation的 blockerCondition 的全屏碰撞体
4
6
  * 与FreeMoveAnimation的 setCondition.onHitBlock 配合使用
@@ -1,4 +1,6 @@
1
1
  <!--
2
+ * @file
3
+ *
2
4
  * 【界面概述】
3
5
  * 表格式布局控件, 页面滚动时无动画. 一般用于对页面刷新速度有要求的场景
4
6
  *
@@ -1,4 +1,6 @@
1
1
  /*!
2
+ * @file
3
+ *
2
4
  * 【模块 export 内容】
3
5
  * JsvHole 为video展示区域挖洞
4
6
  * props说明:
@@ -4,50 +4,54 @@
4
4
  * @LastEditTime: 2023-02-01 13:47:13
5
5
  * @Description: file content
6
6
  -->
7
- <script>
8
- import { ref } from "vue";
9
- export default {
10
- props: {
11
- left: {
12
- type: Number,
13
- default: 0,
14
- },
15
- top: { type: Number, default: 0 },
16
- width: Number,
17
- height: Number,
18
- color: String,
19
- },
20
- setup() {
21
- return {
22
- intervalToken: -1,
23
- visible: ref(false),
24
- };
25
- },
26
- methods: {
27
- _cleanInterval() {
28
- if (this.intervalToken > 0) {
29
- clearInterval(this.intervalToken);
30
- this.intervalToken = -1;
31
- }
32
- },
33
- startBlink() {
34
- this._cleanInterval();
35
- this.intervalToken = setInterval(() => {
36
- this.visible = !this.visible;
37
- }, 750);
38
- },
39
- stopBlink(show) {
40
- this._cleanInterval();
41
- this.visible = show;
42
- },
43
- },
44
- mounted() {
45
- this.startBlink();
46
- },
47
- beforeUnmount() {
48
- this._cleanInterval();
7
+ <script setup>
8
+ import { shallowRef, onUnmounted, onMounted } from "vue";
9
+
10
+ const rProps = defineProps({
11
+ left: {
12
+ type: Number,
13
+ default: 0,
49
14
  },
50
- };
15
+ top: { type: Number, default: 0 },
16
+ width: Number,
17
+ height: Number,
18
+ color: String,
19
+ });
20
+
21
+ let vIntervalToken = -1;
22
+ let rVisible = shallowRef(false);
23
+
24
+ function _CleanInterval() {
25
+ if (vIntervalToken > 0) {
26
+ clearInterval(vIntervalToken);
27
+ vIntervalToken = -1;
28
+ }
29
+ }
30
+
31
+ function startBlink() {
32
+ _CleanInterval();
33
+ vIntervalToken = setInterval(() => {
34
+ rVisible.value = !rVisible.value;
35
+ }, 750);
36
+ }
37
+
38
+ function stopBlink(show) {
39
+ _CleanInterval();
40
+ rVisible.value = show;
41
+ }
42
+
43
+ onMounted(() => {
44
+ startBlink();
45
+ });
46
+
47
+ onUnmounted(() => {
48
+ _CleanInterval();
49
+ });
50
+
51
+ defineExpose({
52
+ startBlink,
53
+ stopBlink,
54
+ });
51
55
  </script>
52
56
 
53
57
  <template>
@@ -58,7 +62,7 @@ export default {
58
62
  width,
59
63
  height,
60
64
  backgroundColor: color,
61
- visibility: visible ? 'inherit' : 'hidden',
65
+ visibility: rVisible ? 'inherit' : 'hidden',
62
66
  }"
63
67
  />
64
- </template>
68
+ </template>