@shijiu/jsview-vue 2.2.201 → 2.2.426-test.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 (341) 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/BrowserJsvLatex.vue.mjs +39 -16
  6. package/bin/export-sfc.mjs +3 -3
  7. package/bin/jsview-vue-common.mjs +3 -3
  8. package/bin/jsview-vue.mjs +3288 -2312
  9. package/bin/types/utils/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue.d.ts +72 -0
  10. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/ListWidget.vue.d.ts +6 -3
  11. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/MetroWidget.vue.d.ts +6 -3
  12. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/MetroWidgetSetup.d.ts +3 -1
  13. package/bin/types/utils/JsViewEngineWidget/MetroWidget/TaskManager.d.ts +64 -0
  14. package/bin/types/utils/JsViewEngineWidget/MetroWidget/TokenGenerator.d.ts +4 -0
  15. package/bin/types/utils/JsViewEngineWidget/RectUtils.d.ts +61 -0
  16. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/TemplateParser/Fence.d.ts +2 -2
  17. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/TemplateParser/MetroTemplate.d.ts +3 -3
  18. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/index.d.ts +1 -1
  19. package/bin/types/utils/JsViewPlugin/JsvAudio/version.d.mts +13 -0
  20. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvLatex/index.d.ts +1 -0
  21. package/bin/types/utils/JsViewPlugin/JsvLatex/version.d.mts +13 -0
  22. package/bin/types/utils/JsViewPlugin/JsvPlayer/BrowserJsvPlayer-0.9.vue.d.ts +45 -0
  23. package/bin/types/utils/JsViewPlugin/JsvPlayer/BrowserJsvPlayer.vue.d.ts +597 -0
  24. package/bin/types/utils/JsViewPlugin/JsvPlayer/GetVersion.d.ts +13 -0
  25. package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvMedia.d.ts +420 -0
  26. package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvMediaBrowserInterface.d.ts +57 -0
  27. package/bin/types/utils/JsViewPlugin/JsvPlayer/JsvPlayer.vue.d.ts +588 -0
  28. package/bin/types/utils/JsViewPlugin/JsvPlayer/index-0.9.d.ts +358 -0
  29. package/bin/types/utils/JsViewPlugin/JsvPlayer/index.d.ts +358 -0
  30. package/bin/types/utils/JsViewPlugin/JsvPlayer/version.d.mts +14 -0
  31. package/bin/types/utils/JsViewVueTools/FeatureActive.d.ts +10 -0
  32. package/bin/types/utils/JsViewVueTools/ForgeHandles.d.ts +6 -0
  33. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvDynamicCssStyle.d.ts +3 -1
  34. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvDynamicKeyFrames.d.ts +4 -2
  35. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvImpactTracer.d.ts +4 -4
  36. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvPreDownloader.d.ts +3 -2
  37. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvRefTaker.d.ts +2 -3
  38. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvRuntimeBridge.d.ts +42 -0
  39. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvStyleSheetsDeclarer.d.ts +3 -1
  40. package/bin/types/utils/JsViewVueTools/JsvTextTools.d.ts +61 -0
  41. package/bin/types/utils/JsViewVueTools/JsvTextureLoadTool.d.ts +63 -0
  42. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvTextureStore/JsvTextureStore.d.ts +8 -4
  43. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/NinePatchHelper.d.ts +1 -1
  44. package/bin/types/utils/JsViewVueTools/TextureManagerTools.d.ts +7 -0
  45. package/bin/types/utils/JsViewVueTools/TypeCheckAndSet.d.ts +3 -0
  46. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/index.d.ts +3 -1
  47. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvApic/JsvApic.vue.d.ts +7 -0
  48. package/bin/types/utils/JsViewVueWidget/JsvDragBox/JsvDragBox.vue.d.ts +84 -0
  49. package/bin/types/utils/JsViewVueWidget/JsvFlexCell/JsvScreenFlex.vue.d.ts +75 -0
  50. package/bin/types/utils/JsViewVueWidget/JsvFlexCell/index.d.ts +2 -0
  51. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFragShaderView/JsvFragShaderView.vue.d.ts +3 -1
  52. package/bin/types/utils/JsViewVueWidget/JsvFragShaderView/index.d.ts +1 -0
  53. package/bin/types/utils/JsViewVueWidget/JsvFreeMoveActor/KeepFlags.d.ts +7 -0
  54. package/bin/types/utils/JsViewVueWidget/JsvInput/Cursor.vue.d.ts +12 -0
  55. package/bin/types/utils/JsViewVueWidget/JsvInput/EditViewOperator.d.ts +45 -0
  56. package/bin/types/utils/JsViewVueWidget/JsvInput/EditVisibleArea.d.ts +26 -0
  57. package/bin/types/{JsViewVueWidget/JsvPreload/BrowserPreload.vue.d.ts → utils/JsViewVueWidget/JsvInput/JsvInput.vue.d.ts} +7 -5
  58. package/bin/types/utils/JsViewVueWidget/JsvInput/SharedDefine.d.ts +13 -0
  59. package/bin/types/utils/JsViewVueWidget/JsvInput/SystemTextTools.d.ts +16 -0
  60. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvMaskClipDiv.vue.d.ts +0 -2
  61. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvMindMap/DataTree.d.ts +3 -1
  62. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvMindMap/Geometry.d.ts +2 -2
  63. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvMindMap/JsvMindMap.vue.d.ts +16 -9
  64. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvNativeSharedDiv.vue.d.ts +6 -0
  65. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvNinePatch.vue.d.ts +2 -1
  66. package/bin/types/utils/JsViewVueWidget/JsvPreload/index.d.ts +2 -0
  67. package/bin/types/utils/JsViewVueWidget/JsvSwiper/Indicator.vue.d.ts +16 -0
  68. package/bin/types/utils/JsViewVueWidget/JsvSwiper3D/Indicator.vue.d.ts +16 -0
  69. package/bin/types/utils/JsViewVueWidget/JsvTextureAnim/index.d.ts +4 -0
  70. package/bin/types/utils/JsViewVueWidget/JsvTouchModeSwitcher.vue.d.ts +75 -0
  71. package/bin/types/utils/JsViewVueWidget/JsvVideo.vue.d.ts +23 -0
  72. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/index.d.ts +4 -2
  73. package/index.d.ts +9 -1
  74. package/package.json +1 -1
  75. package/tools/config/toolkit.mjs +81 -0
  76. package/tools/config/vite.config.ts +24 -14
  77. package/tools/jsview-vue-build.mjs +67 -21
  78. package/tsconfig.json +27 -0
  79. package/utils/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue +6 -2
  80. package/utils/JsViewEngineWidget/MetroWidget/ListWidget.vue +3 -1
  81. package/utils/JsViewEngineWidget/MetroWidget/MetroWidget.vue +12 -5
  82. package/utils/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.js +175 -65
  83. package/utils/JsViewEngineWidget/MetroWidget/TaskManager.ts +1 -1
  84. package/utils/JsViewEngineWidget/TemplateParser/Fence.ts +2 -2
  85. package/utils/JsViewEngineWidget/TemplateParser/ListMetroTemplate.ts +15 -9
  86. package/utils/JsViewEngineWidget/TemplateParser/MetroTemplate.ts +4 -6
  87. package/utils/JsViewPlugin/JsvLatex/BrowserDomBuilder.js +13 -3
  88. package/utils/JsViewPlugin/JsvLatex/BrowserJsvLatex.vue +27 -6
  89. package/utils/JsViewPlugin/JsvLatex/JsvLatex.vue +34 -28
  90. package/utils/JsViewPlugin/JsvLatex/index.js +22 -0
  91. package/utils/JsViewVueTools/FeatureActive.ts +84 -0
  92. package/utils/JsViewVueTools/ForgeHandles.ts +7 -3
  93. package/utils/JsViewVueTools/JsvDynamicCssStyle.js +2 -0
  94. package/utils/JsViewVueTools/JsvDynamicKeyFrames.ts +2 -0
  95. package/utils/JsViewVueTools/JsvHashHistory.js +26 -29
  96. package/utils/JsViewVueTools/JsvImpactTracer.js +2 -0
  97. package/utils/JsViewVueTools/JsvPreDownloader.ts +2 -1
  98. package/utils/JsViewVueTools/JsvRefTaker.js +1 -2
  99. package/utils/JsViewVueTools/JsvRuntimeBridge.js +125 -59
  100. package/utils/JsViewVueTools/JsvStyleClass.js +2 -0
  101. package/utils/JsViewVueTools/JsvStyleSheetsDeclarer.js +2 -0
  102. package/utils/JsViewVueTools/JsvTextTools.ts +156 -0
  103. package/utils/JsViewVueTools/JsvTextureLoadTool.ts +233 -0
  104. package/utils/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.ts +4 -1
  105. package/utils/JsViewVueTools/JsvTextureStore/JsvTextureStore.ts +7 -3
  106. package/utils/JsViewVueTools/JsvTextureStore/Texture.ts +1 -0
  107. package/utils/JsViewVueTools/TextureManagerTools.ts +17 -0
  108. package/utils/JsViewVueTools/TypeCheckAndSet.ts +66 -0
  109. package/utils/JsViewVueTools/index.js +4 -1
  110. package/utils/JsViewVueWidget/JsvActorMove/JsvActorMove.vue +2 -0
  111. package/utils/JsViewVueWidget/JsvApic/JsvApic/JsvApic.vue +10 -2
  112. package/utils/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue +12 -1
  113. package/utils/JsViewVueWidget/JsvClipDiv/JsvClipDiv.vue +4 -2
  114. package/utils/JsViewVueWidget/JsvConnectLine/JsvConnectLine.vue +2 -0
  115. package/utils/JsViewVueWidget/JsvDragBox/JsvDragBox.vue +219 -0
  116. package/utils/JsViewVueWidget/JsvDriftScope/JsvDriftScope.vue +11 -9
  117. package/utils/JsViewVueWidget/JsvFilterView.vue +2 -0
  118. package/utils/JsViewVueWidget/JsvFlexCell/JsvFlexDiv.vue +5 -2
  119. package/utils/JsViewVueWidget/JsvFlexCell/JsvScreenFlex.vue +140 -0
  120. package/utils/JsViewVueWidget/JsvFlexCell/index.js +2 -5
  121. package/utils/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue +214 -63
  122. package/utils/JsViewVueWidget/JsvFragShaderView/index.js +2 -9
  123. package/utils/JsViewVueWidget/JsvFreeMoveActor/FreeMoveActor.vue +9 -0
  124. package/utils/JsViewVueWidget/JsvFreeMoveActor/JsvEnvBlocker.vue +2 -0
  125. package/utils/JsViewVueWidget/JsvGrid.vue +2 -0
  126. package/utils/JsViewVueWidget/JsvHole.js +2 -0
  127. package/utils/JsViewVueWidget/JsvInput/Cursor.vue +49 -45
  128. package/utils/JsViewVueWidget/JsvInput/EditViewOperator.ts +353 -0
  129. package/utils/JsViewVueWidget/JsvInput/EditVisibleArea.ts +255 -0
  130. package/utils/JsViewVueWidget/JsvInput/JsvInput.vue +294 -681
  131. package/utils/JsViewVueWidget/JsvInput/SharedDefine.ts +17 -0
  132. package/utils/JsViewVueWidget/JsvInput/SystemTextTools.ts +61 -0
  133. package/utils/JsViewVueWidget/JsvLine/JsvLine.vue +2 -0
  134. package/utils/JsViewVueWidget/JsvMarquee.vue +2 -0
  135. package/utils/JsViewVueWidget/JsvMaskClipDiv.vue +5 -48
  136. package/utils/JsViewVueWidget/JsvMindMap/DataTree.ts +14 -1
  137. package/utils/JsViewVueWidget/JsvMindMap/JsvMindMap.vue +277 -117
  138. package/utils/JsViewVueWidget/JsvNativeSharedDiv.vue +91 -68
  139. package/utils/JsViewVueWidget/JsvNinePatch.vue +5 -0
  140. package/utils/JsViewVueWidget/JsvPieChart.vue +2 -0
  141. package/utils/JsViewVueWidget/JsvPosterDiv.vue +2 -0
  142. package/utils/JsViewVueWidget/JsvPosterImage.vue +3 -2
  143. package/utils/JsViewVueWidget/JsvPreload/JsvPreload.vue +23 -44
  144. package/utils/JsViewVueWidget/JsvPreload/index.js +2 -13
  145. package/utils/JsViewVueWidget/JsvProgressBar.vue +2 -0
  146. package/utils/JsViewVueWidget/JsvQrcode/JsvQrcode.vue +12 -12
  147. package/utils/JsViewVueWidget/JsvRadarChart.vue +2 -0
  148. package/utils/JsViewVueWidget/JsvRipple/Constant.js +2 -2
  149. package/utils/JsViewVueWidget/JsvRipple/JsvRipple.vue +3 -1
  150. package/utils/JsViewVueWidget/JsvScaleTextBox.vue +2 -0
  151. package/utils/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue +9 -0
  152. package/utils/JsViewVueWidget/JsvScrollBox/JsvScrollFollow.vue +9 -0
  153. package/utils/JsViewVueWidget/JsvSector.vue +2 -0
  154. package/utils/JsViewVueWidget/JsvSoundPool.js +5 -7
  155. package/utils/JsViewVueWidget/JsvSpray/JsvSpray.vue +43 -23
  156. package/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteAnim.vue +2 -5
  157. package/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteLoader.vue +2 -0
  158. package/utils/JsViewVueWidget/JsvSwiper/JsvSwiper.vue +2 -0
  159. package/utils/JsViewVueWidget/JsvSwiper3D/JsvSwiper.vue +2 -0
  160. package/utils/JsViewVueWidget/JsvTextBox.vue +2 -4
  161. package/utils/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue +48 -50
  162. package/utils/JsViewVueWidget/JsvTextureAnim/index.js +2 -9
  163. package/utils/JsViewVueWidget/JsvTouchModeSwitcher.vue +101 -0
  164. package/utils/JsViewVueWidget/JsvVideo.vue +2 -2
  165. package/utils/JsViewVueWidget/JsvVisibleSensor/JsvVisibleSensor.vue +2 -0
  166. package/utils/JsViewVueWidget/index.js +4 -2
  167. package/bin/browser/BrowserJsvFragShaderView.vue.mjs +0 -63
  168. package/bin/browser/BrowserPreload.vue.mjs +0 -143
  169. package/bin/browser/BrowserQrcode.vue.mjs +0 -180
  170. package/bin/browser/BrowserSpray.vue.mjs +0 -66
  171. package/bin/browser/BrowserTextureAnim.vue.mjs +0 -332
  172. package/bin/types/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue.d.ts +0 -102
  173. package/bin/types/JsViewVueTools/ForgeHandles.d.ts +0 -6
  174. package/bin/types/JsViewVueTools/JsvTextTools.d.ts +0 -37
  175. package/bin/types/JsViewVueTools/TypeCheckAndSet.d.ts +0 -2
  176. package/bin/types/JsViewVueWidget/JsvFlexCell/index.d.ts +0 -2
  177. package/bin/types/JsViewVueWidget/JsvFragShaderView/BrowserJsvFragShaderView.vue.d.ts +0 -13
  178. package/bin/types/JsViewVueWidget/JsvFragShaderView/index.d.ts +0 -2
  179. package/bin/types/JsViewVueWidget/JsvInput/Cursor.vue.d.ts +0 -36
  180. package/bin/types/JsViewVueWidget/JsvInput/JsvInput.vue.d.ts +0 -210
  181. package/bin/types/JsViewVueWidget/JsvPreload/index.d.ts +0 -17
  182. package/bin/types/JsViewVueWidget/JsvQrcode/BrowserQrcode.vue.d.ts +0 -11
  183. package/bin/types/JsViewVueWidget/JsvQrcode/index.d.ts +0 -2
  184. package/bin/types/JsViewVueWidget/JsvSpray/BrowserSpray.vue.d.ts +0 -25
  185. package/bin/types/JsViewVueWidget/JsvSpray/index.d.ts +0 -2
  186. package/bin/types/JsViewVueWidget/JsvTextureAnim/BrowserTextureAnim.vue.d.ts +0 -151
  187. package/bin/types/JsViewVueWidget/JsvTextureAnim/index.d.ts +0 -14
  188. package/tools/config/tsconfig.json +0 -15
  189. package/utils/JsViewVueTools/JsvTextTools.js +0 -89
  190. package/utils/JsViewVueTools/TypeCheckAndSet.js +0 -27
  191. package/utils/JsViewVueWidget/JsvFragShaderView/BrowserJsvFragShaderView.vue +0 -48
  192. package/utils/JsViewVueWidget/JsvPreload/BrowserPreload.vue +0 -144
  193. package/utils/JsViewVueWidget/JsvQrcode/BrowserQrcode.vue +0 -189
  194. package/utils/JsViewVueWidget/JsvQrcode/index.js +0 -18
  195. package/utils/JsViewVueWidget/JsvSpray/BrowserSpray.vue +0 -55
  196. package/utils/JsViewVueWidget/JsvSpray/index.js +0 -17
  197. package/utils/JsViewVueWidget/JsvTextureAnim/BrowserTextureAnim.vue +0 -359
  198. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/CheckType.d.ts +0 -0
  199. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/JsvFocus/JsvFocusHub.d.ts +0 -0
  200. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/JsvFocus/JsvFocusManager.d.ts +0 -0
  201. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/Const.d.ts +0 -0
  202. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/Dispatcher.d.ts +0 -0
  203. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/PageUpdater.d.ts +0 -0
  204. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/RenderItem.d.ts +0 -0
  205. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/Slide.d.ts +0 -0
  206. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/SlotComponent.vue.d.ts +0 -0
  207. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/VisibleInfo.d.ts +0 -0
  208. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/MetroWidget/WidgetRectInfo.d.ts +0 -0
  209. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/RangeModel.d.ts +0 -0
  210. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/TemplateParser/CommonMetroTemplate.d.ts +0 -0
  211. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/TemplateParser/ListMetroTemplate.d.ts +0 -0
  212. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/TemplateParser/TemplateItemAdder.d.ts +0 -0
  213. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/TemplateParser/index.d.ts +0 -0
  214. package/bin/types/{JsViewEngineWidget → utils/JsViewEngineWidget}/WidgetCommon.d.ts +0 -0
  215. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAccount/JsvAccount.d.ts +0 -0
  216. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/AudioProxy.d.ts +0 -0
  217. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/BrowserAudio/BrowserAudio.vue.d.ts +0 -0
  218. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/BrowserAudio/JsvSystemAudio.vue.d.ts +4 -4
  219. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/CheckType.d.ts +0 -0
  220. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/Events.d.ts +0 -0
  221. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/JsvAudio.vue.d.ts +4 -4
  222. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/JsvAudioBridgeProxy.d.ts +0 -0
  223. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/JsvAudioProxy.vue.d.ts +0 -0
  224. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/PluginLoader.d.ts +0 -0
  225. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/ScreenLockManager.d.ts +0 -0
  226. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/index.d.ts +0 -0
  227. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvAudio/version.d.ts +0 -0
  228. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvLatex/BrowserDomBuilder.d.ts +0 -0
  229. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvLatex/BrowserJsvLatex.vue.d.ts +4 -4
  230. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvLatex/Color.d.ts +0 -0
  231. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvLatex/JsvLatex.vue.d.ts +4 -4
  232. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvLatex/JsvLatexBridgeProxy.d.ts +0 -0
  233. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvLatex/JsvLatexProxy.vue.d.ts +0 -0
  234. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvLatex/PluginLoader.d.ts +0 -0
  235. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/JsvLatex/version.d.ts +0 -0
  236. package/bin/types/{JsViewPlugin → utils/JsViewPlugin}/index.d.ts +0 -0
  237. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/ConstSymbol.d.ts +0 -0
  238. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/DebugContentShellJBridge.d.ts +0 -0
  239. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/DebugTool.d.ts +0 -0
  240. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/DefaultKeyMap.d.ts +0 -0
  241. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/ForgeConstDefine.d.ts +0 -0
  242. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvDemoTester.d.ts +0 -0
  243. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvFederationTools.d.ts +0 -0
  244. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvHashHistory.d.ts +0 -0
  245. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvPerformance.d.ts +0 -0
  246. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvStyleClass.d.ts +0 -0
  247. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvTextureDefines.d.ts +0 -0
  248. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvTextureStore/CanvasTexture/CanvasTexture.d.ts +0 -0
  249. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvTextureStore/CanvasTexture/CommandList.d.ts +0 -0
  250. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvTextureStore/CanvasTexture/Path.d.ts +0 -0
  251. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvTextureStore/CapturedTexture/CapturedTexture.d.ts +0 -0
  252. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvTextureStore/Store.d.ts +0 -0
  253. package/bin/types/{JsViewVueTools → utils/JsViewVueTools}/JsvTextureStore/Texture.d.ts +0 -0
  254. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvActorMove/ActorControlBase.d.ts +0 -0
  255. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvActorMove/JsvActorMove.vue.d.ts +0 -0
  256. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvActorMove/JsvActorMoveControl.d.ts +0 -0
  257. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvActorMove/index.d.ts +0 -0
  258. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvApic/BrowserApic.vue.d.ts +1 -1
  259. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvApic/index.d.ts +0 -0
  260. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvApic2/BrowserApic2.vue.d.ts +1 -1
  261. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvApic2/JsvApic2.vue.d.ts +0 -0
  262. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvApic2/index.d.ts +0 -0
  263. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvBrowserApicLib/ApicDataBase.d.ts +0 -0
  264. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvBrowserApicLib/BrowserApicLib.d.ts +0 -0
  265. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvBrowserApicLib/GifData.d.ts +0 -0
  266. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvBrowserApicLib/NormalLoopTool.d.ts +0 -0
  267. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvBrowserApicLib/PartLoopTool.d.ts +0 -0
  268. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvBrowserApicLib/SingleLoopTool.d.ts +0 -0
  269. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvBrowserApicLib/Viewer.d.ts +0 -0
  270. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvBrowserApicLib/WebpData.d.ts +0 -0
  271. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvApic/JsvCommonLoopToolBase.d.ts +0 -0
  272. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvClipDiv/JsvClipDiv.vue.d.ts +0 -0
  273. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvClipDiv/index.d.ts +0 -0
  274. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvConnectLine/ArcLineManager.d.ts +0 -0
  275. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvConnectLine/JsvConnectLine.vue.d.ts +2 -2
  276. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvConnectLine/index.d.ts +0 -0
  277. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvDriftScope/JsvDriftScope.vue.d.ts +0 -0
  278. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvDriftScope/index.d.ts +0 -0
  279. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvEnableRenderBreak.vue.d.ts +0 -0
  280. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFilterView.vue.d.ts +3 -3
  281. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFlexCell/JsvFlexDiv.vue.d.ts +0 -0
  282. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/ActionRefObject.d.ts +0 -0
  283. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/ActorControl.d.ts +0 -0
  284. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/ActorState.d.ts +0 -0
  285. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/CallbackManager.d.ts +0 -0
  286. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/ForgeTypeDefine.d.ts +0 -0
  287. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/FreeMoveActor.vue.d.ts +9 -9
  288. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/JsvEnvBlocker.vue.d.ts +3 -3
  289. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/NexusNode.d.ts +0 -0
  290. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/SetAction.d.ts +0 -0
  291. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/SetCondition.d.ts +0 -0
  292. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/SetState.d.ts +0 -0
  293. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/SyncLinkManager.d.ts +0 -0
  294. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvFreeMoveActor/index.d.ts +0 -0
  295. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvGrid.vue.d.ts +0 -0
  296. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvHole.d.ts +0 -0
  297. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvInput/index.d.ts +0 -0
  298. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvLine/JsvLine.vue.d.ts +3 -3
  299. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvLine/LineManager.d.ts +0 -0
  300. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvLine/index.d.ts +0 -0
  301. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvMarquee.vue.d.ts +0 -0
  302. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvMindMap/CommonType.d.ts +0 -0
  303. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvMindMap/Constant.d.ts +0 -0
  304. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvMindMap/index.d.ts +0 -0
  305. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvMindMap/rtree.d.ts +0 -0
  306. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvPieChart.vue.d.ts +0 -0
  307. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvPosterDiv.vue.d.ts +0 -0
  308. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvPosterImage.vue.d.ts +0 -0
  309. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvPreload/JsvPreload.vue.d.ts +0 -0
  310. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvProgressBar.vue.d.ts +1 -1
  311. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvQrcode/JsvQrcode.vue.d.ts +1 -1
  312. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvRadarChart.vue.d.ts +1 -1
  313. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvRipple/Constant.d.ts +0 -0
  314. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvRipple/JsvRipple.vue.d.ts +3 -3
  315. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvRipple/index.d.ts +0 -0
  316. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvScaleTextBox.vue.d.ts +0 -0
  317. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvScrollBox/JsvScrollBox.vue.d.ts +0 -0
  318. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvScrollBox/JsvScrollFollow.vue.d.ts +0 -0
  319. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvScrollBox/ScrollInnerSymbol.d.ts +0 -0
  320. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvScrollBox/ScrollSymbol.d.ts +0 -0
  321. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvScrollBox/index.d.ts +0 -0
  322. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSector.vue.d.ts +0 -0
  323. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSoundPool.d.ts +0 -0
  324. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSpray/JsvSpray.vue.d.ts +0 -0
  325. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSpriteAnim/FrameBuidler.d.ts +0 -0
  326. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSpriteAnim/JsvSpriteAnim.vue.d.ts +0 -0
  327. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSpriteAnim/JsvSpriteLoader.vue.d.ts +0 -0
  328. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSpriteAnim/JsvSpriteTools.d.ts +0 -0
  329. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSpriteAnim/SpriteController.d.ts +0 -0
  330. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSpriteAnim/index.d.ts +0 -0
  331. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSpriteAnim/sAnimationToken.d.ts +0 -0
  332. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSwiper/JsvSwiper.vue.d.ts +1 -1
  333. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSwiper/index.d.ts +0 -0
  334. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSwiper3D/JsvSwiper.vue.d.ts +3 -3
  335. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvSwiper3D/index.d.ts +0 -0
  336. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvTextBox.vue.d.ts +0 -0
  337. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvTextureAnim/CommonType.d.ts +0 -0
  338. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvTextureAnim/JsvTextureAnim.vue.d.ts +0 -0
  339. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvVisibleSensor/JsvVisibleSensor.vue.d.ts +6 -6
  340. package/bin/types/{JsViewVueWidget → utils/JsViewVueWidget}/JsvVisibleSensor/index.d.ts +6 -6
  341. /package/bin/types/{index.d.ts → utils/index.d.ts} +0 -0
