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