@realsee/dnalogel 2.12.0 → 2.13.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/dist/CSS3DRenderPlugin/utils/index.d.ts +0 -1
- package/{libs/PanoTagPlugin/controller/TagCacheController.d.ts → dist/PanoTagPlugin/controller/TagCache.d.ts} +7 -7
- package/dist/PanoTagPlugin/controller/TagComputer.d.ts +3 -36
- package/dist/PanoTagPlugin/controller/TagRender.d.ts +58 -0
- package/dist/PanoTagPlugin/controller/TagUtil.d.ts +56 -0
- package/dist/PanoTagPlugin/controller/index.d.ts +16 -72
- package/dist/PanoTagPlugin/typings/controller.d.ts +15 -16
- package/dist/PanoTagPlugin/typings/tag/TagConfig.d.ts +2 -0
- package/dist/PanoTagPlugin/typings/tag/Utils.d.ts +16 -0
- package/dist/PanoTagPlugin/utils/device.d.ts +1 -0
- package/dist/PanoTagPlugin/utils/model/imageModel.d.ts +8 -0
- package/dist/PanoTagPlugin/utils/tag/tagCheck.d.ts +7 -7
- package/dist/index.cjs.js +46 -46
- package/dist/index.js +3854 -3790
- package/dist/index.umd.js +46 -46
- package/docs/assets/search.js +1 -1
- package/docs/classes/CSS3DRender.html +31 -31
- package/docs/classes/CruisePluginController.html +25 -25
- package/docs/classes/Magnifier.html +20 -20
- package/docs/classes/ModelRoomLabelController.html +11 -11
- package/docs/classes/Object3DHelperController.html +25 -25
- package/docs/classes/PaintBrush.html +15 -15
- package/docs/classes/PanoMeasurePluginLine.html +23 -23
- package/docs/classes/PanoMeasurePluginModel.html +22 -22
- package/docs/classes/PanoMeasurePluginPoint.html +14 -14
- package/docs/classes/PanoMeasurePluginPolyline.html +26 -26
- package/docs/classes/PanoTagPluginController.html +112 -229
- package/docs/classes/Util.BetterTween.html +8 -8
- package/docs/classes/Util.FivePointSelector.html +12 -12
- package/docs/classes/Util.Interval.html +12 -12
- package/docs/classes/Util.Magnifier.html +17 -17
- package/docs/classes/Util.PointDomHelper.html +11 -11
- package/docs/classes/Util.PointHelper.html +11 -11
- package/docs/classes/Util.Rectangle.html +13 -13
- package/docs/enums/CameraMovementEffect.html +7 -7
- package/docs/enums/ContentType.html +19 -19
- package/docs/enums/DIRECTION.html +9 -9
- package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
- package/docs/enums/DimensionType.html +7 -7
- package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
- package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
- package/docs/enums/PaintBrushTypeEnum.html +8 -8
- package/docs/enums/PointType.html +7 -7
- package/docs/enums/Rotation.html +8 -8
- package/docs/functions/CSS3DRenderPlugin.html +9 -6
- package/docs/functions/CameraMovementPlugin.html +9 -6
- package/docs/functions/CruisePlugin.html +9 -6
- package/docs/functions/GuideLinePlugin.html +9 -6
- package/docs/functions/ItemLabelPlugin.html +9 -6
- package/docs/functions/MapviewFloorplanPlugin.html +9 -6
- package/docs/functions/ModelChassisCompassPlugin.html +9 -6
- package/docs/functions/ModelEntryDoorGuidePlugin.html +9 -6
- package/docs/functions/ModelFloorplanPlugin.html +9 -6
- package/docs/functions/ModelItemLabelPlugin.html +9 -6
- package/docs/functions/ModelRoomLabelPlugin.html +9 -6
- package/docs/functions/ModelTVVideoPlugin.html +9 -6
- package/docs/functions/ModelViewPlugin.html +9 -6
- package/docs/functions/Object3DHelperPlugin.html +9 -6
- package/docs/functions/PanoCompassPlugin.html +9 -6
- package/docs/functions/PanoCursorRaycasterPlugin.html +9 -6
- package/docs/functions/PanoDoorLabelPlugin.html +9 -6
- package/docs/functions/PanoFloorplanRadarPlugin.html +9 -6
- package/docs/functions/PanoMeasurePlugin.html +9 -6
- package/docs/functions/PanoRulerPlugin.html +9 -6
- package/docs/functions/PanoRulerProPlugin.html +9 -6
- package/docs/functions/PanoSpatialTagPlugin.html +9 -6
- package/docs/functions/PanoTagPlugin.html +12 -14
- package/docs/functions/PanoVideoPlugin.html +9 -6
- package/docs/functions/TopviewFloorplanPlugin.html +9 -6
- package/docs/functions/Util.getCoordsFromClient.html +5 -5
- package/docs/functions/Util.getCoordsFromElement.html +5 -5
- package/docs/functions/Util.getFrameTime.html +5 -5
- package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
- package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
- package/docs/functions/Util.isNil.html +5 -5
- package/docs/functions/Util.nextFrame.html +5 -5
- package/docs/functions/Util.notNil.html +5 -5
- package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
- package/docs/functions/Util.tweenProgress.html +5 -5
- package/docs/functions/pluginFlag.html +9 -6
- package/docs/index.html +8 -5
- package/docs/interfaces/AddTagConfig.html +6 -6
- package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
- package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
- package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
- package/docs/interfaces/EventMap.html +15 -15
- package/docs/interfaces/FloorplanBounding.html +8 -8
- package/docs/interfaces/FloorplanData.html +10 -10
- package/docs/interfaces/FloorplanEntrance.html +11 -11
- package/docs/interfaces/FloorplanExtraObject.html +10 -10
- package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
- package/docs/interfaces/FloorplanFloorData.html +9 -9
- package/docs/interfaces/FloorplanImagePosition.html +7 -7
- package/docs/interfaces/FloorplanObserver.html +9 -9
- package/docs/interfaces/FloorplanOutlineItem.html +9 -9
- package/docs/interfaces/FloorplanPosition.html +7 -7
- package/docs/interfaces/FloorplanRoomItem.html +13 -13
- package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
- package/docs/interfaces/FloorplanServerBounding.html +8 -8
- package/docs/interfaces/FloorplanServerComputedData.html +10 -10
- package/docs/interfaces/FloorplanServerData.html +7 -7
- package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
- package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
- package/docs/interfaces/FloorplanServerEntrance.html +11 -11
- package/docs/interfaces/FloorplanServerFloorData.html +9 -9
- package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
- package/docs/interfaces/FloorplanServerObserver.html +9 -9
- package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
- package/docs/interfaces/FloorplanServerPosition.html +7 -7
- package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
- package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
- package/docs/interfaces/HelperOffset.html +8 -8
- package/docs/interfaces/ImagePlaneGroup.html +68 -0
- package/docs/interfaces/ItemLabelPluginData.html +6 -6
- package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
- package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
- package/docs/interfaces/MinMax.html +7 -7
- package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
- package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
- package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
- package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
- package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
- package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
- package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
- package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
- package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
- package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
- package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
- package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
- package/docs/interfaces/ModelViewPluginExportType.html +11 -11
- package/docs/interfaces/Object3DHelperState.html +8 -8
- package/docs/interfaces/ObjectHelperControllers.html +9 -9
- package/docs/interfaces/PaintBrushAction.html +12 -12
- package/docs/interfaces/PaintBrushConfigs.html +12 -12
- package/docs/interfaces/PaintBrushState.html +10 -10
- package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
- package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +9 -6
- package/docs/interfaces/PanoMeasureParameterType.html +14 -14
- package/docs/interfaces/PanoMeasurePluginLineJson.html +8 -8
- package/docs/interfaces/PanoMeasurePluginOpenParameter.html +7 -7
- package/docs/interfaces/PanoMeasurePluginPointJson.html +7 -7
- package/docs/interfaces/PanoMeasurePluginPolylineJson.html +8 -8
- package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
- package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
- package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
- package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
- package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
- package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
- package/docs/interfaces/PanoRulerProPluginState.html +8 -8
- package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +9 -6
- package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +9 -6
- package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
- package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
- package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
- package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
- package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
- package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
- package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
- package/docs/interfaces/PanoVideoPluginType.LoadParams.html +6 -6
- package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +8 -8
- package/docs/interfaces/PanoVideoPluginType.PluginData.html +6 -6
- package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +9 -9
- package/docs/interfaces/PanoVideoPluginType.PluginState.html +6 -6
- package/docs/interfaces/PanoVideoPluginType.VideoItem.html +8 -8
- package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +10 -10
- package/docs/interfaces/Point.html +8 -8
- package/docs/interfaces/Room.html +9 -9
- package/docs/interfaces/RoomInfo.html +7 -7
- package/docs/interfaces/RoomLabel.html +14 -14
- package/docs/interfaces/RoomRules.html +9 -6
- package/docs/interfaces/Rooms.html +9 -6
- package/docs/interfaces/Scissor.html +9 -9
- package/docs/interfaces/State.html +8 -8
- package/docs/interfaces/{TagCache.html → TagCacheInterface.html} +30 -30
- package/docs/interfaces/TagConfig.html +19 -10
- package/docs/interfaces/TagGLTFObjectGroup.html +68 -0
- package/docs/interfaces/TagIconUrl.html +11 -11
- package/docs/interfaces/TagObjectGroup.html +68 -0
- package/docs/interfaces/TagStyle.html +6 -6
- package/docs/interfaces/Tags.html +9 -9
- package/docs/interfaces/TemporaryState.html +6 -6
- package/docs/interfaces/Util.MagnifierParameter.html +11 -11
- package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
- package/docs/modules/PanoVideoPluginType.html +5 -5
- package/docs/modules/Util.html +5 -5
- package/docs/modules.html +12 -6
- package/docs/types/ArrayPosition.html +9 -6
- package/docs/types/AudioAppearance.html +9 -6
- package/docs/types/AudioTagTypeConfigKey.html +9 -6
- package/docs/types/CSS3DRenderExportType.html +9 -6
- package/docs/types/CSS3DRenderPluginExportType.html +9 -6
- package/docs/types/CSS3DRenderPluginParameterType.html +9 -6
- package/docs/types/ClassFunctionParameters.html +9 -6
- package/docs/types/Color.html +9 -6
- package/docs/types/ContentTypeConfigKey.html +9 -6
- package/docs/types/ContentTypeConfigKeySplit.html +9 -6
- package/docs/types/ContentTypeMap.html +9 -6
- package/docs/types/Create3DDomContainerReturnType.html +9 -6
- package/docs/types/Create3DElementReturnType.html +9 -6
- package/docs/types/CruisePluginExportType.html +9 -6
- package/docs/types/Direction-1.html +9 -6
- package/docs/types/Direction4.html +9 -6
- package/docs/types/FloorplanRuleLabels.html +9 -6
- package/docs/types/FloorplanServerRuleLabels.html +9 -6
- package/docs/types/GuideLinePluginExportType.html +9 -6
- package/docs/types/HelperEventMap.html +9 -6
- package/docs/types/LoadTagConfig.html +9 -6
- package/docs/types/MapviewFloorplanPluginParameterType.html +9 -6
- package/docs/types/MapviewFloorplanPluginReturnType.html +9 -6
- package/docs/types/MediaData.html +9 -6
- package/docs/types/MediaStore.html +9 -6
- package/docs/types/ModelElement.html +9 -6
- package/docs/types/ModelEntryDoorGuidePluginParameterType.html +9 -6
- package/docs/types/ModelFloorplanPluginParameterType.html +9 -6
- package/docs/types/ModelFloorplanPluginReturnType.html +9 -6
- package/docs/types/ModelRoomLabelPluginParameters.html +9 -6
- package/docs/types/ModelRoomLabelPluginReturnType.html +9 -6
- package/docs/types/MoveArgs.html +9 -6
- package/docs/types/MoveOpts.html +9 -6
- package/docs/types/Object3DHelperEventMap.html +9 -6
- package/docs/types/ObjectFit.html +9 -6
- package/docs/types/PaintBrushEventMap.html +9 -6
- package/docs/types/PanoCompassPluginData.html +9 -6
- package/docs/types/PanoCompassPluginExportType.html +9 -6
- package/docs/types/PanoCompassPluginParameterType.html +9 -6
- package/docs/types/PanoFloorplanRadarPluginParameterType.html +9 -6
- package/docs/types/PanoFloorplanRadarPluginReturnType.html +9 -6
- package/docs/types/PanoIndex.html +9 -6
- package/docs/types/PanoMeasurePluginEvent.html +9 -6
- package/docs/types/PanoMeasureReturnType.html +9 -6
- package/docs/types/PanoSpatialTagPluginId.html +9 -6
- package/docs/types/PanoTagPluginExportInterface.html +9 -6
- package/docs/types/PanoTagPluginParamsInterface.html +9 -6
- package/docs/types/PanoVideoPluginParameterType.html +9 -6
- package/docs/types/PanoVideoPluginReturnType.html +9 -6
- package/docs/types/PlaneTag.html +9 -6
- package/docs/types/PlaneTagElement.html +9 -6
- package/docs/types/Point2DElement.html +9 -6
- package/docs/types/Point2DTag.html +9 -6
- package/docs/types/Point3DElement.html +9 -6
- package/docs/types/Point3DTag.html +9 -6
- package/docs/types/PointTag.html +9 -6
- package/docs/types/PointTagElement.html +9 -6
- package/docs/types/Position.html +9 -6
- package/docs/types/RotateArgs.html +9 -6
- package/docs/types/RotateOpts.html +9 -6
- package/docs/types/RuleLabelsKey.html +9 -6
- package/docs/types/RuleLabelsValue.html +9 -6
- package/docs/types/StickType.html +9 -6
- package/docs/types/Tag.html +9 -6
- package/docs/types/Tag2D.html +9 -6
- package/docs/types/Tag3D.html +9 -6
- package/docs/types/TagContentType.html +9 -6
- package/docs/types/TagDimensionType.html +9 -6
- package/docs/types/TagElement.html +10 -7
- package/docs/types/TagEvents.html +9 -6
- package/docs/types/TagGLTFObject.html +9 -6
- package/docs/types/TagHooks.html +9 -6
- package/docs/types/TagIconSize.html +9 -6
- package/docs/types/TagId.html +9 -6
- package/docs/types/TagPointType.html +9 -6
- package/docs/types/TopviewFloorplanPluginParameterType.html +9 -6
- package/docs/types/TopviewFloorplanPluginReturnType.html +9 -6
- package/docs/types/WorkCode.html +9 -6
- package/docs/variables/FLOOR_TYPE_MAP.html +9 -6
- package/docs/variables/PLUGIN.html +9 -6
- package/docs/variables/ROOM_FETILE_TYPE_MAP.html +9 -6
- package/docs/variables/ROOM_TYPE_MAP.html +9 -6
- package/docs/variables/VERSION.html +9 -6
- package/docs/variables/itemLabelPluginServerParams.html +9 -6
- package/docs/variables/modelItemLabelPluginServerParams.html +9 -6
- package/docs/variables/modelRoomLabelPluginServerParams.html +9 -6
- package/libs/CSS3DRenderPlugin/CSS3DRender.js +2 -2
- package/libs/CSS3DRenderPlugin/Controller.js +2 -2
- package/libs/CSS3DRenderPlugin/index.js +2 -2
- package/libs/CSS3DRenderPlugin/utils/index.d.ts +0 -1
- package/libs/CSS3DRenderPlugin/utils/index.js +8 -10
- package/libs/CSS3DRenderPlugin/utils/three/CSS3DObject.js +6 -6
- package/libs/ModelTVVideoPlugin/Plugin.js +1 -1
- package/libs/ModelTVVideoPlugin/index.js +1 -1
- package/libs/Object3DHelperPlugin/Controller.js +1 -1
- package/libs/Object3DHelperPlugin/index.js +1 -1
- package/libs/PanoCompassPlugin/Controller.js +1 -1
- package/libs/PanoCompassPlugin/index.js +1 -1
- package/libs/PanoSpatialTagPlugin/Plugin.js +1 -1
- package/libs/PanoSpatialTagPlugin/index.js +1 -1
- package/libs/PanoTagPlugin/Components/Common/MediaItem.js +1 -1
- package/libs/PanoTagPlugin/Components/Tag/MarketingTag.js +1 -1
- package/libs/PanoTagPlugin/Components/Tag/index.js +16 -16
- package/libs/PanoTagPlugin/Components/TagContainer.js +1 -1
- package/libs/PanoTagPlugin/Components/TagItem.js +20 -20
- package/{dist/PanoTagPlugin/controller/TagCacheController.d.ts → libs/PanoTagPlugin/controller/TagCache.d.ts} +7 -7
- package/libs/PanoTagPlugin/controller/{TagCacheController.js → TagCache.js} +11 -11
- package/libs/PanoTagPlugin/controller/TagComputer.d.ts +3 -36
- package/libs/PanoTagPlugin/controller/TagComputer.js +168 -289
- package/libs/PanoTagPlugin/controller/TagRender.d.ts +58 -0
- package/libs/PanoTagPlugin/controller/TagRender.js +314 -0
- package/libs/PanoTagPlugin/controller/TagUtil.d.ts +56 -0
- package/libs/PanoTagPlugin/controller/TagUtil.js +172 -0
- package/libs/PanoTagPlugin/controller/index.d.ts +16 -72
- package/libs/PanoTagPlugin/controller/index.js +170 -330
- package/libs/PanoTagPlugin/index.js +51 -46
- package/libs/PanoTagPlugin/mocks/v1/mock-80P6A03eQRQKY3oqLj.d.ts +4 -0
- package/libs/PanoTagPlugin/mocks/v1/mock-80P6A03eQRQKY3oqLj.js +6 -0
- package/libs/PanoTagPlugin/mocks/v1/mock-80QG2vMPboNv5DWrom.d.ts +93 -0
- package/libs/PanoTagPlugin/mocks/v1/mock-80QG2vMPboNv5DWrom.js +5622 -0
- package/libs/PanoTagPlugin/mocks/v1/mock-test3-realsee-cn-4zr0A5.js +1325 -0
- package/libs/PanoTagPlugin/mocks/v1/mock1.d.ts +173 -0
- package/libs/PanoTagPlugin/mocks/v1/mock1.js +121 -0
- package/libs/PanoTagPlugin/mocks/v1/mock2.d.ts +233 -0
- package/libs/PanoTagPlugin/mocks/v1/mock2.js +296 -0
- package/libs/PanoTagPlugin/mocks/v1/mock3.d.ts +22 -0
- package/libs/PanoTagPlugin/mocks/v1/mock3.js +32 -0
- package/libs/PanoTagPlugin/mocks/v1/mock4.d.ts +56 -0
- package/libs/PanoTagPlugin/mocks/v1/mock4.js +60 -0
- package/libs/PanoTagPlugin/mocks/v1/mock5.d.ts +13 -0
- package/libs/PanoTagPlugin/mocks/v1/mock5.js +17 -0
- package/libs/PanoTagPlugin/mocks/v1/mock6.d.ts +16 -0
- package/libs/PanoTagPlugin/mocks/v1/mock6.js +27 -0
- package/libs/PanoTagPlugin/mocks/v1/mock7.d.ts +22 -0
- package/libs/PanoTagPlugin/mocks/v1/mock7.js +228 -0
- package/libs/PanoTagPlugin/typings/controller.d.ts +15 -16
- package/libs/PanoTagPlugin/typings/tag/TagConfig.d.ts +2 -0
- package/libs/PanoTagPlugin/typings/tag/Utils.d.ts +16 -0
- package/libs/PanoTagPlugin/utils/addDebugPoints.js +1 -1
- package/libs/PanoTagPlugin/utils/device.d.ts +1 -0
- package/libs/PanoTagPlugin/utils/device.js +4 -0
- package/libs/PanoTagPlugin/utils/index.js +32 -33
- package/libs/PanoTagPlugin/utils/model/imageModel.d.ts +8 -0
- package/libs/PanoTagPlugin/utils/model/imageModel.js +31 -0
- package/libs/PanoTagPlugin/utils/planeNormal.js +1 -1
- package/libs/PanoTagPlugin/utils/tag/tagCheck.d.ts +7 -7
- package/libs/PanoTagPlugin/utils/tagPosition.js +1 -1
- package/libs/PanoVideoPlugin/Controller.js +1 -1
- package/libs/PanoVideoPlugin/VideoMeshController.js +1 -1
- package/libs/PanoVideoPlugin/index.js +1 -1
- package/libs/base/BasePlugin.js +1 -1
- package/libs/index.js +123 -119
- package/libs/shared-utils/three/loadTexture.js +19 -19
- package/package.json +1 -1
- /package/dist/{CSS3DRenderPlugin/utils → shared-utils/three}/centerPoint.d.ts +0 -0
- /package/libs/{CSS3DRenderPlugin/utils → shared-utils/three}/centerPoint.d.ts +0 -0
- /package/libs/{CSS3DRenderPlugin/utils → shared-utils/three}/centerPoint.js +0 -0
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
var R = Object.defineProperty;
|
|
2
|
+
var O = (p, m, e) => m in p ? R(p, m, { enumerable: !0, configurable: !0, writable: !0, value: e }) : p[m] = e;
|
|
3
|
+
var l = (p, m, e) => (O(p, typeof m != "symbol" ? m + "" : m, e), e);
|
|
4
|
+
var C = (p, m, e) => new Promise((t, i) => {
|
|
5
|
+
var o = (a) => {
|
|
6
|
+
try {
|
|
7
|
+
r(e.next(a));
|
|
8
|
+
} catch (n) {
|
|
9
|
+
i(n);
|
|
10
|
+
}
|
|
11
|
+
}, s = (a) => {
|
|
12
|
+
try {
|
|
13
|
+
r(e.throw(a));
|
|
14
|
+
} catch (n) {
|
|
15
|
+
i(n);
|
|
16
|
+
}
|
|
17
|
+
}, r = (a) => a.done ? t(a.value) : Promise.resolve(a.value).then(o, s);
|
|
18
|
+
r((e = e.apply(p, m)).next());
|
|
19
|
+
});
|
|
20
|
+
import { TagComputer as w } from "./TagComputer.js";
|
|
21
|
+
import { Group as S, Quaternion as G, Vector3 as T, Matrix4 as b } from "three";
|
|
22
|
+
import x from "../Components/TagContainer.js";
|
|
23
|
+
import A from "../Components/Tag/index.js";
|
|
24
|
+
import { arrayPositionToVector3 as D } from "../../CSS3DRenderPlugin/utils/positionToVector3.js";
|
|
25
|
+
import { planeNormal as j } from "../utils/planeNormal.js";
|
|
26
|
+
import { isMediaModelTag as f } from "../utils/tag/tagCheck.js";
|
|
27
|
+
import { normalPositionToPositions as E } from "../utils/normalPositionToPositions.js";
|
|
28
|
+
import { CSS3DRenderPlugin as V } from "../../CSS3DRenderPlugin/index.js";
|
|
29
|
+
import { loadGLTF as k } from "../../shared-utils/three/GLTFLoader.js";
|
|
30
|
+
import I from "../utils/model/imageModel.js";
|
|
31
|
+
import "../utils/tagPosition.js";
|
|
32
|
+
import "../../shared-utils/three/centerPoint.js";
|
|
33
|
+
import "../utils/checkRange.js";
|
|
34
|
+
import "hammerjs";
|
|
35
|
+
import "@realsee/five";
|
|
36
|
+
import "@tweenjs/tween.js";
|
|
37
|
+
import "../../CSS3DRenderPlugin/CSS3DRender.js";
|
|
38
|
+
import "../../CSS3DRenderPlugin/utils/three/CSS3DRenderer.js";
|
|
39
|
+
import "three/examples/jsm/renderers/CSS3DRenderer";
|
|
40
|
+
import "../../CSS3DRenderPlugin/utils/getAllCSS3DObject.js";
|
|
41
|
+
import "../../CSS3DRenderPlugin/utils/createResizeObserver.js";
|
|
42
|
+
import "../../CSS3DRenderPlugin/utils/even.js";
|
|
43
|
+
import "../../shared-utils/Subscribe.js";
|
|
44
|
+
import "../../CSS3DRenderPlugin/utils/three/CSS3DObject.js";
|
|
45
|
+
import "../../CSS3DRenderPlugin/utils/three/OpacityMesh.js";
|
|
46
|
+
import "../../CSS3DRenderPlugin/utils/three/CSS3DScene.js";
|
|
47
|
+
import "../../CSS3DRenderPlugin/utils/three/CSS3DGroup.js";
|
|
48
|
+
import "../../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
|
|
49
|
+
import "../../shared-utils/isNil.js";
|
|
50
|
+
import "../../shared-utils/animationFrame/BetterTween.js";
|
|
51
|
+
import "../../shared-utils/animationFrame/index.js";
|
|
52
|
+
import "./TagUtil.js";
|
|
53
|
+
import "object-assign-deep";
|
|
54
|
+
import "../tag.config.js";
|
|
55
|
+
import "./TagCache.js";
|
|
56
|
+
import "../../base/BasePlugin.js";
|
|
57
|
+
import "../../vendor/svelte/store/index.js";
|
|
58
|
+
import "../../vendor/svelte/internal/index.js";
|
|
59
|
+
import "../utils/device.js";
|
|
60
|
+
import "../Components/TagItem.js";
|
|
61
|
+
import "../utils/noTypecheck.js";
|
|
62
|
+
import "../Components/Common/TagPoint.js";
|
|
63
|
+
import "../Components/Common/Shadow.js";
|
|
64
|
+
import "../../vendor/svelte/transition/index.js";
|
|
65
|
+
import "../../vendor/svelte/easing/index.js";
|
|
66
|
+
import "../Components/Common/Icon/Icon.js";
|
|
67
|
+
import "../utils/getImageInfo.js";
|
|
68
|
+
import "../utils/px2rem.js";
|
|
69
|
+
import "../Assets/Icon.js";
|
|
70
|
+
import "../Components/Tag/TextTag/index.js";
|
|
71
|
+
import "../Components/Tag/TextTag/TextTag.js";
|
|
72
|
+
import "../Components/Common/Line/Straight.js";
|
|
73
|
+
import "../../shared-utils/uuid.js";
|
|
74
|
+
import "../Components/Common/Text/FlyMText.js";
|
|
75
|
+
import "../Components/Common/Text/FlyText.js";
|
|
76
|
+
import "animejs";
|
|
77
|
+
import "../utils/search.js";
|
|
78
|
+
import "../utils/constants.js";
|
|
79
|
+
import "../Components/Common/Arrow.js";
|
|
80
|
+
import "../utils/doUtil.js";
|
|
81
|
+
import "../Components/Tag/TextTag/TextPlaneTag.js";
|
|
82
|
+
import "../Components/Common/Text/MText.js";
|
|
83
|
+
import "../Components/Tag/ImageTextTag.js";
|
|
84
|
+
import "../Components/Common/Line/Polyline.js";
|
|
85
|
+
import "../Components/Common/Media.js";
|
|
86
|
+
import "../../vendor/svelte-carousel/src/components/Carousel/Carousel.js";
|
|
87
|
+
import "../../vendor/svelte-carousel/src/components/Dots/Dots.js";
|
|
88
|
+
import "../../vendor/svelte-carousel/src/components/Dot/Dot.js";
|
|
89
|
+
import "../../vendor/svelte-carousel/src/components/Arrow/Arrow.js";
|
|
90
|
+
import "../../vendor/svelte-carousel/src/direction.js";
|
|
91
|
+
import "../../vendor/svelte-carousel/src/components/Progress/Progress.js";
|
|
92
|
+
import "../../vendor/svelte-carousel/src/actions/swipeable/swipeable.js";
|
|
93
|
+
import "../../vendor/svelte-carousel/src/actions/swipeable/event.js";
|
|
94
|
+
import "../../vendor/svelte-carousel/src/utils/event.js";
|
|
95
|
+
import "../../vendor/svelte-carousel/src/units.js";
|
|
96
|
+
import "../../vendor/svelte-carousel/src/actions/hoverable/hoverable.js";
|
|
97
|
+
import "../../vendor/svelte-carousel/src/actions/hoverable/event.js";
|
|
98
|
+
import "../../vendor/svelte-carousel/src/actions/tappable/tappable.js";
|
|
99
|
+
import "../../vendor/svelte-carousel/src/utils/math.js";
|
|
100
|
+
import "../../vendor/svelte-carousel/src/actions/tappable/event.js";
|
|
101
|
+
import "../../vendor/svelte-carousel/src/utils/page.js";
|
|
102
|
+
import "../../vendor/svelte-carousel/src/utils/clones.js";
|
|
103
|
+
import "../../vendor/svelte-carousel/src/utils/object.js";
|
|
104
|
+
import "../../vendor/svelte-carousel/src/components/Carousel/createCarousel.js";
|
|
105
|
+
import "../../vendor/simply-reactive/src/simply-reactive.js";
|
|
106
|
+
import "lodash.get";
|
|
107
|
+
import "lodash.clonedeep";
|
|
108
|
+
import "../../vendor/simply-reactive/src/utils/subscription.js";
|
|
109
|
+
import "../../vendor/simply-reactive/src/utils/object.js";
|
|
110
|
+
import "lodash.isequal";
|
|
111
|
+
import "../../vendor/simply-reactive/src/utils/watcher.js";
|
|
112
|
+
import "../../vendor/svelte-carousel/src/utils/lazy.js";
|
|
113
|
+
import "../../vendor/svelte-carousel/src/utils/ProgressManager.js";
|
|
114
|
+
import "../../vendor/svelte-carousel/src/utils/interval.js";
|
|
115
|
+
import "../Components/Common/MediaItem.js";
|
|
116
|
+
import "../Components/Tag/MarketingTag.js";
|
|
117
|
+
import "../Components/Tag/AudioTag/index.js";
|
|
118
|
+
import "../Components/Tag/AudioTag/AudioTag.js";
|
|
119
|
+
import "../Components/Common/Audio.js";
|
|
120
|
+
import "../utils/audio/SharedAudio.js";
|
|
121
|
+
import "../../shared-utils/audio.js";
|
|
122
|
+
import "../Components/Common/Icon/audioIcon.js";
|
|
123
|
+
import "../Components/Tag/AudioTag/AudioPlaneTag.js";
|
|
124
|
+
import "../Components/Tag/MediaPlane.js";
|
|
125
|
+
import "../Components/Tag/LinkTag.js";
|
|
126
|
+
import "../Components/Tag/CustomTag.js";
|
|
127
|
+
import "../../CSS3DRenderPlugin/Controller.js";
|
|
128
|
+
import "../../CSS3DRenderPlugin/utils/waitFiveModelLoaded.js";
|
|
129
|
+
import "@realsee/five/gltf-loader";
|
|
130
|
+
import "../../shared-utils/three/loadTexture.js";
|
|
131
|
+
class We extends w {
|
|
132
|
+
constructor(e) {
|
|
133
|
+
super(e);
|
|
134
|
+
l(this, "group", new S());
|
|
135
|
+
l(this, "imagePlaneGroup", new S());
|
|
136
|
+
l(this, "gltfObjectGroup", new S());
|
|
137
|
+
l(this, "enabledModelTagSet", /* @__PURE__ */ new Set());
|
|
138
|
+
l(this, "temporaryState", { visible: !0 });
|
|
139
|
+
l(this, "TagContainerSvelte");
|
|
140
|
+
l(this, "loadModel", (e) => C(this, null, function* () {
|
|
141
|
+
var a;
|
|
142
|
+
const t = e.data.modelUrl;
|
|
143
|
+
if (!t)
|
|
144
|
+
return;
|
|
145
|
+
const i = k(t).then((n) => Object.assign(n.scene, { customID: e.id, isTagModel: !0 }));
|
|
146
|
+
e.model = { promise: i };
|
|
147
|
+
const o = yield i;
|
|
148
|
+
if (((a = e.model) == null ? void 0 : a.promise) !== i || (e.model.object = o, !this.tags.includes(e)))
|
|
149
|
+
return;
|
|
150
|
+
o.visible = e.state.visible, new b().fromArray(e.matrix).decompose(o.position, o.quaternion, o.scale), o.updateWorldMatrix(!0, !0), this.getVisibleByFloorIndex(e) || (o.visible = !1);
|
|
151
|
+
const r = this.gltfObjectGroup.children.find((n) => n.customID === e.id);
|
|
152
|
+
return r && this.gltfObjectGroup.remove(r), this.gltfObjectGroup.add(o), this.updateTagCss3DObjectMatrix(e, o), o;
|
|
153
|
+
}));
|
|
154
|
+
this.group.name = "PanoTagPluginModelGroup", this.gltfObjectGroup.name = "PanoTagPluginGLTFObjectGroup", this.imagePlaneGroup.name = "ImagePlaneGroup", this.group.add(this.gltfObjectGroup), this.group.add(this.imagePlaneGroup);
|
|
155
|
+
}
|
|
156
|
+
clearTags() {
|
|
157
|
+
this.tags.forEach((e) => {
|
|
158
|
+
var t, i;
|
|
159
|
+
(i = (t = e.imageModel) == null ? void 0 : t.parent) == null || i.remove(e.imageModel);
|
|
160
|
+
}), this.tags = [], this.enabledModelTagSet.clear(), this.clearCache(), this.disposeAllCSS3DContainer(), this.updateRenderAllTags();
|
|
161
|
+
}
|
|
162
|
+
updateRenderAllTags() {
|
|
163
|
+
this.enabledModelTagSet.clear(), this.tags.forEach((e) => e.stickType === "Model" && this.enabledModelTagSet.add(e.id)), this.updateRenderPointTag(), this.updateRenderPlaneTag(), this.updateRenderModelTag(), this.updateRenderImageModel();
|
|
164
|
+
}
|
|
165
|
+
updateRenderImageModel() {
|
|
166
|
+
this.sort([...this.filterImageModel]).forEach((t) => {
|
|
167
|
+
var o, s, r, a;
|
|
168
|
+
const i = (o = t.data.mediaData[0]) == null ? void 0 : o.url;
|
|
169
|
+
!i || (t.imageModel && (t.imageModel.visible = (r = (s = t.state) == null ? void 0 : s.visible) != null ? r : !0), ((a = t.imageModel) == null ? void 0 : a.imageSrc) !== i && (t.imageModel = new I(i, t.position.map(D)), t.imageModel.name = "PanoTagPluginImageModel", this.imagePlaneGroup.add(t.imageModel)));
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
updateRenderPlaneTag() {
|
|
173
|
+
this.sort([...this.filter3DTag]).forEach((t) => {
|
|
174
|
+
var a, n, u;
|
|
175
|
+
if (f(t) && ((a = t.model) == null ? void 0 : a.object) && this.updateTagCss3DObjectMatrix(t, (n = t.model) == null ? void 0 : n.object), t.tag3DContentSvelte) {
|
|
176
|
+
const { svelteApp: d, domContainer: M, initialNormal: h, currentNormal: c } = t.tag3DContentSvelte;
|
|
177
|
+
if (this.updateTagCss3DObjectVisible(t), d.$set({ tag: t, hooks: this.hooks, state: this.state, temporaryState: this.temporaryState }), !h.equals(c)) {
|
|
178
|
+
const g = new G().setFromUnitVectors(h, c);
|
|
179
|
+
M.css3DObject.setRotationFromQuaternion(g);
|
|
180
|
+
}
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
if (((u = t.state) == null ? void 0 : u.visible) === !1)
|
|
184
|
+
return;
|
|
185
|
+
if (this.css3DRenderPlugin || (this.css3DRenderPlugin = V(this.five)), t.stickType === "3DPoint" && !t.normal)
|
|
186
|
+
return console.error("updateRenderPlaneTag: \u4E09\u7EF4\u70B9\u6807\u7B7E\u7F3A\u5C11\u6CD5\u5411\u91CF\uFF01");
|
|
187
|
+
const i = (() => {
|
|
188
|
+
if (t.stickType === "Plane")
|
|
189
|
+
return t.position;
|
|
190
|
+
if (f(t))
|
|
191
|
+
return t.data.mediaPosition;
|
|
192
|
+
const d = t;
|
|
193
|
+
return E(
|
|
194
|
+
this.five.camera.position,
|
|
195
|
+
D(d.position),
|
|
196
|
+
D(d.normal)
|
|
197
|
+
);
|
|
198
|
+
})();
|
|
199
|
+
if (!i)
|
|
200
|
+
return;
|
|
201
|
+
const o = function() {
|
|
202
|
+
if (t.normal)
|
|
203
|
+
return D(t.normal);
|
|
204
|
+
if (t.stickType === "Plane")
|
|
205
|
+
return j(t.position);
|
|
206
|
+
if (t.contentType === "MediaModel")
|
|
207
|
+
return j(i);
|
|
208
|
+
}();
|
|
209
|
+
if (!o)
|
|
210
|
+
return;
|
|
211
|
+
const s = this.getTagConfig(t).tag3DConfig, r = this.css3DRenderPlugin.create3DDomContainer(i, s);
|
|
212
|
+
!r || (this.updateTagCss3DObjectVisible(t), this.store.css3DRenderDisposer.set(t.id, r.dispose), t.tag3DContentSvelte = {
|
|
213
|
+
svelteApp: new A({
|
|
214
|
+
target: r.container,
|
|
215
|
+
props: {
|
|
216
|
+
tag: t,
|
|
217
|
+
hooks: this.hooks,
|
|
218
|
+
state: this.state,
|
|
219
|
+
mediaStore: this.mediaStore,
|
|
220
|
+
temporaryState: this.temporaryState
|
|
221
|
+
}
|
|
222
|
+
}),
|
|
223
|
+
domContainer: r,
|
|
224
|
+
initialNormal: o,
|
|
225
|
+
currentNormal: o
|
|
226
|
+
});
|
|
227
|
+
}), this.clearUnusedPanelTag();
|
|
228
|
+
}
|
|
229
|
+
updateRenderModelTag() {
|
|
230
|
+
const e = (i) => !this.enabledModelTagSet.has(i.customID);
|
|
231
|
+
this.gltfObjectGroup.remove(...this.gltfObjectGroup.children.filter(e)), this.tags.filter(f).forEach((i) => {
|
|
232
|
+
var o;
|
|
233
|
+
(o = i.model) == null || o.promise.then((s) => {
|
|
234
|
+
s.visible = i.state.visible;
|
|
235
|
+
});
|
|
236
|
+
});
|
|
237
|
+
}
|
|
238
|
+
updateTagModelVisible() {
|
|
239
|
+
this.tags.forEach((e) => {
|
|
240
|
+
var t, i, o;
|
|
241
|
+
e.imageModel && (e.imageModel.visible = (o = ((t = e.state) == null ? void 0 : t.visible) && ((i = this.state) == null ? void 0 : i.visible)) != null ? o : !0);
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
updateTagCss3DObjectMatrix(e, t) {
|
|
245
|
+
var g, v, P, y;
|
|
246
|
+
const i = (P = (v = (g = e.mergedConfig) == null ? void 0 : g.tag3DConfig) == null ? void 0 : v.ratio) != null ? P : 216e-5, o = (y = e.tag3DContentSvelte) == null ? void 0 : y.domContainer.css3DObject;
|
|
247
|
+
if (!o)
|
|
248
|
+
return;
|
|
249
|
+
const s = f(e) ? e.data.mediaPosition : e.position;
|
|
250
|
+
t.updateWorldMatrix(!1, !1);
|
|
251
|
+
const r = t.matrixWorld, a = new T().fromArray(s[0]), n = new T().fromArray(s[2]), u = new T().lerpVectors(a, n, 0.5).add(new T(0, 0, 5e-4)), d = new b().setPosition(u), M = new b().makeScale(i, i, i), h = new b().multiply(r).multiply(d).multiply(M);
|
|
252
|
+
h.decompose(o.position, o.quaternion, o.scale);
|
|
253
|
+
const c = o.opacityMesh;
|
|
254
|
+
!c || h.decompose(c.position, c.quaternion, c.scale);
|
|
255
|
+
}
|
|
256
|
+
addMediaModelTag(e) {
|
|
257
|
+
return C(this, null, function* () {
|
|
258
|
+
const t = e.filter(f).map(this.loadModel);
|
|
259
|
+
yield Promise.all(t), this.setModelMedialVisible(), this.updateRenderAllTags();
|
|
260
|
+
});
|
|
261
|
+
}
|
|
262
|
+
updateRenderPointTag() {
|
|
263
|
+
var t;
|
|
264
|
+
const e = this.sort(this.filterPointTag);
|
|
265
|
+
if (this.setPointTagPosition(), this.TagContainerSvelte)
|
|
266
|
+
this.TagContainerSvelte.$set({ tags: e, state: this.state, temporaryState: this.temporaryState });
|
|
267
|
+
else {
|
|
268
|
+
const i = (t = this.five.getElement()) == null ? void 0 : t.parentElement;
|
|
269
|
+
if (!i)
|
|
270
|
+
return console.error("updateRenderPlaneTag: tag2DContainer not found");
|
|
271
|
+
this.TagContainerSvelte = new x({
|
|
272
|
+
target: i,
|
|
273
|
+
props: { hooks: this.hooks, tags: e, state: this.state, temporaryState: this.temporaryState, mediaStore: this.mediaStore }
|
|
274
|
+
});
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
updateTagContainerVisible() {
|
|
278
|
+
var e;
|
|
279
|
+
(e = this.TagContainerSvelte) == null || e.$set({
|
|
280
|
+
state: this.state,
|
|
281
|
+
temporaryState: this.temporaryState,
|
|
282
|
+
withAnimation: this.store.visibleWithAnimation
|
|
283
|
+
}), this.filter3DTag.forEach((t) => {
|
|
284
|
+
var i, o, s, r;
|
|
285
|
+
(s = (o = (i = t.tag3DContentSvelte) == null ? void 0 : i.domContainer) == null ? void 0 : o.css3DObject) == null || s.setVisible(this.state.visible), (r = t.tag3DContentSvelte) == null || r.svelteApp.$set({
|
|
286
|
+
state: this.state,
|
|
287
|
+
temporaryState: this.temporaryState,
|
|
288
|
+
withAnimation: this.store.visibleWithAnimation
|
|
289
|
+
});
|
|
290
|
+
});
|
|
291
|
+
}
|
|
292
|
+
disposeAllCSS3DContainer() {
|
|
293
|
+
for (const [e, t] of this.store.css3DRenderDisposer)
|
|
294
|
+
t == null || t();
|
|
295
|
+
this.store.css3DRenderDisposer = /* @__PURE__ */ new Map();
|
|
296
|
+
}
|
|
297
|
+
clearUnusedPanelTag() {
|
|
298
|
+
this.filter2DPointTag.forEach((e) => {
|
|
299
|
+
var t;
|
|
300
|
+
(t = e.tag3DContentSvelte) == null || t.domContainer.dispose(), e.tag3DContentSvelte = void 0;
|
|
301
|
+
});
|
|
302
|
+
for (const [e, t] of this.store.css3DRenderDisposer) {
|
|
303
|
+
const i = this.getTagById(e);
|
|
304
|
+
(!i || i.stickType === "2DPoint") && (t == null || t(), this.store.css3DRenderDisposer.delete(e));
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
updateTagCss3DObjectVisible(e) {
|
|
308
|
+
var t, i, o, s, r;
|
|
309
|
+
(r = (i = (t = e.tag3DContentSvelte) == null ? void 0 : t.domContainer) == null ? void 0 : i.css3DObject) == null || r.setVisible((s = this.state.visible && ((o = e.state) == null ? void 0 : o.visible)) != null ? s : !0), this.five.needsRender = !0;
|
|
310
|
+
}
|
|
311
|
+
}
|
|
312
|
+
export {
|
|
313
|
+
We as TagRender
|
|
314
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { TagElement, TagContentType, StickType, TagId, TagConfig, PlaneTag, MediaStore } from '../typings';
|
|
2
|
+
import type { Tag, Tags, Point2DElement, Point3DElement, PlaneTagElement, PointTagElement, Point3DTag, ModelElement } from '../typings';
|
|
3
|
+
import { TagCache } from './TagCache';
|
|
4
|
+
import { CSS3DRenderPluginExportType } from '../../CSS3DRenderPlugin';
|
|
5
|
+
import { Five } from '@realsee/five';
|
|
6
|
+
export declare abstract class TagUtil extends TagCache {
|
|
7
|
+
config: Pick<Tags, 'globalConfig' | 'contentTypeConfig'>;
|
|
8
|
+
tags: TagElement[];
|
|
9
|
+
protected mediaStore: MediaStore;
|
|
10
|
+
/** css3DRenderPlugin */
|
|
11
|
+
protected css3DRenderPlugin?: CSS3DRenderPluginExportType;
|
|
12
|
+
protected store: {
|
|
13
|
+
/** 清理函数数组 */
|
|
14
|
+
disposers: (() => any)[];
|
|
15
|
+
visibleWithAnimation?: boolean;
|
|
16
|
+
css3DRenderDisposer: Map<TagId, () => void>;
|
|
17
|
+
eventListenerDisposer?: () => void;
|
|
18
|
+
resizeObserverDisposer?: () => void;
|
|
19
|
+
resizeObserverDisposerAdding: boolean;
|
|
20
|
+
disposed: boolean;
|
|
21
|
+
};
|
|
22
|
+
protected get isPanorama(): boolean;
|
|
23
|
+
protected constructor(five: Five);
|
|
24
|
+
getTagById<C extends TagContentType = any, S extends StickType = any>(id: TagId): TagElement<C, S> | undefined;
|
|
25
|
+
/** 暂停当前标签内进行的所有多媒体 */
|
|
26
|
+
pauseCurrentMedia(): void;
|
|
27
|
+
/**
|
|
28
|
+
* @description: 获取merge后的配置
|
|
29
|
+
* TODO: 缓存
|
|
30
|
+
*/
|
|
31
|
+
getTagConfig(tag: Tag<any, any>): TagConfig<"Image" | "Link" | "Audio" | "Text" | "ImageText" | "Video" | "Sticker" | "VRLink" | "PanoLink" | "Marketing" | "MediaPlane" | "MediaModel" | "Custom" | "Unknown", StickType>;
|
|
32
|
+
protected loadVideoFirstFrame(): void;
|
|
33
|
+
protected updateTagConfig(params?: {
|
|
34
|
+
force?: boolean;
|
|
35
|
+
}): void;
|
|
36
|
+
protected can<T extends TagElement<any, any>>(action: 'show' | 'hide' | 'fold' | 'unfold' | 'renderByMesh', paramsTag: T): boolean;
|
|
37
|
+
/**
|
|
38
|
+
* @description: 获取角度
|
|
39
|
+
*/
|
|
40
|
+
protected getAngle(tag: Point3DTag | PlaneTag, panoIndex?: number): number;
|
|
41
|
+
/**
|
|
42
|
+
* @description: 获取距离
|
|
43
|
+
*/
|
|
44
|
+
protected getDistance(tag: Tag<any, any>, panoIndex?: number): number;
|
|
45
|
+
protected get filterPointTag(): PointTagElement<"Image" | "Link" | "Audio" | "Text" | "ImageText" | "Video" | "Sticker" | "VRLink" | "PanoLink" | "Marketing" | "MediaPlane" | "MediaModel" | "Custom" | "Unknown">[];
|
|
46
|
+
protected get filter2DPointTag(): Point2DElement<"Image" | "Link" | "Audio" | "Text" | "ImageText" | "Video" | "Sticker" | "VRLink" | "PanoLink" | "Marketing" | "MediaPlane" | "MediaModel" | "Custom" | "Unknown">[];
|
|
47
|
+
protected get filter3DPointTag(): Point3DElement<"Image" | "Link" | "Audio" | "Text" | "ImageText" | "Video" | "Sticker" | "VRLink" | "PanoLink" | "Marketing" | "MediaPlane" | "MediaModel" | "Custom" | "Unknown">[];
|
|
48
|
+
protected get filterImageModel(): PlaneTagElement<"MediaPlane">[];
|
|
49
|
+
protected get filterModelTag(): ModelElement<"Image" | "Link" | "Audio" | "Text" | "ImageText" | "Video" | "Sticker" | "VRLink" | "PanoLink" | "Marketing" | "MediaPlane" | "MediaModel" | "Custom" | "Unknown">[];
|
|
50
|
+
protected get filter3DTag(): (TagElement<any, "Plane"> | TagElement<any, "Model"> | TagElement<any, "3DPoint">)[];
|
|
51
|
+
/**
|
|
52
|
+
* @description 检查是否已经销毁
|
|
53
|
+
* @returns isDisposed; 已经销毁返回 true,否则返回 false
|
|
54
|
+
*/
|
|
55
|
+
protected checkDisposed(): boolean;
|
|
56
|
+
}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
var h = Object.defineProperty;
|
|
2
|
+
var y = (c, d, e) => d in c ? h(c, d, { enumerable: !0, configurable: !0, writable: !0, value: e }) : c[d] = e;
|
|
3
|
+
var a = (c, d, e) => (y(c, typeof d != "symbol" ? d + "" : d, e), e);
|
|
4
|
+
import T from "object-assign-deep";
|
|
5
|
+
import * as C from "three";
|
|
6
|
+
import { DefaultConfig as v } from "../tag.config.js";
|
|
7
|
+
import { anyPositionToVector3 as m } from "../../CSS3DRenderPlugin/utils/positionToVector3.js";
|
|
8
|
+
import { planeNormal as b } from "../utils/planeNormal.js";
|
|
9
|
+
import { tagPosition as k, getTagPosition as P } from "../utils/tagPosition.js";
|
|
10
|
+
import { TagCache as D } from "./TagCache.js";
|
|
11
|
+
import { writable as w } from "../../vendor/svelte/store/index.js";
|
|
12
|
+
import { isIOSWX as M } from "../utils/device.js";
|
|
13
|
+
import "../../shared-utils/three/centerPoint.js";
|
|
14
|
+
import "../utils/tag/tagCheck.js";
|
|
15
|
+
import "../../base/BasePlugin.js";
|
|
16
|
+
import "../../shared-utils/Subscribe.js";
|
|
17
|
+
import "../../vendor/svelte/internal/index.js";
|
|
18
|
+
class z extends D {
|
|
19
|
+
constructor(e) {
|
|
20
|
+
super(e);
|
|
21
|
+
a(this, "config", v);
|
|
22
|
+
a(this, "tags", []);
|
|
23
|
+
a(this, "mediaStore", w({
|
|
24
|
+
currentMediaElement: null
|
|
25
|
+
}));
|
|
26
|
+
a(this, "css3DRenderPlugin");
|
|
27
|
+
a(this, "store", {
|
|
28
|
+
disposers: [],
|
|
29
|
+
disposed: !1,
|
|
30
|
+
resizeObserverDisposerAdding: !1,
|
|
31
|
+
css3DRenderDisposer: /* @__PURE__ */ new Map()
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
get isPanorama() {
|
|
35
|
+
return this.five.currentMode === "Panorama";
|
|
36
|
+
}
|
|
37
|
+
getTagById(e) {
|
|
38
|
+
const o = this.tags.find((i) => i.id === e);
|
|
39
|
+
if (!o) {
|
|
40
|
+
console.warn(`error: can not find tag id ${e} by getTagById()`);
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
return o;
|
|
44
|
+
}
|
|
45
|
+
pauseCurrentMedia() {
|
|
46
|
+
this.mediaStore.set({ currentMediaElement: null });
|
|
47
|
+
}
|
|
48
|
+
getTagConfig(e) {
|
|
49
|
+
var t, f;
|
|
50
|
+
if (!e)
|
|
51
|
+
return (t = this.config.globalConfig) != null ? t : {};
|
|
52
|
+
const o = {};
|
|
53
|
+
this.config.contentTypeConfig && Object.keys(this.config.contentTypeConfig).forEach((g) => {
|
|
54
|
+
const n = g;
|
|
55
|
+
if (o[n])
|
|
56
|
+
return;
|
|
57
|
+
const r = n.split("-");
|
|
58
|
+
if (r.length === 1) {
|
|
59
|
+
const [s] = r;
|
|
60
|
+
e.contentType === s && (o[n] = this.config.contentTypeConfig[n]);
|
|
61
|
+
}
|
|
62
|
+
if (r.length === 2) {
|
|
63
|
+
const [s = "Any", l = "Any"] = r;
|
|
64
|
+
(e.stickType === s || s === "Any") && (e.contentType === l || l === "Any") && (o[n] = this.config.contentTypeConfig[n]);
|
|
65
|
+
}
|
|
66
|
+
if (r.length === 3) {
|
|
67
|
+
const [s = "Any", l, p] = r;
|
|
68
|
+
if (l === "Audio" && e.contentType === "Audio") {
|
|
69
|
+
const u = e;
|
|
70
|
+
(u.stickType === s || s === "Any") && u.data.appearance === p && (o[n] = this.config.contentTypeConfig[n]);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
const i = T({}, this.config.globalConfig, ...Object.values(o), e.config);
|
|
75
|
+
return typeof i.unfoldedConfig == "object" && (i.unfoldedConfig.disableFold && (i.unfoldedConfig = { keep: "unfolded" }), i.unfoldedConfig.disableUnfold && (i.unfoldedConfig = { keep: "folded" }), i.unfoldedConfig.keep && (i.unfoldedConfig = { keep: i.unfoldedConfig.keep })), typeof i.visibleConfig == "object" && i.visibleConfig.keep && (i.visibleConfig = { keep: i.visibleConfig.keep, visibleFiveMode: (f = i.visibleConfig) == null ? void 0 : f.visibleFiveMode }), i;
|
|
76
|
+
}
|
|
77
|
+
loadVideoFirstFrame() {
|
|
78
|
+
M && this.hooks.emit("loadVideoFirstFrame");
|
|
79
|
+
}
|
|
80
|
+
updateTagConfig(e) {
|
|
81
|
+
e != null && e.force && this.clearCache(), this.tags.forEach((o) => {
|
|
82
|
+
const i = this.getTagConfig(o);
|
|
83
|
+
o.mergedConfig = i;
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
can(e, o) {
|
|
87
|
+
const i = o, t = this.getTagConfig(i);
|
|
88
|
+
if (!t || typeof t != "object")
|
|
89
|
+
return !0;
|
|
90
|
+
if (e === "show" || e === "hide") {
|
|
91
|
+
if (!t.visibleConfig || typeof t.visibleConfig != "object")
|
|
92
|
+
return !0;
|
|
93
|
+
if (e === "show" && t.visibleConfig.keep === "hidden" || e === "hide" && (t.visibleConfig.keep === "visible" || t.visibleConfig.alwaysShowWhenMovePano))
|
|
94
|
+
return !1;
|
|
95
|
+
}
|
|
96
|
+
if (e === "fold" || e === "unfold") {
|
|
97
|
+
if (!t.unfoldedConfig || typeof t.unfoldedConfig != "object")
|
|
98
|
+
return !0;
|
|
99
|
+
if (e === "fold" && t.unfoldedConfig.keep === "unfolded" || e === "unfold" && t.unfoldedConfig.keep === "folded")
|
|
100
|
+
return !1;
|
|
101
|
+
}
|
|
102
|
+
if (e === "renderByMesh")
|
|
103
|
+
if (i.contentType === "MediaPlane" && i.stickType === "Plane") {
|
|
104
|
+
const f = i.data.mediaData;
|
|
105
|
+
return f.length === 1 && f[0].type === "Image" && t.renderType === "Mesh";
|
|
106
|
+
} else
|
|
107
|
+
return !1;
|
|
108
|
+
return !0;
|
|
109
|
+
}
|
|
110
|
+
getAngle(e, o) {
|
|
111
|
+
var f, g, n;
|
|
112
|
+
const i = (f = this.five.panoIndex) != null ? f : o;
|
|
113
|
+
if (i === void 0)
|
|
114
|
+
throw new Error(`getDistance(): fivePanoIndex is ${i}`);
|
|
115
|
+
const t = this.getCache({ panoIndex: o, id: e.id });
|
|
116
|
+
if (t.angle !== void 0)
|
|
117
|
+
return t.angle;
|
|
118
|
+
{
|
|
119
|
+
const r = (n = (g = this.five.work) == null ? void 0 : g.observers[i]) == null ? void 0 : n.position;
|
|
120
|
+
if (r === void 0)
|
|
121
|
+
throw new Error(`getAngleRange(): observerPosition is ${r}`);
|
|
122
|
+
const s = (() => e.stickType === "3DPoint" ? m(e.normal) : b(e.position))();
|
|
123
|
+
if (!s)
|
|
124
|
+
return;
|
|
125
|
+
const l = new C.Vector3().copy(r).sub(k(e.position)), p = s.angleTo(l) * 180 / Math.PI;
|
|
126
|
+
return t.angle = p, t.angle;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
getDistance(e, o) {
|
|
130
|
+
var f, g, n;
|
|
131
|
+
const i = (f = this.five.panoIndex) != null ? f : o;
|
|
132
|
+
if (i === void 0)
|
|
133
|
+
throw new Error(`getDistance(): fivePanoIndex is ${i}`);
|
|
134
|
+
const t = this.getCache({ panoIndex: o, id: e.id });
|
|
135
|
+
if (t.distance !== void 0)
|
|
136
|
+
return t.distance;
|
|
137
|
+
{
|
|
138
|
+
const r = (n = (g = this.five.work) == null ? void 0 : g.observers[i]) == null ? void 0 : n.position;
|
|
139
|
+
if (r === void 0)
|
|
140
|
+
throw new Error(`getDistance(): observerPosition is ${r}`);
|
|
141
|
+
const s = P(e);
|
|
142
|
+
if (!s)
|
|
143
|
+
return -1;
|
|
144
|
+
const l = r.distanceTo(s);
|
|
145
|
+
return t.distance = l, l;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
get filterPointTag() {
|
|
149
|
+
return this.tags.filter((e) => e.stickType === "2DPoint" || e.stickType === "3DPoint").filter((e) => e.position);
|
|
150
|
+
}
|
|
151
|
+
get filter2DPointTag() {
|
|
152
|
+
return this.tags.filter((e) => e.stickType === "2DPoint").filter((e) => e.position);
|
|
153
|
+
}
|
|
154
|
+
get filter3DPointTag() {
|
|
155
|
+
return this.tags.filter((e) => e.stickType === "3DPoint").filter((e) => e.position);
|
|
156
|
+
}
|
|
157
|
+
get filterImageModel() {
|
|
158
|
+
return this.tags.filter((e) => this.can("renderByMesh", e));
|
|
159
|
+
}
|
|
160
|
+
get filterModelTag() {
|
|
161
|
+
return this.tags.filter((e) => e.stickType === "Model");
|
|
162
|
+
}
|
|
163
|
+
get filter3DTag() {
|
|
164
|
+
return this.tags.filter((e) => e.stickType === "3DPoint" || e.stickType === "Plane" || e.stickType === "Model").filter((e) => !this.can("renderByMesh", e));
|
|
165
|
+
}
|
|
166
|
+
checkDisposed() {
|
|
167
|
+
return this.store.disposed ? (console.error("PanoTagPluginController has been disposed"), !0) : !1;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
export {
|
|
171
|
+
z as TagUtil
|
|
172
|
+
};
|