@@ -1,33 +1,8 @@
1
- <!--
2
- * @Author: ChenChanghua
3
- * @Date: 2022-01-20 10:35:56
4
- * @LastEditTime: 2023-02-01 13:47:26
5
- * @Description: file content
6
- -->
7
1
  <script>
8
- import { EdgeDirection } from "../../JsViewEngineWidget";
9
- import { Forge } from "@shijiu/jsview/dom/jsv-forge-define";
10
- import CursorVue from "./Cursor.vue";
11
-
12
- const InputType = {
13
- TEXT: Forge.TextInputType.TEXT,
14
- NUMBER: Forge.TextInputType.NUMBER,
15
- PASSWORD: Forge.TextInputType.PASSWORD,
16
- };
17
- const ifDigital = (char) =>
18
- "0".charCodeAt() <= char.charCodeAt() &&
19
- char.charCodeAt() <= "9".charCodeAt();
20
- const ifDirectionKeyCode = (code) => code >= 37 && code <= 40;
21
- const edgeMap = {
22
- 37: EdgeDirection.left,
23
- 38: EdgeDirection.top,
24
- 39: EdgeDirection.right,
25
- 40: EdgeDirection.bottom,
26
- };
27
- const MAX_WIDTH = 1920;
28
- /*
2
+ /**
3
+ * @file
29
4
  * JsvInput:文字的输入控件
30
- * props说明:
5
+ * @props 说明:
31
6
  * left {number} 组件的x
32
7
  * top {number} 组件的y
33
8
  * width {number} 组件的宽
@@ -35,7 +10,8 @@ const MAX_WIDTH = 1920;
35
10
  * type Input.type.TEXT 若为number类型,则输入时,非number无法输入
36
11
  * placeholder {string} 文字颜色值为灰色,默认值为"请输入文字"
37
12
  * placeholderColor {string} 默认文字颜色,默认值为灰色
38
- * maxLength {number} 最大字符长度, 默认100,支持单行最大宽度为1920*2,
13
+ * editorBackground {string} 当ime出现时,输入框呈现的强调颜色,注意:不能为半透明色
14
+ * maxLength {number} 最大字符长度, 默认100,支持单行最大宽度为1920*2,
39
15
  * fontsize为30,则字数大约为1920*2/30 = 100个左右
40
16
  * readonly {bool} 属性规定输入字段是只读的, 默认false
41
17
  * value {string} 输入的字符串
@@ -49,11 +25,15 @@ const MAX_WIDTH = 1920;
49
25
  * onEdge {function} 方向键到达边缘回调
50
26
  * @oarams edge_info 边缘信息
51
27
  * {
52
- * direction: EdgeDirection,
28
+ * direction: EdgeDirection,
53
29
  * rect: {x: value,y: value, widht: value,height: value}
54
30
  * }
55
31
  * onTextChange {function} 文字改动回调
56
32
  * @params string 当前文字
33
+ * onBackKey {function} 收到返回键时的决策,根据返回值决定是吞掉还是放过,
34
+ * 返回true时可以规避ime显示后有时会吐出返回键导致整体退出的问题
35
+ * @params isUp {boolean} 是down(false)还是up(true)
36
+ * @return {boolean}
57
37
  *
58
38
  * InputDispatcher dispatch支持事件:
59
39
  * add
@@ -62,698 +42,331 @@ const MAX_WIDTH = 1920;
62
42
  * public methods:
63
43
  * add
64
44
  * @description 添加文字
65
- @params {String} string 添加文字
45
+ * @params {String} string 添加文字
66
46
  * delete
67
- @description 删除文字
47
+ * @description 删除文字
68
48
  * clear
69
- @description 清空文字
49
+ * @description 清空文字
70
50
  */
