@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.
- package/bin/browser/BrowserApic.vue.mjs +2 -13
- package/bin/browser/BrowserApic2.vue.mjs +2 -13
- package/bin/browser/BrowserApicLib.mjs +24 -24
- package/bin/browser/BrowserAudio.vue.mjs +2 -10
- package/bin/browser/BrowserJsvFragShaderView.vue.mjs +21 -5
- package/bin/browser/BrowserJsvLatex.vue.mjs +39 -16
- package/bin/browser/BrowserPreload.vue.mjs +1 -5
- package/bin/browser/BrowserQrcode.vue.mjs +1 -5
- package/bin/browser/BrowserSpray.vue.mjs +2 -12
- package/bin/browser/BrowserTextureAnim.vue.mjs +2 -12
- package/bin/export-sfc.mjs +3 -3
- package/bin/jsview-vue-common.mjs +3 -3
- package/bin/jsview-vue.mjs +3216 -2086
- package/bin/types/JsViewEngineWidget/CheckType.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue.d.ts +37 -33
- package/bin/types/JsViewEngineWidget/JsvFocus/JsvFocusHub.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/JsvFocus/JsvFocusManager.d.ts +15 -2
- package/bin/types/JsViewEngineWidget/MetroWidget/Const.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/MetroWidget/Dispatcher.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/MetroWidget/ListWidget.vue.d.ts +14 -3
- package/bin/types/JsViewEngineWidget/MetroWidget/MetroWidget.vue.d.ts +280 -3
- package/bin/types/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.d.ts +7 -1
- package/bin/types/JsViewEngineWidget/MetroWidget/PageUpdater.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/MetroWidget/RenderItem.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/MetroWidget/Slide.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/MetroWidget/SlotComponent.vue.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/MetroWidget/VisibleInfo.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/MetroWidget/WidgetRectInfo.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/RangeModel.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/TemplateParser/CommonMetroTemplate.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/TemplateParser/Fence.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/TemplateParser/ListMetroTemplate.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/TemplateParser/MetroTemplate.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/TemplateParser/TemplateItemAdder.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/TemplateParser/index.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/WidgetCommon.d.ts +4 -0
- package/bin/types/JsViewEngineWidget/index.d.ts +5 -1
- package/bin/types/JsViewPlugin/JsvAccount/JsvAccount.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/AudioProxy.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/BrowserAudio/BrowserAudio.vue.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/BrowserAudio/JsvSystemAudio.vue.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/CheckType.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/Events.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/JsvAudio.vue.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/JsvAudioBridgeProxy.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/JsvAudioProxy.vue.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/PluginLoader.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/ScreenLockManager.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/index.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvAudio/version.d.ts +5 -0
- package/bin/types/JsViewPlugin/JsvLatex/BrowserDomBuilder.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvLatex/BrowserJsvLatex.vue.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvLatex/Color.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvLatex/JsvLatex.vue.d.ts +24 -0
- package/bin/types/JsViewPlugin/JsvLatex/JsvLatexBridgeProxy.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvLatex/JsvLatexProxy.vue.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvLatex/PluginLoader.d.ts +4 -0
- package/bin/types/JsViewPlugin/JsvLatex/index.d.ts +5 -0
- package/bin/types/JsViewPlugin/JsvLatex/version.d.ts +4 -0
- package/bin/types/JsViewPlugin/index.d.ts +4 -0
- package/bin/types/JsViewVueTools/ConstSymbol.d.ts +4 -0
- package/bin/types/JsViewVueTools/DebugContentShellJBridge.d.ts +4 -0
- package/bin/types/JsViewVueTools/DebugTool.d.ts +4 -0
- package/bin/types/JsViewVueTools/DefaultKeyMap.d.ts +4 -0
- package/bin/types/JsViewVueTools/FeatureActive.d.ts +14 -0
- package/bin/types/JsViewVueTools/ForgeConstDefine.d.ts +4 -0
- package/bin/types/JsViewVueTools/ForgeHandles.d.ts +7 -3
- package/bin/types/JsViewVueTools/JsvDemoTester.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvDynamicCssStyle.d.ts +20 -1
- package/bin/types/JsViewVueTools/JsvDynamicKeyFrames.d.ts +21 -2
- package/bin/types/JsViewVueTools/JsvFederationTools.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvHashHistory.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvImpactTracer.d.ts +8 -4
- package/bin/types/JsViewVueTools/JsvPerformance.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvPreDownloader.d.ts +24 -2
- package/bin/types/JsViewVueTools/JsvRefTaker.d.ts +28 -3
- package/bin/types/JsViewVueTools/JsvRuntimeBridge.d.ts +50 -0
- package/bin/types/JsViewVueTools/JsvStyleClass.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvStyleSheetsDeclarer.d.ts +21 -1
- package/bin/types/JsViewVueTools/JsvTextTools.d.ts +85 -27
- package/bin/types/JsViewVueTools/JsvTextureDefines.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvTextureLoadTool.d.ts +67 -0
- package/bin/types/JsViewVueTools/JsvTextureStore/CanvasTexture/CanvasTexture.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvTextureStore/CanvasTexture/CommandList.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvTextureStore/CanvasTexture/Path.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvTextureStore/JsvTextureStore.d.ts +30 -4
- package/bin/types/JsViewVueTools/JsvTextureStore/Store.d.ts +4 -0
- package/bin/types/JsViewVueTools/JsvTextureStore/Texture.d.ts +4 -0
- package/bin/types/JsViewVueTools/NinePatchHelper.d.ts +5 -1
- package/bin/types/JsViewVueTools/TextureManagerTools.d.ts +11 -0
- package/bin/types/JsViewVueTools/TypeCheckAndSet.d.ts +4 -0
- package/bin/types/JsViewVueTools/index.d.ts +7 -0
- package/bin/types/JsViewVueWidget/JsvActorMove/ActorControlBase.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvActorMove/JsvActorMove.vue.d.ts +38 -0
- package/bin/types/JsViewVueWidget/JsvActorMove/JsvActorMoveControl.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvActorMove/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvApic/BrowserApic.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvApic/JsvApic.vue.d.ts +27 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvApic/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvApic2/BrowserApic2.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue.d.ts +28 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvApic2/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/ApicDataBase.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/BrowserApicLib.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/GifData.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/NormalLoopTool.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/PartLoopTool.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/SingleLoopTool.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/Viewer.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvBrowserApicLib/WebpData.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvApic/JsvCommonLoopToolBase.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvClipDiv/JsvClipDiv.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvClipDiv/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvConnectLine/ArcLineManager.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvConnectLine/JsvConnectLine.vue.d.ts +21 -0
- package/bin/types/JsViewVueWidget/JsvConnectLine/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvDragBox/JsvDragBox.vue.d.ts +109 -0
- package/bin/types/JsViewVueWidget/JsvDriftScope/JsvDriftScope.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvDriftScope/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvEnableRenderBreak.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvFilterView.vue.d.ts +19 -0
- package/bin/types/JsViewVueWidget/JsvFlexCell/JsvFlexDiv.vue.d.ts +34 -0
- package/bin/types/JsViewVueWidget/JsvFlexCell/JsvScreenFlex.vue.d.ts +106 -0
- package/bin/types/JsViewVueWidget/JsvFlexCell/index.d.ts +6 -2
- package/bin/types/JsViewVueWidget/JsvFragShaderView/BrowserJsvFragShaderView.vue.d.ts +6 -0
- package/bin/types/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue.d.ts +48 -1
- package/bin/types/JsViewVueWidget/JsvFragShaderView/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/ActorControl.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/CallbackManager.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/ForgeTypeDefine.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/FreeMoveActor.vue.d.ts +25 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/JsvEnvBlocker.vue.d.ts +22 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/NexusNode.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/SetAction.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/SetCondition.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/SetState.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/SyncLinkManager.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvFreeMoveActor/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvGrid.vue.d.ts +73 -0
- package/bin/types/JsViewVueWidget/JsvHole.d.ts +17 -0
- package/bin/types/JsViewVueWidget/JsvInput/Cursor.vue.d.ts +14 -34
- package/bin/types/JsViewVueWidget/JsvInput/EditViewOperator.d.ts +48 -0
- package/bin/types/JsViewVueWidget/JsvInput/EditVisibleArea.d.ts +27 -0
- package/bin/types/JsViewVueWidget/JsvInput/JsvInput.vue.d.ts +64 -209
- package/bin/types/JsViewVueWidget/JsvInput/SharedDefine.d.ts +17 -0
- package/bin/types/JsViewVueWidget/JsvInput/SystemTextTools.d.ts +14 -0
- package/bin/types/JsViewVueWidget/JsvInput/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvLine/JsvLine.vue.d.ts +20 -0
- package/bin/types/JsViewVueWidget/JsvLine/LineManager.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvLine/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvMarquee.vue.d.ts +21 -0
- package/bin/types/JsViewVueWidget/JsvMaskClipDiv.vue.d.ts +20 -0
- package/bin/types/JsViewVueWidget/JsvMindMap/Constant.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvMindMap/DataTree.d.ts +7 -1
- package/bin/types/JsViewVueWidget/JsvMindMap/Geometry.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvMindMap/JsvMindMap.vue.d.ts +90 -0
- package/bin/types/JsViewVueWidget/JsvMindMap/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvMindMap/rtree.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvNativeSharedDiv.vue.d.ts +24 -0
- package/bin/types/JsViewVueWidget/JsvNinePatch.vue.d.ts +30 -0
- package/bin/types/JsViewVueWidget/JsvPieChart.vue.d.ts +17 -0
- package/bin/types/JsViewVueWidget/JsvPosterDiv.vue.d.ts +17 -0
- package/bin/types/JsViewVueWidget/JsvPosterImage.vue.d.ts +18 -0
- package/bin/types/JsViewVueWidget/JsvPreload/BrowserPreload.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvPreload/JsvPreload.vue.d.ts +42 -0
- package/bin/types/JsViewVueWidget/JsvPreload/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvProgressBar.vue.d.ts +19 -0
- package/bin/types/JsViewVueWidget/JsvQrcode/BrowserQrcode.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvQrcode/JsvQrcode.vue.d.ts +25 -0
- package/bin/types/JsViewVueWidget/JsvQrcode/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvRadarChart.vue.d.ts +24 -0
- package/bin/types/JsViewVueWidget/JsvRipple/Constant.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvRipple/JsvRipple.vue.d.ts +45 -0
- package/bin/types/JsViewVueWidget/JsvRipple/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvScaleTextBox.vue.d.ts +18 -0
- package/bin/types/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvScrollBox/JsvScrollFollow.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvScrollBox/ScrollInnerSymbol.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvScrollBox/ScrollSymbol.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvScrollBox/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvSector.vue.d.ts +18 -0
- package/bin/types/JsViewVueWidget/JsvSoundPool.d.ts +42 -0
- package/bin/types/JsViewVueWidget/JsvSpray/BrowserSpray.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvSpray/JsvSpray.vue.d.ts +40 -0
- package/bin/types/JsViewVueWidget/JsvSpray/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvSpriteAnim/FrameBuidler.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvSpriteAnim/JsvSpriteAnim.vue.d.ts +52 -0
- package/bin/types/JsViewVueWidget/JsvSpriteAnim/JsvSpriteLoader.vue.d.ts +16 -0
- package/bin/types/JsViewVueWidget/JsvSpriteAnim/JsvSpriteTools.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvSpriteAnim/SpriteController.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvSpriteAnim/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvSpriteAnim/sAnimationToken.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvSwiper/JsvSwiper.vue.d.ts +39 -0
- package/bin/types/JsViewVueWidget/JsvSwiper/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvSwiper3D/JsvSwiper.vue.d.ts +24 -0
- package/bin/types/JsViewVueWidget/JsvSwiper3D/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvTextBox.vue.d.ts +26 -0
- package/bin/types/JsViewVueWidget/JsvTextureAnim/BrowserTextureAnim.vue.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvTextureAnim/CommonType.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue.d.ts +7 -2
- package/bin/types/JsViewVueWidget/JsvTextureAnim/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/JsvTouchModeSwitcher.vue.d.ts +100 -0
- package/bin/types/JsViewVueWidget/JsvVisibleSensor/JsvVisibleSensor.vue.d.ts +25 -0
- package/bin/types/JsViewVueWidget/JsvVisibleSensor/index.d.ts +4 -0
- package/bin/types/JsViewVueWidget/index.d.ts +6 -0
- package/bin/types/index.d.ts +4 -0
- package/index.d.ts +8 -0
- package/package.json +1 -1
- package/tools/config/toolkit.mjs +81 -0
- package/tools/config/tsconfig.json +1 -0
- package/tools/config/vite.config.ts +24 -14
- package/tools/jsview-vue-build.mjs +66 -21
- package/utils/JsViewEngineWidget/JsvFocus/JsvFocusBlock.vue +6 -2
- package/utils/JsViewEngineWidget/JsvFocus/JsvFocusManager.ts +22 -3
- package/utils/JsViewEngineWidget/MetroWidget/ListWidget.vue +3 -1
- package/utils/JsViewEngineWidget/MetroWidget/MetroWidget.vue +12 -5
- package/utils/JsViewEngineWidget/MetroWidget/MetroWidgetSetup.js +208 -84
- package/utils/JsViewEngineWidget/TemplateParser/ListMetroTemplate.ts +15 -9
- package/utils/JsViewEngineWidget/TemplateParser/MetroTemplate.ts +2 -2
- package/utils/JsViewPlugin/JsvAudio/version.js +1 -1
- package/utils/JsViewPlugin/JsvAudio/version.mjs +1 -1
- package/utils/JsViewPlugin/JsvLatex/BrowserDomBuilder.js +13 -3
- package/utils/JsViewPlugin/JsvLatex/BrowserJsvLatex.vue +27 -6
- package/utils/JsViewPlugin/JsvLatex/JsvLatex.vue +34 -28
- package/utils/JsViewPlugin/JsvLatex/index.js +22 -0
- package/utils/JsViewVueTools/FeatureActive.ts +84 -0
- package/utils/JsViewVueTools/ForgeHandles.ts +7 -3
- package/utils/JsViewVueTools/JsvDynamicCssStyle.js +2 -0
- package/utils/JsViewVueTools/JsvDynamicKeyFrames.ts +2 -0
- package/utils/JsViewVueTools/JsvImpactTracer.js +2 -0
- package/utils/JsViewVueTools/JsvPreDownloader.ts +2 -1
- package/utils/JsViewVueTools/JsvRefTaker.js +1 -2
- package/utils/JsViewVueTools/JsvRuntimeBridge.js +67 -1
- package/utils/JsViewVueTools/JsvStyleClass.js +2 -0
- package/utils/JsViewVueTools/JsvStyleSheetsDeclarer.js +2 -0
- package/utils/JsViewVueTools/JsvTextTools.ts +223 -0
- package/utils/JsViewVueTools/JsvTextureLoadTool.ts +233 -0
- package/utils/JsViewVueTools/JsvTextureStore/CapturedTexture/CapturedTexture.ts +4 -1
- package/utils/JsViewVueTools/JsvTextureStore/JsvTextureStore.ts +7 -3
- package/utils/JsViewVueTools/JsvTextureStore/Texture.ts +1 -0
- package/utils/JsViewVueTools/TextureManagerTools.ts +17 -0
- package/utils/JsViewVueTools/index.js +3 -0
- package/utils/JsViewVueWidget/JsvActorMove/JsvActorMove.vue +2 -0
- package/utils/JsViewVueWidget/JsvApic/JsvApic/JsvApic.vue +10 -2
- package/utils/JsViewVueWidget/JsvApic/JsvApic2/JsvApic2.vue +12 -1
- package/utils/JsViewVueWidget/JsvClipDiv/JsvClipDiv.vue +4 -2
- package/utils/JsViewVueWidget/JsvConnectLine/JsvConnectLine.vue +2 -0
- package/utils/JsViewVueWidget/JsvDragBox/JsvDragBox.vue +219 -0
- package/utils/JsViewVueWidget/JsvDriftScope/JsvDriftScope.vue +11 -9
- package/utils/JsViewVueWidget/JsvFilterView.vue +2 -0
- package/utils/JsViewVueWidget/JsvFlexCell/JsvFlexDiv.vue +5 -2
- package/utils/JsViewVueWidget/JsvFlexCell/JsvScreenFlex.vue +145 -0
- package/utils/JsViewVueWidget/JsvFlexCell/index.js +2 -5
- package/utils/JsViewVueWidget/JsvFragShaderView/BrowserJsvFragShaderView.vue +39 -12
- package/utils/JsViewVueWidget/JsvFragShaderView/JsvFragShaderView.vue +210 -62
- package/utils/JsViewVueWidget/JsvFreeMoveActor/FreeMoveActor.vue +9 -0
- package/utils/JsViewVueWidget/JsvFreeMoveActor/JsvEnvBlocker.vue +2 -0
- package/utils/JsViewVueWidget/JsvGrid.vue +2 -0
- package/utils/JsViewVueWidget/JsvHole.js +2 -0
- package/utils/JsViewVueWidget/JsvInput/Cursor.vue +49 -45
- package/utils/JsViewVueWidget/JsvInput/EditViewOperator.ts +320 -0
- package/utils/JsViewVueWidget/JsvInput/EditVisibleArea.ts +222 -0
- package/utils/JsViewVueWidget/JsvInput/JsvInput.vue +281 -681
- package/utils/JsViewVueWidget/JsvInput/SharedDefine.ts +17 -0
- package/utils/JsViewVueWidget/JsvInput/SystemTextTools.ts +47 -0
- package/utils/JsViewVueWidget/JsvLine/JsvLine.vue +2 -0
- package/utils/JsViewVueWidget/JsvMarquee.vue +2 -0
- package/utils/JsViewVueWidget/JsvMaskClipDiv.vue +2 -0
- package/utils/JsViewVueWidget/JsvMindMap/DataTree.ts +14 -1
- package/utils/JsViewVueWidget/JsvMindMap/JsvMindMap.vue +277 -117
- package/utils/JsViewVueWidget/JsvNativeSharedDiv.vue +91 -68
- package/utils/JsViewVueWidget/JsvNinePatch.vue +5 -0
- package/utils/JsViewVueWidget/JsvPieChart.vue +2 -0
- package/utils/JsViewVueWidget/JsvPosterDiv.vue +2 -0
- package/utils/JsViewVueWidget/JsvPosterImage.vue +2 -0
- package/utils/JsViewVueWidget/JsvPreload/JsvPreload.vue +2 -0
- package/utils/JsViewVueWidget/JsvProgressBar.vue +2 -0
- package/utils/JsViewVueWidget/JsvQrcode/JsvQrcode.vue +10 -11
- package/utils/JsViewVueWidget/JsvRadarChart.vue +2 -0
- package/utils/JsViewVueWidget/JsvRipple/Constant.js +2 -2
- package/utils/JsViewVueWidget/JsvRipple/JsvRipple.vue +3 -1
- package/utils/JsViewVueWidget/JsvScaleTextBox.vue +2 -0
- package/utils/JsViewVueWidget/JsvScrollBox/JsvScrollBox.vue +9 -0
- package/utils/JsViewVueWidget/JsvScrollBox/JsvScrollFollow.vue +9 -0
- package/utils/JsViewVueWidget/JsvSector.vue +2 -0
- package/utils/JsViewVueWidget/JsvSoundPool.js +2 -0
- package/utils/JsViewVueWidget/JsvSpray/JsvSpray.vue +30 -13
- package/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteAnim.vue +2 -0
- package/utils/JsViewVueWidget/JsvSpriteAnim/JsvSpriteLoader.vue +2 -0
- package/utils/JsViewVueWidget/JsvSwiper/JsvSwiper.vue +2 -0
- package/utils/JsViewVueWidget/JsvSwiper3D/JsvSwiper.vue +2 -0
- package/utils/JsViewVueWidget/JsvTextBox.vue +2 -4
- package/utils/JsViewVueWidget/JsvTextureAnim/JsvTextureAnim.vue +44 -41
- package/utils/JsViewVueWidget/JsvTouchModeSwitcher.vue +101 -0
- package/utils/JsViewVueWidget/JsvVideo.vue +2 -2
- package/utils/JsViewVueWidget/JsvVisibleSensor/JsvVisibleSensor.vue +2 -0
- package/utils/JsViewVueWidget/index.js +2 -0
- package/utils/JsViewVueTools/JsvTextTools.js +0 -89
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import path from 'node:path';
|
|
2
|
+
import url from 'node:url';
|
|
3
|
+
|
|
4
|
+
function getFileComments(content, isVue, filePath)
|
|
5
|
+
{
|
|
6
|
+
const keyword = '@file';
|
|
7
|
+
|
|
8
|
+
const contentLines = content.split('\n');
|
|
9
|
+
let fileCommentLines = [];
|
|
10
|
+
for (let idx = 0; idx < contentLines.length; idx++) {
|
|
11
|
+
const line = contentLines[idx];
|
|
12
|
+
const trimLine = line.trim();
|
|
13
|
+
// 空行 和 import, js文件会把import放在注释上面
|
|
14
|
+
if(!trimLine || trimLine.startsWith('import')) {
|
|
15
|
+
continue;
|
|
16
|
+
|
|
17
|
+
// 检查 /* comments */ 和 <!-- comments -->
|
|
18
|
+
} else if (trimLine.startsWith('/*')
|
|
19
|
+
|| trimLine.startsWith('<!--')) {
|
|
20
|
+
const endFlag = trimLine.startsWith('/*') ? '*/' : '-->'
|
|
21
|
+
let multiCommentLines = [];
|
|
22
|
+
for(idx; idx < contentLines.length; idx++) {
|
|
23
|
+
const multiline = contentLines[idx];
|
|
24
|
+
multiCommentLines.push(multiline);
|
|
25
|
+
if(multiline.includes(endFlag)) {
|
|
26
|
+
multiCommentLines.push(''); // 添加一个空行
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
if(multiCommentLines.join().includes(keyword)) {
|
|
31
|
+
fileCommentLines.push(...multiCommentLines);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// 检查 //
|
|
35
|
+
} else if (trimLine.startsWith('//')) {
|
|
36
|
+
if(line.includes(keyword)) {
|
|
37
|
+
fileCommentLines.push(line);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// 检查 vue 文件的 <script> 中的注释
|
|
41
|
+
} else if (isVue && trimLine.startsWith('<script')) {
|
|
42
|
+
|
|
43
|
+
// 出现代码,退出循环
|
|
44
|
+
} else {
|
|
45
|
+
break;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return fileCommentLines.join('\n').trim();
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**************************************************
|
|
53
|
+
* jsview-framework/@shijiu/jsview-vue
|
|
54
|
+
* ├── bin
|
|
55
|
+
* │ └── types
|
|
56
|
+
* ├── tools
|
|
57
|
+
* │ └── config
|
|
58
|
+
* └── utls
|
|
59
|
+
*************************************************/
|
|
60
|
+
function getProjectPaths()
|
|
61
|
+
{
|
|
62
|
+
const currJsFilePath = url.fileURLToPath(import.meta.url)
|
|
63
|
+
const jsviewVueDir = path.resolve(currJsFilePath, '../../../'); // jsview-framework/@shijiu/jsview-vue
|
|
64
|
+
const jsviewVueBinDir = path.resolve(jsviewVueDir, 'bin');
|
|
65
|
+
const jsviewVueBinTypesDir = path.resolve(jsviewVueBinDir, 'types');
|
|
66
|
+
const jsviewVueModulesCacheDir = path.resolve(jsviewVueDir, 'node_modules', '.cache');
|
|
67
|
+
const jsviewVueUtilsDir = path.resolve(jsviewVueDir, 'utils');
|
|
68
|
+
|
|
69
|
+
return {
|
|
70
|
+
jsviewVueDir,
|
|
71
|
+
jsviewVueBinDir,
|
|
72
|
+
jsviewVueBinTypesDir,
|
|
73
|
+
jsviewVueModulesCacheDir,
|
|
74
|
+
jsviewVueUtilsDir,
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
export {
|
|
79
|
+
getFileComments,
|
|
80
|
+
getProjectPaths,
|
|
81
|
+
}
|
|
@@ -2,14 +2,18 @@ import { defineConfig } from 'vite'
|
|
|
2
2
|
import vue from '@vitejs/plugin-vue'
|
|
3
3
|
import fs from 'node:fs'
|
|
4
4
|
import path from 'node:path'
|
|
5
|
+
import {
|
|
6
|
+
getFileComments,
|
|
7
|
+
getProjectPaths
|
|
8
|
+
} from './toolkit.mjs'
|
|
5
9
|
|
|
6
|
-
const
|
|
10
|
+
const options = getProjectPaths();
|
|
7
11
|
|
|
8
12
|
// https://vitejs.dev/config/
|
|
9
13
|
export default defineConfig({
|
|
10
14
|
build: {
|
|
11
15
|
lib: {
|
|
12
|
-
entry: path.resolve(
|
|
16
|
+
entry: path.resolve(options.jsviewVueUtilsDir, 'index.js'),
|
|
13
17
|
formats: ["es"],
|
|
14
18
|
},
|
|
15
19
|
minify: false,
|
|
@@ -25,11 +29,11 @@ export default defineConfig({
|
|
|
25
29
|
],
|
|
26
30
|
output: {
|
|
27
31
|
banner: (chunkInfo) => getBanner(chunkInfo),
|
|
28
|
-
dir:
|
|
32
|
+
dir: options.jsviewVueModulesCacheDir,
|
|
29
33
|
entryFileNames: '[name].mjs',
|
|
30
34
|
format: 'esm',
|
|
31
35
|
preserveModules: true,
|
|
32
|
-
preserveModulesRoot:
|
|
36
|
+
preserveModulesRoot: options.jsviewVueDir,
|
|
33
37
|
sourcemap: false,
|
|
34
38
|
},
|
|
35
39
|
treeshake: false,
|
|
@@ -41,20 +45,26 @@ export default defineConfig({
|
|
|
41
45
|
})
|
|
42
46
|
|
|
43
47
|
function getBanner(chunkInfo) {
|
|
44
|
-
let filePath = chunkInfo.facadeModuleId
|
|
45
|
-
filePath = filePath.replace(/^\x00/, '') // '\0plugin-vue:export-helper',
|
|
46
|
-
const modulePath = path.relative(
|
|
48
|
+
let filePath = chunkInfo.facadeModuleId;
|
|
49
|
+
filePath = filePath.replace(/^\x00/, ''); // '\0plugin-vue:export-helper',
|
|
50
|
+
const modulePath = path.relative(options.jsviewVueUtilsDir, filePath);
|
|
51
|
+
const moduleDir = path.dirname(modulePath);
|
|
52
|
+
const dtsDir = path.resolve(options.jsviewVueBinTypesDir, moduleDir);
|
|
47
53
|
let banner = `
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
54
|
+
/*!
|
|
55
|
+
+ @file {@link file://./${path.relative(dtsDir, filePath)}}
|
|
56
|
+
*/
|
|
51
57
|
`;
|
|
52
58
|
|
|
53
59
|
if(filePath.endsWith('.vue')) {
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
60
|
+
const content = fs.readFileSync(filePath, 'utf-8');
|
|
61
|
+
|
|
62
|
+
let fileComments = getFileComments(content, true, filePath);
|
|
63
|
+
fileComments = fileComments.replaceAll('/**', '/*!');
|
|
64
|
+
fileComments = fileComments.replaceAll('<!--', '/*!');
|
|
65
|
+
fileComments = fileComments.replaceAll('-->', '*/');
|
|
66
|
+
|
|
67
|
+
banner += fileComments;
|
|
58
68
|
}
|
|
59
69
|
|
|
60
70
|
return banner;
|
|
@@ -3,14 +3,51 @@
|
|
|
3
3
|
|
|
4
4
|
import fs from 'node:fs';
|
|
5
5
|
import path from 'node:path';
|
|
6
|
-
import url from 'node:url';
|
|
7
6
|
import {
|
|
8
7
|
checkNodeVersion,
|
|
9
8
|
execCommand,
|
|
10
9
|
getNpmRegistry,
|
|
10
|
+
Logger,
|
|
11
11
|
parseArguments,
|
|
12
12
|
} from '../../../@shijiu/jsview/tools/jsview-common.mjs';
|
|
13
13
|
|
|
14
|
+
import {
|
|
15
|
+
getFileComments,
|
|
16
|
+
getProjectPaths,
|
|
17
|
+
} from './config/toolkit.mjs'
|
|
18
|
+
|
|
19
|
+
function checkTopLevelCommentsRecursive(relativeDir, baseDir, cacheDir)
|
|
20
|
+
{
|
|
21
|
+
const fileNameList = fs.readdirSync(path.resolve(baseDir, relativeDir));
|
|
22
|
+
for(const fileName of fileNameList) {
|
|
23
|
+
const filePath = path.resolve(baseDir, relativeDir, fileName);
|
|
24
|
+
const stat = fs.statSync(filePath);
|
|
25
|
+
if(stat.isDirectory()) {
|
|
26
|
+
const relativeName = path.join(relativeDir, fileName);
|
|
27
|
+
checkTopLevelCommentsRecursive(relativeName, baseDir, cacheDir);
|
|
28
|
+
} else {
|
|
29
|
+
if(fileName.endsWith('.d.ts') == false) {
|
|
30
|
+
continue;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const refName = fileName.replace('.d.ts', '.mjs');
|
|
34
|
+
const refPath = path.resolve(cacheDir, relativeDir, refName);
|
|
35
|
+
if(fs.existsSync(refPath) == false) {
|
|
36
|
+
Logger.Tip('Ignore to check top-level comments: ' + filePath);
|
|
37
|
+
continue;
|
|
38
|
+
}
|
|
39
|
+
const refContent = fs.readFileSync(refPath, 'utf-8');
|
|
40
|
+
let fileComments = getFileComments(refContent, false, refPath);
|
|
41
|
+
fileComments = fileComments.replaceAll('/**!', '/**')
|
|
42
|
+
fileComments = fileComments.replaceAll('/*!', '/**')
|
|
43
|
+
|
|
44
|
+
let content = fs.readFileSync(filePath, 'utf-8');
|
|
45
|
+
content = `${fileComments }\n\n${content}`;
|
|
46
|
+
fs.writeFileSync(filePath, content, 'utf-8');
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
14
51
|
function formatBannerRecursive(dir)
|
|
15
52
|
{
|
|
16
53
|
const fileNameList = fs.readdirSync(dir);
|
|
@@ -32,13 +69,11 @@ async function main(argv)
|
|
|
32
69
|
{
|
|
33
70
|
checkNodeVersion();
|
|
34
71
|
|
|
35
|
-
const
|
|
36
|
-
const jsviewVueDir = path.resolve(currJsFilePath, '../../') // jsview-framework/@shijiu/jsview-vue
|
|
37
|
-
const jsviewVueBinDir = path.resolve(jsviewVueDir, 'bin') // jsview-framework/@shijiu/jsview-vue/bin
|
|
72
|
+
const options = getProjectPaths();
|
|
38
73
|
|
|
39
74
|
const noSavePkgList = [
|
|
40
75
|
// jsview
|
|
41
|
-
`${jsviewVueDir}/../jsview`,
|
|
76
|
+
`${options.jsviewVueDir}/../jsview`,
|
|
42
77
|
'gifuct-js@2.1.2',
|
|
43
78
|
'postcss-js@4.0.0',
|
|
44
79
|
|
|
@@ -58,42 +93,52 @@ async function main(argv)
|
|
|
58
93
|
const noSavePackages = noSavePkgList.toString().replaceAll(',', ' ');
|
|
59
94
|
const version = process.env['JSVIEW_VUE_VERSION'];
|
|
60
95
|
|
|
61
|
-
const
|
|
96
|
+
const cacheDir = path.resolve(options.jsviewVueDir, 'node_modules', '.cache');
|
|
97
|
+
const npmInstalledFlag = path.resolve(cacheDir, '.npm-installed');
|
|
62
98
|
let batchCommand = []
|
|
63
99
|
|
|
64
100
|
if(!argv.withoutNpmInstall || fs.existsSync(npmInstalledFlag) == false) {
|
|
65
101
|
const registry = getNpmRegistry();
|
|
66
|
-
fs.rmSync(`${jsviewVueDir}/node_modules`, { recursive: true, force: true });
|
|
102
|
+
fs.rmSync(`${options.jsviewVueDir}/node_modules`, { recursive: true, force: true });
|
|
67
103
|
batchCommand = [
|
|
68
104
|
`npm install --registry=${registry}`,
|
|
69
105
|
`npm install --registry=${registry} --force --no-save ${noSavePackages}`,
|
|
70
|
-
`node ${jsviewVueDir}/node_modules/@shijiu/jsview/tools/jsview-post-install.mjs --framework=vue`,
|
|
106
|
+
`node ${options.jsviewVueDir}/node_modules/@shijiu/jsview/tools/jsview-post-install.mjs --framework=vue`,
|
|
71
107
|
];
|
|
72
108
|
}
|
|
73
109
|
batchCommand = [
|
|
74
110
|
...batchCommand,
|
|
75
|
-
`JSVIEW_DISABLE_MANUALCHUNKS=true ${jsviewVueDir}/node_modules/.bin/vite build --config ${jsviewVueDir}/tools/config/vite.config.ts`,
|
|
76
|
-
`${version ? 'JSVIEW_VUE_VERSION='+version : ''} ${jsviewVueDir}/node_modules/.bin/rollup --config ${jsviewVueDir}/tools/config/rollup.config.mjs`,
|
|
111
|
+
`JSVIEW_DISABLE_MANUALCHUNKS=true ${options.jsviewVueDir}/node_modules/.bin/vite build --config ${options.jsviewVueDir}/tools/config/vite.config.ts`,
|
|
112
|
+
`${version ? 'JSVIEW_VUE_VERSION='+version : ''} ${options.jsviewVueDir}/node_modules/.bin/rollup --config ${options.jsviewVueDir}/tools/config/rollup.config.mjs`,
|
|
77
113
|
];
|
|
78
114
|
if(!argv.withoutTsDeclare) {
|
|
79
|
-
fs.rmSync(jsviewVueBinDir, { recursive: true, force: true });
|
|
80
|
-
|
|
81
|
-
batchCommand = [
|
|
82
|
-
...batchCommand,
|
|
83
|
-
`${jsviewVueDir}/node_modules/.bin/vue-tsc --project ${jsviewVueDir}/tools/config/tsconfig.json`,
|
|
84
|
-
];
|
|
115
|
+
fs.rmSync(options.jsviewVueBinDir, { recursive: true, force: true });
|
|
85
116
|
}
|
|
86
117
|
for(const command of batchCommand) {
|
|
87
|
-
execCommand(`cd ${jsviewVueDir} && ${command}`);
|
|
118
|
+
execCommand(`cd ${options.jsviewVueDir} && ${command}`);
|
|
88
119
|
}
|
|
120
|
+
Logger.Info('Formatting banner ...');
|
|
121
|
+
formatBannerRecursive(options.jsviewVueBinDir);
|
|
89
122
|
|
|
90
|
-
|
|
123
|
+
if(!argv.withoutTsDeclare) {
|
|
124
|
+
batchCommand = [
|
|
125
|
+
`${options.jsviewVueDir}/node_modules/.bin/vue-tsc --project ${options.jsviewVueDir}/tools/config/tsconfig.json`,
|
|
126
|
+
];
|
|
127
|
+
fs.rmSync(options.jsviewVueBinTypesDir, { recursive: true, force: true });
|
|
128
|
+
for(const command of batchCommand) {
|
|
129
|
+
execCommand(`cd ${options.jsviewVueDir} && ${command}`);
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
Logger.Info('Checking top-level comments ...');
|
|
133
|
+
const refUtilsDir = path.resolve(cacheDir, 'utils');
|
|
134
|
+
checkTopLevelCommentsRecursive('.', options.jsviewVueBinTypesDir, refUtilsDir);
|
|
135
|
+
}
|
|
91
136
|
|
|
92
137
|
fs.mkdirSync(path.dirname(npmInstalledFlag), {recursive: true});
|
|
93
138
|
fs.writeFileSync(npmInstalledFlag, '');
|
|
94
139
|
if(!argv.withoutNpmInstall) {
|
|
95
|
-
fs.rmSync(`${jsviewVueDir}/node_modules`, { recursive: true, force: true });
|
|
96
|
-
fs.rmSync(`${jsviewVueDir}/package-lock.json`, { recursive: true, force: true });
|
|
140
|
+
fs.rmSync(`${options.jsviewVueDir}/node_modules`, { recursive: true, force: true });
|
|
141
|
+
fs.rmSync(`${options.jsviewVueDir}/package-lock.json`, { recursive: true, force: true });
|
|
97
142
|
}
|
|
98
143
|
|
|
99
144
|
console.info('Done...');
|
|
@@ -106,4 +151,4 @@ const optionalUsages = {
|
|
|
106
151
|
'-n | --without-npm-install': 'Ignore to run npm install.',
|
|
107
152
|
};
|
|
108
153
|
const argv = parseArguments(requiredUsages, optionalUsages, false);
|
|
109
|
-
main(argv);
|
|
154
|
+
main(argv);
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
<!--
|
|
2
|
+
* @file
|
|
3
|
+
*
|
|
2
4
|
* props:
|
|
3
5
|
* onKeyUp: 按键抬起回调
|
|
4
6
|
* @params keyEvent
|
|
@@ -41,9 +43,11 @@ import {
|
|
|
41
43
|
import { HUB_NS_PROVIDE_NAME } from "./JsvFocusHub";
|
|
42
44
|
|
|
43
45
|
const props = defineProps({
|
|
46
|
+
style: Object,
|
|
44
47
|
name: String,
|
|
45
48
|
namespace: String,
|
|
46
|
-
autoFocus: String,
|
|
49
|
+
autoFocus: String | Boolean,
|
|
50
|
+
focusable: Boolean | undefined,
|
|
47
51
|
onAction: Object,
|
|
48
52
|
onDispatchKeyUp: Function,
|
|
49
53
|
onDispatchKeyDown: Function,
|
|
@@ -238,7 +242,7 @@ defineExpose(exportObject);
|
|
|
238
242
|
</script>
|
|
239
243
|
|
|
240
244
|
<template>
|
|
241
|
-
<fdiv ref="fDivRef" :fname="name" :new-namespace="namespace">
|
|
245
|
+
<fdiv ref="fDivRef" :fname="name" :new-namespace="namespace" :style="style" :data-jsv-focusable="focusable ?? !namespace">
|
|
242
246
|
<slot></slot>
|
|
243
247
|
</fdiv>
|
|
244
248
|
</template>
|
|
@@ -25,8 +25,11 @@ export class JsvFocusManager {
|
|
|
25
25
|
// #aliasMap = {}
|
|
26
26
|
private $_appMount: any = undefined;
|
|
27
27
|
private $_topFDiv: any = undefined;
|
|
28
|
+
private $_autoSearchFocus: boolean = false;
|
|
28
29
|
|
|
29
|
-
constructor() {
|
|
30
|
+
constructor(config: any) {
|
|
31
|
+
this.$_autoSearchFocus = config.autoSearchFocus;
|
|
32
|
+
}
|
|
30
33
|
|
|
31
34
|
install(app: any, ...options: any) {
|
|
32
35
|
console.log("JsvFocusManager install");
|
|
@@ -98,6 +101,7 @@ export class JsvFocusManager {
|
|
|
98
101
|
$_hookMount(app: any, rootNodeId: any) {
|
|
99
102
|
rootNodeId = rootNodeId.replace("#", "");
|
|
100
103
|
this.$_topFDiv = (document as any).jsvInitFDivRoot(rootNodeId);
|
|
104
|
+
this.$_topFDiv.enableAutoSearchFocus(this.$_autoSearchFocus);
|
|
101
105
|
this.$_appMount = app.mount.bind(app);
|
|
102
106
|
|
|
103
107
|
return this.$_doAppMount.bind(this);
|
|
@@ -115,8 +119,23 @@ export class JsvFocusManager {
|
|
|
115
119
|
}
|
|
116
120
|
}
|
|
117
121
|
|
|
118
|
-
|
|
119
|
-
|
|
122
|
+
/**
|
|
123
|
+
* 创建 JsView 焦点管理器
|
|
124
|
+
*
|
|
125
|
+
* @param {Object} config: 对象设置,子参数有{
|
|
126
|
+
* autoSearchFocus{boolean}: 是否开启自动寻焦,默认为false(兼容旧代码)
|
|
127
|
+
* }
|
|
128
|
+
* @return JsvFocusManager
|
|
129
|
+
*/
|
|
130
|
+
function jsvCreateFocusManager(config: Object | null = null) {
|
|
131
|
+
let defualt_config = {
|
|
132
|
+
autoSearchFocus: false
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
return new JsvFocusManager({
|
|
136
|
+
...defualt_config,
|
|
137
|
+
...config
|
|
138
|
+
});
|
|
120
139
|
}
|
|
121
140
|
|
|
122
141
|
export { jsvCreateFocusManager, useFocusHub };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<!--
|
|
2
|
-
|
|
2
|
+
* @file 只显示单列/行的MetroWidget
|
|
3
3
|
-->
|
|
4
4
|
<script setup>
|
|
5
5
|
import { ref, shallowRef, computed, reactive, onMounted } from "vue";
|
|
@@ -187,6 +187,7 @@ const {
|
|
|
187
187
|
onTouchDown,
|
|
188
188
|
onTouchRelease,
|
|
189
189
|
currentFocusIndex,
|
|
190
|
+
onDispatchKeyDown
|
|
190
191
|
} = setup(
|
|
191
192
|
props,
|
|
192
193
|
itemRender,
|
|
@@ -262,6 +263,7 @@ defineExpose(exportObject);
|
|
|
262
263
|
onBlur: focusBlockOnBlur,
|
|
263
264
|
onKeyDown: focusBlockOnKeyDown,
|
|
264
265
|
onCustomEvent: focusBlockOnCustomEvent,
|
|
266
|
+
onDispatchKeyDown
|
|
265
267
|
}"
|
|
266
268
|
>
|
|
267
269
|
<div
|
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
-->
|
|
6
6
|
|
|
7
7
|
<!--
|
|
8
|
+
* @file
|
|
9
|
+
*
|
|
8
10
|
* 【界面概述】
|
|
9
11
|
* 展示MetroWidget控件的用法
|
|
10
12
|
*
|
|
@@ -93,10 +95,6 @@
|
|
|
93
95
|
"rect": 到达边缘时的区域{x: 0, y: 0, width: 0,height: 0}
|
|
94
96
|
}
|
|
95
97
|
onScroll {function} 滚动时的回调 (visibleStart, visibleRange, totalSize) => {}
|
|
96
|
-
(TBD:
|
|
97
|
-
当前版本暂时不支持触控过程的实时回调,
|
|
98
|
-
由于回调js会严重拖慢性能,所以也不会设计实时回调,
|
|
99
|
-
关于边缘的拖动进度展示,将来会有额外组件支撑)
|
|
100
98
|
visibleStart: 可视区域的起点
|
|
101
99
|
visibleRange: 可视区域大小(不含padding)
|
|
102
100
|
totalSize: 所有item的总长
|
|
@@ -194,6 +192,8 @@
|
|
|
194
192
|
3. EdgeDirection
|
|
195
193
|
getCustomerDataSize
|
|
196
194
|
@description 获取用户数据长度
|
|
195
|
+
getCurrentFocusIndex
|
|
196
|
+
@description 获取当前获焦item的index
|
|
197
197
|
setZIndex
|
|
198
198
|
@description 设置item的zIndex
|
|
199
199
|
@params {int} index: item的index
|
|
@@ -210,7 +210,12 @@
|
|
|
210
210
|
setSlideSetting
|
|
211
211
|
@description 设置slideSetting
|
|
212
212
|
@params { SlideSetting | null } setting 滚动设置, 为null时使用props.slideSetting
|
|
213
|
-
|
|
213
|
+
cancelDelayLoad
|
|
214
|
+
@description 取消延迟加载首屏以外内容
|
|
215
|
+
setSensorSensitivity
|
|
216
|
+
@description 触控模式下, 设置运动回调敏感度, 每移动多少像素进行回调,适当放大(推荐10以上)可以极大减小对js回调过多引起的性能降低
|
|
217
|
+
@params {number} sensitivity 敏感度, 等于0时关闭触控的移动监听
|
|
218
|
+
|
|
214
219
|
slots:
|
|
215
220
|
renderItem: 该slot用于描画每个单元格
|
|
216
221
|
background: 该slot描画在item后, 一般用于描画需要跟随MetroWidget滚动的内容
|
|
@@ -457,6 +462,7 @@ const {
|
|
|
457
462
|
onTouchRelease,
|
|
458
463
|
currentFocusIndex,
|
|
459
464
|
modeForExport,
|
|
465
|
+
onDispatchKeyDown
|
|
460
466
|
} = setup(
|
|
461
467
|
props,
|
|
462
468
|
itemRender,
|
|
@@ -532,6 +538,7 @@ defineExpose(exportObject);
|
|
|
532
538
|
onBlur: focusBlockOnBlur,
|
|
533
539
|
onKeyDown: focusBlockOnKeyDown,
|
|
534
540
|
onCustomEvent: focusBlockOnCustomEvent,
|
|
541
|
+
onDispatchKeyDown,
|
|
535
542
|
}"
|
|
536
543
|
>
|
|
537
544
|
<div
|