71
-
51
+ import { InputType } from "./SharedDefine";
72
52
  export { InputType };
73
- export default {
74
- components: {
75
- CursorVue,
53
+ </script>
54
+
55
+ <script setup>
56
+ import { EdgeDirection } from "../../JsViewEngineWidget";
57
+ import CursorVue from "./Cursor.vue";
58
+ import { watchEffect, computed, onMounted, onUnmounted, shallowRef } from "vue";
59
+ import { EditViewOperator } from "./EditViewOperator";
60
+
61
+ const rProps = defineProps({
62
+ name: {
63
+ type: String,
76
64
  },
77
- props: {
78
- name: {
79
- type: String,
80
- },
81
- left: {
82
- type: Number,
83
- default: 0,
84
- },
85
- top: {
86
- type: Number,
87
- default: 0,
88
- },
89
- width: {
90
- type: Number,
91
- default: 100,
92
- },
93
- height: {
94
- type: Number,
95
- default: 20,
96
- },
97
- type: {
98
- type: Number,
99
- default: InputType.TEXT,
100
- },
101
- placeholder: {
102
- type: String,
103
- default: "请输入",
104
- },
105
- placeholderColor: {
106
- type: String,
107
- default: "#CDCCD6",
108
- },
109
- maxLength: {
110
- type: Number,
111
- default: 100,
112
- },
113
- readonly: {
114
- type: Boolean,
115
- default: false,
116
- },
117
- value: {
118
- type: String,
119
- default: "",
120
- },
121
- fontStyle: {
122
- type: [Object, Array],
123
- default() {
124
- return {
125
- textAlign: "left",
126
- fontSize: 12,
127
- color: "#000000",
128
- };
129
- },
130
- },
131
- cursorShow: {
132
- type: Boolean,
133
- default: true,
134
- },
135
- cursorWidth: {
136
- type: Number,
137
- default: 2,
138
- },
139
- cursorColor: {
140
- type: String,
141
- default: "",
142
- },
143
- onTextOverflow: {
144
- type: Function,
145
- },
146
- onTextChange: {
147
- type: Function,
148
- },
149
- onEdge: {
150
- type: Function,
151
- },
65
+ left: {
66
+ type: Number,
67
+ default: 0,
152
68
  },
153
- data() {
154
- return {
155
- fullString: this.value,
156
- curOffset: this.value.length,
157
- textWidth: 0,
158
- textLeft: 0,
159
- };
69
+ top: {
70
+ type: Number,
71
+ default: 0,
160
72
  },
161
- setup() {
162
- return {
163
- editControlView: null,
164
- editControlViewId: -1,
165
- isFocus: false,
166
- visibleAreaCurStart: 0,
167
- visibleAreaCurPos: 0,
168
- visibleAreaCurEnd: 0,
169
- cursorPauseTimeoutToken: -1,
170
- };
73
+ width: {
74
+ type: Number,
75
+ default: 100,
171
76
  },
172
- computed: {
173
- realText() {
174
- return this.type === InputType.PASSWORD
175
- ? this.fullString.replace(/\w/g, "*")
176
- : this.fullString;
177
- },
178
- placeholderVisible() {
179
- return this.fullString.length === 0 && this.placeholder.length > 0;
180
- },
181
- cursorLeft() {
182
- return (
183
- this._calculateCursorPosition(this.realText, this.curOffset) +
184
- this.textLeft
185
- );
186
- },
187
- cursorColorInner() {
188
- return this.cursorColor ? this.cursorColor : this.fontStyle.color;
189
- },
77
+ height: {
78
+ type: Number,
79
+ default: 20,
190
80
  },
191
- methods: {
192
- _updateTextWidth(text) {
193
- if (text.length !== this.fullString.length) {
194
- if (text.length === 0) {
195
- this.textWidth = this.width;
196
- } else {
197
- this.textWidth = this._calculateCursorPosition(text, text.length);
198
- if (this.textWidth < this.width) {
199
- this.textWidth = this.width;
200
- }
201
- }
202
- }
203
- },
204
-
205
- _onTextChanged(text, cursor_pos, moved) {
206
- if (moved) {
207
- // 移动时,光标不闪烁
208
- this.pauseCursorBlink();
209
- } else {
210
- if (text.length >= this.maxLength) {
211
- text = this.fullString;
212
- if (this.editControlView && this.isFocus) {
213
- this.editControlView.updateCursorOffset(
214
- this.fullString,
215
- this.curOffset
216
- );
217
- }
218
- return;
219
- }
220
- }
221
- if (text.length > 0) {
222
- const start = cursor_pos - 1;
223
- const end = cursor_pos;
224
- const add_text = text.slice(start, end);
225
- if (
226
- add_text &&
227
- !ifDigital(add_text) &&
228
- this.type === InputType.NUMBER
229
- ) {
230
- // console.log(
231
- // `onTextChanged add text failed, add_text:${add_text}, when input type is number!`
232
- // );
233
- if (this.editControlView) {
234
- this.editControlView.updateCursorOffset(
235
- this.fullString,
236
- this.curOffset
237
- );
238
- }
239
- return;
240
- }
241
- }
242
-
243
- this._updateTextWidth(text);
244
- this.textLeft = this._calculateSlide(
245
- this.fullString,
246
- text,
247
- cursor_pos,
248
- moved
249
- );
250
- this.fullString = text;
251
- this.curOffset = cursor_pos;
252
- this.onTextChange?.(text);
253
- },
254
-
255
- // 1:shown 0:hidden
256
- _onStatusChanged(status) {
257
- // console.log("OnStatusChanged status", status);
258
- },
259
-
260
- _getStringWithFont(str) {
261
- const size = this.fontStyle.fontSize ? this.fontStyle.fontSize : 12;
262
- const font = this.fontStyle.fontFamily;
263
- const alignment = this.fontStyle.textAlign;
264
- const italic = this.fontStyle.fontStyle === "italic";
265
- const bold = this.fontStyle.fontWeight === "bold";
266
- return Forge.sTextUtils.StringWithFont(
267
- str,
268
- size,
269
- font,
270
- alignment,
271
- "middle",
272
- null,
273
- italic,
274
- bold
275
- );
276
- },
277
- _getFullStringLength(str) {
278
- return Forge.sTextUtils.GetTextWidth(this._getStringWithFont(str));
279
- },
280
-
281
- add(string) {
282
- if (this.type === InputType.NUMBER && !ifDigital(string)) {
283
- // console.log(`The input data:${string} is not number`);
284
- return;
285
- }
286
- const pre_full_str = this.fullString;
287
- const pre_index = this.curOffset;
288
- if (this.fullString.length < this.maxLength) {
289
- const new_str =
290
- pre_full_str.slice(0, pre_index) +
291
- string +
292
- pre_full_str.slice(pre_index);
293
- const new_index = pre_index + string.length;
294
- this._onTextChanged(new_str, new_index);
295
- } else {
296
- if (this.onTextOverflow) {
297
- this.onTextOverflow();
298
- }
299
- }
300
- },
301
-
302
- delete() {
303
- const pre_full_str = this.fullString;
304
- const pre_index = this.curOffset;
305
- if (pre_index > 0) {
306
- const new_str =
307
- pre_full_str.slice(0, pre_index - 1) + pre_full_str.slice(pre_index);
308
- const new_index = pre_index - 1;
309
- this._onTextChanged(new_str, new_index);
310
- }
311
- },
312
-
313
- clear() {
314
- this._onTextChanged("", 0);
315
- },
316
-
317
- replace(string) {
318
- this._onTextChanged(string, string.length);
319
- },
320
-
321
- _calculateCursorPosition(full_str, cursor_offset) {
322
- const target_str = this._GetRealText(full_str);
323
- const font_params = this._getStringWithFont(target_str);
324
- const max_width = MAX_WIDTH; // 最大宽度为1920*2, 根据texture的最大宽度设定
325
- const max_rect = new Forge.RectArea(0, 0, max_width, this.height);
326
- const text_attr = Forge.sTextUtils.TextAttr("none", "none");
327
- const cur_pos = Forge.sTextUtils.GetCursorPosition(
328
- target_str,
329
- max_rect,
330
- font_params,
331
- text_attr,
332
- this.height,
333
- cursor_offset
334
- );
335
- return cur_pos.x;
336
- },
337
-
338
- _getLeftWithDelChar(current_cursor_position, target_str) {
339
- let new_left = this.textLeft;
340
- let offset = 0;
341
- if (current_cursor_position === 0) {
342
- offset = -new_left;
343
- new_left = 0;
344
- } else if (
345
- current_cursor_position - this.cursorWidth > 0 &&
346
- current_cursor_position - this.cursorWidth <= this.visibleAreaCurStart
347
- ) {
348
- offset = this.visibleAreaCurPos - current_cursor_position;
349
- if (new_left < 0 && new_left + offset + this.textWidth < this.width) {
350
- // 删除字符时,可视区域内字符串显示不全,对left做调整
351
- offset = this.width - (new_left + this.textWidth);
352
- }
353
- new_left += offset;
354
- if (new_left > 0) {
355
- new_left = 0;
356
- } else {
357
- if (this.fontStyle.textAlign === "right") {
358
- const text_real_width = this._getFullStringLength(target_str);
359
- if (new_left > text_real_width - MAX_WIDTH) {
360
- new_left = text_real_width - MAX_WIDTH;
361
- offset = this.visibleAreaCurStart + new_left;
362
- }
363
- }
364
- }
365
- } else {
366
- if (new_left < 0 && new_left + this.textWidth < this.width) {
367
- // 删除字符时,可视区域内字符串显示不全,对left做调整
368
- offset = this.width - (new_left + this.textWidth);
369
- new_left = this.width - this.textWidth;
370
- } else {
371
- if (this.fontStyle.textAlign === "right") {
372
- const text_real_width = this._getFullStringLength(target_str);
373
- if (text_real_width >= this.width) {
374
- if (new_left > text_real_width - MAX_WIDTH) {
375
- new_left = text_real_width - MAX_WIDTH;
376
- offset = this.visibleAreaCurStart + new_left;
377
- }
378
- } else {
379
- new_left = this.width - MAX_WIDTH;
380
- offset = this.visibleAreaCurStart + new_left;
381
- }
382
- }
383
- }
384
- }
385
-
386
- this._updateVisibleAreaCursor(-offset);
387
- // console.log(` _getLeftWithDelChar2 target_str:${target_str}, new_left:${new_left}, this.textWidth:${this.textWidth}`);
388
-
389
- return new_left;
390
- },
391
-
392
- _getLeftWithMoveRight() {
393
- let new_left = this.textLeft;
394
- let offset = this.width / 2;
395
- // 边界检测
396
- if (this.textWidth + (new_left - offset) < this.width) {
397
- new_left = this.width - this.textWidth;
398
- offset = -new_left - this.visibleAreaCurStart;
399
- } else {
400
- new_left -= offset;
401
- }
402
-
403
- this._updateVisibleAreaCursor(offset);
404
- return new_left;
405
- },
406
-
407
- _getLeftWithMoveLeft() {
408
- let new_left = this.textLeft;
409
- let offset = this.width / 2;
410
- new_left += offset;
411
- // 边界检测
412
- if (new_left > 0) {
413
- new_left = 0;
414
- offset = this.visibleAreaCurStart;
415
- } else {
416
- if (this.fontStyle.textAlign === "right") {
417
- const text_real_width = this._getFullStringLength(
418
- this._GetShowText()
419
- );
420
- if (new_left > text_real_width - MAX_WIDTH) {
421
- new_left = text_real_width - MAX_WIDTH;
422
- offset = this.visibleAreaCurStart + new_left;
423
- }
424
- }
425
- }
426
- this._updateVisibleAreaCursor(-offset);
427
- return new_left;
428
- },
429
-
430
- _updateVisibleAreaCursor(offset) {
431
- this.visibleAreaCurStart += offset;
432
- if (this.visibleAreaCurStart < 0) {
433
- this.visibleAreaCurStart = 0;
434
- }
435
- this.visibleAreaCurEnd = this.visibleAreaCurStart + this.width;
436
- },
437
-
438
- _getLeftWithAddChar(current_cursor_position, end_add) {
439
- let new_left = this.textLeft;
440
- if (
441
- current_cursor_position + this.cursorWidth >=
442
- this.visibleAreaCurEnd
443
- ) {
444
- let offset = current_cursor_position - this.visibleAreaCurPos;
445
- new_left -= offset;
446
- if (end_add) {
447
- // 尾部追加,对齐坐标
448
- if (this.fontStyle.textAlign === "right") {
449
- new_left = this.width - MAX_WIDTH;
450
- offset = -this.visibleAreaCurStart - new_left;
451
- } else {
452
- new_left = this.width - this.textWidth;
453
- offset = -this.visibleAreaCurStart - new_left;
454
- }
455
- }
456
-
457
- this._updateVisibleAreaCursor(offset);
458
- }
459
-
460
- return new_left;
461
- },
462
-
463
- _calculateSlide(pre_str, target_str, cur_index, moved) {
464
- if (target_str.length === 0) {
465
- if (this.fontStyle.textAlign === "right") {
466
- const offset = MAX_WIDTH - this.width - this.visibleAreaCurStart;
467
- this._updateVisibleAreaCursor(offset);
468
- this.visibleAreaCurPos = this.visibleAreaCurEnd;
469
- return this.width - MAX_WIDTH;
470
- }
471
- const offset = -this.visibleAreaCurStart;
472
- this._updateVisibleAreaCursor(offset);
473
- this.visibleAreaCurPos = this.visibleAreaCurEnd;
474
- return 0;
475
- }
476
-
477
- let new_left = this.textLeft;
478
- const current_cursor_position = this._calculateCursorPosition(
479
- target_str,
480
- cur_index
481
- );
482
- let option_mode = "op_vis_normal"; // 可视区域内移动
483
- // 计算模式
484
- if (pre_str.length > target_str.length) {
485
- option_mode = "op_del"; // 字符删除
486
- } else if (pre_str.length < target_str.length) {
487
- option_mode = "op_add"; // 字符追加
488
- } else {
489
- if (moved) {
490
- if (current_cursor_position <= this.visibleAreaCurStart) {
491
- option_mode = "op_move_left"; // 边界左移动
492
- } else if (current_cursor_position >= this.visibleAreaCurEnd) {
493
- option_mode = "op_move_right"; // 边界右移动
494
- }
495
- }
496
- }
497
-
498
- // 根据用户动作,区分计算方法
499
- switch (option_mode) {
500
- case "op_del":
501
- new_left = this._getLeftWithDelChar(
502
- current_cursor_position,
503
- target_str
504
- );
505
- break;
506
- case "op_add":
507
- new_left = this._getLeftWithAddChar(
508
- current_cursor_position,
509
- target_str.length === cur_index
510
- );
511
- break;
512
- case "op_move_left":
513
- new_left = this._getLeftWithMoveLeft(current_cursor_position);
514
- break;
515
- case "op_move_right":
516
- new_left = this._getLeftWithMoveRight(current_cursor_position);
517
- break;
518
- case "op_vis_normal":
519
- default:
520
- break;
521
- }
522
-
523
- // 更新可视区域光标位置
524
- this.visibleAreaCurPos = current_cursor_position;
525
- return new_left;
526
- },
527
-
528
- onFocus() {
529
- // console.log("Input Focus");
530
- this.isFocus = true;
531
- this.$refs.cursor?.startBlink();
532
- if (this.editControlView && !this.readonly) {
533
- this.editControlView.showIme(
534
- this.type,
535
- this.fullString,
536
- this.curOffset
537
- );
538
- }
539
- },
540
-
541
- onBlur() {
542
- this.isFocus = false;
543
- // console.log("Input Blur");
544
- if (this.editControlView && !this.readonly) {
545
- this.editControlView.hideIme();
546
- }
547
- },
548
-
549
- clearCursorPauseTimer() {
550
- if (this.cursorPauseTimeoutToken) {
551
- clearTimeout(this.cursorPauseTimeoutToken);
552
- this.cursorPauseTimeoutToken = -1;
553
- }
554
- },
555
- pauseCursorBlink() {
556
- if (this.$refs.cursor) {
557
- this.$refs.cursor?.stopBlink(true);
558
- }
559
- this.clearCursorPauseTimer();
560
- this.cursorPauseTimeoutToken = setTimeout(() => {
561
- this.$refs.cursor?.startBlink();
562
- }, 500);
563
- },
564
- onKeyDown(keyEvent) {
565
- let key_used = false;
566
- let pre_index = this.curOffset;
567
- let cur_index;
568
- let valid_move = false;
569
-
570
- switch (keyEvent.keyCode) {
571
- case 37: // left
572
- this.pauseCursorBlink();
573
- if (pre_index !== 0) {
574
- valid_move = true;
575
- cur_index = --pre_index;
576
- key_used = true;
577
- }
578
- break;
579
- case 39: // right
580
- this.pauseCursorBlink();
581
- if (pre_index < this.fullString.length) {
582
- valid_move = true;
583
- cur_index = ++pre_index;
584
- key_used = true;
585
- }
586
- break;
587
- case 38: // up
588
- case 40: // down
589
- break;
590
- case 13:
591
- // 显示键盘
592
- this.editControlView.showIme(
593
- this.type,
594
- this.fullString,
595
- this.curOffset
596
- );
597
- key_used = true;
598
- break;
599
- case 27:
600
- case 10000:
601
- //返回键吐出
602
- key_used = false;
603
- break;
604
- default:
605
- // 浏览器中,点击浏览器时input焦点丢失,JsvInput收到任意按键获取焦点
606
- if (!window.JsView) {
607
- // 显示键盘
608
- this.editControlView.showIme(
609
- this.type,
610
- this.fullString,
611
- this.curOffset
612
- );
613
- key_used = true;
614
- }
615
- break;
616
- }
617
-
618
- if (ifDirectionKeyCode(keyEvent.keyCode)) {
619
- if (valid_move) {
620
- this.curOffset = cur_index;
621
- this.textLeft = this._calculateSlide(
622
- this.fullString,
623
- this.fullString,
624
- cur_index,
625
- true
626
- );
627
- if (this.editControlView) {
628
- this.editControlView.updateCursorOffset(this.fullString, cur_index);
629
- }
630
- } else {
631
- if (this.onEdge && edgeMap[keyEvent.keyCode]) {
632
- this.onEdge({
633
- direction: edgeMap[keyEvent.keyCode],
634
- rect: {
635
- x: this.left,
636
- y: this.top,
637
- width: this.width,
638
- height: this.height,
639
- },
640
- });
641
- // if (!on_edged && !window.JsView) {
642
- // // 重获焦点
643
- // this.editControlView.showIme(
644
- // this.type,
645
- // this.fullString,
646
- // this.curOffset
647
- // );
648
- // }
649
- }
650
- }
651
- }
652
- return key_used;
653
- },
654
- _GetRealText(src_str) {
655
- let value = src_str;
656
- if (this.type === Forge.TextInputType.PASSWORD) {
657
- // password
658
- value = value.replace(/\w/g, "*");
659
- }
660
-
661
- return value;
662
- },
663
- _GetShowText() {
664
- return this._GetRealText(this.fullString);
81
+ type: {
82
+ type: Number,
83
+ default: InputType.TEXT,
84
+ },
85
+ placeholder: {
86
+ type: String,
87
+ default: "请输入",
88
+ },
89
+ placeholderColor: {
90
+ type: String,
91
+ default: "#CDCCD6",
92
+ },
93
+ editorBackground: {
94
+ type: String,
95
+ default: "#5d5c76",
96
+ },
97
+ maxLength: {
98
+ type: Number,
99
+ default: 100,
100
+ },
101
+ readonly: {
102
+ type: Boolean,
103
+ default: false,
104
+ },
105
+ value: {
106
+ type: String,
107
+ default: "",
108
+ },
109
+ fontStyle: {
110
+ type: [Object, Array],
111
+ default() {
112
+ return {
113
+ textAlign: "left",
114
+ fontSize: 12,
115
+ color: "#000000",
116
+ };
665
117
  },
666
118
  },
667
- created() {
668
- this.editControlView = new Forge.EditControlView();
669
- this.editControlView.OnTextChanged = this._onTextChanged;
670
- this.editControlView.OnStatusChanged = this._onStatusChanged;
671
-
672
- this.editControlViewId = Forge.sViewStore.add(
673
- new Forge.ViewInfo(this.editControlView)
674
- );
675
- const cur_position = this._calculateCursorPosition(
676
- this.value,
677
- this.value.length
678
- );
679
- this.visibleAreaCurEnd =
680
- cur_position > this.width ? cur_position : this.width; // 可视区域光标结束位置,当光标位置超出这个范围,则更新start&end,并更新text left
681
- this.visibleAreaCurStart = this.visibleAreaCurEnd - this.width; // 可视区域光标起始位置
682
- this.visibleAreaCurPos = cur_position;
683
-
684
- // 文字的描画长度,默认为可视区域的长度
685
- // 文字内容变化时,文字显示宽度变化,最小为可视区域的长度
686
- this.textWidth = cur_position > this.width ? cur_position : this.width;
687
- this.textLeft = this._calculateSlide("", this.value, this.value.length);
119
+ cursorShow: {
120
+ type: Boolean,
121
+ default: true,
688
122
  },
689
- mounted() {
690
- this.$refs.cursor?.startBlink();
123
+ cursorWidth: {
124
+ type: Number,
125
+ default: 2,
691
126
  },
692
- beforeUnmount() {
693
- if (this.editControlViewId != -1) {
694
- Forge.sViewStore.remove(this.editControlViewId);
695
- this.editControlViewId = -1;
696
- }
697
- this.clearCursorPauseTimer();
127
+ cursorColor: {
128
+ type: String,
129
+ default: "",
130
+ },
131
+ onTextOverflow: {
132
+ type: Function,
698
133
  },
134
+ onTextChange: {
135
+ type: Function,
136
+ },
137
+ onEdge: {
138
+ type: Function,
139
+ },
140
+ onBackKey: {
141
+ Type: Function,
142
+ },
143
+ });
144
+
145
+ let rCursorRef = shallowRef(null);
146
+ let rInputFinalText = shallowRef("");
147
+ let rInputFinalTextLenth = shallowRef(0);
148
+ let rTextPosLeft = shallowRef(0);
149
+ let rCursorLeft = shallowRef(0);
150
+
151
+ function _OnTextChanged(input_final_text, dsp_text) {
152
+ console.log(
153
+ "_OnTextChanged input_final_text=" +
154
+ input_final_text +
155
+ " dsp_text=" +
156
+ dsp_text
157
+ );
158
+ rInputFinalText.value = dsp_text;
159
+ rInputFinalTextLenth.value = dsp_text.length;
160
+ }
161
+
162
+ function _OnCursorPositionChanged(text_left, cursor_left) {
163
+ rTextPosLeft.value = text_left;
164
+ rCursorLeft.value = cursor_left + text_left;
165
+ }
166
+
167
+ // 创建Forge的EditView控制处理
168
+ let cEditViewOperator = new EditViewOperator(
169
+ _OnTextChanged,
170
+ _OnCursorPositionChanged,
171
+ rProps.onTextOverflow
172
+ );
173
+ let vEditViewInnerId = cEditViewOperator.generateView(); // 建立Forge.EditView
174
+
175
+ cEditViewOperator.updateInputConfig(
176
+ rProps.width,
177
+ rProps.height,
178
+ rProps.cursorWidth,
179
+ rProps.fontStyle,
180
+ rProps.type,
181
+ rProps.maxLength,
182
+ rProps.readonly,
183
+ rProps.fontStyle.color,
184
+ rProps.editorBackground
185
+ );
186
+
187
+ function _FocusBlockOnFocus() {
188
+ cEditViewOperator.updateFocus(true);
189
+ }
190
+
191
+ function _FocusBlockOnBlur() {
192
+ cEditViewOperator.updateFocus(false);
193
+ }
194
+
195
+ // 按键处理
196
+ const fncIfDirectionKeyCode = (code) => code >= 37 && code <= 40;
197
+ const cEdgeMap = {
198
+ 37: EdgeDirection.left,
199
+ 38: EdgeDirection.top,
200
+ 39: EdgeDirection.right,
201
+ 40: EdgeDirection.bottom,
699
202
  };
203
+ function _FocusBlockOnKeyDown(keyEvent) {
204
+ let key_used = false;
205
+ let valid_move = false;
206
+
207
+ switch (keyEvent.keyCode) {
208
+ case 37: // left
209
+ valid_move = cEditViewOperator.moveCursorOffset(-1);
210
+ key_used = true;
211
+ break;
212
+ case 39: // right
213
+ valid_move = cEditViewOperator.moveCursorOffset(1);
214
+ key_used = true;
215
+ break;
216
+ case 38: // up
217
+ case 40: // down
218
+ break;
219
+ case 13:
220
+ // 显示键盘
221
+ cEditViewOperator.showSoftIme();
222
+ key_used = true;
223
+ break;
224
+ case 27:
225
+ case 10000:
226
+ //返回键吐出
227
+ key_used = !!rProps.onBackKey?.(false);
228
+ break;
229
+ default:
230
+ // 浏览器中,点击浏览器时input焦点丢失,JsvInput收到任意按键获取焦点
231
+ if (!window.JsView) {
232
+ // 显示键盘
233
+ cEditViewOperator.showSoftIme();
234
+ key_used = true;
235
+ }
236
+ break;
237
+ }
238
+
239
+ if (fncIfDirectionKeyCode(keyEvent.keyCode) && !valid_move) {
240
+ // 跳出当前输入框
241
+ if (rProps.onEdge && cEdgeMap[keyEvent.keyCode]) {
242
+ rProps.onEdge({
243
+ direction: cEdgeMap[keyEvent.keyCode],
244
+ rect: {
245
+ x: rProps.left,
246
+ y: rProps.top,
247
+ width: rProps.width,
248
+ height: rProps.height,
249
+ },
250
+ });
251
+ }
252
+ }
253
+ return key_used;
254
+ }
255
+
256
+ function _FocusBlockOnKeyUp(ev) {
257
+ if (ev.keyCode == 10000) {
258
+ return !!rProps.onBackKey?.(true);
259
+ }
260
+
261
+ return false;
262
+ }
263
+
264
+ const rPlaceholderVisible = computed(() => {
265
+ return rInputFinalTextLenth.length === 0 && rProps.placeholder.length > 0;
266
+ });
267
+
268
+ const rCursorColorInner = computed(() => {
269
+ return rProps.cursorColor ? rProps.cursorColor : rProps.fontStyle.color;
270
+ });
271
+
272
+ // rProps.text改动跟进
273
+ watchEffect(() => {
274
+ cEditViewOperator.replaceText(rProps.text);
275
+ });
276
+
277
+ onMounted(() => {
278
+ cEditViewOperator.setCursorRef(rCursorRef.value);
279
+ });
280
+
281
+ onUnmounted(() => {
282
+ cEditViewOperator.onUnmounted();
283
+ vEditViewInnerId = -1;
284
+ cEditViewOperator.setCursorRef(null);
285
+ cEditViewOperator = null;
286
+ });
287
+
288
+ defineExpose({
289
+ add: (text) => {
290
+ cEditViewOperator?.addText(text);
291
+ },
292
+ delete: () => {
293
+ cEditViewOperator?.deleteText();
294
+ },
295
+ clear: () => {
296
+ cEditViewOperator?.clearText();
297
+ },
298
+ replace: (text) => {
299
+ cEditViewOperator?.replaceText(text);
300
+ },
301
+ });
700
302
  </script>
701
303
 
702
304
  <template>
703
305
  <jsv-focus-block
704
- :name="name"
306
+ :name="rProps.name"
705
307
  :onAction="{
706
- onFocus: onFocus,
707
- onBlur: onBlur,
708
- onKeyDown: onKeyDown
308
+ onFocus: _FocusBlockOnFocus,
309
+ onBlur: _FocusBlockOnBlur,
310
+ onKeyDown: _FocusBlockOnKeyDown,
311
+ onKeyUp: _FocusBlockOnKeyUp,
709
312
  }"
710
313
  :style="{
711
- left: left,
712
- top: top,
713
- width: width,
714
- height: height,
314
+ left: rProps.left,
315
+ top: rProps.top,
316
+ width: rProps.width,
317
+ height: rProps.height,
715
318
  }"
716
319
  >
717
320
  <div
718
321
  :style="{
719
- width: width,
720
- height: height,
322
+ width: rProps.width,
323
+ height: rProps.height,
721
324
  overflow: 'hidden',
722
325
  }"
723
326
  >
724
327
  <div
725
328
  :style="{
726
- left: this.textLeft,
727
- width: this.textWidth,
728
- height: height,
729
- lineHeight: height,
730
- ...this.fontStyle,
329
+ left: rTextPosLeft,
330
+ height: rProps.height,
331
+ lineHeight: rProps.height,
332
+ ...rProps.fontStyle,
731
333
  }"
732
334
  >
733
- {{ realText }}
335
+ {{ rInputFinalText }}
734
336
  </div>
735
337
  <div
736
- v-if="placeholderVisible"
338
+ v-if="rPlaceholderVisible"
737
339
  :style="{
738
340
  left: 0,
739
- width: width,
740
- height: height,
741
- lineHeight: height,
742
- ...fontStyle,
743
- color: placeholderColor,
341
+ width: rProps.width,
342
+ height: rProps.height,
343
+ lineHeight: rProps.height,
344
+ ...rProps.fontStyle,
345
+ color: rProps.placeholderColor,
744
346
  }"
745
347
  >
746
- {{ placeholder }}
348
+ {{ rProps.placeholder }}
747
349
  </div>
748
350
  </div>
749
351
  <cursor-vue
750
- v-if="cursorShow"
751
- ref="cursor"
752
- :left="cursorLeft"
753
- :height="height"
754
- :color="cursorColorInner"
755
- :width="cursorWidth"
352
+ v-if="rProps.cursorShow"
353
+ ref="rCursorRef"
354
+ :left="rCursorLeft"
355
+ :height="rProps.height"
356
+ :color="rCursorColorInner"
357
+ :width="rProps.cursorWidth"
358
+ />
359
+ <div
360
+ :style="{
361
+ width: rProps.width,
362
+ height: rProps.height,
363
+ }"
364
+ :data-jsv-vw-innerview="vEditViewInnerId"
756
365
  />
757
- <div :data-jsv-vw-innerview="editControlViewId" />
758
366
  </jsv-focus-block>
759
- </template>
367
+ </template>
368
+ <style scoped>
369
+ .testColor {
370
+ background-color: #5d5c76;
371
+ }
372
+ </style>