@realsee/dnalogel 2.22.0-dev.6 → 2.22.0-dev.7
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/index.cjs.js +23 -23
- package/dist/index.js +835 -833
- package/dist/index.umd.js +23 -23
- package/docs/classes/CSS3DRender.html +3 -3
- package/docs/classes/CruisePluginController.html +3 -3
- package/docs/classes/GuideLineItem.GuideLineItem.html +3 -3
- package/docs/classes/GuideLineModeItem.GuideLineModeItem.html +3 -3
- package/docs/classes/Magnifier.html +3 -3
- package/docs/classes/ModelRoomLabelController.html +3 -3
- package/docs/classes/Object3DHelperController.html +3 -3
- package/docs/classes/PaintBrush.html +3 -3
- package/docs/classes/PanoMeasurePluginLine.html +3 -3
- package/docs/classes/PanoMeasurePluginModel.html +3 -3
- package/docs/classes/PanoMeasurePluginPoint.html +3 -3
- package/docs/classes/PanoMeasurePluginPolyline.html +3 -3
- package/docs/classes/PanoTagPluginController.html +3 -3
- package/docs/classes/Util.BetterTween.html +3 -3
- package/docs/classes/Util.Interval.html +3 -3
- package/docs/classes/Util.Magnifier.html +3 -3
- package/docs/classes/Util.PointDomHelper.html +3 -3
- package/docs/classes/Util.PointHelper.html +3 -3
- package/docs/classes/Util.PointSelectorHelper.html +3 -3
- package/docs/classes/Util.Rectangle.html +3 -3
- package/docs/enums/CameraMovementEffect.html +3 -3
- package/docs/enums/ContentType.html +3 -3
- package/docs/enums/DIRECTION.html +3 -3
- package/docs/enums/DISPLAY_STRATEGY_TYPE.html +3 -3
- package/docs/enums/DimensionType.html +3 -3
- package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +3 -3
- package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +3 -3
- package/docs/enums/PaintBrushTypeEnum.html +3 -3
- package/docs/enums/PointType.html +3 -3
- package/docs/enums/Rotation.html +3 -3
- package/docs/functions/CSS3DRenderPlugin.html +3 -3
- package/docs/functions/CameraMovementPlugin.html +3 -3
- package/docs/functions/CruisePlugin.html +3 -3
- package/docs/functions/GuideLinePlugin.html +3 -3
- package/docs/functions/ItemLabelPlugin.html +3 -3
- package/docs/functions/MapviewFloorplanPlugin.html +3 -3
- package/docs/functions/ModelChassisCompassPlugin.html +3 -3
- package/docs/functions/ModelEntryDoorGuidePlugin.html +3 -3
- package/docs/functions/ModelFloorplanPlugin.html +3 -3
- package/docs/functions/ModelItemLabelPlugin.html +3 -3
- package/docs/functions/ModelRoomLabelPlugin.html +3 -3
- package/docs/functions/ModelTVVideoPlugin.html +3 -3
- package/docs/functions/ModelViewPlugin.html +3 -3
- package/docs/functions/Object3DHelperPlugin.html +3 -3
- package/docs/functions/PanoCompassPlugin.html +3 -3
- package/docs/functions/PanoCursorRaycasterPlugin.html +3 -3
- package/docs/functions/PanoDoorLabelPlugin.html +3 -3
- package/docs/functions/PanoFloorplanRadarPlugin.html +3 -3
- package/docs/functions/PanoMeasurePlugin.html +3 -3
- package/docs/functions/PanoRulerPlugin.html +3 -3
- package/docs/functions/PanoRulerProPlugin.html +3 -3
- package/docs/functions/PanoSpatialTagPlugin.html +3 -3
- package/docs/functions/PanoTagPlugin.html +3 -3
- package/docs/functions/PanoVideoPlugin.html +3 -3
- package/docs/functions/TopviewFloorplanPlugin.html +3 -3
- package/docs/functions/Util.absoluteUrl.html +3 -3
- package/docs/functions/Util.getCoordsFromClient.html +3 -3
- package/docs/functions/Util.getCoordsFromElement.html +3 -3
- package/docs/functions/Util.getFrameTime.html +3 -3
- package/docs/functions/Util.getIntersectFromRelativePosition.html +3 -3
- package/docs/functions/Util.getRaycasterFromFivePointer.html +3 -3
- package/docs/functions/Util.isAbsoluteURL.html +3 -3
- package/docs/functions/Util.isModelLike.html +3 -3
- package/docs/functions/Util.isNil.html +3 -3
- package/docs/functions/Util.isPanoramaLike.html +3 -3
- package/docs/functions/Util.nextFrame.html +3 -3
- package/docs/functions/Util.notNil.html +3 -3
- package/docs/functions/Util.requestAnimationFrameInterval.html +3 -3
- package/docs/functions/Util.tweenProgress.html +3 -3
- package/docs/functions/Util.uuid.html +3 -3
- package/docs/functions/pluginFlag.html +3 -3
- package/docs/index.html +4 -4
- package/docs/interfaces/AddTagConfig.html +3 -3
- package/docs/interfaces/CSS3DRenderPluginEventMap.html +3 -3
- package/docs/interfaces/CSS3DRenderPluginState.html +3 -3
- package/docs/interfaces/CameraMovementPluginExportType.html +3 -3
- package/docs/interfaces/CruisePluginTypes.Config.html +3 -3
- package/docs/interfaces/CruisePluginTypes.CruiseKeyframe.html +3 -3
- package/docs/interfaces/CruisePluginTypes.EventMap.html +3 -3
- package/docs/interfaces/CruisePluginTypes.MoveAction.html +3 -3
- package/docs/interfaces/CruisePluginTypes.MoveWithKeyframesAction.html +3 -3
- package/docs/interfaces/CruisePluginTypes.MoveWithPanoIndexAction.html +3 -3
- package/docs/interfaces/CruisePluginTypes.PluginData.html +3 -3
- package/docs/interfaces/CruisePluginTypes.PluginServerData.html +3 -3
- package/docs/interfaces/CruisePluginTypes.PluginState.html +3 -3
- package/docs/interfaces/EventMap.html +3 -3
- package/docs/interfaces/FloorplanBounding.html +3 -3
- package/docs/interfaces/FloorplanData.html +3 -3
- package/docs/interfaces/FloorplanEntrance.html +3 -3
- package/docs/interfaces/FloorplanExtraObject.html +3 -3
- package/docs/interfaces/FloorplanExtraObject3D.html +3 -3
- package/docs/interfaces/FloorplanFloorData.html +3 -3
- package/docs/interfaces/FloorplanImagePosition.html +3 -3
- package/docs/interfaces/FloorplanObserver.html +3 -3
- package/docs/interfaces/FloorplanOutlineItem.html +3 -3
- package/docs/interfaces/FloorplanPosition.html +3 -3
- package/docs/interfaces/FloorplanRoomItem.html +3 -3
- package/docs/interfaces/FloorplanRoomLabelItem.html +3 -3
- package/docs/interfaces/FloorplanServerBounding.html +3 -3
- package/docs/interfaces/FloorplanServerComputedData.html +3 -3
- package/docs/interfaces/FloorplanServerData.html +3 -3
- package/docs/interfaces/FloorplanServerDoorItem.html +3 -3
- package/docs/interfaces/FloorplanServerDoorPosition.html +3 -3
- package/docs/interfaces/FloorplanServerEntrance.html +3 -3
- package/docs/interfaces/FloorplanServerFloorData.html +3 -3
- package/docs/interfaces/FloorplanServerImagePosition.html +3 -3
- package/docs/interfaces/FloorplanServerObserver.html +3 -3
- package/docs/interfaces/FloorplanServerOutlineItem.html +3 -3
- package/docs/interfaces/FloorplanServerPosition.html +3 -3
- package/docs/interfaces/FloorplanServerRoomItem.html +3 -3
- package/docs/interfaces/FloorplanServerRoomLabelItem.html +3 -3
- package/docs/interfaces/GuideLineModeItem.GuideLineTagContainer.html +3 -3
- package/docs/interfaces/GuideLinePluginType.CatmullRomCurve3.html +3 -3
- package/docs/interfaces/GuideLinePluginType.EventMap.html +3 -3
- package/docs/interfaces/GuideLinePluginType.GuideLineGeometryStyle.html +3 -3
- package/docs/interfaces/GuideLinePluginType.GuideLineItemContainer.html +3 -3
- package/docs/interfaces/GuideLinePluginType.GuideLineMaterialStyle.html +3 -3
- package/docs/interfaces/GuideLinePluginType.LineGeometriesConfig.html +3 -3
- package/docs/interfaces/GuideLinePluginType.ModelGuideLineStyle.html +3 -3
- package/docs/interfaces/GuideLinePluginType.ModelGuideLineTagData.html +3 -3
- package/docs/interfaces/GuideLinePluginType.PanoramaGuideLineStyle.html +3 -3
- package/docs/interfaces/GuideLinePluginType.PluginDataV2.html +3 -3
- package/docs/interfaces/GuideLinePluginType.PluginServerData.html +3 -3
- package/docs/interfaces/GuideLinePluginType.PluginState.html +3 -3
- package/docs/interfaces/GuideLinePluginType.Route.html +3 -3
- package/docs/interfaces/GuideLinePluginType.RouteConfig.html +3 -3
- package/docs/interfaces/HelperOffset.html +3 -3
- package/docs/interfaces/ImagePlaneGroup.html +3 -3
- package/docs/interfaces/ItemLabelPluginData.html +3 -3
- package/docs/interfaces/ItemLabelPluginExportReturnsType.html +3 -3
- package/docs/interfaces/ItemLabelPluginParametersType.html +3 -3
- package/docs/interfaces/MinMax.html +3 -3
- package/docs/interfaces/ModelChassisCompassPluginData.html +3 -3
- package/docs/interfaces/ModelChassisCompassPluginExportType.html +3 -3
- package/docs/interfaces/ModelChassisCompassPluginParameterType.html +3 -3
- package/docs/interfaces/ModelEntryDoorGuidePluginData.html +3 -3
- package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +3 -3
- package/docs/interfaces/ModelItemLabelPluginData.html +3 -3
- package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +3 -3
- package/docs/interfaces/ModelItemLabelPluginParametersType.html +3 -3
- package/docs/interfaces/ModelRoomLabelPluginData.html +3 -3
- package/docs/interfaces/ModelTVVideoPluginData.html +3 -3
- package/docs/interfaces/ModelTVVideoPluginExportType.html +3 -3
- package/docs/interfaces/ModelTVVideoPluginParameterType.html +3 -3
- package/docs/interfaces/ModelViewPluginExportType.html +3 -3
- package/docs/interfaces/Object3DHelperState.html +3 -3
- package/docs/interfaces/ObjectHelperControllers.html +3 -3
- package/docs/interfaces/PaintBrushAction.html +3 -3
- package/docs/interfaces/PaintBrushConfigs.html +3 -3
- package/docs/interfaces/PaintBrushState.html +3 -3
- package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +3 -3
- package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +3 -3
- package/docs/interfaces/PanoMeasureParameterType.html +3 -3
- package/docs/interfaces/PanoMeasurePluginLineJson.html +3 -3
- package/docs/interfaces/PanoMeasurePluginOpenParameter.html +3 -3
- package/docs/interfaces/PanoMeasurePluginPointJson.html +3 -3
- package/docs/interfaces/PanoMeasurePluginPolylineJson.html +3 -3
- package/docs/interfaces/PanoRulerPluginExportType.html +3 -3
- package/docs/interfaces/PanoRulerPluginOptions.html +3 -3
- package/docs/interfaces/PanoRulerPluginParameterType.html +3 -3
- package/docs/interfaces/PanoRulerProPluginExportType.html +3 -3
- package/docs/interfaces/PanoRulerProPluginOptions.html +3 -3
- package/docs/interfaces/PanoRulerProPluginParameterType.html +3 -3
- package/docs/interfaces/PanoRulerProPluginState.html +3 -3
- package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +3 -3
- package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +3 -3
- package/docs/interfaces/PanoSpatialTagPluginData.html +3 -3
- package/docs/interfaces/PanoSpatialTagPluginDataElement.html +3 -3
- package/docs/interfaces/PanoSpatialTagPluginExportType.html +3 -3
- package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +3 -3
- package/docs/interfaces/PanoSpatialTagPluginParameterType.html +3 -3
- package/docs/interfaces/PanoSpatialTagPluginPointElement.html +3 -3
- package/docs/interfaces/PanoSpatialTagPluginTagElement.html +3 -3
- package/docs/interfaces/PanoVideoPluginType.LoadParams.html +3 -3
- package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +3 -3
- package/docs/interfaces/PanoVideoPluginType.PluginData.html +3 -3
- package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +3 -3
- package/docs/interfaces/PanoVideoPluginType.PluginState.html +3 -3
- package/docs/interfaces/PanoVideoPluginType.VideoItem.html +3 -3
- package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +3 -3
- package/docs/interfaces/Point.html +3 -3
- package/docs/interfaces/Room.html +3 -3
- package/docs/interfaces/RoomInfo.html +3 -3
- package/docs/interfaces/RoomLabel.html +3 -3
- package/docs/interfaces/RoomRules.html +3 -3
- package/docs/interfaces/Rooms.html +3 -3
- package/docs/interfaces/Scissor.html +3 -3
- package/docs/interfaces/State.html +3 -3
- package/docs/interfaces/TagCacheInterface.html +3 -3
- package/docs/interfaces/TagConfig.html +3 -3
- package/docs/interfaces/TagGLTFObjectGroup.html +3 -3
- package/docs/interfaces/TagIconUrl.html +3 -3
- package/docs/interfaces/TagObjectGroup.html +3 -3
- package/docs/interfaces/TagStyle.html +3 -3
- package/docs/interfaces/Tags.html +3 -3
- package/docs/interfaces/TemporaryState.html +3 -3
- package/docs/interfaces/Util.MagnifierParameter.html +3 -3
- package/docs/interfaces/Util.MouseGroupParameter.html +3 -3
- package/docs/interfaces/Util.PointIntersection.html +3 -3
- package/docs/modules/CruisePluginTypes.html +3 -3
- package/docs/modules/GuideLineItem.html +3 -3
- package/docs/modules/GuideLineModeItem.html +3 -3
- package/docs/modules/GuideLinePluginType.html +3 -3
- package/docs/modules/PanoVideoPluginType.html +3 -3
- package/docs/modules/Util.html +3 -3
- package/docs/modules.html +4 -4
- package/docs/types/ArrayPosition.html +3 -3
- package/docs/types/AudioAppearance.html +3 -3
- package/docs/types/AudioTagTypeConfigKey.html +3 -3
- package/docs/types/CSS3DRenderExportType.html +3 -3
- package/docs/types/CSS3DRenderPluginExportType.html +3 -3
- package/docs/types/CSS3DRenderPluginParameterType.html +3 -3
- package/docs/types/ClassFunctionParameters.html +3 -3
- package/docs/types/Color.html +3 -3
- package/docs/types/ContentTypeConfigKey.html +3 -3
- package/docs/types/ContentTypeConfigKeySplit.html +3 -3
- package/docs/types/ContentTypeMap.html +3 -3
- package/docs/types/Create3DDomContainerReturnType.html +3 -3
- package/docs/types/Create3DElementReturnType.html +3 -3
- package/docs/types/CruisePluginExportType.html +3 -3
- package/docs/types/CruisePluginTypes.CruiseData.html +3 -3
- package/docs/types/CruisePluginTypes.MoveEffect.html +3 -3
- package/docs/types/DeprecatedMediaPlaneProperty.html +3 -3
- package/docs/types/DeprecatedTagProperty.html +3 -3
- package/docs/types/Direction-1.html +3 -3
- package/docs/types/Direction4.html +3 -3
- package/docs/types/ElementRenderer.html +3 -3
- package/docs/types/FloorplanRuleLabels.html +3 -3
- package/docs/types/FloorplanServerRuleLabels.html +3 -3
- package/docs/types/GuideLinePluginExportType.html +3 -3
- package/docs/types/GuideLinePluginType.GuideLineItem.html +3 -3
- package/docs/types/GuideLinePluginType.GuideLineItemEventMap.html +3 -3
- package/docs/types/GuideLinePluginType.GuideLineModeItemMode.html +3 -3
- package/docs/types/GuideLinePluginType.GuideLineStyle.html +3 -3
- package/docs/types/GuideLinePluginType.ModelGuideLineTag.html +3 -3
- package/docs/types/GuideLinePluginType.PathItem.html +3 -3
- package/docs/types/GuideLinePluginType.PluginData.html +3 -3
- package/docs/types/HelperEventMap.html +3 -3
- package/docs/types/LoadTagConfig.html +3 -3
- package/docs/types/MapviewFloorplanPluginParameterType.html +3 -3
- package/docs/types/MapviewFloorplanPluginReturnType.html +3 -3
- package/docs/types/MediaData.html +3 -3
- package/docs/types/MediaStore.html +3 -3
- package/docs/types/ModelEntryDoorGuidePluginParameterType.html +3 -3
- package/docs/types/ModelFloorplanPluginParameterType.html +3 -3
- package/docs/types/ModelFloorplanPluginReturnType.html +3 -3
- package/docs/types/ModelRoomLabelPluginParameters.html +3 -3
- package/docs/types/ModelRoomLabelPluginReturnType.html +3 -3
- package/docs/types/MoveArgs.html +3 -3
- package/docs/types/MoveOpts.html +3 -3
- package/docs/types/Object3DHelperEventMap.html +3 -3
- package/docs/types/ObjectFit.html +3 -3
- package/docs/types/PaintBrushEventMap.html +3 -3
- package/docs/types/PanoCompassPluginData.html +3 -3
- package/docs/types/PanoCompassPluginExportType.html +3 -3
- package/docs/types/PanoCompassPluginParameterType.html +3 -3
- package/docs/types/PanoFloorplanRadarPluginParameterType.html +3 -3
- package/docs/types/PanoFloorplanRadarPluginReturnType.html +3 -3
- package/docs/types/PanoIndex.html +3 -3
- package/docs/types/PanoMeasurePluginEvent.html +3 -3
- package/docs/types/PanoMeasureReturnType.html +3 -3
- package/docs/types/PanoSpatialTagPluginId.html +3 -3
- package/docs/types/PanoTagPluginExportInterface.html +3 -3
- package/docs/types/PanoTagPluginParamsInterface.html +3 -3
- package/docs/types/PanoVideoPluginParameterType.html +3 -3
- package/docs/types/PanoVideoPluginReturnType.html +3 -3
- package/docs/types/PickTagContentTypeInContentTypeConfigKey.html +3 -3
- package/docs/types/PlaneTag.html +3 -3
- package/docs/types/Point2DTag.html +3 -3
- package/docs/types/Point3DTag.html +3 -3
- package/docs/types/PointTag.html +3 -3
- package/docs/types/PointTagInstance.html +3 -3
- package/docs/types/Position.html +3 -3
- package/docs/types/RotateArgs.html +3 -3
- package/docs/types/RotateOpts.html +3 -3
- package/docs/types/RuleLabelsKey.html +3 -3
- package/docs/types/RuleLabelsValue.html +3 -3
- package/docs/types/StickType.html +3 -3
- package/docs/types/Tag.html +3 -3
- package/docs/types/Tag2D.html +3 -3
- package/docs/types/Tag3D.html +3 -3
- package/docs/types/TagContentType.html +3 -3
- package/docs/types/TagDimensionType.html +3 -3
- package/docs/types/TagElement.html +3 -3
- package/docs/types/TagEvents.html +3 -3
- package/docs/types/TagGLTFObject.html +3 -3
- package/docs/types/TagHooks.html +3 -3
- package/docs/types/TagId.html +3 -3
- package/docs/types/TagInstance.html +3 -3
- package/docs/types/TagPointType.html +3 -3
- package/docs/types/TagRendererMap.html +3 -3
- package/docs/types/TopviewFloorplanPluginParameterType.html +3 -3
- package/docs/types/TopviewFloorplanPluginReturnType.html +3 -3
- package/docs/types/WorkCode.html +3 -3
- package/docs/variables/FLOOR_TYPE_MAP.html +3 -3
- package/docs/variables/PLUGIN.html +3 -3
- package/docs/variables/ROOM_FETILE_TYPE_MAP.html +3 -3
- package/docs/variables/ROOM_TYPE_MAP.html +3 -3
- package/docs/variables/itemLabelPluginServerParams.html +3 -3
- package/docs/variables/modelItemLabelPluginServerParams.html +3 -3
- package/docs/variables/modelRoomLabelPluginServerParams.html +3 -3
- package/libs/PanoMeasurePlugin/Components/Tip.js +64 -62
- package/libs/base/BasePlugin.js +1 -1
- package/libs/shared-utils/logger.js +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var $u=Object.defineProperty,ef=Object.defineProperties;var tf=Object.getOwnPropertyDescriptors;var Xa=Object.getOwnPropertySymbols;var nf=Object.prototype.hasOwnProperty,sf=Object.prototype.propertyIsEnumerable;var Ar=(i,t,e)=>t in i?$u(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e,H=(i,t)=>{for(var e in t||(t={}))nf.call(t,e)&&Ar(i,e,t[e]);if(Xa)for(var e of Xa(t))sf.call(t,e)&&Ar(i,e,t[e]);return i},Ae=(i,t)=>ef(i,tf(t));var f=(i,t,e)=>(Ar(i,typeof t!="symbol"?t+"":t,e),e);var U=(i,t,e)=>new Promise((n,s)=>{var o=l=>{try{a(e.next(l))}catch(c){s(c)}},r=l=>{try{a(e.throw(l))}catch(c){s(c)}},a=l=>l.done?n(l.value):Promise.resolve(l.value).then(o,r);a((e=e.apply(i,t)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Te=require("@realsee/five"),R=require("three"),Us=require("three/examples/jsm/renderers/CSS3DRenderer"),ss=require("hammerjs"),sh=require("@realsee/five/line"),oh=require("three/examples/jsm/loaders/FBXLoader"),of=require("earcut"),Za=require("animejs"),rf=require("@realsee/five/gltf-loader");function af(i){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(i){for(const e in i)if(e!=="default"){const n=Object.getOwnPropertyDescriptor(i,e);Object.defineProperty(t,e,n.get?n:{enumerable:!0,get:()=>i[e]})}}return t.default=i,Object.freeze(t)}const E=af(R);function lf(){console.debug("%c %c@realsee/dnalogel %cv2.22.0-dev.6",["background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAMCAMAAACHgmeRAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABLFBMVEUAAAAapPoap/oaqvkbrfkbr/gZnfwZoPsaqfnD4v/E4/8Ylv0clPm93/+/4P/B4f8Yj/683/8Wif+33P8Uhv+x2f8ShP+s1v8Pgf+n0/8Nf/+h0f8Lff8Lff8Nf/9dl/+czv8KfP8KfP+Lxf+Uyv+Xy/+Hwv+Jw/+Mxf+Oxv+RyP8aovsapfoap/oZmfwZm/wZnvsYnPsYkf4YlP0NePsDYfgYcfi43f+63v8Xiv8Xjf4EWfwCV/sWZ/qz2v+02/8Vh/8WiP8EUf8CTf4WXv2u1/+v2P8Thf8Thv8ETf8CR/8VV/+o1f+q1f8Qgv8Rg/8DSv8BRf8UVP+j0v+k0v8OgP8Pgf8DR/8DQv9Nhf+dzv+fz/+Kv/+Vyv+Xy/+azf+Oxv+Qx/+SyP////8MUhLdAAAAK3RSTlMACEWQ2bd98uQECPXxqO7c+Pb49vj2+Pb49vj23Oul8fMHA+TwerXXjEIG2P+bHgAAAAFiS0dEY1y+LaoAAAB+SURBVAjXY2BgZGJmYWVgYGBgY9fW0eVg4ORi4NbTNzDk4eXjZxAwMjYxNTO3EGQQsrSytrG1sxdmEHFwdHJ2cXUTZRBz9/D08vbxFWeQ8PMPCAwKDpFkkAoNC4+IjIqWZpCRlZOPiY2LV2BQVGJQTkhMUlEFWaOmrqGpxQAAyg0S9Dq+VPYAAAAASUVORK5CYII=')","background-repeat: no-repeat","background-position: 0 center","padding-left: 8px"].join(";"),"","background-color: #12ce9b;color:black;padding:0 6px;border-radius: 3px")}function cf(){const i=typeof OffscreenCanvas!="undefined",t=i&&new OffscreenCanvas(1,1).getContext("webgl")!==null;i&&!t&&Object.assign(window,{OffscreenCanvas:function(e,n){const s=document.createElement("canvas");return s.width=e,s.height=n,s}})}function rh(){}const Ja=()=>Promise.resolve(),qa={__queue:Promise.resolve()};function df(i=Ja){qa.__queue=qa.__queue.then(i).catch(Ja)}function Is(i,t,e){const n=i.x,s=i.y,o=Math.floor(n/t*1e4)/1e4,r=Math.floor(s/e*1e4)/1e4;return{x:o,y:r}}function vr(i,t,e){const{x:n,y:s}=i,o=n*t,r=s*e;return{x:o,y:r}}function Ps(i){if(i.length<2)return{};const t=i.slice(-2),e=t[0],n={x:(t[0].x+t[1].x)/2,y:(t[0].y+t[1].y)/2};return{control:e,end:n}}function hf(i,t,e=rh){new Promise(n=>{setTimeout(()=>{e(),n(!0)},t*i)})}const uf=window,Ka=window.requestAnimationFrame||uf.webkitRequestAnimationFrame||(i=>setTimeout(i,16));function Hs(i,t=0){t<=0?Ka(i):Ka(()=>Hs(i,t-1))}var Dt=Object.freeze({Linear:Object.freeze({None:function(i){return i},In:function(i){return this.None(i)},Out:function(i){return this.None(i)},InOut:function(i){return this.None(i)}}),Quadratic:Object.freeze({In:function(i){return i*i},Out:function(i){return i*(2-i)},InOut:function(i){return(i*=2)<1?.5*i*i:-.5*(--i*(i-2)-1)}}),Cubic:Object.freeze({In:function(i){return i*i*i},Out:function(i){return--i*i*i+1},InOut:function(i){return(i*=2)<1?.5*i*i*i:.5*((i-=2)*i*i+2)}}),Quartic:Object.freeze({In:function(i){return i*i*i*i},Out:function(i){return 1- --i*i*i*i},InOut:function(i){return(i*=2)<1?.5*i*i*i*i:-.5*((i-=2)*i*i*i-2)}}),Quintic:Object.freeze({In:function(i){return i*i*i*i*i},Out:function(i){return--i*i*i*i*i+1},InOut:function(i){return(i*=2)<1?.5*i*i*i*i*i:.5*((i-=2)*i*i*i*i+2)}}),Sinusoidal:Object.freeze({In:function(i){return 1-Math.sin((1-i)*Math.PI/2)},Out:function(i){return Math.sin(i*Math.PI/2)},InOut:function(i){return .5*(1-Math.sin(Math.PI*(.5-i)))}}),Exponential:Object.freeze({In:function(i){return i===0?0:Math.pow(1024,i-1)},Out:function(i){return i===1?1:1-Math.pow(2,-10*i)},InOut:function(i){return i===0?0:i===1?1:(i*=2)<1?.5*Math.pow(1024,i-1):.5*(-Math.pow(2,-10*(i-1))+2)}}),Circular:Object.freeze({In:function(i){return 1-Math.sqrt(1-i*i)},Out:function(i){return Math.sqrt(1- --i*i)},InOut:function(i){return(i*=2)<1?-.5*(Math.sqrt(1-i*i)-1):.5*(Math.sqrt(1-(i-=2)*i)+1)}}),Elastic:Object.freeze({In:function(i){return i===0?0:i===1?1:-Math.pow(2,10*(i-1))*Math.sin((i-1.1)*5*Math.PI)},Out:function(i){return i===0?0:i===1?1:Math.pow(2,-10*i)*Math.sin((i-.1)*5*Math.PI)+1},InOut:function(i){return i===0?0:i===1?1:(i*=2,i<1?-.5*Math.pow(2,10*(i-1))*Math.sin((i-1.1)*5*Math.PI):.5*Math.pow(2,-10*(i-1))*Math.sin((i-1.1)*5*Math.PI)+1)}}),Back:Object.freeze({In:function(i){var t=1.70158;return i===1?1:i*i*((t+1)*i-t)},Out:function(i){var t=1.70158;return i===0?0:--i*i*((t+1)*i+t)+1},InOut:function(i){var t=2.5949095;return(i*=2)<1?.5*(i*i*((t+1)*i-t)):.5*((i-=2)*i*((t+1)*i+t)+2)}}),Bounce:Object.freeze({In:function(i){return 1-Dt.Bounce.Out(1-i)},Out:function(i){return i<1/2.75?7.5625*i*i:i<2/2.75?7.5625*(i-=1.5/2.75)*i+.75:i<2.5/2.75?7.5625*(i-=2.25/2.75)*i+.9375:7.5625*(i-=2.625/2.75)*i+.984375},InOut:function(i){return i<.5?Dt.Bounce.In(i*2)*.5:Dt.Bounce.Out(i*2-1)*.5+.5}}),generatePow:function(i){return i===void 0&&(i=4),i=i<Number.EPSILON?Number.EPSILON:i,i=i>1e4?1e4:i,{In:function(t){return Math.pow(t,i)},Out:function(t){return 1-Math.pow(1-t,i)},InOut:function(t){return t<.5?Math.pow(t*2,i)/2:(1-Math.pow(2-t*2,i))/2+.5}}}}),ti=function(){return performance.now()},ah=function(){function i(){this._tweens={},this._tweensAddedDuringUpdate={}}return i.prototype.getAll=function(){var t=this;return Object.keys(this._tweens).map(function(e){return t._tweens[e]})},i.prototype.removeAll=function(){this._tweens={}},i.prototype.add=function(t){this._tweens[t.getId()]=t,this._tweensAddedDuringUpdate[t.getId()]=t},i.prototype.remove=function(t){delete this._tweens[t.getId()],delete this._tweensAddedDuringUpdate[t.getId()]},i.prototype.update=function(t,e){t===void 0&&(t=ti()),e===void 0&&(e=!1);var n=Object.keys(this._tweens);if(n.length===0)return!1;for(;n.length>0;){this._tweensAddedDuringUpdate={};for(var s=0;s<n.length;s++){var o=this._tweens[n[s]],r=!e;o&&o.update(t,r)===!1&&!e&&delete this._tweens[n[s]]}n=Object.keys(this._tweensAddedDuringUpdate)}return!0},i}(),Mn={Linear:function(i,t){var e=i.length-1,n=e*t,s=Math.floor(n),o=Mn.Utils.Linear;return t<0?o(i[0],i[1],n):t>1?o(i[e],i[e-1],e-n):o(i[s],i[s+1>e?e:s+1],n-s)},Bezier:function(i,t){for(var e=0,n=i.length-1,s=Math.pow,o=Mn.Utils.Bernstein,r=0;r<=n;r++)e+=s(1-t,n-r)*s(t,r)*i[r]*o(n,r);return e},CatmullRom:function(i,t){var e=i.length-1,n=e*t,s=Math.floor(n),o=Mn.Utils.CatmullRom;return i[0]===i[e]?(t<0&&(s=Math.floor(n=e*(1+t))),o(i[(s-1+e)%e],i[s],i[(s+1)%e],i[(s+2)%e],n-s)):t<0?i[0]-(o(i[0],i[0],i[1],i[1],-n)-i[0]):t>1?i[e]-(o(i[e],i[e],i[e-1],i[e-1],n-e)-i[e]):o(i[s?s-1:0],i[s],i[e<s+1?e:s+1],i[e<s+2?e:s+2],n-s)},Utils:{Linear:function(i,t,e){return(t-i)*e+i},Bernstein:function(i,t){var e=Mn.Utils.Factorial;return e(i)/e(t)/e(i-t)},Factorial:function(){var i=[1];return function(t){var e=1;if(i[t])return i[t];for(var n=t;n>1;n--)e*=n;return i[t]=e,e}}(),CatmullRom:function(i,t,e,n,s){var o=(e-i)*.5,r=(n-t)*.5,a=s*s,l=s*a;return(2*t-2*e+o+r)*l+(-3*t+3*e-2*o-r)*a+o*s+t}}},la=function(){function i(){}return i.nextId=function(){return i._nextId++},i._nextId=0,i}(),Nr=new ah,mo=function(){function i(t,e){e===void 0&&(e=Nr),this._object=t,this._group=e,this._isPaused=!1,this._pauseStart=0,this._valuesStart={},this._valuesEnd={},this._valuesStartRepeat={},this._duration=1e3,this._isDynamic=!1,this._initialRepeat=0,this._repeat=0,this._yoyo=!1,this._isPlaying=!1,this._reversed=!1,this._delayTime=0,this._startTime=0,this._easingFunction=Dt.Linear.None,this._interpolationFunction=Mn.Linear,this._chainedTweens=[],this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._id=la.nextId(),this._isChainStopped=!1,this._propertiesAreSetUp=!1,this._goToEnd=!1}return i.prototype.getId=function(){return this._id},i.prototype.isPlaying=function(){return this._isPlaying},i.prototype.isPaused=function(){return this._isPaused},i.prototype.to=function(t,e){if(e===void 0&&(e=1e3),this._isPlaying)throw new Error("Can not call Tween.to() while Tween is already started or paused. Stop the Tween first.");return this._valuesEnd=t,this._propertiesAreSetUp=!1,this._duration=e,this},i.prototype.duration=function(t){return t===void 0&&(t=1e3),this._duration=t,this},i.prototype.dynamic=function(t){return t===void 0&&(t=!1),this._isDynamic=t,this},i.prototype.start=function(t,e){if(t===void 0&&(t=ti()),e===void 0&&(e=!1),this._isPlaying)return this;if(this._group&&this._group.add(this),this._repeat=this._initialRepeat,this._reversed){this._reversed=!1;for(var n in this._valuesStartRepeat)this._swapEndStartRepeatValues(n),this._valuesStart[n]=this._valuesStartRepeat[n]}if(this._isPlaying=!0,this._isPaused=!1,this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._isChainStopped=!1,this._startTime=t,this._startTime+=this._delayTime,!this._propertiesAreSetUp||e){if(this._propertiesAreSetUp=!0,!this._isDynamic){var s={};for(var o in this._valuesEnd)s[o]=this._valuesEnd[o];this._valuesEnd=s}this._setupProperties(this._object,this._valuesStart,this._valuesEnd,this._valuesStartRepeat,e)}return this},i.prototype.startFromCurrentValues=function(t){return this.start(t,!0)},i.prototype._setupProperties=function(t,e,n,s,o){for(var r in n){var a=t[r],l=Array.isArray(a),c=l?"array":typeof a,d=!l&&Array.isArray(n[r]);if(!(c==="undefined"||c==="function")){if(d){var h=n[r];if(h.length===0)continue;for(var u=[a],m=0,A=h.length;m<A;m+=1){var p=this._handleRelativeValue(a,h[m]);if(isNaN(p)){d=!1,console.warn("Found invalid interpolation list. Skipping.");break}u.push(p)}d&&(n[r]=u)}if((c==="object"||l)&&a&&!d){e[r]=l?[]:{};var g=a;for(var b in g)e[r][b]=g[b];s[r]=l?[]:{};var h=n[r];if(!this._isDynamic){var y={};for(var b in h)y[b]=h[b];n[r]=h=y}this._setupProperties(g,e[r],h,s[r],o)}else(typeof e[r]=="undefined"||o)&&(e[r]=a),l||(e[r]*=1),d?s[r]=n[r].slice().reverse():s[r]=e[r]||0}}},i.prototype.stop=function(){return this._isChainStopped||(this._isChainStopped=!0,this.stopChainedTweens()),this._isPlaying?(this._group&&this._group.remove(this),this._isPlaying=!1,this._isPaused=!1,this._onStopCallback&&this._onStopCallback(this._object),this):this},i.prototype.end=function(){return this._goToEnd=!0,this.update(1/0),this},i.prototype.pause=function(t){return t===void 0&&(t=ti()),this._isPaused||!this._isPlaying?this:(this._isPaused=!0,this._pauseStart=t,this._group&&this._group.remove(this),this)},i.prototype.resume=function(t){return t===void 0&&(t=ti()),!this._isPaused||!this._isPlaying?this:(this._isPaused=!1,this._startTime+=t-this._pauseStart,this._pauseStart=0,this._group&&this._group.add(this),this)},i.prototype.stopChainedTweens=function(){for(var t=0,e=this._chainedTweens.length;t<e;t++)this._chainedTweens[t].stop();return this},i.prototype.group=function(t){return t===void 0&&(t=Nr),this._group=t,this},i.prototype.delay=function(t){return t===void 0&&(t=0),this._delayTime=t,this},i.prototype.repeat=function(t){return t===void 0&&(t=0),this._initialRepeat=t,this._repeat=t,this},i.prototype.repeatDelay=function(t){return this._repeatDelayTime=t,this},i.prototype.yoyo=function(t){return t===void 0&&(t=!1),this._yoyo=t,this},i.prototype.easing=function(t){return t===void 0&&(t=Dt.Linear.None),this._easingFunction=t,this},i.prototype.interpolation=function(t){return t===void 0&&(t=Mn.Linear),this._interpolationFunction=t,this},i.prototype.chain=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return this._chainedTweens=t,this},i.prototype.onStart=function(t){return this._onStartCallback=t,this},i.prototype.onEveryStart=function(t){return this._onEveryStartCallback=t,this},i.prototype.onUpdate=function(t){return this._onUpdateCallback=t,this},i.prototype.onRepeat=function(t){return this._onRepeatCallback=t,this},i.prototype.onComplete=function(t){return this._onCompleteCallback=t,this},i.prototype.onStop=function(t){return this._onStopCallback=t,this},i.prototype.update=function(t,e){if(t===void 0&&(t=ti()),e===void 0&&(e=!0),this._isPaused)return!0;var n,s,o=this._startTime+this._duration;if(!this._goToEnd&&!this._isPlaying){if(t>o)return!1;e&&this.start(t,!0)}if(this._goToEnd=!1,t<this._startTime)return!0;this._onStartCallbackFired===!1&&(this._onStartCallback&&this._onStartCallback(this._object),this._onStartCallbackFired=!0),this._onEveryStartCallbackFired===!1&&(this._onEveryStartCallback&&this._onEveryStartCallback(this._object),this._onEveryStartCallbackFired=!0),s=(t-this._startTime)/this._duration,s=this._duration===0||s>1?1:s;var r=this._easingFunction(s);if(this._updateProperties(this._object,this._valuesStart,this._valuesEnd,r),this._onUpdateCallback&&this._onUpdateCallback(this._object,s),s===1)if(this._repeat>0){isFinite(this._repeat)&&this._repeat--;for(n in this._valuesStartRepeat)!this._yoyo&&typeof this._valuesEnd[n]=="string"&&(this._valuesStartRepeat[n]=this._valuesStartRepeat[n]+parseFloat(this._valuesEnd[n])),this._yoyo&&this._swapEndStartRepeatValues(n),this._valuesStart[n]=this._valuesStartRepeat[n];return this._yoyo&&(this._reversed=!this._reversed),this._repeatDelayTime!==void 0?this._startTime=t+this._repeatDelayTime:this._startTime=t+this._delayTime,this._onRepeatCallback&&this._onRepeatCallback(this._object),this._onEveryStartCallbackFired=!1,!0}else{this._onCompleteCallback&&this._onCompleteCallback(this._object);for(var a=0,l=this._chainedTweens.length;a<l;a++)this._chainedTweens[a].start(this._startTime+this._duration,!1);return this._isPlaying=!1,!1}return!0},i.prototype._updateProperties=function(t,e,n,s){for(var o in n)if(e[o]!==void 0){var r=e[o]||0,a=n[o],l=Array.isArray(t[o]),c=Array.isArray(a),d=!l&&c;d?t[o]=this._interpolationFunction(a,s):typeof a=="object"&&a?this._updateProperties(t[o],r,a,s):(a=this._handleRelativeValue(r,a),typeof a=="number"&&(t[o]=r+(a-r)*s))}},i.prototype._handleRelativeValue=function(t,e){return typeof e!="string"?e:e.charAt(0)==="+"||e.charAt(0)==="-"?t+parseFloat(e):parseFloat(e)},i.prototype._swapEndStartRepeatValues=function(t){var e=this._valuesStartRepeat[t],n=this._valuesEnd[t];typeof n=="string"?this._valuesStartRepeat[t]=this._valuesStartRepeat[t]+parseFloat(n):this._valuesStartRepeat[t]=this._valuesEnd[t],this._valuesEnd[t]=e},i}(),ff="20.0.3",mf=la.nextId,Ht=Nr,gf=Ht.getAll.bind(Ht),pf=Ht.removeAll.bind(Ht),Af=Ht.add.bind(Ht),lh=Ht.remove.bind(Ht),vf=Ht.update.bind(Ht),$a={Easing:Dt,Group:ah,Interpolation:Mn,now:ti,Sequence:la,nextId:mf,Tween:mo,VERSION:ff,getAll:gf,removeAll:pf,add:Af,remove:lh,update:vf};function bf(i,t,e,n=Dt.Linear.None){const s=new mo(i).to(t,e).easing(n).start();function o(r){s.update(r)&&requestAnimationFrame(o)}return requestAnimationFrame(o),s}var qt=(i=>(i.Drawline="Drawline",i.Undo="Undo",i.Exit="Exit",i))(qt||{});const Zi=Symbol("$$PAINT_BRUSH_EVENT$$");function Es(i){return i[Zi]||(i[Zi]={}),i[Zi]}function yf(i){i[Zi]||delete i[Zi]}let wf=class{hasListener(t){const e=Es(this);return e&&e[t]&&e[t].length>0}on(t,e,n){const s=Es(this);return s[t]||(s[t]=[]),s[t].push([e,n||!1]),()=>this.off(t,e)}once(t,e){return this.on(t,e,!0)}off(t,e){if(t===void 0){yf(this);return}const n=Es(this);if(n[t]||(n[t]=[]),e===void 0){n[t].length=0;return}let s=0;for(;s<n[t].length&&n[t][s][0]!==e;s++);s<n[t].length&&n[t].splice(s,1)}emit(t,...e){let n=!1;const o=Es(this)[t]||[];for(let r of o.slice()){const[a,l=!1]=r,c=a(...e);l&&this.off(t,a),c===!1&&(n=!0)}return n}};function ln(){return((1+Math.random())*65536|0).toString(16).substring(1)}function at(){return(ln()+ln()+"-"+ln()+"-4"+ln().substr(0,3)+"-"+ln()+"-"+ln()+ln()+ln()).toLowerCase()}const Cf=`
|
|
1
|
+
"use strict";var $u=Object.defineProperty,ef=Object.defineProperties;var tf=Object.getOwnPropertyDescriptors;var Xa=Object.getOwnPropertySymbols;var nf=Object.prototype.hasOwnProperty,sf=Object.prototype.propertyIsEnumerable;var Ar=(i,t,e)=>t in i?$u(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e,H=(i,t)=>{for(var e in t||(t={}))nf.call(t,e)&&Ar(i,e,t[e]);if(Xa)for(var e of Xa(t))sf.call(t,e)&&Ar(i,e,t[e]);return i},Ae=(i,t)=>ef(i,tf(t));var f=(i,t,e)=>(Ar(i,typeof t!="symbol"?t+"":t,e),e);var U=(i,t,e)=>new Promise((n,s)=>{var o=l=>{try{a(e.next(l))}catch(c){s(c)}},r=l=>{try{a(e.throw(l))}catch(c){s(c)}},a=l=>l.done?n(l.value):Promise.resolve(l.value).then(o,r);a((e=e.apply(i,t)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Te=require("@realsee/five"),R=require("three"),Us=require("three/examples/jsm/renderers/CSS3DRenderer"),ss=require("hammerjs"),sh=require("@realsee/five/line"),oh=require("three/examples/jsm/loaders/FBXLoader"),of=require("earcut"),Za=require("animejs"),rf=require("@realsee/five/gltf-loader");function af(i){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(i){for(const e in i)if(e!=="default"){const n=Object.getOwnPropertyDescriptor(i,e);Object.defineProperty(t,e,n.get?n:{enumerable:!0,get:()=>i[e]})}}return t.default=i,Object.freeze(t)}const E=af(R);function lf(){console.debug("%c %c@realsee/dnalogel %cv2.22.0-dev.7",["background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAMCAMAAACHgmeRAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABLFBMVEUAAAAapPoap/oaqvkbrfkbr/gZnfwZoPsaqfnD4v/E4/8Ylv0clPm93/+/4P/B4f8Yj/683/8Wif+33P8Uhv+x2f8ShP+s1v8Pgf+n0/8Nf/+h0f8Lff8Lff8Nf/9dl/+czv8KfP8KfP+Lxf+Uyv+Xy/+Hwv+Jw/+Mxf+Oxv+RyP8aovsapfoap/oZmfwZm/wZnvsYnPsYkf4YlP0NePsDYfgYcfi43f+63v8Xiv8Xjf4EWfwCV/sWZ/qz2v+02/8Vh/8WiP8EUf8CTf4WXv2u1/+v2P8Thf8Thv8ETf8CR/8VV/+o1f+q1f8Qgv8Rg/8DSv8BRf8UVP+j0v+k0v8OgP8Pgf8DR/8DQv9Nhf+dzv+fz/+Kv/+Vyv+Xy/+azf+Oxv+Qx/+SyP////8MUhLdAAAAK3RSTlMACEWQ2bd98uQECPXxqO7c+Pb49vj2+Pb49vj23Oul8fMHA+TwerXXjEIG2P+bHgAAAAFiS0dEY1y+LaoAAAB+SURBVAjXY2BgZGJmYWVgYGBgY9fW0eVg4ORi4NbTNzDk4eXjZxAwMjYxNTO3EGQQsrSytrG1sxdmEHFwdHJ2cXUTZRBz9/D08vbxFWeQ8PMPCAwKDpFkkAoNC4+IjIqWZpCRlZOPiY2LV2BQVGJQTkhMUlEFWaOmrqGpxQAAyg0S9Dq+VPYAAAAASUVORK5CYII=')","background-repeat: no-repeat","background-position: 0 center","padding-left: 8px"].join(";"),"","background-color: #12ce9b;color:black;padding:0 6px;border-radius: 3px")}function cf(){const i=typeof OffscreenCanvas!="undefined",t=i&&new OffscreenCanvas(1,1).getContext("webgl")!==null;i&&!t&&Object.assign(window,{OffscreenCanvas:function(e,n){const s=document.createElement("canvas");return s.width=e,s.height=n,s}})}function rh(){}const Ja=()=>Promise.resolve(),qa={__queue:Promise.resolve()};function df(i=Ja){qa.__queue=qa.__queue.then(i).catch(Ja)}function Is(i,t,e){const n=i.x,s=i.y,o=Math.floor(n/t*1e4)/1e4,r=Math.floor(s/e*1e4)/1e4;return{x:o,y:r}}function vr(i,t,e){const{x:n,y:s}=i,o=n*t,r=s*e;return{x:o,y:r}}function Ps(i){if(i.length<2)return{};const t=i.slice(-2),e=t[0],n={x:(t[0].x+t[1].x)/2,y:(t[0].y+t[1].y)/2};return{control:e,end:n}}function hf(i,t,e=rh){new Promise(n=>{setTimeout(()=>{e(),n(!0)},t*i)})}const uf=window,Ka=window.requestAnimationFrame||uf.webkitRequestAnimationFrame||(i=>setTimeout(i,16));function Hs(i,t=0){t<=0?Ka(i):Ka(()=>Hs(i,t-1))}var Dt=Object.freeze({Linear:Object.freeze({None:function(i){return i},In:function(i){return this.None(i)},Out:function(i){return this.None(i)},InOut:function(i){return this.None(i)}}),Quadratic:Object.freeze({In:function(i){return i*i},Out:function(i){return i*(2-i)},InOut:function(i){return(i*=2)<1?.5*i*i:-.5*(--i*(i-2)-1)}}),Cubic:Object.freeze({In:function(i){return i*i*i},Out:function(i){return--i*i*i+1},InOut:function(i){return(i*=2)<1?.5*i*i*i:.5*((i-=2)*i*i+2)}}),Quartic:Object.freeze({In:function(i){return i*i*i*i},Out:function(i){return 1- --i*i*i*i},InOut:function(i){return(i*=2)<1?.5*i*i*i*i:-.5*((i-=2)*i*i*i-2)}}),Quintic:Object.freeze({In:function(i){return i*i*i*i*i},Out:function(i){return--i*i*i*i*i+1},InOut:function(i){return(i*=2)<1?.5*i*i*i*i*i:.5*((i-=2)*i*i*i*i+2)}}),Sinusoidal:Object.freeze({In:function(i){return 1-Math.sin((1-i)*Math.PI/2)},Out:function(i){return Math.sin(i*Math.PI/2)},InOut:function(i){return .5*(1-Math.sin(Math.PI*(.5-i)))}}),Exponential:Object.freeze({In:function(i){return i===0?0:Math.pow(1024,i-1)},Out:function(i){return i===1?1:1-Math.pow(2,-10*i)},InOut:function(i){return i===0?0:i===1?1:(i*=2)<1?.5*Math.pow(1024,i-1):.5*(-Math.pow(2,-10*(i-1))+2)}}),Circular:Object.freeze({In:function(i){return 1-Math.sqrt(1-i*i)},Out:function(i){return Math.sqrt(1- --i*i)},InOut:function(i){return(i*=2)<1?-.5*(Math.sqrt(1-i*i)-1):.5*(Math.sqrt(1-(i-=2)*i)+1)}}),Elastic:Object.freeze({In:function(i){return i===0?0:i===1?1:-Math.pow(2,10*(i-1))*Math.sin((i-1.1)*5*Math.PI)},Out:function(i){return i===0?0:i===1?1:Math.pow(2,-10*i)*Math.sin((i-.1)*5*Math.PI)+1},InOut:function(i){return i===0?0:i===1?1:(i*=2,i<1?-.5*Math.pow(2,10*(i-1))*Math.sin((i-1.1)*5*Math.PI):.5*Math.pow(2,-10*(i-1))*Math.sin((i-1.1)*5*Math.PI)+1)}}),Back:Object.freeze({In:function(i){var t=1.70158;return i===1?1:i*i*((t+1)*i-t)},Out:function(i){var t=1.70158;return i===0?0:--i*i*((t+1)*i+t)+1},InOut:function(i){var t=2.5949095;return(i*=2)<1?.5*(i*i*((t+1)*i-t)):.5*((i-=2)*i*((t+1)*i+t)+2)}}),Bounce:Object.freeze({In:function(i){return 1-Dt.Bounce.Out(1-i)},Out:function(i){return i<1/2.75?7.5625*i*i:i<2/2.75?7.5625*(i-=1.5/2.75)*i+.75:i<2.5/2.75?7.5625*(i-=2.25/2.75)*i+.9375:7.5625*(i-=2.625/2.75)*i+.984375},InOut:function(i){return i<.5?Dt.Bounce.In(i*2)*.5:Dt.Bounce.Out(i*2-1)*.5+.5}}),generatePow:function(i){return i===void 0&&(i=4),i=i<Number.EPSILON?Number.EPSILON:i,i=i>1e4?1e4:i,{In:function(t){return Math.pow(t,i)},Out:function(t){return 1-Math.pow(1-t,i)},InOut:function(t){return t<.5?Math.pow(t*2,i)/2:(1-Math.pow(2-t*2,i))/2+.5}}}}),ti=function(){return performance.now()},ah=function(){function i(){this._tweens={},this._tweensAddedDuringUpdate={}}return i.prototype.getAll=function(){var t=this;return Object.keys(this._tweens).map(function(e){return t._tweens[e]})},i.prototype.removeAll=function(){this._tweens={}},i.prototype.add=function(t){this._tweens[t.getId()]=t,this._tweensAddedDuringUpdate[t.getId()]=t},i.prototype.remove=function(t){delete this._tweens[t.getId()],delete this._tweensAddedDuringUpdate[t.getId()]},i.prototype.update=function(t,e){t===void 0&&(t=ti()),e===void 0&&(e=!1);var n=Object.keys(this._tweens);if(n.length===0)return!1;for(;n.length>0;){this._tweensAddedDuringUpdate={};for(var s=0;s<n.length;s++){var o=this._tweens[n[s]],r=!e;o&&o.update(t,r)===!1&&!e&&delete this._tweens[n[s]]}n=Object.keys(this._tweensAddedDuringUpdate)}return!0},i}(),Mn={Linear:function(i,t){var e=i.length-1,n=e*t,s=Math.floor(n),o=Mn.Utils.Linear;return t<0?o(i[0],i[1],n):t>1?o(i[e],i[e-1],e-n):o(i[s],i[s+1>e?e:s+1],n-s)},Bezier:function(i,t){for(var e=0,n=i.length-1,s=Math.pow,o=Mn.Utils.Bernstein,r=0;r<=n;r++)e+=s(1-t,n-r)*s(t,r)*i[r]*o(n,r);return e},CatmullRom:function(i,t){var e=i.length-1,n=e*t,s=Math.floor(n),o=Mn.Utils.CatmullRom;return i[0]===i[e]?(t<0&&(s=Math.floor(n=e*(1+t))),o(i[(s-1+e)%e],i[s],i[(s+1)%e],i[(s+2)%e],n-s)):t<0?i[0]-(o(i[0],i[0],i[1],i[1],-n)-i[0]):t>1?i[e]-(o(i[e],i[e],i[e-1],i[e-1],n-e)-i[e]):o(i[s?s-1:0],i[s],i[e<s+1?e:s+1],i[e<s+2?e:s+2],n-s)},Utils:{Linear:function(i,t,e){return(t-i)*e+i},Bernstein:function(i,t){var e=Mn.Utils.Factorial;return e(i)/e(t)/e(i-t)},Factorial:function(){var i=[1];return function(t){var e=1;if(i[t])return i[t];for(var n=t;n>1;n--)e*=n;return i[t]=e,e}}(),CatmullRom:function(i,t,e,n,s){var o=(e-i)*.5,r=(n-t)*.5,a=s*s,l=s*a;return(2*t-2*e+o+r)*l+(-3*t+3*e-2*o-r)*a+o*s+t}}},la=function(){function i(){}return i.nextId=function(){return i._nextId++},i._nextId=0,i}(),Nr=new ah,mo=function(){function i(t,e){e===void 0&&(e=Nr),this._object=t,this._group=e,this._isPaused=!1,this._pauseStart=0,this._valuesStart={},this._valuesEnd={},this._valuesStartRepeat={},this._duration=1e3,this._isDynamic=!1,this._initialRepeat=0,this._repeat=0,this._yoyo=!1,this._isPlaying=!1,this._reversed=!1,this._delayTime=0,this._startTime=0,this._easingFunction=Dt.Linear.None,this._interpolationFunction=Mn.Linear,this._chainedTweens=[],this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._id=la.nextId(),this._isChainStopped=!1,this._propertiesAreSetUp=!1,this._goToEnd=!1}return i.prototype.getId=function(){return this._id},i.prototype.isPlaying=function(){return this._isPlaying},i.prototype.isPaused=function(){return this._isPaused},i.prototype.to=function(t,e){if(e===void 0&&(e=1e3),this._isPlaying)throw new Error("Can not call Tween.to() while Tween is already started or paused. Stop the Tween first.");return this._valuesEnd=t,this._propertiesAreSetUp=!1,this._duration=e,this},i.prototype.duration=function(t){return t===void 0&&(t=1e3),this._duration=t,this},i.prototype.dynamic=function(t){return t===void 0&&(t=!1),this._isDynamic=t,this},i.prototype.start=function(t,e){if(t===void 0&&(t=ti()),e===void 0&&(e=!1),this._isPlaying)return this;if(this._group&&this._group.add(this),this._repeat=this._initialRepeat,this._reversed){this._reversed=!1;for(var n in this._valuesStartRepeat)this._swapEndStartRepeatValues(n),this._valuesStart[n]=this._valuesStartRepeat[n]}if(this._isPlaying=!0,this._isPaused=!1,this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._isChainStopped=!1,this._startTime=t,this._startTime+=this._delayTime,!this._propertiesAreSetUp||e){if(this._propertiesAreSetUp=!0,!this._isDynamic){var s={};for(var o in this._valuesEnd)s[o]=this._valuesEnd[o];this._valuesEnd=s}this._setupProperties(this._object,this._valuesStart,this._valuesEnd,this._valuesStartRepeat,e)}return this},i.prototype.startFromCurrentValues=function(t){return this.start(t,!0)},i.prototype._setupProperties=function(t,e,n,s,o){for(var r in n){var a=t[r],l=Array.isArray(a),c=l?"array":typeof a,d=!l&&Array.isArray(n[r]);if(!(c==="undefined"||c==="function")){if(d){var h=n[r];if(h.length===0)continue;for(var u=[a],m=0,A=h.length;m<A;m+=1){var p=this._handleRelativeValue(a,h[m]);if(isNaN(p)){d=!1,console.warn("Found invalid interpolation list. Skipping.");break}u.push(p)}d&&(n[r]=u)}if((c==="object"||l)&&a&&!d){e[r]=l?[]:{};var g=a;for(var v in g)e[r][v]=g[v];s[r]=l?[]:{};var h=n[r];if(!this._isDynamic){var y={};for(var v in h)y[v]=h[v];n[r]=h=y}this._setupProperties(g,e[r],h,s[r],o)}else(typeof e[r]=="undefined"||o)&&(e[r]=a),l||(e[r]*=1),d?s[r]=n[r].slice().reverse():s[r]=e[r]||0}}},i.prototype.stop=function(){return this._isChainStopped||(this._isChainStopped=!0,this.stopChainedTweens()),this._isPlaying?(this._group&&this._group.remove(this),this._isPlaying=!1,this._isPaused=!1,this._onStopCallback&&this._onStopCallback(this._object),this):this},i.prototype.end=function(){return this._goToEnd=!0,this.update(1/0),this},i.prototype.pause=function(t){return t===void 0&&(t=ti()),this._isPaused||!this._isPlaying?this:(this._isPaused=!0,this._pauseStart=t,this._group&&this._group.remove(this),this)},i.prototype.resume=function(t){return t===void 0&&(t=ti()),!this._isPaused||!this._isPlaying?this:(this._isPaused=!1,this._startTime+=t-this._pauseStart,this._pauseStart=0,this._group&&this._group.add(this),this)},i.prototype.stopChainedTweens=function(){for(var t=0,e=this._chainedTweens.length;t<e;t++)this._chainedTweens[t].stop();return this},i.prototype.group=function(t){return t===void 0&&(t=Nr),this._group=t,this},i.prototype.delay=function(t){return t===void 0&&(t=0),this._delayTime=t,this},i.prototype.repeat=function(t){return t===void 0&&(t=0),this._initialRepeat=t,this._repeat=t,this},i.prototype.repeatDelay=function(t){return this._repeatDelayTime=t,this},i.prototype.yoyo=function(t){return t===void 0&&(t=!1),this._yoyo=t,this},i.prototype.easing=function(t){return t===void 0&&(t=Dt.Linear.None),this._easingFunction=t,this},i.prototype.interpolation=function(t){return t===void 0&&(t=Mn.Linear),this._interpolationFunction=t,this},i.prototype.chain=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return this._chainedTweens=t,this},i.prototype.onStart=function(t){return this._onStartCallback=t,this},i.prototype.onEveryStart=function(t){return this._onEveryStartCallback=t,this},i.prototype.onUpdate=function(t){return this._onUpdateCallback=t,this},i.prototype.onRepeat=function(t){return this._onRepeatCallback=t,this},i.prototype.onComplete=function(t){return this._onCompleteCallback=t,this},i.prototype.onStop=function(t){return this._onStopCallback=t,this},i.prototype.update=function(t,e){if(t===void 0&&(t=ti()),e===void 0&&(e=!0),this._isPaused)return!0;var n,s,o=this._startTime+this._duration;if(!this._goToEnd&&!this._isPlaying){if(t>o)return!1;e&&this.start(t,!0)}if(this._goToEnd=!1,t<this._startTime)return!0;this._onStartCallbackFired===!1&&(this._onStartCallback&&this._onStartCallback(this._object),this._onStartCallbackFired=!0),this._onEveryStartCallbackFired===!1&&(this._onEveryStartCallback&&this._onEveryStartCallback(this._object),this._onEveryStartCallbackFired=!0),s=(t-this._startTime)/this._duration,s=this._duration===0||s>1?1:s;var r=this._easingFunction(s);if(this._updateProperties(this._object,this._valuesStart,this._valuesEnd,r),this._onUpdateCallback&&this._onUpdateCallback(this._object,s),s===1)if(this._repeat>0){isFinite(this._repeat)&&this._repeat--;for(n in this._valuesStartRepeat)!this._yoyo&&typeof this._valuesEnd[n]=="string"&&(this._valuesStartRepeat[n]=this._valuesStartRepeat[n]+parseFloat(this._valuesEnd[n])),this._yoyo&&this._swapEndStartRepeatValues(n),this._valuesStart[n]=this._valuesStartRepeat[n];return this._yoyo&&(this._reversed=!this._reversed),this._repeatDelayTime!==void 0?this._startTime=t+this._repeatDelayTime:this._startTime=t+this._delayTime,this._onRepeatCallback&&this._onRepeatCallback(this._object),this._onEveryStartCallbackFired=!1,!0}else{this._onCompleteCallback&&this._onCompleteCallback(this._object);for(var a=0,l=this._chainedTweens.length;a<l;a++)this._chainedTweens[a].start(this._startTime+this._duration,!1);return this._isPlaying=!1,!1}return!0},i.prototype._updateProperties=function(t,e,n,s){for(var o in n)if(e[o]!==void 0){var r=e[o]||0,a=n[o],l=Array.isArray(t[o]),c=Array.isArray(a),d=!l&&c;d?t[o]=this._interpolationFunction(a,s):typeof a=="object"&&a?this._updateProperties(t[o],r,a,s):(a=this._handleRelativeValue(r,a),typeof a=="number"&&(t[o]=r+(a-r)*s))}},i.prototype._handleRelativeValue=function(t,e){return typeof e!="string"?e:e.charAt(0)==="+"||e.charAt(0)==="-"?t+parseFloat(e):parseFloat(e)},i.prototype._swapEndStartRepeatValues=function(t){var e=this._valuesStartRepeat[t],n=this._valuesEnd[t];typeof n=="string"?this._valuesStartRepeat[t]=this._valuesStartRepeat[t]+parseFloat(n):this._valuesStartRepeat[t]=this._valuesEnd[t],this._valuesEnd[t]=e},i}(),ff="20.0.3",mf=la.nextId,Ht=Nr,gf=Ht.getAll.bind(Ht),pf=Ht.removeAll.bind(Ht),Af=Ht.add.bind(Ht),lh=Ht.remove.bind(Ht),vf=Ht.update.bind(Ht),$a={Easing:Dt,Group:ah,Interpolation:Mn,now:ti,Sequence:la,nextId:mf,Tween:mo,VERSION:ff,getAll:gf,removeAll:pf,add:Af,remove:lh,update:vf};function bf(i,t,e,n=Dt.Linear.None){const s=new mo(i).to(t,e).easing(n).start();function o(r){s.update(r)&&requestAnimationFrame(o)}return requestAnimationFrame(o),s}var qt=(i=>(i.Drawline="Drawline",i.Undo="Undo",i.Exit="Exit",i))(qt||{});const Zi=Symbol("$$PAINT_BRUSH_EVENT$$");function Es(i){return i[Zi]||(i[Zi]={}),i[Zi]}function yf(i){i[Zi]||delete i[Zi]}let wf=class{hasListener(t){const e=Es(this);return e&&e[t]&&e[t].length>0}on(t,e,n){const s=Es(this);return s[t]||(s[t]=[]),s[t].push([e,n||!1]),()=>this.off(t,e)}once(t,e){return this.on(t,e,!0)}off(t,e){if(t===void 0){yf(this);return}const n=Es(this);if(n[t]||(n[t]=[]),e===void 0){n[t].length=0;return}let s=0;for(;s<n[t].length&&n[t][s][0]!==e;s++);s<n[t].length&&n[t].splice(s,1)}emit(t,...e){let n=!1;const o=Es(this)[t]||[];for(let r of o.slice()){const[a,l=!1]=r,c=a(...e);l&&this.off(t,a),c===!1&&(n=!0)}return n}};function ln(){return((1+Math.random())*65536|0).toString(16).substring(1)}function at(){return(ln()+ln()+"-"+ln()+"-4"+ln().substr(0,3)+"-"+ln()+"-"+ln()+ln()+ln()).toLowerCase()}const Cf=`
|
|
2
2
|
<style type="text/css">
|
|
3
3
|
|
|
4
4
|
#_gl_paintBrush {
|
|
@@ -98,7 +98,7 @@ transition: all 500ms;
|
|
|
98
98
|
}
|
|
99
99
|
|
|
100
100
|
</style>
|
|
101
|
-
`;let If=class extends wf{constructor(e){super();f(this,"configs");f(this,"clientWidth");f(this,"clientHeight");f(this,"ready",!1);f(this,"uuid",at());f(this,"tween");f(this,"tweening",!1);f(this,"container");f(this,"canvas");f(this,"data",{});f(this,"tempLine",{});this.configs=e,this.clientWidth=document.body.clientWidth,this.clientHeight=document.body.clientHeight,this.container=this.ifInsertToDOM(),this.canvas={},this.initCtrl()}get color(){return this.configs.currentColor}get state(){return this.data}get dpr(){return this.configs.DPR||1}ifInsertToDOM(){if(this.container)return this.container;if(this.configs.container)this.configs.container.id="_gl_paintBrush",this.container=this.configs.container;else if(document.getElementById("_gl_paintBrush"))this.container=document.getElementById("_gl_paintBrush");else{const e=document.createElement("div");e.id="_gl_paintBrush",document.body.appendChild(e),this.container=e}return this.container.innerHTML=Cf,this.container}initCanvas(e){const n=document.createElement("canvas");n.className=e,n.width=this.clientWidth,n.height=this.clientHeight;const s=n.getContext("2d");if(s)return s.lineWidth=5*this.dpr,s.lineCap="round",s.lineJoin="round",this.container.appendChild(n),n}initCtrl(){const e=document.createElement("div");e.className="_paintBrush-ctrl";const n=document.createElement("div");n.className="_paintBrush-ctrlinner";const s=document.createElement("a");s.className="_paintBrush-ctrlitem _paintBrush-ctrlitem--undo",s.addEventListener("click",a=>{var u;if(a.stopPropagation(),this.configs.onClickUndo&&this.configs.onClickUndo(),!this.canvas[this.uuid]||!this.data[this.uuid]||this.data[this.uuid].length===0)return;const l=this.data[this.uuid].pop();l&&this.emitStateChange({type:qt.Undo,color:this.color,ready:this.ready,state:l,uuid:this.uuid});const c=(u=this.canvas[this.uuid])==null?void 0:u.getContext("2d");if(!this.canvas[this.uuid])return;const{width:d,height:h}=this.canvas[this.uuid];c&&c.clearRect(0,0,d,h),this.data[this.uuid].forEach(m=>this.handleDrawLine(this.uuid,m,{withUndo:!0}))});const o=document.createElement("a");return o.className="_paintBrush-ctrlitem _paintBrush-ctrlitem--close",o.addEventListener("click",a=>{a.stopPropagation(),this.closeBrush(),this.configs.onClickClose&&this.configs.onClickClose()}),[s,o].forEach(a=>{const l=document.createElement("i");l.className="brush-icon";const c=document.createElement("span");c.className="brush-txt",c.innerText=a.className.endsWith("undo")?this.configs.onUndoText:this.configs.onExitText,a.appendChild(l),a.appendChild(c)}),n.appendChild(s),n.appendChild(o),e.appendChild(n),this.container.appendChild(e),e}openBrush(){if(this.ready)return;this.canvas[this.uuid]||(this.canvas[this.uuid]=this.initCanvas("_paintBrush-canvas")),this.container.className="brushing";const e=this.canvas[this.uuid];e.getContext("2d").clearRect(0,0,e.width,e.height),this.openBrushHandle(),this.ready=!0,this.emit("readyChange",!0)}closeBrush(){this.ready&&(this.container.className="",this.data={},this.tempLine={},Object.keys(this.canvas).forEach(e=>{this.canvas[e].ontouchstart=()=>!1,this.canvas[e].ontouchmove=()=>!1,this.canvas[e].ontouchend=()=>!1,this.canvas[e].ontouchcancel=()=>!1;const n=this.canvas[e].getContext("2d");n&&n.clearRect(0,0,this.canvas[e].width,this.canvas[e].height)}),this.ready=!1,this.emit("readyChange",!1),this.emitStateChange({type:qt.Exit,color:this.color,ready:!1,uuid:this.uuid}))}updateCurrentColor(e){const n=this.canvas[this.uuid];if(!n)return;const s=n.getContext("2d");s&&(this.configs.currentColor=e,s.strokeStyle=e)}openBrushHandle(){const e=this.canvas[this.uuid];if(!e)return;const n=e.getContext("2d");if(!n)return;const s=this.color||"#6D92FF";n.strokeStyle=s;let o=null,r=[],a,l=[],c=0;const d=(h,u,m)=>{const A=this.color||"#ff0000";n.strokeStyle=A,n.beginPath(),n.moveTo(h.x,h.y),n.quadraticCurveTo(u.x,u.y,m.x,m.y),n.stroke()};e.onmousedown=h=>{h.preventDefault(),c=Date.now();const u=h.clientX,m=h.clientY;r=[],r.push({x:u,y:m}),o={x:u,y:m},a=Is({x:u,y:m},this.clientWidth,this.clientHeight),l=[]},e.onmousemove=h=>{if(h.preventDefault(),!o)return;const u=Number(h.clientX),m=Number(h.clientY);if(Math.abs(u-o.x)<5&&Math.abs(m-o.y)<5||(r.push({x:u,y:m}),l.push(Is({x:u,y:m},this.clientWidth,this.clientHeight)),r.length<3))return;const{control:A,end:p}=Ps(r);!A||!p||(d(o,A,p),o=p)},e.onmouseup=h=>{if(h.preventDefault(),o=null,r.length<3)return;this.data[this.uuid]||(this.data[this.uuid]=[]);const u=Date.now()-c,m={move:Object.assign({},a),uuid:this.uuid,line:[...l],color:this.color,duration:u<1280?u:u<2e3?1280:0};this.data[this.uuid].push(m),Hs(()=>{this.emitStateChange({type:qt.Drawline,color:this.color,ready:this.ready,state:m,uuid:this.uuid})})},e.ontouchstart=h=>{h.preventDefault(),c=Date.now();const u=h.touches[0].clientX,m=h.touches[0].clientY;r=[],r.push({x:u,y:m}),o={x:u,y:m},a=Is({x:u,y:m},this.clientWidth,this.clientHeight),l=[]},e.ontouchmove=h=>{if(h.preventDefault(),!o)return;const u=Number(h.touches[0].clientX),m=Number(h.touches[0].clientY);if(Math.abs(u-o.x)<5&&Math.abs(m-o.y)<5||(r.push({x:u,y:m}),l.push(Is({x:u,y:m},this.clientWidth,this.clientHeight)),r.length<3))return;const{control:A,end:p}=Ps(r);!A||!p||(d(o,A,p),o=p)},e.ontouchend=e.ontouchcancel=h=>{if(h.preventDefault(),o=null,r.length<3)return;this.data[this.uuid]||(this.data[this.uuid]=[]);const u=Date.now()-c,m={move:Object.assign({},a),line:[...l],uuid:this.uuid,color:this.color,duration:u<1280?u:u<2e3?1280:0};this.data[this.uuid].push(m),Hs(()=>{this.emitStateChange({type:qt.Drawline,color:this.color,ready:this.ready,state:m,uuid:this.uuid})})}}emitStateChange(e,n=!0){if(e.type!==qt.Drawline){this.emit("stateChange",e,n);return}const s=Date.now(),o=e.state;if(!o||!o.line)return;const r=Math.ceil(o.line.length/100);for(let a=0;a<r;a++){const l={uuid:this.uuid,color:this.color,ready:this.ready,type:e.type,state:{uuid:this.uuid,move:o.move,duration:o.duration,color:this.color,line:o.line.slice(a*100,(a+1)*100)},timestamp:s,end:a===r-1};hf(a,20,()=>{this.emit("stateChange",l,n)})}}action(e){const{ready:n,type:s,uuid:o}=e;if(!n&&this.ready){this.closeBrush();return}if(n&&!this.ready){this.openBrush();return}if(this.ready)switch(s){case qt.Drawline:const{state:r,timestamp:a,end:l}=e;if(!a||!r)return;this.tempLine[a]=[].concat(this.tempLine[a]||[],r.line),l&&(Object.assign(r,{line:this.tempLine[a]}),this.handleDrawLine(o,r,{},()=>delete this.tempLine[a]));break;case qt.Undo:this.handleUndo(o);break}}handleDrawLine(e,n,{withUndo:s=!1},o=rh){!n||Object.prototype.toString.call(n)!="[object Object]"||Object.keys(n).length===0||df(()=>new Promise(r=>{if(s||(this.canvas[e]||(this.canvas[e]=this.initCanvas("_paintBrush-canvas--sync")),this.data[e]||(this.data[e]=[]),this.data[e].push(n)),!this.canvas[e])return;const a=this.canvas[e].getContext("2d");if(!a)return;const{line:l=[],color:c="black",duration:d=0,uuid:h}=n,u=vr(n.move||{},this.clientWidth,this.clientHeight);let m=[u];if(a.strokeStyle=c,a.beginPath(),a.moveTo(u.x,u.y),d&&!s){let A=[];const p=this;p.tween=bf({step:0},{step:l.length-1},d).onUpdate(({step:g})=>{var y;if(p.tweening=!0,!p.ready)return a.clearRect(0,0,p.canvas[h].width,p.canvas[h].height),(y=p.tween)==null?void 0:y.stop();const b=Math.floor(g);if(!A.find(I=>I===b)){if(A.push(b),m.push(vr(l[b],p.clientWidth,p.clientHeight)),m.length<3)return;const{control:I,end:k}=Ps(m);if(!I||!k)return;a.quadraticCurveTo(I.x,I.y,k.x,k.y),a.stroke()}}).onComplete(g=>{p.tween=void 0,p.tweening=!1,A=[],m=[],o&&o(),r()})}else{for(let A=0;A<l.length;A++){if(m.push(vr(l[A],this.clientWidth,this.clientHeight)),m.length<3)continue;const{control:p,end:g}=Ps(m);!p||!g||a.quadraticCurveTo(p.x,p.y,g.x,g.y)}a.stroke(),m=[],o&&o(),r()}}))}handleUndo(e){if(!this.canvas[e]||!this.data[e]||this.data[e].length===0)return;this.data[e].pop();const n=()=>{var o;const s=(o=this.canvas[e])==null?void 0:o.getContext("2d");s&&s.clearRect(0,0,this.canvas[e].width,this.canvas[e].height),this.data[e].forEach(r=>this.handleDrawLine(e,r,{withUndo:!0}))};if(this.tween&&this.tweening){this.tween.stop(),Hs(n,60);return}n()}destroyBrush(){this.closeBrush(),this.ready=!1,this.emit("readyChange",!0)}};class Pf{constructor(t={}){f(this,"controller");const e=Object.assign({currentColor:"#f44336",onUndoText:"回退",onExitText:"关闭"},t);this.controller=new If(e)}on(t,e){this.controller.on(t,e)}off(t,e){this.controller.off(t,e)}once(t,e){this.controller.once(t,e)}show(){this.controller.openBrush()}action(t){this.controller.action(t)}get state(){return this.controller.state}get configs(){return this.controller.configs}dispose(){return this.controller.destroyBrush()}setCurrentColor(t){this.controller.updateCurrentColor(t)}}const Ef=(i,t)=>{var G,_;let e=(_=(G=t==null?void 0:t.initialState)==null?void 0:G.enabled)!=null?_:!0,n=!1,s=!0,o=null;const a=H(H({},{lookAtCurrentCamera:!1,lockedPanoIndex:null,lockedLatitude:null,lockedLongitude:null}),t==null?void 0:t.config),l=new E.Scene,c=new Te.Camera(60);let d=new E.Object3D,h,u;{const Q=new E.DirectionalLight(16777215,.5);Q.position.copy(new E.Vector3(1,1,1)),l.add(Q)}{const Q=new E.DirectionalLight(16777215,.3);l.add(Q)}{const Q=new E.AmbientLight(16777215,.3);l.add(Q)}l.add(d);const m=()=>{if(n)return;h=T(i.model,c.fov,c.aspect),u=i.model.bounding.getCenter(new E.Vector3),l.remove(d),d=F(i.model),l.add(d),n=!0,V();function Q(Z){const X=Z.clone();return X.uniforms.modelAlpha.value=1,X.uniforms.map.value&&(X.uniforms.map.value.needsUpdate=!0),X}function F(Z){if(Z instanceof E.Mesh){const X=Z.geometry,$=Array.isArray(Z.material)?Z.material.map(Q):Q(Z.material);return new E.Mesh(X,$)}else if(Z instanceof E.Group){const X=new E.Group;return Z.children.forEach($=>X.add(F($))),X}else{const X=new E.Object3D;return Z.children.forEach($=>X.add(F($))),X}}},A=()=>{if(i.renderer)return o||(o=new E.WebGLRenderer({antialias:!1,alpha:!0}),o.setPixelRatio(i.renderer.getPixelRatio()),o.outputEncoding=E.sRGBEncoding,o.setClearColor(1579548,0),o.autoClear=!0),o},p=()=>{d.traverse(Q=>{Q instanceof E.Mesh&&[].concat(Q.material).forEach(Z=>Z.dispose())}),l.remove(d),d=new E.Object3D,l.add(d),n=!1,V()},g=()=>{e&&(n||m())},b=()=>{e||(e=!0,l.add(d),!n&&i.model.loaded&&m(),V())},y=()=>{e&&(l.remove(d),s=!0,L(),e=!1)},I=(Q,F={})=>{const Z=A();if(!Z)return;Q.appendChild(Z.domElement),k(F);const X=window.getComputedStyle(Q).position;X!=="relative"&&X!=="absolute"&&X!=="fixed"&&X!=="sticky"&&(Q.style.position="relative")},k=(Q={})=>{if(!o)return;const Z=o.domElement.parentNode;if(Z!=null&&Z.nodeName){const{width:X=Z.offsetWidth,height:$=Z.offsetHeight}=Q;o.setSize(X,$),c.aspect=X/$,c.updateProjectionMatrix()}V()};function T(Q,F,Z){const X=Q.bounding,$=Math.pow(Math.pow(X.max.x-X.min.x+1,2)+Math.pow(X.max.y-X.min.y+1,2)+Math.pow(X.max.z-X.min.z+1,2),1/2);let ce=$/2/Math.tan(Math.PI*F/360);return Z<1&&(ce=ce/Z),isNaN(ce)?$:ce}function P(Q){return i.work.observers[Q].standingPosition.clone()}const V=()=>{if(!e||!h||!u)return;const Q=i.getPose();Q.fov=c.fov,Q.offset=u,Q.distance=h,typeof a.lockedLatitude=="number"&&(Q.latitude=a.lockedLatitude),typeof a.lockedLongitude=="number"&&(Q.longitude=a.lockedLongitude),typeof a.lockedPanoIndex=="number"&&(Q.offset=P(a.lockedPanoIndex)),a.lookAtCurrentCamera&&(Q.offset=i.camera.position.clone().setY(i.camera.position.y+1)),c.setFromPose(Q),s=!0},L=()=>{!e||s!==!0||!o||!o.domElement.parentNode||o.domElement.parentNode.offsetWidth===0||(o.render(l,c),s=!1)},W=()=>{o&&o.dispose(),o=null},q=Q=>{Object.assign(a,Q),V()},N=()=>({enabled:e});return Object.assign(window,{camera:c}),i.on("modelLoaded",g),i.on("modelWillLoad",p),i.on("cameraDirectionUpdate",V),i.on("dispose",W),i.on("renderFrame",L),i.on("cameraPositionUpdate",V),{appendTo:I,refresh:k,changeConfigs:q,enable:b,disable:y,getCurrentState:N}};function un(...i){const t=[];return i.forEach(e=>{e.isCSS3DObjectPlus?t.push(e):t.push(...un(...e.children))}),t}function Xs(i,t){const e=Math.round(i);return e%2===0?e:e+(t!=null&&t.floor?-1:1)}function kf(i,t,e=!0){if(!i)return console.error("createResizeObserver: element is undefined"),{observe:()=>{},unobserve:()=>{}};const n=()=>{const o=Xs(i.clientWidth,{floor:!0}),r=Xs(i.clientHeight,{floor:!0});t(o,r)};if(typeof ResizeObserver=="undefined"||!ResizeObserver)return console.warn("createResizeObserver: ResizeObserver is undefined"),{observe:()=>n(),unobserve:()=>{}};const s=new ResizeObserver(n);return e&&n(),{observe:()=>s.observe(i),unobserve:()=>s.unobserve(i)}}class el extends Us.CSS3DRenderer{constructor(){super();f(this,"wrapper");f(this,"requestAnimationFrameId");f(this,"resizeDisoper");this.domElement.style.position="absolute",this.domElement.style.top="0",this.domElement.style.left="0",this.domElement.style.userSelect="none",this.domElement.style.pointerEvents="none"}setWrapper(e){if(!e)throw new Error("CSS3DRenderer: wrapper is required");if(e.contains(this.domElement))return;const n=this.wrapper;return n&&n.contains(this.domElement)&&this.domElement.remove(),this.appendToElement(e),this.wrapper=e,this}appendToElement(e){e.appendChild(this.domElement);const n=(r,a)=>this.setSize(r,a),{observe:s,unobserve:o}=kf(e,n,!0);s(),this.resizeDisoper=o,this.wrapper=e}renderEveryFrame(e,n){if(this.wrapper||console.warn("wrapper is not find, creating a html element and call setWrapper(wrapper)",this,e),this.requestAnimationFrameId)return;const s=()=>{this.requestAnimationFrameId=requestAnimationFrame(s),e.visible&&un(e).length!==0&&this.render(e,n)};s()}stopRender(){this.requestAnimationFrameId&&cancelAnimationFrame(this.requestAnimationFrameId)}dispose(){var e;this.stopRender(),(e=this.resizeDisoper)==null||e.call(this),this.domElement.remove()}}function Mf(i){return typeof Symbol=="undefined"?`$Symbol<${i}>$`:Symbol(i)}const Ji=Mf("$$EVENT$$");function ks(i){return i[Ji]||(i[Ji]={}),i[Ji]}function xf(i){i[Ji]||delete i[Ji]}class pi{hasListener(t){const e=ks(this);return!!(e!=null&&e[t]&&e[t].length>0)}on(t,e,n){const s=ks(this);return s[t]||(s[t]=[]),s[t].push([e,n||!1]),()=>this.off(t,e)}once(t,e){return this.on(t,e,!0)}off(t,e){if(t===void 0){xf(this);return}const n=ks(this);if(n[t]||(n[t]=[]),e===void 0){n[t].length=0;return}let s=0;for(;s<n[t].length&&n[t][s][0]!==e;s++);s<n[t].length&&n[t].splice(s,1)}emit(t,...e){let n=!1;const o=ks(this)[t]||[];for(let r of o.slice()){const[a,l=!1]=r,c=a(...e);l&&this.off(t,a),c===!1&&(n=!0)}return n}}const Df=({x:i,y:t,z:e})=>new R.Vector3(i,t,e),St=i=>new R.Vector3().fromArray(i),$i=i=>i instanceof R.Vector3?i:Array.isArray(i)?St(i):Df(i);class Sf extends E.Mesh{constructor(e,n){const s=new E.MeshBasicMaterial({opacity:0,color:0,transparent:!1,side:E.DoubleSide}),o=new E.PlaneGeometry(e,n);super(o,s);f(this,"name","opacity-mesh")}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}}function nn(...i){const t=new R.Vector3;return i.forEach(e=>t.add(e)),t.divideScalar(i.length),t}const ch=1,Tf=`CSS3DObjectPlus@${ch}`,Lf=.00216,jf=.003;class zf extends Us.CSS3DObject{constructor(e){var T,P,V;const n=e.container,s=e.cornerPoints,o=(T=e.ratio)!=null?T:jf,r=(P=e.dpr)!=null?P:1,a=(V=e.pointerEvents)!=null?V:"auto",l=Math.max(Lf,o),c=s[0].distanceTo(s[1]),d=s[1].distanceTo(s[2]),h=Xs(c/o*r),u=Xs(d/o*r),m=nn(...s);let A;if(l===o)n.style.width=`${h}px`,n.style.height=`${u}px`,A=n;else{const L=document.createElement("div");L.style.width=`${h}px`,L.style.height=`${u}px`,L.style.pointerEvents="none";const W=o/l;n.style.position="absolute",n.style.left="0",n.style.top="0",n.style.width=`${W*h}px`,n.style.height=`${W*u}px`,L.appendChild(n),A=L}super(A);f(this,"version",ch);f(this,"isCSS3DObjectPlus",!0);f(this,"container");f(this,"width");f(this,"height");f(this,"domWidthPx");f(this,"domHeightPx");f(this,"cornerPoints");f(this,"centerPosition");f(this,"ratio");f(this,"mode","front");f(this,"hooks",new pi);f(this,"opacityMesh");f(this,"selfVisible",!0);f(this,"parentVisibleListenerDisposer");f(this,"createOpacityMesh",e=>{const{domWidthPx:n,domHeightPx:s}=e,o=new Sf(n,s);return o.position.copy(e.position),o.rotation.copy(e.rotation),o.scale.copy(e.scale),o});f(this,"addParentVisibleListener",()=>{var e;if((e=this.parent)!=null&&e.isCSS3DGroup){const n=this.parent,s=o=>{this.setVisible(o&&this.selfVisible,{setSelfVisible:!1})};n.hooks.on("visibleChange",s),this.parentVisibleListenerDisposer=()=>n.hooks.off("visibleChange",s)}});f(this,"removeParentVisibleListener",()=>{var e;(e=this.parentVisibleListenerDisposer)==null||e.call(this)});if(n.style.pointerEvents=a,this.scale.set(l,l,l),this.cornerPoints=s,this.ratio=o,this.container=n,e.mode&&(this.mode=e.mode),l===o)this.width=c,this.height=d,this.domWidthPx=h,this.domHeightPx=u,this.centerPosition=m;else{const L=o/l;this.width=L*c,this.height=L*d,this.domWidthPx=L*h,this.domHeightPx=L*u,this.centerPosition=new R.Vector3().subVectors(m,s[0]).multiplyScalar(L).add(s[0])}n.classList.add(`${Tf}__container`);const p=new R.Vector3().subVectors(s[1],s[0]),g=new R.Vector3().subVectors(s[3],s[0]),b=new R.Vector3().crossVectors(p,g).normalize();this.lookAt(b);const y=this.up.clone().applyQuaternion(this.quaternion),I=g.clone(),k=new R.Vector3().crossVectors(y,I).normalize();this.rotateOnWorldAxis(k,y.angleTo(I)),this.position.copy(m),this.addEventListener("added",()=>{var L;this.mode==="front"&&((L=this.opacityMesh)==null||L.removeFromParent()),this.addParentVisibleListener()}),this.addEventListener("removed",()=>{var L;(L=this.opacityMesh)==null||L.removeFromParent(),this.removeParentVisibleListener()})}setVisible(e,n={setSelfVisible:!0}){n.setSelfVisible&&(this.selfVisible=e),this.visible=e,this.opacityMesh&&(this.opacityMesh.visible=e)}removeFromParent(){var n;const e=this.parent;return e!==null&&e.remove(this),(n=this.opacityMesh)==null||n.removeFromParent(),this}removeOpacityMesh(){var e;return(e=this.opacityMesh)==null||e.removeFromParent(),this.opacityMesh=void 0,this}dispose(){var e;this.container.remove(),this.removeFromParent(),(e=this.opacityMesh)==null||e.removeFromParent()}getOpacityMesh(){if(this.opacityMesh)return this.opacityMesh;{const e=this.createOpacityMesh(this);return this.opacityMesh=e,e}}applyMatrix4(e){var n;super.applyMatrix4(e),(n=this.opacityMesh)==null||n.applyMatrix4(e)}applyQuaternion(e){var n;return super.applyQuaternion(e),(n=this.opacityMesh)==null||n.applyQuaternion(e),this}applyScaleMatrix4(e){var n;this.scale.applyMatrix4(e),(n=this.opacityMesh)==null||n.scale.applyMatrix4(e)}}class Of extends E.Scene{constructor(){super()}add(...t){return super.add(...t),un(...t).forEach(e=>{e.mode="front"}),this}}class Bf extends E.Scene{constructor(e){super();f(this,"scene");if(!e)throw new Error("CSS3DBehindScene: scene is required");this.scene=e}add(...e){return super.add(...e),un(...e).forEach(n=>{n.mode="behind",this.scene.add(n.getOpacityMesh())}),this}remove(...e){return un(...e).forEach(n=>{var s;(s=n.opacityMesh)==null||s.removeFromParent(),n.opacityMesh=null}),super.remove(...e),this}}class dh extends E.Group{constructor(e){super();f(this,"isCSS3DGroup",!0);f(this,"mode");f(this,"CSS3DObjectLength",0);f(this,"hooks",new pi);this.mode=e}add(...e){return un(...e).forEach(n=>{n.mode=this.mode}),super.add(...e),this.updateLength(),this}setVisible(e){this.visible=e,this.hooks.emit("visibleChange",e)}remove(...e){return super.remove(...e),this.updateLength(),this}updateLength(){this.CSS3DObjectLength=un(this).length}}class Vf extends dh{constructor(){super("front")}}class Rf extends dh{constructor(e){super("behind");f(this,"scene");if(!e)throw new Error("CSS3DBehindScene: scene is required");this.scene=e}add(...e){return un(...e).forEach(n=>{this.scene.add(n.getOpacityMesh())}),super.add(...e),this}}const Qf=3,Hr="CSS3DRenderer",Yi=`${Hr}@${Qf}`,Xn=()=>{console.error(`${Yi} is disposed`)},Ye={css3DObjects:[],frontModeStore:{css3DRenderer:new el},behindModeStore:{css3DRenderer:new el}};function tl(i){return Ye.css3DObjects.find(t=>t.id===i)}function Gf(i){Ye.frontModeStore.css3DRenderer.setWrapper(i)}function Nf(i){Ye.behindModeStore.css3DRenderer.setWrapper(i)}class li{constructor(t){f(this,"hooks",new pi);f(this,"state",{enabled:!0,visible:!0,disposed:!1});f(this,"_scene");f(this,"store",{frontModeGroup:new Vf});f(this,"create3DElement",(t,e,n)=>{if(this.state.disposed)return Xn();const s=(()=>{const k={ratio:.00216,devicePixelRatio:1,mode:"front",autoRender:!0,container:document.createElement("div"),pointerEvents:"none"};return Object.assign(k,n)})(),o=e.map($i);if((o==null?void 0:o.length)<4)return console.error(`${Yi}: requires 4 point but params may have fewer`);const{ratio:r,devicePixelRatio:a,mode:l,autoRender:c,container:d,pointerEvents:h}=s;let u=!1;const m=this.createObject(o,{ratio:r,dpr:a,container:d,mode:l,pointerEvents:h});Ye.css3DObjects.push(m),s.scene&&this.setScene(s.scene);const A=()=>{if(u)return;const k=m.mode==="front"?this.getFrontCSS3DObjectGroup():this.getBehindCSS3DObjectGroup();k&&k.add(m)},p=()=>{u||(A(),this.render(t),this.hooks.emit("render"))},g=k=>this.setVisibleById(m.id,k),b=k=>this.setEnabledById(m.id,k),y=()=>(u=!0,m.removeFromParent(),!0),I=l==="front"?Ye.frontModeStore.css3DRenderer:Ye.behindModeStore.css3DRenderer;return c&&p(),{id:m.uuid,container:d,css3DObject:m,render:c?void 0:p,show:()=>g(!0),hide:()=>g(!1),setVisible:g,enable:()=>b(!0),disable:()=>b(!1),setEnabled:b,dispose:y,appendToElement:k=>I.setWrapper(k)}});f(this,"setVisibleById",(t,e)=>{var n;(n=tl(t))==null||n.setVisible(e)});f(this,"setEnabledById",(t,e)=>{const n=tl(t);if(!n)return;const s=n.mode==="front"?this.getFrontCSS3DObjectGroup({addGroupIfNotExists:!1}):this.getBehindCSS3DObjectGroup({addGroupIfNotExists:!1});s&&(e?s.add(n):s.remove(n))});f(this,"createObject",(t,e)=>{const n=new zf(H({cornerPoints:t},e));return n.element.classList.add(`${Hr}__container`),n.element.id=`${Hr}__container--${n.uuid}`,n});t&&this.setScene(t)}get scene(){return this._scene||console.error("scene doesn't exist!, please call setScene(scene) first"),this._scene}static get frontModeCSS3DRenderer(){return Ye.frontModeStore.css3DRenderer}static get behindModeCSS3DRenderer(){return Ye.behindModeStore.css3DRenderer}get frontModeCSS3DRenderer(){return Ye.frontModeStore.css3DRenderer}get behindModeCSS3DRenderer(){return Ye.behindModeStore.css3DRenderer}setScene(t){this._scene=t}getCurrentState(){return this.state}setState(t,e={userAction:!0}){if(this.state.disposed)return Xn();const n=H({},this.state);this.state=Object.assign(this.state,t),n.visible!==this.state.visible&&(t.visible?this.handleShow():this.handleHide()),n.enabled!==this.state.enabled&&(t.enabled?this.handleEnable():this.handleDisable()),n.disposed!==this.state.disposed&&this.handleDispose(),this.hooks.emit("stateChange",{state:this.state,prevState:n,userAction:e.userAction})}dispose(){this.setState({disposed:!0}),this.hooks.emit("dispose")}show(){return U(this,arguments,function*({userAction:t}={userAction:!0}){if(this.state.disposed)return Xn();this.setState({visible:!0},{userAction:t}),this.hooks.emit("show",{userAction:t})})}hide(){return U(this,arguments,function*({userAction:t}={userAction:!0}){if(this.state.disposed)return Xn();this.setState({visible:!1},{userAction:t}),this.hooks.emit("hide",{userAction:t})})}enable({userAction:t}={userAction:!0}){if(this.state.disposed)return Xn();this.setState({enabled:!0},{userAction:t}),this.hooks.emit("enable",{userAction:t})}disable({userAction:t}={userAction:!0}){if(this.state.disposed)return Xn();this.setState({enabled:!1},{userAction:t}),this.hooks.emit("disable",{userAction:t})}getFrontCSS3DScene({createSceneIfNotExists:t=!1}={}){var n;const e=(n=Ye.frontModeStore)==null?void 0:n.css3DScene;if(e)return e;if(t){const s=new Of;Ye.frontModeStore.css3DScene=s}return Ye.frontModeStore.css3DScene}getBehindCSS3DScene({createSceneIfNotExists:t=!1}={}){var n,s;const e=(n=Ye.behindModeStore)==null?void 0:n.css3DScene;if(e)return e;if(t){const o=(s=Ye.behindModeStore.scene)!=null?s:this.scene;if(!o){console.error(`${Yi}: scene is required when mode is behind`);return}const r=new Bf(o);Ye.behindModeStore.css3DScene=r,Ye.behindModeStore.scene=o}return Ye.behindModeStore.css3DScene}getFrontCSS3DObjectGroup({addGroupIfNotExists:t=!0}={}){const e=this.getFrontCSS3DScene({createSceneIfNotExists:t});return t&&e&&(e.getObjectById(this.store.frontModeGroup.id)||e.add(this.store.frontModeGroup)),this.store.frontModeGroup}getBehindCSS3DObjectGroup({addGroupIfNotExists:t=!0}={}){var n;const e=this.getBehindCSS3DScene({createSceneIfNotExists:t});if(t&&e&&this.scene){const s=(n=this.store.behindModeGroup)!=null?n:new Rf(this.scene);this.store.behindModeGroup=s,e.getObjectById(s.id)||e.add(s)}return this.store.behindModeGroup}render(t){var e,n;if(this.getFrontCSS3DObjectGroup({addGroupIfNotExists:!1}).CSS3DObjectLength>0){const s=this.getFrontCSS3DScene({createSceneIfNotExists:!0});if(!s)return console.error(`${Yi}: css3DScene is required when mode is front`);Ye.frontModeStore.css3DRenderer.renderEveryFrame(s,t)}if(((n=(e=this.getBehindCSS3DObjectGroup({addGroupIfNotExists:!1}))==null?void 0:e.CSS3DObjectLength)!=null?n:0)>0){const s=this.getBehindCSS3DScene({createSceneIfNotExists:!0});if(!s)return console.error(`${Yi}: css3DScene is required when mode is behind`);Ye.behindModeStore.css3DRenderer.renderEveryFrame(s,t)}}handleShow(){return U(this,null,function*(){var t;this.store.frontModeGroup.setVisible(!0),(t=this.store.behindModeGroup)==null||t.setVisible(!0)})}handleHide(){return U(this,null,function*(){var t;this.store.frontModeGroup.setVisible(!1),(t=this.store.behindModeGroup)==null||t.setVisible(!1)})}handleEnable(){var t,e;(t=this.getFrontCSS3DScene())==null||t.add(this.store.frontModeGroup),this.store.behindModeGroup&&((e=this.getBehindCSS3DScene())==null||e.add(this.store.behindModeGroup))}handleDisable(){var t,e,n;this.store.frontModeGroup.children.forEach(s=>{s instanceof Us.CSS3DObject&&s.element instanceof Element&&s.element.parentNode!==null&&s.element.remove()}),(t=this.store.behindModeGroup)==null||t.children.forEach(s=>{s instanceof Us.CSS3DObject&&s.element instanceof Element&&s.element.parentNode!==null&&s.element.remove()}),(e=this.getFrontCSS3DScene())==null||e.remove(this.store.frontModeGroup),this.store.behindModeGroup&&((n=this.getBehindCSS3DScene())==null||n.remove(this.store.behindModeGroup))}handleDispose(){this.handleDisable()}}f(li,"setFrontModeContainer",Gf),f(li,"setBehindModeContainer",Nf);function hh(i){return U(this,null,function*(){return new Promise(t=>{var e;if((e=i.model)!=null&&e.loaded){t();return}else i.once("modelLoaded",()=>t())})})}const xt=document.createElement("div");xt.classList.add("behindFiveElement");xt.style.position="absolute";xt.style.top="0";xt.style.left="0";xt.style.width="100%";xt.style.height="100%";xt.style.pointerEvents="none";function uh(i){var n,s,o,r,a;const t=(a=(s=br(i.getElement()))!=null?s:br((n=i.getElement())==null?void 0:n.parentElement))!=null?a:br((r=(o=i.getElement())==null?void 0:o.parentElement)==null?void 0:r.parentElement),e=t==null?void 0:t.parentElement;if(e)return e.contains(xt)||t.parentElement.insertBefore(xt,t),xt;console.error("Can not find a valid element to insert behindFiveElement. How to fix it: https://github.com/realsee-developer/dnalogel/tree/main/plugins/src/CSS3DRenderPlugin/README.md")}function br(i){var a;if(!i)return;const t=(a=i.style.position)!=null?a:getComputedStyle(i).position;if(t!=="fixed"&&t!=="absolute"&&t!=="relative")return;const e=getComputedStyle(i),n=e.backgroundColor,s=e.backgroundImage;if(!(n!=="transparent"&&n!=="rgba(0, 0, 0, 0)"&&n!==""||s!=="none"&&s!==""))return i}class _r{constructor(t=0,e=0){f(this,"min");f(this,"max");f(this,"isInterval",!0);this.min=t,this.max=e}fromArray(t){return this.min=t[0],this.max=t[1],this}isOverlap(t){return Math.min(this.max,t.max)<Math.max(this.min,t.min)}contains(t){return this.min<t.min&&this.max>t.max}}class Hf{constructor(t,e){f(this,"min");f(this,"max");f(this,"xInterval");f(this,"yInterval");f(this,"isRectangle",!0);this.min=t,this.max=e,this.xInterval=new _r(this.min.x,this.max.x),this.yInterval=new _r(this.min.y,this.max.y)}isOverlapWithRectangle(t){return!this.xInterval.isOverlap(t.xInterval)&&!this.yInterval.isOverlap(t.yInterval)}containsRect(t){return this.xInterval.contains(t.xInterval)&&this.yInterval.contains(t.yInterval)}}function ca(i){return i==="Panorama"||i==="DepthPanorama"||i==="VRPanorama"||i==="XRPanorama"}function fh(i){return!ca(i)}function Ms(i,t,e){const n=i[t],s=i[e];n===void 0||s===void 0||(i[t]=s,i[e]=n)}function _f(i,t,e){const n=e/2;for(let s=1;s<=n;s++){const o=e-(s-1);for(let r=1;r<=t;r++){const a=(s-1)*t+r-1,l=(o-1)*t+r-1;Ms(i,a*4+0,l*4+0),Ms(i,a*4+1,l*4+1),Ms(i,a*4+2,l*4+2),Ms(i,a*4+3,l*4+3)}}}let da=class{constructor(t,e){f(this,"width");f(this,"height");f(this,"containerDom");f(this,"hooks",new Te.Subscribe);f(this,"canvas",document.createElement("canvas"));f(this,"five");f(this,"scale");f(this,"config");f(this,"offset",{x:0,y:0});f(this,"context");f(this,"renderCenter",new E.Vector3);f(this,"hammer");f(this,"state",{enabled:!1});f(this,"onPan",t=>{if(!this.containerDom||this.hooks.emit("wantsPanGesture",t))return;const n=this.offset.x+t.deltaX,s=this.offset.y+t.deltaY;this.canvas.style.boxShadow="0 2px 30px 0 rgba(0,0,0,0.20)",this.canvas.style.transform=`translate3d(${n}px, ${s}px, 100px)`});f(this,"onPanEnd",t=>{this.offset={x:this.offset.x+t.deltaX,y:this.offset.y+t.deltaY},this.canvas.style.boxShadow="none"});var s,o,r;if(!t.renderer)throw new Error("Five Render 未初始化");this.five=t,this.scale=(s=e==null?void 0:e.scale)!=null?s:2,this.width=(o=e==null?void 0:e.width)!=null?o:190,this.height=(r=e==null?void 0:e.height)!=null?r:190,this.config={dragEnabled:(e==null?void 0:e.dragEnabled)||!1,autoFixPCPosition:(e==null?void 0:e.autoFixPCPosition)||!1,initialPosition:(e==null?void 0:e.initialPosition)||{left:"0",top:"0"}};const n=this.canvas.getContext("2d");if(!n)throw new Error("CANNOT CREATE CONTEXT2D");this.context=n,this.config.dragEnabled&&(this.hammer=new ss(this.canvas),this.hammer.on("pan",this.onPan),this.hammer.on("panend",this.onPanEnd)),this.initStyle()}getCurrentState(){return this.state}dispose(){var t;this.clear(),this.disable(),(t=this.hammer)==null||t.destroy()}show(){return this.canvas.style.visibility="visible",this}hide(){return this.canvas.style.visibility="hidden",this}enable(){var t;if(!this.state.enabled)return this.state.enabled=!0,(t=this.containerDom)==null||t.append(this.canvas),this}disable(){if(this.state.enabled)return this.state.enabled=!1,this.canvas.remove(),this}appendTo(t){return this.containerDom&&Array.from(this.containerDom.children).includes(this.canvas)&&this.containerDom.removeChild(this.canvas),this.containerDom=t,this.state.enabled&&t.append(this.canvas),this}clear(){return this.context.clearRect(0,0,this.canvas.width,this.canvas.height),this}renderWithPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}autoFixPCPosition(){if(!this.containerDom)return;const{width:t,height:e}=this,n=this.renderCenter.clone().project(this.five.camera),s=(n.x+1)/2*this.containerDom.clientWidth,o=-(n.x-1)/2*this.containerDom.clientWidth,r=-(n.y-1)/2*this.containerDom.clientHeight;s<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left="90px"):r<183?(this.canvas.style.top="90px",this.canvas.style.left=-t/2+"px"):o<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=-t-90+"px"):(this.canvas.style.left=-t/2+"px",this.canvas.style.top=-e-90+"px"),this.canvas.style.transform=`translate3d(${s}px, ${r}px, 10px)`,this.offset={x:s,y:r}}render(){if(!this.five.renderer||!this.containerDom)return;const{scale:t,context:e,width:n,height:s}=this,o=this.renderCenter.clone().project(this.five.camera),r=this.five.renderer.getSize(new E.Vector2),a=1,l=n/t,c=s/t,d=a*t,h=(o.x+1)/2*r.x,u=(o.y+1)/2*r.y,m=this.five.getPixels(h-l/2,u-l/2,l,c,d),A=Math.floor(n*a),p=Math.floor(s*a);_f(m,A,p);const g=new ImageData(A,p);g.data.set(m),e.putImageData(g,0,0)}initStyle(){const t=this.canvas;t.classList.add("five-plugin__magnifier"),t.style.position="absolute",t.style.pointerEvents="all",t.style.borderRadius="50%",t.style.zIndex="99";const e=1;t.setAttribute("width",(this.width*e).toString()),t.setAttribute("height",(this.height*e).toString()),t.style.border="2px solid rgba(255,255,255,0.20)",t.style.width=this.width+"px",t.style.height=this.height+"px",t.style.top=this.config.initialPosition.top,t.style.left=this.config.initialPosition.left,t.style.transform="translate(0,0,100px)",t.style.visibility="visible",this.config.dragEnabled&&(this.canvas.style.cursor="pointer")}};function Wf(i,t){const{offsetWidth:e,offsetHeight:n}=t,{top:s,left:o}=t.getBoundingClientRect();return new E.Vector2().set((i.x-o)/e*2-1,-(i.y-s)/n*2+1)}function mh(i,t){const{offsetWidth:e,offsetHeight:n}=t;return new E.Vector2().set(i.x/e*2-1,-i.y/n*2+1)}function Ff(i,t){const e=i.getElement();if(!e)return;const n=mh(t,e),s=new E.Raycaster;return s.setFromCamera(n,i.camera),s}function gh(i,t){const{x:e,y:n}=t,s=e*2-1,o=n*2-1,r=new E.Vector2().fromArray([s,o]),a=new E.Raycaster;return a.setFromCamera(r,i.camera),i.model.intersectRaycaster(a)[0]}const Yf="data:image/png;base64,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",Uf=`
|
|
101
|
+
`;let If=class extends wf{constructor(e){super();f(this,"configs");f(this,"clientWidth");f(this,"clientHeight");f(this,"ready",!1);f(this,"uuid",at());f(this,"tween");f(this,"tweening",!1);f(this,"container");f(this,"canvas");f(this,"data",{});f(this,"tempLine",{});this.configs=e,this.clientWidth=document.body.clientWidth,this.clientHeight=document.body.clientHeight,this.container=this.ifInsertToDOM(),this.canvas={},this.initCtrl()}get color(){return this.configs.currentColor}get state(){return this.data}get dpr(){return this.configs.DPR||1}ifInsertToDOM(){if(this.container)return this.container;if(this.configs.container)this.configs.container.id="_gl_paintBrush",this.container=this.configs.container;else if(document.getElementById("_gl_paintBrush"))this.container=document.getElementById("_gl_paintBrush");else{const e=document.createElement("div");e.id="_gl_paintBrush",document.body.appendChild(e),this.container=e}return this.container.innerHTML=Cf,this.container}initCanvas(e){const n=document.createElement("canvas");n.className=e,n.width=this.clientWidth,n.height=this.clientHeight;const s=n.getContext("2d");if(s)return s.lineWidth=5*this.dpr,s.lineCap="round",s.lineJoin="round",this.container.appendChild(n),n}initCtrl(){const e=document.createElement("div");e.className="_paintBrush-ctrl";const n=document.createElement("div");n.className="_paintBrush-ctrlinner";const s=document.createElement("a");s.className="_paintBrush-ctrlitem _paintBrush-ctrlitem--undo",s.addEventListener("click",a=>{var u;if(a.stopPropagation(),this.configs.onClickUndo&&this.configs.onClickUndo(),!this.canvas[this.uuid]||!this.data[this.uuid]||this.data[this.uuid].length===0)return;const l=this.data[this.uuid].pop();l&&this.emitStateChange({type:qt.Undo,color:this.color,ready:this.ready,state:l,uuid:this.uuid});const c=(u=this.canvas[this.uuid])==null?void 0:u.getContext("2d");if(!this.canvas[this.uuid])return;const{width:d,height:h}=this.canvas[this.uuid];c&&c.clearRect(0,0,d,h),this.data[this.uuid].forEach(m=>this.handleDrawLine(this.uuid,m,{withUndo:!0}))});const o=document.createElement("a");return o.className="_paintBrush-ctrlitem _paintBrush-ctrlitem--close",o.addEventListener("click",a=>{a.stopPropagation(),this.closeBrush(),this.configs.onClickClose&&this.configs.onClickClose()}),[s,o].forEach(a=>{const l=document.createElement("i");l.className="brush-icon";const c=document.createElement("span");c.className="brush-txt",c.innerText=a.className.endsWith("undo")?this.configs.onUndoText:this.configs.onExitText,a.appendChild(l),a.appendChild(c)}),n.appendChild(s),n.appendChild(o),e.appendChild(n),this.container.appendChild(e),e}openBrush(){if(this.ready)return;this.canvas[this.uuid]||(this.canvas[this.uuid]=this.initCanvas("_paintBrush-canvas")),this.container.className="brushing";const e=this.canvas[this.uuid];e.getContext("2d").clearRect(0,0,e.width,e.height),this.openBrushHandle(),this.ready=!0,this.emit("readyChange",!0)}closeBrush(){this.ready&&(this.container.className="",this.data={},this.tempLine={},Object.keys(this.canvas).forEach(e=>{this.canvas[e].ontouchstart=()=>!1,this.canvas[e].ontouchmove=()=>!1,this.canvas[e].ontouchend=()=>!1,this.canvas[e].ontouchcancel=()=>!1;const n=this.canvas[e].getContext("2d");n&&n.clearRect(0,0,this.canvas[e].width,this.canvas[e].height)}),this.ready=!1,this.emit("readyChange",!1),this.emitStateChange({type:qt.Exit,color:this.color,ready:!1,uuid:this.uuid}))}updateCurrentColor(e){const n=this.canvas[this.uuid];if(!n)return;const s=n.getContext("2d");s&&(this.configs.currentColor=e,s.strokeStyle=e)}openBrushHandle(){const e=this.canvas[this.uuid];if(!e)return;const n=e.getContext("2d");if(!n)return;const s=this.color||"#6D92FF";n.strokeStyle=s;let o=null,r=[],a,l=[],c=0;const d=(h,u,m)=>{const A=this.color||"#ff0000";n.strokeStyle=A,n.beginPath(),n.moveTo(h.x,h.y),n.quadraticCurveTo(u.x,u.y,m.x,m.y),n.stroke()};e.onmousedown=h=>{h.preventDefault(),c=Date.now();const u=h.clientX,m=h.clientY;r=[],r.push({x:u,y:m}),o={x:u,y:m},a=Is({x:u,y:m},this.clientWidth,this.clientHeight),l=[]},e.onmousemove=h=>{if(h.preventDefault(),!o)return;const u=Number(h.clientX),m=Number(h.clientY);if(Math.abs(u-o.x)<5&&Math.abs(m-o.y)<5||(r.push({x:u,y:m}),l.push(Is({x:u,y:m},this.clientWidth,this.clientHeight)),r.length<3))return;const{control:A,end:p}=Ps(r);!A||!p||(d(o,A,p),o=p)},e.onmouseup=h=>{if(h.preventDefault(),o=null,r.length<3)return;this.data[this.uuid]||(this.data[this.uuid]=[]);const u=Date.now()-c,m={move:Object.assign({},a),uuid:this.uuid,line:[...l],color:this.color,duration:u<1280?u:u<2e3?1280:0};this.data[this.uuid].push(m),Hs(()=>{this.emitStateChange({type:qt.Drawline,color:this.color,ready:this.ready,state:m,uuid:this.uuid})})},e.ontouchstart=h=>{h.preventDefault(),c=Date.now();const u=h.touches[0].clientX,m=h.touches[0].clientY;r=[],r.push({x:u,y:m}),o={x:u,y:m},a=Is({x:u,y:m},this.clientWidth,this.clientHeight),l=[]},e.ontouchmove=h=>{if(h.preventDefault(),!o)return;const u=Number(h.touches[0].clientX),m=Number(h.touches[0].clientY);if(Math.abs(u-o.x)<5&&Math.abs(m-o.y)<5||(r.push({x:u,y:m}),l.push(Is({x:u,y:m},this.clientWidth,this.clientHeight)),r.length<3))return;const{control:A,end:p}=Ps(r);!A||!p||(d(o,A,p),o=p)},e.ontouchend=e.ontouchcancel=h=>{if(h.preventDefault(),o=null,r.length<3)return;this.data[this.uuid]||(this.data[this.uuid]=[]);const u=Date.now()-c,m={move:Object.assign({},a),line:[...l],uuid:this.uuid,color:this.color,duration:u<1280?u:u<2e3?1280:0};this.data[this.uuid].push(m),Hs(()=>{this.emitStateChange({type:qt.Drawline,color:this.color,ready:this.ready,state:m,uuid:this.uuid})})}}emitStateChange(e,n=!0){if(e.type!==qt.Drawline){this.emit("stateChange",e,n);return}const s=Date.now(),o=e.state;if(!o||!o.line)return;const r=Math.ceil(o.line.length/100);for(let a=0;a<r;a++){const l={uuid:this.uuid,color:this.color,ready:this.ready,type:e.type,state:{uuid:this.uuid,move:o.move,duration:o.duration,color:this.color,line:o.line.slice(a*100,(a+1)*100)},timestamp:s,end:a===r-1};hf(a,20,()=>{this.emit("stateChange",l,n)})}}action(e){const{ready:n,type:s,uuid:o}=e;if(!n&&this.ready){this.closeBrush();return}if(n&&!this.ready){this.openBrush();return}if(this.ready)switch(s){case qt.Drawline:const{state:r,timestamp:a,end:l}=e;if(!a||!r)return;this.tempLine[a]=[].concat(this.tempLine[a]||[],r.line),l&&(Object.assign(r,{line:this.tempLine[a]}),this.handleDrawLine(o,r,{},()=>delete this.tempLine[a]));break;case qt.Undo:this.handleUndo(o);break}}handleDrawLine(e,n,{withUndo:s=!1},o=rh){!n||Object.prototype.toString.call(n)!="[object Object]"||Object.keys(n).length===0||df(()=>new Promise(r=>{if(s||(this.canvas[e]||(this.canvas[e]=this.initCanvas("_paintBrush-canvas--sync")),this.data[e]||(this.data[e]=[]),this.data[e].push(n)),!this.canvas[e])return;const a=this.canvas[e].getContext("2d");if(!a)return;const{line:l=[],color:c="black",duration:d=0,uuid:h}=n,u=vr(n.move||{},this.clientWidth,this.clientHeight);let m=[u];if(a.strokeStyle=c,a.beginPath(),a.moveTo(u.x,u.y),d&&!s){let A=[];const p=this;p.tween=bf({step:0},{step:l.length-1},d).onUpdate(({step:g})=>{var y;if(p.tweening=!0,!p.ready)return a.clearRect(0,0,p.canvas[h].width,p.canvas[h].height),(y=p.tween)==null?void 0:y.stop();const v=Math.floor(g);if(!A.find(I=>I===v)){if(A.push(v),m.push(vr(l[v],p.clientWidth,p.clientHeight)),m.length<3)return;const{control:I,end:k}=Ps(m);if(!I||!k)return;a.quadraticCurveTo(I.x,I.y,k.x,k.y),a.stroke()}}).onComplete(g=>{p.tween=void 0,p.tweening=!1,A=[],m=[],o&&o(),r()})}else{for(let A=0;A<l.length;A++){if(m.push(vr(l[A],this.clientWidth,this.clientHeight)),m.length<3)continue;const{control:p,end:g}=Ps(m);!p||!g||a.quadraticCurveTo(p.x,p.y,g.x,g.y)}a.stroke(),m=[],o&&o(),r()}}))}handleUndo(e){if(!this.canvas[e]||!this.data[e]||this.data[e].length===0)return;this.data[e].pop();const n=()=>{var o;const s=(o=this.canvas[e])==null?void 0:o.getContext("2d");s&&s.clearRect(0,0,this.canvas[e].width,this.canvas[e].height),this.data[e].forEach(r=>this.handleDrawLine(e,r,{withUndo:!0}))};if(this.tween&&this.tweening){this.tween.stop(),Hs(n,60);return}n()}destroyBrush(){this.closeBrush(),this.ready=!1,this.emit("readyChange",!0)}};class Pf{constructor(t={}){f(this,"controller");const e=Object.assign({currentColor:"#f44336",onUndoText:"回退",onExitText:"关闭"},t);this.controller=new If(e)}on(t,e){this.controller.on(t,e)}off(t,e){this.controller.off(t,e)}once(t,e){this.controller.once(t,e)}show(){this.controller.openBrush()}action(t){this.controller.action(t)}get state(){return this.controller.state}get configs(){return this.controller.configs}dispose(){return this.controller.destroyBrush()}setCurrentColor(t){this.controller.updateCurrentColor(t)}}const Ef=(i,t)=>{var G,_;let e=(_=(G=t==null?void 0:t.initialState)==null?void 0:G.enabled)!=null?_:!0,n=!1,s=!0,o=null;const a=H(H({},{lookAtCurrentCamera:!1,lockedPanoIndex:null,lockedLatitude:null,lockedLongitude:null}),t==null?void 0:t.config),l=new E.Scene,c=new Te.Camera(60);let d=new E.Object3D,h,u;{const Q=new E.DirectionalLight(16777215,.5);Q.position.copy(new E.Vector3(1,1,1)),l.add(Q)}{const Q=new E.DirectionalLight(16777215,.3);l.add(Q)}{const Q=new E.AmbientLight(16777215,.3);l.add(Q)}l.add(d);const m=()=>{if(n)return;h=T(i.model,c.fov,c.aspect),u=i.model.bounding.getCenter(new E.Vector3),l.remove(d),d=F(i.model),l.add(d),n=!0,V();function Q(Z){const X=Z.clone();return X.uniforms.modelAlpha.value=1,X.uniforms.map.value&&(X.uniforms.map.value.needsUpdate=!0),X}function F(Z){if(Z instanceof E.Mesh){const X=Z.geometry,$=Array.isArray(Z.material)?Z.material.map(Q):Q(Z.material);return new E.Mesh(X,$)}else if(Z instanceof E.Group){const X=new E.Group;return Z.children.forEach($=>X.add(F($))),X}else{const X=new E.Object3D;return Z.children.forEach($=>X.add(F($))),X}}},A=()=>{if(i.renderer)return o||(o=new E.WebGLRenderer({antialias:!1,alpha:!0}),o.setPixelRatio(i.renderer.getPixelRatio()),o.outputEncoding=E.sRGBEncoding,o.setClearColor(1579548,0),o.autoClear=!0),o},p=()=>{d.traverse(Q=>{Q instanceof E.Mesh&&[].concat(Q.material).forEach(Z=>Z.dispose())}),l.remove(d),d=new E.Object3D,l.add(d),n=!1,V()},g=()=>{e&&(n||m())},v=()=>{e||(e=!0,l.add(d),!n&&i.model.loaded&&m(),V())},y=()=>{e&&(l.remove(d),s=!0,L(),e=!1)},I=(Q,F={})=>{const Z=A();if(!Z)return;Q.appendChild(Z.domElement),k(F);const X=window.getComputedStyle(Q).position;X!=="relative"&&X!=="absolute"&&X!=="fixed"&&X!=="sticky"&&(Q.style.position="relative")},k=(Q={})=>{if(!o)return;const Z=o.domElement.parentNode;if(Z!=null&&Z.nodeName){const{width:X=Z.offsetWidth,height:$=Z.offsetHeight}=Q;o.setSize(X,$),c.aspect=X/$,c.updateProjectionMatrix()}V()};function T(Q,F,Z){const X=Q.bounding,$=Math.pow(Math.pow(X.max.x-X.min.x+1,2)+Math.pow(X.max.y-X.min.y+1,2)+Math.pow(X.max.z-X.min.z+1,2),1/2);let ce=$/2/Math.tan(Math.PI*F/360);return Z<1&&(ce=ce/Z),isNaN(ce)?$:ce}function P(Q){return i.work.observers[Q].standingPosition.clone()}const V=()=>{if(!e||!h||!u)return;const Q=i.getPose();Q.fov=c.fov,Q.offset=u,Q.distance=h,typeof a.lockedLatitude=="number"&&(Q.latitude=a.lockedLatitude),typeof a.lockedLongitude=="number"&&(Q.longitude=a.lockedLongitude),typeof a.lockedPanoIndex=="number"&&(Q.offset=P(a.lockedPanoIndex)),a.lookAtCurrentCamera&&(Q.offset=i.camera.position.clone().setY(i.camera.position.y+1)),c.setFromPose(Q),s=!0},L=()=>{!e||s!==!0||!o||!o.domElement.parentNode||o.domElement.parentNode.offsetWidth===0||(o.render(l,c),s=!1)},W=()=>{o&&o.dispose(),o=null},q=Q=>{Object.assign(a,Q),V()},N=()=>({enabled:e});return Object.assign(window,{camera:c}),i.on("modelLoaded",g),i.on("modelWillLoad",p),i.on("cameraDirectionUpdate",V),i.on("dispose",W),i.on("renderFrame",L),i.on("cameraPositionUpdate",V),{appendTo:I,refresh:k,changeConfigs:q,enable:v,disable:y,getCurrentState:N}};function un(...i){const t=[];return i.forEach(e=>{e.isCSS3DObjectPlus?t.push(e):t.push(...un(...e.children))}),t}function Xs(i,t){const e=Math.round(i);return e%2===0?e:e+(t!=null&&t.floor?-1:1)}function kf(i,t,e=!0){if(!i)return console.error("createResizeObserver: element is undefined"),{observe:()=>{},unobserve:()=>{}};const n=()=>{const o=Xs(i.clientWidth,{floor:!0}),r=Xs(i.clientHeight,{floor:!0});t(o,r)};if(typeof ResizeObserver=="undefined"||!ResizeObserver)return console.warn("createResizeObserver: ResizeObserver is undefined"),{observe:()=>n(),unobserve:()=>{}};const s=new ResizeObserver(n);return e&&n(),{observe:()=>s.observe(i),unobserve:()=>s.unobserve(i)}}class el extends Us.CSS3DRenderer{constructor(){super();f(this,"wrapper");f(this,"requestAnimationFrameId");f(this,"resizeDisoper");this.domElement.style.position="absolute",this.domElement.style.top="0",this.domElement.style.left="0",this.domElement.style.userSelect="none",this.domElement.style.pointerEvents="none"}setWrapper(e){if(!e)throw new Error("CSS3DRenderer: wrapper is required");if(e.contains(this.domElement))return;const n=this.wrapper;return n&&n.contains(this.domElement)&&this.domElement.remove(),this.appendToElement(e),this.wrapper=e,this}appendToElement(e){e.appendChild(this.domElement);const n=(r,a)=>this.setSize(r,a),{observe:s,unobserve:o}=kf(e,n,!0);s(),this.resizeDisoper=o,this.wrapper=e}renderEveryFrame(e,n){if(this.wrapper||console.warn("wrapper is not find, creating a html element and call setWrapper(wrapper)",this,e),this.requestAnimationFrameId)return;const s=()=>{this.requestAnimationFrameId=requestAnimationFrame(s),e.visible&&un(e).length!==0&&this.render(e,n)};s()}stopRender(){this.requestAnimationFrameId&&cancelAnimationFrame(this.requestAnimationFrameId)}dispose(){var e;this.stopRender(),(e=this.resizeDisoper)==null||e.call(this),this.domElement.remove()}}function Mf(i){return typeof Symbol=="undefined"?`$Symbol<${i}>$`:Symbol(i)}const Ji=Mf("$$EVENT$$");function ks(i){return i[Ji]||(i[Ji]={}),i[Ji]}function xf(i){i[Ji]||delete i[Ji]}class pi{hasListener(t){const e=ks(this);return!!(e!=null&&e[t]&&e[t].length>0)}on(t,e,n){const s=ks(this);return s[t]||(s[t]=[]),s[t].push([e,n||!1]),()=>this.off(t,e)}once(t,e){return this.on(t,e,!0)}off(t,e){if(t===void 0){xf(this);return}const n=ks(this);if(n[t]||(n[t]=[]),e===void 0){n[t].length=0;return}let s=0;for(;s<n[t].length&&n[t][s][0]!==e;s++);s<n[t].length&&n[t].splice(s,1)}emit(t,...e){let n=!1;const o=ks(this)[t]||[];for(let r of o.slice()){const[a,l=!1]=r,c=a(...e);l&&this.off(t,a),c===!1&&(n=!0)}return n}}const Df=({x:i,y:t,z:e})=>new R.Vector3(i,t,e),St=i=>new R.Vector3().fromArray(i),$i=i=>i instanceof R.Vector3?i:Array.isArray(i)?St(i):Df(i);class Sf extends E.Mesh{constructor(e,n){const s=new E.MeshBasicMaterial({opacity:0,color:0,transparent:!1,side:E.DoubleSide}),o=new E.PlaneGeometry(e,n);super(o,s);f(this,"name","opacity-mesh")}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}}function nn(...i){const t=new R.Vector3;return i.forEach(e=>t.add(e)),t.divideScalar(i.length),t}const ch=1,Tf=`CSS3DObjectPlus@${ch}`,Lf=.00216,jf=.003;class zf extends Us.CSS3DObject{constructor(e){var T,P,V;const n=e.container,s=e.cornerPoints,o=(T=e.ratio)!=null?T:jf,r=(P=e.dpr)!=null?P:1,a=(V=e.pointerEvents)!=null?V:"auto",l=Math.max(Lf,o),c=s[0].distanceTo(s[1]),d=s[1].distanceTo(s[2]),h=Xs(c/o*r),u=Xs(d/o*r),m=nn(...s);let A;if(l===o)n.style.width=`${h}px`,n.style.height=`${u}px`,A=n;else{const L=document.createElement("div");L.style.width=`${h}px`,L.style.height=`${u}px`,L.style.pointerEvents="none";const W=o/l;n.style.position="absolute",n.style.left="0",n.style.top="0",n.style.width=`${W*h}px`,n.style.height=`${W*u}px`,L.appendChild(n),A=L}super(A);f(this,"version",ch);f(this,"isCSS3DObjectPlus",!0);f(this,"container");f(this,"width");f(this,"height");f(this,"domWidthPx");f(this,"domHeightPx");f(this,"cornerPoints");f(this,"centerPosition");f(this,"ratio");f(this,"mode","front");f(this,"hooks",new pi);f(this,"opacityMesh");f(this,"selfVisible",!0);f(this,"parentVisibleListenerDisposer");f(this,"createOpacityMesh",e=>{const{domWidthPx:n,domHeightPx:s}=e,o=new Sf(n,s);return o.position.copy(e.position),o.rotation.copy(e.rotation),o.scale.copy(e.scale),o});f(this,"addParentVisibleListener",()=>{var e;if((e=this.parent)!=null&&e.isCSS3DGroup){const n=this.parent,s=o=>{this.setVisible(o&&this.selfVisible,{setSelfVisible:!1})};n.hooks.on("visibleChange",s),this.parentVisibleListenerDisposer=()=>n.hooks.off("visibleChange",s)}});f(this,"removeParentVisibleListener",()=>{var e;(e=this.parentVisibleListenerDisposer)==null||e.call(this)});if(n.style.pointerEvents=a,this.scale.set(l,l,l),this.cornerPoints=s,this.ratio=o,this.container=n,e.mode&&(this.mode=e.mode),l===o)this.width=c,this.height=d,this.domWidthPx=h,this.domHeightPx=u,this.centerPosition=m;else{const L=o/l;this.width=L*c,this.height=L*d,this.domWidthPx=L*h,this.domHeightPx=L*u,this.centerPosition=new R.Vector3().subVectors(m,s[0]).multiplyScalar(L).add(s[0])}n.classList.add(`${Tf}__container`);const p=new R.Vector3().subVectors(s[1],s[0]),g=new R.Vector3().subVectors(s[3],s[0]),v=new R.Vector3().crossVectors(p,g).normalize();this.lookAt(v);const y=this.up.clone().applyQuaternion(this.quaternion),I=g.clone(),k=new R.Vector3().crossVectors(y,I).normalize();this.rotateOnWorldAxis(k,y.angleTo(I)),this.position.copy(m),this.addEventListener("added",()=>{var L;this.mode==="front"&&((L=this.opacityMesh)==null||L.removeFromParent()),this.addParentVisibleListener()}),this.addEventListener("removed",()=>{var L;(L=this.opacityMesh)==null||L.removeFromParent(),this.removeParentVisibleListener()})}setVisible(e,n={setSelfVisible:!0}){n.setSelfVisible&&(this.selfVisible=e),this.visible=e,this.opacityMesh&&(this.opacityMesh.visible=e)}removeFromParent(){var n;const e=this.parent;return e!==null&&e.remove(this),(n=this.opacityMesh)==null||n.removeFromParent(),this}removeOpacityMesh(){var e;return(e=this.opacityMesh)==null||e.removeFromParent(),this.opacityMesh=void 0,this}dispose(){var e;this.container.remove(),this.removeFromParent(),(e=this.opacityMesh)==null||e.removeFromParent()}getOpacityMesh(){if(this.opacityMesh)return this.opacityMesh;{const e=this.createOpacityMesh(this);return this.opacityMesh=e,e}}applyMatrix4(e){var n;super.applyMatrix4(e),(n=this.opacityMesh)==null||n.applyMatrix4(e)}applyQuaternion(e){var n;return super.applyQuaternion(e),(n=this.opacityMesh)==null||n.applyQuaternion(e),this}applyScaleMatrix4(e){var n;this.scale.applyMatrix4(e),(n=this.opacityMesh)==null||n.scale.applyMatrix4(e)}}class Of extends E.Scene{constructor(){super()}add(...t){return super.add(...t),un(...t).forEach(e=>{e.mode="front"}),this}}class Bf extends E.Scene{constructor(e){super();f(this,"scene");if(!e)throw new Error("CSS3DBehindScene: scene is required");this.scene=e}add(...e){return super.add(...e),un(...e).forEach(n=>{n.mode="behind",this.scene.add(n.getOpacityMesh())}),this}remove(...e){return un(...e).forEach(n=>{var s;(s=n.opacityMesh)==null||s.removeFromParent(),n.opacityMesh=null}),super.remove(...e),this}}class dh extends E.Group{constructor(e){super();f(this,"isCSS3DGroup",!0);f(this,"mode");f(this,"CSS3DObjectLength",0);f(this,"hooks",new pi);this.mode=e}add(...e){return un(...e).forEach(n=>{n.mode=this.mode}),super.add(...e),this.updateLength(),this}setVisible(e){this.visible=e,this.hooks.emit("visibleChange",e)}remove(...e){return super.remove(...e),this.updateLength(),this}updateLength(){this.CSS3DObjectLength=un(this).length}}class Vf extends dh{constructor(){super("front")}}class Rf extends dh{constructor(e){super("behind");f(this,"scene");if(!e)throw new Error("CSS3DBehindScene: scene is required");this.scene=e}add(...e){return un(...e).forEach(n=>{this.scene.add(n.getOpacityMesh())}),super.add(...e),this}}const Qf=3,Hr="CSS3DRenderer",Yi=`${Hr}@${Qf}`,Xn=()=>{console.error(`${Yi} is disposed`)},Ye={css3DObjects:[],frontModeStore:{css3DRenderer:new el},behindModeStore:{css3DRenderer:new el}};function tl(i){return Ye.css3DObjects.find(t=>t.id===i)}function Gf(i){Ye.frontModeStore.css3DRenderer.setWrapper(i)}function Nf(i){Ye.behindModeStore.css3DRenderer.setWrapper(i)}class li{constructor(t){f(this,"hooks",new pi);f(this,"state",{enabled:!0,visible:!0,disposed:!1});f(this,"_scene");f(this,"store",{frontModeGroup:new Vf});f(this,"create3DElement",(t,e,n)=>{if(this.state.disposed)return Xn();const s=(()=>{const k={ratio:.00216,devicePixelRatio:1,mode:"front",autoRender:!0,container:document.createElement("div"),pointerEvents:"none"};return Object.assign(k,n)})(),o=e.map($i);if((o==null?void 0:o.length)<4)return console.error(`${Yi}: requires 4 point but params may have fewer`);const{ratio:r,devicePixelRatio:a,mode:l,autoRender:c,container:d,pointerEvents:h}=s;let u=!1;const m=this.createObject(o,{ratio:r,dpr:a,container:d,mode:l,pointerEvents:h});Ye.css3DObjects.push(m),s.scene&&this.setScene(s.scene);const A=()=>{if(u)return;const k=m.mode==="front"?this.getFrontCSS3DObjectGroup():this.getBehindCSS3DObjectGroup();k&&k.add(m)},p=()=>{u||(A(),this.render(t),this.hooks.emit("render"))},g=k=>this.setVisibleById(m.id,k),v=k=>this.setEnabledById(m.id,k),y=()=>(u=!0,m.removeFromParent(),!0),I=l==="front"?Ye.frontModeStore.css3DRenderer:Ye.behindModeStore.css3DRenderer;return c&&p(),{id:m.uuid,container:d,css3DObject:m,render:c?void 0:p,show:()=>g(!0),hide:()=>g(!1),setVisible:g,enable:()=>v(!0),disable:()=>v(!1),setEnabled:v,dispose:y,appendToElement:k=>I.setWrapper(k)}});f(this,"setVisibleById",(t,e)=>{var n;(n=tl(t))==null||n.setVisible(e)});f(this,"setEnabledById",(t,e)=>{const n=tl(t);if(!n)return;const s=n.mode==="front"?this.getFrontCSS3DObjectGroup({addGroupIfNotExists:!1}):this.getBehindCSS3DObjectGroup({addGroupIfNotExists:!1});s&&(e?s.add(n):s.remove(n))});f(this,"createObject",(t,e)=>{const n=new zf(H({cornerPoints:t},e));return n.element.classList.add(`${Hr}__container`),n.element.id=`${Hr}__container--${n.uuid}`,n});t&&this.setScene(t)}get scene(){return this._scene||console.error("scene doesn't exist!, please call setScene(scene) first"),this._scene}static get frontModeCSS3DRenderer(){return Ye.frontModeStore.css3DRenderer}static get behindModeCSS3DRenderer(){return Ye.behindModeStore.css3DRenderer}get frontModeCSS3DRenderer(){return Ye.frontModeStore.css3DRenderer}get behindModeCSS3DRenderer(){return Ye.behindModeStore.css3DRenderer}setScene(t){this._scene=t}getCurrentState(){return this.state}setState(t,e={userAction:!0}){if(this.state.disposed)return Xn();const n=H({},this.state);this.state=Object.assign(this.state,t),n.visible!==this.state.visible&&(t.visible?this.handleShow():this.handleHide()),n.enabled!==this.state.enabled&&(t.enabled?this.handleEnable():this.handleDisable()),n.disposed!==this.state.disposed&&this.handleDispose(),this.hooks.emit("stateChange",{state:this.state,prevState:n,userAction:e.userAction})}dispose(){this.setState({disposed:!0}),this.hooks.emit("dispose")}show(){return U(this,arguments,function*({userAction:t}={userAction:!0}){if(this.state.disposed)return Xn();this.setState({visible:!0},{userAction:t}),this.hooks.emit("show",{userAction:t})})}hide(){return U(this,arguments,function*({userAction:t}={userAction:!0}){if(this.state.disposed)return Xn();this.setState({visible:!1},{userAction:t}),this.hooks.emit("hide",{userAction:t})})}enable({userAction:t}={userAction:!0}){if(this.state.disposed)return Xn();this.setState({enabled:!0},{userAction:t}),this.hooks.emit("enable",{userAction:t})}disable({userAction:t}={userAction:!0}){if(this.state.disposed)return Xn();this.setState({enabled:!1},{userAction:t}),this.hooks.emit("disable",{userAction:t})}getFrontCSS3DScene({createSceneIfNotExists:t=!1}={}){var n;const e=(n=Ye.frontModeStore)==null?void 0:n.css3DScene;if(e)return e;if(t){const s=new Of;Ye.frontModeStore.css3DScene=s}return Ye.frontModeStore.css3DScene}getBehindCSS3DScene({createSceneIfNotExists:t=!1}={}){var n,s;const e=(n=Ye.behindModeStore)==null?void 0:n.css3DScene;if(e)return e;if(t){const o=(s=Ye.behindModeStore.scene)!=null?s:this.scene;if(!o){console.error(`${Yi}: scene is required when mode is behind`);return}const r=new Bf(o);Ye.behindModeStore.css3DScene=r,Ye.behindModeStore.scene=o}return Ye.behindModeStore.css3DScene}getFrontCSS3DObjectGroup({addGroupIfNotExists:t=!0}={}){const e=this.getFrontCSS3DScene({createSceneIfNotExists:t});return t&&e&&(e.getObjectById(this.store.frontModeGroup.id)||e.add(this.store.frontModeGroup)),this.store.frontModeGroup}getBehindCSS3DObjectGroup({addGroupIfNotExists:t=!0}={}){var n;const e=this.getBehindCSS3DScene({createSceneIfNotExists:t});if(t&&e&&this.scene){const s=(n=this.store.behindModeGroup)!=null?n:new Rf(this.scene);this.store.behindModeGroup=s,e.getObjectById(s.id)||e.add(s)}return this.store.behindModeGroup}render(t){var e,n;if(this.getFrontCSS3DObjectGroup({addGroupIfNotExists:!1}).CSS3DObjectLength>0){const s=this.getFrontCSS3DScene({createSceneIfNotExists:!0});if(!s)return console.error(`${Yi}: css3DScene is required when mode is front`);Ye.frontModeStore.css3DRenderer.renderEveryFrame(s,t)}if(((n=(e=this.getBehindCSS3DObjectGroup({addGroupIfNotExists:!1}))==null?void 0:e.CSS3DObjectLength)!=null?n:0)>0){const s=this.getBehindCSS3DScene({createSceneIfNotExists:!0});if(!s)return console.error(`${Yi}: css3DScene is required when mode is behind`);Ye.behindModeStore.css3DRenderer.renderEveryFrame(s,t)}}handleShow(){return U(this,null,function*(){var t;this.store.frontModeGroup.setVisible(!0),(t=this.store.behindModeGroup)==null||t.setVisible(!0)})}handleHide(){return U(this,null,function*(){var t;this.store.frontModeGroup.setVisible(!1),(t=this.store.behindModeGroup)==null||t.setVisible(!1)})}handleEnable(){var t,e;(t=this.getFrontCSS3DScene())==null||t.add(this.store.frontModeGroup),this.store.behindModeGroup&&((e=this.getBehindCSS3DScene())==null||e.add(this.store.behindModeGroup))}handleDisable(){var t,e,n;this.store.frontModeGroup.children.forEach(s=>{s instanceof Us.CSS3DObject&&s.element instanceof Element&&s.element.parentNode!==null&&s.element.remove()}),(t=this.store.behindModeGroup)==null||t.children.forEach(s=>{s instanceof Us.CSS3DObject&&s.element instanceof Element&&s.element.parentNode!==null&&s.element.remove()}),(e=this.getFrontCSS3DScene())==null||e.remove(this.store.frontModeGroup),this.store.behindModeGroup&&((n=this.getBehindCSS3DScene())==null||n.remove(this.store.behindModeGroup))}handleDispose(){this.handleDisable()}}f(li,"setFrontModeContainer",Gf),f(li,"setBehindModeContainer",Nf);function hh(i){return U(this,null,function*(){return new Promise(t=>{var e;if((e=i.model)!=null&&e.loaded){t();return}else i.once("modelLoaded",()=>t())})})}const xt=document.createElement("div");xt.classList.add("behindFiveElement");xt.style.position="absolute";xt.style.top="0";xt.style.left="0";xt.style.width="100%";xt.style.height="100%";xt.style.pointerEvents="none";function uh(i){var n,s,o,r,a;const t=(a=(s=br(i.getElement()))!=null?s:br((n=i.getElement())==null?void 0:n.parentElement))!=null?a:br((r=(o=i.getElement())==null?void 0:o.parentElement)==null?void 0:r.parentElement),e=t==null?void 0:t.parentElement;if(e)return e.contains(xt)||t.parentElement.insertBefore(xt,t),xt;console.error("Can not find a valid element to insert behindFiveElement. How to fix it: https://github.com/realsee-developer/dnalogel/tree/main/plugins/src/CSS3DRenderPlugin/README.md")}function br(i){var a;if(!i)return;const t=(a=i.style.position)!=null?a:getComputedStyle(i).position;if(t!=="fixed"&&t!=="absolute"&&t!=="relative")return;const e=getComputedStyle(i),n=e.backgroundColor,s=e.backgroundImage;if(!(n!=="transparent"&&n!=="rgba(0, 0, 0, 0)"&&n!==""||s!=="none"&&s!==""))return i}class _r{constructor(t=0,e=0){f(this,"min");f(this,"max");f(this,"isInterval",!0);this.min=t,this.max=e}fromArray(t){return this.min=t[0],this.max=t[1],this}isOverlap(t){return Math.min(this.max,t.max)<Math.max(this.min,t.min)}contains(t){return this.min<t.min&&this.max>t.max}}class Hf{constructor(t,e){f(this,"min");f(this,"max");f(this,"xInterval");f(this,"yInterval");f(this,"isRectangle",!0);this.min=t,this.max=e,this.xInterval=new _r(this.min.x,this.max.x),this.yInterval=new _r(this.min.y,this.max.y)}isOverlapWithRectangle(t){return!this.xInterval.isOverlap(t.xInterval)&&!this.yInterval.isOverlap(t.yInterval)}containsRect(t){return this.xInterval.contains(t.xInterval)&&this.yInterval.contains(t.yInterval)}}function ca(i){return i==="Panorama"||i==="DepthPanorama"||i==="VRPanorama"||i==="XRPanorama"}function fh(i){return!ca(i)}function Ms(i,t,e){const n=i[t],s=i[e];n===void 0||s===void 0||(i[t]=s,i[e]=n)}function _f(i,t,e){const n=e/2;for(let s=1;s<=n;s++){const o=e-(s-1);for(let r=1;r<=t;r++){const a=(s-1)*t+r-1,l=(o-1)*t+r-1;Ms(i,a*4+0,l*4+0),Ms(i,a*4+1,l*4+1),Ms(i,a*4+2,l*4+2),Ms(i,a*4+3,l*4+3)}}}let da=class{constructor(t,e){f(this,"width");f(this,"height");f(this,"containerDom");f(this,"hooks",new Te.Subscribe);f(this,"canvas",document.createElement("canvas"));f(this,"five");f(this,"scale");f(this,"config");f(this,"offset",{x:0,y:0});f(this,"context");f(this,"renderCenter",new E.Vector3);f(this,"hammer");f(this,"state",{enabled:!1});f(this,"onPan",t=>{if(!this.containerDom||this.hooks.emit("wantsPanGesture",t))return;const n=this.offset.x+t.deltaX,s=this.offset.y+t.deltaY;this.canvas.style.boxShadow="0 2px 30px 0 rgba(0,0,0,0.20)",this.canvas.style.transform=`translate3d(${n}px, ${s}px, 100px)`});f(this,"onPanEnd",t=>{this.offset={x:this.offset.x+t.deltaX,y:this.offset.y+t.deltaY},this.canvas.style.boxShadow="none"});var s,o,r;if(!t.renderer)throw new Error("Five Render 未初始化");this.five=t,this.scale=(s=e==null?void 0:e.scale)!=null?s:2,this.width=(o=e==null?void 0:e.width)!=null?o:190,this.height=(r=e==null?void 0:e.height)!=null?r:190,this.config={dragEnabled:(e==null?void 0:e.dragEnabled)||!1,autoFixPCPosition:(e==null?void 0:e.autoFixPCPosition)||!1,initialPosition:(e==null?void 0:e.initialPosition)||{left:"0",top:"0"}};const n=this.canvas.getContext("2d");if(!n)throw new Error("CANNOT CREATE CONTEXT2D");this.context=n,this.config.dragEnabled&&(this.hammer=new ss(this.canvas),this.hammer.on("pan",this.onPan),this.hammer.on("panend",this.onPanEnd)),this.initStyle()}getCurrentState(){return this.state}dispose(){var t;this.clear(),this.disable(),(t=this.hammer)==null||t.destroy()}show(){return this.canvas.style.visibility="visible",this}hide(){return this.canvas.style.visibility="hidden",this}enable(){var t;if(!this.state.enabled)return this.state.enabled=!0,(t=this.containerDom)==null||t.append(this.canvas),this}disable(){if(this.state.enabled)return this.state.enabled=!1,this.canvas.remove(),this}appendTo(t){return this.containerDom&&Array.from(this.containerDom.children).includes(this.canvas)&&this.containerDom.removeChild(this.canvas),this.containerDom=t,this.state.enabled&&t.append(this.canvas),this}clear(){return this.context.clearRect(0,0,this.canvas.width,this.canvas.height),this}renderWithPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}autoFixPCPosition(){if(!this.containerDom)return;const{width:t,height:e}=this,n=this.renderCenter.clone().project(this.five.camera),s=(n.x+1)/2*this.containerDom.clientWidth,o=-(n.x-1)/2*this.containerDom.clientWidth,r=-(n.y-1)/2*this.containerDom.clientHeight;s<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left="90px"):r<183?(this.canvas.style.top="90px",this.canvas.style.left=-t/2+"px"):o<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=-t-90+"px"):(this.canvas.style.left=-t/2+"px",this.canvas.style.top=-e-90+"px"),this.canvas.style.transform=`translate3d(${s}px, ${r}px, 10px)`,this.offset={x:s,y:r}}render(){if(!this.five.renderer||!this.containerDom)return;const{scale:t,context:e,width:n,height:s}=this,o=this.renderCenter.clone().project(this.five.camera),r=this.five.renderer.getSize(new E.Vector2),a=1,l=n/t,c=s/t,d=a*t,h=(o.x+1)/2*r.x,u=(o.y+1)/2*r.y,m=this.five.getPixels(h-l/2,u-l/2,l,c,d),A=Math.floor(n*a),p=Math.floor(s*a);_f(m,A,p);const g=new ImageData(A,p);g.data.set(m),e.putImageData(g,0,0)}initStyle(){const t=this.canvas;t.classList.add("five-plugin__magnifier"),t.style.position="absolute",t.style.pointerEvents="all",t.style.borderRadius="50%",t.style.zIndex="99";const e=1;t.setAttribute("width",(this.width*e).toString()),t.setAttribute("height",(this.height*e).toString()),t.style.border="2px solid rgba(255,255,255,0.20)",t.style.width=this.width+"px",t.style.height=this.height+"px",t.style.top=this.config.initialPosition.top,t.style.left=this.config.initialPosition.left,t.style.transform="translate(0,0,100px)",t.style.visibility="visible",this.config.dragEnabled&&(this.canvas.style.cursor="pointer")}};function Wf(i,t){const{offsetWidth:e,offsetHeight:n}=t,{top:s,left:o}=t.getBoundingClientRect();return new E.Vector2().set((i.x-o)/e*2-1,-(i.y-s)/n*2+1)}function mh(i,t){const{offsetWidth:e,offsetHeight:n}=t;return new E.Vector2().set(i.x/e*2-1,-i.y/n*2+1)}function Ff(i,t){const e=i.getElement();if(!e)return;const n=mh(t,e),s=new E.Raycaster;return s.setFromCamera(n,i.camera),s}function gh(i,t){const{x:e,y:n}=t,s=e*2-1,o=n*2-1,r=new E.Vector2().fromArray([s,o]),a=new E.Raycaster;return a.setFromCamera(r,i.camera),i.model.intersectRaycaster(a)[0]}const Yf="data:image/png;base64,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",Uf=`
|
|
102
102
|
varying vec2 vUv;
|
|
103
103
|
void main() {
|
|
104
104
|
vUv = uv;
|
|
@@ -174,15 +174,15 @@ void main() {
|
|
|
174
174
|
<div class='range-piece__content'></div>
|
|
175
175
|
<div class="range-piece__aim"></div>
|
|
176
176
|
</div>
|
|
177
|
-
`;class vh{constructor(t){f(this,"five");f(this,"contentElement",document.createElement("div"));f(this,"animeIns");f(this,"container");f(this,"css3DObject");f(this,"disposeCss3DObject");f(this,"state",{enabled:!1});this.five=t;const n=.4/2,o=vo(t).create3DDomContainer([[-n,n,0],[-n,-n,0],[n,-n,0],[n,n,0]].map(r=>new E.Vector3().fromArray(r)));if(o){const{container:r,dispose:a,css3DObject:l}=o;this.container=r,this.css3DObject=l,this.disposeCss3DObject=a}this.contentElement.style.width="100%",this.contentElement.style.height="100%",this.contentElement.style.backgroundImage=`url(${Ah})`,this.contentElement.style.backgroundSize="100%",this.contentElement.style.backgroundRepeat="no-repeat"}enable(){var t;this.state.enabled||(this.state.enabled=!0,(t=this.container)==null||t.appendChild(this.contentElement))}disable(){this.state.enabled&&(this.state.enabled=!1,this.contentElement.remove())}updateWithIntersect(t){if(!t.face||!this.css3DObject)return;const e=new E.Vector3().addVectors(t.point,t.face.normal);this.css3DObject.position.copy(t.point),this.css3DObject.lookAt(e),this.five.needsRender=!0}doAnimation(){var t;(t=this.animeIns)==null||t.dispose(),new go({progress:0}).to({progress:[1,0]}).duration(500).easing(Dt.Quadratic.InOut).onUpdate(({progress:e})=>{}).play()}dispose(){var t;(t=this.disposeCss3DObject)==null||t.call(this)}}class bh{constructor(t,e){f(this,"five");f(this,"hooks",new Te.Subscribe);f(this,"position");f(this,"magnifier",null);f(this,"pointHelper",null);f(this,"pointDomHelper",null);f(this,"state",{enabled:!1,visible:!0});f(this,"group",new E.Group);f(this,"show",()=>{this.state.visible||(this.state.visible=!0,this.pointHelper.visible=!0,this.pointDomHelper.enable(),this.magnifier.show(),this.five.needsRender=!0)});f(this,"hide",()=>{this.state.visible&&(this.state.visible=!1,this.pointHelper.visible=!1,this.pointDomHelper.disable(),this.magnifier.hide(),this.five.needsRender=!0)});f(this,"updateWithIntersect",(t,e={emitEvent:!0})=>{var s;this.abortUpdateMagnifier(),this.position=t,e.emitEvent&&this.hooks.emit("intersectionUpdate",t),this.pointHelper.updateWithIntersect(t),(s=this.pointDomHelper)==null||s.updateWithIntersect(t);const n=()=>this.magnifier.renderWithPoint(t.point);this.abortUpdateMagnifier=()=>this.five.off("renderFrame",n),this.five.once("renderFrame",n),this.five.needsRender=!0});f(this,"abortUpdateMagnifier",()=>{});var n;this.five=t,this.magnifier=(e==null?void 0:e.magnifier)!==void 0?e.magnifier:new da(t,(n=e==null?void 0:e.magnifierParams)!=null?n:{dragEnabled:!0}),this.pointHelper=(e==null?void 0:e.pointHelper)!==void 0?e.pointHelper:new ph,this.pointDomHelper=(e==null?void 0:e.pointDomHelper)!==void 0?e.pointDomHelper:new vh(t),this.group.name="five-point-selector",this.five.scene.add(this.group),this.magnifier.appendTo(document.body)}enable(){var t,e;this.state.enabled||(this.state.enabled=!0,this.pointHelper&&this.group.add(this.pointHelper),(t=this.magnifier)==null||t.enable(),(e=this.pointDomHelper)==null||e.enable(),this.five.needsRender=!0,this.hooks.emit("enabled"))}disable(){var t,e;this.state.enabled&&(this.state.enabled=!1,this.pointHelper&&this.group.remove(this.pointHelper),(t=this.magnifier)==null||t.disable(),(e=this.pointDomHelper)==null||e.disable(),this.hooks.emit("disabled"))}dispose(){this.hooks.off(),this.disable(),this.magnifier=null,this.pointHelper=null,this.pointDomHelper=null}}function em(i){return!Ai(i)}function Ai(i){return i!=null}function yh(i){return/^https?:\/\/|^\/\//.test(i)||/^data:/.test(i)}function ha(i,t){return yh(t)?t:`${i}${t}`}class go extends mo{constructor(){super(...arguments);f(this,"disposeMethods",[]);f(this,"animationFrameDisposer");f(this,"onDispose",e=>(this.disposeMethods.push(e),this));f(this,"play",()=>{var e;return this.start(0),(e=this.animationFrameDisposer)==null||e.call(this),this.animationFrameDisposer=os(n=>this.update(n)),this});f(this,"stop",()=>{var e;return super.stop(),(e=this.animationFrameDisposer)==null||e.call(this),this});f(this,"dispose",()=>{var e;this.stop(),(e=this.animationFrameDisposer)==null||e.call(this),this.disposeMethods.forEach(n=>n()),this.disposeMethods=[],lh(this)})}}function po(i,t=Dt.Linear.None){const e=new go({progress:0}).to({progress:1});return i!==void 0&&e.duration(i),t!==void 0&&e.easing(t),e}const es=window.requestAnimationFrame||(i=>setTimeout(i,16)),tm=window.cancelAnimationFrame||clearTimeout;function Ao(i,t=0){t<=0?es(i):es(()=>Ao(i,t-1))}function os(i,t=60){let e=-1,n=0,s=-1;const o=1e3/t;function r(a){s===-1&&(s=a),e=es(r),!(a-n<o)&&(n=a,i==null||i(a-s))}return e=es(r),function(){tm(e)}}function nm(){const i=Date.now();return new Promise(t=>{es(()=>{t(Date.now()-i)})})}const im=Object.freeze(Object.defineProperty({__proto__:null,BetterTween:go,Interval:_r,Magnifier:da,PointDomHelper:vh,PointHelper:ph,PointSelectorHelper:bh,Rectangle:Hf,absoluteUrl:ha,getCoordsFromClient:Wf,getCoordsFromElement:mh,getFrameTime:nm,getIntersectFromRelativePosition:gh,getRaycasterFromFivePointer:Ff,isAbsoluteURL:yh,isModelLike:fh,isNil:em,isPanoramaLike:ca,nextFrame:Ao,notNil:Ai,requestAnimationFrameInterval:os,tweenProgress:po,uuid:at},Symbol.toStringTag,{value:"Module"})),wh="v2.0.1",yr=`CSS3DRenderPlugin@${wh}`;let sm=class extends li{constructor(e){super();f(this,"five");f(this,"behindFiveContainer");f(this,"VERSION",wh);f(this,"staticPrefix","//vr-image-4.realsee-cdn.cn");f(this,"create3DDomContainer",(e,n)=>{if(this.state.disposed)return;const s=(()=>{var h;(n==null?void 0:n.dpr)!==void 0&&console.warn(`${yr}: please use "config.devicePixelRatio" replace "config.dpr"`);const d={ratio:.00216,devicePixelRatio:(h=n==null?void 0:n.dpr)!=null?h:1,mode:"front",autoRender:!0};return Object.assign(d,n,(n==null?void 0:n.mode)==="behind"?{scene:this.five.scene}:void 0)})(),o=this.five.getElement();if(!o){console.error(`${yr}: five.getElement() is ${o}`);return}const{autoRender:r}=s;s.mode==="behind"&&s.behindFiveContainer&&(this.behindFiveContainer=s.behindFiveContainer);const a=this.create3DElement(this.five.camera,e,Ae(H({},s),{autoRender:!1}));if(!a)return;const l=()=>{const d=a.css3DObject.mode==="front"?o.parentElement:this.getBehindFiveElement();if(!d)return console.error(`${yr}: wrapper is ${d}`);a.appendToElement(d),a.render()},c=()=>{a.css3DObject.mode==="front"&&l(),a.css3DObject.mode==="behind"&&hh(this.five).then(()=>l())};return r&&c(),Ae(H({},a),{render:r?void 0:c})});this.five=e}disposeAll(){return this.dispose()}setState(...e){const n=super.setState(...e);return this.five.needsRender=!0,n}getBehindFiveElement(){return this.behindFiveContainer?this.behindFiveContainer:(this.behindFiveContainer=uh(this.five),this.behindFiveContainer)}absoluteUrl(e){return ha(this.staticPrefix,e)}};const ua=i=>new sm(i),vo=ua;function wr(i,t,e=new R.Vector3(1,1,1),n=!1){const s=new sh.Line(i,t);return s.setMaterial({dashed:n,color:e,linewidth:1}),s.remove(s.points),s}const om=i=>{const t={intersection:null,disposers:[]},e=d=>{t.intersection=d},n=()=>{t.intersection=null};i.on("modelLoaded",()=>{i.on("intersectionOnModelUpdate",e),i.on("intersectionHidden",n)}),i.on("dispose",()=>{i.off("intersectionOnModelUpdate",e),i.off("intersectionHidden",n)});const s=(d,h=2,u=.1)=>{const m=h/2,p=c(d,u),g=new R.Group;g.add(wr(new R.Vector3(p.x+m,p.y,p.z),new R.Vector3(p.x-m,p.y,p.z),new R.Vector3(1,0,0)),wr(new R.Vector3(p.x,p.y+m,p.z),new R.Vector3(p.x,p.y-m,p.z),new R.Vector3(0,1,0)),wr(new R.Vector3(p.x,p.y,p.z+m),new R.Vector3(p.x,p.y,p.z-m),new R.Vector3(0,0,1))),i.scene.add(g),i.needsRender=!0;const b=()=>{i.scene.remove(g)};return t.disposers.push(b),{clear:b,pointAxesHelperMesh:g}},o=(d,h=0)=>{var b,y;const u=(b=i==null?void 0:i.camera)==null?void 0:b.position;if(!u)return!1;const m=d.distanceTo(u),A=d.sub(u).normalize(),p=new R.Raycaster(u,A),g=(y=i.model.intersectRaycaster(p))==null?void 0:y[0];return!(g&&g.distance+h<m)},r=()=>t.intersection,a=()=>{var d,h;(h=(d=t.disposers)==null?void 0:d.forEach)==null||h.call(d,u=>u==null?void 0:u()),i.off("intersectionOnModelUpdate",e),i.off("intersectionHidden",n)},l=a,c=(d,h)=>{const u=d.clone();return i.camera.position.clone().sub(u).setLength(h).add(u)};return{intersection:r,pointAxesHelper:s,movePointTowardsCamera:c,destroy:a,dispose:l,canSeePoint:o}};function J(){}const en=i=>i;function et(i,t){for(const e in t)i[e]=t[e];return i}function rm(i){return!!i&&(typeof i=="object"||typeof i=="function")&&typeof i.then=="function"}function Ch(i){return i()}function nl(){return Object.create(null)}function Je(i){i.forEach(Ch)}function sn(i){return typeof i=="function"}function oe(i,t){return i!=i?t==t:i!==t||i&&typeof i=="object"||typeof i=="function"}let xs;function Pt(i,t){return xs||(xs=document.createElement("a")),xs.href=t,i===xs.href}function am(i){return Object.keys(i).length===0}function vi(i,t,e,n){if(i){const s=Ih(i,t,e,n);return i[0](s)}}function Ih(i,t,e,n){return i[1]&&n?et(e.ctx.slice(),i[1](n(t))):e.ctx}function bi(i,t,e,n){if(i[2]&&n){const s=i[2](n(e));if(t.dirty===void 0)return s;if(typeof s=="object"){const o=[],r=Math.max(t.dirty.length,s.length);for(let a=0;a<r;a+=1)o[a]=t.dirty[a]|s[a];return o}return t.dirty|s}return t.dirty}function yi(i,t,e,n,s,o){if(s){const r=Ih(t,e,n,o);i.p(r,s)}}function wi(i){if(i.ctx.length>32){const t=[],e=i.ctx.length/32;for(let n=0;n<e;n++)t[n]=-1;return t}return-1}function Re(i){return i==null?"":i}function $t(i){return i&&sn(i.destroy)?i.destroy:J}function il(i){const t=typeof i=="string"&&i.match(/^\s*(-?[\d.]+)([^\s]*)\s*$/);return t?[parseFloat(t[1]),t[2]||"px"]:[i,"px"]}const Ph=typeof window!="undefined";let fa=Ph?()=>window.performance.now():()=>Date.now(),ma=Ph?i=>requestAnimationFrame(i):J;const si=new Set;function Eh(i){si.forEach(t=>{t.c(i)||(si.delete(t),t.f())}),si.size!==0&&ma(Eh)}function ga(i){let t;return si.size===0&&ma(Eh),{promise:new Promise(e=>{si.add(t={c:i,f:e})}),abort(){si.delete(t)}}}function D(i,t){i.appendChild(t)}function ue(i,t,e){const n=pa(i);if(!n.getElementById(t)){const s=x("style");s.id=t,s.textContent=e,kh(n,s)}}function pa(i){if(!i)return document;const t=i.getRootNode?i.getRootNode():i.ownerDocument;return t&&t.host?t:i.ownerDocument}function lm(i){const t=x("style");return kh(pa(i),t),t.sheet}function kh(i,t){return D(i.head||i,t),t.sheet}function B(i,t,e){i.insertBefore(t,e||null)}function O(i){i.parentNode&&i.parentNode.removeChild(i)}function Tt(i,t){for(let e=0;e<i.length;e+=1)i[e]&&i[e].d(t)}function x(i){return document.createElement(i)}function ze(i){return document.createElementNS("http://www.w3.org/2000/svg",i)}function Me(i){return document.createTextNode(i)}function ee(){return Me(" ")}function Pe(){return Me("")}function be(i,t,e,n){return i.addEventListener(t,e,n),()=>i.removeEventListener(t,e,n)}function Mh(i){return function(t){return t.stopPropagation(),i.call(this,t)}}function w(i,t,e){e==null?i.removeAttribute(t):i.getAttribute(t)!==e&&i.setAttribute(t,e)}function cm(i){return Array.from(i.childNodes)}function Oe(i,t){t=""+t,i.data!==t&&(i.data=t)}function z(i,t,e,n){e===null?i.style.removeProperty(t):i.style.setProperty(t,e,n?"important":"")}let Ds;function dm(){if(Ds===void 0){Ds=!1;try{typeof window!="undefined"&&window.parent&&window.parent.document}catch(i){Ds=!0}}return Ds}function bo(i,t){getComputedStyle(i).position==="static"&&(i.style.position="relative");const n=x("iframe");n.setAttribute("style","display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: -1;"),n.setAttribute("aria-hidden","true"),n.tabIndex=-1;const s=dm();let o;return s?(n.src="data:text/html,<script>onresize=function(){parent.postMessage(0,'*')}<\/script>",o=be(window,"message",r=>{r.source===n.contentWindow&&t()})):(n.src="about:blank",n.onload=()=>{o=be(n.contentWindow,"resize",t),t()}),D(i,n),()=>{(s||o&&n.contentWindow)&&o(),O(n)}}function K(i,t,e){i.classList[e?"add":"remove"](t)}function xh(i,t,{bubbles:e=!1,cancelable:n=!1}={}){const s=document.createEvent("CustomEvent");return s.initCustomEvent(i,e,n,t),s}class Zs{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,e,n=null){this.e||(this.is_svg?this.e=ze(e.nodeName):this.e=x(e.nodeType===11?"TEMPLATE":e.nodeName),this.t=e.tagName!=="TEMPLATE"?e:e.content,this.c(t)),this.i(n)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.nodeName==="TEMPLATE"?this.e.content.childNodes:this.e.childNodes)}i(t){for(let e=0;e<this.n.length;e+=1)B(this.t,this.n[e],t)}p(t){this.d(),this.h(t),this.i(this.a)}d(){this.n.forEach(O)}}const Js=new Map;let qs=0;function hm(i){let t=5381,e=i.length;for(;e--;)t=(t<<5)-t^i.charCodeAt(e);return t>>>0}function um(i,t){const e={stylesheet:lm(t),rules:{}};return Js.set(i,e),e}function Ks(i,t,e,n,s,o,r,a=0){const l=16.666/n;let c=`{
|
|
178
|
-
`;for(let g=0;g<=1;g+=l){const
|
|
177
|
+
`;class vh{constructor(t){f(this,"five");f(this,"contentElement",document.createElement("div"));f(this,"animeIns");f(this,"container");f(this,"css3DObject");f(this,"disposeCss3DObject");f(this,"state",{enabled:!1});this.five=t;const n=.4/2,o=vo(t).create3DDomContainer([[-n,n,0],[-n,-n,0],[n,-n,0],[n,n,0]].map(r=>new E.Vector3().fromArray(r)));if(o){const{container:r,dispose:a,css3DObject:l}=o;this.container=r,this.css3DObject=l,this.disposeCss3DObject=a}this.contentElement.style.width="100%",this.contentElement.style.height="100%",this.contentElement.style.backgroundImage=`url(${Ah})`,this.contentElement.style.backgroundSize="100%",this.contentElement.style.backgroundRepeat="no-repeat"}enable(){var t;this.state.enabled||(this.state.enabled=!0,(t=this.container)==null||t.appendChild(this.contentElement))}disable(){this.state.enabled&&(this.state.enabled=!1,this.contentElement.remove())}updateWithIntersect(t){if(!t.face||!this.css3DObject)return;const e=new E.Vector3().addVectors(t.point,t.face.normal);this.css3DObject.position.copy(t.point),this.css3DObject.lookAt(e),this.five.needsRender=!0}doAnimation(){var t;(t=this.animeIns)==null||t.dispose(),new go({progress:0}).to({progress:[1,0]}).duration(500).easing(Dt.Quadratic.InOut).onUpdate(({progress:e})=>{}).play()}dispose(){var t;(t=this.disposeCss3DObject)==null||t.call(this)}}class bh{constructor(t,e){f(this,"five");f(this,"hooks",new Te.Subscribe);f(this,"position");f(this,"magnifier",null);f(this,"pointHelper",null);f(this,"pointDomHelper",null);f(this,"state",{enabled:!1,visible:!0});f(this,"group",new E.Group);f(this,"show",()=>{this.state.visible||(this.state.visible=!0,this.pointHelper.visible=!0,this.pointDomHelper.enable(),this.magnifier.show(),this.five.needsRender=!0)});f(this,"hide",()=>{this.state.visible&&(this.state.visible=!1,this.pointHelper.visible=!1,this.pointDomHelper.disable(),this.magnifier.hide(),this.five.needsRender=!0)});f(this,"updateWithIntersect",(t,e={emitEvent:!0})=>{var s;this.abortUpdateMagnifier(),this.position=t,e.emitEvent&&this.hooks.emit("intersectionUpdate",t),this.pointHelper.updateWithIntersect(t),(s=this.pointDomHelper)==null||s.updateWithIntersect(t);const n=()=>this.magnifier.renderWithPoint(t.point);this.abortUpdateMagnifier=()=>this.five.off("renderFrame",n),this.five.once("renderFrame",n),this.five.needsRender=!0});f(this,"abortUpdateMagnifier",()=>{});var n;this.five=t,this.magnifier=(e==null?void 0:e.magnifier)!==void 0?e.magnifier:new da(t,(n=e==null?void 0:e.magnifierParams)!=null?n:{dragEnabled:!0}),this.pointHelper=(e==null?void 0:e.pointHelper)!==void 0?e.pointHelper:new ph,this.pointDomHelper=(e==null?void 0:e.pointDomHelper)!==void 0?e.pointDomHelper:new vh(t),this.group.name="five-point-selector",this.five.scene.add(this.group),this.magnifier.appendTo(document.body)}enable(){var t,e;this.state.enabled||(this.state.enabled=!0,this.pointHelper&&this.group.add(this.pointHelper),(t=this.magnifier)==null||t.enable(),(e=this.pointDomHelper)==null||e.enable(),this.five.needsRender=!0,this.hooks.emit("enabled"))}disable(){var t,e;this.state.enabled&&(this.state.enabled=!1,this.pointHelper&&this.group.remove(this.pointHelper),(t=this.magnifier)==null||t.disable(),(e=this.pointDomHelper)==null||e.disable(),this.hooks.emit("disabled"))}dispose(){this.hooks.off(),this.disable(),this.magnifier=null,this.pointHelper=null,this.pointDomHelper=null}}function em(i){return!Ai(i)}function Ai(i){return i!=null}function yh(i){return/^https?:\/\/|^\/\//.test(i)||/^data:/.test(i)}function ha(i,t){return yh(t)?t:`${i}${t}`}class go extends mo{constructor(){super(...arguments);f(this,"disposeMethods",[]);f(this,"animationFrameDisposer");f(this,"onDispose",e=>(this.disposeMethods.push(e),this));f(this,"play",()=>{var e;return this.start(0),(e=this.animationFrameDisposer)==null||e.call(this),this.animationFrameDisposer=os(n=>this.update(n)),this});f(this,"stop",()=>{var e;return super.stop(),(e=this.animationFrameDisposer)==null||e.call(this),this});f(this,"dispose",()=>{var e;this.stop(),(e=this.animationFrameDisposer)==null||e.call(this),this.disposeMethods.forEach(n=>n()),this.disposeMethods=[],lh(this)})}}function po(i,t=Dt.Linear.None){const e=new go({progress:0}).to({progress:1});return i!==void 0&&e.duration(i),t!==void 0&&e.easing(t),e}const es=window.requestAnimationFrame||(i=>setTimeout(i,16)),tm=window.cancelAnimationFrame||clearTimeout;function Ao(i,t=0){t<=0?es(i):es(()=>Ao(i,t-1))}function os(i,t=60){let e=-1,n=0,s=-1;const o=1e3/t;function r(a){s===-1&&(s=a),e=es(r),!(a-n<o)&&(n=a,i==null||i(a-s))}return e=es(r),function(){tm(e)}}function nm(){const i=Date.now();return new Promise(t=>{es(()=>{t(Date.now()-i)})})}const im=Object.freeze(Object.defineProperty({__proto__:null,BetterTween:go,Interval:_r,Magnifier:da,PointDomHelper:vh,PointHelper:ph,PointSelectorHelper:bh,Rectangle:Hf,absoluteUrl:ha,getCoordsFromClient:Wf,getCoordsFromElement:mh,getFrameTime:nm,getIntersectFromRelativePosition:gh,getRaycasterFromFivePointer:Ff,isAbsoluteURL:yh,isModelLike:fh,isNil:em,isPanoramaLike:ca,nextFrame:Ao,notNil:Ai,requestAnimationFrameInterval:os,tweenProgress:po,uuid:at},Symbol.toStringTag,{value:"Module"})),wh="v2.0.1",yr=`CSS3DRenderPlugin@${wh}`;let sm=class extends li{constructor(e){super();f(this,"five");f(this,"behindFiveContainer");f(this,"VERSION",wh);f(this,"staticPrefix","//vr-image-4.realsee-cdn.cn");f(this,"create3DDomContainer",(e,n)=>{if(this.state.disposed)return;const s=(()=>{var h;(n==null?void 0:n.dpr)!==void 0&&console.warn(`${yr}: please use "config.devicePixelRatio" replace "config.dpr"`);const d={ratio:.00216,devicePixelRatio:(h=n==null?void 0:n.dpr)!=null?h:1,mode:"front",autoRender:!0};return Object.assign(d,n,(n==null?void 0:n.mode)==="behind"?{scene:this.five.scene}:void 0)})(),o=this.five.getElement();if(!o){console.error(`${yr}: five.getElement() is ${o}`);return}const{autoRender:r}=s;s.mode==="behind"&&s.behindFiveContainer&&(this.behindFiveContainer=s.behindFiveContainer);const a=this.create3DElement(this.five.camera,e,Ae(H({},s),{autoRender:!1}));if(!a)return;const l=()=>{const d=a.css3DObject.mode==="front"?o.parentElement:this.getBehindFiveElement();if(!d)return console.error(`${yr}: wrapper is ${d}`);a.appendToElement(d),a.render()},c=()=>{a.css3DObject.mode==="front"&&l(),a.css3DObject.mode==="behind"&&hh(this.five).then(()=>l())};return r&&c(),Ae(H({},a),{render:r?void 0:c})});this.five=e}disposeAll(){return this.dispose()}setState(...e){const n=super.setState(...e);return this.five.needsRender=!0,n}getBehindFiveElement(){return this.behindFiveContainer?this.behindFiveContainer:(this.behindFiveContainer=uh(this.five),this.behindFiveContainer)}absoluteUrl(e){return ha(this.staticPrefix,e)}};const ua=i=>new sm(i),vo=ua;function wr(i,t,e=new R.Vector3(1,1,1),n=!1){const s=new sh.Line(i,t);return s.setMaterial({dashed:n,color:e,linewidth:1}),s.remove(s.points),s}const om=i=>{const t={intersection:null,disposers:[]},e=d=>{t.intersection=d},n=()=>{t.intersection=null};i.on("modelLoaded",()=>{i.on("intersectionOnModelUpdate",e),i.on("intersectionHidden",n)}),i.on("dispose",()=>{i.off("intersectionOnModelUpdate",e),i.off("intersectionHidden",n)});const s=(d,h=2,u=.1)=>{const m=h/2,p=c(d,u),g=new R.Group;g.add(wr(new R.Vector3(p.x+m,p.y,p.z),new R.Vector3(p.x-m,p.y,p.z),new R.Vector3(1,0,0)),wr(new R.Vector3(p.x,p.y+m,p.z),new R.Vector3(p.x,p.y-m,p.z),new R.Vector3(0,1,0)),wr(new R.Vector3(p.x,p.y,p.z+m),new R.Vector3(p.x,p.y,p.z-m),new R.Vector3(0,0,1))),i.scene.add(g),i.needsRender=!0;const v=()=>{i.scene.remove(g)};return t.disposers.push(v),{clear:v,pointAxesHelperMesh:g}},o=(d,h=0)=>{var v,y;const u=(v=i==null?void 0:i.camera)==null?void 0:v.position;if(!u)return!1;const m=d.distanceTo(u),A=d.sub(u).normalize(),p=new R.Raycaster(u,A),g=(y=i.model.intersectRaycaster(p))==null?void 0:y[0];return!(g&&g.distance+h<m)},r=()=>t.intersection,a=()=>{var d,h;(h=(d=t.disposers)==null?void 0:d.forEach)==null||h.call(d,u=>u==null?void 0:u()),i.off("intersectionOnModelUpdate",e),i.off("intersectionHidden",n)},l=a,c=(d,h)=>{const u=d.clone();return i.camera.position.clone().sub(u).setLength(h).add(u)};return{intersection:r,pointAxesHelper:s,movePointTowardsCamera:c,destroy:a,dispose:l,canSeePoint:o}};function J(){}const en=i=>i;function et(i,t){for(const e in t)i[e]=t[e];return i}function rm(i){return!!i&&(typeof i=="object"||typeof i=="function")&&typeof i.then=="function"}function Ch(i){return i()}function nl(){return Object.create(null)}function Je(i){i.forEach(Ch)}function sn(i){return typeof i=="function"}function oe(i,t){return i!=i?t==t:i!==t||i&&typeof i=="object"||typeof i=="function"}let xs;function Pt(i,t){return xs||(xs=document.createElement("a")),xs.href=t,i===xs.href}function am(i){return Object.keys(i).length===0}function vi(i,t,e,n){if(i){const s=Ih(i,t,e,n);return i[0](s)}}function Ih(i,t,e,n){return i[1]&&n?et(e.ctx.slice(),i[1](n(t))):e.ctx}function bi(i,t,e,n){if(i[2]&&n){const s=i[2](n(e));if(t.dirty===void 0)return s;if(typeof s=="object"){const o=[],r=Math.max(t.dirty.length,s.length);for(let a=0;a<r;a+=1)o[a]=t.dirty[a]|s[a];return o}return t.dirty|s}return t.dirty}function yi(i,t,e,n,s,o){if(s){const r=Ih(t,e,n,o);i.p(r,s)}}function wi(i){if(i.ctx.length>32){const t=[],e=i.ctx.length/32;for(let n=0;n<e;n++)t[n]=-1;return t}return-1}function Re(i){return i==null?"":i}function $t(i){return i&&sn(i.destroy)?i.destroy:J}function il(i){const t=typeof i=="string"&&i.match(/^\s*(-?[\d.]+)([^\s]*)\s*$/);return t?[parseFloat(t[1]),t[2]||"px"]:[i,"px"]}const Ph=typeof window!="undefined";let fa=Ph?()=>window.performance.now():()=>Date.now(),ma=Ph?i=>requestAnimationFrame(i):J;const si=new Set;function Eh(i){si.forEach(t=>{t.c(i)||(si.delete(t),t.f())}),si.size!==0&&ma(Eh)}function ga(i){let t;return si.size===0&&ma(Eh),{promise:new Promise(e=>{si.add(t={c:i,f:e})}),abort(){si.delete(t)}}}function D(i,t){i.appendChild(t)}function ue(i,t,e){const n=pa(i);if(!n.getElementById(t)){const s=x("style");s.id=t,s.textContent=e,kh(n,s)}}function pa(i){if(!i)return document;const t=i.getRootNode?i.getRootNode():i.ownerDocument;return t&&t.host?t:i.ownerDocument}function lm(i){const t=x("style");return kh(pa(i),t),t.sheet}function kh(i,t){return D(i.head||i,t),t.sheet}function B(i,t,e){i.insertBefore(t,e||null)}function O(i){i.parentNode&&i.parentNode.removeChild(i)}function Tt(i,t){for(let e=0;e<i.length;e+=1)i[e]&&i[e].d(t)}function x(i){return document.createElement(i)}function ze(i){return document.createElementNS("http://www.w3.org/2000/svg",i)}function Me(i){return document.createTextNode(i)}function ee(){return Me(" ")}function Pe(){return Me("")}function be(i,t,e,n){return i.addEventListener(t,e,n),()=>i.removeEventListener(t,e,n)}function Mh(i){return function(t){return t.stopPropagation(),i.call(this,t)}}function w(i,t,e){e==null?i.removeAttribute(t):i.getAttribute(t)!==e&&i.setAttribute(t,e)}function cm(i){return Array.from(i.childNodes)}function Oe(i,t){t=""+t,i.data!==t&&(i.data=t)}function z(i,t,e,n){e===null?i.style.removeProperty(t):i.style.setProperty(t,e,n?"important":"")}let Ds;function dm(){if(Ds===void 0){Ds=!1;try{typeof window!="undefined"&&window.parent&&window.parent.document}catch(i){Ds=!0}}return Ds}function bo(i,t){getComputedStyle(i).position==="static"&&(i.style.position="relative");const n=x("iframe");n.setAttribute("style","display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: -1;"),n.setAttribute("aria-hidden","true"),n.tabIndex=-1;const s=dm();let o;return s?(n.src="data:text/html,<script>onresize=function(){parent.postMessage(0,'*')}<\/script>",o=be(window,"message",r=>{r.source===n.contentWindow&&t()})):(n.src="about:blank",n.onload=()=>{o=be(n.contentWindow,"resize",t),t()}),D(i,n),()=>{(s||o&&n.contentWindow)&&o(),O(n)}}function K(i,t,e){i.classList[e?"add":"remove"](t)}function xh(i,t,{bubbles:e=!1,cancelable:n=!1}={}){const s=document.createEvent("CustomEvent");return s.initCustomEvent(i,e,n,t),s}class Zs{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,e,n=null){this.e||(this.is_svg?this.e=ze(e.nodeName):this.e=x(e.nodeType===11?"TEMPLATE":e.nodeName),this.t=e.tagName!=="TEMPLATE"?e:e.content,this.c(t)),this.i(n)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.nodeName==="TEMPLATE"?this.e.content.childNodes:this.e.childNodes)}i(t){for(let e=0;e<this.n.length;e+=1)B(this.t,this.n[e],t)}p(t){this.d(),this.h(t),this.i(this.a)}d(){this.n.forEach(O)}}const Js=new Map;let qs=0;function hm(i){let t=5381,e=i.length;for(;e--;)t=(t<<5)-t^i.charCodeAt(e);return t>>>0}function um(i,t){const e={stylesheet:lm(t),rules:{}};return Js.set(i,e),e}function Ks(i,t,e,n,s,o,r,a=0){const l=16.666/n;let c=`{
|
|
178
|
+
`;for(let g=0;g<=1;g+=l){const v=t+(e-t)*o(g);c+=g*100+`%{${r(v,1-v)}}
|
|
179
179
|
`}const d=c+`100% {${r(e,1-e)}}
|
|
180
|
-
}`,h=`__svelte_${hm(d)}_${a}`,u=pa(i),{stylesheet:m,rules:A}=Js.get(u)||um(u,i);A[h]||(A[h]=!0,m.insertRule(`@keyframes ${h} ${d}`,m.cssRules.length));const p=i.style.animation||"";return i.style.animation=`${p?`${p}, `:""}${h} ${n}ms linear ${s}ms 1 both`,qs+=1,h}function $s(i,t){const e=(i.style.animation||"").split(", "),n=e.filter(t?o=>o.indexOf(t)<0:o=>o.indexOf("__svelte")===-1),s=e.length-n.length;s&&(i.style.animation=n.join(", "),qs-=s,qs||fm())}function fm(){ma(()=>{qs||(Js.forEach(i=>{const{ownerNode:t}=i.stylesheet;t&&O(t)}),Js.clear())})}let ts;function Kt(i){ts=i}function An(){if(!ts)throw new Error("Function called outside component initialization");return ts}function Dh(i){An().$$.before_update.push(i)}function vt(i){An().$$.on_mount.push(i)}function Sh(i){An().$$.after_update.push(i)}function Lt(i){An().$$.on_destroy.push(i)}function yo(){const i=An();return(t,e,{cancelable:n=!1}={})=>{const s=i.$$.callbacks[t];if(s){const o=xh(t,e,{cancelable:n});return s.slice().forEach(r=>{r.call(i,o)}),!o.defaultPrevented}return!0}}function Wr(i,t){return An().$$.context.set(i,t),t}function fn(i){return An().$$.context.get(i)}function Ci(i,t){const e=i.$$.callbacks[t.type];e&&e.slice().forEach(n=>n.call(this,t))}const ei=[],Qe=[];let oi=[];const Fr=[],Th=Promise.resolve();let Yr=!1;function Lh(){Yr||(Yr=!0,Th.then(va))}function sl(){return Lh(),Th}function Ne(i){oi.push(i)}function Aa(i){Fr.push(i)}const Cr=new Set;let Zn=0;function va(){if(Zn!==0)return;const i=ts;do{try{for(;Zn<ei.length;){const t=ei[Zn];Zn++,Kt(t),mm(t.$$)}}catch(t){throw ei.length=0,Zn=0,t}for(Kt(null),ei.length=0,Zn=0;Qe.length;)Qe.pop()();for(let t=0;t<oi.length;t+=1){const e=oi[t];Cr.has(e)||(Cr.add(e),e())}oi.length=0}while(ei.length);for(;Fr.length;)Fr.pop()();Yr=!1,Cr.clear(),Kt(i)}function mm(i){if(i.fragment!==null){i.update(),Je(i.before_update);const t=i.dirty;i.dirty=[-1],i.fragment&&i.fragment.p(i.ctx,t),i.after_update.forEach(Ne)}}function gm(i){const t=[],e=[];oi.forEach(n=>i.indexOf(n)===-1?t.push(n):e.push(n)),e.forEach(n=>n()),oi=t}let Gi;function ba(){return Gi||(Gi=Promise.resolve(),Gi.then(()=>{Gi=null})),Gi}function Sn(i,t,e){i.dispatchEvent(xh(`${t?"intro":"outro"}${e}`))}const _s=new Set;let Qt;function de(){Qt={r:0,c:[],p:Qt}}function he(){Qt.r||Je(Qt.c),Qt=Qt.p}function M(i,t){i&&i.i&&(_s.delete(i),i.i(t))}function j(i,t,e,n){if(i&&i.o){if(_s.has(i))return;_s.add(i),Qt.c.push(()=>{_s.delete(i),n&&(e&&i.d(1),n())}),i.o(t)}else n&&n()}const ya={duration:0};function On(i,t,e){const n={direction:"in"};let s=t(i,e,n),o=!1,r,a,l=0;function c(){r&&$s(i,r)}function d(){const{delay:u=0,duration:m=300,easing:A=en,tick:p=J,css:g}=s||ya;g&&(r=Ks(i,0,1,m,u,A,g,l++)),p(0,1);const b=fa()+u,y=b+m;a&&a.abort(),o=!0,Ne(()=>Sn(i,!0,"start")),a=ga(I=>{if(o){if(I>=y)return p(1,0),Sn(i,!0,"end"),c(),o=!1;if(I>=b){const k=A((I-b)/m);p(k,1-k)}}return o})}let h=!1;return{start(){h||(h=!0,$s(i),sn(s)?(s=s(n),ba().then(d)):d())},invalidate(){h=!1},end(){o&&(c(),o=!1)}}}function Ii(i,t,e){const n={direction:"out"};let s=t(i,e,n),o=!0,r;const a=Qt;a.r+=1;function l(){const{delay:c=0,duration:d=300,easing:h=en,tick:u=J,css:m}=s||ya;m&&(r=Ks(i,1,0,d,c,h,m));const A=fa()+c,p=A+d;Ne(()=>Sn(i,!1,"start")),ga(g=>{if(o){if(g>=p)return u(0,1),Sn(i,!1,"end"),--a.r||Je(a.c),!1;if(g>=A){const b=h((g-A)/d);u(1-b,b)}}return o})}return sn(s)?ba().then(()=>{s=s(n),l()}):l(),{end(c){c&&s.tick&&s.tick(1,0),o&&(r&&$s(i,r),o=!1)}}}function _t(i,t,e,n){const s={direction:"both"};let o=t(i,e,s),r=n?0:1,a=null,l=null,c=null;function d(){c&&$s(i,c)}function h(m,A){const p=m.b-r;return A*=Math.abs(p),{a:r,b:m.b,d:p,duration:A,start:m.start,end:m.start+A,group:m.group}}function u(m){const{delay:A=0,duration:p=300,easing:g=en,tick:b=J,css:y}=o||ya,I={start:fa()+A,b:m};m||(I.group=Qt,Qt.r+=1),a||l?l=I:(y&&(d(),c=Ks(i,r,m,p,A,g,y)),m&&b(0,1),a=h(I,p),Ne(()=>Sn(i,m,"start")),ga(k=>{if(l&&k>l.start&&(a=h(l,p),l=null,Sn(i,a.b,"start"),y&&(d(),c=Ks(i,r,a.b,a.duration,0,g,o.css))),a){if(k>=a.end)b(r=a.b,1-r),Sn(i,a.b,"end"),l||(a.b?d():--a.group.r||Je(a.group.c)),a=null;else if(k>=a.start){const T=k-a.start;r=a.a+a.d*g(T/a.duration),b(r,1-r)}}return!!(a||l)}))}return{run(m){sn(o)?ba().then(()=>{o=o(s),u(m)}):u(m)},end(){d(),a=l=null}}}function eo(i,t){const e=t.token={};function n(s,o,r,a){if(t.token!==e)return;t.resolved=a;let l=t.ctx;r!==void 0&&(l=l.slice(),l[r]=a);const c=s&&(t.current=s)(l);let d=!1;t.block&&(t.blocks?t.blocks.forEach((h,u)=>{u!==o&&h&&(de(),j(h,1,1,()=>{t.blocks[u]===h&&(t.blocks[u]=null)}),he())}):t.block.d(1),c.c(),M(c,1),c.m(t.mount(),t.anchor),d=!0),t.block=c,t.blocks&&(t.blocks[o]=c),d&&va()}if(rm(i)){const s=An();if(i.then(o=>{Kt(s),n(t.then,1,t.value,o),Kt(null)},o=>{if(Kt(s),n(t.catch,2,t.error,o),Kt(null),!t.hasCatch)throw o}),t.current!==t.pending)return n(t.pending,0),!0}else{if(t.current!==t.then)return n(t.then,1,t.value,i),!0;t.resolved=i}}function jh(i,t,e){const n=t.slice(),{resolved:s}=i;i.current===i.then&&(n[i.value]=s),i.current===i.catch&&(n[i.error]=s),i.block.p(n,e)}const pm=typeof window!="undefined"?window:typeof globalThis!="undefined"?globalThis:global;function wa(i,t){i.d(1),t.delete(i.key)}function vn(i,t){j(i,1,1,()=>{t.delete(i.key)})}function jt(i,t,e,n,s,o,r,a,l,c,d,h){let u=i.length,m=o.length,A=u;const p={};for(;A--;)p[i[A].key]=A;const g=[],b=new Map,y=new Map,I=[];for(A=m;A--;){const V=h(s,o,A),L=e(V);let W=r.get(L);W?n&&I.push(()=>W.p(V,t)):(W=c(L,V),W.c()),b.set(L,g[A]=W),L in p&&y.set(L,Math.abs(A-p[L]))}const k=new Set,T=new Set;function P(V){M(V,1),V.m(a,d),r.set(V.key,V),d=V.first,m--}for(;u&&m;){const V=g[m-1],L=i[u-1],W=V.key,q=L.key;V===L?(d=V.first,u--,m--):b.has(q)?!r.has(W)||k.has(W)?P(V):T.has(q)?u--:y.get(W)>y.get(q)?(T.add(W),P(V)):(k.add(q),u--):(l(L,r),u--)}for(;u--;){const V=i[u];b.has(V.key)||l(V,r)}for(;m;)P(g[m-1]);return Je(I),g}function lt(i,t){const e={},n={},s={$$scope:1};let o=i.length;for(;o--;){const r=i[o],a=t[o];if(a){for(const l in r)l in a||(n[l]=1);for(const l in a)s[l]||(e[l]=a[l],s[l]=1);i[o]=a}else for(const l in r)s[l]=1}for(const r in n)r in e||(e[r]=void 0);return e}function zh(i){return typeof i=="object"&&i!==null?i:{}}function Ca(i,t,e){const n=i.$$.props[t];n!==void 0&&(i.$$.bound[n]=e,e(i.$$.ctx[n]))}function ie(i){i&&i.c()}function te(i,t,e,n){const{fragment:s,after_update:o}=i.$$;s&&s.m(t,e),n||Ne(()=>{const r=i.$$.on_mount.map(Ch).filter(sn);i.$$.on_destroy?i.$$.on_destroy.push(...r):Je(r),i.$$.on_mount=[]}),o.forEach(Ne)}function ne(i,t){const e=i.$$;e.fragment!==null&&(gm(e.after_update),Je(e.on_destroy),e.fragment&&e.fragment.d(t),e.on_destroy=e.fragment=null,e.ctx=[])}function Am(i,t){i.$$.dirty[0]===-1&&(ei.push(i),Lh(),i.$$.dirty.fill(0)),i.$$.dirty[t/31|0]|=1<<t%31}function ae(i,t,e,n,s,o,r,a=[-1]){const l=ts;Kt(i);const c=i.$$={fragment:null,ctx:[],props:o,update:J,not_equal:s,bound:nl(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(t.context||(l?l.$$.context:[])),callbacks:nl(),dirty:a,skip_bound:!1,root:t.target||l.$$.root};r&&r(c.root);let d=!1;if(c.ctx=e?e(i,t.props||{},(h,u,...m)=>{const A=m.length?m[0]:u;return c.ctx&&s(c.ctx[h],c.ctx[h]=A)&&(!c.skip_bound&&c.bound[h]&&c.bound[h](A),d&&Am(i,h)),u}):[],c.update(),d=!0,Je(c.before_update),c.fragment=n?n(c.ctx):!1,t.target){if(t.hydrate){const h=cm(t.target);c.fragment&&c.fragment.l(h),h.forEach(O)}else c.fragment&&c.fragment.c();t.intro&&M(i.$$.fragment),te(i,t.target,t.anchor,t.customElement),va()}Kt(l)}class le{$destroy(){ne(this,1),this.$destroy=J}$on(t,e){if(!sn(e))return J;const n=this.$$.callbacks[t]||(this.$$.callbacks[t]=[]);return n.push(e),()=>{const s=n.indexOf(e);s!==-1&&n.splice(s,1)}}$set(t){this.$$set&&!am(t)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}}const vm="data:image/png;base64,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";function bm(i){ue(i,"svelte-1d7uzh5",".room-label-item.svelte-1d7uzh5{position:absolute;font-size:0.5rem;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.room-label-item__text.svelte-1d7uzh5{position:absolute;left:0;top:-4rem;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center;height:1.25rem;min-width:2rem;padding:0 0.375rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap}.room-label-item__bar.svelte-1d7uzh5{position:absolute;top:-2.75rem;height:3rem;width:0.0625rem;background-image:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0))}.wide.svelte-1d7uzh5{font-size:0.625rem}")}function ym(i){let t,e,n=i[0].name+"",s,o,r,a,l;return{c(){t=x("div"),e=x("span"),s=Me(n),o=ee(),r=x("div"),w(e,"class","room-label-item__text svelte-1d7uzh5"),z(e,"background-image","url("+vm+")"),K(e,"wide",i[0].name.length>3),w(r,"class","room-label-item__bar svelte-1d7uzh5"),w(t,"class","room-label-item svelte-1d7uzh5"),z(t,"z-index",i[0].zIndex),z(t,"transform",i[0].transform),z(t,"opacity",i[0].visible?1:0)},m(c,d){B(c,t,d),D(t,e),D(e,s),D(t,o),D(t,r),a||(l=be(e,"click",i[1]),a=!0)},p(c,[d]){d&1&&n!==(n=c[0].name+"")&&Oe(s,n),d&1&&K(e,"wide",c[0].name.length>3),d&1&&z(t,"z-index",c[0].zIndex),d&1&&z(t,"transform",c[0].transform),d&1&&z(t,"opacity",c[0].visible?1:0)},i:J,o:J,d(c){c&&O(t),a=!1,l()}}}function wm(i,t,e){let{five:n}=t,{roomLabel:s}=t;function o(){n.setState({panoIndex:s.panoIndex,mode:"Panorama",longitude:s.longitude})}return i.$$set=r=>{"five"in r&&e(2,n=r.five),"roomLabel"in r&&e(0,s=r.roomLabel)},[s,o,n]}class Cm extends le{constructor(t){super(),ae(this,t,wm,ym,oe,{five:2,roomLabel:0},bm)}}var Oh=function(){if(typeof Map!="undefined")return Map;function i(t,e){var n=-1;return t.some(function(s,o){return s[0]===e?(n=o,!0):!1}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(e){var n=i(this.__entries__,e),s=this.__entries__[n];return s&&s[1]},t.prototype.set=function(e,n){var s=i(this.__entries__,e);~s?this.__entries__[s][1]=n:this.__entries__.push([e,n])},t.prototype.delete=function(e){var n=this.__entries__,s=i(n,e);~s&&n.splice(s,1)},t.prototype.has=function(e){return!!~i(this.__entries__,e)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(e,n){n===void 0&&(n=null);for(var s=0,o=this.__entries__;s<o.length;s++){var r=o[s];e.call(n,r[1],r[0])}},t}()}(),Ur=typeof window!="undefined"&&typeof document!="undefined"&&window.document===document,to=function(){return typeof global!="undefined"&&global.Math===Math?global:typeof self!="undefined"&&self.Math===Math?self:typeof window!="undefined"&&window.Math===Math?window:Function("return this")()}(),Im=function(){return typeof requestAnimationFrame=="function"?requestAnimationFrame.bind(to):function(i){return setTimeout(function(){return i(Date.now())},1e3/60)}}(),Pm=2;function Em(i,t){var e=!1,n=!1,s=0;function o(){e&&(e=!1,i()),n&&a()}function r(){Im(o)}function a(){var l=Date.now();if(e){if(l-s<Pm)return;n=!0}else e=!0,n=!1,setTimeout(r,t);s=l}return a}var km=20,Mm=["top","right","bottom","left","width","height","size","weight"],xm=typeof MutationObserver!="undefined",Dm=function(){function i(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=Em(this.refresh.bind(this),km)}return i.prototype.addObserver=function(t){~this.observers_.indexOf(t)||this.observers_.push(t),this.connected_||this.connect_()},i.prototype.removeObserver=function(t){var e=this.observers_,n=e.indexOf(t);~n&&e.splice(n,1),!e.length&&this.connected_&&this.disconnect_()},i.prototype.refresh=function(){var t=this.updateObservers_();t&&this.refresh()},i.prototype.updateObservers_=function(){var t=this.observers_.filter(function(e){return e.gatherActive(),e.hasActive()});return t.forEach(function(e){return e.broadcastActive()}),t.length>0},i.prototype.connect_=function(){!Ur||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),xm?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},i.prototype.disconnect_=function(){!Ur||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},i.prototype.onTransitionEnd_=function(t){var e=t.propertyName,n=e===void 0?"":e,s=Mm.some(function(o){return!!~n.indexOf(o)});s&&this.refresh()},i.getInstance=function(){return this.instance_||(this.instance_=new i),this.instance_},i.instance_=null,i}(),Bh=function(i,t){for(var e=0,n=Object.keys(t);e<n.length;e++){var s=n[e];Object.defineProperty(i,s,{value:t[s],enumerable:!1,writable:!1,configurable:!0})}return i},ci=function(i){var t=i&&i.ownerDocument&&i.ownerDocument.defaultView;return t||to},Vh=wo(0,0,0,0);function no(i){return parseFloat(i)||0}function ol(i){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return t.reduce(function(n,s){var o=i["border-"+s+"-width"];return n+no(o)},0)}function Sm(i){for(var t=["top","right","bottom","left"],e={},n=0,s=t;n<s.length;n++){var o=s[n],r=i["padding-"+o];e[o]=no(r)}return e}function Tm(i){var t=i.getBBox();return wo(0,0,t.width,t.height)}function Lm(i){var t=i.clientWidth,e=i.clientHeight;if(!t&&!e)return Vh;var n=ci(i).getComputedStyle(i),s=Sm(n),o=s.left+s.right,r=s.top+s.bottom,a=no(n.width),l=no(n.height);if(n.boxSizing==="border-box"&&(Math.round(a+o)!==t&&(a-=ol(n,"left","right")+o),Math.round(l+r)!==e&&(l-=ol(n,"top","bottom")+r)),!zm(i)){var c=Math.round(a+o)-t,d=Math.round(l+r)-e;Math.abs(c)!==1&&(a-=c),Math.abs(d)!==1&&(l-=d)}return wo(s.left,s.top,a,l)}var jm=function(){return typeof SVGGraphicsElement!="undefined"?function(i){return i instanceof ci(i).SVGGraphicsElement}:function(i){return i instanceof ci(i).SVGElement&&typeof i.getBBox=="function"}}();function zm(i){return i===ci(i).document.documentElement}function Om(i){return Ur?jm(i)?Tm(i):Lm(i):Vh}function Bm(i){var t=i.x,e=i.y,n=i.width,s=i.height,o=typeof DOMRectReadOnly!="undefined"?DOMRectReadOnly:Object,r=Object.create(o.prototype);return Bh(r,{x:t,y:e,width:n,height:s,top:e,right:t+n,bottom:s+e,left:t}),r}function wo(i,t,e,n){return{x:i,y:t,width:e,height:n}}var Vm=function(){function i(t){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=wo(0,0,0,0),this.target=t}return i.prototype.isActive=function(){var t=Om(this.target);return this.contentRect_=t,t.width!==this.broadcastWidth||t.height!==this.broadcastHeight},i.prototype.broadcastRect=function(){var t=this.contentRect_;return this.broadcastWidth=t.width,this.broadcastHeight=t.height,t},i}(),Rm=function(){function i(t,e){var n=Bm(e);Bh(this,{target:t,contentRect:n})}return i}(),Qm=function(){function i(t,e,n){if(this.activeObservations_=[],this.observations_=new Oh,typeof t!="function")throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=t,this.controller_=e,this.callbackCtx_=n}return i.prototype.observe=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element=="undefined"||!(Element instanceof Object))){if(!(t instanceof ci(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)||(e.set(t,new Vm(t)),this.controller_.addObserver(this),this.controller_.refresh())}},i.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element=="undefined"||!(Element instanceof Object))){if(!(t instanceof ci(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)&&(e.delete(t),e.size||this.controller_.removeObserver(this))}},i.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},i.prototype.gatherActive=function(){var t=this;this.clearActive(),this.observations_.forEach(function(e){e.isActive()&&t.activeObservations_.push(e)})},i.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,e=this.activeObservations_.map(function(n){return new Rm(n.target,n.broadcastRect())});this.callback_.call(t,e,t),this.clearActive()}},i.prototype.clearActive=function(){this.activeObservations_.splice(0)},i.prototype.hasActive=function(){return this.activeObservations_.length>0},i}(),Rh=typeof WeakMap!="undefined"?new WeakMap:new Oh,Qh=function(){function i(t){if(!(this instanceof i))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var e=Dm.getInstance(),n=new Qm(t,e,this);Rh.set(this,n)}return i}();["observe","unobserve","disconnect"].forEach(function(i){Qh.prototype[i]=function(){var t;return(t=Rh.get(this))[i].apply(t,arguments)}});var Gm=function(){return typeof to.ResizeObserver!="undefined"?to.ResizeObserver:Qh}();function Pi(i){new Gm((e,n)=>{var s,o,r,a,l,c;for(const d of e){const{borderBoxSize:h,contentRect:u}=d,m=(r=(o=(s=h==null?void 0:h[0])==null?void 0:s.inlineSize)!=null?o:u.width)!=null?r:i.clientWidth,A=(c=(l=(a=h==null?void 0:h[0])==null?void 0:a.blockSize)!=null?l:u.height)!=null?c:i.clientHeight;i.dispatchEvent(new CustomEvent("clientWidth",{detail:m})),i.dispatchEvent(new CustomEvent("clientHeight",{detail:A}))}}).observe(i)}const{Map:Nm}=pm;function Hm(i){ue(i,"svelte-9eg4zi",".room-labels-container.svelte-9eg4zi{width:100%;height:100%;position:relative;color:#fff}")}function rl(i,t,e){const n=i.slice();return n[13]=t[e],n}function al(i,t){let e,n,s;return n=new Cm({props:{roomLabel:t[13],five:t[1]}}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(o,r){B(o,e,r),te(n,o,r),s=!0},p(o,r){t=o;const a={};r&1&&(a.roomLabel=t[13]),r&2&&(a.five=t[1]),n.$set(a)},i(o){s||(M(n.$$.fragment,o),s=!0)},o(o){j(n.$$.fragment,o),s=!1},d(o){o&&O(e),ne(n,o)}}}function _m(i){let t,e=[],n=new Nm,s,o,r,a=i[0];const l=c=>c[13].id;for(let c=0;c<a.length;c+=1){let d=rl(i,a,c),h=l(d);n.set(h,e[c]=al(h,d))}return{c(){t=x("div");for(let c=0;c<e.length;c+=1)e[c].c();w(t,"class","room-labels-container svelte-9eg4zi")},m(c,d){B(c,t,d);for(let h=0;h<e.length;h+=1)e[h]&&e[h].m(t,null);s=!0,o||(r=[$t(Pi.call(null,t)),be(t,"clientWidth",i[6]),be(t,"clientHeight",i[7])],o=!0)},p(c,[d]){d&3&&(a=c[0],de(),e=jt(e,d,l,1,c,a,n,t,vn,al,null,rl),he())},i(c){if(!s){for(let d=0;d<a.length;d+=1)M(e[d]);s=!0}},o(c){for(let d=0;d<e.length;d+=1)j(e[d]);s=!1},d(c){c&&O(t);for(let d=0;d<e.length;d+=1)e[d].d();o=!1,Je(r)}}}function Wm(i,t,e){var g;let n,{five:s}=t,{roomLabels:o}=t,r,a,l=(g=s.model.shownFloor)!=null?g:null;function c(b){if(!(l===null||b.floorIndex===l))return!1;const I=new R.Raycaster,k=s.camera.position.clone(),T=new R.Vector3(b.position.x,b.position.y,b.position.z),P=T.distanceTo(k);I.set(k.clone(),T.clone().sub(k).normalize());const[V]=s.model.intersectRaycaster(I);return!(V&&V.distance+1<P)}function d(b,y){const k=new R.Vector3(b.position.x,b.position.y,b.position.z).clone().project(s.camera),T=Math.ceil((k.x+1)/2*y.x),P=Math.ceil((-k.y+1)/2*y.y);return`translate(${T}px, ${P}px)`}function h(b){const{rendererSize:y}=b,I=new Map;function k(P){const V=I.get(P.id);if(V)return V;const{x:L,y:W,z:q}=P.position,N=new R.Vector3(L,W,q).clone().distanceTo(s.camera.position);return I.set(P.id,N),N}return o.map(P=>{const V=c(P),L=V?d(P,y):P.transform,W=k(P),N=o.filter(G=>G.visible&&k(G)<W).length*10;return Ae(H({},P),{visible:V,transform:L,zIndex:N})})}function u(){e(0,o=h({rendererSize:n,shownFloor:l}))}function m(b){e(4,l=b)}s.on("cameraUpdate",u),s.on("modelShownFloorChange",m),Sh(()=>{e(0,o=h({rendererSize:n,shownFloor:l}))}),Lt(()=>{s.off("cameraUpdate",u),s.off("modelShownFloorChange",m)});const A=b=>{e(2,r=b.detail)},p=b=>{e(3,a=b.detail)};return i.$$set=b=>{"five"in b&&e(1,s=b.five),"roomLabels"in b&&e(0,o=b.roomLabels)},i.$$.update=()=>{i.$$.dirty&12&&e(5,n={x:r,y:a}),i.$$.dirty&48&&e(0,o=h({rendererSize:n,shownFloor:l}))},[o,s,r,a,l,n,A,p]}class Fm extends le{constructor(t){super(),ae(this,t,Wm,_m,oe,{five:1,roomLabels:0},Hm)}}function Ym(i){return i.model_room_labels.map(({id:t,pano_index:e,floor_index:n,name:s,position:o,longitude:r})=>({id:t,name:s,position:o,longitude:r,panoIndex:e,floorIndex:n,zIndex:0,visible:!1,transform:""}))}class Um{constructor(t){f(this,"five");f(this,"enabled",!0);f(this,"fiveModeEnabled");f(this,"app");f(this,"wrapper");f(this,"roomLabels",[]);f(this,"container",document.createElement("div"));f(this,"onFiveModeChange",t=>{if(!this.checkFiveMode(t)){this.fiveModeEnabled=!1,this.render();return}this.five.once("initAnimationEnded",()=>{this.fiveModeEnabled=this.checkFiveMode(this.five.getCurrentState().mode),this.render()})});this.five=t,this.fiveModeEnabled=this.checkFiveMode(t.getCurrentState().mode),this.container.classList.add("model-room-label-plugin-container"),this.container.style.width="100%",this.container.style.height="100%",this.container.style.position="absolute",this.container.style.pointerEvents="none",this.container.style.left="0",this.container.style.top="0",this.container.style.zIndex="5",this.five.once("dispose",()=>this.dispose()),this.five.on("modeChange",this.onFiveModeChange),this.render()}dispose(){this.five.off("modeChange",this.onFiveModeChange),this.container.remove()}load(t){this.roomLabels=Ym(t),this.render()}appendTo(t){return this.wrapper=t,t.appendChild(this.container),this.render(),this}disable(){return this.enabled=!1,this.render(),this}enable(){return this.enabled=!0,this.render(),this}checkFiveMode(t){return t==="Floorplan"||t==="Mapview"}render(){var t;if(this.wrapper){if(!this.enabled||!this.fiveModeEnabled){(t=this.app)==null||t.$destroy(),this.app=void 0;return}this.app?this.app.$set({five:this.five,roomLabels:this.roomLabels}):this.app=new Fm({target:this.container,props:{five:this.five,roomLabels:this.roomLabels}})}}}const Xm=i=>new Um(i),Zm={name:"ModelRoomLabelPlugin",version:0};var hn=(i=>(i[i.FLOOR=1]="FLOOR",i[i.CEILING=2]="CEILING",i[i.BOUNDING_CENTER=3]="BOUNDING_CENTER",i))(hn||{});function di(i){return U(this,null,function*(){try{return[null,yield i]}catch(t){return t instanceof Error?[t,null]:[new Error(""),null]}})}function io(i){return Object.prototype.toString.call(i)==="[object Object]"}function Co(i,t){return i===t?!0:typeof i!=typeof t?!1:!!(Number.isNaN(i)&&Number.isNaN(t))}function Jm(i,t){const e=Object.getOwnPropertyNames(i),n=Object.getOwnPropertyNames(t);if(e.length!==n.length)return!1;for(let s=0,o=e.length;s<o;s++){const r=e[s];if(!Co(i[r],t[r]))return!1}return!0}function qm(i,t){if(i.length!==t.length)return!1;for(let e=0,n=i.length;e<n;e++)if(!Co(i[e],t[e]))return!1;return!0}function Km(i,t){return Co(i,t)?!0:io(i)&&io(t)?Jm(i,t):Array.isArray(i)&&Array.isArray(t)?qm(i,t):!1}function Ia(i,t){return Co(i,t)?!0:io(i)&&io(t)?eg(i,t):Array.isArray(i)&&Array.isArray(t)?$m(i,t):!1}function $m(i,t){if(i.length!==t.length)return!1;for(let e=0,n=i.length;e<n;e++)if(!Ia(i[e],t[e]))return!1;return!0}function eg(i,t){const e=Object.getOwnPropertyNames(i),n=Object.getOwnPropertyNames(t);if(e.length!==n.length)return!1;for(let s=0,o=e.length;s<o;s++){const r=e[s];if(!Ia(i[r],t[r]))return!1}return!0}function Gt(i,t,e={deep:!1}){return e.deep?Ia(i,t):Km(i,t)}function hi(i){return i<.5?4*i*i*i:.5*Math.pow(2*i-2,3)+1}function Gh(i){const t=i-1;return t*t*t+1}function tt(i,{delay:t=0,duration:e=400,easing:n=en}={}){const s=+getComputedStyle(i).opacity;return{delay:t,duration:e,easing:n,css:o=>`opacity: ${o*s}`}}function ll(i,{delay:t=0,duration:e=400,easing:n=Gh,x:s=0,y:o=0,opacity:r=0}={}){const a=getComputedStyle(i),l=+a.opacity,c=a.transform==="none"?"":a.transform,d=l*(1-r),[h,u]=il(s),[m,A]=il(o);return{delay:t,duration:e,easing:n,css:(p,g)=>`
|
|
180
|
+
}`,h=`__svelte_${hm(d)}_${a}`,u=pa(i),{stylesheet:m,rules:A}=Js.get(u)||um(u,i);A[h]||(A[h]=!0,m.insertRule(`@keyframes ${h} ${d}`,m.cssRules.length));const p=i.style.animation||"";return i.style.animation=`${p?`${p}, `:""}${h} ${n}ms linear ${s}ms 1 both`,qs+=1,h}function $s(i,t){const e=(i.style.animation||"").split(", "),n=e.filter(t?o=>o.indexOf(t)<0:o=>o.indexOf("__svelte")===-1),s=e.length-n.length;s&&(i.style.animation=n.join(", "),qs-=s,qs||fm())}function fm(){ma(()=>{qs||(Js.forEach(i=>{const{ownerNode:t}=i.stylesheet;t&&O(t)}),Js.clear())})}let ts;function Kt(i){ts=i}function An(){if(!ts)throw new Error("Function called outside component initialization");return ts}function Dh(i){An().$$.before_update.push(i)}function vt(i){An().$$.on_mount.push(i)}function Sh(i){An().$$.after_update.push(i)}function Lt(i){An().$$.on_destroy.push(i)}function yo(){const i=An();return(t,e,{cancelable:n=!1}={})=>{const s=i.$$.callbacks[t];if(s){const o=xh(t,e,{cancelable:n});return s.slice().forEach(r=>{r.call(i,o)}),!o.defaultPrevented}return!0}}function Wr(i,t){return An().$$.context.set(i,t),t}function fn(i){return An().$$.context.get(i)}function Ci(i,t){const e=i.$$.callbacks[t.type];e&&e.slice().forEach(n=>n.call(this,t))}const ei=[],Qe=[];let oi=[];const Fr=[],Th=Promise.resolve();let Yr=!1;function Lh(){Yr||(Yr=!0,Th.then(va))}function sl(){return Lh(),Th}function Ne(i){oi.push(i)}function Aa(i){Fr.push(i)}const Cr=new Set;let Zn=0;function va(){if(Zn!==0)return;const i=ts;do{try{for(;Zn<ei.length;){const t=ei[Zn];Zn++,Kt(t),mm(t.$$)}}catch(t){throw ei.length=0,Zn=0,t}for(Kt(null),ei.length=0,Zn=0;Qe.length;)Qe.pop()();for(let t=0;t<oi.length;t+=1){const e=oi[t];Cr.has(e)||(Cr.add(e),e())}oi.length=0}while(ei.length);for(;Fr.length;)Fr.pop()();Yr=!1,Cr.clear(),Kt(i)}function mm(i){if(i.fragment!==null){i.update(),Je(i.before_update);const t=i.dirty;i.dirty=[-1],i.fragment&&i.fragment.p(i.ctx,t),i.after_update.forEach(Ne)}}function gm(i){const t=[],e=[];oi.forEach(n=>i.indexOf(n)===-1?t.push(n):e.push(n)),e.forEach(n=>n()),oi=t}let Gi;function ba(){return Gi||(Gi=Promise.resolve(),Gi.then(()=>{Gi=null})),Gi}function Sn(i,t,e){i.dispatchEvent(xh(`${t?"intro":"outro"}${e}`))}const _s=new Set;let Qt;function de(){Qt={r:0,c:[],p:Qt}}function he(){Qt.r||Je(Qt.c),Qt=Qt.p}function M(i,t){i&&i.i&&(_s.delete(i),i.i(t))}function j(i,t,e,n){if(i&&i.o){if(_s.has(i))return;_s.add(i),Qt.c.push(()=>{_s.delete(i),n&&(e&&i.d(1),n())}),i.o(t)}else n&&n()}const ya={duration:0};function On(i,t,e){const n={direction:"in"};let s=t(i,e,n),o=!1,r,a,l=0;function c(){r&&$s(i,r)}function d(){const{delay:u=0,duration:m=300,easing:A=en,tick:p=J,css:g}=s||ya;g&&(r=Ks(i,0,1,m,u,A,g,l++)),p(0,1);const v=fa()+u,y=v+m;a&&a.abort(),o=!0,Ne(()=>Sn(i,!0,"start")),a=ga(I=>{if(o){if(I>=y)return p(1,0),Sn(i,!0,"end"),c(),o=!1;if(I>=v){const k=A((I-v)/m);p(k,1-k)}}return o})}let h=!1;return{start(){h||(h=!0,$s(i),sn(s)?(s=s(n),ba().then(d)):d())},invalidate(){h=!1},end(){o&&(c(),o=!1)}}}function Ii(i,t,e){const n={direction:"out"};let s=t(i,e,n),o=!0,r;const a=Qt;a.r+=1;function l(){const{delay:c=0,duration:d=300,easing:h=en,tick:u=J,css:m}=s||ya;m&&(r=Ks(i,1,0,d,c,h,m));const A=fa()+c,p=A+d;Ne(()=>Sn(i,!1,"start")),ga(g=>{if(o){if(g>=p)return u(0,1),Sn(i,!1,"end"),--a.r||Je(a.c),!1;if(g>=A){const v=h((g-A)/d);u(1-v,v)}}return o})}return sn(s)?ba().then(()=>{s=s(n),l()}):l(),{end(c){c&&s.tick&&s.tick(1,0),o&&(r&&$s(i,r),o=!1)}}}function _t(i,t,e,n){const s={direction:"both"};let o=t(i,e,s),r=n?0:1,a=null,l=null,c=null;function d(){c&&$s(i,c)}function h(m,A){const p=m.b-r;return A*=Math.abs(p),{a:r,b:m.b,d:p,duration:A,start:m.start,end:m.start+A,group:m.group}}function u(m){const{delay:A=0,duration:p=300,easing:g=en,tick:v=J,css:y}=o||ya,I={start:fa()+A,b:m};m||(I.group=Qt,Qt.r+=1),a||l?l=I:(y&&(d(),c=Ks(i,r,m,p,A,g,y)),m&&v(0,1),a=h(I,p),Ne(()=>Sn(i,m,"start")),ga(k=>{if(l&&k>l.start&&(a=h(l,p),l=null,Sn(i,a.b,"start"),y&&(d(),c=Ks(i,r,a.b,a.duration,0,g,o.css))),a){if(k>=a.end)v(r=a.b,1-r),Sn(i,a.b,"end"),l||(a.b?d():--a.group.r||Je(a.group.c)),a=null;else if(k>=a.start){const T=k-a.start;r=a.a+a.d*g(T/a.duration),v(r,1-r)}}return!!(a||l)}))}return{run(m){sn(o)?ba().then(()=>{o=o(s),u(m)}):u(m)},end(){d(),a=l=null}}}function eo(i,t){const e=t.token={};function n(s,o,r,a){if(t.token!==e)return;t.resolved=a;let l=t.ctx;r!==void 0&&(l=l.slice(),l[r]=a);const c=s&&(t.current=s)(l);let d=!1;t.block&&(t.blocks?t.blocks.forEach((h,u)=>{u!==o&&h&&(de(),j(h,1,1,()=>{t.blocks[u]===h&&(t.blocks[u]=null)}),he())}):t.block.d(1),c.c(),M(c,1),c.m(t.mount(),t.anchor),d=!0),t.block=c,t.blocks&&(t.blocks[o]=c),d&&va()}if(rm(i)){const s=An();if(i.then(o=>{Kt(s),n(t.then,1,t.value,o),Kt(null)},o=>{if(Kt(s),n(t.catch,2,t.error,o),Kt(null),!t.hasCatch)throw o}),t.current!==t.pending)return n(t.pending,0),!0}else{if(t.current!==t.then)return n(t.then,1,t.value,i),!0;t.resolved=i}}function jh(i,t,e){const n=t.slice(),{resolved:s}=i;i.current===i.then&&(n[i.value]=s),i.current===i.catch&&(n[i.error]=s),i.block.p(n,e)}const pm=typeof window!="undefined"?window:typeof globalThis!="undefined"?globalThis:global;function wa(i,t){i.d(1),t.delete(i.key)}function vn(i,t){j(i,1,1,()=>{t.delete(i.key)})}function jt(i,t,e,n,s,o,r,a,l,c,d,h){let u=i.length,m=o.length,A=u;const p={};for(;A--;)p[i[A].key]=A;const g=[],v=new Map,y=new Map,I=[];for(A=m;A--;){const V=h(s,o,A),L=e(V);let W=r.get(L);W?n&&I.push(()=>W.p(V,t)):(W=c(L,V),W.c()),v.set(L,g[A]=W),L in p&&y.set(L,Math.abs(A-p[L]))}const k=new Set,T=new Set;function P(V){M(V,1),V.m(a,d),r.set(V.key,V),d=V.first,m--}for(;u&&m;){const V=g[m-1],L=i[u-1],W=V.key,q=L.key;V===L?(d=V.first,u--,m--):v.has(q)?!r.has(W)||k.has(W)?P(V):T.has(q)?u--:y.get(W)>y.get(q)?(T.add(W),P(V)):(k.add(q),u--):(l(L,r),u--)}for(;u--;){const V=i[u];v.has(V.key)||l(V,r)}for(;m;)P(g[m-1]);return Je(I),g}function lt(i,t){const e={},n={},s={$$scope:1};let o=i.length;for(;o--;){const r=i[o],a=t[o];if(a){for(const l in r)l in a||(n[l]=1);for(const l in a)s[l]||(e[l]=a[l],s[l]=1);i[o]=a}else for(const l in r)s[l]=1}for(const r in n)r in e||(e[r]=void 0);return e}function zh(i){return typeof i=="object"&&i!==null?i:{}}function Ca(i,t,e){const n=i.$$.props[t];n!==void 0&&(i.$$.bound[n]=e,e(i.$$.ctx[n]))}function ie(i){i&&i.c()}function te(i,t,e,n){const{fragment:s,after_update:o}=i.$$;s&&s.m(t,e),n||Ne(()=>{const r=i.$$.on_mount.map(Ch).filter(sn);i.$$.on_destroy?i.$$.on_destroy.push(...r):Je(r),i.$$.on_mount=[]}),o.forEach(Ne)}function ne(i,t){const e=i.$$;e.fragment!==null&&(gm(e.after_update),Je(e.on_destroy),e.fragment&&e.fragment.d(t),e.on_destroy=e.fragment=null,e.ctx=[])}function Am(i,t){i.$$.dirty[0]===-1&&(ei.push(i),Lh(),i.$$.dirty.fill(0)),i.$$.dirty[t/31|0]|=1<<t%31}function ae(i,t,e,n,s,o,r,a=[-1]){const l=ts;Kt(i);const c=i.$$={fragment:null,ctx:[],props:o,update:J,not_equal:s,bound:nl(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(t.context||(l?l.$$.context:[])),callbacks:nl(),dirty:a,skip_bound:!1,root:t.target||l.$$.root};r&&r(c.root);let d=!1;if(c.ctx=e?e(i,t.props||{},(h,u,...m)=>{const A=m.length?m[0]:u;return c.ctx&&s(c.ctx[h],c.ctx[h]=A)&&(!c.skip_bound&&c.bound[h]&&c.bound[h](A),d&&Am(i,h)),u}):[],c.update(),d=!0,Je(c.before_update),c.fragment=n?n(c.ctx):!1,t.target){if(t.hydrate){const h=cm(t.target);c.fragment&&c.fragment.l(h),h.forEach(O)}else c.fragment&&c.fragment.c();t.intro&&M(i.$$.fragment),te(i,t.target,t.anchor,t.customElement),va()}Kt(l)}class le{$destroy(){ne(this,1),this.$destroy=J}$on(t,e){if(!sn(e))return J;const n=this.$$.callbacks[t]||(this.$$.callbacks[t]=[]);return n.push(e),()=>{const s=n.indexOf(e);s!==-1&&n.splice(s,1)}}$set(t){this.$$set&&!am(t)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}}const vm="data:image/png;base64,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";function bm(i){ue(i,"svelte-1d7uzh5",".room-label-item.svelte-1d7uzh5{position:absolute;font-size:0.5rem;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.room-label-item__text.svelte-1d7uzh5{position:absolute;left:0;top:-4rem;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center;height:1.25rem;min-width:2rem;padding:0 0.375rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap}.room-label-item__bar.svelte-1d7uzh5{position:absolute;top:-2.75rem;height:3rem;width:0.0625rem;background-image:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0))}.wide.svelte-1d7uzh5{font-size:0.625rem}")}function ym(i){let t,e,n=i[0].name+"",s,o,r,a,l;return{c(){t=x("div"),e=x("span"),s=Me(n),o=ee(),r=x("div"),w(e,"class","room-label-item__text svelte-1d7uzh5"),z(e,"background-image","url("+vm+")"),K(e,"wide",i[0].name.length>3),w(r,"class","room-label-item__bar svelte-1d7uzh5"),w(t,"class","room-label-item svelte-1d7uzh5"),z(t,"z-index",i[0].zIndex),z(t,"transform",i[0].transform),z(t,"opacity",i[0].visible?1:0)},m(c,d){B(c,t,d),D(t,e),D(e,s),D(t,o),D(t,r),a||(l=be(e,"click",i[1]),a=!0)},p(c,[d]){d&1&&n!==(n=c[0].name+"")&&Oe(s,n),d&1&&K(e,"wide",c[0].name.length>3),d&1&&z(t,"z-index",c[0].zIndex),d&1&&z(t,"transform",c[0].transform),d&1&&z(t,"opacity",c[0].visible?1:0)},i:J,o:J,d(c){c&&O(t),a=!1,l()}}}function wm(i,t,e){let{five:n}=t,{roomLabel:s}=t;function o(){n.setState({panoIndex:s.panoIndex,mode:"Panorama",longitude:s.longitude})}return i.$$set=r=>{"five"in r&&e(2,n=r.five),"roomLabel"in r&&e(0,s=r.roomLabel)},[s,o,n]}class Cm extends le{constructor(t){super(),ae(this,t,wm,ym,oe,{five:2,roomLabel:0},bm)}}var Oh=function(){if(typeof Map!="undefined")return Map;function i(t,e){var n=-1;return t.some(function(s,o){return s[0]===e?(n=o,!0):!1}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(e){var n=i(this.__entries__,e),s=this.__entries__[n];return s&&s[1]},t.prototype.set=function(e,n){var s=i(this.__entries__,e);~s?this.__entries__[s][1]=n:this.__entries__.push([e,n])},t.prototype.delete=function(e){var n=this.__entries__,s=i(n,e);~s&&n.splice(s,1)},t.prototype.has=function(e){return!!~i(this.__entries__,e)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(e,n){n===void 0&&(n=null);for(var s=0,o=this.__entries__;s<o.length;s++){var r=o[s];e.call(n,r[1],r[0])}},t}()}(),Ur=typeof window!="undefined"&&typeof document!="undefined"&&window.document===document,to=function(){return typeof global!="undefined"&&global.Math===Math?global:typeof self!="undefined"&&self.Math===Math?self:typeof window!="undefined"&&window.Math===Math?window:Function("return this")()}(),Im=function(){return typeof requestAnimationFrame=="function"?requestAnimationFrame.bind(to):function(i){return setTimeout(function(){return i(Date.now())},1e3/60)}}(),Pm=2;function Em(i,t){var e=!1,n=!1,s=0;function o(){e&&(e=!1,i()),n&&a()}function r(){Im(o)}function a(){var l=Date.now();if(e){if(l-s<Pm)return;n=!0}else e=!0,n=!1,setTimeout(r,t);s=l}return a}var km=20,Mm=["top","right","bottom","left","width","height","size","weight"],xm=typeof MutationObserver!="undefined",Dm=function(){function i(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=Em(this.refresh.bind(this),km)}return i.prototype.addObserver=function(t){~this.observers_.indexOf(t)||this.observers_.push(t),this.connected_||this.connect_()},i.prototype.removeObserver=function(t){var e=this.observers_,n=e.indexOf(t);~n&&e.splice(n,1),!e.length&&this.connected_&&this.disconnect_()},i.prototype.refresh=function(){var t=this.updateObservers_();t&&this.refresh()},i.prototype.updateObservers_=function(){var t=this.observers_.filter(function(e){return e.gatherActive(),e.hasActive()});return t.forEach(function(e){return e.broadcastActive()}),t.length>0},i.prototype.connect_=function(){!Ur||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),xm?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},i.prototype.disconnect_=function(){!Ur||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},i.prototype.onTransitionEnd_=function(t){var e=t.propertyName,n=e===void 0?"":e,s=Mm.some(function(o){return!!~n.indexOf(o)});s&&this.refresh()},i.getInstance=function(){return this.instance_||(this.instance_=new i),this.instance_},i.instance_=null,i}(),Bh=function(i,t){for(var e=0,n=Object.keys(t);e<n.length;e++){var s=n[e];Object.defineProperty(i,s,{value:t[s],enumerable:!1,writable:!1,configurable:!0})}return i},ci=function(i){var t=i&&i.ownerDocument&&i.ownerDocument.defaultView;return t||to},Vh=wo(0,0,0,0);function no(i){return parseFloat(i)||0}function ol(i){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return t.reduce(function(n,s){var o=i["border-"+s+"-width"];return n+no(o)},0)}function Sm(i){for(var t=["top","right","bottom","left"],e={},n=0,s=t;n<s.length;n++){var o=s[n],r=i["padding-"+o];e[o]=no(r)}return e}function Tm(i){var t=i.getBBox();return wo(0,0,t.width,t.height)}function Lm(i){var t=i.clientWidth,e=i.clientHeight;if(!t&&!e)return Vh;var n=ci(i).getComputedStyle(i),s=Sm(n),o=s.left+s.right,r=s.top+s.bottom,a=no(n.width),l=no(n.height);if(n.boxSizing==="border-box"&&(Math.round(a+o)!==t&&(a-=ol(n,"left","right")+o),Math.round(l+r)!==e&&(l-=ol(n,"top","bottom")+r)),!zm(i)){var c=Math.round(a+o)-t,d=Math.round(l+r)-e;Math.abs(c)!==1&&(a-=c),Math.abs(d)!==1&&(l-=d)}return wo(s.left,s.top,a,l)}var jm=function(){return typeof SVGGraphicsElement!="undefined"?function(i){return i instanceof ci(i).SVGGraphicsElement}:function(i){return i instanceof ci(i).SVGElement&&typeof i.getBBox=="function"}}();function zm(i){return i===ci(i).document.documentElement}function Om(i){return Ur?jm(i)?Tm(i):Lm(i):Vh}function Bm(i){var t=i.x,e=i.y,n=i.width,s=i.height,o=typeof DOMRectReadOnly!="undefined"?DOMRectReadOnly:Object,r=Object.create(o.prototype);return Bh(r,{x:t,y:e,width:n,height:s,top:e,right:t+n,bottom:s+e,left:t}),r}function wo(i,t,e,n){return{x:i,y:t,width:e,height:n}}var Vm=function(){function i(t){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=wo(0,0,0,0),this.target=t}return i.prototype.isActive=function(){var t=Om(this.target);return this.contentRect_=t,t.width!==this.broadcastWidth||t.height!==this.broadcastHeight},i.prototype.broadcastRect=function(){var t=this.contentRect_;return this.broadcastWidth=t.width,this.broadcastHeight=t.height,t},i}(),Rm=function(){function i(t,e){var n=Bm(e);Bh(this,{target:t,contentRect:n})}return i}(),Qm=function(){function i(t,e,n){if(this.activeObservations_=[],this.observations_=new Oh,typeof t!="function")throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=t,this.controller_=e,this.callbackCtx_=n}return i.prototype.observe=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element=="undefined"||!(Element instanceof Object))){if(!(t instanceof ci(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)||(e.set(t,new Vm(t)),this.controller_.addObserver(this),this.controller_.refresh())}},i.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element=="undefined"||!(Element instanceof Object))){if(!(t instanceof ci(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)&&(e.delete(t),e.size||this.controller_.removeObserver(this))}},i.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},i.prototype.gatherActive=function(){var t=this;this.clearActive(),this.observations_.forEach(function(e){e.isActive()&&t.activeObservations_.push(e)})},i.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,e=this.activeObservations_.map(function(n){return new Rm(n.target,n.broadcastRect())});this.callback_.call(t,e,t),this.clearActive()}},i.prototype.clearActive=function(){this.activeObservations_.splice(0)},i.prototype.hasActive=function(){return this.activeObservations_.length>0},i}(),Rh=typeof WeakMap!="undefined"?new WeakMap:new Oh,Qh=function(){function i(t){if(!(this instanceof i))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var e=Dm.getInstance(),n=new Qm(t,e,this);Rh.set(this,n)}return i}();["observe","unobserve","disconnect"].forEach(function(i){Qh.prototype[i]=function(){var t;return(t=Rh.get(this))[i].apply(t,arguments)}});var Gm=function(){return typeof to.ResizeObserver!="undefined"?to.ResizeObserver:Qh}();function Pi(i){new Gm((e,n)=>{var s,o,r,a,l,c;for(const d of e){const{borderBoxSize:h,contentRect:u}=d,m=(r=(o=(s=h==null?void 0:h[0])==null?void 0:s.inlineSize)!=null?o:u.width)!=null?r:i.clientWidth,A=(c=(l=(a=h==null?void 0:h[0])==null?void 0:a.blockSize)!=null?l:u.height)!=null?c:i.clientHeight;i.dispatchEvent(new CustomEvent("clientWidth",{detail:m})),i.dispatchEvent(new CustomEvent("clientHeight",{detail:A}))}}).observe(i)}const{Map:Nm}=pm;function Hm(i){ue(i,"svelte-9eg4zi",".room-labels-container.svelte-9eg4zi{width:100%;height:100%;position:relative;color:#fff}")}function rl(i,t,e){const n=i.slice();return n[13]=t[e],n}function al(i,t){let e,n,s;return n=new Cm({props:{roomLabel:t[13],five:t[1]}}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(o,r){B(o,e,r),te(n,o,r),s=!0},p(o,r){t=o;const a={};r&1&&(a.roomLabel=t[13]),r&2&&(a.five=t[1]),n.$set(a)},i(o){s||(M(n.$$.fragment,o),s=!0)},o(o){j(n.$$.fragment,o),s=!1},d(o){o&&O(e),ne(n,o)}}}function _m(i){let t,e=[],n=new Nm,s,o,r,a=i[0];const l=c=>c[13].id;for(let c=0;c<a.length;c+=1){let d=rl(i,a,c),h=l(d);n.set(h,e[c]=al(h,d))}return{c(){t=x("div");for(let c=0;c<e.length;c+=1)e[c].c();w(t,"class","room-labels-container svelte-9eg4zi")},m(c,d){B(c,t,d);for(let h=0;h<e.length;h+=1)e[h]&&e[h].m(t,null);s=!0,o||(r=[$t(Pi.call(null,t)),be(t,"clientWidth",i[6]),be(t,"clientHeight",i[7])],o=!0)},p(c,[d]){d&3&&(a=c[0],de(),e=jt(e,d,l,1,c,a,n,t,vn,al,null,rl),he())},i(c){if(!s){for(let d=0;d<a.length;d+=1)M(e[d]);s=!0}},o(c){for(let d=0;d<e.length;d+=1)j(e[d]);s=!1},d(c){c&&O(t);for(let d=0;d<e.length;d+=1)e[d].d();o=!1,Je(r)}}}function Wm(i,t,e){var g;let n,{five:s}=t,{roomLabels:o}=t,r,a,l=(g=s.model.shownFloor)!=null?g:null;function c(v){if(!(l===null||v.floorIndex===l))return!1;const I=new R.Raycaster,k=s.camera.position.clone(),T=new R.Vector3(v.position.x,v.position.y,v.position.z),P=T.distanceTo(k);I.set(k.clone(),T.clone().sub(k).normalize());const[V]=s.model.intersectRaycaster(I);return!(V&&V.distance+1<P)}function d(v,y){const k=new R.Vector3(v.position.x,v.position.y,v.position.z).clone().project(s.camera),T=Math.ceil((k.x+1)/2*y.x),P=Math.ceil((-k.y+1)/2*y.y);return`translate(${T}px, ${P}px)`}function h(v){const{rendererSize:y}=v,I=new Map;function k(P){const V=I.get(P.id);if(V)return V;const{x:L,y:W,z:q}=P.position,N=new R.Vector3(L,W,q).clone().distanceTo(s.camera.position);return I.set(P.id,N),N}return o.map(P=>{const V=c(P),L=V?d(P,y):P.transform,W=k(P),N=o.filter(G=>G.visible&&k(G)<W).length*10;return Ae(H({},P),{visible:V,transform:L,zIndex:N})})}function u(){e(0,o=h({rendererSize:n,shownFloor:l}))}function m(v){e(4,l=v)}s.on("cameraUpdate",u),s.on("modelShownFloorChange",m),Sh(()=>{e(0,o=h({rendererSize:n,shownFloor:l}))}),Lt(()=>{s.off("cameraUpdate",u),s.off("modelShownFloorChange",m)});const A=v=>{e(2,r=v.detail)},p=v=>{e(3,a=v.detail)};return i.$$set=v=>{"five"in v&&e(1,s=v.five),"roomLabels"in v&&e(0,o=v.roomLabels)},i.$$.update=()=>{i.$$.dirty&12&&e(5,n={x:r,y:a}),i.$$.dirty&48&&e(0,o=h({rendererSize:n,shownFloor:l}))},[o,s,r,a,l,n,A,p]}class Fm extends le{constructor(t){super(),ae(this,t,Wm,_m,oe,{five:1,roomLabels:0},Hm)}}function Ym(i){return i.model_room_labels.map(({id:t,pano_index:e,floor_index:n,name:s,position:o,longitude:r})=>({id:t,name:s,position:o,longitude:r,panoIndex:e,floorIndex:n,zIndex:0,visible:!1,transform:""}))}class Um{constructor(t){f(this,"five");f(this,"enabled",!0);f(this,"fiveModeEnabled");f(this,"app");f(this,"wrapper");f(this,"roomLabels",[]);f(this,"container",document.createElement("div"));f(this,"onFiveModeChange",t=>{if(!this.checkFiveMode(t)){this.fiveModeEnabled=!1,this.render();return}this.five.once("initAnimationEnded",()=>{this.fiveModeEnabled=this.checkFiveMode(this.five.getCurrentState().mode),this.render()})});this.five=t,this.fiveModeEnabled=this.checkFiveMode(t.getCurrentState().mode),this.container.classList.add("model-room-label-plugin-container"),this.container.style.width="100%",this.container.style.height="100%",this.container.style.position="absolute",this.container.style.pointerEvents="none",this.container.style.left="0",this.container.style.top="0",this.container.style.zIndex="5",this.five.once("dispose",()=>this.dispose()),this.five.on("modeChange",this.onFiveModeChange),this.render()}dispose(){this.five.off("modeChange",this.onFiveModeChange),this.container.remove()}load(t){this.roomLabels=Ym(t),this.render()}appendTo(t){return this.wrapper=t,t.appendChild(this.container),this.render(),this}disable(){return this.enabled=!1,this.render(),this}enable(){return this.enabled=!0,this.render(),this}checkFiveMode(t){return t==="Floorplan"||t==="Mapview"}render(){var t;if(this.wrapper){if(!this.enabled||!this.fiveModeEnabled){(t=this.app)==null||t.$destroy(),this.app=void 0;return}this.app?this.app.$set({five:this.five,roomLabels:this.roomLabels}):this.app=new Fm({target:this.container,props:{five:this.five,roomLabels:this.roomLabels}})}}}const Xm=i=>new Um(i),Zm={name:"ModelRoomLabelPlugin",version:0};var hn=(i=>(i[i.FLOOR=1]="FLOOR",i[i.CEILING=2]="CEILING",i[i.BOUNDING_CENTER=3]="BOUNDING_CENTER",i))(hn||{});function di(i){return U(this,null,function*(){try{return[null,yield i]}catch(t){return t instanceof Error?[t,null]:[new Error(""),null]}})}function io(i){return Object.prototype.toString.call(i)==="[object Object]"}function Co(i,t){return i===t?!0:typeof i!=typeof t?!1:!!(Number.isNaN(i)&&Number.isNaN(t))}function Jm(i,t){const e=Object.getOwnPropertyNames(i),n=Object.getOwnPropertyNames(t);if(e.length!==n.length)return!1;for(let s=0,o=e.length;s<o;s++){const r=e[s];if(!Co(i[r],t[r]))return!1}return!0}function qm(i,t){if(i.length!==t.length)return!1;for(let e=0,n=i.length;e<n;e++)if(!Co(i[e],t[e]))return!1;return!0}function Km(i,t){return Co(i,t)?!0:io(i)&&io(t)?Jm(i,t):Array.isArray(i)&&Array.isArray(t)?qm(i,t):!1}function Ia(i,t){return Co(i,t)?!0:io(i)&&io(t)?eg(i,t):Array.isArray(i)&&Array.isArray(t)?$m(i,t):!1}function $m(i,t){if(i.length!==t.length)return!1;for(let e=0,n=i.length;e<n;e++)if(!Ia(i[e],t[e]))return!1;return!0}function eg(i,t){const e=Object.getOwnPropertyNames(i),n=Object.getOwnPropertyNames(t);if(e.length!==n.length)return!1;for(let s=0,o=e.length;s<o;s++){const r=e[s];if(!Ia(i[r],t[r]))return!1}return!0}function Gt(i,t,e={deep:!1}){return e.deep?Ia(i,t):Km(i,t)}function hi(i){return i<.5?4*i*i*i:.5*Math.pow(2*i-2,3)+1}function Gh(i){const t=i-1;return t*t*t+1}function tt(i,{delay:t=0,duration:e=400,easing:n=en}={}){const s=+getComputedStyle(i).opacity;return{delay:t,duration:e,easing:n,css:o=>`opacity: ${o*s}`}}function ll(i,{delay:t=0,duration:e=400,easing:n=Gh,x:s=0,y:o=0,opacity:r=0}={}){const a=getComputedStyle(i),l=+a.opacity,c=a.transform==="none"?"":a.transform,d=l*(1-r),[h,u]=il(s),[m,A]=il(o);return{delay:t,duration:e,easing:n,css:(p,g)=>`
|
|
181
181
|
transform: ${c} translate(${(1-p)*h}${u}, ${(1-p)*m}${A});
|
|
182
182
|
opacity: ${l-d*g}`}}function so(i,{delay:t=0,speed:e,duration:n,easing:s=hi}={}){let o=i.getTotalLength();const r=getComputedStyle(i);return r.strokeLinecap!=="butt"&&(o+=parseInt(r.strokeWidth)),n===void 0?e===void 0?n=800:n=o/e:typeof n=="function"&&(n=n(o)),{delay:t,duration:n,easing:s,css:(a,l)=>`
|
|
183
183
|
stroke-dasharray: ${o};
|
|
184
184
|
stroke-dashoffset: ${l*o};
|
|
185
|
-
`}}const mn="data:image/png;base64,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";function Nh(i){return i*180/Math.PI}function tg(i){ue(i,"svelte-17cl35n",".floorplan__camera-position.svelte-17cl35n{position:absolute;width:0;height:0}.floorplan__camera-rotate.svelte-17cl35n{position:absolute;background-repeat:no-repeat;background-size:100%}")}function ng(i){let t,e;return{c(){t=x("div"),e=x("div"),w(e,"class","floorplan__camera-rotate svelte-17cl35n"),z(e,"background-image",`url(${i[0]||mn})`),z(e,"width",i[4]),z(e,"height",i[4]),z(e,"left","-"+i[4]),z(e,"top","-"+i[4]),z(e,"transform",`rotate(${i[3]}deg)`),z(e,"transform-origin",`${i[4]} ${i[4]}`),w(t,"class","floorplan__camera-position svelte-17cl35n"),z(t,"left",i[1]),z(t,"top",i[2])},m(n,s){B(n,t,s),D(t,e)},p(n,[s]){s&1&&z(e,"background-image",`url(${n[0]||mn})`);const o=s&1;o&&z(e,"width",n[4]),o&&z(e,"height",n[4]),o&&z(e,"left","-"+n[4]),o&&z(e,"top","-"+n[4]),o&&z(e,"transform",`rotate(${n[3]}deg)`),o&&z(e,"transform-origin",`${n[4]} ${n[4]}`)},i:J,o:J,d(n){n&&O(t)}}}function ig(i,t,e){let{panoIndex:n}=t,{floorplanData:s}=t,{lastPanoramaLongitude:o}=t,{cameraImageUrl:r}=t;const{observers:a}=s,l=a[n],c=l.positionInImage.x,d=l.positionInImage.y,h=c*100+"%",u=d*100+"%",m=-Nh(o)+45,A=document.body.clientWidth,p=document.body.clientHeight,b=`${(A<500||p<500?17:37)/16}rem`;return i.$$set=y=>{"panoIndex"in y&&e(5,n=y.panoIndex),"floorplanData"in y&&e(6,s=y.floorplanData),"lastPanoramaLongitude"in y&&e(7,o=y.lastPanoramaLongitude),"cameraImageUrl"in y&&e(0,r=y.cameraImageUrl)},[r,h,u,m,b,n,s,o]}let sg=class extends le{constructor(t){super(),ae(this,t,ig,ng,oe,{panoIndex:5,floorplanData:6,lastPanoramaLongitude:7,cameraImageUrl:0},tg)}};const og="data:image/png;base64,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";function rg(i){ue(i,"svelte-rpkaro",".floorplan-plugin__compass.svelte-rpkaro{position:absolute;left:50%;top:-2.875rem;width:14.4375rem;height:2.5625rem;will-change:opacity;transform-origin:center 11.5rem}.floorplan-plugin__compass-image.svelte-rpkaro{width:100%;height:100%;position:absolute;left:0;top:0;opacity:0.1;background-repeat:no-repeat;background-size:100% 100%}.floorplan-plugin__compass-text.svelte-rpkaro{position:absolute;left:50%;top:0.9375rem;transform:translateX(-50%);opacity:0.2;font-weight:bold;font-size:0.625rem;color:#fff}")}function ag(i){let t,e,n,s,o;return{c(){t=x("div"),e=x("div"),n=ee(),s=x("span"),o=Me(i[0]),w(e,"class","floorplan-plugin__compass-image svelte-rpkaro"),z(e,"background-image",`url(${og})`),w(s,"class","floorplan-plugin__compass-text svelte-rpkaro"),w(t,"class","floorplan-plugin__compass svelte-rpkaro"),z(t,"transform",i[2])},m(r,a){B(r,t,a),D(t,e),D(t,n),D(t,s),D(s,o)},p(r,a){a&1&&Oe(o,r[0])},d(r){r&&O(t)}}}function lg(i){let t,e=i[1]&&ag(i);return{c(){e&&e.c(),t=Pe()},m(n,s){e&&e.m(n,s),B(n,t,s)},p(n,[s]){n[1]&&e.p(n,s)},i:J,o:J,d(n){e&&e.d(n),n&&O(t)}}}function cg(i){return i/Math.PI*180}function dg(i,t,e){var c;let{floorplanData:n}=t,{northDesc:s}=t;const o=(c=n.entrance)==null?void 0:c.northRad,r=typeof o=="number",l=`translateX(-50%) translateZ(10px) rotate(${-(o?cg(o):0)+90}deg)`;return i.$$set=d=>{"floorplanData"in d&&e(3,n=d.floorplanData),"northDesc"in d&&e(0,s=d.northDesc)},[s,r,l,n]}class hg extends le{constructor(t){super(),ae(this,t,dg,lg,oe,{floorplanData:3,northDesc:0},rg)}}const Jn=[];function Pa(i,t=J){let e;const n=new Set;function s(a){if(oe(i,a)&&(i=a,e)){const l=!Jn.length;for(const c of n)c[1](),Jn.push(c,i);if(l){for(let c=0;c<Jn.length;c+=2)Jn[c][0](Jn[c+1]);Jn.length=0}}}function o(a){s(a(i))}function r(a,l=J){const c=[a,l];return n.add(c),n.size===1&&(e=t(s)||J),a(i),()=>{n.delete(c),n.size===0&&e&&(e(),e=null)}}return{set:s,update:o,subscribe:r}}function ug(i){ue(i,"svelte-1gfoniz","img.svelte-1gfoniz{width:100%;height:100%}")}function fg(i){let t,e;return{c(){t=x("img"),Pt(t.src,e=i[0])||w(t,"src",e),w(t,"alt","floorplan iamge"),w(t,"class","svelte-1gfoniz")},m(n,s){B(n,t,s)},p(n,[s]){s&1&&!Pt(t.src,e=n[0])&&w(t,"src",e)},i:J,o:J,d(n){n&&O(t)}}}function mg(i,t,e){let{url:n}=t;return i.$$set=s=>{"url"in s&&e(0,n=s.url)},[n]}class gg extends le{constructor(t){super(),ae(this,t,mg,fg,oe,{url:0},ug)}}function pg(i){ue(i,"svelte-ub47ya",".floorplan-plugin__base-image.svelte-ub47ya{width:100%;height:100%}")}function Ag(i){let t,e,n,s;return{c(){t=x("div"),e=new Zs(!1),n=ee(),s=new Zs(!1),e.a=n,s.a=null,w(t,"class","floorplan-plugin__base-image svelte-ub47ya")},m(o,r){B(o,t,r),e.m(i[1],t),D(t,n),s.m(i[0],t)},p(o,[r]){r&1&&s.p(o[0])},i:J,o:J,d(o){o&&O(t)}}}function vg(i,t,e){let{content:n}=t;const s=`
|
|
185
|
+
`}}const mn="data:image/png;base64,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";function Nh(i){return i*180/Math.PI}function tg(i){ue(i,"svelte-17cl35n",".floorplan__camera-position.svelte-17cl35n{position:absolute;width:0;height:0}.floorplan__camera-rotate.svelte-17cl35n{position:absolute;background-repeat:no-repeat;background-size:100%}")}function ng(i){let t,e;return{c(){t=x("div"),e=x("div"),w(e,"class","floorplan__camera-rotate svelte-17cl35n"),z(e,"background-image",`url(${i[0]||mn})`),z(e,"width",i[4]),z(e,"height",i[4]),z(e,"left","-"+i[4]),z(e,"top","-"+i[4]),z(e,"transform",`rotate(${i[3]}deg)`),z(e,"transform-origin",`${i[4]} ${i[4]}`),w(t,"class","floorplan__camera-position svelte-17cl35n"),z(t,"left",i[1]),z(t,"top",i[2])},m(n,s){B(n,t,s),D(t,e)},p(n,[s]){s&1&&z(e,"background-image",`url(${n[0]||mn})`);const o=s&1;o&&z(e,"width",n[4]),o&&z(e,"height",n[4]),o&&z(e,"left","-"+n[4]),o&&z(e,"top","-"+n[4]),o&&z(e,"transform",`rotate(${n[3]}deg)`),o&&z(e,"transform-origin",`${n[4]} ${n[4]}`)},i:J,o:J,d(n){n&&O(t)}}}function ig(i,t,e){let{panoIndex:n}=t,{floorplanData:s}=t,{lastPanoramaLongitude:o}=t,{cameraImageUrl:r}=t;const{observers:a}=s,l=a[n],c=l.positionInImage.x,d=l.positionInImage.y,h=c*100+"%",u=d*100+"%",m=-Nh(o)+45,A=document.body.clientWidth,p=document.body.clientHeight,v=`${(A<500||p<500?17:37)/16}rem`;return i.$$set=y=>{"panoIndex"in y&&e(5,n=y.panoIndex),"floorplanData"in y&&e(6,s=y.floorplanData),"lastPanoramaLongitude"in y&&e(7,o=y.lastPanoramaLongitude),"cameraImageUrl"in y&&e(0,r=y.cameraImageUrl)},[r,h,u,m,v,n,s,o]}let sg=class extends le{constructor(t){super(),ae(this,t,ig,ng,oe,{panoIndex:5,floorplanData:6,lastPanoramaLongitude:7,cameraImageUrl:0},tg)}};const og="data:image/png;base64,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";function rg(i){ue(i,"svelte-rpkaro",".floorplan-plugin__compass.svelte-rpkaro{position:absolute;left:50%;top:-2.875rem;width:14.4375rem;height:2.5625rem;will-change:opacity;transform-origin:center 11.5rem}.floorplan-plugin__compass-image.svelte-rpkaro{width:100%;height:100%;position:absolute;left:0;top:0;opacity:0.1;background-repeat:no-repeat;background-size:100% 100%}.floorplan-plugin__compass-text.svelte-rpkaro{position:absolute;left:50%;top:0.9375rem;transform:translateX(-50%);opacity:0.2;font-weight:bold;font-size:0.625rem;color:#fff}")}function ag(i){let t,e,n,s,o;return{c(){t=x("div"),e=x("div"),n=ee(),s=x("span"),o=Me(i[0]),w(e,"class","floorplan-plugin__compass-image svelte-rpkaro"),z(e,"background-image",`url(${og})`),w(s,"class","floorplan-plugin__compass-text svelte-rpkaro"),w(t,"class","floorplan-plugin__compass svelte-rpkaro"),z(t,"transform",i[2])},m(r,a){B(r,t,a),D(t,e),D(t,n),D(t,s),D(s,o)},p(r,a){a&1&&Oe(o,r[0])},d(r){r&&O(t)}}}function lg(i){let t,e=i[1]&&ag(i);return{c(){e&&e.c(),t=Pe()},m(n,s){e&&e.m(n,s),B(n,t,s)},p(n,[s]){n[1]&&e.p(n,s)},i:J,o:J,d(n){e&&e.d(n),n&&O(t)}}}function cg(i){return i/Math.PI*180}function dg(i,t,e){var c;let{floorplanData:n}=t,{northDesc:s}=t;const o=(c=n.entrance)==null?void 0:c.northRad,r=typeof o=="number",l=`translateX(-50%) translateZ(10px) rotate(${-(o?cg(o):0)+90}deg)`;return i.$$set=d=>{"floorplanData"in d&&e(3,n=d.floorplanData),"northDesc"in d&&e(0,s=d.northDesc)},[s,r,l,n]}class hg extends le{constructor(t){super(),ae(this,t,dg,lg,oe,{floorplanData:3,northDesc:0},rg)}}const Jn=[];function Pa(i,t=J){let e;const n=new Set;function s(a){if(oe(i,a)&&(i=a,e)){const l=!Jn.length;for(const c of n)c[1](),Jn.push(c,i);if(l){for(let c=0;c<Jn.length;c+=2)Jn[c][0](Jn[c+1]);Jn.length=0}}}function o(a){s(a(i))}function r(a,l=J){const c=[a,l];return n.add(c),n.size===1&&(e=t(s)||J),a(i),()=>{n.delete(c),n.size===0&&e&&(e(),e=null)}}return{set:s,update:o,subscribe:r}}function ug(i){ue(i,"svelte-1gfoniz","img.svelte-1gfoniz{width:100%;height:100%}")}function fg(i){let t,e;return{c(){t=x("img"),Pt(t.src,e=i[0])||w(t,"src",e),w(t,"alt","floorplan iamge"),w(t,"class","svelte-1gfoniz")},m(n,s){B(n,t,s)},p(n,[s]){s&1&&!Pt(t.src,e=n[0])&&w(t,"src",e)},i:J,o:J,d(n){n&&O(t)}}}function mg(i,t,e){let{url:n}=t;return i.$$set=s=>{"url"in s&&e(0,n=s.url)},[n]}class gg extends le{constructor(t){super(),ae(this,t,mg,fg,oe,{url:0},ug)}}function pg(i){ue(i,"svelte-ub47ya",".floorplan-plugin__base-image.svelte-ub47ya{width:100%;height:100%}")}function Ag(i){let t,e,n,s;return{c(){t=x("div"),e=new Zs(!1),n=ee(),s=new Zs(!1),e.a=n,s.a=null,w(t,"class","floorplan-plugin__base-image svelte-ub47ya")},m(o,r){B(o,t,r),e.m(i[1],t),D(t,n),s.m(i[0],t)},p(o,[r]){r&1&&s.p(o[0])},i:J,o:J,d(o){o&&O(t)}}}function vg(i,t,e){let{content:n}=t;const s=`
|
|
186
186
|
<style>
|
|
187
187
|
svg [type='lineGroup'] path {
|
|
188
188
|
fill: #ffffff;
|
|
@@ -191,7 +191,7 @@ void main() {
|
|
|
191
191
|
svg [type='lineItemGroup'] g g g g {
|
|
192
192
|
stroke: #ffffff;
|
|
193
193
|
}</style>
|
|
194
|
-
`;return i.$$set=o=>{"content"in o&&e(0,n=o.content)},[n,s]}class bg extends le{constructor(t){super(),ae(this,t,vg,Ag,oe,{content:0},pg)}}function yg(i){ue(i,"svelte-ozpg4a",".floorplan-plugin__base-image.svelte-ozpg4a{position:absolute;z-index:10;width:100%;height:100%;pointer-events:none}")}function wg(i){let t,e;return t=new gg({props:{url:i[1].url}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.url=n[1].url),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function Cg(i){let t,e;return t=new bg({props:{content:i[0]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.content=n[0]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function Ig(i){let t,e,n,s;const o=[Cg,wg],r=[];function a(l,c){return l[0]?0:l[1]?1:-1}return~(e=a(i))&&(n=r[e]=o[e](i)),{c(){t=x("div"),n&&n.c(),w(t,"class","floorplan-plugin__base-image svelte-ozpg4a")},m(l,c){B(l,t,c),~e&&r[e].m(t,null),s=!0},p(l,[c]){let d=e;e=a(l),e===d?~e&&r[e].p(l,c):(n&&(de(),j(r[d],1,1,()=>{r[d]=null}),he()),~e?(n=r[e],n?n.p(l,c):(n=r[e]=o[e](l),n.c()),M(n,1),n.m(t,null)):n=null)},i(l){s||(M(n),s=!0)},o(l){j(n),s=!1},d(l){l&&O(t),~e&&r[e].d()}}}function Pg(i,t,e){let n,s,{floorIndex:o}=t,{floorplanData:r}=t;return i.$$set=a=>{"floorIndex"in a&&e(2,o=a.floorIndex),"floorplanData"in a&&e(3,r=a.floorplanData)},i.$$.update=()=>{var a,l;i.$$.dirty&12&&e(1,n=r.outlines[o]),i.$$.dirty&12&&e(0,s=(l=(a=r.outlines)==null?void 0:a[o])==null?void 0:l.svgContent)},[s,n,o,r]}class Hh extends le{constructor(t){super(),ae(this,t,Pg,Ig,oe,{floorIndex:2,floorplanData:3},yg)}}function Eg(i){ue(i,"svelte-12pzct5",".floorplan-plugin__room-label-item.svelte-12pzct5{position:absolute;display:flex;flex-flow:column;align-items:center;line-height:1;color:#fff;transform:translate(-50%, -50%);white-space:nowrap;will-change:opacity;transition:opacity 300ms}.floorplan-plugin__room-size.svelte-12pzct5{opacity:0.45}")}function kg(i){let t,e=i[8].outerHTML+"",n;return{c(){t=new Zs(!1),n=Pe(),t.a=n},m(s,o){t.m(e,s,o),B(s,n,o)},p(s,o){o&256&&e!==(e=s[8].outerHTML+"")&&t.p(e)},d(s){s&&O(n),s&&t.d()}}}function Mg(i){let t,e,n=i[1]&&cl(i),s=i[0]&&dl(i);return{c(){n&&n.c(),t=ee(),s&&s.c(),e=Pe()},m(o,r){n&&n.m(o,r),B(o,t,r),s&&s.m(o,r),B(o,e,r)},p(o,r){o[1]?n?n.p(o,r):(n=cl(o),n.c(),n.m(t.parentNode,t)):n&&(n.d(1),n=null),o[0]?s?s.p(o,r):(s=dl(o),s.c(),s.m(e.parentNode,e)):s&&(s.d(1),s=null)},d(o){n&&n.d(o),o&&O(t),s&&s.d(o),o&&O(e)}}}function cl(i){let t,e=i[2].name+"",n;return{c(){t=x("span"),n=Me(e),w(t,"class","floorplan-plugin__room-name")},m(s,o){B(s,t,o),D(t,n)},p(s,o){o&4&&e!==(e=s[2].name+"")&&Oe(n,e)},d(s){s&&O(t)}}}function dl(i){let t,e;return{c(){t=x("span"),e=Me(i[7]),w(t,"class","floorplan-plugin__room-size svelte-12pzct5")},m(n,s){B(n,t,s),D(t,e)},p(n,s){s&128&&Oe(e,n[7])},d(n){n&&O(t)}}}function xg(i){let t,e,n;function s(a,l){if(a[3]===void 0)return Mg;if(a[8])return kg}let o=s(i),r=o&&o(i);return{c(){t=x("div"),r&&r.c(),w(t,"class","floorplan-plugin__room-label-item svelte-12pzct5"),z(t,"left",i[9]),z(t,"top",i[10]),z(t,"font-size",i[11]),z(t,"opacity",i[6]?"1":"0")},m(a,l){B(a,t,l),r&&r.m(t,null),e||(n=[$t(Pi.call(null,t)),be(t,"clientWidth",i[19]),be(t,"clientHeight",i[20])],e=!0)},p(a,[l]){o===(o=s(a))&&r?r.p(a,l):(r&&r.d(1),r=o&&o(a),r&&(r.c(),r.m(t,null))),l&64&&z(t,"opacity",a[6]?"1":"0")},i:J,o:J,d(a){a&&O(t),r&&r.d(),e=!1,Je(n)}}}function Dg(i,t){const e=i[0],n=i[1];let s=!1;for(let o=0,r=t.length-1;o<t.length;r=o++){const a=t[o][0],l=t[o][1],c=t[r][0],d=t[r][1];l>n!=d>n&&e<(c-a)*(n-l)/(d-l)+a&&(s=!s)}return s}function Sg(i,t,e){let n,s,o,r,a,{pxmm:l}=t,{roomAreaEnable:c}=t,{roomNameEnable:d}=t,{room:h}=t,{hoveredRoom:u}=t,{getRoomAreaText:m}=t,{getLabelElement:A}=t,{adaptiveRoomLabelVisibleEnable:p}=t;function g(G,_){if(_.width===0||_.height===0)return()=>!1;const Q=G.path.map(({x:Ce,y:pe})=>[Ce,pe]),F=G.roomLabel.position,{x:Z,y:X}=F,{width:$,height:ce}=_,se=$/2,we=ce/2;return function(pe){const Be=Z*pe,ve=X*pe,We=Q.map(([ye,Le])=>[ye*pe,Le*pe]);return[[Be+se,ve-we],[Be-se,ve-we],[Be-se,ve+we],[Be+se,ve+we]].every(ye=>Dg(ye,We))}}const b=document.body.clientWidth,y=document.body.clientHeight,I=h.roomLabel,k=I.positionInImage.x*100+"%",T=I.positionInImage.y*100+"%",P=(b<500||y<500?10:14)+"px";let V=0,L=0,W=!1;u.subscribe(function(_){e(16,W=!!_&&_.id===h.id)});const q=G=>{e(4,V=G.detail)},N=G=>{e(5,L=G.detail)};return i.$$set=G=>{"pxmm"in G&&e(12,l=G.pxmm),"roomAreaEnable"in G&&e(0,c=G.roomAreaEnable),"roomNameEnable"in G&&e(1,d=G.roomNameEnable),"room"in G&&e(2,h=G.room),"hoveredRoom"in G&&e(13,u=G.hoveredRoom),"getRoomAreaText"in G&&e(14,m=G.getRoomAreaText),"getLabelElement"in G&&e(3,A=G.getLabelElement),"adaptiveRoomLabelVisibleEnable"in G&&e(15,p=G.adaptiveRoomLabelVisibleEnable)},i.$$.update=()=>{i.$$.dirty&12&&e(8,n=A==null?void 0:A(h)),i.$$.dirty&16388&&e(7,s=h.size?m(h.size):""),i.$$.dirty&48&&e(18,o={width:V,height:L}),i.$$.dirty&262148&&e(17,r=o?g(h,o):void 0),i.$$.dirty&233472&&e(6,a=p?W?!0:!!(r!=null&&r(l)):!0)},[c,d,h,A,V,L,a,s,n,k,T,P,l,u,m,p,W,r,o,q,N]}class Tg extends le{constructor(t){super(),ae(this,t,Sg,xg,oe,{pxmm:12,roomAreaEnable:0,roomNameEnable:1,room:2,hoveredRoom:13,getRoomAreaText:14,getLabelElement:3,adaptiveRoomLabelVisibleEnable:15},Eg)}}function Lg(i){ue(i,"svelte-13xux0b",".floorplan-plugin__room-labels.svelte-13xux0b{width:100%;height:100%;position:absolute;left:0;top:0;z-index:20;pointer-events:none}")}function hl(i,t,e){const n=i.slice();return n[12]=t[e],n}function ul(i){let t,e=[],n=new Map,s,o,r,a=i[8];const l=c=>c[12].id;for(let c=0;c<a.length;c+=1){let d=hl(i,a,c),h=l(d);n.set(h,e[c]=fl(h,d))}return{c(){t=x("div");for(let c=0;c<e.length;c+=1)e[c].c();w(t,"class","floorplan-plugin__room-labels svelte-13xux0b")},m(c,d){B(c,t,d);for(let h=0;h<e.length;h+=1)e[h]&&e[h].m(t,null);s=!0,o||(r=[$t(Pi.call(null,t)),be(t,"clientWidth",i[11])],o=!0)},p(c,d){d&447&&(a=c[8],de(),e=jt(e,d,l,1,c,a,n,t,vn,fl,null,hl),he())},i(c){if(!s){for(let d=0;d<a.length;d+=1)M(e[d]);s=!0}},o(c){for(let d=0;d<e.length;d+=1)j(e[d]);s=!1},d(c){c&&O(t);for(let d=0;d<e.length;d+=1)e[d].d();o=!1,Je(r)}}}function fl(i,t){let e,n,s;const o=[{pxmm:t[7],room:t[12],hoveredRoom:t[2],roomAreaEnable:t[0],roomNameEnable:t[1],getLabelElement:t[4],getRoomAreaText:t[3],adaptiveRoomLabelVisibleEnable:t[5]}];let r={};for(let a=0;a<o.length;a+=1)r=et(r,o[a]);return n=new Tg({props:r}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(a,l){B(a,e,l),te(n,a,l),s=!0},p(a,l){t=a;const c=l&447?lt(o,[{pxmm:t[7],room:t[12],hoveredRoom:t[2],roomAreaEnable:t[0],roomNameEnable:t[1],getLabelElement:t[4],getRoomAreaText:t[3],adaptiveRoomLabelVisibleEnable:t[5]}]):{};n.$set(c)},i(a){s||(M(n.$$.fragment,a),s=!0)},o(a){j(n.$$.fragment,a),s=!1},d(a){a&&O(e),ne(n,a)}}}function jg(i){let t,e,n=i[8]&&ul(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[8]?n?(n.p(s,o),o&256&&M(n,1)):(n=ul(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function zg(i,t,e){let n,{floorIndex:s}=t,{roomAreaEnable:o}=t,{roomNameEnable:r}=t,{floorplanData:a}=t,{hoveredRoom:l}=t,{getRoomAreaText:c}=t,{getLabelElement:d}=t,{adaptiveRoomLabelVisibleEnable:h}=t,u=0,m=0;const A=p=>{e(6,u=p.detail)};return i.$$set=p=>{"floorIndex"in p&&e(9,s=p.floorIndex),"roomAreaEnable"in p&&e(0,o=p.roomAreaEnable),"roomNameEnable"in p&&e(1,r=p.roomNameEnable),"floorplanData"in p&&e(10,a=p.floorplanData),"hoveredRoom"in p&&e(2,l=p.hoveredRoom),"getRoomAreaText"in p&&e(3,c=p.getRoomAreaText),"getLabelElement"in p&&e(4,d=p.getLabelElement),"adaptiveRoomLabelVisibleEnable"in p&&e(5,h=p.adaptiveRoomLabelVisibleEnable)},i.$$.update=()=>{if(i.$$.dirty&1536&&e(8,n=a.floorDatas[s].rooms),i.$$.dirty&1088){const{max:p,min:g}=a.bounding,b=p.x-g.x;e(7,m=u/b)}},[o,r,l,c,d,h,u,m,n,s,a,A]}class Og extends le{constructor(t){super(),ae(this,t,zg,jg,oe,{floorIndex:9,roomAreaEnable:0,roomNameEnable:1,floorplanData:10,hoveredRoom:2,getRoomAreaText:3,getLabelElement:4,adaptiveRoomLabelVisibleEnable:5},Lg)}}function Bg(i){ue(i,"svelte-djlmk4",".floorplan-plugin__rule-labels.svelte-djlmk4.svelte-djlmk4{position:absolute;display:flex}.floorplan-plugin__rule-labels--top.svelte-djlmk4.svelte-djlmk4{left:0;top:-1.25rem}.floorplan-plugin__rule-labels--bottom.svelte-djlmk4.svelte-djlmk4{left:0;bottom:-1.25rem}.floorplan-plugin__rule-labels--left.svelte-djlmk4.svelte-djlmk4{top:0;left:-1.25rem}.floorplan-plugin__rule-labels--right.svelte-djlmk4.svelte-djlmk4{top:0;right:-1.25rem}.floorplan-plugin__rule-line.svelte-djlmk4.svelte-djlmk4{background:#fff;opacity:0.05;width:100%;height:100%}.floorplan-plugin__rule-scale-wrapper.svelte-djlmk4.svelte-djlmk4{position:absolute;width:0.3125rem;height:100%;left:50%;top:0;transform:translateX(-50%)}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-scale-wrapper.svelte-djlmk4{width:100%;height:0.3125rem;top:50%;left:0;transform:translateY(-50%)}.floorplan-plugin__rule-scale.svelte-djlmk4.svelte-djlmk4{position:absolute;background:#fff;opacity:0.05;width:100%;height:0.0625rem}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-scale.svelte-djlmk4{width:0.0625rem;height:100%}.floorplan-plugin__rule-text-wrapper.svelte-djlmk4.svelte-djlmk4{position:absolute}.floorplan-plugin__rule-labels--top.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:100%;height:0;top:0.625rem}.floorplan-plugin__rule-labels--bottom.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:100%;height:0;bottom:0.625rem}.floorplan-plugin__rule-labels--left.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:0;height:100%;left:0.625rem}.floorplan-plugin__rule-labels--right.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:0;height:100%;right:0.625rem}.floorplan-plugin__rule-text-item.svelte-djlmk4.svelte-djlmk4{width:0;height:0;position:absolute;transform:rotate(90deg)}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-text-item.svelte-djlmk4{transform:rotate(0)}.floorplan-plugin__rule-text.svelte-djlmk4.svelte-djlmk4{width:-moz-max-content;width:max-content;transform:translate(-50%, -50%);font-size:0.625rem;color:#fff;opacity:0.2}")}function ml(i,t,e){const n=i.slice();return n[11]=t[e],n[13]=e,n}function gl(i,t,e){const n=i.slice();return n[14]=t[e],n}function pl(i){let t;return{c(){t=x("div"),w(t,"class","floorplan-plugin__rule-scale svelte-djlmk4"),z(t,"left",i[14].left*100+"%"),z(t,"bottom",i[14].bottom*100+"%")},m(e,n){B(e,t,n)},p:J,d(e){e&&O(t)}}}function Al(i,t){let e,n,s=t[1](t[11].distance)+"",o,r;return{key:i,first:null,c(){e=x("div"),n=x("div"),o=Me(s),r=ee(),w(n,"class","floorplan-plugin__rule-text svelte-djlmk4"),K(n,"is-row",t[2]),w(e,"class","floorplan-plugin__rule-text-item svelte-djlmk4"),z(e,"left",t[11].left*100+"%"),z(e,"bottom",t[11].bottom*100+"%"),this.first=e},m(a,l){B(a,e,l),D(e,n),D(n,o),D(e,r)},p(a,l){t=a,l&2&&s!==(s=t[1](t[11].distance)+"")&&Oe(o,s)},d(a){a&&O(e)}}}function Vg(i){let t,e,n,s,o,r,a=[],l=new Map,c,d=i[3],h=[];for(let A=0;A<d.length;A+=1)h[A]=pl(gl(i,d,A));let u=i[4];const m=A=>A[13];for(let A=0;A<u.length;A+=1){let p=ml(i,u,A),g=m(p);l.set(g,a[A]=Al(g,p))}return{c(){t=x("div"),e=x("div"),n=ee(),s=x("div");for(let A=0;A<h.length;A+=1)h[A].c();o=ee(),r=x("div");for(let A=0;A<a.length;A+=1)a[A].c();w(e,"class","floorplan-plugin__rule-line svelte-djlmk4"),w(s,"class","floorplan-plugin__rule-scale-wrapper svelte-djlmk4"),K(s,"is-row",i[2]),w(r,"class","floorplan-plugin__rule-text-wrapper svelte-djlmk4"),w(t,"class",c="floorplan-plugin__rule-labels floorplan-plugin__rule-labels--"+i[0]+" svelte-djlmk4"),K(t,"is-row",i[2]),z(t,"width",i[2]?"100%":1/16+"rem"),z(t,"height",i[2]?1/16+"rem":"100%")},m(A,p){B(A,t,p),D(t,e),D(t,n),D(t,s);for(let g=0;g<h.length;g+=1)h[g]&&h[g].m(s,null);D(t,o),D(t,r);for(let g=0;g<a.length;g+=1)a[g]&&a[g].m(r,null)},p(A,[p]){if(p&8){d=A[3];let g;for(g=0;g<d.length;g+=1){const b=gl(A,d,g);h[g]?h[g].p(b,p):(h[g]=pl(b),h[g].c(),h[g].m(s,null))}for(;g<h.length;g+=1)h[g].d(1);h.length=d.length}p&22&&(u=A[4],a=jt(a,p,m,1,A,u,l,r,wa,Al,null,ml)),p&1&&c!==(c="floorplan-plugin__rule-labels floorplan-plugin__rule-labels--"+A[0]+" svelte-djlmk4")&&w(t,"class",c),p&5&&K(t,"is-row",A[2])},i:J,o:J,d(A){A&&O(t),Tt(h,A);for(let p=0;p<a.length;p+=1)a[p].d()}}}const qn=1e3,Kn=180;function Rg(i,t,e){let{type:n}=t,{data:s}=t,{bounding:o}=t,{getRuleDistanceText:r}=t;const a=n==="top"||n==="bottom",l=o.max.x-o.min.x-(qn-Kn)*2,c=o.max.y-o.min.y-(qn-Kn)*2,d=s.map(([A,p])=>a?[A.x,p.x]:[A.y,p.y]).flat().sort().filter((A,p,g)=>p===0?!0:A!==g[p-1]),h=d.map(A=>{const p=a?(A-o.min.x-qn+Kn)/l:0,g=a?0:(A-o.min.y-qn+Kn)/c;return{left:p,bottom:g}});h.unshift({left:0,bottom:0}),h.push(a?{left:1,bottom:0}:{left:0,bottom:1});const u=d[d.length-1]-d[0],m=d.map((A,p,g)=>{const b=p===0?0:A-g[p-1],y=p===0?0:(A+g[p-1])/2,I=a?(y-o.min.x-qn+Kn)/l:0,k=a?0:(y-o.min.y-qn+Kn)/c;return{left:I,bottom:k,distance:b}}).filter(({distance:A})=>A/u>.1);return i.$$set=A=>{"type"in A&&e(0,n=A.type),"data"in A&&e(5,s=A.data),"bounding"in A&&e(6,o=A.bounding),"getRuleDistanceText"in A&&e(1,r=A.getRuleDistanceText)},[n,r,a,h,m,s,o]}class Qg extends le{constructor(t){super(),ae(this,t,Rg,Vg,oe,{type:0,data:5,bounding:6,getRuleDistanceText:1},Bg)}}function Gg(i){ue(i,"svelte-1mzj9p3",".floorplan-plugin__rule-labels-wrapper.svelte-1mzj9p3{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);pointer-events:none}")}function vl(i,t,e){const n=i.slice();return n[13]=t[e][0],n[14]=t[e][1],n}function bl(i,t){let e,n,s;const o=[{type:t[13],data:t[14],bounding:t[1],getRuleDistanceText:t[0]}];let r={};for(let a=0;a<o.length;a+=1)r=et(r,o[a]);return n=new Qg({props:r}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(a,l){B(a,e,l),te(n,a,l),s=!0},p(a,l){t=a;const c=l&19?lt(o,[{type:t[13],data:t[14],bounding:t[1],getRuleDistanceText:t[0]}]):{};n.$set(c)},i(a){s||(M(n.$$.fragment,a),s=!0)},o(a){j(n.$$.fragment,a),s=!1},d(a){a&&O(e),ne(n,a)}}}function Ng(i){let t,e=[],n=new Map,s,o=i[4];const r=a=>a[13];for(let a=0;a<o.length;a+=1){let l=vl(i,o,a),c=r(l);n.set(c,e[a]=bl(c,l))}return{c(){t=x("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","floorplan-plugin__rule-labels-wrapper svelte-1mzj9p3"),z(t,"width",i[3]),z(t,"height",i[2])},m(a,l){B(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,[l]){l&19&&(o=a[4],de(),e=jt(e,l,r,1,a,o,n,t,vn,bl,null,vl),he()),l&8&&z(t,"width",a[3]),l&4&&z(t,"height",a[2])},i(a){if(!s){for(let l=0;l<o.length;l+=1)M(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)j(e[l]);s=!1},d(a){a&&O(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}const yl=1e3,wl=180;function Hg(i,t,e){let n,s,o,r,a,l,c,d,h,u,{floorIndex:m}=t,{floorplanData:A}=t,{getRuleDistanceText:p}=t;return i.$$set=g=>{"floorIndex"in g&&e(5,m=g.floorIndex),"floorplanData"in g&&e(6,A=g.floorplanData),"getRuleDistanceText"in g&&e(0,p=g.getRuleDistanceText)},i.$$.update=()=>{i.$$.dirty&64&&e(1,n=A.bounding),i.$$.dirty&96&&e(11,s=A.floorDatas[m].rules),i.$$.dirty&2048&&e(12,o=Object.keys(s)),i.$$.dirty&6144&&e(4,r=o.map(g=>[g,s[g]])),i.$$.dirty&2&&e(9,a=n.max.x-n.min.x),i.$$.dirty&2&&e(7,l=n.max.y-n.min.y),i.$$.dirty&2&&e(10,c=n.max.x-n.min.x-(yl-wl)*2),i.$$.dirty&2&&e(8,d=n.max.y-n.min.y-(yl-wl)*2),i.$$.dirty&1536&&e(3,h=c/a*100+"%"),i.$$.dirty&384&&e(2,u=d/l*100+"%")},[p,n,u,h,r,m,A,l,d,a,c,s,o]}class _g extends le{constructor(t){super(),ae(this,t,Hg,Ng,oe,{floorIndex:5,floorplanData:6,getRuleDistanceText:0},Gg)}}function Io(i,t={}){let e="";const{needZ:n,needA:s}=t;return(n?i.slice().concat(i[0]):i.slice()).forEach((r,a)=>{const{x:l,y:c}=t.format?t.format(r):r,d=l+","+c;return a===0?(e+="M"+d,e):s!=null&&s[a]?(e+="A"+s[a]+","+d,e):(e+="L"+d,e)}),e+(n?"Z":"")}function _h({x:i,y:t},e){const{max:n,min:s}=e;return{x:i-s.x,y:n.y-t}}function Wg(i,t){const e=i.x*1e3+t.bounding.origin.x,n=-i.z*1e3+t.bounding.origin.y;return{x:e,y:n}}function Fg(i,t){const e=t.bounding,n=e.max.x-e.min.x,s=e.max.y-e.min.y;return{x:(i.x-e.min.x)/n,y:(e.max.y-i.y)/s}}function Yg(i,t){return Math.max(...t.work.observers.map(n=>i.z>=n.standingPosition.z?n.floorIndex:0))}function Ug(i){let t;return{c(){t=ze("path"),w(t,"d",i[0]),w(t,"fill","#2F313A")},m(e,n){B(e,t,n)},p(e,[n]){n&1&&w(t,"d",e[0])},i:J,o:J,d(e){e&&O(t)}}}function Xg(i,t,e){let n,{path:s}=t;return i.$$set=o=>{"path"in o&&e(1,s=o.path)},i.$$.update=()=>{i.$$.dirty&2&&e(0,n=Io(s,{needZ:!0}))},[n,s]}class Zg extends le{constructor(t){super(),ae(this,t,Xg,Ug,oe,{path:1})}}function Jg(i){let t,e,n,s,o,r;return{c(){t=ze("defs"),e=ze("pattern"),n=ze("rect"),s=ze("path"),o=ee(),r=ze("path"),w(n,"x","0"),w(n,"y","0"),w(n,"width",i[1]),w(n,"height",i[1]),w(n,"fill","#323747"),w(s,"d",i[2]),w(s,"stroke","#ffffff"),w(s,"stroke-opacity","0.06"),w(s,"stroke-width","0.5"),w(s,"fill","none"),w(e,"id","fpm-room-pattern-0"),w(e,"x","0"),w(e,"y","0"),w(e,"width",i[1]),w(e,"height",i[1]),w(e,"patternUnits","userSpaceOnUse"),w(e,"patternTransform","scale(50 50)"),w(r,"d",i[0]),w(r,"fill","url(#fpm-room-pattern-0)")},m(a,l){B(a,t,l),D(t,e),D(e,n),D(e,s),B(a,o,l),B(a,r,l)},p(a,[l]){l&1&&w(r,"d",a[0])},i:J,o:J,d(a){a&&O(t),a&&O(o),a&&O(r)}}}const Ir=6;function qg(i,t,e){let n,{path:s}=t;const o=Ir*2,r=`M0 ${Ir} h ${o} M${Ir} 0 v ${o}`;return i.$$set=a=>{"path"in a&&e(3,s=a.path)},i.$$.update=()=>{i.$$.dirty&8&&e(0,n=Io(s,{needZ:!0}))},[n,o,r,s]}class Kg extends le{constructor(t){super(),ae(this,t,qg,Jg,oe,{path:3})}}function $g(i){let t,e,n,s,o,r,a,l,c,d,h;return{c(){t=ze("defs"),e=ze("pattern"),n=ze("rect"),s=ze("pattern"),o=ze("rect"),r=ee(),a=ze("path"),l=ee(),c=ze("path"),d=ee(),h=ze("path"),w(n,"x","0"),w(n,"y","0"),w(n,"width","6"),w(n,"height","50"),w(n,"fill","none"),w(n,"stroke","#4B4B57"),w(n,"stroke-width","0.5"),w(e,"id","room-material-pattern-1"),w(e,"x","0"),w(e,"y","0"),w(e,"width","12"),w(e,"height","50"),w(e,"patternUnits","userSpaceOnUse"),w(e,"patternTransform","scale(50 50)"),w(o,"x","0"),w(o,"y","0"),w(o,"width","6"),w(o,"height","50"),w(o,"fill","none"),w(o,"stroke","#4B4B57"),w(o,"stroke-width","0.5"),w(s,"id","room-material-pattern-2"),w(s,"x","6"),w(s,"y","25"),w(s,"width","12"),w(s,"height","50"),w(s,"patternUnits","userSpaceOnUse"),w(s,"patternTransform","scale(50 50)"),w(a,"d",i[0]),w(a,"fill","#43434D"),w(c,"d",i[0]),w(c,"fill","url(#room-material-pattern-1)"),w(h,"d",i[0]),w(h,"fill","url(#room-material-pattern-2)")},m(u,m){B(u,t,m),D(t,e),D(e,n),D(t,s),D(s,o),B(u,r,m),B(u,a,m),B(u,l,m),B(u,c,m),B(u,d,m),B(u,h,m)},p(u,[m]){m&1&&w(a,"d",u[0]),m&1&&w(c,"d",u[0]),m&1&&w(h,"d",u[0])},i:J,o:J,d(u){u&&O(t),u&&O(r),u&&O(a),u&&O(l),u&&O(c),u&&O(d),u&&O(h)}}}function ep(i,t,e){let n,{path:s}=t;return i.$$set=o=>{"path"in o&&e(1,s=o.path)},i.$$.update=()=>{i.$$.dirty&2&&e(0,n=Io(s,{needZ:!0}))},[n,s]}class tp extends le{constructor(t){super(),ae(this,t,ep,$g,oe,{path:1})}}function np(i){ue(i,"svelte-1dykexu",".floorplan-plugin__room-material.svelte-1dykexu{position:absolute;left:0;top:0;width:100%;height:100%}svg.svelte-1dykexu{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}")}function Cl(i,t,e){const n=i.slice();return n[5]=t[e],n}function ip(i){let t,e;return t=new Kg({props:{path:i[5].path}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.path=n[5].path),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function sp(i){let t,e;return t=new tp({props:{path:i[5].path}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.path=n[5].path),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function op(i){let t,e;return t=new Zg({props:{path:i[5].path}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.path=n[5].path),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function Il(i){let t,e,n,s;const o=[op,sp,ip],r=[];function a(l,c){return l[5].floorType===1?0:l[5].floorType===0?1:2}return e=a(i),n=r[e]=o[e](i),{c(){t=ze("svg"),n.c(),w(t,"width","100%"),w(t,"height","100%"),w(t,"viewBox",`0 0 ${i[1]} ${i[2]}`),w(t,"class","svelte-1dykexu")},m(l,c){B(l,t,c),r[e].m(t,null),s=!0},p(l,c){let d=e;e=a(l),e===d?r[e].p(l,c):(de(),j(r[d],1,1,()=>{r[d]=null}),he(),n=r[e],n?n.p(l,c):(n=r[e]=o[e](l),n.c()),M(n,1),n.m(t,null))},i(l){s||(M(n),s=!0)},o(l){j(n),s=!1},d(l){l&&O(t),r[e].d()}}}function rp(i){let t,e,n=i[0],s=[];for(let r=0;r<n.length;r+=1)s[r]=Il(Cl(i,n,r));const o=r=>j(s[r],1,1,()=>{s[r]=null});return{c(){t=x("div");for(let r=0;r<s.length;r+=1)s[r].c();w(t,"class","floorplan-plugin__room-material svelte-1dykexu")},m(r,a){B(r,t,a);for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(t,null);e=!0},p(r,[a]){if(a&7){n=r[0];let l;for(l=0;l<n.length;l+=1){const c=Cl(r,n,l);s[l]?(s[l].p(c,a),M(s[l],1)):(s[l]=Il(c),s[l].c(),M(s[l],1),s[l].m(t,null))}for(de(),l=n.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<n.length;a+=1)M(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)j(s[a]);e=!1},d(r){r&&O(t),Tt(s,r)}}}function ap(i,t,e){let n,{floorIndex:s}=t,{floorplanData:o}=t;const r=o.bounding.max.x-o.bounding.min.x,a=o.bounding.max.y-o.bounding.min.y;return i.$$set=l=>{"floorIndex"in l&&e(3,s=l.floorIndex),"floorplanData"in l&&e(4,o=l.floorplanData)},i.$$.update=()=>{i.$$.dirty&24&&e(0,n=o.floorDatas[s].rooms.map(l=>Ae(H({},l),{path:l.path.map(c=>_h(c,o.bounding))})))},[n,r,a,s,o]}class lp extends le{constructor(t){super(),ae(this,t,ap,rp,oe,{floorIndex:3,floorplanData:4},np)}}function cp(i){ue(i,"svelte-qq2273","path.svelte-qq2273{--opacity:0;opacity:var(--opacity)}path.svelte-qq2273:hover{opacity:calc(var(--opacity) + 0.1)}")}function dp(i){let t,e,n,s;return{c(){t=ze("path"),w(t,"d",i[5]),w(t,"fill","#fff"),w(t,"style",i[2]),w(t,"id",e=`${i[1]}_${i[0].id}`),w(t,"class","svelte-qq2273")},m(o,r){B(o,t,r),n||(s=[be(t,"mouseenter",i[3]),be(t,"mouseleave",i[4])],n=!0)},p(o,[r]){r&4&&w(t,"style",o[2]),r&3&&e!==(e=`${o[1]}_${o[0].id}`)&&w(t,"id",e)},i:J,o:J,d(o){o&&O(t),n=!1,Je(s)}}}function hp(i,t,e){let n,s,{room:o}=t,{floorIndex:r}=t,{floorplanData:a}=t,{highlightData:l}=t,{hoveredRoom:c}=t;function d(){c==null||c.set(o)}function h(){c==null||c.set(void 0)}const{bounding:u}=a,m=Io(o.path,{needZ:!0,format:A=>_h(A,u)});return i.$$set=A=>{"room"in A&&e(0,o=A.room),"floorIndex"in A&&e(1,r=A.floorIndex),"floorplanData"in A&&e(6,a=A.floorplanData),"highlightData"in A&&e(7,l=A.highlightData),"hoveredRoom"in A&&e(8,c=A.hoveredRoom)},i.$$.update=()=>{i.$$.dirty&131&&e(9,n=l[`${r}_${o.id}`]),i.$$.dirty&512&&e(2,s=n?`fill: ${n.color}; --opacity: ${n.opacity}; pointer-events: ${n.disabled?"none":"auto"}`:null)},[o,r,s,d,h,m,a,l,c,n]}class up extends le{constructor(t){super(),ae(this,t,hp,dp,oe,{room:0,floorIndex:1,floorplanData:6,highlightData:7,hoveredRoom:8},cp)}}function fp(i){ue(i,"svelte-1kqo6e4",".floorplan-plugin__room-highlight.svelte-1kqo6e4{position:absolute;width:100%;height:100%}svg.svelte-1kqo6e4{width:100%;height:100%;overflow:visible}")}function Pl(i,t,e){const n=i.slice();return n[6]=t[e],n}function El(i,t){let e,n,s;const o=[{room:t[6],floorplanData:t[1],hoveredRoom:t[3],floorIndex:t[0],highlightData:t[2]}];let r={};for(let a=0;a<o.length;a+=1)r=et(r,o[a]);return n=new up({props:r}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(a,l){B(a,e,l),te(n,a,l),s=!0},p(a,l){t=a;const c=l&15?lt(o,[{room:t[6],floorplanData:t[1],hoveredRoom:t[3],floorIndex:t[0],highlightData:t[2]}]):{};n.$set(c)},i(a){s||(M(n.$$.fragment,a),s=!0)},o(a){j(n.$$.fragment,a),s=!1},d(a){a&&O(e),ne(n,a)}}}function mp(i){let t,e,n=[],s=new Map,o,r=i[1].floorDatas[i[0]].rooms;const a=l=>l[6].id;for(let l=0;l<r.length;l+=1){let c=Pl(i,r,l),d=a(c);s.set(d,n[l]=El(d,c))}return{c(){t=x("div"),e=ze("svg");for(let l=0;l<n.length;l+=1)n[l].c();w(e,"width","100%"),w(e,"height","100%"),w(e,"viewBox",`0 0 ${i[4]} ${i[5]}`),w(e,"class","svelte-1kqo6e4"),w(t,"class","floorplan-plugin__room-highlight svelte-1kqo6e4")},m(l,c){B(l,t,c),D(t,e);for(let d=0;d<n.length;d+=1)n[d]&&n[d].m(e,null);o=!0},p(l,[c]){c&15&&(r=l[1].floorDatas[l[0]].rooms,de(),n=jt(n,c,a,1,l,r,s,e,vn,El,null,Pl),he())},i(l){if(!o){for(let c=0;c<r.length;c+=1)M(n[c]);o=!0}},o(l){for(let c=0;c<n.length;c+=1)j(n[c]);o=!1},d(l){l&&O(t);for(let c=0;c<n.length;c+=1)n[c].d()}}}function gp(i,t,e){let{floorIndex:n}=t,{floorplanData:s}=t,{highlightData:o}=t,{hoveredRoom:r}=t;const a=s.bounding.max.x-s.bounding.min.x,l=s.bounding.max.y-s.bounding.min.y;return i.$$set=c=>{"floorIndex"in c&&e(0,n=c.floorIndex),"floorplanData"in c&&e(1,s=c.floorplanData),"highlightData"in c&&e(2,o=c.highlightData),"hoveredRoom"in c&&e(3,r=c.hoveredRoom)},[n,s,o,r,a,l]}class Wh extends le{constructor(t){super(),ae(this,t,gp,mp,oe,{floorIndex:0,floorplanData:1,highlightData:2,hoveredRoom:3},fp)}}function pp(i){ue(i,"svelte-bl8zrz",".floorplan-plugin__floor.svelte-bl8zrz{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;pointer-events:none}.floorplan-plugin__floor--is-current.svelte-bl8zrz{opacity:1;pointer-events:auto}")}function kl(i){let t,e;const n=[{floorIndex:i[1],floorplanData:i[8],hoveredRoom:i[14],highlightData:i[13]}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new Wh({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&24834?lt(n,[{floorIndex:o[1],floorplanData:o[8],hoveredRoom:o[14],highlightData:o[13]}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function Ml(i){let t,e;const n=[{floorplanData:i[8],roomAreaEnable:i[5],roomNameEnable:i[6],floorIndex:i[1],getRoomAreaText:i[9],getLabelElement:i[10],hoveredRoom:i[14],adaptiveRoomLabelVisibleEnable:i[12]}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new Og({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&22370?lt(n,[{floorplanData:o[8],roomAreaEnable:o[5],roomNameEnable:o[6],floorIndex:o[1],getRoomAreaText:o[9],getLabelElement:o[10],hoveredRoom:o[14],adaptiveRoomLabelVisibleEnable:o[12]}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function xl(i){let t,e;const n=[{floorplanData:i[8],floorIndex:i[1],getRuleDistanceText:i[11]}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new _g({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&2306?lt(n,[{floorplanData:o[8],floorIndex:o[1],getRuleDistanceText:o[11]}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function Ap(i){let t,e,n,s,o,r,a,l,c;const d=[{floorIndex:i[1],floorplanData:i[8]}];let h={};for(let b=0;b<d.length;b+=1)h=et(h,d[b]);e=new lp({props:h});let u=(i[2]||i[3])&&kl(i);const m=[{floorplanData:i[8],floorIndex:i[1]}];let A={};for(let b=0;b<m.length;b+=1)A=et(A,m[b]);o=new Hh({props:A});let p=i[4]&&Ml(i),g=i[7]&&xl(i);return{c(){t=x("div"),ie(e.$$.fragment),n=ee(),u&&u.c(),s=ee(),ie(o.$$.fragment),r=ee(),p&&p.c(),a=ee(),g&&g.c(),w(t,"class",l=Re(`floorplan-plugin__floor${i[0]?" floorplan-plugin__floor--is-current":""}`)+" svelte-bl8zrz")},m(b,y){B(b,t,y),te(e,t,null),D(t,n),u&&u.m(t,null),D(t,s),te(o,t,null),D(t,r),p&&p.m(t,null),D(t,a),g&&g.m(t,null),c=!0},p(b,[y]){const I=y&258?lt(d,[{floorIndex:b[1],floorplanData:b[8]}]):{};e.$set(I),b[2]||b[3]?u?(u.p(b,y),y&12&&M(u,1)):(u=kl(b),u.c(),M(u,1),u.m(t,s)):u&&(de(),j(u,1,1,()=>{u=null}),he());const k=y&258?lt(m,[{floorplanData:b[8],floorIndex:b[1]}]):{};o.$set(k),b[4]?p?(p.p(b,y),y&16&&M(p,1)):(p=Ml(b),p.c(),M(p,1),p.m(t,a)):p&&(de(),j(p,1,1,()=>{p=null}),he()),b[7]?g?(g.p(b,y),y&128&&M(g,1)):(g=xl(b),g.c(),M(g,1),g.m(t,null)):g&&(de(),j(g,1,1,()=>{g=null}),he()),(!c||y&1&&l!==(l=Re(`floorplan-plugin__floor${b[0]?" floorplan-plugin__floor--is-current":""}`)+" svelte-bl8zrz"))&&w(t,"class",l)},i(b){c||(M(e.$$.fragment,b),M(u),M(o.$$.fragment,b),M(p),M(g),c=!0)},o(b){j(e.$$.fragment,b),j(u),j(o.$$.fragment,b),j(p),j(g),c=!1},d(b){b&&O(t),ne(e),u&&u.d(),ne(o),p&&p.d(),g&&g.d()}}}function vp(i,t,e){let{isCurrent:n}=t,{floorIndex:s}=t,{highlightEnable:o}=t,{hoverEnable:r}=t,{roomLabelsEnable:a}=t,{roomAreaEnable:l}=t,{roomNameEnable:c}=t,{ruleLabelsEnable:d}=t,{floorplanData:h}=t,{getRoomAreaText:u}=t,{getLabelElement:m}=t,{getRuleDistanceText:A}=t,{adaptiveRoomLabelVisibleEnable:p}=t,{highlightData:g}=t;const b=Pa(void 0);return i.$$set=y=>{"isCurrent"in y&&e(0,n=y.isCurrent),"floorIndex"in y&&e(1,s=y.floorIndex),"highlightEnable"in y&&e(2,o=y.highlightEnable),"hoverEnable"in y&&e(3,r=y.hoverEnable),"roomLabelsEnable"in y&&e(4,a=y.roomLabelsEnable),"roomAreaEnable"in y&&e(5,l=y.roomAreaEnable),"roomNameEnable"in y&&e(6,c=y.roomNameEnable),"ruleLabelsEnable"in y&&e(7,d=y.ruleLabelsEnable),"floorplanData"in y&&e(8,h=y.floorplanData),"getRoomAreaText"in y&&e(9,u=y.getRoomAreaText),"getLabelElement"in y&&e(10,m=y.getLabelElement),"getRuleDistanceText"in y&&e(11,A=y.getRuleDistanceText),"adaptiveRoomLabelVisibleEnable"in y&&e(12,p=y.adaptiveRoomLabelVisibleEnable),"highlightData"in y&&e(13,g=y.highlightData)},[n,s,o,r,a,l,c,d,h,u,m,A,p,g,b]}let bp=class extends le{constructor(t){super(),ae(this,t,vp,Ap,oe,{isCurrent:0,floorIndex:1,highlightEnable:2,hoverEnable:3,roomLabelsEnable:4,roomAreaEnable:5,roomNameEnable:6,ruleLabelsEnable:7,floorplanData:8,getRoomAreaText:9,getLabelElement:10,getRuleDistanceText:11,adaptiveRoomLabelVisibleEnable:12,highlightData:13},pp)}};function yp(i){ue(i,"svelte-86bqav",".floorplan-main.svelte-86bqav{width:100%;height:100%;pointer-events:none}")}function Dl(i,t,e){const n=i.slice();return n[21]=t[e],n}function Sl(i){let t,e,n,s,o,r=i[13].floorDatas,a=[];for(let h=0;h<r.length;h+=1)a[h]=Tl(Dl(i,r,h));const l=h=>j(a[h],1,1,()=>{a[h]=null});let c=i[5]&&Ll(i),d=i[8]&&jl(i);return{c(){t=x("div");for(let h=0;h<a.length;h+=1)a[h].c();e=ee(),c&&c.c(),n=ee(),d&&d.c(),w(t,"class","floorplan-main svelte-86bqav")},m(h,u){B(h,t,u);for(let m=0;m<a.length;m+=1)a[m]&&a[m].m(t,null);D(t,e),c&&c.m(t,null),D(t,n),d&&d.m(t,null),o=!0},p(h,u){if(i=h,u&2047696){r=i[13].floorDatas;let m;for(m=0;m<r.length;m+=1){const A=Dl(i,r,m);a[m]?(a[m].p(A,u),M(a[m],1)):(a[m]=Tl(A),a[m].c(),M(a[m],1),a[m].m(t,e))}for(de(),m=r.length;m<a.length;m+=1)l(m);he()}i[5]?c?(c.p(i,u),u&32&&M(c,1)):(c=Ll(i),c.c(),M(c,1),c.m(t,n)):c&&(de(),j(c,1,1,()=>{c=null}),he()),i[8]?d?(d.p(i,u),u&256&&M(d,1)):(d=jl(i),d.c(),M(d,1),d.m(t,null)):d&&(de(),j(d,1,1,()=>{d=null}),he())},i(h){if(!o){for(let u=0;u<r.length;u+=1)M(a[u]);M(c),M(d),s||Ne(()=>{s=On(t,tt,{duration:i[0],easing:en}),s.start()}),o=!0}},o(h){a=a.filter(Boolean);for(let u=0;u<a.length;u+=1)j(a[u]);j(c),j(d),o=!1},d(h){h&&O(t),Tt(a,h),c&&c.d(),d&&d.d()}}}function Tl(i){let t,e;const n=[{hoverEnable:i[6],highlightEnable:i[7],floorplanData:i[13],getRoomAreaText:i[16],getLabelElement:i[17],getRuleDistanceText:i[18],roomLabelsEnable:i[9],roomAreaEnable:i[10],roomNameEnable:i[11],ruleLabelsEnable:i[12],adaptiveRoomLabelVisibleEnable:i[19],highlightData:i[20]},{floorIndex:i[21].floorIndex},{isCurrent:i[21].floorIndex===i[4]}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new bp({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&2047696?lt(n,[r&2047680&&{hoverEnable:o[6],highlightEnable:o[7],floorplanData:o[13],getRoomAreaText:o[16],getLabelElement:o[17],getRuleDistanceText:o[18],roomLabelsEnable:o[9],roomAreaEnable:o[10],roomNameEnable:o[11],ruleLabelsEnable:o[12],adaptiveRoomLabelVisibleEnable:o[19],highlightData:o[20]},r&8192&&{floorIndex:o[21].floorIndex},r&8208&&{isCurrent:o[21].floorIndex===o[4]}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function Ll(i){let t,e;const n=[{panoIndex:i[3],floorplanData:i[13],lastPanoramaLongitude:i[14],cameraImageUrl:i[15]}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new sg({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&57352?lt(n,[{panoIndex:o[3],floorplanData:o[13],lastPanoramaLongitude:o[14],cameraImageUrl:o[15]}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function jl(i){let t,e;return t=new hg({props:{floorplanData:i[13],northDesc:i[2]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&8192&&(o.floorplanData=n[13]),s&4&&(o.northDesc=n[2]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function wp(i){let t,e,n=i[1]&&Sl(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[1]?n?(n.p(s,o),o&2&&M(n,1)):(n=Sl(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function Cp(i,t,e){let{duration:n=0}=t,{visible:s}=t,{northDesc:o}=t,{panoIndex:r}=t,{floorIndex:a}=t,{cameraEnable:l}=t,{hoverEnable:c}=t,{highlightEnable:d}=t,{compassEnable:h}=t,{roomLabelsEnable:u}=t,{roomAreaEnable:m}=t,{roomNameEnable:A}=t,{ruleLabelsEnable:p}=t,{floorplanData:g}=t,{lastPanoramaLongitude:b}=t,{cameraImageUrl:y}=t,{getRoomAreaText:I}=t,{getLabelElement:k}=t,{getRuleDistanceText:T}=t,{adaptiveRoomLabelVisibleEnable:P}=t,{highlightData:V}=t;return i.$$set=L=>{"duration"in L&&e(0,n=L.duration),"visible"in L&&e(1,s=L.visible),"northDesc"in L&&e(2,o=L.northDesc),"panoIndex"in L&&e(3,r=L.panoIndex),"floorIndex"in L&&e(4,a=L.floorIndex),"cameraEnable"in L&&e(5,l=L.cameraEnable),"hoverEnable"in L&&e(6,c=L.hoverEnable),"highlightEnable"in L&&e(7,d=L.highlightEnable),"compassEnable"in L&&e(8,h=L.compassEnable),"roomLabelsEnable"in L&&e(9,u=L.roomLabelsEnable),"roomAreaEnable"in L&&e(10,m=L.roomAreaEnable),"roomNameEnable"in L&&e(11,A=L.roomNameEnable),"ruleLabelsEnable"in L&&e(12,p=L.ruleLabelsEnable),"floorplanData"in L&&e(13,g=L.floorplanData),"lastPanoramaLongitude"in L&&e(14,b=L.lastPanoramaLongitude),"cameraImageUrl"in L&&e(15,y=L.cameraImageUrl),"getRoomAreaText"in L&&e(16,I=L.getRoomAreaText),"getLabelElement"in L&&e(17,k=L.getLabelElement),"getRuleDistanceText"in L&&e(18,T=L.getRuleDistanceText),"adaptiveRoomLabelVisibleEnable"in L&&e(19,P=L.adaptiveRoomLabelVisibleEnable),"highlightData"in L&&e(20,V=L.highlightData)},[n,s,o,r,a,l,c,d,h,u,m,A,p,g,b,y,I,k,T,P,V]}let Ea=class extends le{constructor(t){super(),ae(this,t,Cp,wp,oe,{duration:0,visible:1,northDesc:2,panoIndex:3,floorIndex:4,cameraEnable:5,hoverEnable:6,highlightEnable:7,compassEnable:8,roomLabelsEnable:9,roomAreaEnable:10,roomNameEnable:11,ruleLabelsEnable:12,floorplanData:13,lastPanoramaLongitude:14,cameraImageUrl:15,getRoomAreaText:16,getLabelElement:17,getRuleDistanceText:18,adaptiveRoomLabelVisibleEnable:19,highlightData:20},yp)}};const Ip="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAwCAYAAACFUvPfAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAALaADAAQAAAABAAAAMAAAAADe2FZjAAAEF0lEQVRoBe2WzWskRRiHf13V092TxI2oEzYeVDwITtyDuCiihwiCePGgxIM3vYgHL4J4UIhBRA8i/gPqyUvWg7AiIuIeloDiYUHJLOK6BPwIk9nNODM9Xf1RVe1b3elJRjCZmQ6euqGmuqer33rq4e23GqiOykBloDJQGagMVAYqA5WBykBlYFYD1qwP/tdzaZqOx9zYOLxeX0+L5yzLGp0X/03a25MOnGRcBtx+6Rlo9SL08G4EooFnxa8Yiivox5/h5Ys/4cl7NVorNDRnngX+0MIkVMeMSf23zyKML8J7/Dy8hwF2Buh9CnS+AEQIdLspBuGb+M7/qLW4qJrNpsLapjYhpwVnx3BMfCtNNx3Etc9xywvnMf80wG8HmQainw0RxSGrnmeBp+8k5/j9S0HbvXb5io0Lz880/0wPHV1NlhLd316He+4xOCv5ragF7L9PrH1qBJyB0626x/lC+qrSvH5r/W+n1WpxUM5nMY4GPeH8lHJaPgfeAFQHCL+ntkXT+vnUc3W6pvTIwC0wy3rA4dwLmK2avZ7Eo9uKBuYJfgJscbs8dLCxDMt+EOEPBEZNEWyBYHqTz6bPXrzUnNrSShxHIsYiOL69zrCGLLcLqJP68tB+9w5wj+YhWDafQ2s61wNqxjZhmrQ2pvMFCEvXuCUZ7wqH794ZWs28LJqlTXSUyuksF2M/yOwqgkx2c1ADa4wLAQRk2sAGQQakhN6yFC2hltfz5kSY44NKQeeh+vtI/SSzWhg2CzCgmWISmKUGmaYFBDfCSymnfxJ6/+ospVcWOLLp5DGP/y0P/Rp66O99DQNq7Po3Ds0a0wY+My2QSv2N2mO/OyxR2o6UQk+Lv7yJ06JYSnnolZVU9cUn2O9SmaMWGFBqYXRwbqAJWIi94TX5biotpcGl1DXZ6LnqIbNDTnmUgi52Mv5l5ysMxIcZcGjy2DTK4ZHlcBC14zeSge4qphICjj3bS0A7o9nSp2TOkm7aZ8bGZy/jxhO87V91G0+dfY/Z7BWIIK9KYUi5qy/Hf8YfBG3sqJTHiQWhmTVkbip+wX3x6volVSx+LPAxF+VLXhZ8VQ+iP2Rta/iWe5v42Fngj0BbdnRTXh12ZIcKhTaGbcYjybRwXBU1lu9KlndXp04NM52poKWO0RZsviNaP9a6grkO972+st05pXhE5c1hTEluJy7XUejGUQNLMbAmTdWY1rKBLW3aTJqBZ7nZkb36DhYCreeYHbMUXHvaYi5XDK70EcgulmRjm77wNtenzuXCbmnTRaAx493rbGf3Jr/njMzj920CnKdUaFCjlDioy7NYNvOdGrQJNgI32/L2tkXfFPlxgToqjWVhD6KdLnQRdARf/HHQz2r2X2Gqy8pAZaAyUBmoDFQGKgP/q4F/AJYg9/s0ZoABAAAAAElFTkSuQmCC";function Pp(i){return U(this,null,function*(){const t=new Headers({"Content-Type":"text/plain"}),e=function(s){return U(this,null,function*(){const o={index:s.index,url:s.url,svgUrl:s.svg_url};if(s.svg_url){const r=yield fetch(s.svg_url,{headers:t}).then(a=>a.text());o.svgContent=r}return o})};return yield Promise.all(i.map(e))})}function Ep(i){return{id:i.id,size:i.size,name:i.name,path:i.path,roomType:i.room_type,floorType:i.floor_type,roomLabel:{position:i.room_label.position,positionInImage:i.room_label.position_in_image},observerIndexs:i.observer_indexs}}function kp(i){return{floorName:i.floor_name,floorIndex:i.floor_index,rooms:i.rooms.map(Ep),rules:i.rules}}function Mp(i){return{index:i.index,floorIndex:i.floor_index,position:i.position,positionInImage:i.position_in_image}}function xp(i){return{rad:i.rad,position:i.position,positionInImage:i.position_in_image,northRad:i.north_rad,roomId:i.room_id,floorIndex:i.floor_index}}function gn(i){return U(this,null,function*(){const t=yield Pp(i.outlines),e=i.computed_data.bounding,n=i.computed_data.floor_datas.map(kp),s=i.computed_data.entrance?xp(i.computed_data.entrance):null;return{outlines:t,entrance:s,bounding:e,floorDatas:n,observers:i.computed_data.observers.map(Mp)}})}function Dp(i,t,e){return i.map(s=>{const o=s.position,r=s.icon?s.icon:{url:Ip,width:45,height:48},a=Yg(o,t),l=Wg(o,e),c=Fg(l,e);return{floorIndex:a,icon:r,id:s.id,position:l,positionInImage:c}})}function Sp(i,t){return t(i),i}function Po(i,t){return Sp({},e=>{for(const n in i)t.indexOf(n)===-1&&(e[n]=i[n])})}function zl(i,t){const e=Math.max(...i.work.observers.map(n=>n.floorIndex));return t>e?i.model.bounding.max.y:Math.max(...i.work.observers.filter(n=>n.floorIndex===t).map(n=>n.standingPosition.y))}function ka(i,t,e=hn.BOUNDING_CENTER){const n=zl(i,t),s=zl(i,t+1);return e===hn.BOUNDING_CENTER?(i.model.bounding.max.y+i.model.bounding.min.y)/2:e===hn.CEILING?s:n}function Ma(i,t,e,n){const s=ka(i,e,n==null?void 0:n.attachedTo),o=new E.Vector3(0,s,0),r=new E.Vector3(1,s,0),a=o.clone().project(i.camera),l=r.clone().project(i.camera);return Math.abs((l.x-a.x)/1e3)*(t.getBoundingClientRect().width/2)}let rs=class{constructor(t,e){f(this,"VERSION","2.22.0-dev.6");f(this,"five");f(this,"hooks",new pi);f(this,"staticPrefix","//vr-image-4.realsee-cdn.cn");this.five=t,e!=null&&e.staticPrefix&&(this.staticPrefix=e.staticPrefix)}getCurrentState(){return this.state}absoluteUrl(t){return ha(this.staticPrefix,t)}},Bn=class extends rs{};var wt=(i=>(i.UnknownError="UnknownError",i.DataNotLoaded="DataNotLoaded",i.BreakOffByHide="BreakOffByHide",i.BreakOffByDisable="BreakOffByDisable",i.ModelNotLoaded="ModelNotLoaded",i.ChangeModeError="ChangeModeError",i.UpdateCameraError="UpdateCameraError",i))(wt||{});const Fh=500,Tp=80;function Xr(i,t,e=4){return Math.floor(i*Math.pow(10,e))===Math.floor(t*Math.pow(10,e))}function xa(i,t){return U(this,null,function*(){const[e]=yield di(i.changeMode(...t));if(e)throw new Error("change mode canceled");yield new Promise(r=>{i.once("initAnimationWillStart",()=>{i.once("initAnimationEnded",()=>r())})});const n=t[1];if(!n)return!0;const s=i.getCurrentState();if(!Lp(n,s))throw new Error("pose 与预期不符")})}function Lp(i,t){return Object.keys(i).every(e=>{const n=t[e];if(n===void 0)return!0;const s=i[e];return typeof n=="number"&&typeof s=="number"?Xr(n,s,2):n===s})}function Da(i,t){if(i.currentMode!==t.mode)return!1;const{latitude:e,longitude:n,fov:s}=t,{latitude:o,longitude:r}=i.getCurrentState(),a=i.camera.fov;return!(!Xr(e,o,2)||!Xr(n,r,2)||s!==a)}function Yh(i,t,e=!0){return U(this,null,function*(){if(Da(i,t)===!0)return;const s=i.getCurrentState();if(s.mode!==t.mode){const[d]=yield di(xa(i,[t.mode,t,void 0,e]));if(d)throw new Error(wt.ChangeModeError);return}const{latitude:o,longitude:r,fov:a}=s,l=Math.min(1e3,Math.max(200,Math.abs(o-Math.PI/2)*1e3,(r>Math.PI?2*Math.PI-r:r)*500,Math.abs(a-t.fov)*10)),[c]=yield di(i.updateCamera(t,l,e));if(c)throw new Error(wt.UpdateCameraError)})}function ui(i,t,e=300){const n=i.getElement();n&&(n.style.opacity=t+"",n.style.transition=e===0?"none":`opacity ${e}ms linear`,e!==0&&Promise.race([new Promise(s=>n.addEventListener("transitionend",s,{once:!0})),new Promise(s=>setTimeout(s,e))]).then(()=>{n.style.transition="none"}))}function jp(i){const{latitude:t,longitude:e}=i,n=Math.abs(t-Math.PI/2)>5*Math.PI/180,s=e>5*(Math.PI/180)&&e<355*(Math.PI/180);return n||s}function zp(i){const{latitude:t,longitude:e}=i,n=Math.abs(t-Math.PI/2)<10*Math.PI/180,s=e<30*(Math.PI/180)||e>330*(Math.PI/180);return n&&s}let Op=class extends Bn{constructor(e,n){var a;super(e);f(this,"name","modelFloorplanPlugin");f(this,"state");f(this,"data");f(this,"showState");f(this,"showPromise");f(this,"app");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"selector");f(this,"showRejection");f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"dispose",()=>{var e,n;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(n=this.container)==null||n.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"show",(...n)=>U(this,[...n],function*(e={}){if(!this.state.enabled||!this.showPromise&&this.state.visible)return;const s=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},s),this._show(e)}));f(this,"hide",(...n)=>U(this,[...n],function*(e={}){this.state.enabled&&(this.isHiddenByHideFunc=!0,this.state.visible!==!1&&(this.updateState({visible:!1},e.userAction||!0),this._hide(e)))}));f(this,"updateSize",()=>{if(!this.data||!Da(this.five,this.showState)||!this.container||!this.wrapper)return;const{min:e,max:n}=this.data.bounding,s=n.x-e.x,o=n.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=Ma(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o,r;const{userAction:n}=e;this.hooks.emit("disable",{userAction:n}),(s=this.showRejection)==null||s.call(this,wt.BreakOffByDisable),this.showPromise=void 0,(o=this.app)==null||o.$destroy(),this.app=void 0,(r=this.container)==null||r.remove(),this.removeEventListener()});f(this,"_enable",e=>{const{userAction:n}=e;this.addEventListener(),this.wrapper&&(this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:n}),this.state.visible&&this._show({userAction:n}))});f(this,"_show",e=>U(this,null,function*(){var r;if(!this.state.enabled)return;if(!((r=this.five.model)!=null&&r.loaded))throw new Error(wt.ModelNotLoaded);if(!this.data)throw new Error(wt.DataNotLoaded);this.isHiddenByHideFunc=!1;const n={floorIndex:this.floorIndex,modelOpacity:this.state.config.modelOpacity,immediately:!1,isAutoShow:!1,userAction:!0},s=H(H({},n),e),o=()=>U(this,null,function*(){this.hooks.emit("show",{userAction:s.userAction,auto:s.isAutoShow});let a=!1,l;this.showRejection=u=>{a=!0,l=u};const[c]=yield di(Yh(this.five,this.showState,s.userAction));if(c)throw c;if(a)throw l?new Error(l):new Error(wt.UnknownError);this.updateSize(),this.floorIndex=s.floorIndex,this.five.model.show(this.floorIndex);const d=s.modelOpacity,h=s.immediately?0:Fh;ui(this.five,d,h),this.render(h)});return this.showPromise=o().then(()=>{this.hooks.emit("showAnimationEnded",{auto:s.isAutoShow,userAction:s.userAction})}).catch(a=>{if(this.updateState({visible:!1},s.userAction),!s.isAutoShow&&a instanceof Error)throw a}).finally(()=>{this.showPromise=void 0,this.showRejection=void 0}),this.showPromise}));f(this,"_hide",e=>{var o;(o=this.showRejection)==null||o.call(this,wt.BreakOffByHide),this.showPromise=void 0;const s=H(H({},{userAction:!0,isAutoHide:!1}),e);ui(this.five,1,0),this.hooks.emit("hide",{auto:s.isAutoHide,userAction:s.userAction}),this.render()});f(this,"handleClick",()=>{if(!this.state.visible)return;if(this.hooks.emit("click"))return!1});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",e=>{e!==this.showState.mode&&(this.updateState({visible:!1},!1),this._hide({userAction:!1}))});f(this,"onFiveInteriaPan",(e,n)=>{if(!n||this.state.config.autoShowEnable===!1||this.isHiddenByHideFunc)return;const s=this.five.getCurrentState();s.mode==="Floorplan"&&(this.state.visible||zp(s)&&(this.updateState({visible:!0},!0),this._show({isAutoShow:!0})))});f(this,"onFivePanoArrived",e=>{var n;(n=this.five)!=null&&n.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,n)=>{if(!this.state.visible||this.showPromise)return;const s=this.five.getCurrentState();jp(s)&&(this.updateState({visible:!1},n),this._hide({userAction:n,isAutoHide:!0}))});f(this,"onFiveWantsGesture",(e,n)=>{if(this.state.visible&&(n.length>1||e==="mouseWheel"))return!1});f(this,"onFiveWantsPanGesture",(e,n)=>{if(this.five.getCurrentState().mode==="Floorplan"&&this.state.config.autoShowEnable!==!1&&n&&this.state.visible)return this.five.updateCamera(this.showState,0),!1});f(this,"onFiveWantsTapGesture",()=>this.handleClick());f(this,"onFiveWantsChangeMode",(e,n)=>{n==="Panorama"&&e==="Floorplan"&&(this.lastPanoramaLongitude=this.five.getCurrentState().longitude)});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const n=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[n].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});n!=null&&n.selector&&(this.selector=n.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法")),this.showState={mode:"Floorplan",longitude:0,latitude:Math.PI/2,fov:Tp/((a=n==null?void 0:n.scale)!=null?a:1)};const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,highlightEnable:!1,hoverEnable:!0,compassEnable:!0,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,adaptiveRoomLabelVisibleEnable:!0,cameraImageUrl:mn,attachedTo:hn.BOUNDING_CENTER,getLabelElement:void 0,getRoomAreaText:l=>(l/1e6).toFixed(1)+"㎡",getRuleDistanceText:l=>l.toString()},o=n?Po(n,["selector","scale"]):{},r=H(H({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,n,s=!0){return U(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gn(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),n&&this.updateState(n,s),this.render()})}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}enable(e={}){if(this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||n),this._enable({userAction:n})}disable(e={}){if(!this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||n),this._disable({userAction:n})}setState(e,n={}){const s=this.state,o=n.userAction!==void 0?n.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled&&(e.enabled?this._enable({userAction:o}):this._disable({userAction:o})),e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}this.render()}changeConfigs(e,n=!0){this.updateState({config:e},n),this.render()}formatData(e){return U(this,null,function*(){return yield gn(e.data)})}updateState(e,n){const s=this.state,o=e.config?H(H({},s.config),e.config):s.config;this.state=Ae(H(H({},this.state),e),{config:o}),!Gt(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:n})}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",zIndex:10,pointerEvents:"none"}),this.five.addExtraElement(this.container)}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("interiaPan",this.onFiveInteriaPan),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsGesture",this.onFiveWantsGesture),e.on("wantsPanGesture",this.onFiveWantsPanGesture),e.on("wantsTapGesture",this.onFiveWantsTapGesture),e.on("wantsChangeMode",this.onFiveWantsChangeMode),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modelLoaded",this.onFiveModelLoaded),e.off("modeChange",this.onFiveModeChange),e.off("interiaPan",this.onFiveInteriaPan),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsGesture",this.onFiveWantsGesture),e.off("wantsPanGesture",this.onFiveWantsPanGesture),e.off("wantsTapGesture",this.onFiveWantsTapGesture),e.off("wantsChangeMode",this.onFiveWantsChangeMode),e.off("modelShownFloorChange",this.onModelShownFloorChange)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0)return;const n=Ae(H({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(n);this.app=new Ea({target:this.container,intro:!0,props:n})}};const Bp=(i,t)=>new Op(i,t);function Vp(i){const{latitude:t,longitude:e}=i,n=Math.abs(t-Math.PI/2)>5*Math.PI/180,s=e>5*(Math.PI/180)&&e<355*(Math.PI/180);return n||s}function Rp(i){const{latitude:t,longitude:e}=i,n=Math.abs(t-Math.PI/2)<10*Math.PI/180,s=e<30*(Math.PI/180)||e>330*(Math.PI/180);return n&&s}let Qp=class extends Bn{constructor(e,n){super(e);f(this,"name","modelFloorplanPlugin");f(this,"state");f(this,"data");f(this,"showState");f(this,"showPromise");f(this,"app");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"selector");f(this,"showRejection");f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"dispose",()=>{var e,n;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(n=this.container)==null||n.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"show",(...n)=>U(this,[...n],function*(e={}){if(!this.state.enabled||!this.showPromise&&this.state.visible)return;const s=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},s),this._show(e)}));f(this,"hide",(...n)=>U(this,[...n],function*(e={}){this.state.enabled&&(this.isHiddenByHideFunc=!0,this.state.visible!==!1&&(this.updateState({visible:!1},e.userAction||!0),this._hide(e)))}));f(this,"updateSize",()=>{if(!this.data||!Da(this.five,this.showState)||!this.container||!this.wrapper)return;const{min:e,max:n}=this.data.bounding,s=n.x-e.x,o=n.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=Ma(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o,r;const{userAction:n}=e;this.hooks.emit("disable",{userAction:n}),(s=this.showRejection)==null||s.call(this,wt.BreakOffByDisable),this.showPromise=void 0,(o=this.app)==null||o.$destroy(),this.app=void 0,(r=this.container)==null||r.remove(),this.removeEventListener()});f(this,"_enable",e=>{const{userAction:n}=e;this.addEventListener(),this.wrapper&&(this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:n}),this.state.visible&&this._show({userAction:n}))});f(this,"_show",e=>U(this,null,function*(){var r;if(!this.state.enabled)return;if(!((r=this.five.model)!=null&&r.loaded))throw new Error(wt.ModelNotLoaded);if(!this.data)throw new Error(wt.DataNotLoaded);this.isHiddenByHideFunc=!1;const n={floorIndex:this.floorIndex,modelOpacity:this.state.config.modelOpacity,immediately:!1,isAutoShow:!1,userAction:!0},s=H(H({},n),e),o=()=>U(this,null,function*(){this.hooks.emit("show",{userAction:s.userAction,auto:s.isAutoShow});let a=!1,l;this.showRejection=u=>{a=!0,l=u};const[c]=yield di(Yh(this.five,this.showState,s.userAction));if(c)throw c;if(a)throw l?new Error(l):new Error(wt.UnknownError);this.updateSize(),this.updatePosition(),this.floorIndex=s.floorIndex,this.five.model.show(this.floorIndex);const d=s.modelOpacity,h=s.immediately?0:Fh;ui(this.five,d,h),this.render(h)});return this.showPromise=o().then(()=>{this.hooks.emit("showAnimationEnded",{auto:s.isAutoShow,userAction:s.userAction})}).catch(a=>{if(this.updateState({visible:!1},s.userAction),!s.isAutoShow&&a instanceof Error)throw a}).finally(()=>{this.showPromise=void 0,this.showRejection=void 0}),this.showPromise}));f(this,"_hide",e=>{var o;(o=this.showRejection)==null||o.call(this,wt.BreakOffByHide),this.showPromise=void 0;const s=H(H({},{userAction:!0,isAutoHide:!1}),e);ui(this.five,1,0),this.hooks.emit("hide",{auto:s.isAutoHide,userAction:s.userAction}),this.render()});f(this,"handleClick",()=>{if(!this.state.visible)return;if(this.hooks.emit("click"))return!1});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",e=>{e!==this.showState.mode&&(this.updateState({visible:!1},!1),this._hide({userAction:!1}))});f(this,"onFivePanoArrived",e=>{var n;(n=this.five)!=null&&n.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,n)=>{if(!this.state.visible||this.showPromise)return;const s=this.five.getCurrentState();this.updatePosition(),this.updateSize(),Vp(s)&&(this.updateState({visible:!1},n),this._hide({userAction:n}))});f(this,"onFiveWantsPanGesture",(e,n)=>{if(this.five.getCurrentState().mode===this.showState.mode&&this.state.config.autoShowEnable!==!1){if(n&&this.state.visible)return this.five.updateCamera(this.showState,0),!1;if(n&&!this.state.visible){if(this.isHiddenByHideFunc)return;const s=this.five.getCurrentState();return s.mode!==this.showState.mode||this.state.visible?void 0:(Rp(s)&&(this.updateState({visible:!0},!0),this._show({isAutoShow:!0})),!1)}}});f(this,"onFiveWantsTapGesture",()=>this.handleClick());f(this,"onFiveWantsChangeMode",(e,n)=>{n==="Panorama"&&e===this.showState.mode&&(this.lastPanoramaLongitude=this.five.getCurrentState().longitude)});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const n=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[n].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});n!=null&&n.selector&&(this.selector=n.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法")),this.showState={mode:"Mapview",longitude:0,latitude:Math.PI/2,fov:90};const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,highlightEnable:!1,hoverEnable:!0,compassEnable:!0,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,cameraImageUrl:mn,attachedTo:hn.BOUNDING_CENTER,getLabelElement:void 0,adaptiveRoomLabelVisibleEnable:!0,getRoomAreaText:a=>(a/1e6).toFixed(1)+"㎡",getRuleDistanceText:a=>a.toString()},o=n?Po(n,["selector","scale"]):{},r=H(H({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,n,s=!0){return U(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gn(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),n&&this.updateState(n,s),this.render()})}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}enable(e={}){if(this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||n),this._enable({userAction:n})}disable(e={}){if(!this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||n),this._disable({userAction:n})}setState(e,n={}){const s=this.state,o=n.userAction!==void 0?n.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled&&(e.enabled?this._enable({userAction:o}):this._disable({userAction:o})),e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}changeConfigs(e,n=!0){this.updateState({config:e},n),this.render()}updatePosition(){var a;const e=ka(this.five,this.floorIndex,this.state.config.attachedTo),n=(a=this.five.model)==null?void 0:a.bounding.getCenter(new E.Vector3).setY(e);if(!n)return;const s=n.clone().project(this.five.camera),o=(s.x+1)/2,r=-(s.y-1)/2;this.container.style.left=o*100+"%",this.container.style.top=r*100+"%"}formatData(e){return U(this,null,function*(){return yield gn(e.data)})}updateState(e,n){const s=this.state,o=e.config?H(H({},s.config),e.config):s.config;this.state=Ae(H(H({},this.state),e),{config:o}),!Gt(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:n})}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",zIndex:10,pointerEvents:"none"}),this.five.addExtraElement(this.container)}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsPanGesture",this.onFiveWantsPanGesture),e.on("wantsTapGesture",this.onFiveWantsTapGesture),e.on("wantsChangeMode",this.onFiveWantsChangeMode),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modelLoaded",this.onFiveModelLoaded),e.off("modeChange",this.onFiveModeChange),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsPanGesture",this.onFiveWantsPanGesture),e.off("wantsTapGesture",this.onFiveWantsTapGesture),e.off("wantsChangeMode",this.onFiveWantsChangeMode),e.off("modelShownFloorChange",this.onModelShownFloorChange)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0)return;const n=Ae(H({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(n);this.app=new Ea({target:this.container,intro:!0,props:n})}};const Gp=(i,t)=>new Qp(i,t);let Np=class extends Bn{constructor(e,n){super(e);f(this,"name","topviewFloorplanPlugin");f(this,"state");f(this,"data");f(this,"app");f(this,"selector");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"updateSize",()=>{if(!this.data||!this.container||!this.wrapper||this.five.getCurrentState().mode!=="Topview")return;const{min:e,max:n}=this.data.bounding,s=n.x-e.x,o=n.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=Ma(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"dispose",()=>{var e,n;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(n=this.container)==null||n.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o;const{userAction:n}=e;(s=this.app)==null||s.$destroy(),this.app=void 0,(o=this.container)==null||o.remove(),this.removeEventListener(),this.hooks.emit("disable",{userAction:n})});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",(...[e,,,,n])=>{e!=="Topview"&&this.state.visible&&(this.updateState({visible:!1},n),this._hide({userAction:n}))});f(this,"onFivePanoArrived",e=>{var n;(n=this.five)!=null&&n.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,n)=>{this.state.visible&&(this.updatePosition(),this.updateSize())});f(this,"onFiveWantsGesture",e=>{if(!(e!=="pan"&&e!=="pinch"&&e!=="mouseWheel")&&this.state.visible&&!this.state.config.gestureEnable)return!1});f(this,"onFiveWantsMoveToPano",()=>{if(this.state.visible&&this.state.config.preventRoomClick)return!1});f(this,"onFiveInitAnimationEnded",(...[,,e])=>{const{mode:n}=this.five.getCurrentState();n==="Topview"&&!this.isHiddenByHideFunc&&!this.state.visible&&this.state.config.autoShowEnable&&(this.updateState({visible:!0},e),this._show({userAction:e}))});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const n=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[n].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});n!=null&&n.selector&&(this.selector=n.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法"));const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,hoverEnable:!0,highlightEnable:!1,compassEnable:!0,gestureEnable:!1,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,cameraImageUrl:mn,attachedTo:hn.BOUNDING_CENTER,getLabelElement:void 0,adaptiveRoomLabelVisibleEnable:!0,getRoomAreaText:a=>(a/1e6).toFixed(1)+"㎡",getRuleDistanceText:a=>a.toString()},o=n?Po(n,["selector","scale"]):{},r=H(H({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,n,s=!0){return U(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gn(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),n&&this.updateState(n,s),this.render()})}updatePosition(){var a;const e=ka(this.five,this.floorIndex,this.state.config.attachedTo),n=(a=this.five.model)==null?void 0:a.bounding.getCenter(new E.Vector3).setY(e);if(!n)return;const s=n.clone().project(this.five.camera),o=(s.x+1)/2,r=-(s.y-1)/2;this.container.style.left=o*100+"%",this.container.style.top=r*100+"%"}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}show(){return U(this,arguments,function*(e={}){if(this.state.visible)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},n),this._show({userAction:n})})}hide(){return U(this,arguments,function*(e={}){if(this.isHiddenByHideFunc=!0,!this.state.visible)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!1},n),this._hide({userAction:n})})}enable(e={}){if(this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||n),this._enable({userAction:n})}disable(e={}){if(!this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||n),this._disable({userAction:n})}setState(e,n={}){const s=this.state,o=n.userAction!==void 0?n.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled){const r={userAction:o};e.enabled?this._enable(r):this._disable(r)}if(e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}changeConfigs(e,n=!0){this.updateState({config:e},n),this.render()}formatData(e){return U(this,null,function*(){return yield gn(e.data)})}_show(e){return U(this,null,function*(){if(!this.state.enabled)return;this.isHiddenByHideFunc=!1;const{userAction:n}=e;this.hooks.emit("show",{userAction:n,auto:!1}),this.five.getCurrentState().mode!=="Topview"&&(yield xa(this.five,["Topview",void 0,void 0,n])),this.five.model.show(this.floorIndex),this.updatePosition(),this.updateSize();const s=500,o=this.state.config.modelOpacity;ui(this.five,o,s),this.hooks.emit("showAnimationEnded",{userAction:n,auto:!1}),this.render()})}_hide(e){return U(this,null,function*(){if(!this.state.enabled)return;const{userAction:n}=e;this.hooks.emit("hide",{userAction:n,auto:!1});const s=1,o=0;ui(this.five,s,o),this.render()})}_enable(e){const{userAction:n}=e;this.addEventListener(),this.wrapper&&this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:n}),this.state.visible&&this._show({userAction:n})}updateState(e,n){const s=this.state,o=e.config?H(H({},s.config),e.config):s.config;this.state=Ae(H(H({},this.state),e),{config:o}),!Gt(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:n})}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsGesture",this.onFiveWantsGesture),e.on("wantsMoveToPano",this.onFiveWantsMoveToPano),e.on("initAnimationEnded",this.onFiveInitAnimationEnded),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modeChange",this.onFiveModeChange),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsGesture",this.onFiveWantsGesture),e.off("wantsMoveToPano",this.onFiveWantsMoveToPano),e.off("initAnimationEnded",this.onFiveInitAnimationEnded),e.off("modelShownFloorChange",this.onModelShownFloorChange)}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate3d(-50%, -50%, 10px)",zIndex:10,pointerEvents:"none","will-change":"width, height"}),this.five.addExtraElement(this.container)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0)return;const n=Ae(H({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(n);this.app=new Ea({target:this.container,intro:!0,props:n})}};const Hp=(i,t)=>new Np(i,t);function Sa(i,t=200){let e;return function(...n){e||(i(...n),e=setTimeout(function(){e=null},t))}}function _p(i){ue(i,"svelte-1nqrlxd",".plugin-radar__camera-wrapper.svelte-1nqrlxd{width:100%;height:100%;position:absolute;pointer-events:none}.plugin-radar__camera-position.svelte-1nqrlxd{position:absolute;left:0;top:0;width:0;height:0;transform:none;pointer-events:none;transition:transform 1s linear}.plugin-radar__camera-rotate.svelte-1nqrlxd{position:absolute;left:-0.9375rem;top:-0.9375rem;width:1.0625rem;height:1.0625rem;transform-origin:0.9375rem 0.9375rem;transform:rotate(45deg);background-repeat:no-repeat;background-size:100%}")}function Wp(i){let t,e,n;return{c(){t=x("div"),e=x("div"),n=x("div"),w(n,"class","plugin-radar__camera-rotate svelte-1nqrlxd"),z(n,"background-image","url("+(i[0]||mn)+")"),z(n,"transform",i[1]),w(e,"class","plugin-radar__camera-position svelte-1nqrlxd"),z(e,"transform",i[2]),w(t,"class","plugin-radar__camera-wrapper svelte-1nqrlxd")},m(s,o){B(s,t,o),D(t,e),D(e,n)},p(s,[o]){o&1&&z(n,"background-image","url("+(s[0]||mn)+")"),(o&1||o&3)&&z(n,"transform",s[1]),o&4&&z(e,"transform",s[2])},i:J,o:J,d(s){s&&O(t)}}}function Fp(i){return`rotate(${Math.floor(i/Math.PI*180)*-1+45}deg)`}function Yp(i,t,e){let n,s,{five:o}=t,{pxmm:r}=t,{floorplanData:a}=t,{cameraImageUrl:l}=t,c=o.getCurrentState().panoIndex,d=o.getCurrentState().longitude;function h(A,p){const g=A.bounding,b=A.observers[p];if(!b)return"";const y=(g.max.x-g.min.x)*r,I=(g.max.y-g.min.y)*r,k=Math.floor(b.positionInImage.x*y),T=Math.floor(b.positionInImage.y*I);return`translate(${k}px, ${T}px)`}function u(A){e(6,c=A)}const m=Sa(A=>{e(7,d=A.longitude)},1e3/60);return vt(()=>(o.on("panoWillArrive",u),o.on("cameraDirectionUpdate",m),function(){o.off("panoWillArrive",u),o.off("cameraDirectionUpdate",m)})),i.$$set=A=>{"five"in A&&e(3,o=A.five),"pxmm"in A&&e(4,r=A.pxmm),"floorplanData"in A&&e(5,a=A.floorplanData),"cameraImageUrl"in A&&e(0,l=A.cameraImageUrl)},i.$$.update=()=>{i.$$.dirty&96&&e(2,n=h(a,c)),i.$$.dirty&128&&e(1,s=Fp(d))},[l,s,n,o,r,a,c,d]}class Up extends le{constructor(t){super(),ae(this,t,Yp,Wp,oe,{five:3,pxmm:4,floorplanData:5,cameraImageUrl:0},_p)}}function Xp(i){ue(i,"svelte-1i87fz7",".plugin-pano-floorplan__extra-objects.svelte-1i87fz7{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.plugin-pano-floorplan__extra-object-item--position.svelte-1i87fz7{position:absolute;width:0;height:0}.plugin-pano-floorplan__extra-object-item.svelte-1i87fz7{transform:translate(-50%, -50%)}")}function Ol(i,t,e){const n=i.slice();return n[1]=t[e],n}function Bl(i,t){let e,n,s=`${t[1].icon.width/16}rem`,o=`${t[1].icon.height/16}rem`,r,a=`${t[1].positionInImage.y*100}%`,l=`${t[1].positionInImage.x*100}%`;return{key:i,first:null,c(){e=x("div"),n=x("div"),r=ee(),w(n,"class","plugin-pano-floorplan__extra-object-item svelte-1i87fz7"),z(n,"background-image",`url(${t[1].icon.url})`),z(n,"width",s),z(n,"height",o),w(e,"class","plugin-pano-floorplan__extra-object-item--position svelte-1i87fz7"),z(e,"top",a),z(e,"left",l),this.first=e},m(c,d){B(c,e,d),D(e,n),D(e,r)},p(c,d){t=c,d&1&&z(n,"background-image",`url(${t[1].icon.url})`);const h=d&1;h&&z(n,"width",s),h&&z(n,"height",o),d&1&&a!==(a=`${t[1].positionInImage.y*100}%`)&&z(e,"top",a),d&1&&l!==(l=`${t[1].positionInImage.x*100}%`)&&z(e,"left",l)},d(c){c&&O(e)}}}function Zp(i){let t,e=[],n=new Map,s=i[0];const o=r=>r[1].id;for(let r=0;r<s.length;r+=1){let a=Ol(i,s,r),l=o(a);n.set(l,e[r]=Bl(l,a))}return{c(){t=x("div");for(let r=0;r<e.length;r+=1)e[r].c();w(t,"class","plugin-pano-floorplan__extra-objects svelte-1i87fz7")},m(r,a){B(r,t,a);for(let l=0;l<e.length;l+=1)e[l]&&e[l].m(t,null)},p(r,[a]){a&1&&(s=r[0],e=jt(e,a,o,1,r,s,n,t,wa,Bl,null,Ol))},i:J,o:J,d(r){r&&O(t);for(let a=0;a<e.length;a+=1)e[a].d()}}}function Jp(i,t,e){let{extraObjects:n=[]}=t;return i.$$set=s=>{"extraObjects"in s&&e(0,n=s.extraObjects)},[n]}class qp extends le{constructor(t){super(),ae(this,t,Jp,Zp,oe,{extraObjects:0},Xp)}}function Vl(i){let t,e;const n=[{five:i[0],pxmm:i[1],floorIndex:i[2],floorplanData:i[4],onRoomHeightClick:i[7],highlightData:i[5],hoveredRoom:void 0}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new Wh({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&183?lt(n,[{five:o[0],pxmm:o[1],floorIndex:o[2],floorplanData:o[4],onRoomHeightClick:o[7],highlightData:o[5],hoveredRoom:void 0}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function Kp(i){let t,e,n,s,o,r;const a=[{floorIndex:i[2],floorplanData:i[4]}];let l={};for(let d=0;d<a.length;d+=1)l=et(l,a[d]);t=new Hh({props:l}),n=new qp({props:{extraObjects:i[6]}});let c=i[3]&&Vl(i);return{c(){ie(t.$$.fragment),e=ee(),ie(n.$$.fragment),s=ee(),c&&c.c(),o=Pe()},m(d,h){te(t,d,h),B(d,e,h),te(n,d,h),B(d,s,h),c&&c.m(d,h),B(d,o,h),r=!0},p(d,[h]){const u=h&20?lt(a,[{floorIndex:d[2],floorplanData:d[4]}]):{};t.$set(u);const m={};h&64&&(m.extraObjects=d[6]),n.$set(m),d[3]?c?(c.p(d,h),h&8&&M(c,1)):(c=Vl(d),c.c(),M(c,1),c.m(o.parentNode,o)):c&&(de(),j(c,1,1,()=>{c=null}),he())},i(d){r||(M(t.$$.fragment,d),M(n.$$.fragment,d),M(c),r=!0)},o(d){j(t.$$.fragment,d),j(n.$$.fragment,d),j(c),r=!1},d(d){ne(t,d),d&&O(e),ne(n,d),d&&O(s),c&&c.d(d),d&&O(o)}}}function $p(i,t,e){let n,{five:s}=t,{pxmm:o}=t,{floorIndex:r}=t,{hoverEnable:a}=t,{floorplanData:l}=t,{extraObjects:c=[]}=t,{highlightData:d}=t;const h=void 0;return i.$$set=u=>{"five"in u&&e(0,s=u.five),"pxmm"in u&&e(1,o=u.pxmm),"floorIndex"in u&&e(2,r=u.floorIndex),"hoverEnable"in u&&e(3,a=u.hoverEnable),"floorplanData"in u&&e(4,l=u.floorplanData),"extraObjects"in u&&e(8,c=u.extraObjects),"highlightData"in u&&e(5,d=u.highlightData)},i.$$.update=()=>{i.$$.dirty&260&&e(6,n=c==null?void 0:c.filter(u=>u.floorIndex===r))},[s,o,r,a,l,d,n,h,c]}class eA extends le{constructor(t){super(),ae(this,t,$p,Kp,oe,{five:0,pxmm:1,floorIndex:2,hoverEnable:3,floorplanData:4,extraObjects:8,highlightData:5})}}function tA(i){ue(i,"svelte-1mvqyqq",".plugin-floorplan-radar.svelte-1mvqyqq{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.plugin-floorplan-radar-container.svelte-1mvqyqq{position:relative}")}function Rl(i){let t,e,n,s,o=i[7]!==0&&Ql(i);return{c(){t=x("div"),o&&o.c(),w(t,"class","plugin-floorplan-radar svelte-1mvqyqq")},m(r,a){B(r,t,a),o&&o.m(t,null),e=!0,n||(s=[$t(Pi.call(null,t)),be(t,"clientWidth",i[13]),be(t,"clientHeight",i[14])],n=!0)},p(r,a){r[7]!==0?o?(o.p(r,a),a&128&&M(o,1)):(o=Ql(r),o.c(),M(o,1),o.m(t,null)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){e||(M(o),e=!0)},o(r){j(o),e=!1},d(r){r&&O(t),o&&o.d(),n=!1,Je(s)}}}function Ql(i){let t,e,n,s,o=`${i[9]}px`,r=`${i[12]}px`,a;const l=[{five:i[0],pxmm:i[10],floorIndex:i[11],floorplanData:i[3],hoverEnable:i[2],extraObjects:i[5],highlightData:i[6]}];let c={};for(let u=0;u<l.length;u+=1)c=et(c,l[u]);e=new eA({props:c});const d=[{pxmm:i[10],five:i[0],floorplanData:i[3],cameraImageUrl:i[4]}];let h={};for(let u=0;u<d.length;u+=1)h=et(h,d[u]);return s=new Up({props:h}),{c(){t=x("div"),ie(e.$$.fragment),n=ee(),ie(s.$$.fragment),w(t,"class","plugin-floorplan-radar-container svelte-1mvqyqq"),z(t,"width",o),z(t,"height",r)},m(u,m){B(u,t,m),te(e,t,null),D(t,n),te(s,t,null),a=!0},p(u,m){const A=m&3181?lt(l,[{five:u[0],pxmm:u[10],floorIndex:u[11],floorplanData:u[3],hoverEnable:u[2],extraObjects:u[5],highlightData:u[6]}]):{};e.$set(A);const p=m&1049?lt(d,[{pxmm:u[10],five:u[0],floorplanData:u[3],cameraImageUrl:u[4]}]):{};s.$set(p),m&512&&o!==(o=`${u[9]}px`)&&z(t,"width",o),m&4096&&r!==(r=`${u[12]}px`)&&z(t,"height",r)},i(u){a||(M(e.$$.fragment,u),M(s.$$.fragment,u),a=!0)},o(u){j(e.$$.fragment,u),j(s.$$.fragment,u),a=!1},d(u){u&&O(t),ne(e),ne(s)}}}function nA(i){let t,e,n=i[1]&&Rl(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[1]?n?(n.p(s,o),o&2&&M(n,1)):(n=Rl(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function iA(i,t,e){var I,k;let{five:n}=t,{visible:s}=t,{hoverEnable:o}=t,{floorplanData:r}=t,{cameraImageUrl:a}=t,{extraObjects:l=[]}=t,{highlightData:c}=t,d=0,h=(k=(I=n.work.observers[n.getCurrentState().panoIndex])==null?void 0:I.floorIndex)!=null?k:0,u=0,m=0,A=0,p=0;function g(T){e(11,h=n.work.observers[T].floorIndex)}vt(()=>(n.on("panoArrived",g),()=>{n.off("panoArrived",g)}));const b=T=>{e(7,u=T.detail)},y=T=>{e(8,m=T.detail)};return i.$$set=T=>{"five"in T&&e(0,n=T.five),"visible"in T&&e(1,s=T.visible),"hoverEnable"in T&&e(2,o=T.hoverEnable),"floorplanData"in T&&e(3,r=T.floorplanData),"cameraImageUrl"in T&&e(4,a=T.cameraImageUrl),"extraObjects"in T&&e(5,l=T.extraObjects),"highlightData"in T&&e(6,c=T.highlightData)},i.$$.update=()=>{if(i.$$.dirty&904){const T=Math.min(u,m),{max:P,min:V}=r.bounding,L=P.x-V.x,W=P.y-V.y,q=function(){return L>W?[T,T/L*W]:[T/W*L,T]}();e(9,A=q[0]),e(12,p=q[1]),e(10,d=A/L)}},[n,s,o,r,a,l,c,u,m,A,d,h,p,b,y]}class sA extends le{constructor(t){super(),ae(this,t,iA,nA,oe,{five:0,visible:1,hoverEnable:2,floorplanData:3,cameraImageUrl:4,extraObjects:5,highlightData:6},tA)}}let oA=class extends Bn{constructor(e,n){super(e);f(this,"name","panoFloorplanRadarPlugin");f(this,"state");f(this,"data");f(this,"app");f(this,"wrapperSelector","");f(this,"wrapper",null);f(this,"disposed",!1);f(this,"extraObjects",[]);f(this,"highlightData",{});f(this,"dispose",()=>{var e;this.disposed=!0,(e=this.app)==null||e.$destroy(),this.wrapper=null,this.wrapperSelector="",this.hooks.emit("dispose")});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s;const{userAction:n}=e;(s=this.app)==null||s.$destroy(),this.app=void 0,this.hooks.emit("disable",{userAction:n})});this.five=e;const s={hoverEnable:!0,highlightEnable:!0,cameraImageUrl:mn},o=n!=null&&n.configs?n.configs:{},r=H(H({},s),o);this.state={enabled:!0,visible:!0,config:r},n!=null&&n.wrapper&&console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法"),typeof(n==null?void 0:n.wrapper)=="string"?this.wrapperSelector=n.wrapper:(n==null?void 0:n.wrapper)instanceof Element&&(this.wrapper=n.wrapper),e.once("dispose",this.dispose)}load(e,n,s=!0){return U(this,null,function*(){function o(c){return Object.prototype.hasOwnProperty.apply(c,["version"])}const r=JSON.parse(JSON.stringify(e)),a=o(r)?r.data:r,l=this.data;this.data=yield gn(a),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,l),n&&this.updateState(n,s),this.render()})}show(){return U(this,arguments,function*(e={}){if(this.state.visible)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},n),this._show({userAction:n})})}hide(){return U(this,arguments,function*(e={}){if(!this.state.visible)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!1},n),this._hide({userAction:n})})}enable(e={}){if(this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||n),this._enable({userAction:n})}disable(e={}){if(!this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||n),this._disable({userAction:n})}setState(e,n={}){const s=this.state,o=n.userAction!==void 0?n.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled){const r={userAction:o};e.enabled?this._enable(r):this._disable(r)}if(e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}appendTo(e){this.wrapper=e,this.render()}changeConfigs(e,n=!0){this.setState({config:e},{userAction:n}),this.render()}setExtraObjectsWith3DPositions(e){this.data&&(this.extraObjects=Dp(e,this.five,this.data),this.render())}formatData(e){return U(this,null,function*(){return yield gn(e.data)})}_enable(e){const{userAction:n}=e;this.hooks.emit("enable",{userAction:n}),this.state.visible&&this._show({userAction:n})}_show(e){if(this.disposed||!this.state.enabled)return;const{userAction:n}=e;this.hooks.emit("show",{userAction:n}),this.render()}_hide(e){if(this.disposed||!this.state.enabled)return;const{userAction:n}=e;this.hooks.emit("hide",{userAction:n}),this.render()}updateState(e,n){const s=this.state;this.state=H(H({},this.state),e),!Gt(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:n})}render(){if(this.disposed||!this.state.enabled)return;if(!this.wrapper&&this.wrapperSelector){const n=document.querySelector(this.wrapperSelector);this.wrapper=n}if(!this.data||!this.wrapper)return;const e=Ae(H({},this.state.config),{five:this.five,floorplanData:this.data,visible:this.state.visible,extraObjects:this.extraObjects,highlightData:this.highlightData});this.app?this.app.$set(e):this.app=new sA({target:this.wrapper,props:e})}};const rA=(i,t)=>new oA(i,t),aA=[{type:0,floorType:1,roomType:"100900000012",name:"其他"},{type:1,floorType:1,roomType:"100900000002",name:"客厅"},{type:2,floorType:1,roomType:"100900000002",name:"餐厅"},{type:3,floorType:0,roomType:"100900000001",name:"卧室"},{type:4,floorType:0,roomType:"100900000001",name:"书房"},{type:5,floorType:3,roomType:"100900000004",name:"卫生间"},{type:6,floorType:3,roomType:"100900000004",name:"淋浴间"},{type:7,floorType:3,roomType:"100900000004",name:"洗手间"},{type:8,floorType:3,roomType:"100900000003",name:"厨房"},{type:9,floorType:1,roomType:"100900000003",name:"开放厨房",onlySubArea:!0},{type:10,floorType:0,roomType:"100900000001",name:"多功能间"},{type:11,floorType:0,roomType:"100900000009",name:"保姆间"},{type:12,floorType:4,roomType:"100900000005",name:"阳台"},{type:13,floorType:4,roomType:"100900000006",name:"露台"},{type:14,floorType:0,roomType:"100900000008",name:"储物间"},{type:15,floorType:0,roomType:"100900000013",name:"衣帽间"},{type:16,floorType:0,roomType:"100900000011",name:"阁楼"},{type:17,floorType:2,roomType:"100900000007",name:"花园"},{type:18,floorType:5,roomType:"100900000010",name:"车库"},{type:19,floorType:1,roomType:"100900000012",name:"电梯"},{type:20,floorType:1,roomType:"100900000012",name:"地下室"},{type:21,floorType:1,roomType:"100900000012",name:"天井"},{type:22,floorType:1,roomType:"100900000012",name:"阳光房"},{type:23,floorType:1,roomType:"100900000012",name:"过道"},{type:24,floorType:1,roomType:"100900000012",name:"楼梯间"},{type:25,floorType:1,roomType:"100900000012",name:"门厅"},{type:26,floorType:2,roomType:"100900000012",name:"入户花园"},{type:27,floorType:1,roomType:"100900000012",name:"玄关"},{type:28,floorType:1,roomType:"100900000012",name:"挑空"},{type:29,floorType:4,roomType:"100900000012",name:"晾晒区"},{type:30,floorType:4,roomType:"100900000012",name:"洗衣房"},{type:31,floorType:0,roomType:"100900000012",name:"娱乐区"},{type:32,floorType:0,roomType:"100900000012",name:"健身区"},{type:33,floorType:0,roomType:"100900000012",name:"接待区"},{type:34,floorType:0,roomType:"100900000012",name:"影音区"},{type:35,floorType:1,roomType:"100900000012",name:"餐饮区"},{type:36,floorType:1,roomType:"100900000012",name:"其他",onlySubArea:!0},{type:37,floorType:1,roomType:"100900000002",name:"起居室"},{type:38,floorType:0,roomType:"100900000001",name:"主卧"},{type:39,floorType:0,roomType:"100900000001",name:"次卧"},{type:40,floorType:0,roomType:"100900000001",name:"优化间"},{type:41,floorType:0,roomType:"100900000001",name:"办公室"},{type:42,floorType:0,roomType:"100900000001",name:"会议室"},{type:43,floorType:0,roomType:"100900000001",name:"洽谈间"},{type:44,floorType:1,roomType:"100900000002",name:"共享大厅"},{type:45,floorType:1,roomType:"100900000012",name:"水吧"},{type:46,floorType:0,roomType:"100900000015",name:"出入口"},{type:47,floorType:0,roomType:"100900000015",name:"大厅"},{type:48,floorType:0,roomType:"100900000015",name:"包厢"},{type:49,floorType:0,roomType:"100900000015",name:"其他"},{type:50,floorType:0,roomType:"100900000016",name:"出入口"},{type:51,floorType:0,roomType:"100900000016",name:"办公区"},{type:52,floorType:0,roomType:"100900000016",name:"老板间"},{type:53,floorType:0,roomType:"100900000016",name:"会议室"},{type:54,floorType:0,roomType:"100900000016",name:"休息区/水吧"},{type:55,floorType:0,roomType:"100900000016",name:"其他"},{type:56,floorType:2,roomType:"100900000012",name:"空中花园"},{type:57,floorType:0,roomType:"100900000001",name:"洋室"},{type:58,floorType:0,roomType:"100900000001",name:"和室"}],lA=[{type:0,description:"木质地板"},{type:1,description:"瓷砖地面"},{type:2,description:"户外地面"},{type:3,description:"卫生间地面"},{type:4,description:"阳台地面"},{type:5,description:"车库地面"}],cA=[{roomType:"100900000001",description:"室"},{roomType:"100900000002",description:"厅"},{roomType:"100900000003",description:"厨"},{roomType:"100900000004",description:"卫"},{roomType:"100900000005",description:"阳台"},{roomType:"100900000006",description:"露台"},{roomType:"100900000007",description:"花园"},{roomType:"100900000008",description:"储"},{roomType:"100900000009",description:"保姆间"},{roomType:"100900000010",description:"车库"},{roomType:"100900000011",description:"阁楼"},{roomType:"100900000012",description:"其他"},{roomType:"100900000013",description:"衣"},{roomType:"100900000015",description:"商铺"},{roomType:"100900000016",description:"写字楼"}],Pr=(i,t,e)=>{const n=new E.Matrix4,s=new E.Euler(i,t,e,"YXZ");return n.makeRotationFromEuler(s),n},dA=(i,{scale:t,rotation:e,position:n})=>{if(t&&i.scale.set(t,t,t),e){const[s,o,r]=e;s&&i.applyMatrix4(Pr(s,0,0)),o&&i.applyMatrix4(Pr(0,o,0)),r&&i.applyMatrix4(Pr(0,0,r))}return n&&i.position.set(n.x,n.y,n.z),i};function Uh(i,t){i.traverse(e=>{var n;if(e.type==="Mesh"){const s=e,o=H({map:s.material.map||{}},t);s.material=new R.MeshBasicMaterial(o),s.renderOrder=1,((n=e.parent)==null?void 0:n.type)==="Mesh"&&(e.renderOrder=e.parent.renderOrder+1)}})}const hA=(i,t)=>{var p;const e=t.fbx_url||"//vrlab-image4.ljcdn.com/release/web/dipan2.f38a21cc.FBX",n=(p=t.north_rad)!=null?p:void 0,s={};let o={x:0,y:0,z:0},r=[0,0,0],a=1,l=n;i.on("modelLoaded",A);const c=g=>U(exports,null,function*(){var k;const b=(g==null?void 0:g.fbx_url)||e;if(l=(k=g==null?void 0:g.north_rad)!=null?k:n,typeof l!="number")throw new Error('"northRad"配置参数缺失:未配置指南针指向!');const I=yield new oh.FBXLoader().loadAsync(b);return Uh(I,{transparent:!0,side:E.DoubleSide,blending:E.AdditiveBlending}),s.object=I,A(),!0}),d=({latitude:g})=>{if(!s.object)return;const b=h(g);b&&(s.object.position.y=b)},h=g=>{if(s.yBase===void 0)return;const b=.6;if(g>=Math.PI/4)return s.yBase-(b+1.6);const y=g*(4/Math.PI);return s.yBase-(b*y+1.6)},u=()=>{if(!s.object)return;const g=h(i.getPose().latitude);g&&(s.object.position.y=g),i.scene.add(s.object),i.needsRender=!0,i.on("cameraDirectionUpdate",d)},m=()=>{s.object&&(i.scene.remove(s.object),i.needsRender=!0,i.off("cameraDirectionUpdate",d))};function A(){const g=s.object;if(!g)return;const b=i.model.bounding,y=b.max.x-b.min.x,I=b.max.z-b.min.z,k=Math.max(y,I),{max:{x:T,z:P},min:{x:V,y:L,z:W}}=b;s.yBase=L,o={x:(T+V)/2,y:L-1.6,z:(P+W)/2},r=[0,l-Math.PI/2,0],a=.0045*k,dA(g,{position:o,rotation:r,scale:a})}return{load:c,disable:m,enable:u}};function uA(i,t){var c,d,h,u,m;const e=(c=t==null?void 0:t.size)!=null?c:512,n=(d=t==null?void 0:t.fontSize)!=null?d:e*(35/256)*1.2,s=(h=t==null?void 0:t.backgroundColor)!=null?h:"rgba(0,0,0,0)",o=(u=t==null?void 0:t.fontColor)!=null?u:"#fff",r=(m=t==null?void 0:t.textAlign)!=null?m:"center",a=document.createElement("canvas");a.setAttribute("width",e+""),a.setAttribute("height",e+"");const l=a.getContext("2d");return l.fillStyle=s,l.fillRect(0,0,e,e),l.font=`${n}px "微软雅黑"`,l.textAlign=r,l.fillStyle=o,l.fillText(i,e/2,e*.7),new R.CanvasTexture(a)}const fA=({x:i,y:t,z:e})=>new R.Vector3(i,t,e),mA=(i,t)=>{var p,g,b;const e={},n=(p=t.animationEnabled)!=null?p:!0,s=(g=t.position)!=null?g:void 0,o=(b=t.rad)!=null?b:void 0,r=t.fbx_url||"//vrlab-image4.ljcdn.com/release/web/entryDoorMini/Anim_Door1.fbx",a=[],l=y=>U(exports,null,function*(){var q,N,G,_,Q,F,Z,X;const I=(q=y==null?void 0:y.position)!=null?q:s;if(!I)return Promise.reject(new Error("ModelEntryDoorGuidePlugin.load(): position is undefined"));const k=fA(I),T=(N=y==null?void 0:y.rad)!=null?N:o,P=(G=y==null?void 0:y.fbx_url)!=null?G:r;if(e.rad=T,T===void 0)return Promise.reject(new Error(`ModelEntryDoorGuidePlugin.load(): rad is ${T}`));const V=yield new oh.FBXLoader().loadAsync(P);V.position.copy(k),V.rotation.z=T,V.scale.set(.8,.8,.8),Uh(V,{transparent:!0,side:E.DoubleSide});const L=(Z=(F=(Q=(_=V.children)==null?void 0:_[0])==null?void 0:Q.children)==null?void 0:F[3])==null?void 0:Z.clone();if(!L)return Promise.reject(new Error(`ModelEntryDoorGuidePlugin.load(): textMesh is ${L}`));const W=(X=t.name)!=null?X:"入户门";return L.material=new R.MeshBasicMaterial({transparent:!0,map:uA(W)}),L.renderOrder=3,V.children[0].add(L),e.object=V,!0}),c=()=>{if(e.animation)return;if(!e.object)return console.error("ModelEntryDoorGuidePlugin.initAnimation(): state.object is ",e.object);const y=1,I=new R.AnimationMixer(e.object);a.push(I);const k=I.clipAction(e.object.animations[0]);k.timeScale=y;let T;const P=()=>{let q=0,N=0;const G=1e3/30,_=Q=>{q=requestAnimationFrame(_);const F=Q-N;F<G||(N=Q,a.forEach(Z=>Z.update(F/1e3)),i.needsRender=!0)};return q=requestAnimationFrame(_),()=>{cancelAnimationFrame(q)}},W={play:()=>{T||(k.play(),T=P(),requestAnimationFrame(()=>{e.object&&e.object.rotation.z!==e.rad&&(e.object.rotation.z=e.rad)}))},stop:()=>{k.stop(),T==null||T(),T=void 0}};e.animation=W},d=y=>{var k;if(!e.object)return console.error("ModelEntryDoorGuidePlugin.enable(): object is ",e.object);((k=y==null?void 0:y.animationEnable)!=null?k:n)&&(e.animation||c(),e.animation.play()),i.scene.add(e.object),i.needsRender=!0},h=()=>{e.object&&(e.animation&&e.animation.stop(),i.scene.remove(e.object),i.needsRender=!0)},u=y=>y==="Floorplan"?d():h();return{load:l,enable:y=>(e.enabled||(e.enabled=!0,u(i.currentMode),i.on("modeChange",u),d(y)),!0),disable:()=>(e.enabled&&(e.enabled=!1,h(),i.off("modeChange",u)),!0)}},gA=Dt;function pA(i,t,e,n=gA.Linear.None){const s=new mo(i).to(t,e).easing(n);Ao(()=>s.start(0));const o=os(a=>{s.update(a)===!1&&o()}),r=[];return s.onDestroy=a=>(r.push(a),s),s.destroy=function(){this.stop(),Object.assign(s,{_onStartCallback:null,_onUpdateCallback:null,_onCompleteCallback:null,_onStopCallbackL:null});let a;for(;a=r.shift();)a();o()},s}function AA(i,t){return pA({progress:0},{progress:1},i,t)}var Xh=(i=>(i.Move="Move",i.Rotate="Rotate",i))(Xh||{}),Rt=(i=>(i.Clockwise="Clockwise",i.Anticlockwise="Anticlockwise",i.Loop="Loop",i))(Rt||{});const Ws=Math.PI*2;function Gl(i){return(i%Ws+Ws)%Ws}function Nl(i){return i%Ws}function Er(i,t,e){return i+(t-i)*e}const Zr=(i,t,e)=>{const n=Math.PI,s=n*2;let o=Gl(i),r=Gl(t);return e===Rt.Anticlockwise&&o<r&&(o+=s),e===Rt.Clockwise&&r<o&&(r+=s),e===Rt.Loop&&r-o>n?Zr(o,r,Rt.Anticlockwise):e===Rt.Loop&&o-r>n?Zr(o,r,Rt.Clockwise):{from:o,to:r}},vA=i=>{const t={},e=(l,c,...d)=>U(exports,[l,c,...d],function*(o,r,a={preload:!0}){return t.interruptCallback&&t.interruptCallback(!1),a.asyncStartCallback&&(yield a.asyncStartCallback()),o.mode&&o.mode!==i.currentMode&&(yield i.changeMode(o.mode)),a.preload&&o.panoIndex!==void 0&&o.panoIndex!==i.panoIndex&&(yield i.preloadPano(o.panoIndex)),a.asyncEndCallback&&(yield a.asyncEndCallback()),o.panoIndex===void 0&&o.fov===void 0&&o.latitude===void 0&&o.longitude===void 0?!0:yield new Promise((h,u)=>{const m=o.panoIndex!==void 0?o.panoIndex:i.panoIndex;m!==void 0?i.moveToPano(m,H({duration:r,moveEndCallback:()=>h(!0),moveCancelCallback:()=>u(new Error("move canceled"))},o)):u(new Error("unexpected error"))})}),n=o=>{const r=i.state,a=Nl(r.latitude),l=Nl(o.latitude),{from:c,to:d}=Zr(r.longitude,o.longitude,o.rotation||Rt.Loop),h=r.fov,u=o.fov;return{from:{latitude:a,longitude:c,fov:h},to:{latitude:l,longitude:d,fov:u}}};return{move:e,rotate:(l,c,...d)=>U(exports,[l,c,...d],function*(o,r,a={}){t.interruptCallback&&t.interruptCallback(!1),a.asyncStartCallback&&(yield a.asyncStartCallback()),i.currentMode!==Te.Five.Mode.Panorama&&(yield i.changeMode(Te.Five.Mode.Panorama)),o.panoIndex!==void 0&&o.panoIndex!==i.panoIndex&&(a.preload&&(yield i.preloadPano(o.panoIndex)),yield new Promise((m,A)=>{if(!o.panoIndex){m(!0);return}i.moveToPano(o.panoIndex,{moveEndCallback:()=>m(!0),moveCancelCallback:()=>A(new Error("move canceled"))})})),a.asyncEndCallback&&(yield a.asyncEndCallback());const{from:h,to:u}=n(o);return yield new Promise(m=>{const A=({progress:I})=>{const k={};k.longitude=Er(h.longitude,u.longitude,I),k.latitude=Er(h.latitude,u.latitude,I),k.fov=Er(h.fov,u.fov,I),i.setState(k,!0)},p=()=>{m(!0)},g=()=>{m(!1)},b=o.rotateSpeed?Math.ceil(Math.abs(u.longitude-h.longitude)/o.rotateSpeed*1e3):r,y=AA(b,Dt.Linear.None).onUpdate(A).onComplete(p).onDestroy(g);o.rotation===Rt.Loop&&y.repeat(1/0).yoyo(!0),t.interruptCallback=(I=!0)=>{y.destroy(),t.interruptCallback=void 0,t.timeoutId&&(clearTimeout(t.timeoutId),t.timeoutId=void 0),m(I)},t.timeoutId=setTimeout(()=>{t.interruptCallback&&t.interruptCallback(!0)},r)})})}};function Hl(i,t){return i.x===t.x&&i.y===t.y}function Zh(i,t){return Math.abs(i)===1/0&&Math.abs(t)===1/0?!0:Math.abs(i-t)<.001}function oo(i,t){return(t.y-i.y)/(t.x-i.x)}function Jh(i,t,e){const n=oo(i[1],i[0]),s=oo(t[1],t[0]);if(isNaN(n)||isNaN(s)||Zh(n,s))return!1;if(Ss(i[0],t))return i[0];if(Ss(i[1],t))return i[1];if(Ss(t[0],i))return t[0];if(Ss(t[1],i))return t[1];if(e&&!bA(i,t))return!1;const o=i[0],r=t[0];if(Math.abs(n)===1/0)return{x:o.x,y:t[1].y-(t[1].x-o.x)*s};if(Math.abs(s)===1/0)return{x:r.x,y:i[1].y-(i[1].x-r.x)*n};const a=(r.y-o.y+n*o.x-s*r.x)/(n-s),l=n*a-n*o.x+o.y;return{x:a,y:l}}function Ss(i,t){return Hl(i,t[0])||Hl(i,t[1])?!0:(t[0].x-i.x)*(i.x-t[1].x)>=0&&(t[0].y-i.y)*(i.y-t[1].y)>=0&&Zh(oo(t[0],i),oo(i,t[1]))}function Ts(i,t,e){return(i.x-e.x)*(t.y-e.y)-(t.x-e.x)*(i.y-e.y)}function bA(i,t){return Math.max(i[0].x,i[1].x)>=Math.min(t[0].x,t[1].x)&&Math.max(t[0].x,t[1].x)>=Math.min(i[0].x,i[1].x)&&Math.max(i[0].y,i[1].y)>=Math.min(t[0].y,t[1].y)&&Ts(t[0],i[1],i[0])*Ts(i[1],t[1],i[0])>0&&Ts(i[0],t[1],t[0])*Ts(t[1],i[1],t[0])>0?1:0}function qh(i,t=0){t<=0?requestAnimationFrame(i):requestAnimationFrame(()=>qh(i,t-1))}const yA=`<style type="text/css">
|
|
194
|
+
`;return i.$$set=o=>{"content"in o&&e(0,n=o.content)},[n,s]}class bg extends le{constructor(t){super(),ae(this,t,vg,Ag,oe,{content:0},pg)}}function yg(i){ue(i,"svelte-ozpg4a",".floorplan-plugin__base-image.svelte-ozpg4a{position:absolute;z-index:10;width:100%;height:100%;pointer-events:none}")}function wg(i){let t,e;return t=new gg({props:{url:i[1].url}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.url=n[1].url),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function Cg(i){let t,e;return t=new bg({props:{content:i[0]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.content=n[0]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function Ig(i){let t,e,n,s;const o=[Cg,wg],r=[];function a(l,c){return l[0]?0:l[1]?1:-1}return~(e=a(i))&&(n=r[e]=o[e](i)),{c(){t=x("div"),n&&n.c(),w(t,"class","floorplan-plugin__base-image svelte-ozpg4a")},m(l,c){B(l,t,c),~e&&r[e].m(t,null),s=!0},p(l,[c]){let d=e;e=a(l),e===d?~e&&r[e].p(l,c):(n&&(de(),j(r[d],1,1,()=>{r[d]=null}),he()),~e?(n=r[e],n?n.p(l,c):(n=r[e]=o[e](l),n.c()),M(n,1),n.m(t,null)):n=null)},i(l){s||(M(n),s=!0)},o(l){j(n),s=!1},d(l){l&&O(t),~e&&r[e].d()}}}function Pg(i,t,e){let n,s,{floorIndex:o}=t,{floorplanData:r}=t;return i.$$set=a=>{"floorIndex"in a&&e(2,o=a.floorIndex),"floorplanData"in a&&e(3,r=a.floorplanData)},i.$$.update=()=>{var a,l;i.$$.dirty&12&&e(1,n=r.outlines[o]),i.$$.dirty&12&&e(0,s=(l=(a=r.outlines)==null?void 0:a[o])==null?void 0:l.svgContent)},[s,n,o,r]}class Hh extends le{constructor(t){super(),ae(this,t,Pg,Ig,oe,{floorIndex:2,floorplanData:3},yg)}}function Eg(i){ue(i,"svelte-12pzct5",".floorplan-plugin__room-label-item.svelte-12pzct5{position:absolute;display:flex;flex-flow:column;align-items:center;line-height:1;color:#fff;transform:translate(-50%, -50%);white-space:nowrap;will-change:opacity;transition:opacity 300ms}.floorplan-plugin__room-size.svelte-12pzct5{opacity:0.45}")}function kg(i){let t,e=i[8].outerHTML+"",n;return{c(){t=new Zs(!1),n=Pe(),t.a=n},m(s,o){t.m(e,s,o),B(s,n,o)},p(s,o){o&256&&e!==(e=s[8].outerHTML+"")&&t.p(e)},d(s){s&&O(n),s&&t.d()}}}function Mg(i){let t,e,n=i[1]&&cl(i),s=i[0]&&dl(i);return{c(){n&&n.c(),t=ee(),s&&s.c(),e=Pe()},m(o,r){n&&n.m(o,r),B(o,t,r),s&&s.m(o,r),B(o,e,r)},p(o,r){o[1]?n?n.p(o,r):(n=cl(o),n.c(),n.m(t.parentNode,t)):n&&(n.d(1),n=null),o[0]?s?s.p(o,r):(s=dl(o),s.c(),s.m(e.parentNode,e)):s&&(s.d(1),s=null)},d(o){n&&n.d(o),o&&O(t),s&&s.d(o),o&&O(e)}}}function cl(i){let t,e=i[2].name+"",n;return{c(){t=x("span"),n=Me(e),w(t,"class","floorplan-plugin__room-name")},m(s,o){B(s,t,o),D(t,n)},p(s,o){o&4&&e!==(e=s[2].name+"")&&Oe(n,e)},d(s){s&&O(t)}}}function dl(i){let t,e;return{c(){t=x("span"),e=Me(i[7]),w(t,"class","floorplan-plugin__room-size svelte-12pzct5")},m(n,s){B(n,t,s),D(t,e)},p(n,s){s&128&&Oe(e,n[7])},d(n){n&&O(t)}}}function xg(i){let t,e,n;function s(a,l){if(a[3]===void 0)return Mg;if(a[8])return kg}let o=s(i),r=o&&o(i);return{c(){t=x("div"),r&&r.c(),w(t,"class","floorplan-plugin__room-label-item svelte-12pzct5"),z(t,"left",i[9]),z(t,"top",i[10]),z(t,"font-size",i[11]),z(t,"opacity",i[6]?"1":"0")},m(a,l){B(a,t,l),r&&r.m(t,null),e||(n=[$t(Pi.call(null,t)),be(t,"clientWidth",i[19]),be(t,"clientHeight",i[20])],e=!0)},p(a,[l]){o===(o=s(a))&&r?r.p(a,l):(r&&r.d(1),r=o&&o(a),r&&(r.c(),r.m(t,null))),l&64&&z(t,"opacity",a[6]?"1":"0")},i:J,o:J,d(a){a&&O(t),r&&r.d(),e=!1,Je(n)}}}function Dg(i,t){const e=i[0],n=i[1];let s=!1;for(let o=0,r=t.length-1;o<t.length;r=o++){const a=t[o][0],l=t[o][1],c=t[r][0],d=t[r][1];l>n!=d>n&&e<(c-a)*(n-l)/(d-l)+a&&(s=!s)}return s}function Sg(i,t,e){let n,s,o,r,a,{pxmm:l}=t,{roomAreaEnable:c}=t,{roomNameEnable:d}=t,{room:h}=t,{hoveredRoom:u}=t,{getRoomAreaText:m}=t,{getLabelElement:A}=t,{adaptiveRoomLabelVisibleEnable:p}=t;function g(G,_){if(_.width===0||_.height===0)return()=>!1;const Q=G.path.map(({x:Ce,y:pe})=>[Ce,pe]),F=G.roomLabel.position,{x:Z,y:X}=F,{width:$,height:ce}=_,se=$/2,we=ce/2;return function(pe){const Be=Z*pe,ve=X*pe,We=Q.map(([ye,Le])=>[ye*pe,Le*pe]);return[[Be+se,ve-we],[Be-se,ve-we],[Be-se,ve+we],[Be+se,ve+we]].every(ye=>Dg(ye,We))}}const v=document.body.clientWidth,y=document.body.clientHeight,I=h.roomLabel,k=I.positionInImage.x*100+"%",T=I.positionInImage.y*100+"%",P=(v<500||y<500?10:14)+"px";let V=0,L=0,W=!1;u.subscribe(function(_){e(16,W=!!_&&_.id===h.id)});const q=G=>{e(4,V=G.detail)},N=G=>{e(5,L=G.detail)};return i.$$set=G=>{"pxmm"in G&&e(12,l=G.pxmm),"roomAreaEnable"in G&&e(0,c=G.roomAreaEnable),"roomNameEnable"in G&&e(1,d=G.roomNameEnable),"room"in G&&e(2,h=G.room),"hoveredRoom"in G&&e(13,u=G.hoveredRoom),"getRoomAreaText"in G&&e(14,m=G.getRoomAreaText),"getLabelElement"in G&&e(3,A=G.getLabelElement),"adaptiveRoomLabelVisibleEnable"in G&&e(15,p=G.adaptiveRoomLabelVisibleEnable)},i.$$.update=()=>{i.$$.dirty&12&&e(8,n=A==null?void 0:A(h)),i.$$.dirty&16388&&e(7,s=h.size?m(h.size):""),i.$$.dirty&48&&e(18,o={width:V,height:L}),i.$$.dirty&262148&&e(17,r=o?g(h,o):void 0),i.$$.dirty&233472&&e(6,a=p?W?!0:!!(r!=null&&r(l)):!0)},[c,d,h,A,V,L,a,s,n,k,T,P,l,u,m,p,W,r,o,q,N]}class Tg extends le{constructor(t){super(),ae(this,t,Sg,xg,oe,{pxmm:12,roomAreaEnable:0,roomNameEnable:1,room:2,hoveredRoom:13,getRoomAreaText:14,getLabelElement:3,adaptiveRoomLabelVisibleEnable:15},Eg)}}function Lg(i){ue(i,"svelte-13xux0b",".floorplan-plugin__room-labels.svelte-13xux0b{width:100%;height:100%;position:absolute;left:0;top:0;z-index:20;pointer-events:none}")}function hl(i,t,e){const n=i.slice();return n[12]=t[e],n}function ul(i){let t,e=[],n=new Map,s,o,r,a=i[8];const l=c=>c[12].id;for(let c=0;c<a.length;c+=1){let d=hl(i,a,c),h=l(d);n.set(h,e[c]=fl(h,d))}return{c(){t=x("div");for(let c=0;c<e.length;c+=1)e[c].c();w(t,"class","floorplan-plugin__room-labels svelte-13xux0b")},m(c,d){B(c,t,d);for(let h=0;h<e.length;h+=1)e[h]&&e[h].m(t,null);s=!0,o||(r=[$t(Pi.call(null,t)),be(t,"clientWidth",i[11])],o=!0)},p(c,d){d&447&&(a=c[8],de(),e=jt(e,d,l,1,c,a,n,t,vn,fl,null,hl),he())},i(c){if(!s){for(let d=0;d<a.length;d+=1)M(e[d]);s=!0}},o(c){for(let d=0;d<e.length;d+=1)j(e[d]);s=!1},d(c){c&&O(t);for(let d=0;d<e.length;d+=1)e[d].d();o=!1,Je(r)}}}function fl(i,t){let e,n,s;const o=[{pxmm:t[7],room:t[12],hoveredRoom:t[2],roomAreaEnable:t[0],roomNameEnable:t[1],getLabelElement:t[4],getRoomAreaText:t[3],adaptiveRoomLabelVisibleEnable:t[5]}];let r={};for(let a=0;a<o.length;a+=1)r=et(r,o[a]);return n=new Tg({props:r}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(a,l){B(a,e,l),te(n,a,l),s=!0},p(a,l){t=a;const c=l&447?lt(o,[{pxmm:t[7],room:t[12],hoveredRoom:t[2],roomAreaEnable:t[0],roomNameEnable:t[1],getLabelElement:t[4],getRoomAreaText:t[3],adaptiveRoomLabelVisibleEnable:t[5]}]):{};n.$set(c)},i(a){s||(M(n.$$.fragment,a),s=!0)},o(a){j(n.$$.fragment,a),s=!1},d(a){a&&O(e),ne(n,a)}}}function jg(i){let t,e,n=i[8]&&ul(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[8]?n?(n.p(s,o),o&256&&M(n,1)):(n=ul(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function zg(i,t,e){let n,{floorIndex:s}=t,{roomAreaEnable:o}=t,{roomNameEnable:r}=t,{floorplanData:a}=t,{hoveredRoom:l}=t,{getRoomAreaText:c}=t,{getLabelElement:d}=t,{adaptiveRoomLabelVisibleEnable:h}=t,u=0,m=0;const A=p=>{e(6,u=p.detail)};return i.$$set=p=>{"floorIndex"in p&&e(9,s=p.floorIndex),"roomAreaEnable"in p&&e(0,o=p.roomAreaEnable),"roomNameEnable"in p&&e(1,r=p.roomNameEnable),"floorplanData"in p&&e(10,a=p.floorplanData),"hoveredRoom"in p&&e(2,l=p.hoveredRoom),"getRoomAreaText"in p&&e(3,c=p.getRoomAreaText),"getLabelElement"in p&&e(4,d=p.getLabelElement),"adaptiveRoomLabelVisibleEnable"in p&&e(5,h=p.adaptiveRoomLabelVisibleEnable)},i.$$.update=()=>{if(i.$$.dirty&1536&&e(8,n=a.floorDatas[s].rooms),i.$$.dirty&1088){const{max:p,min:g}=a.bounding,v=p.x-g.x;e(7,m=u/v)}},[o,r,l,c,d,h,u,m,n,s,a,A]}class Og extends le{constructor(t){super(),ae(this,t,zg,jg,oe,{floorIndex:9,roomAreaEnable:0,roomNameEnable:1,floorplanData:10,hoveredRoom:2,getRoomAreaText:3,getLabelElement:4,adaptiveRoomLabelVisibleEnable:5},Lg)}}function Bg(i){ue(i,"svelte-djlmk4",".floorplan-plugin__rule-labels.svelte-djlmk4.svelte-djlmk4{position:absolute;display:flex}.floorplan-plugin__rule-labels--top.svelte-djlmk4.svelte-djlmk4{left:0;top:-1.25rem}.floorplan-plugin__rule-labels--bottom.svelte-djlmk4.svelte-djlmk4{left:0;bottom:-1.25rem}.floorplan-plugin__rule-labels--left.svelte-djlmk4.svelte-djlmk4{top:0;left:-1.25rem}.floorplan-plugin__rule-labels--right.svelte-djlmk4.svelte-djlmk4{top:0;right:-1.25rem}.floorplan-plugin__rule-line.svelte-djlmk4.svelte-djlmk4{background:#fff;opacity:0.05;width:100%;height:100%}.floorplan-plugin__rule-scale-wrapper.svelte-djlmk4.svelte-djlmk4{position:absolute;width:0.3125rem;height:100%;left:50%;top:0;transform:translateX(-50%)}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-scale-wrapper.svelte-djlmk4{width:100%;height:0.3125rem;top:50%;left:0;transform:translateY(-50%)}.floorplan-plugin__rule-scale.svelte-djlmk4.svelte-djlmk4{position:absolute;background:#fff;opacity:0.05;width:100%;height:0.0625rem}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-scale.svelte-djlmk4{width:0.0625rem;height:100%}.floorplan-plugin__rule-text-wrapper.svelte-djlmk4.svelte-djlmk4{position:absolute}.floorplan-plugin__rule-labels--top.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:100%;height:0;top:0.625rem}.floorplan-plugin__rule-labels--bottom.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:100%;height:0;bottom:0.625rem}.floorplan-plugin__rule-labels--left.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:0;height:100%;left:0.625rem}.floorplan-plugin__rule-labels--right.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:0;height:100%;right:0.625rem}.floorplan-plugin__rule-text-item.svelte-djlmk4.svelte-djlmk4{width:0;height:0;position:absolute;transform:rotate(90deg)}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-text-item.svelte-djlmk4{transform:rotate(0)}.floorplan-plugin__rule-text.svelte-djlmk4.svelte-djlmk4{width:-moz-max-content;width:max-content;transform:translate(-50%, -50%);font-size:0.625rem;color:#fff;opacity:0.2}")}function ml(i,t,e){const n=i.slice();return n[11]=t[e],n[13]=e,n}function gl(i,t,e){const n=i.slice();return n[14]=t[e],n}function pl(i){let t;return{c(){t=x("div"),w(t,"class","floorplan-plugin__rule-scale svelte-djlmk4"),z(t,"left",i[14].left*100+"%"),z(t,"bottom",i[14].bottom*100+"%")},m(e,n){B(e,t,n)},p:J,d(e){e&&O(t)}}}function Al(i,t){let e,n,s=t[1](t[11].distance)+"",o,r;return{key:i,first:null,c(){e=x("div"),n=x("div"),o=Me(s),r=ee(),w(n,"class","floorplan-plugin__rule-text svelte-djlmk4"),K(n,"is-row",t[2]),w(e,"class","floorplan-plugin__rule-text-item svelte-djlmk4"),z(e,"left",t[11].left*100+"%"),z(e,"bottom",t[11].bottom*100+"%"),this.first=e},m(a,l){B(a,e,l),D(e,n),D(n,o),D(e,r)},p(a,l){t=a,l&2&&s!==(s=t[1](t[11].distance)+"")&&Oe(o,s)},d(a){a&&O(e)}}}function Vg(i){let t,e,n,s,o,r,a=[],l=new Map,c,d=i[3],h=[];for(let A=0;A<d.length;A+=1)h[A]=pl(gl(i,d,A));let u=i[4];const m=A=>A[13];for(let A=0;A<u.length;A+=1){let p=ml(i,u,A),g=m(p);l.set(g,a[A]=Al(g,p))}return{c(){t=x("div"),e=x("div"),n=ee(),s=x("div");for(let A=0;A<h.length;A+=1)h[A].c();o=ee(),r=x("div");for(let A=0;A<a.length;A+=1)a[A].c();w(e,"class","floorplan-plugin__rule-line svelte-djlmk4"),w(s,"class","floorplan-plugin__rule-scale-wrapper svelte-djlmk4"),K(s,"is-row",i[2]),w(r,"class","floorplan-plugin__rule-text-wrapper svelte-djlmk4"),w(t,"class",c="floorplan-plugin__rule-labels floorplan-plugin__rule-labels--"+i[0]+" svelte-djlmk4"),K(t,"is-row",i[2]),z(t,"width",i[2]?"100%":1/16+"rem"),z(t,"height",i[2]?1/16+"rem":"100%")},m(A,p){B(A,t,p),D(t,e),D(t,n),D(t,s);for(let g=0;g<h.length;g+=1)h[g]&&h[g].m(s,null);D(t,o),D(t,r);for(let g=0;g<a.length;g+=1)a[g]&&a[g].m(r,null)},p(A,[p]){if(p&8){d=A[3];let g;for(g=0;g<d.length;g+=1){const v=gl(A,d,g);h[g]?h[g].p(v,p):(h[g]=pl(v),h[g].c(),h[g].m(s,null))}for(;g<h.length;g+=1)h[g].d(1);h.length=d.length}p&22&&(u=A[4],a=jt(a,p,m,1,A,u,l,r,wa,Al,null,ml)),p&1&&c!==(c="floorplan-plugin__rule-labels floorplan-plugin__rule-labels--"+A[0]+" svelte-djlmk4")&&w(t,"class",c),p&5&&K(t,"is-row",A[2])},i:J,o:J,d(A){A&&O(t),Tt(h,A);for(let p=0;p<a.length;p+=1)a[p].d()}}}const qn=1e3,Kn=180;function Rg(i,t,e){let{type:n}=t,{data:s}=t,{bounding:o}=t,{getRuleDistanceText:r}=t;const a=n==="top"||n==="bottom",l=o.max.x-o.min.x-(qn-Kn)*2,c=o.max.y-o.min.y-(qn-Kn)*2,d=s.map(([A,p])=>a?[A.x,p.x]:[A.y,p.y]).flat().sort().filter((A,p,g)=>p===0?!0:A!==g[p-1]),h=d.map(A=>{const p=a?(A-o.min.x-qn+Kn)/l:0,g=a?0:(A-o.min.y-qn+Kn)/c;return{left:p,bottom:g}});h.unshift({left:0,bottom:0}),h.push(a?{left:1,bottom:0}:{left:0,bottom:1});const u=d[d.length-1]-d[0],m=d.map((A,p,g)=>{const v=p===0?0:A-g[p-1],y=p===0?0:(A+g[p-1])/2,I=a?(y-o.min.x-qn+Kn)/l:0,k=a?0:(y-o.min.y-qn+Kn)/c;return{left:I,bottom:k,distance:v}}).filter(({distance:A})=>A/u>.1);return i.$$set=A=>{"type"in A&&e(0,n=A.type),"data"in A&&e(5,s=A.data),"bounding"in A&&e(6,o=A.bounding),"getRuleDistanceText"in A&&e(1,r=A.getRuleDistanceText)},[n,r,a,h,m,s,o]}class Qg extends le{constructor(t){super(),ae(this,t,Rg,Vg,oe,{type:0,data:5,bounding:6,getRuleDistanceText:1},Bg)}}function Gg(i){ue(i,"svelte-1mzj9p3",".floorplan-plugin__rule-labels-wrapper.svelte-1mzj9p3{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);pointer-events:none}")}function vl(i,t,e){const n=i.slice();return n[13]=t[e][0],n[14]=t[e][1],n}function bl(i,t){let e,n,s;const o=[{type:t[13],data:t[14],bounding:t[1],getRuleDistanceText:t[0]}];let r={};for(let a=0;a<o.length;a+=1)r=et(r,o[a]);return n=new Qg({props:r}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(a,l){B(a,e,l),te(n,a,l),s=!0},p(a,l){t=a;const c=l&19?lt(o,[{type:t[13],data:t[14],bounding:t[1],getRuleDistanceText:t[0]}]):{};n.$set(c)},i(a){s||(M(n.$$.fragment,a),s=!0)},o(a){j(n.$$.fragment,a),s=!1},d(a){a&&O(e),ne(n,a)}}}function Ng(i){let t,e=[],n=new Map,s,o=i[4];const r=a=>a[13];for(let a=0;a<o.length;a+=1){let l=vl(i,o,a),c=r(l);n.set(c,e[a]=bl(c,l))}return{c(){t=x("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","floorplan-plugin__rule-labels-wrapper svelte-1mzj9p3"),z(t,"width",i[3]),z(t,"height",i[2])},m(a,l){B(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,[l]){l&19&&(o=a[4],de(),e=jt(e,l,r,1,a,o,n,t,vn,bl,null,vl),he()),l&8&&z(t,"width",a[3]),l&4&&z(t,"height",a[2])},i(a){if(!s){for(let l=0;l<o.length;l+=1)M(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)j(e[l]);s=!1},d(a){a&&O(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}const yl=1e3,wl=180;function Hg(i,t,e){let n,s,o,r,a,l,c,d,h,u,{floorIndex:m}=t,{floorplanData:A}=t,{getRuleDistanceText:p}=t;return i.$$set=g=>{"floorIndex"in g&&e(5,m=g.floorIndex),"floorplanData"in g&&e(6,A=g.floorplanData),"getRuleDistanceText"in g&&e(0,p=g.getRuleDistanceText)},i.$$.update=()=>{i.$$.dirty&64&&e(1,n=A.bounding),i.$$.dirty&96&&e(11,s=A.floorDatas[m].rules),i.$$.dirty&2048&&e(12,o=Object.keys(s)),i.$$.dirty&6144&&e(4,r=o.map(g=>[g,s[g]])),i.$$.dirty&2&&e(9,a=n.max.x-n.min.x),i.$$.dirty&2&&e(7,l=n.max.y-n.min.y),i.$$.dirty&2&&e(10,c=n.max.x-n.min.x-(yl-wl)*2),i.$$.dirty&2&&e(8,d=n.max.y-n.min.y-(yl-wl)*2),i.$$.dirty&1536&&e(3,h=c/a*100+"%"),i.$$.dirty&384&&e(2,u=d/l*100+"%")},[p,n,u,h,r,m,A,l,d,a,c,s,o]}class _g extends le{constructor(t){super(),ae(this,t,Hg,Ng,oe,{floorIndex:5,floorplanData:6,getRuleDistanceText:0},Gg)}}function Io(i,t={}){let e="";const{needZ:n,needA:s}=t;return(n?i.slice().concat(i[0]):i.slice()).forEach((r,a)=>{const{x:l,y:c}=t.format?t.format(r):r,d=l+","+c;return a===0?(e+="M"+d,e):s!=null&&s[a]?(e+="A"+s[a]+","+d,e):(e+="L"+d,e)}),e+(n?"Z":"")}function _h({x:i,y:t},e){const{max:n,min:s}=e;return{x:i-s.x,y:n.y-t}}function Wg(i,t){const e=i.x*1e3+t.bounding.origin.x,n=-i.z*1e3+t.bounding.origin.y;return{x:e,y:n}}function Fg(i,t){const e=t.bounding,n=e.max.x-e.min.x,s=e.max.y-e.min.y;return{x:(i.x-e.min.x)/n,y:(e.max.y-i.y)/s}}function Yg(i,t){return Math.max(...t.work.observers.map(n=>i.z>=n.standingPosition.z?n.floorIndex:0))}function Ug(i){let t;return{c(){t=ze("path"),w(t,"d",i[0]),w(t,"fill","#2F313A")},m(e,n){B(e,t,n)},p(e,[n]){n&1&&w(t,"d",e[0])},i:J,o:J,d(e){e&&O(t)}}}function Xg(i,t,e){let n,{path:s}=t;return i.$$set=o=>{"path"in o&&e(1,s=o.path)},i.$$.update=()=>{i.$$.dirty&2&&e(0,n=Io(s,{needZ:!0}))},[n,s]}class Zg extends le{constructor(t){super(),ae(this,t,Xg,Ug,oe,{path:1})}}function Jg(i){let t,e,n,s,o,r;return{c(){t=ze("defs"),e=ze("pattern"),n=ze("rect"),s=ze("path"),o=ee(),r=ze("path"),w(n,"x","0"),w(n,"y","0"),w(n,"width",i[1]),w(n,"height",i[1]),w(n,"fill","#323747"),w(s,"d",i[2]),w(s,"stroke","#ffffff"),w(s,"stroke-opacity","0.06"),w(s,"stroke-width","0.5"),w(s,"fill","none"),w(e,"id","fpm-room-pattern-0"),w(e,"x","0"),w(e,"y","0"),w(e,"width",i[1]),w(e,"height",i[1]),w(e,"patternUnits","userSpaceOnUse"),w(e,"patternTransform","scale(50 50)"),w(r,"d",i[0]),w(r,"fill","url(#fpm-room-pattern-0)")},m(a,l){B(a,t,l),D(t,e),D(e,n),D(e,s),B(a,o,l),B(a,r,l)},p(a,[l]){l&1&&w(r,"d",a[0])},i:J,o:J,d(a){a&&O(t),a&&O(o),a&&O(r)}}}const Ir=6;function qg(i,t,e){let n,{path:s}=t;const o=Ir*2,r=`M0 ${Ir} h ${o} M${Ir} 0 v ${o}`;return i.$$set=a=>{"path"in a&&e(3,s=a.path)},i.$$.update=()=>{i.$$.dirty&8&&e(0,n=Io(s,{needZ:!0}))},[n,o,r,s]}class Kg extends le{constructor(t){super(),ae(this,t,qg,Jg,oe,{path:3})}}function $g(i){let t,e,n,s,o,r,a,l,c,d,h;return{c(){t=ze("defs"),e=ze("pattern"),n=ze("rect"),s=ze("pattern"),o=ze("rect"),r=ee(),a=ze("path"),l=ee(),c=ze("path"),d=ee(),h=ze("path"),w(n,"x","0"),w(n,"y","0"),w(n,"width","6"),w(n,"height","50"),w(n,"fill","none"),w(n,"stroke","#4B4B57"),w(n,"stroke-width","0.5"),w(e,"id","room-material-pattern-1"),w(e,"x","0"),w(e,"y","0"),w(e,"width","12"),w(e,"height","50"),w(e,"patternUnits","userSpaceOnUse"),w(e,"patternTransform","scale(50 50)"),w(o,"x","0"),w(o,"y","0"),w(o,"width","6"),w(o,"height","50"),w(o,"fill","none"),w(o,"stroke","#4B4B57"),w(o,"stroke-width","0.5"),w(s,"id","room-material-pattern-2"),w(s,"x","6"),w(s,"y","25"),w(s,"width","12"),w(s,"height","50"),w(s,"patternUnits","userSpaceOnUse"),w(s,"patternTransform","scale(50 50)"),w(a,"d",i[0]),w(a,"fill","#43434D"),w(c,"d",i[0]),w(c,"fill","url(#room-material-pattern-1)"),w(h,"d",i[0]),w(h,"fill","url(#room-material-pattern-2)")},m(u,m){B(u,t,m),D(t,e),D(e,n),D(t,s),D(s,o),B(u,r,m),B(u,a,m),B(u,l,m),B(u,c,m),B(u,d,m),B(u,h,m)},p(u,[m]){m&1&&w(a,"d",u[0]),m&1&&w(c,"d",u[0]),m&1&&w(h,"d",u[0])},i:J,o:J,d(u){u&&O(t),u&&O(r),u&&O(a),u&&O(l),u&&O(c),u&&O(d),u&&O(h)}}}function ep(i,t,e){let n,{path:s}=t;return i.$$set=o=>{"path"in o&&e(1,s=o.path)},i.$$.update=()=>{i.$$.dirty&2&&e(0,n=Io(s,{needZ:!0}))},[n,s]}class tp extends le{constructor(t){super(),ae(this,t,ep,$g,oe,{path:1})}}function np(i){ue(i,"svelte-1dykexu",".floorplan-plugin__room-material.svelte-1dykexu{position:absolute;left:0;top:0;width:100%;height:100%}svg.svelte-1dykexu{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}")}function Cl(i,t,e){const n=i.slice();return n[5]=t[e],n}function ip(i){let t,e;return t=new Kg({props:{path:i[5].path}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.path=n[5].path),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function sp(i){let t,e;return t=new tp({props:{path:i[5].path}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.path=n[5].path),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function op(i){let t,e;return t=new Zg({props:{path:i[5].path}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.path=n[5].path),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function Il(i){let t,e,n,s;const o=[op,sp,ip],r=[];function a(l,c){return l[5].floorType===1?0:l[5].floorType===0?1:2}return e=a(i),n=r[e]=o[e](i),{c(){t=ze("svg"),n.c(),w(t,"width","100%"),w(t,"height","100%"),w(t,"viewBox",`0 0 ${i[1]} ${i[2]}`),w(t,"class","svelte-1dykexu")},m(l,c){B(l,t,c),r[e].m(t,null),s=!0},p(l,c){let d=e;e=a(l),e===d?r[e].p(l,c):(de(),j(r[d],1,1,()=>{r[d]=null}),he(),n=r[e],n?n.p(l,c):(n=r[e]=o[e](l),n.c()),M(n,1),n.m(t,null))},i(l){s||(M(n),s=!0)},o(l){j(n),s=!1},d(l){l&&O(t),r[e].d()}}}function rp(i){let t,e,n=i[0],s=[];for(let r=0;r<n.length;r+=1)s[r]=Il(Cl(i,n,r));const o=r=>j(s[r],1,1,()=>{s[r]=null});return{c(){t=x("div");for(let r=0;r<s.length;r+=1)s[r].c();w(t,"class","floorplan-plugin__room-material svelte-1dykexu")},m(r,a){B(r,t,a);for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(t,null);e=!0},p(r,[a]){if(a&7){n=r[0];let l;for(l=0;l<n.length;l+=1){const c=Cl(r,n,l);s[l]?(s[l].p(c,a),M(s[l],1)):(s[l]=Il(c),s[l].c(),M(s[l],1),s[l].m(t,null))}for(de(),l=n.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<n.length;a+=1)M(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)j(s[a]);e=!1},d(r){r&&O(t),Tt(s,r)}}}function ap(i,t,e){let n,{floorIndex:s}=t,{floorplanData:o}=t;const r=o.bounding.max.x-o.bounding.min.x,a=o.bounding.max.y-o.bounding.min.y;return i.$$set=l=>{"floorIndex"in l&&e(3,s=l.floorIndex),"floorplanData"in l&&e(4,o=l.floorplanData)},i.$$.update=()=>{i.$$.dirty&24&&e(0,n=o.floorDatas[s].rooms.map(l=>Ae(H({},l),{path:l.path.map(c=>_h(c,o.bounding))})))},[n,r,a,s,o]}class lp extends le{constructor(t){super(),ae(this,t,ap,rp,oe,{floorIndex:3,floorplanData:4},np)}}function cp(i){ue(i,"svelte-qq2273","path.svelte-qq2273{--opacity:0;opacity:var(--opacity)}path.svelte-qq2273:hover{opacity:calc(var(--opacity) + 0.1)}")}function dp(i){let t,e,n,s;return{c(){t=ze("path"),w(t,"d",i[5]),w(t,"fill","#fff"),w(t,"style",i[2]),w(t,"id",e=`${i[1]}_${i[0].id}`),w(t,"class","svelte-qq2273")},m(o,r){B(o,t,r),n||(s=[be(t,"mouseenter",i[3]),be(t,"mouseleave",i[4])],n=!0)},p(o,[r]){r&4&&w(t,"style",o[2]),r&3&&e!==(e=`${o[1]}_${o[0].id}`)&&w(t,"id",e)},i:J,o:J,d(o){o&&O(t),n=!1,Je(s)}}}function hp(i,t,e){let n,s,{room:o}=t,{floorIndex:r}=t,{floorplanData:a}=t,{highlightData:l}=t,{hoveredRoom:c}=t;function d(){c==null||c.set(o)}function h(){c==null||c.set(void 0)}const{bounding:u}=a,m=Io(o.path,{needZ:!0,format:A=>_h(A,u)});return i.$$set=A=>{"room"in A&&e(0,o=A.room),"floorIndex"in A&&e(1,r=A.floorIndex),"floorplanData"in A&&e(6,a=A.floorplanData),"highlightData"in A&&e(7,l=A.highlightData),"hoveredRoom"in A&&e(8,c=A.hoveredRoom)},i.$$.update=()=>{i.$$.dirty&131&&e(9,n=l[`${r}_${o.id}`]),i.$$.dirty&512&&e(2,s=n?`fill: ${n.color}; --opacity: ${n.opacity}; pointer-events: ${n.disabled?"none":"auto"}`:null)},[o,r,s,d,h,m,a,l,c,n]}class up extends le{constructor(t){super(),ae(this,t,hp,dp,oe,{room:0,floorIndex:1,floorplanData:6,highlightData:7,hoveredRoom:8},cp)}}function fp(i){ue(i,"svelte-1kqo6e4",".floorplan-plugin__room-highlight.svelte-1kqo6e4{position:absolute;width:100%;height:100%}svg.svelte-1kqo6e4{width:100%;height:100%;overflow:visible}")}function Pl(i,t,e){const n=i.slice();return n[6]=t[e],n}function El(i,t){let e,n,s;const o=[{room:t[6],floorplanData:t[1],hoveredRoom:t[3],floorIndex:t[0],highlightData:t[2]}];let r={};for(let a=0;a<o.length;a+=1)r=et(r,o[a]);return n=new up({props:r}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(a,l){B(a,e,l),te(n,a,l),s=!0},p(a,l){t=a;const c=l&15?lt(o,[{room:t[6],floorplanData:t[1],hoveredRoom:t[3],floorIndex:t[0],highlightData:t[2]}]):{};n.$set(c)},i(a){s||(M(n.$$.fragment,a),s=!0)},o(a){j(n.$$.fragment,a),s=!1},d(a){a&&O(e),ne(n,a)}}}function mp(i){let t,e,n=[],s=new Map,o,r=i[1].floorDatas[i[0]].rooms;const a=l=>l[6].id;for(let l=0;l<r.length;l+=1){let c=Pl(i,r,l),d=a(c);s.set(d,n[l]=El(d,c))}return{c(){t=x("div"),e=ze("svg");for(let l=0;l<n.length;l+=1)n[l].c();w(e,"width","100%"),w(e,"height","100%"),w(e,"viewBox",`0 0 ${i[4]} ${i[5]}`),w(e,"class","svelte-1kqo6e4"),w(t,"class","floorplan-plugin__room-highlight svelte-1kqo6e4")},m(l,c){B(l,t,c),D(t,e);for(let d=0;d<n.length;d+=1)n[d]&&n[d].m(e,null);o=!0},p(l,[c]){c&15&&(r=l[1].floorDatas[l[0]].rooms,de(),n=jt(n,c,a,1,l,r,s,e,vn,El,null,Pl),he())},i(l){if(!o){for(let c=0;c<r.length;c+=1)M(n[c]);o=!0}},o(l){for(let c=0;c<n.length;c+=1)j(n[c]);o=!1},d(l){l&&O(t);for(let c=0;c<n.length;c+=1)n[c].d()}}}function gp(i,t,e){let{floorIndex:n}=t,{floorplanData:s}=t,{highlightData:o}=t,{hoveredRoom:r}=t;const a=s.bounding.max.x-s.bounding.min.x,l=s.bounding.max.y-s.bounding.min.y;return i.$$set=c=>{"floorIndex"in c&&e(0,n=c.floorIndex),"floorplanData"in c&&e(1,s=c.floorplanData),"highlightData"in c&&e(2,o=c.highlightData),"hoveredRoom"in c&&e(3,r=c.hoveredRoom)},[n,s,o,r,a,l]}class Wh extends le{constructor(t){super(),ae(this,t,gp,mp,oe,{floorIndex:0,floorplanData:1,highlightData:2,hoveredRoom:3},fp)}}function pp(i){ue(i,"svelte-bl8zrz",".floorplan-plugin__floor.svelte-bl8zrz{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;pointer-events:none}.floorplan-plugin__floor--is-current.svelte-bl8zrz{opacity:1;pointer-events:auto}")}function kl(i){let t,e;const n=[{floorIndex:i[1],floorplanData:i[8],hoveredRoom:i[14],highlightData:i[13]}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new Wh({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&24834?lt(n,[{floorIndex:o[1],floorplanData:o[8],hoveredRoom:o[14],highlightData:o[13]}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function Ml(i){let t,e;const n=[{floorplanData:i[8],roomAreaEnable:i[5],roomNameEnable:i[6],floorIndex:i[1],getRoomAreaText:i[9],getLabelElement:i[10],hoveredRoom:i[14],adaptiveRoomLabelVisibleEnable:i[12]}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new Og({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&22370?lt(n,[{floorplanData:o[8],roomAreaEnable:o[5],roomNameEnable:o[6],floorIndex:o[1],getRoomAreaText:o[9],getLabelElement:o[10],hoveredRoom:o[14],adaptiveRoomLabelVisibleEnable:o[12]}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function xl(i){let t,e;const n=[{floorplanData:i[8],floorIndex:i[1],getRuleDistanceText:i[11]}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new _g({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&2306?lt(n,[{floorplanData:o[8],floorIndex:o[1],getRuleDistanceText:o[11]}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function Ap(i){let t,e,n,s,o,r,a,l,c;const d=[{floorIndex:i[1],floorplanData:i[8]}];let h={};for(let v=0;v<d.length;v+=1)h=et(h,d[v]);e=new lp({props:h});let u=(i[2]||i[3])&&kl(i);const m=[{floorplanData:i[8],floorIndex:i[1]}];let A={};for(let v=0;v<m.length;v+=1)A=et(A,m[v]);o=new Hh({props:A});let p=i[4]&&Ml(i),g=i[7]&&xl(i);return{c(){t=x("div"),ie(e.$$.fragment),n=ee(),u&&u.c(),s=ee(),ie(o.$$.fragment),r=ee(),p&&p.c(),a=ee(),g&&g.c(),w(t,"class",l=Re(`floorplan-plugin__floor${i[0]?" floorplan-plugin__floor--is-current":""}`)+" svelte-bl8zrz")},m(v,y){B(v,t,y),te(e,t,null),D(t,n),u&&u.m(t,null),D(t,s),te(o,t,null),D(t,r),p&&p.m(t,null),D(t,a),g&&g.m(t,null),c=!0},p(v,[y]){const I=y&258?lt(d,[{floorIndex:v[1],floorplanData:v[8]}]):{};e.$set(I),v[2]||v[3]?u?(u.p(v,y),y&12&&M(u,1)):(u=kl(v),u.c(),M(u,1),u.m(t,s)):u&&(de(),j(u,1,1,()=>{u=null}),he());const k=y&258?lt(m,[{floorplanData:v[8],floorIndex:v[1]}]):{};o.$set(k),v[4]?p?(p.p(v,y),y&16&&M(p,1)):(p=Ml(v),p.c(),M(p,1),p.m(t,a)):p&&(de(),j(p,1,1,()=>{p=null}),he()),v[7]?g?(g.p(v,y),y&128&&M(g,1)):(g=xl(v),g.c(),M(g,1),g.m(t,null)):g&&(de(),j(g,1,1,()=>{g=null}),he()),(!c||y&1&&l!==(l=Re(`floorplan-plugin__floor${v[0]?" floorplan-plugin__floor--is-current":""}`)+" svelte-bl8zrz"))&&w(t,"class",l)},i(v){c||(M(e.$$.fragment,v),M(u),M(o.$$.fragment,v),M(p),M(g),c=!0)},o(v){j(e.$$.fragment,v),j(u),j(o.$$.fragment,v),j(p),j(g),c=!1},d(v){v&&O(t),ne(e),u&&u.d(),ne(o),p&&p.d(),g&&g.d()}}}function vp(i,t,e){let{isCurrent:n}=t,{floorIndex:s}=t,{highlightEnable:o}=t,{hoverEnable:r}=t,{roomLabelsEnable:a}=t,{roomAreaEnable:l}=t,{roomNameEnable:c}=t,{ruleLabelsEnable:d}=t,{floorplanData:h}=t,{getRoomAreaText:u}=t,{getLabelElement:m}=t,{getRuleDistanceText:A}=t,{adaptiveRoomLabelVisibleEnable:p}=t,{highlightData:g}=t;const v=Pa(void 0);return i.$$set=y=>{"isCurrent"in y&&e(0,n=y.isCurrent),"floorIndex"in y&&e(1,s=y.floorIndex),"highlightEnable"in y&&e(2,o=y.highlightEnable),"hoverEnable"in y&&e(3,r=y.hoverEnable),"roomLabelsEnable"in y&&e(4,a=y.roomLabelsEnable),"roomAreaEnable"in y&&e(5,l=y.roomAreaEnable),"roomNameEnable"in y&&e(6,c=y.roomNameEnable),"ruleLabelsEnable"in y&&e(7,d=y.ruleLabelsEnable),"floorplanData"in y&&e(8,h=y.floorplanData),"getRoomAreaText"in y&&e(9,u=y.getRoomAreaText),"getLabelElement"in y&&e(10,m=y.getLabelElement),"getRuleDistanceText"in y&&e(11,A=y.getRuleDistanceText),"adaptiveRoomLabelVisibleEnable"in y&&e(12,p=y.adaptiveRoomLabelVisibleEnable),"highlightData"in y&&e(13,g=y.highlightData)},[n,s,o,r,a,l,c,d,h,u,m,A,p,g,v]}let bp=class extends le{constructor(t){super(),ae(this,t,vp,Ap,oe,{isCurrent:0,floorIndex:1,highlightEnable:2,hoverEnable:3,roomLabelsEnable:4,roomAreaEnable:5,roomNameEnable:6,ruleLabelsEnable:7,floorplanData:8,getRoomAreaText:9,getLabelElement:10,getRuleDistanceText:11,adaptiveRoomLabelVisibleEnable:12,highlightData:13},pp)}};function yp(i){ue(i,"svelte-86bqav",".floorplan-main.svelte-86bqav{width:100%;height:100%;pointer-events:none}")}function Dl(i,t,e){const n=i.slice();return n[21]=t[e],n}function Sl(i){let t,e,n,s,o,r=i[13].floorDatas,a=[];for(let h=0;h<r.length;h+=1)a[h]=Tl(Dl(i,r,h));const l=h=>j(a[h],1,1,()=>{a[h]=null});let c=i[5]&&Ll(i),d=i[8]&&jl(i);return{c(){t=x("div");for(let h=0;h<a.length;h+=1)a[h].c();e=ee(),c&&c.c(),n=ee(),d&&d.c(),w(t,"class","floorplan-main svelte-86bqav")},m(h,u){B(h,t,u);for(let m=0;m<a.length;m+=1)a[m]&&a[m].m(t,null);D(t,e),c&&c.m(t,null),D(t,n),d&&d.m(t,null),o=!0},p(h,u){if(i=h,u&2047696){r=i[13].floorDatas;let m;for(m=0;m<r.length;m+=1){const A=Dl(i,r,m);a[m]?(a[m].p(A,u),M(a[m],1)):(a[m]=Tl(A),a[m].c(),M(a[m],1),a[m].m(t,e))}for(de(),m=r.length;m<a.length;m+=1)l(m);he()}i[5]?c?(c.p(i,u),u&32&&M(c,1)):(c=Ll(i),c.c(),M(c,1),c.m(t,n)):c&&(de(),j(c,1,1,()=>{c=null}),he()),i[8]?d?(d.p(i,u),u&256&&M(d,1)):(d=jl(i),d.c(),M(d,1),d.m(t,null)):d&&(de(),j(d,1,1,()=>{d=null}),he())},i(h){if(!o){for(let u=0;u<r.length;u+=1)M(a[u]);M(c),M(d),s||Ne(()=>{s=On(t,tt,{duration:i[0],easing:en}),s.start()}),o=!0}},o(h){a=a.filter(Boolean);for(let u=0;u<a.length;u+=1)j(a[u]);j(c),j(d),o=!1},d(h){h&&O(t),Tt(a,h),c&&c.d(),d&&d.d()}}}function Tl(i){let t,e;const n=[{hoverEnable:i[6],highlightEnable:i[7],floorplanData:i[13],getRoomAreaText:i[16],getLabelElement:i[17],getRuleDistanceText:i[18],roomLabelsEnable:i[9],roomAreaEnable:i[10],roomNameEnable:i[11],ruleLabelsEnable:i[12],adaptiveRoomLabelVisibleEnable:i[19],highlightData:i[20]},{floorIndex:i[21].floorIndex},{isCurrent:i[21].floorIndex===i[4]}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new bp({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&2047696?lt(n,[r&2047680&&{hoverEnable:o[6],highlightEnable:o[7],floorplanData:o[13],getRoomAreaText:o[16],getLabelElement:o[17],getRuleDistanceText:o[18],roomLabelsEnable:o[9],roomAreaEnable:o[10],roomNameEnable:o[11],ruleLabelsEnable:o[12],adaptiveRoomLabelVisibleEnable:o[19],highlightData:o[20]},r&8192&&{floorIndex:o[21].floorIndex},r&8208&&{isCurrent:o[21].floorIndex===o[4]}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function Ll(i){let t,e;const n=[{panoIndex:i[3],floorplanData:i[13],lastPanoramaLongitude:i[14],cameraImageUrl:i[15]}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new sg({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&57352?lt(n,[{panoIndex:o[3],floorplanData:o[13],lastPanoramaLongitude:o[14],cameraImageUrl:o[15]}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function jl(i){let t,e;return t=new hg({props:{floorplanData:i[13],northDesc:i[2]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&8192&&(o.floorplanData=n[13]),s&4&&(o.northDesc=n[2]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function wp(i){let t,e,n=i[1]&&Sl(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[1]?n?(n.p(s,o),o&2&&M(n,1)):(n=Sl(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function Cp(i,t,e){let{duration:n=0}=t,{visible:s}=t,{northDesc:o}=t,{panoIndex:r}=t,{floorIndex:a}=t,{cameraEnable:l}=t,{hoverEnable:c}=t,{highlightEnable:d}=t,{compassEnable:h}=t,{roomLabelsEnable:u}=t,{roomAreaEnable:m}=t,{roomNameEnable:A}=t,{ruleLabelsEnable:p}=t,{floorplanData:g}=t,{lastPanoramaLongitude:v}=t,{cameraImageUrl:y}=t,{getRoomAreaText:I}=t,{getLabelElement:k}=t,{getRuleDistanceText:T}=t,{adaptiveRoomLabelVisibleEnable:P}=t,{highlightData:V}=t;return i.$$set=L=>{"duration"in L&&e(0,n=L.duration),"visible"in L&&e(1,s=L.visible),"northDesc"in L&&e(2,o=L.northDesc),"panoIndex"in L&&e(3,r=L.panoIndex),"floorIndex"in L&&e(4,a=L.floorIndex),"cameraEnable"in L&&e(5,l=L.cameraEnable),"hoverEnable"in L&&e(6,c=L.hoverEnable),"highlightEnable"in L&&e(7,d=L.highlightEnable),"compassEnable"in L&&e(8,h=L.compassEnable),"roomLabelsEnable"in L&&e(9,u=L.roomLabelsEnable),"roomAreaEnable"in L&&e(10,m=L.roomAreaEnable),"roomNameEnable"in L&&e(11,A=L.roomNameEnable),"ruleLabelsEnable"in L&&e(12,p=L.ruleLabelsEnable),"floorplanData"in L&&e(13,g=L.floorplanData),"lastPanoramaLongitude"in L&&e(14,v=L.lastPanoramaLongitude),"cameraImageUrl"in L&&e(15,y=L.cameraImageUrl),"getRoomAreaText"in L&&e(16,I=L.getRoomAreaText),"getLabelElement"in L&&e(17,k=L.getLabelElement),"getRuleDistanceText"in L&&e(18,T=L.getRuleDistanceText),"adaptiveRoomLabelVisibleEnable"in L&&e(19,P=L.adaptiveRoomLabelVisibleEnable),"highlightData"in L&&e(20,V=L.highlightData)},[n,s,o,r,a,l,c,d,h,u,m,A,p,g,v,y,I,k,T,P,V]}let Ea=class extends le{constructor(t){super(),ae(this,t,Cp,wp,oe,{duration:0,visible:1,northDesc:2,panoIndex:3,floorIndex:4,cameraEnable:5,hoverEnable:6,highlightEnable:7,compassEnable:8,roomLabelsEnable:9,roomAreaEnable:10,roomNameEnable:11,ruleLabelsEnable:12,floorplanData:13,lastPanoramaLongitude:14,cameraImageUrl:15,getRoomAreaText:16,getLabelElement:17,getRuleDistanceText:18,adaptiveRoomLabelVisibleEnable:19,highlightData:20},yp)}};const Ip="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAwCAYAAACFUvPfAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAALaADAAQAAAABAAAAMAAAAADe2FZjAAAEF0lEQVRoBe2WzWskRRiHf13V092TxI2oEzYeVDwITtyDuCiihwiCePGgxIM3vYgHL4J4UIhBRA8i/gPqyUvWg7AiIuIeloDiYUHJLOK6BPwIk9nNODM9Xf1RVe1b3elJRjCZmQ6euqGmuqer33rq4e23GqiOykBloDJQGagMVAYqA5WBykBlYFYD1qwP/tdzaZqOx9zYOLxeX0+L5yzLGp0X/03a25MOnGRcBtx+6Rlo9SL08G4EooFnxa8Yiivox5/h5Ys/4cl7NVorNDRnngX+0MIkVMeMSf23zyKML8J7/Dy8hwF2Buh9CnS+AEQIdLspBuGb+M7/qLW4qJrNpsLapjYhpwVnx3BMfCtNNx3Etc9xywvnMf80wG8HmQainw0RxSGrnmeBp+8k5/j9S0HbvXb5io0Lz880/0wPHV1NlhLd316He+4xOCv5ragF7L9PrH1qBJyB0626x/lC+qrSvH5r/W+n1WpxUM5nMY4GPeH8lHJaPgfeAFQHCL+ntkXT+vnUc3W6pvTIwC0wy3rA4dwLmK2avZ7Eo9uKBuYJfgJscbs8dLCxDMt+EOEPBEZNEWyBYHqTz6bPXrzUnNrSShxHIsYiOL69zrCGLLcLqJP68tB+9w5wj+YhWDafQ2s61wNqxjZhmrQ2pvMFCEvXuCUZ7wqH794ZWs28LJqlTXSUyuksF2M/yOwqgkx2c1ADa4wLAQRk2sAGQQakhN6yFC2hltfz5kSY44NKQeeh+vtI/SSzWhg2CzCgmWISmKUGmaYFBDfCSymnfxJ6/+ospVcWOLLp5DGP/y0P/Rp66O99DQNq7Po3Ds0a0wY+My2QSv2N2mO/OyxR2o6UQk+Lv7yJ06JYSnnolZVU9cUn2O9SmaMWGFBqYXRwbqAJWIi94TX5biotpcGl1DXZ6LnqIbNDTnmUgi52Mv5l5ysMxIcZcGjy2DTK4ZHlcBC14zeSge4qphICjj3bS0A7o9nSp2TOkm7aZ8bGZy/jxhO87V91G0+dfY/Z7BWIIK9KYUi5qy/Hf8YfBG3sqJTHiQWhmTVkbip+wX3x6volVSx+LPAxF+VLXhZ8VQ+iP2Rta/iWe5v42Fngj0BbdnRTXh12ZIcKhTaGbcYjybRwXBU1lu9KlndXp04NM52poKWO0RZsviNaP9a6grkO972+st05pXhE5c1hTEluJy7XUejGUQNLMbAmTdWY1rKBLW3aTJqBZ7nZkb36DhYCreeYHbMUXHvaYi5XDK70EcgulmRjm77wNtenzuXCbmnTRaAx493rbGf3Jr/njMzj920CnKdUaFCjlDioy7NYNvOdGrQJNgI32/L2tkXfFPlxgToqjWVhD6KdLnQRdARf/HHQz2r2X2Gqy8pAZaAyUBmoDFQGKgP/q4F/AJYg9/s0ZoABAAAAAElFTkSuQmCC";function Pp(i){return U(this,null,function*(){const t=new Headers({"Content-Type":"text/plain"}),e=function(s){return U(this,null,function*(){const o={index:s.index,url:s.url,svgUrl:s.svg_url};if(s.svg_url){const r=yield fetch(s.svg_url,{headers:t}).then(a=>a.text());o.svgContent=r}return o})};return yield Promise.all(i.map(e))})}function Ep(i){return{id:i.id,size:i.size,name:i.name,path:i.path,roomType:i.room_type,floorType:i.floor_type,roomLabel:{position:i.room_label.position,positionInImage:i.room_label.position_in_image},observerIndexs:i.observer_indexs}}function kp(i){return{floorName:i.floor_name,floorIndex:i.floor_index,rooms:i.rooms.map(Ep),rules:i.rules}}function Mp(i){return{index:i.index,floorIndex:i.floor_index,position:i.position,positionInImage:i.position_in_image}}function xp(i){return{rad:i.rad,position:i.position,positionInImage:i.position_in_image,northRad:i.north_rad,roomId:i.room_id,floorIndex:i.floor_index}}function gn(i){return U(this,null,function*(){const t=yield Pp(i.outlines),e=i.computed_data.bounding,n=i.computed_data.floor_datas.map(kp),s=i.computed_data.entrance?xp(i.computed_data.entrance):null;return{outlines:t,entrance:s,bounding:e,floorDatas:n,observers:i.computed_data.observers.map(Mp)}})}function Dp(i,t,e){return i.map(s=>{const o=s.position,r=s.icon?s.icon:{url:Ip,width:45,height:48},a=Yg(o,t),l=Wg(o,e),c=Fg(l,e);return{floorIndex:a,icon:r,id:s.id,position:l,positionInImage:c}})}function Sp(i,t){return t(i),i}function Po(i,t){return Sp({},e=>{for(const n in i)t.indexOf(n)===-1&&(e[n]=i[n])})}function zl(i,t){const e=Math.max(...i.work.observers.map(n=>n.floorIndex));return t>e?i.model.bounding.max.y:Math.max(...i.work.observers.filter(n=>n.floorIndex===t).map(n=>n.standingPosition.y))}function ka(i,t,e=hn.BOUNDING_CENTER){const n=zl(i,t),s=zl(i,t+1);return e===hn.BOUNDING_CENTER?(i.model.bounding.max.y+i.model.bounding.min.y)/2:e===hn.CEILING?s:n}function Ma(i,t,e,n){const s=ka(i,e,n==null?void 0:n.attachedTo),o=new E.Vector3(0,s,0),r=new E.Vector3(1,s,0),a=o.clone().project(i.camera),l=r.clone().project(i.camera);return Math.abs((l.x-a.x)/1e3)*(t.getBoundingClientRect().width/2)}let rs=class{constructor(t,e){f(this,"VERSION","2.22.0-dev.7");f(this,"five");f(this,"hooks",new pi);f(this,"staticPrefix","//vr-image-4.realsee-cdn.cn");this.five=t,e!=null&&e.staticPrefix&&(this.staticPrefix=e.staticPrefix)}getCurrentState(){return this.state}absoluteUrl(t){return ha(this.staticPrefix,t)}},Bn=class extends rs{};var wt=(i=>(i.UnknownError="UnknownError",i.DataNotLoaded="DataNotLoaded",i.BreakOffByHide="BreakOffByHide",i.BreakOffByDisable="BreakOffByDisable",i.ModelNotLoaded="ModelNotLoaded",i.ChangeModeError="ChangeModeError",i.UpdateCameraError="UpdateCameraError",i))(wt||{});const Fh=500,Tp=80;function Xr(i,t,e=4){return Math.floor(i*Math.pow(10,e))===Math.floor(t*Math.pow(10,e))}function xa(i,t){return U(this,null,function*(){const[e]=yield di(i.changeMode(...t));if(e)throw new Error("change mode canceled");yield new Promise(r=>{i.once("initAnimationWillStart",()=>{i.once("initAnimationEnded",()=>r())})});const n=t[1];if(!n)return!0;const s=i.getCurrentState();if(!Lp(n,s))throw new Error("pose 与预期不符")})}function Lp(i,t){return Object.keys(i).every(e=>{const n=t[e];if(n===void 0)return!0;const s=i[e];return typeof n=="number"&&typeof s=="number"?Xr(n,s,2):n===s})}function Da(i,t){if(i.currentMode!==t.mode)return!1;const{latitude:e,longitude:n,fov:s}=t,{latitude:o,longitude:r}=i.getCurrentState(),a=i.camera.fov;return!(!Xr(e,o,2)||!Xr(n,r,2)||s!==a)}function Yh(i,t,e=!0){return U(this,null,function*(){if(Da(i,t)===!0)return;const s=i.getCurrentState();if(s.mode!==t.mode){const[d]=yield di(xa(i,[t.mode,t,void 0,e]));if(d)throw new Error(wt.ChangeModeError);return}const{latitude:o,longitude:r,fov:a}=s,l=Math.min(1e3,Math.max(200,Math.abs(o-Math.PI/2)*1e3,(r>Math.PI?2*Math.PI-r:r)*500,Math.abs(a-t.fov)*10)),[c]=yield di(i.updateCamera(t,l,e));if(c)throw new Error(wt.UpdateCameraError)})}function ui(i,t,e=300){const n=i.getElement();n&&(n.style.opacity=t+"",n.style.transition=e===0?"none":`opacity ${e}ms linear`,e!==0&&Promise.race([new Promise(s=>n.addEventListener("transitionend",s,{once:!0})),new Promise(s=>setTimeout(s,e))]).then(()=>{n.style.transition="none"}))}function jp(i){const{latitude:t,longitude:e}=i,n=Math.abs(t-Math.PI/2)>5*Math.PI/180,s=e>5*(Math.PI/180)&&e<355*(Math.PI/180);return n||s}function zp(i){const{latitude:t,longitude:e}=i,n=Math.abs(t-Math.PI/2)<10*Math.PI/180,s=e<30*(Math.PI/180)||e>330*(Math.PI/180);return n&&s}let Op=class extends Bn{constructor(e,n){var a;super(e);f(this,"name","modelFloorplanPlugin");f(this,"state");f(this,"data");f(this,"showState");f(this,"showPromise");f(this,"app");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"selector");f(this,"showRejection");f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"dispose",()=>{var e,n;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(n=this.container)==null||n.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"show",(...n)=>U(this,[...n],function*(e={}){if(!this.state.enabled||!this.showPromise&&this.state.visible)return;const s=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},s),this._show(e)}));f(this,"hide",(...n)=>U(this,[...n],function*(e={}){this.state.enabled&&(this.isHiddenByHideFunc=!0,this.state.visible!==!1&&(this.updateState({visible:!1},e.userAction||!0),this._hide(e)))}));f(this,"updateSize",()=>{if(!this.data||!Da(this.five,this.showState)||!this.container||!this.wrapper)return;const{min:e,max:n}=this.data.bounding,s=n.x-e.x,o=n.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=Ma(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o,r;const{userAction:n}=e;this.hooks.emit("disable",{userAction:n}),(s=this.showRejection)==null||s.call(this,wt.BreakOffByDisable),this.showPromise=void 0,(o=this.app)==null||o.$destroy(),this.app=void 0,(r=this.container)==null||r.remove(),this.removeEventListener()});f(this,"_enable",e=>{const{userAction:n}=e;this.addEventListener(),this.wrapper&&(this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:n}),this.state.visible&&this._show({userAction:n}))});f(this,"_show",e=>U(this,null,function*(){var r;if(!this.state.enabled)return;if(!((r=this.five.model)!=null&&r.loaded))throw new Error(wt.ModelNotLoaded);if(!this.data)throw new Error(wt.DataNotLoaded);this.isHiddenByHideFunc=!1;const n={floorIndex:this.floorIndex,modelOpacity:this.state.config.modelOpacity,immediately:!1,isAutoShow:!1,userAction:!0},s=H(H({},n),e),o=()=>U(this,null,function*(){this.hooks.emit("show",{userAction:s.userAction,auto:s.isAutoShow});let a=!1,l;this.showRejection=u=>{a=!0,l=u};const[c]=yield di(Yh(this.five,this.showState,s.userAction));if(c)throw c;if(a)throw l?new Error(l):new Error(wt.UnknownError);this.updateSize(),this.floorIndex=s.floorIndex,this.five.model.show(this.floorIndex);const d=s.modelOpacity,h=s.immediately?0:Fh;ui(this.five,d,h),this.render(h)});return this.showPromise=o().then(()=>{this.hooks.emit("showAnimationEnded",{auto:s.isAutoShow,userAction:s.userAction})}).catch(a=>{if(this.updateState({visible:!1},s.userAction),!s.isAutoShow&&a instanceof Error)throw a}).finally(()=>{this.showPromise=void 0,this.showRejection=void 0}),this.showPromise}));f(this,"_hide",e=>{var o;(o=this.showRejection)==null||o.call(this,wt.BreakOffByHide),this.showPromise=void 0;const s=H(H({},{userAction:!0,isAutoHide:!1}),e);ui(this.five,1,0),this.hooks.emit("hide",{auto:s.isAutoHide,userAction:s.userAction}),this.render()});f(this,"handleClick",()=>{if(!this.state.visible)return;if(this.hooks.emit("click"))return!1});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",e=>{e!==this.showState.mode&&(this.updateState({visible:!1},!1),this._hide({userAction:!1}))});f(this,"onFiveInteriaPan",(e,n)=>{if(!n||this.state.config.autoShowEnable===!1||this.isHiddenByHideFunc)return;const s=this.five.getCurrentState();s.mode==="Floorplan"&&(this.state.visible||zp(s)&&(this.updateState({visible:!0},!0),this._show({isAutoShow:!0})))});f(this,"onFivePanoArrived",e=>{var n;(n=this.five)!=null&&n.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,n)=>{if(!this.state.visible||this.showPromise)return;const s=this.five.getCurrentState();jp(s)&&(this.updateState({visible:!1},n),this._hide({userAction:n,isAutoHide:!0}))});f(this,"onFiveWantsGesture",(e,n)=>{if(this.state.visible&&(n.length>1||e==="mouseWheel"))return!1});f(this,"onFiveWantsPanGesture",(e,n)=>{if(this.five.getCurrentState().mode==="Floorplan"&&this.state.config.autoShowEnable!==!1&&n&&this.state.visible)return this.five.updateCamera(this.showState,0),!1});f(this,"onFiveWantsTapGesture",()=>this.handleClick());f(this,"onFiveWantsChangeMode",(e,n)=>{n==="Panorama"&&e==="Floorplan"&&(this.lastPanoramaLongitude=this.five.getCurrentState().longitude)});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const n=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[n].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});n!=null&&n.selector&&(this.selector=n.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法")),this.showState={mode:"Floorplan",longitude:0,latitude:Math.PI/2,fov:Tp/((a=n==null?void 0:n.scale)!=null?a:1)};const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,highlightEnable:!1,hoverEnable:!0,compassEnable:!0,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,adaptiveRoomLabelVisibleEnable:!0,cameraImageUrl:mn,attachedTo:hn.BOUNDING_CENTER,getLabelElement:void 0,getRoomAreaText:l=>(l/1e6).toFixed(1)+"㎡",getRuleDistanceText:l=>l.toString()},o=n?Po(n,["selector","scale"]):{},r=H(H({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,n,s=!0){return U(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gn(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),n&&this.updateState(n,s),this.render()})}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}enable(e={}){if(this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||n),this._enable({userAction:n})}disable(e={}){if(!this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||n),this._disable({userAction:n})}setState(e,n={}){const s=this.state,o=n.userAction!==void 0?n.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled&&(e.enabled?this._enable({userAction:o}):this._disable({userAction:o})),e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}this.render()}changeConfigs(e,n=!0){this.updateState({config:e},n),this.render()}formatData(e){return U(this,null,function*(){return yield gn(e.data)})}updateState(e,n){const s=this.state,o=e.config?H(H({},s.config),e.config):s.config;this.state=Ae(H(H({},this.state),e),{config:o}),!Gt(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:n})}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",zIndex:10,pointerEvents:"none"}),this.five.addExtraElement(this.container)}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("interiaPan",this.onFiveInteriaPan),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsGesture",this.onFiveWantsGesture),e.on("wantsPanGesture",this.onFiveWantsPanGesture),e.on("wantsTapGesture",this.onFiveWantsTapGesture),e.on("wantsChangeMode",this.onFiveWantsChangeMode),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modelLoaded",this.onFiveModelLoaded),e.off("modeChange",this.onFiveModeChange),e.off("interiaPan",this.onFiveInteriaPan),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsGesture",this.onFiveWantsGesture),e.off("wantsPanGesture",this.onFiveWantsPanGesture),e.off("wantsTapGesture",this.onFiveWantsTapGesture),e.off("wantsChangeMode",this.onFiveWantsChangeMode),e.off("modelShownFloorChange",this.onModelShownFloorChange)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0)return;const n=Ae(H({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(n);this.app=new Ea({target:this.container,intro:!0,props:n})}};const Bp=(i,t)=>new Op(i,t);function Vp(i){const{latitude:t,longitude:e}=i,n=Math.abs(t-Math.PI/2)>5*Math.PI/180,s=e>5*(Math.PI/180)&&e<355*(Math.PI/180);return n||s}function Rp(i){const{latitude:t,longitude:e}=i,n=Math.abs(t-Math.PI/2)<10*Math.PI/180,s=e<30*(Math.PI/180)||e>330*(Math.PI/180);return n&&s}let Qp=class extends Bn{constructor(e,n){super(e);f(this,"name","modelFloorplanPlugin");f(this,"state");f(this,"data");f(this,"showState");f(this,"showPromise");f(this,"app");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"selector");f(this,"showRejection");f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"dispose",()=>{var e,n;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(n=this.container)==null||n.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"show",(...n)=>U(this,[...n],function*(e={}){if(!this.state.enabled||!this.showPromise&&this.state.visible)return;const s=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},s),this._show(e)}));f(this,"hide",(...n)=>U(this,[...n],function*(e={}){this.state.enabled&&(this.isHiddenByHideFunc=!0,this.state.visible!==!1&&(this.updateState({visible:!1},e.userAction||!0),this._hide(e)))}));f(this,"updateSize",()=>{if(!this.data||!Da(this.five,this.showState)||!this.container||!this.wrapper)return;const{min:e,max:n}=this.data.bounding,s=n.x-e.x,o=n.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=Ma(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o,r;const{userAction:n}=e;this.hooks.emit("disable",{userAction:n}),(s=this.showRejection)==null||s.call(this,wt.BreakOffByDisable),this.showPromise=void 0,(o=this.app)==null||o.$destroy(),this.app=void 0,(r=this.container)==null||r.remove(),this.removeEventListener()});f(this,"_enable",e=>{const{userAction:n}=e;this.addEventListener(),this.wrapper&&(this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:n}),this.state.visible&&this._show({userAction:n}))});f(this,"_show",e=>U(this,null,function*(){var r;if(!this.state.enabled)return;if(!((r=this.five.model)!=null&&r.loaded))throw new Error(wt.ModelNotLoaded);if(!this.data)throw new Error(wt.DataNotLoaded);this.isHiddenByHideFunc=!1;const n={floorIndex:this.floorIndex,modelOpacity:this.state.config.modelOpacity,immediately:!1,isAutoShow:!1,userAction:!0},s=H(H({},n),e),o=()=>U(this,null,function*(){this.hooks.emit("show",{userAction:s.userAction,auto:s.isAutoShow});let a=!1,l;this.showRejection=u=>{a=!0,l=u};const[c]=yield di(Yh(this.five,this.showState,s.userAction));if(c)throw c;if(a)throw l?new Error(l):new Error(wt.UnknownError);this.updateSize(),this.updatePosition(),this.floorIndex=s.floorIndex,this.five.model.show(this.floorIndex);const d=s.modelOpacity,h=s.immediately?0:Fh;ui(this.five,d,h),this.render(h)});return this.showPromise=o().then(()=>{this.hooks.emit("showAnimationEnded",{auto:s.isAutoShow,userAction:s.userAction})}).catch(a=>{if(this.updateState({visible:!1},s.userAction),!s.isAutoShow&&a instanceof Error)throw a}).finally(()=>{this.showPromise=void 0,this.showRejection=void 0}),this.showPromise}));f(this,"_hide",e=>{var o;(o=this.showRejection)==null||o.call(this,wt.BreakOffByHide),this.showPromise=void 0;const s=H(H({},{userAction:!0,isAutoHide:!1}),e);ui(this.five,1,0),this.hooks.emit("hide",{auto:s.isAutoHide,userAction:s.userAction}),this.render()});f(this,"handleClick",()=>{if(!this.state.visible)return;if(this.hooks.emit("click"))return!1});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",e=>{e!==this.showState.mode&&(this.updateState({visible:!1},!1),this._hide({userAction:!1}))});f(this,"onFivePanoArrived",e=>{var n;(n=this.five)!=null&&n.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,n)=>{if(!this.state.visible||this.showPromise)return;const s=this.five.getCurrentState();this.updatePosition(),this.updateSize(),Vp(s)&&(this.updateState({visible:!1},n),this._hide({userAction:n}))});f(this,"onFiveWantsPanGesture",(e,n)=>{if(this.five.getCurrentState().mode===this.showState.mode&&this.state.config.autoShowEnable!==!1){if(n&&this.state.visible)return this.five.updateCamera(this.showState,0),!1;if(n&&!this.state.visible){if(this.isHiddenByHideFunc)return;const s=this.five.getCurrentState();return s.mode!==this.showState.mode||this.state.visible?void 0:(Rp(s)&&(this.updateState({visible:!0},!0),this._show({isAutoShow:!0})),!1)}}});f(this,"onFiveWantsTapGesture",()=>this.handleClick());f(this,"onFiveWantsChangeMode",(e,n)=>{n==="Panorama"&&e===this.showState.mode&&(this.lastPanoramaLongitude=this.five.getCurrentState().longitude)});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const n=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[n].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});n!=null&&n.selector&&(this.selector=n.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法")),this.showState={mode:"Mapview",longitude:0,latitude:Math.PI/2,fov:90};const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,highlightEnable:!1,hoverEnable:!0,compassEnable:!0,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,cameraImageUrl:mn,attachedTo:hn.BOUNDING_CENTER,getLabelElement:void 0,adaptiveRoomLabelVisibleEnable:!0,getRoomAreaText:a=>(a/1e6).toFixed(1)+"㎡",getRuleDistanceText:a=>a.toString()},o=n?Po(n,["selector","scale"]):{},r=H(H({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,n,s=!0){return U(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gn(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),n&&this.updateState(n,s),this.render()})}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}enable(e={}){if(this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||n),this._enable({userAction:n})}disable(e={}){if(!this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||n),this._disable({userAction:n})}setState(e,n={}){const s=this.state,o=n.userAction!==void 0?n.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled&&(e.enabled?this._enable({userAction:o}):this._disable({userAction:o})),e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}changeConfigs(e,n=!0){this.updateState({config:e},n),this.render()}updatePosition(){var a;const e=ka(this.five,this.floorIndex,this.state.config.attachedTo),n=(a=this.five.model)==null?void 0:a.bounding.getCenter(new E.Vector3).setY(e);if(!n)return;const s=n.clone().project(this.five.camera),o=(s.x+1)/2,r=-(s.y-1)/2;this.container.style.left=o*100+"%",this.container.style.top=r*100+"%"}formatData(e){return U(this,null,function*(){return yield gn(e.data)})}updateState(e,n){const s=this.state,o=e.config?H(H({},s.config),e.config):s.config;this.state=Ae(H(H({},this.state),e),{config:o}),!Gt(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:n})}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",zIndex:10,pointerEvents:"none"}),this.five.addExtraElement(this.container)}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsPanGesture",this.onFiveWantsPanGesture),e.on("wantsTapGesture",this.onFiveWantsTapGesture),e.on("wantsChangeMode",this.onFiveWantsChangeMode),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modelLoaded",this.onFiveModelLoaded),e.off("modeChange",this.onFiveModeChange),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsPanGesture",this.onFiveWantsPanGesture),e.off("wantsTapGesture",this.onFiveWantsTapGesture),e.off("wantsChangeMode",this.onFiveWantsChangeMode),e.off("modelShownFloorChange",this.onModelShownFloorChange)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0)return;const n=Ae(H({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(n);this.app=new Ea({target:this.container,intro:!0,props:n})}};const Gp=(i,t)=>new Qp(i,t);let Np=class extends Bn{constructor(e,n){super(e);f(this,"name","topviewFloorplanPlugin");f(this,"state");f(this,"data");f(this,"app");f(this,"selector");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"updateSize",()=>{if(!this.data||!this.container||!this.wrapper||this.five.getCurrentState().mode!=="Topview")return;const{min:e,max:n}=this.data.bounding,s=n.x-e.x,o=n.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=Ma(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"dispose",()=>{var e,n;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(n=this.container)==null||n.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o;const{userAction:n}=e;(s=this.app)==null||s.$destroy(),this.app=void 0,(o=this.container)==null||o.remove(),this.removeEventListener(),this.hooks.emit("disable",{userAction:n})});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",(...[e,,,,n])=>{e!=="Topview"&&this.state.visible&&(this.updateState({visible:!1},n),this._hide({userAction:n}))});f(this,"onFivePanoArrived",e=>{var n;(n=this.five)!=null&&n.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,n)=>{this.state.visible&&(this.updatePosition(),this.updateSize())});f(this,"onFiveWantsGesture",e=>{if(!(e!=="pan"&&e!=="pinch"&&e!=="mouseWheel")&&this.state.visible&&!this.state.config.gestureEnable)return!1});f(this,"onFiveWantsMoveToPano",()=>{if(this.state.visible&&this.state.config.preventRoomClick)return!1});f(this,"onFiveInitAnimationEnded",(...[,,e])=>{const{mode:n}=this.five.getCurrentState();n==="Topview"&&!this.isHiddenByHideFunc&&!this.state.visible&&this.state.config.autoShowEnable&&(this.updateState({visible:!0},e),this._show({userAction:e}))});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const n=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[n].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});n!=null&&n.selector&&(this.selector=n.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法"));const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,hoverEnable:!0,highlightEnable:!1,compassEnable:!0,gestureEnable:!1,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,cameraImageUrl:mn,attachedTo:hn.BOUNDING_CENTER,getLabelElement:void 0,adaptiveRoomLabelVisibleEnable:!0,getRoomAreaText:a=>(a/1e6).toFixed(1)+"㎡",getRuleDistanceText:a=>a.toString()},o=n?Po(n,["selector","scale"]):{},r=H(H({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,n,s=!0){return U(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gn(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),n&&this.updateState(n,s),this.render()})}updatePosition(){var a;const e=ka(this.five,this.floorIndex,this.state.config.attachedTo),n=(a=this.five.model)==null?void 0:a.bounding.getCenter(new E.Vector3).setY(e);if(!n)return;const s=n.clone().project(this.five.camera),o=(s.x+1)/2,r=-(s.y-1)/2;this.container.style.left=o*100+"%",this.container.style.top=r*100+"%"}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}show(){return U(this,arguments,function*(e={}){if(this.state.visible)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},n),this._show({userAction:n})})}hide(){return U(this,arguments,function*(e={}){if(this.isHiddenByHideFunc=!0,!this.state.visible)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!1},n),this._hide({userAction:n})})}enable(e={}){if(this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||n),this._enable({userAction:n})}disable(e={}){if(!this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||n),this._disable({userAction:n})}setState(e,n={}){const s=this.state,o=n.userAction!==void 0?n.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled){const r={userAction:o};e.enabled?this._enable(r):this._disable(r)}if(e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}changeConfigs(e,n=!0){this.updateState({config:e},n),this.render()}formatData(e){return U(this,null,function*(){return yield gn(e.data)})}_show(e){return U(this,null,function*(){if(!this.state.enabled)return;this.isHiddenByHideFunc=!1;const{userAction:n}=e;this.hooks.emit("show",{userAction:n,auto:!1}),this.five.getCurrentState().mode!=="Topview"&&(yield xa(this.five,["Topview",void 0,void 0,n])),this.five.model.show(this.floorIndex),this.updatePosition(),this.updateSize();const s=500,o=this.state.config.modelOpacity;ui(this.five,o,s),this.hooks.emit("showAnimationEnded",{userAction:n,auto:!1}),this.render()})}_hide(e){return U(this,null,function*(){if(!this.state.enabled)return;const{userAction:n}=e;this.hooks.emit("hide",{userAction:n,auto:!1});const s=1,o=0;ui(this.five,s,o),this.render()})}_enable(e){const{userAction:n}=e;this.addEventListener(),this.wrapper&&this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:n}),this.state.visible&&this._show({userAction:n})}updateState(e,n){const s=this.state,o=e.config?H(H({},s.config),e.config):s.config;this.state=Ae(H(H({},this.state),e),{config:o}),!Gt(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:n})}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsGesture",this.onFiveWantsGesture),e.on("wantsMoveToPano",this.onFiveWantsMoveToPano),e.on("initAnimationEnded",this.onFiveInitAnimationEnded),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modeChange",this.onFiveModeChange),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsGesture",this.onFiveWantsGesture),e.off("wantsMoveToPano",this.onFiveWantsMoveToPano),e.off("initAnimationEnded",this.onFiveInitAnimationEnded),e.off("modelShownFloorChange",this.onModelShownFloorChange)}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate3d(-50%, -50%, 10px)",zIndex:10,pointerEvents:"none","will-change":"width, height"}),this.five.addExtraElement(this.container)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0)return;const n=Ae(H({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(n);this.app=new Ea({target:this.container,intro:!0,props:n})}};const Hp=(i,t)=>new Np(i,t);function Sa(i,t=200){let e;return function(...n){e||(i(...n),e=setTimeout(function(){e=null},t))}}function _p(i){ue(i,"svelte-1nqrlxd",".plugin-radar__camera-wrapper.svelte-1nqrlxd{width:100%;height:100%;position:absolute;pointer-events:none}.plugin-radar__camera-position.svelte-1nqrlxd{position:absolute;left:0;top:0;width:0;height:0;transform:none;pointer-events:none;transition:transform 1s linear}.plugin-radar__camera-rotate.svelte-1nqrlxd{position:absolute;left:-0.9375rem;top:-0.9375rem;width:1.0625rem;height:1.0625rem;transform-origin:0.9375rem 0.9375rem;transform:rotate(45deg);background-repeat:no-repeat;background-size:100%}")}function Wp(i){let t,e,n;return{c(){t=x("div"),e=x("div"),n=x("div"),w(n,"class","plugin-radar__camera-rotate svelte-1nqrlxd"),z(n,"background-image","url("+(i[0]||mn)+")"),z(n,"transform",i[1]),w(e,"class","plugin-radar__camera-position svelte-1nqrlxd"),z(e,"transform",i[2]),w(t,"class","plugin-radar__camera-wrapper svelte-1nqrlxd")},m(s,o){B(s,t,o),D(t,e),D(e,n)},p(s,[o]){o&1&&z(n,"background-image","url("+(s[0]||mn)+")"),(o&1||o&3)&&z(n,"transform",s[1]),o&4&&z(e,"transform",s[2])},i:J,o:J,d(s){s&&O(t)}}}function Fp(i){return`rotate(${Math.floor(i/Math.PI*180)*-1+45}deg)`}function Yp(i,t,e){let n,s,{five:o}=t,{pxmm:r}=t,{floorplanData:a}=t,{cameraImageUrl:l}=t,c=o.getCurrentState().panoIndex,d=o.getCurrentState().longitude;function h(A,p){const g=A.bounding,v=A.observers[p];if(!v)return"";const y=(g.max.x-g.min.x)*r,I=(g.max.y-g.min.y)*r,k=Math.floor(v.positionInImage.x*y),T=Math.floor(v.positionInImage.y*I);return`translate(${k}px, ${T}px)`}function u(A){e(6,c=A)}const m=Sa(A=>{e(7,d=A.longitude)},1e3/60);return vt(()=>(o.on("panoWillArrive",u),o.on("cameraDirectionUpdate",m),function(){o.off("panoWillArrive",u),o.off("cameraDirectionUpdate",m)})),i.$$set=A=>{"five"in A&&e(3,o=A.five),"pxmm"in A&&e(4,r=A.pxmm),"floorplanData"in A&&e(5,a=A.floorplanData),"cameraImageUrl"in A&&e(0,l=A.cameraImageUrl)},i.$$.update=()=>{i.$$.dirty&96&&e(2,n=h(a,c)),i.$$.dirty&128&&e(1,s=Fp(d))},[l,s,n,o,r,a,c,d]}class Up extends le{constructor(t){super(),ae(this,t,Yp,Wp,oe,{five:3,pxmm:4,floorplanData:5,cameraImageUrl:0},_p)}}function Xp(i){ue(i,"svelte-1i87fz7",".plugin-pano-floorplan__extra-objects.svelte-1i87fz7{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.plugin-pano-floorplan__extra-object-item--position.svelte-1i87fz7{position:absolute;width:0;height:0}.plugin-pano-floorplan__extra-object-item.svelte-1i87fz7{transform:translate(-50%, -50%)}")}function Ol(i,t,e){const n=i.slice();return n[1]=t[e],n}function Bl(i,t){let e,n,s=`${t[1].icon.width/16}rem`,o=`${t[1].icon.height/16}rem`,r,a=`${t[1].positionInImage.y*100}%`,l=`${t[1].positionInImage.x*100}%`;return{key:i,first:null,c(){e=x("div"),n=x("div"),r=ee(),w(n,"class","plugin-pano-floorplan__extra-object-item svelte-1i87fz7"),z(n,"background-image",`url(${t[1].icon.url})`),z(n,"width",s),z(n,"height",o),w(e,"class","plugin-pano-floorplan__extra-object-item--position svelte-1i87fz7"),z(e,"top",a),z(e,"left",l),this.first=e},m(c,d){B(c,e,d),D(e,n),D(e,r)},p(c,d){t=c,d&1&&z(n,"background-image",`url(${t[1].icon.url})`);const h=d&1;h&&z(n,"width",s),h&&z(n,"height",o),d&1&&a!==(a=`${t[1].positionInImage.y*100}%`)&&z(e,"top",a),d&1&&l!==(l=`${t[1].positionInImage.x*100}%`)&&z(e,"left",l)},d(c){c&&O(e)}}}function Zp(i){let t,e=[],n=new Map,s=i[0];const o=r=>r[1].id;for(let r=0;r<s.length;r+=1){let a=Ol(i,s,r),l=o(a);n.set(l,e[r]=Bl(l,a))}return{c(){t=x("div");for(let r=0;r<e.length;r+=1)e[r].c();w(t,"class","plugin-pano-floorplan__extra-objects svelte-1i87fz7")},m(r,a){B(r,t,a);for(let l=0;l<e.length;l+=1)e[l]&&e[l].m(t,null)},p(r,[a]){a&1&&(s=r[0],e=jt(e,a,o,1,r,s,n,t,wa,Bl,null,Ol))},i:J,o:J,d(r){r&&O(t);for(let a=0;a<e.length;a+=1)e[a].d()}}}function Jp(i,t,e){let{extraObjects:n=[]}=t;return i.$$set=s=>{"extraObjects"in s&&e(0,n=s.extraObjects)},[n]}class qp extends le{constructor(t){super(),ae(this,t,Jp,Zp,oe,{extraObjects:0},Xp)}}function Vl(i){let t,e;const n=[{five:i[0],pxmm:i[1],floorIndex:i[2],floorplanData:i[4],onRoomHeightClick:i[7],highlightData:i[5],hoveredRoom:void 0}];let s={};for(let o=0;o<n.length;o+=1)s=et(s,n[o]);return t=new Wh({props:s}),{c(){ie(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&183?lt(n,[{five:o[0],pxmm:o[1],floorIndex:o[2],floorplanData:o[4],onRoomHeightClick:o[7],highlightData:o[5],hoveredRoom:void 0}]):{};t.$set(a)},i(o){e||(M(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ne(t,o)}}}function Kp(i){let t,e,n,s,o,r;const a=[{floorIndex:i[2],floorplanData:i[4]}];let l={};for(let d=0;d<a.length;d+=1)l=et(l,a[d]);t=new Hh({props:l}),n=new qp({props:{extraObjects:i[6]}});let c=i[3]&&Vl(i);return{c(){ie(t.$$.fragment),e=ee(),ie(n.$$.fragment),s=ee(),c&&c.c(),o=Pe()},m(d,h){te(t,d,h),B(d,e,h),te(n,d,h),B(d,s,h),c&&c.m(d,h),B(d,o,h),r=!0},p(d,[h]){const u=h&20?lt(a,[{floorIndex:d[2],floorplanData:d[4]}]):{};t.$set(u);const m={};h&64&&(m.extraObjects=d[6]),n.$set(m),d[3]?c?(c.p(d,h),h&8&&M(c,1)):(c=Vl(d),c.c(),M(c,1),c.m(o.parentNode,o)):c&&(de(),j(c,1,1,()=>{c=null}),he())},i(d){r||(M(t.$$.fragment,d),M(n.$$.fragment,d),M(c),r=!0)},o(d){j(t.$$.fragment,d),j(n.$$.fragment,d),j(c),r=!1},d(d){ne(t,d),d&&O(e),ne(n,d),d&&O(s),c&&c.d(d),d&&O(o)}}}function $p(i,t,e){let n,{five:s}=t,{pxmm:o}=t,{floorIndex:r}=t,{hoverEnable:a}=t,{floorplanData:l}=t,{extraObjects:c=[]}=t,{highlightData:d}=t;const h=void 0;return i.$$set=u=>{"five"in u&&e(0,s=u.five),"pxmm"in u&&e(1,o=u.pxmm),"floorIndex"in u&&e(2,r=u.floorIndex),"hoverEnable"in u&&e(3,a=u.hoverEnable),"floorplanData"in u&&e(4,l=u.floorplanData),"extraObjects"in u&&e(8,c=u.extraObjects),"highlightData"in u&&e(5,d=u.highlightData)},i.$$.update=()=>{i.$$.dirty&260&&e(6,n=c==null?void 0:c.filter(u=>u.floorIndex===r))},[s,o,r,a,l,d,n,h,c]}class eA extends le{constructor(t){super(),ae(this,t,$p,Kp,oe,{five:0,pxmm:1,floorIndex:2,hoverEnable:3,floorplanData:4,extraObjects:8,highlightData:5})}}function tA(i){ue(i,"svelte-1mvqyqq",".plugin-floorplan-radar.svelte-1mvqyqq{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.plugin-floorplan-radar-container.svelte-1mvqyqq{position:relative}")}function Rl(i){let t,e,n,s,o=i[7]!==0&&Ql(i);return{c(){t=x("div"),o&&o.c(),w(t,"class","plugin-floorplan-radar svelte-1mvqyqq")},m(r,a){B(r,t,a),o&&o.m(t,null),e=!0,n||(s=[$t(Pi.call(null,t)),be(t,"clientWidth",i[13]),be(t,"clientHeight",i[14])],n=!0)},p(r,a){r[7]!==0?o?(o.p(r,a),a&128&&M(o,1)):(o=Ql(r),o.c(),M(o,1),o.m(t,null)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){e||(M(o),e=!0)},o(r){j(o),e=!1},d(r){r&&O(t),o&&o.d(),n=!1,Je(s)}}}function Ql(i){let t,e,n,s,o=`${i[9]}px`,r=`${i[12]}px`,a;const l=[{five:i[0],pxmm:i[10],floorIndex:i[11],floorplanData:i[3],hoverEnable:i[2],extraObjects:i[5],highlightData:i[6]}];let c={};for(let u=0;u<l.length;u+=1)c=et(c,l[u]);e=new eA({props:c});const d=[{pxmm:i[10],five:i[0],floorplanData:i[3],cameraImageUrl:i[4]}];let h={};for(let u=0;u<d.length;u+=1)h=et(h,d[u]);return s=new Up({props:h}),{c(){t=x("div"),ie(e.$$.fragment),n=ee(),ie(s.$$.fragment),w(t,"class","plugin-floorplan-radar-container svelte-1mvqyqq"),z(t,"width",o),z(t,"height",r)},m(u,m){B(u,t,m),te(e,t,null),D(t,n),te(s,t,null),a=!0},p(u,m){const A=m&3181?lt(l,[{five:u[0],pxmm:u[10],floorIndex:u[11],floorplanData:u[3],hoverEnable:u[2],extraObjects:u[5],highlightData:u[6]}]):{};e.$set(A);const p=m&1049?lt(d,[{pxmm:u[10],five:u[0],floorplanData:u[3],cameraImageUrl:u[4]}]):{};s.$set(p),m&512&&o!==(o=`${u[9]}px`)&&z(t,"width",o),m&4096&&r!==(r=`${u[12]}px`)&&z(t,"height",r)},i(u){a||(M(e.$$.fragment,u),M(s.$$.fragment,u),a=!0)},o(u){j(e.$$.fragment,u),j(s.$$.fragment,u),a=!1},d(u){u&&O(t),ne(e),ne(s)}}}function nA(i){let t,e,n=i[1]&&Rl(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[1]?n?(n.p(s,o),o&2&&M(n,1)):(n=Rl(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function iA(i,t,e){var I,k;let{five:n}=t,{visible:s}=t,{hoverEnable:o}=t,{floorplanData:r}=t,{cameraImageUrl:a}=t,{extraObjects:l=[]}=t,{highlightData:c}=t,d=0,h=(k=(I=n.work.observers[n.getCurrentState().panoIndex])==null?void 0:I.floorIndex)!=null?k:0,u=0,m=0,A=0,p=0;function g(T){e(11,h=n.work.observers[T].floorIndex)}vt(()=>(n.on("panoArrived",g),()=>{n.off("panoArrived",g)}));const v=T=>{e(7,u=T.detail)},y=T=>{e(8,m=T.detail)};return i.$$set=T=>{"five"in T&&e(0,n=T.five),"visible"in T&&e(1,s=T.visible),"hoverEnable"in T&&e(2,o=T.hoverEnable),"floorplanData"in T&&e(3,r=T.floorplanData),"cameraImageUrl"in T&&e(4,a=T.cameraImageUrl),"extraObjects"in T&&e(5,l=T.extraObjects),"highlightData"in T&&e(6,c=T.highlightData)},i.$$.update=()=>{if(i.$$.dirty&904){const T=Math.min(u,m),{max:P,min:V}=r.bounding,L=P.x-V.x,W=P.y-V.y,q=function(){return L>W?[T,T/L*W]:[T/W*L,T]}();e(9,A=q[0]),e(12,p=q[1]),e(10,d=A/L)}},[n,s,o,r,a,l,c,u,m,A,d,h,p,v,y]}class sA extends le{constructor(t){super(),ae(this,t,iA,nA,oe,{five:0,visible:1,hoverEnable:2,floorplanData:3,cameraImageUrl:4,extraObjects:5,highlightData:6},tA)}}let oA=class extends Bn{constructor(e,n){super(e);f(this,"name","panoFloorplanRadarPlugin");f(this,"state");f(this,"data");f(this,"app");f(this,"wrapperSelector","");f(this,"wrapper",null);f(this,"disposed",!1);f(this,"extraObjects",[]);f(this,"highlightData",{});f(this,"dispose",()=>{var e;this.disposed=!0,(e=this.app)==null||e.$destroy(),this.wrapper=null,this.wrapperSelector="",this.hooks.emit("dispose")});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s;const{userAction:n}=e;(s=this.app)==null||s.$destroy(),this.app=void 0,this.hooks.emit("disable",{userAction:n})});this.five=e;const s={hoverEnable:!0,highlightEnable:!0,cameraImageUrl:mn},o=n!=null&&n.configs?n.configs:{},r=H(H({},s),o);this.state={enabled:!0,visible:!0,config:r},n!=null&&n.wrapper&&console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法"),typeof(n==null?void 0:n.wrapper)=="string"?this.wrapperSelector=n.wrapper:(n==null?void 0:n.wrapper)instanceof Element&&(this.wrapper=n.wrapper),e.once("dispose",this.dispose)}load(e,n,s=!0){return U(this,null,function*(){function o(c){return Object.prototype.hasOwnProperty.apply(c,["version"])}const r=JSON.parse(JSON.stringify(e)),a=o(r)?r.data:r,l=this.data;this.data=yield gn(a),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,l),n&&this.updateState(n,s),this.render()})}show(){return U(this,arguments,function*(e={}){if(this.state.visible)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},n),this._show({userAction:n})})}hide(){return U(this,arguments,function*(e={}){if(!this.state.visible)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!1},n),this._hide({userAction:n})})}enable(e={}){if(this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||n),this._enable({userAction:n})}disable(e={}){if(!this.state.enabled)return;const n=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||n),this._disable({userAction:n})}setState(e,n={}){const s=this.state,o=n.userAction!==void 0?n.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled){const r={userAction:o};e.enabled?this._enable(r):this._disable(r)}if(e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}appendTo(e){this.wrapper=e,this.render()}changeConfigs(e,n=!0){this.setState({config:e},{userAction:n}),this.render()}setExtraObjectsWith3DPositions(e){this.data&&(this.extraObjects=Dp(e,this.five,this.data),this.render())}formatData(e){return U(this,null,function*(){return yield gn(e.data)})}_enable(e){const{userAction:n}=e;this.hooks.emit("enable",{userAction:n}),this.state.visible&&this._show({userAction:n})}_show(e){if(this.disposed||!this.state.enabled)return;const{userAction:n}=e;this.hooks.emit("show",{userAction:n}),this.render()}_hide(e){if(this.disposed||!this.state.enabled)return;const{userAction:n}=e;this.hooks.emit("hide",{userAction:n}),this.render()}updateState(e,n){const s=this.state;this.state=H(H({},this.state),e),!Gt(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:n})}render(){if(this.disposed||!this.state.enabled)return;if(!this.wrapper&&this.wrapperSelector){const n=document.querySelector(this.wrapperSelector);this.wrapper=n}if(!this.data||!this.wrapper)return;const e=Ae(H({},this.state.config),{five:this.five,floorplanData:this.data,visible:this.state.visible,extraObjects:this.extraObjects,highlightData:this.highlightData});this.app?this.app.$set(e):this.app=new sA({target:this.wrapper,props:e})}};const rA=(i,t)=>new oA(i,t),aA=[{type:0,floorType:1,roomType:"100900000012",name:"其他"},{type:1,floorType:1,roomType:"100900000002",name:"客厅"},{type:2,floorType:1,roomType:"100900000002",name:"餐厅"},{type:3,floorType:0,roomType:"100900000001",name:"卧室"},{type:4,floorType:0,roomType:"100900000001",name:"书房"},{type:5,floorType:3,roomType:"100900000004",name:"卫生间"},{type:6,floorType:3,roomType:"100900000004",name:"淋浴间"},{type:7,floorType:3,roomType:"100900000004",name:"洗手间"},{type:8,floorType:3,roomType:"100900000003",name:"厨房"},{type:9,floorType:1,roomType:"100900000003",name:"开放厨房",onlySubArea:!0},{type:10,floorType:0,roomType:"100900000001",name:"多功能间"},{type:11,floorType:0,roomType:"100900000009",name:"保姆间"},{type:12,floorType:4,roomType:"100900000005",name:"阳台"},{type:13,floorType:4,roomType:"100900000006",name:"露台"},{type:14,floorType:0,roomType:"100900000008",name:"储物间"},{type:15,floorType:0,roomType:"100900000013",name:"衣帽间"},{type:16,floorType:0,roomType:"100900000011",name:"阁楼"},{type:17,floorType:2,roomType:"100900000007",name:"花园"},{type:18,floorType:5,roomType:"100900000010",name:"车库"},{type:19,floorType:1,roomType:"100900000012",name:"电梯"},{type:20,floorType:1,roomType:"100900000012",name:"地下室"},{type:21,floorType:1,roomType:"100900000012",name:"天井"},{type:22,floorType:1,roomType:"100900000012",name:"阳光房"},{type:23,floorType:1,roomType:"100900000012",name:"过道"},{type:24,floorType:1,roomType:"100900000012",name:"楼梯间"},{type:25,floorType:1,roomType:"100900000012",name:"门厅"},{type:26,floorType:2,roomType:"100900000012",name:"入户花园"},{type:27,floorType:1,roomType:"100900000012",name:"玄关"},{type:28,floorType:1,roomType:"100900000012",name:"挑空"},{type:29,floorType:4,roomType:"100900000012",name:"晾晒区"},{type:30,floorType:4,roomType:"100900000012",name:"洗衣房"},{type:31,floorType:0,roomType:"100900000012",name:"娱乐区"},{type:32,floorType:0,roomType:"100900000012",name:"健身区"},{type:33,floorType:0,roomType:"100900000012",name:"接待区"},{type:34,floorType:0,roomType:"100900000012",name:"影音区"},{type:35,floorType:1,roomType:"100900000012",name:"餐饮区"},{type:36,floorType:1,roomType:"100900000012",name:"其他",onlySubArea:!0},{type:37,floorType:1,roomType:"100900000002",name:"起居室"},{type:38,floorType:0,roomType:"100900000001",name:"主卧"},{type:39,floorType:0,roomType:"100900000001",name:"次卧"},{type:40,floorType:0,roomType:"100900000001",name:"优化间"},{type:41,floorType:0,roomType:"100900000001",name:"办公室"},{type:42,floorType:0,roomType:"100900000001",name:"会议室"},{type:43,floorType:0,roomType:"100900000001",name:"洽谈间"},{type:44,floorType:1,roomType:"100900000002",name:"共享大厅"},{type:45,floorType:1,roomType:"100900000012",name:"水吧"},{type:46,floorType:0,roomType:"100900000015",name:"出入口"},{type:47,floorType:0,roomType:"100900000015",name:"大厅"},{type:48,floorType:0,roomType:"100900000015",name:"包厢"},{type:49,floorType:0,roomType:"100900000015",name:"其他"},{type:50,floorType:0,roomType:"100900000016",name:"出入口"},{type:51,floorType:0,roomType:"100900000016",name:"办公区"},{type:52,floorType:0,roomType:"100900000016",name:"老板间"},{type:53,floorType:0,roomType:"100900000016",name:"会议室"},{type:54,floorType:0,roomType:"100900000016",name:"休息区/水吧"},{type:55,floorType:0,roomType:"100900000016",name:"其他"},{type:56,floorType:2,roomType:"100900000012",name:"空中花园"},{type:57,floorType:0,roomType:"100900000001",name:"洋室"},{type:58,floorType:0,roomType:"100900000001",name:"和室"}],lA=[{type:0,description:"木质地板"},{type:1,description:"瓷砖地面"},{type:2,description:"户外地面"},{type:3,description:"卫生间地面"},{type:4,description:"阳台地面"},{type:5,description:"车库地面"}],cA=[{roomType:"100900000001",description:"室"},{roomType:"100900000002",description:"厅"},{roomType:"100900000003",description:"厨"},{roomType:"100900000004",description:"卫"},{roomType:"100900000005",description:"阳台"},{roomType:"100900000006",description:"露台"},{roomType:"100900000007",description:"花园"},{roomType:"100900000008",description:"储"},{roomType:"100900000009",description:"保姆间"},{roomType:"100900000010",description:"车库"},{roomType:"100900000011",description:"阁楼"},{roomType:"100900000012",description:"其他"},{roomType:"100900000013",description:"衣"},{roomType:"100900000015",description:"商铺"},{roomType:"100900000016",description:"写字楼"}],Pr=(i,t,e)=>{const n=new E.Matrix4,s=new E.Euler(i,t,e,"YXZ");return n.makeRotationFromEuler(s),n},dA=(i,{scale:t,rotation:e,position:n})=>{if(t&&i.scale.set(t,t,t),e){const[s,o,r]=e;s&&i.applyMatrix4(Pr(s,0,0)),o&&i.applyMatrix4(Pr(0,o,0)),r&&i.applyMatrix4(Pr(0,0,r))}return n&&i.position.set(n.x,n.y,n.z),i};function Uh(i,t){i.traverse(e=>{var n;if(e.type==="Mesh"){const s=e,o=H({map:s.material.map||{}},t);s.material=new R.MeshBasicMaterial(o),s.renderOrder=1,((n=e.parent)==null?void 0:n.type)==="Mesh"&&(e.renderOrder=e.parent.renderOrder+1)}})}const hA=(i,t)=>{var p;const e=t.fbx_url||"//vrlab-image4.ljcdn.com/release/web/dipan2.f38a21cc.FBX",n=(p=t.north_rad)!=null?p:void 0,s={};let o={x:0,y:0,z:0},r=[0,0,0],a=1,l=n;i.on("modelLoaded",A);const c=g=>U(exports,null,function*(){var k;const v=(g==null?void 0:g.fbx_url)||e;if(l=(k=g==null?void 0:g.north_rad)!=null?k:n,typeof l!="number")throw new Error('"northRad"配置参数缺失:未配置指南针指向!');const I=yield new oh.FBXLoader().loadAsync(v);return Uh(I,{transparent:!0,side:E.DoubleSide,blending:E.AdditiveBlending}),s.object=I,A(),!0}),d=({latitude:g})=>{if(!s.object)return;const v=h(g);v&&(s.object.position.y=v)},h=g=>{if(s.yBase===void 0)return;const v=.6;if(g>=Math.PI/4)return s.yBase-(v+1.6);const y=g*(4/Math.PI);return s.yBase-(v*y+1.6)},u=()=>{if(!s.object)return;const g=h(i.getPose().latitude);g&&(s.object.position.y=g),i.scene.add(s.object),i.needsRender=!0,i.on("cameraDirectionUpdate",d)},m=()=>{s.object&&(i.scene.remove(s.object),i.needsRender=!0,i.off("cameraDirectionUpdate",d))};function A(){const g=s.object;if(!g)return;const v=i.model.bounding,y=v.max.x-v.min.x,I=v.max.z-v.min.z,k=Math.max(y,I),{max:{x:T,z:P},min:{x:V,y:L,z:W}}=v;s.yBase=L,o={x:(T+V)/2,y:L-1.6,z:(P+W)/2},r=[0,l-Math.PI/2,0],a=.0045*k,dA(g,{position:o,rotation:r,scale:a})}return{load:c,disable:m,enable:u}};function uA(i,t){var c,d,h,u,m;const e=(c=t==null?void 0:t.size)!=null?c:512,n=(d=t==null?void 0:t.fontSize)!=null?d:e*(35/256)*1.2,s=(h=t==null?void 0:t.backgroundColor)!=null?h:"rgba(0,0,0,0)",o=(u=t==null?void 0:t.fontColor)!=null?u:"#fff",r=(m=t==null?void 0:t.textAlign)!=null?m:"center",a=document.createElement("canvas");a.setAttribute("width",e+""),a.setAttribute("height",e+"");const l=a.getContext("2d");return l.fillStyle=s,l.fillRect(0,0,e,e),l.font=`${n}px "微软雅黑"`,l.textAlign=r,l.fillStyle=o,l.fillText(i,e/2,e*.7),new R.CanvasTexture(a)}const fA=({x:i,y:t,z:e})=>new R.Vector3(i,t,e),mA=(i,t)=>{var p,g,v;const e={},n=(p=t.animationEnabled)!=null?p:!0,s=(g=t.position)!=null?g:void 0,o=(v=t.rad)!=null?v:void 0,r=t.fbx_url||"//vrlab-image4.ljcdn.com/release/web/entryDoorMini/Anim_Door1.fbx",a=[],l=y=>U(exports,null,function*(){var q,N,G,_,Q,F,Z,X;const I=(q=y==null?void 0:y.position)!=null?q:s;if(!I)return Promise.reject(new Error("ModelEntryDoorGuidePlugin.load(): position is undefined"));const k=fA(I),T=(N=y==null?void 0:y.rad)!=null?N:o,P=(G=y==null?void 0:y.fbx_url)!=null?G:r;if(e.rad=T,T===void 0)return Promise.reject(new Error(`ModelEntryDoorGuidePlugin.load(): rad is ${T}`));const V=yield new oh.FBXLoader().loadAsync(P);V.position.copy(k),V.rotation.z=T,V.scale.set(.8,.8,.8),Uh(V,{transparent:!0,side:E.DoubleSide});const L=(Z=(F=(Q=(_=V.children)==null?void 0:_[0])==null?void 0:Q.children)==null?void 0:F[3])==null?void 0:Z.clone();if(!L)return Promise.reject(new Error(`ModelEntryDoorGuidePlugin.load(): textMesh is ${L}`));const W=(X=t.name)!=null?X:"入户门";return L.material=new R.MeshBasicMaterial({transparent:!0,map:uA(W)}),L.renderOrder=3,V.children[0].add(L),e.object=V,!0}),c=()=>{if(e.animation)return;if(!e.object)return console.error("ModelEntryDoorGuidePlugin.initAnimation(): state.object is ",e.object);const y=1,I=new R.AnimationMixer(e.object);a.push(I);const k=I.clipAction(e.object.animations[0]);k.timeScale=y;let T;const P=()=>{let q=0,N=0;const G=1e3/30,_=Q=>{q=requestAnimationFrame(_);const F=Q-N;F<G||(N=Q,a.forEach(Z=>Z.update(F/1e3)),i.needsRender=!0)};return q=requestAnimationFrame(_),()=>{cancelAnimationFrame(q)}},W={play:()=>{T||(k.play(),T=P(),requestAnimationFrame(()=>{e.object&&e.object.rotation.z!==e.rad&&(e.object.rotation.z=e.rad)}))},stop:()=>{k.stop(),T==null||T(),T=void 0}};e.animation=W},d=y=>{var k;if(!e.object)return console.error("ModelEntryDoorGuidePlugin.enable(): object is ",e.object);((k=y==null?void 0:y.animationEnable)!=null?k:n)&&(e.animation||c(),e.animation.play()),i.scene.add(e.object),i.needsRender=!0},h=()=>{e.object&&(e.animation&&e.animation.stop(),i.scene.remove(e.object),i.needsRender=!0)},u=y=>y==="Floorplan"?d():h();return{load:l,enable:y=>(e.enabled||(e.enabled=!0,u(i.currentMode),i.on("modeChange",u),d(y)),!0),disable:()=>(e.enabled&&(e.enabled=!1,h(),i.off("modeChange",u)),!0)}},gA=Dt;function pA(i,t,e,n=gA.Linear.None){const s=new mo(i).to(t,e).easing(n);Ao(()=>s.start(0));const o=os(a=>{s.update(a)===!1&&o()}),r=[];return s.onDestroy=a=>(r.push(a),s),s.destroy=function(){this.stop(),Object.assign(s,{_onStartCallback:null,_onUpdateCallback:null,_onCompleteCallback:null,_onStopCallbackL:null});let a;for(;a=r.shift();)a();o()},s}function AA(i,t){return pA({progress:0},{progress:1},i,t)}var Xh=(i=>(i.Move="Move",i.Rotate="Rotate",i))(Xh||{}),Rt=(i=>(i.Clockwise="Clockwise",i.Anticlockwise="Anticlockwise",i.Loop="Loop",i))(Rt||{});const Ws=Math.PI*2;function Gl(i){return(i%Ws+Ws)%Ws}function Nl(i){return i%Ws}function Er(i,t,e){return i+(t-i)*e}const Zr=(i,t,e)=>{const n=Math.PI,s=n*2;let o=Gl(i),r=Gl(t);return e===Rt.Anticlockwise&&o<r&&(o+=s),e===Rt.Clockwise&&r<o&&(r+=s),e===Rt.Loop&&r-o>n?Zr(o,r,Rt.Anticlockwise):e===Rt.Loop&&o-r>n?Zr(o,r,Rt.Clockwise):{from:o,to:r}},vA=i=>{const t={},e=(l,c,...d)=>U(exports,[l,c,...d],function*(o,r,a={preload:!0}){return t.interruptCallback&&t.interruptCallback(!1),a.asyncStartCallback&&(yield a.asyncStartCallback()),o.mode&&o.mode!==i.currentMode&&(yield i.changeMode(o.mode)),a.preload&&o.panoIndex!==void 0&&o.panoIndex!==i.panoIndex&&(yield i.preloadPano(o.panoIndex)),a.asyncEndCallback&&(yield a.asyncEndCallback()),o.panoIndex===void 0&&o.fov===void 0&&o.latitude===void 0&&o.longitude===void 0?!0:yield new Promise((h,u)=>{const m=o.panoIndex!==void 0?o.panoIndex:i.panoIndex;m!==void 0?i.moveToPano(m,H({duration:r,moveEndCallback:()=>h(!0),moveCancelCallback:()=>u(new Error("move canceled"))},o)):u(new Error("unexpected error"))})}),n=o=>{const r=i.state,a=Nl(r.latitude),l=Nl(o.latitude),{from:c,to:d}=Zr(r.longitude,o.longitude,o.rotation||Rt.Loop),h=r.fov,u=o.fov;return{from:{latitude:a,longitude:c,fov:h},to:{latitude:l,longitude:d,fov:u}}};return{move:e,rotate:(l,c,...d)=>U(exports,[l,c,...d],function*(o,r,a={}){t.interruptCallback&&t.interruptCallback(!1),a.asyncStartCallback&&(yield a.asyncStartCallback()),i.currentMode!==Te.Five.Mode.Panorama&&(yield i.changeMode(Te.Five.Mode.Panorama)),o.panoIndex!==void 0&&o.panoIndex!==i.panoIndex&&(a.preload&&(yield i.preloadPano(o.panoIndex)),yield new Promise((m,A)=>{if(!o.panoIndex){m(!0);return}i.moveToPano(o.panoIndex,{moveEndCallback:()=>m(!0),moveCancelCallback:()=>A(new Error("move canceled"))})})),a.asyncEndCallback&&(yield a.asyncEndCallback());const{from:h,to:u}=n(o);return yield new Promise(m=>{const A=({progress:I})=>{const k={};k.longitude=Er(h.longitude,u.longitude,I),k.latitude=Er(h.latitude,u.latitude,I),k.fov=Er(h.fov,u.fov,I),i.setState(k,!0)},p=()=>{m(!0)},g=()=>{m(!1)},v=o.rotateSpeed?Math.ceil(Math.abs(u.longitude-h.longitude)/o.rotateSpeed*1e3):r,y=AA(v,Dt.Linear.None).onUpdate(A).onComplete(p).onDestroy(g);o.rotation===Rt.Loop&&y.repeat(1/0).yoyo(!0),t.interruptCallback=(I=!0)=>{y.destroy(),t.interruptCallback=void 0,t.timeoutId&&(clearTimeout(t.timeoutId),t.timeoutId=void 0),m(I)},t.timeoutId=setTimeout(()=>{t.interruptCallback&&t.interruptCallback(!0)},r)})})}};function Hl(i,t){return i.x===t.x&&i.y===t.y}function Zh(i,t){return Math.abs(i)===1/0&&Math.abs(t)===1/0?!0:Math.abs(i-t)<.001}function oo(i,t){return(t.y-i.y)/(t.x-i.x)}function Jh(i,t,e){const n=oo(i[1],i[0]),s=oo(t[1],t[0]);if(isNaN(n)||isNaN(s)||Zh(n,s))return!1;if(Ss(i[0],t))return i[0];if(Ss(i[1],t))return i[1];if(Ss(t[0],i))return t[0];if(Ss(t[1],i))return t[1];if(e&&!bA(i,t))return!1;const o=i[0],r=t[0];if(Math.abs(n)===1/0)return{x:o.x,y:t[1].y-(t[1].x-o.x)*s};if(Math.abs(s)===1/0)return{x:r.x,y:i[1].y-(i[1].x-r.x)*n};const a=(r.y-o.y+n*o.x-s*r.x)/(n-s),l=n*a-n*o.x+o.y;return{x:a,y:l}}function Ss(i,t){return Hl(i,t[0])||Hl(i,t[1])?!0:(t[0].x-i.x)*(i.x-t[1].x)>=0&&(t[0].y-i.y)*(i.y-t[1].y)>=0&&Zh(oo(t[0],i),oo(i,t[1]))}function Ts(i,t,e){return(i.x-e.x)*(t.y-e.y)-(t.x-e.x)*(i.y-e.y)}function bA(i,t){return Math.max(i[0].x,i[1].x)>=Math.min(t[0].x,t[1].x)&&Math.max(t[0].x,t[1].x)>=Math.min(i[0].x,i[1].x)&&Math.max(i[0].y,i[1].y)>=Math.min(t[0].y,t[1].y)&&Ts(t[0],i[1],i[0])*Ts(i[1],t[1],i[0])>0&&Ts(i[0],t[1],t[0])*Ts(t[1],i[1],t[0])>0?1:0}function qh(i,t=0){t<=0?requestAnimationFrame(i):requestAnimationFrame(()=>qh(i,t-1))}const yA=`<style type="text/css">
|
|
195
195
|
.PanoRulerPlugin-rule-line {
|
|
196
196
|
position: absolute;
|
|
197
197
|
transform-origin: left center;
|
|
@@ -277,14 +277,14 @@ void main() {
|
|
|
277
277
|
100% { transform: scaleX(1); }
|
|
278
278
|
}
|
|
279
279
|
</style>
|
|
280
|
-
`,wA=(i,t)=>Math.sqrt(Math.pow(i.z-t.z,2)+Math.pow(i.x-t.x,2)),CA=(i,t)=>{const e={},n=new R.Raycaster,s=t.work;if(!s)return e;const o=i.observers;s.observers.forEach((r,a)=>{const{standingPosition:l}=r,c=new R.Vector3(l.x,l.y,l.z);n.set(c,new R.Vector3(0,1,0));const[d]=t.model.intersectRaycaster(n),h=d?d.point.y:2.7,u=o[a];if(!u)return e;const m=i.rooms[u].name;e[m]===void 0?e[m]={__roof:[h],__floor:[c.y]}:(e[m].__roof.push(h),e[m].__floor.push(c.y))});for(const r in e){const a=e[r];a.__roof.sort(),a.__floor.sort(),a.floor=a.__floor[~~(a.__floor.length/2)],a.roof=a.__roof[a.__roof.length-1]}return e},IA=(i,t)=>{const e={enable:!1,loaded:!1,options:t.options||{distanceText:p=>`${p.toFixed(1)}m`}},n=(p,g)=>{const
|
|
280
|
+
`,wA=(i,t)=>Math.sqrt(Math.pow(i.z-t.z,2)+Math.pow(i.x-t.x,2)),CA=(i,t)=>{const e={},n=new R.Raycaster,s=t.work;if(!s)return e;const o=i.observers;s.observers.forEach((r,a)=>{const{standingPosition:l}=r,c=new R.Vector3(l.x,l.y,l.z);n.set(c,new R.Vector3(0,1,0));const[d]=t.model.intersectRaycaster(n),h=d?d.point.y:2.7,u=o[a];if(!u)return e;const m=i.rooms[u].name;e[m]===void 0?e[m]={__roof:[h],__floor:[c.y]}:(e[m].__roof.push(h),e[m].__floor.push(c.y))});for(const r in e){const a=e[r];a.__roof.sort(),a.__floor.sort(),a.floor=a.__floor[~~(a.__floor.length/2)],a.roof=a.__roof[a.__roof.length-1]}return e},IA=(i,t)=>{const e={enable:!1,loaded:!1,options:t.options||{distanceText:p=>`${p.toFixed(1)}m`}},n=(p,g)=>{const v=`
|
|
281
281
|
<div class="PanoRulerPlugin-rule-line">
|
|
282
282
|
<em></em>
|
|
283
283
|
<div class="PanoRulerPlugin-rule-label">
|
|
284
284
|
<div class="PanoRulerPlugin-rule-label-name">${e.options.distanceText(g)}</div>
|
|
285
285
|
</div>
|
|
286
286
|
</div>
|
|
287
|
-
`,y=document.createElement("div");return y.setAttribute("class","PanoRulerPlugin-rule"),y.setAttribute("data-name",p),y.setAttribute("style","display: none"),y.innerHTML=b,y},s=document.createElement("div");s.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;");const o=document.createElement("div");o.innerHTML=yA,s.appendChild(o);const r={},a=(p,g)=>{if(e.loaded)throw new Error("标尺被重复初始化!");const b=CA(p,i),y=i.work;if(!y)return!1;for(const I in g){const k=g[I],{standingPosition:T}=y.observers[0],P=k.map(({x:V,z:L,observers:W})=>{const q=W.length>0?p.rooms[p.observers[W[0]]].name:"",N=b[q]?b[q].floor:null;let G=1/0,_={index:0,x:T.x,y:T.y,z:T.z};W.forEach(ce=>{if(!y.observers[ce])return;const{standingPosition:se}=y.observers[ce],we={index:ce,x:se.x,y:se.y,z:se.z},Ce=wA({x:V,z:L},we);N?Ce<G&&Math.abs(we.y-N)<.3&&(G=Ce,_=we):Ce<G&&(G=Ce,_=we)});const Q=new R.Vector3(V,_.y,L);Object.assign(Q,{observers:W});const F=b[q]?b[q].roof:null,Z=F?new R.Vector3(V,F,L):null;return Z&&Object.assign(Z,{observers:W}),{origin:Q,vertical:Z}});r[I]={origins:P.map(V=>V.origin),rules:[]};for(const{origin:V,vertical:L}of P){if(!L)continue;const W=n(I,V.distanceTo(L));s.append(W),r[I].rules.push({vertical:!0,rule:[V,L],$element:W})}for(let V=0;V<P.length;V++){let L=V+1;L>=P.length&&(L=0);const{origin:W}=P[V],{origin:q}=P[L],N=n(I,W.distanceTo(q));s.append(N),r[I].rules.push({vertical:!1,rule:[W,q],$element:N})}}return e.loaded=!0,!0},l=(p,g,b)=>U(exports,null,function*(){const y=p||t.roomInfo,I=g||t.roomRules;if(!y||!I)throw new Error("标尺数据依赖不齐全!");return e.loaded=!1,e.options=H(H({},e.options),b||{}),i.model.loaded?a(y,I):yield new Promise(k=>i.once("modelLoaded",()=>k(a(y,I))))});t.roomInfo&&t.roomRules&&l(t.roomInfo,t.roomRules);const c=(p,g,b,y)=>{const I=[[{x:0,y:0},{x:b,y:0}],[{x:0,y:0},{x:0,y}],[{x:b,y:0},{x:b,y}],[{x:0,y},{x:b,y}]],k=[];for(let T=0;T<I.length;T++){const P=Jh([p,g],[I[T][0],I[T][1]],!0);P&&k.push(P)}return k.length===0?!1:k},d=()=>{var W;const p=(W=i.getElement())==null?void 0:W.parentElement;if(!p||!e.loaded||Object.keys(r).length<=0)return;const{panoIndex:g,camera:b,currentMode:y}=i;if(g===void 0)return;let I;for(const q in r)q.split(",").indexOf(g.toString())>=0&&(I=q);if(!I){for(const q in r)for(const{$element:N}of r[q].rules)N.style.display="none";return}const k=b.position,T=b.getWorldDirection(new R.Vector3),P=p.clientWidth,V=p.clientHeight;if(y!==Te.Five.Mode.Panorama){for(const q in r)for(const{$element:N}of r[q].rules)N.style.display="none";return}for(const q in r)for(const{$element:N}of r[q].rules)N.style.display=q===I?"block":"none";const[L]=r[I].origins.slice().filter(q=>q.observers.indexOf(g)>=0).sort((q,N)=>{const G=q.clone().setY(0).sub(k).normalize().angleTo(T.clone().setY(0)),_=N.clone().setY(0).sub(k).normalize().angleTo(T.clone().setY(0));return G-_});for(const{rule:q,vertical:N,$element:G}of r[I].rules){const[_,Q]=q,F=G.querySelector(".PanoRulerPlugin-rule-line");if(!F)return;if(!L){G.style.display="none";continue}if(_!==L&&Q!==L){G.style.display="none";continue}if(_.distanceTo(Q)<.3){G.style.display="none";continue}if(_.observers.indexOf(g)===-1||Q.observers.indexOf(g)===-1){G.style.display="none";continue}if(_.clone().sub(k).normalize().angleTo(T)>Math.PI/2){G.style.display="none";continue}if(Q.clone().sub(k).normalize().angleTo(T)>Math.PI/2){G.style.display="none";continue}const $=_.distanceTo(Q);if(Q.clone().sub(Q.clone().sub(_).divide(new R.Vector3(2,2,2))).distanceTo(k)/$>8){G.style.display="none";continue}const we=_.clone().project(b),Ce=(we.x+1)/2*P,pe=(-we.y+1)/2*V,Be=Q.clone().project(b),ve=(Be.x+1)/2*P,We=(-Be.y+1)/2*V,fe=Math.sqrt(Math.pow(ve-Ce,2)+Math.pow(We-pe,2));let ye=fe,Le=50;const me=c({x:~~Ce,y:~~pe},{x:~~ve,y:~~We},P,V);if(me&&me.length===1&&(L===_?(ye=Math.sqrt(Math.pow(me[0].x-Ce,2)+Math.pow(me[0].y-pe,2)),Le=ye/fe*50):L===Q&&(ye=Math.sqrt(Math.pow(me[0].x-ve,2)+Math.pow(me[0].y-We,2)),Le=100-ye/fe*50)),me&&me.length===2){const re={x:(me[0].x+me[1].x)/2,y:(me[0].y+me[1].y)/2};Le=Math.sqrt(Math.pow(re.x-Ce,2)+Math.pow(re.y-pe,2))/fe*100}const ct=(Math.PI/2-Math.atan2(ve-Ce,pe-We))/Math.PI*180,ke=F.querySelector(".PanoRulerPlugin-rule-label"),nt=ke.children[0].clientWidth;nt>=fe||nt/2>=Le/100*fe||nt/2>=(1-Le/100)*fe?F.style.display="none":(F.style.display="block",F.style.width=fe+"px",F.style.left=Ce+"px",F.style.top=pe+"px",F.style.transform=`rotate(${-ct}deg)`,ke.style.left=`${Le}%`)}},h=()=>qh(d),u=()=>{var p,g;return e.loaded?(e.enable||(s.setAttribute("class","PanoRulerPlugin"+(e.options.className?" "+e.options.className:"")),(g=(p=i.getElement())==null?void 0:p.parentElement)==null||g.append(s),d(),i.on("modeChange",d),i.on("cameraUpdate",h),e.enable=!0),!0):!1},m=()=>(e.enable&&(i.off("modeChange",d),i.off("cameraUpdate",h),s&&s.remove(),e.enable=!1),!0);function A(p){if(p.distanceText&&p.distanceText!==e.options.distanceText){const g=p.distanceText;e.options.distanceText=g,Object.values(r).forEach(b=>{b.rules.forEach(y=>{const[I,k]=y.rule,T=I.distanceTo(k),P=y.$element.querySelector(".PanoRulerPlugin-rule-label-name");P&&(P.innerText=g(T))})})}}return{enable:u,disable:m,load:l,state:e,changeConfigs:A}};function PA(i){ue(i,"svelte-1h27ktp",".PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp{position:absolute;transform-origin:left 0.0625rem;width:0;height:0.125rem;pointer-events:none}.PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp::after{content:'';position:absolute;left:-0.125rem;top:-0.1rem;width:0.25rem;height:0.25rem;border-radius:50%;background:#fff;z-index:1;animation:svelte-1h27ktp-viewport-rule-point 0.1s 1s;animation-fill-mode:both}.PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp::before{content:'';position:absolute;right:-0.125rem;top:-0.1rem;width:0.25rem;height:0.25rem;border-radius:50%;background:#fff;z-index:1;animation:svelte-1h27ktp-viewport-rule-point 0.1s 1.5s;animation-fill-mode:both}.PanoRulerPlugin-rule-line.svelte-1h27ktp em.svelte-1h27ktp{display:block;height:0.0625rem;animation:svelte-1h27ktp-viewport-rule-line 0.5s ease 1s;animation-fill-mode:both;box-shadow:0 0 0.25rem rgb(0 0 0 / 40%);position:relative}.rule-mixed-line.svelte-1h27ktp.svelte-1h27ktp{display:flex;height:0.0625rem;animation:svelte-1h27ktp-viewport-rule-line 0.5s ease 1s;animation-fill-mode:both;align-items:center}.em-solid.svelte-1h27ktp.svelte-1h27ktp{height:100%;background:#ffffff}.em-dotted.svelte-1h27ktp.svelte-1h27ktp{height:0.125rem;background:var(--background-image);background-position:center;background-repeat:repeat}.PanoRulerPlugin-rule-label.svelte-1h27ktp.svelte-1h27ktp{position:absolute;width:0;height:0;top:0.0625rem;pointer-events:none}.PanoRulerPlugin-rule-label-name.svelte-1h27ktp.svelte-1h27ktp{position:absolute;padding:0.1875rem 0.375rem;background:rgba(195, 195, 195, 0.3);backdrop-filter:blur(0.25rem);-webkit-backdrop-filter:blur(0.25rem);border-radius:6.25rem;border:0.0625rem solid rgba(255, 255, 255, 0.6);white-space:nowrap;overflow:hidden;color:#ffffff;font-weight:500;font-size:0.75rem;line-height:1;animation:svelte-1h27ktp-viewport-rule-label 0.25s ease 1s;animation-fill-mode:both;box-shadow:inset 0 0 0.625rem 0 rgba(255, 255, 255, 0.3)}@keyframes svelte-1h27ktp-viewport-rule-line{0%{width:0%}100%{width:100%}}@keyframes svelte-1h27ktp-viewport-rule-label{0%{opacity:0;transform:scaleX(0)}100%{opacity:1;transform:translate(-50%, -50%) scaleX(1)}}@keyframes svelte-1h27ktp-viewport-rule-point{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}")}function _l(i,t,e){const n=i.slice();return n[6]=t[e],n}function EA(i){let t,e=i[0].children,n=[];for(let s=0;s<e.length;s+=1)n[s]=Wl(_l(i,e,s));return{c(){t=x("div");for(let s=0;s<n.length;s+=1)n[s].c();w(t,"class","rule-mixed-line svelte-1h27ktp")},m(s,o){B(s,t,o);for(let r=0;r<n.length;r+=1)n[r]&&n[r].m(t,null)},p(s,o){if(o&9){e=s[0].children;let r;for(r=0;r<e.length;r+=1){const a=_l(s,e,r);n[r]?n[r].p(a,o):(n[r]=Wl(a),n[r].c(),n[r].m(t,null))}for(;r<n.length;r+=1)n[r].d(1);n.length=e.length}},d(s){s&&O(t),Tt(n,s)}}}function kA(i){let t,e;return{c(){t=x("em"),w(t,"class",e=Re(i[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),w(t,"style",i[3])},m(n,s){B(n,t,s)},p(n,s){s&1&&e!==(e=Re(n[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&w(t,"class",e),s&8&&w(t,"style",n[3])},d(n){n&&O(t)}}}function Wl(i){let t,e,n=`${i[6].width}px`;return{c(){t=x("div"),w(t,"class",e=Re(i[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),w(t,"style",i[3]),z(t,"width",n)},m(s,o){B(s,t,o)},p(s,o){o&1&&e!==(e=Re(s[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&w(t,"class",e),o&8&&w(t,"style",s[3]),(o&8||o&9&&n!==(n=`${s[6].width}px`))&&z(t,"width",n)},d(s){s&&O(t)}}}function MA(i){let t,e,n,s,o=i[0].labelElement+"",r,a,l=`${i[0].labelOffset}%`,c=`${i[0].width}px`,d=`${i[0].left}px`,h=`${i[0].top}px`,u=`rotate(${i[0].rotateDeg}deg)`;function m(g,b){return g[0].children.length===0?kA:EA}let A=m(i),p=A(i);return{c(){t=x("div"),p.c(),e=ee(),n=x("div"),s=x("div"),r=Me(o),w(s,"class","PanoRulerPlugin-rule-label-name svelte-1h27ktp"),Ne(()=>i[4].call(s)),w(n,"class","PanoRulerPlugin-rule-label svelte-1h27ktp"),z(n,"left",l),w(t,"class","PanoRulerPlugin-rule-line svelte-1h27ktp"),z(t,"width",c),z(t,"left",d),z(t,"top",h),z(t,"transform",u),z(t,"display",i[0].visible&&i[2]?"block":"none")},m(g,b){B(g,t,b),p.m(t,null),D(t,e),D(t,n),D(n,s),D(s,r),a=bo(s,i[4].bind(s))},p(g,[b]){A===(A=m(g))&&p?p.p(g,b):(p.d(1),p=A(g),p&&(p.c(),p.m(t,e))),b&1&&o!==(o=g[0].labelElement+"")&&Oe(r,o),b&1&&l!==(l=`${g[0].labelOffset}%`)&&z(n,"left",l),b&1&&c!==(c=`${g[0].width}px`)&&z(t,"width",c),b&1&&d!==(d=`${g[0].left}px`)&&z(t,"left",d),b&1&&h!==(h=`${g[0].top}px`)&&z(t,"top",h),b&1&&u!==(u=`rotate(${g[0].rotateDeg}deg)`)&&z(t,"transform",u),b&5&&z(t,"display",g[0].visible&&g[2]?"block":"none")},i:J,o:J,d(g){g&&O(t),p.d(),a()}}}function xA(i,t,e){let n,{rulerItemProp:s}=t,o=!0,r,a="data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjQiIHdpZHRoPSIxMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGZpbHRlciBpZD0icHJlZml4X19hIiBoZWlnaHQ9IjQwMCUiIHdpZHRoPSIxMzcuNCUiIHg9Ii0xOC43JSIgeT0iLTE1MCUiPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iZGlsYXRlIiByYWRpdXM9Ii41IiByZXN1bHQ9InNoYWRvd1NwcmVhZE91dGVyMSIvPjxmZU9mZnNldCBpbj0ic2hhZG93U3ByZWFkT3V0ZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiByYWRpdXM9IjEiIHJlc3VsdD0ic2hhZG93SW5uZXIiLz48ZmVPZmZzZXQgaW49InNoYWRvd0lubmVyIiByZXN1bHQ9InNoYWRvd0lubmVyIi8+PGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIGluMj0ic2hhZG93SW5uZXIiIG9wZXJhdG9yPSJvdXQiIHJlc3VsdD0ic2hhZG93T2Zmc2V0T3V0ZXIxIi8+PGZlR2F1c3NpYW5CbHVyIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIgc3RkRGV2aWF0aW9uPSIuNSIvPjxmZUNvbG9yTWF0cml4IGluPSJzaGFkb3dCbHVyT3V0ZXIxIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuMiAwIi8+PC9maWx0ZXI+PHBhdGggaWQ9InByZWZpeF9fYiIgZD0iTS44ODkgMkgxMS41OCIvPjwvZGVmcz48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS1kYXNoYXJyYXk9IjUgNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuNCIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjwvZz48L3N2Zz4=";function l(){r=this.offsetWidth,e(1,r)}return i.$$set=c=>{"rulerItemProp"in c&&e(0,s=c.rulerItemProp)},i.$$.update=()=>{i.$$.dirty&3&&(r>=s.width||r/2>=s.labelOffset/100*s.width||r/2>=(1-s.labelOffset/100)*s.width?e(2,o=!1):e(2,o=!0))},e(3,n=`--background-image: url(${a})`),[s,r,o,n,l]}class DA extends le{constructor(t){super(),ae(this,t,xA,MA,oe,{rulerItemProp:0},PA)}}function Fl(i,t,e){const n=i.slice();return n[12]=t[e],n}function Yl(i){let t,e;return t=new DA({props:{rulerItemProp:i[12]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.rulerItemProp=n[12]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function SA(i){let t,e,n=i[0],s=[];for(let r=0;r<n.length;r+=1)s[r]=Yl(Fl(i,n,r));const o=r=>j(s[r],1,1,()=>{s[r]=null});return{c(){t=x("div");for(let r=0;r<s.length;r+=1)s[r].c()},m(r,a){B(r,t,a);for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(t,null);e=!0},p(r,[a]){if(a&1){n=r[0];let l;for(l=0;l<n.length;l+=1){const c=Fl(r,n,l);s[l]?(s[l].p(c,a),M(s[l],1)):(s[l]=Yl(c),s[l].c(),M(s[l],1),s[l].m(t,null))}for(de(),l=n.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<n.length;a+=1)M(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)j(s[a]);e=!1},d(r){r&&O(t),Tt(s,r)}}}function TA(i,t,e){var p,g,b,y;let{five:n}=t,{rulerDatas:s}=t,{options:o}=t,r=[];const a=((g=(p=n.getElement())==null?void 0:p.parentElement)==null?void 0:g.clientWidth)||0,l=((y=(b=n.getElement())==null?void 0:b.parentElement)==null?void 0:y.clientHeight)||0,c=(I,k)=>{const T=[[{x:0,y:0},{x:a,y:0}],[{x:0,y:0},{x:0,y:l}],[{x:a,y:0},{x:a,y:l}],[{x:0,y:l},{x:a,y:l}]],P=[];for(let V=0;V<T.length;V++){const L=Jh([I,k],[T[V][0],T[V][1]],!0);L&&P.push(L)}return P.length===0?!1:P},d=(I,k)=>{const T=I.clone().project(n.camera),P=(T.x+1)/2*a,V=(-T.y+1)/2*l,L=k.clone().project(n.camera),W=(L.x+1)/2*a,q=(-L.y+1)/2*l,N=Math.sqrt(Math.pow(W-P,2)+Math.pow(q-V,2));return{startLeft:P,startTop:V,endLeft:W,endTop:q,distance:N}},h=(I,k,T)=>{const P=n.camera.position,V=n.camera.getWorldDirection(new R.Vector3),L=I.clone().sub(P).normalize().angleTo(V),W=k.clone().sub(P).normalize().angleTo(V),q=I.distanceTo(k),G=k.clone().sub(k.clone().sub(I).divide(new R.Vector3(2,2,2))).distanceTo(P),{startLeft:_,startTop:Q,endLeft:F,endTop:Z,distance:X}=d(I,k),ce=-((Math.PI/2-Math.atan2(F-_,Q-Z))/Math.PI)*180;let se=!0;T||(se=!1),!Gt(I,T)&&!Gt(k,T)&&(se=!1),q<.3&&(se=!1),L>Math.PI/2&&(se=!1),W>Math.PI/2&&(se=!1),G/q>8&&(se=!1);let we=50,Ce=X;const pe=c({x:~~_,y:~~Q},{x:~~F,y:~~Z});if(pe&&pe.length===1&&(Gt(I,T)?(Ce=Math.sqrt(Math.pow(pe[0].x-_,2)+Math.pow(pe[0].y-Q,2)),we=Ce/X*50):Gt(k,T)&&(Ce=Math.sqrt(Math.pow(pe[0].x-F,2)+Math.pow(pe[0].y-Z,2)),we=100-Ce/X*50)),pe&&pe.length===2){const Be={x:(pe[0].x+pe[1].x)/2,y:(pe[0].y+pe[1].y)/2};we=Math.sqrt(Math.pow(Be.x-_,2)+Math.pow(Be.y-Q,2))/X*100}return{startLeft:_,startTop:Q,distance:X,deg:ce,visible:se,labelOffset:we,ruleLength:q}},u=()=>{const I=n.panoIndex,k=s.find(N=>N.panoIndex===I);if(!k)return e(0,r=[]);if(n.currentMode!==Te.Five.Mode.Panorama)return e(0,r=[]);const T=n.camera.position,P=n.camera.getWorldDirection(new R.Vector3),V=k.lines.map(N=>new R.Vector3(N.start[0],-N.start[1],-N.start[2])),L=k.lines.map(N=>new R.Vector3(N.end[0],-N.end[1],-N.end[2])),[W]=V.concat(L).sort((N,G)=>{const _=N.clone().setY(0).sub(T).normalize().angleTo(P.clone().setY(0)),Q=G.clone().setY(0).sub(T).normalize().angleTo(P.clone().setY(0));return _-Q}),q=k.lines.map(N=>{var Ce,pe;const G=N.start,_=N.end,{startLeft:Q,startTop:F,distance:Z,deg:X,visible:$,labelOffset:ce,ruleLength:se}=h(new R.Vector3(G[0],-G[1],-G[2]),new R.Vector3(_[0],-_[1],-_[2]),W),we=[];return N.children&&((Ce=N.children)==null?void 0:Ce.length)>0&&((pe=N.children)==null||pe.forEach(Be=>{const ve=Be.start,We=Be.end,{distance:fe}=d(new R.Vector3(ve[0],-ve[1],-ve[2]),new R.Vector3(We[0],-We[1],-We[2]));we.push({width:fe,state:Be.state})})),{width:Z,left:Q,top:F,rotateDeg:X,state:N.state,children:we,labelOffset:ce,visible:$,labelElement:o.distanceText(se)}});e(0,r=q)},m=()=>Ao(u),A=Sa(u,80);return vt(()=>{u(),n.on("panoArrived",u),n.on("modeChange",u),n.on("cameraDirectionUpdate",m),n.on("movingToPano",m),n.on("mouseWheel",()=>A()),n.on("pinchGesture",()=>A())}),Lt(()=>{n.off("panoArrived",u),n.off("modeChange",u),n.off("cameraDirectionUpdate",m),n.off("movingToPano",m),n.off("mouseWheel",()=>A()),n.off("pinchGesture",()=>A())}),i.$$set=I=>{"five"in I&&e(1,n=I.five),"rulerDatas"in I&&e(2,s=I.rulerDatas),"options"in I&&e(3,o=I.options)},[r,n,s,o]}class LA extends le{constructor(t){super(),ae(this,t,TA,SA,oe,{five:1,rulerDatas:2,options:3})}}let jA=class{constructor(t,e){f(this,"five");f(this,"container",document.createElement("div"));f(this,"panoRulerProData");f(this,"rulerItems");f(this,"state",{enabled:!1,loaded:!1,options:{className:"",distanceText:t=>`${t.toFixed(1)}m`}});var n,s;this.five=t,this.container.classList.add("panoRulerProPlugin-container"),this.container.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;"),e&&(e.data&&this.load(e.data),this.state.options=H(H({},this.state.options),e.options||{}),(n=e.options)!=null&&n.className&&this.container.classList.add((s=e.options)==null?void 0:s.className)),this.five.once("modelLoaded",()=>U(this,null,function*(){var o,r;(r=(o=this.five.getElement())==null?void 0:o.parentNode)==null||r.append(this.container)})),this.five.once("dispose",()=>this.dispose())}load(t){return U(this,null,function*(){if(!this.five.work)return;const e=t.data;if(!e)throw new Error("标尺数据依赖不齐全!");this.panoRulerProData=e,this.state.loaded=!0})}enable(){return this.state.loaded?(this.state.enabled||(this.state.enabled=!0,this.render()),!0):!1}disable(){return this.state.enabled&&(this.state.enabled=!1,this.render()),!0}render(){return U(this,null,function*(){var t;if(this.state.enabled){if(!this.panoRulerProData||!this.container)return;this.rulerItems=new LA({target:this.container,props:{five:this.five,rulerDatas:this.panoRulerProData,options:this.state.options}})}else(t=this.rulerItems)==null||t.$destroy(),this.rulerItems=void 0})}dispose(){this.container&&(this.rulerItems.$destroy(),this.rulerItems=void 0),this.container.remove()}};const zA=(i,t)=>new jA(i,t),OA="data:image/png;base64,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";function BA(){const i=document.createElement("div"),t=document.createElement("i"),e=document.createElement("span");return i.appendChild(t),i.appendChild(e),i.style.position="relative",i.style.width="100%",i.style.display="flex",i.style.flexDirection="column",i.style.alignItems="center",i.style.marginTop=`${150/16}rem`,i.style.opacity="0",i.style.transition="opacity 1000ms linear",t.style.display="block",t.style.width=`${134/16}rem`,t.style.height=`${22/16}rem`,t.style.backgroundSize="100%",t.style.backgroundRepeat="no-repeat",t.style.backgroundImage=`url(${OA})`,e.style.marginTop=`${10/16}rem`,e.style.fontSize=`${16/16}rem`,e.style.color="#fff",e.style.opacity="0.7",e.style.textShadow="0 2px 16px rgb(22 34 83 / 24%)",e.style.fontWeight="bold",{appendTo(n){n.appendChild(i)},dispose(){i.remove()},setRoom(n){e.innerHTML=n.name+" "+Math.floor(n.size/1e6)+"㎡"},show(){i.style.opacity="1"},hide(){i.style.opacity="0"}}}const VA=new E.TextureLoader;function ns(i){return U(this,null,function*(){return new Promise((t,e)=>{VA.load(i,t,void 0,e)}).then(t=>(t.encoding=E.sRGBEncoding,t))})}const Ls={userAction:!0};class RA extends Bn{constructor(e,n){super(e,n);f(this,"state",{visible:!0,enabled:!0,config:{compassImageUrl:this.absoluteUrl("/release/web/v3/north-point-circle.96498e69.png"),entryDoorImageUrl:this.absoluteUrl("/release/web/enterDoor.831b8208.png")}});f(this,"data");f(this,"group",new E.Group);f(this,"roomInfoInstance");f(this,"roomInfoWrapperInstance");f(this,"compassMeshTween");f(this,"compassMesh");f(this,"entryDoorMesh");f(this,"dispose",()=>{var e,n,s,o;this.five.scene.remove(this.group),this.group.remove(...this.group.children),(n=(e=this.compassMesh)==null?void 0:e.material.map)==null||n.dispose(),(o=(s=this.entryDoorMesh)==null?void 0:s.material.map)==null||o.dispose(),this.five.off("dispose",this.dispose),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_addEventListener",()=>{this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive),this.five.on("modeChange",this.onFiveModeChange),this.five.on("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_removeEventListener",()=>{this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("modeChange",this.onFiveModeChange),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_enable",()=>{this.five.scene.add(this.group),this.init(),this.onFivePanoArrived(this.five.panoIndex||0),this._addEventListener()});f(this,"_disable",()=>{this._clearCompassIfNeed(),this._clearEntryDoorIfNeed(),this.five.scene.remove(this.group),this._removeEventListener()});f(this,"_toggleVisible",()=>{this.group.visible=this.state.visible,this.five.needsRender=!0});f(this,"_clearCompassIfNeed",()=>{var e;this.compassMesh&&(this.group.remove(this.compassMesh),(e=this.compassMesh.material.map)==null||e.dispose(),this.compassMesh=null)});f(this,"_clearEntryDoorIfNeed",()=>{var e;this.entryDoorMesh&&(this.group.remove(this.entryDoorMesh),(e=this.entryDoorMesh.material.map)==null||e.dispose(),this.entryDoorMesh=null),this.roomInfoInstance&&(this.roomInfoInstance.dispose(),this.roomInfoInstance=null),this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.dispose(),this.roomInfoWrapperInstance=null)});f(this,"onFivePanoWillArrive",e=>{var n,s;e!==this.five.panoIndex&&((n=this.compassMeshTween)==null||n.dispose(),(s=this.compassMesh)==null||s.material.setValues({opacity:0}))});f(this,"onFivePanoArrived",e=>{var s,o,r,a,l,c,d;const n=(r=(o=(s=this.five.work)==null?void 0:s.observers)==null?void 0:o[e])==null?void 0:r.standingPosition;if(this.compassMesh&&(this.compassMesh.position.copy(n.clone().setY(n.y+.01)),this.compassMesh.material.opacity===0&&((a=this.compassMeshTween)==null||a.dispose(),this.compassMeshTween=po(1e3).onUpdate(({progress:h})=>{var u;(u=this.compassMesh)==null||u.material.setValues({opacity:h}),this.five.needsRender=!0}).play())),this.entryDoorMesh){const u=new E.Vector3(this.data.entrance.position.x,this.data.entrance.position.y,this.data.entrance.position.z).clone().setY(n.y).sub(n).normalize(),m=n.clone().add(u.clone().multiplyScalar(.7)).setY(n.y+.01);this.entryDoorMesh.rotation.z=new E.Vector3(0,0,-1).angleTo(u),this.entryDoorMesh.position.copy(m),((l=this.data)==null?void 0:l.room_observers[e].room.type)===1?(c=this.entryDoorMesh)==null||c.material.setValues({opacity:1}):(d=this.entryDoorMesh)==null||d.material.setValues({opacity:0})}this.roomInfoInstance&&this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.css3DObject.position.copy(n.clone().setY(n.y+.01)),this.roomInfoInstance.setRoom(this.data.room_observers[e].room)),this.five.needsRender=!0});f(this,"onFiveCameraDirectionUpdate",({longitude:e,latitude:n})=>{var s,o;this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.css3DObject.rotation.z=e,n>.66&&this.five.getCurrentState().mode==="Panorama"?(s=this.roomInfoInstance)==null||s.show():(o=this.roomInfoInstance)==null||o.hide())});f(this,"onFiveModeChange",(e,n,s,o,r)=>{e!==n&&this.setState({visible:e===Te.Five.Mode.Panorama},{userAction:r})});this.five.scene.add(this.group),this.five.once("dispose",this.dispose),this.setState({visible:!0,enabled:!0,config:H(H({},this.state.config),n||{})})}enable(e=Ls){this.setState({enabled:!0},e)}disable(e=Ls){this.setState({enabled:!1},e)}show(e=Ls){if(this.state.enabled)return this.setState({visible:!0},e),Promise.resolve()}hide(e=Ls){if(this.state.enabled)return this.setState({visible:!1},e),Promise.resolve()}setState(e,n={userAction:!0}){var o,r;const s=JSON.parse(JSON.stringify(this.state));this.state={visible:(o=e.visible)!=null?o:s.visible,enabled:(r=e.enabled)!=null?r:s.enabled,config:H(H({},s.config),e.config||{})},this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:n.userAction}),e.enabled===!0&&(this._enable(),this.hooks.emit("enable",n)),e.enabled===!1&&(this._disable(),this.hooks.emit("disable",n)),e.visible===!1&&(this._toggleVisible(),this.hooks.emit("hide",n)),e.visible===!0&&(this._toggleVisible(),this.hooks.emit("show",n)),e.config&&this.init()}load(e,n,s=!0){return U(this,null,function*(){const o=yield this.formatData(e);JSON.stringify(this.data)!==JSON.stringify(o)&&(this.hooks.emit("dataChange",o,this.data),this.data=H({},o),this.init(),n&&this.setState(n,{userAction:s}),this.hooks.emit("dataLoaded",this.data))})}formatData(e){return e.version&&e.data?Promise.resolve(e.data):Promise.resolve(e)}init(){return U(this,null,function*(){var s,o,r,a;const e=(o=(s=this.data)==null?void 0:s.north_rad)!=null?o:null;this._clearCompassIfNeed(),e!==null&&(this.compassMesh=yield this.loadCompassMesh(),this.compassMesh.rotateX(-Math.PI/2),this.compassMesh.rotateZ(e-Math.PI/2),this.group.add(this.compassMesh));const n=(a=(r=this.data)==null?void 0:r.entrance)!=null?a:null;this._clearEntryDoorIfNeed(),n!==null&&(this.entryDoorMesh=yield this.loadEntryDoorMesh(),this.roomInfoWrapperInstance=this.loadRoomInfo(),this.roomInfoInstance=BA(),this.entryDoorMesh.rotateX(-Math.PI/2),this.roomInfoWrapperInstance&&this.roomInfoInstance.appendTo(this.roomInfoWrapperInstance.container),this.group.add(this.entryDoorMesh)),this.onFivePanoArrived(this.five.panoIndex||0),this.five.needsRender=!0})}loadCompassMesh(){return U(this,null,function*(){const e=this.state.config.compassImageUrl,n=yield ns(e),s=new E.CircleGeometry(.7,32),o=new E.MeshBasicMaterial({map:n,transparent:!0,opacity:0,depthTest:!1}),r=new E.Mesh(s,o);return r.name="pano-compass-mesh",r})}loadEntryDoorMesh(){return U(this,null,function*(){const e=this.state.config.entryDoorImageUrl,n=yield ns(e),s=new E.PlaneGeometry(.2,.16),o=new E.MeshBasicMaterial({map:n,transparent:!0,opacity:.8,depthTest:!1}),r=new E.Mesh(s,o);return r.name="pano-compass-entry-door",r})}loadRoomInfo(){const e=[new E.Vector3(-.7,0,-.7),new E.Vector3(.7,0,-.7),new E.Vector3(.7,0,.7),new E.Vector3(-.7,0,.7)];return vo(this.five).create3DDomContainer(e)}}const QA=(i,t)=>new RA(i,t),GA=1,NA=3,HA=new R.Color(16777215),_A=new R.Color(6522623),WA=new R.Color(16777215),FA=new R.Color(6522623),YA=6,UA=8,XA="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAIVBMVEUAAAD////////////////////////////////////////PIev5AAAACnRSTlMAG/Py2baba05un7UgfgAAAHJJREFUKM9joBpgLHVSCRdA4metAoJlCJHmVWBgAeNzroKCCVCBLpjACqgJVjCBxRBT2FbBQQJYQAohsBAsUIUQWA4WiEIILAULeCEEloAFtBACizAEMLRgGIphLabDMJ2O6TlM72MGECIIMQIZIxqoBQCPvpJ/e9FaAAAAAABJRU5ErkJggg==",Kh=new R.TextureLoader().load(XA),ZA={pointTexture:Kh,pointSize:YA,lineWidth:GA,lineColor:HA,pointColor:WA,lineRenderOrder:20,pointsRenderOrder:20},JA={pointTexture:Kh,pointSize:UA,lineWidth:NA,lineColor:_A,pointColor:FA,lineRenderOrder:10,pointsRenderOrder:10};function qA(i,t,e){var d,h,u,m,A;const n=(d=e==null?void 0:e.lineWidth)!=null?d:2,s=(h=e==null?void 0:e.lineColor)!=null?h:new R.Color(16777215),o=(u=e==null?void 0:e.pointSize)!=null?u:5,r=(m=e==null?void 0:e.lineRenderOrder)!=null?m:10,a=(A=e==null?void 0:e.lineRenderOrder)!=null?A:20,l=new sh.Line(i,t);l.setMaterial({linewidth:n,color:s}),l.line.material.depthTest=!1,l.line.material.transparent=!0,l.line.renderOrder=r,l.points.renderOrder=a;const c=l.points.material;return c.depthTest=!1,c.size=o,e!=null&&e.pointColor&&c.color.set(e.pointColor).convertSRGBToLinear(),e!=null&&e.pointTexture&&(c.map=e.pointTexture),l}function Ul(i,t){const[e,n]=i.points,s=t==="light"?JA:ZA,o=qA(e.position,n.position,s);return o.name="normalLine_"+i.id,o}function Ln(i){const{x:t,y:e,z:n}=i;return!(Math.abs(t)>1||Math.abs(e)>1||Math.abs(n)>1)}function Fs(i){const{z:t}=i;return!(Math.abs(t)>1)}function KA(i){const t=document.createElement("div");return t.setAttribute("style","backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);-webkit-tap-highlight-color: rgba(0,0,0,0);"),t.style.width="max-content",t.style.padding="3px 6px",t.style.lineHeight="1",t.style.textAlign="center",t.style.transform="translate(-50%, -50%)",t.style.fontSize="14px",t.style.color="#fff",t.style.cursor="pointer",t.style.userSelect="none",i!=null&&i.style&&Object.assign(t.style,i==null?void 0:i.style),t}function $A(i){const t=document.createElement("div");return i!=null&&i.id&&(t.id=i==null?void 0:i.id),t.classList.add("five-plugin-measure__distance"),t.style.position="absolute",t.style.left="0",t.style.top="0",t.style.width="0",t.style.height="0",t.style.transformOrigin="left top",i!=null&&i.style&&Object.assign(t.style,i.style),t}class $h{constructor(t){f(this,"ndcPosition");f(this,"contentDom");f(this,"containerDom");f(this,"params");f(this,"canSelected");f(this,"handleClick",t=>{var e,n;(n=(e=this.params).clickCallback)==null||n.call(e,t,this)});this.params=t,this.contentDom=KA({style:t.contentStyle}),this.containerDom=$A({style:t.containerStyle}),this.setCanSelect(!0)}setCanSelect(t){this.canSelected=t,this.containerDom.style.pointerEvents=t?"all":"none"}highlight(){this.contentDom.style.border="0.5px solid #95AEFF",this.contentDom.style.background="linear-gradient(90deg, #95AEFF 0%, #6386FF 100%)"}unHighlight(){this.contentDom.style.border="0.5px solid rgba(255,255,255,0.6)",this.contentDom.style.background="rgba(195,195,195,0.70)"}appendTo(t){t.appendChild(this.containerDom),this.containerDom.addEventListener("click",this.handleClick)}remove(){this.contentDom.removeEventListener("click",this.handleClick),this.containerDom.remove()}show(){this.containerDom.style.visibility="visible"}hide(){this.containerDom.style.visibility="hidden"}tempHide(){this.containerDom.style.opacity="0"}tempShow(){this.containerDom.style.opacity="1"}updateDomPosition(t){if(!this.ndcPosition){this.tempHide();return}const e=t.getElement();if(!e)return;const n=e.clientWidth,s=e.clientHeight,o=this.ndcPosition.clone().project(t.camera);if(!Fs(o)){this.tempHide();return}const r=(o.x+1)/2*n,a=-(o.y-1)/2*s;this.containerDom.style.transform=`translate(${r}px, ${a}px)`,this.tempShow()}}class ev extends $h{constructor(e){var n;e.contentStyle=Ae(H({},e.contentStyle),{background:"rgba(195,195,195,0.70)",border:"0.5px solid rgba(255,255,255,0.6)",borderRadius:"999px"});super(e);f(this,"line");this.line=e.line,(n=this.params.userDistanceItem)!=null&&n.element?this.containerDom.appendChild(this.params.userDistanceItem.element):this.containerDom.appendChild(this.contentDom)}update(e){var V;if(this.line.mesh.visible===!1){this.hide();return}const n=e.getElement();if(!n)return;const s=n.clientWidth,o=n.clientHeight,r=s/2,a=o/2;if(this.line.points.length<2)return;const[l,c]=this.line.points,d=l.position.clone().project(e.camera),h=c.position.clone().project(e.camera),u=nn(l.position,c.position).clone().project(e.camera),m=new R.Vector2(d.x*r,d.y*a),A=new R.Vector2(h.x*r,h.y*a),p=m.distanceTo(A);if((()=>!(Math.abs(d.z)>1||Math.abs(h.z)>1||!Fs(d)&&!Fs(h)||!Fs(u)||p===0))()===!1){this.hide();return}const b=(u.x+1)/2*s,y=-(u.y-1)/2*o,k=-(Math.atan((m.y-A.y)/(m.x-A.x))*180)/Math.PI,T=this.containerDom.parentElement&&this.contentDom.clientWidth>p?-20:0;this.containerDom.style.transform=`translate(${b}px, ${y}px) rotate(${k}deg) translateY(${T}px)`,this.show(),(V=this.params.userDistanceItem)==null||V.update({line:this.line,polyline:this.line.getPolyline()});const P=this.getCurrentContent();this.contentDom.innerText=P}getCurrentContent(){var l,c,d,h;if(this.line.points.length<2)return"";const[e,n]=this.line.points,s=e.position.clone().distanceTo(n.position),o=(c=this.line.text)!=null?c:(l=this.line.model.config)==null?void 0:l.defaultText,r=(h=(d=this.line.model.config)==null?void 0:d.getDistanceText)==null?void 0:h.call(d,s),a=o!=null?o:r;return a!=null?a:s.toFixed(2)+"m"}}class tn{constructor(t,e,n){f(this,"id");f(this,"selected",!1);f(this,"text");f(this,"type","line");f(this,"model");f(this,"mesh");f(this,"points");f(this,"lightMesh");f(this,"hook");f(this,"distanceItem");f(this,"polyline");f(this,"visible");var s;if(this.id=at(),this.model=n,t.id===e.id)throw new Error("无效的线段, 一个点无法构成线段");typeof n.config.defaultText=="string"&&(this.text=n.config.defaultText),this.hook=new Te.Subscribe,this.points=[t,e],this.mesh=Ul(this,"normal"),this.lightMesh=Ul(this,"light"),this.distanceItem=new ev({line:this,clickCallback:()=>this.hook.emit("selected",this),userDistanceItem:(s=this.model.config)!=null&&s.userDistanceItemCreator?this.model.config.userDistanceItemCreator():void 0}),t.lines.push(this),e.lines.push(this)}hide(){this.visible&&(this.visible=!1,this.mesh.visible=!1,this.distanceItem.hide())}show(){this.visible||(this.visible=!0,this.mesh.visible=!0,this.distanceItem.show())}setPoints(t,e){this.points[0].position.copy(t),this.points[1].position.copy(e),this.mesh.setPoints(t,e)}remove(){this.mesh.parent&&this.mesh.parent.remove(this.mesh),this.distanceItem.remove()}clear(){this.selected=!1,this.polyline=void 0}isEmpty(){return this.points.length===0}getPolyline(){if(this.polyline)return this.polyline;const t=this.model.polylines.find(e=>e.lines.includes(this));if(t)return this.polyline=t,t}findAnotherPoint(t){return this.points.find(({id:e})=>e!==t.id)}setText(t){this.text=t,this.hook.emit("textChanged",t)}toJson(){return{id:this.id,points:this.points.map(t=>t.toJson()),text:this.text}}clone(){const t=new tn(this.points[0].clone(),this.points[1].clone(),this.model);return t.text=this.text,t}}function tv(i,t){for(let e=0,n=t.length;e<n;e++)if(i===t[e])return t.splice(e,1)[0]}class ut{constructor(t){f(this,"id");f(this,"lines");f(this,"position");f(this,"type","point");if(this.id=at(),this.lines=[],this.position=new R.Vector3,Array.isArray(t))this.position.fromArray(t);else if(typeof t=="object"&&t.isVector3)this.position.copy(t);else throw new Error("position must be Vector3 or number[]")}toJson(){return{id:this.id,position:this.position.toArray()}}addLine(t){this.lines.push(t)}removeLine(t){tv(t,this.lines)}clone(){return new ut(this.position)}}const js=i=>i.preventDefault();let Eo=class{constructor(t){f(this,"model");f(this,"five");f(this,"group");f(this,"config");f(this,"dashed");f(this,"perpendicularDashed");f(this,"disposed",!1);f(this,"isMobile");f(this,"editParams");f(this,"magnifierParams");f(this,"mouseGroup");f(this,"container");f(this,"hook");f(this,"magnifier");f(this,"userDistanceItemCreator");f(this,"getMeasureType");f(this,"updateDistanceUI",()=>{this.dashed.distanceItem.update(this.five),this.model.getAllLines().forEach(t=>t.distanceItem.update(this.five))});var n,s;this.five=t.five,this.hook=t.hook,this.model=t.model,this.getMeasureType=t.getMeasureType,this.config=t.config,this.magnifierParams=t.magnifierParams,this.editParams=t.editParams,this.magnifier=t.magnifier,this.container=t.container,this.isMobile=(s=(n=t.openParams)==null?void 0:n.isMobile)!=null?s:!1,this.userDistanceItemCreator=t.userDistanceItemCreator,this.group=t.group,this.mouseGroup=t.mouseGroup,this.dashed=new tn(new ut([0,0,0]),new ut([0,0,0]),this.model),this.dashed.distanceItem.setCanSelect(!1),this.dashed.mesh.setMaterial({dashed:!0,dashScale:100}),this.dashed.mesh.name="dashLine",this.perpendicularDashed=new tn(new ut([0,0,0]),new ut([0,0,0]),this.model),this.perpendicularDashed.distanceItem.setCanSelect(!1),this.perpendicularDashed.mesh.setMaterial({dashed:!0,dashScale:40,color:new R.Color(10218089)}),this.perpendicularDashed.mesh.name="perpendicularDashLine";const e=this.five.getElement();e&&(e.addEventListener("touchstart",js),e.addEventListener("contextmenu",js))}get currentMeasureType(){return this.getMeasureType()}removeLine(t){this.group.remove(t.mesh,t.lightMesh),t.distanceItem.remove(),this.five.needsRender=!0}updateMouseGroup(t,e){if(!t)return this.mouseGroup;if(this.mouseGroup.position.copy(t.point),e)this.mouseGroup.quaternion.copy(e.quaternion);else if(t.face){const s=t.face.normal.clone().multiplyScalar(.05),r=t.point.clone().add(s).clone().add(s);this.mouseGroup.lookAt(r)}return this.mouseGroup}dispose(){this.disposed=!0,this.magnifier.disable(),this.model.getAllLines().forEach(e=>this.removeLine(e)),this.model.areas.forEach(e=>e.remove());const t=this.five.getElement();t&&(t.removeEventListener("touchstart",js),t.removeEventListener("contextmenu",js))}},jn=class{constructor(t){f(this,"id",at());f(this,"lines",[]);f(this,"points",[]);f(this,"visiblePanoIndexes");f(this,"model");f(this,"type","polyline");f(this,"hook",new Te.Subscribe);this.model=t.model}addLine(t){if(this.includes(t)){console.error(new Error("不能重复添加线段"));return}const e=this.getLastPoint(),n=e&&t.findAnotherPoint(e);e?e&&n?(this.lines.push(t),this.points.push(...t.points),this.hook.emit("lineAdded",t)):console.error(new Error("传入线段无法与当前折线进行连接")):(this.lines.push(t),this.points.push(...t.points),this.hook.emit("lineAdded",t))}removeLine(t){if(this.lines.length!==0){if(!this.isLastLine(t)){console.error(new Error("传入线段不是当前折线的最后一段"));return}this.lines.pop(),this.lines.length===0?this.points.slice(0,this.points.length):this.points.pop(),this.hook.emit("lineRemoved",t)}}isLastLine(t){const e=this.getLastLine();return e?t.id===e.id:!1}getLastLine(){return this.lines.slice(-1)[0]}getPointLength(){return this.lines.length+1}clear(){const t=this.lines.slice();this.lines.slice(0,this.lines.length),this.points.slice(0,this.points.length),t.reduceRight((e,n)=>this.hook.emit("lineRemoved",n),void 0)}overlapWith(t){return t.type==="point"?this.includes(t):t.type==="line"?t.points.some(e=>this.includes(e)):t.type==="polyline"?t.points.some(e=>this.includes(e)):!0}includes(t){return t.type==="point"?this.points.find(({id:e})=>e===t.id)!==void 0:t.type==="line"?this.lines.find(({id:e})=>e===t.id)!==void 0:!1}isEmpty(){return this.points.length===0}getLastPoint(){return this.points.slice(-1)[0]}toJson(){return{id:this.id,lines:this.lines.map(t=>t.toJson()),visiblePanoIndexes:this.visiblePanoIndexes}}getPointByID(t){return this.points.find(({id:e})=>e===t)}fromJson(t){this.clear(),this.id=t.id;const{getPoint:e,getAllPoints:n}=r(),s=t.lines.map(a=>{const[l,c]=a.points,d=e(l),h=e(c);if(!d||!h)throw new Error("线上的点不存在");const u=new tn(d,h,this.model);return u.id=a.id,u.text=a.text,u}),o=n();this.points.push(...o),this.lines.push(...s),this.visiblePanoIndexes=t.visiblePanoIndexes;function r(){const a=new Map;function l(d){const h=a.get(d.id);if(h)return h;const u=new ut(d.position);return u.id=d.id,a.set(d.id,u),u}function c(){return Array.from(a.values())}return{getPoint:l,getAllPoints:c}}return this}replace(t){this.id=t.id,this.clear(),this.lines.push(...t.lines),this.points.push(...t.points)}};class eu extends R.Object3D{constructor(){super()}add(...t){if(t.length===0)return this;const e=t.filter(Boolean);return super.add(...e)}remove(...t){if(t.length===0)return this;const e=t.filter(Boolean);return super.remove(...e)}removeFromParent(){const t=this.parent;return t!==null&&t.remove(this),this}}function nv(i){const t=[...new Set(i)];if(t.length<3)return;t.at(-1).equals(t[0])||t.push(t[0]);const e=t.flatMap(r=>[r.x,r.y,r.z]),n=new E.Float32BufferAttribute(e,3),s=of(e,void 0,3),o=new E.BufferGeometry;return o.setAttribute("position",n),o.setIndex(s),o.name="PolygonGeometry",o}const iv=new E.BufferGeometry;class tu extends eu{constructor(e){super();f(this,"isPolygonMesh",!0);f(this,"geometry",new E.BufferGeometry);f(this,"isBlank",!0);f(this,"points",[]);const n=new E.MeshBasicMaterial({color:4090367,transparent:!0,side:E.DoubleSide,depthTest:!0,opacity:.5}),s=new E.MeshBasicMaterial({color:16777215,transparent:!0,side:E.DoubleSide,depthTest:!1,depthWrite:!1,opacity:.3}),o=new E.Mesh(this.geometry,n),r=new E.Mesh(this.geometry,s);o.renderOrder=1,r.renderOrder=0,e&&this.updatePoints(e),this.add(o,r)}updatePoints(e){this.points=e;const n=nv(e);n?(this.geometry.copy(n),this.isBlank=!1):(this.geometry.copy(iv),this.isBlank=!0)}}function sv(i){const t=rv(i);if(t.length===0)return;let e=0,n=new R.Vector3;for(const[s,o,r]of t){const a=nu(s,o,r),l=ov(s,o,r,a);e+=a,n.add(l)}return n=n.divideScalar(e),{center:n,area:e}}function nu(i,t,e){return t.clone().sub(i).cross(e.clone().sub(i)).length()/2}function ov(i,t,e,n){const s=n!=null?n:nu(i,t,e);return nn(i,t,e).multiplyScalar(s)}function rv(i){var s;const t=i.getAttribute("position"),e=(s=i.getIndex())==null?void 0:s.array;if(!t||!e)return[];let n=[];for(let o=0;o<e.length;o+=3){const r=e[o],a=e[o+1],l=e[o+2],c=new R.Vector3().fromArray([t.getX(r),t.getY(r),t.getZ(r)]),d=new R.Vector3().fromArray([t.getX(a),t.getY(a),t.getZ(a)]),h=new R.Vector3().fromArray([t.getX(l),t.getY(l),t.getZ(l)]);n.push([c,d,h])}return n}class av extends $h{constructor(e){e.containerStyle=Ae(H({},e.containerStyle),{zIndex:"1"}),e.contentStyle=Ae(H({},e.contentStyle),{background:"#6386FF",borderRadius:"2px"});super(e);f(this,"area");this.area=e.area,this.containerDom.appendChild(this.contentDom)}updateArea(e,n){const s=n!=null?n:this.area.polygon.geometry,o=sv(s);if(!o){this.ndcPosition=null,this.updateDomPosition(e);return}const{area:r,center:a}=o;this.ndcPosition=a,this.updateDomPosition(e),this.updateAreaText(r)}updateAreaText(e,n){const{unit:s="m²",fix:o=2}=n!=null?n:{};this.contentDom.innerText=`${e.toFixed(o)}${s}`}}class Jr{constructor(t,e){f(this,"id",at());f(this,"selected",!1);f(this,"text");f(this,"type","area");f(this,"lightMesh");f(this,"areaItem");f(this,"hook",new Te.Subscribe);f(this,"polygon");f(this,"points",[]);f(this,"planeHelper");f(this,"polyline");f(this,"meshContainer");f(this,"domContainer");f(this,"five");f(this,"model");f(this,"updateDom",()=>{this.five&&(this.polyline.lines.forEach(t=>t.distanceItem.update(this.five)),this.areaItem.updateDomPosition(this.five))});var n;t&&(this.points=t),this.model=e.model,this.polygon=new tu(t),this.polyline=new jn({model:e.model}),this.areaItem=new av({area:this,clickCallback:(s,o)=>{const r=s.clientX+"px",a=s.clientY+"px";this.hook.emit("selected",this,{left:r,top:a})}}),this.domContainer=e.domContainer||null,this.meshContainer=e.meshContainer||null,this.five=e.five||null,this.areaItem.appendTo(this.domContainer),(n=this.five)==null||n.on("cameraUpdate",this.updateDom)}get isClosed(){var t;return this.points.length>=4&&((t=this.points.at(0))==null?void 0:t.equals(this.points.at(-1)))}addPoints(t){var s;this.points=this.points.concat(t);const e=this.points.at(-2),n=this.points.at(-1);if(e&&n){const o=new tn(new ut(e),new ut(n),this.polyline.model);this.polyline.addLine(o),this.meshContainer.add(o.mesh),this.five&&(o.distanceItem.setCanSelect(!1),o.distanceItem.appendTo(this.domContainer),o.distanceItem.update(this.five))}(s=this.meshContainer)!=null&&s.children.includes(this.polygon)||this.meshContainer.add(this.polygon),this.polygon.updatePoints(this.points),this.areaItem.updateArea(this.five),this.points.length===3?this.planeHelper=new E.Plane().setFromCoplanarPoints(this.points[0],this.points[1],this.points[2]):this.points.length<3&&(this.planeHelper=null)}popPoint(){this.points.pop();const t=this.polyline.lines.pop();t==null||t.remove(),this.polygon.updatePoints(this.points),this.areaItem.updateArea(this.five),this.points.length<3&&(this.planeHelper=null)}complete(){this.points.at(-1).equals(this.points[0])||this.addPoints(this.points[0])}hideArea(){this.polygon.visible=!1,this.areaItem.hide()}showArea(){this.polygon.visible=!0,this.areaItem.show()}projectPoint(t){return t&&(this.planeHelper?this.planeHelper.projectPoint(t,new E.Vector3):t)}remove(){this.polygon.removeFromParent(),this.areaItem.remove(),this.polyline.lines.forEach(t=>t.remove())}dispose(){this.remove(),this.model.areas.splice(this.model.areas.indexOf(this),1),this.planeHelper=null,this.five.off("cameraUpdate",this.updateDom),this.five.needsRender=!0}}function Xl(i,t){const e=Array.isArray(t)?t:[t];for(let n=0;n<e.length;n++){const s=e[n],o=i.start,r=i.end,a=s.start,l=s.end;if(Ni(o,a)||Ni(o,l)||Ni(r,a)||Ni(r,l)||Ni(o,r))continue;const c=zs(o,r,a),d=zs(o,r,l),h=zs(a,l,o),u=zs(a,l,r);if(c!==d&&h!==u||c===0&&Os(o,r,a)||d===0&&Os(o,r,l)||h===0&&Os(a,l,o)||u===0&&Os(a,l,r))return!0}return!1}function Ni(i,t){return i.x===t.x&&i.z===t.z&&i.y===t.y}function zs(i,t,e){const n=(e.z-i.z)*(t.x-i.x)-(t.z-i.z)*(e.x-i.x);return n===0?0:n<0?2:1}function Os(i,t,e){return t.x<=Math.max(i.x,e.x)&&t.x>=Math.min(i.x,e.x)&&t.z<=Math.max(i.z,e.z)&&t.z>=Math.min(i.z,e.z)}const iu="ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0;function qr(i){const{x:t,y:e}=i.center,{clientWidth:n,clientHeight:s}=i.target,o=i.target.getBoundingClientRect(),r=new R.Vector2(t,e).sub(new R.Vector2(o.left,o.top)),a=new R.Vector2(r.x/n*2-1,-(r.y/s)*2+1);return{point:r,ndcPoint:a}}function kr(i,t){const e=qr(t).ndcPoint,n=new R.Raycaster;return n.setFromCamera(e,i.camera),i.model.intersectRaycaster(n)}const $n=()=>!1;class lv{constructor(t,e){f(this,"hook",new Te.Subscribe);f(this,"outOfFive",!1);f(this,"five");f(this,"hammer");f(this,"mode");f(this,"pointSelectorHelper");f(this,"enabled",!1);f(this,"pressDown",!1);f(this,"adherePoints",null);f(this,"adherePointsRadius",.1);f(this,"lastFiveHelperVisible");f(this,"select",t=>{t&&this.updatePointSelectorHelperIntersect(t);const e=this.hook.emit("wantsSelect",this.position);return e||(this.pointSelectorHelper.hide(),this.hook.emit("select",this.position)),!e});f(this,"onEnter",()=>{this.pointSelectorHelper.show(),this.outOfFive=!1,this.hook.emit("intersectionUpdate",this.position)});f(this,"onLeave",()=>{this.pointSelectorHelper.hide(),this.outOfFive=!0,this.hook.emit("intersectionUpdate",null)});f(this,"onTap",t=>{const[e]=kr(this.five,t);e!=null&&e.face&&this.select(e)});f(this,"onPan",t=>{if(!this.pressDown)return;const[e]=kr(this.five,t);e!=null&&e.face&&this.intersectionOnModelUpdate(e)});f(this,"onPress",t=>{const[e]=kr(this.five,t);e!=null&&e.face&&(this.pressDown=!0,this.intersectionOnModelUpdate(e))});f(this,"onPanEnd",()=>{this.pressDown&&(this.pressDown=!1,this.select())});f(this,"intersectionOnModelUpdate",t=>{this.pointSelectorHelper.show(),this.updatePointSelectorHelperIntersect(t)});f(this,"updateByMousePosition",t=>{const e=this.five.getElement();if(!e)return;const{clientX:n,clientY:s}=t,o={x:n/e.clientWidth,y:1-s/e.clientHeight};this.updateByNdcPosition(o)});f(this,"updateByNdcPosition",t=>{const e=gh(this.five,t),n=(()=>e?Ae(H({},e),{isVirtual:!1}):Ae(H({},dv(this.five,t)),{isVirtual:!0}))();this.updatePointSelectorHelperIntersect(n)});f(this,"updatePointSelectorHelperIntersect",t=>{var s;const e=H({},t);let n=!1;if(((s=this.adherePoints)==null?void 0:s.length)>0&&typeof this.adherePointsRadius=="number"){for(const o of this.adherePoints)if(o.distanceTo(t.point)<this.adherePointsRadius){e.point=o.clone(),n=!0;break}}this.pointSelectorHelper.updateWithIntersect(e,{emitEvent:!1}),this.hook.emit("intersectionUpdate",e,n)});f(this,"onFiveWantsPanGesture",()=>{if(this.pressDown)return!1});f(this,"renderScreenCenter",()=>{this.updateByNdcPosition({x:.5,y:.5})});f(this,"emitIntersectionUpdate",t=>{this.hook.emit("intersectionUpdate",t)});var o,r;this.five=t;const n=(o=e==null?void 0:e.mode)!=null?o:"auto";n==="auto"?this.mode=iu?"fixed":"cursor":this.mode=n;const s={autoFixPCPosition:this.mode==="cursor",initialPosition:this.mode==="fixed"?{left:"35%",top:"20%"}:void 0};this.pointSelectorHelper=new bh(t,Ae(H({},e==null?void 0:e.pointSelectorHelperParams),{magnifierParams:H(H({},s),(r=e==null?void 0:e.pointSelectorHelperParams)==null?void 0:r.magnifierParams)})),this.pointSelectorHelper.hide()}get position(){return this.outOfFive?null:this.pointSelectorHelper.position}enable(){if(this.enabled)return;this.enabled=!0,this.pointSelectorHelper.enable();const t=this.five.getElement();if(!t)throw new Error("five element not found");this.hammer||(this.hammer=new ss(t)),this.mode==="cursor"?(this.five.on("intersectionOnModelUpdate",this.intersectionOnModelUpdate),this.five.on("wantsPanGesture",this.onFiveWantsPanGesture),this.five.on("wantsMoveToPano",$n),this.five.on("wantsChangeMode",$n),this.five.on("wantsTapGesture",$n),t.addEventListener("mousemove",this.updateByMousePosition),t.addEventListener("mouseenter",this.onEnter),t.addEventListener("mouseout",this.onLeave),this.hammer.on("tap",this.onTap),this.hammer.on("pan",this.onPan),this.hammer.on("press",this.onPress),this.hammer.on("panend",this.onPanEnd)):this.mode==="fixed"&&(this.five.on("panGesture",this.renderScreenCenter),this.five.on("interiaPan",this.renderScreenCenter),this.renderScreenCenter(),this.pointSelectorHelper.show()),this.pointSelectorHelper.hooks.on("intersectionUpdate",this.emitIntersectionUpdate),this.lastFiveHelperVisible=this.five.helperVisible,this.five.helperVisible=!1}disable(){if(!this.enabled)return;this.enabled=!1,this.pointSelectorHelper.disable();const t=this.five.getElement();this.five.off("intersectionOnModelUpdate",this.intersectionOnModelUpdate),this.five.off("wantsPanGesture",this.onFiveWantsPanGesture),this.five.off("wantsMoveToPano",$n),this.five.off("wantsChangeMode",$n),this.five.off("wantsTapGesture",$n),this.five.helperVisible=this.lastFiveHelperVisible,t==null||t.removeEventListener("mousemove",this.updateByMousePosition),t==null||t.removeEventListener("mouseenter",this.onEnter),t==null||t.removeEventListener("mouseout",this.onLeave),this.hammer.off("tap",this.onTap),this.hammer.off("pan",this.onPan),this.hammer.off("press",this.onPress),this.hammer.off("panend",this.onPanEnd),this.five.off("panGesture",this.renderScreenCenter),this.five.off("interiaPan",this.renderScreenCenter),this.pointSelectorHelper.hooks.off("intersectionUpdate",this.emitIntersectionUpdate)}dispose(){this.disable(),this.pointSelectorHelper.dispose()}setAdherePoints(t,e){t?this.adherePoints=Array.isArray(t)?t:[t]:this.adherePoints=null,typeof e=="number"&&(this.adherePointsRadius=e)}}function cv(i,t){const{x:e,y:n}=t,s=e*2-1,o=n*2-1,r=new R.Vector2().fromArray([s,o]),a=new R.Raycaster;return a.setFromCamera(r,i.camera),a}function dv(i,t){const e=cv(i,t),n=3,s=new R.Vector3().addVectors(e.ray.origin,e.ray.direction.clone().normalize().multiplyScalar(n)),o=e.ray.direction.clone().negate();return{distance:n,point:s,object:new R.Object3D,face:new R.Face3(0,0,0,o)}}const hv=`
|
|
287
|
+
`,y=document.createElement("div");return y.setAttribute("class","PanoRulerPlugin-rule"),y.setAttribute("data-name",p),y.setAttribute("style","display: none"),y.innerHTML=v,y},s=document.createElement("div");s.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;");const o=document.createElement("div");o.innerHTML=yA,s.appendChild(o);const r={},a=(p,g)=>{if(e.loaded)throw new Error("标尺被重复初始化!");const v=CA(p,i),y=i.work;if(!y)return!1;for(const I in g){const k=g[I],{standingPosition:T}=y.observers[0],P=k.map(({x:V,z:L,observers:W})=>{const q=W.length>0?p.rooms[p.observers[W[0]]].name:"",N=v[q]?v[q].floor:null;let G=1/0,_={index:0,x:T.x,y:T.y,z:T.z};W.forEach(ce=>{if(!y.observers[ce])return;const{standingPosition:se}=y.observers[ce],we={index:ce,x:se.x,y:se.y,z:se.z},Ce=wA({x:V,z:L},we);N?Ce<G&&Math.abs(we.y-N)<.3&&(G=Ce,_=we):Ce<G&&(G=Ce,_=we)});const Q=new R.Vector3(V,_.y,L);Object.assign(Q,{observers:W});const F=v[q]?v[q].roof:null,Z=F?new R.Vector3(V,F,L):null;return Z&&Object.assign(Z,{observers:W}),{origin:Q,vertical:Z}});r[I]={origins:P.map(V=>V.origin),rules:[]};for(const{origin:V,vertical:L}of P){if(!L)continue;const W=n(I,V.distanceTo(L));s.append(W),r[I].rules.push({vertical:!0,rule:[V,L],$element:W})}for(let V=0;V<P.length;V++){let L=V+1;L>=P.length&&(L=0);const{origin:W}=P[V],{origin:q}=P[L],N=n(I,W.distanceTo(q));s.append(N),r[I].rules.push({vertical:!1,rule:[W,q],$element:N})}}return e.loaded=!0,!0},l=(p,g,v)=>U(exports,null,function*(){const y=p||t.roomInfo,I=g||t.roomRules;if(!y||!I)throw new Error("标尺数据依赖不齐全!");return e.loaded=!1,e.options=H(H({},e.options),v||{}),i.model.loaded?a(y,I):yield new Promise(k=>i.once("modelLoaded",()=>k(a(y,I))))});t.roomInfo&&t.roomRules&&l(t.roomInfo,t.roomRules);const c=(p,g,v,y)=>{const I=[[{x:0,y:0},{x:v,y:0}],[{x:0,y:0},{x:0,y}],[{x:v,y:0},{x:v,y}],[{x:0,y},{x:v,y}]],k=[];for(let T=0;T<I.length;T++){const P=Jh([p,g],[I[T][0],I[T][1]],!0);P&&k.push(P)}return k.length===0?!1:k},d=()=>{var W;const p=(W=i.getElement())==null?void 0:W.parentElement;if(!p||!e.loaded||Object.keys(r).length<=0)return;const{panoIndex:g,camera:v,currentMode:y}=i;if(g===void 0)return;let I;for(const q in r)q.split(",").indexOf(g.toString())>=0&&(I=q);if(!I){for(const q in r)for(const{$element:N}of r[q].rules)N.style.display="none";return}const k=v.position,T=v.getWorldDirection(new R.Vector3),P=p.clientWidth,V=p.clientHeight;if(y!==Te.Five.Mode.Panorama){for(const q in r)for(const{$element:N}of r[q].rules)N.style.display="none";return}for(const q in r)for(const{$element:N}of r[q].rules)N.style.display=q===I?"block":"none";const[L]=r[I].origins.slice().filter(q=>q.observers.indexOf(g)>=0).sort((q,N)=>{const G=q.clone().setY(0).sub(k).normalize().angleTo(T.clone().setY(0)),_=N.clone().setY(0).sub(k).normalize().angleTo(T.clone().setY(0));return G-_});for(const{rule:q,vertical:N,$element:G}of r[I].rules){const[_,Q]=q,F=G.querySelector(".PanoRulerPlugin-rule-line");if(!F)return;if(!L){G.style.display="none";continue}if(_!==L&&Q!==L){G.style.display="none";continue}if(_.distanceTo(Q)<.3){G.style.display="none";continue}if(_.observers.indexOf(g)===-1||Q.observers.indexOf(g)===-1){G.style.display="none";continue}if(_.clone().sub(k).normalize().angleTo(T)>Math.PI/2){G.style.display="none";continue}if(Q.clone().sub(k).normalize().angleTo(T)>Math.PI/2){G.style.display="none";continue}const $=_.distanceTo(Q);if(Q.clone().sub(Q.clone().sub(_).divide(new R.Vector3(2,2,2))).distanceTo(k)/$>8){G.style.display="none";continue}const we=_.clone().project(v),Ce=(we.x+1)/2*P,pe=(-we.y+1)/2*V,Be=Q.clone().project(v),ve=(Be.x+1)/2*P,We=(-Be.y+1)/2*V,fe=Math.sqrt(Math.pow(ve-Ce,2)+Math.pow(We-pe,2));let ye=fe,Le=50;const me=c({x:~~Ce,y:~~pe},{x:~~ve,y:~~We},P,V);if(me&&me.length===1&&(L===_?(ye=Math.sqrt(Math.pow(me[0].x-Ce,2)+Math.pow(me[0].y-pe,2)),Le=ye/fe*50):L===Q&&(ye=Math.sqrt(Math.pow(me[0].x-ve,2)+Math.pow(me[0].y-We,2)),Le=100-ye/fe*50)),me&&me.length===2){const re={x:(me[0].x+me[1].x)/2,y:(me[0].y+me[1].y)/2};Le=Math.sqrt(Math.pow(re.x-Ce,2)+Math.pow(re.y-pe,2))/fe*100}const ct=(Math.PI/2-Math.atan2(ve-Ce,pe-We))/Math.PI*180,ke=F.querySelector(".PanoRulerPlugin-rule-label"),nt=ke.children[0].clientWidth;nt>=fe||nt/2>=Le/100*fe||nt/2>=(1-Le/100)*fe?F.style.display="none":(F.style.display="block",F.style.width=fe+"px",F.style.left=Ce+"px",F.style.top=pe+"px",F.style.transform=`rotate(${-ct}deg)`,ke.style.left=`${Le}%`)}},h=()=>qh(d),u=()=>{var p,g;return e.loaded?(e.enable||(s.setAttribute("class","PanoRulerPlugin"+(e.options.className?" "+e.options.className:"")),(g=(p=i.getElement())==null?void 0:p.parentElement)==null||g.append(s),d(),i.on("modeChange",d),i.on("cameraUpdate",h),e.enable=!0),!0):!1},m=()=>(e.enable&&(i.off("modeChange",d),i.off("cameraUpdate",h),s&&s.remove(),e.enable=!1),!0);function A(p){if(p.distanceText&&p.distanceText!==e.options.distanceText){const g=p.distanceText;e.options.distanceText=g,Object.values(r).forEach(v=>{v.rules.forEach(y=>{const[I,k]=y.rule,T=I.distanceTo(k),P=y.$element.querySelector(".PanoRulerPlugin-rule-label-name");P&&(P.innerText=g(T))})})}}return{enable:u,disable:m,load:l,state:e,changeConfigs:A}};function PA(i){ue(i,"svelte-1h27ktp",".PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp{position:absolute;transform-origin:left 0.0625rem;width:0;height:0.125rem;pointer-events:none}.PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp::after{content:'';position:absolute;left:-0.125rem;top:-0.1rem;width:0.25rem;height:0.25rem;border-radius:50%;background:#fff;z-index:1;animation:svelte-1h27ktp-viewport-rule-point 0.1s 1s;animation-fill-mode:both}.PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp::before{content:'';position:absolute;right:-0.125rem;top:-0.1rem;width:0.25rem;height:0.25rem;border-radius:50%;background:#fff;z-index:1;animation:svelte-1h27ktp-viewport-rule-point 0.1s 1.5s;animation-fill-mode:both}.PanoRulerPlugin-rule-line.svelte-1h27ktp em.svelte-1h27ktp{display:block;height:0.0625rem;animation:svelte-1h27ktp-viewport-rule-line 0.5s ease 1s;animation-fill-mode:both;box-shadow:0 0 0.25rem rgb(0 0 0 / 40%);position:relative}.rule-mixed-line.svelte-1h27ktp.svelte-1h27ktp{display:flex;height:0.0625rem;animation:svelte-1h27ktp-viewport-rule-line 0.5s ease 1s;animation-fill-mode:both;align-items:center}.em-solid.svelte-1h27ktp.svelte-1h27ktp{height:100%;background:#ffffff}.em-dotted.svelte-1h27ktp.svelte-1h27ktp{height:0.125rem;background:var(--background-image);background-position:center;background-repeat:repeat}.PanoRulerPlugin-rule-label.svelte-1h27ktp.svelte-1h27ktp{position:absolute;width:0;height:0;top:0.0625rem;pointer-events:none}.PanoRulerPlugin-rule-label-name.svelte-1h27ktp.svelte-1h27ktp{position:absolute;padding:0.1875rem 0.375rem;background:rgba(195, 195, 195, 0.3);backdrop-filter:blur(0.25rem);-webkit-backdrop-filter:blur(0.25rem);border-radius:6.25rem;border:0.0625rem solid rgba(255, 255, 255, 0.6);white-space:nowrap;overflow:hidden;color:#ffffff;font-weight:500;font-size:0.75rem;line-height:1;animation:svelte-1h27ktp-viewport-rule-label 0.25s ease 1s;animation-fill-mode:both;box-shadow:inset 0 0 0.625rem 0 rgba(255, 255, 255, 0.3)}@keyframes svelte-1h27ktp-viewport-rule-line{0%{width:0%}100%{width:100%}}@keyframes svelte-1h27ktp-viewport-rule-label{0%{opacity:0;transform:scaleX(0)}100%{opacity:1;transform:translate(-50%, -50%) scaleX(1)}}@keyframes svelte-1h27ktp-viewport-rule-point{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}")}function _l(i,t,e){const n=i.slice();return n[6]=t[e],n}function EA(i){let t,e=i[0].children,n=[];for(let s=0;s<e.length;s+=1)n[s]=Wl(_l(i,e,s));return{c(){t=x("div");for(let s=0;s<n.length;s+=1)n[s].c();w(t,"class","rule-mixed-line svelte-1h27ktp")},m(s,o){B(s,t,o);for(let r=0;r<n.length;r+=1)n[r]&&n[r].m(t,null)},p(s,o){if(o&9){e=s[0].children;let r;for(r=0;r<e.length;r+=1){const a=_l(s,e,r);n[r]?n[r].p(a,o):(n[r]=Wl(a),n[r].c(),n[r].m(t,null))}for(;r<n.length;r+=1)n[r].d(1);n.length=e.length}},d(s){s&&O(t),Tt(n,s)}}}function kA(i){let t,e;return{c(){t=x("em"),w(t,"class",e=Re(i[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),w(t,"style",i[3])},m(n,s){B(n,t,s)},p(n,s){s&1&&e!==(e=Re(n[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&w(t,"class",e),s&8&&w(t,"style",n[3])},d(n){n&&O(t)}}}function Wl(i){let t,e,n=`${i[6].width}px`;return{c(){t=x("div"),w(t,"class",e=Re(i[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),w(t,"style",i[3]),z(t,"width",n)},m(s,o){B(s,t,o)},p(s,o){o&1&&e!==(e=Re(s[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&w(t,"class",e),o&8&&w(t,"style",s[3]),(o&8||o&9&&n!==(n=`${s[6].width}px`))&&z(t,"width",n)},d(s){s&&O(t)}}}function MA(i){let t,e,n,s,o=i[0].labelElement+"",r,a,l=`${i[0].labelOffset}%`,c=`${i[0].width}px`,d=`${i[0].left}px`,h=`${i[0].top}px`,u=`rotate(${i[0].rotateDeg}deg)`;function m(g,v){return g[0].children.length===0?kA:EA}let A=m(i),p=A(i);return{c(){t=x("div"),p.c(),e=ee(),n=x("div"),s=x("div"),r=Me(o),w(s,"class","PanoRulerPlugin-rule-label-name svelte-1h27ktp"),Ne(()=>i[4].call(s)),w(n,"class","PanoRulerPlugin-rule-label svelte-1h27ktp"),z(n,"left",l),w(t,"class","PanoRulerPlugin-rule-line svelte-1h27ktp"),z(t,"width",c),z(t,"left",d),z(t,"top",h),z(t,"transform",u),z(t,"display",i[0].visible&&i[2]?"block":"none")},m(g,v){B(g,t,v),p.m(t,null),D(t,e),D(t,n),D(n,s),D(s,r),a=bo(s,i[4].bind(s))},p(g,[v]){A===(A=m(g))&&p?p.p(g,v):(p.d(1),p=A(g),p&&(p.c(),p.m(t,e))),v&1&&o!==(o=g[0].labelElement+"")&&Oe(r,o),v&1&&l!==(l=`${g[0].labelOffset}%`)&&z(n,"left",l),v&1&&c!==(c=`${g[0].width}px`)&&z(t,"width",c),v&1&&d!==(d=`${g[0].left}px`)&&z(t,"left",d),v&1&&h!==(h=`${g[0].top}px`)&&z(t,"top",h),v&1&&u!==(u=`rotate(${g[0].rotateDeg}deg)`)&&z(t,"transform",u),v&5&&z(t,"display",g[0].visible&&g[2]?"block":"none")},i:J,o:J,d(g){g&&O(t),p.d(),a()}}}function xA(i,t,e){let n,{rulerItemProp:s}=t,o=!0,r,a="data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjQiIHdpZHRoPSIxMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGZpbHRlciBpZD0icHJlZml4X19hIiBoZWlnaHQ9IjQwMCUiIHdpZHRoPSIxMzcuNCUiIHg9Ii0xOC43JSIgeT0iLTE1MCUiPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iZGlsYXRlIiByYWRpdXM9Ii41IiByZXN1bHQ9InNoYWRvd1NwcmVhZE91dGVyMSIvPjxmZU9mZnNldCBpbj0ic2hhZG93U3ByZWFkT3V0ZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiByYWRpdXM9IjEiIHJlc3VsdD0ic2hhZG93SW5uZXIiLz48ZmVPZmZzZXQgaW49InNoYWRvd0lubmVyIiByZXN1bHQ9InNoYWRvd0lubmVyIi8+PGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIGluMj0ic2hhZG93SW5uZXIiIG9wZXJhdG9yPSJvdXQiIHJlc3VsdD0ic2hhZG93T2Zmc2V0T3V0ZXIxIi8+PGZlR2F1c3NpYW5CbHVyIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIgc3RkRGV2aWF0aW9uPSIuNSIvPjxmZUNvbG9yTWF0cml4IGluPSJzaGFkb3dCbHVyT3V0ZXIxIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuMiAwIi8+PC9maWx0ZXI+PHBhdGggaWQ9InByZWZpeF9fYiIgZD0iTS44ODkgMkgxMS41OCIvPjwvZGVmcz48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS1kYXNoYXJyYXk9IjUgNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuNCIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjwvZz48L3N2Zz4=";function l(){r=this.offsetWidth,e(1,r)}return i.$$set=c=>{"rulerItemProp"in c&&e(0,s=c.rulerItemProp)},i.$$.update=()=>{i.$$.dirty&3&&(r>=s.width||r/2>=s.labelOffset/100*s.width||r/2>=(1-s.labelOffset/100)*s.width?e(2,o=!1):e(2,o=!0))},e(3,n=`--background-image: url(${a})`),[s,r,o,n,l]}class DA extends le{constructor(t){super(),ae(this,t,xA,MA,oe,{rulerItemProp:0},PA)}}function Fl(i,t,e){const n=i.slice();return n[12]=t[e],n}function Yl(i){let t,e;return t=new DA({props:{rulerItemProp:i[12]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.rulerItemProp=n[12]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function SA(i){let t,e,n=i[0],s=[];for(let r=0;r<n.length;r+=1)s[r]=Yl(Fl(i,n,r));const o=r=>j(s[r],1,1,()=>{s[r]=null});return{c(){t=x("div");for(let r=0;r<s.length;r+=1)s[r].c()},m(r,a){B(r,t,a);for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(t,null);e=!0},p(r,[a]){if(a&1){n=r[0];let l;for(l=0;l<n.length;l+=1){const c=Fl(r,n,l);s[l]?(s[l].p(c,a),M(s[l],1)):(s[l]=Yl(c),s[l].c(),M(s[l],1),s[l].m(t,null))}for(de(),l=n.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<n.length;a+=1)M(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)j(s[a]);e=!1},d(r){r&&O(t),Tt(s,r)}}}function TA(i,t,e){var p,g,v,y;let{five:n}=t,{rulerDatas:s}=t,{options:o}=t,r=[];const a=((g=(p=n.getElement())==null?void 0:p.parentElement)==null?void 0:g.clientWidth)||0,l=((y=(v=n.getElement())==null?void 0:v.parentElement)==null?void 0:y.clientHeight)||0,c=(I,k)=>{const T=[[{x:0,y:0},{x:a,y:0}],[{x:0,y:0},{x:0,y:l}],[{x:a,y:0},{x:a,y:l}],[{x:0,y:l},{x:a,y:l}]],P=[];for(let V=0;V<T.length;V++){const L=Jh([I,k],[T[V][0],T[V][1]],!0);L&&P.push(L)}return P.length===0?!1:P},d=(I,k)=>{const T=I.clone().project(n.camera),P=(T.x+1)/2*a,V=(-T.y+1)/2*l,L=k.clone().project(n.camera),W=(L.x+1)/2*a,q=(-L.y+1)/2*l,N=Math.sqrt(Math.pow(W-P,2)+Math.pow(q-V,2));return{startLeft:P,startTop:V,endLeft:W,endTop:q,distance:N}},h=(I,k,T)=>{const P=n.camera.position,V=n.camera.getWorldDirection(new R.Vector3),L=I.clone().sub(P).normalize().angleTo(V),W=k.clone().sub(P).normalize().angleTo(V),q=I.distanceTo(k),G=k.clone().sub(k.clone().sub(I).divide(new R.Vector3(2,2,2))).distanceTo(P),{startLeft:_,startTop:Q,endLeft:F,endTop:Z,distance:X}=d(I,k),ce=-((Math.PI/2-Math.atan2(F-_,Q-Z))/Math.PI)*180;let se=!0;T||(se=!1),!Gt(I,T)&&!Gt(k,T)&&(se=!1),q<.3&&(se=!1),L>Math.PI/2&&(se=!1),W>Math.PI/2&&(se=!1),G/q>8&&(se=!1);let we=50,Ce=X;const pe=c({x:~~_,y:~~Q},{x:~~F,y:~~Z});if(pe&&pe.length===1&&(Gt(I,T)?(Ce=Math.sqrt(Math.pow(pe[0].x-_,2)+Math.pow(pe[0].y-Q,2)),we=Ce/X*50):Gt(k,T)&&(Ce=Math.sqrt(Math.pow(pe[0].x-F,2)+Math.pow(pe[0].y-Z,2)),we=100-Ce/X*50)),pe&&pe.length===2){const Be={x:(pe[0].x+pe[1].x)/2,y:(pe[0].y+pe[1].y)/2};we=Math.sqrt(Math.pow(Be.x-_,2)+Math.pow(Be.y-Q,2))/X*100}return{startLeft:_,startTop:Q,distance:X,deg:ce,visible:se,labelOffset:we,ruleLength:q}},u=()=>{const I=n.panoIndex,k=s.find(N=>N.panoIndex===I);if(!k)return e(0,r=[]);if(n.currentMode!==Te.Five.Mode.Panorama)return e(0,r=[]);const T=n.camera.position,P=n.camera.getWorldDirection(new R.Vector3),V=k.lines.map(N=>new R.Vector3(N.start[0],-N.start[1],-N.start[2])),L=k.lines.map(N=>new R.Vector3(N.end[0],-N.end[1],-N.end[2])),[W]=V.concat(L).sort((N,G)=>{const _=N.clone().setY(0).sub(T).normalize().angleTo(P.clone().setY(0)),Q=G.clone().setY(0).sub(T).normalize().angleTo(P.clone().setY(0));return _-Q}),q=k.lines.map(N=>{var Ce,pe;const G=N.start,_=N.end,{startLeft:Q,startTop:F,distance:Z,deg:X,visible:$,labelOffset:ce,ruleLength:se}=h(new R.Vector3(G[0],-G[1],-G[2]),new R.Vector3(_[0],-_[1],-_[2]),W),we=[];return N.children&&((Ce=N.children)==null?void 0:Ce.length)>0&&((pe=N.children)==null||pe.forEach(Be=>{const ve=Be.start,We=Be.end,{distance:fe}=d(new R.Vector3(ve[0],-ve[1],-ve[2]),new R.Vector3(We[0],-We[1],-We[2]));we.push({width:fe,state:Be.state})})),{width:Z,left:Q,top:F,rotateDeg:X,state:N.state,children:we,labelOffset:ce,visible:$,labelElement:o.distanceText(se)}});e(0,r=q)},m=()=>Ao(u),A=Sa(u,80);return vt(()=>{u(),n.on("panoArrived",u),n.on("modeChange",u),n.on("cameraDirectionUpdate",m),n.on("movingToPano",m),n.on("mouseWheel",()=>A()),n.on("pinchGesture",()=>A())}),Lt(()=>{n.off("panoArrived",u),n.off("modeChange",u),n.off("cameraDirectionUpdate",m),n.off("movingToPano",m),n.off("mouseWheel",()=>A()),n.off("pinchGesture",()=>A())}),i.$$set=I=>{"five"in I&&e(1,n=I.five),"rulerDatas"in I&&e(2,s=I.rulerDatas),"options"in I&&e(3,o=I.options)},[r,n,s,o]}class LA extends le{constructor(t){super(),ae(this,t,TA,SA,oe,{five:1,rulerDatas:2,options:3})}}let jA=class{constructor(t,e){f(this,"five");f(this,"container",document.createElement("div"));f(this,"panoRulerProData");f(this,"rulerItems");f(this,"state",{enabled:!1,loaded:!1,options:{className:"",distanceText:t=>`${t.toFixed(1)}m`}});var n,s;this.five=t,this.container.classList.add("panoRulerProPlugin-container"),this.container.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;"),e&&(e.data&&this.load(e.data),this.state.options=H(H({},this.state.options),e.options||{}),(n=e.options)!=null&&n.className&&this.container.classList.add((s=e.options)==null?void 0:s.className)),this.five.once("modelLoaded",()=>U(this,null,function*(){var o,r;(r=(o=this.five.getElement())==null?void 0:o.parentNode)==null||r.append(this.container)})),this.five.once("dispose",()=>this.dispose())}load(t){return U(this,null,function*(){if(!this.five.work)return;const e=t.data;if(!e)throw new Error("标尺数据依赖不齐全!");this.panoRulerProData=e,this.state.loaded=!0})}enable(){return this.state.loaded?(this.state.enabled||(this.state.enabled=!0,this.render()),!0):!1}disable(){return this.state.enabled&&(this.state.enabled=!1,this.render()),!0}render(){return U(this,null,function*(){var t;if(this.state.enabled){if(!this.panoRulerProData||!this.container)return;this.rulerItems=new LA({target:this.container,props:{five:this.five,rulerDatas:this.panoRulerProData,options:this.state.options}})}else(t=this.rulerItems)==null||t.$destroy(),this.rulerItems=void 0})}dispose(){this.container&&(this.rulerItems.$destroy(),this.rulerItems=void 0),this.container.remove()}};const zA=(i,t)=>new jA(i,t),OA="data:image/png;base64,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";function BA(){const i=document.createElement("div"),t=document.createElement("i"),e=document.createElement("span");return i.appendChild(t),i.appendChild(e),i.style.position="relative",i.style.width="100%",i.style.display="flex",i.style.flexDirection="column",i.style.alignItems="center",i.style.marginTop=`${150/16}rem`,i.style.opacity="0",i.style.transition="opacity 1000ms linear",t.style.display="block",t.style.width=`${134/16}rem`,t.style.height=`${22/16}rem`,t.style.backgroundSize="100%",t.style.backgroundRepeat="no-repeat",t.style.backgroundImage=`url(${OA})`,e.style.marginTop=`${10/16}rem`,e.style.fontSize=`${16/16}rem`,e.style.color="#fff",e.style.opacity="0.7",e.style.textShadow="0 2px 16px rgb(22 34 83 / 24%)",e.style.fontWeight="bold",{appendTo(n){n.appendChild(i)},dispose(){i.remove()},setRoom(n){e.innerHTML=n.name+" "+Math.floor(n.size/1e6)+"㎡"},show(){i.style.opacity="1"},hide(){i.style.opacity="0"}}}const VA=new E.TextureLoader;function ns(i){return U(this,null,function*(){return new Promise((t,e)=>{VA.load(i,t,void 0,e)}).then(t=>(t.encoding=E.sRGBEncoding,t))})}const Ls={userAction:!0};class RA extends Bn{constructor(e,n){super(e,n);f(this,"state",{visible:!0,enabled:!0,config:{compassImageUrl:this.absoluteUrl("/release/web/v3/north-point-circle.96498e69.png"),entryDoorImageUrl:this.absoluteUrl("/release/web/enterDoor.831b8208.png")}});f(this,"data");f(this,"group",new E.Group);f(this,"roomInfoInstance");f(this,"roomInfoWrapperInstance");f(this,"compassMeshTween");f(this,"compassMesh");f(this,"entryDoorMesh");f(this,"dispose",()=>{var e,n,s,o;this.five.scene.remove(this.group),this.group.remove(...this.group.children),(n=(e=this.compassMesh)==null?void 0:e.material.map)==null||n.dispose(),(o=(s=this.entryDoorMesh)==null?void 0:s.material.map)==null||o.dispose(),this.five.off("dispose",this.dispose),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_addEventListener",()=>{this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive),this.five.on("modeChange",this.onFiveModeChange),this.five.on("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_removeEventListener",()=>{this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("modeChange",this.onFiveModeChange),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_enable",()=>{this.five.scene.add(this.group),this.init(),this.onFivePanoArrived(this.five.panoIndex||0),this._addEventListener()});f(this,"_disable",()=>{this._clearCompassIfNeed(),this._clearEntryDoorIfNeed(),this.five.scene.remove(this.group),this._removeEventListener()});f(this,"_toggleVisible",()=>{this.group.visible=this.state.visible,this.five.needsRender=!0});f(this,"_clearCompassIfNeed",()=>{var e;this.compassMesh&&(this.group.remove(this.compassMesh),(e=this.compassMesh.material.map)==null||e.dispose(),this.compassMesh=null)});f(this,"_clearEntryDoorIfNeed",()=>{var e;this.entryDoorMesh&&(this.group.remove(this.entryDoorMesh),(e=this.entryDoorMesh.material.map)==null||e.dispose(),this.entryDoorMesh=null),this.roomInfoInstance&&(this.roomInfoInstance.dispose(),this.roomInfoInstance=null),this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.dispose(),this.roomInfoWrapperInstance=null)});f(this,"onFivePanoWillArrive",e=>{var n,s;e!==this.five.panoIndex&&((n=this.compassMeshTween)==null||n.dispose(),(s=this.compassMesh)==null||s.material.setValues({opacity:0}))});f(this,"onFivePanoArrived",e=>{var s,o,r,a,l,c,d;const n=(r=(o=(s=this.five.work)==null?void 0:s.observers)==null?void 0:o[e])==null?void 0:r.standingPosition;if(this.compassMesh&&(this.compassMesh.position.copy(n.clone().setY(n.y+.01)),this.compassMesh.material.opacity===0&&((a=this.compassMeshTween)==null||a.dispose(),this.compassMeshTween=po(1e3).onUpdate(({progress:h})=>{var u;(u=this.compassMesh)==null||u.material.setValues({opacity:h}),this.five.needsRender=!0}).play())),this.entryDoorMesh){const u=new E.Vector3(this.data.entrance.position.x,this.data.entrance.position.y,this.data.entrance.position.z).clone().setY(n.y).sub(n).normalize(),m=n.clone().add(u.clone().multiplyScalar(.7)).setY(n.y+.01);this.entryDoorMesh.rotation.z=new E.Vector3(0,0,-1).angleTo(u),this.entryDoorMesh.position.copy(m),((l=this.data)==null?void 0:l.room_observers[e].room.type)===1?(c=this.entryDoorMesh)==null||c.material.setValues({opacity:1}):(d=this.entryDoorMesh)==null||d.material.setValues({opacity:0})}this.roomInfoInstance&&this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.css3DObject.position.copy(n.clone().setY(n.y+.01)),this.roomInfoInstance.setRoom(this.data.room_observers[e].room)),this.five.needsRender=!0});f(this,"onFiveCameraDirectionUpdate",({longitude:e,latitude:n})=>{var s,o;this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.css3DObject.rotation.z=e,n>.66&&this.five.getCurrentState().mode==="Panorama"?(s=this.roomInfoInstance)==null||s.show():(o=this.roomInfoInstance)==null||o.hide())});f(this,"onFiveModeChange",(e,n,s,o,r)=>{e!==n&&this.setState({visible:e===Te.Five.Mode.Panorama},{userAction:r})});this.five.scene.add(this.group),this.five.once("dispose",this.dispose),this.setState({visible:!0,enabled:!0,config:H(H({},this.state.config),n||{})})}enable(e=Ls){this.setState({enabled:!0},e)}disable(e=Ls){this.setState({enabled:!1},e)}show(e=Ls){if(this.state.enabled)return this.setState({visible:!0},e),Promise.resolve()}hide(e=Ls){if(this.state.enabled)return this.setState({visible:!1},e),Promise.resolve()}setState(e,n={userAction:!0}){var o,r;const s=JSON.parse(JSON.stringify(this.state));this.state={visible:(o=e.visible)!=null?o:s.visible,enabled:(r=e.enabled)!=null?r:s.enabled,config:H(H({},s.config),e.config||{})},this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:n.userAction}),e.enabled===!0&&(this._enable(),this.hooks.emit("enable",n)),e.enabled===!1&&(this._disable(),this.hooks.emit("disable",n)),e.visible===!1&&(this._toggleVisible(),this.hooks.emit("hide",n)),e.visible===!0&&(this._toggleVisible(),this.hooks.emit("show",n)),e.config&&this.init()}load(e,n,s=!0){return U(this,null,function*(){const o=yield this.formatData(e);JSON.stringify(this.data)!==JSON.stringify(o)&&(this.hooks.emit("dataChange",o,this.data),this.data=H({},o),this.init(),n&&this.setState(n,{userAction:s}),this.hooks.emit("dataLoaded",this.data))})}formatData(e){return e.version&&e.data?Promise.resolve(e.data):Promise.resolve(e)}init(){return U(this,null,function*(){var s,o,r,a;const e=(o=(s=this.data)==null?void 0:s.north_rad)!=null?o:null;this._clearCompassIfNeed(),e!==null&&(this.compassMesh=yield this.loadCompassMesh(),this.compassMesh.rotateX(-Math.PI/2),this.compassMesh.rotateZ(e-Math.PI/2),this.group.add(this.compassMesh));const n=(a=(r=this.data)==null?void 0:r.entrance)!=null?a:null;this._clearEntryDoorIfNeed(),n!==null&&(this.entryDoorMesh=yield this.loadEntryDoorMesh(),this.roomInfoWrapperInstance=this.loadRoomInfo(),this.roomInfoInstance=BA(),this.entryDoorMesh.rotateX(-Math.PI/2),this.roomInfoWrapperInstance&&this.roomInfoInstance.appendTo(this.roomInfoWrapperInstance.container),this.group.add(this.entryDoorMesh)),this.onFivePanoArrived(this.five.panoIndex||0),this.five.needsRender=!0})}loadCompassMesh(){return U(this,null,function*(){const e=this.state.config.compassImageUrl,n=yield ns(e),s=new E.CircleGeometry(.7,32),o=new E.MeshBasicMaterial({map:n,transparent:!0,opacity:0,depthTest:!1}),r=new E.Mesh(s,o);return r.name="pano-compass-mesh",r})}loadEntryDoorMesh(){return U(this,null,function*(){const e=this.state.config.entryDoorImageUrl,n=yield ns(e),s=new E.PlaneGeometry(.2,.16),o=new E.MeshBasicMaterial({map:n,transparent:!0,opacity:.8,depthTest:!1}),r=new E.Mesh(s,o);return r.name="pano-compass-entry-door",r})}loadRoomInfo(){const e=[new E.Vector3(-.7,0,-.7),new E.Vector3(.7,0,-.7),new E.Vector3(.7,0,.7),new E.Vector3(-.7,0,.7)];return vo(this.five).create3DDomContainer(e)}}const QA=(i,t)=>new RA(i,t),GA=1,NA=3,HA=new R.Color(16777215),_A=new R.Color(6522623),WA=new R.Color(16777215),FA=new R.Color(6522623),YA=6,UA=8,XA="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAIVBMVEUAAAD////////////////////////////////////////PIev5AAAACnRSTlMAG/Py2baba05un7UgfgAAAHJJREFUKM9joBpgLHVSCRdA4metAoJlCJHmVWBgAeNzroKCCVCBLpjACqgJVjCBxRBT2FbBQQJYQAohsBAsUIUQWA4WiEIILAULeCEEloAFtBACizAEMLRgGIphLabDMJ2O6TlM72MGECIIMQIZIxqoBQCPvpJ/e9FaAAAAAABJRU5ErkJggg==",Kh=new R.TextureLoader().load(XA),ZA={pointTexture:Kh,pointSize:YA,lineWidth:GA,lineColor:HA,pointColor:WA,lineRenderOrder:20,pointsRenderOrder:20},JA={pointTexture:Kh,pointSize:UA,lineWidth:NA,lineColor:_A,pointColor:FA,lineRenderOrder:10,pointsRenderOrder:10};function qA(i,t,e){var d,h,u,m,A;const n=(d=e==null?void 0:e.lineWidth)!=null?d:2,s=(h=e==null?void 0:e.lineColor)!=null?h:new R.Color(16777215),o=(u=e==null?void 0:e.pointSize)!=null?u:5,r=(m=e==null?void 0:e.lineRenderOrder)!=null?m:10,a=(A=e==null?void 0:e.lineRenderOrder)!=null?A:20,l=new sh.Line(i,t);l.setMaterial({linewidth:n,color:s}),l.line.material.depthTest=!1,l.line.material.transparent=!0,l.line.renderOrder=r,l.points.renderOrder=a;const c=l.points.material;return c.depthTest=!1,c.size=o,e!=null&&e.pointColor&&c.color.set(e.pointColor).convertSRGBToLinear(),e!=null&&e.pointTexture&&(c.map=e.pointTexture),l}function Ul(i,t){const[e,n]=i.points,s=t==="light"?JA:ZA,o=qA(e.position,n.position,s);return o.name="normalLine_"+i.id,o}function Ln(i){const{x:t,y:e,z:n}=i;return!(Math.abs(t)>1||Math.abs(e)>1||Math.abs(n)>1)}function Fs(i){const{z:t}=i;return!(Math.abs(t)>1)}function KA(i){const t=document.createElement("div");return t.setAttribute("style","backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);-webkit-tap-highlight-color: rgba(0,0,0,0);"),t.style.width="max-content",t.style.padding="3px 6px",t.style.lineHeight="1",t.style.textAlign="center",t.style.transform="translate(-50%, -50%)",t.style.fontSize="14px",t.style.color="#fff",t.style.cursor="pointer",t.style.userSelect="none",i!=null&&i.style&&Object.assign(t.style,i==null?void 0:i.style),t}function $A(i){const t=document.createElement("div");return i!=null&&i.id&&(t.id=i==null?void 0:i.id),t.classList.add("five-plugin-measure__distance"),t.style.position="absolute",t.style.left="0",t.style.top="0",t.style.width="0",t.style.height="0",t.style.transformOrigin="left top",i!=null&&i.style&&Object.assign(t.style,i.style),t}class $h{constructor(t){f(this,"ndcPosition");f(this,"contentDom");f(this,"containerDom");f(this,"params");f(this,"canSelected");f(this,"handleClick",t=>{var e,n;(n=(e=this.params).clickCallback)==null||n.call(e,t,this)});this.params=t,this.contentDom=KA({style:t.contentStyle}),this.containerDom=$A({style:t.containerStyle}),this.setCanSelect(!0)}setCanSelect(t){this.canSelected=t,this.containerDom.style.pointerEvents=t?"all":"none"}highlight(){this.contentDom.style.border="0.5px solid #95AEFF",this.contentDom.style.background="linear-gradient(90deg, #95AEFF 0%, #6386FF 100%)"}unHighlight(){this.contentDom.style.border="0.5px solid rgba(255,255,255,0.6)",this.contentDom.style.background="rgba(195,195,195,0.70)"}appendTo(t){t.appendChild(this.containerDom),this.containerDom.addEventListener("click",this.handleClick)}remove(){this.contentDom.removeEventListener("click",this.handleClick),this.containerDom.remove()}show(){this.containerDom.style.visibility="visible"}hide(){this.containerDom.style.visibility="hidden"}tempHide(){this.containerDom.style.opacity="0"}tempShow(){this.containerDom.style.opacity="1"}updateDomPosition(t){if(!this.ndcPosition){this.tempHide();return}const e=t.getElement();if(!e)return;const n=e.clientWidth,s=e.clientHeight,o=this.ndcPosition.clone().project(t.camera);if(!Fs(o)){this.tempHide();return}const r=(o.x+1)/2*n,a=-(o.y-1)/2*s;this.containerDom.style.transform=`translate(${r}px, ${a}px)`,this.tempShow()}}class ev extends $h{constructor(e){var n;e.contentStyle=Ae(H({},e.contentStyle),{background:"rgba(195,195,195,0.70)",border:"0.5px solid rgba(255,255,255,0.6)",borderRadius:"999px"});super(e);f(this,"line");this.line=e.line,(n=this.params.userDistanceItem)!=null&&n.element?this.containerDom.appendChild(this.params.userDistanceItem.element):this.containerDom.appendChild(this.contentDom)}update(e){var V;if(this.line.mesh.visible===!1){this.hide();return}const n=e.getElement();if(!n)return;const s=n.clientWidth,o=n.clientHeight,r=s/2,a=o/2;if(this.line.points.length<2)return;const[l,c]=this.line.points,d=l.position.clone().project(e.camera),h=c.position.clone().project(e.camera),u=nn(l.position,c.position).clone().project(e.camera),m=new R.Vector2(d.x*r,d.y*a),A=new R.Vector2(h.x*r,h.y*a),p=m.distanceTo(A);if((()=>!(Math.abs(d.z)>1||Math.abs(h.z)>1||!Fs(d)&&!Fs(h)||!Fs(u)||p===0))()===!1){this.hide();return}const v=(u.x+1)/2*s,y=-(u.y-1)/2*o,k=-(Math.atan((m.y-A.y)/(m.x-A.x))*180)/Math.PI,T=this.containerDom.parentElement&&this.contentDom.clientWidth>p?-20:0;this.containerDom.style.transform=`translate(${v}px, ${y}px) rotate(${k}deg) translateY(${T}px)`,this.show(),(V=this.params.userDistanceItem)==null||V.update({line:this.line,polyline:this.line.getPolyline()});const P=this.getCurrentContent();this.contentDom.innerText=P}getCurrentContent(){var l,c,d,h;if(this.line.points.length<2)return"";const[e,n]=this.line.points,s=e.position.clone().distanceTo(n.position),o=(c=this.line.text)!=null?c:(l=this.line.model.config)==null?void 0:l.defaultText,r=(h=(d=this.line.model.config)==null?void 0:d.getDistanceText)==null?void 0:h.call(d,s),a=o!=null?o:r;return a!=null?a:s.toFixed(2)+"m"}}class tn{constructor(t,e,n){f(this,"id");f(this,"selected",!1);f(this,"text");f(this,"type","line");f(this,"model");f(this,"mesh");f(this,"points");f(this,"lightMesh");f(this,"hook");f(this,"distanceItem");f(this,"polyline");f(this,"visible");var s;if(this.id=at(),this.model=n,t.id===e.id)throw new Error("无效的线段, 一个点无法构成线段");typeof n.config.defaultText=="string"&&(this.text=n.config.defaultText),this.hook=new Te.Subscribe,this.points=[t,e],this.mesh=Ul(this,"normal"),this.lightMesh=Ul(this,"light"),this.distanceItem=new ev({line:this,clickCallback:()=>this.hook.emit("selected",this),userDistanceItem:(s=this.model.config)!=null&&s.userDistanceItemCreator?this.model.config.userDistanceItemCreator():void 0}),t.lines.push(this),e.lines.push(this)}hide(){this.visible&&(this.visible=!1,this.mesh.visible=!1,this.distanceItem.hide())}show(){this.visible||(this.visible=!0,this.mesh.visible=!0,this.distanceItem.show())}setPoints(t,e){this.points[0].position.copy(t),this.points[1].position.copy(e),this.mesh.setPoints(t,e)}remove(){this.mesh.parent&&this.mesh.parent.remove(this.mesh),this.distanceItem.remove()}clear(){this.selected=!1,this.polyline=void 0}isEmpty(){return this.points.length===0}getPolyline(){if(this.polyline)return this.polyline;const t=this.model.polylines.find(e=>e.lines.includes(this));if(t)return this.polyline=t,t}findAnotherPoint(t){return this.points.find(({id:e})=>e!==t.id)}setText(t){this.text=t,this.hook.emit("textChanged",t)}toJson(){return{id:this.id,points:this.points.map(t=>t.toJson()),text:this.text}}clone(){const t=new tn(this.points[0].clone(),this.points[1].clone(),this.model);return t.text=this.text,t}}function tv(i,t){for(let e=0,n=t.length;e<n;e++)if(i===t[e])return t.splice(e,1)[0]}class ut{constructor(t){f(this,"id");f(this,"lines");f(this,"position");f(this,"type","point");if(this.id=at(),this.lines=[],this.position=new R.Vector3,Array.isArray(t))this.position.fromArray(t);else if(typeof t=="object"&&t.isVector3)this.position.copy(t);else throw new Error("position must be Vector3 or number[]")}toJson(){return{id:this.id,position:this.position.toArray()}}addLine(t){this.lines.push(t)}removeLine(t){tv(t,this.lines)}clone(){return new ut(this.position)}}const js=i=>i.preventDefault();let Eo=class{constructor(t){f(this,"model");f(this,"five");f(this,"group");f(this,"config");f(this,"dashed");f(this,"perpendicularDashed");f(this,"disposed",!1);f(this,"isMobile");f(this,"editParams");f(this,"magnifierParams");f(this,"mouseGroup");f(this,"container");f(this,"hook");f(this,"magnifier");f(this,"userDistanceItemCreator");f(this,"getMeasureType");f(this,"updateDistanceUI",()=>{this.dashed.distanceItem.update(this.five),this.model.getAllLines().forEach(t=>t.distanceItem.update(this.five))});var n,s;this.five=t.five,this.hook=t.hook,this.model=t.model,this.getMeasureType=t.getMeasureType,this.config=t.config,this.magnifierParams=t.magnifierParams,this.editParams=t.editParams,this.magnifier=t.magnifier,this.container=t.container,this.isMobile=(s=(n=t.openParams)==null?void 0:n.isMobile)!=null?s:!1,this.userDistanceItemCreator=t.userDistanceItemCreator,this.group=t.group,this.mouseGroup=t.mouseGroup,this.dashed=new tn(new ut([0,0,0]),new ut([0,0,0]),this.model),this.dashed.distanceItem.setCanSelect(!1),this.dashed.mesh.setMaterial({dashed:!0,dashScale:100}),this.dashed.mesh.name="dashLine",this.perpendicularDashed=new tn(new ut([0,0,0]),new ut([0,0,0]),this.model),this.perpendicularDashed.distanceItem.setCanSelect(!1),this.perpendicularDashed.mesh.setMaterial({dashed:!0,dashScale:40,color:new R.Color(10218089)}),this.perpendicularDashed.mesh.name="perpendicularDashLine";const e=this.five.getElement();e&&(e.addEventListener("touchstart",js),e.addEventListener("contextmenu",js))}get currentMeasureType(){return this.getMeasureType()}removeLine(t){this.group.remove(t.mesh,t.lightMesh),t.distanceItem.remove(),this.five.needsRender=!0}updateMouseGroup(t,e){if(!t)return this.mouseGroup;if(this.mouseGroup.position.copy(t.point),e)this.mouseGroup.quaternion.copy(e.quaternion);else if(t.face){const s=t.face.normal.clone().multiplyScalar(.05),r=t.point.clone().add(s).clone().add(s);this.mouseGroup.lookAt(r)}return this.mouseGroup}dispose(){this.disposed=!0,this.magnifier.disable(),this.model.getAllLines().forEach(e=>this.removeLine(e)),this.model.areas.forEach(e=>e.remove());const t=this.five.getElement();t&&(t.removeEventListener("touchstart",js),t.removeEventListener("contextmenu",js))}},jn=class{constructor(t){f(this,"id",at());f(this,"lines",[]);f(this,"points",[]);f(this,"visiblePanoIndexes");f(this,"model");f(this,"type","polyline");f(this,"hook",new Te.Subscribe);this.model=t.model}addLine(t){if(this.includes(t)){console.error(new Error("不能重复添加线段"));return}const e=this.getLastPoint(),n=e&&t.findAnotherPoint(e);e?e&&n?(this.lines.push(t),this.points.push(...t.points),this.hook.emit("lineAdded",t)):console.error(new Error("传入线段无法与当前折线进行连接")):(this.lines.push(t),this.points.push(...t.points),this.hook.emit("lineAdded",t))}removeLine(t){if(this.lines.length!==0){if(!this.isLastLine(t)){console.error(new Error("传入线段不是当前折线的最后一段"));return}this.lines.pop(),this.lines.length===0?this.points.slice(0,this.points.length):this.points.pop(),this.hook.emit("lineRemoved",t)}}isLastLine(t){const e=this.getLastLine();return e?t.id===e.id:!1}getLastLine(){return this.lines.slice(-1)[0]}getPointLength(){return this.lines.length+1}clear(){const t=this.lines.slice();this.lines.slice(0,this.lines.length),this.points.slice(0,this.points.length),t.reduceRight((e,n)=>this.hook.emit("lineRemoved",n),void 0)}overlapWith(t){return t.type==="point"?this.includes(t):t.type==="line"?t.points.some(e=>this.includes(e)):t.type==="polyline"?t.points.some(e=>this.includes(e)):!0}includes(t){return t.type==="point"?this.points.find(({id:e})=>e===t.id)!==void 0:t.type==="line"?this.lines.find(({id:e})=>e===t.id)!==void 0:!1}isEmpty(){return this.points.length===0}getLastPoint(){return this.points.slice(-1)[0]}toJson(){return{id:this.id,lines:this.lines.map(t=>t.toJson()),visiblePanoIndexes:this.visiblePanoIndexes}}getPointByID(t){return this.points.find(({id:e})=>e===t)}fromJson(t){this.clear(),this.id=t.id;const{getPoint:e,getAllPoints:n}=r(),s=t.lines.map(a=>{const[l,c]=a.points,d=e(l),h=e(c);if(!d||!h)throw new Error("线上的点不存在");const u=new tn(d,h,this.model);return u.id=a.id,u.text=a.text,u}),o=n();this.points.push(...o),this.lines.push(...s),this.visiblePanoIndexes=t.visiblePanoIndexes;function r(){const a=new Map;function l(d){const h=a.get(d.id);if(h)return h;const u=new ut(d.position);return u.id=d.id,a.set(d.id,u),u}function c(){return Array.from(a.values())}return{getPoint:l,getAllPoints:c}}return this}replace(t){this.id=t.id,this.clear(),this.lines.push(...t.lines),this.points.push(...t.points)}};class eu extends R.Object3D{constructor(){super()}add(...t){if(t.length===0)return this;const e=t.filter(Boolean);return super.add(...e)}remove(...t){if(t.length===0)return this;const e=t.filter(Boolean);return super.remove(...e)}removeFromParent(){const t=this.parent;return t!==null&&t.remove(this),this}}function nv(i){const t=[...new Set(i)];if(t.length<3)return;t.at(-1).equals(t[0])||t.push(t[0]);const e=t.flatMap(r=>[r.x,r.y,r.z]),n=new E.Float32BufferAttribute(e,3),s=of(e,void 0,3),o=new E.BufferGeometry;return o.setAttribute("position",n),o.setIndex(s),o.name="PolygonGeometry",o}const iv=new E.BufferGeometry;class tu extends eu{constructor(e){super();f(this,"isPolygonMesh",!0);f(this,"geometry",new E.BufferGeometry);f(this,"isBlank",!0);f(this,"points",[]);const n=new E.MeshBasicMaterial({color:4090367,transparent:!0,side:E.DoubleSide,depthTest:!0,opacity:.5}),s=new E.MeshBasicMaterial({color:16777215,transparent:!0,side:E.DoubleSide,depthTest:!1,depthWrite:!1,opacity:.3}),o=new E.Mesh(this.geometry,n),r=new E.Mesh(this.geometry,s);o.renderOrder=1,r.renderOrder=0,e&&this.updatePoints(e),this.add(o,r)}updatePoints(e){this.points=e;const n=nv(e);n?(this.geometry.copy(n),this.isBlank=!1):(this.geometry.copy(iv),this.isBlank=!0)}}function sv(i){const t=rv(i);if(t.length===0)return;let e=0,n=new R.Vector3;for(const[s,o,r]of t){const a=nu(s,o,r),l=ov(s,o,r,a);e+=a,n.add(l)}return n=n.divideScalar(e),{center:n,area:e}}function nu(i,t,e){return t.clone().sub(i).cross(e.clone().sub(i)).length()/2}function ov(i,t,e,n){const s=n!=null?n:nu(i,t,e);return nn(i,t,e).multiplyScalar(s)}function rv(i){var s;const t=i.getAttribute("position"),e=(s=i.getIndex())==null?void 0:s.array;if(!t||!e)return[];let n=[];for(let o=0;o<e.length;o+=3){const r=e[o],a=e[o+1],l=e[o+2],c=new R.Vector3().fromArray([t.getX(r),t.getY(r),t.getZ(r)]),d=new R.Vector3().fromArray([t.getX(a),t.getY(a),t.getZ(a)]),h=new R.Vector3().fromArray([t.getX(l),t.getY(l),t.getZ(l)]);n.push([c,d,h])}return n}class av extends $h{constructor(e){e.containerStyle=Ae(H({},e.containerStyle),{zIndex:"1"}),e.contentStyle=Ae(H({},e.contentStyle),{background:"#6386FF",borderRadius:"2px"});super(e);f(this,"area");this.area=e.area,this.containerDom.appendChild(this.contentDom)}updateArea(e,n){const s=n!=null?n:this.area.polygon.geometry,o=sv(s);if(!o){this.ndcPosition=null,this.updateDomPosition(e);return}const{area:r,center:a}=o;this.ndcPosition=a,this.updateDomPosition(e),this.updateAreaText(r)}updateAreaText(e,n){const{unit:s="m²",fix:o=2}=n!=null?n:{};this.contentDom.innerText=`${e.toFixed(o)}${s}`}}class Jr{constructor(t,e){f(this,"id",at());f(this,"selected",!1);f(this,"text");f(this,"type","area");f(this,"lightMesh");f(this,"areaItem");f(this,"hook",new Te.Subscribe);f(this,"polygon");f(this,"points",[]);f(this,"planeHelper");f(this,"polyline");f(this,"meshContainer");f(this,"domContainer");f(this,"five");f(this,"model");f(this,"updateDom",()=>{this.five&&(this.polyline.lines.forEach(t=>t.distanceItem.update(this.five)),this.areaItem.updateDomPosition(this.five))});var n;t&&(this.points=t),this.model=e.model,this.polygon=new tu(t),this.polyline=new jn({model:e.model}),this.areaItem=new av({area:this,clickCallback:(s,o)=>{const r=s.clientX+"px",a=s.clientY+"px";this.hook.emit("selected",this,{left:r,top:a})}}),this.domContainer=e.domContainer||null,this.meshContainer=e.meshContainer||null,this.five=e.five||null,this.areaItem.appendTo(this.domContainer),(n=this.five)==null||n.on("cameraUpdate",this.updateDom)}get isClosed(){var t;return this.points.length>=4&&((t=this.points.at(0))==null?void 0:t.equals(this.points.at(-1)))}addPoints(t){var s;this.points=this.points.concat(t);const e=this.points.at(-2),n=this.points.at(-1);if(e&&n){const o=new tn(new ut(e),new ut(n),this.polyline.model);this.polyline.addLine(o),this.meshContainer.add(o.mesh),this.five&&(o.distanceItem.setCanSelect(!1),o.distanceItem.appendTo(this.domContainer),o.distanceItem.update(this.five))}(s=this.meshContainer)!=null&&s.children.includes(this.polygon)||this.meshContainer.add(this.polygon),this.polygon.updatePoints(this.points),this.areaItem.updateArea(this.five),this.points.length===3?this.planeHelper=new E.Plane().setFromCoplanarPoints(this.points[0],this.points[1],this.points[2]):this.points.length<3&&(this.planeHelper=null)}popPoint(){this.points.pop();const t=this.polyline.lines.pop();t==null||t.remove(),this.polygon.updatePoints(this.points),this.areaItem.updateArea(this.five),this.points.length<3&&(this.planeHelper=null)}complete(){this.points.at(-1).equals(this.points[0])||this.addPoints(this.points[0])}hideArea(){this.polygon.visible=!1,this.areaItem.hide()}showArea(){this.polygon.visible=!0,this.areaItem.show()}projectPoint(t){return t&&(this.planeHelper?this.planeHelper.projectPoint(t,new E.Vector3):t)}remove(){this.polygon.removeFromParent(),this.areaItem.remove(),this.polyline.lines.forEach(t=>t.remove())}dispose(){this.remove(),this.model.areas.splice(this.model.areas.indexOf(this),1),this.planeHelper=null,this.five.off("cameraUpdate",this.updateDom),this.five.needsRender=!0}}function Xl(i,t){const e=Array.isArray(t)?t:[t];for(let n=0;n<e.length;n++){const s=e[n],o=i.start,r=i.end,a=s.start,l=s.end;if(Ni(o,a)||Ni(o,l)||Ni(r,a)||Ni(r,l)||Ni(o,r))continue;const c=zs(o,r,a),d=zs(o,r,l),h=zs(a,l,o),u=zs(a,l,r);if(c!==d&&h!==u||c===0&&Os(o,r,a)||d===0&&Os(o,r,l)||h===0&&Os(a,l,o)||u===0&&Os(a,l,r))return!0}return!1}function Ni(i,t){return i.x===t.x&&i.z===t.z&&i.y===t.y}function zs(i,t,e){const n=(e.z-i.z)*(t.x-i.x)-(t.z-i.z)*(e.x-i.x);return n===0?0:n<0?2:1}function Os(i,t,e){return t.x<=Math.max(i.x,e.x)&&t.x>=Math.min(i.x,e.x)&&t.z<=Math.max(i.z,e.z)&&t.z>=Math.min(i.z,e.z)}const iu="ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0;function qr(i){const{x:t,y:e}=i.center,{clientWidth:n,clientHeight:s}=i.target,o=i.target.getBoundingClientRect(),r=new R.Vector2(t,e).sub(new R.Vector2(o.left,o.top)),a=new R.Vector2(r.x/n*2-1,-(r.y/s)*2+1);return{point:r,ndcPoint:a}}function kr(i,t){const e=qr(t).ndcPoint,n=new R.Raycaster;return n.setFromCamera(e,i.camera),i.model.intersectRaycaster(n)}const $n=()=>!1;class lv{constructor(t,e){f(this,"hook",new Te.Subscribe);f(this,"outOfFive",!1);f(this,"five");f(this,"hammer");f(this,"mode");f(this,"pointSelectorHelper");f(this,"enabled",!1);f(this,"pressDown",!1);f(this,"adherePoints",null);f(this,"adherePointsRadius",.1);f(this,"lastFiveHelperVisible");f(this,"select",t=>{t&&this.updatePointSelectorHelperIntersect(t);const e=this.hook.emit("wantsSelect",this.position);return e||(this.pointSelectorHelper.hide(),this.hook.emit("select",this.position)),!e});f(this,"onEnter",()=>{this.pointSelectorHelper.show(),this.outOfFive=!1,this.hook.emit("intersectionUpdate",this.position)});f(this,"onLeave",()=>{this.pointSelectorHelper.hide(),this.outOfFive=!0,this.hook.emit("intersectionUpdate",null)});f(this,"onTap",t=>{const[e]=kr(this.five,t);e!=null&&e.face&&this.select(e)});f(this,"onPan",t=>{if(!this.pressDown)return;const[e]=kr(this.five,t);e!=null&&e.face&&this.intersectionOnModelUpdate(e)});f(this,"onPress",t=>{const[e]=kr(this.five,t);e!=null&&e.face&&(this.pressDown=!0,this.intersectionOnModelUpdate(e))});f(this,"onPanEnd",()=>{this.pressDown&&(this.pressDown=!1,this.select())});f(this,"intersectionOnModelUpdate",t=>{this.pointSelectorHelper.show(),this.updatePointSelectorHelperIntersect(t)});f(this,"updateByMousePosition",t=>{const e=this.five.getElement();if(!e)return;const{clientX:n,clientY:s}=t,o={x:n/e.clientWidth,y:1-s/e.clientHeight};this.updateByNdcPosition(o)});f(this,"updateByNdcPosition",t=>{const e=gh(this.five,t),n=(()=>e?Ae(H({},e),{isVirtual:!1}):Ae(H({},dv(this.five,t)),{isVirtual:!0}))();this.updatePointSelectorHelperIntersect(n)});f(this,"updatePointSelectorHelperIntersect",t=>{var s;const e=H({},t);let n=!1;if(((s=this.adherePoints)==null?void 0:s.length)>0&&typeof this.adherePointsRadius=="number"){for(const o of this.adherePoints)if(o.distanceTo(t.point)<this.adherePointsRadius){e.point=o.clone(),n=!0;break}}this.pointSelectorHelper.updateWithIntersect(e,{emitEvent:!1}),this.hook.emit("intersectionUpdate",e,n)});f(this,"onFiveWantsPanGesture",()=>{if(this.pressDown)return!1});f(this,"renderScreenCenter",()=>{this.updateByNdcPosition({x:.5,y:.5})});f(this,"emitIntersectionUpdate",t=>{this.hook.emit("intersectionUpdate",t)});var o,r;this.five=t;const n=(o=e==null?void 0:e.mode)!=null?o:"auto";n==="auto"?this.mode=iu?"fixed":"cursor":this.mode=n;const s={autoFixPCPosition:this.mode==="cursor",initialPosition:this.mode==="fixed"?{left:"35%",top:"20%"}:void 0};this.pointSelectorHelper=new bh(t,Ae(H({},e==null?void 0:e.pointSelectorHelperParams),{magnifierParams:H(H({},s),(r=e==null?void 0:e.pointSelectorHelperParams)==null?void 0:r.magnifierParams)})),this.pointSelectorHelper.hide()}get position(){return this.outOfFive?null:this.pointSelectorHelper.position}enable(){if(this.enabled)return;this.enabled=!0,this.pointSelectorHelper.enable();const t=this.five.getElement();if(!t)throw new Error("five element not found");this.hammer||(this.hammer=new ss(t)),this.mode==="cursor"?(this.five.on("intersectionOnModelUpdate",this.intersectionOnModelUpdate),this.five.on("wantsPanGesture",this.onFiveWantsPanGesture),this.five.on("wantsMoveToPano",$n),this.five.on("wantsChangeMode",$n),this.five.on("wantsTapGesture",$n),t.addEventListener("mousemove",this.updateByMousePosition),t.addEventListener("mouseenter",this.onEnter),t.addEventListener("mouseout",this.onLeave),this.hammer.on("tap",this.onTap),this.hammer.on("pan",this.onPan),this.hammer.on("press",this.onPress),this.hammer.on("panend",this.onPanEnd)):this.mode==="fixed"&&(this.five.on("panGesture",this.renderScreenCenter),this.five.on("interiaPan",this.renderScreenCenter),this.renderScreenCenter(),this.pointSelectorHelper.show()),this.pointSelectorHelper.hooks.on("intersectionUpdate",this.emitIntersectionUpdate),this.lastFiveHelperVisible=this.five.helperVisible,this.five.helperVisible=!1}disable(){if(!this.enabled)return;this.enabled=!1,this.pointSelectorHelper.disable();const t=this.five.getElement();this.five.off("intersectionOnModelUpdate",this.intersectionOnModelUpdate),this.five.off("wantsPanGesture",this.onFiveWantsPanGesture),this.five.off("wantsMoveToPano",$n),this.five.off("wantsChangeMode",$n),this.five.off("wantsTapGesture",$n),this.five.helperVisible=this.lastFiveHelperVisible,t==null||t.removeEventListener("mousemove",this.updateByMousePosition),t==null||t.removeEventListener("mouseenter",this.onEnter),t==null||t.removeEventListener("mouseout",this.onLeave),this.hammer.off("tap",this.onTap),this.hammer.off("pan",this.onPan),this.hammer.off("press",this.onPress),this.hammer.off("panend",this.onPanEnd),this.five.off("panGesture",this.renderScreenCenter),this.five.off("interiaPan",this.renderScreenCenter),this.pointSelectorHelper.hooks.off("intersectionUpdate",this.emitIntersectionUpdate)}dispose(){this.disable(),this.pointSelectorHelper.dispose()}setAdherePoints(t,e){t?this.adherePoints=Array.isArray(t)?t:[t]:this.adherePoints=null,typeof e=="number"&&(this.adherePointsRadius=e)}}function cv(i,t){const{x:e,y:n}=t,s=e*2-1,o=n*2-1,r=new R.Vector2().fromArray([s,o]),a=new R.Raycaster;return a.setFromCamera(r,i.camera),a}function dv(i,t){const e=cv(i,t),n=3,s=new R.Vector3().addVectors(e.ray.origin,e.ray.direction.clone().normalize().multiplyScalar(n)),o=e.ray.direction.clone().negate();return{distance:n,point:s,object:new R.Object3D,face:new R.Face3(0,0,0,o)}}const hv=`
|
|
288
288
|
<svg class="fpm__delete-icon" width="16px" height="17px" viewBox="0 0 16 17" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
289
289
|
<defs>
|
|
290
290
|
<linearGradient x1="22.185491%" y1="100%" x2="66.8316686%" y2="6.67239121%" id="linearGradient-1">
|
|
@@ -297,7 +297,7 @@ void main() {
|
|
|
297
297
|
`,Zl="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTciIGhlaWdodD0iMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSIxMC43MDYlIiB5MT0iNDIuNzQ0JSIgeDI9Ijg5LjA2NCUiIHkyPSI1Ny4yMDglIiBpZD0icHJlZml4X19hIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9Ii4zMDgiIG9mZnNldD0iNDkuNTY5JSIvPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iMCIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iLS4yNSIgeT0iLS4yNSIgd2lkdGg9IjU3LjUiIGhlaWdodD0iMjMuNSIgcng9IjExLjI1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDEpIiBmaWxsPSIjMkMyQzJDIiBzdHJva2U9InVybCgjcHJlZml4X19hKSIgc3Ryb2tlLXdpZHRoPSIuNSIgZmlsbC1ydWxlPSJldmVub2RkIiBmaWxsLW9wYWNpdHk9Ii4zMDMiLz48L3N2Zz4=",uv="data:image/png;base64,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";class Ta{constructor(t,e){f(this,"visible",!1);f(this,"five");f(this,"lines",[]);f(this,"points",[]);f(this,"onClick");f(this,"cancel");f(this,"content",document.createElement("div"));f(this,"container",document.createElement("div"));f(this,"masking",document.createElement("div"));f(this,"target");f(this,"clickHandler",t=>{console.log("on click handler",this.onClick),this.onClick(t,this.target)});f(this,"cancelHandler",()=>{this.cancel(this.target)});f(this,"hover",()=>{this.content.style.backgroundImage=`url(${uv})`});f(this,"unHover",()=>{this.content.style.backgroundImage=`url(${Zl})`});var s,o;this.five=t,this.onClick=(e==null?void 0:e.onClick)||(()=>{}),this.cancel=(e==null?void 0:e.cancel)||(()=>{}),this.container.classList.add("fpm__delete"),this.container.style.opacity="0",this.container.style.position="absolute",this.container.style.left="0",this.container.style.top="10px",this.container.style.transform="translate3d(0, 0, 10px)",this.container.style.pointerEvents="none",this.container.style.transition="opacity 200ms ease",this.container.style.zIndex="99",this.content.classList.add("fpm__delete-content"),this.content.style.width="62px",this.content.style.height="26px",this.content.style.display="flex",this.content.style.alignItems="center",this.content.style.justifyContent="center",this.content.style.transform="translate(-50%, -50%)",this.content.style.color="#fff",this.content.style.fontSize="12px",this.content.style.lineHeight="17px",this.content.style.borderRadius="11px",this.content.style.backgroundSize="100% 100%",this.content.style.cursor="pointer",this.content.style.userSelect="none",this.content.style.backgroundImage=`url(${Zl})`,this.content.innerHTML=`
|
|
298
298
|
${hv}
|
|
299
299
|
<span>${(o=(s=e.i18n)==null?void 0:s.call(e,"删除"))!=null?o:"删除"}</span>
|
|
300
|
-
`,this.container.append(this.content);const n=this.content.querySelector(".fpm__delete-icon");n&&(n.style.width="16px",n.style.height="17px",n.style.marginRight="1px"),this.content.addEventListener("click",this.clickHandler),this.content.addEventListener("mouseenter",this.hover),this.content.addEventListener("mouseleave",this.unHover),this.masking.setAttribute("style","position: absolute;top: 0;left: 0;bottom: 0;right: 0;pointer-events: none;"),this.masking.addEventListener("click",this.cancelHandler),this.masking.addEventListener("touchstart",this.cancelHandler)}dispose(){this.content.removeEventListener("click",this.clickHandler),this.content.removeEventListener("mouseenter",this.hover),this.content.removeEventListener("mouseleave",this.unHover),this.container.remove(),this.masking.removeEventListener("click",this.cancelHandler),this.masking.removeEventListener("touchstart",this.cancelHandler),this.masking.remove()}appendTo(t){return t.append(this.container),t.append(this.masking),this}setLines(t){return this.lines=t,this.points=Array.from(new Set(this.lines.map(e=>[e.points[0],e.points[1]]).flat(1))),this}setTarget(t){return this.target=t,this}updatePosition(t,e){if(t&&e)return this.container.style.left=t,this.container.style.top=e,this.container.style.transform="",this.show();if(this.lines.length===0)return this;const n=this.points.map(A=>A.position),s=n.map(A=>A.clone().project(this.five.camera));if(s.some(A=>Math.abs(A.z)>1))return this.hide();const o=s.map(A=>A.x),r=s.map(A=>A.y),a=(Math.min(...o)+Math.max(...o))/2,l=Math.max(...r),c=this.container.parentElement;if(!c)return this;const d=(a+1)/2*c.clientWidth,h=-(l-1)/2*c.clientHeight;let u=d,m=h-34;if(this.lines.length===1&&n.length===2){const A=(r[1]-r[0])/(o[1]-o[0]),g=-((r[1]+r[0])/2-1)/2*c.clientHeight;Math.abs(A)>.4&&(u=d+57,m=g)}return this.container.style.top="0",this.container.style.left="0",this.container.style.transform=`translate3d(${u}px, ${m}px, 0)`,this.show()}hide(){return this.visible=!1,this.masking.style.pointerEvents="none",this.container.style.opacity="0",this.container.style.pointerEvents="none",this.unHover(),this}show(){return this.visible=!0,this.masking.style.pointerEvents="auto",this.container.style.opacity="1",this.container.style.pointerEvents="auto",this}}function ro(i){const t=(o,r,a)=>{const l=o.lines.find(d=>d.points.findIndex(({id:u})=>u===o.id)!==r);if(!l)return a;const c=l.points[r];return c?t(c,r,a.concat(l)):a},e=t(i.points[0],1,[]),n=t(i.points[0],0,[]);return e.concat(n)}function La(i,t){const e=i.x-t[0].x,n=i.y-t[0].y,s=t[1].x-t[0].x,o=t[1].y-t[0].y,r=e*s+n*o,a=s*s+o*o,l=r/a;let c,d;return l<0||fv(t[0],t[1])?(c=t[0].x,d=t[0].y):l>1?(c=t[1].x,d=t[1].y):(c=t[0].x+l*s,d=t[0].y+l*o),new R.Vector2(c,d)}function fv(i,t){return i.x===t.x&&i.y===t.y}const Jl=()=>!1;class dn extends Eo{constructor(e){var n;super(e);f(this,"type","edit");f(this,"polyline");f(this,"area");f(this,"hasAppendDashed",!1);f(this,"fiveElement");f(this,"lastPoint",null);f(this,"pointSelector");f(this,"deleteDom");f(this,"onIntersectionUpdate",Sa((e,n)=>{this.currentMeasureType==="area"&&typeof n=="boolean"&&(n?this.hook.emit("readyComplete"):this.hook.emit("notReadyComplete")),this.updateDashed()},20));f(this,"revoke",()=>{this.currentMeasureType==="area"?this.revokeArea():this.currentMeasureType==="line"&&this.revokeLine()});f(this,"revokeArea",()=>{if(this.area.points.length!==0){if(this.area.popPoint(),this.hook.emit("pointsChange",this.area.points),this.area.points.length===0){this.lastPoint=null,this.hasAppendDashed=!1,this.dashed.remove(),this.five.needsRender=!0,this.hook.emit("revoke",{isEmpty:!0});return}else this.lastPoint=new ut(this.area.points[this.area.points.length-1]),this.updateDashed();this.five.needsRender=!0}});f(this,"revokeLine",e=>{const n=e||this.polyline;if(n.lines.length===0&&this.lastPoint){this.lastPoint=null,this.hasAppendDashed=!1,this.dashed.remove(),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.needsRender=!0,this.hook.emit("pointsChange",[]);return}if(n.lines.length===0&&!this.lastPoint||!this.lastPoint)return;const s=n.lines[n.lines.length-1],o=s.findAnotherPoint(this.lastPoint);o&&(this.lastPoint=o,this.hook.emit("anchorChange",o.position),this.group.remove(s.mesh),n.removeLine(s),s.distanceItem.remove(),this.updateDashed(),this.five.needsRender=!0)});f(this,"onMouseLeave",()=>{this.dashed.hide(),this.perpendicularDashed.hide(),this.area.hideArea()});f(this,"onLineChanged",()=>{this.hook.emit("editedPolylineChange",this.polyline)});f(this,"onWantsSelect",()=>{if(this.currentMeasureType==="area"){const e=this.area.polygon.isBlank||this.area.polygon.visible===!1;if(this.area.points.length>=3&&e)return!1}});f(this,"wantsMoveToPano",()=>{if(this.lastPoint)return!1});f(this,"onSelect",()=>{var o,r,a,l;this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh),this.currentMeasureType==="area"&&this.group.add(this.perpendicularDashed.mesh)),this.hasAppendDashed=!0;const e=(()=>{var c,d;if(this.currentMeasureType==="area")return this.area.projectPoint((c=this.pointSelector.position)==null?void 0:c.point);if(this.currentMeasureType==="line")return(d=this.pointSelector.position)==null?void 0:d.point})();if(!e)return;const n=new ut(e),s=this.lastPoint;if(!(s!=null&&s.position&&n.position.equals(s==null?void 0:s.position))){if(this.lastPoint=n,this.currentMeasureType==="line"){if(n&&s){const d=new tn(s,n,this.model);d.distanceItem.setCanSelect(!1),d.distanceItem.appendTo(this.container),this.polyline.addLine(d),this.group.add(d.mesh),d.distanceItem.update(this.five)}const c=(r=(o=this.editParams)==null?void 0:o.autoEndConfig)==null?void 0:r.line;typeof c=="number"&&(this.polyline.getPointLength()>=c?this.complete():this.polyline.getPointLength()===c-1&&this.hook.emit("readyComplete")),this.hook.emit("pointsChange",this.polyline.points)}else if(this.currentMeasureType==="area"){if(this.area.addPoints(n.position),this.area.isClosed){this.complete();return}this.area.points.length>=3?this.pointSelector.setAdherePoints(this.area.points[0]):this.pointSelector.setAdherePoints(null);const c=(l=(a=this.editParams)==null?void 0:a.autoEndConfig)==null?void 0:l.area;typeof c=="number"&&(this.area.points.length>=c?this.complete():this.area.points.length===c-1&&this.hook.emit("readyComplete")),this.hook.emit("pointsChange",this.area.points)}this.updateDashed(),this.five.needsRender=!0,this.hook.emit("anchorChange",n.position)}});f(this,"onCameraUpdate",()=>{this.updateDistanceUI()});f(this,"updateDashed",()=>{var s;if(!this.lastPoint)return;const e=this.lastPoint.position,n=(()=>{var o,r;if(this.currentMeasureType==="area")return this.area.projectPoint((o=this.pointSelector.position)==null?void 0:o.point);if(this.currentMeasureType==="line")return(r=this.pointSelector.position)==null?void 0:r.point})();if(!n){this.dashed.hide();return}if(this.dashed.show(),this.dashed.setPoints(e,n),this.dashed.distanceItem.update(this.five),this.hook.emit("editedDashedLineChange",this.dashed),this.currentMeasureType==="area")if(this.area.areaItem.setCanSelect(!1),this.area.points.length>=2){const o=(s=this.pointSelector.position)==null?void 0:s.point;if(o){const d=o,h=n;this.perpendicularDashed.setPoints(d,h),this.perpendicularDashed.show()}else this.perpendicularDashed.hide();const r=this.area.polyline.lines.map(d=>({start:d.points[0].position,end:d.points[1].position})),a=Xl({start:e,end:n},r),l=Xl({start:n,end:this.area.points[0]},r);if(a||l)this.area.hideArea(),this.hook.emit("allowAddPointStateChange","forbid");else{this.area.showArea();const d=[...this.area.points,n];this.area.polygon.updatePoints(d),this.area.areaItem.updateArea(this.five),this.hook.emit("allowAddPointStateChange","allow")}}else this.area.hideArea(),this.perpendicularDashed.hide();this.five.needsRender=!0});f(this,"wantsTapGesture",e=>{var p,g;if(this.editParams.pointSelectorMode==="cursor"||this.lastPoint)return!1;const n=this.model.areas.map(b=>e.intersectObject(b.polygon,!0)[0]).sort((b,y)=>b.distance-y.distance),s=(g=(p=n[0])==null?void 0:p.object)==null?void 0:g.parent;if(s!=null&&s.isPolygonMesh){const b=this.model.areas.find(y=>y.polygon===s);if(b){const{x:y,y:I}=n[0].point.clone().project(this.five.camera),k=`${(y+1)/2*100}%`,T=`${(-I+1)/2*100}%`;return this.chooseArea(b,{left:k,top:T}),!1}}const[o]=this.five.model.intersectRaycaster(e);if(!o)return;const r=this.five.camera,a=o.point.clone().project(r),l=this.container.clientWidth,c=this.container.clientHeight,d=new R.Vector2(a.x*l,a.y*c),h=this.model.getAllLines().map(b=>{const[y,I]=b.points,k=y.position.clone().project(r),T=I.position.clone().project(r);if(!Ln(k)&&!Ln(T))return null;const P=new R.Vector2(k.x*l,k.y*c),V=new R.Vector2(T.x*l,T.y*c);return{id:b.id,points:[P,V]}}).filter(b=>!!b);if(h.length===0)return;const m=h.map(b=>{const y=La(d,b.points);return{id:b.id,distance:y.distanceTo(d)}}).sort((b,y)=>b.distance-y.distance)[0];if(m.distance>20)return;const A=this.model.getAllLines().find(({id:b})=>b===m.id);if(A)return this.chooseLine(A),!1});f(this,"chooseLine",e=>{console.log(e);const n=ro(e);this.deleteDom.setTarget(n).setLines(n).updatePosition().show(),this.highlightLines(n),this.hook.emit("selectedChange",n)});f(this,"chooseArea",(e,n)=>{console.log("choose area"),this.deleteDom.setTarget(e).updatePosition(n.left,`calc(${n.top} - 1.5rem)`).show(),this.highlightArea(e)});f(this,"deleteArea",e=>{this.unHighlightArea(e),e.dispose(),this.deleteDom.hide()});f(this,"deleteLine",e=>{const n=e[0],s=this.model.getPolylineByLine(n);s&&(this.model.removePolyline(s),s.lines.forEach(o=>this.removeLine(o)),this.deleteDom.setLines([]).hide())});this.fiveElement=this.five.getElement(),this.deleteDom=new Ta(this.five,{i18n:this.config.i18n,onClick:(s,o)=>{var l;const r=o.type==="area",a=Array.isArray(o)&&((l=o[0])==null?void 0:l.type)==="line";r&&this.deleteArea(o),a&&this.deleteLine(o)},cancel:s=>{var a;this.deleteDom.hide();const o=s.type==="area",r=Array.isArray(s)&&((a=s[0])==null?void 0:a.type)==="line";o&&this.unHighlightArea(s),r&&this.unHighlightLines(s)}}).appendTo(this.container),this.pointSelector=new lv(this.five,{mode:this.editParams.pointSelectorMode,pointSelectorHelperParams:{magnifierParams:this.magnifierParams}}),this.pointSelector.enable(),this.polyline=new jn({model:this.model}),this.area=new Jr(void 0,{five:this.five,model:this.model,meshContainer:this.group,domContainer:this.container}),this.model.addPolyline(this.polyline),this.model.addArea(this.area),this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),s.distanceItem.setCanSelect(!0),s.hook.on("selected",this.chooseLine),this.group.add(s.mesh)}),this.model.getAllAreas().forEach(s=>{s.areaItem.appendTo(this.container),s.areaItem.updateDomPosition(this.five),s.areaItem.setCanSelect(!0),s.hook.on("selected",this.chooseArea),this.group.add(s.polygon),s.polyline.lines.forEach(o=>{o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)})}),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.wantsTapGesture),this.five.on("wantsMoveToPano",this.wantsMoveToPano),this.five.on("wantsChangeMode",Jl),this.pointSelector.hook.on("intersectionUpdate",this.onIntersectionUpdate),this.pointSelector.hook.on("select",this.onSelect),this.pointSelector.hook.on("wantsSelect",this.onWantsSelect),this.polyline.hook.on("lineAdded",this.onLineChanged),this.polyline.hook.on("lineRemoved",this.onLineChanged),this.five.helperVisible=!1,(n=this.fiveElement)==null||n.addEventListener("mouseleave",this.onMouseLeave),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.refresh()}dispose(){var e;super.dispose(),this.model.areas.forEach(n=>{(n.points.length<2||n.polygon.isBlank)&&this.model.removeArea(n)}),this.five.helperVisible=!0,this.pointSelector.disable(),this.dashed.remove(),this.perpendicularDashed.remove(),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsTapGesture",this.wantsTapGesture),this.five.off("wantsMoveToPano",this.wantsMoveToPano),this.five.off("wantsChangeMode",Jl),this.pointSelector.hook.off("intersectionUpdate",this.onIntersectionUpdate),this.pointSelector.hook.off("select",this.onSelect),this.polyline.hook.off("lineAdded",this.onLineChanged),this.polyline.hook.off("lineRemoved",this.onLineChanged),(e=this.fiveElement)==null||e.removeEventListener("mouseleave",this.onMouseLeave),this.magnifier.dispose(),this.dashed.distanceItem.remove(),this.five.needsRender=!0}getEditingLines(){return this.polyline.lines}selectPoint(){this.onSelect()}complete(){this.hook.emit("complete"),this.currentMeasureType==="area"?(this.area.points.length<3?this.deleteArea(this.area):(this.area.showArea(),this.area.complete(),this.area.hook.on("selected",this.chooseArea)),this.area=new Jr(void 0,{five:this.five,model:this.model,meshContainer:this.group,domContainer:this.container}),this.model.addArea(this.area)):this.currentMeasureType==="line"&&(this.polyline.lines.forEach(e=>{e.hook.on("selected",this.chooseLine),e.distanceItem.setCanSelect(!0)}),this.polyline=new jn({model:this.model}),this.model.addPolyline(this.polyline)),this.pointSelector.setAdherePoints(null),this.dashed.hide(),this.perpendicularDashed.hide(),this.lastPoint=void 0}highlightArea(e){this.highlightLines(e.polyline.lines),this.five.needsRender=!0}unHighlightArea(e){this.unHighlightLines(e.polyline.lines),this.five.needsRender=!0}highlightLines(e){e.forEach(n=>this.highlightLine(n))}unHighlightLines(e){e.forEach(n=>{n.selected=!1,n.distanceItem.unHighlight(),this.group.remove(n.lightMesh),this.five.needsRender=!0})}highlightLine(e){this.unHighlightLines(this.model.getAllLines()),!e.selected&&(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}}class ql extends Eo{constructor(e){super(e);f(this,"type","view");f(this,"hammer");f(this,"polylineRemoved",e=>{e.lines.forEach(n=>this.removeLine(n)),this.hook.emit("selectedChange",this.model.getAllLines().filter(n=>n.selected).map(n=>n))});f(this,"polylineAdded",e=>{const n=this.five.getCurrentState().panoIndex;e.lines.forEach(s=>{e.visiblePanoIndexes&&!e.visiblePanoIndexes.includes(n)&&(s.mesh.visible=!1),s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),this.group.add(s.mesh)})});f(this,"onCameraUpdate",()=>{this.updateDistanceUI()});f(this,"onFivePanoWillArrive",e=>{this.model.polylines.forEach(n=>{n.visiblePanoIndexes&&(n.visiblePanoIndexes.includes(e)||n.lines.forEach(s=>{s.mesh.visible=!1,s.distanceItem.update(this.five)}))})});f(this,"onFivePanoArrived",e=>{this.model.polylines.forEach(n=>{n.visiblePanoIndexes&&n.visiblePanoIndexes.includes(e)&&n.lines.forEach(s=>{s.mesh.visible=!0,s.distanceItem.update(this.five)})})});this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),this.group.add(s.mesh)});const n=this.five.getElement();if(n){const s=new ss(n);this.hammer=s}this.onFivePanoWillArrive(this.five.getCurrentState().panoIndex),this.onFivePanoArrived(this.five.getCurrentState().panoIndex),this.updateDistanceUI(),this.five.needsRender=!0,this.model.hook.on("polylineAdded",this.polylineAdded),this.model.hook.on("polylineRemoved",this.polylineRemoved),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive)}dispose(){var e;super.dispose(),this.model.hook.off("polylineAdded",this.polylineAdded),this.model.hook.off("polylineRemoved",this.polylineRemoved),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}}function mv(i,t){const e=(i.x+1)/2*t.width,n=-(i.y-1)/2*t.height;return new R.Vector2(e,n)}function gv(i,t,e,n){const s=i.getElement();if(!s||t.length===0)return null;const o={width:s.clientWidth,height:s.clientHeight},r=t.map(a=>{const l=a.position.clone().project(i.camera);return Ln(l)?{distance:mv(l,o).distanceTo(e),point:a}:{distance:1/0,point:a}}).sort((a,l)=>a.distance-l.distance);return typeof n=="number"&&r[0].distance>n?null:r[0]}const Kl=()=>!1;class $l extends Eo{constructor(e){super(e);f(this,"type","watch");f(this,"deleteDom");f(this,"choose");f(this,"highlightedLines",[]);f(this,"highlightedArea");f(this,"fiveElement");f(this,"editPointState");f(this,"hammer");f(this,"onPanStart",e=>{var a;if(this.model.getAllLines().length===0||!this.fiveElement)return;const n=qr(e).point,s=(a=gv(this.five,this.model.getAllPoints(),n,20))==null?void 0:a.point;if(!s){this.editPointState=void 0;return}const o={point:s,associatedLines:ro(s.lines[0])};this.hook.emit("wantsDragLine",{point:s.id,lines:o.associatedLines.map(({id:l})=>l)})||(this.editPointState=o,this.magnifier.appendTo(this.container),this.magnifier.enable(),this.group.add(this.mouseGroup))});f(this,"onPanEnd",()=>{this.editPointState&&(this.editPointState.point.lines.forEach(e=>e.mesh.setMaterial({dashed:!1})),this.highlightLines(this.editPointState.associatedLines),this.editPointState=void 0,this.magnifier.disable(),this.group.remove(this.mouseGroup))});f(this,"onPan",e=>{if(!this.editPointState||!this.fiveElement)return;const n=qr(e).ndcPoint,s=new R.Raycaster;s.setFromCamera(n,this.five.camera);const[o]=this.five.model.intersectRaycaster(s);o&&this.onIntersectionUpdate(o)});f(this,"onIntersectionUpdate",(e,n)=>{if(this.editPointState){if(this.clearHighlightLines(),this.editPointState.point.position.copy(e.point),this.editPointState.point.lines.forEach(s=>{s.mesh.setPoints(s.points[0].position.clone(),s.points[1].position.clone()),s.lightMesh.setPoints(s.points[0].position.clone(),s.points[1].position.clone()),s.mesh.setMaterial({dashed:!0})}),this.updateDistanceUI(),this.magnifier.renderWithPoint(e.point),this.mouseGroup.position.copy(e.point),n)this.mouseGroup.quaternion.copy(n.quaternion);else if(e.face){const o=e.face.normal.clone().multiplyScalar(.05),a=e.point.clone().add(o).clone().add(o);this.mouseGroup.lookAt(a)}this.five.needsRender=!0,this.hook.emit("selectedChange",this.editPointState.associatedLines.map(s=>s))}});f(this,"wantsPanGesture",()=>{if(this.editPointState)return!1});f(this,"wantsTapGesture",e=>{var p;const n=this.model.areas.map(g=>e.intersectObject(g.polygon,!0)[0]).sort((g,b)=>g.distance-b.distance),s=(p=n[0])==null?void 0:p.object.parent;if(s instanceof tu){const g=this.model.areas.find(b=>b.polygon===s);if(g){const{x:b,y}=n[0].point.clone().project(this.five.camera),I=`${(b+1)/2*100}%`,k=`${(-y+1)/2*100}%`;return this.chooseArea(g,{left:I,top:k}),!1}}const[o]=this.five.model.intersectRaycaster(e);if(!o)return;const r=this.five.camera,a=o.point.clone().project(r),l=this.container.clientWidth,c=this.container.clientHeight,d=new R.Vector2(a.x*l,a.y*c),h=this.model.getAllLines().map(g=>{const[b,y]=g.points,I=b.position.clone().project(r),k=y.position.clone().project(r);if(!Ln(I)&&!Ln(k))return null;const T=new R.Vector2(I.x*l,I.y*c),P=new R.Vector2(k.x*l,k.y*c);return{id:g.id,points:[T,P]}}).filter(g=>!!g);if(h.length===0)return;const m=h.map(g=>{const b=La(d,g.points);return{id:g.id,distance:b.distanceTo(d)}}).sort((g,b)=>g.distance-b.distance)[0];if(m.distance>20)return;const A=this.model.getAllLines().find(({id:g})=>g===m.id);if(A)return this.chooseLine(A),!1});f(this,"chooseLine",e=>{this.choose="line";const n=ro(e);this.deleteDom.setLines(n).updatePosition().show(),console.log(this.deleteDom),this.highlightLines(n),this.five.needsRender=!0,this.hook.emit("selectedChange",n.map(s=>s))});f(this,"chooseArea",(e,n)=>{this.choose=e,this.deleteDom.updatePosition(n.left,`calc(${n.top} - 20px)`).show(),this.highlightArea(e)});f(this,"polylineRemoved",e=>{e.lines.forEach(n=>this.removeLine(n)),this.hook.emit("selectedChange",this.model.getAllLines().filter(n=>n.selected).map(n=>n))});f(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.highlightedLines.length>0&&this.deleteDom.updatePosition()});f(this,"deleteArea",e=>{console.log(e),this.unHighlightArea(e),e.dispose(),this.deleteDom.hide()});f(this,"deleteLine",()=>{const e=this.highlightedLines[0],n=this.model.getPolylineByLine(e);n&&(this.model.removePolyline(n),this.highlightedLines=[],this.deleteDom.setLines([]).hide())});f(this,"cancelDeleteClickCallback",()=>{this.deleteDom.hide(),this.clearHighlightLines(),this.unHighlightArea()});this.deleteDom=new Ta(this.five,{i18n:this.config.i18n,onClick:()=>{console.log(this.choose),this.choose==="line"?this.deleteLine():this.choose instanceof Jr&&this.deleteArea(this.choose)},cancel:this.cancelDeleteClickCallback}).appendTo(this.container),this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),s.hook.on("selected",this.chooseLine),s.distanceItem.setCanSelect(!0),this.group.add(s.mesh)}),this.model.getAllAreas().forEach(s=>{s.areaItem.appendTo(this.container),s.areaItem.updateArea(this.five),s.hook.on("selected",this.chooseArea),s.areaItem.setCanSelect(!0),this.group.add(s.polygon),s.polyline.lines.forEach(o=>{o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)})});const n=this.five.getElement();if(n){this.fiveElement=n;const s=new ss(n);this.hammer=s,s.on("pan",this.onPan),s.on("panstart",this.onPanStart),s.on("panend",this.onPanEnd)}this.updateDistanceUI(),this.five.needsRender=!0,this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.wantsTapGesture),this.five.on("wantsPanGesture",this.wantsPanGesture),this.five.on("wantsChangeMode",Kl),this.model.hook.on("polylineRemoved",this.polylineRemoved)}dispose(){var e;super.dispose(),this.deleteDom.dispose(),this.model.hook.off("polylineRemoved",this.polylineRemoved),this.model.getAllLines().forEach(n=>n.hook.off("selected",this.chooseLine)),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsPanGesture",this.wantsPanGesture),this.five.off("wantsTapGesture",this.wantsTapGesture),this.five.off("wantsChangeMode",Kl),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.unHighlightLines(this.highlightedLines),this.highlightedLines=[])}highlightArea(e){this.unHighlightLines(),this.unHighlightArea(),this.highlightLines(e.polyline.lines),this.five.needsRender=!0}unHighlightArea(e){const n=e!=null?e:this.highlightedArea;n&&(this.unHighlightLines(n.polyline.lines),this.five.needsRender=!0)}highlightLines(e){this.unHighlightLines(),this.highlightedLines=e,e.forEach(n=>this.highlightLine(n))}unHighlightLines(e){this.unHighlightArea();const n=e!=null?e:this.highlightedLines;n&&n.forEach(s=>{s.selected=!1,s.distanceItem.unHighlight(),this.group.remove(s.lightMesh),this.five.needsRender=!0})}}class ja{constructor(t){f(this,"config");f(this,"polylines",[]);f(this,"areas",[]);f(this,"hook",new Te.Subscribe);this.config=t}addPolyline(t){if(this.includes(t)){console.error(new Error("不能重复添加 polyline"));return}this.polylines.push(t),this.hook.emit("polylineAdded",t)}addArea(t){if(this.areas.find(({id:e})=>e===t.id)!==void 0){console.error(new Error("不能重复添加 area"));return}this.areas.push(t),this.hook.emit("areaAdded",t)}replacePolylineByID(t,e){const n=this.getPolylineByID(t);n==null||n.replace(e)}removePolyline(t){const e=this.polylines.findIndex(({id:n})=>n===t.id);if(e===-1){console.error(new Error("polyline 不存在"));return}this.polylines.splice(e,1),this.hook.emit("polylineRemoved",t)}removeArea(t){const e=this.areas.findIndex(({id:n})=>n===t.id);if(e===-1){console.error(new Error("area 不存在"));return}this.areas.splice(e,1)}getPolylineByID(t){return this.polylines.find(e=>e.id===t)}getPolylineByLine(t){return this.polylines.find(e=>e.includes(t))}getLineByID(t){return this.getAllLines().find(e=>e.id===t)}getAllLines(){return this.polylines.map(t=>t.lines).flat(1)}getAllAreas(){return this.areas}getAllPoints(){return this.polylines.map(t=>t.points).flat(1)}includes(t){return this.polylines.find(({id:e})=>e===t.id)!==void 0}clear(){this.polylines.forEach(t=>this.hook.emit("polylineRemoved",t)),this.areas.forEach(t=>t.dispose()),this.polylines.splice(0,this.polylines.length),this.areas.splice(0,this.areas.length)}dispose(){this.clear()}getClosestPoint(){}parse(t){this.clear(),this.polylines.push(...t.polylines.map(e=>new jn({model:this}).fromJson(e))),this.polylines.forEach(e=>this.hook.emit("polylineAdded",e))}toJson(){return{polylines:this.polylines.map(t=>t.toJson()).filter(t=>t.lines.length>0)}}}function pv(){}const{Vector2:Av}=E;function vv(i,t){const{offsetWidth:e,offsetHeight:n}=t,{top:s,left:o}=t.getBoundingClientRect();return Object.assign(new Av,{x:(i.x-o)/e*2-1,y:-(i.y-s)/n*2+1})}const bv="data:image/png;base64,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",yv="data:image/png;base64,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",wv=`
|
|
300
|
+
`,this.container.append(this.content);const n=this.content.querySelector(".fpm__delete-icon");n&&(n.style.width="16px",n.style.height="17px",n.style.marginRight="1px"),this.content.addEventListener("click",this.clickHandler),this.content.addEventListener("mouseenter",this.hover),this.content.addEventListener("mouseleave",this.unHover),this.masking.setAttribute("style","position: absolute;top: 0;left: 0;bottom: 0;right: 0;pointer-events: none;"),this.masking.addEventListener("click",this.cancelHandler),this.masking.addEventListener("touchstart",this.cancelHandler)}dispose(){this.content.removeEventListener("click",this.clickHandler),this.content.removeEventListener("mouseenter",this.hover),this.content.removeEventListener("mouseleave",this.unHover),this.container.remove(),this.masking.removeEventListener("click",this.cancelHandler),this.masking.removeEventListener("touchstart",this.cancelHandler),this.masking.remove()}appendTo(t){return t.append(this.container),t.append(this.masking),this}setLines(t){return this.lines=t,this.points=Array.from(new Set(this.lines.map(e=>[e.points[0],e.points[1]]).flat(1))),this}setTarget(t){return this.target=t,this}updatePosition(t,e){if(t&&e)return this.container.style.left=t,this.container.style.top=e,this.container.style.transform="",this.show();if(this.lines.length===0)return this;const n=this.points.map(A=>A.position),s=n.map(A=>A.clone().project(this.five.camera));if(s.some(A=>Math.abs(A.z)>1))return this.hide();const o=s.map(A=>A.x),r=s.map(A=>A.y),a=(Math.min(...o)+Math.max(...o))/2,l=Math.max(...r),c=this.container.parentElement;if(!c)return this;const d=(a+1)/2*c.clientWidth,h=-(l-1)/2*c.clientHeight;let u=d,m=h-34;if(this.lines.length===1&&n.length===2){const A=(r[1]-r[0])/(o[1]-o[0]),g=-((r[1]+r[0])/2-1)/2*c.clientHeight;Math.abs(A)>.4&&(u=d+57,m=g)}return this.container.style.top="0",this.container.style.left="0",this.container.style.transform=`translate3d(${u}px, ${m}px, 0)`,this.show()}hide(){return this.visible=!1,this.masking.style.pointerEvents="none",this.container.style.opacity="0",this.container.style.pointerEvents="none",this.unHover(),this}show(){return this.visible=!0,this.masking.style.pointerEvents="auto",this.container.style.opacity="1",this.container.style.pointerEvents="auto",this}}function ro(i){const t=(o,r,a)=>{const l=o.lines.find(d=>d.points.findIndex(({id:u})=>u===o.id)!==r);if(!l)return a;const c=l.points[r];return c?t(c,r,a.concat(l)):a},e=t(i.points[0],1,[]),n=t(i.points[0],0,[]);return e.concat(n)}function La(i,t){const e=i.x-t[0].x,n=i.y-t[0].y,s=t[1].x-t[0].x,o=t[1].y-t[0].y,r=e*s+n*o,a=s*s+o*o,l=r/a;let c,d;return l<0||fv(t[0],t[1])?(c=t[0].x,d=t[0].y):l>1?(c=t[1].x,d=t[1].y):(c=t[0].x+l*s,d=t[0].y+l*o),new R.Vector2(c,d)}function fv(i,t){return i.x===t.x&&i.y===t.y}const Jl=()=>!1;class dn extends Eo{constructor(e){var n;super(e);f(this,"type","edit");f(this,"polyline");f(this,"area");f(this,"hasAppendDashed",!1);f(this,"fiveElement");f(this,"lastPoint",null);f(this,"pointSelector");f(this,"deleteDom");f(this,"onIntersectionUpdate",Sa((e,n)=>{this.currentMeasureType==="area"&&typeof n=="boolean"&&(n?this.hook.emit("readyComplete"):this.hook.emit("notReadyComplete")),this.updateDashed()},20));f(this,"revoke",()=>{this.currentMeasureType==="area"?this.revokeArea():this.currentMeasureType==="line"&&this.revokeLine()});f(this,"revokeArea",()=>{if(this.area.points.length!==0){if(this.area.popPoint(),this.hook.emit("pointsChange",this.area.points),this.area.points.length===0){this.lastPoint=null,this.hasAppendDashed=!1,this.dashed.remove(),this.five.needsRender=!0,this.hook.emit("revoke",{isEmpty:!0});return}else this.lastPoint=new ut(this.area.points[this.area.points.length-1]),this.updateDashed();this.five.needsRender=!0}});f(this,"revokeLine",e=>{const n=e||this.polyline;if(n.lines.length===0&&this.lastPoint){this.lastPoint=null,this.hasAppendDashed=!1,this.dashed.remove(),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.needsRender=!0,this.hook.emit("pointsChange",[]);return}if(n.lines.length===0&&!this.lastPoint||!this.lastPoint)return;const s=n.lines[n.lines.length-1],o=s.findAnotherPoint(this.lastPoint);o&&(this.lastPoint=o,this.hook.emit("anchorChange",o.position),this.group.remove(s.mesh),n.removeLine(s),s.distanceItem.remove(),this.updateDashed(),this.five.needsRender=!0)});f(this,"onMouseLeave",()=>{this.dashed.hide(),this.perpendicularDashed.hide(),this.area.hideArea()});f(this,"onLineChanged",()=>{this.hook.emit("editedPolylineChange",this.polyline)});f(this,"onWantsSelect",()=>{if(this.currentMeasureType==="area"){const e=this.area.polygon.isBlank||this.area.polygon.visible===!1;if(this.area.points.length>=3&&e)return!1}});f(this,"wantsMoveToPano",()=>{if(this.lastPoint)return!1});f(this,"onSelect",()=>{var o,r,a,l;this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh),this.currentMeasureType==="area"&&this.group.add(this.perpendicularDashed.mesh)),this.hasAppendDashed=!0;const e=(()=>{var c,d;if(this.currentMeasureType==="area")return this.area.projectPoint((c=this.pointSelector.position)==null?void 0:c.point);if(this.currentMeasureType==="line")return(d=this.pointSelector.position)==null?void 0:d.point})();if(!e)return;const n=new ut(e),s=this.lastPoint;if(!(s!=null&&s.position&&n.position.equals(s==null?void 0:s.position))){if(this.lastPoint=n,this.currentMeasureType==="line"){if(n&&s){const d=new tn(s,n,this.model);d.distanceItem.setCanSelect(!1),d.distanceItem.appendTo(this.container),this.polyline.addLine(d),this.group.add(d.mesh),d.distanceItem.update(this.five)}const c=(r=(o=this.editParams)==null?void 0:o.autoEndConfig)==null?void 0:r.line;typeof c=="number"&&(this.polyline.getPointLength()>=c?this.complete():this.polyline.getPointLength()===c-1&&this.hook.emit("readyComplete")),this.hook.emit("pointsChange",this.polyline.points)}else if(this.currentMeasureType==="area"){if(this.area.addPoints(n.position),this.area.isClosed){this.complete();return}this.area.points.length>=3?this.pointSelector.setAdherePoints(this.area.points[0]):this.pointSelector.setAdherePoints(null);const c=(l=(a=this.editParams)==null?void 0:a.autoEndConfig)==null?void 0:l.area;typeof c=="number"&&(this.area.points.length>=c?this.complete():this.area.points.length===c-1&&this.hook.emit("readyComplete")),this.hook.emit("pointsChange",this.area.points)}this.updateDashed(),this.five.needsRender=!0,this.hook.emit("anchorChange",n.position)}});f(this,"onCameraUpdate",()=>{this.updateDistanceUI()});f(this,"updateDashed",()=>{var s;if(!this.lastPoint)return;const e=this.lastPoint.position,n=(()=>{var o,r;if(this.currentMeasureType==="area")return this.area.projectPoint((o=this.pointSelector.position)==null?void 0:o.point);if(this.currentMeasureType==="line")return(r=this.pointSelector.position)==null?void 0:r.point})();if(!n){this.dashed.hide();return}if(this.dashed.show(),this.dashed.setPoints(e,n),this.dashed.distanceItem.update(this.five),this.hook.emit("editedDashedLineChange",this.dashed),this.currentMeasureType==="area")if(this.area.areaItem.setCanSelect(!1),this.area.points.length>=2){const o=(s=this.pointSelector.position)==null?void 0:s.point;if(o){const d=o,h=n;this.perpendicularDashed.setPoints(d,h),this.perpendicularDashed.show()}else this.perpendicularDashed.hide();const r=this.area.polyline.lines.map(d=>({start:d.points[0].position,end:d.points[1].position})),a=Xl({start:e,end:n},r),l=Xl({start:n,end:this.area.points[0]},r);if(a||l)this.area.hideArea(),this.hook.emit("allowAddPointStateChange","forbid");else{this.area.showArea();const d=[...this.area.points,n];this.area.polygon.updatePoints(d),this.area.areaItem.updateArea(this.five),this.hook.emit("allowAddPointStateChange","allow")}}else this.area.hideArea(),this.perpendicularDashed.hide();this.five.needsRender=!0});f(this,"wantsTapGesture",e=>{var p,g;if(this.editParams.pointSelectorMode==="cursor"||this.lastPoint)return!1;const n=this.model.areas.map(v=>e.intersectObject(v.polygon,!0)[0]).sort((v,y)=>v.distance-y.distance),s=(g=(p=n[0])==null?void 0:p.object)==null?void 0:g.parent;if(s!=null&&s.isPolygonMesh){const v=this.model.areas.find(y=>y.polygon===s);if(v){const{x:y,y:I}=n[0].point.clone().project(this.five.camera),k=`${(y+1)/2*100}%`,T=`${(-I+1)/2*100}%`;return this.chooseArea(v,{left:k,top:T}),!1}}const[o]=this.five.model.intersectRaycaster(e);if(!o)return;const r=this.five.camera,a=o.point.clone().project(r),l=this.container.clientWidth,c=this.container.clientHeight,d=new R.Vector2(a.x*l,a.y*c),h=this.model.getAllLines().map(v=>{const[y,I]=v.points,k=y.position.clone().project(r),T=I.position.clone().project(r);if(!Ln(k)&&!Ln(T))return null;const P=new R.Vector2(k.x*l,k.y*c),V=new R.Vector2(T.x*l,T.y*c);return{id:v.id,points:[P,V]}}).filter(v=>!!v);if(h.length===0)return;const m=h.map(v=>{const y=La(d,v.points);return{id:v.id,distance:y.distanceTo(d)}}).sort((v,y)=>v.distance-y.distance)[0];if(m.distance>20)return;const A=this.model.getAllLines().find(({id:v})=>v===m.id);if(A)return this.chooseLine(A),!1});f(this,"chooseLine",e=>{console.log(e);const n=ro(e);this.deleteDom.setTarget(n).setLines(n).updatePosition().show(),this.highlightLines(n),this.hook.emit("selectedChange",n)});f(this,"chooseArea",(e,n)=>{console.log("choose area"),this.deleteDom.setTarget(e).updatePosition(n.left,`calc(${n.top} - 1.5rem)`).show(),this.highlightArea(e)});f(this,"deleteArea",e=>{this.unHighlightArea(e),e.dispose(),this.deleteDom.hide()});f(this,"deleteLine",e=>{const n=e[0],s=this.model.getPolylineByLine(n);s&&(this.model.removePolyline(s),s.lines.forEach(o=>this.removeLine(o)),this.deleteDom.setLines([]).hide())});this.fiveElement=this.five.getElement(),this.deleteDom=new Ta(this.five,{i18n:this.config.i18n,onClick:(s,o)=>{var l;const r=o.type==="area",a=Array.isArray(o)&&((l=o[0])==null?void 0:l.type)==="line";r&&this.deleteArea(o),a&&this.deleteLine(o)},cancel:s=>{var a;this.deleteDom.hide();const o=s.type==="area",r=Array.isArray(s)&&((a=s[0])==null?void 0:a.type)==="line";o&&this.unHighlightArea(s),r&&this.unHighlightLines(s)}}).appendTo(this.container),this.pointSelector=new lv(this.five,{mode:this.editParams.pointSelectorMode,pointSelectorHelperParams:{magnifierParams:this.magnifierParams}}),this.pointSelector.enable(),this.polyline=new jn({model:this.model}),this.area=new Jr(void 0,{five:this.five,model:this.model,meshContainer:this.group,domContainer:this.container}),this.model.addPolyline(this.polyline),this.model.addArea(this.area),this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),s.distanceItem.setCanSelect(!0),s.hook.on("selected",this.chooseLine),this.group.add(s.mesh)}),this.model.getAllAreas().forEach(s=>{s.areaItem.appendTo(this.container),s.areaItem.updateDomPosition(this.five),s.areaItem.setCanSelect(!0),s.hook.on("selected",this.chooseArea),this.group.add(s.polygon),s.polyline.lines.forEach(o=>{o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)})}),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.wantsTapGesture),this.five.on("wantsMoveToPano",this.wantsMoveToPano),this.five.on("wantsChangeMode",Jl),this.pointSelector.hook.on("intersectionUpdate",this.onIntersectionUpdate),this.pointSelector.hook.on("select",this.onSelect),this.pointSelector.hook.on("wantsSelect",this.onWantsSelect),this.polyline.hook.on("lineAdded",this.onLineChanged),this.polyline.hook.on("lineRemoved",this.onLineChanged),this.five.helperVisible=!1,(n=this.fiveElement)==null||n.addEventListener("mouseleave",this.onMouseLeave),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.refresh()}dispose(){var e;super.dispose(),this.model.areas.forEach(n=>{(n.points.length<2||n.polygon.isBlank)&&this.model.removeArea(n)}),this.five.helperVisible=!0,this.pointSelector.disable(),this.dashed.remove(),this.perpendicularDashed.remove(),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsTapGesture",this.wantsTapGesture),this.five.off("wantsMoveToPano",this.wantsMoveToPano),this.five.off("wantsChangeMode",Jl),this.pointSelector.hook.off("intersectionUpdate",this.onIntersectionUpdate),this.pointSelector.hook.off("select",this.onSelect),this.polyline.hook.off("lineAdded",this.onLineChanged),this.polyline.hook.off("lineRemoved",this.onLineChanged),(e=this.fiveElement)==null||e.removeEventListener("mouseleave",this.onMouseLeave),this.magnifier.dispose(),this.dashed.distanceItem.remove(),this.five.needsRender=!0}getEditingLines(){return this.polyline.lines}selectPoint(){this.onSelect()}complete(){this.hook.emit("complete"),this.currentMeasureType==="area"?(this.area.points.length<3?this.deleteArea(this.area):(this.area.showArea(),this.area.complete(),this.area.hook.on("selected",this.chooseArea)),this.area=new Jr(void 0,{five:this.five,model:this.model,meshContainer:this.group,domContainer:this.container}),this.model.addArea(this.area)):this.currentMeasureType==="line"&&(this.polyline.lines.forEach(e=>{e.hook.on("selected",this.chooseLine),e.distanceItem.setCanSelect(!0)}),this.polyline=new jn({model:this.model}),this.model.addPolyline(this.polyline)),this.pointSelector.setAdherePoints(null),this.dashed.hide(),this.perpendicularDashed.hide(),this.lastPoint=void 0}highlightArea(e){this.highlightLines(e.polyline.lines),this.five.needsRender=!0}unHighlightArea(e){this.unHighlightLines(e.polyline.lines),this.five.needsRender=!0}highlightLines(e){e.forEach(n=>this.highlightLine(n))}unHighlightLines(e){e.forEach(n=>{n.selected=!1,n.distanceItem.unHighlight(),this.group.remove(n.lightMesh),this.five.needsRender=!0})}highlightLine(e){this.unHighlightLines(this.model.getAllLines()),!e.selected&&(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}}class ql extends Eo{constructor(e){super(e);f(this,"type","view");f(this,"hammer");f(this,"polylineRemoved",e=>{e.lines.forEach(n=>this.removeLine(n)),this.hook.emit("selectedChange",this.model.getAllLines().filter(n=>n.selected).map(n=>n))});f(this,"polylineAdded",e=>{const n=this.five.getCurrentState().panoIndex;e.lines.forEach(s=>{e.visiblePanoIndexes&&!e.visiblePanoIndexes.includes(n)&&(s.mesh.visible=!1),s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),this.group.add(s.mesh)})});f(this,"onCameraUpdate",()=>{this.updateDistanceUI()});f(this,"onFivePanoWillArrive",e=>{this.model.polylines.forEach(n=>{n.visiblePanoIndexes&&(n.visiblePanoIndexes.includes(e)||n.lines.forEach(s=>{s.mesh.visible=!1,s.distanceItem.update(this.five)}))})});f(this,"onFivePanoArrived",e=>{this.model.polylines.forEach(n=>{n.visiblePanoIndexes&&n.visiblePanoIndexes.includes(e)&&n.lines.forEach(s=>{s.mesh.visible=!0,s.distanceItem.update(this.five)})})});this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),this.group.add(s.mesh)});const n=this.five.getElement();if(n){const s=new ss(n);this.hammer=s}this.onFivePanoWillArrive(this.five.getCurrentState().panoIndex),this.onFivePanoArrived(this.five.getCurrentState().panoIndex),this.updateDistanceUI(),this.five.needsRender=!0,this.model.hook.on("polylineAdded",this.polylineAdded),this.model.hook.on("polylineRemoved",this.polylineRemoved),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive)}dispose(){var e;super.dispose(),this.model.hook.off("polylineAdded",this.polylineAdded),this.model.hook.off("polylineRemoved",this.polylineRemoved),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}}function mv(i,t){const e=(i.x+1)/2*t.width,n=-(i.y-1)/2*t.height;return new R.Vector2(e,n)}function gv(i,t,e,n){const s=i.getElement();if(!s||t.length===0)return null;const o={width:s.clientWidth,height:s.clientHeight},r=t.map(a=>{const l=a.position.clone().project(i.camera);return Ln(l)?{distance:mv(l,o).distanceTo(e),point:a}:{distance:1/0,point:a}}).sort((a,l)=>a.distance-l.distance);return typeof n=="number"&&r[0].distance>n?null:r[0]}const Kl=()=>!1;class $l extends Eo{constructor(e){super(e);f(this,"type","watch");f(this,"deleteDom");f(this,"choose");f(this,"highlightedLines",[]);f(this,"highlightedArea");f(this,"fiveElement");f(this,"editPointState");f(this,"hammer");f(this,"onPanStart",e=>{var a;if(this.model.getAllLines().length===0||!this.fiveElement)return;const n=qr(e).point,s=(a=gv(this.five,this.model.getAllPoints(),n,20))==null?void 0:a.point;if(!s){this.editPointState=void 0;return}const o={point:s,associatedLines:ro(s.lines[0])};this.hook.emit("wantsDragLine",{point:s.id,lines:o.associatedLines.map(({id:l})=>l)})||(this.editPointState=o,this.magnifier.appendTo(this.container),this.magnifier.enable(),this.group.add(this.mouseGroup))});f(this,"onPanEnd",()=>{this.editPointState&&(this.editPointState.point.lines.forEach(e=>e.mesh.setMaterial({dashed:!1})),this.highlightLines(this.editPointState.associatedLines),this.editPointState=void 0,this.magnifier.disable(),this.group.remove(this.mouseGroup))});f(this,"onPan",e=>{if(!this.editPointState||!this.fiveElement)return;const n=qr(e).ndcPoint,s=new R.Raycaster;s.setFromCamera(n,this.five.camera);const[o]=this.five.model.intersectRaycaster(s);o&&this.onIntersectionUpdate(o)});f(this,"onIntersectionUpdate",(e,n)=>{if(this.editPointState){if(this.clearHighlightLines(),this.editPointState.point.position.copy(e.point),this.editPointState.point.lines.forEach(s=>{s.mesh.setPoints(s.points[0].position.clone(),s.points[1].position.clone()),s.lightMesh.setPoints(s.points[0].position.clone(),s.points[1].position.clone()),s.mesh.setMaterial({dashed:!0})}),this.updateDistanceUI(),this.magnifier.renderWithPoint(e.point),this.mouseGroup.position.copy(e.point),n)this.mouseGroup.quaternion.copy(n.quaternion);else if(e.face){const o=e.face.normal.clone().multiplyScalar(.05),a=e.point.clone().add(o).clone().add(o);this.mouseGroup.lookAt(a)}this.five.needsRender=!0,this.hook.emit("selectedChange",this.editPointState.associatedLines.map(s=>s))}});f(this,"wantsPanGesture",()=>{if(this.editPointState)return!1});f(this,"wantsTapGesture",e=>{var p;const n=this.model.areas.map(g=>e.intersectObject(g.polygon,!0)[0]).sort((g,v)=>g.distance-v.distance),s=(p=n[0])==null?void 0:p.object.parent;if(s instanceof tu){const g=this.model.areas.find(v=>v.polygon===s);if(g){const{x:v,y}=n[0].point.clone().project(this.five.camera),I=`${(v+1)/2*100}%`,k=`${(-y+1)/2*100}%`;return this.chooseArea(g,{left:I,top:k}),!1}}const[o]=this.five.model.intersectRaycaster(e);if(!o)return;const r=this.five.camera,a=o.point.clone().project(r),l=this.container.clientWidth,c=this.container.clientHeight,d=new R.Vector2(a.x*l,a.y*c),h=this.model.getAllLines().map(g=>{const[v,y]=g.points,I=v.position.clone().project(r),k=y.position.clone().project(r);if(!Ln(I)&&!Ln(k))return null;const T=new R.Vector2(I.x*l,I.y*c),P=new R.Vector2(k.x*l,k.y*c);return{id:g.id,points:[T,P]}}).filter(g=>!!g);if(h.length===0)return;const m=h.map(g=>{const v=La(d,g.points);return{id:g.id,distance:v.distanceTo(d)}}).sort((g,v)=>g.distance-v.distance)[0];if(m.distance>20)return;const A=this.model.getAllLines().find(({id:g})=>g===m.id);if(A)return this.chooseLine(A),!1});f(this,"chooseLine",e=>{this.choose="line";const n=ro(e);this.deleteDom.setLines(n).updatePosition().show(),console.log(this.deleteDom),this.highlightLines(n),this.five.needsRender=!0,this.hook.emit("selectedChange",n.map(s=>s))});f(this,"chooseArea",(e,n)=>{this.choose=e,this.deleteDom.updatePosition(n.left,`calc(${n.top} - 20px)`).show(),this.highlightArea(e)});f(this,"polylineRemoved",e=>{e.lines.forEach(n=>this.removeLine(n)),this.hook.emit("selectedChange",this.model.getAllLines().filter(n=>n.selected).map(n=>n))});f(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.highlightedLines.length>0&&this.deleteDom.updatePosition()});f(this,"deleteArea",e=>{console.log(e),this.unHighlightArea(e),e.dispose(),this.deleteDom.hide()});f(this,"deleteLine",()=>{const e=this.highlightedLines[0],n=this.model.getPolylineByLine(e);n&&(this.model.removePolyline(n),this.highlightedLines=[],this.deleteDom.setLines([]).hide())});f(this,"cancelDeleteClickCallback",()=>{this.deleteDom.hide(),this.clearHighlightLines(),this.unHighlightArea()});this.deleteDom=new Ta(this.five,{i18n:this.config.i18n,onClick:()=>{console.log(this.choose),this.choose==="line"?this.deleteLine():this.choose instanceof Jr&&this.deleteArea(this.choose)},cancel:this.cancelDeleteClickCallback}).appendTo(this.container),this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),s.hook.on("selected",this.chooseLine),s.distanceItem.setCanSelect(!0),this.group.add(s.mesh)}),this.model.getAllAreas().forEach(s=>{s.areaItem.appendTo(this.container),s.areaItem.updateArea(this.five),s.hook.on("selected",this.chooseArea),s.areaItem.setCanSelect(!0),this.group.add(s.polygon),s.polyline.lines.forEach(o=>{o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)})});const n=this.five.getElement();if(n){this.fiveElement=n;const s=new ss(n);this.hammer=s,s.on("pan",this.onPan),s.on("panstart",this.onPanStart),s.on("panend",this.onPanEnd)}this.updateDistanceUI(),this.five.needsRender=!0,this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.wantsTapGesture),this.five.on("wantsPanGesture",this.wantsPanGesture),this.five.on("wantsChangeMode",Kl),this.model.hook.on("polylineRemoved",this.polylineRemoved)}dispose(){var e;super.dispose(),this.deleteDom.dispose(),this.model.hook.off("polylineRemoved",this.polylineRemoved),this.model.getAllLines().forEach(n=>n.hook.off("selected",this.chooseLine)),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsPanGesture",this.wantsPanGesture),this.five.off("wantsTapGesture",this.wantsTapGesture),this.five.off("wantsChangeMode",Kl),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.unHighlightLines(this.highlightedLines),this.highlightedLines=[])}highlightArea(e){this.unHighlightLines(),this.unHighlightArea(),this.highlightLines(e.polyline.lines),this.five.needsRender=!0}unHighlightArea(e){const n=e!=null?e:this.highlightedArea;n&&(this.unHighlightLines(n.polyline.lines),this.five.needsRender=!0)}highlightLines(e){this.unHighlightLines(),this.highlightedLines=e,e.forEach(n=>this.highlightLine(n))}unHighlightLines(e){this.unHighlightArea();const n=e!=null?e:this.highlightedLines;n&&n.forEach(s=>{s.selected=!1,s.distanceItem.unHighlight(),this.group.remove(s.lightMesh),this.five.needsRender=!0})}}class ja{constructor(t){f(this,"config");f(this,"polylines",[]);f(this,"areas",[]);f(this,"hook",new Te.Subscribe);this.config=t}addPolyline(t){if(this.includes(t)){console.error(new Error("不能重复添加 polyline"));return}this.polylines.push(t),this.hook.emit("polylineAdded",t)}addArea(t){if(this.areas.find(({id:e})=>e===t.id)!==void 0){console.error(new Error("不能重复添加 area"));return}this.areas.push(t),this.hook.emit("areaAdded",t)}replacePolylineByID(t,e){const n=this.getPolylineByID(t);n==null||n.replace(e)}removePolyline(t){const e=this.polylines.findIndex(({id:n})=>n===t.id);if(e===-1){console.error(new Error("polyline 不存在"));return}this.polylines.splice(e,1),this.hook.emit("polylineRemoved",t)}removeArea(t){const e=this.areas.findIndex(({id:n})=>n===t.id);if(e===-1){console.error(new Error("area 不存在"));return}this.areas.splice(e,1)}getPolylineByID(t){return this.polylines.find(e=>e.id===t)}getPolylineByLine(t){return this.polylines.find(e=>e.includes(t))}getLineByID(t){return this.getAllLines().find(e=>e.id===t)}getAllLines(){return this.polylines.map(t=>t.lines).flat(1)}getAllAreas(){return this.areas}getAllPoints(){return this.polylines.map(t=>t.points).flat(1)}includes(t){return this.polylines.find(({id:e})=>e===t.id)!==void 0}clear(){this.polylines.forEach(t=>this.hook.emit("polylineRemoved",t)),this.areas.forEach(t=>t.dispose()),this.polylines.splice(0,this.polylines.length),this.areas.splice(0,this.areas.length)}dispose(){this.clear()}getClosestPoint(){}parse(t){this.clear(),this.polylines.push(...t.polylines.map(e=>new jn({model:this}).fromJson(e))),this.polylines.forEach(e=>this.hook.emit("polylineAdded",e))}toJson(){return{polylines:this.polylines.map(t=>t.toJson()).filter(t=>t.lines.length>0)}}}function pv(){}const{Vector2:Av}=E;function vv(i,t){const{offsetWidth:e,offsetHeight:n}=t,{top:s,left:o}=t.getBoundingClientRect();return Object.assign(new Av,{x:(i.x-o)/e*2-1,y:-(i.y-s)/n*2+1})}const bv="data:image/png;base64,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",yv="data:image/png;base64,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",wv=`
|
|
301
301
|
varying vec2 vUv;
|
|
302
302
|
void main() {
|
|
303
303
|
vUv = uv;
|
|
@@ -312,7 +312,7 @@ void main() {
|
|
|
312
312
|
float match = 1.0 - uv.x;
|
|
313
313
|
gl_FragColor = vec4(1.0,1.0,1.0,match);
|
|
314
314
|
}
|
|
315
|
-
`;function su(i){var b,y;const t=(b=i.isMobile)!=null?b:!0,e=(y=i.useNormalVector)!=null?y:!0;let n=10349931;e&&i.ballColor>=0&&(n=i.ballColor);const s=new R.Group,o=new R.PlaneGeometry(.3,.3),r=t?bv:yv,a=new R.TextureLoader().load(r);a.encoding=R.sRGBEncoding,a.minFilter=R.LinearFilter;const l=new R.MeshBasicMaterial({map:a,transparent:!0,depthTest:!1}),c=new R.Mesh(o,l),d=new R.CurvePath;d.add(new R.LineCurve3(new R.Vector3(0,0,0),new R.Vector3(0,0,.1)));const h=new R.TubeGeometry(d,8,.003),u=new R.ShaderMaterial({vertexShader:wv,fragmentShader:Cv,depthTest:!1,transparent:!0}),m=new R.Mesh(h,u),A=new R.SphereGeometry(.01,20,20),p=new R.MeshBasicMaterial({color:n,depthTest:!1,transparent:!0,side:R.DoubleSide}),g=new R.Mesh(A,p);return g.position.set(0,0,.1),s.name="mouse-current",s.add(c),e&&s.add(m,g),s}class Iv{constructor(t){f(this,"container",document.createElement("div"));f(this,"five");f(this,"group");f(this,"mouseGroup");f(this,"hasAppendMouseGroup",!1);f(this,"hook");f(this,"content");f(this,"intersectMesh");f(this,"centerMouseXY");f(this,"raycaster",new R.Raycaster);f(this,"pieceStyl",{matrix3d:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],scale:1,opacity:.4});f(this,"onCameraDirectionUpdate",()=>{const t=this.getIntersection();if(t){this.pieceChange(t),this.updateMouseGroup(t);const e=new ut(this.mouseGroup.position);this.hook.emit("nowPointChange",e)}});f(this,"onWillChangeState",(t,e)=>{var s;this.dotAnimation();const n=(s=this.getIntersection())==null?void 0:s.point;n&&(e==="editing"?this.hook.emit("getStartPoint",new ut(n)):this.hook.emit("getEndPoint",new ut(n)))});f(this,"computedCenterMouseXY",()=>{const t=this.container.querySelector(".range-piece__aim");if(!t)return null;const{left:e,top:n,width:s,height:o}=t.getBoundingClientRect(),r=Math.round(e+s/2),a=Math.round(n+o/2),c=vv({x:r,y:a},this.five.getElement());this.centerMouseXY=c});f(this,"getIntersection",()=>{if(!this.centerMouseXY)return null;this.raycaster.setFromCamera(this.centerMouseXY,this.five.camera);const t=this.five.model.intersectRaycaster(this.raycaster)[0];return t||null});this.five=t.five,this.hook=t.hook,this.group=t.group,this.mouseGroup=su(H({isMobile:!0},t.openParams.crossHairParameter)),this.container.innerHTML=$f,this.container.classList.add("range-piece-controller"),this.content=this.container.querySelector(".range-piece__content"),this.content&&(this.content.style.transform=`matrix3d(${this.pieceStyl.matrix3d.toString()}) scale(${this.pieceStyl.scale})`,this.content.style.opacity=`${this.pieceStyl.opacity}`),t.container.append(this.container),this.intersectMesh=new R.Mesh(new R.RingGeometry(.04,.08,32),new R.MeshBasicMaterial({color:1245179,opacity:0,side:R.DoubleSide,transparent:!0})),this.container.addEventListener("animationend",this.computedCenterMouseXY),this.five.on("cameraUpdate",this.onCameraDirectionUpdate),this.hook.on("willChangeState",this.onWillChangeState)}dispose(){this.container.removeEventListener("animationend",this.computedCenterMouseXY),this.five.off("cameraUpdate",this.onCameraDirectionUpdate),this.hook.off("willChangeState",this.onWillChangeState),this.container.remove(),this.group.remove(this.mouseGroup),this.mouseGroup.remove(),this.hasAppendMouseGroup=!1,this.five.scene.remove(this.intersectMesh)}pieceChange(t){const e=t.face,n=t.point;if(e&&n){const o=e.normal.clone().clone().multiplyScalar(.05),r=n.clone().add(o);this.intersectMesh.position.copy(r);const a=r.clone().add(o);this.intersectMesh.lookAt(a),this.five.scene.add(this.intersectMesh);const l=this.intersectMesh.modelViewMatrix.clone().toArray();this.changePieceStyl("matrix3d",l);const c=this.calculateSize(n);this.changePieceStyl("scale",c)}}calculateSize(t){if(!t)return;const e=this.five.camera.position;let n=t.distanceTo(e);const s=4,o=1;return n>s&&(n=s),n<o&&(n=o),-.51/(s-o)*n+1}dotAnimation(){const t=$a.Easing.Quadratic.InOut,e={opacity:.4,scale:this.pieceStyl.scale},n={opacity:[1,.4],scale:[this.pieceStyl.scale*.8,this.pieceStyl.scale]};let s=pv;const o=new $a.Tween(e).to(n,500).easing(t).start(0).onUpdate(({opacity:r,scale:a})=>{this.changePieceStyl("scale",a),this.changePieceStyl("opacity",r)}).onComplete(()=>{s()});s=os(r=>{o.update(r)})}changePieceStyl(t,e){this.content&&(this.pieceStyl[t]=e,this.content.style.transform=`matrix3d(${this.pieceStyl.matrix3d.toString()}) scale(${this.pieceStyl.scale})`,this.content.style.opacity=`${this.pieceStyl.opacity}`)}updateMouseGroup(t,e){if(!this.hasAppendMouseGroup){this.group.add(this.mouseGroup),this.hasAppendMouseGroup=!0;const n=this.container.querySelector(".range-piece__aim");n&&(n.style.opacity="0")}if(!t)return this.mouseGroup;if(this.mouseGroup.position.copy(t.point),e)this.mouseGroup.quaternion.copy(e.quaternion);else if(t.face){const s=t.face.normal.clone().multiplyScalar(.05),r=t.point.clone().add(s).clone().add(s);this.mouseGroup.lookAt(r)}return this.mouseGroup}}class Hi extends Eo{constructor(e){super(e);f(this,"state","watching");f(this,"polyline");f(this,"hasAppendDashed",!1);f(this,"mobileStartPoint",null);f(this,"mobileNowPoint",null);f(this,"highlightedLines",[]);f(this,"deleteDom");f(this,"rangePieceController");f(this,"disposers",[]);f(this,"onWantsTapGesture",e=>{if(this.state==="editing")return!1;const[n]=this.five.model.intersectRaycaster(e);if(!n)return;const s=this.five.camera,o=n.point.clone().project(s),r=this.container.clientWidth,a=this.container.clientHeight,l=new R.Vector2(o.x*r,o.y*a),c=this.model.getAllLines().map(m=>{const[A,p]=m.points,g=A.position.clone().project(s),b=p.position.clone().project(s);if(!Ln(g)&&!Ln(b))return null;const y=new R.Vector2(g.x*r,g.y*a),I=new R.Vector2(b.x*r,b.y*a);return{id:m.id,points:[y,I]}}).filter(m=>!!m);if(c.length===0)return;const h=c.map(m=>{const A=La(l,m.points);return{id:m.id,distance:A.distanceTo(l)}}).sort((m,A)=>m.distance-A.distance)[0];if(h.distance>20)return;const u=this.model.getAllLines().find(({id:m})=>m===h.id);if(u)return this.chooseLine(u),!1});f(this,"onWantsToMoveToPano",()=>this.state==="watching");f(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.dashed.distanceItem.update(this.five)});f(this,"updateMobileDashed",()=>{!this.mobileStartPoint||!this.mobileNowPoint||(this.dashed.setPoints(this.mobileStartPoint.position,this.mobileNowPoint.position),this.dashed.distanceItem.update(this.five),this.hook.emit("editedDashedLineChange",this.dashed))});f(this,"updateMagnifier",e=>{this.magnifier.containerDom!==this.container&&this.magnifier.appendTo(this.container),this.magnifier.getCurrentState().enabled||this.magnifier.enable(),requestAnimationFrame(()=>this.magnifier.renderWithPoint(e.position)),this.five.needsRender=!0});f(this,"onGetStartPoint",e=>{this.mobileStartPoint=e,this.polyline=new jn({model:this.model}),this.polyline.hook.on("lineAdded",()=>this.hook.emit("editedPolylineChange",this.polyline)),this.polyline.hook.on("lineRemoved",()=>this.hook.emit("editedPolylineChange",this.polyline))});f(this,"onGetEndPoint",()=>{const e=this.mobileNowPoint;if(this.removeLine(this.dashed),this.hasAppendDashed=!1,this.mobileStartPoint&&e){const n=new tn(this.mobileStartPoint,e,this.model);this.polyline.addLine(n),n.distanceItem.appendTo(this.container),n.distanceItem.update(this.five),n.hook.on("selected",this.chooseLine),this.disposers.push(()=>n.hook.off("selected",this.chooseLine)),this.group.add(n.mesh),this.model.addPolyline(this.polyline)}this.mobileStartPoint=null,this.mobileNowPoint=null,this.five.needsRender=!0});f(this,"onNowPointChange",e=>{if(this.state==="watching"){this.mobileNowPoint=e,this.updateMagnifier(e);return}this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh),this.hasAppendDashed=!0),this.five.needsRender=!0,this.mobileNowPoint=e,this.updateMobileDashed(),this.updateMagnifier(e),this.five.needsRender=!0});f(this,"onWillChangeState",(e,n)=>{this.state=n,this.state==="watching"?this.five.helperVisible=!0:this.five.helperVisible=!1});f(this,"chooseLine",e=>{const n=ro(e);this.highlightLines(n),this.five.needsRender=!0,this.hook.emit("selectedChange",n.map(s=>s))});f(this,"deleteDomClickCallback",()=>{this.highlightedLines.forEach(e=>{this.removeLine(e);const n=this.model.getPolylineByLine(e);this.model.removePolyline(n)}),this.highlightedLines=[],this.deleteDom.setLines([]).hide()});f(this,"cancelDeleteClickCallback",()=>{this.clearHighlightLines()});this.model=new ja(this.config),this.polyline=new jn({model:this.model}),this.rangePieceController=new Iv(e),this.deleteDom=new Ta(this.five,{i18n:this.config.i18n,onClick:this.deleteDomClickCallback,cancel:this.cancelDeleteClickCallback}).appendTo(this.container),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.onWantsTapGesture),this.five.on("wantsToMoveToPano",this.onWantsToMoveToPano),this.five.helperVisible=!1,this.hook.emit("editedDashedLineChange",null),this.hook.on("getStartPoint",this.onGetStartPoint),this.hook.on("getEndPoint",this.onGetEndPoint),this.hook.on("nowPointChange",this.onNowPointChange),this.hook.on("willChangeState",this.onWillChangeState),this.five.refresh()}dispose(){super.dispose(),this.disposers.forEach(e=>e()),this.five.helperVisible=!0,this.rangePieceController.dispose(),this.group.remove(this.mouseGroup),this.dashed.remove(),this.perpendicularDashed.remove(),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsTapGesture",this.onWantsTapGesture),this.five.off("wantsToMoveToPano",this.onWantsToMoveToPano),this.hook.off("getStartPoint",this.onGetStartPoint),this.hook.off("getEndPoint",this.onGetEndPoint),this.hook.off("nowPointChange",this.onNowPointChange),this.hook.off("willChangeState",this.onWillChangeState),this.hook.emit("selectedChange",[]),this.five.needsRender=!0}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.deleteDom.setLines([]).hide(),this.model.getAllLines().forEach(e=>{e.selected=!1,e.distanceItem.unHighlight(),this.group.remove(e.lightMesh)}),this.highlightedLines=[],this.five.needsRender=!0)}getEditingLines(){return this.model.polylines}highlightLines(e){this.clearHighlightLines(),this.highlightedLines=e,this.deleteDom.setLines(e).updatePosition().show(),e.forEach(n=>this.highlightLine(n))}}const ao="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxmaWx0ZXIgeD0iLTUuMyUiIHk9Ii01LjMlIiB3aWR0aD0iMTEwLjUlIiBoZWlnaHQ9IjExMC41JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19hIj48ZmVPZmZzZXQgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93Qmx1ck91dGVyMSIgaW4yPSJTb3VyY2VBbHBoYSIgb3BlcmF0b3I9Im91dCIgcmVzdWx0PSJzaGFkb3dCbHVyT3V0ZXIxIi8+PGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwLjUgMCIgaW49InNoYWRvd0JsdXJPdXRlcjEiLz48L2ZpbHRlcj48ZmlsdGVyIHg9Ii0xMS40JSIgeT0iLTExLjQlIiB3aWR0aD0iMTIyLjklIiBoZWlnaHQ9IjEyMi45JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19jIj48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSI0LjUiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIi8+PGZlT2Zmc2V0IGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMC4zIDAiIGluPSJzaGFkb3dJbm5lcklubmVyMSIvPjwvZmlsdGVyPjxmaWx0ZXIgeD0iLTEyNi42JSIgeT0iLTMzNy41JSIgd2lkdGg9IjM1My4xJSIgaGVpZ2h0PSI3NzUlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJwcmVmaXhfX2UiPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjE2IiBpbj0iU291cmNlR3JhcGhpYyIvPjwvZmlsdGVyPjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19kIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9Ii43IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2YiPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48Y2lyY2xlIGlkPSJwcmVmaXhfX2IiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC40NDQiLz48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBmaWxsPSIjMDAwIiBmaWx0ZXI9InVybCgjcHJlZml4X19jKSIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjxjaXJjbGUgc3Ryb2tlPSJ1cmwoI3ByZWZpeF9fZCkiIHN0cm9rZS13aWR0aD0iLjQiIGZpbGwtb3BhY2l0eT0iLjI0MSIgZmlsbD0iI0ZGRiIgc3Ryb2tlLWxpbmVqb2luPSJzcXVhcmUiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC4yNDQiLz48ZWxsaXBzZSBmaWxsPSIjRkZGIiBvcGFjaXR5PSIuNTk2IiBmaWx0ZXI9InVybCgjcHJlZml4X19lKSIgY3g9IjM2IiBjeT0iMzYiIHJ4PSIxOC45NjMiIHJ5PSI3LjExMSIvPjxwYXRoIGQ9Ik0zNiAwQzE2LjExOCAwIDAgMTYuMTE4IDAgMzZzMTYuMTE4IDM2IDM2IDM2IDM2LTE2LjExOCAzNi0zNlM1NS44ODIgMCAzNiAwem0wIDQuNDQ0YzE3LjQyOCAwIDMxLjU1NiAxNC4xMjggMzEuNTU2IDMxLjU1NlM1My40MjggNjcuNTU2IDM2IDY3LjU1NiA0LjQ0NCA1My40MjggNC40NDQgMzYgMTguNTcyIDQuNDQ0IDM2IDQuNDQ0eiIgZmlsbD0idXJsKCNwcmVmaXhfX2YpIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L2c+PC9zdmc+",za="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSIxNS41MSUiIHkxPSIxMi40OTclIiB4Mj0iODUuMjY1JSIgeTI9Ijg2LjE0MyUiIGlkPSJwcmVmaXhfX2IiPjxzdG9wIHN0b3AtY29sb3I9IiM5NUFFRkYiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjNjM4NkZGIiBvZmZzZXQ9IjEwMCUiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19hIj48c3RvcCBzdG9wLWNvbG9yPSIjOTlBRUZGIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiM5OUFFRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2QiPjxzdG9wIHN0b3AtY29sb3I9IiM4Nzk3RDIiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzYyNzdDNyIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48ZmlsdGVyIHg9Ii02My4zJSIgeT0iLTE2OC44JSIgd2lkdGg9IjIyNi42JSIgaGVpZ2h0PSI0MzcuNSUiIGZpbHRlclVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgaWQ9InByZWZpeF9fYyI+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iOCIgaW49IlNvdXJjZUdyYXBoaWMiLz48L2ZpbHRlcj48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48Y2lyY2xlIHN0cm9rZT0idXJsKCNwcmVmaXhfX2EpIiBzdHJva2Utd2lkdGg9Ii40IiBmaWxsPSJ1cmwoI3ByZWZpeF9fYikiIG9wYWNpdHk9Ii43IiBjeD0iMzYiIGN5PSIzNiIgcj0iMjguMjQ0Ii8+PGVsbGlwc2UgZmlsbD0iIzdDOTBEQSIgb3BhY2l0eT0iLjU5NiIgZmlsdGVyPSJ1cmwoI3ByZWZpeF9fYykiIGN4PSIzNiIgY3k9IjM2IiByeD0iMTguOTYzIiByeT0iNy4xMTEiLz48cGF0aCBkPSJNMzYgMEMxNi4xMTggMCAwIDE2LjExOCAwIDM2czE2LjExOCAzNiAzNiAzNiAzNi0xNi4xMTggMzYtMzZTNTUuODgyIDAgMzYgMHptMCA0LjQ0NGMxNy40MjggMCAzMS41NTYgMTQuMTI4IDMxLjU1NiAzMS41NTZTNTMuNDI4IDY3LjU1NiAzNiA2Ny41NTYgNC40NDQgNTMuNDI4IDQuNDQ0IDM2IDE4LjU3MiA0LjQ0NCAzNiA0LjQ0NHoiIGZpbGw9InVybCgjcHJlZml4X19kKSIgZmlsbC1ydWxlPSJub256ZXJvIi8+PC9nPjwvc3ZnPg==",Pv=`
|
|
315
|
+
`;function su(i){var v,y;const t=(v=i.isMobile)!=null?v:!0,e=(y=i.useNormalVector)!=null?y:!0;let n=10349931;e&&i.ballColor>=0&&(n=i.ballColor);const s=new R.Group,o=new R.PlaneGeometry(.3,.3),r=t?bv:yv,a=new R.TextureLoader().load(r);a.encoding=R.sRGBEncoding,a.minFilter=R.LinearFilter;const l=new R.MeshBasicMaterial({map:a,transparent:!0,depthTest:!1}),c=new R.Mesh(o,l),d=new R.CurvePath;d.add(new R.LineCurve3(new R.Vector3(0,0,0),new R.Vector3(0,0,.1)));const h=new R.TubeGeometry(d,8,.003),u=new R.ShaderMaterial({vertexShader:wv,fragmentShader:Cv,depthTest:!1,transparent:!0}),m=new R.Mesh(h,u),A=new R.SphereGeometry(.01,20,20),p=new R.MeshBasicMaterial({color:n,depthTest:!1,transparent:!0,side:R.DoubleSide}),g=new R.Mesh(A,p);return g.position.set(0,0,.1),s.name="mouse-current",s.add(c),e&&s.add(m,g),s}class Iv{constructor(t){f(this,"container",document.createElement("div"));f(this,"five");f(this,"group");f(this,"mouseGroup");f(this,"hasAppendMouseGroup",!1);f(this,"hook");f(this,"content");f(this,"intersectMesh");f(this,"centerMouseXY");f(this,"raycaster",new R.Raycaster);f(this,"pieceStyl",{matrix3d:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],scale:1,opacity:.4});f(this,"onCameraDirectionUpdate",()=>{const t=this.getIntersection();if(t){this.pieceChange(t),this.updateMouseGroup(t);const e=new ut(this.mouseGroup.position);this.hook.emit("nowPointChange",e)}});f(this,"onWillChangeState",(t,e)=>{var s;this.dotAnimation();const n=(s=this.getIntersection())==null?void 0:s.point;n&&(e==="editing"?this.hook.emit("getStartPoint",new ut(n)):this.hook.emit("getEndPoint",new ut(n)))});f(this,"computedCenterMouseXY",()=>{const t=this.container.querySelector(".range-piece__aim");if(!t)return null;const{left:e,top:n,width:s,height:o}=t.getBoundingClientRect(),r=Math.round(e+s/2),a=Math.round(n+o/2),c=vv({x:r,y:a},this.five.getElement());this.centerMouseXY=c});f(this,"getIntersection",()=>{if(!this.centerMouseXY)return null;this.raycaster.setFromCamera(this.centerMouseXY,this.five.camera);const t=this.five.model.intersectRaycaster(this.raycaster)[0];return t||null});this.five=t.five,this.hook=t.hook,this.group=t.group,this.mouseGroup=su(H({isMobile:!0},t.openParams.crossHairParameter)),this.container.innerHTML=$f,this.container.classList.add("range-piece-controller"),this.content=this.container.querySelector(".range-piece__content"),this.content&&(this.content.style.transform=`matrix3d(${this.pieceStyl.matrix3d.toString()}) scale(${this.pieceStyl.scale})`,this.content.style.opacity=`${this.pieceStyl.opacity}`),t.container.append(this.container),this.intersectMesh=new R.Mesh(new R.RingGeometry(.04,.08,32),new R.MeshBasicMaterial({color:1245179,opacity:0,side:R.DoubleSide,transparent:!0})),this.container.addEventListener("animationend",this.computedCenterMouseXY),this.five.on("cameraUpdate",this.onCameraDirectionUpdate),this.hook.on("willChangeState",this.onWillChangeState)}dispose(){this.container.removeEventListener("animationend",this.computedCenterMouseXY),this.five.off("cameraUpdate",this.onCameraDirectionUpdate),this.hook.off("willChangeState",this.onWillChangeState),this.container.remove(),this.group.remove(this.mouseGroup),this.mouseGroup.remove(),this.hasAppendMouseGroup=!1,this.five.scene.remove(this.intersectMesh)}pieceChange(t){const e=t.face,n=t.point;if(e&&n){const o=e.normal.clone().clone().multiplyScalar(.05),r=n.clone().add(o);this.intersectMesh.position.copy(r);const a=r.clone().add(o);this.intersectMesh.lookAt(a),this.five.scene.add(this.intersectMesh);const l=this.intersectMesh.modelViewMatrix.clone().toArray();this.changePieceStyl("matrix3d",l);const c=this.calculateSize(n);this.changePieceStyl("scale",c)}}calculateSize(t){if(!t)return;const e=this.five.camera.position;let n=t.distanceTo(e);const s=4,o=1;return n>s&&(n=s),n<o&&(n=o),-.51/(s-o)*n+1}dotAnimation(){const t=$a.Easing.Quadratic.InOut,e={opacity:.4,scale:this.pieceStyl.scale},n={opacity:[1,.4],scale:[this.pieceStyl.scale*.8,this.pieceStyl.scale]};let s=pv;const o=new $a.Tween(e).to(n,500).easing(t).start(0).onUpdate(({opacity:r,scale:a})=>{this.changePieceStyl("scale",a),this.changePieceStyl("opacity",r)}).onComplete(()=>{s()});s=os(r=>{o.update(r)})}changePieceStyl(t,e){this.content&&(this.pieceStyl[t]=e,this.content.style.transform=`matrix3d(${this.pieceStyl.matrix3d.toString()}) scale(${this.pieceStyl.scale})`,this.content.style.opacity=`${this.pieceStyl.opacity}`)}updateMouseGroup(t,e){if(!this.hasAppendMouseGroup){this.group.add(this.mouseGroup),this.hasAppendMouseGroup=!0;const n=this.container.querySelector(".range-piece__aim");n&&(n.style.opacity="0")}if(!t)return this.mouseGroup;if(this.mouseGroup.position.copy(t.point),e)this.mouseGroup.quaternion.copy(e.quaternion);else if(t.face){const s=t.face.normal.clone().multiplyScalar(.05),r=t.point.clone().add(s).clone().add(s);this.mouseGroup.lookAt(r)}return this.mouseGroup}}class Hi extends Eo{constructor(e){super(e);f(this,"state","watching");f(this,"polyline");f(this,"hasAppendDashed",!1);f(this,"mobileStartPoint",null);f(this,"mobileNowPoint",null);f(this,"highlightedLines",[]);f(this,"deleteDom");f(this,"rangePieceController");f(this,"disposers",[]);f(this,"onWantsTapGesture",e=>{if(this.state==="editing")return!1;const[n]=this.five.model.intersectRaycaster(e);if(!n)return;const s=this.five.camera,o=n.point.clone().project(s),r=this.container.clientWidth,a=this.container.clientHeight,l=new R.Vector2(o.x*r,o.y*a),c=this.model.getAllLines().map(m=>{const[A,p]=m.points,g=A.position.clone().project(s),v=p.position.clone().project(s);if(!Ln(g)&&!Ln(v))return null;const y=new R.Vector2(g.x*r,g.y*a),I=new R.Vector2(v.x*r,v.y*a);return{id:m.id,points:[y,I]}}).filter(m=>!!m);if(c.length===0)return;const h=c.map(m=>{const A=La(l,m.points);return{id:m.id,distance:A.distanceTo(l)}}).sort((m,A)=>m.distance-A.distance)[0];if(h.distance>20)return;const u=this.model.getAllLines().find(({id:m})=>m===h.id);if(u)return this.chooseLine(u),!1});f(this,"onWantsToMoveToPano",()=>this.state==="watching");f(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.dashed.distanceItem.update(this.five)});f(this,"updateMobileDashed",()=>{!this.mobileStartPoint||!this.mobileNowPoint||(this.dashed.setPoints(this.mobileStartPoint.position,this.mobileNowPoint.position),this.dashed.distanceItem.update(this.five),this.hook.emit("editedDashedLineChange",this.dashed))});f(this,"updateMagnifier",e=>{this.magnifier.containerDom!==this.container&&this.magnifier.appendTo(this.container),this.magnifier.getCurrentState().enabled||this.magnifier.enable(),requestAnimationFrame(()=>this.magnifier.renderWithPoint(e.position)),this.five.needsRender=!0});f(this,"onGetStartPoint",e=>{this.mobileStartPoint=e,this.polyline=new jn({model:this.model}),this.polyline.hook.on("lineAdded",()=>this.hook.emit("editedPolylineChange",this.polyline)),this.polyline.hook.on("lineRemoved",()=>this.hook.emit("editedPolylineChange",this.polyline))});f(this,"onGetEndPoint",()=>{const e=this.mobileNowPoint;if(this.removeLine(this.dashed),this.hasAppendDashed=!1,this.mobileStartPoint&&e){const n=new tn(this.mobileStartPoint,e,this.model);this.polyline.addLine(n),n.distanceItem.appendTo(this.container),n.distanceItem.update(this.five),n.hook.on("selected",this.chooseLine),this.disposers.push(()=>n.hook.off("selected",this.chooseLine)),this.group.add(n.mesh),this.model.addPolyline(this.polyline)}this.mobileStartPoint=null,this.mobileNowPoint=null,this.five.needsRender=!0});f(this,"onNowPointChange",e=>{if(this.state==="watching"){this.mobileNowPoint=e,this.updateMagnifier(e);return}this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh),this.hasAppendDashed=!0),this.five.needsRender=!0,this.mobileNowPoint=e,this.updateMobileDashed(),this.updateMagnifier(e),this.five.needsRender=!0});f(this,"onWillChangeState",(e,n)=>{this.state=n,this.state==="watching"?this.five.helperVisible=!0:this.five.helperVisible=!1});f(this,"chooseLine",e=>{const n=ro(e);this.highlightLines(n),this.five.needsRender=!0,this.hook.emit("selectedChange",n.map(s=>s))});f(this,"deleteDomClickCallback",()=>{this.highlightedLines.forEach(e=>{this.removeLine(e);const n=this.model.getPolylineByLine(e);this.model.removePolyline(n)}),this.highlightedLines=[],this.deleteDom.setLines([]).hide()});f(this,"cancelDeleteClickCallback",()=>{this.clearHighlightLines()});this.model=new ja(this.config),this.polyline=new jn({model:this.model}),this.rangePieceController=new Iv(e),this.deleteDom=new Ta(this.five,{i18n:this.config.i18n,onClick:this.deleteDomClickCallback,cancel:this.cancelDeleteClickCallback}).appendTo(this.container),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.onWantsTapGesture),this.five.on("wantsToMoveToPano",this.onWantsToMoveToPano),this.five.helperVisible=!1,this.hook.emit("editedDashedLineChange",null),this.hook.on("getStartPoint",this.onGetStartPoint),this.hook.on("getEndPoint",this.onGetEndPoint),this.hook.on("nowPointChange",this.onNowPointChange),this.hook.on("willChangeState",this.onWillChangeState),this.five.refresh()}dispose(){super.dispose(),this.disposers.forEach(e=>e()),this.five.helperVisible=!0,this.rangePieceController.dispose(),this.group.remove(this.mouseGroup),this.dashed.remove(),this.perpendicularDashed.remove(),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsTapGesture",this.onWantsTapGesture),this.five.off("wantsToMoveToPano",this.onWantsToMoveToPano),this.hook.off("getStartPoint",this.onGetStartPoint),this.hook.off("getEndPoint",this.onGetEndPoint),this.hook.off("nowPointChange",this.onNowPointChange),this.hook.off("willChangeState",this.onWillChangeState),this.hook.emit("selectedChange",[]),this.five.needsRender=!0}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.deleteDom.setLines([]).hide(),this.model.getAllLines().forEach(e=>{e.selected=!1,e.distanceItem.unHighlight(),this.group.remove(e.lightMesh)}),this.highlightedLines=[],this.five.needsRender=!0)}getEditingLines(){return this.model.polylines}highlightLines(e){this.clearHighlightLines(),this.highlightedLines=e,this.deleteDom.setLines(e).updatePosition().show(),e.forEach(n=>this.highlightLine(n))}}const ao="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxmaWx0ZXIgeD0iLTUuMyUiIHk9Ii01LjMlIiB3aWR0aD0iMTEwLjUlIiBoZWlnaHQ9IjExMC41JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19hIj48ZmVPZmZzZXQgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93Qmx1ck91dGVyMSIgaW4yPSJTb3VyY2VBbHBoYSIgb3BlcmF0b3I9Im91dCIgcmVzdWx0PSJzaGFkb3dCbHVyT3V0ZXIxIi8+PGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwLjUgMCIgaW49InNoYWRvd0JsdXJPdXRlcjEiLz48L2ZpbHRlcj48ZmlsdGVyIHg9Ii0xMS40JSIgeT0iLTExLjQlIiB3aWR0aD0iMTIyLjklIiBoZWlnaHQ9IjEyMi45JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19jIj48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSI0LjUiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIi8+PGZlT2Zmc2V0IGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMC4zIDAiIGluPSJzaGFkb3dJbm5lcklubmVyMSIvPjwvZmlsdGVyPjxmaWx0ZXIgeD0iLTEyNi42JSIgeT0iLTMzNy41JSIgd2lkdGg9IjM1My4xJSIgaGVpZ2h0PSI3NzUlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJwcmVmaXhfX2UiPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjE2IiBpbj0iU291cmNlR3JhcGhpYyIvPjwvZmlsdGVyPjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19kIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9Ii43IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2YiPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48Y2lyY2xlIGlkPSJwcmVmaXhfX2IiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC40NDQiLz48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBmaWxsPSIjMDAwIiBmaWx0ZXI9InVybCgjcHJlZml4X19jKSIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjxjaXJjbGUgc3Ryb2tlPSJ1cmwoI3ByZWZpeF9fZCkiIHN0cm9rZS13aWR0aD0iLjQiIGZpbGwtb3BhY2l0eT0iLjI0MSIgZmlsbD0iI0ZGRiIgc3Ryb2tlLWxpbmVqb2luPSJzcXVhcmUiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC4yNDQiLz48ZWxsaXBzZSBmaWxsPSIjRkZGIiBvcGFjaXR5PSIuNTk2IiBmaWx0ZXI9InVybCgjcHJlZml4X19lKSIgY3g9IjM2IiBjeT0iMzYiIHJ4PSIxOC45NjMiIHJ5PSI3LjExMSIvPjxwYXRoIGQ9Ik0zNiAwQzE2LjExOCAwIDAgMTYuMTE4IDAgMzZzMTYuMTE4IDM2IDM2IDM2IDM2LTE2LjExOCAzNi0zNlM1NS44ODIgMCAzNiAwem0wIDQuNDQ0YzE3LjQyOCAwIDMxLjU1NiAxNC4xMjggMzEuNTU2IDMxLjU1NlM1My40MjggNjcuNTU2IDM2IDY3LjU1NiA0LjQ0NCA1My40MjggNC40NDQgMzYgMTguNTcyIDQuNDQ0IDM2IDQuNDQ0eiIgZmlsbD0idXJsKCNwcmVmaXhfX2YpIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L2c+PC9zdmc+",za="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSIxNS41MSUiIHkxPSIxMi40OTclIiB4Mj0iODUuMjY1JSIgeTI9Ijg2LjE0MyUiIGlkPSJwcmVmaXhfX2IiPjxzdG9wIHN0b3AtY29sb3I9IiM5NUFFRkYiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjNjM4NkZGIiBvZmZzZXQ9IjEwMCUiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19hIj48c3RvcCBzdG9wLWNvbG9yPSIjOTlBRUZGIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiM5OUFFRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2QiPjxzdG9wIHN0b3AtY29sb3I9IiM4Nzk3RDIiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzYyNzdDNyIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48ZmlsdGVyIHg9Ii02My4zJSIgeT0iLTE2OC44JSIgd2lkdGg9IjIyNi42JSIgaGVpZ2h0PSI0MzcuNSUiIGZpbHRlclVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgaWQ9InByZWZpeF9fYyI+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iOCIgaW49IlNvdXJjZUdyYXBoaWMiLz48L2ZpbHRlcj48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48Y2lyY2xlIHN0cm9rZT0idXJsKCNwcmVmaXhfX2EpIiBzdHJva2Utd2lkdGg9Ii40IiBmaWxsPSJ1cmwoI3ByZWZpeF9fYikiIG9wYWNpdHk9Ii43IiBjeD0iMzYiIGN5PSIzNiIgcj0iMjguMjQ0Ii8+PGVsbGlwc2UgZmlsbD0iIzdDOTBEQSIgb3BhY2l0eT0iLjU5NiIgZmlsdGVyPSJ1cmwoI3ByZWZpeF9fYykiIGN4PSIzNiIgY3k9IjM2IiByeD0iMTguOTYzIiByeT0iNy4xMTEiLz48cGF0aCBkPSJNMzYgMEMxNi4xMTggMCAwIDE2LjExOCAwIDM2czE2LjExOCAzNiAzNiAzNiAzNi0xNi4xMTggMzYtMzZTNTUuODgyIDAgMzYgMHptMCA0LjQ0NGMxNy40MjggMCAzMS41NTYgMTQuMTI4IDMxLjU1NiAzMS41NTZTNTMuNDI4IDY3LjU1NiAzNiA2Ny41NTYgNC40NDQgNTMuNDI4IDQuNDQ0IDM2IDE4LjU3MiA0LjQ0NCAzNiA0LjQ0NHoiIGZpbGw9InVybCgjcHJlZml4X19kKSIgZmlsbC1ydWxlPSJub256ZXJvIi8+PC9nPjwvc3ZnPg==",Pv=`
|
|
316
316
|
<svg class="fpm__exit-icon width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
|
|
317
317
|
<defs>
|
|
318
318
|
<radialGradient cx="50%" cy="50%" fx="50%" fy="50%" r="86.3016741%" id="radialGradient-1">
|
|
@@ -512,12 +512,12 @@ void main() {
|
|
|
512
512
|
</div>
|
|
513
513
|
</div>
|
|
514
514
|
</div>
|
|
515
|
-
`,Dv={display:"none",position:"absolute",top:"0",left:"0",width:"100%",height:"100%",opacity:"0",transform:"translate(0, 10px)",transition:"opacity 500ms ease-in-out, transform 500ms ease-in-out"},Sv={position:"absolute",left:"50%",bottom:"32px",transform:"translateX(-50%)",height:"89px",display:"flex",justifyContent:"space-between",alignItems:"center",fontSize:"14px",pointerEvents:"all",color:"#fff",zIndex:"10"},Tv={position:"absolute",bottom:"0",left:"0",opacity:"0.5",width:"100%",height:"184px",background:"linear-gradient(180deg, rgba(0,0,0,0.00) 0%, #000000 100%)",zIndex:"0"},ou={margin:"0 64px"},Lv={opacity:"0.85"},ru={width:"72px",height:"72px",backgroundSize:"100%",cursor:"pointer",transition:"all 200ms ease-in-out"},jv={width:"24px",height:"24px",marginRight:"4px",backgroundSize:"100%",cursor:"pointer"},zv={userSelect:"none",pointerEvents:"none"};class Ov{constructor(t,e,n){f(this,"container");f(this,"measureController");f(this,"mainElement");f(this,"_params");f(this,"_btnTexts",{start:"开始",end:"结束",revoke:"撤销",exit:"退出"});f(this,"onMouseEnter",()=>{const{mainItem:t}=this.mainElement;t.style.opacity="1"});f(this,"onMouseLeave",()=>{const{mainItem:t}=this.mainElement;t.style.opacity="0.85"});f(this,"onClick",()=>{this.measureController.getCurrentMode()!=="Edit"?this.measureController.changeMode("Edit"):this.measureController.save().changeMode("Watch")});f(this,"modeChangeHandler",t=>{t==="Edit"?this.change2Done():this.change2Add()});var r,a,l,c;this._params=n,this._btnTexts={start:(r=this._params.startButtonText)!=null?r:this._btnTexts.start,end:(a=this._params.endButtonText)!=null?a:this._btnTexts.end,revoke:(l=this._params.revokeButtonText)!=null?l:this._btnTexts.revoke,exit:(c=this._params.exitButtonText)!=null?c:this._btnTexts.exit},this.measureController=t,this.container=e,this.mainElement=this.getMainElement(),Object.assign(this.mainElement.mainIcon.style,ru),Object.assign(this.mainElement.mainItem.style,ou);const{revokeTextDom:s,exitTextDom:o}=this._getTextElement();s&&(s.innerText=this._btnTexts.revoke),o&&(o.innerText=this._btnTexts.exit),this.change2Add(),this.measureController.hook.on("modeChange",this.modeChangeHandler),this.mainElement.mainItem.addEventListener("click",this.onClick),this.mainElement.mainItem.addEventListener("mouseenter",this.onMouseEnter),this.mainElement.mainItem.addEventListener("mouseleave",this.onMouseLeave)}dispose(){this.measureController.hook.off("modeChange",this.modeChangeHandler),this.mainElement.mainItem.removeEventListener("click",this.onClick),this.mainElement.mainItem.removeEventListener("mouseenter",this.onMouseEnter),this.mainElement.mainItem.removeEventListener("mouseleave",this.onMouseLeave)}getMainElement(){const t=this.container.querySelector(".fpm__main-text"),e=this.container.querySelector(".fpm__main"),n=this.container.querySelector(".fpm__main-icon");if(!e||!t||!n)throw new Error("cannot find dom");return{mainTextDom:t,mainItem:e,mainIcon:n}}_getTextElement(){const t=this.container.querySelector(".fpm__revoke-text"),e=this.container.querySelector(".fpm__exit-text");return{revokeTextDom:t,exitTextDom:e}}change2Add(){const{mainIcon:t,mainTextDom:e}=this.mainElement;if(t.className.includes("fpm__main__start")){e.innerText=this._btnTexts.start;return}t.className.includes("fpm__main__end")&&(t.style.transform="scale(0.8)",e.className.includes("fpm__main-text__show")?e.classList.replace("fpm__main-text__show","fpm__main-text__hide"):e.classList.add("fpm__main-text__hide"),setTimeout(()=>{t.classList.replace("fpm__main__end","fpm__main__start"),t.style.transform="scale(1)",e.innerText=this._btnTexts.start,e.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200))}change2Done(){const{mainTextDom:t,mainIcon:e}=this.getMainElement();t.innerText!==this._btnTexts.end&&(e.className.includes("fpm__main__end")||e.className.includes("fpm__main__start")&&(e.style.transform="scale(0.8)",t.className.includes("fpm__main-text__show")?t.classList.replace("fpm__main-text__show","fpm__main-text__hide"):t.classList.add("fpm__main-text__hide"),setTimeout(()=>{e.classList.replace("fpm__main__start","fpm__main__end"),e.style.transform="scale(1)",t.innerText=this._btnTexts.end,t.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200)))}}class Bv{constructor(t,e,n){f(this,"container");f(this,"measureController");f(this,"mainElement");f(this,"_params");f(this,"_btnTexts",{start:"开始",end:"结束"});f(this,"onClick",()=>{var t;this.mainElement.mainTextDom.innerText===((t=this._params.startButtonText)!=null?t:"开始")?(this.measureController.hook.emit("willChangeState","watching","editing"),this.change2Done()):(this.measureController.hook.emit("willChangeState","editing","watching"),this.change2Add())});var s,o;this._params=n,this._btnTexts={start:(s=this._params.startButtonText)!=null?s:this._btnTexts.start,end:(o=this._params.endButtonText)!=null?o:this._btnTexts.end},this.measureController=t,this.container=e,this.mainElement=this.getMainElement(),this.mainElement.mainIcon.setAttribute("style","-webkit-tap-highlight-color: rgba(0,0,0,0);"),Object.assign(this.mainElement.mainIcon.style,ru),Object.assign(this.mainElement.mainItem.style,ou),this.change2Add(),this.mainElement.mainItem.addEventListener("click",this.onClick)}dispose(){this.mainElement.mainItem.removeEventListener("click",this.onClick)}getMainElement(){const t=this.container.querySelector(".fpm__main-text"),e=this.container.querySelector(".fpm__main"),n=this.container.querySelector(".fpm__main-icon");if(!e||!t||!n)throw new Error("cannot find dom");return{mainTextDom:t,mainItem:e,mainIcon:n}}change2Add(){const{mainIcon:t,mainTextDom:e}=this.mainElement;if(t.className.includes("fpm__main__start")){e.innerText=this._btnTexts.start;return}t.className.includes("fpm__main__end")&&(t.style.transform="scale(0.8)",e.className.includes("fpm__main-text__show")?e.classList.replace("fpm__main-text__show","fpm__main-text__hide"):e.classList.add("fpm__main-text__hide"),setTimeout(()=>{t.classList.replace("fpm__main__end","fpm__main__start"),t.style.transform="scale(1)",e.innerText=this._btnTexts.start,e.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200))}change2Done(){const{mainTextDom:t,mainIcon:e}=this.mainElement;t.innerText!==this._btnTexts.end&&(e.className.includes("fpm__main__end")||e.className.includes("fpm__main__start")&&(e.style.transform="scale(0.8)",t.className.includes("fpm__main-text__show")?t.classList.replace("fpm__main-text__show","fpm__main-text__hide"):t.classList.add("fpm__main-text__hide"),setTimeout(()=>{e.classList.replace("fpm__main__start","fpm__main__end"),e.style.transform="scale(1)",t.innerText=this._btnTexts.end,t.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200)))}}class Vv{constructor(t,e){f(this,"container");f(this,"revokeIcon");f(this,"revokeItem");f(this,"measureController");f(this,"onClick",()=>{this.measureController.revoke()});f(this,"onModeChange",t=>{if(t!=="Edit"&&this.revokeItem.className.includes("enabled")){this.revokeItem.classList.remove("enabled"),this.measureController.hook.off("anchorChange",this.onAnchorChange);return}this.measureController.hook.on("anchorChange",this.onAnchorChange)});f(this,"onAnchorChange",t=>{t&&this.revokeItem.classList.add("enabled")});this.measureController=t,this.container=e;const n=this.container.querySelector(".fpm__revoke-icon"),s=this.container.querySelector(".fpm__revoke");if(!n||!s)throw new Error("不正确的选择器");this.revokeIcon=n,this.revokeItem=s,this.revokeItem.addEventListener("click",this.onClick),t.hook.on("modeChange",this.onModeChange)}dispose(){this.revokeItem.removeEventListener("click",this.onClick),this.measureController.hook.off("modeChange",this.onModeChange)}}function Rv(i){ue(i,"svelte-1v1ixi2",'.Switcher.svelte-1v1ixi2.svelte-1v1ixi2{position:relative;box-sizing:border-box;width:-moz-max-content;width:max-content}.Switcher.svelte-1v1ixi2 .content.svelte-1v1ixi2,.Switcher.svelte-1v1ixi2 .active-slider.svelte-1v1ixi2{transition-property:transform, width, opacity;transition-duration:300ms;transition-timing-function:ease-out}.Switcher-bg.svelte-1v1ixi2.svelte-1v1ixi2{content:"";position:absolute;box-sizing:border-box;top:50%;left:0;width:100%;height:3.75rem;transform:translateY(-50%);border-style:solid;border-width:0rem 1.875rem;-o-border-image:url("data:image/png;base64,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");border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAsQAAAC0CAMAAACkNspZAAAAyVBMVEUAAAAAAAAICAgUFBQ9PT1OTk4dHR0tLS0kJCRcXFxGRkYzMzNXV1dmZmZiYmJtbW3////////////////////ExMSKiopycnJvb2////////9JSUl5eXn///////////////////////+QkJCZmZn///+tra2kpKS/v7+KioqAgICNjY2dnZ3T09PZ2dnq6uru7u6AgICtra28vLzCwsK1tbXKysqxsbHCwsLKysrCwsK6urrExMStra3ExMSfn5+dnZ26urqLi4vkhTy/AAAAQ3RSTlMzADQ2P0M4OzlIQT1GS0lNBQ4JFyGFWVBOCwdCUhEaFRMeHV1iHG5nelpNQj8pLygkVTR3VXRFcGI5gF80YGlcUk9NBLjkeAAAEPBJREFUeNrs2tfS0zAQhmHROwQcYoojN7kwA3Yy6aRA7v+mkFcxa8cyVkAcMOx7Bf/BMzuf9Yfdoah/vL+EeERRmu78hewiBrofoDcUpUnpsMXZGmL0C3TfV72mqJ4ACHC2INkiYuUX7E6n0yAI/CqHoloBC8lDIgHNSvLt3iwiRsDgt9Ir4XKeRKFsTFGdQlmUcC5BV5ZB8m2QLSJGwXCBJWDf4YmkW6yX2+3ptMjzr28pqtXXPF+cTtvtcl1Izgl3fAkZLrKpY/uI4QbLExz4nEcV31Mu/9DFJs2yTIg4/iSbUJSsshDHQkga6WYhD1x+qihHnPuBPMhwj4e82Uc8GinBvgOAt/nbfJWKeO5C71SvKOrShYQLzWORriSZLUB2fHA8cI6tIx7BDp4GDg/L9XbxdZEK4NuQ+4Kirmp4BsoilXS26zLkTgC7ou8cW0WMhGFFROP19muuAANftPuSojqhZqCsIOdft+txBLtCz9guYiQMR3i3z/M0BsDgF/E+oShtiBkkA+Q4zfP9LuSOlrFlxEjY51G5XOQb4YFgANzR+5yiGnUsA2Rw7IlNvliWEfc7jO0jHo0U4bBc5isxB8E14A7dBxTVqMO5hgyO52KVL8tQMcZPPPuIRx8U4WKZb2BGKME1YKJLGdWQXDuGWbHJl4VijMfYGmJcEnILR8V+kcYoWOP3I/SUohopFRrJ6DhOF/siktsYN4VdxLAknERu4fSTIlzfYPR7Rfc+RV264oyS63usGH9K5TZOHNgU9hDjGa6WxHi9QsIoWAEmuZRJteS2Y2S8Wo+rTWF+jJn5GQ6csNivhIeEQbAC3OX7jKJatX0gZHCMjD2x2hehE5gfY2a8hn0+O6+yFmElGABr7T6iqEtazQAZELUZZ6vzjPvGy5iZPko40W4DSwIJXwsmuZS552vHyBg2xWYXOabPFMxwSvDwvBFeizCsiFpwm+9jitKGRhAy7Iorxp7YnENuOCmYieGpn5THdOK6sCRqwiAYAffpfUj95/VZRsjguGYMm8J1J+m+TPypiWJm8irhhLsU1nCXMAomttRtpNFxlzEs43QXOiavFGzYcMDH51TAGpZLok0YBWv43qOon2kpA54OY7kpYBmL9DzmwbBiNvhJF/DZMZs0zjASbgkmutRtnBuOkXHrGE+y44wHg593bNhwecQpoc4wEr4IJr/UjTUhI+P6GOOkOJbDitmAYZ9/OQoPp4SGsAbwXYrSpoGsYYyTwhPHL9wfUMwGDCdFBoZhSlRnGAnjESa91O9axnOMjCUzmBRKcVYkA4rZgOFDFsPLGp5hINw8wgSY+p1a9xgZN48xvLXF2WFAMfu14R0YVnP4QduwIkyAqT+o4fha8QM1jEHxDhXfhPhyhz+579BwhzAJpv60Hsao+J376XKLb0UM78OFQMN4hs0JM4q6ZM4YjzEqFgW8F9+GeFQZ/vItVs8SaBjPsCJMdKlb63XcPMaoGD7v4m9fKsUjQ8RouJSGXTCsPunqM4yECTBlCTIyxmMMn3eg2JWKy37FrO83P3z2Pfbgm67PMAmmbDruUwxfd178fcb7fg3E9A8TU2esMSwvPZ5hIkz9Wf3HWELTKB47U/0TBet5mAg/x/X/ONBw4wyTYMpC/ccYFdf/9Yg/hz1PFEw/iJND2zBOCXWGiTBlJ90xxknRVnxI9LOY6QdxGc97DBNh6q8y7lc8j0uYxQaI1SCe6Aw/JMOU/bSTQqd4ombxEGIYE370eeK5V3sYDRNhynI6xd1d7HqTz5GvGRRM90J8kIbfqYcJMkzdmn3F6oninVR80L0WM82Y+MG+GeSmDkNR1IM/KWKCQPUkpQSpk6SVgCWw/0X9NMnj2Xk2HRF7cM4ajq7uu04u78FRt9mowygMyms1Vos3m6AWv18ShcKlysTVexyGpxSx2PtrqlA488xx/Lk2fnHUyS6BwvA6jMWDdovjzjfXn6M+eaQlHspEe5/LxHb7GCZwGCwrWKwTxXY7r8X3digUVuL4mePWxGUCh2EtrMW2UDQ38+ThzFXXDUGccHgAh+HFhBInLR6iuDO3nVtedf2yTOAwZFnDYlMoer3trMTjVReWCV2IcRjWIVMo/oWFYrztrMQSxK0E8bhM4DCsSN5iWSgkits4il0miKVM4DCsibVYC0U2il0cxN8axPFVh8OwFrmFQqP4O45iFwXxJQhiHIYC5CyOo/gSRbELN+KzDWIchrWxFtsoPodbsQsf67JBjMOwKn9Hcfhs57RNnI7LIMZhKIK12ETx8aR9woVnXdckgpgyAeujziWjuOnC086F+xpBDLXwPIrjlc3JN5jzWWeCGIehCM+ieD7t5ItM92gT+0PnvT7W6TSBw1ACO1Dos5333WH/6BNO28RN2wRBDMVJRrH2iZv2CRd8NmHbBEEMJbBRbPuEfkChEk8jsZx141cTtAkoif2CQk+7cSpWieM28Ra3CRyGcuT6xJv2iUji09m2iTGIcRiKEUax7RPnk0gslfjQxW2CIIbiiH3JPtEdfkuxSqwvHWGbIIihMPa0W7x3qMRjJaZNQHXk+4SUYpV4N1Zi8+SMw1AUtdg+PY+leDdJbCvx6DASQw3YfcKUYpH4Y5+pxDgMZXlaivcfKrGsxFqJfx1GYihP/N6hpViW4lHiaSX+mr9g2w4SU4mhHmYFY4m385dsX9NS7Ka7ru0buxITxFCe/FLc9O102Tn5qcN7KjFUSLYUey+/d7j5W+LprtOVmEoMdZBaiuWyO+xFYh0nzF2Hw1Cc9GUXzhMuNU5QiaEeJIrz84Qzj87cdVAV5rIzD89uXtgYJ6BS8vOEbGxOPiZmnIA6yc8TTX8OJG57s7Bx10El5De2vn1IvPtEYqiXZxJ/7lTi+0JiFjaohv/snT2KAzEMRmGq1CHV7pCQfoqcYe9/qCXG4lvHisU2jgzvneEh9GdLPbZXiX+qxHVgh8SQFUnsj+yqxBckhrQMJL64En8jMSSjnzv7Eu9IDFl5L/GOxLAGA4lJJ2ANRukEhR0sQVTY0WKD9EQtNoYdkJ7xsIOxMyzAeOzMAhAswEhiVjFhBcarmCzFwwJES/E8T4L0RM+TeCgK6QkeivJkH/IzfrLP5ymQn81vE+vzFL6xguyE31jxoSBkJ/pQkK9dITvh1658sg3ZiT7Z5twBpCc8d8DhGUhOfHiGE2CQHCclbk+AcYwRkhMfY+QsLiQnPovLgXLIzT8OlNeVYvIJSMYom7BlYpPYkuKyA2T5BKEYPszm9ibK9o+lxJK47AA9di+fwGL4EHLYzSb2R9n+aSS+3ft84oTEMINY4lOfTdxvkrjJJ7x5BxbDZOSwP+lQNmESWz6h/oSFYvIJ+BybW9apN2HZhCR+Du0O5ROEYphPHIiVTRzPcZ0kLnzZvKMbPWMxzMJ3WCPndtJRsglJbM87yv5EH4qxGCazvQ/EZW+iPuqQxDbvuB6EYshBFIiPq006JHHZn7BWsUIxFsMMYocViK1JXPcmWonPpbRTKFaDgoQC5iLf1JpQIK5l3bmRWKWdE4qxGGazxYHYyjpJrNLubyjGYphA7LATiFXWSWJ12V5CsWo7LIY5yDRVdU0gVn+tk1gLFM3YDothGr7D7bBOaxONxG4oLhsUWPzLrr0tKw1EQQB9ssoHtSiDiaUQLgkheElACBwOnEL9/48y2ZOxGWd0jAaeur9hVVfPThhP7mNY/ppwFjEQo4rnHzdtFZuDgooZX/o3bI6Jn0U810UMxEYVB+sP6g8KvO2omLlXbMN41em/Jj6sAyliCzFuxYsvGz0orAsFFTM3zbUw0zDGxObLAjdiEzE+282+/zIoqJhx5i6GrTHxfYaPdW7E8rYLR7qKf85iKma86d8wBrEu4lEorzoXYvNt9yl0DgpRTMYMcgPCMOwcE+EnvOpciPG2C+tBQcWMJ3c3/DbahHjVuRDjbRefk+ZCgVkMxWTMILcjDMMYxM1lYnWO8apzI8agSH7OYipmrNzXMAZxgjFhIbYGxfDrCoNCnyigmIyZ2xCGYRwmMCbCrzOMCSdiVHF9oSiT0KX4ORUz9zD83Gk4KevLxOuBBzE+eZzT0e8UkzFzM8J/MDxKz/jMYSG2B0XzZ7FWbOxiTAoyZnomjClh7WEx3PxFjDHhQTxQs1ged3KigOJ2GAtjOmb6EAzCmMMwLIcJedR9HQbymcOPGLN4fbEVm2VMxkw/hO0atg1f1hjEPsS4FpeXRL7cuRULYzpm+hEshN2G5UtdcilxIfYjhuLPl0Rmsd7F7fPOZEzITFfAHsLqSaf3sAzi5PIZhj2IkXeN4mIpil9CMcpYMYZjcma60YVgTRg1DMMvxfCyaAzjUedFjBPF4rxcXSl+phX/yphhusdNWBt+dmV4tTwvcJjogHggio91F0dQ/N5mTMfM/wq2Cb+H4aju4aMYHnRFDMVprVjdi1+YihvG4piQmX8BDMFC2DT8Qt2Ha8MpDHdDDMXFUn/1wKQAY13HhMx0B4wSBmFMCf2NY1nAcCfEUBx/floqxbqMwRh1LJBpmfkrvQCMEtaEUcPK8PLpcwzDnRBD8TQuW8V6UliMxbFAZhhfAFgE24T1lGgNl/EUhrsihuL1Uxa2inUZg7E4FsiUzHTwK4BFMAjrGtaGw+xpDcMdEUOx3IuH37I0up4UYAzHgEzOzO/pAjAEg/D1lIjS7NtQ7sMw3BExFI+D2THDpLAYw3FLmWGcAV8ItghjSmTHWTD2GPYhxt9Ak0V5ykJ1azMZw7EpmaQZm63pF4JNwuqyFmancjHBPz8exH7FMimqtC1jMG4dA7K2zDCIpReAtWAQbms4rWRKwLAfsfd5Nw7mx0O2ikzGUsfiWEEWygzjDPgKYC1YStgkHK2yw3EejPGk8yP2K24mRbzeVbKMrxnDsSGZnhmXXO3XEGwSljVc7dZxMyXEcA+IMSmCWXGqUoOxdgzI0MwwEssuAGvBBuG0OhWzAFOiD8S4Ukzi4b46rCIwhmOBLJQZxh3wVYAhGISj1aHaD+MJrhL9IEYZj4NFudtmYAzHCrKWTM+MS672qwBDMAhn2125CMao4d4QYxlPg3lx2h4SxVjqWDkWybDccGYYk67ohV8RLCXcEk4O21MxD6ZYw70ixpliEs+KXV4lERxryCKZYTx5cQUYgqOkynfFLJ7gKNEnYigevFaMy5pxuqkZa8cCWVMmZ8ZNF3wFsBZcE96kNeFSEX49gOE+EaOMFeN5vY3zQzoSxwoyJLecGUYFdOFXAVaCR+khr7fwXAibS6J/xGA8DeLZ8ZTnWRKJY4EslMUywzjzSvMVwCI4SrI8Px1ncTB1E+4fMRjXdTzcPzzmWbppIEOyYGYYMwov/ArgTZrljw/7YV3CHsI9Igbjto7L/cP2cdtAFslCWTQzjA7sCl/xK4C3j/nDvmxL2EO4N8RgLHVcr+Og7uNi/5C/yassTYSyYBbPDAO5Cq/w/dFuHaQwCENBGL6CbZouQ9NETTfdaFFc5P7H6rzZiEgR4W0K7z/DxzApd5/iAfiNDXZ4whzhA8LqiDnH4pi/gpDHWrxfhqnr+z7nlF7oblnohVLKGTS6aVi8L3UkYHkRFHw8wuqI1znmrwBkF9oYhfI81zqUsnjL2rSUMtQ6z8I3xjY4AOaLODHCuohXx/zHAhmSXQjtM6KbZe2K6NmG4OBXAPMHnxSsj3iFLJJBGZaBWXKWtYksHtALvvSrAFgLMWsoGZSli2X9iECu9KsAWBcxa4Qyu1rWLtBljZ7fFbF+jWXtIl39gNiy/rwvGmW4k6mR4W0AAAAASUVORK5CYII=");border-image-slice:0 90 fill}.Switcher-buttons.svelte-1v1ixi2.svelte-1v1ixi2{display:flex;align-items:center;box-sizing:border-box;padding:0 0.1875rem;height:100%}.Switcher-buttons.has-divider.svelte-1v1ixi2 .button.svelte-1v1ixi2:not(:last-child)::after{content:"";position:absolute;right:0;top:10%;height:80%;width:0.0625rem;background-image:linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.3), transparent);background-size:100%;background-repeat:no-repeat;background-position:center}.active-slider.svelte-1v1ixi2.svelte-1v1ixi2{box-sizing:border-box;position:absolute;height:3.25rem;top:50%;transform:translate(0, -50%);border-style:solid;border-width:0rem 1.875rem;-o-border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXQAAACcCAMAAABY3aA6AAAAhFBMVEX///////8AAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////88i7DIAAAALHRSTlNmawBvc3d6BAcZDid8NwyFja/XEhYkHTErIS41gpajnUyRVEE7XKpiRczDuH1q6FcAAA1mSURBVHja7Ndtk5owFAXg2KKtiiUdlTdBYH1Z//8vbC4SjkmuDlpmOht7AWfdLyaPZw4ovo06PzydcZX+Eh3QP99gXvsCRkbvsX91s/B29A41/rch9mOjq09twUl6TbNRM/d4aH9rmsWVfkDmx0XX4ORN1HGcZdlWzdLbod2pTcYx8St5Dc/7jIiOjGtw4lbSaZ4nSbJTs/J0aG9qi3meKn+i1/AM+/joWlyBk3eaJ7tj/RlEsiyr/fm3t3PeV2Upo+CzPu6SPFXyBM+4j4oO8k6cwI+nUFbdihopI49HyqbLVSXD05HgO3ejZsZDR5OrkHfiCnxWns9VKaNQzczzCa+vaiJZVudzOVPwnbuKO9RHRidyCnkrLqQCb6I73FNvhtsdyTcKXorWneIO9jHRf1zJ5/F2ma9O0X5fEriXzvfHgi/3++i0ypfbeA72EdF78jS5TKtW/J20efvWvZpekvRJdjH49rneEHld7CsZhhx44Pm48OQuq31RE/tmPfhJRgwzBzlC7mhPA2/hsTXYI+5gH/YgI4aWebZM6qhqil4c4P5ac/o0lntRVlGdLLOhHSMGxnyZH6Y9Od8n3z0fvm069qaaHvLlwLCLQTfQbbr7LEuD3NUOPD9c+1v2qCw/d+n2GvbX0RFzahbd5ZZ4z+190G/xLXfd7apjdNhfQof5PEtXk1K65AB3ZmJfX2bshbP47TDsspys0mwO9RfQ1YPiYh1v80PRFA656327dPui40uczsIxVurhDnYFdci38XqBh8cn0anOqVo+JMXcJg8c7W7V7sq/UNCZvOjDtmfYKezygyoGxf4celvnVC1N1Mdci2M099eSfWVu8cGu3fuwRw1VTFvsT6Kjzo+hLBBzM+Tv4+3g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");border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXQAAACcCAMAAABY3aA6AAAAhFBMVEX///////8AAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////88i7DIAAAALHRSTlNmawBvc3d6BAcZDid8NwyFja/XEhYkHTErIS41gpajnUyRVEE7XKpiRczDuH1q6FcAAA1mSURBVHja7Ndtk5owFAXg2KKtiiUdlTdBYH1Z//8vbC4SjkmuDlpmOht7AWfdLyaPZw4ovo06PzydcZX+Eh3QP99gXvsCRkbvsX91s/B29A41/rch9mOjq09twUl6TbNRM/d4aH9rmsWVfkDmx0XX4ORN1HGcZdlWzdLbod2pTcYx8St5Dc/7jIiOjGtw4lbSaZ4nSbJTs/J0aG9qi3meKn+i1/AM+/joWlyBk3eaJ7tj/RlEsiyr/fm3t3PeV2Upo+CzPu6SPFXyBM+4j4oO8k6cwI+nUFbdihopI49HyqbLVSXD05HgO3ejZsZDR5OrkHfiCnxWns9VKaNQzczzCa+vaiJZVudzOVPwnbuKO9RHRidyCnkrLqQCb6I73FNvhtsdyTcKXorWneIO9jHRf1zJ5/F2ma9O0X5fEriXzvfHgi/3++i0ypfbeA72EdF78jS5TKtW/J20efvWvZpekvRJdjH49rneEHld7CsZhhx44Pm48OQuq31RE/tmPfhJRgwzBzlC7mhPA2/hsTXYI+5gH/YgI4aWebZM6qhqil4c4P5ac/o0lntRVlGdLLOhHSMGxnyZH6Y9Od8n3z0fvm069qaaHvLlwLCLQTfQbbr7LEuD3NUOPD9c+1v2qCw/d+n2GvbX0RFzahbd5ZZ4z+190G/xLXfd7apjdNhfQof5PEtXk1K65AB3ZmJfX2bshbP47TDsspys0mwO9RfQ1YPiYh1v80PRFA656327dPui40uczsIxVurhDnYFdci38XqBh8cn0anOqVo+JMXcJg8c7W7V7sq/UNCZvOjDtmfYKezygyoGxf4celvnVC1N1Mdci2M099eSfWVu8cGu3fuwRw1VTFvsT6Kjzo+hLBBzM+Tv4+3g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");border-image-slice:0 90 fill}.button.svelte-1v1ixi2.svelte-1v1ixi2{height:3.5rem;display:flex;position:relative;cursor:pointer;align-items:center;justify-content:center;pointer-events:all;width:7.25rem}.button.svelte-1v1ixi2 .content.svelte-1v1ixi2{position:absolute;display:flex;align-items:center;font-size:1rem;color:#fff;text-shadow:0 0.125rem 0.5rem rgba(0, 0, 0, 0.5);font-weight:bold}.button.svelte-1v1ixi2 .content .icon.svelte-1v1ixi2{display:inline-block;width:1.15625rem;height:1.15625rem;background-repeat:no-repeat;background-size:100%;margin-right:0.125rem}.button.svelte-1v1ixi2:not(.active) .content.svelte-1v1ixi2{opacity:0.65;transform:scale(0.875)}.button.svelte-1v1ixi2:not(.active) .content.svelte-1v1ixi2:hover{opacity:0.85}.button.active.svelte-1v1ixi2 .content.svelte-1v1ixi2{opacity:1;transform:scale(1)}')}function ec(i,t,e){const n=i.slice();return n[13]=t[e],n[14]=t,n[15]=e,n}function tc(i){let t;return{c(){t=x("div"),w(t,"class","active-slider svelte-1v1ixi2"),z(t,"width",i[6]+"px"),z(t,"transform",`translate(${i[7]}px, -50%)`)},m(e,n){B(e,t,n)},p(e,n){n&64&&z(t,"width",e[6]+"px"),n&128&&z(t,"transform",`translate(${e[7]}px, -50%)`)},d(e){e&&O(t)}}}function nc(i){let t;return{c(){t=x("span"),w(t,"class","icon svelte-1v1ixi2"),z(t,"background-image",`url(${i[13].icon})`)},m(e,n){B(e,t,n)},p(e,n){n&1&&z(t,"background-image",`url(${e[13].icon})`)},d(e){e&&O(t)}}}function ic(i){let t,e,n,s=i[13].value+"",o,r,a=i[15],l,c,d=i[13].icon&&nc(i);const h=()=>i[10](t,a),u=()=>i[10](null,a);function m(){return i[11](i[13],i[15])}return{c(){t=x("div"),e=x("div"),d&&d.c(),n=ee(),o=Me(s),r=ee(),w(e,"class","content svelte-1v1ixi2"),w(t,"class","button svelte-1v1ixi2"),K(t,"active",i[4]===i[15])},m(A,p){B(A,t,p),D(t,e),d&&d.m(e,null),D(e,n),D(e,o),D(t,r),h(),l||(c=be(t,"click",m),l=!0)},p(A,p){i=A,i[13].icon?d?d.p(i,p):(d=nc(i),d.c(),d.m(e,n)):d&&(d.d(1),d=null),p&1&&s!==(s=i[13].value+"")&&Oe(o,s),a!==i[15]&&(u(),a=i[15],h()),p&16&&K(t,"active",i[4]===i[15])},d(A){A&&O(t),d&&d.d(),u(),l=!1,c()}}}function Qv(i){let t,e,n,s,o,r=i[5]&&tc(i),a=i[0],l=[];for(let c=0;c<a.length;c+=1)l[c]=ic(ec(i,a,c));return{c(){t=x("div"),e=x("div"),n=ee(),r&&r.c(),s=ee(),o=x("div");for(let c=0;c<l.length;c+=1)l[c].c();w(e,"class","Switcher-bg svelte-1v1ixi2"),w(o,"class","Switcher-buttons svelte-1v1ixi2"),K(o,"has-divider",!i[5]),w(t,"class","Switcher svelte-1v1ixi2")},m(c,d){B(c,t,d),D(t,e),D(t,n),r&&r.m(t,null),D(t,s),D(t,o);for(let h=0;h<l.length;h+=1)l[h]&&l[h].m(o,null);i[12](t)},p(c,[d]){if(c[5]?r?r.p(c,d):(r=tc(c),r.c(),r.m(t,s)):r&&(r.d(1),r=null),d&23){a=c[0];let h;for(h=0;h<a.length;h+=1){const u=ec(c,a,h);l[h]?l[h].p(u,d):(l[h]=ic(u),l[h].c(),l[h].m(o,null))}for(;h<l.length;h+=1)l[h].d(1);l.length=a.length}d&32&&K(o,"has-divider",!c[5])},i:J,o:J,d(c){c&&O(t),r&&r.d(),Tt(l,c),i[12](null)}}}function Gv(i,t,e){let n;const o=g=>{e(4,d=g)};let{options:r}=t,{onChange:a}=t;const l=[];let c,d=null,h,u;function m(g,b){Qe[g?"unshift":"push"](()=>{l[b]=g,e(2,l)})}const A=(g,b)=>{a(g.key),e(4,d=b)};function p(g){Qe[g?"unshift":"push"](()=>{c=g,e(3,c)})}return i.$$set=g=>{"options"in g&&e(0,r=g.options),"onChange"in g&&e(1,a=g.onChange)},i.$$.update=()=>{i.$$.dirty&20&&e(5,n=l[d]),i.$$.dirty&40&&n&&c&&setTimeout(()=>{e(6,h=n.clientWidth),e(7,u=n.getBoundingClientRect().left-c.getBoundingClientRect().left)},0)},[r,a,l,c,d,n,h,u,null,o,m,A,p]}class Nv extends le{constructor(t){super(),ae(this,t,Gv,Qv,oe,{defaultIndex:8,setIndex:9,options:0,onChange:1},Rv)}get defaultIndex(){return this.$$.ctx[8]}get setIndex(){return this.$$.ctx[9]}}function Hv(i){ue(i,"svelte-1m0stw",".exit.svelte-1m0stw{position:relative;pointer-events:all;cursor:pointer;left:1.5rem;top:1.5rem;width:1.5rem;height:1.5rem;background-image:url(data:image/png;base64,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);background-repeat:no-repeat;background-size:100% 100%}")}function _v(i){let t,e,n;return{c(){t=x("div"),w(t,"class","exit svelte-1m0stw")},m(s,o){B(s,t,o),e||(n=be(t,"click",function(){sn(i[0])&&i[0].apply(this,arguments)}),e=!0)},p(s,[o]){i=s},i:J,o:J,d(s){s&&O(t),e=!1,n()}}}function Wv(i,t,e){let{onClick:n=null}=t;return i.$$set=s=>{"onClick"in s&&e(0,n=s.onClick)},[n]}class au extends le{constructor(t){super(),ae(this,t,Wv,_v,oe,{onClick:0},Hv)}}const lu="data:image/png;base64,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",cu="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAASKADAAQAAAABAAAASAAAAACQMUbvAAAFO0lEQVR4Ae2YWYgdRRSG78SFOG6Ju4MxIRnRgCCKBlSC24P64IO4h7wI6oMPCioqAX1TfFIQRFFBETQmIioqGhDBh3GJiMSAZnABNSIuUQTFbcz4fZcup297b9+t7525wznwU11d1aervj6nurprtbAgEASCQBAIAkEgCASBIBAEgkAQCAJBIAgEgSAQBIJAEMgIzM7OLkHL0STaJ8DMgRkDyDK0CX2MptEUOrMbSGPddB6VvkAwUo5Hd6OzCuP+hfr5Y2NjvxbON60uaXp2hE8CZ3+GfzJ6ABXhOLND0VoPOrF9O+k0Kn2AM85Y16M70UTJuL8taWtoWjSAgHMYM7sQ3YyWN8yysbKZ9NrdeKp1bVGsQcBxvbkUXYsOaD3d2jbabgXQ3yV9GppGPoKA43pyDboclb3G36T9rm7g0L82soAAY/S7CG9E56GybHiLduH4BuvKRhIQcIyUi5BwTmsz47dpvwftadOvafPIAQLOUmZiSl2JVjed1dzJ7Rzei74iembnTnd+NFKAgHMIU7seXYKObTPN92kXzue9wtH/yAACjkBuQecgN3tltoNGN4rTwNlb1rFd20gAAs4JTOR2dAYqe407351IOB/2C0dnlQBiAm7vZ6oYkIPKG77XUd+E1iDvU2bTND6I3qtqLH0BYvDuWP3uORHNUHeAOxlcRx+C9C01/F1MhzvQUahsj6OfT9HDaKoqODot2zvY3tIYvOuAi+W5SD++Xf5BU+h1BvklZc+G/+u4+AbkwtxunF/QRzivcl/HUJn1E0GTjMKNmtGin7+QKeD30AQTfI1ye7dPk+uMFFPqMtRuvaFLzQfxOKocjs57ApRNwrfKDPKJ+YSV9Z/RKcj2lfR9BUi/cdzW6GsU3o98U3Uytq/p9wR6serIwWfdevoflA3mh8yHGzBfpYJK5U8cuz5dhW5k4isoS40+ptJDaD3qBM439HsKbR0UHHzXegLkhdhnaBcyrfJwhKSMGtPuAnQbAM6mbGq0HU3DI+h01Akc/+c8owYJB/9tFz/7NDUmZUqtRFegVehP5OSU64jlfpkOp/wRbUNbmNQflHXDzyoO7kMnIX16rWr18L6nbTN6FD+m9EDNAfVsGaRJHAjpOGTEJDgJViqX0WakvYu2ot3oVHQT0odRJxT7C1Y/RUtwHgNOx/90ik66qfcFyBvlIG2gOoGMjgTFMg/sQOoHo++QQFynjC7BJjjpWq/LQ3LNM62GBod79Z5iXpwsg7SWul/YQiqmW4qINPmD6OM5zUU+QbQs9vUhzgsc7tsyz23r2Ah3J/kJegE5mXFkOjVbvNMC7v7JaHMd8ZzST/4a6/MGh3vXU8GybxMS9hGOfOJG0jFIAGnylk7edpXOm1qpzWPb7Ge0mYrPoaGmFff7zxxEZZZB2oFD00RIRyAhJSh5MHkoAhFOeit5vQvyFvTksBZk7vU/qxSQ3jNIH2R3cqPoh+bvKEVMiqJ8tKSo8TLXIdPqWfT0fMLh/tWlmM6SMam9pFsRkgt3ihRhGS3FiHLT6X7JfY475KG8yrlXS6s8gtKdCpCu5ryR5Os8H0H5NDNyhGNaPc/1Kd2ozp8NDJBTKkDawKkjkZFkeuVBOY49yMh5eaHAYSyDSTEdJytAcuF2n2TqmF5pD5Tg+B9pQUQOY6ubgxyKsSYZNf4GEdJqJJylyA/Pl9AbCw0OY6o/RcuhGJB8IMJZh1Ygf4u8g3YBx5QLk4DRhMaRC3NYEAgCQSAIBIEgEASCQBAIAkEgCASBIBAEgkAQCAJBYJEQ+BdpRqKi3IjqNwAAAABJRU5ErkJggg==",Fv="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAABi0lEQVRoBe2Yu20DMRBEdW7EuVLX4NQVuAEVoUhFuAFV4FQ1OHWuRkzNABRwMLhDfbhcBhyA0IEjnvYNjjxoN5upmcBMYCYQmcCifjyl9AL/E+Md4xXjjHHCOC7L8ofPcJkAufgvVPhWqPIHc7sRIJiwJSZfKp7f5zz9cCkAPjZKNV+tbeYpAD7zSjVfrW3mKQBuWKWar9Y28xQATxsl7PNkHgJqYUtPARzxQzxtLG1h7KMhZIL5KP3/HkgonMVf9Y2LA45UzneXBChVkxPfw/tY+WEQdwOw6JEgHgIYCeJhgFEgngIYAeJpgGiIJgCREM0AoiCaAkRANAfoDeEC0BPCDaAXhCtADwh3AG+ILgCeEN0AvCC6AnhAdAdoDRECICB+4bEmtmzOGNU2ZhgAirP+2dFaS7YxVVdifROX69wIOODmTN6SbGOGArDiDFF7Esw2ZjhAjr3WpjT9UQC4YZVMfxSAWhvT9EcBUG1MnkL0i6ptnuIij0mjjVl9D3jUMu85E5gJzARuT+ACS7KuMQ7rOEcAAAAASUVORK5CYII=",Yv="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAAByElEQVRoBe1ZMU4DMRC8Q7yCJjVNKCh4ARVfAPo0PCYNPeQLVLyAggIa6jQ8g2NGsiJjeUfHrdGd0K60Sm7t3R3P+hx503UhwUAwEAzMyUCvkg/DcITxa+gldAXdQ5+hu77vv/DZTKbmMheQAt4D4XkF5Stsm1aL8OQiw5aQ+Rp4zqed461kci5VgUegO22F0BnnA9W+qcVQFeCeX4qYWNQC+MIuRUwsxwIhTxu1hV4w/ib8fzN0hskXwoFYqqIqsIMHT5uafML4XhuYaGMsxqwJMRBLVcyXmLOzs/ku8ybzTDhkthZfiWUNzSuxxbP8zVEV6HjOQx8KdNw2rcEzBWP+2JLMTQwctEQuwHJakj0WMHc1ogJRAScDsYWcBLrdowJuCp0BogJOAt3uUQE3hc4AUQEngW73/10BXimhtwVNvIDLq2gxf+wjYzL2QZg7XWsPtvKLCSQ5Wq1FXsCfoK2ulsRxBT2BliLbmGoLqXYfE/EC3koYqwae8WUbU1UgWoutyoM4KyuW2kJ7y2kGu4nF01rcVnpGk9aWTrq8eVbGad5alO2+MvuIZ9XGlLnMl5hJ01HK02ixfzGNICemBAPBQDDwhwx8A43PdoQvgLfYAAAAAElFTkSuQmCC";function Uv(i){ue(i,"svelte-468fdd",'*.forbid.svelte-468fdd.svelte-468fdd{pointer-events:none !important;opacity:0.5}.Measure-Controller.svelte-468fdd.svelte-468fdd{pointer-events:none;position:relative;width:100%;height:100%;z-index:2}.Measure-Controller.svelte-468fdd .mode-switcher.svelte-468fdd{margin-top:2.25rem}.Measure-Controller.svelte-468fdd .bottom.svelte-468fdd{position:absolute;width:100%;bottom:0}.Measure-Controller.svelte-468fdd .bottom .mask.svelte-468fdd{position:absolute;bottom:0;width:100%;height:11.5rem;background-size:100%;background-image:linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.3))}.Measure-Controller.svelte-468fdd .bottom .center.svelte-468fdd{display:flex;flex-direction:column;align-items:center;margin-bottom:2.5rem}.Measure-Controller.svelte-468fdd .buttons.svelte-468fdd{pointer-events:all;display:flex;align-items:center;height:2.5rem;background:rgba(0, 0, 0, 0.2);color:rgba(255, 255, 255, 0.85);width:-moz-max-content;width:max-content;border-radius:624.9375rem;overflow:hidden}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd{cursor:pointer;display:flex;align-items:center;position:relative;font-size:0.875rem;padding:0rem 1rem}.Measure-Controller.svelte-468fdd .buttons .button .icon.svelte-468fdd{width:1.5rem;height:1.5rem;background-repeat:no-repeat;background-size:100%;margin-right:0.25rem}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd::after{content:"";position:absolute;display:block;right:-0.03125rem;height:1.5rem;width:0.0625rem;background-image:linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.3), transparent);background-size:100%;background-repeat:no-repeat;background-position:center}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd:last-child::after{display:none}')}function sc(i){let t,e;return t=new au({props:{onClick:i[0].disable}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.onClick=n[0].disable),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function oc(i){let t,e,n,s,o,r,a,l,c,d;return{c(){t=x("div"),e=x("div"),n=x("div"),s=Me(`
|
|
515
|
+
`,Dv={display:"none",position:"absolute",top:"0",left:"0",width:"100%",height:"100%",opacity:"0",transform:"translate(0, 10px)",transition:"opacity 500ms ease-in-out, transform 500ms ease-in-out"},Sv={position:"absolute",left:"50%",bottom:"32px",transform:"translateX(-50%)",height:"89px",display:"flex",justifyContent:"space-between",alignItems:"center",fontSize:"14px",pointerEvents:"all",color:"#fff",zIndex:"10"},Tv={position:"absolute",bottom:"0",left:"0",opacity:"0.5",width:"100%",height:"184px",background:"linear-gradient(180deg, rgba(0,0,0,0.00) 0%, #000000 100%)",zIndex:"0"},ou={margin:"0 64px"},Lv={opacity:"0.85"},ru={width:"72px",height:"72px",backgroundSize:"100%",cursor:"pointer",transition:"all 200ms ease-in-out"},jv={width:"24px",height:"24px",marginRight:"4px",backgroundSize:"100%",cursor:"pointer"},zv={userSelect:"none",pointerEvents:"none"};class Ov{constructor(t,e,n){f(this,"container");f(this,"measureController");f(this,"mainElement");f(this,"_params");f(this,"_btnTexts",{start:"开始",end:"结束",revoke:"撤销",exit:"退出"});f(this,"onMouseEnter",()=>{const{mainItem:t}=this.mainElement;t.style.opacity="1"});f(this,"onMouseLeave",()=>{const{mainItem:t}=this.mainElement;t.style.opacity="0.85"});f(this,"onClick",()=>{this.measureController.getCurrentMode()!=="Edit"?this.measureController.changeMode("Edit"):this.measureController.save().changeMode("Watch")});f(this,"modeChangeHandler",t=>{t==="Edit"?this.change2Done():this.change2Add()});var r,a,l,c;this._params=n,this._btnTexts={start:(r=this._params.startButtonText)!=null?r:this._btnTexts.start,end:(a=this._params.endButtonText)!=null?a:this._btnTexts.end,revoke:(l=this._params.revokeButtonText)!=null?l:this._btnTexts.revoke,exit:(c=this._params.exitButtonText)!=null?c:this._btnTexts.exit},this.measureController=t,this.container=e,this.mainElement=this.getMainElement(),Object.assign(this.mainElement.mainIcon.style,ru),Object.assign(this.mainElement.mainItem.style,ou);const{revokeTextDom:s,exitTextDom:o}=this._getTextElement();s&&(s.innerText=this._btnTexts.revoke),o&&(o.innerText=this._btnTexts.exit),this.change2Add(),this.measureController.hook.on("modeChange",this.modeChangeHandler),this.mainElement.mainItem.addEventListener("click",this.onClick),this.mainElement.mainItem.addEventListener("mouseenter",this.onMouseEnter),this.mainElement.mainItem.addEventListener("mouseleave",this.onMouseLeave)}dispose(){this.measureController.hook.off("modeChange",this.modeChangeHandler),this.mainElement.mainItem.removeEventListener("click",this.onClick),this.mainElement.mainItem.removeEventListener("mouseenter",this.onMouseEnter),this.mainElement.mainItem.removeEventListener("mouseleave",this.onMouseLeave)}getMainElement(){const t=this.container.querySelector(".fpm__main-text"),e=this.container.querySelector(".fpm__main"),n=this.container.querySelector(".fpm__main-icon");if(!e||!t||!n)throw new Error("cannot find dom");return{mainTextDom:t,mainItem:e,mainIcon:n}}_getTextElement(){const t=this.container.querySelector(".fpm__revoke-text"),e=this.container.querySelector(".fpm__exit-text");return{revokeTextDom:t,exitTextDom:e}}change2Add(){const{mainIcon:t,mainTextDom:e}=this.mainElement;if(t.className.includes("fpm__main__start")){e.innerText=this._btnTexts.start;return}t.className.includes("fpm__main__end")&&(t.style.transform="scale(0.8)",e.className.includes("fpm__main-text__show")?e.classList.replace("fpm__main-text__show","fpm__main-text__hide"):e.classList.add("fpm__main-text__hide"),setTimeout(()=>{t.classList.replace("fpm__main__end","fpm__main__start"),t.style.transform="scale(1)",e.innerText=this._btnTexts.start,e.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200))}change2Done(){const{mainTextDom:t,mainIcon:e}=this.getMainElement();t.innerText!==this._btnTexts.end&&(e.className.includes("fpm__main__end")||e.className.includes("fpm__main__start")&&(e.style.transform="scale(0.8)",t.className.includes("fpm__main-text__show")?t.classList.replace("fpm__main-text__show","fpm__main-text__hide"):t.classList.add("fpm__main-text__hide"),setTimeout(()=>{e.classList.replace("fpm__main__start","fpm__main__end"),e.style.transform="scale(1)",t.innerText=this._btnTexts.end,t.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200)))}}class Bv{constructor(t,e,n){f(this,"container");f(this,"measureController");f(this,"mainElement");f(this,"_params");f(this,"_btnTexts",{start:"开始",end:"结束"});f(this,"onClick",()=>{var t;this.mainElement.mainTextDom.innerText===((t=this._params.startButtonText)!=null?t:"开始")?(this.measureController.hook.emit("willChangeState","watching","editing"),this.change2Done()):(this.measureController.hook.emit("willChangeState","editing","watching"),this.change2Add())});var s,o;this._params=n,this._btnTexts={start:(s=this._params.startButtonText)!=null?s:this._btnTexts.start,end:(o=this._params.endButtonText)!=null?o:this._btnTexts.end},this.measureController=t,this.container=e,this.mainElement=this.getMainElement(),this.mainElement.mainIcon.setAttribute("style","-webkit-tap-highlight-color: rgba(0,0,0,0);"),Object.assign(this.mainElement.mainIcon.style,ru),Object.assign(this.mainElement.mainItem.style,ou),this.change2Add(),this.mainElement.mainItem.addEventListener("click",this.onClick)}dispose(){this.mainElement.mainItem.removeEventListener("click",this.onClick)}getMainElement(){const t=this.container.querySelector(".fpm__main-text"),e=this.container.querySelector(".fpm__main"),n=this.container.querySelector(".fpm__main-icon");if(!e||!t||!n)throw new Error("cannot find dom");return{mainTextDom:t,mainItem:e,mainIcon:n}}change2Add(){const{mainIcon:t,mainTextDom:e}=this.mainElement;if(t.className.includes("fpm__main__start")){e.innerText=this._btnTexts.start;return}t.className.includes("fpm__main__end")&&(t.style.transform="scale(0.8)",e.className.includes("fpm__main-text__show")?e.classList.replace("fpm__main-text__show","fpm__main-text__hide"):e.classList.add("fpm__main-text__hide"),setTimeout(()=>{t.classList.replace("fpm__main__end","fpm__main__start"),t.style.transform="scale(1)",e.innerText=this._btnTexts.start,e.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200))}change2Done(){const{mainTextDom:t,mainIcon:e}=this.mainElement;t.innerText!==this._btnTexts.end&&(e.className.includes("fpm__main__end")||e.className.includes("fpm__main__start")&&(e.style.transform="scale(0.8)",t.className.includes("fpm__main-text__show")?t.classList.replace("fpm__main-text__show","fpm__main-text__hide"):t.classList.add("fpm__main-text__hide"),setTimeout(()=>{e.classList.replace("fpm__main__start","fpm__main__end"),e.style.transform="scale(1)",t.innerText=this._btnTexts.end,t.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200)))}}class Vv{constructor(t,e){f(this,"container");f(this,"revokeIcon");f(this,"revokeItem");f(this,"measureController");f(this,"onClick",()=>{this.measureController.revoke()});f(this,"onModeChange",t=>{if(t!=="Edit"&&this.revokeItem.className.includes("enabled")){this.revokeItem.classList.remove("enabled"),this.measureController.hook.off("anchorChange",this.onAnchorChange);return}this.measureController.hook.on("anchorChange",this.onAnchorChange)});f(this,"onAnchorChange",t=>{t&&this.revokeItem.classList.add("enabled")});this.measureController=t,this.container=e;const n=this.container.querySelector(".fpm__revoke-icon"),s=this.container.querySelector(".fpm__revoke");if(!n||!s)throw new Error("不正确的选择器");this.revokeIcon=n,this.revokeItem=s,this.revokeItem.addEventListener("click",this.onClick),t.hook.on("modeChange",this.onModeChange)}dispose(){this.revokeItem.removeEventListener("click",this.onClick),this.measureController.hook.off("modeChange",this.onModeChange)}}function Rv(i){ue(i,"svelte-1v1ixi2",'.Switcher.svelte-1v1ixi2.svelte-1v1ixi2{position:relative;box-sizing:border-box;width:-moz-max-content;width:max-content}.Switcher.svelte-1v1ixi2 .content.svelte-1v1ixi2,.Switcher.svelte-1v1ixi2 .active-slider.svelte-1v1ixi2{transition-property:transform, width, opacity;transition-duration:300ms;transition-timing-function:ease-out}.Switcher-bg.svelte-1v1ixi2.svelte-1v1ixi2{content:"";position:absolute;box-sizing:border-box;top:50%;left:0;width:100%;height:3.75rem;transform:translateY(-50%);border-style:solid;border-width:0rem 1.875rem;-o-border-image:url("data:image/png;base64,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");border-image:url("data:image/png;base64,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");border-image-slice:0 90 fill}.Switcher-buttons.svelte-1v1ixi2.svelte-1v1ixi2{display:flex;align-items:center;box-sizing:border-box;padding:0 0.1875rem;height:100%}.Switcher-buttons.has-divider.svelte-1v1ixi2 .button.svelte-1v1ixi2:not(:last-child)::after{content:"";position:absolute;right:0;top:10%;height:80%;width:0.0625rem;background-image:linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.3), transparent);background-size:100%;background-repeat:no-repeat;background-position:center}.active-slider.svelte-1v1ixi2.svelte-1v1ixi2{box-sizing:border-box;position:absolute;height:3.25rem;top:50%;transform:translate(0, -50%);border-style:solid;border-width:0rem 1.875rem;-o-border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXQAAACcCAMAAABY3aA6AAAAhFBMVEX///////8AAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////88i7DIAAAALHRSTlNmawBvc3d6BAcZDid8NwyFja/XEhYkHTErIS41gpajnUyRVEE7XKpiRczDuH1q6FcAAA1mSURBVHja7Ndtk5owFAXg2KKtiiUdlTdBYH1Z//8vbC4SjkmuDlpmOht7AWfdLyaPZw4ovo06PzydcZX+Eh3QP99gXvsCRkbvsX91s/B29A41/rch9mOjq09twUl6TbNRM/d4aH9rmsWVfkDmx0XX4ORN1HGcZdlWzdLbod2pTcYx8St5Dc/7jIiOjGtw4lbSaZ4nSbJTs/J0aG9qi3meKn+i1/AM+/joWlyBk3eaJ7tj/RlEsiyr/fm3t3PeV2Upo+CzPu6SPFXyBM+4j4oO8k6cwI+nUFbdihopI49HyqbLVSXD05HgO3ejZsZDR5OrkHfiCnxWns9VKaNQzczzCa+vaiJZVudzOVPwnbuKO9RHRidyCnkrLqQCb6I73FNvhtsdyTcKXorWneIO9jHRf1zJ5/F2ma9O0X5fEriXzvfHgi/3++i0ypfbeA72EdF78jS5TKtW/J20efvWvZpekvRJdjH49rneEHld7CsZhhx44Pm48OQuq31RE/tmPfhJRgwzBzlC7mhPA2/hsTXYI+5gH/YgI4aWebZM6qhqil4c4P5ac/o0lntRVlGdLLOhHSMGxnyZH6Y9Od8n3z0fvm069qaaHvLlwLCLQTfQbbr7LEuD3NUOPD9c+1v2qCw/d+n2GvbX0RFzahbd5ZZ4z+190G/xLXfd7apjdNhfQof5PEtXk1K65AB3ZmJfX2bshbP47TDsspys0mwO9RfQ1YPiYh1v80PRFA656327dPui40uczsIxVurhDnYFdci38XqBh8cn0anOqVo+JMXcJg8c7W7V7sq/UNCZvOjDtmfYKezygyoGxf4celvnVC1N1Mdci2M099eSfWVu8cGu3fuwRw1VTFvsT6Kjzo+hLBBzM+Tv4+3g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");border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXQAAACcCAMAAABY3aA6AAAAhFBMVEX///////8AAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////88i7DIAAAALHRSTlNmawBvc3d6BAcZDid8NwyFja/XEhYkHTErIS41gpajnUyRVEE7XKpiRczDuH1q6FcAAA1mSURBVHja7Ndtk5owFAXg2KKtiiUdlTdBYH1Z//8vbC4SjkmuDlpmOht7AWfdLyaPZw4ovo06PzydcZX+Eh3QP99gXvsCRkbvsX91s/B29A41/rch9mOjq09twUl6TbNRM/d4aH9rmsWVfkDmx0XX4ORN1HGcZdlWzdLbod2pTcYx8St5Dc/7jIiOjGtw4lbSaZ4nSbJTs/J0aG9qi3meKn+i1/AM+/joWlyBk3eaJ7tj/RlEsiyr/fm3t3PeV2Upo+CzPu6SPFXyBM+4j4oO8k6cwI+nUFbdihopI49HyqbLVSXD05HgO3ejZsZDR5OrkHfiCnxWns9VKaNQzczzCa+vaiJZVudzOVPwnbuKO9RHRidyCnkrLqQCb6I73FNvhtsdyTcKXorWneIO9jHRf1zJ5/F2ma9O0X5fEriXzvfHgi/3++i0ypfbeA72EdF78jS5TKtW/J20efvWvZpekvRJdjH49rneEHld7CsZhhx44Pm48OQuq31RE/tmPfhJRgwzBzlC7mhPA2/hsTXYI+5gH/YgI4aWebZM6qhqil4c4P5ac/o0lntRVlGdLLOhHSMGxnyZH6Y9Od8n3z0fvm069qaaHvLlwLCLQTfQbbr7LEuD3NUOPD9c+1v2qCw/d+n2GvbX0RFzahbd5ZZ4z+190G/xLXfd7apjdNhfQof5PEtXk1K65AB3ZmJfX2bshbP47TDsspys0mwO9RfQ1YPiYh1v80PRFA656327dPui40uczsIxVurhDnYFdci38XqBh8cn0anOqVo+JMXcJg8c7W7V7sq/UNCZvOjDtmfYKezygyoGxf4celvnVC1N1Mdci2M099eSfWVu8cGu3fuwRw1VTFvsT6Kjzo+hLBBzM+Tv4+3g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");border-image-slice:0 90 fill}.button.svelte-1v1ixi2.svelte-1v1ixi2{height:3.5rem;display:flex;position:relative;cursor:pointer;align-items:center;justify-content:center;pointer-events:all;width:7.25rem}.button.svelte-1v1ixi2 .content.svelte-1v1ixi2{position:absolute;display:flex;align-items:center;font-size:1rem;color:#fff;text-shadow:0 0.125rem 0.5rem rgba(0, 0, 0, 0.5);font-weight:bold}.button.svelte-1v1ixi2 .content .icon.svelte-1v1ixi2{display:inline-block;width:1.15625rem;height:1.15625rem;background-repeat:no-repeat;background-size:100%;margin-right:0.125rem}.button.svelte-1v1ixi2:not(.active) .content.svelte-1v1ixi2{opacity:0.65;transform:scale(0.875)}.button.svelte-1v1ixi2:not(.active) .content.svelte-1v1ixi2:hover{opacity:0.85}.button.active.svelte-1v1ixi2 .content.svelte-1v1ixi2{opacity:1;transform:scale(1)}')}function ec(i,t,e){const n=i.slice();return n[13]=t[e],n[14]=t,n[15]=e,n}function tc(i){let t;return{c(){t=x("div"),w(t,"class","active-slider svelte-1v1ixi2"),z(t,"width",i[6]+"px"),z(t,"transform",`translate(${i[7]}px, -50%)`)},m(e,n){B(e,t,n)},p(e,n){n&64&&z(t,"width",e[6]+"px"),n&128&&z(t,"transform",`translate(${e[7]}px, -50%)`)},d(e){e&&O(t)}}}function nc(i){let t;return{c(){t=x("span"),w(t,"class","icon svelte-1v1ixi2"),z(t,"background-image",`url(${i[13].icon})`)},m(e,n){B(e,t,n)},p(e,n){n&1&&z(t,"background-image",`url(${e[13].icon})`)},d(e){e&&O(t)}}}function ic(i){let t,e,n,s=i[13].value+"",o,r,a=i[15],l,c,d=i[13].icon&&nc(i);const h=()=>i[10](t,a),u=()=>i[10](null,a);function m(){return i[11](i[13],i[15])}return{c(){t=x("div"),e=x("div"),d&&d.c(),n=ee(),o=Me(s),r=ee(),w(e,"class","content svelte-1v1ixi2"),w(t,"class","button svelte-1v1ixi2"),K(t,"active",i[4]===i[15])},m(A,p){B(A,t,p),D(t,e),d&&d.m(e,null),D(e,n),D(e,o),D(t,r),h(),l||(c=be(t,"click",m),l=!0)},p(A,p){i=A,i[13].icon?d?d.p(i,p):(d=nc(i),d.c(),d.m(e,n)):d&&(d.d(1),d=null),p&1&&s!==(s=i[13].value+"")&&Oe(o,s),a!==i[15]&&(u(),a=i[15],h()),p&16&&K(t,"active",i[4]===i[15])},d(A){A&&O(t),d&&d.d(),u(),l=!1,c()}}}function Qv(i){let t,e,n,s,o,r=i[5]&&tc(i),a=i[0],l=[];for(let c=0;c<a.length;c+=1)l[c]=ic(ec(i,a,c));return{c(){t=x("div"),e=x("div"),n=ee(),r&&r.c(),s=ee(),o=x("div");for(let c=0;c<l.length;c+=1)l[c].c();w(e,"class","Switcher-bg svelte-1v1ixi2"),w(o,"class","Switcher-buttons svelte-1v1ixi2"),K(o,"has-divider",!i[5]),w(t,"class","Switcher svelte-1v1ixi2")},m(c,d){B(c,t,d),D(t,e),D(t,n),r&&r.m(t,null),D(t,s),D(t,o);for(let h=0;h<l.length;h+=1)l[h]&&l[h].m(o,null);i[12](t)},p(c,[d]){if(c[5]?r?r.p(c,d):(r=tc(c),r.c(),r.m(t,s)):r&&(r.d(1),r=null),d&23){a=c[0];let h;for(h=0;h<a.length;h+=1){const u=ec(c,a,h);l[h]?l[h].p(u,d):(l[h]=ic(u),l[h].c(),l[h].m(o,null))}for(;h<l.length;h+=1)l[h].d(1);l.length=a.length}d&32&&K(o,"has-divider",!c[5])},i:J,o:J,d(c){c&&O(t),r&&r.d(),Tt(l,c),i[12](null)}}}function Gv(i,t,e){let n;const o=g=>{e(4,d=g)};let{options:r}=t,{onChange:a}=t;const l=[];let c,d=null,h,u;function m(g,v){Qe[g?"unshift":"push"](()=>{l[v]=g,e(2,l)})}const A=(g,v)=>{a(g.key),e(4,d=v)};function p(g){Qe[g?"unshift":"push"](()=>{c=g,e(3,c)})}return i.$$set=g=>{"options"in g&&e(0,r=g.options),"onChange"in g&&e(1,a=g.onChange)},i.$$.update=()=>{i.$$.dirty&20&&e(5,n=l[d]),i.$$.dirty&40&&n&&c&&setTimeout(()=>{e(6,h=n.clientWidth),e(7,u=n.getBoundingClientRect().left-c.getBoundingClientRect().left)},0)},[r,a,l,c,d,n,h,u,null,o,m,A,p]}class Nv extends le{constructor(t){super(),ae(this,t,Gv,Qv,oe,{defaultIndex:8,setIndex:9,options:0,onChange:1},Rv)}get defaultIndex(){return this.$$.ctx[8]}get setIndex(){return this.$$.ctx[9]}}function Hv(i){ue(i,"svelte-1m0stw",".exit.svelte-1m0stw{position:relative;pointer-events:all;cursor:pointer;left:1.5rem;top:1.5rem;width:1.5rem;height:1.5rem;background-image:url(data:image/png;base64,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);background-repeat:no-repeat;background-size:100% 100%}")}function _v(i){let t,e,n;return{c(){t=x("div"),w(t,"class","exit svelte-1m0stw")},m(s,o){B(s,t,o),e||(n=be(t,"click",function(){sn(i[0])&&i[0].apply(this,arguments)}),e=!0)},p(s,[o]){i=s},i:J,o:J,d(s){s&&O(t),e=!1,n()}}}function Wv(i,t,e){let{onClick:n=null}=t;return i.$$set=s=>{"onClick"in s&&e(0,n=s.onClick)},[n]}class au extends le{constructor(t){super(),ae(this,t,Wv,_v,oe,{onClick:0},Hv)}}const lu="data:image/png;base64,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",cu="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAASKADAAQAAAABAAAASAAAAACQMUbvAAAFO0lEQVR4Ae2YWYgdRRSG78SFOG6Ju4MxIRnRgCCKBlSC24P64IO4h7wI6oMPCioqAX1TfFIQRFFBETQmIioqGhDBh3GJiMSAZnABNSIuUQTFbcz4fZcup297b9+t7525wznwU11d1aervj6nurprtbAgEASCQBAIAkEgCASBIBAEgkAQCAJBIAgEgSAQBIJAEMgIzM7OLkHL0STaJ8DMgRkDyDK0CX2MptEUOrMbSGPddB6VvkAwUo5Hd6OzCuP+hfr5Y2NjvxbON60uaXp2hE8CZ3+GfzJ6ABXhOLND0VoPOrF9O+k0Kn2AM85Y16M70UTJuL8taWtoWjSAgHMYM7sQ3YyWN8yysbKZ9NrdeKp1bVGsQcBxvbkUXYsOaD3d2jbabgXQ3yV9GppGPoKA43pyDboclb3G36T9rm7g0L82soAAY/S7CG9E56GybHiLduH4BuvKRhIQcIyUi5BwTmsz47dpvwftadOvafPIAQLOUmZiSl2JVjed1dzJ7Rzei74iembnTnd+NFKAgHMIU7seXYKObTPN92kXzue9wtH/yAACjkBuQecgN3tltoNGN4rTwNlb1rFd20gAAs4JTOR2dAYqe407351IOB/2C0dnlQBiAm7vZ6oYkIPKG77XUd+E1iDvU2bTND6I3qtqLH0BYvDuWP3uORHNUHeAOxlcRx+C9C01/F1MhzvQUahsj6OfT9HDaKoqODot2zvY3tIYvOuAi+W5SD++Xf5BU+h1BvklZc+G/+u4+AbkwtxunF/QRzivcl/HUJn1E0GTjMKNmtGin7+QKeD30AQTfI1ye7dPk+uMFFPqMtRuvaFLzQfxOKocjs57ApRNwrfKDPKJ+YSV9Z/RKcj2lfR9BUi/cdzW6GsU3o98U3Uytq/p9wR6serIwWfdevoflA3mh8yHGzBfpYJK5U8cuz5dhW5k4isoS40+ptJDaD3qBM439HsKbR0UHHzXegLkhdhnaBcyrfJwhKSMGtPuAnQbAM6mbGq0HU3DI+h01Akc/+c8owYJB/9tFz/7NDUmZUqtRFegVehP5OSU64jlfpkOp/wRbUNbmNQflHXDzyoO7kMnIX16rWr18L6nbTN6FD+m9EDNAfVsGaRJHAjpOGTEJDgJViqX0WakvYu2ot3oVHQT0odRJxT7C1Y/RUtwHgNOx/90ik66qfcFyBvlIG2gOoGMjgTFMg/sQOoHo++QQFynjC7BJjjpWq/LQ3LNM62GBod79Z5iXpwsg7SWul/YQiqmW4qINPmD6OM5zUU+QbQs9vUhzgsc7tsyz23r2Ah3J/kJegE5mXFkOjVbvNMC7v7JaHMd8ZzST/4a6/MGh3vXU8GybxMS9hGOfOJG0jFIAGnylk7edpXOm1qpzWPb7Ge0mYrPoaGmFff7zxxEZZZB2oFD00RIRyAhJSh5MHkoAhFOeit5vQvyFvTksBZk7vU/qxSQ3jNIH2R3cqPoh+bvKEVMiqJ8tKSo8TLXIdPqWfT0fMLh/tWlmM6SMam9pFsRkgt3ihRhGS3FiHLT6X7JfY475KG8yrlXS6s8gtKdCpCu5ryR5Os8H0H5NDNyhGNaPc/1Kd2ozp8NDJBTKkDawKkjkZFkeuVBOY49yMh5eaHAYSyDSTEdJytAcuF2n2TqmF5pD5Tg+B9pQUQOY6ubgxyKsSYZNf4GEdJqJJylyA/Pl9AbCw0OY6o/RcuhGJB8IMJZh1Ygf4u8g3YBx5QLk4DRhMaRC3NYEAgCQSAIBIEgEASCQBAIAkEgCASBIBAEgkAQCAJBYJEQ+BdpRqKi3IjqNwAAAABJRU5ErkJggg==",Fv="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAABi0lEQVRoBe2Yu20DMRBEdW7EuVLX4NQVuAEVoUhFuAFV4FQ1OHWuRkzNABRwMLhDfbhcBhyA0IEjnvYNjjxoN5upmcBMYCYQmcCifjyl9AL/E+Md4xXjjHHCOC7L8ofPcJkAufgvVPhWqPIHc7sRIJiwJSZfKp7f5zz9cCkAPjZKNV+tbeYpAD7zSjVfrW3mKQBuWKWar9Y28xQATxsl7PNkHgJqYUtPARzxQzxtLG1h7KMhZIL5KP3/HkgonMVf9Y2LA45UzneXBChVkxPfw/tY+WEQdwOw6JEgHgIYCeJhgFEgngIYAeJpgGiIJgCREM0AoiCaAkRANAfoDeEC0BPCDaAXhCtADwh3AG+ILgCeEN0AvCC6AnhAdAdoDRECICB+4bEmtmzOGNU2ZhgAirP+2dFaS7YxVVdifROX69wIOODmTN6SbGOGArDiDFF7Esw2ZjhAjr3WpjT9UQC4YZVMfxSAWhvT9EcBUG1MnkL0i6ptnuIij0mjjVl9D3jUMu85E5gJzARuT+ACS7KuMQ7rOEcAAAAASUVORK5CYII=",Yv="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAAByElEQVRoBe1ZMU4DMRC8Q7yCJjVNKCh4ARVfAPo0PCYNPeQLVLyAggIa6jQ8g2NGsiJjeUfHrdGd0K60Sm7t3R3P+hx503UhwUAwEAzMyUCvkg/DcITxa+gldAXdQ5+hu77vv/DZTKbmMheQAt4D4XkF5Stsm1aL8OQiw5aQ+Rp4zqed461kci5VgUegO22F0BnnA9W+qcVQFeCeX4qYWNQC+MIuRUwsxwIhTxu1hV4w/ib8fzN0hskXwoFYqqIqsIMHT5uafML4XhuYaGMsxqwJMRBLVcyXmLOzs/ku8ybzTDhkthZfiWUNzSuxxbP8zVEV6HjOQx8KdNw2rcEzBWP+2JLMTQwctEQuwHJakj0WMHc1ogJRAScDsYWcBLrdowJuCp0BogJOAt3uUQE3hc4AUQEngW73/10BXimhtwVNvIDLq2gxf+wjYzL2QZg7XWsPtvKLCSQ5Wq1FXsCfoK2ulsRxBT2BliLbmGoLqXYfE/EC3koYqwae8WUbU1UgWoutyoM4KyuW2kJ7y2kGu4nF01rcVnpGk9aWTrq8eVbGad5alO2+MvuIZ9XGlLnMl5hJ01HK02ixfzGNICemBAPBQDDwhwx8A43PdoQvgLfYAAAAAElFTkSuQmCC";function Uv(i){ue(i,"svelte-468fdd",'*.forbid.svelte-468fdd.svelte-468fdd{pointer-events:none !important;opacity:0.5}.Measure-Controller.svelte-468fdd.svelte-468fdd{pointer-events:none;position:relative;width:100%;height:100%;z-index:2}.Measure-Controller.svelte-468fdd .mode-switcher.svelte-468fdd{margin-top:2.25rem}.Measure-Controller.svelte-468fdd .bottom.svelte-468fdd{position:absolute;width:100%;bottom:0}.Measure-Controller.svelte-468fdd .bottom .mask.svelte-468fdd{position:absolute;bottom:0;width:100%;height:11.5rem;background-size:100%;background-image:linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.3))}.Measure-Controller.svelte-468fdd .bottom .center.svelte-468fdd{display:flex;flex-direction:column;align-items:center;margin-bottom:2.5rem}.Measure-Controller.svelte-468fdd .buttons.svelte-468fdd{pointer-events:all;display:flex;align-items:center;height:2.5rem;background:rgba(0, 0, 0, 0.2);color:rgba(255, 255, 255, 0.85);width:-moz-max-content;width:max-content;border-radius:624.9375rem;overflow:hidden}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd{cursor:pointer;display:flex;align-items:center;position:relative;font-size:0.875rem;padding:0rem 1rem}.Measure-Controller.svelte-468fdd .buttons .button .icon.svelte-468fdd{width:1.5rem;height:1.5rem;background-repeat:no-repeat;background-size:100%;margin-right:0.25rem}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd::after{content:"";position:absolute;display:block;right:-0.03125rem;height:1.5rem;width:0.0625rem;background-image:linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.3), transparent);background-size:100%;background-repeat:no-repeat;background-position:center}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd:last-child::after{display:none}')}function sc(i){let t,e;return t=new au({props:{onClick:i[0].disable}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.onClick=n[0].disable),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function oc(i){let t,e,n,s,o,r,a,l,c,d;return{c(){t=x("div"),e=x("div"),n=x("div"),s=Me(`
|
|
516
516
|
撤销`),o=ee(),r=x("div"),a=x("div"),l=Me(`
|
|
517
|
-
结束`),w(n,"class","icon svelte-468fdd"),z(n,"background-image",`url(${lu})`),w(e,"class","button svelte-468fdd"),K(e,"forbid",!i[2]),w(a,"class","icon svelte-468fdd"),z(a,"background-image",`url(${cu})`),w(r,"class","button svelte-468fdd"),w(t,"class","buttons svelte-468fdd")},m(h,u){B(h,t,u),D(t,e),D(e,n),D(e,s),D(t,o),D(t,r),D(r,a),D(r,l),c||(d=[be(e,"click",i[6]),be(r,"click",i[5])],c=!0)},p(h,u){u&4&&K(e,"forbid",!h[2])},d(h){h&&O(t),c=!1,Je(d)}}}function Xv(i){let t,e,n,s,o,r,a,l,c,d,h,u=i[1]&&sc(i),m=i[4]&&oc(i);function A(g){i[8](g)}let p={options:[{key:"line",value:"测距离",icon:Fv},{key:"area",value:"测面积",icon:Yv}],onChange:i[7]};return i[3]!==void 0&&(p.setIndex=i[3]),c=new Nv({props:p}),Qe.push(()=>Ca(c,"setIndex",A)),{c(){t=x("div"),u&&u.c(),e=ee(),n=x("div"),s=x("div"),o=ee(),r=x("div"),m&&m.c(),a=ee(),l=x("div"),ie(c.$$.fragment),w(s,"class","mask svelte-468fdd"),w(l,"class","mode-switcher svelte-468fdd"),w(r,"class","center svelte-468fdd"),w(n,"class","bottom svelte-468fdd"),w(t,"class","Measure-Controller svelte-468fdd")},m(g,b){B(g,t,b),u&&u.m(t,null),D(t,e),D(t,n),D(n,s),D(n,o),D(n,r),m&&m.m(r,null),D(r,a),D(r,l),te(c,l,null),h=!0},p(g,[b]){g[1]?u?(u.p(g,b),b&2&&M(u,1)):(u=sc(g),u.c(),M(u,1),u.m(t,e)):u&&(de(),j(u,1,1,()=>{u=null}),he()),g[4]?m?m.p(g,b):(m=oc(g),m.c(),m.m(r,a)):m&&(m.d(1),m=null);const y={};b&1&&(y.onChange=g[7]),!d&&b&8&&(d=!0,y.setIndex=g[3],Aa(()=>d=!1)),c.$set(y)},i(g){h||(M(u),M(c.$$.fragment,g),h=!0)},o(g){j(u),j(c.$$.fragment,g),h=!1},d(g){g&&O(t),u&&u.d(),m&&m.d(),ne(c)}}}function Zv(i,t,e){let{measureController:n}=t,{showExit:s=!1}=t,o=!1,r;function a(p){p==="Edit"?e(4,h=!0):(r(null),e(4,h=!1))}function l(){n.controller instanceof dn&&n.controller.complete(),n.save({mode:"Watch"})}function c(p){e(2,o=p.length>0)}function d(){e(2,o=!1)}vt(()=>{n.hook.on("modeChange",a),n.hook.on("complete",d),n.hook.on("pointsChange",c)}),Lt(()=>{n.hook.off("modeChange",a),n.hook.off("complete",d),n.hook.off("pointsChange",c)});let h=!1;const u=()=>n.revoke(),m=p=>{n.save().changeMode("Edit"),n.changeMeasureType(p)};function A(p){r=p,e(3,r)}return i.$$set=p=>{"measureController"in p&&e(0,n=p.measureController),"showExit"in p&&e(1,s=p.showExit)},[n,s,o,r,h,l,u,m,A]}class Jv extends le{constructor(t){super(),ae(this,t,Zv,Xv,oe,{measureController:0,showExit:1},Uv)}}function qv(i){ue(i,"svelte-1mfj5mk",'.Switcher.svelte-1mfj5mk.svelte-1mfj5mk{pointer-events:all;position:relative;margin-bottom:1.5rem;box-sizing:border-box;width:-moz-max-content;width:max-content}.Switcher.svelte-1mfj5mk .svelte-1mfj5mk{transition-duration:300ms;transition-timing-function:ease-out}.Switcher.svelte-1mfj5mk .content.svelte-1mfj5mk{transition-property:opacity}.Switcher.svelte-1mfj5mk .highlight.svelte-1mfj5mk{transition-property:width}.Switcher.svelte-1mfj5mk .Switcher-buttons.svelte-1mfj5mk{transition-property:transform}.Switcher.svelte-1mfj5mk .Switcher-buttons.svelte-1mfj5mk{position:absolute;top:50%;left:0;transform:translate(0, -50%);width:-moz-max-content;width:max-content}.Switcher.svelte-1mfj5mk .Switcher-buttons .button.svelte-1mfj5mk{display:inline-block;margin:0 0.5625rem}.Switcher.svelte-1mfj5mk .highlight.svelte-1mfj5mk{height:2rem;background:rgba(0, 0, 0, 0.3);border-radius:624.9375rem}.Switcher.svelte-1mfj5mk .content.svelte-1mfj5mk{position:relative;padding:0 0.75rem}.Switcher.svelte-1mfj5mk .button:not(.active) .content.svelte-1mfj5mk::before{content:"";position:absolute;top:50%;left:10%;width:80%;transform:translateY(-50%);height:0;box-shadow:0 0 0.9375rem 0.3125rem rgba(0, 0, 0, 0.3)}')}function rc(i,t,e){const n=i.slice();return n[13]=t[e],n[14]=t,n[15]=e,n}function ac(i){let t;return{c(){t=x("span"),w(t,"class","icon svelte-1mfj5mk"),z(t,"background-image",i[13].icon)},m(e,n){B(e,t,n)},p(e,n){n&1&&z(t,"background-image",e[13].icon)},d(e){e&&O(t)}}}function lc(i){let t,e,n,s=i[13].value+"",o,r,a=i[15],l,c,d=i[13].icon&&ac(i);const h=()=>i[9](t,a),u=()=>i[9](null,a);function m(){return i[10](i[13],i[15])}return{c(){t=x("div"),e=x("div"),d&&d.c(),n=ee(),o=Me(s),r=ee(),w(e,"class","content svelte-1mfj5mk"),w(t,"class","button svelte-1mfj5mk"),K(t,"active",i[4]===i[15])},m(A,p){B(A,t,p),D(t,e),d&&d.m(e,null),D(e,n),D(e,o),D(t,r),h(),l||(c=be(t,"click",m),l=!0)},p(A,p){i=A,i[13].icon?d?d.p(i,p):(d=ac(i),d.c(),d.m(e,n)):d&&(d.d(1),d=null),p&1&&s!==(s=i[13].value+"")&&Oe(o,s),a!==i[15]&&(u(),a=i[15],h()),p&16&&K(t,"active",i[4]===i[15])},d(A){A&&O(t),d&&d.d(),u(),l=!1,c()}}}function Kv(i){let t,e,n,s,o=i[0],r=[];for(let a=0;a<o.length;a+=1)r[a]=lc(rc(i,o,a));return{c(){t=x("div"),e=x("div"),n=ee(),s=x("div");for(let a=0;a<r.length;a+=1)r[a].c();w(e,"class","highlight svelte-1mfj5mk"),z(e,"width",i[5]?`${i[5]}px`:void 0),w(s,"class","Switcher-buttons svelte-1mfj5mk"),z(s,"transform",`translate(${i[6]}px, -50%)`),w(t,"class","Switcher svelte-1mfj5mk")},m(a,l){B(a,t,l),D(t,e),D(t,n),D(t,s);for(let c=0;c<r.length;c+=1)r[c]&&r[c].m(s,null);i[11](t)},p(a,[l]){if(l&32&&z(e,"width",a[5]?`${a[5]}px`:void 0),l&23){o=a[0];let c;for(c=0;c<o.length;c+=1){const d=rc(a,o,c);r[c]?r[c].p(d,l):(r[c]=lc(d),r[c].c(),r[c].m(s,null))}for(;c<r.length;c+=1)r[c].d(1);r.length=o.length}l&64&&z(s,"transform",`translate(${a[6]}px, -50%)`)},i:J,o:J,d(a){a&&O(t),Tt(r,a),i[11](null)}}}function $v(i,t,e){let n,s,{options:o}=t,{defaultKey:r=null}=t,{onChange:a}=t;const l=[];let c,d,h=0;function u(){if(s&&c){e(5,d=s.clientWidth);const g=h+c.getBoundingClientRect().left-s.getBoundingClientRect().left;e(6,h=g)}}function m(g,b){Qe[g?"unshift":"push"](()=>{l[b]=g,e(2,l)})}const A=(g,b)=>{a(g.key),e(4,n=b)};function p(g){Qe[g?"unshift":"push"](()=>{c=g,e(3,c)})}return i.$$set=g=>{"options"in g&&e(0,o=g.options),"defaultKey"in g&&e(7,r=g.defaultKey),"onChange"in g&&e(1,a=g.onChange)},i.$$.update=()=>{i.$$.dirty&129&&e(4,n=r?o.findIndex(g=>g.key===r):0),i.$$.dirty&20&&e(8,s=l[n]),i.$$.dirty&264&&s&&c&&setTimeout(()=>u(),0)},[o,a,l,c,n,d,h,r,s,m,A,p]}class e0 extends le{constructor(t){super(),ae(this,t,$v,Kv,oe,{options:0,defaultKey:7,onChange:1},qv)}}function t0(i){ue(i,"svelte-82ysdl",".CircleButton.svelte-82ysdl.svelte-82ysdl{position:relative;display:flex;justify-content:center;align-items:center;width:4.5rem;height:4.5rem;background-image:inherit;background-size:100% auto;background-repeat:no-repeat;transition:transform 200ms ease-in-out}.CircleButton.svelte-82ysdl.svelte-82ysdl:active{transform:scale(0.8)}.CircleButton.svelte-82ysdl .text.svelte-82ysdl{position:absolute}")}function cc(i){let t,e,n,s;return{c(){t=x("div"),e=Me(i[0]),w(t,"class","text svelte-82ysdl")},m(o,r){B(o,t,r),D(t,e),s=!0},p(o,r){(!s||r&1)&&Oe(e,o[0])},i(o){s||(Ne(()=>{s&&(n||(n=_t(t,tt,{duration:300},!0)),n.run(1))}),s=!0)},o(o){n||(n=_t(t,tt,{duration:300},!1)),n.run(0),s=!1},d(o){o&&O(t),o&&n&&n.end()}}}function n0(i){let t,e=i[0],n,s,o,r=cc(i);return{c(){t=x("div"),r.c(),w(t,"class","CircleButton svelte-82ysdl"),z(t,"background-image",`url(${i[2]})`)},m(a,l){B(a,t,l),r.m(t,null),n=!0,s||(o=be(t,"click",function(){sn(i[1])&&i[1].apply(this,arguments)}),s=!0)},p(a,[l]){i=a,l&1&&oe(e,e=i[0])?(de(),j(r,1,1,J),he(),r=cc(i),r.c(),M(r,1),r.m(t,null)):r.p(i,l),l&4&&z(t,"background-image",`url(${i[2]})`)},i(a){n||(M(r),n=!0)},o(a){j(r),n=!1},d(a){a&&O(t),r.d(a),s=!1,o()}}}function i0(i,t,e){let n,{text:s}=t,{onClick:o=null}=t,{color:r="white"}=t;return i.$$set=a=>{"text"in a&&e(0,s=a.text),"onClick"in a&&e(1,o=a.onClick),"color"in a&&e(3,r=a.color)},i.$$.update=()=>{i.$$.dirty&8&&e(2,n=(()=>r==="white"?ao:r==="blue"?za:ao)())},[s,o,n,r]}class s0 extends le{constructor(t){super(),ae(this,t,i0,n0,oe,{text:0,onClick:1,color:3},t0)}}function o0(i){ue(i,"svelte-ldjbp8","*.forbid.svelte-ldjbp8.svelte-ldjbp8{pointer-events:none !important;opacity:0.5}.Measure-Controller.svelte-ldjbp8.svelte-ldjbp8{pointer-events:none;position:relative;width:100%;height:100%;z-index:2;color:white}.Measure-Controller.svelte-ldjbp8 .mode-switcher.svelte-ldjbp8{margin-top:2.25rem}.Measure-Controller.svelte-ldjbp8 .bottom.svelte-ldjbp8{position:absolute;width:100%;bottom:0}.Measure-Controller.svelte-ldjbp8 .bottom .mask.svelte-ldjbp8{position:absolute;bottom:0;width:100%;height:12.5rem;background-size:100%;z-index:-1;background-image:linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.5))}.Measure-Controller.svelte-ldjbp8 .bottom .center.svelte-ldjbp8{display:flex;flex-direction:column;align-items:center;margin-bottom:2.5rem}.Measure-Controller.svelte-ldjbp8 .controller.svelte-ldjbp8{pointer-events:all;display:flex;align-items:center}.Measure-Controller.svelte-ldjbp8 .controller .button.svelte-ldjbp8{cursor:pointer;display:flex;align-items:center;height:2.5rem;padding-left:1rem;padding-right:1rem;border-radius:624.9375rem;font-size:0.875rem;color:#fff;background-color:rgba(0, 0, 0, 0.2)}.Measure-Controller.svelte-ldjbp8 .controller .button .icon.svelte-ldjbp8{width:1.5rem;height:1.5rem;background-repeat:no-repeat;background-size:100%;margin:0 0.25rem}.Measure-Controller.svelte-ldjbp8 .controller .main-button.svelte-ldjbp8{margin-left:1.75rem;margin-right:1.75rem;font-size:0.875rem;font-weight:bold}")}function dc(i){let t,e;return t=new au({props:{onClick:i[0].disable}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.onClick=n[0].disable),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function hc(i){let t,e,n,s;return e=new e0({props:{options:[{key:"line",value:"测距离"},{key:"area",value:"测面积"}],defaultKey:i[0].currentMeasureType,onChange:i[0].changeMeasureType}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","mode-switcher svelte-ldjbp8")},m(o,r){B(o,t,r),te(e,t,null),s=!0},p(o,r){i=o;const a={};r&1&&(a.defaultKey=i[0].currentMeasureType),r&1&&(a.onChange=i[0].changeMeasureType),e.$set(a)},i(o){s||(M(e.$$.fragment,o),o&&Ne(()=>{s&&(n||(n=_t(t,tt,{duration:fi},!0)),n.run(1))}),s=!0)},o(o){j(e.$$.fragment,o),o&&(n||(n=_t(t,tt,{duration:fi},!1)),n.run(0)),s=!1},d(o){o&&O(t),ne(e),o&&n&&n.end()}}}function uc(i){let t,e,n,s,o,r,a;return{c(){t=x("div"),e=x("div"),n=Me(`
|
|
517
|
+
结束`),w(n,"class","icon svelte-468fdd"),z(n,"background-image",`url(${lu})`),w(e,"class","button svelte-468fdd"),K(e,"forbid",!i[2]),w(a,"class","icon svelte-468fdd"),z(a,"background-image",`url(${cu})`),w(r,"class","button svelte-468fdd"),w(t,"class","buttons svelte-468fdd")},m(h,u){B(h,t,u),D(t,e),D(e,n),D(e,s),D(t,o),D(t,r),D(r,a),D(r,l),c||(d=[be(e,"click",i[6]),be(r,"click",i[5])],c=!0)},p(h,u){u&4&&K(e,"forbid",!h[2])},d(h){h&&O(t),c=!1,Je(d)}}}function Xv(i){let t,e,n,s,o,r,a,l,c,d,h,u=i[1]&&sc(i),m=i[4]&&oc(i);function A(g){i[8](g)}let p={options:[{key:"line",value:"测距离",icon:Fv},{key:"area",value:"测面积",icon:Yv}],onChange:i[7]};return i[3]!==void 0&&(p.setIndex=i[3]),c=new Nv({props:p}),Qe.push(()=>Ca(c,"setIndex",A)),{c(){t=x("div"),u&&u.c(),e=ee(),n=x("div"),s=x("div"),o=ee(),r=x("div"),m&&m.c(),a=ee(),l=x("div"),ie(c.$$.fragment),w(s,"class","mask svelte-468fdd"),w(l,"class","mode-switcher svelte-468fdd"),w(r,"class","center svelte-468fdd"),w(n,"class","bottom svelte-468fdd"),w(t,"class","Measure-Controller svelte-468fdd")},m(g,v){B(g,t,v),u&&u.m(t,null),D(t,e),D(t,n),D(n,s),D(n,o),D(n,r),m&&m.m(r,null),D(r,a),D(r,l),te(c,l,null),h=!0},p(g,[v]){g[1]?u?(u.p(g,v),v&2&&M(u,1)):(u=sc(g),u.c(),M(u,1),u.m(t,e)):u&&(de(),j(u,1,1,()=>{u=null}),he()),g[4]?m?m.p(g,v):(m=oc(g),m.c(),m.m(r,a)):m&&(m.d(1),m=null);const y={};v&1&&(y.onChange=g[7]),!d&&v&8&&(d=!0,y.setIndex=g[3],Aa(()=>d=!1)),c.$set(y)},i(g){h||(M(u),M(c.$$.fragment,g),h=!0)},o(g){j(u),j(c.$$.fragment,g),h=!1},d(g){g&&O(t),u&&u.d(),m&&m.d(),ne(c)}}}function Zv(i,t,e){let{measureController:n}=t,{showExit:s=!1}=t,o=!1,r;function a(p){p==="Edit"?e(4,h=!0):(r(null),e(4,h=!1))}function l(){n.controller instanceof dn&&n.controller.complete(),n.save({mode:"Watch"})}function c(p){e(2,o=p.length>0)}function d(){e(2,o=!1)}vt(()=>{n.hook.on("modeChange",a),n.hook.on("complete",d),n.hook.on("pointsChange",c)}),Lt(()=>{n.hook.off("modeChange",a),n.hook.off("complete",d),n.hook.off("pointsChange",c)});let h=!1;const u=()=>n.revoke(),m=p=>{n.save().changeMode("Edit"),n.changeMeasureType(p)};function A(p){r=p,e(3,r)}return i.$$set=p=>{"measureController"in p&&e(0,n=p.measureController),"showExit"in p&&e(1,s=p.showExit)},[n,s,o,r,h,l,u,m,A]}class Jv extends le{constructor(t){super(),ae(this,t,Zv,Xv,oe,{measureController:0,showExit:1},Uv)}}function qv(i){ue(i,"svelte-1mfj5mk",'.Switcher.svelte-1mfj5mk.svelte-1mfj5mk{pointer-events:all;position:relative;margin-bottom:1.5rem;box-sizing:border-box;width:-moz-max-content;width:max-content}.Switcher.svelte-1mfj5mk .svelte-1mfj5mk{transition-duration:300ms;transition-timing-function:ease-out}.Switcher.svelte-1mfj5mk .content.svelte-1mfj5mk{transition-property:opacity}.Switcher.svelte-1mfj5mk .highlight.svelte-1mfj5mk{transition-property:width}.Switcher.svelte-1mfj5mk .Switcher-buttons.svelte-1mfj5mk{transition-property:transform}.Switcher.svelte-1mfj5mk .Switcher-buttons.svelte-1mfj5mk{position:absolute;top:50%;left:0;transform:translate(0, -50%);width:-moz-max-content;width:max-content}.Switcher.svelte-1mfj5mk .Switcher-buttons .button.svelte-1mfj5mk{display:inline-block;margin:0 0.5625rem}.Switcher.svelte-1mfj5mk .highlight.svelte-1mfj5mk{height:2rem;background:rgba(0, 0, 0, 0.3);border-radius:624.9375rem}.Switcher.svelte-1mfj5mk .content.svelte-1mfj5mk{position:relative;padding:0 0.75rem}.Switcher.svelte-1mfj5mk .button:not(.active) .content.svelte-1mfj5mk::before{content:"";position:absolute;top:50%;left:10%;width:80%;transform:translateY(-50%);height:0;box-shadow:0 0 0.9375rem 0.3125rem rgba(0, 0, 0, 0.3)}')}function rc(i,t,e){const n=i.slice();return n[13]=t[e],n[14]=t,n[15]=e,n}function ac(i){let t;return{c(){t=x("span"),w(t,"class","icon svelte-1mfj5mk"),z(t,"background-image",i[13].icon)},m(e,n){B(e,t,n)},p(e,n){n&1&&z(t,"background-image",e[13].icon)},d(e){e&&O(t)}}}function lc(i){let t,e,n,s=i[13].value+"",o,r,a=i[15],l,c,d=i[13].icon&&ac(i);const h=()=>i[9](t,a),u=()=>i[9](null,a);function m(){return i[10](i[13],i[15])}return{c(){t=x("div"),e=x("div"),d&&d.c(),n=ee(),o=Me(s),r=ee(),w(e,"class","content svelte-1mfj5mk"),w(t,"class","button svelte-1mfj5mk"),K(t,"active",i[4]===i[15])},m(A,p){B(A,t,p),D(t,e),d&&d.m(e,null),D(e,n),D(e,o),D(t,r),h(),l||(c=be(t,"click",m),l=!0)},p(A,p){i=A,i[13].icon?d?d.p(i,p):(d=ac(i),d.c(),d.m(e,n)):d&&(d.d(1),d=null),p&1&&s!==(s=i[13].value+"")&&Oe(o,s),a!==i[15]&&(u(),a=i[15],h()),p&16&&K(t,"active",i[4]===i[15])},d(A){A&&O(t),d&&d.d(),u(),l=!1,c()}}}function Kv(i){let t,e,n,s,o=i[0],r=[];for(let a=0;a<o.length;a+=1)r[a]=lc(rc(i,o,a));return{c(){t=x("div"),e=x("div"),n=ee(),s=x("div");for(let a=0;a<r.length;a+=1)r[a].c();w(e,"class","highlight svelte-1mfj5mk"),z(e,"width",i[5]?`${i[5]}px`:void 0),w(s,"class","Switcher-buttons svelte-1mfj5mk"),z(s,"transform",`translate(${i[6]}px, -50%)`),w(t,"class","Switcher svelte-1mfj5mk")},m(a,l){B(a,t,l),D(t,e),D(t,n),D(t,s);for(let c=0;c<r.length;c+=1)r[c]&&r[c].m(s,null);i[11](t)},p(a,[l]){if(l&32&&z(e,"width",a[5]?`${a[5]}px`:void 0),l&23){o=a[0];let c;for(c=0;c<o.length;c+=1){const d=rc(a,o,c);r[c]?r[c].p(d,l):(r[c]=lc(d),r[c].c(),r[c].m(s,null))}for(;c<r.length;c+=1)r[c].d(1);r.length=o.length}l&64&&z(s,"transform",`translate(${a[6]}px, -50%)`)},i:J,o:J,d(a){a&&O(t),Tt(r,a),i[11](null)}}}function $v(i,t,e){let n,s,{options:o}=t,{defaultKey:r=null}=t,{onChange:a}=t;const l=[];let c,d,h=0;function u(){if(s&&c){e(5,d=s.clientWidth);const g=h+c.getBoundingClientRect().left-s.getBoundingClientRect().left;e(6,h=g)}}function m(g,v){Qe[g?"unshift":"push"](()=>{l[v]=g,e(2,l)})}const A=(g,v)=>{a(g.key),e(4,n=v)};function p(g){Qe[g?"unshift":"push"](()=>{c=g,e(3,c)})}return i.$$set=g=>{"options"in g&&e(0,o=g.options),"defaultKey"in g&&e(7,r=g.defaultKey),"onChange"in g&&e(1,a=g.onChange)},i.$$.update=()=>{i.$$.dirty&129&&e(4,n=r?o.findIndex(g=>g.key===r):0),i.$$.dirty&20&&e(8,s=l[n]),i.$$.dirty&264&&s&&c&&setTimeout(()=>u(),0)},[o,a,l,c,n,d,h,r,s,m,A,p]}class e0 extends le{constructor(t){super(),ae(this,t,$v,Kv,oe,{options:0,defaultKey:7,onChange:1},qv)}}function t0(i){ue(i,"svelte-82ysdl",".CircleButton.svelte-82ysdl.svelte-82ysdl{position:relative;display:flex;justify-content:center;align-items:center;width:4.5rem;height:4.5rem;background-image:inherit;background-size:100% auto;background-repeat:no-repeat;transition:transform 200ms ease-in-out}.CircleButton.svelte-82ysdl.svelte-82ysdl:active{transform:scale(0.8)}.CircleButton.svelte-82ysdl .text.svelte-82ysdl{position:absolute}")}function cc(i){let t,e,n,s;return{c(){t=x("div"),e=Me(i[0]),w(t,"class","text svelte-82ysdl")},m(o,r){B(o,t,r),D(t,e),s=!0},p(o,r){(!s||r&1)&&Oe(e,o[0])},i(o){s||(Ne(()=>{s&&(n||(n=_t(t,tt,{duration:300},!0)),n.run(1))}),s=!0)},o(o){n||(n=_t(t,tt,{duration:300},!1)),n.run(0),s=!1},d(o){o&&O(t),o&&n&&n.end()}}}function n0(i){let t,e=i[0],n,s,o,r=cc(i);return{c(){t=x("div"),r.c(),w(t,"class","CircleButton svelte-82ysdl"),z(t,"background-image",`url(${i[2]})`)},m(a,l){B(a,t,l),r.m(t,null),n=!0,s||(o=be(t,"click",function(){sn(i[1])&&i[1].apply(this,arguments)}),s=!0)},p(a,[l]){i=a,l&1&&oe(e,e=i[0])?(de(),j(r,1,1,J),he(),r=cc(i),r.c(),M(r,1),r.m(t,null)):r.p(i,l),l&4&&z(t,"background-image",`url(${i[2]})`)},i(a){n||(M(r),n=!0)},o(a){j(r),n=!1},d(a){a&&O(t),r.d(a),s=!1,o()}}}function i0(i,t,e){let n,{text:s}=t,{onClick:o=null}=t,{color:r="white"}=t;return i.$$set=a=>{"text"in a&&e(0,s=a.text),"onClick"in a&&e(1,o=a.onClick),"color"in a&&e(3,r=a.color)},i.$$.update=()=>{i.$$.dirty&8&&e(2,n=(()=>r==="white"?ao:r==="blue"?za:ao)())},[s,o,n,r]}class s0 extends le{constructor(t){super(),ae(this,t,i0,n0,oe,{text:0,onClick:1,color:3},t0)}}function o0(i){ue(i,"svelte-ldjbp8","*.forbid.svelte-ldjbp8.svelte-ldjbp8{pointer-events:none !important;opacity:0.5}.Measure-Controller.svelte-ldjbp8.svelte-ldjbp8{pointer-events:none;position:relative;width:100%;height:100%;z-index:2;color:white}.Measure-Controller.svelte-ldjbp8 .mode-switcher.svelte-ldjbp8{margin-top:2.25rem}.Measure-Controller.svelte-ldjbp8 .bottom.svelte-ldjbp8{position:absolute;width:100%;bottom:0}.Measure-Controller.svelte-ldjbp8 .bottom .mask.svelte-ldjbp8{position:absolute;bottom:0;width:100%;height:12.5rem;background-size:100%;z-index:-1;background-image:linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.5))}.Measure-Controller.svelte-ldjbp8 .bottom .center.svelte-ldjbp8{display:flex;flex-direction:column;align-items:center;margin-bottom:2.5rem}.Measure-Controller.svelte-ldjbp8 .controller.svelte-ldjbp8{pointer-events:all;display:flex;align-items:center}.Measure-Controller.svelte-ldjbp8 .controller .button.svelte-ldjbp8{cursor:pointer;display:flex;align-items:center;height:2.5rem;padding-left:1rem;padding-right:1rem;border-radius:624.9375rem;font-size:0.875rem;color:#fff;background-color:rgba(0, 0, 0, 0.2)}.Measure-Controller.svelte-ldjbp8 .controller .button .icon.svelte-ldjbp8{width:1.5rem;height:1.5rem;background-repeat:no-repeat;background-size:100%;margin:0 0.25rem}.Measure-Controller.svelte-ldjbp8 .controller .main-button.svelte-ldjbp8{margin-left:1.75rem;margin-right:1.75rem;font-size:0.875rem;font-weight:bold}")}function dc(i){let t,e;return t=new au({props:{onClick:i[0].disable}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.onClick=n[0].disable),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function hc(i){let t,e,n,s;return e=new e0({props:{options:[{key:"line",value:"测距离"},{key:"area",value:"测面积"}],defaultKey:i[0].currentMeasureType,onChange:i[0].changeMeasureType}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","mode-switcher svelte-ldjbp8")},m(o,r){B(o,t,r),te(e,t,null),s=!0},p(o,r){i=o;const a={};r&1&&(a.defaultKey=i[0].currentMeasureType),r&1&&(a.onChange=i[0].changeMeasureType),e.$set(a)},i(o){s||(M(e.$$.fragment,o),o&&Ne(()=>{s&&(n||(n=_t(t,tt,{duration:fi},!0)),n.run(1))}),s=!0)},o(o){j(e.$$.fragment,o),o&&(n||(n=_t(t,tt,{duration:fi},!1)),n.run(0)),s=!1},d(o){o&&O(t),ne(e),o&&n&&n.end()}}}function uc(i){let t,e,n,s,o,r,a;return{c(){t=x("div"),e=x("div"),n=Me(`
|
|
518
518
|
撤销`),w(e,"class","icon svelte-ldjbp8"),z(e,"background-image",`url(${lu})`),w(t,"class","button svelte-ldjbp8"),K(t,"forbid",i[2]==="start")},m(l,c){B(l,t,c),D(t,e),D(t,n),o=!0,r||(a=be(t,"click",i[12]),r=!0)},p(l,c){i=l,(!o||c&4)&&K(t,"forbid",i[2]==="start")},i(l){o||(l&&Ne(()=>{o&&(s||(s=_t(t,tt,{duration:fi},!0)),s.run(1))}),o=!0)},o(l){l&&(s||(s=_t(t,tt,{duration:fi},!1)),s.run(0)),o=!1},d(l){l&&O(t),l&&s&&s.end(),r=!1,a()}}}function fc(i){let t,e,n,s,o,r,a;return{c(){t=x("div"),e=x("div"),n=Me(`
|
|
519
|
-
结束`),w(e,"class","icon svelte-ldjbp8"),z(e,"background-image",`url(${cu})`),w(t,"class","button svelte-ldjbp8")},m(l,c){B(l,t,c),D(t,e),D(t,n),o=!0,r||(a=be(t,"click",i[9]),r=!0)},p(l,c){i=l},i(l){o||(l&&Ne(()=>{o&&(s||(s=_t(t,tt,{duration:fi},!0)),s.run(1))}),o=!0)},o(l){l&&(s||(s=_t(t,tt,{duration:fi},!1)),s.run(0)),o=!1},d(l){l&&O(t),l&&s&&s.end(),r=!1,a()}}}function r0(i){let t,e,n,s,o,r,a,l,c,d,h,u,m,A=i[1]&&dc(i),p=i[0].allowMeasureType.length>=2&&i[2]==="start"&&hc(i),g=i[3]&&uc(i);h=new s0({props:{onClick:i[13],text:i[5][i[2]],color:i[6][i[2]]}});let b=i[3]&&fc(i);return{c(){t=x("div"),A&&A.c(),e=ee(),n=x("div"),s=x("div"),o=ee(),r=x("div"),p&&p.c(),a=ee(),l=x("div"),g&&g.c(),c=ee(),d=x("div"),ie(h.$$.fragment),u=ee(),b&&b.c(),w(s,"class","mask svelte-ldjbp8"),w(d,"class","main-button svelte-ldjbp8"),K(d,"forbid",!i[4]),w(l,"class","controller svelte-ldjbp8"),w(r,"class","center svelte-ldjbp8"),w(n,"class","bottom svelte-ldjbp8"),w(t,"class","Measure-Controller svelte-ldjbp8")},m(y,I){B(y,t,I),A&&A.m(t,null),D(t,e),D(t,n),D(n,s),D(n,o),D(n,r),p&&p.m(r,null),D(r,a),D(r,l),g&&g.m(l,null),D(l,c),D(l,d),te(h,d,null),D(l,u),b&&b.m(l,null),m=!0},p(y,[I]){y[1]?A?(A.p(y,I),I&2&&M(A,1)):(A=dc(y),A.c(),M(A,1),A.m(t,e)):A&&(de(),j(A,1,1,()=>{A=null}),he()),y[0].allowMeasureType.length>=2&&y[2]==="start"?p?(p.p(y,I),I&5&&M(p,1)):(p=hc(y),p.c(),M(p,1),p.m(r,a)):p&&(de(),j(p,1,1,()=>{p=null}),he()),y[3]?g?(g.p(y,I),I&8&&M(g,1)):(g=uc(y),g.c(),M(g,1),g.m(l,c)):g&&(de(),j(g,1,1,()=>{g=null}),he());const k={};I&4&&(k.onClick=y[13]),I&4&&(k.text=y[5][y[2]]),I&4&&(k.color=y[6][y[2]]),h.$set(k),(!m||I&16)&&K(d,"forbid",!y[4]),y[3]?b?(b.p(y,I),I&8&&M(b,1)):(b=fc(y),b.c(),M(b,1),b.m(l,null)):b&&(de(),j(b,1,1,()=>{b=null}),he())},i(y){m||(M(A),M(p),M(g),M(h.$$.fragment,y),M(b),m=!0)},o(y){j(A),j(p),j(g),j(h.$$.fragment,y),j(b),m=!1},d(y){y&&O(t),A&&A.d(),p&&p.d(),g&&g.d(),ne(h),b&&b.d()}}}const fi=100;function a0(i,t,e){let{measureController:n}=t,{showExit:s=!1}=t;const o={start:"开始",add:"添加",end:"结束",complete:"完成"},r={start:"white",add:"white",end:"blue",complete:"blue"};let a=!1,l=!0,c="start",d=n.currentMeasureType;const h=()=>{n.getCurrentMode()!=="Edit"?n.changeMode("Edit"):(A("add"),u())},u=()=>{n.controller instanceof dn&&n.controller.selectPoint()},m=()=>{n.controller instanceof dn&&n.controller.complete()},A=W=>{e(2,c=W)},p=()=>{u(),k("allow")},g=()=>{A("complete")},b=()=>{n.currentMeasureType==="area"&&c==="complete"&&A("add")},y=W=>{W.length},I=()=>{A("start"),k("allow")},k=W=>{e(4,l=W==="allow")},T=W=>{e(11,d=W)},P=W=>{W.isEmpty&&A("start")};vt(()=>{n.hook.on("revoke",P),n.hook.on("measureTypeChange",T),n.hook.on("modeChange",I),n.hook.on("pointsChange",y),n.hook.on("allowAddPointStateChange",k),n.hook.on("readyComplete",g),n.hook.on("notReadyComplete",b),n.hook.on("complete",I)}),Lt(()=>{n.hook.off("measureTypeChange",T),n.hook.off("modeChange",I),n.hook.off("allowAddPointStateChange",k),n.hook.off("readyComplete",g),n.hook.off("pointsChange",y),n.hook.off("notReadyComplete",b),n.hook.off("complete",I)});const V=()=>n.revoke(),L=()=>{c==="start"?h():c==="add"?u():(c==="end"||c==="complete")&&p()};return i.$$set=W=>{"measureController"in W&&e(0,n=W.measureController),"showExit"in W&&e(1,s=W.showExit)},i.$$.update=()=>{i.$$.dirty&2052&&e(3,a=d==="area"&&c!=="start")},[n,s,c,a,l,o,r,h,u,m,p,d,V,L]}class l0 extends le{constructor(t){super(),ae(this,t,a0,r0,oe,{measureController:0,showExit:1},o0)}}class c0{constructor(t,e){f(this,"revoke");f(this,"container");f(this,"mainController");f(this,"disposers",[]);f(this,"measureController");f(this,"mode");f(this,"svelteDom");f(this,"_params");f(this,"handleExit",()=>{const t=this.container.querySelector(".fpm__exit-icon"),e=this.container.querySelector(".fpm__exit");if(!e||!t)throw new Error("cannot find dom");this.mode==="pc"&&(Object.assign(e.style,Lv),Object.assign(t==null?void 0:t.style,jv));const n=()=>{e.style.opacity="1"},s=()=>{e.style.opacity="0.85"},o=()=>{this.measureController.disable()};return e.addEventListener("click",o),e.addEventListener("mouseenter",n),e.addEventListener("mouseleave",s),()=>{e.removeEventListener("click",o),e.removeEventListener("mouseenter",n),e.removeEventListener("mouseleave",s)}});var s,o;this._params=e,this.measureController=t,this.mode=(s=e.mode)!=null?s:"pc",this.container=document.createElement("div"),this.container.innerHTML=this.mode==="mobile"?Ev:xv,this.container.classList.add("fpm__ui-controller",this.mode),this.container.style.background="rgba(0, 0, 0, 0.15)";const n=(o=e.useNewUI)!=null?o:!1;if(n&&(e.pointSelectorMode==="cursor"?this.svelteDom=new Jv({target:e.container,props:{measureController:this.measureController,showExit:e.showExit}}):e.pointSelectorMode==="fixed"&&(this.svelteDom=new l0({target:e.container,props:{measureController:this.measureController,showExit:e.showExit}}))),!n){e.container.appendChild(this.container);const r=this.container.querySelectorAll(".fpm__text"),a=this.container.querySelector(".fpm_ui-bg"),l=this.container.querySelector(".fpm_operating-space");Object.assign(a==null?void 0:a.style,Tv),Object.assign(l==null?void 0:l.style,Sv),Object.assign(this.container.style,Dv),r.forEach(c=>Object.assign(c.style,zv))}}dispose(){var t;this.hide(),(t=this.svelteDom)==null||t.$destroy(),this.container.remove()}show(){return this.container.style.display="block",this.container.style.opacity="1",this.container.style.transform="translate(0, 0)",this.mode==="pc"?(this.revoke=new Vv(this.measureController,this.container),this.mainController=new Ov(this.measureController,this.container,this._params)):this.mainController=new Bv(this.measureController,this.container,this._params),this.disposers.push(this.handleExit()),this}hide(){var t,e;return this.container.style.display="none",this.container.style.opacity="0",this.container.style.transform="translate(0, 10px)",this.mode==="pc"&&((t=this.revoke)==null||t.dispose()),(e=this.mainController)==null||e.dispose(),this.disposers.forEach(n=>n()),this.disposers=[],this}}var It=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},Xe={},d0={get exports(){return Xe},set exports(i){Xe=i}};function lo(i){return i===null?"null":typeof i=="undefined"?"undefined":typeof i=="object"?Array.isArray(i)?"array":"object":typeof i}function du(i){return lo(i)==="object"?$r(i):lo(i)==="array"?Kr(i):i}function Kr(i){return i.map(du)}function $r(i){const t={};for(const e in i)i.hasOwnProperty(e)&&(t[e]=du(i[e]));return t}function ko(i,t=[],e={}){const n={arrayBehaviour:e.arrayBehaviour||"replace"},s=t.map(r=>r||{}),o=i||{};for(let r=0;r<s.length;r++){const a=s[r],l=Object.keys(a);for(let c=0;c<l.length;c++){const d=l[c],h=a[d],u=lo(h),m=lo(o[d]);if(u==="object")if(m!=="undefined"){const A=m==="object"?o[d]:{};o[d]=ko({},[A,$r(h)],n)}else o[d]=$r(h);else if(u==="array")if(m==="array"){const A=Kr(h);o[d]=n.arrayBehaviour==="merge"?o[d].concat(A):A}else o[d]=Kr(h);else o[d]=h}}return o}d0.exports=function(t,...e){return ko(t,e)};Xe.noMutate=function(...t){return ko({},t)};Xe.withOptions=function(t,e,n){return ko(t,e,n)};function h0(i){ue(i,"svelte-1q8gtp4",".Measure-Tips.svelte-1q8gtp4.svelte-1q8gtp4{box-sizing:border-box;position:absolute;pointer-events:none;top:0;width:100%;padding:0 2.5rem}.Measure-Tips.svelte-1q8gtp4 .text.svelte-1q8gtp4{text-align:center;position:relative;max-width:100%;top:3.125rem;color:#fff;word-break:break-all;word-wrap:break-word;text-shadow:0 0.0625rem 0.375rem rgba(0, 0, 0, 0.5);font-size:1.25rem;font-weight:bold}")}function mc(i){let t,e,n,s,o;return{c(){t=x("div"),e=x("div"),n=Me(i[2]),w(e,"class","text svelte-1q8gtp4"),w(t,"class","Measure-Tips svelte-1q8gtp4")},m(r,a){B(r,t,a),D(t,e),D(e,n),i[6](e),o=!0},p(r,a){(!o||a&4)&&Oe(n,r[2])},i(r){o||(Ne(()=>{o&&(s||(s=_t(t,tt,{},!0)),s.run(1))}),o=!0)},o(r){s||(s=_t(t,tt,{},!1)),s.run(0),o=!1},d(r){r&&O(t),i[6](null),r&&s&&s.end()}}}function u0(i){let t,e,n=i[0]&&mc(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0]?n?(n.p(s,o),o&1&&M(n,1)):(n=mc(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function f0(i,t,e){let{measureController:n}=t,{tips:s}=t,{tipStyle:o={}}=t,{visible:r=!0}=t,a=null;const l=g=>{const b=n.currentMeasureType;let y="";return y=s[g],y===void 0&&(y=s[b][g]),y},c=g=>{e(2,h=l(g))},d=()=>{e(2,h="")};let h="";const u=g=>{g==="Edit"&&n.changeMeasureType?c("start"):d()},m=()=>{n.getCurrentMode()==="Watch"&&d()},A=g=>{n.currentMeasureType==="area"&&(g.length>=2?c("close"):g.length===0?c("start"):d())};vt(()=>{u(n.getCurrentMode()),n.hook.on("modeChange",u),n.hook.on("complete",m),n.hook.on("pointsChange",A),n.hook.on("measureTypeChange",d)}),Lt(()=>{n.hook.off("modeChange",u),n.hook.off("complete",m),n.hook.off("pointsChange",A),n.hook.off("measureTypeChange",d),d()});function p(g){Qe[g?"unshift":"push"](()=>{a=g,e(1,a),e(5,o)})}return i.$$set=g=>{"measureController"in g&&e(3,n=g.measureController),"tips"in g&&e(4,s=g.tips),"tipStyle"in g&&e(5,o=g.tipStyle),"visible"in g&&e(0,r=g.visible)},i.$$.update=()=>{if(i.$$.dirty&34&&a)for(const g in o)o.hasOwnProperty(g)&&e(1,a.style[g]=o[g],a)},[r,a,h,n,s,o,p]}class m0 extends le{constructor(t){super(),ae(this,t,f0,u0,oe,{measureController:3,tips:4,tipStyle:5,visible:0},h0)}}const g0={line:{start:"选择一个合适的位置开始测量,点击【结束】或【鼠标右键】结束测量"},area:{start:"选择一个合适的位置开始绘制平面",close:"选择3个点后将闭合平面,点击【结束】或【鼠标右键】将自动闭合"}},p0={line:{start:""},area:{start:"",close:"选择3个点后将闭合平面,点击结束自动闭合"}};class A0{constructor(t,e){f(this,"tipSvelteDom");this.tipSvelteDom=new m0({target:e.container,props:{measureController:t,tips:Xe({},e.pointSelectorMode==="fixed"?p0:g0,e.tips),visible:!0,tipStyle:e.tipStyle}})}dispose(){var t;(t=this.tipSvelteDom)==null||t.$destroy()}show(){var t;return(t=this.tipSvelteDom)==null||t.$set({visible:!0}),this}hide(){var t;return(t=this.tipSvelteDom)==null||t.$set({visible:!1}),this}}class v0{constructor(t,e){f(this,"five");f(this,"measureController");f(this,"onKeyDown",t=>{if(t.metaKey&&t.code==="KeyS"){this.measureController.save().changeMode("Watch"),t.preventDefault();return}if(t.code==="Escape")return this.escape()});f(this,"onMouseDown",t=>{t.button===2&&(t.preventDefault(),this.escape())});this.five=e,this.measureController=t;const n=this.five.getElement();n&&(document.body.addEventListener("keydown",this.onKeyDown),n.addEventListener("mousedown",this.onMouseDown))}dispose(){const t=this.five.getElement();t&&(document.body.removeEventListener("keydown",this.onKeyDown),t.removeEventListener("mousedown",this.onMouseDown))}escape(){return this.measureController.getCurrentMode()==="Watch"?this.measureController.disable():this.measureController.save().changeMode("Watch")}}function gc(i){return typeof i=="object"?i===null?{}:i:{}}class b0{constructor(t,e){f(this,"hasOpen",!1);f(this,"hook",new Te.Subscribe);f(this,"magnifier");f(this,"controller",null);f(this,"allowMeasureType");f(this,"currentMeasureType");f(this,"five");f(this,"model");f(this,"group");f(this,"config");f(this,"isMobile");f(this,"useUIController");f(this,"params");f(this,"useGuideController");f(this,"container",document.createElement("div"));f(this,"shortcutKeyController");f(this,"disable",()=>{var t,e,n,s;this.hasOpen=!1,this.container.style.opacity="0",(t=this.controller)==null||t.dispose(),(e=this.useUIController)==null||e.hide(),(n=this.useGuideController)==null||n.hide(),(s=this.shortcutKeyController)==null||s.dispose(),this.controller=null,this.five.helperVisible=!0,this.five.scene.remove(this.group),this.five.needsRender=!0,this.hook.emit("disable",!0)});f(this,"getCurrentMode",()=>this.controller instanceof dn?"Edit":this.controller instanceof $l?"Watch":this.controller instanceof Hi?"Mixed":this.controller instanceof ql?"View":null);f(this,"changeMode",t=>{var s;if(!this.hasOpen||this.getCurrentMode()===t)return;(s=this.controller)==null||s.dispose();const e={View:ql,Watch:$l,Edit:dn,Mixed:Hi};if(!e[t])throw new Error("不存在的 Mode");const n=this.createControllerParams();this.controller=new e[t](n),this.hook.emit("modeChange",t)});f(this,"changeMeasureType",t=>{this.currentMeasureType=t,this.hook.emit("measureTypeChange",t)});var o,r,a,l,c,d,h,u,m;this.five=t,this.params=e,this.config=Po(e,["openParams","magnifierParams"]),this.model=new ja(this.config),this.isMobile=(r=(o=e==null?void 0:e.openParams)==null?void 0:o.isMobile)!=null?r:!1,this.magnifier=new da(t,(a=e.magnifierParams)!=null?a:{width:190,height:190,scale:2}),this.allowMeasureType=Array.from(new Set((c=(l=e.editParams)==null?void 0:l.allowMeasureType)!=null?c:["line"])),this.currentMeasureType=(d=this.allowMeasureType[0])!=null?d:"line",this.group=new R.Group,this.group.name="plugin-measure-group",this.container.classList.add("five-plugin-measure-container"),this.container.style.position="absolute",this.container.style.left="0",this.container.style.top="0",this.container.style.pointerEvents="none",this.container.style.width="100%",this.container.style.height="100%",this.container.style.opacity="0";const n=(u=(h=e.editParams)==null?void 0:h.pointSelectorMode)!=null?u:iu?"fixed":"cursor",s=(m=this.params.openParams)!=null?m:{};if(this.params.useUIController!==!1){const A=H({container:this.container,openParams:s,pointSelectorMode:n},gc(this.params.useUIController));this.useUIController=new c0(this,A)}if(this.params.useGuideController!==!1){const A=H({container:this.container,pointSelectorMode:n},gc(this.params.useGuideController));this.useGuideController=new A0(this,A)}}appendTo(t){t.append(this.container)}clear(){this.model.clear()}dispose(){var t,e;this.disable(),this.clear(),(t=this.useUIController)==null||t.dispose(),(e=this.magnifier)==null||e.dispose(),this.five.needsRender=!0}load(t){this.model.parse(t),this.save()}enable(t){var e;this.hasOpen||(this.hasOpen=!0,this.five.scene.add(this.group),this.container.style.opacity="1",t!=null&&t.mode?this.changeMode(t.mode):this.isMobile?this.changeMode("Mixed"):this.changeMode("Watch"),(e=this.useUIController)==null||e.show(),this.shortcutKeyController=new v0(this,this.five),this.hook.emit("enable",!0))}edit(t){t&&this.changeMeasureType(t);const e=this.isMobile?"Mixed":"Edit";this.changeMode(e)}revoke(){this.controller instanceof dn&&this.controller.revoke()}removePolyline(t){this.model.removePolyline(t)}removeArea(t){this.model.removeArea(t)}removePolylineByID(t){const e=this.model.getPolylineByID(t);e&&this.model.removePolyline(e)}getPolylineByID(t){return this.model.getPolylineByID(t)}getEditedPolyline(){}highlightLine(t){if(this.getCurrentMode()!=="Watch")return!1;const e=this.model.getLineByID(t);return e?(this.controller.highlightLine(e),!0):!1}clearHighlightLines(){return this.getCurrentMode()!=="Watch"?!1:(this.controller.clearHighlightLines(),!0)}save(t){var o;if(!(this.controller instanceof dn)&&!(this.controller instanceof Hi))return this;const e=(o=t==null?void 0:t.mode)!=null?o:"View",n=this.controller.model.polylines,s=this.controller.model.areas;return n.forEach(r=>{this.model.addPolyline(r)}),this.controller instanceof dn?this.controller.complete():s.forEach(r=>{r.showArea(),this.model.addArea(r)}),this.changeMode(e),this}addStartPoint(){this.controller instanceof Hi&&this.hook.emit("willChangeState","watching","editing")}addEndPoint(){this.controller instanceof Hi&&this.hook.emit("willChangeState","editing","watching")}toJson(){return this.model.toJson()}changeIsMobile(t){}changeConfigs(t){var e;Object.assign(this.config,t),(e=this.controller)==null||e.updateDistanceUI()}setCustomText(t,e){var s;const n=this.model.getLineByID(t);if(!n)throw new Error("不存在的线段");n.setText(e),(s=this.controller)==null||s.updateDistanceUI()}createControllerParams(){var n,s;const t=(n=this.params.openParams)!=null?n:{},e=(s=this.params.editParams)!=null?s:{};return t.isMobile=this.isMobile,{five:this.five,hook:this.hook,group:this.group,model:this.model,config:this.config,magnifier:this.magnifier,container:this.container,openParams:t,editParams:e,magnifierParams:this.params.magnifierParams,getMeasureType:()=>this.currentMeasureType,mouseGroup:su(H({},t.crossHairParameter)),userDistanceItemCreator:this.params.userDistanceItemCreator}}}function Bs(i,t,e){const n=i[t],s=i[e];n===void 0||s===void 0||(i[t]=s,i[e]=n)}function y0(i,t,e){const n=e/2;for(let s=1;s<=n;s++){const o=e-(s-1);for(let r=1;r<=t;r++){const a=(s-1)*t+r-1,l=(o-1)*t+r-1;Bs(i,a*4+0,l*4+0),Bs(i,a*4+1,l*4+1),Bs(i,a*4+2,l*4+2),Bs(i,a*4+3,l*4+3)}}}class w0{constructor(t,e){f(this,"width");f(this,"height");f(this,"containerDom");f(this,"hooks",new Te.Subscribe);f(this,"canvas",document.createElement("canvas"));f(this,"five");f(this,"scale");f(this,"config");f(this,"offset",{x:0,y:0});f(this,"context");f(this,"renderCenter",new E.Vector3);f(this,"hammer");f(this,"state",{enabled:!1});f(this,"offsetRange");f(this,"isPanning",!1);f(this,"onPanstart",()=>{this.isPanning=!0,this.canvas.style.boxShadow="0 2px 30px 0 rgba(0,0,0,0.20)"});f(this,"onPan",t=>{if(!this.isPanning||!this.offsetRange||this.hooks.emit("wantsPanGesture",t))return;const{translateX:n,translateY:s}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${n}px, ${s}px, 100px)`});f(this,"onPanend",t=>{if(this.isPanning=!1,this.canvas.style.boxShadow="none",!this.offsetRange)return;const{translateX:e,translateY:n}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${e}px, ${n}px, 100px)`,this.offset={x:e,y:n}});var s,o,r;if(!t.renderer)throw new Error("Five Render 未初始化");this.five=t,this.scale=(s=e==null?void 0:e.scale)!=null?s:2,this.width=(o=e==null?void 0:e.width)!=null?o:190,this.height=(r=e==null?void 0:e.height)!=null?r:190,this.config={dragEnabled:(e==null?void 0:e.dragEnabled)||!1,autoFixPCPosition:(e==null?void 0:e.autoFixPCPosition)||!1,initialPosition:(e==null?void 0:e.initialPosition)||{left:"0",top:"0"}};const n=this.canvas.getContext("2d");if(!n)throw new Error("CANNOT CREATE CONTEXT2D");this.context=n,this.config.dragEnabled&&(this.hammer=new ss(this.canvas),this.hammer.on("pan",this.onPan),this.hammer.on("panstart",this.onPanstart),this.hammer.on("panend",this.onPanend)),this.initStyle()}dispose(){var t;this.clear(),this.disable(),(t=this.hammer)==null||t.destroy()}enable(){if(!this.state.enabled)return this.state.enabled=!0,this.containerDom&&this._appendTo(this.containerDom),this}disable(){if(this.state.enabled)return this.state.enabled=!1,this.canvas.remove(),this}appendTo(t){return this.containerDom=t,this.state.enabled&&this._appendTo(t),this}clear(){return this.context.clearRect(0,0,this.canvas.width,this.canvas.height),this}renderWithPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}renderWithScreenPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}resetOffset(){this.offset={x:0,y:0},this.canvas.style.transform="translate3d(0px, 0px, 100px)"}getCurrentState(){return{enabled:this.state.enabled}}getRenderCenter(){return this.renderCenter}_appendTo(t){if(this.resetOffset(),t.appendChild(this.canvas),!this.offsetRange){const e=this.canvas.getBoundingClientRect(),n=t.getBoundingClientRect(),s=n.right-e.right,o=n.bottom-e.bottom,r=n.left-e.left,a=n.top-e.top;this.offsetRange={min:{x:r,y:a},max:{x:s,y:o}}}}autoFixPCPosition(){if(!this.containerDom)return;const{width:t,height:e}=this,[n,s,o]=(()=>{if(this.renderCenter instanceof E.Vector3){const r=this.renderCenter.clone().project(this.five.camera);return[(r.x+1)/2*this.containerDom.clientWidth,-(r.x-1)/2*this.containerDom.clientWidth,-(r.y-1)/2*this.containerDom.clientHeight]}else return[this.renderCenter.x,this.containerDom.clientWidth-this.renderCenter.x,this.renderCenter.y]})();n<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left="90px"):o<183?(this.canvas.style.top="90px",this.canvas.style.left=-t/2+"px"):s<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=-t-90+"px"):(this.canvas.style.left=-t/2+"px",this.canvas.style.top=-e-90+"px"),this.canvas.style.transform=`translate3d(${n}px, ${o}px, 10px)`,this.offset={x:n,y:o}}render(){if(!this.five.renderer||!this.containerDom)return;const{scale:t,context:e,width:n,height:s}=this,o=this.five.renderer.getSize(new E.Vector2),[r,a]=(()=>{if(this.renderCenter instanceof E.Vector3){const g=this.renderCenter.clone().project(this.five.camera);return[(g.x+1)/2*o.x,(g.y+1)/2*o.y]}else return[this.renderCenter.x,o.y-this.renderCenter.y]})(),l=1,c=n/t,d=s/t,h=l*t,u=this.five.getPixels(r-c/2,a-c/2,c,d,h),m=Math.floor(n*l),A=Math.floor(s*l);y0(u,m,A);const p=new ImageData(m,A);p.data.set(u),e.putImageData(p,0,0)}initStyle(){const t=this.canvas;t.classList.add("five-plugin__magnifier"),t.style.position="absolute",t.style.pointerEvents="all",t.style.borderRadius="50%",t.style.zIndex="99";const e=1;t.setAttribute("width",(this.width*e).toString()),t.setAttribute("height",(this.height*e).toString()),t.style.border="2px solid rgba(255,255,255,0.20)",t.style.width=this.width+"px",t.style.height=this.height+"px",t.style.top=this.config.initialPosition.top,t.style.left=this.config.initialPosition.left,t.style.transform="translate(0,0,100px)",this.config.dragEnabled&&(this.canvas.style.cursor="pointer")}getPanOffset(t,e){const{min:{x:n,y:s},max:{x:o,y:r}}=e,a=this.offset.x+t.deltaX,l=this.offset.y+t.deltaY,c=Math.min(Math.max(a,n),o),d=Math.min(Math.max(l,s),r);return{translateX:c,translateY:d}}}const C0=function(t,e){return new b0(t,e)},hu=Pa(null);function I0(i){ue(i,"svelte-19zi46m",".PanoSpatialTagPlugin__tag-origin.svelte-19zi46m{position:absolute;width:0.5rem;height:0.5rem;border-radius:50%;background:#fff;box-shadow:0 0 .6rem #fff;transform:translate(-50%, -50%) scale(1);transform-origin:center center;animation:svelte-19zi46m-PanoSpatialTagPlugin__tag-origin 1.2s forwards;pointer-events:auto}.PanoSpatialTagPlugin__tag-origin.svelte-19zi46m:after{content:'';position:absolute;top:50%;height:50%;width:2rem;height:2rem;transform:translate(-50%, -50%)}.PanoSpatialTagPlugin__tag-origin-destroy.svelte-19zi46m{transform:translate(-50%, -50%) scale(0.6);animation:svelte-19zi46m-PanoSpatialTagPlugin__tag-origin-destroy 1.2s forwards .7s}@keyframes svelte-19zi46m-PanoSpatialTagPlugin__tag-origin{0%{transform:translate(-50%, -50%) scale(1);opacity:0}100%{transform:translate(-50%, -50%) scale(0.6);opacity:1 }}@keyframes svelte-19zi46m-PanoSpatialTagPlugin__tag-origin-destroy{0%{transform:translate(-50%, -50%) scale(0.6);opacity:1}10%{transform:translate(-50%, -50%) scale(1);opacity:0.9}100%{transform:translate(-50%, -50%) scale(1);opacity:0}}")}function pc(i,t,e){const n=i.slice();return n[3]=t[e],n}function Ac(i){let t,e=`${i[3].top}%`,n=`${i[3].left}%`,s,o;function r(){return i[2](i[3])}return{c(){t=x("i"),w(t,"class","svelte-19zi46m"),K(t,"PanoSpatialTagPlugin__tag-origin",!0),K(t,"PanoSpatialTagPlugin__tag-origin-destroy",i[3].destroying),z(t,"top",e),z(t,"left",n),z(t,"visibility",i[3].front?"visible":"hidden")},m(a,l){B(a,t,l),s||(o=be(t,"click",r),s=!0)},p(a,l){i=a,l&1&&K(t,"PanoSpatialTagPlugin__tag-origin-destroy",i[3].destroying),l&1&&e!==(e=`${i[3].top}%`)&&z(t,"top",e),l&1&&n!==(n=`${i[3].left}%`)&&z(t,"left",n),l&1&&z(t,"visibility",i[3].front?"visible":"hidden")},d(a){a&&O(t),s=!1,o()}}}function P0(i){let t,e=i[0],n=[];for(let s=0;s<e.length;s+=1)n[s]=Ac(pc(i,e,s));return{c(){for(let s=0;s<n.length;s+=1)n[s].c();t=Pe()},m(s,o){for(let r=0;r<n.length;r+=1)n[r]&&n[r].m(s,o);B(s,t,o)},p(s,[o]){if(o&3){e=s[0];let r;for(r=0;r<e.length;r+=1){const a=pc(s,e,r);n[r]?n[r].p(a,o):(n[r]=Ac(a),n[r].c(),n[r].m(t.parentNode,t))}for(;r<n.length;r+=1)n[r].d(1);n.length=e.length}},i:J,o:J,d(s){Tt(n,s),s&&O(t)}}}function E0(i,t,e){let{origins:n}=t;const s=r=>{hu.update(()=>`${r}-PanoSpatialTagPlugin-${Date.now()}`)},o=r=>s(r.id);return i.$$set=r=>{"origins"in r&&e(0,n=r.origins)},[n,s,o]}class k0 extends le{constructor(t){super(),ae(this,t,E0,P0,oe,{origins:0},I0)}}function M0(i){ue(i,"svelte-9m6drd",`.PanoSpatialTagPlugin__tag-x.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0;display:block;white-space:nowrap;box-sizing:border-box;width:25rem;height:14rem;color:#fff;transform:translate(0, -100%);transition:height 0.5s linear}.PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd.svelte-9m6drd{content:'';position:absolute;width:30rem;height:30rem;top:-15rem;left:-15rem;z-index:-1;opacity:0;transition:opacity 0.8s 0.6s;background:url('https://vrlab-image4.ljcdn.com/release/web/PanoSpatialTagPlugin__blur.png');background-size:30rem 30rem}.PanoSpatialTagPlugin__tag-line.svelte-9m6drd.svelte-9m6drd{position:absolute;left:-1rem;width:2rem;height:100%;overflow:hidden}.PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:1rem;height:calc(100% - 1.5rem);width:0.15rem;background:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.1));box-shadow:0 0.1rem 0.5rem rgba(0, 0, 0, 0.2);opacity:0;transform:translate(-50%, 60%) scaleY(0);transition:transform 0.4s cubic-bezier(0.44, 0.44, 0.74, 0.98), opacity 0.4s cubic-bezier(0.44, 0.44, 0.74, 0.98), width 0.5s linear,
|
|
520
|
-
height 0.5s linear;transform-origin:center bottom}.PanoSpatialTagPlugin__tag-line1.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0.3rem;height:1.8rem;width:0.1rem;background:#fff;opacity:0;transform:translate(-50%, 200%) scaleY(0);transform-origin:center top}.PanoSpatialTagPlugin__tag-line2.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0.5rem;height:1.8rem;width:0.1rem;background:#fff;opacity:0;transform:translate(-50%, 200%) scaleY(0);transform-origin:center top}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-line1.svelte-9m6drd{animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line1 linear 0.5s forwards 0.45s}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-line2.svelte-9m6drd{animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line2 linear 0.5s forwards 0.65s}.PanoSpatialTagPlugin__tag-x.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd.svelte-9m6drd{transform:translate(0, 0)}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-line.svelte-9m6drd{transform:scaleY(-1)}.PanoSpatialTagPlugin__tag-animate.svelte-9m6drd.svelte-9m6drd{position:relative;height:100%;overflow:hidden;transform-origin:left top;transition:transform 0.5s linear}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-animate.svelte-9m6drd{transform-origin:left bottom}.PanoSpatialTagPlugin__tag-content.svelte-9m6drd.svelte-9m6drd{position:absolute;display:inline-block;transform:translate(-100%, 0);transition:transform 0.9s cubic-bezier(0, 0.65, 0.16, 1.08) 0.6s;padding-left:0.5rem;font-size:1rem}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{bottom:0}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd{opacity:1;transform:translate(-50%, 0) scaleY(1)}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{top:unset;bottom:-15rem}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{opacity:0.32}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{transform:translate(0, 0)}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd{opacity:0;transform:translate(-50%, 60%) scaleY(0);transition:transform 0.5s 0.55s, opacity 0.4s 0.55s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{opacity:0;transition:opacity 0.8s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{transform:translate(-100%, 0);transition:transform 0.6s cubic-bezier(0.53, 0.06, 0.88, 0.59)}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-content .svelte-9m6drd{pointer-events:none}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-line1.svelte-9m6drd{opacity:0.5;transform:translate(-50%, 10%) scaleY(0);animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line1-hide linear 0.28s forwards 0.3s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-line2.svelte-9m6drd{opacity:0.5;transform:translate(-50%, 0) scaleY(0);animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line2-hide linear 0.28s forwards 0.45s}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line1{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 135%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 20%) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line2{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 125%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line1-hide{0%{opacity:0.5;transform:translate(-50%, 10%) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 105%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line2-hide{0%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 100%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}`)}function x0(i){let t,e,n,s,o,r,a,l,c,d,h,u,m,A,p;return{c(){t=x("div"),e=x("div"),n=ee(),s=x("div"),o=x("i"),r=ee(),a=x("i"),l=ee(),c=x("i"),d=ee(),h=x("div"),u=x("div"),w(e,"class","PanoSpatialTagPlugin__tag-shadow svelte-9m6drd"),z(e,"transform","translate("+i[7]/2*i[3]*3+"px, "+i[8]/2*(i[1]?-1:1)*i[3]*3+"px) scale("+1/i[3]+")"),w(o,"class","PanoSpatialTagPlugin__tag-flagpole svelte-9m6drd"),z(o,"width",i[4]+"rem"),w(a,"class","PanoSpatialTagPlugin__tag-line1 svelte-9m6drd"),w(c,"class","PanoSpatialTagPlugin__tag-line2 svelte-9m6drd"),w(s,"class","PanoSpatialTagPlugin__tag-line svelte-9m6drd"),w(u,"class","PanoSpatialTagPlugin__tag-content svelte-9m6drd"),w(h,"class","PanoSpatialTagPlugin__tag-animate svelte-9m6drd"),z(h,"transform","scale("+i[3]*3+")"),w(t,"id",m="PanoSpatialTagPlugin__"+i[0]),z(t,"height",20*i[5]+"rem"),w(t,"class","svelte-9m6drd"),K(t,"PanoSpatialTagPlugin__tag-x",!0),K(t,"PanoSpatialTagPlugin__tag-upside-down",i[1]),K(t,"PanoSpatialTagPlugin__tag-show",i[10]),K(t,"PanoSpatialTagPlugin__tag-hide",i[10]===!1||i[6])},m(g,
|
|
519
|
+
结束`),w(e,"class","icon svelte-ldjbp8"),z(e,"background-image",`url(${cu})`),w(t,"class","button svelte-ldjbp8")},m(l,c){B(l,t,c),D(t,e),D(t,n),o=!0,r||(a=be(t,"click",i[9]),r=!0)},p(l,c){i=l},i(l){o||(l&&Ne(()=>{o&&(s||(s=_t(t,tt,{duration:fi},!0)),s.run(1))}),o=!0)},o(l){l&&(s||(s=_t(t,tt,{duration:fi},!1)),s.run(0)),o=!1},d(l){l&&O(t),l&&s&&s.end(),r=!1,a()}}}function r0(i){let t,e,n,s,o,r,a,l,c,d,h,u,m,A=i[1]&&dc(i),p=i[0].allowMeasureType.length>=2&&i[2]==="start"&&hc(i),g=i[3]&&uc(i);h=new s0({props:{onClick:i[13],text:i[5][i[2]],color:i[6][i[2]]}});let v=i[3]&&fc(i);return{c(){t=x("div"),A&&A.c(),e=ee(),n=x("div"),s=x("div"),o=ee(),r=x("div"),p&&p.c(),a=ee(),l=x("div"),g&&g.c(),c=ee(),d=x("div"),ie(h.$$.fragment),u=ee(),v&&v.c(),w(s,"class","mask svelte-ldjbp8"),w(d,"class","main-button svelte-ldjbp8"),K(d,"forbid",!i[4]),w(l,"class","controller svelte-ldjbp8"),w(r,"class","center svelte-ldjbp8"),w(n,"class","bottom svelte-ldjbp8"),w(t,"class","Measure-Controller svelte-ldjbp8")},m(y,I){B(y,t,I),A&&A.m(t,null),D(t,e),D(t,n),D(n,s),D(n,o),D(n,r),p&&p.m(r,null),D(r,a),D(r,l),g&&g.m(l,null),D(l,c),D(l,d),te(h,d,null),D(l,u),v&&v.m(l,null),m=!0},p(y,[I]){y[1]?A?(A.p(y,I),I&2&&M(A,1)):(A=dc(y),A.c(),M(A,1),A.m(t,e)):A&&(de(),j(A,1,1,()=>{A=null}),he()),y[0].allowMeasureType.length>=2&&y[2]==="start"?p?(p.p(y,I),I&5&&M(p,1)):(p=hc(y),p.c(),M(p,1),p.m(r,a)):p&&(de(),j(p,1,1,()=>{p=null}),he()),y[3]?g?(g.p(y,I),I&8&&M(g,1)):(g=uc(y),g.c(),M(g,1),g.m(l,c)):g&&(de(),j(g,1,1,()=>{g=null}),he());const k={};I&4&&(k.onClick=y[13]),I&4&&(k.text=y[5][y[2]]),I&4&&(k.color=y[6][y[2]]),h.$set(k),(!m||I&16)&&K(d,"forbid",!y[4]),y[3]?v?(v.p(y,I),I&8&&M(v,1)):(v=fc(y),v.c(),M(v,1),v.m(l,null)):v&&(de(),j(v,1,1,()=>{v=null}),he())},i(y){m||(M(A),M(p),M(g),M(h.$$.fragment,y),M(v),m=!0)},o(y){j(A),j(p),j(g),j(h.$$.fragment,y),j(v),m=!1},d(y){y&&O(t),A&&A.d(),p&&p.d(),g&&g.d(),ne(h),v&&v.d()}}}const fi=100;function a0(i,t,e){let{measureController:n}=t,{showExit:s=!1}=t;const o={start:"开始",add:"添加",end:"结束",complete:"完成"},r={start:"white",add:"white",end:"blue",complete:"blue"};let a=!1,l=!0,c="start",d=n.currentMeasureType;const h=()=>{n.getCurrentMode()!=="Edit"?n.changeMode("Edit"):(A("add"),u())},u=()=>{n.controller instanceof dn&&n.controller.selectPoint()},m=()=>{n.controller instanceof dn&&n.controller.complete()},A=W=>{e(2,c=W)},p=()=>{u(),k("allow")},g=()=>{A("complete")},v=()=>{n.currentMeasureType==="area"&&c==="complete"&&A("add")},y=W=>{W.length},I=()=>{A("start"),k("allow")},k=W=>{e(4,l=W==="allow")},T=W=>{e(11,d=W)},P=W=>{W.isEmpty&&A("start")};vt(()=>{n.hook.on("revoke",P),n.hook.on("measureTypeChange",T),n.hook.on("modeChange",I),n.hook.on("pointsChange",y),n.hook.on("allowAddPointStateChange",k),n.hook.on("readyComplete",g),n.hook.on("notReadyComplete",v),n.hook.on("complete",I)}),Lt(()=>{n.hook.off("measureTypeChange",T),n.hook.off("modeChange",I),n.hook.off("allowAddPointStateChange",k),n.hook.off("readyComplete",g),n.hook.off("pointsChange",y),n.hook.off("notReadyComplete",v),n.hook.off("complete",I)});const V=()=>n.revoke(),L=()=>{c==="start"?h():c==="add"?u():(c==="end"||c==="complete")&&p()};return i.$$set=W=>{"measureController"in W&&e(0,n=W.measureController),"showExit"in W&&e(1,s=W.showExit)},i.$$.update=()=>{i.$$.dirty&2052&&e(3,a=d==="area"&&c!=="start")},[n,s,c,a,l,o,r,h,u,m,p,d,V,L]}class l0 extends le{constructor(t){super(),ae(this,t,a0,r0,oe,{measureController:0,showExit:1},o0)}}class c0{constructor(t,e){f(this,"revoke");f(this,"container");f(this,"mainController");f(this,"disposers",[]);f(this,"measureController");f(this,"mode");f(this,"svelteDom");f(this,"_params");f(this,"handleExit",()=>{const t=this.container.querySelector(".fpm__exit-icon"),e=this.container.querySelector(".fpm__exit");if(!e||!t)throw new Error("cannot find dom");this.mode==="pc"&&(Object.assign(e.style,Lv),Object.assign(t==null?void 0:t.style,jv));const n=()=>{e.style.opacity="1"},s=()=>{e.style.opacity="0.85"},o=()=>{this.measureController.disable()};return e.addEventListener("click",o),e.addEventListener("mouseenter",n),e.addEventListener("mouseleave",s),()=>{e.removeEventListener("click",o),e.removeEventListener("mouseenter",n),e.removeEventListener("mouseleave",s)}});var s,o;this._params=e,this.measureController=t,this.mode=(s=e.mode)!=null?s:"pc",this.container=document.createElement("div"),this.container.innerHTML=this.mode==="mobile"?Ev:xv,this.container.classList.add("fpm__ui-controller",this.mode),this.container.style.background="rgba(0, 0, 0, 0.15)";const n=(o=e.useNewUI)!=null?o:!1;if(n&&(e.pointSelectorMode==="cursor"?this.svelteDom=new Jv({target:e.container,props:{measureController:this.measureController,showExit:e.showExit}}):e.pointSelectorMode==="fixed"&&(this.svelteDom=new l0({target:e.container,props:{measureController:this.measureController,showExit:e.showExit}}))),!n){e.container.appendChild(this.container);const r=this.container.querySelectorAll(".fpm__text"),a=this.container.querySelector(".fpm_ui-bg"),l=this.container.querySelector(".fpm_operating-space");Object.assign(a==null?void 0:a.style,Tv),Object.assign(l==null?void 0:l.style,Sv),Object.assign(this.container.style,Dv),r.forEach(c=>Object.assign(c.style,zv))}}dispose(){var t;this.hide(),(t=this.svelteDom)==null||t.$destroy(),this.container.remove()}show(){return this.container.style.display="block",this.container.style.opacity="1",this.container.style.transform="translate(0, 0)",this.mode==="pc"?(this.revoke=new Vv(this.measureController,this.container),this.mainController=new Ov(this.measureController,this.container,this._params)):this.mainController=new Bv(this.measureController,this.container,this._params),this.disposers.push(this.handleExit()),this}hide(){var t,e;return this.container.style.display="none",this.container.style.opacity="0",this.container.style.transform="translate(0, 10px)",this.mode==="pc"&&((t=this.revoke)==null||t.dispose()),(e=this.mainController)==null||e.dispose(),this.disposers.forEach(n=>n()),this.disposers=[],this}}var It=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},Xe={},d0={get exports(){return Xe},set exports(i){Xe=i}};function lo(i){return i===null?"null":typeof i=="undefined"?"undefined":typeof i=="object"?Array.isArray(i)?"array":"object":typeof i}function du(i){return lo(i)==="object"?$r(i):lo(i)==="array"?Kr(i):i}function Kr(i){return i.map(du)}function $r(i){const t={};for(const e in i)i.hasOwnProperty(e)&&(t[e]=du(i[e]));return t}function ko(i,t=[],e={}){const n={arrayBehaviour:e.arrayBehaviour||"replace"},s=t.map(r=>r||{}),o=i||{};for(let r=0;r<s.length;r++){const a=s[r],l=Object.keys(a);for(let c=0;c<l.length;c++){const d=l[c],h=a[d],u=lo(h),m=lo(o[d]);if(u==="object")if(m!=="undefined"){const A=m==="object"?o[d]:{};o[d]=ko({},[A,$r(h)],n)}else o[d]=$r(h);else if(u==="array")if(m==="array"){const A=Kr(h);o[d]=n.arrayBehaviour==="merge"?o[d].concat(A):A}else o[d]=Kr(h);else o[d]=h}}return o}d0.exports=function(t,...e){return ko(t,e)};Xe.noMutate=function(...t){return ko({},t)};Xe.withOptions=function(t,e,n){return ko(t,e,n)};function h0(i){ue(i,"svelte-1q8gtp4",".Measure-Tips.svelte-1q8gtp4.svelte-1q8gtp4{box-sizing:border-box;position:absolute;pointer-events:none;top:0;width:100%;padding:0 2.5rem}.Measure-Tips.svelte-1q8gtp4 .text.svelte-1q8gtp4{text-align:center;position:relative;max-width:100%;top:3.125rem;color:#fff;word-break:break-all;word-wrap:break-word;text-shadow:0 0.0625rem 0.375rem rgba(0, 0, 0, 0.5);font-size:1.25rem;font-weight:bold}")}function mc(i){let t,e,n,s,o;return{c(){t=x("div"),e=x("div"),n=Me(i[2]),w(e,"class","text svelte-1q8gtp4"),w(t,"class","Measure-Tips svelte-1q8gtp4")},m(r,a){B(r,t,a),D(t,e),D(e,n),i[6](e),o=!0},p(r,a){(!o||a&4)&&Oe(n,r[2])},i(r){o||(Ne(()=>{o&&(s||(s=_t(t,tt,{},!0)),s.run(1))}),o=!0)},o(r){s||(s=_t(t,tt,{},!1)),s.run(0),o=!1},d(r){r&&O(t),i[6](null),r&&s&&s.end()}}}function u0(i){let t,e,n=i[0]&&mc(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0]?n?(n.p(s,o),o&1&&M(n,1)):(n=mc(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function f0(i,t,e){let{measureController:n}=t,{tips:s}=t,{tipStyle:o={}}=t,{visible:r=!0}=t,a=null;const l=v=>{const y=n.currentMeasureType;let I="";return I=s[v],I===void 0&&(I=s[y][v]),I},c=v=>{e(2,h=l(v))},d=()=>{e(2,h="")};let h="";const u=v=>{v==="Edit"&&n.changeMeasureType?c("start"):d()},m=()=>{n.getCurrentMode()==="Watch"&&d()},A=()=>{n.getCurrentMode()==="Edit"&&c("start")},p=v=>{n.currentMeasureType==="area"&&(v.length>=2?c("close"):v.length===0?c("start"):d())};vt(()=>{u(n.getCurrentMode()),n.hook.on("modeChange",u),n.hook.on("complete",m),n.hook.on("pointsChange",p),n.hook.on("measureTypeChange",A)}),Lt(()=>{n.hook.off("modeChange",u),n.hook.off("complete",m),n.hook.off("pointsChange",p),n.hook.off("measureTypeChange",A),d()});function g(v){Qe[v?"unshift":"push"](()=>{a=v,e(1,a),e(5,o)})}return i.$$set=v=>{"measureController"in v&&e(3,n=v.measureController),"tips"in v&&e(4,s=v.tips),"tipStyle"in v&&e(5,o=v.tipStyle),"visible"in v&&e(0,r=v.visible)},i.$$.update=()=>{if(i.$$.dirty&34&&a)for(const v in o)o.hasOwnProperty(v)&&e(1,a.style[v]=o[v],a)},[r,a,h,n,s,o,g]}class m0 extends le{constructor(t){super(),ae(this,t,f0,u0,oe,{measureController:3,tips:4,tipStyle:5,visible:0},h0)}}const g0={line:{start:"选择一个合适的位置开始测量,点击【结束】或【鼠标右键】结束测量"},area:{start:"选择一个合适的位置开始绘制平面",close:"选择3个点后将闭合平面,点击【结束】或【鼠标右键】将自动闭合"}},p0={line:{start:""},area:{start:"",close:"选择3个点后将闭合平面,点击结束自动闭合"}};class A0{constructor(t,e){f(this,"tipSvelteDom");this.tipSvelteDom=new m0({target:e.container,props:{measureController:t,tips:Xe({},e.pointSelectorMode==="fixed"?p0:g0,e.tips),visible:!0,tipStyle:e.tipStyle}})}dispose(){var t;(t=this.tipSvelteDom)==null||t.$destroy()}show(){var t;return(t=this.tipSvelteDom)==null||t.$set({visible:!0}),this}hide(){var t;return(t=this.tipSvelteDom)==null||t.$set({visible:!1}),this}}class v0{constructor(t,e){f(this,"five");f(this,"measureController");f(this,"onKeyDown",t=>{if(t.metaKey&&t.code==="KeyS"){this.measureController.save().changeMode("Watch"),t.preventDefault();return}if(t.code==="Escape")return this.escape()});f(this,"onMouseDown",t=>{t.button===2&&(t.preventDefault(),this.escape())});this.five=e,this.measureController=t;const n=this.five.getElement();n&&(document.body.addEventListener("keydown",this.onKeyDown),n.addEventListener("mousedown",this.onMouseDown))}dispose(){const t=this.five.getElement();t&&(document.body.removeEventListener("keydown",this.onKeyDown),t.removeEventListener("mousedown",this.onMouseDown))}escape(){return this.measureController.getCurrentMode()==="Watch"?this.measureController.disable():this.measureController.save().changeMode("Watch")}}function gc(i){return typeof i=="object"?i===null?{}:i:{}}class b0{constructor(t,e){f(this,"hasOpen",!1);f(this,"hook",new Te.Subscribe);f(this,"magnifier");f(this,"controller",null);f(this,"allowMeasureType");f(this,"currentMeasureType");f(this,"five");f(this,"model");f(this,"group");f(this,"config");f(this,"isMobile");f(this,"useUIController");f(this,"params");f(this,"useGuideController");f(this,"container",document.createElement("div"));f(this,"shortcutKeyController");f(this,"disable",()=>{var t,e,n,s;this.hasOpen=!1,this.container.style.opacity="0",(t=this.controller)==null||t.dispose(),(e=this.useUIController)==null||e.hide(),(n=this.useGuideController)==null||n.hide(),(s=this.shortcutKeyController)==null||s.dispose(),this.controller=null,this.five.helperVisible=!0,this.five.scene.remove(this.group),this.five.needsRender=!0,this.hook.emit("disable",!0)});f(this,"getCurrentMode",()=>this.controller instanceof dn?"Edit":this.controller instanceof $l?"Watch":this.controller instanceof Hi?"Mixed":this.controller instanceof ql?"View":null);f(this,"changeMode",t=>{var s;if(!this.hasOpen||this.getCurrentMode()===t)return;(s=this.controller)==null||s.dispose();const e={View:ql,Watch:$l,Edit:dn,Mixed:Hi};if(!e[t])throw new Error("不存在的 Mode");const n=this.createControllerParams();this.controller=new e[t](n),this.hook.emit("modeChange",t)});f(this,"changeMeasureType",t=>{this.currentMeasureType=t,this.hook.emit("measureTypeChange",t)});var o,r,a,l,c,d,h,u,m;this.five=t,this.params=e,this.config=Po(e,["openParams","magnifierParams"]),this.model=new ja(this.config),this.isMobile=(r=(o=e==null?void 0:e.openParams)==null?void 0:o.isMobile)!=null?r:!1,this.magnifier=new da(t,(a=e.magnifierParams)!=null?a:{width:190,height:190,scale:2}),this.allowMeasureType=Array.from(new Set((c=(l=e.editParams)==null?void 0:l.allowMeasureType)!=null?c:["line"])),this.currentMeasureType=(d=this.allowMeasureType[0])!=null?d:"line",this.group=new R.Group,this.group.name="plugin-measure-group",this.container.classList.add("five-plugin-measure-container"),this.container.style.position="absolute",this.container.style.left="0",this.container.style.top="0",this.container.style.pointerEvents="none",this.container.style.width="100%",this.container.style.height="100%",this.container.style.opacity="0";const n=(u=(h=e.editParams)==null?void 0:h.pointSelectorMode)!=null?u:iu?"fixed":"cursor",s=(m=this.params.openParams)!=null?m:{};if(this.params.useUIController!==!1){const A=H({container:this.container,openParams:s,pointSelectorMode:n},gc(this.params.useUIController));this.useUIController=new c0(this,A)}if(this.params.useGuideController!==!1){const A=H({container:this.container,pointSelectorMode:n},gc(this.params.useGuideController));this.useGuideController=new A0(this,A)}}appendTo(t){t.append(this.container)}clear(){this.model.clear()}dispose(){var t,e;this.disable(),this.clear(),(t=this.useUIController)==null||t.dispose(),(e=this.magnifier)==null||e.dispose(),this.five.needsRender=!0}load(t){this.model.parse(t),this.save()}enable(t){var e;this.hasOpen||(this.hasOpen=!0,this.five.scene.add(this.group),this.container.style.opacity="1",t!=null&&t.mode?this.changeMode(t.mode):this.isMobile?this.changeMode("Mixed"):this.changeMode("Watch"),(e=this.useUIController)==null||e.show(),this.shortcutKeyController=new v0(this,this.five),this.hook.emit("enable",!0))}edit(t){t&&this.changeMeasureType(t);const e=this.isMobile?"Mixed":"Edit";this.changeMode(e)}revoke(){this.controller instanceof dn&&this.controller.revoke()}removePolyline(t){this.model.removePolyline(t)}removeArea(t){this.model.removeArea(t)}removePolylineByID(t){const e=this.model.getPolylineByID(t);e&&this.model.removePolyline(e)}getPolylineByID(t){return this.model.getPolylineByID(t)}getEditedPolyline(){}highlightLine(t){if(this.getCurrentMode()!=="Watch")return!1;const e=this.model.getLineByID(t);return e?(this.controller.highlightLine(e),!0):!1}clearHighlightLines(){return this.getCurrentMode()!=="Watch"?!1:(this.controller.clearHighlightLines(),!0)}save(t){var o;if(!(this.controller instanceof dn)&&!(this.controller instanceof Hi))return this;const e=(o=t==null?void 0:t.mode)!=null?o:"View",n=this.controller.model.polylines,s=this.controller.model.areas;return n.forEach(r=>{this.model.addPolyline(r)}),this.controller instanceof dn?this.controller.complete():s.forEach(r=>{r.showArea(),this.model.addArea(r)}),this.changeMode(e),this}addStartPoint(){this.controller instanceof Hi&&this.hook.emit("willChangeState","watching","editing")}addEndPoint(){this.controller instanceof Hi&&this.hook.emit("willChangeState","editing","watching")}toJson(){return this.model.toJson()}changeIsMobile(t){}changeConfigs(t){var e;Object.assign(this.config,t),(e=this.controller)==null||e.updateDistanceUI()}setCustomText(t,e){var s;const n=this.model.getLineByID(t);if(!n)throw new Error("不存在的线段");n.setText(e),(s=this.controller)==null||s.updateDistanceUI()}createControllerParams(){var n,s;const t=(n=this.params.openParams)!=null?n:{},e=(s=this.params.editParams)!=null?s:{};return t.isMobile=this.isMobile,{five:this.five,hook:this.hook,group:this.group,model:this.model,config:this.config,magnifier:this.magnifier,container:this.container,openParams:t,editParams:e,magnifierParams:this.params.magnifierParams,getMeasureType:()=>this.currentMeasureType,mouseGroup:su(H({},t.crossHairParameter)),userDistanceItemCreator:this.params.userDistanceItemCreator}}}function Bs(i,t,e){const n=i[t],s=i[e];n===void 0||s===void 0||(i[t]=s,i[e]=n)}function y0(i,t,e){const n=e/2;for(let s=1;s<=n;s++){const o=e-(s-1);for(let r=1;r<=t;r++){const a=(s-1)*t+r-1,l=(o-1)*t+r-1;Bs(i,a*4+0,l*4+0),Bs(i,a*4+1,l*4+1),Bs(i,a*4+2,l*4+2),Bs(i,a*4+3,l*4+3)}}}class w0{constructor(t,e){f(this,"width");f(this,"height");f(this,"containerDom");f(this,"hooks",new Te.Subscribe);f(this,"canvas",document.createElement("canvas"));f(this,"five");f(this,"scale");f(this,"config");f(this,"offset",{x:0,y:0});f(this,"context");f(this,"renderCenter",new E.Vector3);f(this,"hammer");f(this,"state",{enabled:!1});f(this,"offsetRange");f(this,"isPanning",!1);f(this,"onPanstart",()=>{this.isPanning=!0,this.canvas.style.boxShadow="0 2px 30px 0 rgba(0,0,0,0.20)"});f(this,"onPan",t=>{if(!this.isPanning||!this.offsetRange||this.hooks.emit("wantsPanGesture",t))return;const{translateX:n,translateY:s}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${n}px, ${s}px, 100px)`});f(this,"onPanend",t=>{if(this.isPanning=!1,this.canvas.style.boxShadow="none",!this.offsetRange)return;const{translateX:e,translateY:n}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${e}px, ${n}px, 100px)`,this.offset={x:e,y:n}});var s,o,r;if(!t.renderer)throw new Error("Five Render 未初始化");this.five=t,this.scale=(s=e==null?void 0:e.scale)!=null?s:2,this.width=(o=e==null?void 0:e.width)!=null?o:190,this.height=(r=e==null?void 0:e.height)!=null?r:190,this.config={dragEnabled:(e==null?void 0:e.dragEnabled)||!1,autoFixPCPosition:(e==null?void 0:e.autoFixPCPosition)||!1,initialPosition:(e==null?void 0:e.initialPosition)||{left:"0",top:"0"}};const n=this.canvas.getContext("2d");if(!n)throw new Error("CANNOT CREATE CONTEXT2D");this.context=n,this.config.dragEnabled&&(this.hammer=new ss(this.canvas),this.hammer.on("pan",this.onPan),this.hammer.on("panstart",this.onPanstart),this.hammer.on("panend",this.onPanend)),this.initStyle()}dispose(){var t;this.clear(),this.disable(),(t=this.hammer)==null||t.destroy()}enable(){if(!this.state.enabled)return this.state.enabled=!0,this.containerDom&&this._appendTo(this.containerDom),this}disable(){if(this.state.enabled)return this.state.enabled=!1,this.canvas.remove(),this}appendTo(t){return this.containerDom=t,this.state.enabled&&this._appendTo(t),this}clear(){return this.context.clearRect(0,0,this.canvas.width,this.canvas.height),this}renderWithPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}renderWithScreenPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}resetOffset(){this.offset={x:0,y:0},this.canvas.style.transform="translate3d(0px, 0px, 100px)"}getCurrentState(){return{enabled:this.state.enabled}}getRenderCenter(){return this.renderCenter}_appendTo(t){if(this.resetOffset(),t.appendChild(this.canvas),!this.offsetRange){const e=this.canvas.getBoundingClientRect(),n=t.getBoundingClientRect(),s=n.right-e.right,o=n.bottom-e.bottom,r=n.left-e.left,a=n.top-e.top;this.offsetRange={min:{x:r,y:a},max:{x:s,y:o}}}}autoFixPCPosition(){if(!this.containerDom)return;const{width:t,height:e}=this,[n,s,o]=(()=>{if(this.renderCenter instanceof E.Vector3){const r=this.renderCenter.clone().project(this.five.camera);return[(r.x+1)/2*this.containerDom.clientWidth,-(r.x-1)/2*this.containerDom.clientWidth,-(r.y-1)/2*this.containerDom.clientHeight]}else return[this.renderCenter.x,this.containerDom.clientWidth-this.renderCenter.x,this.renderCenter.y]})();n<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left="90px"):o<183?(this.canvas.style.top="90px",this.canvas.style.left=-t/2+"px"):s<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=-t-90+"px"):(this.canvas.style.left=-t/2+"px",this.canvas.style.top=-e-90+"px"),this.canvas.style.transform=`translate3d(${n}px, ${o}px, 10px)`,this.offset={x:n,y:o}}render(){if(!this.five.renderer||!this.containerDom)return;const{scale:t,context:e,width:n,height:s}=this,o=this.five.renderer.getSize(new E.Vector2),[r,a]=(()=>{if(this.renderCenter instanceof E.Vector3){const g=this.renderCenter.clone().project(this.five.camera);return[(g.x+1)/2*o.x,(g.y+1)/2*o.y]}else return[this.renderCenter.x,o.y-this.renderCenter.y]})(),l=1,c=n/t,d=s/t,h=l*t,u=this.five.getPixels(r-c/2,a-c/2,c,d,h),m=Math.floor(n*l),A=Math.floor(s*l);y0(u,m,A);const p=new ImageData(m,A);p.data.set(u),e.putImageData(p,0,0)}initStyle(){const t=this.canvas;t.classList.add("five-plugin__magnifier"),t.style.position="absolute",t.style.pointerEvents="all",t.style.borderRadius="50%",t.style.zIndex="99";const e=1;t.setAttribute("width",(this.width*e).toString()),t.setAttribute("height",(this.height*e).toString()),t.style.border="2px solid rgba(255,255,255,0.20)",t.style.width=this.width+"px",t.style.height=this.height+"px",t.style.top=this.config.initialPosition.top,t.style.left=this.config.initialPosition.left,t.style.transform="translate(0,0,100px)",this.config.dragEnabled&&(this.canvas.style.cursor="pointer")}getPanOffset(t,e){const{min:{x:n,y:s},max:{x:o,y:r}}=e,a=this.offset.x+t.deltaX,l=this.offset.y+t.deltaY,c=Math.min(Math.max(a,n),o),d=Math.min(Math.max(l,s),r);return{translateX:c,translateY:d}}}const C0=function(t,e){return new b0(t,e)},hu=Pa(null);function I0(i){ue(i,"svelte-19zi46m",".PanoSpatialTagPlugin__tag-origin.svelte-19zi46m{position:absolute;width:0.5rem;height:0.5rem;border-radius:50%;background:#fff;box-shadow:0 0 .6rem #fff;transform:translate(-50%, -50%) scale(1);transform-origin:center center;animation:svelte-19zi46m-PanoSpatialTagPlugin__tag-origin 1.2s forwards;pointer-events:auto}.PanoSpatialTagPlugin__tag-origin.svelte-19zi46m:after{content:'';position:absolute;top:50%;height:50%;width:2rem;height:2rem;transform:translate(-50%, -50%)}.PanoSpatialTagPlugin__tag-origin-destroy.svelte-19zi46m{transform:translate(-50%, -50%) scale(0.6);animation:svelte-19zi46m-PanoSpatialTagPlugin__tag-origin-destroy 1.2s forwards .7s}@keyframes svelte-19zi46m-PanoSpatialTagPlugin__tag-origin{0%{transform:translate(-50%, -50%) scale(1);opacity:0}100%{transform:translate(-50%, -50%) scale(0.6);opacity:1 }}@keyframes svelte-19zi46m-PanoSpatialTagPlugin__tag-origin-destroy{0%{transform:translate(-50%, -50%) scale(0.6);opacity:1}10%{transform:translate(-50%, -50%) scale(1);opacity:0.9}100%{transform:translate(-50%, -50%) scale(1);opacity:0}}")}function pc(i,t,e){const n=i.slice();return n[3]=t[e],n}function Ac(i){let t,e=`${i[3].top}%`,n=`${i[3].left}%`,s,o;function r(){return i[2](i[3])}return{c(){t=x("i"),w(t,"class","svelte-19zi46m"),K(t,"PanoSpatialTagPlugin__tag-origin",!0),K(t,"PanoSpatialTagPlugin__tag-origin-destroy",i[3].destroying),z(t,"top",e),z(t,"left",n),z(t,"visibility",i[3].front?"visible":"hidden")},m(a,l){B(a,t,l),s||(o=be(t,"click",r),s=!0)},p(a,l){i=a,l&1&&K(t,"PanoSpatialTagPlugin__tag-origin-destroy",i[3].destroying),l&1&&e!==(e=`${i[3].top}%`)&&z(t,"top",e),l&1&&n!==(n=`${i[3].left}%`)&&z(t,"left",n),l&1&&z(t,"visibility",i[3].front?"visible":"hidden")},d(a){a&&O(t),s=!1,o()}}}function P0(i){let t,e=i[0],n=[];for(let s=0;s<e.length;s+=1)n[s]=Ac(pc(i,e,s));return{c(){for(let s=0;s<n.length;s+=1)n[s].c();t=Pe()},m(s,o){for(let r=0;r<n.length;r+=1)n[r]&&n[r].m(s,o);B(s,t,o)},p(s,[o]){if(o&3){e=s[0];let r;for(r=0;r<e.length;r+=1){const a=pc(s,e,r);n[r]?n[r].p(a,o):(n[r]=Ac(a),n[r].c(),n[r].m(t.parentNode,t))}for(;r<n.length;r+=1)n[r].d(1);n.length=e.length}},i:J,o:J,d(s){Tt(n,s),s&&O(t)}}}function E0(i,t,e){let{origins:n}=t;const s=r=>{hu.update(()=>`${r}-PanoSpatialTagPlugin-${Date.now()}`)},o=r=>s(r.id);return i.$$set=r=>{"origins"in r&&e(0,n=r.origins)},[n,s,o]}class k0 extends le{constructor(t){super(),ae(this,t,E0,P0,oe,{origins:0},I0)}}function M0(i){ue(i,"svelte-9m6drd",`.PanoSpatialTagPlugin__tag-x.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0;display:block;white-space:nowrap;box-sizing:border-box;width:25rem;height:14rem;color:#fff;transform:translate(0, -100%);transition:height 0.5s linear}.PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd.svelte-9m6drd{content:'';position:absolute;width:30rem;height:30rem;top:-15rem;left:-15rem;z-index:-1;opacity:0;transition:opacity 0.8s 0.6s;background:url('https://vrlab-image4.ljcdn.com/release/web/PanoSpatialTagPlugin__blur.png');background-size:30rem 30rem}.PanoSpatialTagPlugin__tag-line.svelte-9m6drd.svelte-9m6drd{position:absolute;left:-1rem;width:2rem;height:100%;overflow:hidden}.PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:1rem;height:calc(100% - 1.5rem);width:0.15rem;background:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.1));box-shadow:0 0.1rem 0.5rem rgba(0, 0, 0, 0.2);opacity:0;transform:translate(-50%, 60%) scaleY(0);transition:transform 0.4s cubic-bezier(0.44, 0.44, 0.74, 0.98), opacity 0.4s cubic-bezier(0.44, 0.44, 0.74, 0.98), width 0.5s linear,
|
|
520
|
+
height 0.5s linear;transform-origin:center bottom}.PanoSpatialTagPlugin__tag-line1.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0.3rem;height:1.8rem;width:0.1rem;background:#fff;opacity:0;transform:translate(-50%, 200%) scaleY(0);transform-origin:center top}.PanoSpatialTagPlugin__tag-line2.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0.5rem;height:1.8rem;width:0.1rem;background:#fff;opacity:0;transform:translate(-50%, 200%) scaleY(0);transform-origin:center top}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-line1.svelte-9m6drd{animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line1 linear 0.5s forwards 0.45s}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-line2.svelte-9m6drd{animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line2 linear 0.5s forwards 0.65s}.PanoSpatialTagPlugin__tag-x.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd.svelte-9m6drd{transform:translate(0, 0)}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-line.svelte-9m6drd{transform:scaleY(-1)}.PanoSpatialTagPlugin__tag-animate.svelte-9m6drd.svelte-9m6drd{position:relative;height:100%;overflow:hidden;transform-origin:left top;transition:transform 0.5s linear}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-animate.svelte-9m6drd{transform-origin:left bottom}.PanoSpatialTagPlugin__tag-content.svelte-9m6drd.svelte-9m6drd{position:absolute;display:inline-block;transform:translate(-100%, 0);transition:transform 0.9s cubic-bezier(0, 0.65, 0.16, 1.08) 0.6s;padding-left:0.5rem;font-size:1rem}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{bottom:0}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd{opacity:1;transform:translate(-50%, 0) scaleY(1)}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{top:unset;bottom:-15rem}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{opacity:0.32}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{transform:translate(0, 0)}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd{opacity:0;transform:translate(-50%, 60%) scaleY(0);transition:transform 0.5s 0.55s, opacity 0.4s 0.55s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{opacity:0;transition:opacity 0.8s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{transform:translate(-100%, 0);transition:transform 0.6s cubic-bezier(0.53, 0.06, 0.88, 0.59)}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-content .svelte-9m6drd{pointer-events:none}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-line1.svelte-9m6drd{opacity:0.5;transform:translate(-50%, 10%) scaleY(0);animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line1-hide linear 0.28s forwards 0.3s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-line2.svelte-9m6drd{opacity:0.5;transform:translate(-50%, 0) scaleY(0);animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line2-hide linear 0.28s forwards 0.45s}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line1{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 135%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 20%) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line2{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 125%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line1-hide{0%{opacity:0.5;transform:translate(-50%, 10%) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 105%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line2-hide{0%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 100%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}`)}function x0(i){let t,e,n,s,o,r,a,l,c,d,h,u,m,A,p;return{c(){t=x("div"),e=x("div"),n=ee(),s=x("div"),o=x("i"),r=ee(),a=x("i"),l=ee(),c=x("i"),d=ee(),h=x("div"),u=x("div"),w(e,"class","PanoSpatialTagPlugin__tag-shadow svelte-9m6drd"),z(e,"transform","translate("+i[7]/2*i[3]*3+"px, "+i[8]/2*(i[1]?-1:1)*i[3]*3+"px) scale("+1/i[3]+")"),w(o,"class","PanoSpatialTagPlugin__tag-flagpole svelte-9m6drd"),z(o,"width",i[4]+"rem"),w(a,"class","PanoSpatialTagPlugin__tag-line1 svelte-9m6drd"),w(c,"class","PanoSpatialTagPlugin__tag-line2 svelte-9m6drd"),w(s,"class","PanoSpatialTagPlugin__tag-line svelte-9m6drd"),w(u,"class","PanoSpatialTagPlugin__tag-content svelte-9m6drd"),w(h,"class","PanoSpatialTagPlugin__tag-animate svelte-9m6drd"),z(h,"transform","scale("+i[3]*3+")"),w(t,"id",m="PanoSpatialTagPlugin__"+i[0]),z(t,"height",20*i[5]+"rem"),w(t,"class","svelte-9m6drd"),K(t,"PanoSpatialTagPlugin__tag-x",!0),K(t,"PanoSpatialTagPlugin__tag-upside-down",i[1]),K(t,"PanoSpatialTagPlugin__tag-show",i[10]),K(t,"PanoSpatialTagPlugin__tag-hide",i[10]===!1||i[6])},m(g,v){B(g,t,v),D(t,e),D(t,n),D(t,s),D(s,o),D(s,r),D(s,a),D(s,l),D(s,c),D(t,d),D(t,h),D(h,u),u.innerHTML=i[2],i[16](u),A||(p=be(u,"click",i[11]),A=!0)},p(g,[v]){v&394&&z(e,"transform","translate("+g[7]/2*g[3]*3+"px, "+g[8]/2*(g[1]?-1:1)*g[3]*3+"px) scale("+1/g[3]+")"),v&16&&z(o,"width",g[4]+"rem"),v&4&&(u.innerHTML=g[2]),v&8&&z(h,"transform","scale("+g[3]*3+")"),v&1&&m!==(m="PanoSpatialTagPlugin__"+g[0])&&w(t,"id",m),v&32&&z(t,"height",20*g[5]+"rem"),v&2&&K(t,"PanoSpatialTagPlugin__tag-upside-down",g[1]),v&1024&&K(t,"PanoSpatialTagPlugin__tag-show",g[10]),v&1088&&K(t,"PanoSpatialTagPlugin__tag-hide",g[10]===!1||g[6])},i:J,o:J,d(g){g&&O(t),i[16](null),A=!1,p()}}}function D0(i,t,e){let{id:n}=t,{upsideDown:s}=t,{content:o}=t,{contentZoom:r}=t,{lineWidthZoom:a}=t,{lineHeightZoom:l}=t,{destroying:c=!1}=t,{folded:d}=t,{dispose:h}=t,{events:u}=t,{hooks:m}=t,A=0,p=0,g,v,y=setTimeout(()=>{d||e(10,v=!0),y=void 0},100);const I=P=>{const V=Object.keys(u);let L=P.target;for(;L;){const W=L.getAttribute("class");if(!W){L=L.parentNode;continue}if(W.includes("PanoSpatialTagPlugin__tag-content")){L=null;break}V.forEach(q=>{W.includes(q)&&u[q](n)}),L=L.parentNode}};vt(()=>{m.emit("initTag",{id:n})});const k=hu.subscribe(P=>{if(P===null)return;const[V,L]=P.split("-PanoSpatialTagPlugin-");n===V&&(m.emit("clickOrigin",{id:n,show:v}),y||(e(10,v=d),e(12,d=!d),y=setTimeout(()=>{y=void 0},1500)))});Sh(()=>{e(7,A=g.offsetWidth),e(8,p=g.offsetHeight),!y&&e(10,v=!d)}),Lt(()=>{m.emit("destroyTag",{id:n}),k(),h()});function T(P){Qe[P?"unshift":"push"](()=>{g=P,e(9,g)})}return i.$$set=P=>{"id"in P&&e(0,n=P.id),"upsideDown"in P&&e(1,s=P.upsideDown),"content"in P&&e(2,o=P.content),"contentZoom"in P&&e(3,r=P.contentZoom),"lineWidthZoom"in P&&e(4,a=P.lineWidthZoom),"lineHeightZoom"in P&&e(5,l=P.lineHeightZoom),"destroying"in P&&e(6,c=P.destroying),"folded"in P&&e(12,d=P.folded),"dispose"in P&&e(13,h=P.dispose),"events"in P&&e(14,u=P.events),"hooks"in P&&e(15,m=P.hooks)},[n,s,o,r,a,l,c,A,p,g,v,I,d,h,u,m,T]}let S0=class extends le{constructor(t){super(),ae(this,t,D0,x0,oe,{id:0,upsideDown:1,content:2,contentZoom:3,lineWidthZoom:4,lineHeightZoom:5,destroying:6,folded:12,dispose:13,events:14,hooks:15},M0)}};const T0={position:"absolute",top:"0px",left:"0px",width:"100%",height:"100%",pointerEvents:"none"},vc="<",bc=">",yc="%",wc="locals",L0="(<%%|%%>|<%=|<%-|<%_|<%#|<%|%>|-%>|_%>)",j0={"&":"&","<":"<",">":">",'"':""","'":"'"},ht={EVAL:"eval",ESCAPED:"escaped",RAW:"raw",COMMENT:"comment",LITERAL:"literal"};function Cc(i){return i.replace(/;(\s*$)/,"$1")}function z0(i,t){return new O0(i).compileFunction()(t)}class O0{constructor(t){f(this,"templateText");f(this,"mode",null);f(this,"truncate",!1);f(this,"currentLine",1);f(this,"source","");f(this,"regex",new RegExp(L0));this.templateText=t}compileFunction(){let t;const e=` var __output = "";
|
|
521
521
|
function __append(s) { if (s !== undefined && s !== null) __output += s }
|
|
522
522
|
with (`+wc+` || {}) {
|
|
523
523
|
`,n=` }
|
|
@@ -532,27 +532,27 @@ void main() {
|
|
|
532
532
|
`)}switch(this.mode){case ht.EVAL:this.source+=" ; "+t+`
|
|
533
533
|
`;break;case ht.ESCAPED:this.source+=" ; __append(escapeFn("+Cc(t)+`))
|
|
534
534
|
`;break;case ht.RAW:this.source+=" ; __append("+Cc(t)+`)
|
|
535
|
-
`;break;case ht.COMMENT:break;case ht.LITERAL:this._addOutput(t);break}}else this._addOutput(t)}}}const Mr=.001,Ic=.01,B0="https://vrlab-image4.ljcdn.com/release/web/PanoSpatialTagPlugin__blur.png",V0=(i,t)=>{var ce,se,we,Ce,pe,Be,ve,We;let e=t==null?void 0:t.container,n=1.4;const s=(ce=t==null?void 0:t.wait)!=null?ce:200,o=(se=t==null?void 0:t.maxNumberOnScreen)!=null?se:3,r=(we=t==null?void 0:t.minRad)!=null?we:Math.PI/4,a=(Ce=t==null?void 0:t.nearTolerance)!=null?Ce:100,l=(pe=t==null?void 0:t.upsideHeight)!=null?pe:1.6,c=(Be=t==null?void 0:t.minDistance)!=null?Be:1.2,d=(ve=t==null?void 0:t.maxDistance)!=null?ve:3.5,h=vo(i),u=document.createElement("div");u.classList.add("PanoSpatialTagPlugin"),Object.assign(u.style,T0);const m=new Te.Subscribe;let A=new Image;A.src=B0;const p={points:[],origins:[],tags:[],template:"",events:{},render:z0,folded:!1,enabled:!0,forbidden:!0},g=new k0({target:u,props:{origins:p.origins}}),
|
|
535
|
+
`;break;case ht.COMMENT:break;case ht.LITERAL:this._addOutput(t);break}}else this._addOutput(t)}}}const Mr=.001,Ic=.01,B0="https://vrlab-image4.ljcdn.com/release/web/PanoSpatialTagPlugin__blur.png",V0=(i,t)=>{var ce,se,we,Ce,pe,Be,ve,We;let e=t==null?void 0:t.container,n=1.4;const s=(ce=t==null?void 0:t.wait)!=null?ce:200,o=(se=t==null?void 0:t.maxNumberOnScreen)!=null?se:3,r=(we=t==null?void 0:t.minRad)!=null?we:Math.PI/4,a=(Ce=t==null?void 0:t.nearTolerance)!=null?Ce:100,l=(pe=t==null?void 0:t.upsideHeight)!=null?pe:1.6,c=(Be=t==null?void 0:t.minDistance)!=null?Be:1.2,d=(ve=t==null?void 0:t.maxDistance)!=null?ve:3.5,h=vo(i),u=document.createElement("div");u.classList.add("PanoSpatialTagPlugin"),Object.assign(u.style,T0);const m=new Te.Subscribe;let A=new Image;A.src=B0;const p={points:[],origins:[],tags:[],template:"",events:{},render:z0,folded:!1,enabled:!0,forbidden:!0},g=new k0({target:u,props:{origins:p.origins}}),v=(fe,ye)=>{T(),ye&&P()},y=()=>{p.forbidden&&(p.forbidden=!1,P())},I=(fe,ye)=>{if(p.tags.length===0)return;const Le=ye.longitude-i.state.longitude,me=i.camera.clone();me.position.copy(ye.offset),me.rotateOnWorldAxis(new E.Vector3(0,1,0),Le),me.updateProjectionMatrix(),me.updateMatrixWorld(!0);const qe=new E.Frustum,ct=new E.Matrix4;ct.multiplyMatrices(me.projectionMatrix,me.matrixWorldInverse),qe.setFromProjectionMatrix(ct),p.tags.forEach(ke=>{const nt=me.position.clone().setY(n).distanceTo(ke.position);if(nt<c||nt>d||!qe.containsPoint(ke.position))return ke.destroying=!0;const re=ke.position.clone().sub(me.position).setY(0);if(re.angleTo(ke.normal)>Math.PI/2-r&&re.angleTo(ke.normal)<Math.PI/2+r)return ke.destroying=!0}),p.tags.forEach(ke=>{ke.destroying?ke.app.$set({contentZoom:.1+me.position.distanceTo(ke.position)/d,lineWidthZoom:.38*(.01+me.position.distanceTo(ke.position)/d),destroying:ke.destroying}):ke.app.$set({lineWidthZoom:.38*(.01+me.position.distanceTo(ke.position)/d),lineHeightZoom:.4+(me.position.distanceTo(ke.position)-c)/d*.6,contentZoom:.1+me.position.distanceTo(ke.position)/d})}),setTimeout(()=>{p.tags.forEach(ke=>{ke.destroying&&(ke.app.$destroy(),ke=null)}),p.tags=p.tags.filter(ke=>!ke.destroying),T()},1900)},k=fe=>{fe!==Te.Five.Mode.Panorama&&!p.forbidden&&(g.$set({origins:[]}),p.tags.forEach(ye=>{ye.app.$destroy(),ye=null}),p.origins=[],p.tags=[],p.forbidden=!0)},T=()=>{if(p.forbidden||!p.enabled)return;const fe=i.camera,ye=fe.getWorldDirection(new E.Vector3);p.origins=p.tags.map(Le=>{const me=Le.position.clone().project(fe),qe=Le.position.clone().sub(fe.position).setY(0).angleTo(ye.setY(0))<Math.PI/2;return{id:Le.id,front:qe,left:(me.x+1)/2*100,top:(-me.y+1)/2*100,destroying:Le.destroying}}),g.$set({origins:p.origins})},P=()=>{p.forbidden||!p.enabled||(p.timeoutId&&clearTimeout(p.timeoutId),p.timeoutId=setTimeout(()=>{p.timeoutId=void 0;const fe=V();fe.length&&(p.tags=p.tags.concat(fe),T())},s))},V=()=>{const{clientWidth:fe,clientHeight:ye}=i.getElement(),Le=[],me=i.camera,qe=new E.Frustum,ct=new E.Matrix4,ke=me.getWorldDirection(new E.Vector3);ct.multiplyMatrices(me.projectionMatrix,me.matrixWorldInverse),qe.setFromProjectionMatrix(ct);const nt=p.tags.filter(Ee=>qe.containsPoint(Ee.position)&&!Ee.destroying).length,re=p.points.reduce((Ee,He)=>{if(p.tags.find(Ge=>He.id===Ge.id&&!Ge.destroying))return Ee;const ft=me.position.clone().setY(n).distanceTo(He.position);if(ft<c||ft>d||!qe.containsPoint(He.position))return Ee;const Ft=He.position.clone().sub(me.position).setY(0);if(Ft.angleTo(He.normal)>Math.PI/2-r&&Ft.angleTo(He.normal)<Math.PI/2+r)return Ee;const bt=He.position.clone().project(me);if(!p.tags.every(Ge=>{if(Ge.position.clone().sub(me.position).setY(0).angleTo(ke.setY(0))>Math.PI/2)return!0;const Ze=Ge.position.clone().project(me);return Math.sqrt(Math.pow((bt.x-Ze.x)/2*fe,2)+Math.pow((bt.y-Ze.y)/2*ye,2))>a}))return Ee;const yt={id:He.id,position:He.position,normal:He.normal,replacement:He.replacement,weight:He.weight,distance:ft};let Ve;for(let Ge=0,Ze=Ee.length;Ge<Ze;Ge++){const Et=Ee[Ge];if(yt.weight>Et.weight){Ve=Ge;break}if(yt.distance<Et.distance){Ve=Ge;break}}return Ve!==void 0?Ee.splice(Ve,0,yt):Ee.push(yt),Ee},[]);for(let Ee=0,He=re.length;Ee<He&&!(nt+Le.length>=o);Ee++){const ft=re[Ee];if(Le.find(Ve=>ft.id===Ve.id))continue;const Ft=ft.position.clone().project(me);if(!p.tags.concat(Le).every(Ve=>{if(Ve.position.clone().sub(me.position).setY(0).angleTo(ke.setY(0))>Math.PI/2)return!0;const Ge=Ve.position.clone().project(me);return Math.sqrt(Math.pow((Ft.x-Ge.x)/2*fe,2)+Math.pow((Ft.y-Ge.y)/2*ye,2))>a}))continue;const bt=new E.Raycaster(me.position.clone().setY(n),ft.position.clone().sub(me.position.clone().setY(n)).normalize(),0,ft.distance+Ic),[yt]=p.intersectObjects?bt.intersectObjects(p.intersectObjects,!0):i.model.bvhs.loaded?i.model.intersectRaycaster(bt):bt.intersectObjects(i.model.children,!0);if(yt&&ft.distance-yt.distance<Ic){const{position:Ve,normal:Ge,id:Ze,replacement:Et}=ft,ki=new E.Plane().setFromNormalAndCoplanarPoint(Ge,Ve),zt=Ve.clone().sub(me.position).cross(new E.Vector3(0,1,0)).setLength(Mr),on=[Ve.clone(),Ve.clone().add(zt),Ve.clone().add(new E.Vector3(0,Mr,0)).add(zt),Ve.clone().add(new E.Vector3(0,Mr,0))].map(Qn=>ki.projectPoint(Qn,new E.Vector3)),{container:bn,dispose:mt}=h.create3DDomContainer(on)||{},Rn=new S0({target:bn,props:{id:Ze,content:p.render(p.template,Et),lineWidthZoom:.38*(.01+me.position.distanceTo(Ve)/d),lineHeightZoom:.4+(me.position.distanceTo(Ve)-c)/d*.6,contentZoom:.1+me.position.distanceTo(Ve)/d,upsideDown:Ve.y>l,folded:p.folded,events:p.events,hooks:m,dispose:mt}});Le.push({position:Ve,normal:Ge,id:Ze,app:Rn})}}return Le},L=fe=>{p.points=fe.points.map(ye=>{var Le,me;return{id:ye.id,position:new E.Vector3().fromArray(ye.position),normal:new E.Vector3().fromArray(ye.normal),replacement:(Le=ye.replacement)!=null?Le:{},weight:(me=ye.weight)!=null?me:-1}}),fe.render&&(p.render=fe.render),fe.template&&(p.template=fe.template),fe.events&&(p.events=fe.events),fe.enabled===!1&&(p.enabled=fe.enabled),fe.folded===!0&&(p.folded=fe.folded)},W=fe=>{p.intersectObjects=fe,P()},q=()=>{p.enabled=!0,P()},N=()=>{p.enabled=!1,g.$set({origins:[]}),p.tags.forEach(fe=>{fe.app.$destroy(),fe=null}),p.origins=[],p.tags=[]},G=()=>{p.folded=!1,p.tags.forEach(fe=>{fe.app.$set({folded:p.folded})})},_=()=>{p.folded=!0,p.tags.forEach(fe=>{fe.app.$set({folded:p.folded})})},Q=fe=>{p.tags.forEach(ye=>{ye.id===fe&&ye.app.$set({folded:!1})})},F=fe=>{p.tags.forEach(ye=>{ye.id===fe&&ye.app.$set({folded:!0})})},Z=()=>{i.once("renderFrame",T)},X=()=>{e||(e=i.getElement().parentElement),e&&e.appendChild(u),p.forbidden=!1,n=i.model.bounding.getCenter(new E.Vector3).y,P(),i.on("panoWillArrive",I),i.on("panoArrived",y),i.on("modeChange",k),i.on("cameraUpdate",v)},$=()=>{A=null,h.disposeAll(),g.$destroy(),p.tags.forEach(fe=>{fe.app.$destroy(),fe=null}),p.origins=[],p.tags=[],i.off("modelLoaded",X),i.off("renderFrame",T),i.off("panoWillArrive",I),i.off("panoArrived",y),i.off("modeChange",k),i.off("cameraUpdate",v),i.off("dispose",$),window.removeEventListener("resize",Z,!1)};return window.addEventListener("resize",Z,!1),(We=i==null?void 0:i.model)!=null&&We.loaded?X():i.once("modelLoaded",X),i.on("dispose",$),{load:L,setIntersectObjects:W,unfoldAll:G,foldAll:_,unfold:Q,fold:F,enable:q,disable:N,hooks:m,dispose:$}};var xn=(i=>(i.SMALL="small",i.MIDLLE="middle",i.LARGE="large",i.EXTRA_LARGE="x-large",i))(xn||{}),ea={},R0={get exports(){return ea},set exports(i){ea=i}};/*!
|
|
536
536
|
Copyright (c) 2018 Jed Watson.
|
|
537
537
|
Licensed under the MIT License (MIT), see
|
|
538
538
|
http://jedwatson.github.io/classnames
|
|
539
|
-
*/(function(i){(function(){var t={}.hasOwnProperty;function e(){for(var n=[],s=0;s<arguments.length;s++){var o=arguments[s];if(o){var r=typeof o;if(r==="string"||r==="number")n.push(o);else if(Array.isArray(o)){if(o.length){var a=e.apply(null,o);a&&n.push(a)}}else if(r==="object"){if(o.toString!==Object.prototype.toString&&!o.toString.toString().includes("[native code]")){n.push(o.toString());continue}for(var l in o)t.call(o,l)&&o[l]&&n.push(l)}}}return n.join(" ")}i.exports?(e.default=e,i.exports=e):window.classNames=e})()})(R0);const rt=ea;function Q0(i){ue(i,"svelte-1wufped",".item-label-item.svelte-1wufped{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:0}.item-label-item.visible.svelte-1wufped{opacity:1;animation:svelte-1wufped-fadeIn 0.3s ease-in}.item-label-item__text-wrap.svelte-1wufped::before{content:'';position:absolute;width:100%;height:100%;background-color:rgba(0, 0, 0, 0.3);filter:blur(1rem);z-index:-1}.item-label-item__text-wrap.svelte-1wufped{padding:0.375rem 0.375rem 0;position:absolute;height:1.25rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap;line-height:0.625rem;font-size:0.6875rem;font-weight:bold;color:#ffeac0;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center}.item-label-item__text.svelte-1wufped{padding-bottom:0.25rem;border-top:0 solid;border-left:0 solid;border-right:0 solid;border-bottom:0.0625rem solid;-o-border-image:linear-gradient(to right, rgba(234, 208, 154, 0), rgba(234, 208, 154, 100), rgba(234, 208, 154, 0)) 4.5 1 4.5;border-image:linear-gradient(to right, rgba(234, 208, 154, 0), rgba(234, 208, 154, 100), rgba(234, 208, 154, 0)) 4.5 1 4.5}.item-label-item__bar.svelte-1wufped{position:absolute;bottom:0;width:0.0625rem;background-image:linear-gradient(to bottom, rgba(234, 208, 154, 0), rgba(234, 208, 154, 1))}@keyframes svelte-1wufped-fadeIn{from{opacity:0}to{opacity:1}}")}function G0(i){let t,e,n,s=(i[0].name.length>6?`${i[0].name.slice(0,6)}...`:i[0].name)+"",o,r,a,l,c,d;return{c(){t=x("div"),e=x("div"),n=x("span"),o=Me(s),r=ee(),a=x("div"),w(n,"class","item-label-item__text svelte-1wufped"),w(e,"class","item-label-item__text-wrap svelte-1wufped"),z(e,"top",`-${i[0].strokeLength+26}px`),w(a,"class","item-label-item__bar svelte-1wufped"),z(a,"height",`${i[0].strokeLength}px`),w(t,"class",l=Re(rt("item-label-item",{visible:i[0].visible}))+" svelte-1wufped"),z(t,"z-index",i[0].zIndex),z(t,"transform",i[0].transform)},m(h,u){B(h,t,u),D(t,e),D(e,n),D(n,o),D(t,r),D(t,a),c||(d=be(n,"click",i[1]),c=!0)},p(h,[u]){u&1&&s!==(s=(h[0].name.length>6?`${h[0].name.slice(0,6)}...`:h[0].name)+"")&&Oe(o,s),u&1&&z(e,"top",`-${h[0].strokeLength+26}px`),u&1&&z(a,"height",`${h[0].strokeLength}px`),u&1&&l!==(l=Re(rt("item-label-item",{visible:h[0].visible}))+" svelte-1wufped")&&w(t,"class",l),u&1&&z(t,"z-index",h[0].zIndex),u&1&&z(t,"transform",h[0].transform)},i:J,o:J,d(h){h&&O(t),c=!1,d()}}}function N0(i,t,e){let{itemLabel:n}=t,{hooks:s}=t;function o(){s.emit("onLabelClick",n)}return i.$$set=r=>{"itemLabel"in r&&e(0,n=r.itemLabel),"hooks"in r&&e(2,s=r.hooks)},[n,o,s]}let H0=class extends le{constructor(t){super(),ae(this,t,N0,G0,oe,{itemLabel:0,hooks:2},Q0)}};function uu(i,t=200){let e;return function(...n){clearTimeout(e),e=setTimeout(()=>{i(...n)},t)}}function _0(i){ue(i,"svelte-f82itz",".item-labels-container.svelte-f82itz{width:100%;height:100%;position:relative}")}function Pc(i,t,e){const n=i.slice();return n[26]=t[e],n}function Ec(i,t){let e,n,s;return n=new H0({props:{itemLabel:t[26],hooks:t[0]}}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(o,r){B(o,e,r),te(n,o,r),s=!0},p(o,r){t=o;const a={};r&2&&(a.itemLabel=t[26]),r&1&&(a.hooks=t[0]),n.$set(a)},i(o){s||(M(n.$$.fragment,o),s=!0)},o(o){j(n.$$.fragment,o),s=!1},d(o){o&&O(e),ne(n,o)}}}function W0(i){let t,e=[],n=new Map,s,o,r=i[1];const a=l=>l[26].id;for(let l=0;l<r.length;l+=1){let c=Pc(i,r,l),d=a(c);n.set(d,e[l]=Ec(d,c))}return{c(){t=x("div");for(let l=0;l<e.length;l+=1)e[l].c();w(t,"class","item-labels-container svelte-f82itz"),Ne(()=>i[9].call(t)),z(t,"opacity",i[4]?1:0)},m(l,c){B(l,t,c);for(let d=0;d<e.length;d+=1)e[d]&&e[d].m(t,null);s=bo(t,i[9].bind(t)),o=!0},p(l,[c]){c&3&&(r=l[1],de(),e=jt(e,c,a,1,l,r,n,t,vn,Ec,null,Pc),he()),c&16&&z(t,"opacity",l[4]?1:0)},i(l){if(!o){for(let c=0;c<r.length;c+=1)M(e[c]);o=!0}},o(l){for(let c=0;c<e.length;c+=1)j(e[c]);o=!1},d(l){l&&O(t);for(let c=0;c<e.length;c+=1)e[c].d();s()}}}let kc=26,F0=11;function Y0(i,t,e){const{Raycaster:n,Vector3:s}=E;let{five:o}=t,{modelOcclusionEnable:r}=t,{itemLabels:a}=t,{hooks:l}=t,{displayStrategyType:c}=t,d=null,h=null,u,m,A=[],p=!0;const g=(_,Q)=>{const F=new n,Z=_.camera.position.clone(),X=new s().fromArray(Q.modelPosition),$=X.distanceTo(Z);F.set(Z.clone(),X.clone().sub(Z).normalize());const[ce]=_.model.intersectRaycaster(F);return!(ce&&ce.distance+1<$)},
|
|
539
|
+
*/(function(i){(function(){var t={}.hasOwnProperty;function e(){for(var n=[],s=0;s<arguments.length;s++){var o=arguments[s];if(o){var r=typeof o;if(r==="string"||r==="number")n.push(o);else if(Array.isArray(o)){if(o.length){var a=e.apply(null,o);a&&n.push(a)}}else if(r==="object"){if(o.toString!==Object.prototype.toString&&!o.toString.toString().includes("[native code]")){n.push(o.toString());continue}for(var l in o)t.call(o,l)&&o[l]&&n.push(l)}}}return n.join(" ")}i.exports?(e.default=e,i.exports=e):window.classNames=e})()})(R0);const rt=ea;function Q0(i){ue(i,"svelte-1wufped",".item-label-item.svelte-1wufped{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:0}.item-label-item.visible.svelte-1wufped{opacity:1;animation:svelte-1wufped-fadeIn 0.3s ease-in}.item-label-item__text-wrap.svelte-1wufped::before{content:'';position:absolute;width:100%;height:100%;background-color:rgba(0, 0, 0, 0.3);filter:blur(1rem);z-index:-1}.item-label-item__text-wrap.svelte-1wufped{padding:0.375rem 0.375rem 0;position:absolute;height:1.25rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap;line-height:0.625rem;font-size:0.6875rem;font-weight:bold;color:#ffeac0;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center}.item-label-item__text.svelte-1wufped{padding-bottom:0.25rem;border-top:0 solid;border-left:0 solid;border-right:0 solid;border-bottom:0.0625rem solid;-o-border-image:linear-gradient(to right, rgba(234, 208, 154, 0), rgba(234, 208, 154, 100), rgba(234, 208, 154, 0)) 4.5 1 4.5;border-image:linear-gradient(to right, rgba(234, 208, 154, 0), rgba(234, 208, 154, 100), rgba(234, 208, 154, 0)) 4.5 1 4.5}.item-label-item__bar.svelte-1wufped{position:absolute;bottom:0;width:0.0625rem;background-image:linear-gradient(to bottom, rgba(234, 208, 154, 0), rgba(234, 208, 154, 1))}@keyframes svelte-1wufped-fadeIn{from{opacity:0}to{opacity:1}}")}function G0(i){let t,e,n,s=(i[0].name.length>6?`${i[0].name.slice(0,6)}...`:i[0].name)+"",o,r,a,l,c,d;return{c(){t=x("div"),e=x("div"),n=x("span"),o=Me(s),r=ee(),a=x("div"),w(n,"class","item-label-item__text svelte-1wufped"),w(e,"class","item-label-item__text-wrap svelte-1wufped"),z(e,"top",`-${i[0].strokeLength+26}px`),w(a,"class","item-label-item__bar svelte-1wufped"),z(a,"height",`${i[0].strokeLength}px`),w(t,"class",l=Re(rt("item-label-item",{visible:i[0].visible}))+" svelte-1wufped"),z(t,"z-index",i[0].zIndex),z(t,"transform",i[0].transform)},m(h,u){B(h,t,u),D(t,e),D(e,n),D(n,o),D(t,r),D(t,a),c||(d=be(n,"click",i[1]),c=!0)},p(h,[u]){u&1&&s!==(s=(h[0].name.length>6?`${h[0].name.slice(0,6)}...`:h[0].name)+"")&&Oe(o,s),u&1&&z(e,"top",`-${h[0].strokeLength+26}px`),u&1&&z(a,"height",`${h[0].strokeLength}px`),u&1&&l!==(l=Re(rt("item-label-item",{visible:h[0].visible}))+" svelte-1wufped")&&w(t,"class",l),u&1&&z(t,"z-index",h[0].zIndex),u&1&&z(t,"transform",h[0].transform)},i:J,o:J,d(h){h&&O(t),c=!1,d()}}}function N0(i,t,e){let{itemLabel:n}=t,{hooks:s}=t;function o(){s.emit("onLabelClick",n)}return i.$$set=r=>{"itemLabel"in r&&e(0,n=r.itemLabel),"hooks"in r&&e(2,s=r.hooks)},[n,o,s]}let H0=class extends le{constructor(t){super(),ae(this,t,N0,G0,oe,{itemLabel:0,hooks:2},Q0)}};function uu(i,t=200){let e;return function(...n){clearTimeout(e),e=setTimeout(()=>{i(...n)},t)}}function _0(i){ue(i,"svelte-f82itz",".item-labels-container.svelte-f82itz{width:100%;height:100%;position:relative}")}function Pc(i,t,e){const n=i.slice();return n[26]=t[e],n}function Ec(i,t){let e,n,s;return n=new H0({props:{itemLabel:t[26],hooks:t[0]}}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(o,r){B(o,e,r),te(n,o,r),s=!0},p(o,r){t=o;const a={};r&2&&(a.itemLabel=t[26]),r&1&&(a.hooks=t[0]),n.$set(a)},i(o){s||(M(n.$$.fragment,o),s=!0)},o(o){j(n.$$.fragment,o),s=!1},d(o){o&&O(e),ne(n,o)}}}function W0(i){let t,e=[],n=new Map,s,o,r=i[1];const a=l=>l[26].id;for(let l=0;l<r.length;l+=1){let c=Pc(i,r,l),d=a(c);n.set(d,e[l]=Ec(d,c))}return{c(){t=x("div");for(let l=0;l<e.length;l+=1)e[l].c();w(t,"class","item-labels-container svelte-f82itz"),Ne(()=>i[9].call(t)),z(t,"opacity",i[4]?1:0)},m(l,c){B(l,t,c);for(let d=0;d<e.length;d+=1)e[d]&&e[d].m(t,null);s=bo(t,i[9].bind(t)),o=!0},p(l,[c]){c&3&&(r=l[1],de(),e=jt(e,c,a,1,l,r,n,t,vn,Ec,null,Pc),he()),c&16&&z(t,"opacity",l[4]?1:0)},i(l){if(!o){for(let c=0;c<r.length;c+=1)M(e[c]);o=!0}},o(l){for(let c=0;c<e.length;c+=1)j(e[c]);o=!1},d(l){l&&O(t);for(let c=0;c<e.length;c+=1)e[c].d();s()}}}let kc=26,F0=11;function Y0(i,t,e){const{Raycaster:n,Vector3:s}=E;let{five:o}=t,{modelOcclusionEnable:r}=t,{itemLabels:a}=t,{hooks:l}=t,{displayStrategyType:c}=t,d=null,h=null,u,m,A=[],p=!0;const g=(_,Q)=>{const F=new n,Z=_.camera.position.clone(),X=new s().fromArray(Q.modelPosition),$=X.distanceTo(Z);F.set(Z.clone(),X.clone().sub(Z).normalize());const[ce]=_.model.intersectRaycaster(F);return!(ce&&ce.distance+1<$)},v=(_,Q)=>{const F=new s(Q.modelPosition[0],Q.modelPosition[1],Q.modelPosition[2]),Z=_.project2d(F),X=Z==null?void 0:Z.x,$=Z==null?void 0:Z.y;return[X,$]},y=_=>`translate(${_[0]}px, ${_[1]}px)`,I=(_,Q)=>A.length===0?!1:!!A.find(Z=>_[0]>=Z[0]-Q&&_[0]<=Z[0]+Q||_[1]>=Z[1]-kc&&_[1]<=Z[1]+kc);function k(_,Q){switch(Q){case xn.SMALL:return Math.ceil(-27.78*_+85);case xn.MIDLLE:return Math.ceil(-38.9*_+130);case xn.LARGE:return Math.ceil(-44.44*_+140);case xn.EXTRA_LARGE:return Math.ceil(-92.59*_+300)}}const T=(_,Q)=>{const F=Q.map(X=>{const $=v(_,X),ce=X.name.length*F0,se=k(X.modelPosition[1],c),Ce=(r?g(_,X):!0)&&!I([$[0],$[1]+se],ce);if(!Ce)return Ae(H({},X),{visible:Ce});A.push($);const pe=y($);return Ae(H({},X),{visible:Ce,transform:pe,strokeLength:se})}),Z=F.filter(({visible:X})=>X).map(X=>({itemLabelItem:X,distance:new s(X.modelPosition[0],X.modelPosition[1],X.modelPosition[2]).clone().distanceTo(_.camera.position)})).sort((X,$)=>X.distance-$.distance);return F.map(X=>{const $=Z.findIndex(ce=>ce.itemLabelItem.id===X.id);return $!==void 0?Ae(H({},X),{zIndex:$*10}):X})},P=()=>{A=[],e(1,h=T(o,h))};Dh(()=>{q()});const V=()=>{e(4,p=!1),L()};vt(()=>{e(1,h=a),d=a,P(),W(),o.on("cameraUpdate",V)});const L=uu(()=>{e(4,p=!0),P()},300),W=()=>{window.addEventListener("resize",N,!1)},q=()=>{d!==a&&(e(1,h=a),d=a,P())},N=()=>{o.once("renderFrame",P)};Lt(()=>{o.off("cameraUpdate",V),window.removeEventListener("resize",N,!1)});function G(){u=this.clientWidth,m=this.clientHeight,e(2,u),e(3,m)}return i.$$set=_=>{"five"in _&&e(5,o=_.five),"modelOcclusionEnable"in _&&e(6,r=_.modelOcclusionEnable),"itemLabels"in _&&e(7,a=_.itemLabels),"hooks"in _&&e(0,l=_.hooks),"displayStrategyType"in _&&e(8,c=_.displayStrategyType)},[l,h,u,m,p,o,r,a,c,G]}let U0=class extends le{constructor(t){super(),ae(this,t,Y0,W0,oe,{five:5,modelOcclusionEnable:6,itemLabels:7,hooks:0,displayStrategyType:8},_0)}};function X0(i){return i.model_item_labels.map(t=>H({modelPosition:[t.position[0],t.position[1]+t.size[1],t.position[2]]},t))}const Z0=(i,t)=>{var u,m;const e={container:document.createElement("div"),data:null,enabled:!0,fiveModeEnabled:void 0,itemLabels:[],wrapper:null,app:void 0,hooks:new Te.Subscribe,modelOcclusionEnable:(u=t==null?void 0:t.modelOcclusionEnable)!=null?u:!0,displayStrategyType:(m=t==null?void 0:t.displayStrategyType)!=null?m:xn.SMALL};e.container.setAttribute("class","model-item-label-plugin-container"),e.container.style.cssText=`
|
|
540
540
|
position: absolute;
|
|
541
541
|
left: 0;
|
|
542
542
|
top: 0;
|
|
543
543
|
width: 100%;
|
|
544
544
|
height: 100%;
|
|
545
545
|
z-index: 5;
|
|
546
|
-
`,e.container.style.pointerEvents="none";const n=A=>(e.wrapper=A,A.appendChild(e.container),l(),!0),s=A=>{e.itemLabels=X0(A),l()},o=()=>(e.enabled||(e.enabled=!0,l()),!0),r=()=>(e.enabled&&(e.enabled=!1,l()),!0),a=()=>{d(),e.container.remove()},l=()=>{var A;if(e.wrapper){if(!e.enabled||!e.fiveModeEnabled){(A=e.app)==null||A.$destroy(),e.app=void 0;return}e.app?e.app.$set({five:i,itemLabels:e.itemLabels}):e.app=new U0({target:e.container,props:{five:i,modelOcclusionEnable:e.modelOcclusionEnable,itemLabels:e.itemLabels,hooks:e.hooks,displayStrategyType:e.displayStrategyType}})}},c=()=>{i.on("modeChange",h),i.once("dispose",a)},d=()=>{i.off("modeChange",h)},h=A=>{if(e.enabled){if(A!==Te.Five.Mode.Floorplan){e.fiveModeEnabled=!1,l();return}i.once("initAnimationEnded",()=>{e.fiveModeEnabled=i.currentMode===Te.Five.Mode.Floorplan,l()})}};return c(),{appendTo:n,load:s,enable:o,disable:r,dispose:a,hooks:e.hooks}},J0={name:"ModelItemLabelPlugin",version:0};var ni=(i=>(i.TOP_LEFT="topLeft",i.TOP_RIGHT="topRight",i.BOTTOM_LEFT="bottomLeft",i.BOTTOM_RIGHT="bottomRight",i))(ni||{});function q0(i){if(i.length===0)return[];if(Array.isArray(i[0]))return i;let t=[];return i.forEach(e=>{const n=[e[ni.TOP_LEFT],e[ni.BOTTOM_LEFT],e[ni.BOTTOM_RIGHT],e[ni.TOP_RIGHT]];t.push(n)}),t}const K0="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAYAAADFw8lbAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAKqADAAQAAAABAAAAKgAAAADUGqULAAAB0ElEQVRYCe2WSUoEQRBFLVHEiVZU1I03cKW38SSewRt4A5fiTty5cQIFR9pZQWkcUNSe2/Z9yISiSGxRkUAy4BGZSVX168gistraYsQKxArECsQKxApYqkDyU5lmsznMM+ZgAGpQhaUkSRbINgLJCXiCBtSgAkVYtGGIBTKj8AgKSVahDNvQa0IUkUG4Bx91BpLdBTOS/cgUIB3a+gMwI9mFzE3a0I3z5B4r292JzGVA8tSSZILMcUDyzIykthOZvYDk+V9Ktmz4yGzhOhV4/+5YU4N/hzqo0StX3Fg5TcnNlYvgs8bPsM4hkScHoyO46haRnGEYktQVI+4ypUYKyXtxyUu27JCceAMJvjo0HoM5CEZ7cPX7i013q3IWVV5r2aw/2TK+svWbPGU68KQCa6pYeus1V0X99quSfvtVSc39lmfz2mdbz32tg1dAJ0421AVs9E7/FxBSezrMmjI/gm5/nYmMkBq+TqBs7LNgTlZH6EnWlPmORdk+pHQipUNfTxtg7p3NIXWRMvXfoqusmXsNhpC6crIS1Zf9C6yAOdlxpK5BW18CiT7A/G93gE+P0FY/RoO+RWqS62YhB2r4YhlixArECsQKxArECvzjCnwAOr0wF44ggHAAAAAASUVORK5CYII=",Oa="data:image/png;base64,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",ta="data:image/png;base64,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",$0="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAABcVBMVEUAAAAAAAD////////+/v45OTn////////39/fp6enPz8/7+/vw8PD+/v7x8fHc3NzHx8f////////+/v77+/vr6+v////7+/v5+fn////z8/P////////q6uqgoKD+/v79/f3m5ub+/v7////////////////39/f39/f////z8/P////t7e3s7Oz29vb////5+fn////h4eH////g4ODV1dX////////BwcH///////////+Ojo5zc3MlJSX////////////////////////7+/v////////////v7+/u7u7n5+f////39/f////09PT6+vr09PT+/v76+vr////5+fnv7+/09PTk5OT////////////////Jycn///++vr7///////+0tLT///9TU1P///8SEhL////////+/v76+vr////8/Pz39/ft7e3t7e36+vr////////X19fV1dX///+xsbF9fX1iYmL///////+K8mOEAAAAenRSTlMaAIDy8CD41cWRX9uk7Kl1VVEw6dWT/M/NvKyVkY475eWIgx0Z39rHv7axnZyZmIuKhn56emZjX1FEPTU0Kx4PCAX69fTgxcKkopWL7crJuri2sa6rnIyHhX54bVtZVU9NSUcsJSIcFROno6Hcwp+ekHVxbWhnRC8nDLc9s8oAAAOGSURBVEjHpdd3X9pAGAfwkBBDAoQmBJmWvUWWiIDIHoJb66x7a4d78Op7pBQ1J5DY33987vnyXEIu3CGy/0hvnDthM+l0hj3JScSudDKOdhNPpl1i8Ut624Gi6+trI3zW1tcdqGM7/SIC5/ZRR2SNJEm7JkHt7FAJjR18WIs40P3cAFxIOaIRna6ZOHxGunk+TDR1ukjUkSr0w86bcKShiz1OI4JMP8YAD9+4emM2Gm407IfIhzm0NxrhKNsLH4SvQ+RktyvUfZIMXYcPPsSFCcvY6EYW6ZPsxuiYZaLwAW5bDY70Da5paxjvm8d+UcjAUL/GzPtCnDF/mwFWhJ75Zs68x05gxxFRGQfa+RYXokHVCC4O4yOqYLTwBjNB+ncWEZnsbzrIvOLz4CW9g4jODn0ZPO/iZN0UmhaPp0Omq+Q/nLu6NO0hErJnurjKdTBzEdAhkqILXDAdbFkJ7EnDe4EVy198srpiwhE4X1RKDFOqviBwcNPK6gmPmeWlGDz+VdHqRPEVHo0tLTM8RpcX4G+flLe6kU/Cs1pYRnm8uriQhfoC+0ZDvbMLi6ttfO5fDCDCKFrvooAKAov+c4BZvy8EzaolCHRdIZ+fBThl9G0Ih1RCrBJWbPiMKYAZ409oMSqFWAktzJ9GBuDvRoVGOIQJMSas0CiM39u45v0M9tbaeLc6F5M+7dhcbRfgg+pcU/oNa85VDwDOzBtmpP9UKsN8BuCzeb1P+kPi08+fASyr6fVPUh/PJ72+xj/bZk5PSV0YlJ4z83iC4EipS5LkiAkeHxGcQerLwMARRzyW+QklhUgKpST8nXfYg+fHkjS89MPz0MFnhKdCSWpc8RBnPAZB3RUvLt7i3oob7f5juDzuikY81tjcHlcHg9xabdyUWDvF2ay3slecr1ptimNx9lhhs1bzXQxy5NZa6VMx9pS2Wt1H77cVjFartYvBdlDICDc0cbVa3Twd2NcOyuLwVqo+K1ebjgdcr0k+O1uXwThfl8vlhqm+99kASup5GINsYhhmG8d7UXzcBgo2e21cd9WlUll5/7G958ql8uxu7y0zS5SGSkOGBA51TRiGQAi232Y9v4kVQZGavpt6c6l3tLpNsc38gGOC01IeLg4Xi8NaLz1KkqO0VzvcTrFscYo4oLjiRAsKEXeJPRqxW0bsFWLGLVbiocyZSm5vbW0nU9BsIfyp/AGqAvfOkBaFawAAAABJRU5ErkJggg==",eb=(i,{videoElement:t})=>{const e={videoMeshes:[],videoTextureEnabled:!1,videoSource:"",rectPoints:[],enabled:!1,videoElement:t},n=vo(i),s=new Map,o=b=>{e.videoTexture&&(e.videoTexture.image.muted=b)},r=()=>e.videoTexture?e.videoTexture.image.muted:!0,a=()=>{if(e.enabled||!e.videoTexture)return;e.enabled=!0,e.videoMeshes=c(),e.videoMeshes.forEach(y=>i.scene.add(y));const b=()=>{if(!e.videoTexture)return;const y=()=>{var I;e.videoTexture&&((I=e.videoTexture)==null||I.image.removeEventListener("timeupdate",y),e.videoTextureEnabled=!0,e.videoMeshes.forEach(k=>{k.material.map!==e.videoTexture&&(k.material.map=e.videoTexture)}),i.needsRender=!0)};e.videoTexture.image.addEventListener("timeupdate",y),e.videoTexture&&e.videoMeshes.length&&(e.videoTexture.image.play(),e.videoTexture.image.onplay=()=>{n.hide()},e.videoTexture.image.onpause=()=>{n.show()},e.videoTexture.image.onclick=()=>{e.videoTexture.image.muted=!1,e.videoTexture.image.play()})};if(i.model.loaded)b();else return i.once("modelLoaded",()=>b())},l=()=>{e.enabled&&(e.enabled=!1,e.videoMeshes.forEach(b=>{b.geometry.dispose(),b.material.dispose(),i.scene.remove(b),e.videoTexture&&e.videoTexture.image.pause()}),e.videoMeshes=[],i.needsRender=!0)},c=()=>e.rectPoints.map((b,y)=>{const I=new E.BufferGeometry,k=128,T=[];T.push(...b[0].toArray());for(let G=1;G<k;G++)T.push(b[0].x+(b[1].x-b[0].x)*G/k,b[0].y+(b[1].y-b[0].y)*G/k,b[0].z+(b[1].z-b[0].z)*G/k);T.push(...b[1].toArray()),T.push(...b[2].toArray());for(let G=1;G<k;G++)T.push(b[2].x+(b[3].x-b[2].x)*G/k,b[2].y+(b[3].y-b[2].y)*G/k,b[2].z+(b[3].z-b[2].z)*G/k);T.push(...b[3].toArray());const P=[];P.push(0,1);for(let G=1;G<k;G++)P.push(0,1-G/k);P.push(0,0),P.push(1,0);for(let G=1;G<k;G++)P.push(1,G/k);P.push(1,1);const V=[];for(let G=0;G<k;G++)V.push(G,G+1,k*2-G,G,k*2-G,k*2+1-G);I.setAttribute("position",new E.BufferAttribute(new Float32Array(T),3)),I.setAttribute("uv",new E.BufferAttribute(new Float32Array(P),2)),I.setIndex(new E.BufferAttribute(new Uint32Array(V),1));const L=new E.MeshBasicMaterial({map:e.videoTextureEnabled?e.videoTexture:e.imageTexture,side:E.DoubleSide}),W=new E.Mesh(I,L);W.renderOrder=1,W.name=`ModelTVVideoPlugin-${y}-${performance.now()}`;const q=[b[1],b[2],b[3],b[0]],N=n.create3DDomContainer(q);if(N!=null&&N.container){const G=document.createElement("div");G.classList.add("play-icon"),G.style.width="100%",G.style.height="100%",G.style.display="flex",G.style.justifyContent="center",G.style.alignItems="center",G.style.pointerEvents="none",N.container.appendChild(G);const _=document.createElement("img");_.src=Oa,_.style.width="200px",_.style.pointerEvents="auto",_.onclick=()=>{e.videoTexture.image.muted=!1,e.videoTexture.image.play()},G.appendChild(_),s.set(W,N)}return W}),d=b=>{const y=new E.TextureLoader().load(b);return y.minFilter=E.LinearFilter,y.magFilter=E.LinearFilter,y.format=E.RGBFormat,y},h=(b,y)=>{let I=y;return new Promise((k,T)=>{const P=new XMLHttpRequest;P.onreadystatechange=()=>{if(P.readyState===4)if(P.status===200){const V=window.URL||window.webkitURL;I=I||document.createElement("video"),I.crossOrigin="anonymous",I.muted=!0,I.loop=!0,I.playsInline=!0,I.src=V.createObjectURL(P.response);const L=new E.VideoTexture(I);L.minFilter=E.LinearFilter,L.magFilter=E.LinearFilter,L.format=E.RGBFormat,k(Object.assign(L,{videoSource:b}))}else T(new Error("Video download Error: "+P.status))},P.onerror=V=>T(V),P.open("GET",b),P.responseType="blob",P.send()})},u=(b,y)=>U(exports,null,function*(){const{video_src:I,video_poster_src:k,points:T}=b;e.videoSource=I,e.rectPoints=q0(T).map(P=>P.map(({x:V,y:L,z:W})=>new E.Vector3(V,L,W))),e.imageTexture=d(k),y&&(e.videoElement=y),e.videoTexture=yield h(e.videoSource,e.videoElement),e.enabled=!!b.enable,e.enabled&&a()}),m=b=>{if(!e.enabled)return;const y=e.videoMeshes;if(!(!y||b.intersectObjects(y).length===0))return e.videoTexture&&(e.videoTexture.image.paused||e.videoTexture.image.pause()),!1},A=b=>{b==="Floorplan"?n.hide():n.show()},p=()=>{if(!e.enabled)return;const b=i.camera.position;if(s.forEach((y,I)=>{const k=y.css3DObject.position.clone(),T=k.clone().sub(b).normalize(),P=new E.Raycaster(b,T),V=i.model.intersectRaycaster(P)[0],L=k.distanceTo(b),W=.01;V&&V.distance+W<L?y.hide():y.show()}),!r()){const y=e.rectPoints.find(I=>{const k=I[0].clone().add(I[1]).add(I[2]).add(I[3]).divideScalar(4);return I.map(T=>T.clone().add(k).divideScalar(2)).filter(T=>{const P=T.distanceTo(b),V=new E.Raycaster(b,T.clone().sub(b).normalize()),L=i.model.intersectRaycaster(V)[0],W=.01;return!(L&&L.distance+W<P)}).length>=2});(!y||y.length===0)&&o(!0)}},g=()=>{l(),e.videoTexture=void 0,i.off("modeChange",A),i.off("wantsTapGesture",m),i.off("panoArrived",p),i.off("renderFrame",()=>{e.videoMeshes.forEach(b=>{b&&(b.needsRender=!0)})})};return i.on("modeChange",A),i.on("wantsTapGesture",m),i.on("panoArrived",p),i.on("renderFrame",()=>{e.videoMeshes.forEach(b=>{b&&(b.needsRender=!0)})}),{enable:a,disable:l,load:u,dispose:g,state:e,css3DRenderPlugin:n}};var Dn=(i=>(i.SMALL="small",i.MIDLLE="middle",i.LARGE="large",i.EXTRA_LARGE="x-large",i))(Dn||{});function tb(i){ue(i,"svelte-1jhufeh",`.item-label-item.svelte-1jhufeh.svelte-1jhufeh{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:svelte-1jhufeh-fadeIn .3s ease-in}.item-label-item.fold.svelte-1jhufeh>.item-label-item__text-wrap.svelte-1jhufeh{visibility:hidden}.item-label-item.fold.svelte-1jhufeh>.item-label-item__bar.anchor.svelte-1jhufeh{visibility:hidden}.item-label-item.fold.svelte-1jhufeh>.item-label-item__bar.anchor.svelte-1jhufeh:after{visibility:visible}.item-label-item__text-wrap.svelte-1jhufeh.svelte-1jhufeh{height:-moz-fit-content;height:fit-content;padding:0.75rem 1.25rem 0.75rem 0.75rem;position:absolute;width:-moz-max-content;width:max-content;max-width:29.5625rem;min-height:5.75rem;background-image:linear-gradient(269deg, rgba(0, 0, 0, 0.50) 0%, rgba(0, 0, 0, 0.60) 49%, rgba(31, 38, 46, 0.70) 100%);border:0.09375rem solid rgba(255, 255, 255, .65);border-radius:0.1875rem;color:white;transform:translate(-50%, 0);display:flex;justify-content:flex-start;align-items:center;box-sizing:border-box;overflow:hidden;pointer-events:all}.item-label-item__custom.svelte-1jhufeh.svelte-1jhufeh{padding:0;max-width:unset;min-height:unset;background-image:unset;border:0;border-radius:0}.icon-wrap.svelte-1jhufeh.svelte-1jhufeh{width:4.25rem;height:100%;display:flex;justify-content:center;align-content:center}.icon.svelte-1jhufeh.svelte-1jhufeh{width:4.25rem;height:4.25rem;background-repeat:no-repeat;background-size:contain;background-position:center}.item-label-text.svelte-1jhufeh.svelte-1jhufeh{margin-left:0.75rem;padding-left:0.75rem;min-height:4.25rem;height:auto;display:flex;flex-flow:column;justify-content:space-around;align-content:flex-start;border-left:solid rgba(255, 255, 255, .2) 0.0625rem;border-top:solid rgba(255, 255, 255, .2) 0;border-right:solid rgba(255, 255, 255, .2) 0;border-bottom:solid rgba(255, 255, 255, .2) 0;pointer-events:auto}.item-model.svelte-1jhufeh.svelte-1jhufeh{white-space:nowrap;font-size:1.375rem;font-weight:bold;line-height:1.875rem}.item-name.svelte-1jhufeh.svelte-1jhufeh{height:auto;word-wrap:break-word;word-break:break-all;font-size:1.25rem;line-height:1.75rem}.item-label-item__bar.svelte-1jhufeh.svelte-1jhufeh{position:absolute;bottom:0;width:0.1875rem;background-image:linear-gradient(to bottom, white, rgba(255, 255, 255, 0));box-shadow:0 0.125rem 0.5rem 0 rgba(0, 0, 0, 0.20);pointer-events:none}.item-label-item__bar.anchor.svelte-1jhufeh.svelte-1jhufeh:after{content:'';position:absolute;bottom:0;width:1.5rem;height:1.5rem;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAABcVBMVEUAAAAAAAD////////+/v45OTn////////39/fp6enPz8/7+/vw8PD+/v7x8fHc3NzHx8f////////+/v77+/vr6+v////7+/v5+fn////z8/P////////q6uqgoKD+/v79/f3m5ub+/v7////////////////39/f39/f////z8/P////t7e3s7Oz29vb////5+fn////h4eH////g4ODV1dX////////BwcH///////////+Ojo5zc3MlJSX////////////////////////7+/v////////////v7+/u7u7n5+f////39/f////09PT6+vr09PT+/v76+vr////5+fnv7+/09PTk5OT////////////////Jycn///++vr7///////+0tLT///9TU1P///8SEhL////////+/v76+vr////8/Pz39/ft7e3t7e36+vr////////X19fV1dX///+xsbF9fX1iYmL///////+K8mOEAAAAenRSTlMaAIDy8CD41cWRX9uk7Kl1VVEw6dWT/M/NvKyVkY475eWIgx0Z39rHv7axnZyZmIuKhn56emZjX1FEPTU0Kx4PCAX69fTgxcKkopWL7crJuri2sa6rnIyHhX54bVtZVU9NSUcsJSIcFROno6Hcwp+ekHVxbWhnRC8nDLc9s8oAAAOGSURBVEjHpdd3X9pAGAfwkBBDAoQmBJmWvUWWiIDIHoJb66x7a4d78Op7pBQ1J5DY33987vnyXEIu3CGy/0hvnDthM+l0hj3JScSudDKOdhNPpl1i8Ut624Gi6+trI3zW1tcdqGM7/SIC5/ZRR2SNJEm7JkHt7FAJjR18WIs40P3cAFxIOaIRna6ZOHxGunk+TDR1ukjUkSr0w86bcKShiz1OI4JMP8YAD9+4emM2Gm407IfIhzm0NxrhKNsLH4SvQ+RktyvUfZIMXYcPPsSFCcvY6EYW6ZPsxuiYZaLwAW5bDY70Da5paxjvm8d+UcjAUL/GzPtCnDF/mwFWhJ75Zs68x05gxxFRGQfa+RYXokHVCC4O4yOqYLTwBjNB+ncWEZnsbzrIvOLz4CW9g4jODn0ZPO/iZN0UmhaPp0Omq+Q/nLu6NO0hErJnurjKdTBzEdAhkqILXDAdbFkJ7EnDe4EVy198srpiwhE4X1RKDFOqviBwcNPK6gmPmeWlGDz+VdHqRPEVHo0tLTM8RpcX4G+flLe6kU/Cs1pYRnm8uriQhfoC+0ZDvbMLi6ttfO5fDCDCKFrvooAKAov+c4BZvy8EzaolCHRdIZ+fBThl9G0Ih1RCrBJWbPiMKYAZ409oMSqFWAktzJ9GBuDvRoVGOIQJMSas0CiM39u45v0M9tbaeLc6F5M+7dhcbRfgg+pcU/oNa85VDwDOzBtmpP9UKsN8BuCzeb1P+kPi08+fASyr6fVPUh/PJ72+xj/bZk5PSV0YlJ4z83iC4EipS5LkiAkeHxGcQerLwMARRzyW+QklhUgKpST8nXfYg+fHkjS89MPz0MFnhKdCSWpc8RBnPAZB3RUvLt7i3oob7f5juDzuikY81tjcHlcHg9xabdyUWDvF2ay3slecr1ptimNx9lhhs1bzXQxy5NZa6VMx9pS2Wt1H77cVjFartYvBdlDICDc0cbVa3Twd2NcOyuLwVqo+K1ebjgdcr0k+O1uXwThfl8vlhqm+99kASup5GINsYhhmG8d7UXzcBgo2e21cd9WlUll5/7G958ql8uxu7y0zS5SGSkOGBA51TRiGQAi232Y9v4kVQZGavpt6c6l3tLpNsc38gGOC01IeLg4Xi8NaLz1KkqO0VzvcTrFscYo4oLjiRAsKEXeJPRqxW0bsFWLGLVbiocyZSm5vbW0nU9BsIfyp/AGqAvfOkBaFawAAAABJRU5ErkJggg==');background-position:center;background-size:contain;transform:translate(-0.65625rem, 50%)}@keyframes svelte-1jhufeh-fadeIn{from{opacity:0
|
|
546
|
+
`,e.container.style.pointerEvents="none";const n=A=>(e.wrapper=A,A.appendChild(e.container),l(),!0),s=A=>{e.itemLabels=X0(A),l()},o=()=>(e.enabled||(e.enabled=!0,l()),!0),r=()=>(e.enabled&&(e.enabled=!1,l()),!0),a=()=>{d(),e.container.remove()},l=()=>{var A;if(e.wrapper){if(!e.enabled||!e.fiveModeEnabled){(A=e.app)==null||A.$destroy(),e.app=void 0;return}e.app?e.app.$set({five:i,itemLabels:e.itemLabels}):e.app=new U0({target:e.container,props:{five:i,modelOcclusionEnable:e.modelOcclusionEnable,itemLabels:e.itemLabels,hooks:e.hooks,displayStrategyType:e.displayStrategyType}})}},c=()=>{i.on("modeChange",h),i.once("dispose",a)},d=()=>{i.off("modeChange",h)},h=A=>{if(e.enabled){if(A!==Te.Five.Mode.Floorplan){e.fiveModeEnabled=!1,l();return}i.once("initAnimationEnded",()=>{e.fiveModeEnabled=i.currentMode===Te.Five.Mode.Floorplan,l()})}};return c(),{appendTo:n,load:s,enable:o,disable:r,dispose:a,hooks:e.hooks}},J0={name:"ModelItemLabelPlugin",version:0};var ni=(i=>(i.TOP_LEFT="topLeft",i.TOP_RIGHT="topRight",i.BOTTOM_LEFT="bottomLeft",i.BOTTOM_RIGHT="bottomRight",i))(ni||{});function q0(i){if(i.length===0)return[];if(Array.isArray(i[0]))return i;let t=[];return i.forEach(e=>{const n=[e[ni.TOP_LEFT],e[ni.BOTTOM_LEFT],e[ni.BOTTOM_RIGHT],e[ni.TOP_RIGHT]];t.push(n)}),t}const K0="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAYAAADFw8lbAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAKqADAAQAAAABAAAAKgAAAADUGqULAAAB0ElEQVRYCe2WSUoEQRBFLVHEiVZU1I03cKW38SSewRt4A5fiTty5cQIFR9pZQWkcUNSe2/Z9yISiSGxRkUAy4BGZSVX168gistraYsQKxArECsQKxApYqkDyU5lmsznMM+ZgAGpQhaUkSRbINgLJCXiCBtSgAkVYtGGIBTKj8AgKSVahDNvQa0IUkUG4Bx91BpLdBTOS/cgUIB3a+gMwI9mFzE3a0I3z5B4r292JzGVA8tSSZILMcUDyzIykthOZvYDk+V9Ktmz4yGzhOhV4/+5YU4N/hzqo0StX3Fg5TcnNlYvgs8bPsM4hkScHoyO46haRnGEYktQVI+4ypUYKyXtxyUu27JCceAMJvjo0HoM5CEZ7cPX7i013q3IWVV5r2aw/2TK+svWbPGU68KQCa6pYeus1V0X99quSfvtVSc39lmfz2mdbz32tg1dAJ0421AVs9E7/FxBSezrMmjI/gm5/nYmMkBq+TqBs7LNgTlZH6EnWlPmORdk+pHQipUNfTxtg7p3NIXWRMvXfoqusmXsNhpC6crIS1Zf9C6yAOdlxpK5BW18CiT7A/G93gE+P0FY/RoO+RWqS62YhB2r4YhlixArECsQKxArECvzjCnwAOr0wF44ggHAAAAAASUVORK5CYII=",Oa="data:image/png;base64,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",ta="data:image/png;base64,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",$0="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAABcVBMVEUAAAAAAAD////////+/v45OTn////////39/fp6enPz8/7+/vw8PD+/v7x8fHc3NzHx8f////////+/v77+/vr6+v////7+/v5+fn////z8/P////////q6uqgoKD+/v79/f3m5ub+/v7////////////////39/f39/f////z8/P////t7e3s7Oz29vb////5+fn////h4eH////g4ODV1dX////////BwcH///////////+Ojo5zc3MlJSX////////////////////////7+/v////////////v7+/u7u7n5+f////39/f////09PT6+vr09PT+/v76+vr////5+fnv7+/09PTk5OT////////////////Jycn///++vr7///////+0tLT///9TU1P///8SEhL////////+/v76+vr////8/Pz39/ft7e3t7e36+vr////////X19fV1dX///+xsbF9fX1iYmL///////+K8mOEAAAAenRSTlMaAIDy8CD41cWRX9uk7Kl1VVEw6dWT/M/NvKyVkY475eWIgx0Z39rHv7axnZyZmIuKhn56emZjX1FEPTU0Kx4PCAX69fTgxcKkopWL7crJuri2sa6rnIyHhX54bVtZVU9NSUcsJSIcFROno6Hcwp+ekHVxbWhnRC8nDLc9s8oAAAOGSURBVEjHpdd3X9pAGAfwkBBDAoQmBJmWvUWWiIDIHoJb66x7a4d78Op7pBQ1J5DY33987vnyXEIu3CGy/0hvnDthM+l0hj3JScSudDKOdhNPpl1i8Ut624Gi6+trI3zW1tcdqGM7/SIC5/ZRR2SNJEm7JkHt7FAJjR18WIs40P3cAFxIOaIRna6ZOHxGunk+TDR1ukjUkSr0w86bcKShiz1OI4JMP8YAD9+4emM2Gm407IfIhzm0NxrhKNsLH4SvQ+RktyvUfZIMXYcPPsSFCcvY6EYW6ZPsxuiYZaLwAW5bDY70Da5paxjvm8d+UcjAUL/GzPtCnDF/mwFWhJ75Zs68x05gxxFRGQfa+RYXokHVCC4O4yOqYLTwBjNB+ncWEZnsbzrIvOLz4CW9g4jODn0ZPO/iZN0UmhaPp0Omq+Q/nLu6NO0hErJnurjKdTBzEdAhkqILXDAdbFkJ7EnDe4EVy198srpiwhE4X1RKDFOqviBwcNPK6gmPmeWlGDz+VdHqRPEVHo0tLTM8RpcX4G+flLe6kU/Cs1pYRnm8uriQhfoC+0ZDvbMLi6ttfO5fDCDCKFrvooAKAov+c4BZvy8EzaolCHRdIZ+fBThl9G0Ih1RCrBJWbPiMKYAZ409oMSqFWAktzJ9GBuDvRoVGOIQJMSas0CiM39u45v0M9tbaeLc6F5M+7dhcbRfgg+pcU/oNa85VDwDOzBtmpP9UKsN8BuCzeb1P+kPi08+fASyr6fVPUh/PJ72+xj/bZk5PSV0YlJ4z83iC4EipS5LkiAkeHxGcQerLwMARRzyW+QklhUgKpST8nXfYg+fHkjS89MPz0MFnhKdCSWpc8RBnPAZB3RUvLt7i3oob7f5juDzuikY81tjcHlcHg9xabdyUWDvF2ay3slecr1ptimNx9lhhs1bzXQxy5NZa6VMx9pS2Wt1H77cVjFartYvBdlDICDc0cbVa3Twd2NcOyuLwVqo+K1ebjgdcr0k+O1uXwThfl8vlhqm+99kASup5GINsYhhmG8d7UXzcBgo2e21cd9WlUll5/7G958ql8uxu7y0zS5SGSkOGBA51TRiGQAi232Y9v4kVQZGavpt6c6l3tLpNsc38gGOC01IeLg4Xi8NaLz1KkqO0VzvcTrFscYo4oLjiRAsKEXeJPRqxW0bsFWLGLVbiocyZSm5vbW0nU9BsIfyp/AGqAvfOkBaFawAAAABJRU5ErkJggg==",eb=(i,{videoElement:t})=>{const e={videoMeshes:[],videoTextureEnabled:!1,videoSource:"",rectPoints:[],enabled:!1,videoElement:t},n=vo(i),s=new Map,o=v=>{e.videoTexture&&(e.videoTexture.image.muted=v)},r=()=>e.videoTexture?e.videoTexture.image.muted:!0,a=()=>{if(e.enabled||!e.videoTexture)return;e.enabled=!0,e.videoMeshes=c(),e.videoMeshes.forEach(y=>i.scene.add(y));const v=()=>{if(!e.videoTexture)return;const y=()=>{var I;e.videoTexture&&((I=e.videoTexture)==null||I.image.removeEventListener("timeupdate",y),e.videoTextureEnabled=!0,e.videoMeshes.forEach(k=>{k.material.map!==e.videoTexture&&(k.material.map=e.videoTexture)}),i.needsRender=!0)};e.videoTexture.image.addEventListener("timeupdate",y),e.videoTexture&&e.videoMeshes.length&&(e.videoTexture.image.play(),e.videoTexture.image.onplay=()=>{n.hide()},e.videoTexture.image.onpause=()=>{n.show()},e.videoTexture.image.onclick=()=>{e.videoTexture.image.muted=!1,e.videoTexture.image.play()})};if(i.model.loaded)v();else return i.once("modelLoaded",()=>v())},l=()=>{e.enabled&&(e.enabled=!1,e.videoMeshes.forEach(v=>{v.geometry.dispose(),v.material.dispose(),i.scene.remove(v),e.videoTexture&&e.videoTexture.image.pause()}),e.videoMeshes=[],i.needsRender=!0)},c=()=>e.rectPoints.map((v,y)=>{const I=new E.BufferGeometry,k=128,T=[];T.push(...v[0].toArray());for(let G=1;G<k;G++)T.push(v[0].x+(v[1].x-v[0].x)*G/k,v[0].y+(v[1].y-v[0].y)*G/k,v[0].z+(v[1].z-v[0].z)*G/k);T.push(...v[1].toArray()),T.push(...v[2].toArray());for(let G=1;G<k;G++)T.push(v[2].x+(v[3].x-v[2].x)*G/k,v[2].y+(v[3].y-v[2].y)*G/k,v[2].z+(v[3].z-v[2].z)*G/k);T.push(...v[3].toArray());const P=[];P.push(0,1);for(let G=1;G<k;G++)P.push(0,1-G/k);P.push(0,0),P.push(1,0);for(let G=1;G<k;G++)P.push(1,G/k);P.push(1,1);const V=[];for(let G=0;G<k;G++)V.push(G,G+1,k*2-G,G,k*2-G,k*2+1-G);I.setAttribute("position",new E.BufferAttribute(new Float32Array(T),3)),I.setAttribute("uv",new E.BufferAttribute(new Float32Array(P),2)),I.setIndex(new E.BufferAttribute(new Uint32Array(V),1));const L=new E.MeshBasicMaterial({map:e.videoTextureEnabled?e.videoTexture:e.imageTexture,side:E.DoubleSide}),W=new E.Mesh(I,L);W.renderOrder=1,W.name=`ModelTVVideoPlugin-${y}-${performance.now()}`;const q=[v[1],v[2],v[3],v[0]],N=n.create3DDomContainer(q);if(N!=null&&N.container){const G=document.createElement("div");G.classList.add("play-icon"),G.style.width="100%",G.style.height="100%",G.style.display="flex",G.style.justifyContent="center",G.style.alignItems="center",G.style.pointerEvents="none",N.container.appendChild(G);const _=document.createElement("img");_.src=Oa,_.style.width="200px",_.style.pointerEvents="auto",_.onclick=()=>{e.videoTexture.image.muted=!1,e.videoTexture.image.play()},G.appendChild(_),s.set(W,N)}return W}),d=v=>{const y=new E.TextureLoader().load(v);return y.minFilter=E.LinearFilter,y.magFilter=E.LinearFilter,y.format=E.RGBFormat,y},h=(v,y)=>{let I=y;return new Promise((k,T)=>{const P=new XMLHttpRequest;P.onreadystatechange=()=>{if(P.readyState===4)if(P.status===200){const V=window.URL||window.webkitURL;I=I||document.createElement("video"),I.crossOrigin="anonymous",I.muted=!0,I.loop=!0,I.playsInline=!0,I.src=V.createObjectURL(P.response);const L=new E.VideoTexture(I);L.minFilter=E.LinearFilter,L.magFilter=E.LinearFilter,L.format=E.RGBFormat,k(Object.assign(L,{videoSource:v}))}else T(new Error("Video download Error: "+P.status))},P.onerror=V=>T(V),P.open("GET",v),P.responseType="blob",P.send()})},u=(v,y)=>U(exports,null,function*(){const{video_src:I,video_poster_src:k,points:T}=v;e.videoSource=I,e.rectPoints=q0(T).map(P=>P.map(({x:V,y:L,z:W})=>new E.Vector3(V,L,W))),e.imageTexture=d(k),y&&(e.videoElement=y),e.videoTexture=yield h(e.videoSource,e.videoElement),e.enabled=!!v.enable,e.enabled&&a()}),m=v=>{if(!e.enabled)return;const y=e.videoMeshes;if(!(!y||v.intersectObjects(y).length===0))return e.videoTexture&&(e.videoTexture.image.paused||e.videoTexture.image.pause()),!1},A=v=>{v==="Floorplan"?n.hide():n.show()},p=()=>{if(!e.enabled)return;const v=i.camera.position;if(s.forEach((y,I)=>{const k=y.css3DObject.position.clone(),T=k.clone().sub(v).normalize(),P=new E.Raycaster(v,T),V=i.model.intersectRaycaster(P)[0],L=k.distanceTo(v),W=.01;V&&V.distance+W<L?y.hide():y.show()}),!r()){const y=e.rectPoints.find(I=>{const k=I[0].clone().add(I[1]).add(I[2]).add(I[3]).divideScalar(4);return I.map(T=>T.clone().add(k).divideScalar(2)).filter(T=>{const P=T.distanceTo(v),V=new E.Raycaster(v,T.clone().sub(v).normalize()),L=i.model.intersectRaycaster(V)[0],W=.01;return!(L&&L.distance+W<P)}).length>=2});(!y||y.length===0)&&o(!0)}},g=()=>{l(),e.videoTexture=void 0,i.off("modeChange",A),i.off("wantsTapGesture",m),i.off("panoArrived",p),i.off("renderFrame",()=>{e.videoMeshes.forEach(v=>{v&&(v.needsRender=!0)})})};return i.on("modeChange",A),i.on("wantsTapGesture",m),i.on("panoArrived",p),i.on("renderFrame",()=>{e.videoMeshes.forEach(v=>{v&&(v.needsRender=!0)})}),{enable:a,disable:l,load:u,dispose:g,state:e,css3DRenderPlugin:n}};var Dn=(i=>(i.SMALL="small",i.MIDLLE="middle",i.LARGE="large",i.EXTRA_LARGE="x-large",i))(Dn||{});function tb(i){ue(i,"svelte-1jhufeh",`.item-label-item.svelte-1jhufeh.svelte-1jhufeh{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:svelte-1jhufeh-fadeIn .3s ease-in}.item-label-item.fold.svelte-1jhufeh>.item-label-item__text-wrap.svelte-1jhufeh{visibility:hidden}.item-label-item.fold.svelte-1jhufeh>.item-label-item__bar.anchor.svelte-1jhufeh{visibility:hidden}.item-label-item.fold.svelte-1jhufeh>.item-label-item__bar.anchor.svelte-1jhufeh:after{visibility:visible}.item-label-item__text-wrap.svelte-1jhufeh.svelte-1jhufeh{height:-moz-fit-content;height:fit-content;padding:0.75rem 1.25rem 0.75rem 0.75rem;position:absolute;width:-moz-max-content;width:max-content;max-width:29.5625rem;min-height:5.75rem;background-image:linear-gradient(269deg, rgba(0, 0, 0, 0.50) 0%, rgba(0, 0, 0, 0.60) 49%, rgba(31, 38, 46, 0.70) 100%);border:0.09375rem solid rgba(255, 255, 255, .65);border-radius:0.1875rem;color:white;transform:translate(-50%, 0);display:flex;justify-content:flex-start;align-items:center;box-sizing:border-box;overflow:hidden;pointer-events:all}.item-label-item__custom.svelte-1jhufeh.svelte-1jhufeh{padding:0;max-width:unset;min-height:unset;background-image:unset;border:0;border-radius:0}.icon-wrap.svelte-1jhufeh.svelte-1jhufeh{width:4.25rem;height:100%;display:flex;justify-content:center;align-content:center}.icon.svelte-1jhufeh.svelte-1jhufeh{width:4.25rem;height:4.25rem;background-repeat:no-repeat;background-size:contain;background-position:center}.item-label-text.svelte-1jhufeh.svelte-1jhufeh{margin-left:0.75rem;padding-left:0.75rem;min-height:4.25rem;height:auto;display:flex;flex-flow:column;justify-content:space-around;align-content:flex-start;border-left:solid rgba(255, 255, 255, .2) 0.0625rem;border-top:solid rgba(255, 255, 255, .2) 0;border-right:solid rgba(255, 255, 255, .2) 0;border-bottom:solid rgba(255, 255, 255, .2) 0;pointer-events:auto}.item-model.svelte-1jhufeh.svelte-1jhufeh{white-space:nowrap;font-size:1.375rem;font-weight:bold;line-height:1.875rem}.item-name.svelte-1jhufeh.svelte-1jhufeh{height:auto;word-wrap:break-word;word-break:break-all;font-size:1.25rem;line-height:1.75rem}.item-label-item__bar.svelte-1jhufeh.svelte-1jhufeh{position:absolute;bottom:0;width:0.1875rem;background-image:linear-gradient(to bottom, white, rgba(255, 255, 255, 0));box-shadow:0 0.125rem 0.5rem 0 rgba(0, 0, 0, 0.20);pointer-events:none}.item-label-item__bar.anchor.svelte-1jhufeh.svelte-1jhufeh:after{content:'';position:absolute;bottom:0;width:1.5rem;height:1.5rem;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAABcVBMVEUAAAAAAAD////////+/v45OTn////////39/fp6enPz8/7+/vw8PD+/v7x8fHc3NzHx8f////////+/v77+/vr6+v////7+/v5+fn////z8/P////////q6uqgoKD+/v79/f3m5ub+/v7////////////////39/f39/f////z8/P////t7e3s7Oz29vb////5+fn////h4eH////g4ODV1dX////////BwcH///////////+Ojo5zc3MlJSX////////////////////////7+/v////////////v7+/u7u7n5+f////39/f////09PT6+vr09PT+/v76+vr////5+fnv7+/09PTk5OT////////////////Jycn///++vr7///////+0tLT///9TU1P///8SEhL////////+/v76+vr////8/Pz39/ft7e3t7e36+vr////////X19fV1dX///+xsbF9fX1iYmL///////+K8mOEAAAAenRSTlMaAIDy8CD41cWRX9uk7Kl1VVEw6dWT/M/NvKyVkY475eWIgx0Z39rHv7axnZyZmIuKhn56emZjX1FEPTU0Kx4PCAX69fTgxcKkopWL7crJuri2sa6rnIyHhX54bVtZVU9NSUcsJSIcFROno6Hcwp+ekHVxbWhnRC8nDLc9s8oAAAOGSURBVEjHpdd3X9pAGAfwkBBDAoQmBJmWvUWWiIDIHoJb66x7a4d78Op7pBQ1J5DY33987vnyXEIu3CGy/0hvnDthM+l0hj3JScSudDKOdhNPpl1i8Ut624Gi6+trI3zW1tcdqGM7/SIC5/ZRR2SNJEm7JkHt7FAJjR18WIs40P3cAFxIOaIRna6ZOHxGunk+TDR1ukjUkSr0w86bcKShiz1OI4JMP8YAD9+4emM2Gm407IfIhzm0NxrhKNsLH4SvQ+RktyvUfZIMXYcPPsSFCcvY6EYW6ZPsxuiYZaLwAW5bDY70Da5paxjvm8d+UcjAUL/GzPtCnDF/mwFWhJ75Zs68x05gxxFRGQfa+RYXokHVCC4O4yOqYLTwBjNB+ncWEZnsbzrIvOLz4CW9g4jODn0ZPO/iZN0UmhaPp0Omq+Q/nLu6NO0hErJnurjKdTBzEdAhkqILXDAdbFkJ7EnDe4EVy198srpiwhE4X1RKDFOqviBwcNPK6gmPmeWlGDz+VdHqRPEVHo0tLTM8RpcX4G+flLe6kU/Cs1pYRnm8uriQhfoC+0ZDvbMLi6ttfO5fDCDCKFrvooAKAov+c4BZvy8EzaolCHRdIZ+fBThl9G0Ih1RCrBJWbPiMKYAZ409oMSqFWAktzJ9GBuDvRoVGOIQJMSas0CiM39u45v0M9tbaeLc6F5M+7dhcbRfgg+pcU/oNa85VDwDOzBtmpP9UKsN8BuCzeb1P+kPi08+fASyr6fVPUh/PJ72+xj/bZk5PSV0YlJ4z83iC4EipS5LkiAkeHxGcQerLwMARRzyW+QklhUgKpST8nXfYg+fHkjS89MPz0MFnhKdCSWpc8RBnPAZB3RUvLt7i3oob7f5juDzuikY81tjcHlcHg9xabdyUWDvF2ay3slecr1ptimNx9lhhs1bzXQxy5NZa6VMx9pS2Wt1H77cVjFartYvBdlDICDc0cbVa3Twd2NcOyuLwVqo+K1ebjgdcr0k+O1uXwThfl8vlhqm+99kASup5GINsYhhmG8d7UXzcBgo2e21cd9WlUll5/7G958ql8uxu7y0zS5SGSkOGBA51TRiGQAi232Y9v4kVQZGavpt6c6l3tLpNsc38gGOC01IeLg4Xi8NaLz1KkqO0VzvcTrFscYo4oLjiRAsKEXeJPRqxW0bsFWLGLVbiocyZSm5vbW0nU9BsIfyp/AGqAvfOkBaFawAAAABJRU5ErkJggg==');background-position:center;background-size:contain;transform:translate(-0.65625rem, 50%)}@keyframes svelte-1jhufeh-fadeIn{from{opacity:0
|
|
547
547
|
}to{opacity:1
|
|
548
|
-
}}`)}function nb(i){let t,e,n,s=(i[0].code||i[0].id)+"",o,r,a,l=i[0].name+"",c,d=i[0].icon&&Mc(i);return{c(){d&&d.c(),t=ee(),e=x("div"),n=x("span"),o=Me(s),r=ee(),a=x("span"),c=Me(l),w(n,"class","item-model svelte-1jhufeh"),w(a,"class","item-name svelte-1jhufeh"),w(e,"class","item-label-text svelte-1jhufeh")},m(h,u){d&&d.m(h,u),B(h,t,u),B(h,e,u),D(e,n),D(n,o),D(e,r),D(e,a),D(a,c)},p(h,u){h[0].icon?d?d.p(h,u):(d=Mc(h),d.c(),d.m(t.parentNode,t)):d&&(d.d(1),d=null),u&1&&s!==(s=(h[0].code||h[0].id)+"")&&Oe(o,s),u&1&&l!==(l=h[0].name+"")&&Oe(c,l)},d(h){d&&d.d(h),h&&O(t),h&&O(e)}}}function ib(i){let t;return{c(){t=x("div")},m(e,n){B(e,t,n),i[6](t)},p:J,d(e){e&&O(t),i[6](null)}}}function Mc(i){let t,e,n,s,o;return{c(){t=x("div"),e=x("div"),w(e,"class","icon svelte-1jhufeh"),w(e,"style",n=`background-image: url(${i[0].icon})`),w(t,"class","icon-wrap svelte-1jhufeh")},m(r,a){B(r,t,a),D(t,e),s||(o=be(t,"click",i[7]),s=!0)},p(r,a){a&1&&n!==(n=`background-image: url(${r[0].icon})`)&&w(e,"style",n)},d(r){r&&O(t),s=!1,o()}}}function sb(i){let t,e,n,s,o,r,a,l,c,d;function h(A,p){return p&1&&(n=null),n==null&&(n=typeof A[0].render=="function"),n?ib:nb}let u=h(i,-1),m=u(i);return{c(){t=x("div"),e=x("div"),m.c(),o=ee(),r=x("div"),w(e,"class",s=Re(rt("item-label-item__text-wrap",{"item-label-item__custom":typeof i[0].render=="function"}))+" svelte-1jhufeh"),z(e,"bottom",`${i[0].strokeLength}px`),w(r,"class",a=Re(rt("item-label-item__bar",{anchor:i[1]}))+" svelte-1jhufeh"),z(r,"height",`${i[0].strokeLength}px`),w(t,"class",l=Re(rt("item-label-item",{fold:i[0].isFold}))+" svelte-1jhufeh"),z(t,"z-index",i[0].zIndex),z(t,"transform",i[0].transform)},m(A,p){B(A,t,p),D(t,e),m.m(e,null),D(t,o),D(t,r),c||(d=be(e,"click",i[4]),c=!0)},p(A,[p]){u===(u=h(A,p))&&m?m.p(A,p):(m.d(1),m=u(A),m&&(m.c(),m.m(e,null))),p&1&&s!==(s=Re(rt("item-label-item__text-wrap",{"item-label-item__custom":typeof A[0].render=="function"}))+" svelte-1jhufeh")&&w(e,"class",s),p&1&&z(e,"bottom",`${A[0].strokeLength}px`),p&2&&a!==(a=Re(rt("item-label-item__bar",{anchor:A[1]}))+" svelte-1jhufeh")&&w(r,"class",a),p&1&&z(r,"height",`${A[0].strokeLength}px`),p&1&&l!==(l=Re(rt("item-label-item",{fold:A[0].isFold}))+" svelte-1jhufeh")&&w(t,"class",l),p&1&&z(t,"z-index",A[0].zIndex),p&1&&z(t,"transform",A[0].transform)},i:J,o:J,d(A){A&&O(t),m.d(),c=!1,d()}}}function ob(i,t,e){let{itemLabel:n}=t,{hooks:s}=t,{anchorEnabled:o}=t,{onIconClick:r}=t;function a(){s.emit("onLabelClick",n)}let l;function c(h){Qe[h?"unshift":"push"](()=>{l=h,e(3,l)})}const d=h=>r(n);return i.$$set=h=>{"itemLabel"in h&&e(0,n=h.itemLabel),"hooks"in h&&e(5,s=h.hooks),"anchorEnabled"in h&&e(1,o=h.anchorEnabled),"onIconClick"in h&&e(2,r=h.onIconClick)},i.$$.update=()=>{if(i.$$.dirty&9&&typeof n.render=="function"&&l&&l.children.length===0){const h=n.render(n);h&&l.appendChild(h)}},[n,o,r,l,a,s,c,d]}class rb extends le{constructor(t){super(),ae(this,t,ob,sb,oe,{itemLabel:0,hooks:5,anchorEnabled:1,onIconClick:2},tb)}}const{Raycaster:ab,Vector3:q2}=E,xc=(i,t,e,n)=>{const s=t.clone().sub(e).normalize(),o=new ab;o.set(e,s);const[r]=i.model.intersectRaycaster(o);return r&&r.distance+.01<n},lb=(i,t)=>{switch(t){case Dn.SMALL:return Math.ceil(-27.78*i+85);case Dn.MIDLLE:return Math.ceil(-38.9*i+130);case Dn.LARGE:return Math.ceil(-44.44*i+140);case Dn.EXTRA_LARGE:return Math.ceil(-92.59*i+300)}},cb=i=>`translate(${i[0]}px, ${i[1]}px)`;function Dc(i){return i.map(t=>H({observerIndex:void 0,visible:!1,isFold:!1},t))}function db(i){ue(i,"svelte-f82itz",".item-labels-container.svelte-f82itz{width:100%;height:100%;position:relative}")}function Sc(i,t,e){const n=i.slice();return n[29]=t[e],n}function Tc(i){let t,e;return t=new rb({props:{itemLabel:i[29],hooks:i[0],anchorEnabled:i[2],onIconClick:i[6]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s[0]&2&&(o.itemLabel=n[29]),s[0]&1&&(o.hooks=n[0]),s[0]&4&&(o.anchorEnabled=n[2]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function Lc(i,t){let e,n,s,o=t[29].visible&&Tc(t);return{key:i,first:null,c(){e=Pe(),o&&o.c(),n=Pe(),this.first=e},m(r,a){B(r,e,a),o&&o.m(r,a),B(r,n,a),s=!0},p(r,a){t=r,t[29].visible?o?(o.p(t,a),a[0]&2&&M(o,1)):(o=Tc(t),o.c(),M(o,1),o.m(n.parentNode,n)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){s||(M(o),s=!0)},o(r){j(o),s=!1},d(r){r&&O(e),o&&o.d(r),r&&O(n)}}}function hb(i){let t,e=[],n=new Map,s,o,r=i[1];const a=l=>l[29].id;for(let l=0;l<r.length;l+=1){let c=Sc(i,r,l),d=a(c);n.set(d,e[l]=Lc(d,c))}return{c(){t=x("div");for(let l=0;l<e.length;l+=1)e[l].c();w(t,"class","item-labels-container svelte-f82itz"),Ne(()=>i[12].call(t)),z(t,"opacity",i[5]?1:0)},m(l,c){B(l,t,c);for(let d=0;d<e.length;d+=1)e[d]&&e[d].m(t,null);s=bo(t,i[12].bind(t)),o=!0},p(l,c){c[0]&71&&(r=l[1],de(),e=jt(e,c,a,1,l,r,n,t,vn,Lc,null,Sc),he()),c[0]&32&&z(t,"opacity",l[5]?1:0)},i(l){if(!o){for(let c=0;c<r.length;c+=1)M(e[c]);o=!0}},o(l){for(let c=0;c<e.length;c+=1)j(e[c]);o=!1},d(l){l&&O(t);for(let c=0;c<e.length;c+=1)e[c].d();s()}}}let ub=11;function fb(i,t,e){const{Vector3:n}=E;let{five:s}=t,{modelOcclusionEnable:o}=t,{itemLabels:r}=t,{hooks:a}=t,{displayStrategyType:l}=t,{maxVisibleDistance:c}=t,d=null,h=null,u=(s==null?void 0:s.currentMode)===Te.Five.Mode.Panorama,m,A,p=[],g=!0;const
|
|
548
|
+
}}`)}function nb(i){let t,e,n,s=(i[0].code||i[0].id)+"",o,r,a,l=i[0].name+"",c,d=i[0].icon&&Mc(i);return{c(){d&&d.c(),t=ee(),e=x("div"),n=x("span"),o=Me(s),r=ee(),a=x("span"),c=Me(l),w(n,"class","item-model svelte-1jhufeh"),w(a,"class","item-name svelte-1jhufeh"),w(e,"class","item-label-text svelte-1jhufeh")},m(h,u){d&&d.m(h,u),B(h,t,u),B(h,e,u),D(e,n),D(n,o),D(e,r),D(e,a),D(a,c)},p(h,u){h[0].icon?d?d.p(h,u):(d=Mc(h),d.c(),d.m(t.parentNode,t)):d&&(d.d(1),d=null),u&1&&s!==(s=(h[0].code||h[0].id)+"")&&Oe(o,s),u&1&&l!==(l=h[0].name+"")&&Oe(c,l)},d(h){d&&d.d(h),h&&O(t),h&&O(e)}}}function ib(i){let t;return{c(){t=x("div")},m(e,n){B(e,t,n),i[6](t)},p:J,d(e){e&&O(t),i[6](null)}}}function Mc(i){let t,e,n,s,o;return{c(){t=x("div"),e=x("div"),w(e,"class","icon svelte-1jhufeh"),w(e,"style",n=`background-image: url(${i[0].icon})`),w(t,"class","icon-wrap svelte-1jhufeh")},m(r,a){B(r,t,a),D(t,e),s||(o=be(t,"click",i[7]),s=!0)},p(r,a){a&1&&n!==(n=`background-image: url(${r[0].icon})`)&&w(e,"style",n)},d(r){r&&O(t),s=!1,o()}}}function sb(i){let t,e,n,s,o,r,a,l,c,d;function h(A,p){return p&1&&(n=null),n==null&&(n=typeof A[0].render=="function"),n?ib:nb}let u=h(i,-1),m=u(i);return{c(){t=x("div"),e=x("div"),m.c(),o=ee(),r=x("div"),w(e,"class",s=Re(rt("item-label-item__text-wrap",{"item-label-item__custom":typeof i[0].render=="function"}))+" svelte-1jhufeh"),z(e,"bottom",`${i[0].strokeLength}px`),w(r,"class",a=Re(rt("item-label-item__bar",{anchor:i[1]}))+" svelte-1jhufeh"),z(r,"height",`${i[0].strokeLength}px`),w(t,"class",l=Re(rt("item-label-item",{fold:i[0].isFold}))+" svelte-1jhufeh"),z(t,"z-index",i[0].zIndex),z(t,"transform",i[0].transform)},m(A,p){B(A,t,p),D(t,e),m.m(e,null),D(t,o),D(t,r),c||(d=be(e,"click",i[4]),c=!0)},p(A,[p]){u===(u=h(A,p))&&m?m.p(A,p):(m.d(1),m=u(A),m&&(m.c(),m.m(e,null))),p&1&&s!==(s=Re(rt("item-label-item__text-wrap",{"item-label-item__custom":typeof A[0].render=="function"}))+" svelte-1jhufeh")&&w(e,"class",s),p&1&&z(e,"bottom",`${A[0].strokeLength}px`),p&2&&a!==(a=Re(rt("item-label-item__bar",{anchor:A[1]}))+" svelte-1jhufeh")&&w(r,"class",a),p&1&&z(r,"height",`${A[0].strokeLength}px`),p&1&&l!==(l=Re(rt("item-label-item",{fold:A[0].isFold}))+" svelte-1jhufeh")&&w(t,"class",l),p&1&&z(t,"z-index",A[0].zIndex),p&1&&z(t,"transform",A[0].transform)},i:J,o:J,d(A){A&&O(t),m.d(),c=!1,d()}}}function ob(i,t,e){let{itemLabel:n}=t,{hooks:s}=t,{anchorEnabled:o}=t,{onIconClick:r}=t;function a(){s.emit("onLabelClick",n)}let l;function c(h){Qe[h?"unshift":"push"](()=>{l=h,e(3,l)})}const d=h=>r(n);return i.$$set=h=>{"itemLabel"in h&&e(0,n=h.itemLabel),"hooks"in h&&e(5,s=h.hooks),"anchorEnabled"in h&&e(1,o=h.anchorEnabled),"onIconClick"in h&&e(2,r=h.onIconClick)},i.$$.update=()=>{if(i.$$.dirty&9&&typeof n.render=="function"&&l&&l.children.length===0){const h=n.render(n);h&&l.appendChild(h)}},[n,o,r,l,a,s,c,d]}class rb extends le{constructor(t){super(),ae(this,t,ob,sb,oe,{itemLabel:0,hooks:5,anchorEnabled:1,onIconClick:2},tb)}}const{Raycaster:ab,Vector3:q2}=E,xc=(i,t,e,n)=>{const s=t.clone().sub(e).normalize(),o=new ab;o.set(e,s);const[r]=i.model.intersectRaycaster(o);return r&&r.distance+.01<n},lb=(i,t)=>{switch(t){case Dn.SMALL:return Math.ceil(-27.78*i+85);case Dn.MIDLLE:return Math.ceil(-38.9*i+130);case Dn.LARGE:return Math.ceil(-44.44*i+140);case Dn.EXTRA_LARGE:return Math.ceil(-92.59*i+300)}},cb=i=>`translate(${i[0]}px, ${i[1]}px)`;function Dc(i){return i.map(t=>H({observerIndex:void 0,visible:!1,isFold:!1},t))}function db(i){ue(i,"svelte-f82itz",".item-labels-container.svelte-f82itz{width:100%;height:100%;position:relative}")}function Sc(i,t,e){const n=i.slice();return n[29]=t[e],n}function Tc(i){let t,e;return t=new rb({props:{itemLabel:i[29],hooks:i[0],anchorEnabled:i[2],onIconClick:i[6]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s[0]&2&&(o.itemLabel=n[29]),s[0]&1&&(o.hooks=n[0]),s[0]&4&&(o.anchorEnabled=n[2]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function Lc(i,t){let e,n,s,o=t[29].visible&&Tc(t);return{key:i,first:null,c(){e=Pe(),o&&o.c(),n=Pe(),this.first=e},m(r,a){B(r,e,a),o&&o.m(r,a),B(r,n,a),s=!0},p(r,a){t=r,t[29].visible?o?(o.p(t,a),a[0]&2&&M(o,1)):(o=Tc(t),o.c(),M(o,1),o.m(n.parentNode,n)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){s||(M(o),s=!0)},o(r){j(o),s=!1},d(r){r&&O(e),o&&o.d(r),r&&O(n)}}}function hb(i){let t,e=[],n=new Map,s,o,r=i[1];const a=l=>l[29].id;for(let l=0;l<r.length;l+=1){let c=Sc(i,r,l),d=a(c);n.set(d,e[l]=Lc(d,c))}return{c(){t=x("div");for(let l=0;l<e.length;l+=1)e[l].c();w(t,"class","item-labels-container svelte-f82itz"),Ne(()=>i[12].call(t)),z(t,"opacity",i[5]?1:0)},m(l,c){B(l,t,c);for(let d=0;d<e.length;d+=1)e[d]&&e[d].m(t,null);s=bo(t,i[12].bind(t)),o=!0},p(l,c){c[0]&71&&(r=l[1],de(),e=jt(e,c,a,1,l,r,n,t,vn,Lc,null,Sc),he()),c[0]&32&&z(t,"opacity",l[5]?1:0)},i(l){if(!o){for(let c=0;c<r.length;c+=1)M(e[c]);o=!0}},o(l){for(let c=0;c<e.length;c+=1)j(e[c]);o=!1},d(l){l&&O(t);for(let c=0;c<e.length;c+=1)e[c].d();s()}}}let ub=11;function fb(i,t,e){const{Vector3:n}=E;let{five:s}=t,{modelOcclusionEnable:o}=t,{itemLabels:r}=t,{hooks:a}=t,{displayStrategyType:l}=t,{maxVisibleDistance:c}=t,d=null,h=null,u=(s==null?void 0:s.currentMode)===Te.Five.Mode.Panorama,m,A,p=[],g=!0;const v=(Q,F)=>{const Z=Q.camera.position.clone(),X=new n(F.modelPosition[0],F.modelPosition[1],F.modelPosition[2]),$=X.distanceTo(Z);return c!==void 0&&Q.state.mode===Te.Five.Mode.Panorama&&$>c?!1:xc(Q,X.clone().sub(Z).normalize(),Z,$)},y=Q=>{const{camera:F,model:Z}=s,{x:X,y:$,z:ce}=Q.clone().project(F),se=(X+1)/2,we=(2-($+1))/2;return!!(Math.abs(ce)<1&&[se,we].every(ve=>ve<1&&ve>=0))},I=(Q,F)=>{const Z=new n(F.modelPosition[0],F.modelPosition[1],F.modelPosition[2]),X=Q.project2d(Z),$=X==null?void 0:X.x,ce=X==null?void 0:X.y;return[$,ce]},k=(Q,F)=>{const Z=F.map($=>{if(Q.state.panoIndex!==$.panoIndex)return Ae(H({},$),{visible:!1});const ce=I(Q,$);$.name.length*ub;const se=lb($.modelPosition[1],l),we=Q.currentMode===Te.Five.Mode.Panorama?y(new n($.position[0],$.position[1],$.position[2])):!0,Ce=o?v(Q,$):!1,pe=we&&!Ce;if(!pe)return Ae(H({},$),{visible:pe});p.push(ce);const Be=cb(ce);return Ae(H({},$),{visible:pe,transform:Be,strokeLength:se})}),X=Z.filter(({visible:$})=>$).map($=>({itemLabelItem:$,distance:new n($.modelPosition[0],$.modelPosition[1],$.modelPosition[2]).clone().distanceTo(Q.camera.position)})).sort(($,ce)=>$.distance-ce.distance);return Z.map($=>{const ce=X.findIndex(se=>se.itemLabelItem.id===$.id);return ce!==void 0?Ae(H({},$),{zIndex:ce*10}):$})},T=()=>{p=[],e(1,h=k(s,h))},P=()=>{e(5,g=!1),V()},V=uu(()=>{e(5,g=!0),T()},300),L=()=>{s.once("renderFrame",T)},W=()=>{window.addEventListener("resize",L,!1)},q=()=>{d!==r&&(e(1,h=Dc(r)),d=r,T())},N=(Q,F)=>{let Z=[];for(const{position:$,panoIndex:ce}of F){const se=Q.distanceTo($);(c===void 0||se<=c||s.state.mode!==Te.Five.Mode.Panorama)&&Z.push({panoIndex:ce,obVector:$,distance:se})}Z=Z.sort(($,ce)=>$.distance-ce.distance);let X;for(const $ of Z){const{obVector:ce,distance:se,panoIndex:we}=$;if(!xc(s,Q,ce,se)){X=we;break}}return typeof X=="number"?F[X]:void 0},G=Q=>{if(s.state.mode===Te.Five.Mode.Panorama)return;const F=s.work.observers,Z=new n().fromArray(Q.position),X=N(Z,F);if(X&&(Q.observerIndex=X.panoIndex),typeof Q.observerIndex=="number"){const $=F[Q.observerIndex],ce=Z.clone().sub($.position).normalize(),se={longitude:Math.PI+Math.atan2(ce.x,ce.z),latitude:Math.acos(ce.y/ce.length())-Math.PI/2};s.setState(Ae(H({},se),{mode:Te.Five.Mode.Panorama,panoIndex:Q.observerIndex})),s.once("initAnimationEnded",()=>{e(1,h=h.map(we=>Ae(H({},we),{isFold:we.id!==Q.id}))),s.once("cameraUpdate",()=>{e(1,h=h.map(we=>Ae(H({},we),{isFold:!1})))})})}};Dh(()=>{q()}),vt(()=>{e(1,h=Dc(r)),d=r,T(),W(),s.on("cameraUpdate",P)}),Lt(()=>{s.off("cameraUpdate",P),window.removeEventListener("resize",L,!1)});function _(){m=this.clientWidth,A=this.clientHeight,e(3,m),e(4,A)}return i.$$set=Q=>{"five"in Q&&e(7,s=Q.five),"modelOcclusionEnable"in Q&&e(8,o=Q.modelOcclusionEnable),"itemLabels"in Q&&e(9,r=Q.itemLabels),"hooks"in Q&&e(0,a=Q.hooks),"displayStrategyType"in Q&&e(10,l=Q.displayStrategyType),"maxVisibleDistance"in Q&&e(11,c=Q.maxVisibleDistance)},[a,h,u,m,A,g,G,s,o,r,l,c,_]}class mb extends le{constructor(t){super(),ae(this,t,fb,hb,oe,{five:7,modelOcclusionEnable:8,itemLabels:9,hooks:0,displayStrategyType:10,maxVisibleDistance:11},db,[-1,-1])}}function gb(i){return i.item_labels.map(t=>Ae(H({},t),{modelPosition:[t.position[0],t.position[1],t.position[2]],observerIndex:void 0}))}const pb=void 0,Ab=(i,t)=>{var u,m,A,p;const e={container:document.createElement("div"),data:null,enabled:!0,fiveModeEnabled:!0,itemLabels:[],wrapper:null,app:void 0,hooks:new Te.Subscribe,modelOcclusionEnable:(u=t==null?void 0:t.modelOcclusionEnable)!=null?u:!0,onlyVisibleInPanorama:(m=t==null?void 0:t.onlyVisibleInPanorama)!=null?m:!0,displayStrategyType:(A=t==null?void 0:t.displayStrategyType)!=null?A:Dn.SMALL,maxVisibleDistance:(p=t==null?void 0:t.maxVisibleDistance)!=null?p:pb};e.container.setAttribute("class","item-label-plugin-container"),e.container.style.cssText=`
|
|
549
549
|
position: absolute;
|
|
550
550
|
left: 0;
|
|
551
551
|
top: 0;
|
|
552
552
|
width: 100%;
|
|
553
553
|
height: 100%;
|
|
554
554
|
z-index: 5;
|
|
555
|
-
`,e.container.style.pointerEvents="none";const n=g=>(e.wrapper=g,g.appendChild(e.container),l(),!0),s=g=>{e.itemLabels=gb(g),l()},o=()=>(e.enabled||(e.enabled=!0,l()),!0),r=()=>(e.enabled&&(e.enabled=!1,l()),!0),a=()=>{d(),e.container.remove()},l=()=>{var g;if(e.wrapper){if(!e.enabled||!e.fiveModeEnabled){(g=e.app)==null||g.$destroy(),e.app=void 0;return}e.app?e.app.$set({five:i,itemLabels:e.itemLabels}):e.app=new mb({target:e.container,props:{five:i,modelOcclusionEnable:e.modelOcclusionEnable,itemLabels:e.itemLabels,hooks:e.hooks,displayStrategyType:e.displayStrategyType,maxVisibleDistance:e.maxVisibleDistance}})}},c=()=>{i.on("modeChange",h),i.once("dispose",a)},d=()=>{i.off("modeChange",h)},h=g=>{if(g!==Te.Five.Mode.Panorama){e.fiveModeEnabled=!1,r();return}i.once("initAnimationEnded",()=>{e.fiveModeEnabled=!0,o()})};return c(),{appendTo:n,load:s,enable:o,disable:r,dispose:a,hooks:e.hooks}},vb={name:"ItemLabelPlugin",version:0};class bb extends rs{constructor(e){super(e);f(this,"state");f(this,"container");f(this,"enabled");this.five=e,this.five.once("dispose",this.dispose),this.enabled=!0,this.state=this.initState()}enable(e){this.enabled=!0,this.updateState(Ae(H({},e),{userAction:!0}))}disable(e){this.enabled=!1,this.updateState(Ae(H({},e),{userAction:!0}))}show(e){if(this.state.enabled)return this.setState(Ae(H({},this.state),{visible:!0}),e),Promise.resolve()}hide(e){if(this.state.enabled)return this.setState(Ae(H({},this.state),{visible:!1}),e),Promise.resolve()}dispose(){this.container.remove()}setState(e,n){if(!this.enabled)return;const s=H({},this.state);this.state=H(H(H({},this.state),e),n),this.stateChangedCallback(s,n)}get visible(){return this.five.state.mode===Te.Five.Mode.Panorama}appendTo(e){this.enabled&&(this.container=e,this.render())}updateState(e){this.setState(Ae(H({},this.state),{enabled:this.enabled,visible:this.visible}),e)}}function yb(i){ue(i,"svelte-1irjijd",'.plugin-DoorLabelPlugin-item.svelte-1irjijd.svelte-1irjijd{position:absolute;left:0;top:0;width:0;height:0;pointer-events:none;transition:opacity 0.3s ease}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd{position:absolute;top:50%;left:50%;border-radius:0.125rem;background:rgba(0, 0, 0, 0.35);line-height:0.75rem;padding:0.375rem;white-space:nowrap;font-size:0.75rem;font-style:normal;color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform ease 1s, background ease 0.3s, color ease 0.3s}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd::after{content:"";display:block;position:absolute;top:-0.0625rem;left:-0.0625rem;bottom:-0.0625rem;right:-0.0625rem;border-radius:0.125rem;border:0.0625rem solid rgba(0, 0, 0, 0);-o-border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAABlBMVEUAAAD///+l2Z/dAAAAAnRSTlMAIE397fAAAAAVSURBVAjXY2BjgCMQ+PABhIAASRwARxwD8fgzCQAAAAAASUVORK5CYII=") 4;border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAABlBMVEUAAAD///+l2Z/dAAAAAnRSTlMAIE397fAAAAAVSURBVAjXY2BjgCMQ+PABhIAASRwARxwD8fgzCQAAAAAASUVORK5CYII=") 4;transition:opacity ease 0.3s}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd:active,.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd:focus{background:rgba(0, 0, 0, 0.5);color:rgba(255, 255, 255, 0.5)}.plugin-DoorLabelPlugin-icon.svelte-1irjijd.svelte-1irjijd{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSIxMHB4IiB2aWV3Qm94PSIwIDAgMTAgMTAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+aW1hZ2Ut566t5aS0PC90aXRsZT4KICAgIDxkZWZzPgogICAgICAgIDxyZWN0IGlkPSJwYXRoLTEiIHg9IjAiIHk9IjAiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCI+PC9yZWN0PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iNjYuMDYyMTk3NSUiIHkxPSI1MCUiIHgyPSItMS4xMzY4NjgzOGUtMTElIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMyI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0ZGRkZGRiIgc3RvcC1vcGFjaXR5PSIwLjg1IiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iODQuMzM5NzMxJSIgeTE9IjUwJSIgeDI9IjIzLjQyODMzNzclIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtNCI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIHN0b3Atb3BhY2l0eT0iMCIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRkZGRkZGIiBzdG9wLW9wYWNpdHk9IjAuOCIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSLpobXpnaItMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IlZSLeWIhumXtOW8leWvvOagh+etvuWkh+S7vS0zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzM5LjAwMDAwMCwgLTU0My4wMDAwMDApIj4KICAgICAgICAgICAgPGcgaWQ9Iue8lue7hC0y5aSH5Lu9LTEyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMDUuMDAwMDAwLCA1MzYuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0iaW1hZ2Ut566t5aS0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzNC4wMDAwMDAsIDcuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPG1hc2sgaWQ9Im1hc2stMiIgZmlsbD0id2hpdGUiPgogICAgICAgICAgICAgICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPgogICAgICAgICAgICAgICAgICAgIDwvbWFzaz4KICAgICAgICAgICAgICAgICAgICA8dXNlIGlkPSJCRyIgZmlsbC1vcGFjaXR5PSIwIiBmaWxsPSIjRDhEOEQ4IiBvcGFjaXR5PSIwLjUxMTQ2Mjk4NCIgeGxpbms6aHJlZj0iI3BhdGgtMSI+PC91c2U+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTcuOTM4ODY5OCwxLjE0Mzc2MTI5IEM4LjI1NDY1NDA0LDEuMjU3NTgwMzUgOC4zMTc4Mjg0LDEuMzAyMTY5OTggOC4zMTc3ODUyMSwxLjM1ODE1MjIzIEM4LjMxNzc1MDcyLDEuNDAyODQzMzUgOC4zMDU3NDkwNywxLjQ0NzUyNTI0IDguMjgxNzg0MTEsMS40ODcyMDUyMSBMOC4yODE3ODQxMSwxLjQ4NzIwNTIxIEw2LjIwOTg5MDQxLDQuOTE3NzQyNDUgQzYuMTM3ODg4MDgsNS4wMzY5NjAyOSA2LjEwMTg4NjkxLDUuMTcxMjIwMiA2LjEwMTg4NjkxLDUuMzA1NDgwMTEgQzYuMTAxODg2OTEsNS40Mzk3NDAwMiA2LjEzNzg4ODA4LDUuNTczOTk5OTQgNi4yMDk4OTA0MSw1LjY5MzIxNzc4IEw2LjIwOTg5MDQxLDUuNjkzMjE3NzggTDguMjgxNzg0MTEsOS4xMjM3NTUwMSBDOC4zMTc0NzQzOCw5LjE4Mjg0OTE2IDguMzI1ODMzMjIsOS4yNTA4MTUyIDguMzEwNDk1OTUsOS4zMTI5MzAyOCBDOC4yOTUxNTg2OCw5LjM3NTA0NTM2IDguMjU2MTI1MzEsOS40MzEzMDk0NyA4LjE5NzAzMTE3LDkuNDY2OTk5NzMgQzguMTU3MzUxMTksOS40OTA5NjQ2OSA4LjExMjY2OTMxLDkuNTAyOTY2MzQgOC4wNjc5NzgxOCw5LjUwMzAwMDgzIEM4LjAyMzI4NzA2LDkuNTAzMDM1MzEgNy45Nzg1ODY3MSw5LjQ5MTEwMjYzIDcuOTM4ODY5OCw5LjQ2NzE5ODkzIEw3LjkzODg2OTgsOS40NjcxOTg5MyBMMS4zNzk5MTIxOCw1LjUxOTY3ODE1IEMxLjMyMDc2MzAyLDUuNDg0MDc5MTIgMS4yODE2NDI4Nyw1LjQyNzg3NTMyIDEuMjY2MjA5NzcsNS4zNjU3ODM5OCBDMS4yNTQ2OTI1Niw1LjMxOTQ0NzMyIDEuMjU2MzY2OTgsNS4yNjk4MzE4MiAxLjI3Mjc1MzMzLDUuMjIzMDU0MDUgTDEuMjcyNzUzMzMsNS4yMjMwNTQwNSBaIiBpZD0i566t5aS0IiBzdHJva2U9InVybCgjbGluZWFyR3JhZGllbnQtNCkiIHN0cm9rZS13aWR0aD0iMC41IiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTMpIiBtYXNrPSJ1cmwoI21hc2stMikiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUuMDM5MjAwLCA1LjMwNTQ4MCkgc2NhbGUoMSwgLTEpIHJvdGF0ZSgtOTAuMDAwMDAwKSB0cmFuc2xhdGUoLTUuMDM5MjAwLCAtNS4zMDU0ODApICI+PC9wYXRoPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=") no-repeat;background-size:100%;display:inline-block;width:0.625rem;height:0.625rem;margin-left:0.25rem;transform-origin:center}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].left.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].right.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].right.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].forward.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].back.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].back.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].back.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].forward.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].forward.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].right.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].left.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].left.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd{color:#f9eac1}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSI4cHgiIHZpZXdCb3g9IjAgMCAxMCA4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPueureWktDwvdGl0bGU+CiAgICA8ZGVmcz4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjEwLjYzODU4ODQlIiB5MT0iMCUiIHgyPSI5Ni41MTYxNDc0JSIgeTI9IjEyOS43MzEzNTQlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkYyQ0MiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0VBRDA5QSIgb2Zmc2V0PSI0OC43MTQ0NDc4JSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRDFCMTdFIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPC9kZWZzPgogICAgPGcgaWQ9Iumhtemdoi0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0i5pyq5p2l5a625aSH5Lu9LTI1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzA1LjAwMDAwMCwgLTU0NS4wMDAwMDApIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTEpIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8ZyBpZD0i57yW57uELTLlpIfku70tMTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI0NS4wMDAwMDAsIDUzNy4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJpbWFnZS3nrq3lpLQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYwLjAwMDAwMCwgNy4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOC40OTU3ODI5NCwxLjYxNjQ1MTEgTDYuNDIzODg5MjUsNS4wNDY5ODgzMyBDNi4zMjc4ODYxMyw1LjIwNTk0NTQ1IDYuMzI3ODg2MTMsNS40MDUwMTQ3NyA2LjQyMzg4OTI1LDUuNTYzOTcxODkgTDguNDk1NzgyOTQsOC45OTQ1MDkxMiBDOC42Mzg1NDQwMSw5LjIzMDg4NTcxIDguNTYyNjUzNjQsOS41MzgyMzc1IDguMzI2Mjc3MDYsOS42ODA5OTg1NiBDOC4xNjc1NTcxNiw5Ljc3Njg1ODQgNy45Njg4MjE5NSw5Ljc3NzAxMTc1IDcuODA5OTU0MzEsOS42ODEzOTY5NyBMMS4yNTA5OTY2OSw1LjczMzg3NjE4IEMxLjAxNDQwMDA4LDUuNTkxNDgwMDcgMC45MzgwMzU0ODEsNS4yODQyNDU3NiAxLjA4MDQzMTU5LDUuMDQ3NjQ5MTQgQzEuMTIyNTE0OCw0Ljk3NzcyNjI4IDEuMTgxMDczODMsNC45MTkxNjcyNSAxLjI1MDk5NjY5LDQuODc3MDg0MDQgTDcuODA5OTU0MzEsMC45Mjk1NjMyNTMgQzguMDQ2NTUwOTMsMC43ODcxNjcxNDIgOC4zNTM3ODUyNCwwLjg2MzUzMTczOSA4LjQ5NjE4MTM1LDEuMTAwMTI4MzUgQzguNTkxNzk2MTMsMS4yNTg5OTYgOC41OTE2NDI3OCwxLjQ1NzczMTIgOC40OTU3ODI5NCwxLjYxNjQ1MTEgWiIgaWQ9IueureWktCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNS4wMzkyMDAsIDUuMzA1NDgwKSBzY2FsZSgxLCAtMSkgcm90YXRlKC05MC4wMDAwMDApIHRyYW5zbGF0ZSgtNS4wMzkyMDAsIC01LjMwNTQ4MCkgIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==") no-repeat}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd:active,.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd:focus{background:rgba(0, 0, 0, 0.5);color:rgba(249, 234, 193, 0.5)}')}function wb(i){let t,e,n,s,o,r,a,l;return{c(){t=x("div"),e=x("div"),n=x("span"),n.textContent=`${i[8]}`,s=ee(),o=x("i"),w(n,"class","plugin-DoorLabelPlugin-txt svelte-1irjijd"),w(o,"class","plugin-DoorLabelPlugin-icon svelte-1irjijd"),w(e,"class",r=Re(rt("plugin-DoorLabelPlugin-cnt",i[0].toward))+" svelte-1irjijd"),w(e,"style",`transform: ${i[6]||"initial"};pointer-events: ${i[5]?"auto":"none"};opacity: ${i[5]?1:0}`),w(e,"data-camera-toward",i[7]),w(t,"style",`left: ${i[3]||0}%;top: ${i[4]||0}%;opacity: ${i[5]?1:0}`),w(t,"class","plugin-DoorLabelPlugin-item svelte-1irjijd")},m(c,d){B(c,t,d),D(t,e),D(e,n),D(e,s),D(e,o),i[10](t),a||(l=be(e,"click",i[9]),a=!0)},p(c,[d]){d&1&&r!==(r=Re(rt("plugin-DoorLabelPlugin-cnt",c[0].toward))+" svelte-1irjijd")&&w(e,"class",r)},i:J,o:J,d(c){c&&O(t),i[10](null),a=!1,l()}}}function Cb(i,t,e){let{props:n}=t,{onClick:s}=t,o,{left:r,top:a,inSight:l,transform:c,panoIndex:d,cameraToward:h,name:u}=n;const m=()=>{if(!r||!a||!l||!o)return;const g=o.current.clientWidth/window.innerWidth*100,b=o.current.clientHeight/window.innerHeight*100;r<=g/2||r>=100-g/2||a<=b/2||a>=100-b/2},A=g=>{s&&s()};function p(g){Qe[g?"unshift":"push"](()=>{o=g,e(2,o)})}return i.$$set=g=>{"props"in g&&e(0,n=g.props),"onClick"in g&&e(1,s=g.onClick)},m(),[n,s,o,r,a,l,c,h,u,A,p]}class Ib extends le{constructor(t){super(),ae(this,t,Cb,wb,oe,{props:0,onClick:1},yb)}}function Pb(i,t){const e=Math.abs(i.top+i.height/2-t.top-t.height/2),n=Math.abs(i.left+i.width/2-t.left-t.width/2),s=(i.height+t.height)/2,o=(i.width+t.width)/2;return!(e>s&&n>o)}function Eb(i){const{camera:t}=i,e=t.getWorldDirection(new R.Vector3);let n=Math.atan(e.z/e.x)*180/Math.PI,s="";return e.x<0&&(n+=180),n<0&&(n+=360),n>315||n<=45?s="right":n>45&&n<=135?s="back":n>135&&n<=225?s="left":n>225&&n<=315&&(s="forward"),s}function kb(i,t){return Math.sqrt(Math.pow(i.z-t.z,2)+Math.pow(i.x-t.x,2))}function Mb(i){const t=Math.PI/4;return i>-t&&i<=t?"left":i>t*3||i<=-t*3?"right":i>-t*3&&i<=-t?"forward":i>t&&i<=t*3?"back":""}const xb={userAction:!0};class Db extends bb{constructor(e){super(e);f(this,"MinVisibledistance",1.8);f(this,"MaxVisibledistance",5);f(this,"OffsetHeight",-1.3);f(this,"rooms");f(this,"floorplanServerData");f(this,"doorLabelItems");f(this,"visibleLabelMap",new Map);f(this,"labelItems",[]);f(this,"doorLabels");f(this,"roomObservers");f(this,"loadData",(e,n)=>{n&&(this.MaxVisibledistance=n.MaxVisibledistance,this.MinVisibledistance=n.MinVisibledistance,this.OffsetHeight=n.OffsetHeight),this.doorLabelItems&&this.doorLabelItems.length>0&&this.doorLabelItems.forEach(s=>{s.$destroy()}),this.labelItems=[],this.doorLabels=[],this.doorLabelItems=[],this.floorplanServerData=e,typeof this.five.ready=="function"?this.five.ready().then(()=>this.initData()):this.five.once("panoArrived",()=>{this.initData()})});f(this,"initRoomObservers",()=>{var o,r;const e=this.floorplanServerData.computed_data.floor_datas||[],s=(((r=(o=this.five)==null?void 0:o.work)==null?void 0:r.observers)||[]).map(a=>{const l=a.panoIndex,c=a.floorIndex,d=e==null?void 0:e.find(h=>h.floor_index===c);if(d){const h=d.rooms.find(u=>u.observer_indexs.includes(l));if(h)return{panoIndex:l,floorIndex:c,name:h.name}}}).filter(Boolean);this.roomObservers=s});f(this,"hideAllLabels",()=>{this.labelItems.forEach(e=>{e.visible=!1,e.inSight=!1}),this.render()});f(this,"fixDoorVisibleAndPosition",()=>{this.initRoomObservers();const{panoIndex:e}=this.five;if(!this.visible||this.five.model.empty||e===null||!this.roomObservers.find(a=>a.panoIndex===e))return;const n=this.roomObservers.find(a=>a.panoIndex===e),o=this.five.work.observers.find(a=>a.panoIndex===e).position.clone(),r=(()=>{if(this.visibleLabelMap.has(e))return this.visibleLabelMap.get(e);{const a=[];return this.doorLabels.forEach((l,c)=>{if(l.roomName===n.name)return;const d=l.position.clone(),h=d.distanceTo(o);if(h<this.MinVisibledistance||h>this.MaxVisibledistance)return;const u=new R.Raycaster,m=d.clone().sub(o).normalize();u.set(o,m);const[A]=this.five.model.intersectRaycaster(u);A&&A.distance+.1<h||a.push(c)}),this.visibleLabelMap.set(e,a),a}})();this.labelItems.forEach((a,l)=>{a.visible=r.includes(l)}),this.fixDoorPosition()});f(this,"fixDoorPosition",()=>{var d,h,u,m,A,p,g,b,y,I,k,T;const{panoIndex:e,camera:n}=this.five;if(e===null)return;if(this.five.currentMode!=="Panorama")return this.hideAllLabels();const s=this.five.getElement(),o=s.clientWidth,r=s.clientHeight,a=n.getWorldDirection(new R.Vector3),l=[],c=[...this.labelItems];if(c.forEach((P,V)=>{if(P.visible){const L=n.position.distanceTo(P.position),W=P.position.clone().add(new R.Vector3(0,this.OffsetHeight,0)),N=W.clone().sub(n.position).normalize().angleTo(a),G=W.clone().project(n),_=(G.x+1)/2.2*100,Q=(-G.y+1)/2.2*100,F=_>=0&&_<=100&&Q>=0&&Q<=100&&L>this.MinVisibledistance&&L<=this.MaxVisibledistance;P.left=_,P.top=Q,P.inSight=F&&N<Math.PI/2,P.cameraToward=Eb(this.five),F?l.push({disFromCameraToLabel:L,left:_,top:Q,index:V}):P.transform="translate(-50%, -50%)"}else P.inSight=!1}),l.length>1){let P=0;l.sort((V,L)=>L.disFromCameraToLabel-V.disFromCameraToLabel);for(let V=1;V<l.length;V++){const{index:L,left:W,top:q}=l[V-1],{index:N,left:G,top:_}=l[V],Q=this.container.children[L],F=this.container.children[N];if(!Q||!F)return;const Z={left:o*W/100,top:r*q/100,width:(u=(h=(d=Q.children)==null?void 0:d[0])==null?void 0:h.clientWidth)!=null?u:0,height:(p=(A=(m=Q.children)==null?void 0:m[0])==null?void 0:A.clientHeight)!=null?p:0},X={left:o*G/100,top:r*_/100,width:(y=(b=(g=F.children)==null?void 0:g[0])==null?void 0:b.clientWidth)!=null?y:0,height:(T=(k=(I=F.children)==null?void 0:I[0])==null?void 0:k.clientHeight)!=null?T:0};Pb(Z,X)&&(P++,c[L].transform=`translate(-50%, ${(P-1)*100-50}%)`,c[N].transform=`translate(-50%, ${P*100-50}%)`)}}this.labelItems=c,this.render()});f(this,"onClick",(e,n)=>{if(!this.roomObservers)return;const{work:s}=this.five;let o,r,a=1/0;for(const l of s.observers)if(this.roomObservers.find(d=>d.panoIndex===l.panoIndex&&d.name===e)){const d=l.standingPosition,h=n.distanceTo(d);h<a&&(o=l.panoIndex,r=d.clone().sub(n).normalize(),a=h)}if(r!==null&&o!==null){const l={};if(a>0){const d=new R.Vector3(0,0,-1),h=r.clone(),u=new R.Quaternion;u.setFromUnitVectors(d,h);const m=new R.Euler;m.setFromQuaternion(u,"YXZ"),l.longitude=m.y}this.five.emit("wantsToMoveToPano",o,{},!0)||this.five.moveToPano(o,{longitude:l.longitude})}});f(this,"initData",()=>{var o;this.doorLabels=[];const e=this.five.panoIndex,n=this.floorplanServerData.computed_data.observers[e].floor_index,s=n!==void 0&&((o=this.floorplanServerData.computed_data.floor_datas[n])==null?void 0:o.rooms);this.rooms=s,this.rooms&&this.rooms.length>0&&this.rooms.forEach(r=>{var c;const a=(c=this.floorplanServerData.computed_data.doors)==null?void 0:c.filter(d=>!!(d&&d.name===r.name)),l=this.five.work.observers.filter((d,h)=>!!r.observer_indexs.find(u=>u===h));a&&a.forEach(d=>{const h=d.position;let u=1/0,m;l.forEach(p=>{const g=p.standingPosition,b={x:g.x,y:g.y,z:g.z},y=kb(h,b);y<u&&(u=y,m=b)}),m&&(h.y=m.y+.01);const A=new R.Vector3(h.x,h.y,h.z);A.add(new R.Vector3(-.2,1.8,0).applyEuler(new R.Euler(0,d.rad,0))),this.doorLabels.push({roomName:r.name,name:d.name,position:A,toward:Mb(d.rad)})})}),this.labelItems=this.doorLabels.map(r=>Ae(H({},r),{left:0,top:0,visible:!1,inSight:!1,transform:"",cameraToward:""})),this.five.on("wantsToMoveToPano",this.hideAllLabels),this.five.on("modelLoaded",this.fixDoorVisibleAndPosition),this.five.on("panoArrived",this.fixDoorVisibleAndPosition),this.five.on("initAnimationEnded",this.fixDoorPosition),this.five.on("cameraUpdate",this.fixDoorPosition),this.five.on("mouseWheel",this.fixDoorPosition),this.five.on("pinchGesture",this.fixDoorPosition),this.fixDoorVisibleAndPosition()})}stateChangedCallback(e,n){if(this.hooks.hasListener("stateChange")){const s={state:this.state,prevState:e,userAction:n?n.userAction:xb.userAction};this.hooks.emit("stateChange",s)}}render(){if(!this.enabled){this.doorLabelItems&&this.doorLabelItems.length>0&&this.doorLabelItems.forEach(e=>{e==null||e.$destroy()}),this.doorLabels=void 0;return}this.doorLabelItems&&this.doorLabelItems.forEach(e=>{e.$destroy()}),this.doorLabelItems=[],this.labelItems.forEach(e=>{this.doorLabelItems.push(new Ib({target:this.container,props:{props:e,onClick:()=>{this.onClick(e.name,e.position)}}}))})}initState(){return{enabled:!0,visible:!0}}dispose(){this&&this.five&&(this.five.off("wantsToMoveToPano",this.hideAllLabels),this.five.off("modelLoaded",this.fixDoorVisibleAndPosition),this.five.off("panoArrived",this.fixDoorVisibleAndPosition),this.five.off("initAnimationEnded",this.fixDoorPosition),this.five.off("cameraUpdate",this.fixDoorPosition),this.five.off("mouseWheel",this.fixDoorPosition),this.five.off("pinchGesture",this.fixDoorPosition),super.dispose())}}const Sb=i=>new Db(i);function Tb(i,t){console.warn(`⛔ ==> [${i}]: ${t}`)}function fu(i,t){console.warn(`🚫 ==> [${i}]: ${t}`)}var Mo={},Lb=jb;function jb(i,t,e){return i[0]=t[0]+e[0],i[1]=t[1]+e[1],i}var zb=Ob;function Ob(i,t,e){return i[0]=t,i[1]=e,i}var Bb=Vb;function Vb(i,t){var e=t[0],n=t[1],s=e*e+n*n;return s>0&&(s=1/Math.sqrt(s),i[0]=t[0]*s,i[1]=t[1]*s),i}var Rb=Qb;function Qb(i,t,e){return i[0]=t[0]-e[0],i[1]=t[1]-e[1],i}var Gb=Nb;function Nb(i,t){return i[0]*t[0]+i[1]*t[1]}var Hb=Lb,na=zb,mu=Bb,_b=Rb,Wb=Gb,jc=[0,0];Mo.computeMiter=function(t,e,n,s,o){return Hb(t,n,s),mu(t,t),na(e,-t[1],t[0]),na(jc,-n[1],n[0]),o/Wb(e,jc)};Mo.normal=function(t,e){return na(t,-e[1],e[0]),t};Mo.direction=function(t,e,n){return _b(t,e,n),mu(t,t),t};var Jt=Mo,kn=[0,0],Vs=[0,0],zc=[0,0],_i=[0,0],Fb=function(i,t){var e=null,n=[];t&&(i=i.slice(),i.push(i[0]));for(var s=i.length,o=1;o<s;o++){var r=i[o-1],a=i[o],l=o<i.length-1?i[o+1]:null;if(Jt.direction(kn,a,r),e||(e=[0,0],Jt.normal(e,kn)),o===1&&xr(n,e,1),!l)Jt.normal(e,kn),xr(n,e,1);else{Jt.direction(Vs,l,a);var c=Jt.computeMiter(zc,_i,kn,Vs,1);xr(n,_i,c)}}if(i.length>2&&t){var d=i[s-2],h=i[0],u=i[1];Jt.direction(kn,h,d),Jt.direction(Vs,u,h),Jt.normal(e,kn);var m=Jt.computeMiter(zc,_i,kn,Vs,1);n[0][0]=_i.slice(),n[s-1][0]=_i.slice(),n[0][1]=m,n[s-1][1]=m,n.pop()}return n};function xr(i,t,e){i.push([[t[0],t[1]],e])}const Yb=2,Ub=3,Xb=3,Zb=2;function Jb(i){const t=i.width,n=i.unitLength/t,s=t/2,o=i.path;if(o.length===0)return{geometry:new E.BufferGeometry,maxU:0};const r=new E.CurvePath;o.forEach(P=>{const V=qb(P);V&&r.add(V)});const a=Math.ceil(r.getLength()*100);r.arcLengthDivisions=a;const l=r.getPoints(a),c=l.length,d=Fb(l.map(P=>[P.x,P.z])),u=(c-1)*Yb*Ub,m=2*c,A=m*Xb,p=m*Zb,g=new Uint32Array(u),b=new Float32Array(A),y=new Float32Array(p);let I=0,k=0;for(let P=0;P<l.length;P++){const[V,L]=d[P][0],W=l[P],{x:q,y:N,z:G}=W,_=new R.Vector3(q+V*s,N+.05,G+L*s);b[P*6+0]=_.x,b[P*6+1]=_.y,b[P*6+2]=_.z;const Q=new R.Vector3(q-V*s,N+.05,G-L*s);b[P*6+3]=Q.x,b[P*6+4]=Q.y,b[P*6+5]=Q.z,I+=P>0?l[P-1].clone().sub(l[P]).length():0;const F=I/t/n;if(k=F,y[P*4+0]=0,y[P*4+1]=F,y[P*4+2]=1,y[P*4+3]=F,i.skipPositions){const Z=new E.Vector3().lerpVectors(_,Q,.5);if(i.skipPositions.some($=>$.distanceTo(Z)<.26))continue}P!==l.length-1&&(g[P*6+0]=P*2+0,g[P*6+1]=P*2+2,g[P*6+2]=P*2+1,g[P*6+3]=P*2+2,g[P*6+4]=P*2+3,g[P*6+5]=P*2+1)}const T=new E.BufferGeometry;return T.setAttribute("position",new E.BufferAttribute(b,3)),T.setAttribute("uv",new E.BufferAttribute(y,2)),T.setIndex(new E.BufferAttribute(g,1)),{geometry:T,maxU:k,curvePath:r,curvePoints:l}}function qb(i){if(Kb(i)){const t=[i.closed,i.curve_type,i.tension],e=i.points.map(s=>new E.Vector3().fromArray(s));return new E.CatmullRomCurve3(e,...t)}}function Kb(i){return i.type==="CatmullRomCurve3"}function $b(i,t){t.forEach(e=>{const n=new E.SphereGeometry(.02,16,16),s=[],o=[new E.MeshBasicMaterial({color:16776960}),new E.MeshBasicMaterial({color:16711935}),new E.MeshBasicMaterial({color:16711680}),new E.MeshBasicMaterial({color:65535})];if(e.position.length===4)e.position.forEach((r,a)=>{const l=o[a],c=new E.Mesh(n,l);c.position.copy(St(r)),s.push(c)});else{const r=o[0],a=new E.Mesh(n,r);a.position.copy(St(e.position)),s.push(a)}s.forEach(r=>{r.material.depthTest=!1,i.scene.add(r)})})}const _e=i=>i;function Dr(i){if(!i||i.length<3)return;const t=i.map($i),e=t[1].clone().sub(t[0]),n=t[2].clone().sub(t[1]);return e.cross(n)}function e1(i){return i.stickType==="Plane"}function t1(i){return i.stickType==="3DPoint"}function n1(i){return i.stickType==="3DPoint"||i.stickType==="Plane"}function At(i){return i.stickType==="Model"&&i.contentType==="MediaModel"}function i1(i){return i.stickType==="Model"&&i.contentType==="Model"}function s1(i){return i.stickType==="Model"}function o1(i){return i.stickType==="Plane"&&i.contentType==="MediaPlane"}function co(i){if(i)if(Array.isArray(i)&&i.length===4){const e=i.map($i);return nn(e[0],e[2])}else return $i(i)}function gu(i){if(At(i)&&i.matrix){const t=new R.Matrix4().fromArray(i.matrix),e=i.data.mediaPosition.map(n=>new R.Vector3().fromArray(n).applyMatrix4(t));return nn(e[0],e[2])}else return co(i.position)}function Wi(i,t){if(i===void 0)return;const{min:e,max:n}=t!=null?t:{};if(!(e===void 0&&n===void 0))return!(typeof n=="number"&&n<i||typeof e=="number"&&e>i)}function r1(i){return new Promise(t=>{i.model.loaded?t():i.once("modelLoaded",()=>t())})}function a1(i,t,e){const s=new E.Plane().setFromNormalAndCoplanarPoint(e,t),o=t.clone().sub(i).cross(new E.Vector3(0,1,0)).setLength(.01),r=new E.Vector3(0,.01,0);return[t.clone().sub(o).sub(r),t.clone().add(o).sub(r),t.clone().add(o).add(r),t.clone().sub(o).add(r)].map(l=>s.projectPoint(l,new E.Vector3))}const Oc=(i,t=1e3/60)=>{let e=null;const n=i;return(...o)=>{e&&clearTimeout(e),e=setTimeout(()=>{n==null||n(...o),e&&clearTimeout(e),e=null},t)}};function l1(i,t=200){let e;return function(...n){e||(i.apply(this,n),e=setTimeout(function(){e=null},t))}}function c1(i,t){const[e,n]=t;if(e>=n||n<=1||e<=1)return-1;const s={},o=r=>(s[r]||(s[r]=i(r)),s[r]);for(let r=e;r<n;r++){const a=o(r),l=o(r-1);if(a<l)return r}return-1}function Bc(i,t){if(!t||typeof ResizeObserver=="undefined"||!ResizeObserver)return{observe:()=>window.addEventListener("resize",i),unobserve:()=>window.removeEventListener("resize",i)};{const e=new ResizeObserver(i);return{observe:()=>e.observe(t),unobserve:()=>e.unobserve(t)}}}function d1(i){var t,e,n,s;if(!i.stickType){const o=(()=>i.pointType==="PointTag"&&i.dimensionType==="3D"?"3DPoint":i.pointType==="PlaneTag"?"Plane":"2DPoint")();i.stickType=o}if(i.contentType==="VRLink"||i.contentType==="PanoLink"||i.contentType==="Link"){const o=i;!((e=(t=o.data)==null?void 0:t.icon)!=null&&e.url)&&!((s=(n=o.style)==null?void 0:n.point)!=null&&s.url)&&(o.data.icon={url:"//vrlab-static.ljcdn.com/release/web/test.09dee741.png",steps:28})}return i}const mi="data:audio/mpeg;base64,//uQxAAAAAAAAAAAAAAAAAAAAAAASW5mbwAAAA8AAAADAAAGhgBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr///////////////////////////////////////////8AAAA5TEFNRTMuOThyAc0AAAAAAAAAABSAJAiqQgAAgAAABobxtI73AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//uQxAACFEII9ACZ/sJZwWEoEb8w/////N//////JcxjHjf+7/v/H2PzCCFAiDtGeyBCIx7bJJ1mmEEMy6g8mm2c8nrGABB4h2Mkmn//4z/73u773R5qHHu/j/w7Kxkzh5lWRWdsifCkNAnY9Zc1HvDAhjhSHdFkHFzLmabt/AQxSg2wwzLhHIJOBnAWwVY4zrhIYhhc2kvhYDfQ4hDi2Gmh5KyFn8EcGIrHAngNgIwVIEMf5bzbAiTRoAD///8z/KVhkkWEle6IX+d/z4fvH3BShK1e5kmjkCMoxVmXhd4ROlTKo3iipasvTilY21q19ta30/v/0/idPX1v8PNxJL6ramnOVsdvMv2akO0iSYIzdJFirtzWXCZicS9vHqvSKyqm5XJBdqBwPxyfJdykhWTZ0G0ZyTZGpLKxsNwwoRhsx3tZfhwmeOBVISm3impAC/IT/8hP/EKEM1KMdVdVKM2rHV4x7HVXZvbVVKN/qq8CiV9VL9jjH/6l6qf7MBCjZmOqsAibjcP+qqqv0oxqpa/NVW286hPo1nz2L/h8+jXt//uSxCmDU2IK/ECN98KKtE5IYzNoCfbw+u9i5r8PoadUMFPKqWL4LK3T/LCraMSHGkW4bpLXR/E6LlHOVQxmslKVJ8IULktMN06N0FKCpHCoYsjC4F+Z0NVqdNFoGSTjSiyjzLdnZ2fNqTi2eHKONONKLMPMKLONKLMPQRJGlFxZRoKcJFAYEeIFiRQkUWUeYfef//Ko04soswso40UJAgMw8wosososy0EalnZyjQUGBRQGIFggOWUacWUeYmuadrZziQKKEgQsQLAhQkUJAgMQDghltLO1onp0cpkNInSFMqlYeSEJ5AHsqFdOwy1DA2sRmRJKxdKRfLhfLw5BzUxBTUUzLjk4LjJVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjk4LjJVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7ksRRA8AAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=",qi={};var Ba=(i=>(i.Default="default",i.GetAudioDuration="getAudioDuration",i.PlayAudio="playAudio",i))(Ba||{});function h1(i,t){const e=(t==null?void 0:t.namespace)||"default",n=qi[e]||(qi[e]=[]);let s=n.find(o=>!o.realSrc||o.realSrc===mi);return s||(console.warn("未找到缓存音频,已新建",qi),s=new pu(mi),n.push(s)),i&&(s.src=i),s}function u1(i,t){const e=(t==null?void 0:t.namespace)||"default",n=qi[e]||(qi[e]=[]),s=i-n.length;if(!(s<=0))for(let o=0;o<s;o++)n.push(new pu(mi))}class pu extends Audio{constructor(e){super(e);f(this,"preload","auto");f(this,"crossOrigin","anonymous");f(this,"realSrc","");f(this,"inited",!1);f(this,"removeDocumentEventListener");this.realSrc=e!=null?e:"",this.muted=!0,super.autoplay=!0,super.addEventListener("ended",()=>{this.src=""});const n=()=>f1(this);document.addEventListener("click",n),document.addEventListener("touchend",n),this.removeDocumentEventListener=()=>{document.removeEventListener("click",n),document.removeEventListener("touchend",n)}}get isBlankAudio(){return this.realSrc===mi||!this.realSrc}get src(){return super.src}set src(e){super.src=e,this.realSrc=e,this.removeDocumentEventListener()}get muted(){return super.muted}set muted(e){super.muted=e}clear(){this.currentTime=0,this.src=mi}}function f1(i){i&&(i.inited||(i.src&&(i.inited=!0,i.removeDocumentEventListener()),i.src===mi&&i.play()))}const m1={globalConfig:{visibleConfig:{followModelVisibility:!0},unfoldedConfig:{autoUnfold:{strategy:"MinimumDistance",distance:{max:5}}},tag3DConfig:{ratio:.0035}},contentTypeConfig:{"Any-Audio-plane":{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},Link:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},VRLink:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},PanoLink:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},MediaPlane:{unfoldedConfig:{keep:"unfolded"},visibleConfig:{alwaysShowWhenMovePano:!0},initialData:{autoplayConfig:{autoplayCarousel:!0,autoplayVideo:!1,autoplayVideoInCarousel:!1}}},MediaModel:{unfoldedConfig:{keep:"unfolded"},visibleConfig:{keep:"visible",visibleFiveMode:["Panorama","Floorplan","Model","Mapview"],alwaysShowWhenMovePano:!0}}}};class g1 extends rs{constructor(e){super(e);f(this,"tagCacheByPanoIndex",{})}getCache({panoIndex:e,id:n,key:s}){var c,d,h;const{five:o}=this,r=e!=null?e:o.getCurrentState().panoIndex;if(r===void 0)throw new Error(`TagCacheController getCache(): fivePanoIndex is ${r}`);const a=`${(d=(c=o.work)==null?void 0:c.workCode)!=null?d:o.model.uuid}-${r}`;let l=this.tagCacheByPanoIndex[a];if(l||(l=new Map,this.tagCacheByPanoIndex[a]=l),n===void 0)return l;if(s===void 0){const u=l.get(n);return u||(l.set(n,{}),l.get(n))}return(h=l.get(n))==null?void 0:h[s]}clearCache(){this.tagCacheByPanoIndex={}}removeCache(){}}const Au=navigator.userAgent.toLowerCase().indexOf("iphone")!==-1;navigator.userAgent.toLowerCase().indexOf("android");const Ys=navigator.userAgent.toLowerCase().indexOf("micromessenger")!==-1,p1=Au&&Ys;function A1(i){if(i.length!==4)return!1;const[t,e,n,s]=i,o=t.distanceTo(e),r=e.distanceTo(n),a=n.distanceTo(s),l=s.distanceTo(t),c=t.distanceTo(n),d=e.distanceTo(s);return o===a&&r===l&&c===d}class Sr extends E.Mesh{constructor(e,n,s){if(e.length!==4)throw new Error("QuadrangleMesh: Invalid number of points, it's not a quadrangle");const[o,r,a,l]=e,c=nn(...e),d=[o.clone().sub(c),r.clone().sub(c),a.clone().sub(c),l.clone().sub(c)],h=new vu(d,s);super(h,n);f(this,"name","QuadrangleMesh");this.position.copy(c)}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}}class vu extends E.BufferGeometry{constructor(e,n){super();f(this,"name","QuadrangleGeometry");f(this,"points");this.points=e;const s=n!=null?n:A1(e)?64:1;if(e.length!==4){console.error("Invalid number of points, it's not a quadrangle");return}const[o,r,a,l]=e,[c,d,h,u]=[new E.Vector2(0,0),new E.Vector2(1,0),new E.Vector2(1,1),new E.Vector2(0,1)],m=[],A=[];m.push(...o.toArray()),A.push(...c.toArray());for(let g=1;g<s;g++)m.push(o.x+(r.x-o.x)*g/s,o.y+(r.y-o.y)*g/s,o.z+(r.z-o.z)*g/s),A.push(c.x+(d.x-c.x)*g/s,c.y+(d.y-c.y)*g/s);m.push(...r.toArray()),A.push(...d.toArray()),m.push(...a.toArray()),A.push(...h.toArray());for(let g=1;g<s;g++)m.push(a.x+(l.x-a.x)*g/s,a.y+(l.y-a.y)*g/s,a.z+(l.z-a.z)*g/s),A.push(h.x+(u.x-h.x)*g/s,h.y+(u.y-h.y)*g/s);m.push(...l.toArray()),A.push(...u.toArray());const p=[];for(let g=0;g<s;g++)p.push(g,g+1,s*2-g,g,s*2-g,s*2+1-g);this.setAttribute("position",new E.BufferAttribute(new Float32Array(m),3)),this.setAttribute("uv",new E.BufferAttribute(new Float32Array(A),2)),this.setIndex(new E.BufferAttribute(new Uint32Array(p),1))}}function v1(i,t){let e=!Ys;const n=t!=null?t:document.createElement("video");n.preload="metadata",n.crossOrigin="anonymous",n.muted=!0,n.loop=!0,n.playsInline=!0,n.autoplay=!0;const s=new E.VideoTexture(n);s.minFilter=E.LinearFilter,s.magFilter=E.LinearFilter,s.encoding=E.sRGBEncoding,s.metadataLoaded=!1,n.src=i;const o=()=>{s.metadataLoaded||(s.dispatchEvent({type:"videoLoaded"}),s.metadataLoaded=!0)};if(Ys||(n.onloadedmetadata=()=>{o()}),Ys){const r=()=>{if(!e){if(!n.paused){o();return}e=!0,n.muted=!0,n.play().then(()=>{n.pause(),n.currentTime=0,o()})}};document.addEventListener("click",r,{once:!0}),Au&&document.addEventListener("touchstart",r,{once:!0})}return s}function Ui(i,t,e){if(i==="fill")return t;if(i==="contain"){const[n,s,o,r]=t,a=n.distanceTo(s),l=o.distanceTo(r),c=n.distanceTo(r),d=s.distanceTo(o),h=a,u=c,m=h/u;if(m>e){const p=u*e,g=new E.Vector3().subVectors(s,n).multiplyScalar((a-p)/2/a),b=new E.Vector3().subVectors(o,r).multiplyScalar((l-p)/2/l);return[n.clone().add(g),s.clone().sub(g),o.clone().sub(b),r.clone().add(b)]}else if(m<e){const p=h/e,g=new E.Vector3().subVectors(r,n).multiplyScalar((c-p)/2/c),b=new E.Vector3().subVectors(o,s).multiplyScalar((d-p)/2/d);return[n.clone().add(g),s.clone().add(b),o.clone().sub(b),r.clone().sub(g)]}else return t}else return console.warn(`objectFit: ${i} is not supported yet`),t}class b1 extends E.ShaderMaterial{constructor(e){super();f(this,"transparent",!1);f(this,"blending",E.CustomBlending);f(this,"blendSrc",E.SrcAlphaFactor);f(this,"blendDst",E.OneMinusSrcAlphaFactor);f(this,"blendSrcAlpha",E.OneFactor);f(this,"blendDstAlpha",E.OneMinusSrcAlphaFactor);f(this,"vertexShader",`
|
|
555
|
+
`,e.container.style.pointerEvents="none";const n=g=>(e.wrapper=g,g.appendChild(e.container),l(),!0),s=g=>{e.itemLabels=gb(g),l()},o=()=>(e.enabled||(e.enabled=!0,l()),!0),r=()=>(e.enabled&&(e.enabled=!1,l()),!0),a=()=>{d(),e.container.remove()},l=()=>{var g;if(e.wrapper){if(!e.enabled||!e.fiveModeEnabled){(g=e.app)==null||g.$destroy(),e.app=void 0;return}e.app?e.app.$set({five:i,itemLabels:e.itemLabels}):e.app=new mb({target:e.container,props:{five:i,modelOcclusionEnable:e.modelOcclusionEnable,itemLabels:e.itemLabels,hooks:e.hooks,displayStrategyType:e.displayStrategyType,maxVisibleDistance:e.maxVisibleDistance}})}},c=()=>{i.on("modeChange",h),i.once("dispose",a)},d=()=>{i.off("modeChange",h)},h=g=>{if(g!==Te.Five.Mode.Panorama){e.fiveModeEnabled=!1,r();return}i.once("initAnimationEnded",()=>{e.fiveModeEnabled=!0,o()})};return c(),{appendTo:n,load:s,enable:o,disable:r,dispose:a,hooks:e.hooks}},vb={name:"ItemLabelPlugin",version:0};class bb extends rs{constructor(e){super(e);f(this,"state");f(this,"container");f(this,"enabled");this.five=e,this.five.once("dispose",this.dispose),this.enabled=!0,this.state=this.initState()}enable(e){this.enabled=!0,this.updateState(Ae(H({},e),{userAction:!0}))}disable(e){this.enabled=!1,this.updateState(Ae(H({},e),{userAction:!0}))}show(e){if(this.state.enabled)return this.setState(Ae(H({},this.state),{visible:!0}),e),Promise.resolve()}hide(e){if(this.state.enabled)return this.setState(Ae(H({},this.state),{visible:!1}),e),Promise.resolve()}dispose(){this.container.remove()}setState(e,n){if(!this.enabled)return;const s=H({},this.state);this.state=H(H(H({},this.state),e),n),this.stateChangedCallback(s,n)}get visible(){return this.five.state.mode===Te.Five.Mode.Panorama}appendTo(e){this.enabled&&(this.container=e,this.render())}updateState(e){this.setState(Ae(H({},this.state),{enabled:this.enabled,visible:this.visible}),e)}}function yb(i){ue(i,"svelte-1irjijd",'.plugin-DoorLabelPlugin-item.svelte-1irjijd.svelte-1irjijd{position:absolute;left:0;top:0;width:0;height:0;pointer-events:none;transition:opacity 0.3s ease}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd{position:absolute;top:50%;left:50%;border-radius:0.125rem;background:rgba(0, 0, 0, 0.35);line-height:0.75rem;padding:0.375rem;white-space:nowrap;font-size:0.75rem;font-style:normal;color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform ease 1s, background ease 0.3s, color ease 0.3s}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd::after{content:"";display:block;position:absolute;top:-0.0625rem;left:-0.0625rem;bottom:-0.0625rem;right:-0.0625rem;border-radius:0.125rem;border:0.0625rem solid rgba(0, 0, 0, 0);-o-border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAABlBMVEUAAAD///+l2Z/dAAAAAnRSTlMAIE397fAAAAAVSURBVAjXY2BjgCMQ+PABhIAASRwARxwD8fgzCQAAAAAASUVORK5CYII=") 4;border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAABlBMVEUAAAD///+l2Z/dAAAAAnRSTlMAIE397fAAAAAVSURBVAjXY2BjgCMQ+PABhIAASRwARxwD8fgzCQAAAAAASUVORK5CYII=") 4;transition:opacity ease 0.3s}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd:active,.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd:focus{background:rgba(0, 0, 0, 0.5);color:rgba(255, 255, 255, 0.5)}.plugin-DoorLabelPlugin-icon.svelte-1irjijd.svelte-1irjijd{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSIxMHB4IiB2aWV3Qm94PSIwIDAgMTAgMTAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+aW1hZ2Ut566t5aS0PC90aXRsZT4KICAgIDxkZWZzPgogICAgICAgIDxyZWN0IGlkPSJwYXRoLTEiIHg9IjAiIHk9IjAiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCI+PC9yZWN0PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iNjYuMDYyMTk3NSUiIHkxPSI1MCUiIHgyPSItMS4xMzY4NjgzOGUtMTElIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMyI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0ZGRkZGRiIgc3RvcC1vcGFjaXR5PSIwLjg1IiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iODQuMzM5NzMxJSIgeTE9IjUwJSIgeDI9IjIzLjQyODMzNzclIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtNCI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIHN0b3Atb3BhY2l0eT0iMCIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRkZGRkZGIiBzdG9wLW9wYWNpdHk9IjAuOCIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSLpobXpnaItMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IlZSLeWIhumXtOW8leWvvOagh+etvuWkh+S7vS0zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzM5LjAwMDAwMCwgLTU0My4wMDAwMDApIj4KICAgICAgICAgICAgPGcgaWQ9Iue8lue7hC0y5aSH5Lu9LTEyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMDUuMDAwMDAwLCA1MzYuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0iaW1hZ2Ut566t5aS0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzNC4wMDAwMDAsIDcuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPG1hc2sgaWQ9Im1hc2stMiIgZmlsbD0id2hpdGUiPgogICAgICAgICAgICAgICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPgogICAgICAgICAgICAgICAgICAgIDwvbWFzaz4KICAgICAgICAgICAgICAgICAgICA8dXNlIGlkPSJCRyIgZmlsbC1vcGFjaXR5PSIwIiBmaWxsPSIjRDhEOEQ4IiBvcGFjaXR5PSIwLjUxMTQ2Mjk4NCIgeGxpbms6aHJlZj0iI3BhdGgtMSI+PC91c2U+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTcuOTM4ODY5OCwxLjE0Mzc2MTI5IEM4LjI1NDY1NDA0LDEuMjU3NTgwMzUgOC4zMTc4Mjg0LDEuMzAyMTY5OTggOC4zMTc3ODUyMSwxLjM1ODE1MjIzIEM4LjMxNzc1MDcyLDEuNDAyODQzMzUgOC4zMDU3NDkwNywxLjQ0NzUyNTI0IDguMjgxNzg0MTEsMS40ODcyMDUyMSBMOC4yODE3ODQxMSwxLjQ4NzIwNTIxIEw2LjIwOTg5MDQxLDQuOTE3NzQyNDUgQzYuMTM3ODg4MDgsNS4wMzY5NjAyOSA2LjEwMTg4NjkxLDUuMTcxMjIwMiA2LjEwMTg4NjkxLDUuMzA1NDgwMTEgQzYuMTAxODg2OTEsNS40Mzk3NDAwMiA2LjEzNzg4ODA4LDUuNTczOTk5OTQgNi4yMDk4OTA0MSw1LjY5MzIxNzc4IEw2LjIwOTg5MDQxLDUuNjkzMjE3NzggTDguMjgxNzg0MTEsOS4xMjM3NTUwMSBDOC4zMTc0NzQzOCw5LjE4Mjg0OTE2IDguMzI1ODMzMjIsOS4yNTA4MTUyIDguMzEwNDk1OTUsOS4zMTI5MzAyOCBDOC4yOTUxNTg2OCw5LjM3NTA0NTM2IDguMjU2MTI1MzEsOS40MzEzMDk0NyA4LjE5NzAzMTE3LDkuNDY2OTk5NzMgQzguMTU3MzUxMTksOS40OTA5NjQ2OSA4LjExMjY2OTMxLDkuNTAyOTY2MzQgOC4wNjc5NzgxOCw5LjUwMzAwMDgzIEM4LjAyMzI4NzA2LDkuNTAzMDM1MzEgNy45Nzg1ODY3MSw5LjQ5MTEwMjYzIDcuOTM4ODY5OCw5LjQ2NzE5ODkzIEw3LjkzODg2OTgsOS40NjcxOTg5MyBMMS4zNzk5MTIxOCw1LjUxOTY3ODE1IEMxLjMyMDc2MzAyLDUuNDg0MDc5MTIgMS4yODE2NDI4Nyw1LjQyNzg3NTMyIDEuMjY2MjA5NzcsNS4zNjU3ODM5OCBDMS4yNTQ2OTI1Niw1LjMxOTQ0NzMyIDEuMjU2MzY2OTgsNS4yNjk4MzE4MiAxLjI3Mjc1MzMzLDUuMjIzMDU0MDUgTDEuMjcyNzUzMzMsNS4yMjMwNTQwNSBaIiBpZD0i566t5aS0IiBzdHJva2U9InVybCgjbGluZWFyR3JhZGllbnQtNCkiIHN0cm9rZS13aWR0aD0iMC41IiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTMpIiBtYXNrPSJ1cmwoI21hc2stMikiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUuMDM5MjAwLCA1LjMwNTQ4MCkgc2NhbGUoMSwgLTEpIHJvdGF0ZSgtOTAuMDAwMDAwKSB0cmFuc2xhdGUoLTUuMDM5MjAwLCAtNS4zMDU0ODApICI+PC9wYXRoPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=") no-repeat;background-size:100%;display:inline-block;width:0.625rem;height:0.625rem;margin-left:0.25rem;transform-origin:center}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].left.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].right.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].right.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].forward.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].back.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].back.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].back.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].forward.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].forward.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].right.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].left.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].left.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd{color:#f9eac1}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSI4cHgiIHZpZXdCb3g9IjAgMCAxMCA4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPueureWktDwvdGl0bGU+CiAgICA8ZGVmcz4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjEwLjYzODU4ODQlIiB5MT0iMCUiIHgyPSI5Ni41MTYxNDc0JSIgeTI9IjEyOS43MzEzNTQlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkYyQ0MiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0VBRDA5QSIgb2Zmc2V0PSI0OC43MTQ0NDc4JSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRDFCMTdFIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPC9kZWZzPgogICAgPGcgaWQ9Iumhtemdoi0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0i5pyq5p2l5a625aSH5Lu9LTI1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzA1LjAwMDAwMCwgLTU0NS4wMDAwMDApIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTEpIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8ZyBpZD0i57yW57uELTLlpIfku70tMTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI0NS4wMDAwMDAsIDUzNy4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJpbWFnZS3nrq3lpLQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYwLjAwMDAwMCwgNy4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOC40OTU3ODI5NCwxLjYxNjQ1MTEgTDYuNDIzODg5MjUsNS4wNDY5ODgzMyBDNi4zMjc4ODYxMyw1LjIwNTk0NTQ1IDYuMzI3ODg2MTMsNS40MDUwMTQ3NyA2LjQyMzg4OTI1LDUuNTYzOTcxODkgTDguNDk1NzgyOTQsOC45OTQ1MDkxMiBDOC42Mzg1NDQwMSw5LjIzMDg4NTcxIDguNTYyNjUzNjQsOS41MzgyMzc1IDguMzI2Mjc3MDYsOS42ODA5OTg1NiBDOC4xNjc1NTcxNiw5Ljc3Njg1ODQgNy45Njg4MjE5NSw5Ljc3NzAxMTc1IDcuODA5OTU0MzEsOS42ODEzOTY5NyBMMS4yNTA5OTY2OSw1LjczMzg3NjE4IEMxLjAxNDQwMDA4LDUuNTkxNDgwMDcgMC45MzgwMzU0ODEsNS4yODQyNDU3NiAxLjA4MDQzMTU5LDUuMDQ3NjQ5MTQgQzEuMTIyNTE0OCw0Ljk3NzcyNjI4IDEuMTgxMDczODMsNC45MTkxNjcyNSAxLjI1MDk5NjY5LDQuODc3MDg0MDQgTDcuODA5OTU0MzEsMC45Mjk1NjMyNTMgQzguMDQ2NTUwOTMsMC43ODcxNjcxNDIgOC4zNTM3ODUyNCwwLjg2MzUzMTczOSA4LjQ5NjE4MTM1LDEuMTAwMTI4MzUgQzguNTkxNzk2MTMsMS4yNTg5OTYgOC41OTE2NDI3OCwxLjQ1NzczMTIgOC40OTU3ODI5NCwxLjYxNjQ1MTEgWiIgaWQ9IueureWktCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNS4wMzkyMDAsIDUuMzA1NDgwKSBzY2FsZSgxLCAtMSkgcm90YXRlKC05MC4wMDAwMDApIHRyYW5zbGF0ZSgtNS4wMzkyMDAsIC01LjMwNTQ4MCkgIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==") no-repeat}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd:active,.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd:focus{background:rgba(0, 0, 0, 0.5);color:rgba(249, 234, 193, 0.5)}')}function wb(i){let t,e,n,s,o,r,a,l;return{c(){t=x("div"),e=x("div"),n=x("span"),n.textContent=`${i[8]}`,s=ee(),o=x("i"),w(n,"class","plugin-DoorLabelPlugin-txt svelte-1irjijd"),w(o,"class","plugin-DoorLabelPlugin-icon svelte-1irjijd"),w(e,"class",r=Re(rt("plugin-DoorLabelPlugin-cnt",i[0].toward))+" svelte-1irjijd"),w(e,"style",`transform: ${i[6]||"initial"};pointer-events: ${i[5]?"auto":"none"};opacity: ${i[5]?1:0}`),w(e,"data-camera-toward",i[7]),w(t,"style",`left: ${i[3]||0}%;top: ${i[4]||0}%;opacity: ${i[5]?1:0}`),w(t,"class","plugin-DoorLabelPlugin-item svelte-1irjijd")},m(c,d){B(c,t,d),D(t,e),D(e,n),D(e,s),D(e,o),i[10](t),a||(l=be(e,"click",i[9]),a=!0)},p(c,[d]){d&1&&r!==(r=Re(rt("plugin-DoorLabelPlugin-cnt",c[0].toward))+" svelte-1irjijd")&&w(e,"class",r)},i:J,o:J,d(c){c&&O(t),i[10](null),a=!1,l()}}}function Cb(i,t,e){let{props:n}=t,{onClick:s}=t,o,{left:r,top:a,inSight:l,transform:c,panoIndex:d,cameraToward:h,name:u}=n;const m=()=>{if(!r||!a||!l||!o)return;const g=o.current.clientWidth/window.innerWidth*100,v=o.current.clientHeight/window.innerHeight*100;r<=g/2||r>=100-g/2||a<=v/2||a>=100-v/2},A=g=>{s&&s()};function p(g){Qe[g?"unshift":"push"](()=>{o=g,e(2,o)})}return i.$$set=g=>{"props"in g&&e(0,n=g.props),"onClick"in g&&e(1,s=g.onClick)},m(),[n,s,o,r,a,l,c,h,u,A,p]}class Ib extends le{constructor(t){super(),ae(this,t,Cb,wb,oe,{props:0,onClick:1},yb)}}function Pb(i,t){const e=Math.abs(i.top+i.height/2-t.top-t.height/2),n=Math.abs(i.left+i.width/2-t.left-t.width/2),s=(i.height+t.height)/2,o=(i.width+t.width)/2;return!(e>s&&n>o)}function Eb(i){const{camera:t}=i,e=t.getWorldDirection(new R.Vector3);let n=Math.atan(e.z/e.x)*180/Math.PI,s="";return e.x<0&&(n+=180),n<0&&(n+=360),n>315||n<=45?s="right":n>45&&n<=135?s="back":n>135&&n<=225?s="left":n>225&&n<=315&&(s="forward"),s}function kb(i,t){return Math.sqrt(Math.pow(i.z-t.z,2)+Math.pow(i.x-t.x,2))}function Mb(i){const t=Math.PI/4;return i>-t&&i<=t?"left":i>t*3||i<=-t*3?"right":i>-t*3&&i<=-t?"forward":i>t&&i<=t*3?"back":""}const xb={userAction:!0};class Db extends bb{constructor(e){super(e);f(this,"MinVisibledistance",1.8);f(this,"MaxVisibledistance",5);f(this,"OffsetHeight",-1.3);f(this,"rooms");f(this,"floorplanServerData");f(this,"doorLabelItems");f(this,"visibleLabelMap",new Map);f(this,"labelItems",[]);f(this,"doorLabels");f(this,"roomObservers");f(this,"loadData",(e,n)=>{n&&(this.MaxVisibledistance=n.MaxVisibledistance,this.MinVisibledistance=n.MinVisibledistance,this.OffsetHeight=n.OffsetHeight),this.doorLabelItems&&this.doorLabelItems.length>0&&this.doorLabelItems.forEach(s=>{s.$destroy()}),this.labelItems=[],this.doorLabels=[],this.doorLabelItems=[],this.floorplanServerData=e,typeof this.five.ready=="function"?this.five.ready().then(()=>this.initData()):this.five.once("panoArrived",()=>{this.initData()})});f(this,"initRoomObservers",()=>{var o,r;const e=this.floorplanServerData.computed_data.floor_datas||[],s=(((r=(o=this.five)==null?void 0:o.work)==null?void 0:r.observers)||[]).map(a=>{const l=a.panoIndex,c=a.floorIndex,d=e==null?void 0:e.find(h=>h.floor_index===c);if(d){const h=d.rooms.find(u=>u.observer_indexs.includes(l));if(h)return{panoIndex:l,floorIndex:c,name:h.name}}}).filter(Boolean);this.roomObservers=s});f(this,"hideAllLabels",()=>{this.labelItems.forEach(e=>{e.visible=!1,e.inSight=!1}),this.render()});f(this,"fixDoorVisibleAndPosition",()=>{this.initRoomObservers();const{panoIndex:e}=this.five;if(!this.visible||this.five.model.empty||e===null||!this.roomObservers.find(a=>a.panoIndex===e))return;const n=this.roomObservers.find(a=>a.panoIndex===e),o=this.five.work.observers.find(a=>a.panoIndex===e).position.clone(),r=(()=>{if(this.visibleLabelMap.has(e))return this.visibleLabelMap.get(e);{const a=[];return this.doorLabels.forEach((l,c)=>{if(l.roomName===n.name)return;const d=l.position.clone(),h=d.distanceTo(o);if(h<this.MinVisibledistance||h>this.MaxVisibledistance)return;const u=new R.Raycaster,m=d.clone().sub(o).normalize();u.set(o,m);const[A]=this.five.model.intersectRaycaster(u);A&&A.distance+.1<h||a.push(c)}),this.visibleLabelMap.set(e,a),a}})();this.labelItems.forEach((a,l)=>{a.visible=r.includes(l)}),this.fixDoorPosition()});f(this,"fixDoorPosition",()=>{var d,h,u,m,A,p,g,v,y,I,k,T;const{panoIndex:e,camera:n}=this.five;if(e===null)return;if(this.five.currentMode!=="Panorama")return this.hideAllLabels();const s=this.five.getElement(),o=s.clientWidth,r=s.clientHeight,a=n.getWorldDirection(new R.Vector3),l=[],c=[...this.labelItems];if(c.forEach((P,V)=>{if(P.visible){const L=n.position.distanceTo(P.position),W=P.position.clone().add(new R.Vector3(0,this.OffsetHeight,0)),N=W.clone().sub(n.position).normalize().angleTo(a),G=W.clone().project(n),_=(G.x+1)/2.2*100,Q=(-G.y+1)/2.2*100,F=_>=0&&_<=100&&Q>=0&&Q<=100&&L>this.MinVisibledistance&&L<=this.MaxVisibledistance;P.left=_,P.top=Q,P.inSight=F&&N<Math.PI/2,P.cameraToward=Eb(this.five),F?l.push({disFromCameraToLabel:L,left:_,top:Q,index:V}):P.transform="translate(-50%, -50%)"}else P.inSight=!1}),l.length>1){let P=0;l.sort((V,L)=>L.disFromCameraToLabel-V.disFromCameraToLabel);for(let V=1;V<l.length;V++){const{index:L,left:W,top:q}=l[V-1],{index:N,left:G,top:_}=l[V],Q=this.container.children[L],F=this.container.children[N];if(!Q||!F)return;const Z={left:o*W/100,top:r*q/100,width:(u=(h=(d=Q.children)==null?void 0:d[0])==null?void 0:h.clientWidth)!=null?u:0,height:(p=(A=(m=Q.children)==null?void 0:m[0])==null?void 0:A.clientHeight)!=null?p:0},X={left:o*G/100,top:r*_/100,width:(y=(v=(g=F.children)==null?void 0:g[0])==null?void 0:v.clientWidth)!=null?y:0,height:(T=(k=(I=F.children)==null?void 0:I[0])==null?void 0:k.clientHeight)!=null?T:0};Pb(Z,X)&&(P++,c[L].transform=`translate(-50%, ${(P-1)*100-50}%)`,c[N].transform=`translate(-50%, ${P*100-50}%)`)}}this.labelItems=c,this.render()});f(this,"onClick",(e,n)=>{if(!this.roomObservers)return;const{work:s}=this.five;let o,r,a=1/0;for(const l of s.observers)if(this.roomObservers.find(d=>d.panoIndex===l.panoIndex&&d.name===e)){const d=l.standingPosition,h=n.distanceTo(d);h<a&&(o=l.panoIndex,r=d.clone().sub(n).normalize(),a=h)}if(r!==null&&o!==null){const l={};if(a>0){const d=new R.Vector3(0,0,-1),h=r.clone(),u=new R.Quaternion;u.setFromUnitVectors(d,h);const m=new R.Euler;m.setFromQuaternion(u,"YXZ"),l.longitude=m.y}this.five.emit("wantsToMoveToPano",o,{},!0)||this.five.moveToPano(o,{longitude:l.longitude})}});f(this,"initData",()=>{var o;this.doorLabels=[];const e=this.five.panoIndex,n=this.floorplanServerData.computed_data.observers[e].floor_index,s=n!==void 0&&((o=this.floorplanServerData.computed_data.floor_datas[n])==null?void 0:o.rooms);this.rooms=s,this.rooms&&this.rooms.length>0&&this.rooms.forEach(r=>{var c;const a=(c=this.floorplanServerData.computed_data.doors)==null?void 0:c.filter(d=>!!(d&&d.name===r.name)),l=this.five.work.observers.filter((d,h)=>!!r.observer_indexs.find(u=>u===h));a&&a.forEach(d=>{const h=d.position;let u=1/0,m;l.forEach(p=>{const g=p.standingPosition,v={x:g.x,y:g.y,z:g.z},y=kb(h,v);y<u&&(u=y,m=v)}),m&&(h.y=m.y+.01);const A=new R.Vector3(h.x,h.y,h.z);A.add(new R.Vector3(-.2,1.8,0).applyEuler(new R.Euler(0,d.rad,0))),this.doorLabels.push({roomName:r.name,name:d.name,position:A,toward:Mb(d.rad)})})}),this.labelItems=this.doorLabels.map(r=>Ae(H({},r),{left:0,top:0,visible:!1,inSight:!1,transform:"",cameraToward:""})),this.five.on("wantsToMoveToPano",this.hideAllLabels),this.five.on("modelLoaded",this.fixDoorVisibleAndPosition),this.five.on("panoArrived",this.fixDoorVisibleAndPosition),this.five.on("initAnimationEnded",this.fixDoorPosition),this.five.on("cameraUpdate",this.fixDoorPosition),this.five.on("mouseWheel",this.fixDoorPosition),this.five.on("pinchGesture",this.fixDoorPosition),this.fixDoorVisibleAndPosition()})}stateChangedCallback(e,n){if(this.hooks.hasListener("stateChange")){const s={state:this.state,prevState:e,userAction:n?n.userAction:xb.userAction};this.hooks.emit("stateChange",s)}}render(){if(!this.enabled){this.doorLabelItems&&this.doorLabelItems.length>0&&this.doorLabelItems.forEach(e=>{e==null||e.$destroy()}),this.doorLabels=void 0;return}this.doorLabelItems&&this.doorLabelItems.forEach(e=>{e.$destroy()}),this.doorLabelItems=[],this.labelItems.forEach(e=>{this.doorLabelItems.push(new Ib({target:this.container,props:{props:e,onClick:()=>{this.onClick(e.name,e.position)}}}))})}initState(){return{enabled:!0,visible:!0}}dispose(){this&&this.five&&(this.five.off("wantsToMoveToPano",this.hideAllLabels),this.five.off("modelLoaded",this.fixDoorVisibleAndPosition),this.five.off("panoArrived",this.fixDoorVisibleAndPosition),this.five.off("initAnimationEnded",this.fixDoorPosition),this.five.off("cameraUpdate",this.fixDoorPosition),this.five.off("mouseWheel",this.fixDoorPosition),this.five.off("pinchGesture",this.fixDoorPosition),super.dispose())}}const Sb=i=>new Db(i);function Tb(i,t){console.warn(`⛔ ==> [${i}]: ${t}`)}function fu(i,t){console.warn(`🚫 ==> [${i}]: ${t}`)}var Mo={},Lb=jb;function jb(i,t,e){return i[0]=t[0]+e[0],i[1]=t[1]+e[1],i}var zb=Ob;function Ob(i,t,e){return i[0]=t,i[1]=e,i}var Bb=Vb;function Vb(i,t){var e=t[0],n=t[1],s=e*e+n*n;return s>0&&(s=1/Math.sqrt(s),i[0]=t[0]*s,i[1]=t[1]*s),i}var Rb=Qb;function Qb(i,t,e){return i[0]=t[0]-e[0],i[1]=t[1]-e[1],i}var Gb=Nb;function Nb(i,t){return i[0]*t[0]+i[1]*t[1]}var Hb=Lb,na=zb,mu=Bb,_b=Rb,Wb=Gb,jc=[0,0];Mo.computeMiter=function(t,e,n,s,o){return Hb(t,n,s),mu(t,t),na(e,-t[1],t[0]),na(jc,-n[1],n[0]),o/Wb(e,jc)};Mo.normal=function(t,e){return na(t,-e[1],e[0]),t};Mo.direction=function(t,e,n){return _b(t,e,n),mu(t,t),t};var Jt=Mo,kn=[0,0],Vs=[0,0],zc=[0,0],_i=[0,0],Fb=function(i,t){var e=null,n=[];t&&(i=i.slice(),i.push(i[0]));for(var s=i.length,o=1;o<s;o++){var r=i[o-1],a=i[o],l=o<i.length-1?i[o+1]:null;if(Jt.direction(kn,a,r),e||(e=[0,0],Jt.normal(e,kn)),o===1&&xr(n,e,1),!l)Jt.normal(e,kn),xr(n,e,1);else{Jt.direction(Vs,l,a);var c=Jt.computeMiter(zc,_i,kn,Vs,1);xr(n,_i,c)}}if(i.length>2&&t){var d=i[s-2],h=i[0],u=i[1];Jt.direction(kn,h,d),Jt.direction(Vs,u,h),Jt.normal(e,kn);var m=Jt.computeMiter(zc,_i,kn,Vs,1);n[0][0]=_i.slice(),n[s-1][0]=_i.slice(),n[0][1]=m,n[s-1][1]=m,n.pop()}return n};function xr(i,t,e){i.push([[t[0],t[1]],e])}const Yb=2,Ub=3,Xb=3,Zb=2;function Jb(i){const t=i.width,n=i.unitLength/t,s=t/2,o=i.path;if(o.length===0)return{geometry:new E.BufferGeometry,maxU:0};const r=new E.CurvePath;o.forEach(P=>{const V=qb(P);V&&r.add(V)});const a=Math.ceil(r.getLength()*100);r.arcLengthDivisions=a;const l=r.getPoints(a),c=l.length,d=Fb(l.map(P=>[P.x,P.z])),u=(c-1)*Yb*Ub,m=2*c,A=m*Xb,p=m*Zb,g=new Uint32Array(u),v=new Float32Array(A),y=new Float32Array(p);let I=0,k=0;for(let P=0;P<l.length;P++){const[V,L]=d[P][0],W=l[P],{x:q,y:N,z:G}=W,_=new R.Vector3(q+V*s,N+.05,G+L*s);v[P*6+0]=_.x,v[P*6+1]=_.y,v[P*6+2]=_.z;const Q=new R.Vector3(q-V*s,N+.05,G-L*s);v[P*6+3]=Q.x,v[P*6+4]=Q.y,v[P*6+5]=Q.z,I+=P>0?l[P-1].clone().sub(l[P]).length():0;const F=I/t/n;if(k=F,y[P*4+0]=0,y[P*4+1]=F,y[P*4+2]=1,y[P*4+3]=F,i.skipPositions){const Z=new E.Vector3().lerpVectors(_,Q,.5);if(i.skipPositions.some($=>$.distanceTo(Z)<.26))continue}P!==l.length-1&&(g[P*6+0]=P*2+0,g[P*6+1]=P*2+2,g[P*6+2]=P*2+1,g[P*6+3]=P*2+2,g[P*6+4]=P*2+3,g[P*6+5]=P*2+1)}const T=new E.BufferGeometry;return T.setAttribute("position",new E.BufferAttribute(v,3)),T.setAttribute("uv",new E.BufferAttribute(y,2)),T.setIndex(new E.BufferAttribute(g,1)),{geometry:T,maxU:k,curvePath:r,curvePoints:l}}function qb(i){if(Kb(i)){const t=[i.closed,i.curve_type,i.tension],e=i.points.map(s=>new E.Vector3().fromArray(s));return new E.CatmullRomCurve3(e,...t)}}function Kb(i){return i.type==="CatmullRomCurve3"}function $b(i,t){t.forEach(e=>{const n=new E.SphereGeometry(.02,16,16),s=[],o=[new E.MeshBasicMaterial({color:16776960}),new E.MeshBasicMaterial({color:16711935}),new E.MeshBasicMaterial({color:16711680}),new E.MeshBasicMaterial({color:65535})];if(e.position.length===4)e.position.forEach((r,a)=>{const l=o[a],c=new E.Mesh(n,l);c.position.copy(St(r)),s.push(c)});else{const r=o[0],a=new E.Mesh(n,r);a.position.copy(St(e.position)),s.push(a)}s.forEach(r=>{r.material.depthTest=!1,i.scene.add(r)})})}const _e=i=>i;function Dr(i){if(!i||i.length<3)return;const t=i.map($i),e=t[1].clone().sub(t[0]),n=t[2].clone().sub(t[1]);return e.cross(n)}function e1(i){return i.stickType==="Plane"}function t1(i){return i.stickType==="3DPoint"}function n1(i){return i.stickType==="3DPoint"||i.stickType==="Plane"}function At(i){return i.stickType==="Model"&&i.contentType==="MediaModel"}function i1(i){return i.stickType==="Model"&&i.contentType==="Model"}function s1(i){return i.stickType==="Model"}function o1(i){return i.stickType==="Plane"&&i.contentType==="MediaPlane"}function co(i){if(i)if(Array.isArray(i)&&i.length===4){const e=i.map($i);return nn(e[0],e[2])}else return $i(i)}function gu(i){if(At(i)&&i.matrix){const t=new R.Matrix4().fromArray(i.matrix),e=i.data.mediaPosition.map(n=>new R.Vector3().fromArray(n).applyMatrix4(t));return nn(e[0],e[2])}else return co(i.position)}function Wi(i,t){if(i===void 0)return;const{min:e,max:n}=t!=null?t:{};if(!(e===void 0&&n===void 0))return!(typeof n=="number"&&n<i||typeof e=="number"&&e>i)}function r1(i){return new Promise(t=>{i.model.loaded?t():i.once("modelLoaded",()=>t())})}function a1(i,t,e){const s=new E.Plane().setFromNormalAndCoplanarPoint(e,t),o=t.clone().sub(i).cross(new E.Vector3(0,1,0)).setLength(.01),r=new E.Vector3(0,.01,0);return[t.clone().sub(o).sub(r),t.clone().add(o).sub(r),t.clone().add(o).add(r),t.clone().sub(o).add(r)].map(l=>s.projectPoint(l,new E.Vector3))}const Oc=(i,t=1e3/60)=>{let e=null;const n=i;return(...o)=>{e&&clearTimeout(e),e=setTimeout(()=>{n==null||n(...o),e&&clearTimeout(e),e=null},t)}};function l1(i,t=200){let e;return function(...n){e||(i.apply(this,n),e=setTimeout(function(){e=null},t))}}function c1(i,t){const[e,n]=t;if(e>=n||n<=1||e<=1)return-1;const s={},o=r=>(s[r]||(s[r]=i(r)),s[r]);for(let r=e;r<n;r++){const a=o(r),l=o(r-1);if(a<l)return r}return-1}function Bc(i,t){if(!t||typeof ResizeObserver=="undefined"||!ResizeObserver)return{observe:()=>window.addEventListener("resize",i),unobserve:()=>window.removeEventListener("resize",i)};{const e=new ResizeObserver(i);return{observe:()=>e.observe(t),unobserve:()=>e.unobserve(t)}}}function d1(i){var t,e,n,s;if(!i.stickType){const o=(()=>i.pointType==="PointTag"&&i.dimensionType==="3D"?"3DPoint":i.pointType==="PlaneTag"?"Plane":"2DPoint")();i.stickType=o}if(i.contentType==="VRLink"||i.contentType==="PanoLink"||i.contentType==="Link"){const o=i;!((e=(t=o.data)==null?void 0:t.icon)!=null&&e.url)&&!((s=(n=o.style)==null?void 0:n.point)!=null&&s.url)&&(o.data.icon={url:"//vrlab-static.ljcdn.com/release/web/test.09dee741.png",steps:28})}return i}const mi="data:audio/mpeg;base64,//uQxAAAAAAAAAAAAAAAAAAAAAAASW5mbwAAAA8AAAADAAAGhgBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVWqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr///////////////////////////////////////////8AAAA5TEFNRTMuOThyAc0AAAAAAAAAABSAJAiqQgAAgAAABobxtI73AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//uQxAACFEII9ACZ/sJZwWEoEb8w/////N//////JcxjHjf+7/v/H2PzCCFAiDtGeyBCIx7bJJ1mmEEMy6g8mm2c8nrGABB4h2Mkmn//4z/73u773R5qHHu/j/w7Kxkzh5lWRWdsifCkNAnY9Zc1HvDAhjhSHdFkHFzLmabt/AQxSg2wwzLhHIJOBnAWwVY4zrhIYhhc2kvhYDfQ4hDi2Gmh5KyFn8EcGIrHAngNgIwVIEMf5bzbAiTRoAD///8z/KVhkkWEle6IX+d/z4fvH3BShK1e5kmjkCMoxVmXhd4ROlTKo3iipasvTilY21q19ta30/v/0/idPX1v8PNxJL6ramnOVsdvMv2akO0iSYIzdJFirtzWXCZicS9vHqvSKyqm5XJBdqBwPxyfJdykhWTZ0G0ZyTZGpLKxsNwwoRhsx3tZfhwmeOBVISm3impAC/IT/8hP/EKEM1KMdVdVKM2rHV4x7HVXZvbVVKN/qq8CiV9VL9jjH/6l6qf7MBCjZmOqsAibjcP+qqqv0oxqpa/NVW286hPo1nz2L/h8+jXt//uSxCmDU2IK/ECN98KKtE5IYzNoCfbw+u9i5r8PoadUMFPKqWL4LK3T/LCraMSHGkW4bpLXR/E6LlHOVQxmslKVJ8IULktMN06N0FKCpHCoYsjC4F+Z0NVqdNFoGSTjSiyjzLdnZ2fNqTi2eHKONONKLMPMKLONKLMPQRJGlFxZRoKcJFAYEeIFiRQkUWUeYfef//Ko04soswso40UJAgMw8wosososy0EalnZyjQUGBRQGIFggOWUacWUeYmuadrZziQKKEgQsQLAhQkUJAgMQDghltLO1onp0cpkNInSFMqlYeSEJ5AHsqFdOwy1DA2sRmRJKxdKRfLhfLw5BzUxBTUUzLjk4LjJVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjk4LjJVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7ksRRA8AAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=",qi={};var Ba=(i=>(i.Default="default",i.GetAudioDuration="getAudioDuration",i.PlayAudio="playAudio",i))(Ba||{});function h1(i,t){const e=(t==null?void 0:t.namespace)||"default",n=qi[e]||(qi[e]=[]);let s=n.find(o=>!o.realSrc||o.realSrc===mi);return s||(console.warn("未找到缓存音频,已新建",qi),s=new pu(mi),n.push(s)),i&&(s.src=i),s}function u1(i,t){const e=(t==null?void 0:t.namespace)||"default",n=qi[e]||(qi[e]=[]),s=i-n.length;if(!(s<=0))for(let o=0;o<s;o++)n.push(new pu(mi))}class pu extends Audio{constructor(e){super(e);f(this,"preload","auto");f(this,"crossOrigin","anonymous");f(this,"realSrc","");f(this,"inited",!1);f(this,"removeDocumentEventListener");this.realSrc=e!=null?e:"",this.muted=!0,super.autoplay=!0,super.addEventListener("ended",()=>{this.src=""});const n=()=>f1(this);document.addEventListener("click",n),document.addEventListener("touchend",n),this.removeDocumentEventListener=()=>{document.removeEventListener("click",n),document.removeEventListener("touchend",n)}}get isBlankAudio(){return this.realSrc===mi||!this.realSrc}get src(){return super.src}set src(e){super.src=e,this.realSrc=e,this.removeDocumentEventListener()}get muted(){return super.muted}set muted(e){super.muted=e}clear(){this.currentTime=0,this.src=mi}}function f1(i){i&&(i.inited||(i.src&&(i.inited=!0,i.removeDocumentEventListener()),i.src===mi&&i.play()))}const m1={globalConfig:{visibleConfig:{followModelVisibility:!0},unfoldedConfig:{autoUnfold:{strategy:"MinimumDistance",distance:{max:5}}},tag3DConfig:{ratio:.0035}},contentTypeConfig:{"Any-Audio-plane":{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},Link:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},VRLink:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},PanoLink:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},MediaPlane:{unfoldedConfig:{keep:"unfolded"},visibleConfig:{alwaysShowWhenMovePano:!0},initialData:{autoplayConfig:{autoplayCarousel:!0,autoplayVideo:!1,autoplayVideoInCarousel:!1}}},MediaModel:{unfoldedConfig:{keep:"unfolded"},visibleConfig:{keep:"visible",visibleFiveMode:["Panorama","Floorplan","Model","Mapview"],alwaysShowWhenMovePano:!0}}}};class g1 extends rs{constructor(e){super(e);f(this,"tagCacheByPanoIndex",{})}getCache({panoIndex:e,id:n,key:s}){var c,d,h;const{five:o}=this,r=e!=null?e:o.getCurrentState().panoIndex;if(r===void 0)throw new Error(`TagCacheController getCache(): fivePanoIndex is ${r}`);const a=`${(d=(c=o.work)==null?void 0:c.workCode)!=null?d:o.model.uuid}-${r}`;let l=this.tagCacheByPanoIndex[a];if(l||(l=new Map,this.tagCacheByPanoIndex[a]=l),n===void 0)return l;if(s===void 0){const u=l.get(n);return u||(l.set(n,{}),l.get(n))}return(h=l.get(n))==null?void 0:h[s]}clearCache(){this.tagCacheByPanoIndex={}}removeCache(){}}const Au=navigator.userAgent.toLowerCase().indexOf("iphone")!==-1;navigator.userAgent.toLowerCase().indexOf("android");const Ys=navigator.userAgent.toLowerCase().indexOf("micromessenger")!==-1,p1=Au&&Ys;function A1(i){if(i.length!==4)return!1;const[t,e,n,s]=i,o=t.distanceTo(e),r=e.distanceTo(n),a=n.distanceTo(s),l=s.distanceTo(t),c=t.distanceTo(n),d=e.distanceTo(s);return o===a&&r===l&&c===d}class Sr extends E.Mesh{constructor(e,n,s){if(e.length!==4)throw new Error("QuadrangleMesh: Invalid number of points, it's not a quadrangle");const[o,r,a,l]=e,c=nn(...e),d=[o.clone().sub(c),r.clone().sub(c),a.clone().sub(c),l.clone().sub(c)],h=new vu(d,s);super(h,n);f(this,"name","QuadrangleMesh");this.position.copy(c)}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}}class vu extends E.BufferGeometry{constructor(e,n){super();f(this,"name","QuadrangleGeometry");f(this,"points");this.points=e;const s=n!=null?n:A1(e)?64:1;if(e.length!==4){console.error("Invalid number of points, it's not a quadrangle");return}const[o,r,a,l]=e,[c,d,h,u]=[new E.Vector2(0,0),new E.Vector2(1,0),new E.Vector2(1,1),new E.Vector2(0,1)],m=[],A=[];m.push(...o.toArray()),A.push(...c.toArray());for(let g=1;g<s;g++)m.push(o.x+(r.x-o.x)*g/s,o.y+(r.y-o.y)*g/s,o.z+(r.z-o.z)*g/s),A.push(c.x+(d.x-c.x)*g/s,c.y+(d.y-c.y)*g/s);m.push(...r.toArray()),A.push(...d.toArray()),m.push(...a.toArray()),A.push(...h.toArray());for(let g=1;g<s;g++)m.push(a.x+(l.x-a.x)*g/s,a.y+(l.y-a.y)*g/s,a.z+(l.z-a.z)*g/s),A.push(h.x+(u.x-h.x)*g/s,h.y+(u.y-h.y)*g/s);m.push(...l.toArray()),A.push(...u.toArray());const p=[];for(let g=0;g<s;g++)p.push(g,g+1,s*2-g,g,s*2-g,s*2+1-g);this.setAttribute("position",new E.BufferAttribute(new Float32Array(m),3)),this.setAttribute("uv",new E.BufferAttribute(new Float32Array(A),2)),this.setIndex(new E.BufferAttribute(new Uint32Array(p),1))}}function v1(i,t){let e=!Ys;const n=t!=null?t:document.createElement("video");n.preload="metadata",n.crossOrigin="anonymous",n.muted=!0,n.loop=!0,n.playsInline=!0,n.autoplay=!0;const s=new E.VideoTexture(n);s.minFilter=E.LinearFilter,s.magFilter=E.LinearFilter,s.encoding=E.sRGBEncoding,s.metadataLoaded=!1,n.src=i;const o=()=>{s.metadataLoaded||(s.dispatchEvent({type:"videoLoaded"}),s.metadataLoaded=!0)};if(Ys||(n.onloadedmetadata=()=>{o()}),Ys){const r=()=>{if(!e){if(!n.paused){o();return}e=!0,n.muted=!0,n.play().then(()=>{n.pause(),n.currentTime=0,o()})}};document.addEventListener("click",r,{once:!0}),Au&&document.addEventListener("touchstart",r,{once:!0})}return s}function Ui(i,t,e){if(i==="fill")return t;if(i==="contain"){const[n,s,o,r]=t,a=n.distanceTo(s),l=o.distanceTo(r),c=n.distanceTo(r),d=s.distanceTo(o),h=a,u=c,m=h/u;if(m>e){const p=u*e,g=new E.Vector3().subVectors(s,n).multiplyScalar((a-p)/2/a),v=new E.Vector3().subVectors(o,r).multiplyScalar((l-p)/2/l);return[n.clone().add(g),s.clone().sub(g),o.clone().sub(v),r.clone().add(v)]}else if(m<e){const p=h/e,g=new E.Vector3().subVectors(r,n).multiplyScalar((c-p)/2/c),v=new E.Vector3().subVectors(o,s).multiplyScalar((d-p)/2/d);return[n.clone().add(g),s.clone().add(v),o.clone().sub(v),r.clone().sub(g)]}else return t}else return console.warn(`objectFit: ${i} is not supported yet`),t}class b1 extends E.ShaderMaterial{constructor(e){super();f(this,"transparent",!1);f(this,"blending",E.CustomBlending);f(this,"blendSrc",E.SrcAlphaFactor);f(this,"blendDst",E.OneMinusSrcAlphaFactor);f(this,"blendSrcAlpha",E.OneFactor);f(this,"blendDstAlpha",E.OneMinusSrcAlphaFactor);f(this,"vertexShader",`
|
|
556
556
|
varying vec2 vUv;
|
|
557
557
|
void main() {
|
|
558
558
|
vUv = uv;
|
|
@@ -580,9 +580,9 @@ void main() {
|
|
|
580
580
|
${i[8]?"transform: translateX(-50%); left: 50%":""}
|
|
581
581
|
${i[9]?"transform: translateX(-50%); top: 50%":""}
|
|
582
582
|
${i[7]?"transform: translate(-50%, -50%); left: 50%; top: 50%;":""}
|
|
583
|
-
`))&&w(t,"style",e);const l=a&8160;(l||a&8168)&&z(t,"width",Ct(i[3])),(l||a&8176)&&z(t,"height",Ct(i[4])),(l||a&16352)&&z(t,"z-index",i[13])},i(r){o||(r&&Ne(()=>{o&&(s&&s.end(1),n=On(t,tt,{duration:i[0]}),n.start())}),o=!0)},o(r){n&&n.invalidate(),r&&(s=Ii(t,tt,{duration:i[1]})),o=!1},d(r){r&&O(t),r&&s&&s.end()}}}function x1(i){let t,e=i[2]&&Gc(i);return{c(){e&&e.c(),t=Pe()},m(n,s){e&&e.m(n,s),B(n,t,s)},p(n,[s]){n[2]?e?(e.p(n,s),s&4&&M(e,1)):(e=Gc(n),e.c(),M(e,1),e.m(t.parentNode,t)):e&&(de(),j(e,1,1,()=>{e=null}),he())},i(n){M(e)},o(n){j(e)},d(n){e&&e.d(n),n&&O(t)}}}function Ct(i){return typeof i=="number"?i/16+"rem":i}function D1(i,t,e){let{inDelay:n=1e3}=t,{outDelay:s=1e3}=t,{visible:o=!0}=t,{width:r=0}=t,{height:a=0}=t,{left:l=0}=t,{bottom:c=0}=t,{center:d=!1}=t,{horizontalCenter:h=!1}=t,{verticalCenter:u=!1}=t,{blurRadius:m}=t,{spreadRadius:A}=t,{opacity:p=.15}=t,{zIndex:g=-1}=t;return i.$$set=b=>{"inDelay"in b&&e(0,n=b.inDelay),"outDelay"in b&&e(1,s=b.outDelay),"visible"in b&&e(2,o=b.visible),"width"in b&&e(3,r=b.width),"height"in b&&e(4,a=b.height),"left"in b&&e(5,l=b.left),"bottom"in b&&e(6,c=b.bottom),"center"in b&&e(7,d=b.center),"horizontalCenter"in b&&e(8,h=b.horizontalCenter),"verticalCenter"in b&&e(9,u=b.verticalCenter),"blurRadius"in b&&e(10,m=b.blurRadius),"spreadRadius"in b&&e(11,A=b.spreadRadius),"opacity"in b&&e(12,p=b.opacity),"zIndex"in b&&e(13,g=b.zIndex)},[n,s,o,r,a,l,c,d,h,u,m,A,p,g]}class Wt extends le{constructor(t){super(),ae(this,t,D1,x1,oe,{inDelay:0,outDelay:1,visible:2,width:3,height:4,left:5,bottom:6,center:7,horizontalCenter:8,verticalCenter:9,blurRadius:10,spreadRadius:11,opacity:12,zIndex:13},M1)}}function S1(){return Math.random().toString(36).slice(-6)}const Tr=S1();function T1(i){ue(i,"svelte-1b2n9wi",".text-char.svelte-1b2n9wi{display:inline-block;text-shadow:0.125rem 0rem 0.5rem rgba(0, 0, 0, 0.15)}")}function Nc(i,t,e){const n=i.slice();return n[18]=t[e].id,n[0]=t[e].content,n[19]=t,n[20]=e,n}function L1(i){let t,e=i[0]+"",n,s=i[20];const o=()=>i[9](t,s),r=()=>i[9](null,s);return{c(){t=x("span"),n=Me(e),w(t,"class","text-char svelte-1b2n9wi")},m(a,l){B(a,t,l),D(t,n),o()},p(a,l){i=a,l&4&&e!==(e=i[0]+"")&&Oe(n,e),s!==i[20]&&(r(),s=i[20],o())},d(a){a&&O(t),r()}}}function j1(i){let t,e=i[20];const n=()=>i[8](t,e),s=()=>i[8](null,e);return{c(){t=x("span"),t.textContent=" ",w(t,"class","text-char svelte-1b2n9wi")},m(o,r){B(o,t,r),n()},p(o,r){i=o,e!==i[20]&&(s(),e=i[20],n())},d(o){o&&O(t),s()}}}function Hc(i,t){let e,n;function s(a,l){return a[0]===a[3]?j1:L1}let o=s(t),r=o(t);return{key:i,first:null,c(){e=Pe(),r.c(),n=Pe(),this.first=e},m(a,l){B(a,e,l),r.m(a,l),B(a,n,l)},p(a,l){t=a,o===(o=s(t))&&r?r.p(t,l):(r.d(1),r=o(t),r&&(r.c(),r.m(n.parentNode,n)))},d(a){a&&O(e),r.d(a),a&&O(n)}}}function z1(i){let t=[],e=new Map,n,s=i[2];const o=r=>r[18];for(let r=0;r<s.length;r+=1){let a=Nc(i,s,r),l=o(a);e.set(l,t[r]=Hc(l,a))}return{c(){for(let r=0;r<t.length;r+=1)t[r].c();n=Pe()},m(r,a){for(let l=0;l<t.length;l+=1)t[l]&&t[l].m(r,a);B(r,n,a)},p(r,[a]){a&14&&(s=r[2],t=jt(t,a,o,1,r,s,e,n.parentNode,wa,Hc,n,Nc))},i:J,o:J,d(r){for(let a=0;a<t.length;a+=1)t[a].d(r);r&&O(n)}}}function O1(i,t,e){let n,{inDelay:s=0}=t,{outDelay:o=0}=t,{content:r}=t,{unfolded:a}=t,{isFistUnfoldedUpdate:l=!0}=t;const c=`__EMOJI_SPLIT_${Tr}__`,d=`__EMOJI_${Tr}__`,h=`__SPACE_${Tr}__`;let u,m,A=[];function p(T){const P=[],V=new RegExp(new RegExp("\\p{Regional_Indicator}\\p{Regional_Indicator}|\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?(\\u200D\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?)+|\\p{Emoji_Presentation}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?|\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)","gu"));return T.slice().replace(V,L=>`${c}${d}${L}${c}`).split(c).forEach(L=>L.startsWith(d)?P.push({id:at(),content:L.slice(d.length)}):P.push(...L.split("").map(W=>W===" "?h:W).map(W=>({id:at(),content:W})))),P}function g(){if(!m)return;const T=!a;m.reversed!==T&&m.reverse(),m.play()}function b(T){if(l){e(4,l=!1);return}clearTimeout(u),u=setTimeout(g,T?s:o)}function y(T){const P=function(){const V=c1(L=>T[L].getBoundingClientRect().x,[Math.min(T.length-1,10),Math.min(T.length-1,30)]);if(V>0)return V}();m=Za({targets:T.slice(0,P).filter(Ai),autoplay:!1,duration:400,scale:[.7,1],rotate:[20,0],opacity:[0,1],translateX:[4,0],translateY:[10,0],delay:Za.stagger(50),easing:"easeInOutCubic"}),a&&m.seek(m.duration)}function I(T,P){Qe[T?"unshift":"push"](()=>{A[P]=T,e(1,A)})}function k(T,P){Qe[T?"unshift":"push"](()=>{A[P]=T,e(1,A)})}return i.$$set=T=>{"inDelay"in T&&e(5,s=T.inDelay),"outDelay"in T&&e(6,o=T.outDelay),"content"in T&&e(0,r=T.content),"unfolded"in T&&e(7,a=T.unfolded),"isFistUnfoldedUpdate"in T&&e(4,l=T.isFistUnfoldedUpdate)},i.$$.update=()=>{i.$$.dirty&1&&e(2,n=p(r)),i.$$.dirty&128&&b(a),i.$$.dirty&2&&y(A.filter(T=>!!T))},[r,A,n,h,l,s,o,a,I,k]}class yu extends le{constructor(t){super(),ae(this,t,O1,z1,oe,{inDelay:5,outDelay:6,content:0,unfolded:7,isFistUnfoldedUpdate:4},T1)}}function B1(i){ue(i,"svelte-1ogmlqq",".arrow.svelte-1ogmlqq{width:100%;height:100%;background-size:100%;transition:transform 400ms ease-in-out;cursor:pointer;pointer-events:auto}.arrow-wrapper.svelte-1ogmlqq{position:relative;width:100%;height:100%}.arrow.left.svelte-1ogmlqq{transform:rotate(0deg)}.arrow.right.svelte-1ogmlqq{transform:rotate(-180deg)}.arrow.top.svelte-1ogmlqq{transform:rotate(90deg)}.arrow.bottom.svelte-1ogmlqq{transform:rotate(-90deg)}")}function _c(i){let t,e,n,s,o,r,a,l,c,d;return e=new Wt({props:{center:!0,blurRadius:9,spreadRadius:3}}),{c(){t=x("div"),ie(e.$$.fragment),n=ee(),s=x("div"),w(s,"class",o="arrow "+i[0]+" svelte-1ogmlqq"),z(s,"background-image","url("+K0+")"),w(t,"class","arrow-wrapper svelte-1ogmlqq")},m(h,u){B(h,t,u),te(e,t,null),D(t,n),D(t,s),l=!0,c||(d=be(s,"click",i[5]),c=!0)},p(h,u){i=h,(!l||u&1&&o!==(o="arrow "+i[0]+" svelte-1ogmlqq"))&&w(s,"class",o)},i(h){l||(M(e.$$.fragment,h),h&&Ne(()=>{l&&(a&&a.end(1),r=On(s,tt,{duration:i[2],delay:i[3],easing:hi}),r.start())}),l=!0)},o(h){j(e.$$.fragment,h),r&&r.invalidate(),h&&(a=Ii(s,tt,{duration:i[2],delay:i[4],easing:hi})),l=!1},d(h){h&&O(t),ne(e),h&&a&&a.end(),c=!1,d()}}}function V1(i){let t,e,n=i[1]&&_c(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[1]?n?(n.p(s,o),o&2&&M(n,1)):(n=_c(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function R1(i,t,e){let{direction:n="right"}=t,{visible:s=!0}=t,{duration:o=0}=t,{inDelay:r=0}=t,{outDelay:a=0}=t;function l(c){Ci.call(this,i,c)}return i.$$set=c=>{"direction"in c&&e(0,n=c.direction),"visible"in c&&e(1,s=c.visible),"duration"in c&&e(2,o=c.duration),"inDelay"in c&&e(3,r=c.inDelay),"outDelay"in c&&e(4,a=c.outDelay)},[n,s,o,r,a,l]}let Q1=class extends le{constructor(t){super(),ae(this,t,R1,V1,oe,{direction:0,visible:1,duration:2,inDelay:3,outDelay:4},B1)}};function G1(i,t,e=20,n=5){return new Promise((s,o)=>{let r=0;const a=setInterval(()=>{const l=i();t(l)?(clearInterval(a),s(l)):r>=n&&(clearInterval(a),o(l)),r++},e)})}function N1(i){ue(i,"svelte-1fuzm7v",".text.svelte-1fuzm7v{pointer-events:auto;box-sizing:border-box;display:inline-block;max-width:7.5rem;transition:transform 400ms ease-in-out;font-size:0.75rem;line-height:1.125rem;white-space:initial;cursor:pointer}.arrow.svelte-1fuzm7v{pointer-events:auto;display:inline-block;vertical-align:top;width:0.875rem;height:0.875rem;margin-left:0.125rem;margin-top:0.125rem}")}function Wc(i){let t,e,n;return e=new yu({props:{unfolded:i[0],content:i[1],inDelay:500,outDelay:i[5]}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","text svelte-1fuzm7v"),z(t,"transform",i[7])},m(s,o){B(s,t,o),te(e,t,null),i[10](t),n=!0},p(s,o){const r={};o&1&&(r.unfolded=s[0]),o&2&&(r.content=s[1]),o&32&&(r.outDelay=s[5]),e.$set(r),o&128&&z(t,"transform",s[7])},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e),i[10](null)}}}function Fc(i){let t,e,n;return e=new Q1({props:{direction:i[6],visible:i[0],inDelay:600,duration:1e3}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","arrow svelte-1fuzm7v")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o&64&&(r.direction=s[6]),o&1&&(r.visible=s[0]),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function H1(i){let t,e,n,s=i[1]&&Wc(i),o=i[3]<i[4]&&Fc(i);return{c(){s&&s.c(),t=ee(),o&&o.c(),e=Pe()},m(r,a){s&&s.m(r,a),B(r,t,a),o&&o.m(r,a),B(r,e,a),n=!0},p(r,[a]){r[1]?s?(s.p(r,a),a&2&&M(s,1)):(s=Wc(r),s.c(),M(s,1),s.m(t.parentNode,t)):s&&(de(),j(s,1,1,()=>{s=null}),he()),r[3]<r[4]?o?(o.p(r,a),a&24&&M(o,1)):(o=Fc(r),o.c(),M(o,1),o.m(e.parentNode,e)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){n||(M(s),M(o),n=!0)},o(r){j(s),j(o),n=!1},d(r){s&&s.d(r),r&&O(t),o&&o.d(r),r&&O(e)}}}function _1(i,t,e){let n,s,o,{visible:r=!1}=t,{textUnfolded:a=!1}=t,{content:l}=t,c,d=0,h=0,u=0;function m(A){Qe[A?"unshift":"push"](()=>{c=A,e(2,c)})}return i.$$set=A=>{"visible"in A&&e(0,r=A.visible),"textUnfolded"in A&&e(8,a=A.textUnfolded),"content"in A&&e(1,l=A.content)},i.$$.update=()=>{if(i.$$.dirty&7&&c&&r&&l){const{lineHeight:A}=getComputedStyle(c);e(4,u=c.offsetHeight),G1(()=>c==null?void 0:c.offsetHeight,Boolean).then(()=>{e(4,u=c.offsetHeight)}),e(3,h=Number(A.replace("px","")))}i.$$.dirty&280&&e(9,d=a?h-u:0),i.$$.dirty&512&&e(7,n=`translateY(${d}px)`),i.$$.dirty&256&&e(6,s=a?"left":"right"),i.$$.dirty&256&&e(5,o=a?450:0)},[r,l,c,h,u,o,s,n,a,d,m]}class wu extends le{constructor(t){super(),ae(this,t,_1,H1,oe,{visible:0,textUnfolded:8,content:1},N1)}}function W1(i){ue(i,"svelte-nlvd3x",".content.svelte-nlvd3x{width:-moz-max-content;width:max-content;height:3.375rem;padding:2.25rem 0.25rem 0 1rem;position:absolute;left:0;bottom:0;overflow:hidden;box-sizing:border-box;font-size:0;pointer-events:none;white-space:nowrap;font-weight:600}")}function Yc(i){var d,h;let t,e,n,s,o,r,a,l,c;return t=new Wt({props:{visible:i[2],left:i[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}}),n=new Va({props:{unfolded:i[2],length:i[3],outDelay:i[4]+40*Math.min((h=(d=i[6][0])==null?void 0:d.content.length)!=null?h:10,15),useLinearColor:!0}}),r=new wu({props:{visible:i[2],textUnfolded:i[1],content:i[5]}}),{c(){ie(t.$$.fragment),e=ee(),ie(n.$$.fragment),s=ee(),o=x("div"),ie(r.$$.fragment),w(o,"class","content svelte-nlvd3x")},m(u,m){te(t,u,m),B(u,e,m),te(n,u,m),B(u,s,m),B(u,o,m),te(r,o,null),a=!0,l||(c=[$t(Pi.call(null,o)),be(o,"clientWidth",i[8]),be(o,"click",i[7])],l=!0)},p(u,m){var b,y;const A={};m&4&&(A.visible=u[2]),m&8&&(A.left=u[3]/2+"px"),t.$set(A);const p={};m&4&&(p.unfolded=u[2]),m&8&&(p.length=u[3]),m&16&&(p.outDelay=u[4]+40*Math.min((y=(b=u[6][0])==null?void 0:b.content.length)!=null?y:10,15)),n.$set(p);const g={};m&4&&(g.visible=u[2]),m&2&&(g.textUnfolded=u[1]),m&32&&(g.content=u[5]),r.$set(g)},i(u){a||(M(t.$$.fragment,u),M(n.$$.fragment,u),M(r.$$.fragment,u),a=!0)},o(u){j(t.$$.fragment,u),j(n.$$.fragment,u),j(r.$$.fragment,u),a=!1},d(u){ne(t,u),u&&O(e),ne(n,u),u&&O(s),u&&O(o),ne(r),l=!1,Je(c)}}}function F1(i){let t,e,n=i[0].state&&Yc(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?n?(n.p(s,o),o&1&&M(n,1)):(n=Yc(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function Y1(i,t,e){let n,s,o,{tag:r}=t,a,l=!1,c=[];function d(){e(1,l=!l)}const h=u=>{e(3,a=u.detail)};return i.$$set=u=>{"tag"in u&&e(0,r=u.tag)},i.$$.update=()=>{var u,m,A;i.$$.dirty&1&&e(2,n=!!((u=r.state)!=null&&u.unfolded)),i.$$.dirty&1&&e(5,s=(A=(m=r.data.title)!=null?m:r.data.text)!=null?A:""),i.$$.dirty&4&&(n||setTimeout(()=>{e(1,l=!1)},20)),i.$$.dirty&2&&e(4,o=l?450:0)},[r,l,n,a,o,s,c,d,h]}class U1 extends le{constructor(t){super(),ae(this,t,Y1,F1,oe,{tag:0},W1)}}function Nt(i){return typeof i=="number"?i/16+"rem":i}function X1(i){ue(i,"svelte-i9wdo4",".text.svelte-i9wdo4{display:-webkit-box;display:-ms-box;display:-moz-box;position:relative;width:-moz-max-content;width:max-content;max-width:100%;-webkit-box-orient:vertical;-ms-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}@keyframes svelte-i9wdo4-blink{0%{opacity:1}50%{opacity:0}100%{opacity:1}}.caret.svelte-i9wdo4{position:absolute;width:0.0625rem;height:100%;background-color:#fff;animation:svelte-i9wdo4-blink 1.2s infinite}.placeholder.svelte-i9wdo4{opacity:0.5}")}function Z1(i){let t;const e=i[6].default,n=vi(e,i,i[5],null);return{c(){n&&n.c()},m(s,o){n&&n.m(s,o),t=!0},p(s,o){n&&n.p&&(!t||o&32)&&yi(n,e,s,s[5],t?bi(e,s[5],o,null):wi(s[5]),null)},i(s){t||(M(n,s),t=!0)},o(s){j(n,s),t=!1},d(s){n&&n.d(s)}}}function J1(i){var o,r;let t,e,n=((o=i[3])==null?void 0:o.inputting)&&Uc(),s=((r=i[3])==null?void 0:r.placeholder)&&Xc(i);return{c(){n&&n.c(),t=ee(),s&&s.c(),e=Pe()},m(a,l){n&&n.m(a,l),B(a,t,l),s&&s.m(a,l),B(a,e,l)},p(a,l){var c,d;(c=a[3])!=null&&c.inputting?n||(n=Uc(),n.c(),n.m(t.parentNode,t)):n&&(n.d(1),n=null),(d=a[3])!=null&&d.placeholder?s?s.p(a,l):(s=Xc(a),s.c(),s.m(e.parentNode,e)):s&&(s.d(1),s=null)},i:J,o:J,d(a){n&&n.d(a),a&&O(t),s&&s.d(a),a&&O(e)}}}function q1(i){let t;return{c(){t=Me(i[2])},m(e,n){B(e,t,n)},p(e,n){n&4&&Oe(t,e[2])},i:J,o:J,d(e){e&&O(t)}}}function Uc(i){let t;return{c(){t=x("div"),w(t,"class","caret svelte-i9wdo4")},m(e,n){B(e,t,n)},d(e){e&&O(t)}}}function Xc(i){let t,e=i[3].placeholder+"",n;return{c(){t=x("span"),n=Me(e),w(t,"class","placeholder svelte-i9wdo4")},m(s,o){B(s,t,o),D(t,n)},p(s,o){o&8&&e!==(e=s[3].placeholder+"")&&Oe(n,e)},d(s){s&&O(t)}}}function K1(i){let t,e,n,s;const o=[q1,J1,Z1],r=[];function a(l,c){return l[2]?0:l[4]?1:2}return e=a(i),n=r[e]=o[e](i),{c(){t=x("div"),n.c(),w(t,"class","text svelte-i9wdo4"),z(t,"max-width",typeof i[1]=="number"?Nt(i[1]):i[1]),z(t,"-webkit-line-clamp",i[0])},m(l,c){B(l,t,c),r[e].m(t,null),s=!0},p(l,[c]){let d=e;e=a(l),e===d?r[e].p(l,c):(de(),j(r[d],1,1,()=>{r[d]=null}),he(),n=r[e],n?n.p(l,c):(n=r[e]=o[e](l),n.c()),M(n,1),n.m(t,null)),c&2&&z(t,"max-width",typeof l[1]=="number"?Nt(l[1]):l[1]),c&1&&z(t,"-webkit-line-clamp",l[0])},i(l){s||(M(n),s=!0)},o(l){j(n),s=!1},d(l){l&&O(t),r[e].d()}}}function $1(i,t,e){let n,{$$slots:s={},$$scope:o}=t,{maxLine:r=1}=t,{maxWidth:a=null}=t,{text:l=null}=t,{edit:c=null}=t;return i.$$set=d=>{"maxLine"in d&&e(0,r=d.maxLine),"maxWidth"in d&&e(1,a=d.maxWidth),"text"in d&&e(2,l=d.text),"edit"in d&&e(3,c=d.edit),"$$scope"in d&&e(5,o=d.$$scope)},i.$$.update=()=>{i.$$.dirty&8&&e(4,n=(c==null?void 0:c.placeholder)||(c==null?void 0:c.inputting))},[r,a,l,c,n,o,s]}class Ra extends le{constructor(t){super(),ae(this,t,$1,K1,oe,{maxLine:0,maxWidth:1,text:2,edit:3},X1)}}function ey(i){ue(i,"svelte-1oxrkr1",".plane__container.svelte-1oxrkr1.svelte-1oxrkr1{position:absolute;left:50%;transform:translate(-50%, -100%);width:-moz-max-content;width:max-content}.plane__wrapper.svelte-1oxrkr1.svelte-1oxrkr1{transition:transform 500ms linear, opacity 200ms linear;padding:0.625rem;background-color:rgba(0, 0, 0, 0.5);border:0.03125rem solid rgba(255, 255, 255, 0.3);border-radius:0.25rem}.unfolded.svelte-1oxrkr1 .plane__wrapper.svelte-1oxrkr1{transition-delay:200ms, 500ms;opacity:1}.folded.svelte-1oxrkr1 .plane__wrapper.svelte-1oxrkr1{opacity:0}.plane.svelte-1oxrkr1.svelte-1oxrkr1{max-width:11.75rem}.title.svelte-1oxrkr1.svelte-1oxrkr1{white-space:pre-wrap;font-weight:bold;font-size:0.75rem;line-height:1.125rem}.description.svelte-1oxrkr1.svelte-1oxrkr1{margin-top:0.25rem;white-space:pre-wrap;font-size:0.6875rem;line-height:1rem}")}function Zc(i){var h,u;let t,e,n,s,o,r,a,l,c;t=new Va({props:{unfolded:i[1],direction:"vertical",length:15,duration:500,inDelay:200,useLinearColor:!0}}),a=new Ra({props:{text:i[2],edit:(h=i[0].data.edit)==null?void 0:h.title}});let d=(i[0].data.description||((u=i[0].data.edit)==null?void 0:u.description))&&Jc(i);return{c(){ie(t.$$.fragment),e=ee(),n=x("div"),s=x("div"),o=x("div"),r=x("div"),ie(a.$$.fragment),l=ee(),d&&d.c(),w(r,"class","title svelte-1oxrkr1"),w(o,"class","plane svelte-1oxrkr1"),w(s,"class","plane__wrapper svelte-1oxrkr1"),z(s,"transform",i[1]?"translateY(-15px)":"translateY(0)"),w(n,"class","plane__container svelte-1oxrkr1"),K(n,"unfolded",i[1]),K(n,"folded",i[3])},m(m,A){te(t,m,A),B(m,e,A),B(m,n,A),D(n,s),D(s,o),D(o,r),te(a,r,null),D(o,l),d&&d.m(o,null),c=!0},p(m,A){var b,y;const p={};A&2&&(p.unfolded=m[1]),t.$set(p);const g={};A&4&&(g.text=m[2]),A&1&&(g.edit=(b=m[0].data.edit)==null?void 0:b.title),a.$set(g),m[0].data.description||(y=m[0].data.edit)!=null&&y.description?d?(d.p(m,A),A&1&&M(d,1)):(d=Jc(m),d.c(),M(d,1),d.m(o,null)):d&&(de(),j(d,1,1,()=>{d=null}),he()),A&2&&z(s,"transform",m[1]?"translateY(-15px)":"translateY(0)"),(!c||A&2)&&K(n,"unfolded",m[1]),(!c||A&8)&&K(n,"folded",m[3])},i(m){c||(M(t.$$.fragment,m),M(a.$$.fragment,m),M(d),c=!0)},o(m){j(t.$$.fragment,m),j(a.$$.fragment,m),j(d),c=!1},d(m){ne(t,m),m&&O(e),m&&O(n),ne(a),d&&d.d()}}}function Jc(i){var s;let t,e,n;return e=new Ra({props:{text:i[0].data.description,edit:(s=i[0].data.edit)==null?void 0:s.description,maxLine:3}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","description svelte-1oxrkr1")},m(o,r){B(o,t,r),te(e,t,null),n=!0},p(o,r){var l;const a={};r&1&&(a.text=o[0].data.description),r&1&&(a.edit=(l=o[0].data.edit)==null?void 0:l.description),e.$set(a)},i(o){n||(M(e.$$.fragment,o),n=!0)},o(o){j(e.$$.fragment,o),n=!1},d(o){o&&O(t),ne(e)}}}function ty(i){let t,e,n=i[0].state&&Zc(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?n?(n.p(s,o),o&1&&M(n,1)):(n=Zc(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function ny(i,t,e){let n,s,o,{tag:r}=t;return i.$$set=a=>{"tag"in a&&e(0,r=a.tag)},i.$$.update=()=>{var a,l,c;i.$$.dirty&1&&e(1,n=!!((a=r.state)!=null&&a.unfolded)),i.$$.dirty&2&&e(3,s=!n),i.$$.dirty&1&&e(2,o=(c=(l=r.data.title)!=null?l:r.data.text)!=null?c:"")},[r,n,o,s]}class iy extends le{constructor(t){super(),ae(this,t,ny,ty,oe,{tag:0},ey)}}function sy(i){let t,e;return t=new iy({props:{tag:i[0]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.tag=n[0]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function oy(i){let t,e;return t=new U1({props:{tag:i[0]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.tag=n[0]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function ry(i){let t,e,n,s;const o=[oy,sy],r=[];function a(l,c){return l[1]==="line"?0:l[1]==="plane"?1:-1}return~(t=a(i))&&(e=r[t]=o[t](i)),{c(){e&&e.c(),n=Pe()},m(l,c){~t&&r[t].m(l,c),B(l,n,c),s=!0},p(l,[c]){let d=t;t=a(l),t===d?~t&&r[t].p(l,c):(e&&(de(),j(r[d],1,1,()=>{r[d]=null}),he()),~t?(e=r[t],e?e.p(l,c):(e=r[t]=o[t](l),e.c()),M(e,1),e.m(n.parentNode,n)):e=null)},i(l){s||(M(e),s=!0)},o(l){j(e),s=!1},d(l){~t&&r[t].d(l),l&&O(n)}}}function ay(i,t,e){let n,{tag:s}=t;return i.$$set=o=>{"tag"in o&&e(0,s=o.tag)},i.$$.update=()=>{var o;i.$$.dirty&1&&e(1,n=(o=s.data.appearance)!=null?o:"line")},[s,n]}class ly extends le{constructor(t){super(),ae(this,t,ay,ry,oe,{tag:0})}}function cy(i){ue(i,"svelte-blgtit",".line.svelte-blgtit{width:100%;height:100%;overflow:visible;pointer-events:none}")}function qc(i){let t,e,n,s;return{c(){t=ze("path"),w(t,"fill","none"),w(t,"stroke","url(#"+i[4]+")"),w(t,"stroke-width","1"),w(t,"d","M0 21 L14 0.5 L105 0.5")},m(o,r){B(o,t,r),s=!0},p(o,r){i=o},i(o){s||(o&&Ne(()=>{s&&(n&&n.end(1),e=On(t,so,{duration:i[1],delay:i[0],easing:Gh}),e.start())}),s=!0)},o(o){e&&e.invalidate(),o&&(n=Ii(t,so,{duration:i[1],delay:i[2],easing:hi})),s=!1},d(o){o&&O(t),o&&n&&n.end()}}}function dy(i){let t,e,n,s,o,r=i[3]&&qc(i);return{c(){t=ze("svg"),e=ze("defs"),n=ze("linearGradient"),s=ze("stop"),o=ze("stop"),r&&r.c(),w(s,"offset","25%"),w(s,"stop-color","white"),w(s,"stop-opacity","1"),w(o,"offset","100%"),w(o,"stop-color","white"),w(o,"stop-opacity","0.5"),w(n,"id",i[4]),w(n,"gradientUnits","userSpaceOnUse"),w(t,"class","line svelte-blgtit"),w(t,"viewBox","0 0 105 21")},m(a,l){B(a,t,l),D(t,e),D(e,n),D(n,s),D(n,o),r&&r.m(t,null)},p(a,[l]){a[3]?r?(r.p(a,l),l&8&&M(r,1)):(r=qc(a),r.c(),M(r,1),r.m(t,null)):r&&(de(),j(r,1,1,()=>{r=null}),he())},i(a){M(r)},o(a){j(r)},d(a){a&&O(t),r&&r.d()}}}function hy(i,t,e){let{inDelay:n=0}=t,{duration:s=1e3}=t,{outDelay:o=0}=t,{unfolded:r}=t;const a=at();return i.$$set=l=>{"inDelay"in l&&e(0,n=l.inDelay),"duration"in l&&e(1,s=l.duration),"outDelay"in l&&e(2,o=l.outDelay),"unfolded"in l&&e(3,r=l.unfolded)},[n,s,o,r,a]}class uy extends le{constructor(t){super(),ae(this,t,hy,dy,oe,{inDelay:0,duration:1,outDelay:2,unfolded:3},cy)}}function fy(i){ue(i,"svelte-1mgyhhn",`:root{--sc-dot-size:6px;--sc-active-dot-size:8px;--sc-dot-size-animation-time:250ms}.sc-carousel-dot__dot.svelte-1mgyhhn{background-color:var(--sc-color-rgb-light);border-radius:50%;display:inline-block;opacity:0.5;transition:opacity 100ms ease,\r
|
|
583
|
+
`))&&w(t,"style",e);const l=a&8160;(l||a&8168)&&z(t,"width",Ct(i[3])),(l||a&8176)&&z(t,"height",Ct(i[4])),(l||a&16352)&&z(t,"z-index",i[13])},i(r){o||(r&&Ne(()=>{o&&(s&&s.end(1),n=On(t,tt,{duration:i[0]}),n.start())}),o=!0)},o(r){n&&n.invalidate(),r&&(s=Ii(t,tt,{duration:i[1]})),o=!1},d(r){r&&O(t),r&&s&&s.end()}}}function x1(i){let t,e=i[2]&&Gc(i);return{c(){e&&e.c(),t=Pe()},m(n,s){e&&e.m(n,s),B(n,t,s)},p(n,[s]){n[2]?e?(e.p(n,s),s&4&&M(e,1)):(e=Gc(n),e.c(),M(e,1),e.m(t.parentNode,t)):e&&(de(),j(e,1,1,()=>{e=null}),he())},i(n){M(e)},o(n){j(e)},d(n){e&&e.d(n),n&&O(t)}}}function Ct(i){return typeof i=="number"?i/16+"rem":i}function D1(i,t,e){let{inDelay:n=1e3}=t,{outDelay:s=1e3}=t,{visible:o=!0}=t,{width:r=0}=t,{height:a=0}=t,{left:l=0}=t,{bottom:c=0}=t,{center:d=!1}=t,{horizontalCenter:h=!1}=t,{verticalCenter:u=!1}=t,{blurRadius:m}=t,{spreadRadius:A}=t,{opacity:p=.15}=t,{zIndex:g=-1}=t;return i.$$set=v=>{"inDelay"in v&&e(0,n=v.inDelay),"outDelay"in v&&e(1,s=v.outDelay),"visible"in v&&e(2,o=v.visible),"width"in v&&e(3,r=v.width),"height"in v&&e(4,a=v.height),"left"in v&&e(5,l=v.left),"bottom"in v&&e(6,c=v.bottom),"center"in v&&e(7,d=v.center),"horizontalCenter"in v&&e(8,h=v.horizontalCenter),"verticalCenter"in v&&e(9,u=v.verticalCenter),"blurRadius"in v&&e(10,m=v.blurRadius),"spreadRadius"in v&&e(11,A=v.spreadRadius),"opacity"in v&&e(12,p=v.opacity),"zIndex"in v&&e(13,g=v.zIndex)},[n,s,o,r,a,l,c,d,h,u,m,A,p,g]}class Wt extends le{constructor(t){super(),ae(this,t,D1,x1,oe,{inDelay:0,outDelay:1,visible:2,width:3,height:4,left:5,bottom:6,center:7,horizontalCenter:8,verticalCenter:9,blurRadius:10,spreadRadius:11,opacity:12,zIndex:13},M1)}}function S1(){return Math.random().toString(36).slice(-6)}const Tr=S1();function T1(i){ue(i,"svelte-1b2n9wi",".text-char.svelte-1b2n9wi{display:inline-block;text-shadow:0.125rem 0rem 0.5rem rgba(0, 0, 0, 0.15)}")}function Nc(i,t,e){const n=i.slice();return n[18]=t[e].id,n[0]=t[e].content,n[19]=t,n[20]=e,n}function L1(i){let t,e=i[0]+"",n,s=i[20];const o=()=>i[9](t,s),r=()=>i[9](null,s);return{c(){t=x("span"),n=Me(e),w(t,"class","text-char svelte-1b2n9wi")},m(a,l){B(a,t,l),D(t,n),o()},p(a,l){i=a,l&4&&e!==(e=i[0]+"")&&Oe(n,e),s!==i[20]&&(r(),s=i[20],o())},d(a){a&&O(t),r()}}}function j1(i){let t,e=i[20];const n=()=>i[8](t,e),s=()=>i[8](null,e);return{c(){t=x("span"),t.textContent=" ",w(t,"class","text-char svelte-1b2n9wi")},m(o,r){B(o,t,r),n()},p(o,r){i=o,e!==i[20]&&(s(),e=i[20],n())},d(o){o&&O(t),s()}}}function Hc(i,t){let e,n;function s(a,l){return a[0]===a[3]?j1:L1}let o=s(t),r=o(t);return{key:i,first:null,c(){e=Pe(),r.c(),n=Pe(),this.first=e},m(a,l){B(a,e,l),r.m(a,l),B(a,n,l)},p(a,l){t=a,o===(o=s(t))&&r?r.p(t,l):(r.d(1),r=o(t),r&&(r.c(),r.m(n.parentNode,n)))},d(a){a&&O(e),r.d(a),a&&O(n)}}}function z1(i){let t=[],e=new Map,n,s=i[2];const o=r=>r[18];for(let r=0;r<s.length;r+=1){let a=Nc(i,s,r),l=o(a);e.set(l,t[r]=Hc(l,a))}return{c(){for(let r=0;r<t.length;r+=1)t[r].c();n=Pe()},m(r,a){for(let l=0;l<t.length;l+=1)t[l]&&t[l].m(r,a);B(r,n,a)},p(r,[a]){a&14&&(s=r[2],t=jt(t,a,o,1,r,s,e,n.parentNode,wa,Hc,n,Nc))},i:J,o:J,d(r){for(let a=0;a<t.length;a+=1)t[a].d(r);r&&O(n)}}}function O1(i,t,e){let n,{inDelay:s=0}=t,{outDelay:o=0}=t,{content:r}=t,{unfolded:a}=t,{isFistUnfoldedUpdate:l=!0}=t;const c=`__EMOJI_SPLIT_${Tr}__`,d=`__EMOJI_${Tr}__`,h=`__SPACE_${Tr}__`;let u,m,A=[];function p(T){const P=[],V=new RegExp(new RegExp("\\p{Regional_Indicator}\\p{Regional_Indicator}|\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?(\\u200D\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?)+|\\p{Emoji_Presentation}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?|\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)","gu"));return T.slice().replace(V,L=>`${c}${d}${L}${c}`).split(c).forEach(L=>L.startsWith(d)?P.push({id:at(),content:L.slice(d.length)}):P.push(...L.split("").map(W=>W===" "?h:W).map(W=>({id:at(),content:W})))),P}function g(){if(!m)return;const T=!a;m.reversed!==T&&m.reverse(),m.play()}function v(T){if(l){e(4,l=!1);return}clearTimeout(u),u=setTimeout(g,T?s:o)}function y(T){const P=function(){const V=c1(L=>T[L].getBoundingClientRect().x,[Math.min(T.length-1,10),Math.min(T.length-1,30)]);if(V>0)return V}();m=Za({targets:T.slice(0,P).filter(Ai),autoplay:!1,duration:400,scale:[.7,1],rotate:[20,0],opacity:[0,1],translateX:[4,0],translateY:[10,0],delay:Za.stagger(50),easing:"easeInOutCubic"}),a&&m.seek(m.duration)}function I(T,P){Qe[T?"unshift":"push"](()=>{A[P]=T,e(1,A)})}function k(T,P){Qe[T?"unshift":"push"](()=>{A[P]=T,e(1,A)})}return i.$$set=T=>{"inDelay"in T&&e(5,s=T.inDelay),"outDelay"in T&&e(6,o=T.outDelay),"content"in T&&e(0,r=T.content),"unfolded"in T&&e(7,a=T.unfolded),"isFistUnfoldedUpdate"in T&&e(4,l=T.isFistUnfoldedUpdate)},i.$$.update=()=>{i.$$.dirty&1&&e(2,n=p(r)),i.$$.dirty&128&&v(a),i.$$.dirty&2&&y(A.filter(T=>!!T))},[r,A,n,h,l,s,o,a,I,k]}class yu extends le{constructor(t){super(),ae(this,t,O1,z1,oe,{inDelay:5,outDelay:6,content:0,unfolded:7,isFistUnfoldedUpdate:4},T1)}}function B1(i){ue(i,"svelte-1ogmlqq",".arrow.svelte-1ogmlqq{width:100%;height:100%;background-size:100%;transition:transform 400ms ease-in-out;cursor:pointer;pointer-events:auto}.arrow-wrapper.svelte-1ogmlqq{position:relative;width:100%;height:100%}.arrow.left.svelte-1ogmlqq{transform:rotate(0deg)}.arrow.right.svelte-1ogmlqq{transform:rotate(-180deg)}.arrow.top.svelte-1ogmlqq{transform:rotate(90deg)}.arrow.bottom.svelte-1ogmlqq{transform:rotate(-90deg)}")}function _c(i){let t,e,n,s,o,r,a,l,c,d;return e=new Wt({props:{center:!0,blurRadius:9,spreadRadius:3}}),{c(){t=x("div"),ie(e.$$.fragment),n=ee(),s=x("div"),w(s,"class",o="arrow "+i[0]+" svelte-1ogmlqq"),z(s,"background-image","url("+K0+")"),w(t,"class","arrow-wrapper svelte-1ogmlqq")},m(h,u){B(h,t,u),te(e,t,null),D(t,n),D(t,s),l=!0,c||(d=be(s,"click",i[5]),c=!0)},p(h,u){i=h,(!l||u&1&&o!==(o="arrow "+i[0]+" svelte-1ogmlqq"))&&w(s,"class",o)},i(h){l||(M(e.$$.fragment,h),h&&Ne(()=>{l&&(a&&a.end(1),r=On(s,tt,{duration:i[2],delay:i[3],easing:hi}),r.start())}),l=!0)},o(h){j(e.$$.fragment,h),r&&r.invalidate(),h&&(a=Ii(s,tt,{duration:i[2],delay:i[4],easing:hi})),l=!1},d(h){h&&O(t),ne(e),h&&a&&a.end(),c=!1,d()}}}function V1(i){let t,e,n=i[1]&&_c(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[1]?n?(n.p(s,o),o&2&&M(n,1)):(n=_c(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function R1(i,t,e){let{direction:n="right"}=t,{visible:s=!0}=t,{duration:o=0}=t,{inDelay:r=0}=t,{outDelay:a=0}=t;function l(c){Ci.call(this,i,c)}return i.$$set=c=>{"direction"in c&&e(0,n=c.direction),"visible"in c&&e(1,s=c.visible),"duration"in c&&e(2,o=c.duration),"inDelay"in c&&e(3,r=c.inDelay),"outDelay"in c&&e(4,a=c.outDelay)},[n,s,o,r,a,l]}let Q1=class extends le{constructor(t){super(),ae(this,t,R1,V1,oe,{direction:0,visible:1,duration:2,inDelay:3,outDelay:4},B1)}};function G1(i,t,e=20,n=5){return new Promise((s,o)=>{let r=0;const a=setInterval(()=>{const l=i();t(l)?(clearInterval(a),s(l)):r>=n&&(clearInterval(a),o(l)),r++},e)})}function N1(i){ue(i,"svelte-1fuzm7v",".text.svelte-1fuzm7v{pointer-events:auto;box-sizing:border-box;display:inline-block;max-width:7.5rem;transition:transform 400ms ease-in-out;font-size:0.75rem;line-height:1.125rem;white-space:initial;cursor:pointer}.arrow.svelte-1fuzm7v{pointer-events:auto;display:inline-block;vertical-align:top;width:0.875rem;height:0.875rem;margin-left:0.125rem;margin-top:0.125rem}")}function Wc(i){let t,e,n;return e=new yu({props:{unfolded:i[0],content:i[1],inDelay:500,outDelay:i[5]}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","text svelte-1fuzm7v"),z(t,"transform",i[7])},m(s,o){B(s,t,o),te(e,t,null),i[10](t),n=!0},p(s,o){const r={};o&1&&(r.unfolded=s[0]),o&2&&(r.content=s[1]),o&32&&(r.outDelay=s[5]),e.$set(r),o&128&&z(t,"transform",s[7])},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e),i[10](null)}}}function Fc(i){let t,e,n;return e=new Q1({props:{direction:i[6],visible:i[0],inDelay:600,duration:1e3}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","arrow svelte-1fuzm7v")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o&64&&(r.direction=s[6]),o&1&&(r.visible=s[0]),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function H1(i){let t,e,n,s=i[1]&&Wc(i),o=i[3]<i[4]&&Fc(i);return{c(){s&&s.c(),t=ee(),o&&o.c(),e=Pe()},m(r,a){s&&s.m(r,a),B(r,t,a),o&&o.m(r,a),B(r,e,a),n=!0},p(r,[a]){r[1]?s?(s.p(r,a),a&2&&M(s,1)):(s=Wc(r),s.c(),M(s,1),s.m(t.parentNode,t)):s&&(de(),j(s,1,1,()=>{s=null}),he()),r[3]<r[4]?o?(o.p(r,a),a&24&&M(o,1)):(o=Fc(r),o.c(),M(o,1),o.m(e.parentNode,e)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){n||(M(s),M(o),n=!0)},o(r){j(s),j(o),n=!1},d(r){s&&s.d(r),r&&O(t),o&&o.d(r),r&&O(e)}}}function _1(i,t,e){let n,s,o,{visible:r=!1}=t,{textUnfolded:a=!1}=t,{content:l}=t,c,d=0,h=0,u=0;function m(A){Qe[A?"unshift":"push"](()=>{c=A,e(2,c)})}return i.$$set=A=>{"visible"in A&&e(0,r=A.visible),"textUnfolded"in A&&e(8,a=A.textUnfolded),"content"in A&&e(1,l=A.content)},i.$$.update=()=>{if(i.$$.dirty&7&&c&&r&&l){const{lineHeight:A}=getComputedStyle(c);e(4,u=c.offsetHeight),G1(()=>c==null?void 0:c.offsetHeight,Boolean).then(()=>{e(4,u=c.offsetHeight)}),e(3,h=Number(A.replace("px","")))}i.$$.dirty&280&&e(9,d=a?h-u:0),i.$$.dirty&512&&e(7,n=`translateY(${d}px)`),i.$$.dirty&256&&e(6,s=a?"left":"right"),i.$$.dirty&256&&e(5,o=a?450:0)},[r,l,c,h,u,o,s,n,a,d,m]}class wu extends le{constructor(t){super(),ae(this,t,_1,H1,oe,{visible:0,textUnfolded:8,content:1},N1)}}function W1(i){ue(i,"svelte-nlvd3x",".content.svelte-nlvd3x{width:-moz-max-content;width:max-content;height:3.375rem;padding:2.25rem 0.25rem 0 1rem;position:absolute;left:0;bottom:0;overflow:hidden;box-sizing:border-box;font-size:0;pointer-events:none;white-space:nowrap;font-weight:600}")}function Yc(i){var d,h;let t,e,n,s,o,r,a,l,c;return t=new Wt({props:{visible:i[2],left:i[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}}),n=new Va({props:{unfolded:i[2],length:i[3],outDelay:i[4]+40*Math.min((h=(d=i[6][0])==null?void 0:d.content.length)!=null?h:10,15),useLinearColor:!0}}),r=new wu({props:{visible:i[2],textUnfolded:i[1],content:i[5]}}),{c(){ie(t.$$.fragment),e=ee(),ie(n.$$.fragment),s=ee(),o=x("div"),ie(r.$$.fragment),w(o,"class","content svelte-nlvd3x")},m(u,m){te(t,u,m),B(u,e,m),te(n,u,m),B(u,s,m),B(u,o,m),te(r,o,null),a=!0,l||(c=[$t(Pi.call(null,o)),be(o,"clientWidth",i[8]),be(o,"click",i[7])],l=!0)},p(u,m){var v,y;const A={};m&4&&(A.visible=u[2]),m&8&&(A.left=u[3]/2+"px"),t.$set(A);const p={};m&4&&(p.unfolded=u[2]),m&8&&(p.length=u[3]),m&16&&(p.outDelay=u[4]+40*Math.min((y=(v=u[6][0])==null?void 0:v.content.length)!=null?y:10,15)),n.$set(p);const g={};m&4&&(g.visible=u[2]),m&2&&(g.textUnfolded=u[1]),m&32&&(g.content=u[5]),r.$set(g)},i(u){a||(M(t.$$.fragment,u),M(n.$$.fragment,u),M(r.$$.fragment,u),a=!0)},o(u){j(t.$$.fragment,u),j(n.$$.fragment,u),j(r.$$.fragment,u),a=!1},d(u){ne(t,u),u&&O(e),ne(n,u),u&&O(s),u&&O(o),ne(r),l=!1,Je(c)}}}function F1(i){let t,e,n=i[0].state&&Yc(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?n?(n.p(s,o),o&1&&M(n,1)):(n=Yc(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function Y1(i,t,e){let n,s,o,{tag:r}=t,a,l=!1,c=[];function d(){e(1,l=!l)}const h=u=>{e(3,a=u.detail)};return i.$$set=u=>{"tag"in u&&e(0,r=u.tag)},i.$$.update=()=>{var u,m,A;i.$$.dirty&1&&e(2,n=!!((u=r.state)!=null&&u.unfolded)),i.$$.dirty&1&&e(5,s=(A=(m=r.data.title)!=null?m:r.data.text)!=null?A:""),i.$$.dirty&4&&(n||setTimeout(()=>{e(1,l=!1)},20)),i.$$.dirty&2&&e(4,o=l?450:0)},[r,l,n,a,o,s,c,d,h]}class U1 extends le{constructor(t){super(),ae(this,t,Y1,F1,oe,{tag:0},W1)}}function Nt(i){return typeof i=="number"?i/16+"rem":i}function X1(i){ue(i,"svelte-i9wdo4",".text.svelte-i9wdo4{display:-webkit-box;display:-ms-box;display:-moz-box;position:relative;width:-moz-max-content;width:max-content;max-width:100%;-webkit-box-orient:vertical;-ms-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}@keyframes svelte-i9wdo4-blink{0%{opacity:1}50%{opacity:0}100%{opacity:1}}.caret.svelte-i9wdo4{position:absolute;width:0.0625rem;height:100%;background-color:#fff;animation:svelte-i9wdo4-blink 1.2s infinite}.placeholder.svelte-i9wdo4{opacity:0.5}")}function Z1(i){let t;const e=i[6].default,n=vi(e,i,i[5],null);return{c(){n&&n.c()},m(s,o){n&&n.m(s,o),t=!0},p(s,o){n&&n.p&&(!t||o&32)&&yi(n,e,s,s[5],t?bi(e,s[5],o,null):wi(s[5]),null)},i(s){t||(M(n,s),t=!0)},o(s){j(n,s),t=!1},d(s){n&&n.d(s)}}}function J1(i){var o,r;let t,e,n=((o=i[3])==null?void 0:o.inputting)&&Uc(),s=((r=i[3])==null?void 0:r.placeholder)&&Xc(i);return{c(){n&&n.c(),t=ee(),s&&s.c(),e=Pe()},m(a,l){n&&n.m(a,l),B(a,t,l),s&&s.m(a,l),B(a,e,l)},p(a,l){var c,d;(c=a[3])!=null&&c.inputting?n||(n=Uc(),n.c(),n.m(t.parentNode,t)):n&&(n.d(1),n=null),(d=a[3])!=null&&d.placeholder?s?s.p(a,l):(s=Xc(a),s.c(),s.m(e.parentNode,e)):s&&(s.d(1),s=null)},i:J,o:J,d(a){n&&n.d(a),a&&O(t),s&&s.d(a),a&&O(e)}}}function q1(i){let t;return{c(){t=Me(i[2])},m(e,n){B(e,t,n)},p(e,n){n&4&&Oe(t,e[2])},i:J,o:J,d(e){e&&O(t)}}}function Uc(i){let t;return{c(){t=x("div"),w(t,"class","caret svelte-i9wdo4")},m(e,n){B(e,t,n)},d(e){e&&O(t)}}}function Xc(i){let t,e=i[3].placeholder+"",n;return{c(){t=x("span"),n=Me(e),w(t,"class","placeholder svelte-i9wdo4")},m(s,o){B(s,t,o),D(t,n)},p(s,o){o&8&&e!==(e=s[3].placeholder+"")&&Oe(n,e)},d(s){s&&O(t)}}}function K1(i){let t,e,n,s;const o=[q1,J1,Z1],r=[];function a(l,c){return l[2]?0:l[4]?1:2}return e=a(i),n=r[e]=o[e](i),{c(){t=x("div"),n.c(),w(t,"class","text svelte-i9wdo4"),z(t,"max-width",typeof i[1]=="number"?Nt(i[1]):i[1]),z(t,"-webkit-line-clamp",i[0])},m(l,c){B(l,t,c),r[e].m(t,null),s=!0},p(l,[c]){let d=e;e=a(l),e===d?r[e].p(l,c):(de(),j(r[d],1,1,()=>{r[d]=null}),he(),n=r[e],n?n.p(l,c):(n=r[e]=o[e](l),n.c()),M(n,1),n.m(t,null)),c&2&&z(t,"max-width",typeof l[1]=="number"?Nt(l[1]):l[1]),c&1&&z(t,"-webkit-line-clamp",l[0])},i(l){s||(M(n),s=!0)},o(l){j(n),s=!1},d(l){l&&O(t),r[e].d()}}}function $1(i,t,e){let n,{$$slots:s={},$$scope:o}=t,{maxLine:r=1}=t,{maxWidth:a=null}=t,{text:l=null}=t,{edit:c=null}=t;return i.$$set=d=>{"maxLine"in d&&e(0,r=d.maxLine),"maxWidth"in d&&e(1,a=d.maxWidth),"text"in d&&e(2,l=d.text),"edit"in d&&e(3,c=d.edit),"$$scope"in d&&e(5,o=d.$$scope)},i.$$.update=()=>{i.$$.dirty&8&&e(4,n=(c==null?void 0:c.placeholder)||(c==null?void 0:c.inputting))},[r,a,l,c,n,o,s]}class Ra extends le{constructor(t){super(),ae(this,t,$1,K1,oe,{maxLine:0,maxWidth:1,text:2,edit:3},X1)}}function ey(i){ue(i,"svelte-1oxrkr1",".plane__container.svelte-1oxrkr1.svelte-1oxrkr1{position:absolute;left:50%;transform:translate(-50%, -100%);width:-moz-max-content;width:max-content}.plane__wrapper.svelte-1oxrkr1.svelte-1oxrkr1{transition:transform 500ms linear, opacity 200ms linear;padding:0.625rem;background-color:rgba(0, 0, 0, 0.5);border:0.03125rem solid rgba(255, 255, 255, 0.3);border-radius:0.25rem}.unfolded.svelte-1oxrkr1 .plane__wrapper.svelte-1oxrkr1{transition-delay:200ms, 500ms;opacity:1}.folded.svelte-1oxrkr1 .plane__wrapper.svelte-1oxrkr1{opacity:0}.plane.svelte-1oxrkr1.svelte-1oxrkr1{max-width:11.75rem}.title.svelte-1oxrkr1.svelte-1oxrkr1{white-space:pre-wrap;font-weight:bold;font-size:0.75rem;line-height:1.125rem}.description.svelte-1oxrkr1.svelte-1oxrkr1{margin-top:0.25rem;white-space:pre-wrap;font-size:0.6875rem;line-height:1rem}")}function Zc(i){var h,u;let t,e,n,s,o,r,a,l,c;t=new Va({props:{unfolded:i[1],direction:"vertical",length:15,duration:500,inDelay:200,useLinearColor:!0}}),a=new Ra({props:{text:i[2],edit:(h=i[0].data.edit)==null?void 0:h.title}});let d=(i[0].data.description||((u=i[0].data.edit)==null?void 0:u.description))&&Jc(i);return{c(){ie(t.$$.fragment),e=ee(),n=x("div"),s=x("div"),o=x("div"),r=x("div"),ie(a.$$.fragment),l=ee(),d&&d.c(),w(r,"class","title svelte-1oxrkr1"),w(o,"class","plane svelte-1oxrkr1"),w(s,"class","plane__wrapper svelte-1oxrkr1"),z(s,"transform",i[1]?"translateY(-15px)":"translateY(0)"),w(n,"class","plane__container svelte-1oxrkr1"),K(n,"unfolded",i[1]),K(n,"folded",i[3])},m(m,A){te(t,m,A),B(m,e,A),B(m,n,A),D(n,s),D(s,o),D(o,r),te(a,r,null),D(o,l),d&&d.m(o,null),c=!0},p(m,A){var v,y;const p={};A&2&&(p.unfolded=m[1]),t.$set(p);const g={};A&4&&(g.text=m[2]),A&1&&(g.edit=(v=m[0].data.edit)==null?void 0:v.title),a.$set(g),m[0].data.description||(y=m[0].data.edit)!=null&&y.description?d?(d.p(m,A),A&1&&M(d,1)):(d=Jc(m),d.c(),M(d,1),d.m(o,null)):d&&(de(),j(d,1,1,()=>{d=null}),he()),A&2&&z(s,"transform",m[1]?"translateY(-15px)":"translateY(0)"),(!c||A&2)&&K(n,"unfolded",m[1]),(!c||A&8)&&K(n,"folded",m[3])},i(m){c||(M(t.$$.fragment,m),M(a.$$.fragment,m),M(d),c=!0)},o(m){j(t.$$.fragment,m),j(a.$$.fragment,m),j(d),c=!1},d(m){ne(t,m),m&&O(e),m&&O(n),ne(a),d&&d.d()}}}function Jc(i){var s;let t,e,n;return e=new Ra({props:{text:i[0].data.description,edit:(s=i[0].data.edit)==null?void 0:s.description,maxLine:3}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","description svelte-1oxrkr1")},m(o,r){B(o,t,r),te(e,t,null),n=!0},p(o,r){var l;const a={};r&1&&(a.text=o[0].data.description),r&1&&(a.edit=(l=o[0].data.edit)==null?void 0:l.description),e.$set(a)},i(o){n||(M(e.$$.fragment,o),n=!0)},o(o){j(e.$$.fragment,o),n=!1},d(o){o&&O(t),ne(e)}}}function ty(i){let t,e,n=i[0].state&&Zc(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?n?(n.p(s,o),o&1&&M(n,1)):(n=Zc(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function ny(i,t,e){let n,s,o,{tag:r}=t;return i.$$set=a=>{"tag"in a&&e(0,r=a.tag)},i.$$.update=()=>{var a,l,c;i.$$.dirty&1&&e(1,n=!!((a=r.state)!=null&&a.unfolded)),i.$$.dirty&2&&e(3,s=!n),i.$$.dirty&1&&e(2,o=(c=(l=r.data.title)!=null?l:r.data.text)!=null?c:"")},[r,n,o,s]}class iy extends le{constructor(t){super(),ae(this,t,ny,ty,oe,{tag:0},ey)}}function sy(i){let t,e;return t=new iy({props:{tag:i[0]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.tag=n[0]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function oy(i){let t,e;return t=new U1({props:{tag:i[0]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.tag=n[0]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function ry(i){let t,e,n,s;const o=[oy,sy],r=[];function a(l,c){return l[1]==="line"?0:l[1]==="plane"?1:-1}return~(t=a(i))&&(e=r[t]=o[t](i)),{c(){e&&e.c(),n=Pe()},m(l,c){~t&&r[t].m(l,c),B(l,n,c),s=!0},p(l,[c]){let d=t;t=a(l),t===d?~t&&r[t].p(l,c):(e&&(de(),j(r[d],1,1,()=>{r[d]=null}),he()),~t?(e=r[t],e?e.p(l,c):(e=r[t]=o[t](l),e.c()),M(e,1),e.m(n.parentNode,n)):e=null)},i(l){s||(M(e),s=!0)},o(l){j(e),s=!1},d(l){~t&&r[t].d(l),l&&O(n)}}}function ay(i,t,e){let n,{tag:s}=t;return i.$$set=o=>{"tag"in o&&e(0,s=o.tag)},i.$$.update=()=>{var o;i.$$.dirty&1&&e(1,n=(o=s.data.appearance)!=null?o:"line")},[s,n]}class ly extends le{constructor(t){super(),ae(this,t,ay,ry,oe,{tag:0})}}function cy(i){ue(i,"svelte-blgtit",".line.svelte-blgtit{width:100%;height:100%;overflow:visible;pointer-events:none}")}function qc(i){let t,e,n,s;return{c(){t=ze("path"),w(t,"fill","none"),w(t,"stroke","url(#"+i[4]+")"),w(t,"stroke-width","1"),w(t,"d","M0 21 L14 0.5 L105 0.5")},m(o,r){B(o,t,r),s=!0},p(o,r){i=o},i(o){s||(o&&Ne(()=>{s&&(n&&n.end(1),e=On(t,so,{duration:i[1],delay:i[0],easing:Gh}),e.start())}),s=!0)},o(o){e&&e.invalidate(),o&&(n=Ii(t,so,{duration:i[1],delay:i[2],easing:hi})),s=!1},d(o){o&&O(t),o&&n&&n.end()}}}function dy(i){let t,e,n,s,o,r=i[3]&&qc(i);return{c(){t=ze("svg"),e=ze("defs"),n=ze("linearGradient"),s=ze("stop"),o=ze("stop"),r&&r.c(),w(s,"offset","25%"),w(s,"stop-color","white"),w(s,"stop-opacity","1"),w(o,"offset","100%"),w(o,"stop-color","white"),w(o,"stop-opacity","0.5"),w(n,"id",i[4]),w(n,"gradientUnits","userSpaceOnUse"),w(t,"class","line svelte-blgtit"),w(t,"viewBox","0 0 105 21")},m(a,l){B(a,t,l),D(t,e),D(e,n),D(n,s),D(n,o),r&&r.m(t,null)},p(a,[l]){a[3]?r?(r.p(a,l),l&8&&M(r,1)):(r=qc(a),r.c(),M(r,1),r.m(t,null)):r&&(de(),j(r,1,1,()=>{r=null}),he())},i(a){M(r)},o(a){j(r)},d(a){a&&O(t),r&&r.d()}}}function hy(i,t,e){let{inDelay:n=0}=t,{duration:s=1e3}=t,{outDelay:o=0}=t,{unfolded:r}=t;const a=at();return i.$$set=l=>{"inDelay"in l&&e(0,n=l.inDelay),"duration"in l&&e(1,s=l.duration),"outDelay"in l&&e(2,o=l.outDelay),"unfolded"in l&&e(3,r=l.unfolded)},[n,s,o,r,a]}class uy extends le{constructor(t){super(),ae(this,t,hy,dy,oe,{inDelay:0,duration:1,outDelay:2,unfolded:3},cy)}}function fy(i){ue(i,"svelte-1mgyhhn",`:root{--sc-dot-size:6px;--sc-active-dot-size:8px;--sc-dot-size-animation-time:250ms}.sc-carousel-dot__dot.svelte-1mgyhhn{background-color:var(--sc-color-rgb-light);border-radius:50%;display:inline-block;opacity:0.5;transition:opacity 100ms ease,\r
|
|
584
584
|
height var(--sc-dot-size-animation-time) ease,\r
|
|
585
|
-
width var(--sc-dot-size-animation-time) ease;cursor:pointer;-webkit-tap-highlight-color:transparent;height:var(--sc-dot-size);width:var(--sc-dot-size)}.sc-carousel-dot__dot.svelte-1mgyhhn:hover{opacity:0.9}.sc-carousel-dot__dot_active.svelte-1mgyhhn{opacity:0.7;height:var(--sc-active-dot-size);width:var(--sc-active-dot-size)}`)}function my(i){let t,e,n;return{c(){t=x("button"),w(t,"class","sc-carousel-button sc-carousel-dot__dot svelte-1mgyhhn"),K(t,"sc-carousel-dot__dot_active",i[0])},m(s,o){B(s,t,o),e||(n=be(t,"click",i[1]),e=!0)},p(s,[o]){o&1&&K(t,"sc-carousel-dot__dot_active",s[0])},i:J,o:J,d(s){s&&O(t),e=!1,n()}}}function gy(i,t,e){let{active:n=!1}=t;function s(o){Ci.call(this,i,o)}return i.$$set=o=>{"active"in o&&e(0,n=o.active)},[n,s]}class py extends le{constructor(t){super(),ae(this,t,gy,my,oe,{active:0},fy)}}function Ay(i){ue(i,"svelte-670fde",".sc-carousel-dots__container.svelte-670fde{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;padding:0 30px}.sc-carousel-dots__dot-container.svelte-670fde{height:calc(var(--sc-dot-size) + 14px);width:calc(var(--sc-dot-size) + 10px);display:flex;align-items:center;justify-content:center}")}function Kc(i,t,e){const n=i.slice();return n[5]=t[e],n[7]=e,n}function $c(i,t){let e,n,s,o;function r(){return t[3](t[7])}return n=new py({props:{active:t[1]===t[7]}}),n.$on("click",r),{key:i,first:null,c(){e=x("div"),ie(n.$$.fragment),s=ee(),w(e,"class","sc-carousel-dots__dot-container svelte-670fde"),this.first=e},m(a,l){B(a,e,l),te(n,e,null),D(e,s),o=!0},p(a,l){t=a;const c={};l&3&&(c.active=t[1]===t[7]),n.$set(c)},i(a){o||(M(n.$$.fragment,a),o=!0)},o(a){j(n.$$.fragment,a),o=!1},d(a){a&&O(e),ne(n)}}}function vy(i){let t,e=[],n=new Map,s,o=Array(i[0]);const r=a=>a[7];for(let a=0;a<o.length;a+=1){let l=Kc(i,o,a),c=r(l);n.set(c,e[a]=$c(c,l))}return{c(){t=x("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","sc-carousel-dots__container svelte-670fde")},m(a,l){B(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,[l]){l&7&&(o=Array(a[0]),de(),e=jt(e,l,r,1,a,o,n,t,vn,$c,null,Kc),he())},i(a){if(!s){for(let l=0;l<o.length;l+=1)M(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)j(e[l]);s=!1},d(a){a&&O(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function by(i,t,e){const n=yo();let{pagesCount:s=1}=t,{currentPageIndex:o=0}=t;function r(l){n("pageChange",l)}const a=l=>r(l);return i.$$set=l=>{"pagesCount"in l&&e(0,s=l.pagesCount),"currentPageIndex"in l&&e(1,o=l.currentPageIndex)},[s,o,r,a]}class yy extends le{constructor(t){super(),ae(this,t,by,vy,oe,{pagesCount:0,currentPageIndex:1},Ay)}}const gi="prev",pn="next";function wy(i){ue(i,"svelte-1bftafx",":root{--sc-arrow-size:2px}.sc-carousel-arrow__circle.svelte-1bftafx{width:20px;height:20px;border-radius:50%;background-color:var(--sc-color-rgb-light-50p);display:flex;align-items:center;justify-content:center;transition:opacity 100ms ease;cursor:pointer;-webkit-tap-highlight-color:transparent}.sc-carousel-arrow__circle.svelte-1bftafx:hover{opacity:0.9}.sc-carousel-arrow__arrow.svelte-1bftafx{border:solid var(--sc-color-hex-dark);border-width:0 var(--sc-arrow-size) var(--sc-arrow-size) 0;padding:var(--sc-arrow-size);position:relative}.sc-carousel-arrow__arrow-next.svelte-1bftafx{transform:rotate(-45deg);left:calc(var(--sc-arrow-size) / -2)}.sc-carousel-arrow__arrow-prev.svelte-1bftafx{transform:rotate(135deg);right:calc(var(--sc-arrow-size) / -2)}.sc-carousel-arrow__circle_disabled.svelte-1bftafx,.sc-carousel-arrow__circle_disabled.svelte-1bftafx:hover{opacity:0.5}")}function Cy(i){let t,e,n,s;return{c(){t=x("button"),e=x("i"),w(e,"class","sc-carousel-arrow__arrow svelte-1bftafx"),K(e,"sc-carousel-arrow__arrow-next",i[0]===pn),K(e,"sc-carousel-arrow__arrow-prev",i[0]===gi),w(t,"class","sc-carousel-button sc-carousel-arrow__circle svelte-1bftafx"),K(t,"sc-carousel-arrow__circle_disabled",i[1])},m(o,r){B(o,t,r),D(t,e),n||(s=be(t,"click",i[2]),n=!0)},p(o,[r]){r&1&&K(e,"sc-carousel-arrow__arrow-next",o[0]===pn),r&1&&K(e,"sc-carousel-arrow__arrow-prev",o[0]===gi),r&2&&K(t,"sc-carousel-arrow__circle_disabled",o[1])},i:J,o:J,d(o){o&&O(t),n=!1,s()}}}function Iy(i,t,e){let{direction:n=pn}=t,{disabled:s=!1}=t;function o(r){Ci.call(this,i,r)}return i.$$set=r=>{"direction"in r&&e(0,n=r.direction),"disabled"in r&&e(1,s=r.disabled)},[n,s,o]}class Cu extends le{constructor(t){super(),ae(this,t,Iy,Cy,oe,{direction:0,disabled:1},wy)}}function Py(i){ue(i,"svelte-i7yfid",".sc-carousel-progress__indicator.svelte-i7yfid{height:100%;background-color:var(--sc-color-hex-dark-50p)}")}function Ey(i){let t;return{c(){t=x("div"),w(t,"class","sc-carousel-progress__indicator svelte-i7yfid"),z(t,"width",i[0]+"%")},m(e,n){B(e,t,n)},p(e,[n]){n&1&&z(t,"width",e[0]+"%")},i:J,o:J,d(e){e&&O(t)}}}const ed=100;function ky(i,t,e){let n,{value:s=0}=t;return i.$$set=o=>{"value"in o&&e(1,s=o.value)},i.$$.update=()=>{i.$$.dirty&2&&e(0,n=Math.min(Math.max(s*ed,0),ed))},[n,s]}class My extends le{constructor(t){super(),ae(this,t,ky,Ey,oe,{value:1},Py)}}function xy(i,t){i.addEventListener("mousedown",t),i.addEventListener("touchstart",t,{passive:!0})}function Dy(i,t){i.removeEventListener("mousedown",t),i.removeEventListener("touchstart",t)}function Sy(i,t){i.addEventListener("mouseup",t),i.addEventListener("touchend",t)}function td(i,t){i.removeEventListener("mouseup",t),i.removeEventListener("touchend",t)}function Ty(i,t){i.addEventListener("mousemove",t),i.addEventListener("touchmove",t)}function nd(i,t){i.removeEventListener("mousemove",t),i.removeEventListener("touchmove",t)}function Qa(i){return function(t,e){i.dispatchEvent(new CustomEvent(t,{detail:e}))}}const Ly=110,jy=9,zy=111,Oy=20;function Lr(i){if("TouchEvent"in window&&i instanceof TouchEvent){const t=i.touches[0];return{x:t?t.clientX:0,y:t?t.clientY:0}}return{x:i.clientX,y:i.clientY}}function By(i,{thresholdProvider:t}){const e=Qa(i);let n,s,o=0,r,a=!1;function l(){return Date.now()-r>=zy&&Math.abs(o)>=Oy}function c(u){r=Date.now(),o=0,a=!0;const m=Lr(u);n=m.x,s=m.y,e("swipeStart",{x:n,y:s}),Ty(window,d),Sy(window,h)}function d(u){if(!a)return;const m=Lr(u),A=m.x-n,p=m.y-s;n=m.x,s=m.y,e("swipeMove",{x:n,y:s,dx:A,dy:p}),A!==0&&Math.sign(A)!==Math.sign(o)&&(o=0),o+=A,Math.abs(o)>t()&&(e("swipeThresholdReached",{direction:o>0?gi:pn}),td(window,h),nd(window,d))}function h(u){if(td(window,h),nd(window,d),a=!1,!l()){e("swipeFailed");return}const m=Lr(u);e("swipeEnd",{x:m.x,y:m.y})}return xy(i,c),{destroy(){Dy(i,c)}}}function Vy(i,t){i.addEventListener("mouseenter",t)}function Ry(i,t){i.removeEventListener("mouseenter",t)}function Qy(i,t){i.addEventListener("mouseleave",t)}function id(i,t){i.removeEventListener("mouseleave",t)}function Gy(i){const t=Qa(i);function e(){Qy(i,n),t("hovered",{value:!0})}function n(){t("hovered",{value:!1}),id(i,n)}return Vy(i,e),{destroy(){Ry(i,e),id(i,n)}}}const Ny=(i,t)=>{const e=t.x-i.x,n=t.y-i.y;return Math.sqrt(e*e+n*n)};function ri(i,t,e){return Math.max(i,Math.min(t,e))}function Hy(i,t){i.addEventListener("touchstart",t,{passive:!0})}function _y(i,t){i.removeEventListener("touchstart",t)}function Wy(i,t){i.addEventListener("touchend",t)}function sd(i,t){i.removeEventListener("touchend",t)}function Fy(i){const t=Qa(i);let e=0,n={x:0,y:0};function s({tapEndedAt:a,tapEndedPos:l}){const c=a-e,d=Ny(n,l);return c<=Ly&&d<=jy}function o(a){e=Date.now();const l=a.touches[0];n={x:l.clientX,y:l.clientY},Wy(i,r)}function r(a){sd(i,r);const l=a.changedTouches[0];s({tapEndedAt:Date.now(),tapEndedPos:{x:l.clientX,y:l.clientY}})&&t("tapped")}return Hy(i,o),{destroy(){_y(i,o),sd(i,r)}}}function Yy({currentParticleIndex:i,particlesCount:t,clonesCountHead:e,clonesCountTotal:n,particlesToScroll:s}){return i===t-e?0:i===0?Iu({particlesCountWithoutClones:t-n,particlesToScroll:s})-1:Math.floor((i-e)/s)}function Uy({currentParticleIndex:i,particlesToScroll:t}){return Math.ceil(i/t)}function Xy({currentParticleIndex:i,particlesCount:t,clonesCountHead:e,clonesCountTotal:n,infinite:s,particlesToScroll:o}){return s?Yy({currentParticleIndex:i,particlesCount:t,clonesCountHead:e,clonesCountTotal:n,particlesToScroll:o}):Uy({currentParticleIndex:i,particlesToScroll:o})}function Iu({particlesCountWithoutClones:i,particlesToScroll:t}){return Math.ceil(i/t)}function Zy({particlesCountWithoutClones:i,particlesToScroll:t,particlesToShow:e}){const n=Pu({particlesCountWithoutClones:i,particlesToScroll:t,particlesToShow:e});return Math.ceil(i/t)-n}function Jy({infinite:i,particlesCountWithoutClones:t,particlesToScroll:e,particlesToShow:n}){return i?Iu({particlesCountWithoutClones:t,particlesToScroll:e}):Zy({particlesCountWithoutClones:t,particlesToScroll:e,particlesToShow:n})}function qy({pageIndex:i,clonesCountHead:t,clonesCountTail:e,particlesToScroll:n,particlesCount:s}){return ri(0,Math.min(t+i*n,s-e),s-1)}function Ky({pageIndex:i,particlesToScroll:t,particlesCount:e,particlesToShow:n}){return ri(0,Math.min(i*t,e-n),e-1)}function jr({infinite:i,pageIndex:t,clonesCountHead:e,clonesCountTail:n,particlesToScroll:s,particlesCount:o,particlesToShow:r}){return i?qy({pageIndex:t,clonesCountHead:e,clonesCountTail:n,particlesToScroll:s,particlesCount:o}):Ky({pageIndex:t,particlesToScroll:s,particlesCount:o,particlesToShow:r})}function $y({particlesContainerChildren:i,particleWidth:t}){for(let e=0;e<i.length;e++)i[e].style.minWidth=`${t}px`,i[e].style.maxWidth=`${t}px`}function Pu({particlesToScroll:i,particlesToShow:t,particlesCountWithoutClones:e}){const n=i-t;let s=t;for(;;){const o=e-s-n;if(o<t)return Math.max(o,0);s+=t+n}}function ew(i){return new ResizeObserver(t=>{i({width:t[0].contentRect.width})})}function tw({clonesCountHead:i,clonesCountTail:t,particlesContainerChildren:e}){const n=[];for(let r=0;r<t;r++)n.push(e[r].cloneNode(!0));const s=[],o=e.length;for(let r=o-1;r>o-1-i;r--)s.push(e[r].cloneNode(!0));return{clonesToAppend:n,clonesToPrepend:s}}function nw({particlesContainer:i,clonesToAppend:t,clonesToPrepend:e}){for(let n=0;n<t.length;n++)i.append(t[n]);for(let n=0;n<e.length;n++)i.prepend(e[n])}function iw({infinite:i,particlesToShow:t,partialPageSize:e}){const n=i?{head:Math.ceil(e||t),tail:Math.ceil(t)}:{head:0,tail:0};return Ae(H({},n),{total:n.head+n.tail})}const Ki=(i,t,e)=>{if(i&&i.hasOwnProperty(t))return i[t];if(e===void 0)throw new Error(`Required arg "${t}" was not provided`);return e},sa=i=>t=>{i[t]&&i[t]()};var sw="Expected a function",Eu="__lodash_hash_undefined__",ku=1/0,ow="[object Function]",rw="[object GeneratorFunction]",aw="[object Symbol]",lw=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,cw=/^\w*$/,dw=/^\./,hw=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,uw=/[\\^$.*+?()[\]{}|]/g,fw=/\\(\\)?/g,mw=/^\[object .+?Constructor\]$/,gw=typeof It=="object"&&It&&It.Object===Object&&It,pw=typeof self=="object"&&self&&self.Object===Object&&self,Ga=gw||pw||Function("return this")();function Aw(i,t){return i==null?void 0:i[t]}function vw(i){var t=!1;if(i!=null&&typeof i.toString!="function")try{t=!!(i+"")}catch(e){}return t}var bw=Array.prototype,yw=Function.prototype,Mu=Object.prototype,zr=Ga["__core-js_shared__"],od=function(){var i=/[^.]+$/.exec(zr&&zr.keys&&zr.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}(),xu=yw.toString,Na=Mu.hasOwnProperty,Du=Mu.toString,ww=RegExp("^"+xu.call(Na).replace(uw,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),rd=Ga.Symbol,Cw=bw.splice,Iw=Su(Ga,"Map"),is=Su(Object,"create"),ad=rd?rd.prototype:void 0,ld=ad?ad.toString:void 0;function zn(i){var t=-1,e=i?i.length:0;for(this.clear();++t<e;){var n=i[t];this.set(n[0],n[1])}}function Pw(){this.__data__=is?is(null):{}}function Ew(i){return this.has(i)&&delete this.__data__[i]}function kw(i){var t=this.__data__;if(is){var e=t[i];return e===Eu?void 0:e}return Na.call(t,i)?t[i]:void 0}function Mw(i){var t=this.__data__;return is?t[i]!==void 0:Na.call(t,i)}function xw(i,t){var e=this.__data__;return e[i]=is&&t===void 0?Eu:t,this}zn.prototype.clear=Pw;zn.prototype.delete=Ew;zn.prototype.get=kw;zn.prototype.has=Mw;zn.prototype.set=xw;function Ei(i){var t=-1,e=i?i.length:0;for(this.clear();++t<e;){var n=i[t];this.set(n[0],n[1])}}function Dw(){this.__data__=[]}function Sw(i){var t=this.__data__,e=xo(t,i);if(e<0)return!1;var n=t.length-1;return e==n?t.pop():Cw.call(t,e,1),!0}function Tw(i){var t=this.__data__,e=xo(t,i);return e<0?void 0:t[e][1]}function Lw(i){return xo(this.__data__,i)>-1}function jw(i,t){var e=this.__data__,n=xo(e,i);return n<0?e.push([i,t]):e[n][1]=t,this}Ei.prototype.clear=Dw;Ei.prototype.delete=Sw;Ei.prototype.get=Tw;Ei.prototype.has=Lw;Ei.prototype.set=jw;function Vn(i){var t=-1,e=i?i.length:0;for(this.clear();++t<e;){var n=i[t];this.set(n[0],n[1])}}function zw(){this.__data__={hash:new zn,map:new(Iw||Ei),string:new zn}}function Ow(i){return Do(this,i).delete(i)}function Bw(i){return Do(this,i).get(i)}function Vw(i){return Do(this,i).has(i)}function Rw(i,t){return Do(this,i).set(i,t),this}Vn.prototype.clear=zw;Vn.prototype.delete=Ow;Vn.prototype.get=Bw;Vn.prototype.has=Vw;Vn.prototype.set=Rw;function xo(i,t){for(var e=i.length;e--;)if(Zw(i[e][0],t))return e;return-1}function Qw(i,t){t=_w(t,i)?[t]:Hw(t);for(var e=0,n=t.length;i!=null&&e<n;)i=i[Uw(t[e++])];return e&&e==n?i:void 0}function Gw(i){if(!Lu(i)||Fw(i))return!1;var t=Jw(i)||vw(i)?ww:mw;return t.test(Xw(i))}function Nw(i){if(typeof i=="string")return i;if(_a(i))return ld?ld.call(i):"";var t=i+"";return t=="0"&&1/i==-ku?"-0":t}function Hw(i){return Tu(i)?i:Yw(i)}function Do(i,t){var e=i.__data__;return Ww(t)?e[typeof t=="string"?"string":"hash"]:e.map}function Su(i,t){var e=Aw(i,t);return Gw(e)?e:void 0}function _w(i,t){if(Tu(i))return!1;var e=typeof i;return e=="number"||e=="symbol"||e=="boolean"||i==null||_a(i)?!0:cw.test(i)||!lw.test(i)||t!=null&&i in Object(t)}function Ww(i){var t=typeof i;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?i!=="__proto__":i===null}function Fw(i){return!!od&&od in i}var Yw=Ha(function(i){i=Kw(i);var t=[];return dw.test(i)&&t.push(""),i.replace(hw,function(e,n,s,o){t.push(s?o.replace(fw,"$1"):n||e)}),t});function Uw(i){if(typeof i=="string"||_a(i))return i;var t=i+"";return t=="0"&&1/i==-ku?"-0":t}function Xw(i){if(i!=null){try{return xu.call(i)}catch(t){}try{return i+""}catch(t){}}return""}function Ha(i,t){if(typeof i!="function"||t&&typeof t!="function")throw new TypeError(sw);var e=function(){var n=arguments,s=t?t.apply(this,n):n[0],o=e.cache;if(o.has(s))return o.get(s);var r=i.apply(this,n);return e.cache=o.set(s,r),r};return e.cache=new(Ha.Cache||Vn),e}Ha.Cache=Vn;function Zw(i,t){return i===t||i!==i&&t!==t}var Tu=Array.isArray;function Jw(i){var t=Lu(i)?Du.call(i):"";return t==ow||t==rw}function Lu(i){var t=typeof i;return!!i&&(t=="object"||t=="function")}function qw(i){return!!i&&typeof i=="object"}function _a(i){return typeof i=="symbol"||qw(i)&&Du.call(i)==aw}function Kw(i){return i==null?"":Nw(i)}function $w(i,t,e){var n=i==null?void 0:Qw(i,t);return n===void 0?e:n}var Rs=$w,ho={},eC={get exports(){return ho},set exports(i){ho=i}};(function(i,t){var e=200,n="__lodash_hash_undefined__",s=9007199254740991,o="[object Arguments]",r="[object Array]",a="[object Boolean]",l="[object Date]",c="[object Error]",d="[object Function]",h="[object GeneratorFunction]",u="[object Map]",m="[object Number]",A="[object Object]",p="[object Promise]",g="[object RegExp]",b="[object Set]",y="[object String]",I="[object Symbol]",k="[object WeakMap]",T="[object ArrayBuffer]",P="[object DataView]",V="[object Float32Array]",L="[object Float64Array]",W="[object Int8Array]",q="[object Int16Array]",N="[object Int32Array]",G="[object Uint8Array]",_="[object Uint8ClampedArray]",Q="[object Uint16Array]",F="[object Uint32Array]",Z=/[\\^$.*+?()[\]{}|]/g,X=/\w*$/,$=/^\[object .+?Constructor\]$/,ce=/^(?:0|[1-9]\d*)$/,se={};se[o]=se[r]=se[T]=se[P]=se[a]=se[l]=se[V]=se[L]=se[W]=se[q]=se[N]=se[u]=se[m]=se[A]=se[g]=se[b]=se[y]=se[I]=se[G]=se[_]=se[Q]=se[F]=!0,se[c]=se[d]=se[k]=!1;var we=typeof It=="object"&&It&&It.Object===Object&&It,Ce=typeof self=="object"&&self&&self.Object===Object&&self,pe=we||Ce||Function("return this")(),Be=t&&!t.nodeType&&t,ve=Be&&!0&&i&&!i.nodeType&&i,We=ve&&ve.exports===Be;function fe(v,C){return v.set(C[0],C[1]),v}function ye(v,C){return v.add(C),v}function Le(v,C){for(var S=-1,Y=v?v.length:0;++S<Y&&C(v[S],S,v)!==!1;);return v}function me(v,C){for(var S=-1,Y=C.length,Ie=v.length;++S<Y;)v[Ie+S]=C[S];return v}function qe(v,C,S,Y){var Ie=-1,ge=v?v.length:0;for(Y&&ge&&(S=v[++Ie]);++Ie<ge;)S=C(S,v[Ie],Ie,v);return S}function ct(v,C){for(var S=-1,Y=Array(v);++S<v;)Y[S]=C(S);return Y}function ke(v,C){return v==null?void 0:v[C]}function nt(v){var C=!1;if(v!=null&&typeof v.toString!="function")try{C=!!(v+"")}catch(S){}return C}function re(v){var C=-1,S=Array(v.size);return v.forEach(function(Y,Ie){S[++C]=[Ie,Y]}),S}function Ee(v,C){return function(S){return v(C(S))}}function He(v){var C=-1,S=Array(v.size);return v.forEach(function(Y){S[++C]=Y}),S}var ft=Array.prototype,Ft=Function.prototype,bt=Object.prototype,yt=pe["__core-js_shared__"],Ve=function(){var v=/[^.]+$/.exec(yt&&yt.keys&&yt.keys.IE_PROTO||"");return v?"Symbol(src)_1."+v:""}(),Ge=Ft.toString,Ze=bt.hasOwnProperty,Et=bt.toString,ki=RegExp("^"+Ge.call(Ze).replace(Z,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),zt=We?pe.Buffer:void 0,on=pe.Symbol,bn=pe.Uint8Array,mt=Ee(Object.getPrototypeOf,Object),Rn=Object.create,Qn=bt.propertyIsEnumerable,jo=ft.splice,Mi=Object.getOwnPropertySymbols,Gn=zt?zt.isBuffer:void 0,cs=Ee(Object.keys,Object),Nn=Mt(pe,"DataView"),yn=Mt(pe,"Map"),kt=Mt(pe,"Promise"),Hn=Mt(pe,"Set"),xi=Mt(pe,"WeakMap"),wn=Mt(Object,"create"),Di=dt(Nn),Cn=dt(yn),Si=dt(kt),Ti=dt(Hn),Li=dt(xi),rn=on?on.prototype:void 0,ds=rn?rn.valueOf:void 0;function Yt(v){var C=-1,S=v?v.length:0;for(this.clear();++C<S;){var Y=v[C];this.set(Y[0],Y[1])}}function zo(){this.__data__=wn?wn(null):{}}function Oo(v){return this.has(v)&&delete this.__data__[v]}function Bo(v){var C=this.__data__;if(wn){var S=C[v];return S===n?void 0:S}return Ze.call(C,v)?C[v]:void 0}function hs(v){var C=this.__data__;return wn?C[v]!==void 0:Ze.call(C,v)}function ji(v,C){var S=this.__data__;return S[v]=wn&&C===void 0?n:C,this}Yt.prototype.clear=zo,Yt.prototype.delete=Oo,Yt.prototype.get=Bo,Yt.prototype.has=hs,Yt.prototype.set=ji;function Ke(v){var C=-1,S=v?v.length:0;for(this.clear();++C<S;){var Y=v[C];this.set(Y[0],Y[1])}}function Vo(){this.__data__=[]}function Ro(v){var C=this.__data__,S=Wn(C,v);if(S<0)return!1;var Y=C.length-1;return S==Y?C.pop():jo.call(C,S,1),!0}function Qo(v){var C=this.__data__,S=Wn(C,v);return S<0?void 0:C[S][1]}function Go(v){return Wn(this.__data__,v)>-1}function No(v,C){var S=this.__data__,Y=Wn(S,v);return Y<0?S.push([v,C]):S[Y][1]=C,this}Ke.prototype.clear=Vo,Ke.prototype.delete=Ro,Ke.prototype.get=Qo,Ke.prototype.has=Go,Ke.prototype.set=No;function it(v){var C=-1,S=v?v.length:0;for(this.clear();++C<S;){var Y=v[C];this.set(Y[0],Y[1])}}function Ho(){this.__data__={hash:new Yt,map:new(yn||Ke),string:new Yt}}function _o(v){return Pn(this,v).delete(v)}function Wo(v){return Pn(this,v).get(v)}function Fo(v){return Pn(this,v).has(v)}function Yo(v,C){return Pn(this,v).set(v,C),this}it.prototype.clear=Ho,it.prototype.delete=_o,it.prototype.get=Wo,it.prototype.has=Fo,it.prototype.set=Yo;function gt(v){this.__data__=new Ke(v)}function Uo(){this.__data__=new Ke}function Xo(v){return this.__data__.delete(v)}function Zo(v){return this.__data__.get(v)}function Jo(v){return this.__data__.has(v)}function qo(v,C){var S=this.__data__;if(S instanceof Ke){var Y=S.__data__;if(!yn||Y.length<e-1)return Y.push([v,C]),this;S=this.__data__=new it(Y)}return S.set(v,C),this}gt.prototype.clear=Uo,gt.prototype.delete=Xo,gt.prototype.get=Zo,gt.prototype.has=Jo,gt.prototype.set=qo;function _n(v,C){var S=Vi(v)||Yn(v)?ct(v.length,String):[],Y=S.length,Ie=!!Y;for(var ge in v)(C||Ze.call(v,ge))&&!(Ie&&(ge=="length"||hr(ge,Y)))&&S.push(ge);return S}function us(v,C,S){var Y=v[C];(!(Ze.call(v,C)&&As(Y,S))||S===void 0&&!(C in v))&&(v[C]=S)}function Wn(v,C){for(var S=v.length;S--;)if(As(v[S][0],C))return S;return-1}function Ot(v,C){return v&&Bi(C,Qi(C),v)}function zi(v,C,S,Y,Ie,ge,xe){var De;if(Y&&(De=ge?Y(v,Ie,ge,xe):Y(v)),De!==void 0)return De;if(!Vt(v))return v;var Fe=Vi(v);if(Fe){if(De=cr(v),!C)return rr(v,De)}else{var je=Xt(v),st=je==d||je==h;if(vs(v))return Fn(v,C);if(je==A||je==o||st&&!ge){if(nt(v))return ge?v:{};if(De=Bt(st?{}:v),!C)return ar(v,Ot(De,v))}else{if(!se[je])return ge?v:{};De=dr(v,je,zi,C)}}xe||(xe=new gt);var pt=xe.get(v);if(pt)return pt;if(xe.set(v,De),!Fe)var Ue=S?lr(v):Qi(v);return Le(Ue||v,function(ot,$e){Ue&&($e=ot,ot=v[$e]),us(De,$e,zi(ot,C,S,Y,$e,v,xe))}),De}function Ko(v){return Vt(v)?Rn(v):{}}function $o(v,C,S){var Y=C(v);return Vi(v)?Y:me(Y,S(v))}function er(v){return Et.call(v)}function tr(v){if(!Vt(v)||fr(v))return!1;var C=Ri(v)||nt(v)?ki:$;return C.test(dt(v))}function nr(v){if(!gs(v))return cs(v);var C=[];for(var S in Object(v))Ze.call(v,S)&&S!="constructor"&&C.push(S);return C}function Fn(v,C){if(C)return v.slice();var S=new v.constructor(v.length);return v.copy(S),S}function Oi(v){var C=new v.constructor(v.byteLength);return new bn(C).set(new bn(v)),C}function In(v,C){var S=C?Oi(v.buffer):v.buffer;return new v.constructor(S,v.byteOffset,v.byteLength)}function fs(v,C,S){var Y=C?S(re(v),!0):re(v);return qe(Y,fe,new v.constructor)}function ms(v){var C=new v.constructor(v.source,X.exec(v));return C.lastIndex=v.lastIndex,C}function ir(v,C,S){var Y=C?S(He(v),!0):He(v);return qe(Y,ye,new v.constructor)}function sr(v){return ds?Object(ds.call(v)):{}}function or(v,C){var S=C?Oi(v.buffer):v.buffer;return new v.constructor(S,v.byteOffset,v.length)}function rr(v,C){var S=-1,Y=v.length;for(C||(C=Array(Y));++S<Y;)C[S]=v[S];return C}function Bi(v,C,S,Y){S||(S={});for(var Ie=-1,ge=C.length;++Ie<ge;){var xe=C[Ie],De=Y?Y(S[xe],v[xe],xe,S,v):void 0;us(S,xe,De===void 0?v[xe]:De)}return S}function ar(v,C){return Bi(v,Ut(v),C)}function lr(v){return $o(v,Qi,Ut)}function Pn(v,C){var S=v.__data__;return ur(C)?S[typeof C=="string"?"string":"hash"]:S.map}function Mt(v,C){var S=ke(v,C);return tr(S)?S:void 0}var Ut=Mi?Ee(Mi,Object):gr,Xt=er;(Nn&&Xt(new Nn(new ArrayBuffer(1)))!=P||yn&&Xt(new yn)!=u||kt&&Xt(kt.resolve())!=p||Hn&&Xt(new Hn)!=b||xi&&Xt(new xi)!=k)&&(Xt=function(v){var C=Et.call(v),S=C==A?v.constructor:void 0,Y=S?dt(S):void 0;if(Y)switch(Y){case Di:return P;case Cn:return u;case Si:return p;case Ti:return b;case Li:return k}return C});function cr(v){var C=v.length,S=v.constructor(C);return C&&typeof v[0]=="string"&&Ze.call(v,"index")&&(S.index=v.index,S.input=v.input),S}function Bt(v){return typeof v.constructor=="function"&&!gs(v)?Ko(mt(v)):{}}function dr(v,C,S,Y){var Ie=v.constructor;switch(C){case T:return Oi(v);case a:case l:return new Ie(+v);case P:return In(v,Y);case V:case L:case W:case q:case N:case G:case _:case Q:case F:return or(v,Y);case u:return fs(v,Y,S);case m:case y:return new Ie(v);case g:return ms(v);case b:return ir(v,Y,S);case I:return sr(v)}}function hr(v,C){return C=C==null?s:C,!!C&&(typeof v=="number"||ce.test(v))&&v>-1&&v%1==0&&v<C}function ur(v){var C=typeof v;return C=="string"||C=="number"||C=="symbol"||C=="boolean"?v!=="__proto__":v===null}function fr(v){return!!Ve&&Ve in v}function gs(v){var C=v&&v.constructor,S=typeof C=="function"&&C.prototype||bt;return v===S}function dt(v){if(v!=null){try{return Ge.call(v)}catch(C){}try{return v+""}catch(C){}}return""}function ps(v){return zi(v,!0,!0)}function As(v,C){return v===C||v!==v&&C!==C}function Yn(v){return mr(v)&&Ze.call(v,"callee")&&(!Qn.call(v,"callee")||Et.call(v)==o)}var Vi=Array.isArray;function Un(v){return v!=null&&bs(v.length)&&!Ri(v)}function mr(v){return ys(v)&&Un(v)}var vs=Gn||pr;function Ri(v){var C=Vt(v)?Et.call(v):"";return C==d||C==h}function bs(v){return typeof v=="number"&&v>-1&&v%1==0&&v<=s}function Vt(v){var C=typeof v;return!!v&&(C=="object"||C=="function")}function ys(v){return!!v&&typeof v=="object"}function Qi(v){return Un(v)?_n(v):nr(v)}function gr(){return[]}function pr(){return!1}i.exports=ps})(eC,ho);const tC=ho;var uo={},nC={get exports(){return uo},set exports(i){uo=i}};(function(i,t){var e=200,n="__lodash_hash_undefined__",s=1,o=2,r=9007199254740991,a="[object Arguments]",l="[object Array]",c="[object AsyncFunction]",d="[object Boolean]",h="[object Date]",u="[object Error]",m="[object Function]",A="[object GeneratorFunction]",p="[object Map]",g="[object Number]",b="[object Null]",y="[object Object]",I="[object Promise]",k="[object Proxy]",T="[object RegExp]",P="[object Set]",V="[object String]",L="[object Symbol]",W="[object Undefined]",q="[object WeakMap]",N="[object ArrayBuffer]",G="[object DataView]",_="[object Float32Array]",Q="[object Float64Array]",F="[object Int8Array]",Z="[object Int16Array]",X="[object Int32Array]",$="[object Uint8Array]",ce="[object Uint8ClampedArray]",se="[object Uint16Array]",we="[object Uint32Array]",Ce=/[\\^$.*+?()[\]{}|]/g,pe=/^\[object .+?Constructor\]$/,Be=/^(?:0|[1-9]\d*)$/,ve={};ve[_]=ve[Q]=ve[F]=ve[Z]=ve[X]=ve[$]=ve[ce]=ve[se]=ve[we]=!0,ve[a]=ve[l]=ve[N]=ve[d]=ve[G]=ve[h]=ve[u]=ve[m]=ve[p]=ve[g]=ve[y]=ve[T]=ve[P]=ve[V]=ve[q]=!1;var We=typeof It=="object"&&It&&It.Object===Object&&It,fe=typeof self=="object"&&self&&self.Object===Object&&self,ye=We||fe||Function("return this")(),Le=t&&!t.nodeType&&t,me=Le&&!0&&i&&!i.nodeType&&i,qe=me&&me.exports===Le,ct=qe&&We.process,ke=function(){try{return ct&&ct.binding&&ct.binding("util")}catch(v){}}(),nt=ke&&ke.isTypedArray;function re(v,C){for(var S=-1,Y=v==null?0:v.length,Ie=0,ge=[];++S<Y;){var xe=v[S];C(xe,S,v)&&(ge[Ie++]=xe)}return ge}function Ee(v,C){for(var S=-1,Y=C.length,Ie=v.length;++S<Y;)v[Ie+S]=C[S];return v}function He(v,C){for(var S=-1,Y=v==null?0:v.length;++S<Y;)if(C(v[S],S,v))return!0;return!1}function ft(v,C){for(var S=-1,Y=Array(v);++S<v;)Y[S]=C(S);return Y}function Ft(v){return function(C){return v(C)}}function bt(v,C){return v.has(C)}function yt(v,C){return v==null?void 0:v[C]}function Ve(v){var C=-1,S=Array(v.size);return v.forEach(function(Y,Ie){S[++C]=[Ie,Y]}),S}function Ge(v,C){return function(S){return v(C(S))}}function Ze(v){var C=-1,S=Array(v.size);return v.forEach(function(Y){S[++C]=Y}),S}var Et=Array.prototype,ki=Function.prototype,zt=Object.prototype,on=ye["__core-js_shared__"],bn=ki.toString,mt=zt.hasOwnProperty,Rn=function(){var v=/[^.]+$/.exec(on&&on.keys&&on.keys.IE_PROTO||"");return v?"Symbol(src)_1."+v:""}(),Qn=zt.toString,jo=RegExp("^"+bn.call(mt).replace(Ce,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Mi=qe?ye.Buffer:void 0,Gn=ye.Symbol,cs=ye.Uint8Array,Nn=zt.propertyIsEnumerable,yn=Et.splice,kt=Gn?Gn.toStringTag:void 0,Hn=Object.getOwnPropertySymbols,xi=Mi?Mi.isBuffer:void 0,wn=Ge(Object.keys,Object),Di=Ut(ye,"DataView"),Cn=Ut(ye,"Map"),Si=Ut(ye,"Promise"),Ti=Ut(ye,"Set"),Li=Ut(ye,"WeakMap"),rn=Ut(Object,"create"),ds=dt(Di),Yt=dt(Cn),zo=dt(Si),Oo=dt(Ti),Bo=dt(Li),hs=Gn?Gn.prototype:void 0,ji=hs?hs.valueOf:void 0;function Ke(v){var C=-1,S=v==null?0:v.length;for(this.clear();++C<S;){var Y=v[C];this.set(Y[0],Y[1])}}function Vo(){this.__data__=rn?rn(null):{},this.size=0}function Ro(v){var C=this.has(v)&&delete this.__data__[v];return this.size-=C?1:0,C}function Qo(v){var C=this.__data__;if(rn){var S=C[v];return S===n?void 0:S}return mt.call(C,v)?C[v]:void 0}function Go(v){var C=this.__data__;return rn?C[v]!==void 0:mt.call(C,v)}function No(v,C){var S=this.__data__;return this.size+=this.has(v)?0:1,S[v]=rn&&C===void 0?n:C,this}Ke.prototype.clear=Vo,Ke.prototype.delete=Ro,Ke.prototype.get=Qo,Ke.prototype.has=Go,Ke.prototype.set=No;function it(v){var C=-1,S=v==null?0:v.length;for(this.clear();++C<S;){var Y=v[C];this.set(Y[0],Y[1])}}function Ho(){this.__data__=[],this.size=0}function _o(v){var C=this.__data__,S=Fn(C,v);if(S<0)return!1;var Y=C.length-1;return S==Y?C.pop():yn.call(C,S,1),--this.size,!0}function Wo(v){var C=this.__data__,S=Fn(C,v);return S<0?void 0:C[S][1]}function Fo(v){return Fn(this.__data__,v)>-1}function Yo(v,C){var S=this.__data__,Y=Fn(S,v);return Y<0?(++this.size,S.push([v,C])):S[Y][1]=C,this}it.prototype.clear=Ho,it.prototype.delete=_o,it.prototype.get=Wo,it.prototype.has=Fo,it.prototype.set=Yo;function gt(v){var C=-1,S=v==null?0:v.length;for(this.clear();++C<S;){var Y=v[C];this.set(Y[0],Y[1])}}function Uo(){this.size=0,this.__data__={hash:new Ke,map:new(Cn||it),string:new Ke}}function Xo(v){var C=Mt(this,v).delete(v);return this.size-=C?1:0,C}function Zo(v){return Mt(this,v).get(v)}function Jo(v){return Mt(this,v).has(v)}function qo(v,C){var S=Mt(this,v),Y=S.size;return S.set(v,C),this.size+=S.size==Y?0:1,this}gt.prototype.clear=Uo,gt.prototype.delete=Xo,gt.prototype.get=Zo,gt.prototype.has=Jo,gt.prototype.set=qo;function _n(v){var C=-1,S=v==null?0:v.length;for(this.__data__=new gt;++C<S;)this.add(v[C])}function us(v){return this.__data__.set(v,n),this}function Wn(v){return this.__data__.has(v)}_n.prototype.add=_n.prototype.push=us,_n.prototype.has=Wn;function Ot(v){var C=this.__data__=new it(v);this.size=C.size}function zi(){this.__data__=new it,this.size=0}function Ko(v){var C=this.__data__,S=C.delete(v);return this.size=C.size,S}function $o(v){return this.__data__.get(v)}function er(v){return this.__data__.has(v)}function tr(v,C){var S=this.__data__;if(S instanceof it){var Y=S.__data__;if(!Cn||Y.length<e-1)return Y.push([v,C]),this.size=++S.size,this;S=this.__data__=new gt(Y)}return S.set(v,C),this.size=S.size,this}Ot.prototype.clear=zi,Ot.prototype.delete=Ko,Ot.prototype.get=$o,Ot.prototype.has=er,Ot.prototype.set=tr;function nr(v,C){var S=Yn(v),Y=!S&&As(v),Ie=!S&&!Y&&Un(v),ge=!S&&!Y&&!Ie&&ys(v),xe=S||Y||Ie||ge,De=xe?ft(v.length,String):[],Fe=De.length;for(var je in v)(C||mt.call(v,je))&&!(xe&&(je=="length"||Ie&&(je=="offset"||je=="parent")||ge&&(je=="buffer"||je=="byteLength"||je=="byteOffset")||dr(je,Fe)))&&De.push(je);return De}function Fn(v,C){for(var S=v.length;S--;)if(ps(v[S][0],C))return S;return-1}function Oi(v,C,S){var Y=C(v);return Yn(v)?Y:Ee(Y,S(v))}function In(v){return v==null?v===void 0?W:b:kt&&kt in Object(v)?Xt(v):gs(v)}function fs(v){return Vt(v)&&In(v)==a}function ms(v,C,S,Y,Ie){return v===C?!0:v==null||C==null||!Vt(v)&&!Vt(C)?v!==v&&C!==C:ir(v,C,S,Y,ms,Ie)}function ir(v,C,S,Y,Ie,ge){var xe=Yn(v),De=Yn(C),Fe=xe?l:Bt(v),je=De?l:Bt(C);Fe=Fe==a?y:Fe,je=je==a?y:je;var st=Fe==y,pt=je==y,Ue=Fe==je;if(Ue&&Un(v)){if(!Un(C))return!1;xe=!0,st=!1}if(Ue&&!st)return ge||(ge=new Ot),xe||ys(v)?Bi(v,C,S,Y,Ie,ge):ar(v,C,Fe,S,Y,Ie,ge);if(!(S&s)){var ot=st&&mt.call(v,"__wrapped__"),$e=pt&&mt.call(C,"__wrapped__");if(ot||$e){var an=ot?v.value():v,Zt=$e?C.value():C;return ge||(ge=new Ot),Ie(an,Zt,S,Y,ge)}}return Ue?(ge||(ge=new Ot),lr(v,C,S,Y,Ie,ge)):!1}function sr(v){if(!bs(v)||ur(v))return!1;var C=vs(v)?jo:pe;return C.test(dt(v))}function or(v){return Vt(v)&&Ri(v.length)&&!!ve[In(v)]}function rr(v){if(!fr(v))return wn(v);var C=[];for(var S in Object(v))mt.call(v,S)&&S!="constructor"&&C.push(S);return C}function Bi(v,C,S,Y,Ie,ge){var xe=S&s,De=v.length,Fe=C.length;if(De!=Fe&&!(xe&&Fe>De))return!1;var je=ge.get(v);if(je&&ge.get(C))return je==C;var st=-1,pt=!0,Ue=S&o?new _n:void 0;for(ge.set(v,C),ge.set(C,v);++st<De;){var ot=v[st],$e=C[st];if(Y)var an=xe?Y($e,ot,st,C,v,ge):Y(ot,$e,st,v,C,ge);if(an!==void 0){if(an)continue;pt=!1;break}if(Ue){if(!He(C,function(Zt,En){if(!bt(Ue,En)&&(ot===Zt||Ie(ot,Zt,S,Y,ge)))return Ue.push(En)})){pt=!1;break}}else if(!(ot===$e||Ie(ot,$e,S,Y,ge))){pt=!1;break}}return ge.delete(v),ge.delete(C),pt}function ar(v,C,S,Y,Ie,ge,xe){switch(S){case G:if(v.byteLength!=C.byteLength||v.byteOffset!=C.byteOffset)return!1;v=v.buffer,C=C.buffer;case N:return!(v.byteLength!=C.byteLength||!ge(new cs(v),new cs(C)));case d:case h:case g:return ps(+v,+C);case u:return v.name==C.name&&v.message==C.message;case T:case V:return v==C+"";case p:var De=Ve;case P:var Fe=Y&s;if(De||(De=Ze),v.size!=C.size&&!Fe)return!1;var je=xe.get(v);if(je)return je==C;Y|=o,xe.set(v,C);var st=Bi(De(v),De(C),Y,Ie,ge,xe);return xe.delete(v),st;case L:if(ji)return ji.call(v)==ji.call(C)}return!1}function lr(v,C,S,Y,Ie,ge){var xe=S&s,De=Pn(v),Fe=De.length,je=Pn(C),st=je.length;if(Fe!=st&&!xe)return!1;for(var pt=Fe;pt--;){var Ue=De[pt];if(!(xe?Ue in C:mt.call(C,Ue)))return!1}var ot=ge.get(v);if(ot&&ge.get(C))return ot==C;var $e=!0;ge.set(v,C),ge.set(C,v);for(var an=xe;++pt<Fe;){Ue=De[pt];var Zt=v[Ue],En=C[Ue];if(Y)var Ua=xe?Y(En,Zt,Ue,C,v,ge):Y(Zt,En,Ue,v,C,ge);if(!(Ua===void 0?Zt===En||Ie(Zt,En,S,Y,ge):Ua)){$e=!1;break}an||(an=Ue=="constructor")}if($e&&!an){var ws=v.constructor,Cs=C.constructor;ws!=Cs&&"constructor"in v&&"constructor"in C&&!(typeof ws=="function"&&ws instanceof ws&&typeof Cs=="function"&&Cs instanceof Cs)&&($e=!1)}return ge.delete(v),ge.delete(C),$e}function Pn(v){return Oi(v,Qi,cr)}function Mt(v,C){var S=v.__data__;return hr(C)?S[typeof C=="string"?"string":"hash"]:S.map}function Ut(v,C){var S=yt(v,C);return sr(S)?S:void 0}function Xt(v){var C=mt.call(v,kt),S=v[kt];try{v[kt]=void 0;var Y=!0}catch(ge){}var Ie=Qn.call(v);return Y&&(C?v[kt]=S:delete v[kt]),Ie}var cr=Hn?function(v){return v==null?[]:(v=Object(v),re(Hn(v),function(C){return Nn.call(v,C)}))}:gr,Bt=In;(Di&&Bt(new Di(new ArrayBuffer(1)))!=G||Cn&&Bt(new Cn)!=p||Si&&Bt(Si.resolve())!=I||Ti&&Bt(new Ti)!=P||Li&&Bt(new Li)!=q)&&(Bt=function(v){var C=In(v),S=C==y?v.constructor:void 0,Y=S?dt(S):"";if(Y)switch(Y){case ds:return G;case Yt:return p;case zo:return I;case Oo:return P;case Bo:return q}return C});function dr(v,C){return C=C==null?r:C,!!C&&(typeof v=="number"||Be.test(v))&&v>-1&&v%1==0&&v<C}function hr(v){var C=typeof v;return C=="string"||C=="number"||C=="symbol"||C=="boolean"?v!=="__proto__":v===null}function ur(v){return!!Rn&&Rn in v}function fr(v){var C=v&&v.constructor,S=typeof C=="function"&&C.prototype||zt;return v===S}function gs(v){return Qn.call(v)}function dt(v){if(v!=null){try{return bn.call(v)}catch(C){}try{return v+""}catch(C){}}return""}function ps(v,C){return v===C||v!==v&&C!==C}var As=fs(function(){return arguments}())?fs:function(v){return Vt(v)&&mt.call(v,"callee")&&!Nn.call(v,"callee")},Yn=Array.isArray;function Vi(v){return v!=null&&Ri(v.length)&&!vs(v)}var Un=xi||pr;function mr(v,C){return ms(v,C)}function vs(v){if(!bs(v))return!1;var C=In(v);return C==m||C==A||C==c||C==k}function Ri(v){return typeof v=="number"&&v>-1&&v%1==0&&v<=r}function bs(v){var C=typeof v;return v!=null&&(C=="object"||C=="function")}function Vt(v){return v!=null&&typeof v=="object"}var ys=nt?Ft(nt):or;function Qi(v){return Vi(v)?nr(v):rr(v)}function gr(){return[]}function pr(){return!1}i.exports=mr})(nC,uo);const iC=uo,sC=(i,t)=>iC(i,t),oC=i=>Object.keys(i||{}),rC=(i,t)=>{const e={};return i.forEach(n=>{e[n]=t[n]}),e},aC=()=>{const i={},t=(e,n)=>{const{watcherName:s,fn:o}=e,{prop:r,value:a}=n;i[s]||(i[s]={deps:{},fn:o}),i[s].deps[r]=a};return{subscribers:i,subscribe(e,n){e&&t(e,n)},notify(e,n){Object.entries(i).forEach(([s,{deps:o,fn:r}])=>{const a=oC(o);if(a.includes(n)){const l=rC(a,e);sC(o,l)||(i[s].deps=l,r())}})}}},lC=()=>{let i=null;return{targetWatcher(t,e){i={watcherName:t,fn:e},i.fn(),i=null},getTarget(){return i}}};function cC(i,t){const e=Rs(i,"data",{}),n=Rs(i,"watch",{}),s=Rs(i,"methods",{}),o=Rs(t,"onChange",()=>{}),{subscribe:r,notify:a,subscribers:l}=aC(),{targetWatcher:c,getTarget:d}=lC();let h;const u={},m=()=>({data:h,methods:u});let A=!1;const p=b=>(...y)=>{A=!0;const I=b(...y);return A=!1,I};Object.entries(s).forEach(([b,y])=>{u[b]=p((...I)=>y(m(),...I)),Object.defineProperty(u[b],"name",{value:b})}),h=new Proxy(tC(e),{get(b,y){return d()&&!A&&r(d(),{prop:y,value:b[y]}),Reflect.get(...arguments)},set(b,y,I){return b[y]===I||(Reflect.set(...arguments),d()||(o&&o(y,I),a(h,y))),!0}}),Object.entries(n).forEach(([b,y])=>{c(b,()=>{y(m())})});const g=[h,u];return g._internal={_getSubscribers(){return l}},g}function dC({pageIndex:i,particlesToShow:t,particlesToScroll:e,particlesCount:n}){const s=i===0?0:t-e,o=i*t-i*s,r=o+Math.max(t,e)-1,a=[];for(let l=o;l<=Math.min(n-1,r);l++)a.push(l);return a}function hC({infinite:i,pageIndex:t,pagesCount:e,particlesCount:n,particlesToShow:s,particlesToScroll:o}){const r=ri(0,t,e-1);let a=r-1,l=r+1;a=i?a<0?e-1:a:Math.max(0,a),l=i?l>e-1?0:l:Math.min(e-1,l);const c=[...new Set([a,r,l,0,e-1])].sort((h,u)=>h-u),d=c.flatMap(h=>dC({pageIndex:h,particlesToShow:s,particlesToScroll:o,particlesCount:n}));return{pageIndexes:c,particleIndexes:[...new Set(d)].sort((h,u)=>h-u)}}const uC=(i,t)=>(i(),setInterval(i,t)),fC=35,cd=1;class mC{constructor({onProgressValueChange:t}){this._onProgressValueChange=t,this._autoplayDuration,this._onProgressValueChange,this._interval,this._paused=!1}setAutoplayDuration(t){this._autoplayDuration=t}start(t){return new Promise(e=>{this.reset();const n=Math.min(fC,Math.max(this._autoplayDuration,1));let s=-n;this._interval=uC(()=>U(this,null,function*(){if(this._paused)return;s+=n;const o=s/this._autoplayDuration;this._onProgressValueChange(o),o>cd&&(this.reset(),yield t(),e())}),n)})}pause(){this._paused=!0}resume(){this._paused=!1}reset(){clearInterval(this._interval),this._onProgressValueChange(cd)}}function gC(i){const t=new mC({onProgressValueChange:r=>{i("progressValue",1-r)}}),e=cC({data:{particlesCountWithoutClones:0,particlesToShow:1,particlesToShowInit:1,particlesToScroll:1,particlesToScrollInit:1,particlesCount:1,currentParticleIndex:1,infinite:!1,autoplayDuration:1e3,clonesCountHead:0,clonesCountTail:0,clonesCountTotal:0,partialPageSize:1,currentPageIndex:1,pagesCount:1,pauseOnFocus:!1,focused:!1,autoplay:!1,autoplayDirection:"next",disabled:!1,durationMsInit:1e3,durationMs:1e3,offset:0,particleWidth:0,loaded:[]},watch:{setLoaded({data:r}){r.loaded=hC({infinite:r.infinite,pageIndex:r.currentPageIndex,pagesCount:r.pagesCount,particlesCount:r.particlesCountWithoutClones,particlesToShow:r.particlesToShow,particlesToScroll:r.particlesToScroll}).particleIndexes},setCurrentPageIndex({data:r}){r.currentPageIndex=Xy({currentParticleIndex:r.currentParticleIndex,particlesCount:r.particlesCount,clonesCountHead:r.clonesCountHead,clonesCountTotal:r.clonesCountTotal,infinite:r.infinite,particlesToScroll:r.particlesToScroll})},setPartialPageSize({data:r}){r.partialPageSize=Pu({particlesToScroll:r.particlesToScroll,particlesToShow:r.particlesToShow,particlesCountWithoutClones:r.particlesCountWithoutClones})},setClonesCount({data:r}){const{head:a,tail:l}=iw({infinite:r.infinite,particlesToShow:r.particlesToShow,partialPageSize:r.partialPageSize});r.clonesCountHead=a,r.clonesCountTail=l,r.clonesCountTotal=a+l},setProgressManagerAutoplayDuration({data:r}){t.setAutoplayDuration(r.autoplayDuration)},toggleProgressManager({data:{pauseOnFocus:r,focused:a}}){r&&(a?t.pause():t.resume())},initDuration({data:r}){r.durationMs=r.durationMsInit},applyAutoplay({data:r,methods:{_applyAutoplayIfNeeded:a}}){r.autoplay&&a(r.autoplay)},setPagesCount({data:r}){r.pagesCount=Jy({infinite:r.infinite,particlesCountWithoutClones:r.particlesCountWithoutClones,particlesToScroll:r.particlesToScroll,particlesToShow:r.particlesToShow})},setParticlesToShow({data:r}){r.particlesToShow=ri(1,r.particlesToShowInit,r.particlesCountWithoutClones)},setParticlesToScroll({data:r}){r.particlesToScroll=ri(1,r.particlesToScrollInit,r.particlesCountWithoutClones)}},methods:{_prev({data:r}){r.currentParticleIndex=jr({infinite:r.infinite,pageIndex:r.currentPageIndex-1,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},_next({data:r}){r.currentParticleIndex=jr({infinite:r.infinite,pageIndex:r.currentPageIndex+1,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},_moveToParticle({data:r},a){r.currentParticleIndex=ri(0,a,r.particlesCount-1)},toggleFocused({data:r}){r.focused=!r.focused},_applyAutoplayIfNeeded(l){return U(this,arguments,function*({data:r,methods:a}){if(!r.infinite&&(r.autoplayDirection===pn&&r.currentParticleIndex===r.particlesCount-1||r.autoplayDirection===gi&&r.currentParticleIndex===0)){t.reset();return}if(r.autoplay){const c=()=>sa({[pn]:()=>U(this,null,function*(){return a.showNextPage()}),[gi]:()=>U(this,null,function*(){return a.showPrevPage()})})(r.autoplayDirection);yield t.start(c)}})},_jumpIfNeeded(l){return U(this,arguments,function*({data:r,methods:a}){let c=!1;return r.infinite&&(r.currentParticleIndex===0?(yield a.showParticle(r.particlesCount-r.clonesCountTotal,{animated:!1}),c=!0):r.currentParticleIndex===r.particlesCount-r.clonesCountTail&&(yield a.showParticle(r.clonesCountHead,{animated:!1}),c=!0)),c})},changePage(d,h,u){return U(this,arguments,function*({data:r,methods:a},l,c){if(t.reset(),r.disabled)return;r.disabled=!0,l(),yield a.offsetPage({animated:Ki(c,"animated",!0)}),r.disabled=!1,!(yield a._jumpIfNeeded())&&a._applyAutoplayIfNeeded()})},showNextPage(c,d){return U(this,arguments,function*({data:r,methods:a},l){r.disabled||(yield a.changePage(a._next,l))})},showPrevPage(c,d){return U(this,arguments,function*({data:r,methods:a},l){r.disabled||(yield a.changePage(a._prev,l))})},showParticle(c,d,h){return U(this,arguments,function*({methods:r},a,l){yield r.changePage(()=>r._moveToParticle(a),l)})},_getParticleIndexByPageIndex({data:r},a){return jr({infinite:r.infinite,pageIndex:a,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},showPage(c,d,h){return U(this,arguments,function*({methods:r},a,l){const u=r._getParticleIndexByPageIndex(a);yield r.showParticle(u,l)})},offsetPage({data:r},a){const l=Ki(a,"animated",!0);return new Promise(c=>{r.durationMs=l?r.durationMsInit:0,r.offset=-r.currentParticleIndex*r.particleWidth,setTimeout(()=>{c()},r.durationMs)})}}},{onChange:i}),[n,s]=e;return[{data:n,progressManager:t},s,e._internal]}function pC(i){ue(i,"svelte-sme1z4",":root{--sc-color-rgb-light-50p:rgba(93, 93, 93, 0.5);--sc-color-rgb-light:#5d5d5d;--sc-color-hex-dark-50p:rgba(30, 30, 30, 0.5);--sc-color-hex-dark:#1e1e1e}.sc-carousel__carousel-container.svelte-sme1z4{display:flex;width:100%;flex-direction:column;align-items:center}.sc-carousel__content-container.svelte-sme1z4{position:relative;display:flex;width:100%}.sc-carousel__pages-window.svelte-sme1z4{flex:1;display:flex;overflow:hidden;box-sizing:border-box;position:relative}.sc-carousel__pages-container.svelte-sme1z4{width:100%;display:flex;transition-property:transform}.sc-carousel__arrow-container.svelte-sme1z4{padding:5px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.sc-carousel-progress__container.svelte-sme1z4{width:100%;height:5px;background-color:var(--sc-color-rgb-light-50p);position:absolute;bottom:0}.sc-carousel-button{all:unset;cursor:pointer}.sc-carousel-button:focus{outline:5px auto}")}const AC=i=>({currentPageIndex:i[0]&32,pagesCount:i[0]&1024,loaded:i[0]&64}),dd=i=>({currentPageIndex:i[5],pagesCount:i[10],showPage:i[15],loaded:i[6]}),vC=i=>({loaded:i[0]&64,currentPageIndex:i[0]&32}),hd=i=>({showNextPage:i[14].showNextPage,loaded:i[6],currentPageIndex:i[5]}),bC=i=>({loaded:i[0]&64,currentPageIndex:i[0]&32}),ud=i=>({loaded:i[6],currentPageIndex:i[5]}),yC=i=>({loaded:i[0]&64,currentPageIndex:i[0]&32}),fd=i=>({showPrevPage:i[14].showPrevPage,loaded:i[6],currentPageIndex:i[5]});function md(i){let t;const e=i[37].prev,n=vi(e,i,i[36],fd),s=n||wC(i);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){n?n.p&&(!t||r[0]&96|r[1]&32)&&yi(n,e,o,o[36],t?bi(e,o[36],r,yC):wi(o[36]),fd):s&&s.p&&(!t||r[0]&36)&&s.p(o,t?r:[-1,-1])},i(o){t||(M(s,o),t=!0)},o(o){j(s,o),t=!1},d(o){s&&s.d(o)}}}function wC(i){let t,e,n;return e=new Cu({props:{direction:"prev",disabled:!i[2]&&i[5]===0}}),e.$on("click",i[23]),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","sc-carousel__arrow-container svelte-sme1z4")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o[0]&36&&(r.disabled=!s[2]&&s[5]===0),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function gd(i){let t,e,n;return e=new My({props:{value:i[7]}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","sc-carousel-progress__container svelte-sme1z4")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o[0]&128&&(r.value=s[7]),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function pd(i){let t;const e=i[37].next,n=vi(e,i,i[36],hd),s=n||CC(i);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){n?n.p&&(!t||r[0]&96|r[1]&32)&&yi(n,e,o,o[36],t?bi(e,o[36],r,vC):wi(o[36]),hd):s&&s.p&&(!t||r[0]&1060)&&s.p(o,t?r:[-1,-1])},i(o){t||(M(s,o),t=!0)},o(o){j(s,o),t=!1},d(o){s&&s.d(o)}}}function CC(i){let t,e,n;return e=new Cu({props:{direction:"next",disabled:!i[2]&&i[5]===i[10]-1}}),e.$on("click",i[14].showNextPage),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","sc-carousel__arrow-container svelte-sme1z4")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o[0]&1060&&(r.disabled=!s[2]&&s[5]===s[10]-1),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function Ad(i){let t;const e=i[37].dots,n=vi(e,i,i[36],dd),s=n||IC(i);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){n?n.p&&(!t||r[0]&1120|r[1]&32)&&yi(n,e,o,o[36],t?bi(e,o[36],r,AC):wi(o[36]),dd):s&&s.p&&(!t||r[0]&1056)&&s.p(o,t?r:[-1,-1])},i(o){t||(M(s,o),t=!0)},o(o){j(s,o),t=!1},d(o){s&&s.d(o)}}}function IC(i){let t,e;return t=new yy({props:{pagesCount:i[10],currentPageIndex:i[5]}}),t.$on("pageChange",i[41]),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s[0]&1024&&(o.pagesCount=n[10]),s[0]&32&&(o.currentPageIndex=n[5]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function PC(i){let t,e,n,s,o,r,a,l,c,d,h,u,m=i[1]&&md(i);const A=i[37].default,p=vi(A,i,i[36],ud);let g=i[3]&&gd(i),b=i[1]&&pd(i),y=i[4]&&Ad(i);return{c(){t=x("div"),e=x("div"),m&&m.c(),n=ee(),s=x("div"),o=x("div"),p&&p.c(),a=ee(),g&&g.c(),l=ee(),b&&b.c(),c=ee(),y&&y.c(),w(o,"class","sc-carousel__pages-container svelte-sme1z4"),z(o,"transform","translateX("+i[8]+"px)"),z(o,"transition-duration",i[9]+"ms"),z(o,"transition-timing-function",i[0]),w(s,"class","sc-carousel__pages-window svelte-sme1z4"),w(e,"class","sc-carousel__content-container svelte-sme1z4"),w(t,"class","sc-carousel__carousel-container svelte-sme1z4")},m(I,k){B(I,t,k),D(t,e),m&&m.m(e,null),D(e,n),D(e,s),D(s,o),p&&p.m(o,null),i[39](o),D(s,a),g&&g.m(s,null),i[40](s),D(e,l),b&&b.m(e,null),D(t,c),y&&y.m(t,null),d=!0,h||(u=[$t(r=By.call(null,o,{thresholdProvider:i[38]})),be(o,"swipeStart",i[16]),be(o,"swipeMove",i[18]),be(o,"swipeEnd",i[19]),be(o,"swipeFailed",i[20]),be(o,"swipeThresholdReached",i[17]),$t(Gy.call(null,s)),be(s,"hovered",i[21]),$t(Fy.call(null,s)),be(s,"tapped",i[22])],h=!0)},p(I,k){I[1]?m?(m.p(I,k),k[0]&2&&M(m,1)):(m=md(I),m.c(),M(m,1),m.m(e,n)):m&&(de(),j(m,1,1,()=>{m=null}),he()),p&&p.p&&(!d||k[0]&96|k[1]&32)&&yi(p,A,I,I[36],d?bi(A,I[36],k,bC):wi(I[36]),ud),(!d||k[0]&256)&&z(o,"transform","translateX("+I[8]+"px)"),(!d||k[0]&512)&&z(o,"transition-duration",I[9]+"ms"),(!d||k[0]&1)&&z(o,"transition-timing-function",I[0]),r&&sn(r.update)&&k[0]&2048&&r.update.call(null,{thresholdProvider:I[38]}),I[3]?g?(g.p(I,k),k[0]&8&&M(g,1)):(g=gd(I),g.c(),M(g,1),g.m(s,null)):g&&(de(),j(g,1,1,()=>{g=null}),he()),I[1]?b?(b.p(I,k),k[0]&2&&M(b,1)):(b=pd(I),b.c(),M(b,1),b.m(e,null)):b&&(de(),j(b,1,1,()=>{b=null}),he()),I[4]?y?(y.p(I,k),k[0]&16&&M(y,1)):(y=Ad(I),y.c(),M(y,1),y.m(t,null)):y&&(de(),j(y,1,1,()=>{y=null}),he())},i(I){d||(M(m),M(p,I),M(g),M(b),M(y),d=!0)},o(I){j(m),j(p,I),j(g),j(b),j(y),d=!1},d(I){I&&O(t),m&&m.d(),p&&p.d(I),i[39](null),g&&g.d(),i[40](null),b&&b.d(),y&&y.d(),h=!1,Je(u)}}}function EC(i,t,e){let{$$slots:n={},$$scope:s}=t,o=[],r,a,l=0,c=0,d=1;const[{data:h,progressManager:u},m,A]=gC((re,Ee)=>{sa({currentPageIndex:()=>e(5,r=Ee),progressValue:()=>e(7,a=Ee),offset:()=>e(8,l=Ee),durationMs:()=>e(9,c=Ee),pagesCount:()=>e(10,d=Ee),loaded:()=>e(6,o=Ee)})(re)}),p=yo();let{timingFunction:g="ease-in-out"}=t,{arrows:b=!0}=t,{infinite:y=!0}=t,{initialPageIndex:I=0}=t,{duration:k=500}=t,{autoplay:T=!1}=t,{autoplayDuration:P=3e3}=t,{autoplayDirection:V=pn}=t,{pauseOnFocus:L=!1}=t,{autoplayProgressVisible:W=!1}=t,{dots:q=!0}=t,{swiping:N=!0}=t,{particlesToShow:G=1}=t,{particlesToScroll:_=1}=t;function Q(re,Ee){return U(this,null,function*(){const He=Ki(Ee,"animated",!0);if(typeof re!="number")throw new Error("pageIndex should be a number");yield m.showPage(re,{animated:He})})}function F(re){return U(this,null,function*(){const Ee=Ki(re,"animated",!0);yield m.showPrevPage({animated:Ee})})}function Z(re){return U(this,null,function*(){const Ee=Ki(re,"animated",!0);yield m.showNextPage({animated:Ee})})}let X=0,$,ce;const se=ew(({width:re})=>{e(11,X=re),h.particleWidth=X/h.particlesToShow,$y({particlesContainerChildren:ce.children,particleWidth:h.particleWidth}),m.offsetPage({animated:!1})});function we(){const{clonesToAppend:re,clonesToPrepend:Ee}=tw({clonesCountHead:h.clonesCountHead,clonesCountTail:h.clonesCountTail,particlesContainerChildren:ce.children});nw({particlesContainer:ce,clonesToAppend:re,clonesToPrepend:Ee})}vt(()=>{U(this,null,function*(){yield sl(),ce&&$&&(h.particlesCountWithoutClones=ce.children.length,yield sl(),h.infinite&&we(),h.particlesCount=ce.children.length,m.showPage(I,{animated:!1}),se.observe($))})}),Lt(()=>{se.disconnect(),u.reset()});function Ce(re){return U(this,null,function*(){yield m.showPage(re,{animated:!0})})}function pe(){N&&(h.durationMs=0)}function Be(re){return U(this,null,function*(){N&&(yield sa({[pn]:m.showNextPage,[gi]:m.showPrevPage})(re.detail.direction))})}function ve(re){N&&(h.offset+=re.detail.dx)}function We(){N&&m.showParticle(h.currentParticleIndex)}function fe(){return U(this,null,function*(){N&&(yield m.offsetPage({animated:!0}))})}function ye(re){h.focused=re.detail.value}function Le(){m.toggleFocused()}function me(){m.showPrevPage()}const qe=()=>X/3;function ct(re){Qe[re?"unshift":"push"](()=>{ce=re,e(13,ce)})}function ke(re){Qe[re?"unshift":"push"](()=>{$=re,e(12,$)})}const nt=re=>Ce(re.detail);return i.$$set=re=>{"timingFunction"in re&&e(0,g=re.timingFunction),"arrows"in re&&e(1,b=re.arrows),"infinite"in re&&e(2,y=re.infinite),"initialPageIndex"in re&&e(24,I=re.initialPageIndex),"duration"in re&&e(25,k=re.duration),"autoplay"in re&&e(26,T=re.autoplay),"autoplayDuration"in re&&e(27,P=re.autoplayDuration),"autoplayDirection"in re&&e(28,V=re.autoplayDirection),"pauseOnFocus"in re&&e(29,L=re.pauseOnFocus),"autoplayProgressVisible"in re&&e(3,W=re.autoplayProgressVisible),"dots"in re&&e(4,q=re.dots),"swiping"in re&&e(30,N=re.swiping),"particlesToShow"in re&&e(31,G=re.particlesToShow),"particlesToScroll"in re&&e(32,_=re.particlesToScroll),"$$scope"in re&&e(36,s=re.$$scope)},i.$$.update=()=>{i.$$.dirty[0]&32&&p("pageChange",r),i.$$.dirty[0]&4&&(h.infinite=y),i.$$.dirty[0]&33554432&&(h.durationMsInit=k),i.$$.dirty[0]&67108864&&(h.autoplay=T),i.$$.dirty[0]&134217728&&(h.autoplayDuration=P),i.$$.dirty[0]&268435456&&(h.autoplayDirection=V),i.$$.dirty[0]&536870912&&(h.pauseOnFocus=L),i.$$.dirty[1]&1&&(h.particlesToShowInit=G),i.$$.dirty[1]&2&&(h.particlesToScrollInit=_)},[g,b,y,W,q,r,o,a,l,c,d,X,$,ce,m,Ce,pe,Be,ve,We,fe,ye,Le,me,I,k,T,P,V,L,N,G,_,Q,F,Z,s,n,qe,ct,ke,nt]}class kC extends le{constructor(t){super(),ae(this,t,EC,PC,oe,{timingFunction:0,arrows:1,infinite:2,initialPageIndex:24,duration:25,autoplay:26,autoplayDuration:27,autoplayDirection:28,pauseOnFocus:29,autoplayProgressVisible:3,dots:4,swiping:30,particlesToShow:31,particlesToScroll:32,goTo:33,goToPrev:34,goToNext:35},pC,[-1,-1])}get goTo(){return this.$$.ctx[33]}get goToPrev(){return this.$$.ctx[34]}get goToNext(){return this.$$.ctx[35]}}function MC(i){ue(i,"svelte-159ski6",".media-item.svelte-159ski6.svelte-159ski6{position:relative;height:100%}.media-content.svelte-159ski6.svelte-159ski6{position:relative;pointer-events:auto;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;-o-object-fit:inherit;object-fit:inherit}.media-content.showPlayButton.svelte-159ski6.svelte-159ski6{pointer-events:none}.video-icon.svelte-159ski6.svelte-159ski6{width:12.5rem;height:6.25rem;max-width:60%;max-height:60%;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.video-play-button-container.svelte-159ski6.svelte-159ski6{display:none;position:absolute;width:100%;height:100%;top:0;left:0;transform:translate3d(0, 0, 0)}.video-play-button-container.showPlayButton.svelte-159ski6.svelte-159ski6{pointer-events:none;display:block}.video-icon.svelte-159ski6.svelte-159ski6{pointer-events:auto}.video-icon.large.svelte-159ski6.svelte-159ski6{width:12.5rem;height:6.25rem}.video-icon.small.svelte-159ski6.svelte-159ski6{width:1.75rem;height:1.75rem}.video-icon.svelte-159ski6 .video-icon-img.svelte-159ski6{width:100%;height:100%;background-position:center center;background-size:contain;background-repeat:no-repeat}.video-icon.svelte-159ski6 .video-icon-img.canPlay.svelte-159ski6{cursor:pointer}")}function vd(i){let t;function e(o,r){if(o[2].type==="Image")return DC;if(o[2].type==="Video")return xC}let n=e(i),s=n&&n(i);return{c(){t=x("div"),s&&s.c(),w(t,"class","media-item svelte-159ski6"),w(t,"draggable","false")},m(o,r){B(o,t,r),s&&s.m(t,null)},p(o,r){n===(n=e(o))&&s?s.p(o,r):(s&&s.d(1),s=n&&n(o),s&&(s.c(),s.m(t,null)))},d(o){o&&O(t),s&&s.d()}}}function xC(i){let t,e,n,s,o,r;function a(d,h){return d[7]&&d[2].videoCoverUrl?TC:SC}let l=a(i),c=l(i);return{c(){c.c(),t=ee(),e=x("div"),n=x("div"),s=x("div"),w(s,"class","video-icon-img svelte-159ski6"),z(s,"background-image","url("+i[20]()+")"),K(s,"canPlay",i[5]),w(n,"class","video-icon svelte-159ski6"),K(n,"large",i[4]==="large"),K(n,"small",i[4]==="small"),w(e,"class","video-play-button-container svelte-159ski6"),K(e,"showPlayButton",i[10])},m(d,h){c.m(d,h),B(d,t,h),B(d,e,h),D(e,n),D(n,s),o||(r=be(s,"click",i[21]),o=!0)},p(d,h){l===(l=a(d))&&c?c.p(d,h):(c.d(1),c=l(d),c&&(c.c(),c.m(t.parentNode,t))),h&8&&z(s,"background-image","url("+d[20]()+")"),h&32&&K(s,"canPlay",d[5]),h&16&&K(n,"large",d[4]==="large"),h&16&&K(n,"small",d[4]==="small"),h&1024&&K(e,"showPlayButton",d[10])},d(d){c.d(d),d&&O(t),d&&O(e),o=!1,r()}}}function DC(i){let t,e,n,s;return{c(){t=x("img"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${i[6]};`),Pt(t.src,n=i[2].url)||w(t,"src",n),w(t,"alt",s=i[2].name),w(t,"draggable",!1)},m(o,r){B(o,t,r)},p(o,r){r&64&&e!==(e=`object-fit: ${o[6]};`)&&w(t,"style",e),r&4&&!Pt(t.src,n=o[2].url)&&w(t,"src",n),r&4&&s!==(s=o[2].name)&&w(t,"alt",s)},d(o){o&&O(t)}}}function SC(i){let t,e,n,s,o,r,a;return{c(){t=x("video"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${i[6]};`),Pt(t.src,n=i[2].videoCoverUrl?i[2].url:i[2].url+"#t=0.1")||w(t,"src",n),w(t,"poster",s=i[2].videoCoverUrl),w(t,"preload",o=i[2].videoCoverUrl?"none":"auto"),w(t,"disablepictureinpicture",""),t.playsInline=!0,w(t,"paused",""),t.muted=!0,w(t,"draggable",!1),t.loop=!1,w(t,"crossorigin",""),t.controls=!1,K(t,"showPlayButton",i[10])},m(l,c){B(l,t,c),i[19](t),r||(a=[be(t,"play",i[14]),be(t,"pause",i[15]),be(t,"error",i[16]),be(t,"ended",i[17]),be(t,"click",i[18])],r=!0)},p(l,c){c&64&&e!==(e=`object-fit: ${l[6]};`)&&w(t,"style",e),c&4&&!Pt(t.src,n=l[2].videoCoverUrl?l[2].url:l[2].url+"#t=0.1")&&w(t,"src",n),c&4&&s!==(s=l[2].videoCoverUrl)&&w(t,"poster",s),c&4&&o!==(o=l[2].videoCoverUrl?"none":"auto")&&w(t,"preload",o),c&1024&&K(t,"showPlayButton",l[10])},d(l){l&&O(t),i[19](null),r=!1,Je(a)}}}function TC(i){let t,e,n,s;return{c(){t=x("img"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${i[6]};`),Pt(t.src,n=i[2].videoCoverUrl)||w(t,"src",n),w(t,"alt",s=i[2].name),w(t,"draggable",!1)},m(o,r){B(o,t,r)},p(o,r){r&64&&e!==(e=`object-fit: ${o[6]};`)&&w(t,"style",e),r&4&&!Pt(t.src,n=o[2].videoCoverUrl)&&w(t,"src",n),r&4&&s!==(s=o[2].name)&&w(t,"alt",s)},d(o){o&&O(t)}}}function LC(i){let t,e=i[2]&&vd(i);return{c(){e&&e.c(),t=Pe()},m(n,s){e&&e.m(n,s),B(n,t,s)},p(n,[s]){n[2]?e?e.p(n,s):(e=vd(n),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},i:J,o:J,d(n){e&&e.d(n),n&&O(t)}}}function jC(i,t,e){let n,s,{mediaInstance:o={videoInstance:void 0,paused:!0}}=t,{tag:r}=t,{media:a}=t,{playButtonIfNeed:l="withoutText"}=t,{playButtonSizeIfNeed:c="small"}=t,{canPlay:d=!0}=t,{objectFit:h="fill"}=t,{disableVideoIfHavePoster:u=!1}=t,m=!0,A=!1;function p(){e(8,A=(a==null?void 0:a.type)==="Video"&&!!a.videoCoverUrl)}const g=fn("mediaStore"),b=fn("hooks"),y=()=>{A||n&&(e(9,n.muted=!0,n),n.play(),n.pause(),e(9,n.muted=!1,n),e(8,A=!0))};b.on("loadVideoFirstFrame",y),vt(()=>{g.subscribe(({currentMediaElement:N})=>{N!==n&&(n==null||n.pause())})});const I=N=>{e(10,m=!1),e(0,o.paused=!1,o),e(8,A=!0),n&&g.set({currentMediaElement:n}),b.emit("playStateChange",{event:N,state:"playing",tag:r,mediaInstance:n})},k=N=>{e(10,m=!0),e(0,o.paused=!0,o),b.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:n})},T=N=>{e(10,m=!0),e(0,o.paused=!0,o),b.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:n})},P=N=>{e(10,m=!0),e(0,o.paused=!0,o),b.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:n})},V=N=>{n&&n.pause()};function L(N){Qe[N?"unshift":"push"](()=>{o.videoInstance=N,e(0,o)})}const W=()=>l==="withText"?Oa:l==="withoutText"?ta:l,q=N=>{d&&n&&(e(9,n.muted=!1,n),n.play())};return i.$$set=N=>{"mediaInstance"in N&&e(0,o=N.mediaInstance),"tag"in N&&e(1,r=N.tag),"media"in N&&e(2,a=N.media),"playButtonIfNeed"in N&&e(3,l=N.playButtonIfNeed),"playButtonSizeIfNeed"in N&&e(4,c=N.playButtonSizeIfNeed),"canPlay"in N&&e(5,d=N.canPlay),"objectFit"in N&&e(6,h=N.objectFit),"disableVideoIfHavePoster"in N&&e(7,u=N.disableVideoIfHavePoster)},i.$$.update=()=>{if(i.$$.dirty&1&&e(9,n=o.videoInstance),i.$$.dirty&4&&e(13,s=a==null?void 0:a.url),i.$$.dirty&8192&&s&&p(),i.$$.dirty&512&&n&&e(10,m=n.paused),i.$$.dirty&772&&(a==null?void 0:a.type)==="Video"&&!A){const N=navigator.userAgent.toLowerCase().indexOf("micromessenger")!==-1,_=navigator.userAgent.toLowerCase().indexOf("iphone")!==-1&&N;n&&_&&n.paused&&(document.removeEventListener("WeixinJSBridgeReady",y),document.removeEventListener("touchstart",y),document.removeEventListener("click",y),document.addEventListener("WeixinJSBridgeReady",y),document.addEventListener("touchstart",y),document.addEventListener("click",y))}},[o,r,a,l,c,d,h,u,A,n,m,g,b,s,I,k,T,P,V,L,W,q]}class ju extends le{constructor(t){super(),ae(this,t,jC,LC,oe,{mediaInstance:0,tag:1,media:2,playButtonIfNeed:3,playButtonSizeIfNeed:4,canPlay:5,objectFit:6,disableVideoIfHavePoster:7},MC)}}function zC(i){ue(i,"svelte-1mrbqlg",".media-list-wrapper.svelte-1mrbqlg.svelte-1mrbqlg{width:100%;height:100%;position:relative;overflow:hidden;border-radius:0.125rem}.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg{position:relative;pointer-events:auto;height:100%;left:50%;top:50%;transform:translate(-50%, -50%)}.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg .sc-carousel__carousel-container,.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg .sc-carousel__content-container{height:100%}")}function bd(i,t,e){const n=i.slice();return n[28]=t[e],n[29]=t,n[30]=e,n}function yd(i){let t,e,n,s,o,r,a;const l=[BC,OC],c=[];function d(h,u){return h[13]&&h[10].length>1?0:1}return n=d(i),s=c[n]=l[n](i),{c(){t=x("div"),e=x("div"),s.c(),w(e,"class","media-list svelte-1mrbqlg"),K(e,"carouselEnabled",i[13]),w(t,"class","media-list-wrapper svelte-1mrbqlg"),K(t,"unfolded",i[5])},m(h,u){B(h,t,u),D(t,e),c[n].m(e,null),a=!0},p(h,u){i=h;let m=n;n=d(i),n===m?c[n].p(i,u):(de(),j(c[m],1,1,()=>{c[m]=null}),he(),s=c[n],s?s.p(i,u):(s=c[n]=l[n](i),s.c()),M(s,1),s.m(e,null)),(!a||u[0]&8192)&&K(e,"carouselEnabled",i[13]),(!a||u[0]&32)&&K(t,"unfolded",i[5])},i(h){a||(M(s),h&&Ne(()=>{a&&(r&&r.end(1),o=On(t,ll,i[6]?{y:4,duration:i[4],delay:i[2],easing:en}:void 0),o.start())}),a=!0)},o(h){j(s),o&&o.invalidate(),h&&(r=Ii(t,ll,i[6]?{y:4,duration:i[4],delay:i[3],easing:en}:void 0)),a=!1},d(h){h&&O(t),c[n].d(),h&&r&&r.end()}}}function OC(i){let t,e,n;const s=[{media:i[1][0]},i[7],{tag:i[0]}];function o(a){i[20](a)}let r={};for(let a=0;a<s.length;a+=1)r=et(r,s[a]);return i[8][0]!==void 0&&(r.mediaInstance=i[8][0]),t=new ju({props:r}),Qe.push(()=>Ca(t,"mediaInstance",o)),{c(){ie(t.$$.fragment)},m(a,l){te(t,a,l),n=!0},p(a,l){const c=l[0]&131?lt(s,[l[0]&2&&{media:a[1][0]},l[0]&128&&zh(a[7]),l[0]&1&&{tag:a[0]}]):{};!e&&l[0]&256&&(e=!0,c.mediaInstance=a[8][0],Aa(()=>e=!1)),t.$set(c)},i(a){n||(M(t.$$.fragment,a),n=!0)},o(a){j(t.$$.fragment,a),n=!1},d(a){ne(t,a)}}}function BC(i){let t,e,n={dots:!1,arrows:!1,$$slots:{default:[VC]},$$scope:{ctx:i}};return t=new kC({props:n}),i[18](t),t.$on("pageChange",i[19]),{c(){ie(t.$$.fragment)},m(s,o){te(t,s,o),e=!0},p(s,o){const r={};o[0]&1409|o[1]&1&&(r.$$scope={dirty:o,ctx:s}),t.$set(r)},i(s){e||(M(t.$$.fragment,s),e=!0)},o(s){j(t.$$.fragment,s),e=!1},d(s){i[18](null),ne(t,s)}}}function wd(i){let t,e,n;const s=[i[7],{media:i[28]},{tag:i[0]}];function o(a){i[17](a,i[30])}let r={};for(let a=0;a<s.length;a+=1)r=et(r,s[a]);return i[8][i[30]]!==void 0&&(r.mediaInstance=i[8][i[30]]),t=new ju({props:r}),Qe.push(()=>Ca(t,"mediaInstance",o)),{c(){ie(t.$$.fragment)},m(a,l){te(t,a,l),n=!0},p(a,l){i=a;const c=l[0]&1153?lt(s,[l[0]&128&&zh(i[7]),l[0]&1024&&{media:i[28]},l[0]&1&&{tag:i[0]}]):{};!e&&l[0]&256&&(e=!0,c.mediaInstance=i[8][i[30]],Aa(()=>e=!1)),t.$set(c)},i(a){n||(M(t.$$.fragment,a),n=!0)},o(a){j(t.$$.fragment,a),n=!1},d(a){ne(t,a)}}}function VC(i){let t,e,n=i[10],s=[];for(let r=0;r<n.length;r+=1)s[r]=wd(bd(i,n,r));const o=r=>j(s[r],1,1,()=>{s[r]=null});return{c(){for(let r=0;r<s.length;r+=1)s[r].c();t=Pe()},m(r,a){for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(r,a);B(r,t,a),e=!0},p(r,a){if(a[0]&1409){n=r[10];let l;for(l=0;l<n.length;l+=1){const c=bd(r,n,l);s[l]?(s[l].p(c,a),M(s[l],1)):(s[l]=wd(c),s[l].c(),M(s[l],1),s[l].m(t.parentNode,t))}for(de(),l=n.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<n.length;a+=1)M(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)j(s[a]);e=!1},d(r){Tt(s,r),r&&O(t)}}}function RC(i){let t,e,n=i[5]&&yd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,o){s[5]?n?(n.p(s,o),o[0]&32&&M(n,1)):(n=yd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function QC(i,t,e){let n,s,o,r,{tag:a}=t,{mediaData:l}=t,{inDelay:c=0}=t,{outDelay:d=0}=t,{duration:h=0}=t,{unfolded:u=!0}=t,{animation:m=!0}=t,{mediaItemConfig:A}=t,{enableCarousel:p=!0}=t,{autoplayConfig:g={}}=t;const{autoplayVideo:b=!1,autoplayCarousel:y=!0,autoplayVideoInCarousel:I=!1}=g;let k=[],T=0,P,V=null;const L=fn("hooks"),W=fn("mediaStore");function q(){const F=k[T],Z=F==null?void 0:F.videoInstance;Z&&(Z.paused?(Z.muted=!1,Z.play()):Z.pause())}vt(()=>{L.on("click",F=>{var Z,X,$;($=(X=(Z=a.tag3DContentSvelte)==null?void 0:Z.css3DInstance)==null?void 0:X.css3DObject)!=null&&$.opacityMesh&&F.tag.id===a.id&&q()}),V=setInterval(()=>{r&&(P==null||P.goToNext())},3e3)}),Lt(()=>{clearInterval(V),L.off("click",q)});function N(F,Z){i.$$.not_equal(k[Z],F)&&(k[Z]=F,e(8,k))}function G(F){Qe[F?"unshift":"push"](()=>{P=F,e(12,P)})}const _=F=>{n||W.set({currentMediaElement:null}),e(11,T=F.detail)};function Q(F){i.$$.not_equal(k[0],F)&&(k[0]=F,e(8,k))}return i.$$set=F=>{"tag"in F&&e(0,a=F.tag),"mediaData"in F&&e(1,l=F.mediaData),"inDelay"in F&&e(2,c=F.inDelay),"outDelay"in F&&e(3,d=F.outDelay),"duration"in F&&e(4,h=F.duration),"unfolded"in F&&e(5,u=F.unfolded),"animation"in F&&e(6,m=F.animation),"mediaItemConfig"in F&&e(7,A=F.mediaItemConfig),"enableCarousel"in F&&e(15,p=F.enableCarousel),"autoplayConfig"in F&&e(16,g=F.autoplayConfig)},i.$$.update=()=>{i.$$.dirty[0]&256&&e(9,n=k.every(F=>F.paused)),i.$$.dirty[0]&32770&&e(13,s=p&&(l==null?void 0:l.length)>1),i.$$.dirty[0]&2&&e(10,o=l),i.$$.dirty[0]&1536&&(r=o.length>1&&y&&n)},[a,l,c,d,h,u,m,A,k,n,o,T,P,s,W,p,g,N,G,_,Q]}class zu extends le{constructor(t){super(),ae(this,t,QC,RC,oe,{tag:0,mediaData:1,inDelay:2,outDelay:3,duration:4,unfolded:5,animation:6,mediaItemConfig:7,enableCarousel:15,autoplayConfig:16},zC,[-1,-1])}}function GC(i){ue(i,"svelte-1f7m1lj",".line.svelte-1f7m1lj{position:absolute;width:6.5625rem;height:1.3125rem;transform:translateY(-100%)}.text.svelte-1f7m1lj{position:absolute;width:6.25rem;left:1rem;bottom:0.0625rem;font-weight:600}.media-wrapper.svelte-1f7m1lj{position:absolute;left:0.875rem;top:-5.3125rem;width:5.625rem;height:3.75rem;font-weight:600}")}function Cd(i){let t,e,n,s,o,r,a,l;t=new Wt({props:{visible:i[3],left:61,bottom:57,width:2,blurRadius:150,spreadRadius:75}}),s=new uy({props:{unfolded:i[3],outDelay:400}});let c=i[2]&&Id(i),d=i[1]&&Pd(i);return{c(){ie(t.$$.fragment),e=ee(),n=x("div"),ie(s.$$.fragment),o=ee(),c&&c.c(),r=ee(),d&&d.c(),a=Pe(),w(n,"class","line svelte-1f7m1lj")},m(h,u){te(t,h,u),B(h,e,u),B(h,n,u),te(s,n,null),B(h,o,u),c&&c.m(h,u),B(h,r,u),d&&d.m(h,u),B(h,a,u),l=!0},p(h,u){const m={};u&8&&(m.visible=h[3]),t.$set(m);const A={};u&8&&(A.unfolded=h[3]),s.$set(A),h[2]?c?(c.p(h,u),u&4&&M(c,1)):(c=Id(h),c.c(),M(c,1),c.m(r.parentNode,r)):c&&(de(),j(c,1,1,()=>{c=null}),he()),h[1]?d?(d.p(h,u),u&2&&M(d,1)):(d=Pd(h),d.c(),M(d,1),d.m(a.parentNode,a)):d&&(de(),j(d,1,1,()=>{d=null}),he())},i(h){l||(M(t.$$.fragment,h),M(s.$$.fragment,h),M(c),M(d),l=!0)},o(h){j(t.$$.fragment,h),j(s.$$.fragment,h),j(c),j(d),l=!1},d(h){ne(t,h),h&&O(e),h&&O(n),ne(s),h&&O(o),c&&c.d(h),h&&O(r),d&&d.d(h),h&&O(a)}}}function Id(i){let t,e,n;return e=new yu({props:{unfolded:i[3],content:i[2],inDelay:500}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","text svelte-1f7m1lj")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o&8&&(r.unfolded=s[3]),o&4&&(r.content=s[2]),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function Pd(i){let t,e,n;return e=new zu({props:{autoplayConfig:{autoplayCarousel:!1},unfolded:i[3],mediaData:i[1],tag:i[0],enableCarousel:!1,mediaItemConfig:{canPlay:!1,playButtonSizeIfNeed:"small",disableVideoIfHavePoster:!0},inDelay:500,duration:500}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","media-wrapper svelte-1f7m1lj")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o&8&&(r.unfolded=s[3]),o&2&&(r.mediaData=s[1]),o&1&&(r.tag=s[0]),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function NC(i){let t,e,n=i[0].state&&Cd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?n?(n.p(s,o),o&1&&M(n,1)):(n=Cd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function HC(i,t,e){let n,s,o,r,{tag:a}=t;return i.$$set=l=>{"tag"in l&&e(0,a=l.tag)},i.$$.update=()=>{var l,c,d;i.$$.dirty&1&&e(3,n=a.state?a.state.unfolded:!1),i.$$.dirty&1&&e(4,s=(c=(l=a.data.title)!=null?l:a.data.text)!=null?c:""),i.$$.dirty&16&&e(2,o=((d=s.length)!=null?d:0)>7?s.substring(0,6)+"...":s),i.$$.dirty&1&&e(1,r=a.data.mediaData)},[a,r,o,n,s]}class _C extends le{constructor(t){super(),ae(this,t,HC,NC,oe,{tag:0},GC)}}function WC(i){ue(i,"svelte-sezqcq",'@charset "UTF-8";.svelte-sezqcq.svelte-sezqcq{box-sizing:border-box}.marketing.svelte-sezqcq.svelte-sezqcq{transform:translateY(-100%)}.marketing.svelte-sezqcq .line.svelte-sezqcq{position:absolute;height:1.875rem;width:0.0625rem;left:50%;transform:translateX(-50%);background-color:white;bottom:0;transform-origin:bottom;transition:all 500ms}.marketing.svelte-sezqcq .content.svelte-sezqcq{position:relative;min-width:7.5rem;width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;border-radius:0.25rem;top:-1.875rem;left:-1rem;padding:0.5rem 0rem 0.5625rem;transition-property:opacity, transform;transition-duration:500ms}.marketing.svelte-sezqcq .content .headerImage.svelte-sezqcq{position:absolute;width:100%;top:0.25rem;transform:translateY(-100%);border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.title-wrapper.svelte-sezqcq.svelte-sezqcq{position:relative;width:100%;height:1.125rem}.title-wrapper.svelte-sezqcq .title.svelte-sezqcq{border-radius:0.25rem;width:100%;padding-left:0.625rem;padding-right:0.625rem}.title-wrapper.svelte-sezqcq .title .text.svelte-sezqcq{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.75rem;font-weight:bold;line-height:1.125rem}.footer.svelte-sezqcq.svelte-sezqcq{position:relative;padding:0.5rem 0.625rem 0 0;width:100%;display:flex;align-items:center}.footer.svelte-sezqcq .goto-button.svelte-sezqcq{display:flex;align-self:flex-end;flex-wrap:wrap;align-items:center;overflow:hidden;height:0.875rem}.footer.svelte-sezqcq .goto-button .gap.svelte-sezqcq{height:100%;width:0.625rem}.footer.svelte-sezqcq .goto-button .text.svelte-sezqcq{display:block;height:100%;font-size:0.625rem}.footer.svelte-sezqcq .arrow-wrapper.svelte-sezqcq{height:0.875rem;display:flex;align-self:flex-end;flex-grow:0;flex-shrink:0;align-items:center;margin-left:0.25rem}.footer.svelte-sezqcq .arrow-wrapper svg.arrow.svelte-sezqcq{width:0.375rem;height:0.625rem}.footer.svelte-sezqcq .price.svelte-sezqcq{flex-shrink:0;margin-right:auto;white-space:nowrap;display:flex;align-items:baseline;margin-left:0.625rem}.footer.svelte-sezqcq .price .value.svelte-sezqcq{position:relative;font-size:0.875rem;line-height:1rem;font-family:TG-TYPE, PingFangSC, Segoe UI, Rototo, sans-serif;letter-spacing:0rem}.footer.svelte-sezqcq .price .unit.svelte-sezqcq{padding-left:0.125rem;font-size:0.625rem}.tags-wrapper.svelte-sezqcq.svelte-sezqcq{position:relative;overflow:hidden;height:1rem;margin-top:0.25rem}.tags-wrapper.svelte-sezqcq .tags.svelte-sezqcq{position:relative;display:inline-flex;max-width:100%;flex-wrap:wrap;padding-left:0.625rem;padding-right:0.375rem}.tags-wrapper.svelte-sezqcq .tags .tag.svelte-sezqcq{display:flex;align-items:center;justify-content:center;flex-shrink:0;flex-grow:0;font-size:0.625rem;height:1rem;margin-right:0.25rem;margin-bottom:0.625rem;padding:0 0.25rem;border-radius:0.125rem;max-width:100%;text-overflow:ellipsis;overflow:hidden}.marketing.light.svelte-sezqcq .content.svelte-sezqcq{background-color:white}.marketing.light.svelte-sezqcq .content .title-wrapper .title .text.svelte-sezqcq{color:rgba(0, 0, 0, 0.8)}.marketing.light.svelte-sezqcq .content .tags-wrapper .tags .primary-tag.svelte-sezqcq{background:rgba(234, 208, 154, 0.5);color:#946700}.marketing.light.svelte-sezqcq .content .tags-wrapper .tags .secondary-tag.svelte-sezqcq{background:rgba(0, 0, 0, 0.06);color:rgba(0, 0, 0, 0.5)}.marketing.light.svelte-sezqcq .content .footer.svelte-sezqcq{color:#946700;fill:#946700}.marketing.dark.svelte-sezqcq .content.svelte-sezqcq{background-color:rgba(0, 0, 0, 0.5)}.marketing.dark.svelte-sezqcq .content .title-wrapper .title .text.svelte-sezqcq{color:white}.marketing.dark.svelte-sezqcq .content .tags-wrapper .tags .primary-tag.svelte-sezqcq{background:rgba(234, 208, 154, 0.5);color:white}.marketing.dark.svelte-sezqcq .content .tags-wrapper .tags .secondary-tag.svelte-sezqcq{background:rgba(255, 255, 255, 0.15);color:rgba(255, 255, 255, 0.85)}.marketing.dark.svelte-sezqcq .content .footer.svelte-sezqcq{color:#ead09a;fill:#ead09a}.marketing.unfolded.svelte-sezqcq .line.svelte-sezqcq{transform:translateX(-50%) scale(1, 1)}.marketing.folded.svelte-sezqcq .line.svelte-sezqcq{transform:translateX(-50%) scale(1, 0);transition-timing-function:ease-in}.marketing.unfolded.svelte-sezqcq .content.svelte-sezqcq{opacity:1}.marketing.folded.svelte-sezqcq .content.svelte-sezqcq{opacity:0;transform:translateY(0.425rem);transition-timing-function:ease-in}')}function Ed(i,t,e){const n=i.slice();return n[0]=t[e],n}function kd(i,t,e){const n=i.slice();return n[0]=t[e],n}function Md(i){let t,e;return{c(){t=x("img"),w(t,"class","headerImage svelte-sezqcq"),Pt(t.src,e=i[3].headerPictureUrl)||w(t,"src",e),w(t,"alt","")},m(n,s){B(n,t,s)},p(n,s){s&8&&!Pt(t.src,e=n[3].headerPictureUrl)&&w(t,"src",e)},d(n){n&&O(t)}}}function xd(i){let t,e,n,s,o=i[2]||[],r=[];for(let c=0;c<o.length;c+=1)r[c]=Dd(kd(i,o,c));let a=i[5]||[],l=[];for(let c=0;c<a.length;c+=1)l[c]=Sd(Ed(i,a,c));return{c(){t=x("div"),e=x("div");for(let c=0;c<r.length;c+=1)r[c].c();n=ee();for(let c=0;c<l.length;c+=1)l[c].c();w(e,"class","tags svelte-sezqcq"),Ne(()=>i[11].call(e)),w(t,"class","tags-wrapper svelte-sezqcq")},m(c,d){B(c,t,d),D(t,e);for(let h=0;h<r.length;h+=1)r[h]&&r[h].m(e,null);D(e,n);for(let h=0;h<l.length;h+=1)l[h]&&l[h].m(e,null);s=bo(e,i[11].bind(e))},p(c,d){if(d&4){o=c[2]||[];let h;for(h=0;h<o.length;h+=1){const u=kd(c,o,h);r[h]?r[h].p(u,d):(r[h]=Dd(u),r[h].c(),r[h].m(e,n))}for(;h<r.length;h+=1)r[h].d(1);r.length=o.length}if(d&32){a=c[5]||[];let h;for(h=0;h<a.length;h+=1){const u=Ed(c,a,h);l[h]?l[h].p(u,d):(l[h]=Sd(u),l[h].c(),l[h].m(e,null))}for(;h<l.length;h+=1)l[h].d(1);l.length=a.length}},d(c){c&&O(t),Tt(r,c),Tt(l,c),s()}}}function Dd(i){let t,e=i[0]+"",n;return{c(){t=x("div"),n=Me(e),w(t,"class","tag primary-tag svelte-sezqcq"),z(t,"min-width",Wa)},m(s,o){B(s,t,o),D(t,n)},p(s,o){o&4&&e!==(e=s[0]+"")&&Oe(n,e)},d(s){s&&O(t)}}}function Sd(i){let t,e=i[0]+"",n;return{c(){t=x("div"),n=Me(e),w(t,"class","tag secondary-tag svelte-sezqcq"),z(t,"min-width",Wa)},m(s,o){B(s,t,o),D(t,n)},p(s,o){o&32&&e!==(e=s[0]+"")&&Oe(n,e)},d(s){s&&O(t)}}}function Td(i){let t,e,n=i[7]&&Ld(i),s=i[3].highlightText&&zd(i);return{c(){t=x("div"),n&&n.c(),e=ee(),s&&s.c(),w(t,"class","footer svelte-sezqcq")},m(o,r){B(o,t,r),n&&n.m(t,null),D(t,e),s&&s.m(t,null)},p(o,r){o[7]?n?n.p(o,r):(n=Ld(o),n.c(),n.m(t,e)):n&&(n.d(1),n=null),o[3].highlightText?s?s.p(o,r):(s=zd(o),s.c(),s.m(t,null)):s&&(s.d(1),s=null)},d(o){o&&O(t),n&&n.d(),s&&s.d()}}}function Ld(i){let t,e,n=i[3].price.value+"",s,o,r=i[3].price.unit&&jd(i);return{c(){t=x("div"),e=x("span"),s=Me(n),o=ee(),r&&r.c(),w(e,"class","value svelte-sezqcq"),w(t,"class","price svelte-sezqcq")},m(a,l){B(a,t,l),D(t,e),D(e,s),D(t,o),r&&r.m(t,null)},p(a,l){l&8&&n!==(n=a[3].price.value+"")&&Oe(s,n),a[3].price.unit?r?r.p(a,l):(r=jd(a),r.c(),r.m(t,null)):r&&(r.d(1),r=null)},d(a){a&&O(t),r&&r.d()}}}function jd(i){let t,e=i[3].price.unit+"",n;return{c(){t=x("span"),n=Me(e),w(t,"class","unit svelte-sezqcq")},m(s,o){B(s,t,o),D(t,n)},p(s,o){o&8&&e!==(e=s[3].price.unit+"")&&Oe(n,e)},d(s){s&&O(t)}}}function zd(i){let t,e,n,s,o=i[3].highlightText+"",r,a,l;return{c(){t=x("div"),e=x("div"),n=ee(),s=x("span"),r=Me(o),a=ee(),l=x("div"),l.innerHTML='<svg class="arrow svelte-sezqcq" viewBox="0 0 6 9"><g transform="translate(-3, -2)" fill-rule="nonzero" class="svelte-sezqcq"><path d="M4.43868724,2.12056563 C4.28121824,1.95989074 4.02582143,1.95979988 3.86824251,2.1203627 C3.72498894,2.26632889 3.71189225,2.49481723 3.82900374,2.65587166 L6.57092402,5.92894326 C6.72651763,6.11470411 6.72651763,6.38529589 6.57092402,6.57105674 L3.86804348,9.79798499 C3.72488984,9.94405307 3.71194952,10.1725507 3.8291712,10.3335217 L3.86824251,10.3796373 C4.01149607,10.5256035 4.23559087,10.5387981 4.39346025,10.4192733 L4.43868724,10.3794344 L8.1144599,6.5985342 C8.30312347,6.40447482 8.30312347,6.09552518 8.1144599,5.9014658 L4.43868724,2.12056563 Z" class="svelte-sezqcq"></path></g></svg>',w(e,"class","gap svelte-sezqcq"),w(s,"class","text svelte-sezqcq"),w(t,"class","goto-button goto-icon svelte-sezqcq"),w(l,"class","arrow-wrapper svelte-sezqcq")},m(c,d){B(c,t,d),D(t,e),D(t,n),D(t,s),D(s,r),B(c,a,d),B(c,l,d)},p(c,d){d&8&&o!==(o=c[3].highlightText+"")&&Oe(r,o)},d(c){c&&O(t),c&&O(a),c&&O(l)}}}function FC(i){var k,T;let t,e,n,s,o,r,a,l,c,d,h=i[3].title+"",u,m,A,p,g;e=new Wt({props:{visible:i[4],outDelay:500,left:61,bottom:87,blurRadius:150,spreadRadius:75}});let b=i[3].headerPictureUrl&&Md(i),y=((k=i[2].length)!=null?k:0)+((T=i[5].length)!=null?T:0)>0&&xd(i),I=(i[7]||i[3].highlightText)&&Td(i);return{c(){t=x("div"),ie(e.$$.fragment),n=ee(),s=x("div"),o=ee(),r=x("div"),b&&b.c(),a=ee(),l=x("div"),c=x("div"),d=x("div"),u=Me(h),m=ee(),y&&y.c(),A=ee(),I&&I.c(),w(s,"class","line svelte-sezqcq"),z(s,"transition-delay",i[4]?Qs+"ms":Gs+Bd-Od-40+"ms"),w(d,"class","text svelte-sezqcq"),w(c,"class","title svelte-sezqcq"),w(l,"class","title-wrapper svelte-sezqcq"),w(r,"class","content svelte-sezqcq"),z(r,"max-width",Nt(i[9])),z(r,"transition-delay",i[4]?Qs+Gs+"ms":"0ms"),w(t,"class",p=Re(`marketing ${i[6]}`)+" svelte-sezqcq"),K(t,"unfolded",i[4]),K(t,"folded",i[8])},m(P,V){B(P,t,V),te(e,t,null),D(t,n),D(t,s),D(t,o),D(t,r),b&&b.m(r,null),D(r,a),D(r,l),D(l,c),D(c,d),D(d,u),D(r,m),y&&y.m(r,null),D(r,A),I&&I.m(r,null),g=!0},p(P,[V]){var W,q;const L={};V&16&&(L.visible=P[4]),e.$set(L),V&16&&z(s,"transition-delay",P[4]?Qs+"ms":Gs+Bd-Od-40+"ms"),P[3].headerPictureUrl?b?b.p(P,V):(b=Md(P),b.c(),b.m(r,a)):b&&(b.d(1),b=null),(!g||V&8)&&h!==(h=P[3].title+"")&&Oe(u,h),((W=P[2].length)!=null?W:0)+((q=P[5].length)!=null?q:0)>0?y?y.p(P,V):(y=xd(P),y.c(),y.m(r,A)):y&&(y.d(1),y=null),P[7]||P[3].highlightText?I?I.p(P,V):(I=Td(P),I.c(),I.m(r,null)):I&&(I.d(1),I=null),V&16&&z(r,"transition-delay",P[4]?Qs+Gs+"ms":"0ms"),(!g||V&64&&p!==(p=Re(`marketing ${P[6]}`)+" svelte-sezqcq"))&&w(t,"class",p),(!g||V&80)&&K(t,"unfolded",P[4]),(!g||V&320)&&K(t,"folded",P[8])},i(P){g||(M(e.$$.fragment,P),g=!0)},o(P){j(e.$$.fragment,P),g=!1},d(P){P&&O(t),ne(e),b&&b.d(),y&&y.d(),I&&I.d()}}}const Wa=40,Qs=400,Od=500,Gs=180,Bd=500;function YC(i,t,e){let n,s,o,r,a,l,c,d,{tag:h}=t,u,m=(()=>{var g;const p=(g=h.data.limitWidth)!=null?g:!0;if(typeof p=="number")return p;if(p===!0)return 172})();function A(){u=this.offsetHeight,e(1,u)}return i.$$set=p=>{"tag"in p&&e(0,h=p.tag)},i.$$.update=()=>{var p,g,b,y,I,k;i.$$.dirty&1&&e(4,n=(g=(p=h.state)==null?void 0:p.unfolded)!=null?g:!1),i.$$.dirty&16&&e(8,s=!n),i.$$.dirty&1&&e(3,o=h.data),i.$$.dirty&8&&e(7,r=Ai((b=o.price)==null?void 0:b.value)&&((y=o.price)==null?void 0:y.value)!==""),i.$$.dirty&1&&e(6,a=h.data.theme||"light"),i.$$.dirty&1026&&u>40&&e(10,l=l-1),i.$$.dirty&1032&&e(2,c=((I=o.brandTags)==null?void 0:I.slice(0,l).filter(Boolean))||[]),i.$$.dirty&1036&&e(5,d=((k=o.tags)==null?void 0:k.slice(0,l-c.length).filter(Boolean))||[])},e(10,l=(m-20)/Wa),[h,u,c,o,n,d,a,r,s,m,l,A]}class UC extends le{constructor(t){super(),ae(this,t,YC,FC,oe,{tag:0},WC)}}class XC extends Audio{constructor(e){super();f(this,"sharedAudioSrc");f(this,"sharedAudioPaused",!0);f(this,"sharedAudioCurrentTime",0);f(this,"tryplaying",!1);f(this,"audioInstance");f(this,"eventListenerDisposer");this.sharedAudioSrc=e}get paused(){var e;return(e=this.sharedAudioPaused)!=null?e:!0}get currentTime(){return this.sharedAudioCurrentTime}play(){return U(this,null,function*(){var n,s,o;if(this.tryplaying)return;this.tryplaying=!0,(!this.audioInstance||((n=this.audioInstance)==null?void 0:n.realSrc)!==this.sharedAudioSrc)&&(this.audioInstance=h1(this.sharedAudioSrc,{namespace:Ba.PlayAudio})),(s=this.eventListenerDisposer)==null||s.call(this),this.eventListenerDisposer=this.addEventListeners(),this.audioInstance.currentTime=(o=this.currentTime)!=null?o:0;const e=this.audioInstance.currentTime!==this.currentTime;this.audioInstance.play().then(()=>{var r;this.audioInstance.muted=!1,e&&(this.audioInstance.currentTime=(r=this.currentTime)!=null?r:0),this.sharedAudioPaused=!1}).catch(r=>{var a;r.message==="The operation is not supported."?console.error("Error: 音频文件可能损坏或修改过文件后缀",r):console.error("Error: error playing media in Safari",r),this.endedHandler(),(a=this.onerror)==null||a.call(this,r)}).finally(()=>{this.tryplaying=!1})})}pause(e){var n;if(this.audioInstance&&!this.paused){if(this.sharedAudioPaused=!0,(n=this.eventListenerDisposer)==null||n.call(this),this.audioInstance.ended){this.endedHandler();return}this.audioInstance.paused||this.audioInstance.pause(),this.onpause(e!=null?e:new Event("pause")),this.clear()}}dispose(){var e;(e=this.eventListenerDisposer)==null||e.call(this),this.clear(),this.audioInstance=void 0}clear(){var e;(e=this.audioInstance)==null||e.clear()}endedHandler(e){var n,s;(n=this.onended)==null||n.call(this,e!=null?e:new Event("ended")),(s=this.eventListenerDisposer)==null||s.call(this),this.sharedAudioPaused=!0,this.sharedAudioCurrentTime=0,this.clear()}addEventListeners(){const e=this.audioInstance;if(!e)return;const n=u=>{var m;this.sharedAudioCurrentTime=e.currentTime,(m=this.ontimeupdate)==null||m.call(this,u)},s=u=>{var m;e.isBlankAudio||(this.sharedAudioPaused=!1,(m=this.onplay)==null||m.call(this,u))},o=u=>{this.pause(u)},r=u=>{this.endedHandler(u)},a=u=>{var m;this.sharedAudioPaused=!0,(m=this.onerror)==null||m.call(this,u)},l=u=>{var m;return(m=this.oncanplay)==null?void 0:m.call(this,u)},c=u=>{var m;return(m=this.oncanplaythrough)==null?void 0:m.call(this,u)},d=u=>{var m;return(m=this.onloadeddata)==null?void 0:m.call(this,u)},h=u=>{var m;return(m=this.onloadedmetadata)==null?void 0:m.call(this,u)};return e.addEventListener("timeupdate",n),e.addEventListener("play",s),e.addEventListener("pause",o),e.addEventListener("ended",r),e.addEventListener("error",a),e.addEventListener("canplay",l),e.addEventListener("canplaythrough",c),e.addEventListener("loadeddata",d),e.addEventListener("loadedmetadata",h),()=>{e.removeEventListener("timeupdate",n),e.removeEventListener("play",s),e.removeEventListener("pause",o),e.removeEventListener("ended",r),e.removeEventListener("error",a),e.removeEventListener("canplay",l),e.removeEventListener("canplaythrough",c),e.removeEventListener("loadeddata",d),e.removeEventListener("loadedmetadata",h)}}}function ZC(i){ue(i,"svelte-13e7hxv",".audio.svelte-13e7hxv{pointer-events:auto;cursor:pointer;width:100%;height:100%}")}function JC(i){let t,e,n,s;const o=i[8].default,r=vi(o,i,i[7],null);return{c(){t=x("div"),r&&r.c(),w(t,"class","audio svelte-13e7hxv"),w(t,"style",i[0])},m(a,l){B(a,t,l),r&&r.m(t,null),e=!0,n||(s=be(t,"click",Mh(i[1])),n=!0)},p(a,[l]){r&&r.p&&(!e||l&128)&&yi(r,o,a,a[7],e?bi(o,a[7],l,null):wi(a[7]),null),(!e||l&1)&&w(t,"style",a[0])},i(a){e||(M(r,a),e=!0)},o(a){j(r,a),e=!1},d(a){a&&O(t),r&&r.d(a),n=!1,s()}}}function qC(i,t,e){let{$$slots:n={},$$scope:s}=t,{url:o}=t,{enable:r=!0}=t,{style:a=""}=t,{hooksInfo:l}=t;const c=yo(),d=fn("hooks"),h=fn("mediaStore");let u,m=!0;function A(){e(5,u.onplay=g=>{d.emit("playStateChange",H({event:g,state:"playing",mediaInstance:u},l)),c("play"),e(6,m=!1)},u),e(5,u.onpause=g=>{d.emit("playStateChange",H({event:g,state:"paused",mediaInstance:u},l)),c("pause"),e(6,m=!0)},u),e(5,u.onended=g=>{d.emit("playStateChange",H({event:g,state:"paused",mediaInstance:u},l)),c("pause"),e(6,m=!0)},u),e(5,u.onloadedmetadata=g=>{typeof u.duration=="number"&&!Number.isNaN(u.duration)&&c("duration",u.duration)},u),e(5,u.onerror=g=>{c("pause"),e(6,m=!0)},u),e(5,u.ontimeupdate=g=>{c("timeupdate",u.currentTime)},u)}h.subscribe(({currentMediaElement:g})=>{g!==u&&(m||u==null||u.pause())});function p(g){u&&(d.emit("click",H({event:g,target:"AudioTagPlayIcon",audioInstance:u},l)),h.set({currentMediaElement:u}),d.emit("playStateChange",H({event:g,state:u.paused?"playing":"paused",mediaInstance:u},l)),u.paused?u.play():u.pause())}return i.$$set=g=>{"url"in g&&e(2,o=g.url),"enable"in g&&e(3,r=g.enable),"style"in g&&e(0,a=g.style),"hooksInfo"in g&&e(4,l=g.hooksInfo),"$$scope"in g&&e(7,s=g.$$scope)},i.$$.update=()=>{i.$$.dirty&4&&(o||c("duration",0)),i.$$.dirty&36&&(u==null||u.dispose(),e(5,u=new XC(o)),c("audioRef",u),setTimeout(()=>c("audioRef",u),200),A()),i.$$.dirty&40&&(r||u==null||u.pause()),i.$$.dirty&72&&c(r&&!m?"play":"pause")},[a,p,o,r,l,u,m,s,n]}let Ou=class extends le{constructor(t){super(),ae(this,t,qC,JC,oe,{url:2,enable:3,style:0,hooksInfo:4},ZC)}};function KC(i){ue(i,"svelte-srt2pi",".audio-icon__wrapper.svelte-srt2pi.svelte-srt2pi{display:inline-block}.audio-icon.svelte-srt2pi.svelte-srt2pi{display:flex;justify-content:center;align-items:center;position:relative;width:100%;height:100%;border-radius:50%;background-color:rgba(255, 255, 255, 0.8)}.audio-icon.svelte-srt2pi .sound-wave__container.svelte-srt2pi{position:absolute;pointer-events:none;width:60%;height:60%}.sound-wave.svelte-srt2pi.svelte-srt2pi{animation-duration:2s;animation-iteration-count:infinite;animation-play-state:paused;transition:opacity 0}.playing.svelte-srt2pi .sound-wave.svelte-srt2pi{animation-play-state:running}.playing.svelte-srt2pi .sound-wave-1.svelte-srt2pi{animation-name:svelte-srt2pi-sound_wave_1_animation}.playing.svelte-srt2pi .sound-wave-2.svelte-srt2pi{animation-name:svelte-srt2pi-sound_wave_2_animation}.playing.svelte-srt2pi .sound-wave-3.svelte-srt2pi{animation-name:svelte-srt2pi-sound_wave_3_animation}@keyframes svelte-srt2pi-sound_wave_1_animation{0%,10%{opacity:0}25%,100%{opacity:1}}@keyframes svelte-srt2pi-sound_wave_2_animation{0%,35%{opacity:0}50%,100%{opacity:1}}@keyframes svelte-srt2pi-sound_wave_3_animation{0%,60%{opacity:0}75%,100%{opacity:1}}")}function Vd(i){let t,e;return t=new Wt({props:{center:!0,blurRadius:12,spreadRadius:5}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function $C(i){let t,e,n,s,o,r=i[1]&&Vd();return{c(){t=x("div"),r&&r.c(),e=ee(),n=x("div"),s=x("div"),s.innerHTML='<svg width="100%" height="100%" viewBox="0 0 128 128"><g transform="rotate(-45 12 64) translate(12 64)" fill="black" stroke="black" fill-opacity="0.6" stroke-opacity="0.6"><path stroke="none" class="sound-wave sound-wave-1 svelte-srt2pi" d="M0,23 A23,23 0 0,0 23,0 L0,0"></path><path fill="none" stroke-width="15" class="sound-wave sound-wave-2 svelte-srt2pi" d="M0,46 A46,46 0 0,0 46,0"></path><path fill="none" stroke-width="15" class="sound-wave sound-wave-3 svelte-srt2pi" d="M0,80 A80,80 0 0,0 80,0"></path></g></svg>',w(s,"class","sound-wave__container svelte-srt2pi"),w(n,"class","audio-icon svelte-srt2pi"),K(n,"playing",i[0]),w(t,"class","audio-icon__wrapper svelte-srt2pi"),w(t,"style",i[2]),z(t,"width",i[5]),z(t,"height",i[5])},m(a,l){B(a,t,l),r&&r.m(t,null),D(t,e),D(t,n),D(n,s),i[7](s),i[8](t),o=!0},p(a,[l]){a[1]?r?l&2&&M(r,1):(r=Vd(),r.c(),M(r,1),r.m(t,e)):r&&(de(),j(r,1,1,()=>{r=null}),he()),(!o||l&1)&&K(n,"playing",a[0]),(!o||l&4)&&w(t,"style",a[2]);const c=l&4;(c||l&36)&&z(t,"width",a[5]),(c||l&36)&&z(t,"height",a[5])},i(a){o||(M(r),o=!0)},o(a){j(r),o=!1},d(a){a&&O(t),r&&r.d(),i[7](null),i[8](null)}}}function eI(i,t,e){let n,{playing:s}=t,{shadow:o=!1}=t,{style:r=null}=t,{width:a="100%"}=t,l,c;function d(u){Qe[u?"unshift":"push"](()=>{c=u,e(4,c)})}function h(u){Qe[u?"unshift":"push"](()=>{l=u,e(3,l)})}return i.$$set=u=>{"playing"in u&&e(0,s=u.playing),"shadow"in u&&e(1,o=u.shadow),"style"in u&&e(2,r=u.style),"width"in u&&e(6,a=u.width)},i.$$.update=()=>{i.$$.dirty&64&&e(5,n=typeof a=="number"?Nt(a):a)},[s,o,r,l,c,n,a,d,h]}class Bu extends le{constructor(t){super(),ae(this,t,eI,$C,oe,{playing:0,shadow:1,style:2,width:6},KC)}}function tI(i){ue(i,"svelte-1s6gk4a",".audio-tag.svelte-1s6gk4a{position:absolute;left:0;top:0;width:0;height:0;overflow:visible}.audio-icon__wrapper.svelte-1s6gk4a{position:relative;vertical-align:top;width:100%;height:100%}.content.svelte-1s6gk4a{width:-moz-max-content;width:max-content;height:3.375rem;padding:2.25rem 0.25rem 0 1rem;position:absolute;left:0;bottom:0.125rem;overflow:hidden;box-sizing:border-box;font-size:0;white-space:nowrap;font-weight:600}.wrapper.svelte-1s6gk4a{position:relative;width:100%;height:100%}.audio-icon.svelte-1s6gk4a{pointer-events:none;vertical-align:top;display:inline-block;width:1rem;height:1rem;margin-right:0.25rem;margin-top:0.0625rem}.audio.svelte-1s6gk4a{position:relative;width:100%;height:100%}")}function Rd(i){var g,b;let t,e,n,s,o,r,a,l,c,d,h,u,m,A;e=new Wt({props:{visible:i[6],left:i[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}});let p=i[6]&&Qd(i);return c=new wu({props:{visible:i[6],textUnfolded:i[1],content:i[5]}}),h=new Va({props:{unfolded:i[6],length:i[3],outDelay:i[4]+20*Math.min((b=(g=i[5])==null?void 0:g.length)!=null?b:10,15),useLinearColor:!0}}),{c(){t=x("div"),ie(e.$$.fragment),n=ee(),s=x("div"),o=x("div"),r=x("div"),p&&p.c(),a=ee(),l=x("div"),ie(c.$$.fragment),d=ee(),ie(h.$$.fragment),w(r,"class","audio-icon svelte-1s6gk4a"),z(l,"display","inline-block"),w(o,"class","wrapper svelte-1s6gk4a"),w(s,"class","content svelte-1s6gk4a"),w(t,"class","audio-tag svelte-1s6gk4a"),K(t,"unfolded",i[6])},m(y,I){B(y,t,I),te(e,t,null),D(t,n),D(t,s),D(s,o),D(o,r),p&&p.m(r,null),D(o,a),D(o,l),te(c,l,null),D(t,d),te(h,t,null),u=!0,m||(A=[be(l,"click",i[7]),$t(Pi.call(null,l)),be(l,"clientWidth",i[12])],m=!0)},p(y,I){var V,L;const k={};I&64&&(k.visible=y[6]),I&8&&(k.left=y[3]/2+"px"),e.$set(k),y[6]?p?(p.p(y,I),I&64&&M(p,1)):(p=Qd(y),p.c(),M(p,1),p.m(r,null)):p&&(de(),j(p,1,1,()=>{p=null}),he());const T={};I&64&&(T.visible=y[6]),I&2&&(T.textUnfolded=y[1]),I&32&&(T.content=y[5]),c.$set(T);const P={};I&64&&(P.unfolded=y[6]),I&8&&(P.length=y[3]),I&48&&(P.outDelay=y[4]+20*Math.min((L=(V=y[5])==null?void 0:V.length)!=null?L:10,15)),h.$set(P),(!u||I&64)&&K(t,"unfolded",y[6])},i(y){u||(M(e.$$.fragment,y),M(p),M(c.$$.fragment,y),M(h.$$.fragment,y),u=!0)},o(y){j(e.$$.fragment,y),j(p),j(c.$$.fragment,y),j(h.$$.fragment,y),u=!1},d(y){y&&O(t),ne(e),p&&p.d(),ne(c),ne(h),m=!1,Je(A)}}}function Qd(i){let t,e,n,s,o,r,a;return e=new Wt({props:{center:!0,blurRadius:15,spreadRadius:6}}),s=new Ou({props:{enable:i[6],url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[nI]},$$scope:{ctx:i}}}),s.$on("play",i[8]),s.$on("pause",i[9]),s.$on("error",i[10]),s.$on("audioRef",i[11]),{c(){t=x("div"),ie(e.$$.fragment),n=ee(),ie(s.$$.fragment),w(t,"class","audio svelte-1s6gk4a")},m(l,c){B(l,t,c),te(e,t,null),D(t,n),te(s,t,null),a=!0},p(l,c){i=l;const d={};c&64&&(d.enable=i[6]),c&1&&(d.url=i[0].data.audioUrl),c&1&&(d.hooksInfo={tag:i[0]}),c&8196&&(d.$$scope={dirty:c,ctx:i}),s.$set(d)},i(l){a||(M(e.$$.fragment,l),M(s.$$.fragment,l),l&&Ne(()=>{a&&(r&&r.end(1),o=On(t,tt,{duration:1e3,delay:0,easing:hi}),o.start())}),a=!0)},o(l){var c,d;j(e.$$.fragment,l),j(s.$$.fragment,l),o&&o.invalidate(),l&&(r=Ii(t,tt,{duration:1e3,delay:20*Math.min((d=(c=i[5])==null?void 0:c.length)!=null?d:10,15),easing:hi})),a=!1},d(l){l&&O(t),ne(e),ne(s),l&&r&&r.end()}}}function nI(i){let t,e,n;return e=new Bu({props:{playing:i[2]}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","audio-icon__wrapper svelte-1s6gk4a")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o&4&&(r.playing=s[2]),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function iI(i){let t,e,n=i[0].state&&Rd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?n?(n.p(s,o),o&1&&M(n,1)):(n=Rd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function sI(i,t,e){let n,s,o,{tag:r}=t,a=!1,l=!1,c;function d(){e(1,a=!a)}const h=()=>{e(2,l=!0)},u=()=>{e(2,l=!1)},m=()=>{e(2,l=!1)};function A(g){Ci.call(this,i,g)}const p=g=>{e(3,c=g.detail)};return i.$$set=g=>{"tag"in g&&e(0,r=g.tag)},i.$$.update=()=>{var g,b,y;i.$$.dirty&1&&e(6,n=!!((g=r.state)!=null&&g.unfolded)),i.$$.dirty&1&&e(5,s=(y=(b=r.data.title)!=null?b:r.data.text)!=null?y:""),i.$$.dirty&2&&e(4,o=a?450:0)},[r,a,l,c,o,s,n,d,h,u,m,A,p]}class oI extends le{constructor(t){super(),ae(this,t,sI,iI,oe,{tag:0},tI)}}function rI(i){ue(i,"svelte-58hfjf",".audio-tag__wrapper.svelte-58hfjf{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.audio-tag.svelte-58hfjf{position:relative;width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;padding:0.1875rem;padding-right:0.625rem;border-radius:624999.9375rem;border:0.03125rem solid rgba(255, 255, 255, 0.2)}.audio__inner.svelte-58hfjf{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.text.svelte-58hfjf{font-weight:bold;font-size:0.75rem;margin-left:0.25rem}.audio-icon__wrapper.svelte-58hfjf{position:relative;vertical-align:top;pointer-events:none;width:1.375rem;height:1.375rem}")}function Gd(i){let t,e,n,s;return n=new Ou({props:{style:"width: max-content; height: max-content;",enable:i[0].state.visible,url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[lI]},$$scope:{ctx:i}}}),n.$on("play",i[6]),n.$on("pause",i[7]),n.$on("error",i[8]),n.$on("timeupdate",i[9]),n.$on("duration",i[10]),n.$on("audioRef",i[11]),{c(){t=x("div"),e=x("div"),ie(n.$$.fragment),w(e,"class","audio-tag svelte-58hfjf"),z(e,"background-color",i[4].bgColor),z(e,"color",i[4].fontColor),w(t,"class","audio-tag__wrapper svelte-58hfjf")},m(o,r){B(o,t,r),D(t,e),te(n,e,null),s=!0},p(o,r){const a={};r&1&&(a.enable=o[0].state.visible),r&1&&(a.url=o[0].data.audioUrl),r&1&&(a.hooksInfo={tag:o[0]}),r&8232&&(a.$$scope={dirty:r,ctx:o}),n.$set(a),r&16&&z(e,"background-color",o[4].bgColor),r&16&&z(e,"color",o[4].fontColor)},i(o){s||(M(n.$$.fragment,o),s=!0)},o(o){j(n.$$.fragment,o),s=!1},d(o){o&&O(t),ne(n)}}}function aI(i){let t;return{c(){t=Me(i[5])},m(e,n){B(e,t,n)},p(e,n){n&32&&Oe(t,e[5])},d(e){e&&O(t)}}}function lI(i){let t,e,n,s,o,r,a;return n=new Bu({props:{playing:i[3]}}),r=new Ra({props:{maxWidth:72,$$slots:{default:[aI]},$$scope:{ctx:i}}}),{c(){t=x("div"),e=x("div"),ie(n.$$.fragment),s=ee(),o=x("div"),ie(r.$$.fragment),w(e,"class","audio-icon__wrapper svelte-58hfjf"),w(o,"class","text svelte-58hfjf"),w(t,"class","audio__inner svelte-58hfjf")},m(l,c){B(l,t,c),D(t,e),te(n,e,null),D(t,s),D(t,o),te(r,o,null),a=!0},p(l,c){const d={};c&8&&(d.playing=l[3]),n.$set(d);const h={};c&8224&&(h.$$scope={dirty:c,ctx:l}),r.$set(h)},i(l){a||(M(n.$$.fragment,l),M(r.$$.fragment,l),a=!0)},o(l){j(n.$$.fragment,l),j(r.$$.fragment,l),a=!1},d(l){l&&O(t),ne(n),ne(r)}}}function cI(i){let t,e,n=i[0].state&&Gd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?n?(n.p(s,o),o&1&&M(n,1)):(n=Gd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function dI(i,t,e){let n,s,{tag:o}=t;const r={light:{bgColor:"rgba(255, 255, 255, 0.3)",fontColor:"rgba(0, 0, 0, 0.6)"},dark:{bgColor:"rgba(0, 0, 0, 0.3)",fontColor:"white"}};let a=0,l=0,c=!1;const d=()=>{e(3,c=!0)},h=()=>{e(3,c=!1)},u=()=>{e(3,c=!1)},m=g=>{e(1,a=g.detail)},A=g=>{e(2,l=g.detail)};function p(g){Ci.call(this,i,g)}return i.$$set=g=>{"tag"in g&&e(0,o=g.tag)},i.$$.update=()=>{var g,b,y;i.$$.dirty&1&&e(5,n=(b=(g=o.data.title)!=null?g:o.data.text)!=null?b:""),i.$$.dirty&1&&e(4,s=(y=r[o.data.theme||"light"])!=null?y:r.light)},[o,a,l,c,s,n,d,h,u,m,A,p]}class hI extends le{constructor(t){super(),ae(this,t,dI,cI,oe,{tag:0},rI)}}function uI(i){let t,e;return t=new hI({props:{tag:i[0]}}),t.$on("audioRef",i[2]),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.tag=n[0]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function fI(i){let t,e;return t=new oI({props:{tag:i[0]}}),t.$on("audioRef",i[2]),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.tag=n[0]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function mI(i){let t,e,n,s;const o=[fI,uI],r=[];function a(l,c){return l[1]==="line"?0:l[1]==="plane"?1:-1}return~(t=a(i))&&(e=r[t]=o[t](i)),{c(){e&&e.c(),n=Pe()},m(l,c){~t&&r[t].m(l,c),B(l,n,c),s=!0},p(l,[c]){let d=t;t=a(l),t===d?~t&&r[t].p(l,c):(e&&(de(),j(r[d],1,1,()=>{r[d]=null}),he()),~t?(e=r[t],e?e.p(l,c):(e=r[t]=o[t](l),e.c()),M(e,1),e.m(n.parentNode,n)):e=null)},i(l){s||(M(e),s=!0)},o(l){j(e),s=!1},d(l){~t&&r[t].d(l),l&&O(n)}}}function gI(i,t,e){let n,{tag:s}=t,o;function r(a){o=a.detail}return s.play=()=>o.play(),s.pause=()=>o.pause(),i.$$set=a=>{"tag"in a&&e(0,s=a.tag)},i.$$.update=()=>{var a;i.$$.dirty&1&&e(1,n=(a=s.data.appearance)!=null?a:"line")},[s,n,r]}class pI extends le{constructor(t){super(),ae(this,t,gI,mI,oe,{tag:0})}}function AI(i){ue(i,"svelte-10cw0el",".media-wrapper.svelte-10cw0el{position:absolute;width:100%;height:100%}")}function Nd(i){var s;let t,e,n;return e=new zu({props:{mediaItemConfig:{canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(s=i[4])!=null?s:"withText",disableVideoIfHavePoster:!1,objectFit:i[2]},unfolded:i[6],mediaData:i[5],enableCarousel:i[1],autoplayConfig:i[3],tag:i[0],inDelay:500,duration:500}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","media-wrapper svelte-10cw0el")},m(o,r){B(o,t,r),te(e,t,null),n=!0},p(o,r){var l;const a={};r&20&&(a.mediaItemConfig={canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(l=o[4])!=null?l:"withText",disableVideoIfHavePoster:!1,objectFit:o[2]}),r&64&&(a.unfolded=o[6]),r&32&&(a.mediaData=o[5]),r&2&&(a.enableCarousel=o[1]),r&8&&(a.autoplayConfig=o[3]),r&1&&(a.tag=o[0]),e.$set(a)},i(o){n||(M(e.$$.fragment,o),n=!0)},o(o){j(e.$$.fragment,o),n=!1},d(o){o&&O(t),ne(e)}}}function vI(i){let t,e,n=i[0].state&&i[5]&&Nd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state&&s[5]?n?(n.p(s,o),o&33&&M(n,1)):(n=Nd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function bI(i,t,e){let n,s,o,r,a,l,{tag:c}=t;return i.$$set=d=>{"tag"in d&&e(0,c=d.tag)},i.$$.update=()=>{var d,h;i.$$.dirty&1&&e(6,n=c.state?c.state.unfolded:!1),i.$$.dirty&1&&e(5,s=c.data.mediaData),i.$$.dirty&1&&e(1,o=c.data.enableCarousel),i.$$.dirty&1&&e(4,r=c.data.playIcon),i.$$.dirty&3&&e(3,a=(d=c.data.autoplayConfig)!=null?d:{autoplay:o!=null?o:!0,autoplayVideo:!0}),i.$$.dirty&1&&e(2,l=(h=c.data.objectFit)!=null?h:(()=>c.data.adaptationMode==="stretch"?"fill":c.data.adaptationMode==="proportional"?"contain":void 0)())},[c,o,l,a,r,s,n]}class yI extends le{constructor(t){super(),ae(this,t,bI,vI,oe,{tag:0},AI)}}function Vu(i){return U(this,null,function*(){return new Promise((t,e)=>{if(!i){e(Error("url is empty"));return}const n=new Image;n.src=i,n.onload=()=>t({width:n.width,height:n.height}),n.onerror=e})})}function wI(i){return U(this,null,function*(){const{url:t,ratio:e=3}=i;i.ratio||console.warn("Tag icon ratio is not set, default is 3");const{width:n,height:s}=yield Vu(t);return Ae(H({},i),{width:n/e,height:s/e})})}function CI(i){return U(this,null,function*(){const{steps:t,url:e,ratio:n=3,fps:s=24}=i;if(!t)throw new Error("KeyframeIcon requires steps");const{width:o,height:r}=yield Vu(e),a=o/n,l=r/n,c=a/t,d=l,h=1/s*t+"s";return Ae(H({},i),{width:c,height:d,duration:h})})}function II(i){ue(i,"svelte-316sq3","@keyframes svelte-316sq3-sprites-animation{0%{background-position:0 0}100%{background-position:100% 0}}.icon-image.svelte-316sq3{display:block;width:auto}.icon-keyframe.svelte-316sq3{background-repeat:no-repeat;background-size:auto 100%;animation-direction:normal;animation-iteration-count:infinite;animation-name:svelte-316sq3-sprites-animation;animation-delay:0}")}function Hd(i){i[1]=i[19].width}function _d(i){i[1]=i[19].width,i[16]=i[19].height,i[17]=i[19].steps,i[18]=i[19].duration}function Wd(i){let t,e,n,s=i[0]&&Fd();function o(l,c){return l[8]?EI:PI}let r=o(i),a=r(i);return{c(){t=x("div"),s&&s.c(),e=ee(),a.c(),w(t,"class","icon"),z(t,"width",i[1])},m(l,c){B(l,t,c),s&&s.m(t,null),D(t,e),a.m(t,null),n=!0},p(l,c){l[0]?s?c&1&&M(s,1):(s=Fd(),s.c(),M(s,1),s.m(t,e)):s&&(de(),j(s,1,1,()=>{s=null}),he()),r===(r=o(l))&&a?a.p(l,c):(a.d(1),a=r(l),a&&(a.c(),a.m(t,null))),c&2&&z(t,"width",l[1])},i(l){n||(M(s),n=!0)},o(l){j(s),n=!1},d(l){l&&O(t),s&&s.d(),a.d()}}}function Fd(i){let t,e;return t=new Wt({props:{center:!0,blurRadius:24,spreadRadius:16}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function PI(i){let t,e,n={ctx:i,current:null,token:null,hasCatch:!1,pending:xI,then:MI,catch:kI,value:19};return eo(e=i[11](_e({url:i[7],ratio:i[5]})),n),{c(){t=Pe(),n.block.c()},m(s,o){B(s,t,o),n.block.m(s,n.anchor=o),n.mount=()=>t.parentNode,n.anchor=t},p(s,o){i=s,n.ctx=i,o&160&&e!==(e=i[11](_e({url:i[7],ratio:i[5]})))&&eo(e,n)||jh(n,i,o)},d(s){s&&O(t),n.block.d(s),n.token=null,n=null}}}function EI(i){let t,e,n={ctx:i,current:null,token:null,hasCatch:!1,pending:TI,then:SI,catch:DI,value:19};return eo(e=i[10](_e({url:i[7],steps:i[2],fps:i[6],ratio:i[5]})),n),{c(){t=Pe(),n.block.c()},m(s,o){B(s,t,o),n.block.m(s,n.anchor=o),n.mount=()=>t.parentNode,n.anchor=t},p(s,o){i=s,n.ctx=i,o&228&&e!==(e=i[10](_e({url:i[7],steps:i[2],fps:i[6],ratio:i[5]})))&&eo(e,n)||jh(n,i,o)},d(s){s&&O(t),n.block.d(s),n.token=null,n=null}}}function kI(i){return{c:J,m:J,p:J,d:J}}function MI(i){Hd(i);let t,e;return{c(){t=x("img"),w(t,"alt","tag-icon"),w(t,"class","icon-image svelte-316sq3"),Pt(t.src,e=i[7])||w(t,"src",e),z(t,"width",Nt(ii({originWidth:i[1],scale:i[4],wantedWidth:i[3]}).width))},m(n,s){B(n,t,s)},p(n,s){Hd(n),s&128&&!Pt(t.src,e=n[7])&&w(t,"src",e),s&184&&z(t,"width",Nt(ii({originWidth:n[1],scale:n[4],wantedWidth:n[3]}).width))},d(n){n&&O(t)}}}function xI(i){return{c:J,m:J,p:J,d:J}}function DI(i){return{c:J,m:J,p:J,d:J}}function SI(i){_d(i);let t,e=`url(${i[7]})`,n=`steps(${i[17]}, jump-none)`;return{c(){t=x("div"),w(t,"class","icon-keyframe svelte-316sq3"),z(t,"width",Nt(ii({originWidth:i[1],originHeight:i[16],scale:i[4],wantedWidth:i[3]}).width)),z(t,"height",Nt(ii({originWidth:i[1],originHeight:i[16],scale:i[4],wantedWidth:i[3]}).height)),z(t,"background-image",e),z(t,"animation-duration",i[18]),z(t,"animation-timing-function",n)},m(s,o){B(s,t,o)},p(s,o){_d(s),o&252&&z(t,"width",Nt(ii({originWidth:s[1],originHeight:s[16],scale:s[4],wantedWidth:s[3]}).width)),o&252&&z(t,"height",Nt(ii({originWidth:s[1],originHeight:s[16],scale:s[4],wantedWidth:s[3]}).height)),o&128&&e!==(e=`url(${s[7]})`)&&z(t,"background-image",e),o&228&&z(t,"animation-duration",s[18]),o&228&&n!==(n=`steps(${s[17]}, jump-none)`)&&z(t,"animation-timing-function",n)},d(s){s&&O(t)}}}function TI(i){return{c:J,m:J,p:J,d:J}}function LI(i){let t,e,n=i[9]&&Wd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[9]?n?(n.p(s,o),o&512&&M(n,1)):(n=Wd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function ii(i){const{originWidth:t,originHeight:e,scale:n=1,wantedWidth:s}=i,o=(s!=null?s:t)*n,r=typeof e=="number"?o*(e/t):void 0;return Ae(H({},i),{width:o,height:r})}function jI(i,t,e){let n,s,o,r,a,l,c,d,h,{width:u=null}=t,{icon:m=null}=t,{shadow:A=!1}=t;const p=yo();function g(I){return U(this,null,function*(){const k=yield CI(I);return p("iconLoaded",k),k})}function b(I){return U(this,null,function*(){if(typeof h=="number")return Ae(H({},I),{width:h});const k=yield wI(I);return p("iconLoaded",k),k})}function y(){d||p("iconLoaded")}return vt(()=>{y()}),i.$$set=I=>{"width"in I&&e(1,u=I.width),"icon"in I&&e(12,m=I.icon),"shadow"in I&&e(0,A=I.shadow)},i.$$.update=()=>{var I,k;i.$$.dirty&4096&&e(7,n=m==null?void 0:m.url),i.$$.dirty&4096&&e(2,s=(I=m==null?void 0:m.steps)!=null?I:1),i.$$.dirty&4096&&e(6,o=m==null?void 0:m.fps),i.$$.dirty&4096&&e(5,r=m==null?void 0:m.ratio),i.$$.dirty&4096&&e(4,a=(k=m==null?void 0:m.scale)!=null?k:1),i.$$.dirty&4096&&e(3,l=m==null?void 0:m.width),i.$$.dirty&252&&e(9,c=_e({url:n,steps:s,fps:o,ratio:r,scale:a,width:l})),i.$$.dirty&4&&e(8,d=s>1),i.$$.dirty&2&&(h=u)},y(),[A,u,s,l,a,r,o,n,d,c,g,b,m]}class Ru extends le{constructor(t){super(),ae(this,t,jI,LI,oe,{width:1,icon:12,shadow:0},II)}}function zI(i){ue(i,"svelte-e58ijk",".wrapper.svelte-e58ijk{font-weight:600;cursor:pointer;width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:auto}.text-wrapper.svelte-e58ijk{position:relative;display:flex;align-items:center;justify-content:center}.text.svelte-e58ijk{position:absolute;top:0;font-size:0.875rem;color:#ffffff;letter-spacing:0;text-align:center;max-width:8.75rem;width:-moz-max-content;width:max-content;line-height:1.125rem;text-shadow:0.125rem 0rem 0.5rem rgba(0, 0, 0, 0.15)}")}function Yd(i){let t,e,n,s,o,r;return e=new Wt({props:{outDelay:0,inDelay:0,center:!0,width:"80%",blurRadius:40,spreadRadius:16,opacity:.08}}),{c(){t=x("div"),ie(e.$$.fragment),n=ee(),s=x("div"),o=Me(i[1]),w(s,"class","text svelte-e58ijk"),w(t,"class","text-wrapper svelte-e58ijk")},m(a,l){B(a,t,l),te(e,t,null),D(t,n),D(t,s),D(s,o),r=!0},p(a,l){(!r||l&2)&&Oe(o,a[1])},i(a){r||(M(e.$$.fragment,a),r=!0)},o(a){j(e.$$.fragment,a),r=!1},d(a){a&&O(t),ne(e)}}}function OI(i){let t,e,n,s;e=new Ru({props:{icon:i[0],shadow:!0}}),e.$on("iconLoaded",i[4]);let o=i[1]&&i[2]&&Yd(i);return{c(){t=x("div"),ie(e.$$.fragment),n=ee(),o&&o.c(),w(t,"class","wrapper svelte-e58ijk")},m(r,a){B(r,t,a),te(e,t,null),D(t,n),o&&o.m(t,null),s=!0},p(r,[a]){const l={};a&1&&(l.icon=r[0]),e.$set(l),r[1]&&r[2]?o?(o.p(r,a),a&6&&M(o,1)):(o=Yd(r),o.c(),M(o,1),o.m(t,null)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){s||(M(e.$$.fragment,r),M(o),s=!0)},o(r){j(e.$$.fragment,r),j(o),s=!1},d(r){r&&O(t),ne(e),o&&o.d()}}}function BI(i,t,e){let n,s,o,{tag:r}=t;const a=()=>{e(2,n=!0)};return i.$$set=l=>{"tag"in l&&e(3,r=l.tag)},i.$$.update=()=>{var l,c,d;i.$$.dirty&8&&e(1,s=(l=r.data.title)!=null?l:r.data.text),i.$$.dirty&8&&e(0,o=(d=r.data.icon)!=null?d:(c=r.style)==null?void 0:c.point)},e(2,n=!1),[o,s,n,r,a]}class VI extends le{constructor(t){super(),ae(this,t,BI,OI,oe,{tag:3},zI)}}function RI(i){ue(i,"svelte-kzl2aj",".customElement__container.svelte-kzl2aj{position:relative}")}function QI(i){let t,e;return{c(){t=new Zs(!1),e=Pe(),t.a=e},m(n,s){t.m(i[2],n,s),B(n,e,s)},p:J,d(n){n&&O(e),n&&t.d()}}}function GI(i){let t,e=typeof i[2]=="string"&&QI(i);return{c(){t=x("div"),e&&e.c(),w(t,"class","customElement__container svelte-kzl2aj"),K(t,"unfolded",i[1])},m(n,s){B(n,t,s),e&&e.m(t,null),i[5](t)},p(n,[s]){typeof n[2]=="string"&&e.p(n,s),s&2&&K(t,"unfolded",n[1])},i:J,o:J,d(n){n&&O(t),e&&e.d(),i[5](null)}}}function NI(i,t,e){var d,h;let n,{tag:s}=t,{renderMap:o=new Map}=t,r,a=(h=s.element)!=null?h:(d=o.get(s.contentType))==null?void 0:d.renderer,l;vt(()=>{r&&(a instanceof Element?(r.appendChild(a),l=()=>{a instanceof Element&&a.remove()}):typeof a=="function"&&(l=a(r,s)))}),Lt(()=>{l==null||l()});function c(u){Qe[u?"unshift":"push"](()=>{r=u,e(0,r)})}return i.$$set=u=>{"tag"in u&&e(3,s=u.tag),"renderMap"in u&&e(4,o=u.renderMap)},i.$$.update=()=>{i.$$.dirty&8&&e(1,n=s.state.unfolded)},[r,n,a,s,o,c]}class HI extends le{constructor(t){super(),ae(this,t,NI,GI,oe,{tag:3,renderMap:4},RI)}}function _I(i){ue(i,"svelte-1r4fqvg",'@font-face{font-family:"TG-TYPE";font-style:normal;font-weight:400;src:local("TG-TYPE-Bold"), url(data:application/font-woff2;charset=utf-8;base64,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) format("woff2")}*{-webkit-tap-highlight-color:transparent}.content__container.svelte-1r4fqvg{position:relative;left:50%;top:50%;transform:translate(-50%, -50%);font-family:PingFangSC, Segoe UI, Rototo, sans-serif}.content__container.withAnimation.svelte-1r4fqvg{transition:opacity 0.3s linear}.content__container.unClickable.svelte-1r4fqvg{pointer-events:none !important}.content__container.unClickable.svelte-1r4fqvg *{pointer-events:none !important}.content__wrapper.svelte-1r4fqvg{pointer-events:none;width:100%;height:100%}.content__container.hide.svelte-1r4fqvg{opacity:0;pointer-events:none}.content__container.hide.svelte-1r4fqvg *{pointer-events:none !important}.content__container.disable.svelte-1r4fqvg{display:none}.content.svelte-1r4fqvg{position:relative;width:100%;height:100%;font-size:0.75rem;color:#fff}.content.svelte-1r4fqvg:not(.unfolded){pointer-events:none}.content.svelte-1r4fqvg:not(.unfolded) *{pointer-events:none !important}.content.unfolded.svelte-1r4fqvg{pointer-events:auto}')}function WI(i){let t,e;return{c(){t=x("div"),w(t,"data-info","tag content is keep folded"),w(t,"data-id",e=i[1].id)},m(n,s){B(n,t,s)},p(n,s){s&2&&e!==(e=n[1].id)&&w(t,"data-id",e)},i:J,o:J,d(n){n&&O(t)}}}function FI(i){let t,e,n,s,o,r,a,l,c,d;const h=[KI,qI,JI,ZI,XI,UI],u=[];function m(A,p){return A[1].contentType==="Text"?0:A[1].contentType==="ImageText"||A[1].contentType==="Image"||A[1].contentType==="Video"?1:A[1].contentType==="Audio"?2:A[1].contentType==="Marketing"?3:A[1].contentType==="Link"||A[1].contentType==="VRLink"||A[1].contentType==="PanoLink"||A[1].contentType==="Sticker"?4:A[1].contentType==="MediaPlane"||A[1].contentType==="MediaModel"?5:-1}return~(s=m(i))&&(o=u[s]=h[s](i)),{c(){var A;t=x("div"),e=x("div"),n=x("div"),o&&o.c(),w(n,"class","content svelte-1r4fqvg"),K(n,"unfolded",(A=i[1].state)==null?void 0:A.unfolded),w(e,"class","content__wrapper svelte-1r4fqvg"),w(t,"class",r=Re(rt("content__container",i[1].className))+" svelte-1r4fqvg"),w(t,"data-id",a=i[1].id),K(t,"disable",i[1].enabled===!1),K(t,"hide",i[5]),K(t,"withAnimation",i[0]),K(t,"unClickable",i[1].config.clickable===!1),z(t,"width",i[1].stickType==="Plane"||i[1].contentType==="MediaModel"?"100%":0),z(t,"height",i[1].stickType==="Plane"||i[1].contentType==="MediaModel"?"100%":0)},m(A,p){B(A,t,p),D(t,e),D(e,n),~s&&u[s].m(n,null),l=!0,c||(d=be(t,"click",Mh(i[15])),c=!0)},p(A,p){var b;let g=s;s=m(A),s===g?~s&&u[s].p(A,p):(o&&(de(),j(u[g],1,1,()=>{u[g]=null}),he()),~s?(o=u[s],o?o.p(A,p):(o=u[s]=h[s](A),o.c()),M(o,1),o.m(n,null)):o=null),(!l||p&2)&&K(n,"unfolded",(b=A[1].state)==null?void 0:b.unfolded),(!l||p&2&&r!==(r=Re(rt("content__container",A[1].className))+" svelte-1r4fqvg"))&&w(t,"class",r),(!l||p&2&&a!==(a=A[1].id))&&w(t,"data-id",a),(!l||p&2)&&K(t,"disable",A[1].enabled===!1),(!l||p&34)&&K(t,"hide",A[5]),(!l||p&3)&&K(t,"withAnimation",A[0]),(!l||p&2)&&K(t,"unClickable",A[1].config.clickable===!1),p&2&&z(t,"width",A[1].stickType==="Plane"||A[1].contentType==="MediaModel"?"100%":0),p&2&&z(t,"height",A[1].stickType==="Plane"||A[1].contentType==="MediaModel"?"100%":0)},i(A){l||(M(o),l=!0)},o(A){j(o),l=!1},d(A){A&&O(t),~s&&u[s].d(),c=!1,d()}}}function YI(i){let t,e,n,s,o,r,a;return e=new HI({props:{tag:_e(i[1]),renderMap:i[3]}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class",n=Re(rt("content__container",i[1].className))+" svelte-1r4fqvg"),w(t,"data-id",s=i[1].id),K(t,"custom-tag-disable",i[1].enabled===!1),K(t,"custom-tag-hide",i[5])},m(l,c){B(l,t,c),te(e,t,null),o=!0,r||(a=be(t,"click",i[14]),r=!0)},p(l,c){const d={};c&2&&(d.tag=_e(l[1])),c&8&&(d.renderMap=l[3]),e.$set(d),(!o||c&2&&n!==(n=Re(rt("content__container",l[1].className))+" svelte-1r4fqvg"))&&w(t,"class",n),(!o||c&2&&s!==(s=l[1].id))&&w(t,"data-id",s),(!o||c&2)&&K(t,"custom-tag-disable",l[1].enabled===!1),(!o||c&34)&&K(t,"custom-tag-hide",l[5])},i(l){o||(M(e.$$.fragment,l),o=!0)},o(l){j(e.$$.fragment,l),o=!1},d(l){l&&O(t),ne(e),r=!1,a()}}}function UI(i){let t,e;return t=new yI({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function XI(i){let t,e;return t=new VI({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function ZI(i){let t,e;return t=new UC({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function JI(i){let t,e;return t=new pI({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function qI(i){let t,e;return t=new _C({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function KI(i){let t,e;return t=new ly({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function $I(i){let t,e,n,s,o;const r=[YI,FI,WI],a=[];function l(c,d){return d&10&&(t=null),t==null&&(t=!!(c[1].element||c[3].has(c[1].contentType))),t?0:c[4]?1:2}return e=l(i,-1),n=a[e]=r[e](i),{c(){n.c(),s=Pe()},m(c,d){a[e].m(c,d),B(c,s,d),o=!0},p(c,[d]){let h=e;e=l(c,d),e===h?a[e].p(c,d):(de(),j(a[h],1,1,()=>{a[h]=null}),he(),n=a[e],n?n.p(c,d):(n=a[e]=r[e](c),n.c()),M(n,1),n.m(s.parentNode,s))},i(c){o||(M(n),o=!0)},o(c){j(n),o=!1},d(c){a[e].d(c),c&&O(s)}}}function eP(i,t,e){let n,s,o,r,a,l,{withAnimation:c=!1}=t,{tag:d}=t,{hooks:h}=t,{renderMap:u=new Map}=t,{state:m}=t,{mediaStore:A}=t,{temporaryState:p}=t;Wr("hooks",h),Wr("mediaStore",A);let g,b;function y(P){P?h.emit("exposure",{id:r,type:"start"}):h.emit("exposure",{id:r,type:"end"})}function I(P,V,L){var W,q;return!(!V.visible||!V.enabled||!L.visible||!((W=P.state)!=null&&W.visible)||((q=P.temporaryState)==null?void 0:q.visible)===!1||At(P)&&!P.mediaVisible)}const k=P=>h.emit("click",{event:P,target:"TagContent",tag:d}),T=P=>h.emit("click",{event:P,target:"TagContent",tag:d});return i.$$set=P=>{"withAnimation"in P&&e(0,c=P.withAnimation),"tag"in P&&e(1,d=P.tag),"hooks"in P&&e(2,h=P.hooks),"renderMap"in P&&e(3,u=P.renderMap),"state"in P&&e(6,m=P.state),"mediaStore"in P&&e(7,A=P.mediaStore),"temporaryState"in P&&e(8,p=P.temporaryState)},i.$$.update=()=>{var P,V,L,W,q,N,G,_,Q,F,Z;i.$$.dirty&2&&e(12,n=(P=d.state)==null?void 0:P.unfolded),i.$$.dirty&2&&e(11,s=(V=d.state)==null?void 0:V.visible),i.$$.dirty&322&&e(13,o=m.visible&&p.visible&&((L=d.state)==null?void 0:L.visible)),i.$$.dirty&2&&(r=d.id),i.$$.dirty&322&&e(5,a=!I(d,m,p)),i.$$.dirty&8192&&y(o),i.$$.dirty&7682&&d.hooks&&(n!==void 0&&n!==b&&(e(10,b=n),n?(q=(W=d.hooks).emit)==null||q.call(W,"unfolded"):(G=d==null?void 0:(N=d.hooks).emit)==null||G.call(N,"folded")),s!==void 0&&s!==g&&(e(9,g=s),s?(Q=(_=d.hooks).emit)==null||Q.call(_,"show"):(Z=(F=d.hooks).emit)==null||Z.call(F,"hide"))),i.$$.dirty&2&&e(4,l=(()=>!(typeof d.config.unfoldedConfig=="object"&&d.config.unfoldedConfig.keep==="folded"))())},[c,d,h,u,l,a,m,A,p,g,b,s,n,o,k,T]}let Qu=class extends le{constructor(t){super(),ae(this,t,eP,$I,oe,{withAnimation:0,tag:1,hooks:2,renderMap:3,state:6,mediaStore:7,temporaryState:8},_I)}};function tP(i){ue(i,"svelte-7aiuwz",'@charset "UTF-8";.tag-point-click-helper.svelte-7aiuwz.svelte-7aiuwz{position:absolute;pointer-events:auto;cursor:pointer;width:calc(100% + 0.75rem);height:calc(100% + 0.75rem);left:50%;top:50%;transform:translate(-50%, -50%)}.tag-point-wrapper.svelte-7aiuwz.svelte-7aiuwz{pointer-events:none;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.tag-folded-point.svelte-7aiuwz.svelte-7aiuwz,.tag-unfolded-point.svelte-7aiuwz.svelte-7aiuwz{transition:all 0.5s}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{display:flex;justify-content:center;align-items:center;position:absolute;width:100%;height:100%;border-radius:50%}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:0.3125rem;height:0.3125rem;border-radius:50%;background-color:white}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz:before{content:"";position:absolute;width:0.875rem;height:0.875rem;border-radius:50%;background-color:rgba(0, 0, 0, 0.2)}.tag-point-wrapper.folded.svelte-7aiuwz .tag-folded-point.svelte-7aiuwz{opacity:1;scale:1}.tag-point-wrapper.folded.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{opacity:0;scale:1}.tag-point-wrapper.unfolded.svelte-7aiuwz .tag-folded-point.svelte-7aiuwz{opacity:0;scale:0.2}.tag-point-wrapper.unfolded.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{opacity:1;scale:1}')}function nP(i){let t,e,n,s,o,r,a,l,c,d,h,u;return s=new Wt({props:{center:!0,blurRadius:15,spreadRadius:5,opacity:.3}}),c=new Ru({props:{icon:i[2],width:i[1]}}),c.$on("iconLoaded",i[7]),{c(){t=x("div"),e=x("div"),n=ee(),ie(s.$$.fragment),o=ee(),r=x("div"),a=ee(),l=x("div"),ie(c.$$.fragment),w(e,"class","tag-point-click-helper svelte-7aiuwz"),w(r,"class","tag-unfolded-point svelte-7aiuwz"),z(r,"transition-delay",(i[3]?i[5]:0)+"ms"),w(l,"class","tag-folded-point svelte-7aiuwz"),z(l,"transition-delay",(i[3]?i[5]:0)+"ms"),w(t,"class","tag-point-wrapper svelte-7aiuwz"),K(t,"unfolded",i[0]),K(t,"folded",i[3])},m(m,A){B(m,t,A),D(t,e),D(t,n),te(s,t,null),D(t,o),D(t,r),D(t,a),D(t,l),te(c,l,null),d=!0,h||(u=be(e,"click",i[4]),h=!0)},p(m,[A]){A&8&&z(r,"transition-delay",(m[3]?m[5]:0)+"ms");const p={};A&4&&(p.icon=m[2]),A&2&&(p.width=m[1]),c.$set(p),A&8&&z(l,"transition-delay",(m[3]?m[5]:0)+"ms"),(!d||A&1)&&K(t,"unfolded",m[0]),(!d||A&8)&&K(t,"folded",m[3])},i(m){d||(M(s.$$.fragment,m),M(c.$$.fragment,m),d=!0)},o(m){j(s.$$.fragment,m),j(c.$$.fragment,m),d=!1},d(m){m&&O(t),ne(s),ne(c),h=!1,u()}}}function iP(i,t,e){let n,s,o,r;const a=fn("hooks");let{tag:l}=t,c,d=!1;const h=()=>{c!==void 0&&clearTimeout(c),d=!0,c=setTimeout(()=>{d=!1},800)},u=p=>{d||a.emit("click",{event:p,target:"TagPoint",tag:l})},m=(()=>l.contentType==="Text"&&l.data.appearance==="plane"?500:800)();function A(p){Ci.call(this,i,p)}return i.$$set=p=>{"tag"in p&&e(6,l=p.tag)},i.$$.update=()=>{var p,g,b,y;i.$$.dirty&64&&e(0,n=(p=l.state)==null?void 0:p.unfolded),i.$$.dirty&1&&e(3,s=!n),i.$$.dirty&64&&e(2,o=(b=(g=l.style)==null?void 0:g.point)!=null&&b.url?(y=l.style)==null?void 0:y.point:{url:$0}),i.$$.dirty&64&&e(1,r=(()=>{var T,P,V,L;const I=(P=(T=l.style)==null?void 0:T.point)==null?void 0:P.width;if(typeof I=="number")return I;const k=(L=(V=l.style)==null?void 0:V.point)==null?void 0:L.size;if(typeof k=="number")return k;if(k==="S")return 18;if(k==="M")return 20;if(k==="L")return 24;if(k==="XL")return 28})())},h(),[n,r,o,s,u,m,l,A]}class sP extends le{constructor(t){super(),ae(this,t,iP,nP,oe,{tag:6},tP)}}function oP(i){ue(i,"svelte-pzwdws",".tag.withAnimation.svelte-pzwdws{transition:opacity 0.3s linear}.tag.hide.svelte-pzwdws{opacity:0;pointer-events:none}.tag.hide.svelte-pzwdws *{pointer-events:none !important}.tag.unClickable.svelte-pzwdws{pointer-events:none !important}.tag.unClickable.svelte-pzwdws *{pointer-events:none !important}.tag.disable.svelte-pzwdws{display:none}.wrapper.svelte-pzwdws{position:absolute;width:0rem;height:0rem;overflow:visible;pointer-events:auto}")}function rP(i){let t;return{c(){t=x("div"),w(t,"data-info","tag point is disable")},m(e,n){B(e,t,n)},p:J,i:J,o:J,d(e){e&&O(t)}}}function aP(i){let t,e;return t=new sP({props:{tag:i[1]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=n[1]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function lP(i){let t;return{c(){t=x("div"),w(t,"data-info","tag content is disable")},m(e,n){B(e,t,n)},p:J,i:J,o:J,d(e){e&&O(t)}}}function cP(i){let t,e;return t=new Qu({props:{mediaStore:i[2],withAnimation:i[0],tag:_e(i[1]),hooks:i[15],state:i[4],temporaryState:i[5],renderMap:i[3]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&4&&(o.mediaStore=n[2]),s&1&&(o.withAnimation=n[0]),s&2&&(o.tag=_e(n[1])),s&16&&(o.state=n[4]),s&32&&(o.temporaryState=n[5]),s&8&&(o.renderMap=n[3]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function dP(i){let t,e,n,s,o,r,a,l,c,d;const h=[aP,rP],u=[];function m(b,y){return b[14]?0:1}n=m(i),s=u[n]=h[n](i);const A=[cP,lP],p=[];function g(b,y){return b[13]?0:1}return r=g(i),a=p[r]=A[r](i),{c(){t=x("div"),e=x("div"),s.c(),o=ee(),a.c(),w(e,"class",l=Re(rt("wrapper",i[1].className?`${i[1].className}__wrapper`:void 0))+" svelte-pzwdws"),w(e,"data-tag-unfolded",i[6]),w(e,"data-tag-id",i[12]),w(e,"data-content-type",c=i[1].contentType),z(e,"left",i[9]),z(e,"top",i[8]),w(t,"class","tag svelte-pzwdws"),w(t,"data-tag-id",i[12]),K(t,"unClickable",i[1].config.clickable===!1),K(t,"disable",i[11]),K(t,"hide",i[10]),K(t,"withAnimation",i[0]),z(t,"z-index",i[7])},m(b,y){B(b,t,y),D(t,e),u[n].m(e,null),D(e,o),p[r].m(e,null),d=!0},p(b,[y]){let I=n;n=m(b),n===I?u[n].p(b,y):(de(),j(u[I],1,1,()=>{u[I]=null}),he(),s=u[n],s?s.p(b,y):(s=u[n]=h[n](b),s.c()),M(s,1),s.m(e,o));let k=r;r=g(b),r===k?p[r].p(b,y):(de(),j(p[k],1,1,()=>{p[k]=null}),he(),a=p[r],a?a.p(b,y):(a=p[r]=A[r](b),a.c()),M(a,1),a.m(e,null)),(!d||y&2&&l!==(l=Re(rt("wrapper",b[1].className?`${b[1].className}__wrapper`:void 0))+" svelte-pzwdws"))&&w(e,"class",l),(!d||y&64)&&w(e,"data-tag-unfolded",b[6]),(!d||y&4096)&&w(e,"data-tag-id",b[12]),(!d||y&2&&c!==(c=b[1].contentType))&&w(e,"data-content-type",c),y&512&&z(e,"left",b[9]),y&256&&z(e,"top",b[8]),(!d||y&4096)&&w(t,"data-tag-id",b[12]),(!d||y&2)&&K(t,"unClickable",b[1].config.clickable===!1),(!d||y&2048)&&K(t,"disable",b[11]),(!d||y&1024)&&K(t,"hide",b[10]),(!d||y&1)&&K(t,"withAnimation",b[0]),y&128&&z(t,"z-index",b[7])},i(b){d||(M(s),M(a),d=!0)},o(b){j(s),j(a),d=!1},d(b){b&&O(t),u[n].d(),p[r].d()}}}function hP(i,t,e){let n,s,o,r,a,l,c,d,h,{withAnimation:u=!1}=t,{tag:m}=t,{mediaStore:A}=t,{renderMap:p=new Map}=t,{state:g}=t,{temporaryState:b}=t;const y=fn("hooks");return i.$$set=I=>{"withAnimation"in I&&e(0,u=I.withAnimation),"tag"in I&&e(1,m=I.tag),"mediaStore"in I&&e(2,A=I.mediaStore),"renderMap"in I&&e(3,p=I.renderMap),"state"in I&&e(4,g=I.state),"temporaryState"in I&&e(5,b=I.temporaryState)},i.$$.update=()=>{var I,k,T,P,V,L,W,q;i.$$.dirty&2&&e(14,n=(()=>{var N,G;return!(((G=(N=m.style)==null?void 0:N.point)==null?void 0:G.enabled)===!1||m.contentType==="Sticker"||m.contentType==="Link"||m.contentType==="VRLink"||m.contentType==="PanoLink"||m.contentType==="Audio"&&m.data.appearance==="plane")})()),i.$$.dirty&2&&e(13,s=(()=>m.stickType==="2DPoint")()),i.$$.dirty&2&&e(12,o=m.id),i.$$.dirty&2&&e(11,r=!((I=m.screenPosition)!=null&&I.leftPercent)||!((k=m.screenPosition)!=null&&k.topPercent)||m.enabled===!1||!m.state),i.$$.dirty&2&&e(10,a=!((T=m.state)!=null&&T.visible)||((P=m.temporaryState)==null?void 0:P.visible)===!1),i.$$.dirty&2&&e(6,l=(V=m.state)==null?void 0:V.unfolded),i.$$.dirty&2&&e(9,c=((L=m.screenPosition)==null?void 0:L.leftPercent)+"%"),i.$$.dirty&2&&e(8,d=((W=m.screenPosition)==null?void 0:W.topPercent)+"%"),i.$$.dirty&66&&e(7,h=((q=m.zIndex)!=null?q:0)+(l?1e4:0))},[u,m,A,p,g,b,l,h,d,c,a,r,o,s,n,y]}class uP extends le{constructor(t){super(),ae(this,t,hP,dP,oe,{withAnimation:0,tag:1,mediaStore:2,renderMap:3,state:4,temporaryState:5},oP)}}function fP(i){ue(i,"svelte-uq11d5",".tag--container.svelte-uq11d5{box-sizing:border-box;position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;opacity:1;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform:translate3d(0, 0, 0)}.withAnimation.svelte-uq11d5{transition:opacity 0.3s linear}.tag--container.hide.svelte-uq11d5{opacity:0;pointer-events:none}.tag--container.hide.svelte-uq11d5 *{pointer-events:none !important}")}function Ud(i,t,e){const n=i.slice();return n[7]=t[e],n}function Xd(i){let t,e=[],n=new Map,s,o=i[1];const r=a=>a[7].id;for(let a=0;a<o.length;a+=1){let l=Ud(i,o,a),c=r(l);n.set(c,e[a]=Zd(c,l))}return{c(){t=x("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","tag--container svelte-uq11d5"),K(t,"hide",!i[4].visible||!i[5].visible),K(t,"withAnimation",i[0])},m(a,l){B(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,l){l&63&&(o=a[1],de(),e=jt(e,l,r,1,a,o,n,t,vn,Zd,null,Ud),he()),(!s||l&48)&&K(t,"hide",!a[4].visible||!a[5].visible),(!s||l&1)&&K(t,"withAnimation",a[0])},i(a){if(!s){for(let l=0;l<o.length;l+=1)M(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)j(e[l]);s=!1},d(a){a&&O(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function Zd(i,t){let e,n,s;return n=new uP({props:{state:t[4],temporaryState:t[5],withAnimation:t[0],tag:t[7],mediaStore:t[2],renderMap:t[3]}}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(o,r){B(o,e,r),te(n,o,r),s=!0},p(o,r){t=o;const a={};r&16&&(a.state=t[4]),r&32&&(a.temporaryState=t[5]),r&1&&(a.withAnimation=t[0]),r&2&&(a.tag=t[7]),r&4&&(a.mediaStore=t[2]),r&8&&(a.renderMap=t[3]),n.$set(a)},i(o){s||(M(n.$$.fragment,o),s=!0)},o(o){j(n.$$.fragment,o),s=!1},d(o){o&&O(e),ne(n,o)}}}function mP(i){let t,e,n=i[4].enabled&&Xd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[4].enabled?n?(n.p(s,o),o&16&&M(n,1)):(n=Xd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function gP(i,t,e){let{withAnimation:n=!1}=t,{tags:s=[]}=t,{hooks:o}=t,{mediaStore:r}=t,{renderMap:a}=t,{state:l}=t,{temporaryState:c}=t;return Wr("hooks",o),i.$$set=d=>{"withAnimation"in d&&e(0,n=d.withAnimation),"tags"in d&&e(1,s=d.tags),"hooks"in d&&e(6,o=d.hooks),"mediaStore"in d&&e(2,r=d.mediaStore),"renderMap"in d&&e(3,a=d.renderMap),"state"in d&&e(4,l=d.state),"temporaryState"in d&&e(5,c=d.temporaryState)},[n,s,r,a,l,c,o]}class pP extends le{constructor(t){super(),ae(this,t,gP,mP,oe,{withAnimation:0,tags:1,hooks:6,mediaStore:2,renderMap:3,state:4,temporaryState:5},fP)}}const AP=new rf.GLTFLoader;function vP(i){return new Promise((t,e)=>{function n(o){t(o)}function s(o){e(o)}AP.load(i,n,void 0,s)})}const bP=new Map,yP=new Map;class wP extends I1{constructor(e){super(e);f(this,"group",new R.Group);f(this,"renderMap",new Map);f(this,"imagePlaneGroup",new R.Group);f(this,"gltfObjectGroup",new R.Group);f(this,"enabledModelTagSet",new Set);f(this,"temporaryState",{visible:!0});f(this,"TagContainerSvelte");f(this,"loadModel",e=>U(this,null,function*(){var a;const n=e.data.modelUrl;if(!n)return;const s=vP(n).then(l=>{var h,u,m,A,p;const c=Object.assign(l.scene,{customID:e.id,isTagModel:!0,removeEventListener:this.addObjectClickHandler(e,l.scene,g=>{this.hooks.emit("click",{target:"TagModel",tag:e,event:g})})});return c.visible=this.getCurrentVisibleState(e),new R.Matrix4().fromArray(e.matrix).decompose(c.position,c.quaternion,c.scale),c.updateWorldMatrix(!0,!0),c.visible=this.getVisibleByFiveMode(e),(m=(u=(h=this.config)==null?void 0:h.globalConfig)==null?void 0:u.modelConfig)!=null&&m.autoLookAtEnabled&&((p=(A=e.config)==null?void 0:A.modelConfig)!=null&&p.autoLookAtEnabled)&&c.lookAt(this.five.camera.position.clone().setY(c.position.y)),c});e.model={promise:s};const o=yield s;if(((a=e.model)==null?void 0:a.promise)!==s||!this.tags.includes(e))return;e.model.object=o;const r=this.gltfObjectGroup.children.find(l=>l.customID===e.id);if(r&&(this.gltfObjectGroup.remove(r),r.removeEventListener()),this.updateRender3DDomTag(),At(e)){if(this.getRenderType(e)==="Mesh"&&!e.mediaPlane){const l=e.data.mediaPosition.map(St);e.mediaPlane=new Vc(e.data.mediaData[0].url,e.data.mediaPosition.map(St),{objectFit:e.data.objectFit});const c=new R.Vector3().addVectors(l[0],l[2]).divideScalar(2);e.mediaPlane.position.copy(c),o.add(e.mediaPlane)}this.getRenderType(e)!=="Mesh"&&(o.updateTagCss3DObjectMatrix=()=>this.updateTagCss3DObjectMatrix(e,o),o.updateTagCss3DObjectMatrix())}return this.gltfObjectGroup.add(o),o}));this.group.name="PanoTagPluginModelGroup",this.gltfObjectGroup.name="PanoTagPluginGLTFObjectGroup",this.imagePlaneGroup.name="ImagePlaneGroup",this.group.add(this.gltfObjectGroup),this.group.add(this.imagePlaneGroup)}registerRenderer(e,n){this.renderMap.set(e,{renderer:n})}clearTags(){this.tags.forEach(e=>{var n,s;(s=(n=e.mediaPlane)==null?void 0:n.parent)==null||s.remove(e.mediaPlane)}),this.tags=[],this.enabledModelTagSet.clear(),this.clearCache(),this.disposeAllCSS3DContainer(),this.updateRenderAllTags()}updateRenderAllTags(){this.enabledModelTagSet.clear(),this.tags.forEach(e=>e.stickType==="Model"&&this.enabledModelTagSet.add(e.id)),this.updateRenderPointTag(),this.updateRender3DDomTag(),this.updateRenderModelTag(),this.updateRenderImagePlane()}updateRenderImagePlane(){this.sort(this.filterImagePlane).forEach(n=>{var l,c,d,h,u;const s=n.data.mediaData[0];if(!s)return;const{url:o,type:r}=s;if(!o||(n.mediaPlane&&(n.mediaPlane.visible=(c=(l=n.state)==null?void 0:l.visible)!=null?c:!0,n.mediaPlane.visible||n.mediaPlane instanceof ia&&((d=n.data.autoplayConfig)!=null&&d.autoplayVideo||n.mediaPlane.pause())),((h=n.mediaPlane)==null?void 0:h.src)===o))return;const a=n.position.map(St);if(n.mediaPlane&&n.mediaPlane.removeFromParent(),r==="Image")n.mediaPlane=new Vc(o,a,{objectFit:n.data.objectFit}),n.config.clickable!==!1&&this.domEvents.addAutoBindEventListener(n.mediaPlane,"click",m=>{this.hooks.emit("click",{tag:n,target:"TagContent",event:m.origDomEvent})});else if(r==="Video"){const m=new ia(o,a,{videoCoverSrc:s.videoCoverUrl,playButton:n.data.playIcon,paused:!((u=n.data.autoplayConfig)!=null&&u.autoplayVideo),objectFit:n.data.objectFit,videoTextureMap:bP,ImageTextureMap:yP});m.onVideoReady=p=>{p.addEventListener("play",()=>this.mediaStore.set({currentMediaElement:m.videoInstance}))},m.initialDomEvents(this.domEvents);const A=p=>(this.five.on("renderFrame",p),()=>this.five.off("renderFrame",p));m.initialRenderHooks(A),n.mediaPlane=m}this.imagePlaneGroup.add(n.mediaPlane)})}updateRender3DDomTag(){this.sort([...this.filterCSS3DTag]).forEach(n=>{var s,o,r,a;if(n.tag3DContentSvelte){const{svelteApp:l,css3DInstance:c,initialNormal:d,currentNormal:h}=n.tag3DContentSvelte;if(l.$set({tag:n,hooks:this.hooks,state:this.state,temporaryState:this.temporaryState}),!d.equals(h)){const u=new R.Quaternion().setFromUnitVectors(d,h);c.css3DObject.setRotationFromQuaternion(u)}return}else{if(At(n)&&!((s=n.model)!=null&&s.object)||((o=n.state)==null?void 0:o.visible)===!1||!this.state.visible||!this.state.enabled)return;if(this.css3DRenderPlugin||(this.css3DRenderPlugin=ua(this.five)),n.stickType==="3DPoint"&&!n.normal)return console.error("updateRenderPlaneTag: 三维点标签缺少法向量!");const l=this.getPositions(n);if(!l)return;const c=this.getTagNormal(n);if(!c)return;const h=(r=this.getTagConfig(n).tag3DConfig)!=null?r:{};if(this.getRenderType(n)==="BehindDom"){h.mode="behind",h.container=document.createElement("div");const A="black";h.container.style.backgroundColor=A,h.container.style.border=`3px solid ${A}`,this.css3DRenderPlugin.hooks.on("render",()=>{var p;if(u.css3DObject.opacityMesh){const g=this.addObjectClickHandler(n,u.css3DObject.opacityMesh,b=>{this.hooks.emit("click",{event:b,target:"TagContent",tag:n})});(p=this.store.css3DRenderDisposer.get(n.id))==null||p.push(g)}})}const u=this.css3DRenderPlugin.create3DDomContainer(l,h);if(!u)return;this.store.css3DRenderDisposer.set(n.id,[u.dispose]);const m=new Qu({target:u.container,props:{tag:n,hooks:this.hooks,state:this.state,mediaStore:this.mediaStore,temporaryState:this.temporaryState}});n.tag3DContentSvelte={svelteApp:m,domContainer:u,css3DInstance:u,initialNormal:c,currentNormal:c,dispose:()=>{m.$destroy(),u.dispose()}},At(n)&&((a=n.model)!=null&&a.object)&&this.updateTagCss3DObjectMatrix(n,n.model.object)}}),this.clearUnusedPanelTag()}updateRenderModelTag(){const e=o=>!this.enabledModelTagSet.has(o.customID),n=this.gltfObjectGroup.children.filter(e);n.forEach(o=>o.removeEventListener()),this.gltfObjectGroup.remove(...n),this.tags.filter(o=>o.stickType==="Model").forEach(o=>{var r;(r=o.model)==null||r.promise.then(a=>{a.visible=this.getCurrentVisibleState(o)})}),this.five.needsRender=!0}updateTagModelVisible(){this.tags.forEach(e=>{var n;e.mediaPlane&&(e.mediaPlane.visible=this.getCurrentVisibleState(e)),(n=e.model)!=null&&n.object&&(e.model.object.visible=this.getCurrentVisibleState(e))})}updateTagCss3DObjectMatrix(e,n){var p,g,b;const s=(g=(p=e.config.tag3DConfig)==null?void 0:p.ratio)!=null?g:.00216,o=(b=e.tag3DContentSvelte)==null?void 0:b.css3DInstance.css3DObject;if(!o)return;const r=At(e)?e.data.mediaPosition:e.position;if(!r||r.length!==4||!Array.isArray(r[0])||!Array.isArray(r[2]))return;n.updateWorldMatrix(!1,!1);const a=n.matrixWorld,l=new R.Vector3().fromArray(r[0]),c=new R.Vector3().fromArray(r[2]),d=nn(l,c).add(new R.Vector3(0,0,5e-4)),h=new R.Matrix4().setPosition(d),u=new R.Matrix4().makeScale(s,s,s),m=new R.Matrix4().multiply(a).multiply(h).multiply(u);m.decompose(o.position,o.quaternion,o.scale);const A=o.opacityMesh;A&&m.decompose(A.position,A.quaternion,A.scale)}addMediaModelTag(e){return U(this,null,function*(){const n=e.filter(s1).map(s=>this.loadModel(s));yield Promise.all(n),this.setModelMedialVisible(),this.updateRenderAllTags()})}updateRenderPointTag(){var n;const e=this.filterPointTag;if(this.setTagZIndex(e),this.setPointTagPosition(),this.TagContainerSvelte)this.TagContainerSvelte.$set({tags:e,state:this.state,temporaryState:this.temporaryState});else{const s=(n=this.five.getElement())==null?void 0:n.parentElement;if(!s)return console.error("updateRenderPlaneTag: tag2DContainer not found");this.TagContainerSvelte=new pP({target:s,props:{hooks:this.hooks,tags:e,state:this.state,temporaryState:this.temporaryState,mediaStore:this.mediaStore,renderMap:this.renderMap}})}}updateTagContainerVisible(){var e;(e=this.TagContainerSvelte)==null||e.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation}),this.filterCSS3DTag.forEach(n=>{var s,o,r,a,l;(a=(o=(s=n.tag3DContentSvelte)==null?void 0:s.css3DInstance)==null?void 0:o.css3DObject)==null||a.setVisible((this.state.visible&&((r=n.state)==null?void 0:r.visible))!==!1),(l=n.tag3DContentSvelte)==null||l.svelteApp.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation})})}disposeAllCSS3DContainer(){for(const[,e]of this.store.css3DRenderDisposer)e==null||e.forEach(n=>n==null?void 0:n());this.store.css3DRenderDisposer=new Map}clearUnusedPanelTag(){this.filter2DPointTag.forEach(e=>{var n;(n=e.tag3DContentSvelte)==null||n.css3DInstance.dispose(),e.tag3DContentSvelte=void 0});for(const[e,n]of this.store.css3DRenderDisposer){const s=this.getTagById(e);(!s||s.stickType==="2DPoint")&&(n==null||n.forEach(o=>o==null?void 0:o()),this.store.css3DRenderDisposer.delete(e))}}}const Gu="Dnalogel-PanoTagPlugin",CP=i=>`${Gu}--${i}`;class fo extends wP{constructor(e,n){super(e);f(this,"state",{enabled:!0,visible:!0});f(this,"params");f(this,"debug");f(this,"changeTagModel",(e,n)=>U(this,null,function*(){e.data=Xe({},e.data,n),yield this.loadModel(e),this.updateRenderAllTags()}));f(this,"handleFiveInitAnimationEnded",()=>{const e=this.five.getCurrentState().mode;this.tags.forEach(n=>{At(n)&&e==="Panorama"&&this.changeTagMode(n,"front"),n.state.visible=this.getVisible(n)}),this.updateRenderAllTags()});f(this,"handleFiveModelShownFloorChange",()=>{this.tags.forEach(e=>{var s,o;const n=this.getTagConfig(e).visibleConfig;typeof n=="object"&&((s=n.visibleFiveMode)!=null&&s.includes("Floorplan")||(o=n.visibleFiveMode)!=null&&o.includes("Mapview"))&&(e.state.visible=this.getVisibleByFiveMode(e))}),this.updateRenderAllTags()});this.params=Xe({},{debug:!1,config:this.config},H({},n)),this.debug=this.params.debug,this.config=this.params.config,u1(1,{namespace:Ba.PlayAudio});try{const s=window;Array.isArray(s.__PANOTAGPLUGIN_DEBUG_LIST__)||(s.__PANOTAGPLUGIN_DEBUG_LIST__=[]),s.__PANOTAGPLUGIN_DEBUG_LIST__.push(this),s.__PANOTAGPLUGIN_DEBUG__=this}catch(s){}}load(e,n){return U(this,null,function*(){var o,r;this.clearTags(),console.debug(Gu," load:",{data:JSON.parse(JSON.stringify(e))}),this.config=Xe({},this.config,{globalConfig:(o=e.globalConfig)!=null?o:{},contentTypeConfig:(r=e.contentTypeConfig)!=null?r:{}});const s=yield this.addTag(e.tagList,n);if(this.debug)try{$b(this.five,this.tags)}catch(a){console.error(a)}return s})}addTag(e,n){return U(this,null,function*(){const o=(Array.isArray(e)?e:[e]).map(r=>{var d,h;const a=this.getTagConfig(r),l=JSON.parse(JSON.stringify(r.data));return Ae(H({},r),{enabled:(d=r.enabled)!=null?d:!0,id:(h=r.id)!=null?h:at(),data:Xe(r.data,a.initialData,l),state:H({visible:void 0,unfolded:!this.can("fold",r)},a.initialState),hooks:new Te.Subscribe,initialConfig:r.config,config:a,unfold:()=>this.changeUnfoldedById(r.id,!0),fold:()=>this.changeUnfoldedById(r.id,!1),enable:()=>this.changeEnabledById(r.id,!0),disable:()=>this.changeEnabledById(r.id,!1),destroy:()=>this.destroyTagById(r.id),changeData:u=>this.changeDataById(r.id,u)})}).filter(r=>r.position);return o.forEach(d1),this.tags.push(...o),r1(this.five).then(()=>U(this,null,function*(){var r,a,l;this.store.eventListenerDisposer&&((a=(r=this.store).eventListenerDisposer)==null||a.call(r)),this.state.enabled&&this.handleEnable(),this.addResizeListener(),this.clearUnusedPanelTag(),this.setVisibleAndUnfolded({withAnimation:(l=n==null?void 0:n.withAnimation)!=null?l:!0}).then(()=>this.updateRenderAllTags()),this.updateRenderAllTags(),yield this.addMediaModelTag(o)}))})}changeConfig(e,n=!0){n?this.config=Xe({},this.config,e):this.config=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}changeGlobalConfig(e,n=!0){n?this.config.globalConfig=Xe({},this.config.globalConfig,e):this.config.globalConfig=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}changeContentTypeConfig(e,n,s=!0){this.config.contentTypeConfig||(this.config.contentTypeConfig={}),s?this.config.contentTypeConfig[e]=Xe({},this.config.contentTypeConfig[e],n):this.config.contentTypeConfig[e]=n,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}show(e){return U(this,null,function*(){if(this.checkDisposed())return;const{userAction:n=!0,withAnimation:s=!1}=e!=null?e:{};this.setState({visible:!0},{userAction:n,visibleWithAnimation:s}),this.hooks.emit("show",{userAction:n,withAnimation:s})})}hide(e){return U(this,null,function*(){if(this.checkDisposed())return;const{userAction:n=!0,withAnimation:s=!1}=e!=null?e:{};this.setState({visible:!1},{userAction:n,visibleWithAnimation:s}),this.hooks.emit("hide",{userAction:n,withAnimation:s})})}enable(e){if(this.checkDisposed())return;const{userAction:n=!0}=e!=null?e:{};this.setState({enabled:!0},{userAction:n}),this.hooks.emit("enable",{userAction:n})}disable(e){if(this.checkDisposed())return;const{userAction:n=!0}=e!=null?e:{};this.setState({enabled:!1},{userAction:n}),this.hooks.emit("disable",{userAction:n})}setState(e,n){if(this.checkDisposed())return;const{userAction:s=!0,visibleWithAnimation:o=!1}=n,r=H({},this.state);this.state=Object.assign(this.state,e),this.store.visibleWithAnimation=o,r.visible!==this.state.visible&&(e.visible?this.handleShow():this.handleHide()),r.enabled!==this.state.enabled&&(e.enabled?this.handleEnable():this.handleDisable()),this.hooks.emit("stateChange",{state:this.state,prevState:r,userAction:s})}dispose(){var e,n,s,o,r,a;this.pauseCurrentMedia(),this.disposeAllCSS3DContainer(),(e=this.TagContainerSvelte)==null||e.$destroy(),this.filterCSS3DTag.forEach(l=>{var c;return(c=l.tag3DContentSvelte)==null?void 0:c.svelteApp.$destroy()}),this.tags=[],(n=this.store.disposers)==null||n.forEach(l=>l==null?void 0:l()),this.store.disposers=[],(o=(s=this.store).eventListenerDisposer)==null||o.call(s),this.store.eventListenerDisposer=void 0,(a=(r=this.store).resizeObserverDisposer)==null||a.call(r),this.store.resizeObserverDisposer=void 0,this.store.resizeObserverDisposerAdding=!1,this.five.scene.remove(this.group),this.group.remove(...this.group.children),this.gltfObjectGroup.remove(...this.gltfObjectGroup.children),this.imagePlaneGroup.remove(...this.imagePlaneGroup.children),this.clearCache(),this.five.needsRender=!0,this.store.disposed=!0,this.hooks.emit("dispose")}changeUnfoldedById(e,n){var a;const s=this.getTagById(e);if(!s)return;const o=this.can("fold",s),r=this.can("unfold",s);if(o&&r){s.state.unfolded=n;const l=this.filterPointTag;(a=this.TagContainerSvelte)==null||a.$set({tags:l})}else console.warn(`tag ${e} cannot be ${n?"unfolded":"folded"}`)}changeEnabledById(e,n){const s=this.getTagById(e);s&&(s.enabled=n,this.updateRenderAllTags())}changeTagNormalById(e,n){const s=this.getTagById(e);s&&s.tag3DContentSvelte&&(s.tag3DContentSvelte.currentNormal=St(n))}changeDataById(e,n,s=!0){const o=this.getTagById(e);let r=!1;o&&(o.data&&(r=!0),s?o.data=Xe(o.data,n):o.data=H(H({},o.data),n),this.clearUnusedPanelTag(),this.updateRenderAllTags(),r&&o.hooks.emit("dataChanged",o.data))}changeStickTypeById(e,n,s=!0){this.changeTagById(e,n,s)}changeTagById(e,n,s=!0){const o=this.getTagById(e);let r=!1;n&&(n.data&&(r=!0),s?Xe(o,n):Object.assign(o,n),o!=null&&o.tag3DContentSvelte&&(n!=null&&n.normal)&&(o.tag3DContentSvelte.currentNormal=St(n.normal)),this.updateRenderAllTags(),this.clearUnusedPanelTag(),r&&o.hooks.emit("dataChanged",o.data))}destroyTagById(e){(Array.isArray(e)?e:[e]).forEach(s=>{const o=this.tags.findIndex(r=>r.id===s);o!==-1&&this.tags.splice(o,1)}),this.updateRenderAllTags()}setVisibleAndUnfolded(){return U(this,arguments,function*({withAnimation:e}={withAnimation:!1}){if(this.isPanorama)return this.setVisible(),e?new Promise(n=>{setTimeout(()=>{this.setUnfoldedByPanoIndex(),n()},10)}):(this.setUnfoldedByPanoIndex(),Promise.resolve())})}handleShow(){this.state.visible=!0,this.group.visible=!0,this.updateTagContainerVisible(),this.updateTagModelVisible(),this.five.needsRender=!0}handleHide(){this.pauseCurrentMedia(),this.state.visible=!1,this.group.visible=!1,this.updateTagContainerVisible(),this.updateTagModelVisible(),this.five.needsRender=!0}handleEnable(){this.state.enabled=!0,this.store.eventListenerDisposer=this.addEventListener(),this.five.scene.children.includes(this.group)||this.five.scene.add(this.group),this.group.traverse(e=>{var n;(n=e==null?void 0:e.updateTagCss3DObjectMatrix)==null||n.call(e)}),this.updateRenderAllTags(),this.five.needsRender=!0}handleDisable(){var e,n,s;this.pauseCurrentMedia(),this.state.enabled=!1,(n=(e=this.store).eventListenerDisposer)==null||n.call(e),this.five.scene.remove(this.group),(s=this.TagContainerSvelte)==null||s.$set({tags:[]}),this.filterCSS3DTag.forEach(o=>{var r;(r=o.tag3DContentSvelte)==null||r.dispose(),o.tag3DContentSvelte=void 0}),this.five.needsRender=!0}addEventListener(){const{five:e,hooks:n}=this,s=this.handleFiveWantsMoveToPano.bind(this),o=this.handleFiveModeChange.bind(this),r=this.handleFiveCameraUpdate.bind(this),a=this.handleFiveCameraUpdateDebounce(),l=this.handleFivePanoArrived.bind(this),c=this.loadVideoFirstFrame.bind(this),d=this.clickhandler.bind(this),h=this.five.currentMode;return h&&this.handleFiveModeChange(h),this.handleFivePanoArrived(),e.on("wantsMoveToPano",s),e.on("modeChange",o),e.on("initAnimationEnded",this.handleFiveInitAnimationEnded),e.on("modelShownFloorChange",this.handleFiveModelShownFloorChange),e.on("cameraUpdate",r),e.on("cameraUpdate",a),e.on("panoArrived",l),e.on("panoArrived",c),n.on("click",d),()=>{e.off("wantsMoveToPano",s),e.off("modeChange",o),e.off("initAnimationEnded",this.handleFiveInitAnimationEnded),e.off("modelShownFloorChange",this.handleFiveModelShownFloorChange),e.off("cameraUpdate",r),e.off("cameraUpdate",a),e.off("panoArrived",l),e.off("panoArrived",c),n.off("click",d),this.store.eventListenerDisposer=void 0}}addResizeListener(){if(!this.store.resizeObserverDisposer&&!this.store.resizeObserverDisposerAdding){const e=this.addResizeObserver();this.store.resizeObserverDisposerAdding=!0,setTimeout(()=>{this.store.resizeObserverDisposer=e,this.store.resizeObserverDisposerAdding=!1},200)}}addResizeObserver(){if(!this.store.disposed)return;const e=this.five.getElement(),n=()=>{this.state.enabled&&(this.show(),this.updateRenderAllTags())},s=()=>{this.state.enabled&&this.hide()},{observe:o,unobserve:r}=Bc(l1(()=>{this.store.resizeObserverDisposer&&s()},500),e),{observe:a,unobserve:l}=Bc(Oc(()=>n(),400),e);return o(),a(),()=>{r(),l()}}handleFiveModeChange(e){this.setModelMedialVisible(),this.tags.forEach(n=>{At(n)&&e!=="Panorama"&&this.changeTagMode(n,"behind"),n.state.visible=this.getVisible(n)}),this.updateRenderAllTags()}handleFiveWantsMoveToPano(){this.tags.forEach(e=>{const n=this.getTagConfig(e);typeof n.visibleConfig=="object"&&(n.visibleConfig.keep?e.temporaryState=Ae(H({},e.temporaryState),{visible:n.visibleConfig.keep==="visible"}):e.temporaryState=Ae(H({},e.temporaryState),{visible:!!n.visibleConfig.alwaysShowWhenMovePano}))}),this.updateTagContainerVisible()}clickhandler(e){if(e.target!=="TagPoint")return;if(!e.tag.state)return console.warn("Clickhandler: params.tag.state is undefined");const n=this.can("fold",e.tag),s=this.can("unfold",e.tag);n&&s&&(e.tag.state.unfolded=!e.tag.state.unfolded,e.tag.state.unfolded&&this.tags.forEach(o=>{o.id!==e.tag.id&&o.state&&this.can("fold",o)&&(o.state.unfolded=!1)}),this.updateRenderAllTags())}handleFiveCameraUpdateDebounce(){return Oc(()=>{this.setUnfoldedByCamera(),this.updateRenderAllTags()},100)}handleFiveCameraUpdate(){this.updateRenderPointTag()}handleFivePanoArrived(){return U(this,null,function*(){var e,n,s;this.setModelMedialVisible(),yield this.setVisibleAndUnfolded(),this.tags.forEach(o=>{o.temporaryState=Ae(H({},o.temporaryState),{visible:!0})}),(s=(n=(e=this.config)==null?void 0:e.globalConfig)==null?void 0:n.modelConfig)!=null&&s.autoLookAtEnabled&&this.tags.filter(i1).filter(o=>{var r,a;return(a=(r=o.config)==null?void 0:r.modelConfig)==null?void 0:a.autoLookAtEnabled}).forEach(o=>{var u;const r=new E.Mesh(new E.BoxGeometry,new E.MeshBasicMaterial),a=(u=o.model)==null?void 0:u.object;if(!a)return;r.position.copy(a.position),r.quaternion.copy(a.quaternion);const l=this.five.camera.position;r.lookAt(l.clone().setY(r.position.y));const c=a.quaternion.clone(),d=r.quaternion.clone(),h=po();h.onUpdate(({progress:m})=>{a.quaternion.copy(c.clone().slerp(d,m))}),h.play()}),this.store.visibleWithAnimation=!0,this.updateTagContainerVisible(),this.updateRenderAllTags()})}setUnfoldedByCamera(){let e=!1;this.tags.forEach(n=>{const s=this.getUnfoldedByCamera(n);n.state&&s!==void 0&&(s===!0&&(e=!0),n.state.unfolded=s)}),e&&this.tags.forEach(n=>{const s=this.getTagConfig(n).unfoldedConfig;typeof s=="object"&&(s.autoUnfold||s.keep)||n.state&&(n.state.unfolded=!1)})}changeTagMode(e,n){var s,o,r,a,l,c;((s=this.getTagConfig(e))==null?void 0:s.renderType)!=="Mesh"&&((a=(r=(o=e.tag3DContentSvelte)==null?void 0:o.css3DInstance)==null?void 0:r.css3DObject)==null?void 0:a.mode)!==n&&((l=e.config)!=null&&l.tag3DConfig?e.config.tag3DConfig.mode=n:e.config?e.config.tag3DConfig={mode:n}:e.config={tag3DConfig:{mode:n}},(c=this.store.css3DRenderDisposer.get(e.id))==null||c.forEach(d=>d==null?void 0:d()),e.tag3DContentSvelte=void 0)}}var Nu=(i=>(i.PointTag="PointTag",i.PlaneTag="PlaneTag",i))(Nu||{}),Hu=(i=>(i.Audio="Audio",i.Text="Text",i.ImageText="ImageText",i.Image="Image",i.Video="Video",i.Link="Link",i.Sticker="Sticker",i.VRLink="VRLink",i.PanoLink="PanoLink",i.Marketing="Marketing",i.MediaPlane="MediaPlane",i.MediaModel="MediaModel",i.Model="Model",i.Custom="Custom",i.Unknown="Unknown",i))(Hu||{}),_u=(i=>(i.Two="2D",i.Three="3D",i))(_u||{});const IP=(i,t)=>new fo(i,t);function PP(i){ue(i,"svelte-4qjwer",".guide-line__tag.svelte-4qjwer.svelte-4qjwer{position:relative}.text-with-distance.svelte-4qjwer.svelte-4qjwer{display:flex;flex-direction:column;position:relative;padding:0.125rem 0.25rem;border-radius:0.125rem;background:linear-gradient(to top, rgba(147, 147, 147, 0.3), rgba(74, 74, 74, 0.3));box-shadow:0 0.125rem 0.5rem 0 rgba(0, 0, 0, 0.2)}.text-with-distance.svelte-4qjwer .border.svelte-4qjwer{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;padding:0.0625rem;border-radius:0.25rem;background:linear-gradient(to right, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.2));-webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:xor;transform:scale(0.5)}.distance-and-name.svelte-4qjwer.svelte-4qjwer{display:flex;gap:0.1875rem}.distance.svelte-4qjwer.svelte-4qjwer{white-space:nowrap;font-size:0.625rem;line-height:0.875rem;color:#66afff}.name.svelte-4qjwer.svelte-4qjwer{opacity:0.6;font-size:0.625rem;line-height:0.875rem;white-space:nowrap;color:#ffffff}.line-name.svelte-4qjwer.svelte-4qjwer{color:#fff;white-space:nowrap;font-size:0.625rem;line-height:0.875rem}.guide-line__tag-point.svelte-4qjwer.svelte-4qjwer{position:absolute;left:50%;bottom:0.0625rem;width:0.4375rem;height:0.125rem;transform:translateX(-50%);background:#fff;border-radius:50%;opacity:0.5}.guide-line__tag-line.svelte-4qjwer.svelte-4qjwer{position:absolute;left:50%;bottom:0.0625rem;width:0.0625rem;height:1.875rem;transform:translateX(-50%);background:linear-gradient(to top, #fff, rgba(255, 255, 255, 0))}.guide-line__tag-content.svelte-4qjwer.svelte-4qjwer{position:absolute;left:-0.9375rem;bottom:1.9375rem;display:flex}.guide-line__tag-icon.svelte-4qjwer.svelte-4qjwer{width:1.875rem;height:1.875rem;background-size:100%}.guide-line__tag-text.svelte-4qjwer.svelte-4qjwer{box-sizing:content-box;height:0.875rem;width:-moz-max-content;width:max-content;margin-top:0.3125rem;transform:translateX(-0.1875rem);white-space:nowrap;font-size:0.625rem;line-height:0.875rem;border:solid transparent;border-width:0.125rem 0.5rem 0.125rem 0.375rem;border-image-slice:6 25 6 18 fill;color:#fff}")}function Jd(i){let t,e;return{c(){t=x("div"),e=Me(i[0]),w(t,"class","guide-line__tag-text svelte-4qjwer"),z(t,"border-image-source",`url(${i[6]})`)},m(n,s){B(n,t,s),D(t,e)},p(n,s){s&1&&Oe(e,n[0])},d(n){n&&O(t)}}}function qd(i){let t,e,n,s,o=i[5]("全程")+"",r,a,l=i[5]("米")+"",c,d,h,u,m,A,p=i[4]&&Kd(i);return{c(){t=x("div"),p&&p.c(),e=ee(),n=x("div"),s=x("span"),r=Me(o),a=Me(i[2]),c=Me(l),d=ee(),h=x("span"),u=Me(i[0]),m=ee(),A=x("div"),w(s,"class","distance svelte-4qjwer"),w(h,"class","name svelte-4qjwer"),w(n,"class","distance-and-name svelte-4qjwer"),w(A,"class","border svelte-4qjwer"),w(t,"class","text-with-distance svelte-4qjwer")},m(g,b){B(g,t,b),p&&p.m(t,null),D(t,e),D(t,n),D(n,s),D(s,r),D(s,a),D(s,c),D(n,d),D(n,h),D(h,u),D(t,m),D(t,A)},p(g,b){g[4]?p?p.p(g,b):(p=Kd(g),p.c(),p.m(t,e)):p&&(p.d(1),p=null),b&32&&o!==(o=g[5]("全程")+"")&&Oe(r,o),b&4&&Oe(a,g[2]),b&32&&l!==(l=g[5]("米")+"")&&Oe(c,l),b&1&&Oe(u,g[0])},d(g){g&&O(t),p&&p.d()}}}function Kd(i){let t,e;return{c(){t=x("span"),e=Me(i[4]),w(t,"class","line-name svelte-4qjwer")},m(n,s){B(n,t,s),D(t,e)},p(n,s){s&16&&Oe(e,n[4])},d(n){n&&O(t)}}}function EP(i){let t,e,n,s,o,r,a,l,c,d=i[0]&&!i[2]&&Jd(i),h=i[2]&&qd(i);return{c(){t=x("div"),e=x("div"),n=ee(),s=x("div"),o=ee(),r=x("div"),a=x("div"),l=ee(),d&&d.c(),c=ee(),h&&h.c(),w(e,"class","guide-line__tag-point svelte-4qjwer"),w(s,"class","guide-line__tag-line svelte-4qjwer"),w(a,"class","guide-line__tag-icon svelte-4qjwer"),z(a,"background-image",`url(${i[1]})`),w(r,"class","guide-line__tag-content svelte-4qjwer"),w(t,"class","guide-line__tag svelte-4qjwer"),z(t,"opacity",i[3])},m(u,m){B(u,t,m),D(t,e),D(t,n),D(t,s),D(t,o),D(t,r),D(r,a),D(r,l),d&&d.m(r,null),D(r,c),h&&h.m(r,null)},p(u,[m]){m&2&&z(a,"background-image",`url(${u[1]})`),u[0]&&!u[2]?d?d.p(u,m):(d=Jd(u),d.c(),d.m(r,c)):d&&(d.d(1),d=null),u[2]?h?h.p(u,m):(h=qd(u),h.c(),h.m(r,null)):h&&(h.d(1),h=null),m&8&&z(t,"opacity",u[3])},i:J,o:J,d(u){u&&O(t),d&&d.d(),h&&h.d()}}}function kP(i,t,e){let{text:n=""}=t,{icon_url:s=""}=t,{distance:o=0}=t,{opacity:r=1}=t,{name:a=""}=t,{i18n:l=d=>d}=t;const c="data:image/png;base64,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";return i.$$set=d=>{"text"in d&&e(0,n=d.text),"icon_url"in d&&e(1,s=d.icon_url),"distance"in d&&e(2,o=d.distance),"opacity"in d&&e(3,r=d.opacity),"name"in d&&e(4,a=d.name),"i18n"in d&&e(5,l=d.i18n)},[n,s,o,r,a,l,c]}class MP extends le{constructor(t){super(),ae(this,t,kP,EP,oe,{text:0,icon_url:1,distance:2,opacity:3,name:4,i18n:5},PP)}}function xP(i){return i.length===0?[]:i.filter((t,e)=>t!==i[e-1])}const DP=`
|
|
585
|
+
width var(--sc-dot-size-animation-time) ease;cursor:pointer;-webkit-tap-highlight-color:transparent;height:var(--sc-dot-size);width:var(--sc-dot-size)}.sc-carousel-dot__dot.svelte-1mgyhhn:hover{opacity:0.9}.sc-carousel-dot__dot_active.svelte-1mgyhhn{opacity:0.7;height:var(--sc-active-dot-size);width:var(--sc-active-dot-size)}`)}function my(i){let t,e,n;return{c(){t=x("button"),w(t,"class","sc-carousel-button sc-carousel-dot__dot svelte-1mgyhhn"),K(t,"sc-carousel-dot__dot_active",i[0])},m(s,o){B(s,t,o),e||(n=be(t,"click",i[1]),e=!0)},p(s,[o]){o&1&&K(t,"sc-carousel-dot__dot_active",s[0])},i:J,o:J,d(s){s&&O(t),e=!1,n()}}}function gy(i,t,e){let{active:n=!1}=t;function s(o){Ci.call(this,i,o)}return i.$$set=o=>{"active"in o&&e(0,n=o.active)},[n,s]}class py extends le{constructor(t){super(),ae(this,t,gy,my,oe,{active:0},fy)}}function Ay(i){ue(i,"svelte-670fde",".sc-carousel-dots__container.svelte-670fde{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;padding:0 30px}.sc-carousel-dots__dot-container.svelte-670fde{height:calc(var(--sc-dot-size) + 14px);width:calc(var(--sc-dot-size) + 10px);display:flex;align-items:center;justify-content:center}")}function Kc(i,t,e){const n=i.slice();return n[5]=t[e],n[7]=e,n}function $c(i,t){let e,n,s,o;function r(){return t[3](t[7])}return n=new py({props:{active:t[1]===t[7]}}),n.$on("click",r),{key:i,first:null,c(){e=x("div"),ie(n.$$.fragment),s=ee(),w(e,"class","sc-carousel-dots__dot-container svelte-670fde"),this.first=e},m(a,l){B(a,e,l),te(n,e,null),D(e,s),o=!0},p(a,l){t=a;const c={};l&3&&(c.active=t[1]===t[7]),n.$set(c)},i(a){o||(M(n.$$.fragment,a),o=!0)},o(a){j(n.$$.fragment,a),o=!1},d(a){a&&O(e),ne(n)}}}function vy(i){let t,e=[],n=new Map,s,o=Array(i[0]);const r=a=>a[7];for(let a=0;a<o.length;a+=1){let l=Kc(i,o,a),c=r(l);n.set(c,e[a]=$c(c,l))}return{c(){t=x("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","sc-carousel-dots__container svelte-670fde")},m(a,l){B(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,[l]){l&7&&(o=Array(a[0]),de(),e=jt(e,l,r,1,a,o,n,t,vn,$c,null,Kc),he())},i(a){if(!s){for(let l=0;l<o.length;l+=1)M(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)j(e[l]);s=!1},d(a){a&&O(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function by(i,t,e){const n=yo();let{pagesCount:s=1}=t,{currentPageIndex:o=0}=t;function r(l){n("pageChange",l)}const a=l=>r(l);return i.$$set=l=>{"pagesCount"in l&&e(0,s=l.pagesCount),"currentPageIndex"in l&&e(1,o=l.currentPageIndex)},[s,o,r,a]}class yy extends le{constructor(t){super(),ae(this,t,by,vy,oe,{pagesCount:0,currentPageIndex:1},Ay)}}const gi="prev",pn="next";function wy(i){ue(i,"svelte-1bftafx",":root{--sc-arrow-size:2px}.sc-carousel-arrow__circle.svelte-1bftafx{width:20px;height:20px;border-radius:50%;background-color:var(--sc-color-rgb-light-50p);display:flex;align-items:center;justify-content:center;transition:opacity 100ms ease;cursor:pointer;-webkit-tap-highlight-color:transparent}.sc-carousel-arrow__circle.svelte-1bftafx:hover{opacity:0.9}.sc-carousel-arrow__arrow.svelte-1bftafx{border:solid var(--sc-color-hex-dark);border-width:0 var(--sc-arrow-size) var(--sc-arrow-size) 0;padding:var(--sc-arrow-size);position:relative}.sc-carousel-arrow__arrow-next.svelte-1bftafx{transform:rotate(-45deg);left:calc(var(--sc-arrow-size) / -2)}.sc-carousel-arrow__arrow-prev.svelte-1bftafx{transform:rotate(135deg);right:calc(var(--sc-arrow-size) / -2)}.sc-carousel-arrow__circle_disabled.svelte-1bftafx,.sc-carousel-arrow__circle_disabled.svelte-1bftafx:hover{opacity:0.5}")}function Cy(i){let t,e,n,s;return{c(){t=x("button"),e=x("i"),w(e,"class","sc-carousel-arrow__arrow svelte-1bftafx"),K(e,"sc-carousel-arrow__arrow-next",i[0]===pn),K(e,"sc-carousel-arrow__arrow-prev",i[0]===gi),w(t,"class","sc-carousel-button sc-carousel-arrow__circle svelte-1bftafx"),K(t,"sc-carousel-arrow__circle_disabled",i[1])},m(o,r){B(o,t,r),D(t,e),n||(s=be(t,"click",i[2]),n=!0)},p(o,[r]){r&1&&K(e,"sc-carousel-arrow__arrow-next",o[0]===pn),r&1&&K(e,"sc-carousel-arrow__arrow-prev",o[0]===gi),r&2&&K(t,"sc-carousel-arrow__circle_disabled",o[1])},i:J,o:J,d(o){o&&O(t),n=!1,s()}}}function Iy(i,t,e){let{direction:n=pn}=t,{disabled:s=!1}=t;function o(r){Ci.call(this,i,r)}return i.$$set=r=>{"direction"in r&&e(0,n=r.direction),"disabled"in r&&e(1,s=r.disabled)},[n,s,o]}class Cu extends le{constructor(t){super(),ae(this,t,Iy,Cy,oe,{direction:0,disabled:1},wy)}}function Py(i){ue(i,"svelte-i7yfid",".sc-carousel-progress__indicator.svelte-i7yfid{height:100%;background-color:var(--sc-color-hex-dark-50p)}")}function Ey(i){let t;return{c(){t=x("div"),w(t,"class","sc-carousel-progress__indicator svelte-i7yfid"),z(t,"width",i[0]+"%")},m(e,n){B(e,t,n)},p(e,[n]){n&1&&z(t,"width",e[0]+"%")},i:J,o:J,d(e){e&&O(t)}}}const ed=100;function ky(i,t,e){let n,{value:s=0}=t;return i.$$set=o=>{"value"in o&&e(1,s=o.value)},i.$$.update=()=>{i.$$.dirty&2&&e(0,n=Math.min(Math.max(s*ed,0),ed))},[n,s]}class My extends le{constructor(t){super(),ae(this,t,ky,Ey,oe,{value:1},Py)}}function xy(i,t){i.addEventListener("mousedown",t),i.addEventListener("touchstart",t,{passive:!0})}function Dy(i,t){i.removeEventListener("mousedown",t),i.removeEventListener("touchstart",t)}function Sy(i,t){i.addEventListener("mouseup",t),i.addEventListener("touchend",t)}function td(i,t){i.removeEventListener("mouseup",t),i.removeEventListener("touchend",t)}function Ty(i,t){i.addEventListener("mousemove",t),i.addEventListener("touchmove",t)}function nd(i,t){i.removeEventListener("mousemove",t),i.removeEventListener("touchmove",t)}function Qa(i){return function(t,e){i.dispatchEvent(new CustomEvent(t,{detail:e}))}}const Ly=110,jy=9,zy=111,Oy=20;function Lr(i){if("TouchEvent"in window&&i instanceof TouchEvent){const t=i.touches[0];return{x:t?t.clientX:0,y:t?t.clientY:0}}return{x:i.clientX,y:i.clientY}}function By(i,{thresholdProvider:t}){const e=Qa(i);let n,s,o=0,r,a=!1;function l(){return Date.now()-r>=zy&&Math.abs(o)>=Oy}function c(u){r=Date.now(),o=0,a=!0;const m=Lr(u);n=m.x,s=m.y,e("swipeStart",{x:n,y:s}),Ty(window,d),Sy(window,h)}function d(u){if(!a)return;const m=Lr(u),A=m.x-n,p=m.y-s;n=m.x,s=m.y,e("swipeMove",{x:n,y:s,dx:A,dy:p}),A!==0&&Math.sign(A)!==Math.sign(o)&&(o=0),o+=A,Math.abs(o)>t()&&(e("swipeThresholdReached",{direction:o>0?gi:pn}),td(window,h),nd(window,d))}function h(u){if(td(window,h),nd(window,d),a=!1,!l()){e("swipeFailed");return}const m=Lr(u);e("swipeEnd",{x:m.x,y:m.y})}return xy(i,c),{destroy(){Dy(i,c)}}}function Vy(i,t){i.addEventListener("mouseenter",t)}function Ry(i,t){i.removeEventListener("mouseenter",t)}function Qy(i,t){i.addEventListener("mouseleave",t)}function id(i,t){i.removeEventListener("mouseleave",t)}function Gy(i){const t=Qa(i);function e(){Qy(i,n),t("hovered",{value:!0})}function n(){t("hovered",{value:!1}),id(i,n)}return Vy(i,e),{destroy(){Ry(i,e),id(i,n)}}}const Ny=(i,t)=>{const e=t.x-i.x,n=t.y-i.y;return Math.sqrt(e*e+n*n)};function ri(i,t,e){return Math.max(i,Math.min(t,e))}function Hy(i,t){i.addEventListener("touchstart",t,{passive:!0})}function _y(i,t){i.removeEventListener("touchstart",t)}function Wy(i,t){i.addEventListener("touchend",t)}function sd(i,t){i.removeEventListener("touchend",t)}function Fy(i){const t=Qa(i);let e=0,n={x:0,y:0};function s({tapEndedAt:a,tapEndedPos:l}){const c=a-e,d=Ny(n,l);return c<=Ly&&d<=jy}function o(a){e=Date.now();const l=a.touches[0];n={x:l.clientX,y:l.clientY},Wy(i,r)}function r(a){sd(i,r);const l=a.changedTouches[0];s({tapEndedAt:Date.now(),tapEndedPos:{x:l.clientX,y:l.clientY}})&&t("tapped")}return Hy(i,o),{destroy(){_y(i,o),sd(i,r)}}}function Yy({currentParticleIndex:i,particlesCount:t,clonesCountHead:e,clonesCountTotal:n,particlesToScroll:s}){return i===t-e?0:i===0?Iu({particlesCountWithoutClones:t-n,particlesToScroll:s})-1:Math.floor((i-e)/s)}function Uy({currentParticleIndex:i,particlesToScroll:t}){return Math.ceil(i/t)}function Xy({currentParticleIndex:i,particlesCount:t,clonesCountHead:e,clonesCountTotal:n,infinite:s,particlesToScroll:o}){return s?Yy({currentParticleIndex:i,particlesCount:t,clonesCountHead:e,clonesCountTotal:n,particlesToScroll:o}):Uy({currentParticleIndex:i,particlesToScroll:o})}function Iu({particlesCountWithoutClones:i,particlesToScroll:t}){return Math.ceil(i/t)}function Zy({particlesCountWithoutClones:i,particlesToScroll:t,particlesToShow:e}){const n=Pu({particlesCountWithoutClones:i,particlesToScroll:t,particlesToShow:e});return Math.ceil(i/t)-n}function Jy({infinite:i,particlesCountWithoutClones:t,particlesToScroll:e,particlesToShow:n}){return i?Iu({particlesCountWithoutClones:t,particlesToScroll:e}):Zy({particlesCountWithoutClones:t,particlesToScroll:e,particlesToShow:n})}function qy({pageIndex:i,clonesCountHead:t,clonesCountTail:e,particlesToScroll:n,particlesCount:s}){return ri(0,Math.min(t+i*n,s-e),s-1)}function Ky({pageIndex:i,particlesToScroll:t,particlesCount:e,particlesToShow:n}){return ri(0,Math.min(i*t,e-n),e-1)}function jr({infinite:i,pageIndex:t,clonesCountHead:e,clonesCountTail:n,particlesToScroll:s,particlesCount:o,particlesToShow:r}){return i?qy({pageIndex:t,clonesCountHead:e,clonesCountTail:n,particlesToScroll:s,particlesCount:o}):Ky({pageIndex:t,particlesToScroll:s,particlesCount:o,particlesToShow:r})}function $y({particlesContainerChildren:i,particleWidth:t}){for(let e=0;e<i.length;e++)i[e].style.minWidth=`${t}px`,i[e].style.maxWidth=`${t}px`}function Pu({particlesToScroll:i,particlesToShow:t,particlesCountWithoutClones:e}){const n=i-t;let s=t;for(;;){const o=e-s-n;if(o<t)return Math.max(o,0);s+=t+n}}function ew(i){return new ResizeObserver(t=>{i({width:t[0].contentRect.width})})}function tw({clonesCountHead:i,clonesCountTail:t,particlesContainerChildren:e}){const n=[];for(let r=0;r<t;r++)n.push(e[r].cloneNode(!0));const s=[],o=e.length;for(let r=o-1;r>o-1-i;r--)s.push(e[r].cloneNode(!0));return{clonesToAppend:n,clonesToPrepend:s}}function nw({particlesContainer:i,clonesToAppend:t,clonesToPrepend:e}){for(let n=0;n<t.length;n++)i.append(t[n]);for(let n=0;n<e.length;n++)i.prepend(e[n])}function iw({infinite:i,particlesToShow:t,partialPageSize:e}){const n=i?{head:Math.ceil(e||t),tail:Math.ceil(t)}:{head:0,tail:0};return Ae(H({},n),{total:n.head+n.tail})}const Ki=(i,t,e)=>{if(i&&i.hasOwnProperty(t))return i[t];if(e===void 0)throw new Error(`Required arg "${t}" was not provided`);return e},sa=i=>t=>{i[t]&&i[t]()};var sw="Expected a function",Eu="__lodash_hash_undefined__",ku=1/0,ow="[object Function]",rw="[object GeneratorFunction]",aw="[object Symbol]",lw=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,cw=/^\w*$/,dw=/^\./,hw=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,uw=/[\\^$.*+?()[\]{}|]/g,fw=/\\(\\)?/g,mw=/^\[object .+?Constructor\]$/,gw=typeof It=="object"&&It&&It.Object===Object&&It,pw=typeof self=="object"&&self&&self.Object===Object&&self,Ga=gw||pw||Function("return this")();function Aw(i,t){return i==null?void 0:i[t]}function vw(i){var t=!1;if(i!=null&&typeof i.toString!="function")try{t=!!(i+"")}catch(e){}return t}var bw=Array.prototype,yw=Function.prototype,Mu=Object.prototype,zr=Ga["__core-js_shared__"],od=function(){var i=/[^.]+$/.exec(zr&&zr.keys&&zr.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}(),xu=yw.toString,Na=Mu.hasOwnProperty,Du=Mu.toString,ww=RegExp("^"+xu.call(Na).replace(uw,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),rd=Ga.Symbol,Cw=bw.splice,Iw=Su(Ga,"Map"),is=Su(Object,"create"),ad=rd?rd.prototype:void 0,ld=ad?ad.toString:void 0;function zn(i){var t=-1,e=i?i.length:0;for(this.clear();++t<e;){var n=i[t];this.set(n[0],n[1])}}function Pw(){this.__data__=is?is(null):{}}function Ew(i){return this.has(i)&&delete this.__data__[i]}function kw(i){var t=this.__data__;if(is){var e=t[i];return e===Eu?void 0:e}return Na.call(t,i)?t[i]:void 0}function Mw(i){var t=this.__data__;return is?t[i]!==void 0:Na.call(t,i)}function xw(i,t){var e=this.__data__;return e[i]=is&&t===void 0?Eu:t,this}zn.prototype.clear=Pw;zn.prototype.delete=Ew;zn.prototype.get=kw;zn.prototype.has=Mw;zn.prototype.set=xw;function Ei(i){var t=-1,e=i?i.length:0;for(this.clear();++t<e;){var n=i[t];this.set(n[0],n[1])}}function Dw(){this.__data__=[]}function Sw(i){var t=this.__data__,e=xo(t,i);if(e<0)return!1;var n=t.length-1;return e==n?t.pop():Cw.call(t,e,1),!0}function Tw(i){var t=this.__data__,e=xo(t,i);return e<0?void 0:t[e][1]}function Lw(i){return xo(this.__data__,i)>-1}function jw(i,t){var e=this.__data__,n=xo(e,i);return n<0?e.push([i,t]):e[n][1]=t,this}Ei.prototype.clear=Dw;Ei.prototype.delete=Sw;Ei.prototype.get=Tw;Ei.prototype.has=Lw;Ei.prototype.set=jw;function Vn(i){var t=-1,e=i?i.length:0;for(this.clear();++t<e;){var n=i[t];this.set(n[0],n[1])}}function zw(){this.__data__={hash:new zn,map:new(Iw||Ei),string:new zn}}function Ow(i){return Do(this,i).delete(i)}function Bw(i){return Do(this,i).get(i)}function Vw(i){return Do(this,i).has(i)}function Rw(i,t){return Do(this,i).set(i,t),this}Vn.prototype.clear=zw;Vn.prototype.delete=Ow;Vn.prototype.get=Bw;Vn.prototype.has=Vw;Vn.prototype.set=Rw;function xo(i,t){for(var e=i.length;e--;)if(Zw(i[e][0],t))return e;return-1}function Qw(i,t){t=_w(t,i)?[t]:Hw(t);for(var e=0,n=t.length;i!=null&&e<n;)i=i[Uw(t[e++])];return e&&e==n?i:void 0}function Gw(i){if(!Lu(i)||Fw(i))return!1;var t=Jw(i)||vw(i)?ww:mw;return t.test(Xw(i))}function Nw(i){if(typeof i=="string")return i;if(_a(i))return ld?ld.call(i):"";var t=i+"";return t=="0"&&1/i==-ku?"-0":t}function Hw(i){return Tu(i)?i:Yw(i)}function Do(i,t){var e=i.__data__;return Ww(t)?e[typeof t=="string"?"string":"hash"]:e.map}function Su(i,t){var e=Aw(i,t);return Gw(e)?e:void 0}function _w(i,t){if(Tu(i))return!1;var e=typeof i;return e=="number"||e=="symbol"||e=="boolean"||i==null||_a(i)?!0:cw.test(i)||!lw.test(i)||t!=null&&i in Object(t)}function Ww(i){var t=typeof i;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?i!=="__proto__":i===null}function Fw(i){return!!od&&od in i}var Yw=Ha(function(i){i=Kw(i);var t=[];return dw.test(i)&&t.push(""),i.replace(hw,function(e,n,s,o){t.push(s?o.replace(fw,"$1"):n||e)}),t});function Uw(i){if(typeof i=="string"||_a(i))return i;var t=i+"";return t=="0"&&1/i==-ku?"-0":t}function Xw(i){if(i!=null){try{return xu.call(i)}catch(t){}try{return i+""}catch(t){}}return""}function Ha(i,t){if(typeof i!="function"||t&&typeof t!="function")throw new TypeError(sw);var e=function(){var n=arguments,s=t?t.apply(this,n):n[0],o=e.cache;if(o.has(s))return o.get(s);var r=i.apply(this,n);return e.cache=o.set(s,r),r};return e.cache=new(Ha.Cache||Vn),e}Ha.Cache=Vn;function Zw(i,t){return i===t||i!==i&&t!==t}var Tu=Array.isArray;function Jw(i){var t=Lu(i)?Du.call(i):"";return t==ow||t==rw}function Lu(i){var t=typeof i;return!!i&&(t=="object"||t=="function")}function qw(i){return!!i&&typeof i=="object"}function _a(i){return typeof i=="symbol"||qw(i)&&Du.call(i)==aw}function Kw(i){return i==null?"":Nw(i)}function $w(i,t,e){var n=i==null?void 0:Qw(i,t);return n===void 0?e:n}var Rs=$w,ho={},eC={get exports(){return ho},set exports(i){ho=i}};(function(i,t){var e=200,n="__lodash_hash_undefined__",s=9007199254740991,o="[object Arguments]",r="[object Array]",a="[object Boolean]",l="[object Date]",c="[object Error]",d="[object Function]",h="[object GeneratorFunction]",u="[object Map]",m="[object Number]",A="[object Object]",p="[object Promise]",g="[object RegExp]",v="[object Set]",y="[object String]",I="[object Symbol]",k="[object WeakMap]",T="[object ArrayBuffer]",P="[object DataView]",V="[object Float32Array]",L="[object Float64Array]",W="[object Int8Array]",q="[object Int16Array]",N="[object Int32Array]",G="[object Uint8Array]",_="[object Uint8ClampedArray]",Q="[object Uint16Array]",F="[object Uint32Array]",Z=/[\\^$.*+?()[\]{}|]/g,X=/\w*$/,$=/^\[object .+?Constructor\]$/,ce=/^(?:0|[1-9]\d*)$/,se={};se[o]=se[r]=se[T]=se[P]=se[a]=se[l]=se[V]=se[L]=se[W]=se[q]=se[N]=se[u]=se[m]=se[A]=se[g]=se[v]=se[y]=se[I]=se[G]=se[_]=se[Q]=se[F]=!0,se[c]=se[d]=se[k]=!1;var we=typeof It=="object"&&It&&It.Object===Object&&It,Ce=typeof self=="object"&&self&&self.Object===Object&&self,pe=we||Ce||Function("return this")(),Be=t&&!t.nodeType&&t,ve=Be&&!0&&i&&!i.nodeType&&i,We=ve&&ve.exports===Be;function fe(b,C){return b.set(C[0],C[1]),b}function ye(b,C){return b.add(C),b}function Le(b,C){for(var S=-1,Y=b?b.length:0;++S<Y&&C(b[S],S,b)!==!1;);return b}function me(b,C){for(var S=-1,Y=C.length,Ie=b.length;++S<Y;)b[Ie+S]=C[S];return b}function qe(b,C,S,Y){var Ie=-1,ge=b?b.length:0;for(Y&&ge&&(S=b[++Ie]);++Ie<ge;)S=C(S,b[Ie],Ie,b);return S}function ct(b,C){for(var S=-1,Y=Array(b);++S<b;)Y[S]=C(S);return Y}function ke(b,C){return b==null?void 0:b[C]}function nt(b){var C=!1;if(b!=null&&typeof b.toString!="function")try{C=!!(b+"")}catch(S){}return C}function re(b){var C=-1,S=Array(b.size);return b.forEach(function(Y,Ie){S[++C]=[Ie,Y]}),S}function Ee(b,C){return function(S){return b(C(S))}}function He(b){var C=-1,S=Array(b.size);return b.forEach(function(Y){S[++C]=Y}),S}var ft=Array.prototype,Ft=Function.prototype,bt=Object.prototype,yt=pe["__core-js_shared__"],Ve=function(){var b=/[^.]+$/.exec(yt&&yt.keys&&yt.keys.IE_PROTO||"");return b?"Symbol(src)_1."+b:""}(),Ge=Ft.toString,Ze=bt.hasOwnProperty,Et=bt.toString,ki=RegExp("^"+Ge.call(Ze).replace(Z,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),zt=We?pe.Buffer:void 0,on=pe.Symbol,bn=pe.Uint8Array,mt=Ee(Object.getPrototypeOf,Object),Rn=Object.create,Qn=bt.propertyIsEnumerable,jo=ft.splice,Mi=Object.getOwnPropertySymbols,Gn=zt?zt.isBuffer:void 0,cs=Ee(Object.keys,Object),Nn=Mt(pe,"DataView"),yn=Mt(pe,"Map"),kt=Mt(pe,"Promise"),Hn=Mt(pe,"Set"),xi=Mt(pe,"WeakMap"),wn=Mt(Object,"create"),Di=dt(Nn),Cn=dt(yn),Si=dt(kt),Ti=dt(Hn),Li=dt(xi),rn=on?on.prototype:void 0,ds=rn?rn.valueOf:void 0;function Yt(b){var C=-1,S=b?b.length:0;for(this.clear();++C<S;){var Y=b[C];this.set(Y[0],Y[1])}}function zo(){this.__data__=wn?wn(null):{}}function Oo(b){return this.has(b)&&delete this.__data__[b]}function Bo(b){var C=this.__data__;if(wn){var S=C[b];return S===n?void 0:S}return Ze.call(C,b)?C[b]:void 0}function hs(b){var C=this.__data__;return wn?C[b]!==void 0:Ze.call(C,b)}function ji(b,C){var S=this.__data__;return S[b]=wn&&C===void 0?n:C,this}Yt.prototype.clear=zo,Yt.prototype.delete=Oo,Yt.prototype.get=Bo,Yt.prototype.has=hs,Yt.prototype.set=ji;function Ke(b){var C=-1,S=b?b.length:0;for(this.clear();++C<S;){var Y=b[C];this.set(Y[0],Y[1])}}function Vo(){this.__data__=[]}function Ro(b){var C=this.__data__,S=Wn(C,b);if(S<0)return!1;var Y=C.length-1;return S==Y?C.pop():jo.call(C,S,1),!0}function Qo(b){var C=this.__data__,S=Wn(C,b);return S<0?void 0:C[S][1]}function Go(b){return Wn(this.__data__,b)>-1}function No(b,C){var S=this.__data__,Y=Wn(S,b);return Y<0?S.push([b,C]):S[Y][1]=C,this}Ke.prototype.clear=Vo,Ke.prototype.delete=Ro,Ke.prototype.get=Qo,Ke.prototype.has=Go,Ke.prototype.set=No;function it(b){var C=-1,S=b?b.length:0;for(this.clear();++C<S;){var Y=b[C];this.set(Y[0],Y[1])}}function Ho(){this.__data__={hash:new Yt,map:new(yn||Ke),string:new Yt}}function _o(b){return Pn(this,b).delete(b)}function Wo(b){return Pn(this,b).get(b)}function Fo(b){return Pn(this,b).has(b)}function Yo(b,C){return Pn(this,b).set(b,C),this}it.prototype.clear=Ho,it.prototype.delete=_o,it.prototype.get=Wo,it.prototype.has=Fo,it.prototype.set=Yo;function gt(b){this.__data__=new Ke(b)}function Uo(){this.__data__=new Ke}function Xo(b){return this.__data__.delete(b)}function Zo(b){return this.__data__.get(b)}function Jo(b){return this.__data__.has(b)}function qo(b,C){var S=this.__data__;if(S instanceof Ke){var Y=S.__data__;if(!yn||Y.length<e-1)return Y.push([b,C]),this;S=this.__data__=new it(Y)}return S.set(b,C),this}gt.prototype.clear=Uo,gt.prototype.delete=Xo,gt.prototype.get=Zo,gt.prototype.has=Jo,gt.prototype.set=qo;function _n(b,C){var S=Vi(b)||Yn(b)?ct(b.length,String):[],Y=S.length,Ie=!!Y;for(var ge in b)(C||Ze.call(b,ge))&&!(Ie&&(ge=="length"||hr(ge,Y)))&&S.push(ge);return S}function us(b,C,S){var Y=b[C];(!(Ze.call(b,C)&&As(Y,S))||S===void 0&&!(C in b))&&(b[C]=S)}function Wn(b,C){for(var S=b.length;S--;)if(As(b[S][0],C))return S;return-1}function Ot(b,C){return b&&Bi(C,Qi(C),b)}function zi(b,C,S,Y,Ie,ge,xe){var De;if(Y&&(De=ge?Y(b,Ie,ge,xe):Y(b)),De!==void 0)return De;if(!Vt(b))return b;var Fe=Vi(b);if(Fe){if(De=cr(b),!C)return rr(b,De)}else{var je=Xt(b),st=je==d||je==h;if(vs(b))return Fn(b,C);if(je==A||je==o||st&&!ge){if(nt(b))return ge?b:{};if(De=Bt(st?{}:b),!C)return ar(b,Ot(De,b))}else{if(!se[je])return ge?b:{};De=dr(b,je,zi,C)}}xe||(xe=new gt);var pt=xe.get(b);if(pt)return pt;if(xe.set(b,De),!Fe)var Ue=S?lr(b):Qi(b);return Le(Ue||b,function(ot,$e){Ue&&($e=ot,ot=b[$e]),us(De,$e,zi(ot,C,S,Y,$e,b,xe))}),De}function Ko(b){return Vt(b)?Rn(b):{}}function $o(b,C,S){var Y=C(b);return Vi(b)?Y:me(Y,S(b))}function er(b){return Et.call(b)}function tr(b){if(!Vt(b)||fr(b))return!1;var C=Ri(b)||nt(b)?ki:$;return C.test(dt(b))}function nr(b){if(!gs(b))return cs(b);var C=[];for(var S in Object(b))Ze.call(b,S)&&S!="constructor"&&C.push(S);return C}function Fn(b,C){if(C)return b.slice();var S=new b.constructor(b.length);return b.copy(S),S}function Oi(b){var C=new b.constructor(b.byteLength);return new bn(C).set(new bn(b)),C}function In(b,C){var S=C?Oi(b.buffer):b.buffer;return new b.constructor(S,b.byteOffset,b.byteLength)}function fs(b,C,S){var Y=C?S(re(b),!0):re(b);return qe(Y,fe,new b.constructor)}function ms(b){var C=new b.constructor(b.source,X.exec(b));return C.lastIndex=b.lastIndex,C}function ir(b,C,S){var Y=C?S(He(b),!0):He(b);return qe(Y,ye,new b.constructor)}function sr(b){return ds?Object(ds.call(b)):{}}function or(b,C){var S=C?Oi(b.buffer):b.buffer;return new b.constructor(S,b.byteOffset,b.length)}function rr(b,C){var S=-1,Y=b.length;for(C||(C=Array(Y));++S<Y;)C[S]=b[S];return C}function Bi(b,C,S,Y){S||(S={});for(var Ie=-1,ge=C.length;++Ie<ge;){var xe=C[Ie],De=Y?Y(S[xe],b[xe],xe,S,b):void 0;us(S,xe,De===void 0?b[xe]:De)}return S}function ar(b,C){return Bi(b,Ut(b),C)}function lr(b){return $o(b,Qi,Ut)}function Pn(b,C){var S=b.__data__;return ur(C)?S[typeof C=="string"?"string":"hash"]:S.map}function Mt(b,C){var S=ke(b,C);return tr(S)?S:void 0}var Ut=Mi?Ee(Mi,Object):gr,Xt=er;(Nn&&Xt(new Nn(new ArrayBuffer(1)))!=P||yn&&Xt(new yn)!=u||kt&&Xt(kt.resolve())!=p||Hn&&Xt(new Hn)!=v||xi&&Xt(new xi)!=k)&&(Xt=function(b){var C=Et.call(b),S=C==A?b.constructor:void 0,Y=S?dt(S):void 0;if(Y)switch(Y){case Di:return P;case Cn:return u;case Si:return p;case Ti:return v;case Li:return k}return C});function cr(b){var C=b.length,S=b.constructor(C);return C&&typeof b[0]=="string"&&Ze.call(b,"index")&&(S.index=b.index,S.input=b.input),S}function Bt(b){return typeof b.constructor=="function"&&!gs(b)?Ko(mt(b)):{}}function dr(b,C,S,Y){var Ie=b.constructor;switch(C){case T:return Oi(b);case a:case l:return new Ie(+b);case P:return In(b,Y);case V:case L:case W:case q:case N:case G:case _:case Q:case F:return or(b,Y);case u:return fs(b,Y,S);case m:case y:return new Ie(b);case g:return ms(b);case v:return ir(b,Y,S);case I:return sr(b)}}function hr(b,C){return C=C==null?s:C,!!C&&(typeof b=="number"||ce.test(b))&&b>-1&&b%1==0&&b<C}function ur(b){var C=typeof b;return C=="string"||C=="number"||C=="symbol"||C=="boolean"?b!=="__proto__":b===null}function fr(b){return!!Ve&&Ve in b}function gs(b){var C=b&&b.constructor,S=typeof C=="function"&&C.prototype||bt;return b===S}function dt(b){if(b!=null){try{return Ge.call(b)}catch(C){}try{return b+""}catch(C){}}return""}function ps(b){return zi(b,!0,!0)}function As(b,C){return b===C||b!==b&&C!==C}function Yn(b){return mr(b)&&Ze.call(b,"callee")&&(!Qn.call(b,"callee")||Et.call(b)==o)}var Vi=Array.isArray;function Un(b){return b!=null&&bs(b.length)&&!Ri(b)}function mr(b){return ys(b)&&Un(b)}var vs=Gn||pr;function Ri(b){var C=Vt(b)?Et.call(b):"";return C==d||C==h}function bs(b){return typeof b=="number"&&b>-1&&b%1==0&&b<=s}function Vt(b){var C=typeof b;return!!b&&(C=="object"||C=="function")}function ys(b){return!!b&&typeof b=="object"}function Qi(b){return Un(b)?_n(b):nr(b)}function gr(){return[]}function pr(){return!1}i.exports=ps})(eC,ho);const tC=ho;var uo={},nC={get exports(){return uo},set exports(i){uo=i}};(function(i,t){var e=200,n="__lodash_hash_undefined__",s=1,o=2,r=9007199254740991,a="[object Arguments]",l="[object Array]",c="[object AsyncFunction]",d="[object Boolean]",h="[object Date]",u="[object Error]",m="[object Function]",A="[object GeneratorFunction]",p="[object Map]",g="[object Number]",v="[object Null]",y="[object Object]",I="[object Promise]",k="[object Proxy]",T="[object RegExp]",P="[object Set]",V="[object String]",L="[object Symbol]",W="[object Undefined]",q="[object WeakMap]",N="[object ArrayBuffer]",G="[object DataView]",_="[object Float32Array]",Q="[object Float64Array]",F="[object Int8Array]",Z="[object Int16Array]",X="[object Int32Array]",$="[object Uint8Array]",ce="[object Uint8ClampedArray]",se="[object Uint16Array]",we="[object Uint32Array]",Ce=/[\\^$.*+?()[\]{}|]/g,pe=/^\[object .+?Constructor\]$/,Be=/^(?:0|[1-9]\d*)$/,ve={};ve[_]=ve[Q]=ve[F]=ve[Z]=ve[X]=ve[$]=ve[ce]=ve[se]=ve[we]=!0,ve[a]=ve[l]=ve[N]=ve[d]=ve[G]=ve[h]=ve[u]=ve[m]=ve[p]=ve[g]=ve[y]=ve[T]=ve[P]=ve[V]=ve[q]=!1;var We=typeof It=="object"&&It&&It.Object===Object&&It,fe=typeof self=="object"&&self&&self.Object===Object&&self,ye=We||fe||Function("return this")(),Le=t&&!t.nodeType&&t,me=Le&&!0&&i&&!i.nodeType&&i,qe=me&&me.exports===Le,ct=qe&&We.process,ke=function(){try{return ct&&ct.binding&&ct.binding("util")}catch(b){}}(),nt=ke&&ke.isTypedArray;function re(b,C){for(var S=-1,Y=b==null?0:b.length,Ie=0,ge=[];++S<Y;){var xe=b[S];C(xe,S,b)&&(ge[Ie++]=xe)}return ge}function Ee(b,C){for(var S=-1,Y=C.length,Ie=b.length;++S<Y;)b[Ie+S]=C[S];return b}function He(b,C){for(var S=-1,Y=b==null?0:b.length;++S<Y;)if(C(b[S],S,b))return!0;return!1}function ft(b,C){for(var S=-1,Y=Array(b);++S<b;)Y[S]=C(S);return Y}function Ft(b){return function(C){return b(C)}}function bt(b,C){return b.has(C)}function yt(b,C){return b==null?void 0:b[C]}function Ve(b){var C=-1,S=Array(b.size);return b.forEach(function(Y,Ie){S[++C]=[Ie,Y]}),S}function Ge(b,C){return function(S){return b(C(S))}}function Ze(b){var C=-1,S=Array(b.size);return b.forEach(function(Y){S[++C]=Y}),S}var Et=Array.prototype,ki=Function.prototype,zt=Object.prototype,on=ye["__core-js_shared__"],bn=ki.toString,mt=zt.hasOwnProperty,Rn=function(){var b=/[^.]+$/.exec(on&&on.keys&&on.keys.IE_PROTO||"");return b?"Symbol(src)_1."+b:""}(),Qn=zt.toString,jo=RegExp("^"+bn.call(mt).replace(Ce,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Mi=qe?ye.Buffer:void 0,Gn=ye.Symbol,cs=ye.Uint8Array,Nn=zt.propertyIsEnumerable,yn=Et.splice,kt=Gn?Gn.toStringTag:void 0,Hn=Object.getOwnPropertySymbols,xi=Mi?Mi.isBuffer:void 0,wn=Ge(Object.keys,Object),Di=Ut(ye,"DataView"),Cn=Ut(ye,"Map"),Si=Ut(ye,"Promise"),Ti=Ut(ye,"Set"),Li=Ut(ye,"WeakMap"),rn=Ut(Object,"create"),ds=dt(Di),Yt=dt(Cn),zo=dt(Si),Oo=dt(Ti),Bo=dt(Li),hs=Gn?Gn.prototype:void 0,ji=hs?hs.valueOf:void 0;function Ke(b){var C=-1,S=b==null?0:b.length;for(this.clear();++C<S;){var Y=b[C];this.set(Y[0],Y[1])}}function Vo(){this.__data__=rn?rn(null):{},this.size=0}function Ro(b){var C=this.has(b)&&delete this.__data__[b];return this.size-=C?1:0,C}function Qo(b){var C=this.__data__;if(rn){var S=C[b];return S===n?void 0:S}return mt.call(C,b)?C[b]:void 0}function Go(b){var C=this.__data__;return rn?C[b]!==void 0:mt.call(C,b)}function No(b,C){var S=this.__data__;return this.size+=this.has(b)?0:1,S[b]=rn&&C===void 0?n:C,this}Ke.prototype.clear=Vo,Ke.prototype.delete=Ro,Ke.prototype.get=Qo,Ke.prototype.has=Go,Ke.prototype.set=No;function it(b){var C=-1,S=b==null?0:b.length;for(this.clear();++C<S;){var Y=b[C];this.set(Y[0],Y[1])}}function Ho(){this.__data__=[],this.size=0}function _o(b){var C=this.__data__,S=Fn(C,b);if(S<0)return!1;var Y=C.length-1;return S==Y?C.pop():yn.call(C,S,1),--this.size,!0}function Wo(b){var C=this.__data__,S=Fn(C,b);return S<0?void 0:C[S][1]}function Fo(b){return Fn(this.__data__,b)>-1}function Yo(b,C){var S=this.__data__,Y=Fn(S,b);return Y<0?(++this.size,S.push([b,C])):S[Y][1]=C,this}it.prototype.clear=Ho,it.prototype.delete=_o,it.prototype.get=Wo,it.prototype.has=Fo,it.prototype.set=Yo;function gt(b){var C=-1,S=b==null?0:b.length;for(this.clear();++C<S;){var Y=b[C];this.set(Y[0],Y[1])}}function Uo(){this.size=0,this.__data__={hash:new Ke,map:new(Cn||it),string:new Ke}}function Xo(b){var C=Mt(this,b).delete(b);return this.size-=C?1:0,C}function Zo(b){return Mt(this,b).get(b)}function Jo(b){return Mt(this,b).has(b)}function qo(b,C){var S=Mt(this,b),Y=S.size;return S.set(b,C),this.size+=S.size==Y?0:1,this}gt.prototype.clear=Uo,gt.prototype.delete=Xo,gt.prototype.get=Zo,gt.prototype.has=Jo,gt.prototype.set=qo;function _n(b){var C=-1,S=b==null?0:b.length;for(this.__data__=new gt;++C<S;)this.add(b[C])}function us(b){return this.__data__.set(b,n),this}function Wn(b){return this.__data__.has(b)}_n.prototype.add=_n.prototype.push=us,_n.prototype.has=Wn;function Ot(b){var C=this.__data__=new it(b);this.size=C.size}function zi(){this.__data__=new it,this.size=0}function Ko(b){var C=this.__data__,S=C.delete(b);return this.size=C.size,S}function $o(b){return this.__data__.get(b)}function er(b){return this.__data__.has(b)}function tr(b,C){var S=this.__data__;if(S instanceof it){var Y=S.__data__;if(!Cn||Y.length<e-1)return Y.push([b,C]),this.size=++S.size,this;S=this.__data__=new gt(Y)}return S.set(b,C),this.size=S.size,this}Ot.prototype.clear=zi,Ot.prototype.delete=Ko,Ot.prototype.get=$o,Ot.prototype.has=er,Ot.prototype.set=tr;function nr(b,C){var S=Yn(b),Y=!S&&As(b),Ie=!S&&!Y&&Un(b),ge=!S&&!Y&&!Ie&&ys(b),xe=S||Y||Ie||ge,De=xe?ft(b.length,String):[],Fe=De.length;for(var je in b)(C||mt.call(b,je))&&!(xe&&(je=="length"||Ie&&(je=="offset"||je=="parent")||ge&&(je=="buffer"||je=="byteLength"||je=="byteOffset")||dr(je,Fe)))&&De.push(je);return De}function Fn(b,C){for(var S=b.length;S--;)if(ps(b[S][0],C))return S;return-1}function Oi(b,C,S){var Y=C(b);return Yn(b)?Y:Ee(Y,S(b))}function In(b){return b==null?b===void 0?W:v:kt&&kt in Object(b)?Xt(b):gs(b)}function fs(b){return Vt(b)&&In(b)==a}function ms(b,C,S,Y,Ie){return b===C?!0:b==null||C==null||!Vt(b)&&!Vt(C)?b!==b&&C!==C:ir(b,C,S,Y,ms,Ie)}function ir(b,C,S,Y,Ie,ge){var xe=Yn(b),De=Yn(C),Fe=xe?l:Bt(b),je=De?l:Bt(C);Fe=Fe==a?y:Fe,je=je==a?y:je;var st=Fe==y,pt=je==y,Ue=Fe==je;if(Ue&&Un(b)){if(!Un(C))return!1;xe=!0,st=!1}if(Ue&&!st)return ge||(ge=new Ot),xe||ys(b)?Bi(b,C,S,Y,Ie,ge):ar(b,C,Fe,S,Y,Ie,ge);if(!(S&s)){var ot=st&&mt.call(b,"__wrapped__"),$e=pt&&mt.call(C,"__wrapped__");if(ot||$e){var an=ot?b.value():b,Zt=$e?C.value():C;return ge||(ge=new Ot),Ie(an,Zt,S,Y,ge)}}return Ue?(ge||(ge=new Ot),lr(b,C,S,Y,Ie,ge)):!1}function sr(b){if(!bs(b)||ur(b))return!1;var C=vs(b)?jo:pe;return C.test(dt(b))}function or(b){return Vt(b)&&Ri(b.length)&&!!ve[In(b)]}function rr(b){if(!fr(b))return wn(b);var C=[];for(var S in Object(b))mt.call(b,S)&&S!="constructor"&&C.push(S);return C}function Bi(b,C,S,Y,Ie,ge){var xe=S&s,De=b.length,Fe=C.length;if(De!=Fe&&!(xe&&Fe>De))return!1;var je=ge.get(b);if(je&&ge.get(C))return je==C;var st=-1,pt=!0,Ue=S&o?new _n:void 0;for(ge.set(b,C),ge.set(C,b);++st<De;){var ot=b[st],$e=C[st];if(Y)var an=xe?Y($e,ot,st,C,b,ge):Y(ot,$e,st,b,C,ge);if(an!==void 0){if(an)continue;pt=!1;break}if(Ue){if(!He(C,function(Zt,En){if(!bt(Ue,En)&&(ot===Zt||Ie(ot,Zt,S,Y,ge)))return Ue.push(En)})){pt=!1;break}}else if(!(ot===$e||Ie(ot,$e,S,Y,ge))){pt=!1;break}}return ge.delete(b),ge.delete(C),pt}function ar(b,C,S,Y,Ie,ge,xe){switch(S){case G:if(b.byteLength!=C.byteLength||b.byteOffset!=C.byteOffset)return!1;b=b.buffer,C=C.buffer;case N:return!(b.byteLength!=C.byteLength||!ge(new cs(b),new cs(C)));case d:case h:case g:return ps(+b,+C);case u:return b.name==C.name&&b.message==C.message;case T:case V:return b==C+"";case p:var De=Ve;case P:var Fe=Y&s;if(De||(De=Ze),b.size!=C.size&&!Fe)return!1;var je=xe.get(b);if(je)return je==C;Y|=o,xe.set(b,C);var st=Bi(De(b),De(C),Y,Ie,ge,xe);return xe.delete(b),st;case L:if(ji)return ji.call(b)==ji.call(C)}return!1}function lr(b,C,S,Y,Ie,ge){var xe=S&s,De=Pn(b),Fe=De.length,je=Pn(C),st=je.length;if(Fe!=st&&!xe)return!1;for(var pt=Fe;pt--;){var Ue=De[pt];if(!(xe?Ue in C:mt.call(C,Ue)))return!1}var ot=ge.get(b);if(ot&&ge.get(C))return ot==C;var $e=!0;ge.set(b,C),ge.set(C,b);for(var an=xe;++pt<Fe;){Ue=De[pt];var Zt=b[Ue],En=C[Ue];if(Y)var Ua=xe?Y(En,Zt,Ue,C,b,ge):Y(Zt,En,Ue,b,C,ge);if(!(Ua===void 0?Zt===En||Ie(Zt,En,S,Y,ge):Ua)){$e=!1;break}an||(an=Ue=="constructor")}if($e&&!an){var ws=b.constructor,Cs=C.constructor;ws!=Cs&&"constructor"in b&&"constructor"in C&&!(typeof ws=="function"&&ws instanceof ws&&typeof Cs=="function"&&Cs instanceof Cs)&&($e=!1)}return ge.delete(b),ge.delete(C),$e}function Pn(b){return Oi(b,Qi,cr)}function Mt(b,C){var S=b.__data__;return hr(C)?S[typeof C=="string"?"string":"hash"]:S.map}function Ut(b,C){var S=yt(b,C);return sr(S)?S:void 0}function Xt(b){var C=mt.call(b,kt),S=b[kt];try{b[kt]=void 0;var Y=!0}catch(ge){}var Ie=Qn.call(b);return Y&&(C?b[kt]=S:delete b[kt]),Ie}var cr=Hn?function(b){return b==null?[]:(b=Object(b),re(Hn(b),function(C){return Nn.call(b,C)}))}:gr,Bt=In;(Di&&Bt(new Di(new ArrayBuffer(1)))!=G||Cn&&Bt(new Cn)!=p||Si&&Bt(Si.resolve())!=I||Ti&&Bt(new Ti)!=P||Li&&Bt(new Li)!=q)&&(Bt=function(b){var C=In(b),S=C==y?b.constructor:void 0,Y=S?dt(S):"";if(Y)switch(Y){case ds:return G;case Yt:return p;case zo:return I;case Oo:return P;case Bo:return q}return C});function dr(b,C){return C=C==null?r:C,!!C&&(typeof b=="number"||Be.test(b))&&b>-1&&b%1==0&&b<C}function hr(b){var C=typeof b;return C=="string"||C=="number"||C=="symbol"||C=="boolean"?b!=="__proto__":b===null}function ur(b){return!!Rn&&Rn in b}function fr(b){var C=b&&b.constructor,S=typeof C=="function"&&C.prototype||zt;return b===S}function gs(b){return Qn.call(b)}function dt(b){if(b!=null){try{return bn.call(b)}catch(C){}try{return b+""}catch(C){}}return""}function ps(b,C){return b===C||b!==b&&C!==C}var As=fs(function(){return arguments}())?fs:function(b){return Vt(b)&&mt.call(b,"callee")&&!Nn.call(b,"callee")},Yn=Array.isArray;function Vi(b){return b!=null&&Ri(b.length)&&!vs(b)}var Un=xi||pr;function mr(b,C){return ms(b,C)}function vs(b){if(!bs(b))return!1;var C=In(b);return C==m||C==A||C==c||C==k}function Ri(b){return typeof b=="number"&&b>-1&&b%1==0&&b<=r}function bs(b){var C=typeof b;return b!=null&&(C=="object"||C=="function")}function Vt(b){return b!=null&&typeof b=="object"}var ys=nt?Ft(nt):or;function Qi(b){return Vi(b)?nr(b):rr(b)}function gr(){return[]}function pr(){return!1}i.exports=mr})(nC,uo);const iC=uo,sC=(i,t)=>iC(i,t),oC=i=>Object.keys(i||{}),rC=(i,t)=>{const e={};return i.forEach(n=>{e[n]=t[n]}),e},aC=()=>{const i={},t=(e,n)=>{const{watcherName:s,fn:o}=e,{prop:r,value:a}=n;i[s]||(i[s]={deps:{},fn:o}),i[s].deps[r]=a};return{subscribers:i,subscribe(e,n){e&&t(e,n)},notify(e,n){Object.entries(i).forEach(([s,{deps:o,fn:r}])=>{const a=oC(o);if(a.includes(n)){const l=rC(a,e);sC(o,l)||(i[s].deps=l,r())}})}}},lC=()=>{let i=null;return{targetWatcher(t,e){i={watcherName:t,fn:e},i.fn(),i=null},getTarget(){return i}}};function cC(i,t){const e=Rs(i,"data",{}),n=Rs(i,"watch",{}),s=Rs(i,"methods",{}),o=Rs(t,"onChange",()=>{}),{subscribe:r,notify:a,subscribers:l}=aC(),{targetWatcher:c,getTarget:d}=lC();let h;const u={},m=()=>({data:h,methods:u});let A=!1;const p=v=>(...y)=>{A=!0;const I=v(...y);return A=!1,I};Object.entries(s).forEach(([v,y])=>{u[v]=p((...I)=>y(m(),...I)),Object.defineProperty(u[v],"name",{value:v})}),h=new Proxy(tC(e),{get(v,y){return d()&&!A&&r(d(),{prop:y,value:v[y]}),Reflect.get(...arguments)},set(v,y,I){return v[y]===I||(Reflect.set(...arguments),d()||(o&&o(y,I),a(h,y))),!0}}),Object.entries(n).forEach(([v,y])=>{c(v,()=>{y(m())})});const g=[h,u];return g._internal={_getSubscribers(){return l}},g}function dC({pageIndex:i,particlesToShow:t,particlesToScroll:e,particlesCount:n}){const s=i===0?0:t-e,o=i*t-i*s,r=o+Math.max(t,e)-1,a=[];for(let l=o;l<=Math.min(n-1,r);l++)a.push(l);return a}function hC({infinite:i,pageIndex:t,pagesCount:e,particlesCount:n,particlesToShow:s,particlesToScroll:o}){const r=ri(0,t,e-1);let a=r-1,l=r+1;a=i?a<0?e-1:a:Math.max(0,a),l=i?l>e-1?0:l:Math.min(e-1,l);const c=[...new Set([a,r,l,0,e-1])].sort((h,u)=>h-u),d=c.flatMap(h=>dC({pageIndex:h,particlesToShow:s,particlesToScroll:o,particlesCount:n}));return{pageIndexes:c,particleIndexes:[...new Set(d)].sort((h,u)=>h-u)}}const uC=(i,t)=>(i(),setInterval(i,t)),fC=35,cd=1;class mC{constructor({onProgressValueChange:t}){this._onProgressValueChange=t,this._autoplayDuration,this._onProgressValueChange,this._interval,this._paused=!1}setAutoplayDuration(t){this._autoplayDuration=t}start(t){return new Promise(e=>{this.reset();const n=Math.min(fC,Math.max(this._autoplayDuration,1));let s=-n;this._interval=uC(()=>U(this,null,function*(){if(this._paused)return;s+=n;const o=s/this._autoplayDuration;this._onProgressValueChange(o),o>cd&&(this.reset(),yield t(),e())}),n)})}pause(){this._paused=!0}resume(){this._paused=!1}reset(){clearInterval(this._interval),this._onProgressValueChange(cd)}}function gC(i){const t=new mC({onProgressValueChange:r=>{i("progressValue",1-r)}}),e=cC({data:{particlesCountWithoutClones:0,particlesToShow:1,particlesToShowInit:1,particlesToScroll:1,particlesToScrollInit:1,particlesCount:1,currentParticleIndex:1,infinite:!1,autoplayDuration:1e3,clonesCountHead:0,clonesCountTail:0,clonesCountTotal:0,partialPageSize:1,currentPageIndex:1,pagesCount:1,pauseOnFocus:!1,focused:!1,autoplay:!1,autoplayDirection:"next",disabled:!1,durationMsInit:1e3,durationMs:1e3,offset:0,particleWidth:0,loaded:[]},watch:{setLoaded({data:r}){r.loaded=hC({infinite:r.infinite,pageIndex:r.currentPageIndex,pagesCount:r.pagesCount,particlesCount:r.particlesCountWithoutClones,particlesToShow:r.particlesToShow,particlesToScroll:r.particlesToScroll}).particleIndexes},setCurrentPageIndex({data:r}){r.currentPageIndex=Xy({currentParticleIndex:r.currentParticleIndex,particlesCount:r.particlesCount,clonesCountHead:r.clonesCountHead,clonesCountTotal:r.clonesCountTotal,infinite:r.infinite,particlesToScroll:r.particlesToScroll})},setPartialPageSize({data:r}){r.partialPageSize=Pu({particlesToScroll:r.particlesToScroll,particlesToShow:r.particlesToShow,particlesCountWithoutClones:r.particlesCountWithoutClones})},setClonesCount({data:r}){const{head:a,tail:l}=iw({infinite:r.infinite,particlesToShow:r.particlesToShow,partialPageSize:r.partialPageSize});r.clonesCountHead=a,r.clonesCountTail=l,r.clonesCountTotal=a+l},setProgressManagerAutoplayDuration({data:r}){t.setAutoplayDuration(r.autoplayDuration)},toggleProgressManager({data:{pauseOnFocus:r,focused:a}}){r&&(a?t.pause():t.resume())},initDuration({data:r}){r.durationMs=r.durationMsInit},applyAutoplay({data:r,methods:{_applyAutoplayIfNeeded:a}}){r.autoplay&&a(r.autoplay)},setPagesCount({data:r}){r.pagesCount=Jy({infinite:r.infinite,particlesCountWithoutClones:r.particlesCountWithoutClones,particlesToScroll:r.particlesToScroll,particlesToShow:r.particlesToShow})},setParticlesToShow({data:r}){r.particlesToShow=ri(1,r.particlesToShowInit,r.particlesCountWithoutClones)},setParticlesToScroll({data:r}){r.particlesToScroll=ri(1,r.particlesToScrollInit,r.particlesCountWithoutClones)}},methods:{_prev({data:r}){r.currentParticleIndex=jr({infinite:r.infinite,pageIndex:r.currentPageIndex-1,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},_next({data:r}){r.currentParticleIndex=jr({infinite:r.infinite,pageIndex:r.currentPageIndex+1,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},_moveToParticle({data:r},a){r.currentParticleIndex=ri(0,a,r.particlesCount-1)},toggleFocused({data:r}){r.focused=!r.focused},_applyAutoplayIfNeeded(l){return U(this,arguments,function*({data:r,methods:a}){if(!r.infinite&&(r.autoplayDirection===pn&&r.currentParticleIndex===r.particlesCount-1||r.autoplayDirection===gi&&r.currentParticleIndex===0)){t.reset();return}if(r.autoplay){const c=()=>sa({[pn]:()=>U(this,null,function*(){return a.showNextPage()}),[gi]:()=>U(this,null,function*(){return a.showPrevPage()})})(r.autoplayDirection);yield t.start(c)}})},_jumpIfNeeded(l){return U(this,arguments,function*({data:r,methods:a}){let c=!1;return r.infinite&&(r.currentParticleIndex===0?(yield a.showParticle(r.particlesCount-r.clonesCountTotal,{animated:!1}),c=!0):r.currentParticleIndex===r.particlesCount-r.clonesCountTail&&(yield a.showParticle(r.clonesCountHead,{animated:!1}),c=!0)),c})},changePage(d,h,u){return U(this,arguments,function*({data:r,methods:a},l,c){if(t.reset(),r.disabled)return;r.disabled=!0,l(),yield a.offsetPage({animated:Ki(c,"animated",!0)}),r.disabled=!1,!(yield a._jumpIfNeeded())&&a._applyAutoplayIfNeeded()})},showNextPage(c,d){return U(this,arguments,function*({data:r,methods:a},l){r.disabled||(yield a.changePage(a._next,l))})},showPrevPage(c,d){return U(this,arguments,function*({data:r,methods:a},l){r.disabled||(yield a.changePage(a._prev,l))})},showParticle(c,d,h){return U(this,arguments,function*({methods:r},a,l){yield r.changePage(()=>r._moveToParticle(a),l)})},_getParticleIndexByPageIndex({data:r},a){return jr({infinite:r.infinite,pageIndex:a,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},showPage(c,d,h){return U(this,arguments,function*({methods:r},a,l){const u=r._getParticleIndexByPageIndex(a);yield r.showParticle(u,l)})},offsetPage({data:r},a){const l=Ki(a,"animated",!0);return new Promise(c=>{r.durationMs=l?r.durationMsInit:0,r.offset=-r.currentParticleIndex*r.particleWidth,setTimeout(()=>{c()},r.durationMs)})}}},{onChange:i}),[n,s]=e;return[{data:n,progressManager:t},s,e._internal]}function pC(i){ue(i,"svelte-sme1z4",":root{--sc-color-rgb-light-50p:rgba(93, 93, 93, 0.5);--sc-color-rgb-light:#5d5d5d;--sc-color-hex-dark-50p:rgba(30, 30, 30, 0.5);--sc-color-hex-dark:#1e1e1e}.sc-carousel__carousel-container.svelte-sme1z4{display:flex;width:100%;flex-direction:column;align-items:center}.sc-carousel__content-container.svelte-sme1z4{position:relative;display:flex;width:100%}.sc-carousel__pages-window.svelte-sme1z4{flex:1;display:flex;overflow:hidden;box-sizing:border-box;position:relative}.sc-carousel__pages-container.svelte-sme1z4{width:100%;display:flex;transition-property:transform}.sc-carousel__arrow-container.svelte-sme1z4{padding:5px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.sc-carousel-progress__container.svelte-sme1z4{width:100%;height:5px;background-color:var(--sc-color-rgb-light-50p);position:absolute;bottom:0}.sc-carousel-button{all:unset;cursor:pointer}.sc-carousel-button:focus{outline:5px auto}")}const AC=i=>({currentPageIndex:i[0]&32,pagesCount:i[0]&1024,loaded:i[0]&64}),dd=i=>({currentPageIndex:i[5],pagesCount:i[10],showPage:i[15],loaded:i[6]}),vC=i=>({loaded:i[0]&64,currentPageIndex:i[0]&32}),hd=i=>({showNextPage:i[14].showNextPage,loaded:i[6],currentPageIndex:i[5]}),bC=i=>({loaded:i[0]&64,currentPageIndex:i[0]&32}),ud=i=>({loaded:i[6],currentPageIndex:i[5]}),yC=i=>({loaded:i[0]&64,currentPageIndex:i[0]&32}),fd=i=>({showPrevPage:i[14].showPrevPage,loaded:i[6],currentPageIndex:i[5]});function md(i){let t;const e=i[37].prev,n=vi(e,i,i[36],fd),s=n||wC(i);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){n?n.p&&(!t||r[0]&96|r[1]&32)&&yi(n,e,o,o[36],t?bi(e,o[36],r,yC):wi(o[36]),fd):s&&s.p&&(!t||r[0]&36)&&s.p(o,t?r:[-1,-1])},i(o){t||(M(s,o),t=!0)},o(o){j(s,o),t=!1},d(o){s&&s.d(o)}}}function wC(i){let t,e,n;return e=new Cu({props:{direction:"prev",disabled:!i[2]&&i[5]===0}}),e.$on("click",i[23]),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","sc-carousel__arrow-container svelte-sme1z4")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o[0]&36&&(r.disabled=!s[2]&&s[5]===0),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function gd(i){let t,e,n;return e=new My({props:{value:i[7]}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","sc-carousel-progress__container svelte-sme1z4")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o[0]&128&&(r.value=s[7]),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function pd(i){let t;const e=i[37].next,n=vi(e,i,i[36],hd),s=n||CC(i);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){n?n.p&&(!t||r[0]&96|r[1]&32)&&yi(n,e,o,o[36],t?bi(e,o[36],r,vC):wi(o[36]),hd):s&&s.p&&(!t||r[0]&1060)&&s.p(o,t?r:[-1,-1])},i(o){t||(M(s,o),t=!0)},o(o){j(s,o),t=!1},d(o){s&&s.d(o)}}}function CC(i){let t,e,n;return e=new Cu({props:{direction:"next",disabled:!i[2]&&i[5]===i[10]-1}}),e.$on("click",i[14].showNextPage),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","sc-carousel__arrow-container svelte-sme1z4")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o[0]&1060&&(r.disabled=!s[2]&&s[5]===s[10]-1),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function Ad(i){let t;const e=i[37].dots,n=vi(e,i,i[36],dd),s=n||IC(i);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){n?n.p&&(!t||r[0]&1120|r[1]&32)&&yi(n,e,o,o[36],t?bi(e,o[36],r,AC):wi(o[36]),dd):s&&s.p&&(!t||r[0]&1056)&&s.p(o,t?r:[-1,-1])},i(o){t||(M(s,o),t=!0)},o(o){j(s,o),t=!1},d(o){s&&s.d(o)}}}function IC(i){let t,e;return t=new yy({props:{pagesCount:i[10],currentPageIndex:i[5]}}),t.$on("pageChange",i[41]),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s[0]&1024&&(o.pagesCount=n[10]),s[0]&32&&(o.currentPageIndex=n[5]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function PC(i){let t,e,n,s,o,r,a,l,c,d,h,u,m=i[1]&&md(i);const A=i[37].default,p=vi(A,i,i[36],ud);let g=i[3]&&gd(i),v=i[1]&&pd(i),y=i[4]&&Ad(i);return{c(){t=x("div"),e=x("div"),m&&m.c(),n=ee(),s=x("div"),o=x("div"),p&&p.c(),a=ee(),g&&g.c(),l=ee(),v&&v.c(),c=ee(),y&&y.c(),w(o,"class","sc-carousel__pages-container svelte-sme1z4"),z(o,"transform","translateX("+i[8]+"px)"),z(o,"transition-duration",i[9]+"ms"),z(o,"transition-timing-function",i[0]),w(s,"class","sc-carousel__pages-window svelte-sme1z4"),w(e,"class","sc-carousel__content-container svelte-sme1z4"),w(t,"class","sc-carousel__carousel-container svelte-sme1z4")},m(I,k){B(I,t,k),D(t,e),m&&m.m(e,null),D(e,n),D(e,s),D(s,o),p&&p.m(o,null),i[39](o),D(s,a),g&&g.m(s,null),i[40](s),D(e,l),v&&v.m(e,null),D(t,c),y&&y.m(t,null),d=!0,h||(u=[$t(r=By.call(null,o,{thresholdProvider:i[38]})),be(o,"swipeStart",i[16]),be(o,"swipeMove",i[18]),be(o,"swipeEnd",i[19]),be(o,"swipeFailed",i[20]),be(o,"swipeThresholdReached",i[17]),$t(Gy.call(null,s)),be(s,"hovered",i[21]),$t(Fy.call(null,s)),be(s,"tapped",i[22])],h=!0)},p(I,k){I[1]?m?(m.p(I,k),k[0]&2&&M(m,1)):(m=md(I),m.c(),M(m,1),m.m(e,n)):m&&(de(),j(m,1,1,()=>{m=null}),he()),p&&p.p&&(!d||k[0]&96|k[1]&32)&&yi(p,A,I,I[36],d?bi(A,I[36],k,bC):wi(I[36]),ud),(!d||k[0]&256)&&z(o,"transform","translateX("+I[8]+"px)"),(!d||k[0]&512)&&z(o,"transition-duration",I[9]+"ms"),(!d||k[0]&1)&&z(o,"transition-timing-function",I[0]),r&&sn(r.update)&&k[0]&2048&&r.update.call(null,{thresholdProvider:I[38]}),I[3]?g?(g.p(I,k),k[0]&8&&M(g,1)):(g=gd(I),g.c(),M(g,1),g.m(s,null)):g&&(de(),j(g,1,1,()=>{g=null}),he()),I[1]?v?(v.p(I,k),k[0]&2&&M(v,1)):(v=pd(I),v.c(),M(v,1),v.m(e,null)):v&&(de(),j(v,1,1,()=>{v=null}),he()),I[4]?y?(y.p(I,k),k[0]&16&&M(y,1)):(y=Ad(I),y.c(),M(y,1),y.m(t,null)):y&&(de(),j(y,1,1,()=>{y=null}),he())},i(I){d||(M(m),M(p,I),M(g),M(v),M(y),d=!0)},o(I){j(m),j(p,I),j(g),j(v),j(y),d=!1},d(I){I&&O(t),m&&m.d(),p&&p.d(I),i[39](null),g&&g.d(),i[40](null),v&&v.d(),y&&y.d(),h=!1,Je(u)}}}function EC(i,t,e){let{$$slots:n={},$$scope:s}=t,o=[],r,a,l=0,c=0,d=1;const[{data:h,progressManager:u},m,A]=gC((re,Ee)=>{sa({currentPageIndex:()=>e(5,r=Ee),progressValue:()=>e(7,a=Ee),offset:()=>e(8,l=Ee),durationMs:()=>e(9,c=Ee),pagesCount:()=>e(10,d=Ee),loaded:()=>e(6,o=Ee)})(re)}),p=yo();let{timingFunction:g="ease-in-out"}=t,{arrows:v=!0}=t,{infinite:y=!0}=t,{initialPageIndex:I=0}=t,{duration:k=500}=t,{autoplay:T=!1}=t,{autoplayDuration:P=3e3}=t,{autoplayDirection:V=pn}=t,{pauseOnFocus:L=!1}=t,{autoplayProgressVisible:W=!1}=t,{dots:q=!0}=t,{swiping:N=!0}=t,{particlesToShow:G=1}=t,{particlesToScroll:_=1}=t;function Q(re,Ee){return U(this,null,function*(){const He=Ki(Ee,"animated",!0);if(typeof re!="number")throw new Error("pageIndex should be a number");yield m.showPage(re,{animated:He})})}function F(re){return U(this,null,function*(){const Ee=Ki(re,"animated",!0);yield m.showPrevPage({animated:Ee})})}function Z(re){return U(this,null,function*(){const Ee=Ki(re,"animated",!0);yield m.showNextPage({animated:Ee})})}let X=0,$,ce;const se=ew(({width:re})=>{e(11,X=re),h.particleWidth=X/h.particlesToShow,$y({particlesContainerChildren:ce.children,particleWidth:h.particleWidth}),m.offsetPage({animated:!1})});function we(){const{clonesToAppend:re,clonesToPrepend:Ee}=tw({clonesCountHead:h.clonesCountHead,clonesCountTail:h.clonesCountTail,particlesContainerChildren:ce.children});nw({particlesContainer:ce,clonesToAppend:re,clonesToPrepend:Ee})}vt(()=>{U(this,null,function*(){yield sl(),ce&&$&&(h.particlesCountWithoutClones=ce.children.length,yield sl(),h.infinite&&we(),h.particlesCount=ce.children.length,m.showPage(I,{animated:!1}),se.observe($))})}),Lt(()=>{se.disconnect(),u.reset()});function Ce(re){return U(this,null,function*(){yield m.showPage(re,{animated:!0})})}function pe(){N&&(h.durationMs=0)}function Be(re){return U(this,null,function*(){N&&(yield sa({[pn]:m.showNextPage,[gi]:m.showPrevPage})(re.detail.direction))})}function ve(re){N&&(h.offset+=re.detail.dx)}function We(){N&&m.showParticle(h.currentParticleIndex)}function fe(){return U(this,null,function*(){N&&(yield m.offsetPage({animated:!0}))})}function ye(re){h.focused=re.detail.value}function Le(){m.toggleFocused()}function me(){m.showPrevPage()}const qe=()=>X/3;function ct(re){Qe[re?"unshift":"push"](()=>{ce=re,e(13,ce)})}function ke(re){Qe[re?"unshift":"push"](()=>{$=re,e(12,$)})}const nt=re=>Ce(re.detail);return i.$$set=re=>{"timingFunction"in re&&e(0,g=re.timingFunction),"arrows"in re&&e(1,v=re.arrows),"infinite"in re&&e(2,y=re.infinite),"initialPageIndex"in re&&e(24,I=re.initialPageIndex),"duration"in re&&e(25,k=re.duration),"autoplay"in re&&e(26,T=re.autoplay),"autoplayDuration"in re&&e(27,P=re.autoplayDuration),"autoplayDirection"in re&&e(28,V=re.autoplayDirection),"pauseOnFocus"in re&&e(29,L=re.pauseOnFocus),"autoplayProgressVisible"in re&&e(3,W=re.autoplayProgressVisible),"dots"in re&&e(4,q=re.dots),"swiping"in re&&e(30,N=re.swiping),"particlesToShow"in re&&e(31,G=re.particlesToShow),"particlesToScroll"in re&&e(32,_=re.particlesToScroll),"$$scope"in re&&e(36,s=re.$$scope)},i.$$.update=()=>{i.$$.dirty[0]&32&&p("pageChange",r),i.$$.dirty[0]&4&&(h.infinite=y),i.$$.dirty[0]&33554432&&(h.durationMsInit=k),i.$$.dirty[0]&67108864&&(h.autoplay=T),i.$$.dirty[0]&134217728&&(h.autoplayDuration=P),i.$$.dirty[0]&268435456&&(h.autoplayDirection=V),i.$$.dirty[0]&536870912&&(h.pauseOnFocus=L),i.$$.dirty[1]&1&&(h.particlesToShowInit=G),i.$$.dirty[1]&2&&(h.particlesToScrollInit=_)},[g,v,y,W,q,r,o,a,l,c,d,X,$,ce,m,Ce,pe,Be,ve,We,fe,ye,Le,me,I,k,T,P,V,L,N,G,_,Q,F,Z,s,n,qe,ct,ke,nt]}class kC extends le{constructor(t){super(),ae(this,t,EC,PC,oe,{timingFunction:0,arrows:1,infinite:2,initialPageIndex:24,duration:25,autoplay:26,autoplayDuration:27,autoplayDirection:28,pauseOnFocus:29,autoplayProgressVisible:3,dots:4,swiping:30,particlesToShow:31,particlesToScroll:32,goTo:33,goToPrev:34,goToNext:35},pC,[-1,-1])}get goTo(){return this.$$.ctx[33]}get goToPrev(){return this.$$.ctx[34]}get goToNext(){return this.$$.ctx[35]}}function MC(i){ue(i,"svelte-159ski6",".media-item.svelte-159ski6.svelte-159ski6{position:relative;height:100%}.media-content.svelte-159ski6.svelte-159ski6{position:relative;pointer-events:auto;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;-o-object-fit:inherit;object-fit:inherit}.media-content.showPlayButton.svelte-159ski6.svelte-159ski6{pointer-events:none}.video-icon.svelte-159ski6.svelte-159ski6{width:12.5rem;height:6.25rem;max-width:60%;max-height:60%;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.video-play-button-container.svelte-159ski6.svelte-159ski6{display:none;position:absolute;width:100%;height:100%;top:0;left:0;transform:translate3d(0, 0, 0)}.video-play-button-container.showPlayButton.svelte-159ski6.svelte-159ski6{pointer-events:none;display:block}.video-icon.svelte-159ski6.svelte-159ski6{pointer-events:auto}.video-icon.large.svelte-159ski6.svelte-159ski6{width:12.5rem;height:6.25rem}.video-icon.small.svelte-159ski6.svelte-159ski6{width:1.75rem;height:1.75rem}.video-icon.svelte-159ski6 .video-icon-img.svelte-159ski6{width:100%;height:100%;background-position:center center;background-size:contain;background-repeat:no-repeat}.video-icon.svelte-159ski6 .video-icon-img.canPlay.svelte-159ski6{cursor:pointer}")}function vd(i){let t;function e(o,r){if(o[2].type==="Image")return DC;if(o[2].type==="Video")return xC}let n=e(i),s=n&&n(i);return{c(){t=x("div"),s&&s.c(),w(t,"class","media-item svelte-159ski6"),w(t,"draggable","false")},m(o,r){B(o,t,r),s&&s.m(t,null)},p(o,r){n===(n=e(o))&&s?s.p(o,r):(s&&s.d(1),s=n&&n(o),s&&(s.c(),s.m(t,null)))},d(o){o&&O(t),s&&s.d()}}}function xC(i){let t,e,n,s,o,r;function a(d,h){return d[7]&&d[2].videoCoverUrl?TC:SC}let l=a(i),c=l(i);return{c(){c.c(),t=ee(),e=x("div"),n=x("div"),s=x("div"),w(s,"class","video-icon-img svelte-159ski6"),z(s,"background-image","url("+i[20]()+")"),K(s,"canPlay",i[5]),w(n,"class","video-icon svelte-159ski6"),K(n,"large",i[4]==="large"),K(n,"small",i[4]==="small"),w(e,"class","video-play-button-container svelte-159ski6"),K(e,"showPlayButton",i[10])},m(d,h){c.m(d,h),B(d,t,h),B(d,e,h),D(e,n),D(n,s),o||(r=be(s,"click",i[21]),o=!0)},p(d,h){l===(l=a(d))&&c?c.p(d,h):(c.d(1),c=l(d),c&&(c.c(),c.m(t.parentNode,t))),h&8&&z(s,"background-image","url("+d[20]()+")"),h&32&&K(s,"canPlay",d[5]),h&16&&K(n,"large",d[4]==="large"),h&16&&K(n,"small",d[4]==="small"),h&1024&&K(e,"showPlayButton",d[10])},d(d){c.d(d),d&&O(t),d&&O(e),o=!1,r()}}}function DC(i){let t,e,n,s;return{c(){t=x("img"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${i[6]};`),Pt(t.src,n=i[2].url)||w(t,"src",n),w(t,"alt",s=i[2].name),w(t,"draggable",!1)},m(o,r){B(o,t,r)},p(o,r){r&64&&e!==(e=`object-fit: ${o[6]};`)&&w(t,"style",e),r&4&&!Pt(t.src,n=o[2].url)&&w(t,"src",n),r&4&&s!==(s=o[2].name)&&w(t,"alt",s)},d(o){o&&O(t)}}}function SC(i){let t,e,n,s,o,r,a;return{c(){t=x("video"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${i[6]};`),Pt(t.src,n=i[2].videoCoverUrl?i[2].url:i[2].url+"#t=0.1")||w(t,"src",n),w(t,"poster",s=i[2].videoCoverUrl),w(t,"preload",o=i[2].videoCoverUrl?"none":"auto"),w(t,"disablepictureinpicture",""),t.playsInline=!0,w(t,"paused",""),t.muted=!0,w(t,"draggable",!1),t.loop=!1,w(t,"crossorigin",""),t.controls=!1,K(t,"showPlayButton",i[10])},m(l,c){B(l,t,c),i[19](t),r||(a=[be(t,"play",i[14]),be(t,"pause",i[15]),be(t,"error",i[16]),be(t,"ended",i[17]),be(t,"click",i[18])],r=!0)},p(l,c){c&64&&e!==(e=`object-fit: ${l[6]};`)&&w(t,"style",e),c&4&&!Pt(t.src,n=l[2].videoCoverUrl?l[2].url:l[2].url+"#t=0.1")&&w(t,"src",n),c&4&&s!==(s=l[2].videoCoverUrl)&&w(t,"poster",s),c&4&&o!==(o=l[2].videoCoverUrl?"none":"auto")&&w(t,"preload",o),c&1024&&K(t,"showPlayButton",l[10])},d(l){l&&O(t),i[19](null),r=!1,Je(a)}}}function TC(i){let t,e,n,s;return{c(){t=x("img"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${i[6]};`),Pt(t.src,n=i[2].videoCoverUrl)||w(t,"src",n),w(t,"alt",s=i[2].name),w(t,"draggable",!1)},m(o,r){B(o,t,r)},p(o,r){r&64&&e!==(e=`object-fit: ${o[6]};`)&&w(t,"style",e),r&4&&!Pt(t.src,n=o[2].videoCoverUrl)&&w(t,"src",n),r&4&&s!==(s=o[2].name)&&w(t,"alt",s)},d(o){o&&O(t)}}}function LC(i){let t,e=i[2]&&vd(i);return{c(){e&&e.c(),t=Pe()},m(n,s){e&&e.m(n,s),B(n,t,s)},p(n,[s]){n[2]?e?e.p(n,s):(e=vd(n),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},i:J,o:J,d(n){e&&e.d(n),n&&O(t)}}}function jC(i,t,e){let n,s,{mediaInstance:o={videoInstance:void 0,paused:!0}}=t,{tag:r}=t,{media:a}=t,{playButtonIfNeed:l="withoutText"}=t,{playButtonSizeIfNeed:c="small"}=t,{canPlay:d=!0}=t,{objectFit:h="fill"}=t,{disableVideoIfHavePoster:u=!1}=t,m=!0,A=!1;function p(){e(8,A=(a==null?void 0:a.type)==="Video"&&!!a.videoCoverUrl)}const g=fn("mediaStore"),v=fn("hooks"),y=()=>{A||n&&(e(9,n.muted=!0,n),n.play(),n.pause(),e(9,n.muted=!1,n),e(8,A=!0))};v.on("loadVideoFirstFrame",y),vt(()=>{g.subscribe(({currentMediaElement:N})=>{N!==n&&(n==null||n.pause())})});const I=N=>{e(10,m=!1),e(0,o.paused=!1,o),e(8,A=!0),n&&g.set({currentMediaElement:n}),v.emit("playStateChange",{event:N,state:"playing",tag:r,mediaInstance:n})},k=N=>{e(10,m=!0),e(0,o.paused=!0,o),v.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:n})},T=N=>{e(10,m=!0),e(0,o.paused=!0,o),v.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:n})},P=N=>{e(10,m=!0),e(0,o.paused=!0,o),v.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:n})},V=N=>{n&&n.pause()};function L(N){Qe[N?"unshift":"push"](()=>{o.videoInstance=N,e(0,o)})}const W=()=>l==="withText"?Oa:l==="withoutText"?ta:l,q=N=>{d&&n&&(e(9,n.muted=!1,n),n.play())};return i.$$set=N=>{"mediaInstance"in N&&e(0,o=N.mediaInstance),"tag"in N&&e(1,r=N.tag),"media"in N&&e(2,a=N.media),"playButtonIfNeed"in N&&e(3,l=N.playButtonIfNeed),"playButtonSizeIfNeed"in N&&e(4,c=N.playButtonSizeIfNeed),"canPlay"in N&&e(5,d=N.canPlay),"objectFit"in N&&e(6,h=N.objectFit),"disableVideoIfHavePoster"in N&&e(7,u=N.disableVideoIfHavePoster)},i.$$.update=()=>{if(i.$$.dirty&1&&e(9,n=o.videoInstance),i.$$.dirty&4&&e(13,s=a==null?void 0:a.url),i.$$.dirty&8192&&s&&p(),i.$$.dirty&512&&n&&e(10,m=n.paused),i.$$.dirty&772&&(a==null?void 0:a.type)==="Video"&&!A){const N=navigator.userAgent.toLowerCase().indexOf("micromessenger")!==-1,_=navigator.userAgent.toLowerCase().indexOf("iphone")!==-1&&N;n&&_&&n.paused&&(document.removeEventListener("WeixinJSBridgeReady",y),document.removeEventListener("touchstart",y),document.removeEventListener("click",y),document.addEventListener("WeixinJSBridgeReady",y),document.addEventListener("touchstart",y),document.addEventListener("click",y))}},[o,r,a,l,c,d,h,u,A,n,m,g,v,s,I,k,T,P,V,L,W,q]}class ju extends le{constructor(t){super(),ae(this,t,jC,LC,oe,{mediaInstance:0,tag:1,media:2,playButtonIfNeed:3,playButtonSizeIfNeed:4,canPlay:5,objectFit:6,disableVideoIfHavePoster:7},MC)}}function zC(i){ue(i,"svelte-1mrbqlg",".media-list-wrapper.svelte-1mrbqlg.svelte-1mrbqlg{width:100%;height:100%;position:relative;overflow:hidden;border-radius:0.125rem}.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg{position:relative;pointer-events:auto;height:100%;left:50%;top:50%;transform:translate(-50%, -50%)}.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg .sc-carousel__carousel-container,.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg .sc-carousel__content-container{height:100%}")}function bd(i,t,e){const n=i.slice();return n[28]=t[e],n[29]=t,n[30]=e,n}function yd(i){let t,e,n,s,o,r,a;const l=[BC,OC],c=[];function d(h,u){return h[13]&&h[10].length>1?0:1}return n=d(i),s=c[n]=l[n](i),{c(){t=x("div"),e=x("div"),s.c(),w(e,"class","media-list svelte-1mrbqlg"),K(e,"carouselEnabled",i[13]),w(t,"class","media-list-wrapper svelte-1mrbqlg"),K(t,"unfolded",i[5])},m(h,u){B(h,t,u),D(t,e),c[n].m(e,null),a=!0},p(h,u){i=h;let m=n;n=d(i),n===m?c[n].p(i,u):(de(),j(c[m],1,1,()=>{c[m]=null}),he(),s=c[n],s?s.p(i,u):(s=c[n]=l[n](i),s.c()),M(s,1),s.m(e,null)),(!a||u[0]&8192)&&K(e,"carouselEnabled",i[13]),(!a||u[0]&32)&&K(t,"unfolded",i[5])},i(h){a||(M(s),h&&Ne(()=>{a&&(r&&r.end(1),o=On(t,ll,i[6]?{y:4,duration:i[4],delay:i[2],easing:en}:void 0),o.start())}),a=!0)},o(h){j(s),o&&o.invalidate(),h&&(r=Ii(t,ll,i[6]?{y:4,duration:i[4],delay:i[3],easing:en}:void 0)),a=!1},d(h){h&&O(t),c[n].d(),h&&r&&r.end()}}}function OC(i){let t,e,n;const s=[{media:i[1][0]},i[7],{tag:i[0]}];function o(a){i[20](a)}let r={};for(let a=0;a<s.length;a+=1)r=et(r,s[a]);return i[8][0]!==void 0&&(r.mediaInstance=i[8][0]),t=new ju({props:r}),Qe.push(()=>Ca(t,"mediaInstance",o)),{c(){ie(t.$$.fragment)},m(a,l){te(t,a,l),n=!0},p(a,l){const c=l[0]&131?lt(s,[l[0]&2&&{media:a[1][0]},l[0]&128&&zh(a[7]),l[0]&1&&{tag:a[0]}]):{};!e&&l[0]&256&&(e=!0,c.mediaInstance=a[8][0],Aa(()=>e=!1)),t.$set(c)},i(a){n||(M(t.$$.fragment,a),n=!0)},o(a){j(t.$$.fragment,a),n=!1},d(a){ne(t,a)}}}function BC(i){let t,e,n={dots:!1,arrows:!1,$$slots:{default:[VC]},$$scope:{ctx:i}};return t=new kC({props:n}),i[18](t),t.$on("pageChange",i[19]),{c(){ie(t.$$.fragment)},m(s,o){te(t,s,o),e=!0},p(s,o){const r={};o[0]&1409|o[1]&1&&(r.$$scope={dirty:o,ctx:s}),t.$set(r)},i(s){e||(M(t.$$.fragment,s),e=!0)},o(s){j(t.$$.fragment,s),e=!1},d(s){i[18](null),ne(t,s)}}}function wd(i){let t,e,n;const s=[i[7],{media:i[28]},{tag:i[0]}];function o(a){i[17](a,i[30])}let r={};for(let a=0;a<s.length;a+=1)r=et(r,s[a]);return i[8][i[30]]!==void 0&&(r.mediaInstance=i[8][i[30]]),t=new ju({props:r}),Qe.push(()=>Ca(t,"mediaInstance",o)),{c(){ie(t.$$.fragment)},m(a,l){te(t,a,l),n=!0},p(a,l){i=a;const c=l[0]&1153?lt(s,[l[0]&128&&zh(i[7]),l[0]&1024&&{media:i[28]},l[0]&1&&{tag:i[0]}]):{};!e&&l[0]&256&&(e=!0,c.mediaInstance=i[8][i[30]],Aa(()=>e=!1)),t.$set(c)},i(a){n||(M(t.$$.fragment,a),n=!0)},o(a){j(t.$$.fragment,a),n=!1},d(a){ne(t,a)}}}function VC(i){let t,e,n=i[10],s=[];for(let r=0;r<n.length;r+=1)s[r]=wd(bd(i,n,r));const o=r=>j(s[r],1,1,()=>{s[r]=null});return{c(){for(let r=0;r<s.length;r+=1)s[r].c();t=Pe()},m(r,a){for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(r,a);B(r,t,a),e=!0},p(r,a){if(a[0]&1409){n=r[10];let l;for(l=0;l<n.length;l+=1){const c=bd(r,n,l);s[l]?(s[l].p(c,a),M(s[l],1)):(s[l]=wd(c),s[l].c(),M(s[l],1),s[l].m(t.parentNode,t))}for(de(),l=n.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<n.length;a+=1)M(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)j(s[a]);e=!1},d(r){Tt(s,r),r&&O(t)}}}function RC(i){let t,e,n=i[5]&&yd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,o){s[5]?n?(n.p(s,o),o[0]&32&&M(n,1)):(n=yd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function QC(i,t,e){let n,s,o,r,{tag:a}=t,{mediaData:l}=t,{inDelay:c=0}=t,{outDelay:d=0}=t,{duration:h=0}=t,{unfolded:u=!0}=t,{animation:m=!0}=t,{mediaItemConfig:A}=t,{enableCarousel:p=!0}=t,{autoplayConfig:g={}}=t;const{autoplayVideo:v=!1,autoplayCarousel:y=!0,autoplayVideoInCarousel:I=!1}=g;let k=[],T=0,P,V=null;const L=fn("hooks"),W=fn("mediaStore");function q(){const F=k[T],Z=F==null?void 0:F.videoInstance;Z&&(Z.paused?(Z.muted=!1,Z.play()):Z.pause())}vt(()=>{L.on("click",F=>{var Z,X,$;($=(X=(Z=a.tag3DContentSvelte)==null?void 0:Z.css3DInstance)==null?void 0:X.css3DObject)!=null&&$.opacityMesh&&F.tag.id===a.id&&q()}),V=setInterval(()=>{r&&(P==null||P.goToNext())},3e3)}),Lt(()=>{clearInterval(V),L.off("click",q)});function N(F,Z){i.$$.not_equal(k[Z],F)&&(k[Z]=F,e(8,k))}function G(F){Qe[F?"unshift":"push"](()=>{P=F,e(12,P)})}const _=F=>{n||W.set({currentMediaElement:null}),e(11,T=F.detail)};function Q(F){i.$$.not_equal(k[0],F)&&(k[0]=F,e(8,k))}return i.$$set=F=>{"tag"in F&&e(0,a=F.tag),"mediaData"in F&&e(1,l=F.mediaData),"inDelay"in F&&e(2,c=F.inDelay),"outDelay"in F&&e(3,d=F.outDelay),"duration"in F&&e(4,h=F.duration),"unfolded"in F&&e(5,u=F.unfolded),"animation"in F&&e(6,m=F.animation),"mediaItemConfig"in F&&e(7,A=F.mediaItemConfig),"enableCarousel"in F&&e(15,p=F.enableCarousel),"autoplayConfig"in F&&e(16,g=F.autoplayConfig)},i.$$.update=()=>{i.$$.dirty[0]&256&&e(9,n=k.every(F=>F.paused)),i.$$.dirty[0]&32770&&e(13,s=p&&(l==null?void 0:l.length)>1),i.$$.dirty[0]&2&&e(10,o=l),i.$$.dirty[0]&1536&&(r=o.length>1&&y&&n)},[a,l,c,d,h,u,m,A,k,n,o,T,P,s,W,p,g,N,G,_,Q]}class zu extends le{constructor(t){super(),ae(this,t,QC,RC,oe,{tag:0,mediaData:1,inDelay:2,outDelay:3,duration:4,unfolded:5,animation:6,mediaItemConfig:7,enableCarousel:15,autoplayConfig:16},zC,[-1,-1])}}function GC(i){ue(i,"svelte-1f7m1lj",".line.svelte-1f7m1lj{position:absolute;width:6.5625rem;height:1.3125rem;transform:translateY(-100%)}.text.svelte-1f7m1lj{position:absolute;width:6.25rem;left:1rem;bottom:0.0625rem;font-weight:600}.media-wrapper.svelte-1f7m1lj{position:absolute;left:0.875rem;top:-5.3125rem;width:5.625rem;height:3.75rem;font-weight:600}")}function Cd(i){let t,e,n,s,o,r,a,l;t=new Wt({props:{visible:i[3],left:61,bottom:57,width:2,blurRadius:150,spreadRadius:75}}),s=new uy({props:{unfolded:i[3],outDelay:400}});let c=i[2]&&Id(i),d=i[1]&&Pd(i);return{c(){ie(t.$$.fragment),e=ee(),n=x("div"),ie(s.$$.fragment),o=ee(),c&&c.c(),r=ee(),d&&d.c(),a=Pe(),w(n,"class","line svelte-1f7m1lj")},m(h,u){te(t,h,u),B(h,e,u),B(h,n,u),te(s,n,null),B(h,o,u),c&&c.m(h,u),B(h,r,u),d&&d.m(h,u),B(h,a,u),l=!0},p(h,u){const m={};u&8&&(m.visible=h[3]),t.$set(m);const A={};u&8&&(A.unfolded=h[3]),s.$set(A),h[2]?c?(c.p(h,u),u&4&&M(c,1)):(c=Id(h),c.c(),M(c,1),c.m(r.parentNode,r)):c&&(de(),j(c,1,1,()=>{c=null}),he()),h[1]?d?(d.p(h,u),u&2&&M(d,1)):(d=Pd(h),d.c(),M(d,1),d.m(a.parentNode,a)):d&&(de(),j(d,1,1,()=>{d=null}),he())},i(h){l||(M(t.$$.fragment,h),M(s.$$.fragment,h),M(c),M(d),l=!0)},o(h){j(t.$$.fragment,h),j(s.$$.fragment,h),j(c),j(d),l=!1},d(h){ne(t,h),h&&O(e),h&&O(n),ne(s),h&&O(o),c&&c.d(h),h&&O(r),d&&d.d(h),h&&O(a)}}}function Id(i){let t,e,n;return e=new yu({props:{unfolded:i[3],content:i[2],inDelay:500}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","text svelte-1f7m1lj")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o&8&&(r.unfolded=s[3]),o&4&&(r.content=s[2]),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function Pd(i){let t,e,n;return e=new zu({props:{autoplayConfig:{autoplayCarousel:!1},unfolded:i[3],mediaData:i[1],tag:i[0],enableCarousel:!1,mediaItemConfig:{canPlay:!1,playButtonSizeIfNeed:"small",disableVideoIfHavePoster:!0},inDelay:500,duration:500}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","media-wrapper svelte-1f7m1lj")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o&8&&(r.unfolded=s[3]),o&2&&(r.mediaData=s[1]),o&1&&(r.tag=s[0]),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function NC(i){let t,e,n=i[0].state&&Cd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?n?(n.p(s,o),o&1&&M(n,1)):(n=Cd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function HC(i,t,e){let n,s,o,r,{tag:a}=t;return i.$$set=l=>{"tag"in l&&e(0,a=l.tag)},i.$$.update=()=>{var l,c,d;i.$$.dirty&1&&e(3,n=a.state?a.state.unfolded:!1),i.$$.dirty&1&&e(4,s=(c=(l=a.data.title)!=null?l:a.data.text)!=null?c:""),i.$$.dirty&16&&e(2,o=((d=s.length)!=null?d:0)>7?s.substring(0,6)+"...":s),i.$$.dirty&1&&e(1,r=a.data.mediaData)},[a,r,o,n,s]}class _C extends le{constructor(t){super(),ae(this,t,HC,NC,oe,{tag:0},GC)}}function WC(i){ue(i,"svelte-sezqcq",'@charset "UTF-8";.svelte-sezqcq.svelte-sezqcq{box-sizing:border-box}.marketing.svelte-sezqcq.svelte-sezqcq{transform:translateY(-100%)}.marketing.svelte-sezqcq .line.svelte-sezqcq{position:absolute;height:1.875rem;width:0.0625rem;left:50%;transform:translateX(-50%);background-color:white;bottom:0;transform-origin:bottom;transition:all 500ms}.marketing.svelte-sezqcq .content.svelte-sezqcq{position:relative;min-width:7.5rem;width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;border-radius:0.25rem;top:-1.875rem;left:-1rem;padding:0.5rem 0rem 0.5625rem;transition-property:opacity, transform;transition-duration:500ms}.marketing.svelte-sezqcq .content .headerImage.svelte-sezqcq{position:absolute;width:100%;top:0.25rem;transform:translateY(-100%);border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.title-wrapper.svelte-sezqcq.svelte-sezqcq{position:relative;width:100%;height:1.125rem}.title-wrapper.svelte-sezqcq .title.svelte-sezqcq{border-radius:0.25rem;width:100%;padding-left:0.625rem;padding-right:0.625rem}.title-wrapper.svelte-sezqcq .title .text.svelte-sezqcq{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.75rem;font-weight:bold;line-height:1.125rem}.footer.svelte-sezqcq.svelte-sezqcq{position:relative;padding:0.5rem 0.625rem 0 0;width:100%;display:flex;align-items:center}.footer.svelte-sezqcq .goto-button.svelte-sezqcq{display:flex;align-self:flex-end;flex-wrap:wrap;align-items:center;overflow:hidden;height:0.875rem}.footer.svelte-sezqcq .goto-button .gap.svelte-sezqcq{height:100%;width:0.625rem}.footer.svelte-sezqcq .goto-button .text.svelte-sezqcq{display:block;height:100%;font-size:0.625rem}.footer.svelte-sezqcq .arrow-wrapper.svelte-sezqcq{height:0.875rem;display:flex;align-self:flex-end;flex-grow:0;flex-shrink:0;align-items:center;margin-left:0.25rem}.footer.svelte-sezqcq .arrow-wrapper svg.arrow.svelte-sezqcq{width:0.375rem;height:0.625rem}.footer.svelte-sezqcq .price.svelte-sezqcq{flex-shrink:0;margin-right:auto;white-space:nowrap;display:flex;align-items:baseline;margin-left:0.625rem}.footer.svelte-sezqcq .price .value.svelte-sezqcq{position:relative;font-size:0.875rem;line-height:1rem;font-family:TG-TYPE, PingFangSC, Segoe UI, Rototo, sans-serif;letter-spacing:0rem}.footer.svelte-sezqcq .price .unit.svelte-sezqcq{padding-left:0.125rem;font-size:0.625rem}.tags-wrapper.svelte-sezqcq.svelte-sezqcq{position:relative;overflow:hidden;height:1rem;margin-top:0.25rem}.tags-wrapper.svelte-sezqcq .tags.svelte-sezqcq{position:relative;display:inline-flex;max-width:100%;flex-wrap:wrap;padding-left:0.625rem;padding-right:0.375rem}.tags-wrapper.svelte-sezqcq .tags .tag.svelte-sezqcq{display:flex;align-items:center;justify-content:center;flex-shrink:0;flex-grow:0;font-size:0.625rem;height:1rem;margin-right:0.25rem;margin-bottom:0.625rem;padding:0 0.25rem;border-radius:0.125rem;max-width:100%;text-overflow:ellipsis;overflow:hidden}.marketing.light.svelte-sezqcq .content.svelte-sezqcq{background-color:white}.marketing.light.svelte-sezqcq .content .title-wrapper .title .text.svelte-sezqcq{color:rgba(0, 0, 0, 0.8)}.marketing.light.svelte-sezqcq .content .tags-wrapper .tags .primary-tag.svelte-sezqcq{background:rgba(234, 208, 154, 0.5);color:#946700}.marketing.light.svelte-sezqcq .content .tags-wrapper .tags .secondary-tag.svelte-sezqcq{background:rgba(0, 0, 0, 0.06);color:rgba(0, 0, 0, 0.5)}.marketing.light.svelte-sezqcq .content .footer.svelte-sezqcq{color:#946700;fill:#946700}.marketing.dark.svelte-sezqcq .content.svelte-sezqcq{background-color:rgba(0, 0, 0, 0.5)}.marketing.dark.svelte-sezqcq .content .title-wrapper .title .text.svelte-sezqcq{color:white}.marketing.dark.svelte-sezqcq .content .tags-wrapper .tags .primary-tag.svelte-sezqcq{background:rgba(234, 208, 154, 0.5);color:white}.marketing.dark.svelte-sezqcq .content .tags-wrapper .tags .secondary-tag.svelte-sezqcq{background:rgba(255, 255, 255, 0.15);color:rgba(255, 255, 255, 0.85)}.marketing.dark.svelte-sezqcq .content .footer.svelte-sezqcq{color:#ead09a;fill:#ead09a}.marketing.unfolded.svelte-sezqcq .line.svelte-sezqcq{transform:translateX(-50%) scale(1, 1)}.marketing.folded.svelte-sezqcq .line.svelte-sezqcq{transform:translateX(-50%) scale(1, 0);transition-timing-function:ease-in}.marketing.unfolded.svelte-sezqcq .content.svelte-sezqcq{opacity:1}.marketing.folded.svelte-sezqcq .content.svelte-sezqcq{opacity:0;transform:translateY(0.425rem);transition-timing-function:ease-in}')}function Ed(i,t,e){const n=i.slice();return n[0]=t[e],n}function kd(i,t,e){const n=i.slice();return n[0]=t[e],n}function Md(i){let t,e;return{c(){t=x("img"),w(t,"class","headerImage svelte-sezqcq"),Pt(t.src,e=i[3].headerPictureUrl)||w(t,"src",e),w(t,"alt","")},m(n,s){B(n,t,s)},p(n,s){s&8&&!Pt(t.src,e=n[3].headerPictureUrl)&&w(t,"src",e)},d(n){n&&O(t)}}}function xd(i){let t,e,n,s,o=i[2]||[],r=[];for(let c=0;c<o.length;c+=1)r[c]=Dd(kd(i,o,c));let a=i[5]||[],l=[];for(let c=0;c<a.length;c+=1)l[c]=Sd(Ed(i,a,c));return{c(){t=x("div"),e=x("div");for(let c=0;c<r.length;c+=1)r[c].c();n=ee();for(let c=0;c<l.length;c+=1)l[c].c();w(e,"class","tags svelte-sezqcq"),Ne(()=>i[11].call(e)),w(t,"class","tags-wrapper svelte-sezqcq")},m(c,d){B(c,t,d),D(t,e);for(let h=0;h<r.length;h+=1)r[h]&&r[h].m(e,null);D(e,n);for(let h=0;h<l.length;h+=1)l[h]&&l[h].m(e,null);s=bo(e,i[11].bind(e))},p(c,d){if(d&4){o=c[2]||[];let h;for(h=0;h<o.length;h+=1){const u=kd(c,o,h);r[h]?r[h].p(u,d):(r[h]=Dd(u),r[h].c(),r[h].m(e,n))}for(;h<r.length;h+=1)r[h].d(1);r.length=o.length}if(d&32){a=c[5]||[];let h;for(h=0;h<a.length;h+=1){const u=Ed(c,a,h);l[h]?l[h].p(u,d):(l[h]=Sd(u),l[h].c(),l[h].m(e,null))}for(;h<l.length;h+=1)l[h].d(1);l.length=a.length}},d(c){c&&O(t),Tt(r,c),Tt(l,c),s()}}}function Dd(i){let t,e=i[0]+"",n;return{c(){t=x("div"),n=Me(e),w(t,"class","tag primary-tag svelte-sezqcq"),z(t,"min-width",Wa)},m(s,o){B(s,t,o),D(t,n)},p(s,o){o&4&&e!==(e=s[0]+"")&&Oe(n,e)},d(s){s&&O(t)}}}function Sd(i){let t,e=i[0]+"",n;return{c(){t=x("div"),n=Me(e),w(t,"class","tag secondary-tag svelte-sezqcq"),z(t,"min-width",Wa)},m(s,o){B(s,t,o),D(t,n)},p(s,o){o&32&&e!==(e=s[0]+"")&&Oe(n,e)},d(s){s&&O(t)}}}function Td(i){let t,e,n=i[7]&&Ld(i),s=i[3].highlightText&&zd(i);return{c(){t=x("div"),n&&n.c(),e=ee(),s&&s.c(),w(t,"class","footer svelte-sezqcq")},m(o,r){B(o,t,r),n&&n.m(t,null),D(t,e),s&&s.m(t,null)},p(o,r){o[7]?n?n.p(o,r):(n=Ld(o),n.c(),n.m(t,e)):n&&(n.d(1),n=null),o[3].highlightText?s?s.p(o,r):(s=zd(o),s.c(),s.m(t,null)):s&&(s.d(1),s=null)},d(o){o&&O(t),n&&n.d(),s&&s.d()}}}function Ld(i){let t,e,n=i[3].price.value+"",s,o,r=i[3].price.unit&&jd(i);return{c(){t=x("div"),e=x("span"),s=Me(n),o=ee(),r&&r.c(),w(e,"class","value svelte-sezqcq"),w(t,"class","price svelte-sezqcq")},m(a,l){B(a,t,l),D(t,e),D(e,s),D(t,o),r&&r.m(t,null)},p(a,l){l&8&&n!==(n=a[3].price.value+"")&&Oe(s,n),a[3].price.unit?r?r.p(a,l):(r=jd(a),r.c(),r.m(t,null)):r&&(r.d(1),r=null)},d(a){a&&O(t),r&&r.d()}}}function jd(i){let t,e=i[3].price.unit+"",n;return{c(){t=x("span"),n=Me(e),w(t,"class","unit svelte-sezqcq")},m(s,o){B(s,t,o),D(t,n)},p(s,o){o&8&&e!==(e=s[3].price.unit+"")&&Oe(n,e)},d(s){s&&O(t)}}}function zd(i){let t,e,n,s,o=i[3].highlightText+"",r,a,l;return{c(){t=x("div"),e=x("div"),n=ee(),s=x("span"),r=Me(o),a=ee(),l=x("div"),l.innerHTML='<svg class="arrow svelte-sezqcq" viewBox="0 0 6 9"><g transform="translate(-3, -2)" fill-rule="nonzero" class="svelte-sezqcq"><path d="M4.43868724,2.12056563 C4.28121824,1.95989074 4.02582143,1.95979988 3.86824251,2.1203627 C3.72498894,2.26632889 3.71189225,2.49481723 3.82900374,2.65587166 L6.57092402,5.92894326 C6.72651763,6.11470411 6.72651763,6.38529589 6.57092402,6.57105674 L3.86804348,9.79798499 C3.72488984,9.94405307 3.71194952,10.1725507 3.8291712,10.3335217 L3.86824251,10.3796373 C4.01149607,10.5256035 4.23559087,10.5387981 4.39346025,10.4192733 L4.43868724,10.3794344 L8.1144599,6.5985342 C8.30312347,6.40447482 8.30312347,6.09552518 8.1144599,5.9014658 L4.43868724,2.12056563 Z" class="svelte-sezqcq"></path></g></svg>',w(e,"class","gap svelte-sezqcq"),w(s,"class","text svelte-sezqcq"),w(t,"class","goto-button goto-icon svelte-sezqcq"),w(l,"class","arrow-wrapper svelte-sezqcq")},m(c,d){B(c,t,d),D(t,e),D(t,n),D(t,s),D(s,r),B(c,a,d),B(c,l,d)},p(c,d){d&8&&o!==(o=c[3].highlightText+"")&&Oe(r,o)},d(c){c&&O(t),c&&O(a),c&&O(l)}}}function FC(i){var k,T;let t,e,n,s,o,r,a,l,c,d,h=i[3].title+"",u,m,A,p,g;e=new Wt({props:{visible:i[4],outDelay:500,left:61,bottom:87,blurRadius:150,spreadRadius:75}});let v=i[3].headerPictureUrl&&Md(i),y=((k=i[2].length)!=null?k:0)+((T=i[5].length)!=null?T:0)>0&&xd(i),I=(i[7]||i[3].highlightText)&&Td(i);return{c(){t=x("div"),ie(e.$$.fragment),n=ee(),s=x("div"),o=ee(),r=x("div"),v&&v.c(),a=ee(),l=x("div"),c=x("div"),d=x("div"),u=Me(h),m=ee(),y&&y.c(),A=ee(),I&&I.c(),w(s,"class","line svelte-sezqcq"),z(s,"transition-delay",i[4]?Qs+"ms":Gs+Bd-Od-40+"ms"),w(d,"class","text svelte-sezqcq"),w(c,"class","title svelte-sezqcq"),w(l,"class","title-wrapper svelte-sezqcq"),w(r,"class","content svelte-sezqcq"),z(r,"max-width",Nt(i[9])),z(r,"transition-delay",i[4]?Qs+Gs+"ms":"0ms"),w(t,"class",p=Re(`marketing ${i[6]}`)+" svelte-sezqcq"),K(t,"unfolded",i[4]),K(t,"folded",i[8])},m(P,V){B(P,t,V),te(e,t,null),D(t,n),D(t,s),D(t,o),D(t,r),v&&v.m(r,null),D(r,a),D(r,l),D(l,c),D(c,d),D(d,u),D(r,m),y&&y.m(r,null),D(r,A),I&&I.m(r,null),g=!0},p(P,[V]){var W,q;const L={};V&16&&(L.visible=P[4]),e.$set(L),V&16&&z(s,"transition-delay",P[4]?Qs+"ms":Gs+Bd-Od-40+"ms"),P[3].headerPictureUrl?v?v.p(P,V):(v=Md(P),v.c(),v.m(r,a)):v&&(v.d(1),v=null),(!g||V&8)&&h!==(h=P[3].title+"")&&Oe(u,h),((W=P[2].length)!=null?W:0)+((q=P[5].length)!=null?q:0)>0?y?y.p(P,V):(y=xd(P),y.c(),y.m(r,A)):y&&(y.d(1),y=null),P[7]||P[3].highlightText?I?I.p(P,V):(I=Td(P),I.c(),I.m(r,null)):I&&(I.d(1),I=null),V&16&&z(r,"transition-delay",P[4]?Qs+Gs+"ms":"0ms"),(!g||V&64&&p!==(p=Re(`marketing ${P[6]}`)+" svelte-sezqcq"))&&w(t,"class",p),(!g||V&80)&&K(t,"unfolded",P[4]),(!g||V&320)&&K(t,"folded",P[8])},i(P){g||(M(e.$$.fragment,P),g=!0)},o(P){j(e.$$.fragment,P),g=!1},d(P){P&&O(t),ne(e),v&&v.d(),y&&y.d(),I&&I.d()}}}const Wa=40,Qs=400,Od=500,Gs=180,Bd=500;function YC(i,t,e){let n,s,o,r,a,l,c,d,{tag:h}=t,u,m=(()=>{var g;const p=(g=h.data.limitWidth)!=null?g:!0;if(typeof p=="number")return p;if(p===!0)return 172})();function A(){u=this.offsetHeight,e(1,u)}return i.$$set=p=>{"tag"in p&&e(0,h=p.tag)},i.$$.update=()=>{var p,g,v,y,I,k;i.$$.dirty&1&&e(4,n=(g=(p=h.state)==null?void 0:p.unfolded)!=null?g:!1),i.$$.dirty&16&&e(8,s=!n),i.$$.dirty&1&&e(3,o=h.data),i.$$.dirty&8&&e(7,r=Ai((v=o.price)==null?void 0:v.value)&&((y=o.price)==null?void 0:y.value)!==""),i.$$.dirty&1&&e(6,a=h.data.theme||"light"),i.$$.dirty&1026&&u>40&&e(10,l=l-1),i.$$.dirty&1032&&e(2,c=((I=o.brandTags)==null?void 0:I.slice(0,l).filter(Boolean))||[]),i.$$.dirty&1036&&e(5,d=((k=o.tags)==null?void 0:k.slice(0,l-c.length).filter(Boolean))||[])},e(10,l=(m-20)/Wa),[h,u,c,o,n,d,a,r,s,m,l,A]}class UC extends le{constructor(t){super(),ae(this,t,YC,FC,oe,{tag:0},WC)}}class XC extends Audio{constructor(e){super();f(this,"sharedAudioSrc");f(this,"sharedAudioPaused",!0);f(this,"sharedAudioCurrentTime",0);f(this,"tryplaying",!1);f(this,"audioInstance");f(this,"eventListenerDisposer");this.sharedAudioSrc=e}get paused(){var e;return(e=this.sharedAudioPaused)!=null?e:!0}get currentTime(){return this.sharedAudioCurrentTime}play(){return U(this,null,function*(){var n,s,o;if(this.tryplaying)return;this.tryplaying=!0,(!this.audioInstance||((n=this.audioInstance)==null?void 0:n.realSrc)!==this.sharedAudioSrc)&&(this.audioInstance=h1(this.sharedAudioSrc,{namespace:Ba.PlayAudio})),(s=this.eventListenerDisposer)==null||s.call(this),this.eventListenerDisposer=this.addEventListeners(),this.audioInstance.currentTime=(o=this.currentTime)!=null?o:0;const e=this.audioInstance.currentTime!==this.currentTime;this.audioInstance.play().then(()=>{var r;this.audioInstance.muted=!1,e&&(this.audioInstance.currentTime=(r=this.currentTime)!=null?r:0),this.sharedAudioPaused=!1}).catch(r=>{var a;r.message==="The operation is not supported."?console.error("Error: 音频文件可能损坏或修改过文件后缀",r):console.error("Error: error playing media in Safari",r),this.endedHandler(),(a=this.onerror)==null||a.call(this,r)}).finally(()=>{this.tryplaying=!1})})}pause(e){var n;if(this.audioInstance&&!this.paused){if(this.sharedAudioPaused=!0,(n=this.eventListenerDisposer)==null||n.call(this),this.audioInstance.ended){this.endedHandler();return}this.audioInstance.paused||this.audioInstance.pause(),this.onpause(e!=null?e:new Event("pause")),this.clear()}}dispose(){var e;(e=this.eventListenerDisposer)==null||e.call(this),this.clear(),this.audioInstance=void 0}clear(){var e;(e=this.audioInstance)==null||e.clear()}endedHandler(e){var n,s;(n=this.onended)==null||n.call(this,e!=null?e:new Event("ended")),(s=this.eventListenerDisposer)==null||s.call(this),this.sharedAudioPaused=!0,this.sharedAudioCurrentTime=0,this.clear()}addEventListeners(){const e=this.audioInstance;if(!e)return;const n=u=>{var m;this.sharedAudioCurrentTime=e.currentTime,(m=this.ontimeupdate)==null||m.call(this,u)},s=u=>{var m;e.isBlankAudio||(this.sharedAudioPaused=!1,(m=this.onplay)==null||m.call(this,u))},o=u=>{this.pause(u)},r=u=>{this.endedHandler(u)},a=u=>{var m;this.sharedAudioPaused=!0,(m=this.onerror)==null||m.call(this,u)},l=u=>{var m;return(m=this.oncanplay)==null?void 0:m.call(this,u)},c=u=>{var m;return(m=this.oncanplaythrough)==null?void 0:m.call(this,u)},d=u=>{var m;return(m=this.onloadeddata)==null?void 0:m.call(this,u)},h=u=>{var m;return(m=this.onloadedmetadata)==null?void 0:m.call(this,u)};return e.addEventListener("timeupdate",n),e.addEventListener("play",s),e.addEventListener("pause",o),e.addEventListener("ended",r),e.addEventListener("error",a),e.addEventListener("canplay",l),e.addEventListener("canplaythrough",c),e.addEventListener("loadeddata",d),e.addEventListener("loadedmetadata",h),()=>{e.removeEventListener("timeupdate",n),e.removeEventListener("play",s),e.removeEventListener("pause",o),e.removeEventListener("ended",r),e.removeEventListener("error",a),e.removeEventListener("canplay",l),e.removeEventListener("canplaythrough",c),e.removeEventListener("loadeddata",d),e.removeEventListener("loadedmetadata",h)}}}function ZC(i){ue(i,"svelte-13e7hxv",".audio.svelte-13e7hxv{pointer-events:auto;cursor:pointer;width:100%;height:100%}")}function JC(i){let t,e,n,s;const o=i[8].default,r=vi(o,i,i[7],null);return{c(){t=x("div"),r&&r.c(),w(t,"class","audio svelte-13e7hxv"),w(t,"style",i[0])},m(a,l){B(a,t,l),r&&r.m(t,null),e=!0,n||(s=be(t,"click",Mh(i[1])),n=!0)},p(a,[l]){r&&r.p&&(!e||l&128)&&yi(r,o,a,a[7],e?bi(o,a[7],l,null):wi(a[7]),null),(!e||l&1)&&w(t,"style",a[0])},i(a){e||(M(r,a),e=!0)},o(a){j(r,a),e=!1},d(a){a&&O(t),r&&r.d(a),n=!1,s()}}}function qC(i,t,e){let{$$slots:n={},$$scope:s}=t,{url:o}=t,{enable:r=!0}=t,{style:a=""}=t,{hooksInfo:l}=t;const c=yo(),d=fn("hooks"),h=fn("mediaStore");let u,m=!0;function A(){e(5,u.onplay=g=>{d.emit("playStateChange",H({event:g,state:"playing",mediaInstance:u},l)),c("play"),e(6,m=!1)},u),e(5,u.onpause=g=>{d.emit("playStateChange",H({event:g,state:"paused",mediaInstance:u},l)),c("pause"),e(6,m=!0)},u),e(5,u.onended=g=>{d.emit("playStateChange",H({event:g,state:"paused",mediaInstance:u},l)),c("pause"),e(6,m=!0)},u),e(5,u.onloadedmetadata=g=>{typeof u.duration=="number"&&!Number.isNaN(u.duration)&&c("duration",u.duration)},u),e(5,u.onerror=g=>{c("pause"),e(6,m=!0)},u),e(5,u.ontimeupdate=g=>{c("timeupdate",u.currentTime)},u)}h.subscribe(({currentMediaElement:g})=>{g!==u&&(m||u==null||u.pause())});function p(g){u&&(d.emit("click",H({event:g,target:"AudioTagPlayIcon",audioInstance:u},l)),h.set({currentMediaElement:u}),d.emit("playStateChange",H({event:g,state:u.paused?"playing":"paused",mediaInstance:u},l)),u.paused?u.play():u.pause())}return i.$$set=g=>{"url"in g&&e(2,o=g.url),"enable"in g&&e(3,r=g.enable),"style"in g&&e(0,a=g.style),"hooksInfo"in g&&e(4,l=g.hooksInfo),"$$scope"in g&&e(7,s=g.$$scope)},i.$$.update=()=>{i.$$.dirty&4&&(o||c("duration",0)),i.$$.dirty&36&&(u==null||u.dispose(),e(5,u=new XC(o)),c("audioRef",u),setTimeout(()=>c("audioRef",u),200),A()),i.$$.dirty&40&&(r||u==null||u.pause()),i.$$.dirty&72&&c(r&&!m?"play":"pause")},[a,p,o,r,l,u,m,s,n]}let Ou=class extends le{constructor(t){super(),ae(this,t,qC,JC,oe,{url:2,enable:3,style:0,hooksInfo:4},ZC)}};function KC(i){ue(i,"svelte-srt2pi",".audio-icon__wrapper.svelte-srt2pi.svelte-srt2pi{display:inline-block}.audio-icon.svelte-srt2pi.svelte-srt2pi{display:flex;justify-content:center;align-items:center;position:relative;width:100%;height:100%;border-radius:50%;background-color:rgba(255, 255, 255, 0.8)}.audio-icon.svelte-srt2pi .sound-wave__container.svelte-srt2pi{position:absolute;pointer-events:none;width:60%;height:60%}.sound-wave.svelte-srt2pi.svelte-srt2pi{animation-duration:2s;animation-iteration-count:infinite;animation-play-state:paused;transition:opacity 0}.playing.svelte-srt2pi .sound-wave.svelte-srt2pi{animation-play-state:running}.playing.svelte-srt2pi .sound-wave-1.svelte-srt2pi{animation-name:svelte-srt2pi-sound_wave_1_animation}.playing.svelte-srt2pi .sound-wave-2.svelte-srt2pi{animation-name:svelte-srt2pi-sound_wave_2_animation}.playing.svelte-srt2pi .sound-wave-3.svelte-srt2pi{animation-name:svelte-srt2pi-sound_wave_3_animation}@keyframes svelte-srt2pi-sound_wave_1_animation{0%,10%{opacity:0}25%,100%{opacity:1}}@keyframes svelte-srt2pi-sound_wave_2_animation{0%,35%{opacity:0}50%,100%{opacity:1}}@keyframes svelte-srt2pi-sound_wave_3_animation{0%,60%{opacity:0}75%,100%{opacity:1}}")}function Vd(i){let t,e;return t=new Wt({props:{center:!0,blurRadius:12,spreadRadius:5}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function $C(i){let t,e,n,s,o,r=i[1]&&Vd();return{c(){t=x("div"),r&&r.c(),e=ee(),n=x("div"),s=x("div"),s.innerHTML='<svg width="100%" height="100%" viewBox="0 0 128 128"><g transform="rotate(-45 12 64) translate(12 64)" fill="black" stroke="black" fill-opacity="0.6" stroke-opacity="0.6"><path stroke="none" class="sound-wave sound-wave-1 svelte-srt2pi" d="M0,23 A23,23 0 0,0 23,0 L0,0"></path><path fill="none" stroke-width="15" class="sound-wave sound-wave-2 svelte-srt2pi" d="M0,46 A46,46 0 0,0 46,0"></path><path fill="none" stroke-width="15" class="sound-wave sound-wave-3 svelte-srt2pi" d="M0,80 A80,80 0 0,0 80,0"></path></g></svg>',w(s,"class","sound-wave__container svelte-srt2pi"),w(n,"class","audio-icon svelte-srt2pi"),K(n,"playing",i[0]),w(t,"class","audio-icon__wrapper svelte-srt2pi"),w(t,"style",i[2]),z(t,"width",i[5]),z(t,"height",i[5])},m(a,l){B(a,t,l),r&&r.m(t,null),D(t,e),D(t,n),D(n,s),i[7](s),i[8](t),o=!0},p(a,[l]){a[1]?r?l&2&&M(r,1):(r=Vd(),r.c(),M(r,1),r.m(t,e)):r&&(de(),j(r,1,1,()=>{r=null}),he()),(!o||l&1)&&K(n,"playing",a[0]),(!o||l&4)&&w(t,"style",a[2]);const c=l&4;(c||l&36)&&z(t,"width",a[5]),(c||l&36)&&z(t,"height",a[5])},i(a){o||(M(r),o=!0)},o(a){j(r),o=!1},d(a){a&&O(t),r&&r.d(),i[7](null),i[8](null)}}}function eI(i,t,e){let n,{playing:s}=t,{shadow:o=!1}=t,{style:r=null}=t,{width:a="100%"}=t,l,c;function d(u){Qe[u?"unshift":"push"](()=>{c=u,e(4,c)})}function h(u){Qe[u?"unshift":"push"](()=>{l=u,e(3,l)})}return i.$$set=u=>{"playing"in u&&e(0,s=u.playing),"shadow"in u&&e(1,o=u.shadow),"style"in u&&e(2,r=u.style),"width"in u&&e(6,a=u.width)},i.$$.update=()=>{i.$$.dirty&64&&e(5,n=typeof a=="number"?Nt(a):a)},[s,o,r,l,c,n,a,d,h]}class Bu extends le{constructor(t){super(),ae(this,t,eI,$C,oe,{playing:0,shadow:1,style:2,width:6},KC)}}function tI(i){ue(i,"svelte-1s6gk4a",".audio-tag.svelte-1s6gk4a{position:absolute;left:0;top:0;width:0;height:0;overflow:visible}.audio-icon__wrapper.svelte-1s6gk4a{position:relative;vertical-align:top;width:100%;height:100%}.content.svelte-1s6gk4a{width:-moz-max-content;width:max-content;height:3.375rem;padding:2.25rem 0.25rem 0 1rem;position:absolute;left:0;bottom:0.125rem;overflow:hidden;box-sizing:border-box;font-size:0;white-space:nowrap;font-weight:600}.wrapper.svelte-1s6gk4a{position:relative;width:100%;height:100%}.audio-icon.svelte-1s6gk4a{pointer-events:none;vertical-align:top;display:inline-block;width:1rem;height:1rem;margin-right:0.25rem;margin-top:0.0625rem}.audio.svelte-1s6gk4a{position:relative;width:100%;height:100%}")}function Rd(i){var g,v;let t,e,n,s,o,r,a,l,c,d,h,u,m,A;e=new Wt({props:{visible:i[6],left:i[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}});let p=i[6]&&Qd(i);return c=new wu({props:{visible:i[6],textUnfolded:i[1],content:i[5]}}),h=new Va({props:{unfolded:i[6],length:i[3],outDelay:i[4]+20*Math.min((v=(g=i[5])==null?void 0:g.length)!=null?v:10,15),useLinearColor:!0}}),{c(){t=x("div"),ie(e.$$.fragment),n=ee(),s=x("div"),o=x("div"),r=x("div"),p&&p.c(),a=ee(),l=x("div"),ie(c.$$.fragment),d=ee(),ie(h.$$.fragment),w(r,"class","audio-icon svelte-1s6gk4a"),z(l,"display","inline-block"),w(o,"class","wrapper svelte-1s6gk4a"),w(s,"class","content svelte-1s6gk4a"),w(t,"class","audio-tag svelte-1s6gk4a"),K(t,"unfolded",i[6])},m(y,I){B(y,t,I),te(e,t,null),D(t,n),D(t,s),D(s,o),D(o,r),p&&p.m(r,null),D(o,a),D(o,l),te(c,l,null),D(t,d),te(h,t,null),u=!0,m||(A=[be(l,"click",i[7]),$t(Pi.call(null,l)),be(l,"clientWidth",i[12])],m=!0)},p(y,I){var V,L;const k={};I&64&&(k.visible=y[6]),I&8&&(k.left=y[3]/2+"px"),e.$set(k),y[6]?p?(p.p(y,I),I&64&&M(p,1)):(p=Qd(y),p.c(),M(p,1),p.m(r,null)):p&&(de(),j(p,1,1,()=>{p=null}),he());const T={};I&64&&(T.visible=y[6]),I&2&&(T.textUnfolded=y[1]),I&32&&(T.content=y[5]),c.$set(T);const P={};I&64&&(P.unfolded=y[6]),I&8&&(P.length=y[3]),I&48&&(P.outDelay=y[4]+20*Math.min((L=(V=y[5])==null?void 0:V.length)!=null?L:10,15)),h.$set(P),(!u||I&64)&&K(t,"unfolded",y[6])},i(y){u||(M(e.$$.fragment,y),M(p),M(c.$$.fragment,y),M(h.$$.fragment,y),u=!0)},o(y){j(e.$$.fragment,y),j(p),j(c.$$.fragment,y),j(h.$$.fragment,y),u=!1},d(y){y&&O(t),ne(e),p&&p.d(),ne(c),ne(h),m=!1,Je(A)}}}function Qd(i){let t,e,n,s,o,r,a;return e=new Wt({props:{center:!0,blurRadius:15,spreadRadius:6}}),s=new Ou({props:{enable:i[6],url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[nI]},$$scope:{ctx:i}}}),s.$on("play",i[8]),s.$on("pause",i[9]),s.$on("error",i[10]),s.$on("audioRef",i[11]),{c(){t=x("div"),ie(e.$$.fragment),n=ee(),ie(s.$$.fragment),w(t,"class","audio svelte-1s6gk4a")},m(l,c){B(l,t,c),te(e,t,null),D(t,n),te(s,t,null),a=!0},p(l,c){i=l;const d={};c&64&&(d.enable=i[6]),c&1&&(d.url=i[0].data.audioUrl),c&1&&(d.hooksInfo={tag:i[0]}),c&8196&&(d.$$scope={dirty:c,ctx:i}),s.$set(d)},i(l){a||(M(e.$$.fragment,l),M(s.$$.fragment,l),l&&Ne(()=>{a&&(r&&r.end(1),o=On(t,tt,{duration:1e3,delay:0,easing:hi}),o.start())}),a=!0)},o(l){var c,d;j(e.$$.fragment,l),j(s.$$.fragment,l),o&&o.invalidate(),l&&(r=Ii(t,tt,{duration:1e3,delay:20*Math.min((d=(c=i[5])==null?void 0:c.length)!=null?d:10,15),easing:hi})),a=!1},d(l){l&&O(t),ne(e),ne(s),l&&r&&r.end()}}}function nI(i){let t,e,n;return e=new Bu({props:{playing:i[2]}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","audio-icon__wrapper svelte-1s6gk4a")},m(s,o){B(s,t,o),te(e,t,null),n=!0},p(s,o){const r={};o&4&&(r.playing=s[2]),e.$set(r)},i(s){n||(M(e.$$.fragment,s),n=!0)},o(s){j(e.$$.fragment,s),n=!1},d(s){s&&O(t),ne(e)}}}function iI(i){let t,e,n=i[0].state&&Rd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?n?(n.p(s,o),o&1&&M(n,1)):(n=Rd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function sI(i,t,e){let n,s,o,{tag:r}=t,a=!1,l=!1,c;function d(){e(1,a=!a)}const h=()=>{e(2,l=!0)},u=()=>{e(2,l=!1)},m=()=>{e(2,l=!1)};function A(g){Ci.call(this,i,g)}const p=g=>{e(3,c=g.detail)};return i.$$set=g=>{"tag"in g&&e(0,r=g.tag)},i.$$.update=()=>{var g,v,y;i.$$.dirty&1&&e(6,n=!!((g=r.state)!=null&&g.unfolded)),i.$$.dirty&1&&e(5,s=(y=(v=r.data.title)!=null?v:r.data.text)!=null?y:""),i.$$.dirty&2&&e(4,o=a?450:0)},[r,a,l,c,o,s,n,d,h,u,m,A,p]}class oI extends le{constructor(t){super(),ae(this,t,sI,iI,oe,{tag:0},tI)}}function rI(i){ue(i,"svelte-58hfjf",".audio-tag__wrapper.svelte-58hfjf{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.audio-tag.svelte-58hfjf{position:relative;width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;padding:0.1875rem;padding-right:0.625rem;border-radius:624999.9375rem;border:0.03125rem solid rgba(255, 255, 255, 0.2)}.audio__inner.svelte-58hfjf{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.text.svelte-58hfjf{font-weight:bold;font-size:0.75rem;margin-left:0.25rem}.audio-icon__wrapper.svelte-58hfjf{position:relative;vertical-align:top;pointer-events:none;width:1.375rem;height:1.375rem}")}function Gd(i){let t,e,n,s;return n=new Ou({props:{style:"width: max-content; height: max-content;",enable:i[0].state.visible,url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[lI]},$$scope:{ctx:i}}}),n.$on("play",i[6]),n.$on("pause",i[7]),n.$on("error",i[8]),n.$on("timeupdate",i[9]),n.$on("duration",i[10]),n.$on("audioRef",i[11]),{c(){t=x("div"),e=x("div"),ie(n.$$.fragment),w(e,"class","audio-tag svelte-58hfjf"),z(e,"background-color",i[4].bgColor),z(e,"color",i[4].fontColor),w(t,"class","audio-tag__wrapper svelte-58hfjf")},m(o,r){B(o,t,r),D(t,e),te(n,e,null),s=!0},p(o,r){const a={};r&1&&(a.enable=o[0].state.visible),r&1&&(a.url=o[0].data.audioUrl),r&1&&(a.hooksInfo={tag:o[0]}),r&8232&&(a.$$scope={dirty:r,ctx:o}),n.$set(a),r&16&&z(e,"background-color",o[4].bgColor),r&16&&z(e,"color",o[4].fontColor)},i(o){s||(M(n.$$.fragment,o),s=!0)},o(o){j(n.$$.fragment,o),s=!1},d(o){o&&O(t),ne(n)}}}function aI(i){let t;return{c(){t=Me(i[5])},m(e,n){B(e,t,n)},p(e,n){n&32&&Oe(t,e[5])},d(e){e&&O(t)}}}function lI(i){let t,e,n,s,o,r,a;return n=new Bu({props:{playing:i[3]}}),r=new Ra({props:{maxWidth:72,$$slots:{default:[aI]},$$scope:{ctx:i}}}),{c(){t=x("div"),e=x("div"),ie(n.$$.fragment),s=ee(),o=x("div"),ie(r.$$.fragment),w(e,"class","audio-icon__wrapper svelte-58hfjf"),w(o,"class","text svelte-58hfjf"),w(t,"class","audio__inner svelte-58hfjf")},m(l,c){B(l,t,c),D(t,e),te(n,e,null),D(t,s),D(t,o),te(r,o,null),a=!0},p(l,c){const d={};c&8&&(d.playing=l[3]),n.$set(d);const h={};c&8224&&(h.$$scope={dirty:c,ctx:l}),r.$set(h)},i(l){a||(M(n.$$.fragment,l),M(r.$$.fragment,l),a=!0)},o(l){j(n.$$.fragment,l),j(r.$$.fragment,l),a=!1},d(l){l&&O(t),ne(n),ne(r)}}}function cI(i){let t,e,n=i[0].state&&Gd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?n?(n.p(s,o),o&1&&M(n,1)):(n=Gd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function dI(i,t,e){let n,s,{tag:o}=t;const r={light:{bgColor:"rgba(255, 255, 255, 0.3)",fontColor:"rgba(0, 0, 0, 0.6)"},dark:{bgColor:"rgba(0, 0, 0, 0.3)",fontColor:"white"}};let a=0,l=0,c=!1;const d=()=>{e(3,c=!0)},h=()=>{e(3,c=!1)},u=()=>{e(3,c=!1)},m=g=>{e(1,a=g.detail)},A=g=>{e(2,l=g.detail)};function p(g){Ci.call(this,i,g)}return i.$$set=g=>{"tag"in g&&e(0,o=g.tag)},i.$$.update=()=>{var g,v,y;i.$$.dirty&1&&e(5,n=(v=(g=o.data.title)!=null?g:o.data.text)!=null?v:""),i.$$.dirty&1&&e(4,s=(y=r[o.data.theme||"light"])!=null?y:r.light)},[o,a,l,c,s,n,d,h,u,m,A,p]}class hI extends le{constructor(t){super(),ae(this,t,dI,cI,oe,{tag:0},rI)}}function uI(i){let t,e;return t=new hI({props:{tag:i[0]}}),t.$on("audioRef",i[2]),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.tag=n[0]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function fI(i){let t,e;return t=new oI({props:{tag:i[0]}}),t.$on("audioRef",i[2]),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&1&&(o.tag=n[0]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function mI(i){let t,e,n,s;const o=[fI,uI],r=[];function a(l,c){return l[1]==="line"?0:l[1]==="plane"?1:-1}return~(t=a(i))&&(e=r[t]=o[t](i)),{c(){e&&e.c(),n=Pe()},m(l,c){~t&&r[t].m(l,c),B(l,n,c),s=!0},p(l,[c]){let d=t;t=a(l),t===d?~t&&r[t].p(l,c):(e&&(de(),j(r[d],1,1,()=>{r[d]=null}),he()),~t?(e=r[t],e?e.p(l,c):(e=r[t]=o[t](l),e.c()),M(e,1),e.m(n.parentNode,n)):e=null)},i(l){s||(M(e),s=!0)},o(l){j(e),s=!1},d(l){~t&&r[t].d(l),l&&O(n)}}}function gI(i,t,e){let n,{tag:s}=t,o;function r(a){o=a.detail}return s.play=()=>o.play(),s.pause=()=>o.pause(),i.$$set=a=>{"tag"in a&&e(0,s=a.tag)},i.$$.update=()=>{var a;i.$$.dirty&1&&e(1,n=(a=s.data.appearance)!=null?a:"line")},[s,n,r]}class pI extends le{constructor(t){super(),ae(this,t,gI,mI,oe,{tag:0})}}function AI(i){ue(i,"svelte-10cw0el",".media-wrapper.svelte-10cw0el{position:absolute;width:100%;height:100%}")}function Nd(i){var s;let t,e,n;return e=new zu({props:{mediaItemConfig:{canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(s=i[4])!=null?s:"withText",disableVideoIfHavePoster:!1,objectFit:i[2]},unfolded:i[6],mediaData:i[5],enableCarousel:i[1],autoplayConfig:i[3],tag:i[0],inDelay:500,duration:500}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class","media-wrapper svelte-10cw0el")},m(o,r){B(o,t,r),te(e,t,null),n=!0},p(o,r){var l;const a={};r&20&&(a.mediaItemConfig={canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(l=o[4])!=null?l:"withText",disableVideoIfHavePoster:!1,objectFit:o[2]}),r&64&&(a.unfolded=o[6]),r&32&&(a.mediaData=o[5]),r&2&&(a.enableCarousel=o[1]),r&8&&(a.autoplayConfig=o[3]),r&1&&(a.tag=o[0]),e.$set(a)},i(o){n||(M(e.$$.fragment,o),n=!0)},o(o){j(e.$$.fragment,o),n=!1},d(o){o&&O(t),ne(e)}}}function vI(i){let t,e,n=i[0].state&&i[5]&&Nd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state&&s[5]?n?(n.p(s,o),o&33&&M(n,1)):(n=Nd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function bI(i,t,e){let n,s,o,r,a,l,{tag:c}=t;return i.$$set=d=>{"tag"in d&&e(0,c=d.tag)},i.$$.update=()=>{var d,h;i.$$.dirty&1&&e(6,n=c.state?c.state.unfolded:!1),i.$$.dirty&1&&e(5,s=c.data.mediaData),i.$$.dirty&1&&e(1,o=c.data.enableCarousel),i.$$.dirty&1&&e(4,r=c.data.playIcon),i.$$.dirty&3&&e(3,a=(d=c.data.autoplayConfig)!=null?d:{autoplay:o!=null?o:!0,autoplayVideo:!0}),i.$$.dirty&1&&e(2,l=(h=c.data.objectFit)!=null?h:(()=>c.data.adaptationMode==="stretch"?"fill":c.data.adaptationMode==="proportional"?"contain":void 0)())},[c,o,l,a,r,s,n]}class yI extends le{constructor(t){super(),ae(this,t,bI,vI,oe,{tag:0},AI)}}function Vu(i){return U(this,null,function*(){return new Promise((t,e)=>{if(!i){e(Error("url is empty"));return}const n=new Image;n.src=i,n.onload=()=>t({width:n.width,height:n.height}),n.onerror=e})})}function wI(i){return U(this,null,function*(){const{url:t,ratio:e=3}=i;i.ratio||console.warn("Tag icon ratio is not set, default is 3");const{width:n,height:s}=yield Vu(t);return Ae(H({},i),{width:n/e,height:s/e})})}function CI(i){return U(this,null,function*(){const{steps:t,url:e,ratio:n=3,fps:s=24}=i;if(!t)throw new Error("KeyframeIcon requires steps");const{width:o,height:r}=yield Vu(e),a=o/n,l=r/n,c=a/t,d=l,h=1/s*t+"s";return Ae(H({},i),{width:c,height:d,duration:h})})}function II(i){ue(i,"svelte-316sq3","@keyframes svelte-316sq3-sprites-animation{0%{background-position:0 0}100%{background-position:100% 0}}.icon-image.svelte-316sq3{display:block;width:auto}.icon-keyframe.svelte-316sq3{background-repeat:no-repeat;background-size:auto 100%;animation-direction:normal;animation-iteration-count:infinite;animation-name:svelte-316sq3-sprites-animation;animation-delay:0}")}function Hd(i){i[1]=i[19].width}function _d(i){i[1]=i[19].width,i[16]=i[19].height,i[17]=i[19].steps,i[18]=i[19].duration}function Wd(i){let t,e,n,s=i[0]&&Fd();function o(l,c){return l[8]?EI:PI}let r=o(i),a=r(i);return{c(){t=x("div"),s&&s.c(),e=ee(),a.c(),w(t,"class","icon"),z(t,"width",i[1])},m(l,c){B(l,t,c),s&&s.m(t,null),D(t,e),a.m(t,null),n=!0},p(l,c){l[0]?s?c&1&&M(s,1):(s=Fd(),s.c(),M(s,1),s.m(t,e)):s&&(de(),j(s,1,1,()=>{s=null}),he()),r===(r=o(l))&&a?a.p(l,c):(a.d(1),a=r(l),a&&(a.c(),a.m(t,null))),c&2&&z(t,"width",l[1])},i(l){n||(M(s),n=!0)},o(l){j(s),n=!1},d(l){l&&O(t),s&&s.d(),a.d()}}}function Fd(i){let t,e;return t=new Wt({props:{center:!0,blurRadius:24,spreadRadius:16}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function PI(i){let t,e,n={ctx:i,current:null,token:null,hasCatch:!1,pending:xI,then:MI,catch:kI,value:19};return eo(e=i[11](_e({url:i[7],ratio:i[5]})),n),{c(){t=Pe(),n.block.c()},m(s,o){B(s,t,o),n.block.m(s,n.anchor=o),n.mount=()=>t.parentNode,n.anchor=t},p(s,o){i=s,n.ctx=i,o&160&&e!==(e=i[11](_e({url:i[7],ratio:i[5]})))&&eo(e,n)||jh(n,i,o)},d(s){s&&O(t),n.block.d(s),n.token=null,n=null}}}function EI(i){let t,e,n={ctx:i,current:null,token:null,hasCatch:!1,pending:TI,then:SI,catch:DI,value:19};return eo(e=i[10](_e({url:i[7],steps:i[2],fps:i[6],ratio:i[5]})),n),{c(){t=Pe(),n.block.c()},m(s,o){B(s,t,o),n.block.m(s,n.anchor=o),n.mount=()=>t.parentNode,n.anchor=t},p(s,o){i=s,n.ctx=i,o&228&&e!==(e=i[10](_e({url:i[7],steps:i[2],fps:i[6],ratio:i[5]})))&&eo(e,n)||jh(n,i,o)},d(s){s&&O(t),n.block.d(s),n.token=null,n=null}}}function kI(i){return{c:J,m:J,p:J,d:J}}function MI(i){Hd(i);let t,e;return{c(){t=x("img"),w(t,"alt","tag-icon"),w(t,"class","icon-image svelte-316sq3"),Pt(t.src,e=i[7])||w(t,"src",e),z(t,"width",Nt(ii({originWidth:i[1],scale:i[4],wantedWidth:i[3]}).width))},m(n,s){B(n,t,s)},p(n,s){Hd(n),s&128&&!Pt(t.src,e=n[7])&&w(t,"src",e),s&184&&z(t,"width",Nt(ii({originWidth:n[1],scale:n[4],wantedWidth:n[3]}).width))},d(n){n&&O(t)}}}function xI(i){return{c:J,m:J,p:J,d:J}}function DI(i){return{c:J,m:J,p:J,d:J}}function SI(i){_d(i);let t,e=`url(${i[7]})`,n=`steps(${i[17]}, jump-none)`;return{c(){t=x("div"),w(t,"class","icon-keyframe svelte-316sq3"),z(t,"width",Nt(ii({originWidth:i[1],originHeight:i[16],scale:i[4],wantedWidth:i[3]}).width)),z(t,"height",Nt(ii({originWidth:i[1],originHeight:i[16],scale:i[4],wantedWidth:i[3]}).height)),z(t,"background-image",e),z(t,"animation-duration",i[18]),z(t,"animation-timing-function",n)},m(s,o){B(s,t,o)},p(s,o){_d(s),o&252&&z(t,"width",Nt(ii({originWidth:s[1],originHeight:s[16],scale:s[4],wantedWidth:s[3]}).width)),o&252&&z(t,"height",Nt(ii({originWidth:s[1],originHeight:s[16],scale:s[4],wantedWidth:s[3]}).height)),o&128&&e!==(e=`url(${s[7]})`)&&z(t,"background-image",e),o&228&&z(t,"animation-duration",s[18]),o&228&&n!==(n=`steps(${s[17]}, jump-none)`)&&z(t,"animation-timing-function",n)},d(s){s&&O(t)}}}function TI(i){return{c:J,m:J,p:J,d:J}}function LI(i){let t,e,n=i[9]&&Wd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[9]?n?(n.p(s,o),o&512&&M(n,1)):(n=Wd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function ii(i){const{originWidth:t,originHeight:e,scale:n=1,wantedWidth:s}=i,o=(s!=null?s:t)*n,r=typeof e=="number"?o*(e/t):void 0;return Ae(H({},i),{width:o,height:r})}function jI(i,t,e){let n,s,o,r,a,l,c,d,h,{width:u=null}=t,{icon:m=null}=t,{shadow:A=!1}=t;const p=yo();function g(I){return U(this,null,function*(){const k=yield CI(I);return p("iconLoaded",k),k})}function v(I){return U(this,null,function*(){if(typeof h=="number")return Ae(H({},I),{width:h});const k=yield wI(I);return p("iconLoaded",k),k})}function y(){d||p("iconLoaded")}return vt(()=>{y()}),i.$$set=I=>{"width"in I&&e(1,u=I.width),"icon"in I&&e(12,m=I.icon),"shadow"in I&&e(0,A=I.shadow)},i.$$.update=()=>{var I,k;i.$$.dirty&4096&&e(7,n=m==null?void 0:m.url),i.$$.dirty&4096&&e(2,s=(I=m==null?void 0:m.steps)!=null?I:1),i.$$.dirty&4096&&e(6,o=m==null?void 0:m.fps),i.$$.dirty&4096&&e(5,r=m==null?void 0:m.ratio),i.$$.dirty&4096&&e(4,a=(k=m==null?void 0:m.scale)!=null?k:1),i.$$.dirty&4096&&e(3,l=m==null?void 0:m.width),i.$$.dirty&252&&e(9,c=_e({url:n,steps:s,fps:o,ratio:r,scale:a,width:l})),i.$$.dirty&4&&e(8,d=s>1),i.$$.dirty&2&&(h=u)},y(),[A,u,s,l,a,r,o,n,d,c,g,v,m]}class Ru extends le{constructor(t){super(),ae(this,t,jI,LI,oe,{width:1,icon:12,shadow:0},II)}}function zI(i){ue(i,"svelte-e58ijk",".wrapper.svelte-e58ijk{font-weight:600;cursor:pointer;width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:auto}.text-wrapper.svelte-e58ijk{position:relative;display:flex;align-items:center;justify-content:center}.text.svelte-e58ijk{position:absolute;top:0;font-size:0.875rem;color:#ffffff;letter-spacing:0;text-align:center;max-width:8.75rem;width:-moz-max-content;width:max-content;line-height:1.125rem;text-shadow:0.125rem 0rem 0.5rem rgba(0, 0, 0, 0.15)}")}function Yd(i){let t,e,n,s,o,r;return e=new Wt({props:{outDelay:0,inDelay:0,center:!0,width:"80%",blurRadius:40,spreadRadius:16,opacity:.08}}),{c(){t=x("div"),ie(e.$$.fragment),n=ee(),s=x("div"),o=Me(i[1]),w(s,"class","text svelte-e58ijk"),w(t,"class","text-wrapper svelte-e58ijk")},m(a,l){B(a,t,l),te(e,t,null),D(t,n),D(t,s),D(s,o),r=!0},p(a,l){(!r||l&2)&&Oe(o,a[1])},i(a){r||(M(e.$$.fragment,a),r=!0)},o(a){j(e.$$.fragment,a),r=!1},d(a){a&&O(t),ne(e)}}}function OI(i){let t,e,n,s;e=new Ru({props:{icon:i[0],shadow:!0}}),e.$on("iconLoaded",i[4]);let o=i[1]&&i[2]&&Yd(i);return{c(){t=x("div"),ie(e.$$.fragment),n=ee(),o&&o.c(),w(t,"class","wrapper svelte-e58ijk")},m(r,a){B(r,t,a),te(e,t,null),D(t,n),o&&o.m(t,null),s=!0},p(r,[a]){const l={};a&1&&(l.icon=r[0]),e.$set(l),r[1]&&r[2]?o?(o.p(r,a),a&6&&M(o,1)):(o=Yd(r),o.c(),M(o,1),o.m(t,null)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){s||(M(e.$$.fragment,r),M(o),s=!0)},o(r){j(e.$$.fragment,r),j(o),s=!1},d(r){r&&O(t),ne(e),o&&o.d()}}}function BI(i,t,e){let n,s,o,{tag:r}=t;const a=()=>{e(2,n=!0)};return i.$$set=l=>{"tag"in l&&e(3,r=l.tag)},i.$$.update=()=>{var l,c,d;i.$$.dirty&8&&e(1,s=(l=r.data.title)!=null?l:r.data.text),i.$$.dirty&8&&e(0,o=(d=r.data.icon)!=null?d:(c=r.style)==null?void 0:c.point)},e(2,n=!1),[o,s,n,r,a]}class VI extends le{constructor(t){super(),ae(this,t,BI,OI,oe,{tag:3},zI)}}function RI(i){ue(i,"svelte-kzl2aj",".customElement__container.svelte-kzl2aj{position:relative}")}function QI(i){let t,e;return{c(){t=new Zs(!1),e=Pe(),t.a=e},m(n,s){t.m(i[2],n,s),B(n,e,s)},p:J,d(n){n&&O(e),n&&t.d()}}}function GI(i){let t,e=typeof i[2]=="string"&&QI(i);return{c(){t=x("div"),e&&e.c(),w(t,"class","customElement__container svelte-kzl2aj"),K(t,"unfolded",i[1])},m(n,s){B(n,t,s),e&&e.m(t,null),i[5](t)},p(n,[s]){typeof n[2]=="string"&&e.p(n,s),s&2&&K(t,"unfolded",n[1])},i:J,o:J,d(n){n&&O(t),e&&e.d(),i[5](null)}}}function NI(i,t,e){var d,h;let n,{tag:s}=t,{renderMap:o=new Map}=t,r,a=(h=s.element)!=null?h:(d=o.get(s.contentType))==null?void 0:d.renderer,l;vt(()=>{r&&(a instanceof Element?(r.appendChild(a),l=()=>{a instanceof Element&&a.remove()}):typeof a=="function"&&(l=a(r,s)))}),Lt(()=>{l==null||l()});function c(u){Qe[u?"unshift":"push"](()=>{r=u,e(0,r)})}return i.$$set=u=>{"tag"in u&&e(3,s=u.tag),"renderMap"in u&&e(4,o=u.renderMap)},i.$$.update=()=>{i.$$.dirty&8&&e(1,n=s.state.unfolded)},[r,n,a,s,o,c]}class HI extends le{constructor(t){super(),ae(this,t,NI,GI,oe,{tag:3,renderMap:4},RI)}}function _I(i){ue(i,"svelte-1r4fqvg",'@font-face{font-family:"TG-TYPE";font-style:normal;font-weight:400;src:local("TG-TYPE-Bold"), url(data:application/font-woff2;charset=utf-8;base64,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) format("woff2")}*{-webkit-tap-highlight-color:transparent}.content__container.svelte-1r4fqvg{position:relative;left:50%;top:50%;transform:translate(-50%, -50%);font-family:PingFangSC, Segoe UI, Rototo, sans-serif}.content__container.withAnimation.svelte-1r4fqvg{transition:opacity 0.3s linear}.content__container.unClickable.svelte-1r4fqvg{pointer-events:none !important}.content__container.unClickable.svelte-1r4fqvg *{pointer-events:none !important}.content__wrapper.svelte-1r4fqvg{pointer-events:none;width:100%;height:100%}.content__container.hide.svelte-1r4fqvg{opacity:0;pointer-events:none}.content__container.hide.svelte-1r4fqvg *{pointer-events:none !important}.content__container.disable.svelte-1r4fqvg{display:none}.content.svelte-1r4fqvg{position:relative;width:100%;height:100%;font-size:0.75rem;color:#fff}.content.svelte-1r4fqvg:not(.unfolded){pointer-events:none}.content.svelte-1r4fqvg:not(.unfolded) *{pointer-events:none !important}.content.unfolded.svelte-1r4fqvg{pointer-events:auto}')}function WI(i){let t,e;return{c(){t=x("div"),w(t,"data-info","tag content is keep folded"),w(t,"data-id",e=i[1].id)},m(n,s){B(n,t,s)},p(n,s){s&2&&e!==(e=n[1].id)&&w(t,"data-id",e)},i:J,o:J,d(n){n&&O(t)}}}function FI(i){let t,e,n,s,o,r,a,l,c,d;const h=[KI,qI,JI,ZI,XI,UI],u=[];function m(A,p){return A[1].contentType==="Text"?0:A[1].contentType==="ImageText"||A[1].contentType==="Image"||A[1].contentType==="Video"?1:A[1].contentType==="Audio"?2:A[1].contentType==="Marketing"?3:A[1].contentType==="Link"||A[1].contentType==="VRLink"||A[1].contentType==="PanoLink"||A[1].contentType==="Sticker"?4:A[1].contentType==="MediaPlane"||A[1].contentType==="MediaModel"?5:-1}return~(s=m(i))&&(o=u[s]=h[s](i)),{c(){var A;t=x("div"),e=x("div"),n=x("div"),o&&o.c(),w(n,"class","content svelte-1r4fqvg"),K(n,"unfolded",(A=i[1].state)==null?void 0:A.unfolded),w(e,"class","content__wrapper svelte-1r4fqvg"),w(t,"class",r=Re(rt("content__container",i[1].className))+" svelte-1r4fqvg"),w(t,"data-id",a=i[1].id),K(t,"disable",i[1].enabled===!1),K(t,"hide",i[5]),K(t,"withAnimation",i[0]),K(t,"unClickable",i[1].config.clickable===!1),z(t,"width",i[1].stickType==="Plane"||i[1].contentType==="MediaModel"?"100%":0),z(t,"height",i[1].stickType==="Plane"||i[1].contentType==="MediaModel"?"100%":0)},m(A,p){B(A,t,p),D(t,e),D(e,n),~s&&u[s].m(n,null),l=!0,c||(d=be(t,"click",Mh(i[15])),c=!0)},p(A,p){var v;let g=s;s=m(A),s===g?~s&&u[s].p(A,p):(o&&(de(),j(u[g],1,1,()=>{u[g]=null}),he()),~s?(o=u[s],o?o.p(A,p):(o=u[s]=h[s](A),o.c()),M(o,1),o.m(n,null)):o=null),(!l||p&2)&&K(n,"unfolded",(v=A[1].state)==null?void 0:v.unfolded),(!l||p&2&&r!==(r=Re(rt("content__container",A[1].className))+" svelte-1r4fqvg"))&&w(t,"class",r),(!l||p&2&&a!==(a=A[1].id))&&w(t,"data-id",a),(!l||p&2)&&K(t,"disable",A[1].enabled===!1),(!l||p&34)&&K(t,"hide",A[5]),(!l||p&3)&&K(t,"withAnimation",A[0]),(!l||p&2)&&K(t,"unClickable",A[1].config.clickable===!1),p&2&&z(t,"width",A[1].stickType==="Plane"||A[1].contentType==="MediaModel"?"100%":0),p&2&&z(t,"height",A[1].stickType==="Plane"||A[1].contentType==="MediaModel"?"100%":0)},i(A){l||(M(o),l=!0)},o(A){j(o),l=!1},d(A){A&&O(t),~s&&u[s].d(),c=!1,d()}}}function YI(i){let t,e,n,s,o,r,a;return e=new HI({props:{tag:_e(i[1]),renderMap:i[3]}}),{c(){t=x("div"),ie(e.$$.fragment),w(t,"class",n=Re(rt("content__container",i[1].className))+" svelte-1r4fqvg"),w(t,"data-id",s=i[1].id),K(t,"custom-tag-disable",i[1].enabled===!1),K(t,"custom-tag-hide",i[5])},m(l,c){B(l,t,c),te(e,t,null),o=!0,r||(a=be(t,"click",i[14]),r=!0)},p(l,c){const d={};c&2&&(d.tag=_e(l[1])),c&8&&(d.renderMap=l[3]),e.$set(d),(!o||c&2&&n!==(n=Re(rt("content__container",l[1].className))+" svelte-1r4fqvg"))&&w(t,"class",n),(!o||c&2&&s!==(s=l[1].id))&&w(t,"data-id",s),(!o||c&2)&&K(t,"custom-tag-disable",l[1].enabled===!1),(!o||c&34)&&K(t,"custom-tag-hide",l[5])},i(l){o||(M(e.$$.fragment,l),o=!0)},o(l){j(e.$$.fragment,l),o=!1},d(l){l&&O(t),ne(e),r=!1,a()}}}function UI(i){let t,e;return t=new yI({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function XI(i){let t,e;return t=new VI({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function ZI(i){let t,e;return t=new UC({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function JI(i){let t,e;return t=new pI({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function qI(i){let t,e;return t=new _C({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function KI(i){let t,e;return t=new ly({props:{tag:_e(i[1])}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=_e(n[1])),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function $I(i){let t,e,n,s,o;const r=[YI,FI,WI],a=[];function l(c,d){return d&10&&(t=null),t==null&&(t=!!(c[1].element||c[3].has(c[1].contentType))),t?0:c[4]?1:2}return e=l(i,-1),n=a[e]=r[e](i),{c(){n.c(),s=Pe()},m(c,d){a[e].m(c,d),B(c,s,d),o=!0},p(c,[d]){let h=e;e=l(c,d),e===h?a[e].p(c,d):(de(),j(a[h],1,1,()=>{a[h]=null}),he(),n=a[e],n?n.p(c,d):(n=a[e]=r[e](c),n.c()),M(n,1),n.m(s.parentNode,s))},i(c){o||(M(n),o=!0)},o(c){j(n),o=!1},d(c){a[e].d(c),c&&O(s)}}}function eP(i,t,e){let n,s,o,r,a,l,{withAnimation:c=!1}=t,{tag:d}=t,{hooks:h}=t,{renderMap:u=new Map}=t,{state:m}=t,{mediaStore:A}=t,{temporaryState:p}=t;Wr("hooks",h),Wr("mediaStore",A);let g,v;function y(P){P?h.emit("exposure",{id:r,type:"start"}):h.emit("exposure",{id:r,type:"end"})}function I(P,V,L){var W,q;return!(!V.visible||!V.enabled||!L.visible||!((W=P.state)!=null&&W.visible)||((q=P.temporaryState)==null?void 0:q.visible)===!1||At(P)&&!P.mediaVisible)}const k=P=>h.emit("click",{event:P,target:"TagContent",tag:d}),T=P=>h.emit("click",{event:P,target:"TagContent",tag:d});return i.$$set=P=>{"withAnimation"in P&&e(0,c=P.withAnimation),"tag"in P&&e(1,d=P.tag),"hooks"in P&&e(2,h=P.hooks),"renderMap"in P&&e(3,u=P.renderMap),"state"in P&&e(6,m=P.state),"mediaStore"in P&&e(7,A=P.mediaStore),"temporaryState"in P&&e(8,p=P.temporaryState)},i.$$.update=()=>{var P,V,L,W,q,N,G,_,Q,F,Z;i.$$.dirty&2&&e(12,n=(P=d.state)==null?void 0:P.unfolded),i.$$.dirty&2&&e(11,s=(V=d.state)==null?void 0:V.visible),i.$$.dirty&322&&e(13,o=m.visible&&p.visible&&((L=d.state)==null?void 0:L.visible)),i.$$.dirty&2&&(r=d.id),i.$$.dirty&322&&e(5,a=!I(d,m,p)),i.$$.dirty&8192&&y(o),i.$$.dirty&7682&&d.hooks&&(n!==void 0&&n!==v&&(e(10,v=n),n?(q=(W=d.hooks).emit)==null||q.call(W,"unfolded"):(G=d==null?void 0:(N=d.hooks).emit)==null||G.call(N,"folded")),s!==void 0&&s!==g&&(e(9,g=s),s?(Q=(_=d.hooks).emit)==null||Q.call(_,"show"):(Z=(F=d.hooks).emit)==null||Z.call(F,"hide"))),i.$$.dirty&2&&e(4,l=(()=>!(typeof d.config.unfoldedConfig=="object"&&d.config.unfoldedConfig.keep==="folded"))())},[c,d,h,u,l,a,m,A,p,g,v,s,n,o,k,T]}let Qu=class extends le{constructor(t){super(),ae(this,t,eP,$I,oe,{withAnimation:0,tag:1,hooks:2,renderMap:3,state:6,mediaStore:7,temporaryState:8},_I)}};function tP(i){ue(i,"svelte-7aiuwz",'@charset "UTF-8";.tag-point-click-helper.svelte-7aiuwz.svelte-7aiuwz{position:absolute;pointer-events:auto;cursor:pointer;width:calc(100% + 0.75rem);height:calc(100% + 0.75rem);left:50%;top:50%;transform:translate(-50%, -50%)}.tag-point-wrapper.svelte-7aiuwz.svelte-7aiuwz{pointer-events:none;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.tag-folded-point.svelte-7aiuwz.svelte-7aiuwz,.tag-unfolded-point.svelte-7aiuwz.svelte-7aiuwz{transition:all 0.5s}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{display:flex;justify-content:center;align-items:center;position:absolute;width:100%;height:100%;border-radius:50%}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:0.3125rem;height:0.3125rem;border-radius:50%;background-color:white}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz:before{content:"";position:absolute;width:0.875rem;height:0.875rem;border-radius:50%;background-color:rgba(0, 0, 0, 0.2)}.tag-point-wrapper.folded.svelte-7aiuwz .tag-folded-point.svelte-7aiuwz{opacity:1;scale:1}.tag-point-wrapper.folded.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{opacity:0;scale:1}.tag-point-wrapper.unfolded.svelte-7aiuwz .tag-folded-point.svelte-7aiuwz{opacity:0;scale:0.2}.tag-point-wrapper.unfolded.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{opacity:1;scale:1}')}function nP(i){let t,e,n,s,o,r,a,l,c,d,h,u;return s=new Wt({props:{center:!0,blurRadius:15,spreadRadius:5,opacity:.3}}),c=new Ru({props:{icon:i[2],width:i[1]}}),c.$on("iconLoaded",i[7]),{c(){t=x("div"),e=x("div"),n=ee(),ie(s.$$.fragment),o=ee(),r=x("div"),a=ee(),l=x("div"),ie(c.$$.fragment),w(e,"class","tag-point-click-helper svelte-7aiuwz"),w(r,"class","tag-unfolded-point svelte-7aiuwz"),z(r,"transition-delay",(i[3]?i[5]:0)+"ms"),w(l,"class","tag-folded-point svelte-7aiuwz"),z(l,"transition-delay",(i[3]?i[5]:0)+"ms"),w(t,"class","tag-point-wrapper svelte-7aiuwz"),K(t,"unfolded",i[0]),K(t,"folded",i[3])},m(m,A){B(m,t,A),D(t,e),D(t,n),te(s,t,null),D(t,o),D(t,r),D(t,a),D(t,l),te(c,l,null),d=!0,h||(u=be(e,"click",i[4]),h=!0)},p(m,[A]){A&8&&z(r,"transition-delay",(m[3]?m[5]:0)+"ms");const p={};A&4&&(p.icon=m[2]),A&2&&(p.width=m[1]),c.$set(p),A&8&&z(l,"transition-delay",(m[3]?m[5]:0)+"ms"),(!d||A&1)&&K(t,"unfolded",m[0]),(!d||A&8)&&K(t,"folded",m[3])},i(m){d||(M(s.$$.fragment,m),M(c.$$.fragment,m),d=!0)},o(m){j(s.$$.fragment,m),j(c.$$.fragment,m),d=!1},d(m){m&&O(t),ne(s),ne(c),h=!1,u()}}}function iP(i,t,e){let n,s,o,r;const a=fn("hooks");let{tag:l}=t,c,d=!1;const h=()=>{c!==void 0&&clearTimeout(c),d=!0,c=setTimeout(()=>{d=!1},800)},u=p=>{d||a.emit("click",{event:p,target:"TagPoint",tag:l})},m=(()=>l.contentType==="Text"&&l.data.appearance==="plane"?500:800)();function A(p){Ci.call(this,i,p)}return i.$$set=p=>{"tag"in p&&e(6,l=p.tag)},i.$$.update=()=>{var p,g,v,y;i.$$.dirty&64&&e(0,n=(p=l.state)==null?void 0:p.unfolded),i.$$.dirty&1&&e(3,s=!n),i.$$.dirty&64&&e(2,o=(v=(g=l.style)==null?void 0:g.point)!=null&&v.url?(y=l.style)==null?void 0:y.point:{url:$0}),i.$$.dirty&64&&e(1,r=(()=>{var T,P,V,L;const I=(P=(T=l.style)==null?void 0:T.point)==null?void 0:P.width;if(typeof I=="number")return I;const k=(L=(V=l.style)==null?void 0:V.point)==null?void 0:L.size;if(typeof k=="number")return k;if(k==="S")return 18;if(k==="M")return 20;if(k==="L")return 24;if(k==="XL")return 28})())},h(),[n,r,o,s,u,m,l,A]}class sP extends le{constructor(t){super(),ae(this,t,iP,nP,oe,{tag:6},tP)}}function oP(i){ue(i,"svelte-pzwdws",".tag.withAnimation.svelte-pzwdws{transition:opacity 0.3s linear}.tag.hide.svelte-pzwdws{opacity:0;pointer-events:none}.tag.hide.svelte-pzwdws *{pointer-events:none !important}.tag.unClickable.svelte-pzwdws{pointer-events:none !important}.tag.unClickable.svelte-pzwdws *{pointer-events:none !important}.tag.disable.svelte-pzwdws{display:none}.wrapper.svelte-pzwdws{position:absolute;width:0rem;height:0rem;overflow:visible;pointer-events:auto}")}function rP(i){let t;return{c(){t=x("div"),w(t,"data-info","tag point is disable")},m(e,n){B(e,t,n)},p:J,i:J,o:J,d(e){e&&O(t)}}}function aP(i){let t,e;return t=new sP({props:{tag:i[1]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&2&&(o.tag=n[1]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function lP(i){let t;return{c(){t=x("div"),w(t,"data-info","tag content is disable")},m(e,n){B(e,t,n)},p:J,i:J,o:J,d(e){e&&O(t)}}}function cP(i){let t,e;return t=new Qu({props:{mediaStore:i[2],withAnimation:i[0],tag:_e(i[1]),hooks:i[15],state:i[4],temporaryState:i[5],renderMap:i[3]}}),{c(){ie(t.$$.fragment)},m(n,s){te(t,n,s),e=!0},p(n,s){const o={};s&4&&(o.mediaStore=n[2]),s&1&&(o.withAnimation=n[0]),s&2&&(o.tag=_e(n[1])),s&16&&(o.state=n[4]),s&32&&(o.temporaryState=n[5]),s&8&&(o.renderMap=n[3]),t.$set(o)},i(n){e||(M(t.$$.fragment,n),e=!0)},o(n){j(t.$$.fragment,n),e=!1},d(n){ne(t,n)}}}function dP(i){let t,e,n,s,o,r,a,l,c,d;const h=[aP,rP],u=[];function m(v,y){return v[14]?0:1}n=m(i),s=u[n]=h[n](i);const A=[cP,lP],p=[];function g(v,y){return v[13]?0:1}return r=g(i),a=p[r]=A[r](i),{c(){t=x("div"),e=x("div"),s.c(),o=ee(),a.c(),w(e,"class",l=Re(rt("wrapper",i[1].className?`${i[1].className}__wrapper`:void 0))+" svelte-pzwdws"),w(e,"data-tag-unfolded",i[6]),w(e,"data-tag-id",i[12]),w(e,"data-content-type",c=i[1].contentType),z(e,"left",i[9]),z(e,"top",i[8]),w(t,"class","tag svelte-pzwdws"),w(t,"data-tag-id",i[12]),K(t,"unClickable",i[1].config.clickable===!1),K(t,"disable",i[11]),K(t,"hide",i[10]),K(t,"withAnimation",i[0]),z(t,"z-index",i[7])},m(v,y){B(v,t,y),D(t,e),u[n].m(e,null),D(e,o),p[r].m(e,null),d=!0},p(v,[y]){let I=n;n=m(v),n===I?u[n].p(v,y):(de(),j(u[I],1,1,()=>{u[I]=null}),he(),s=u[n],s?s.p(v,y):(s=u[n]=h[n](v),s.c()),M(s,1),s.m(e,o));let k=r;r=g(v),r===k?p[r].p(v,y):(de(),j(p[k],1,1,()=>{p[k]=null}),he(),a=p[r],a?a.p(v,y):(a=p[r]=A[r](v),a.c()),M(a,1),a.m(e,null)),(!d||y&2&&l!==(l=Re(rt("wrapper",v[1].className?`${v[1].className}__wrapper`:void 0))+" svelte-pzwdws"))&&w(e,"class",l),(!d||y&64)&&w(e,"data-tag-unfolded",v[6]),(!d||y&4096)&&w(e,"data-tag-id",v[12]),(!d||y&2&&c!==(c=v[1].contentType))&&w(e,"data-content-type",c),y&512&&z(e,"left",v[9]),y&256&&z(e,"top",v[8]),(!d||y&4096)&&w(t,"data-tag-id",v[12]),(!d||y&2)&&K(t,"unClickable",v[1].config.clickable===!1),(!d||y&2048)&&K(t,"disable",v[11]),(!d||y&1024)&&K(t,"hide",v[10]),(!d||y&1)&&K(t,"withAnimation",v[0]),y&128&&z(t,"z-index",v[7])},i(v){d||(M(s),M(a),d=!0)},o(v){j(s),j(a),d=!1},d(v){v&&O(t),u[n].d(),p[r].d()}}}function hP(i,t,e){let n,s,o,r,a,l,c,d,h,{withAnimation:u=!1}=t,{tag:m}=t,{mediaStore:A}=t,{renderMap:p=new Map}=t,{state:g}=t,{temporaryState:v}=t;const y=fn("hooks");return i.$$set=I=>{"withAnimation"in I&&e(0,u=I.withAnimation),"tag"in I&&e(1,m=I.tag),"mediaStore"in I&&e(2,A=I.mediaStore),"renderMap"in I&&e(3,p=I.renderMap),"state"in I&&e(4,g=I.state),"temporaryState"in I&&e(5,v=I.temporaryState)},i.$$.update=()=>{var I,k,T,P,V,L,W,q;i.$$.dirty&2&&e(14,n=(()=>{var N,G;return!(((G=(N=m.style)==null?void 0:N.point)==null?void 0:G.enabled)===!1||m.contentType==="Sticker"||m.contentType==="Link"||m.contentType==="VRLink"||m.contentType==="PanoLink"||m.contentType==="Audio"&&m.data.appearance==="plane")})()),i.$$.dirty&2&&e(13,s=(()=>m.stickType==="2DPoint")()),i.$$.dirty&2&&e(12,o=m.id),i.$$.dirty&2&&e(11,r=!((I=m.screenPosition)!=null&&I.leftPercent)||!((k=m.screenPosition)!=null&&k.topPercent)||m.enabled===!1||!m.state),i.$$.dirty&2&&e(10,a=!((T=m.state)!=null&&T.visible)||((P=m.temporaryState)==null?void 0:P.visible)===!1),i.$$.dirty&2&&e(6,l=(V=m.state)==null?void 0:V.unfolded),i.$$.dirty&2&&e(9,c=((L=m.screenPosition)==null?void 0:L.leftPercent)+"%"),i.$$.dirty&2&&e(8,d=((W=m.screenPosition)==null?void 0:W.topPercent)+"%"),i.$$.dirty&66&&e(7,h=((q=m.zIndex)!=null?q:0)+(l?1e4:0))},[u,m,A,p,g,v,l,h,d,c,a,r,o,s,n,y]}class uP extends le{constructor(t){super(),ae(this,t,hP,dP,oe,{withAnimation:0,tag:1,mediaStore:2,renderMap:3,state:4,temporaryState:5},oP)}}function fP(i){ue(i,"svelte-uq11d5",".tag--container.svelte-uq11d5{box-sizing:border-box;position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;opacity:1;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform:translate3d(0, 0, 0)}.withAnimation.svelte-uq11d5{transition:opacity 0.3s linear}.tag--container.hide.svelte-uq11d5{opacity:0;pointer-events:none}.tag--container.hide.svelte-uq11d5 *{pointer-events:none !important}")}function Ud(i,t,e){const n=i.slice();return n[7]=t[e],n}function Xd(i){let t,e=[],n=new Map,s,o=i[1];const r=a=>a[7].id;for(let a=0;a<o.length;a+=1){let l=Ud(i,o,a),c=r(l);n.set(c,e[a]=Zd(c,l))}return{c(){t=x("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","tag--container svelte-uq11d5"),K(t,"hide",!i[4].visible||!i[5].visible),K(t,"withAnimation",i[0])},m(a,l){B(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,l){l&63&&(o=a[1],de(),e=jt(e,l,r,1,a,o,n,t,vn,Zd,null,Ud),he()),(!s||l&48)&&K(t,"hide",!a[4].visible||!a[5].visible),(!s||l&1)&&K(t,"withAnimation",a[0])},i(a){if(!s){for(let l=0;l<o.length;l+=1)M(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)j(e[l]);s=!1},d(a){a&&O(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function Zd(i,t){let e,n,s;return n=new uP({props:{state:t[4],temporaryState:t[5],withAnimation:t[0],tag:t[7],mediaStore:t[2],renderMap:t[3]}}),{key:i,first:null,c(){e=Pe(),ie(n.$$.fragment),this.first=e},m(o,r){B(o,e,r),te(n,o,r),s=!0},p(o,r){t=o;const a={};r&16&&(a.state=t[4]),r&32&&(a.temporaryState=t[5]),r&1&&(a.withAnimation=t[0]),r&2&&(a.tag=t[7]),r&4&&(a.mediaStore=t[2]),r&8&&(a.renderMap=t[3]),n.$set(a)},i(o){s||(M(n.$$.fragment,o),s=!0)},o(o){j(n.$$.fragment,o),s=!1},d(o){o&&O(e),ne(n,o)}}}function mP(i){let t,e,n=i[4].enabled&&Xd(i);return{c(){n&&n.c(),t=Pe()},m(s,o){n&&n.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[4].enabled?n?(n.p(s,o),o&16&&M(n,1)):(n=Xd(s),n.c(),M(n,1),n.m(t.parentNode,t)):n&&(de(),j(n,1,1,()=>{n=null}),he())},i(s){e||(M(n),e=!0)},o(s){j(n),e=!1},d(s){n&&n.d(s),s&&O(t)}}}function gP(i,t,e){let{withAnimation:n=!1}=t,{tags:s=[]}=t,{hooks:o}=t,{mediaStore:r}=t,{renderMap:a}=t,{state:l}=t,{temporaryState:c}=t;return Wr("hooks",o),i.$$set=d=>{"withAnimation"in d&&e(0,n=d.withAnimation),"tags"in d&&e(1,s=d.tags),"hooks"in d&&e(6,o=d.hooks),"mediaStore"in d&&e(2,r=d.mediaStore),"renderMap"in d&&e(3,a=d.renderMap),"state"in d&&e(4,l=d.state),"temporaryState"in d&&e(5,c=d.temporaryState)},[n,s,r,a,l,c,o]}class pP extends le{constructor(t){super(),ae(this,t,gP,mP,oe,{withAnimation:0,tags:1,hooks:6,mediaStore:2,renderMap:3,state:4,temporaryState:5},fP)}}const AP=new rf.GLTFLoader;function vP(i){return new Promise((t,e)=>{function n(o){t(o)}function s(o){e(o)}AP.load(i,n,void 0,s)})}const bP=new Map,yP=new Map;class wP extends I1{constructor(e){super(e);f(this,"group",new R.Group);f(this,"renderMap",new Map);f(this,"imagePlaneGroup",new R.Group);f(this,"gltfObjectGroup",new R.Group);f(this,"enabledModelTagSet",new Set);f(this,"temporaryState",{visible:!0});f(this,"TagContainerSvelte");f(this,"loadModel",e=>U(this,null,function*(){var a;const n=e.data.modelUrl;if(!n)return;const s=vP(n).then(l=>{var h,u,m,A,p;const c=Object.assign(l.scene,{customID:e.id,isTagModel:!0,removeEventListener:this.addObjectClickHandler(e,l.scene,g=>{this.hooks.emit("click",{target:"TagModel",tag:e,event:g})})});return c.visible=this.getCurrentVisibleState(e),new R.Matrix4().fromArray(e.matrix).decompose(c.position,c.quaternion,c.scale),c.updateWorldMatrix(!0,!0),c.visible=this.getVisibleByFiveMode(e),(m=(u=(h=this.config)==null?void 0:h.globalConfig)==null?void 0:u.modelConfig)!=null&&m.autoLookAtEnabled&&((p=(A=e.config)==null?void 0:A.modelConfig)!=null&&p.autoLookAtEnabled)&&c.lookAt(this.five.camera.position.clone().setY(c.position.y)),c});e.model={promise:s};const o=yield s;if(((a=e.model)==null?void 0:a.promise)!==s||!this.tags.includes(e))return;e.model.object=o;const r=this.gltfObjectGroup.children.find(l=>l.customID===e.id);if(r&&(this.gltfObjectGroup.remove(r),r.removeEventListener()),this.updateRender3DDomTag(),At(e)){if(this.getRenderType(e)==="Mesh"&&!e.mediaPlane){const l=e.data.mediaPosition.map(St);e.mediaPlane=new Vc(e.data.mediaData[0].url,e.data.mediaPosition.map(St),{objectFit:e.data.objectFit});const c=new R.Vector3().addVectors(l[0],l[2]).divideScalar(2);e.mediaPlane.position.copy(c),o.add(e.mediaPlane)}this.getRenderType(e)!=="Mesh"&&(o.updateTagCss3DObjectMatrix=()=>this.updateTagCss3DObjectMatrix(e,o),o.updateTagCss3DObjectMatrix())}return this.gltfObjectGroup.add(o),o}));this.group.name="PanoTagPluginModelGroup",this.gltfObjectGroup.name="PanoTagPluginGLTFObjectGroup",this.imagePlaneGroup.name="ImagePlaneGroup",this.group.add(this.gltfObjectGroup),this.group.add(this.imagePlaneGroup)}registerRenderer(e,n){this.renderMap.set(e,{renderer:n})}clearTags(){this.tags.forEach(e=>{var n,s;(s=(n=e.mediaPlane)==null?void 0:n.parent)==null||s.remove(e.mediaPlane)}),this.tags=[],this.enabledModelTagSet.clear(),this.clearCache(),this.disposeAllCSS3DContainer(),this.updateRenderAllTags()}updateRenderAllTags(){this.enabledModelTagSet.clear(),this.tags.forEach(e=>e.stickType==="Model"&&this.enabledModelTagSet.add(e.id)),this.updateRenderPointTag(),this.updateRender3DDomTag(),this.updateRenderModelTag(),this.updateRenderImagePlane()}updateRenderImagePlane(){this.sort(this.filterImagePlane).forEach(n=>{var l,c,d,h,u;const s=n.data.mediaData[0];if(!s)return;const{url:o,type:r}=s;if(!o||(n.mediaPlane&&(n.mediaPlane.visible=(c=(l=n.state)==null?void 0:l.visible)!=null?c:!0,n.mediaPlane.visible||n.mediaPlane instanceof ia&&((d=n.data.autoplayConfig)!=null&&d.autoplayVideo||n.mediaPlane.pause())),((h=n.mediaPlane)==null?void 0:h.src)===o))return;const a=n.position.map(St);if(n.mediaPlane&&n.mediaPlane.removeFromParent(),r==="Image")n.mediaPlane=new Vc(o,a,{objectFit:n.data.objectFit}),n.config.clickable!==!1&&this.domEvents.addAutoBindEventListener(n.mediaPlane,"click",m=>{this.hooks.emit("click",{tag:n,target:"TagContent",event:m.origDomEvent})});else if(r==="Video"){const m=new ia(o,a,{videoCoverSrc:s.videoCoverUrl,playButton:n.data.playIcon,paused:!((u=n.data.autoplayConfig)!=null&&u.autoplayVideo),objectFit:n.data.objectFit,videoTextureMap:bP,ImageTextureMap:yP});m.onVideoReady=p=>{p.addEventListener("play",()=>this.mediaStore.set({currentMediaElement:m.videoInstance}))},m.initialDomEvents(this.domEvents);const A=p=>(this.five.on("renderFrame",p),()=>this.five.off("renderFrame",p));m.initialRenderHooks(A),n.mediaPlane=m}this.imagePlaneGroup.add(n.mediaPlane)})}updateRender3DDomTag(){this.sort([...this.filterCSS3DTag]).forEach(n=>{var s,o,r,a;if(n.tag3DContentSvelte){const{svelteApp:l,css3DInstance:c,initialNormal:d,currentNormal:h}=n.tag3DContentSvelte;if(l.$set({tag:n,hooks:this.hooks,state:this.state,temporaryState:this.temporaryState}),!d.equals(h)){const u=new R.Quaternion().setFromUnitVectors(d,h);c.css3DObject.setRotationFromQuaternion(u)}return}else{if(At(n)&&!((s=n.model)!=null&&s.object)||((o=n.state)==null?void 0:o.visible)===!1||!this.state.visible||!this.state.enabled)return;if(this.css3DRenderPlugin||(this.css3DRenderPlugin=ua(this.five)),n.stickType==="3DPoint"&&!n.normal)return console.error("updateRenderPlaneTag: 三维点标签缺少法向量!");const l=this.getPositions(n);if(!l)return;const c=this.getTagNormal(n);if(!c)return;const h=(r=this.getTagConfig(n).tag3DConfig)!=null?r:{};if(this.getRenderType(n)==="BehindDom"){h.mode="behind",h.container=document.createElement("div");const A="black";h.container.style.backgroundColor=A,h.container.style.border=`3px solid ${A}`,this.css3DRenderPlugin.hooks.on("render",()=>{var p;if(u.css3DObject.opacityMesh){const g=this.addObjectClickHandler(n,u.css3DObject.opacityMesh,v=>{this.hooks.emit("click",{event:v,target:"TagContent",tag:n})});(p=this.store.css3DRenderDisposer.get(n.id))==null||p.push(g)}})}const u=this.css3DRenderPlugin.create3DDomContainer(l,h);if(!u)return;this.store.css3DRenderDisposer.set(n.id,[u.dispose]);const m=new Qu({target:u.container,props:{tag:n,hooks:this.hooks,state:this.state,mediaStore:this.mediaStore,temporaryState:this.temporaryState}});n.tag3DContentSvelte={svelteApp:m,domContainer:u,css3DInstance:u,initialNormal:c,currentNormal:c,dispose:()=>{m.$destroy(),u.dispose()}},At(n)&&((a=n.model)!=null&&a.object)&&this.updateTagCss3DObjectMatrix(n,n.model.object)}}),this.clearUnusedPanelTag()}updateRenderModelTag(){const e=o=>!this.enabledModelTagSet.has(o.customID),n=this.gltfObjectGroup.children.filter(e);n.forEach(o=>o.removeEventListener()),this.gltfObjectGroup.remove(...n),this.tags.filter(o=>o.stickType==="Model").forEach(o=>{var r;(r=o.model)==null||r.promise.then(a=>{a.visible=this.getCurrentVisibleState(o)})}),this.five.needsRender=!0}updateTagModelVisible(){this.tags.forEach(e=>{var n;e.mediaPlane&&(e.mediaPlane.visible=this.getCurrentVisibleState(e)),(n=e.model)!=null&&n.object&&(e.model.object.visible=this.getCurrentVisibleState(e))})}updateTagCss3DObjectMatrix(e,n){var p,g,v;const s=(g=(p=e.config.tag3DConfig)==null?void 0:p.ratio)!=null?g:.00216,o=(v=e.tag3DContentSvelte)==null?void 0:v.css3DInstance.css3DObject;if(!o)return;const r=At(e)?e.data.mediaPosition:e.position;if(!r||r.length!==4||!Array.isArray(r[0])||!Array.isArray(r[2]))return;n.updateWorldMatrix(!1,!1);const a=n.matrixWorld,l=new R.Vector3().fromArray(r[0]),c=new R.Vector3().fromArray(r[2]),d=nn(l,c).add(new R.Vector3(0,0,5e-4)),h=new R.Matrix4().setPosition(d),u=new R.Matrix4().makeScale(s,s,s),m=new R.Matrix4().multiply(a).multiply(h).multiply(u);m.decompose(o.position,o.quaternion,o.scale);const A=o.opacityMesh;A&&m.decompose(A.position,A.quaternion,A.scale)}addMediaModelTag(e){return U(this,null,function*(){const n=e.filter(s1).map(s=>this.loadModel(s));yield Promise.all(n),this.setModelMedialVisible(),this.updateRenderAllTags()})}updateRenderPointTag(){var n;const e=this.filterPointTag;if(this.setTagZIndex(e),this.setPointTagPosition(),this.TagContainerSvelte)this.TagContainerSvelte.$set({tags:e,state:this.state,temporaryState:this.temporaryState});else{const s=(n=this.five.getElement())==null?void 0:n.parentElement;if(!s)return console.error("updateRenderPlaneTag: tag2DContainer not found");this.TagContainerSvelte=new pP({target:s,props:{hooks:this.hooks,tags:e,state:this.state,temporaryState:this.temporaryState,mediaStore:this.mediaStore,renderMap:this.renderMap}})}}updateTagContainerVisible(){var e;(e=this.TagContainerSvelte)==null||e.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation}),this.filterCSS3DTag.forEach(n=>{var s,o,r,a,l;(a=(o=(s=n.tag3DContentSvelte)==null?void 0:s.css3DInstance)==null?void 0:o.css3DObject)==null||a.setVisible((this.state.visible&&((r=n.state)==null?void 0:r.visible))!==!1),(l=n.tag3DContentSvelte)==null||l.svelteApp.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation})})}disposeAllCSS3DContainer(){for(const[,e]of this.store.css3DRenderDisposer)e==null||e.forEach(n=>n==null?void 0:n());this.store.css3DRenderDisposer=new Map}clearUnusedPanelTag(){this.filter2DPointTag.forEach(e=>{var n;(n=e.tag3DContentSvelte)==null||n.css3DInstance.dispose(),e.tag3DContentSvelte=void 0});for(const[e,n]of this.store.css3DRenderDisposer){const s=this.getTagById(e);(!s||s.stickType==="2DPoint")&&(n==null||n.forEach(o=>o==null?void 0:o()),this.store.css3DRenderDisposer.delete(e))}}}const Gu="Dnalogel-PanoTagPlugin",CP=i=>`${Gu}--${i}`;class fo extends wP{constructor(e,n){super(e);f(this,"state",{enabled:!0,visible:!0});f(this,"params");f(this,"debug");f(this,"changeTagModel",(e,n)=>U(this,null,function*(){e.data=Xe({},e.data,n),yield this.loadModel(e),this.updateRenderAllTags()}));f(this,"handleFiveInitAnimationEnded",()=>{const e=this.five.getCurrentState().mode;this.tags.forEach(n=>{At(n)&&e==="Panorama"&&this.changeTagMode(n,"front"),n.state.visible=this.getVisible(n)}),this.updateRenderAllTags()});f(this,"handleFiveModelShownFloorChange",()=>{this.tags.forEach(e=>{var s,o;const n=this.getTagConfig(e).visibleConfig;typeof n=="object"&&((s=n.visibleFiveMode)!=null&&s.includes("Floorplan")||(o=n.visibleFiveMode)!=null&&o.includes("Mapview"))&&(e.state.visible=this.getVisibleByFiveMode(e))}),this.updateRenderAllTags()});this.params=Xe({},{debug:!1,config:this.config},H({},n)),this.debug=this.params.debug,this.config=this.params.config,u1(1,{namespace:Ba.PlayAudio});try{const s=window;Array.isArray(s.__PANOTAGPLUGIN_DEBUG_LIST__)||(s.__PANOTAGPLUGIN_DEBUG_LIST__=[]),s.__PANOTAGPLUGIN_DEBUG_LIST__.push(this),s.__PANOTAGPLUGIN_DEBUG__=this}catch(s){}}load(e,n){return U(this,null,function*(){var o,r;this.clearTags(),console.debug(Gu," load:",{data:JSON.parse(JSON.stringify(e))}),this.config=Xe({},this.config,{globalConfig:(o=e.globalConfig)!=null?o:{},contentTypeConfig:(r=e.contentTypeConfig)!=null?r:{}});const s=yield this.addTag(e.tagList,n);if(this.debug)try{$b(this.five,this.tags)}catch(a){console.error(a)}return s})}addTag(e,n){return U(this,null,function*(){const o=(Array.isArray(e)?e:[e]).map(r=>{var d,h;const a=this.getTagConfig(r),l=JSON.parse(JSON.stringify(r.data));return Ae(H({},r),{enabled:(d=r.enabled)!=null?d:!0,id:(h=r.id)!=null?h:at(),data:Xe(r.data,a.initialData,l),state:H({visible:void 0,unfolded:!this.can("fold",r)},a.initialState),hooks:new Te.Subscribe,initialConfig:r.config,config:a,unfold:()=>this.changeUnfoldedById(r.id,!0),fold:()=>this.changeUnfoldedById(r.id,!1),enable:()=>this.changeEnabledById(r.id,!0),disable:()=>this.changeEnabledById(r.id,!1),destroy:()=>this.destroyTagById(r.id),changeData:u=>this.changeDataById(r.id,u)})}).filter(r=>r.position);return o.forEach(d1),this.tags.push(...o),r1(this.five).then(()=>U(this,null,function*(){var r,a,l;this.store.eventListenerDisposer&&((a=(r=this.store).eventListenerDisposer)==null||a.call(r)),this.state.enabled&&this.handleEnable(),this.addResizeListener(),this.clearUnusedPanelTag(),this.setVisibleAndUnfolded({withAnimation:(l=n==null?void 0:n.withAnimation)!=null?l:!0}).then(()=>this.updateRenderAllTags()),this.updateRenderAllTags(),yield this.addMediaModelTag(o)}))})}changeConfig(e,n=!0){n?this.config=Xe({},this.config,e):this.config=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}changeGlobalConfig(e,n=!0){n?this.config.globalConfig=Xe({},this.config.globalConfig,e):this.config.globalConfig=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}changeContentTypeConfig(e,n,s=!0){this.config.contentTypeConfig||(this.config.contentTypeConfig={}),s?this.config.contentTypeConfig[e]=Xe({},this.config.contentTypeConfig[e],n):this.config.contentTypeConfig[e]=n,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}show(e){return U(this,null,function*(){if(this.checkDisposed())return;const{userAction:n=!0,withAnimation:s=!1}=e!=null?e:{};this.setState({visible:!0},{userAction:n,visibleWithAnimation:s}),this.hooks.emit("show",{userAction:n,withAnimation:s})})}hide(e){return U(this,null,function*(){if(this.checkDisposed())return;const{userAction:n=!0,withAnimation:s=!1}=e!=null?e:{};this.setState({visible:!1},{userAction:n,visibleWithAnimation:s}),this.hooks.emit("hide",{userAction:n,withAnimation:s})})}enable(e){if(this.checkDisposed())return;const{userAction:n=!0}=e!=null?e:{};this.setState({enabled:!0},{userAction:n}),this.hooks.emit("enable",{userAction:n})}disable(e){if(this.checkDisposed())return;const{userAction:n=!0}=e!=null?e:{};this.setState({enabled:!1},{userAction:n}),this.hooks.emit("disable",{userAction:n})}setState(e,n){if(this.checkDisposed())return;const{userAction:s=!0,visibleWithAnimation:o=!1}=n,r=H({},this.state);this.state=Object.assign(this.state,e),this.store.visibleWithAnimation=o,r.visible!==this.state.visible&&(e.visible?this.handleShow():this.handleHide()),r.enabled!==this.state.enabled&&(e.enabled?this.handleEnable():this.handleDisable()),this.hooks.emit("stateChange",{state:this.state,prevState:r,userAction:s})}dispose(){var e,n,s,o,r,a;this.pauseCurrentMedia(),this.disposeAllCSS3DContainer(),(e=this.TagContainerSvelte)==null||e.$destroy(),this.filterCSS3DTag.forEach(l=>{var c;return(c=l.tag3DContentSvelte)==null?void 0:c.svelteApp.$destroy()}),this.tags=[],(n=this.store.disposers)==null||n.forEach(l=>l==null?void 0:l()),this.store.disposers=[],(o=(s=this.store).eventListenerDisposer)==null||o.call(s),this.store.eventListenerDisposer=void 0,(a=(r=this.store).resizeObserverDisposer)==null||a.call(r),this.store.resizeObserverDisposer=void 0,this.store.resizeObserverDisposerAdding=!1,this.five.scene.remove(this.group),this.group.remove(...this.group.children),this.gltfObjectGroup.remove(...this.gltfObjectGroup.children),this.imagePlaneGroup.remove(...this.imagePlaneGroup.children),this.clearCache(),this.five.needsRender=!0,this.store.disposed=!0,this.hooks.emit("dispose")}changeUnfoldedById(e,n){var a;const s=this.getTagById(e);if(!s)return;const o=this.can("fold",s),r=this.can("unfold",s);if(o&&r){s.state.unfolded=n;const l=this.filterPointTag;(a=this.TagContainerSvelte)==null||a.$set({tags:l})}else console.warn(`tag ${e} cannot be ${n?"unfolded":"folded"}`)}changeEnabledById(e,n){const s=this.getTagById(e);s&&(s.enabled=n,this.updateRenderAllTags())}changeTagNormalById(e,n){const s=this.getTagById(e);s&&s.tag3DContentSvelte&&(s.tag3DContentSvelte.currentNormal=St(n))}changeDataById(e,n,s=!0){const o=this.getTagById(e);let r=!1;o&&(o.data&&(r=!0),s?o.data=Xe(o.data,n):o.data=H(H({},o.data),n),this.clearUnusedPanelTag(),this.updateRenderAllTags(),r&&o.hooks.emit("dataChanged",o.data))}changeStickTypeById(e,n,s=!0){this.changeTagById(e,n,s)}changeTagById(e,n,s=!0){const o=this.getTagById(e);let r=!1;n&&(n.data&&(r=!0),s?Xe(o,n):Object.assign(o,n),o!=null&&o.tag3DContentSvelte&&(n!=null&&n.normal)&&(o.tag3DContentSvelte.currentNormal=St(n.normal)),this.updateRenderAllTags(),this.clearUnusedPanelTag(),r&&o.hooks.emit("dataChanged",o.data))}destroyTagById(e){(Array.isArray(e)?e:[e]).forEach(s=>{const o=this.tags.findIndex(r=>r.id===s);o!==-1&&this.tags.splice(o,1)}),this.updateRenderAllTags()}setVisibleAndUnfolded(){return U(this,arguments,function*({withAnimation:e}={withAnimation:!1}){if(this.isPanorama)return this.setVisible(),e?new Promise(n=>{setTimeout(()=>{this.setUnfoldedByPanoIndex(),n()},10)}):(this.setUnfoldedByPanoIndex(),Promise.resolve())})}handleShow(){this.state.visible=!0,this.group.visible=!0,this.updateTagContainerVisible(),this.updateTagModelVisible(),this.five.needsRender=!0}handleHide(){this.pauseCurrentMedia(),this.state.visible=!1,this.group.visible=!1,this.updateTagContainerVisible(),this.updateTagModelVisible(),this.five.needsRender=!0}handleEnable(){this.state.enabled=!0,this.store.eventListenerDisposer=this.addEventListener(),this.five.scene.children.includes(this.group)||this.five.scene.add(this.group),this.group.traverse(e=>{var n;(n=e==null?void 0:e.updateTagCss3DObjectMatrix)==null||n.call(e)}),this.updateRenderAllTags(),this.five.needsRender=!0}handleDisable(){var e,n,s;this.pauseCurrentMedia(),this.state.enabled=!1,(n=(e=this.store).eventListenerDisposer)==null||n.call(e),this.five.scene.remove(this.group),(s=this.TagContainerSvelte)==null||s.$set({tags:[]}),this.filterCSS3DTag.forEach(o=>{var r;(r=o.tag3DContentSvelte)==null||r.dispose(),o.tag3DContentSvelte=void 0}),this.five.needsRender=!0}addEventListener(){const{five:e,hooks:n}=this,s=this.handleFiveWantsMoveToPano.bind(this),o=this.handleFiveModeChange.bind(this),r=this.handleFiveCameraUpdate.bind(this),a=this.handleFiveCameraUpdateDebounce(),l=this.handleFivePanoArrived.bind(this),c=this.loadVideoFirstFrame.bind(this),d=this.clickhandler.bind(this),h=this.five.currentMode;return h&&this.handleFiveModeChange(h),this.handleFivePanoArrived(),e.on("wantsMoveToPano",s),e.on("modeChange",o),e.on("initAnimationEnded",this.handleFiveInitAnimationEnded),e.on("modelShownFloorChange",this.handleFiveModelShownFloorChange),e.on("cameraUpdate",r),e.on("cameraUpdate",a),e.on("panoArrived",l),e.on("panoArrived",c),n.on("click",d),()=>{e.off("wantsMoveToPano",s),e.off("modeChange",o),e.off("initAnimationEnded",this.handleFiveInitAnimationEnded),e.off("modelShownFloorChange",this.handleFiveModelShownFloorChange),e.off("cameraUpdate",r),e.off("cameraUpdate",a),e.off("panoArrived",l),e.off("panoArrived",c),n.off("click",d),this.store.eventListenerDisposer=void 0}}addResizeListener(){if(!this.store.resizeObserverDisposer&&!this.store.resizeObserverDisposerAdding){const e=this.addResizeObserver();this.store.resizeObserverDisposerAdding=!0,setTimeout(()=>{this.store.resizeObserverDisposer=e,this.store.resizeObserverDisposerAdding=!1},200)}}addResizeObserver(){if(!this.store.disposed)return;const e=this.five.getElement(),n=()=>{this.state.enabled&&(this.show(),this.updateRenderAllTags())},s=()=>{this.state.enabled&&this.hide()},{observe:o,unobserve:r}=Bc(l1(()=>{this.store.resizeObserverDisposer&&s()},500),e),{observe:a,unobserve:l}=Bc(Oc(()=>n(),400),e);return o(),a(),()=>{r(),l()}}handleFiveModeChange(e){this.setModelMedialVisible(),this.tags.forEach(n=>{At(n)&&e!=="Panorama"&&this.changeTagMode(n,"behind"),n.state.visible=this.getVisible(n)}),this.updateRenderAllTags()}handleFiveWantsMoveToPano(){this.tags.forEach(e=>{const n=this.getTagConfig(e);typeof n.visibleConfig=="object"&&(n.visibleConfig.keep?e.temporaryState=Ae(H({},e.temporaryState),{visible:n.visibleConfig.keep==="visible"}):e.temporaryState=Ae(H({},e.temporaryState),{visible:!!n.visibleConfig.alwaysShowWhenMovePano}))}),this.updateTagContainerVisible()}clickhandler(e){if(e.target!=="TagPoint")return;if(!e.tag.state)return console.warn("Clickhandler: params.tag.state is undefined");const n=this.can("fold",e.tag),s=this.can("unfold",e.tag);n&&s&&(e.tag.state.unfolded=!e.tag.state.unfolded,e.tag.state.unfolded&&this.tags.forEach(o=>{o.id!==e.tag.id&&o.state&&this.can("fold",o)&&(o.state.unfolded=!1)}),this.updateRenderAllTags())}handleFiveCameraUpdateDebounce(){return Oc(()=>{this.setUnfoldedByCamera(),this.updateRenderAllTags()},100)}handleFiveCameraUpdate(){this.updateRenderPointTag()}handleFivePanoArrived(){return U(this,null,function*(){var e,n,s;this.setModelMedialVisible(),yield this.setVisibleAndUnfolded(),this.tags.forEach(o=>{o.temporaryState=Ae(H({},o.temporaryState),{visible:!0})}),(s=(n=(e=this.config)==null?void 0:e.globalConfig)==null?void 0:n.modelConfig)!=null&&s.autoLookAtEnabled&&this.tags.filter(i1).filter(o=>{var r,a;return(a=(r=o.config)==null?void 0:r.modelConfig)==null?void 0:a.autoLookAtEnabled}).forEach(o=>{var u;const r=new E.Mesh(new E.BoxGeometry,new E.MeshBasicMaterial),a=(u=o.model)==null?void 0:u.object;if(!a)return;r.position.copy(a.position),r.quaternion.copy(a.quaternion);const l=this.five.camera.position;r.lookAt(l.clone().setY(r.position.y));const c=a.quaternion.clone(),d=r.quaternion.clone(),h=po();h.onUpdate(({progress:m})=>{a.quaternion.copy(c.clone().slerp(d,m))}),h.play()}),this.store.visibleWithAnimation=!0,this.updateTagContainerVisible(),this.updateRenderAllTags()})}setUnfoldedByCamera(){let e=!1;this.tags.forEach(n=>{const s=this.getUnfoldedByCamera(n);n.state&&s!==void 0&&(s===!0&&(e=!0),n.state.unfolded=s)}),e&&this.tags.forEach(n=>{const s=this.getTagConfig(n).unfoldedConfig;typeof s=="object"&&(s.autoUnfold||s.keep)||n.state&&(n.state.unfolded=!1)})}changeTagMode(e,n){var s,o,r,a,l,c;((s=this.getTagConfig(e))==null?void 0:s.renderType)!=="Mesh"&&((a=(r=(o=e.tag3DContentSvelte)==null?void 0:o.css3DInstance)==null?void 0:r.css3DObject)==null?void 0:a.mode)!==n&&((l=e.config)!=null&&l.tag3DConfig?e.config.tag3DConfig.mode=n:e.config?e.config.tag3DConfig={mode:n}:e.config={tag3DConfig:{mode:n}},(c=this.store.css3DRenderDisposer.get(e.id))==null||c.forEach(d=>d==null?void 0:d()),e.tag3DContentSvelte=void 0)}}var Nu=(i=>(i.PointTag="PointTag",i.PlaneTag="PlaneTag",i))(Nu||{}),Hu=(i=>(i.Audio="Audio",i.Text="Text",i.ImageText="ImageText",i.Image="Image",i.Video="Video",i.Link="Link",i.Sticker="Sticker",i.VRLink="VRLink",i.PanoLink="PanoLink",i.Marketing="Marketing",i.MediaPlane="MediaPlane",i.MediaModel="MediaModel",i.Model="Model",i.Custom="Custom",i.Unknown="Unknown",i))(Hu||{}),_u=(i=>(i.Two="2D",i.Three="3D",i))(_u||{});const IP=(i,t)=>new fo(i,t);function PP(i){ue(i,"svelte-4qjwer",".guide-line__tag.svelte-4qjwer.svelte-4qjwer{position:relative}.text-with-distance.svelte-4qjwer.svelte-4qjwer{display:flex;flex-direction:column;position:relative;padding:0.125rem 0.25rem;border-radius:0.125rem;background:linear-gradient(to top, rgba(147, 147, 147, 0.3), rgba(74, 74, 74, 0.3));box-shadow:0 0.125rem 0.5rem 0 rgba(0, 0, 0, 0.2)}.text-with-distance.svelte-4qjwer .border.svelte-4qjwer{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;padding:0.0625rem;border-radius:0.25rem;background:linear-gradient(to right, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.2));-webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:xor;transform:scale(0.5)}.distance-and-name.svelte-4qjwer.svelte-4qjwer{display:flex;gap:0.1875rem}.distance.svelte-4qjwer.svelte-4qjwer{white-space:nowrap;font-size:0.625rem;line-height:0.875rem;color:#66afff}.name.svelte-4qjwer.svelte-4qjwer{opacity:0.6;font-size:0.625rem;line-height:0.875rem;white-space:nowrap;color:#ffffff}.line-name.svelte-4qjwer.svelte-4qjwer{color:#fff;white-space:nowrap;font-size:0.625rem;line-height:0.875rem}.guide-line__tag-point.svelte-4qjwer.svelte-4qjwer{position:absolute;left:50%;bottom:0.0625rem;width:0.4375rem;height:0.125rem;transform:translateX(-50%);background:#fff;border-radius:50%;opacity:0.5}.guide-line__tag-line.svelte-4qjwer.svelte-4qjwer{position:absolute;left:50%;bottom:0.0625rem;width:0.0625rem;height:1.875rem;transform:translateX(-50%);background:linear-gradient(to top, #fff, rgba(255, 255, 255, 0))}.guide-line__tag-content.svelte-4qjwer.svelte-4qjwer{position:absolute;left:-0.9375rem;bottom:1.9375rem;display:flex}.guide-line__tag-icon.svelte-4qjwer.svelte-4qjwer{width:1.875rem;height:1.875rem;background-size:100%}.guide-line__tag-text.svelte-4qjwer.svelte-4qjwer{box-sizing:content-box;height:0.875rem;width:-moz-max-content;width:max-content;margin-top:0.3125rem;transform:translateX(-0.1875rem);white-space:nowrap;font-size:0.625rem;line-height:0.875rem;border:solid transparent;border-width:0.125rem 0.5rem 0.125rem 0.375rem;border-image-slice:6 25 6 18 fill;color:#fff}")}function Jd(i){let t,e;return{c(){t=x("div"),e=Me(i[0]),w(t,"class","guide-line__tag-text svelte-4qjwer"),z(t,"border-image-source",`url(${i[6]})`)},m(n,s){B(n,t,s),D(t,e)},p(n,s){s&1&&Oe(e,n[0])},d(n){n&&O(t)}}}function qd(i){let t,e,n,s,o=i[5]("全程")+"",r,a,l=i[5]("米")+"",c,d,h,u,m,A,p=i[4]&&Kd(i);return{c(){t=x("div"),p&&p.c(),e=ee(),n=x("div"),s=x("span"),r=Me(o),a=Me(i[2]),c=Me(l),d=ee(),h=x("span"),u=Me(i[0]),m=ee(),A=x("div"),w(s,"class","distance svelte-4qjwer"),w(h,"class","name svelte-4qjwer"),w(n,"class","distance-and-name svelte-4qjwer"),w(A,"class","border svelte-4qjwer"),w(t,"class","text-with-distance svelte-4qjwer")},m(g,v){B(g,t,v),p&&p.m(t,null),D(t,e),D(t,n),D(n,s),D(s,r),D(s,a),D(s,c),D(n,d),D(n,h),D(h,u),D(t,m),D(t,A)},p(g,v){g[4]?p?p.p(g,v):(p=Kd(g),p.c(),p.m(t,e)):p&&(p.d(1),p=null),v&32&&o!==(o=g[5]("全程")+"")&&Oe(r,o),v&4&&Oe(a,g[2]),v&32&&l!==(l=g[5]("米")+"")&&Oe(c,l),v&1&&Oe(u,g[0])},d(g){g&&O(t),p&&p.d()}}}function Kd(i){let t,e;return{c(){t=x("span"),e=Me(i[4]),w(t,"class","line-name svelte-4qjwer")},m(n,s){B(n,t,s),D(t,e)},p(n,s){s&16&&Oe(e,n[4])},d(n){n&&O(t)}}}function EP(i){let t,e,n,s,o,r,a,l,c,d=i[0]&&!i[2]&&Jd(i),h=i[2]&&qd(i);return{c(){t=x("div"),e=x("div"),n=ee(),s=x("div"),o=ee(),r=x("div"),a=x("div"),l=ee(),d&&d.c(),c=ee(),h&&h.c(),w(e,"class","guide-line__tag-point svelte-4qjwer"),w(s,"class","guide-line__tag-line svelte-4qjwer"),w(a,"class","guide-line__tag-icon svelte-4qjwer"),z(a,"background-image",`url(${i[1]})`),w(r,"class","guide-line__tag-content svelte-4qjwer"),w(t,"class","guide-line__tag svelte-4qjwer"),z(t,"opacity",i[3])},m(u,m){B(u,t,m),D(t,e),D(t,n),D(t,s),D(t,o),D(t,r),D(r,a),D(r,l),d&&d.m(r,null),D(r,c),h&&h.m(r,null)},p(u,[m]){m&2&&z(a,"background-image",`url(${u[1]})`),u[0]&&!u[2]?d?d.p(u,m):(d=Jd(u),d.c(),d.m(r,c)):d&&(d.d(1),d=null),u[2]?h?h.p(u,m):(h=qd(u),h.c(),h.m(r,null)):h&&(h.d(1),h=null),m&8&&z(t,"opacity",u[3])},i:J,o:J,d(u){u&&O(t),d&&d.d(),h&&h.d()}}}function kP(i,t,e){let{text:n=""}=t,{icon_url:s=""}=t,{distance:o=0}=t,{opacity:r=1}=t,{name:a=""}=t,{i18n:l=d=>d}=t;const c="data:image/png;base64,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";return i.$$set=d=>{"text"in d&&e(0,n=d.text),"icon_url"in d&&e(1,s=d.icon_url),"distance"in d&&e(2,o=d.distance),"opacity"in d&&e(3,r=d.opacity),"name"in d&&e(4,a=d.name),"i18n"in d&&e(5,l=d.i18n)},[n,s,o,r,a,l,c]}class MP extends le{constructor(t){super(),ae(this,t,kP,EP,oe,{text:0,icon_url:1,distance:2,opacity:3,name:4,i18n:5},PP)}}function xP(i){return i.length===0?[]:i.filter((t,e)=>t!==i[e-1])}const DP=`
|
|
586
586
|
varying vec2 vUv;
|
|
587
587
|
|
|
588
588
|
void main() {
|
|
@@ -669,7 +669,7 @@ void main() {
|
|
|
669
669
|
gl_FragColor.a = gl_FragColor.a * linearGradientOpacity();
|
|
670
670
|
gl_FragColor.a = gl_FragColor.a * flicker;
|
|
671
671
|
}
|
|
672
|
-
`;class oa{constructor(t,e){f(this,"name","");f(this,"startTagContainer");f(this,"endTagContainer");f(this,"mesh");f(this,"five");f(this,"mode");f(this,"path",[]);f(this,"_curvePath",null);f(this,"_curvePoints",null);f(this,"_panoGroup",[]);f(this,"skippedPositions",null);f(this,"textureUrl","");f(this,"scale",1);f(this,"width",.5);f(this,"unitLength",.5);f(this,"_visibleFloorIndexes",null);f(this,"visible",null);f(this,"modeVisible",!1);f(this,"floorVisible",!0);f(this,"defaultVisible",!1);f(this,"inWalkAnimation",!1);f(this,"customVisible",null);f(this,"parent");f(this,"plugin");f(this,"textureHasLoaded",!1);f(this,"disposed",!1);f(this,"flowAnime",new go({progress:0}).to({progress:1}).duration(1500).repeat(1/0));f(this,"flickerAnime",po(300).yoyo(!0).repeat(5));f(this,"cacheLengths",[]);f(this,"dispose",()=>{var t,e;this.disposed||(this.disposed=!0,this.parent.hooks.off("show",this.updateVisible),this.parent.hooks.off("hide",this.updateVisible),this.plugin.hooks.off("show",this.updateVisible),this.plugin.hooks.off("hide",this.updateVisible),this.plugin.hooks.off("enable",this.updateVisible),this.plugin.hooks.off("disable",this.updateVisible),this.five.off("modeChange",this.onFiveModeChange),this.five.off("modelShownFloorChange",this.onFiveModelShownFloorChange),this.doHide(),(t=this.startTagContainer)==null||t.plugin.dispose(),(e=this.endTagContainer)==null||e.plugin.dispose())});f(this,"onWalkAnimationStart",()=>{this.inWalkAnimation=!0,this.updateVisible()});f(this,"onWalkAnimationEnd",()=>{this.inWalkAnimation=!1,this.updateVisible()});f(this,"onFiveModeChange",t=>{this.modeVisible=this.mode==="panorama"?ca(t):fh(t),this.updateVisible()});f(this,"onFiveModelShownFloorChange",t=>{this.floorVisible=t===null||this.visibleFloorIndexes===null||this.visibleFloorIndexes.includes(t),this.updateVisible()});f(this,"updateVisible",()=>{const t=(()=>!this.parent.visible||!this.plugin.state.enabled||!this.plugin.state.visible?!1:this.customVisible!==null?this.customVisible:this.inWalkAnimation?!0:this.modeVisible&&this.textureHasLoaded&&this.defaultVisible&&this.floorVisible)();this.visible!==t&&(this.visible=t,t?this.doShow():this.doHide())});f(this,"onFlowAnimeUpdate",t=>{const{progress:e}=t;this.mesh.material.uniforms.vOffset.value=e,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0});f(this,"onFlickerAnimeUpdate",t=>{var s,o;const{progress:e}=t,n=1-e;this.mesh.material.uniforms.flicker.value=n,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0,this.startTagContainer.tag&&Or(this.startTagContainer.tag)&&((s=this.startTagContainer.app)==null||s.$set(Ae(H({},this.startTagContainer.tag.data),{opacity:n,name:this.name,distance:Math.round(this.curvePath.getLength())}))),this.endTagContainer.tag&&Or(this.endTagContainer.tag)&&((o=this.endTagContainer.app)==null||o.$set(Ae(H({},this.endTagContainer.tag.data),{opacity:n})))});f(this,"logWarning",t=>Tb("GuideLineModeItem: ",t));f(this,"logError",t=>fu("GuideLineModeItem: ",t));var o,r;this.five=t,this.mode=e.mode,this.plugin=e.plugin,this.parent=e.parent,this.startTagContainer={tag:null,plugin:new fo(this.five)},this.endTagContainer={tag:null,plugin:new fo(this.five)};const n=new E.BufferGeometry,s=new E.ShaderMaterial({vertexShader:DP,fragmentShader:SP,transparent:!0,uniforms:{map:{value:null},useMapColor:{value:0},mapColor:{value:new E.Color},mapOpacity:{value:1},backgroundColor:{value:new E.Color},backgroundOpacity:{value:0},borderColor:{value:new E.Color},borderOpacity:{value:0},opacity:{value:1},flicker:{value:1},maxU:{value:0},vOffset:{value:0}}});this.mesh=new E.Mesh(n,s),this.mesh.name="GuideLineModeItem",this.mode==="panorama"&&(this.parent.hooks.on("walkStart",this.onWalkAnimationStart),this.parent.hooks.on("walkEnded",this.onWalkAnimationEnd)),this.updateVisible(),this.onFiveModeChange(this.five.getCurrentState().mode),this.onFiveModelShownFloorChange((r=(o=this.five.model)==null?void 0:o.shownFloor)!=null?r:null),this.flowAnime.onUpdate(this.onFlowAnimeUpdate),this.flickerAnime.onUpdate(this.onFlickerAnimeUpdate),this.parent.hooks.on("show",this.updateVisible),this.parent.hooks.on("hide",this.updateVisible),this.plugin.hooks.on("show",this.updateVisible),this.plugin.hooks.on("hide",this.updateVisible),this.plugin.hooks.on("enable",this.updateVisible),this.plugin.hooks.on("disable",this.updateVisible),this.plugin.hooks.on("dispose",this.dispose),this.five.on("modeChange",this.onFiveModeChange),this.five.on("modelShownFloorChange",this.onFiveModelShownFloorChange)}get panoGroup(){return this._panoGroup}get visibleFloorIndexes(){return this._visibleFloorIndexes}get curvePath(){return this._curvePath}get curvePoints(){return this._curvePoints}setCustomVisible(t){if(this.disposed)return this.logError("disposed");this.customVisible!==t&&(this.customVisible=t,this.updateVisible())}setDefaultVisible(t){if(this.disposed)return this.logError("disposed");this.defaultVisible!==t&&(this.defaultVisible=t,this.updateVisible())}setUnitSize(t,e){if(this.disposed)return this.logError("disposed");this.width=t,this.unitLength=e,this.setGeometryByPath(this.path,{width:t,unit_length:e})}setScale(t){if(this.disposed)return this.logError("disposed");this.scale=t,this.setGeometryByPath(this.path,{scale:t})}setGeometryByPanoGroup(t,e){if(this.disposed)return this.logError("disposed");if(!this.five.work)return this.logError("setPathByPanoGroup: work is not ready");const n=xP(t);if(this._panoGroup=n,(e==null?void 0:e.skipPanoGroup)!==void 0){const o=e.skipPanoGroup?n.map(r=>this.five.work.observers[r]).map(r=>r.standingPosition.clone()):null;this.skippedPositions=o}const s=this.getPathFromPanoGroup(n,this.five.work,e);this.path=s,this.setGeometryByPath(s,e)}setGeometryByPath(t,e){var d,h,u;if(this.disposed)return this.logError("disposed");const n=(d=e==null?void 0:e.scale)!=null?d:this.scale,s=(h=e==null?void 0:e.width)!=null?h:this.width,o=(u=e==null?void 0:e.unit_length)!=null?u:this.unitLength;this.path=t,this.scale=n,this.width=s,this.unitLength=o;const{geometry:r,maxU:a,curvePath:l,curvePoints:c}=Jb({path:t,width:s*n,unitLength:o*n,skipPositions:this.skippedPositions});this._curvePath=l,this._curvePoints=c,this.mesh.geometry=r,this.mesh.material.needsUpdate=!0,this.mesh.material.uniforms.maxU.value=a,this.five.needsRender=!0}setMartial(t){var e;if(this.disposed)return this.logError("disposed");(t==null?void 0:t.visible)!==void 0&&this.setDefaultVisible(t.visible),(t==null?void 0:t.color)!==void 0&&this.setColor(t.color),(t==null?void 0:t.opacity)!==void 0&&this.setOpacity(t.opacity),((e=t==null?void 0:t.texture)==null?void 0:e.url)!==void 0&&this.setTextureUrl(t.texture.url),(t==null?void 0:t.background_color)!==void 0&&this.setBackgroundColor(t.background_color),(t==null?void 0:t.background_opacity)!==void 0&&this.setBackgroundOpacity(t.background_opacity),(t==null?void 0:t.border_color)!==void 0&&this.setBorderColor(t.border_color),(t==null?void 0:t.border_opacity)!==void 0&&this.setBorderOpacity(t.border_opacity)}setColor(t){if(this.disposed)return this.logError("disposed");t&&(this.mesh.material.uniforms.mapColor.value=new E.Color().set(t)),this.mesh.material.uniforms.useMapColor.value=t?1:0,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBorderColor(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.borderColor.value=new E.Color().set(t),this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBorderOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.borderOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBackgroundColor(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.backgroundColor.value=new E.Color().set(t),this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBackgroundOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.backgroundOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.opacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setMapOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.mapOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setTextureUrl(t){if(this.disposed)return this.logError("disposed");this.textureUrl=t,ns(t).then(e=>{this.disposed||this.textureUrl===t&&(e.wrapT=E.RepeatWrapping,this.textureHasLoaded=!0,this.mesh.material.uniforms.map.value=e,this.mesh.material.uniformsNeedUpdate=!0,this.mesh.material.needsUpdate=!0,this.five.needsRender=!0,this.updateVisible())})}setVisibleFloorIndexes(t){var e,n;if(this.disposed)return this.logError("disposed");this._visibleFloorIndexes=t,this.onFiveModelShownFloorChange((n=(e=this.five.model)==null?void 0:e.shownFloor)!=null?n:null)}setStartTag(t){this.setTag("start",t)}setEndTag(t){this.setTag("end",t)}flicker(){if(this.disposed)return this.logError("disposed");this.flickerAnime.play()}getLengthByPanoGroupIndex(t){return this.disposed?this.logError("disposed"):this.cacheLengths.length!==0?this.cacheLengths[t]:(this.cacheLengths=this.getPanoGroupLengths(),this.cacheLengths[t])}getPanoGroupLengths(){const t=this.panoGroup.map(c=>this.five.work.observers[c]),e=this.curvePoints.length,n=this.curvePath.getLength(),s=e-1,o=n/s,r=this.curvePath.getLengths(s),a=[];let l=0;for(let c=0;c<e;c++){const d=this.curvePoints[c],h=t[l];if(!h)break;h.standingPosition.clone().setY(0).distanceTo(d.clone().setY(0))<o&&(a.push(r[c]),l+=1)}return a}setTag(t,e){const n=t==="start"?this.startTagContainer:this.endTagContainer;e||n.plugin.clearTags();const o=Xe({},{contentType:"Custom",stickType:"2DPoint",config:{visibleConfig:{visibleFiveMode:["Floorplan","Mapview"],followModelVisibility:!1}},style:{point:{enabled:!1}},data:{}},e);n.tag=o,Or(o)&&(n.tag.element=r=>{var c;(c=n.app)==null||c.$destroy();const a=t==="start"?Ae(H({},o.data),{name:this.name,distance:Math.round(this.curvePath.getLength()),i18n:this.plugin.config.i18n}):o.data,l=new MP({target:r,intro:!0,props:a});return n.app=l,()=>l.$destroy()}),n.plugin.load({tagList:[n.tag]})}doShow(){this.mode==="model"&&this.flowAnime.play(),this.five.scene.add(this.mesh),this.startTagContainer.plugin.show(),this.endTagContainer.plugin.show(),this.five.needsRender=!0}doHide(){this.mode==="model"&&this.flowAnime.stop(),this.five.scene.remove(this.mesh),this.startTagContainer.plugin.hide(),this.endTagContainer.plugin.hide(),this.five.needsRender=!0}getPathFromPanoGroup(t,e,n){if(t.length<2)return[];const o=t.map(r=>e.observers[r]).map(r=>r.standingPosition.toArray());return[H({type:"CatmullRomCurve3",points:o},n)]}}function Or(i){return i.contentType==="Custom"}const TP=Object.freeze(Object.defineProperty({__proto__:null,GuideLineModeItem:oa},Symbol.toStringTag,{value:"Module"}));function $d(i){const t=Math.abs(Math.cos(i.latitude));return new E.Vector3(-Math.sin(i.longitude)*t,-Math.sin(i.latitude),-Math.cos(i.longitude)*t)}function LP(i,t){const e=$d(i),n=$d(t);return e.angleTo(n)}const jP=i=>U(exports,null,function*(){try{i().then(()=>{},()=>{}).catch(()=>{})}catch(t){}}),Ns=Math.PI*2;function zP(i){return i>=0&&i<Ns?i:(i%Ns+Ns)%Ns}function OP(i){return{longitude:zP(-Math.atan2(i.x,-i.z)),latitude:-Math.asin(i.y/1)}}function BP(i,t,e,n){const s=-i/e,o=i;return s*n+o}function VP(i){return new Promise(t=>{setTimeout(()=>{t()},i)})}const Wu="v1.0.6",Fu="CruisePlugin",So=`${Fu}@${Wu}`,eh=()=>{console.error(`${So} is disposed`)},RP=()=>{console.warn(`${So} is disabled`)},QP=()=>{console.error(`${So} is disabled`)},Br=new Map;class as extends Bn{constructor(e,n){super(e,n);f(this,"state",{visible:!0,enabled:!0,disposed:!1,playing:!1,speed:1,config:{speedConfig:{rotateSpeed:.001,rotateSpeedUnit:"rad/ms",moveSpeed:.002,moveSpeedUnit:"m/ms"}}});f(this,"data");f(this,"config");f(this,"privateState",{playing:!1,currentPlayQueue:[],currentPlayKeyframe:null,broke:!1,disposers:[],modeChanging:!1});f(this,"GuideLine");this.config=n,Object.assign(window,{[`__${Fu}_DEBUG__`]:this});const s=this.setFiveLinearUpdateCamera.bind(this),o=this.setFiveOriginUpdateCamera.bind(this);this.hooks.on("play",s),this.hooks.on("broke",o),this.hooks.on("end",o),this.hooks.on("pause",o),this.privateState.disposers.push(()=>{this.hooks.off("play",s),this.hooks.off("broke",o),this.hooks.off("end",o),this.hooks.off("pause",o)})}load(e,n,s){return U(this,null,function*(){var d,h,u,m,A,p;if(this.state.disposed)return eh();this.privateState.fiveOriginGetProgress||(h=(d=this.five.controller)==null?void 0:d.cameraMotion)!=null&&h.getProgress||(yield this.waitFiveLoaded(),this.privateState.fiveOriginGetProgress=(m=(u=this.five.controller)==null?void 0:u.cameraMotion)==null?void 0:m.getProgress),this.clear();const o=this.data?JSON.parse(JSON.stringify(this.data)):void 0,r=yield this.formatData(e);this.data=r,this.hooks.emit("dataChange",r,o);let a=[],l;const c=this.data.keyframes.filter(g=>g.data.panoIndex!==void 0);c.filter((g,b)=>{var y;return g.data.panoIndex!==((y=c[b-1])==null?void 0:y.data.panoIndex)}).map(g=>g.data.panoIndex).forEach(g=>{var y,I;const b=(y=this.five.work.observers[g])==null?void 0:y.floorIndex;if(b!==void 0)if(l===b){const k=a.length-1;a[k]=[...(I=a[k])!=null?I:[],g]}else{l=b;const k=a.length;a[k]=[g]}}),!this.GuideLine&&((A=this.config)==null?void 0:A.useGuideLine)!==!1&&r.useGuildLine!==!1&&(this.GuideLine=Xu(this.five,this.config)),(p=this.GuideLine)==null||p.load({routes:a.map(g=>({panoIndexList:g})),config:r.guildPluginOptions}),this.setState({playing:!1}),this.handleVisible(this.state.visible),this.handleEnable(this.state.enabled),this.changePlayState(this.state.playing),this.changeSpeed(this.state.speed),n&&this.setState(n,{userAction:s}),console.debug(`${So} loaded`,r),this.hooks.emit("dataLoaded",r)})}play(e){this.setState({playing:!0},e)}playFrom(e){const{index:n,id:s,userAction:o}=e;this.state.playing&&this.setState({playing:!1},{userAction:o}),this.setState({playing:!0},{userAction:o,playFromIndex:n,playFromId:s})}playFromStart(e){return this.playFrom(Ae(H({},e),{index:0}))}pause(e){this.setState({playing:!1},e)}show(e){return U(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return U(this,null,function*(){this.setState({visible:!1},e)})}enable(e){this.setState({enabled:!0},e)}disable(e){this.setState({enabled:!1},e)}dispose(){this.setState({disposed:!0})}setState(e,n){var o;if(this.state.disposed)return eh();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return QP();const s=H({},this.state);this.state=H(H({},this.state),e),e.disposed!==void 0&&e.disposed!==s.disposed&&e.disposed&&this.handleDispose(),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible,n==null?void 0:n.userAction),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled,n==null?void 0:n.userAction),e.playing!==void 0&&e.playing!==s.playing&&this.changePlayState(e.playing,n),e.speed!==void 0&&e.speed!==s.speed&&this.changeSpeed(e.speed,n==null?void 0:n.userAction),Gt(s,this.state,{deep:!0})||this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:(o=n==null?void 0:n.userAction)!=null?o:!0})}formatData(e){return U(this,null,function*(){this.five.work||(yield this.waitFiveLoaded());const n=this.five.work.observers,s=(()=>{const o=e;return typeof o=="object"&&o!==null&&o.version&&o.data?o.data:o})();if(s.keyframes)return{keyframesId:at(),keyframes:s.keyframes.map((o,r)=>{var c;const a=s.keyframes[r+1],l=(()=>!a||a.start===void 0||o.end===void 0?0:a.start-o.end)();return Ae(H({id:(c=o.uuid)!=null?c:at(),moveIndex:r,stay:l,index:r},o),{guildPluginOptions:s.guildPluginOptions})})};if(s.panoIndexList){let o=[];const{moveEffect:r,moveToFirstPanoEffect:a,moveToFirstPanoDuration:l}=s;return this.privateState.moveToFirstPanoEffect=a,this.privateState.moveToFirstPanoDuration=l,s.panoIndexList.forEach((c,d)=>{const h=(()=>{var g,b,y,I;const u=s.panoIndexList.slice(d).find(k=>k!==c);if(u===void 0)return;const m=(g=n[c])==null?void 0:g.position,A=(b=n[u])==null?void 0:b.position;if(!A||!m||((y=n[c])==null?void 0:y.floorIndex)!==((I=n[u])==null?void 0:I.floorIndex))return;const p=new E.Vector3().subVectors(A,m);return OP(p.normalize())})();s.moveType===void 0||s.moveType==="justMove"?o.push({moveIndex:d,stay:s.stay,data:H({effect:"Move",panoIndex:c,moveEffect:r},h!=null?h:{})}):s.moveType==="moveAndRotate"&&(o.push({moveIndex:d,stay:s.stay,data:{effect:"Move",panoIndex:c,moveEffect:r}}),h&&o.push({moveIndex:d,stay:s.stay,data:H({effect:"Rotate",panoIndex:c},h)}))}),{keyframesId:at(),keyframes:o.map((c,d)=>H({id:at(),index:d},c)),guildPluginOptions:s.guildPluginOptions,useGuildLine:s.useGuildLine}}else throw new Error("format error: data no keyframes or no panoIndexList")})}handleEnable(e,n=!0){var s,o;e?((s=this.GuideLine)==null||s.enable(),this.hooks.emit("enable",{userAction:n})):((o=this.GuideLine)==null||o.disable(),this.changePlayState(!1,{userAction:n}),this.hooks.emit("disable",{userAction:n})),this.state.enabled=e}handleVisible(e,n=!0){var s,o;e?((s=this.GuideLine)==null||s.show(),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:n}))):((o=this.GuideLine)==null||o.hide(),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:n}))),this.state.visible=e}changePlayState(e,n){this.actionIfStateIsEnabled(()=>{var s;return this.hooks.emit("playStateChange",e?"playing":"pause",{userAction:(s=n==null?void 0:n.userAction)!=null?s:!0})}),e?this.handlePlay(n):this.handlePause(n),this.state.playing=e}handlePlay(e){return U(this,null,function*(){var m;const{data:n,state:s,privateState:o,hooks:r}=this;if(o.playing||!(n!=null&&n.keyframes)||(n==null?void 0:n.keyframes.length)===0)return;const a=at();o.playId=a,o.playing=!0,o.broke=!1;const l=n.keyframes,c=this.getPauseData();(e==null?void 0:e.notEmitEvent)!==!0&&r.emit("play",{userAction:(m=e==null?void 0:e.userAction)!=null?m:!0});let d=!1;const u=yield(()=>U(this,null,function*(){var A,p;if((e==null?void 0:e.playFromIndex)!==void 0)return e.playFromIndex;if((e==null?void 0:e.playFromId)!==void 0)return(A=this.data)==null?void 0:A.keyframes.findIndex(g=>g.id===e.playFromId);if(c!=null&&c.keyframeId){const g=(p=this.data)==null?void 0:p.keyframes.find(b=>b.id===c.keyframeId);if(c!=null&&c.fiveState&&(yield this.move(c.fiveState,{moveEffect:o.moveToFirstPanoEffect,duration:o.moveToFirstPanoDuration})),g){if(g.data.effect==="Move")return g.index;if(g.data.effect==="Rotate"){const b=c.duration!==void 0?c.duration*(1-c.playedProgress):void 0;return yield this.playKeyframe(g,{duration:b}),d=!0,g.index+1}}}}))();this.clearPauseData();for(const A of l){if(o.broke||!s.playing||!o.playing||a!==o.playId)return;if(!(u!==void 0&&A.index<u))try{r.emit("playIndexChange",A.index,A),yield this.playKeyframe(A,{moveEffect:d===!1?o.moveToFirstPanoEffect:void 0,duration:d===!1&&typeof o.moveToFirstPanoDuration=="number"?o.moveToFirstPanoDuration:void 0}),A.stay&&(yield VP(A.stay)),d===!1&&(d=!0)}catch(p){return Promise.resolve("broke")}}s.playing&&a===o.playId&&(this.setState({playing:!1},{userAction:!1}),r.emit("end"),this.clearPauseData())})}handlePause(e){var r;const{state:n,privateState:s,hooks:o}=this;n.playing=!1,s.playing!==!1&&(s.playing=!1,this.setPauseData(),s.broke||this.forceInteruptUpdateCamera(),(e==null?void 0:e.notEmitEvent)!==!0&&o.emit("pause",{userAction:(r=e==null?void 0:e.userAction)!=null?r:!0}))}playKeyframe(e,n){return U(this,null,function*(){var o;const{privateState:s}=this;return((o=this.privateState.currentPlayKeyframe)==null?void 0:o.keyframe.id)!==e.id&&(this.privateState.currentPlayKeyframe={keyframe:e}),s.currentPlayQueue.push(this.getPlayPromise(e,n)),this.actionPromiseQueue()})}addInterruptListener(e){const n=()=>{this.privateState.modeChanging||e()},s=e;return this.five.once("gesture",s),this.five.once("wantsChangeMode",n),()=>{this.five.off("gesture",s),this.five.once("wantsChangeMode",n)}}getPlayPromise(s){return U(this,arguments,function*(e,n={}){var r;const o=e.data;if(n.duration=(r=n.duration)!=null?r:e.start!==void 0&&e.end!==void 0?e.end-e.start:void 0,!!o)return new Promise((a,l)=>{let c=!1;this.addInterruptListener(()=>{if(!c)return this.hooks.emit("broke"),this.privateState.broke=!0,this.setState({playing:!1}),c=!0,l(new Error("play is interupted"))});try{if(c)return;const d=()=>{a(),c=!0};switch(o.effect){case"Move":this.move(o,n).then(d);break;case"Rotate":this.rotate(o,n).then(d);break;default:this.rotate(o,n).then(d)}}catch(d){}})})}actionPromiseQueue(){return U(this,null,function*(){const{privateState:e}=this;return new Promise((n,s)=>{if(e.currentPlayQueue.length===0){n();return}const o=e.currentPlayQueue.shift();if(!o){n();return}o.then(n,s)}).then(()=>e.currentPlayQueue.length===0?Promise.resolve():this.actionPromiseQueue())})}move(e,n){return U(this,null,function*(){if(e.mode&&e.mode!==this.five.currentMode)yield this.changeMode(e);else if(e.panoIndex!==this.five.panoIndex)yield this.changePano(e,n);else return Promise.resolve()})}rotate(e,n){return U(this,null,function*(){if(e.mode&&e.mode!==this.five.currentMode)yield this.changeMode({mode:e.mode,panoIndex:e.panoIndex});else if(e.panoIndex&&e.panoIndex!==this.five.panoIndex)return yield this.changePano(e,n);yield this.updateCamera(e,n)})}updateCamera(s){return U(this,arguments,function*(e,n={}){const{five:o,privateState:r,state:a}=this,l=(()=>{var m,A;const h=(m=a.config)==null?void 0:m.speedConfig,u=(A=e.rotateSpeed)!=null?A:h==null?void 0:h.rotateSpeed;if((h==null?void 0:h.rotateSpeedUnit)===void 0)return u;if(u!==void 0)return h.rotateSpeedUnit==="rad/ms"?u:u/1e3})(),c=(()=>{if(n.duration)return n.duration;if(l){const h=this.five.getCurrentState();return LP(h,e)/l}return 800})();r.currentPlayKeyframe&&(r.currentPlayKeyframe.originDuration=c);const d=this.getSpeededDuration(c);return new Promise(h=>{jP(()=>o.updateCamera(e,d)),setTimeout(()=>h(),d)})})}changePano(e,n){return U(this,null,function*(){const{five:s,privateState:o,state:r}=this;if(typeof e.panoIndex!="number"||e.panoIndex===s.panoIndex)return;const a=s.getCurrentState().mode!=="Panorama";a&&(this.privateState.modeChanging=!0);const l=(()=>{var u,m;const d=(u=r.config)==null?void 0:u.speedConfig,h=(m=e.moveSpeed)!=null?m:d==null?void 0:d.moveSpeed;if((d==null?void 0:d.moveSpeedUnit)===void 0)return h;if(h!==void 0)return d.moveSpeedUnit==="m/ms"?h:h/1e3})(),c=(()=>{if(n!=null&&n.duration)return n.duration;if(l&&typeof s.panoIndex=="number"&&typeof e.panoIndex=="number"){const d=s.work.observers[s.panoIndex].position,h=s.work.observers[e.panoIndex].position;return d.distanceTo(h)/l}return 800})();o.currentPlayKeyframe&&(o.currentPlayKeyframe.originDuration=c),yield new Promise(d=>{var h,u,m;s.moveToPano(e.panoIndex,{latitude:e.latitude,longitude:e.longitude,fov:e.fov,duration:this.getSpeededDuration(c),effect:(m=(u=n==null?void 0:n.moveEffect)!=null?u:(h=this.state.config)==null?void 0:h.moveEffect)!=null?m:e.moveEffect,moveCancelCallback:()=>d(),moveEndCallback:()=>d()}),a&&s.once("panoArrived",()=>d())}),a&&(this.privateState.modeChanging=!1)})}changeSpeed(e,n=!0){const{state:s,privateState:o,hooks:r}=this,{currentPlayKeyframe:a}=o;if(r.emit("speedChange",e,{userAction:n}),s.playing&&a)try{const l=a.originDuration!==void 0?a.originDuration*(1-this.getProgress()):void 0,c=this.playKeyframe(a.keyframe,{duration:l});o.currentPlayQueue.push(c)}catch(l){}}getSpeededDuration(e){return e/this.state.speed}getProgress(){return this.five.controller.cameraMotion.progress}changeMode(e,n){return U(this,null,function*(){e.mode&&e.mode!==this.five.currentMode&&(this.privateState.modeChanging=!0,yield this.five.changeMode(e.mode,e,n),this.privateState.modeChanging=!1)})}forceInteruptUpdateCamera(){this.five.updateCamera({},0)}getPauseData(){var e,n;if((e=this.data)!=null&&e.keyframesId)return Br.get((n=this.data)==null?void 0:n.keyframesId)}setPauseData(){var e,n,s,o;if((e=this.data)!=null&&e.keyframesId)return Br.set((n=this.data)==null?void 0:n.keyframesId,{keyframeId:(s=this.privateState.currentPlayKeyframe)==null?void 0:s.keyframe.id,fiveState:this.five.getCurrentState(),duration:(o=this.privateState.currentPlayKeyframe)==null?void 0:o.originDuration,playedProgress:this.getProgress()})}clearPauseData(){var e,n;if((e=this.data)!=null&&e.keyframesId)return Br.delete((n=this.data)==null?void 0:n.keyframesId)}clear(){this.clearPauseData(),this.privateState.currentPlayKeyframe=null}handleDispose(){var e,n;this.setState({playing:!1}),this.clearPauseData(),this.clear(),(e=this.GuideLine)==null||e.dispose(),this.GuideLine=void 0,(n=this.privateState.disposers)==null||n.forEach(s=>s==null?void 0:s())}actionIfStateIsEnabled(e,n){if(this.state.enabled)return e();n!=null&&n.warnLog&&RP()}waitFiveLoaded(){return U(this,null,function*(){return new Promise(e=>{if(this.five.work){e();return}this.five.once("loaded",()=>{e()})})})}setFiveLinearUpdateCamera(){this.privateState.fiveOriginGetProgress&&(this.five.controller.cameraMotion.getProgress=e=>{const n=this.five.controller.cameraMotion,s=e-n.startTime;return s<0?0:s>=n.duration?1:1-BP(1,n.startVelocity,n.duration,s)})}setFiveOriginUpdateCamera(){this.privateState.fiveOriginGetProgress&&(this.five.controller.cameraMotion.getProgress=this.privateState.fiveOriginGetProgress)}}f(as,"PluginVersion",Wu);const GP=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),NP=i=>new as(i);class Yu{constructor(t){f(this,"id");f(this,"renderID");f(this,"isGuideLine",!0);f(this,"panoramaItem");f(this,"modelItem");f(this,"hooks",new Te.Subscribe);f(this,"_visible",!0);f(this,"plugin");f(this,"five");f(this,"logError",t=>fu("GuideLineItem: ",t));this.id=t.id,this.five=t.five,this.plugin=t.plugin,this.panoramaItem=new oa(this.five,{mode:"panorama",plugin:this.plugin,parent:this}),this.modelItem=new oa(this.five,{mode:"model",plugin:this.plugin,parent:this})}get visible(){return this._visible}setData(t){this.setDataByMode("panorama",t),this.setDataByMode("model",t)}setHeightOffset(t){this.modelItem.mesh.position.y=t,this.panoramaItem.mesh.position.y=t}setDataByMode(t,e){var l;const n=t==="panorama"?this.panoramaItem:this.modelItem,s=t==="panorama"?e.panorama_style:e.model_style,o=e.path,r=s,a=s;if(e.pano_group){const c=t==="panorama";n.setGeometryByPanoGroup(e.pano_group,H({skipPanoGroup:c},r))}else e.path&&n.setGeometryByPath(o,r);n.name=e.name,n.setMartial(a),n.setVisibleFloorIndexes((l=e.visible_floor_indexes)!=null?l:null),n.setStartTag(s==null?void 0:s.start_tag),n.setEndTag(s==null?void 0:s.end_tag)}show(){this._visible=!0,this.hooks.emit("show",{userAction:!0})}hide(){this._visible=!1,this.hooks.emit("hide",{userAction:!0})}dispose(){this.panoramaItem.dispose(),this.modelItem.dispose()}walk(t){return U(this,null,function*(){if(!this.panoramaItem.panoGroup)return;const e=H({panoIndexList:this.panoramaItem.panoGroup},t);this.hooks.emit("walkStart",{userAction:!0});const[n]=yield di(HP(this.five,e));if(this.hooks.emit("walkEnded",{userAction:!0}),n)return this.logError(n.message)})}}function HP(i,t){return U(this,null,function*(){if(t.panoIndexList.length===0)return;const e=i.getCurrentState();e.mode!=="Panorama"&&(yield xa(i,["Panorama",{longitude:e.longitude,latitude:0,panoIndex:t.panoIndexList[0]}]));const n=new as(i,{useGuideLine:!1});yield n.load(t),yield new Promise((s,o)=>{const r=i.getCurrentState();let a=t.panoIndexList.slice();r.panoIndex===a[0]&&c(r.panoIndex),n.playFromStart();function l(m){if(m!=="Panorama")return h(new Error("mode not match"))}function c(m){const A=a[0];if(a=a.slice(1),m!==A)return h(new Error("panoIndex not match, wanted: "+A+", got: "+m));if(a.length===0)return u()}function d(){i.off("modeChange",l),i.off("panoArrived",c)}function h(m){d(),o(m)}function u(){d(),s()}i.on("modeChange",l),i.on("panoArrived",c)})})}const _P=Object.freeze(Object.defineProperty({__proto__:null,GuideLineItem:Yu},Symbol.toStringTag,{value:"Module"})),Uu="v1.1.0",ra="GuideLinePlugin",th=`${ra}@${Uu}`;class WP extends Bn{constructor(e,n){super(e,n);f(this,"version",Uu);f(this,"name",ra);f(this,"cruisePlugin");f(this,"itemMap",new Map);f(this,"state",{visible:!1,enabled:!0});f(this,"data");f(this,"heightOffset",0);f(this,"_config");f(this,"_disposed",!1);f(this,"disposedErrorLog",()=>{console.error(`${th} is disposed`)});this._config=n!=null?n:{},this.cruisePlugin=new as(e,{useGuideLine:!1}),Object.assign(window,{[`__${ra}_DEBUG__`]:this})}get config(){return this._config}get disposed(){return this._disposed}load(e,n,s=!0){return U(this,null,function*(){var m,A,p,g,b,y,I;if(this.disposed)return;const o=this.data?JSON.parse(JSON.stringify(this.data)):void 0,r=yield this.formatData(e);this.hooks.emit("dataChange",r,o),this.data=r;const a=r.config,c={panorama_style:{visible:!!(!r.lines&&r.routes),unit_length:(m=a==null?void 0:a.unitHeight)!=null?m:.4,width:(A=a==null?void 0:a.unitWidth)!=null?A:.6,texture:{url:(p=a==null?void 0:a.arrowTextureUrl)!=null?p:this.staticPrefix+"/release/web/arrow6.b6ce0c62.png"}}},d=(b=(g=r.routes)==null?void 0:g.map(k=>{var T;return Xe({},c,{id:(T=k.id)!=null?T:Date.now(),pano_group:k.panoIndexList})}))!=null?b:[],h=(I=(y=r.lines)==null?void 0:y.map(k=>Xe({},c,k)))!=null?I:[],u=[...d,...h];yield this.waitFiveLoaded(),this.clear(),u.forEach(k=>{this.addGuideLineItem(k)}),this.updateTagsEnable(),this.handleVisible(this.state.visible),this.handleEnable(this.state.enabled),n&&this.setState(n,{userAction:s}),this.hooks.emit("dataLoaded",r),console.debug(`${th} loaded`,r)})}formatData(e){return U(this,null,function*(){return this.getDataWithoutVersion(e)})}show(e){return U(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return U(this,null,function*(){this.setState({visible:!1},e)})}enable(e){this.setState({enabled:!0},e)}disable(e){this.setState({enabled:!1},e)}dispose(){this.disposed||(this.clear(),this.hooks.emit("dispose"))}setState(e,n){var o;if(this.disposed)return this.disposedErrorLog();const s=H({},this.state);this.state=H(H({},this.state),e),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible,n==null?void 0:n.userAction),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled,n==null?void 0:n.userAction),Gt(s,this.state,{deep:!0})||(this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:(o=n==null?void 0:n.userAction)!=null?o:!0}),this.five.needsRender=!0)}addGuideLineItem(e){const n=e.render_id||e.id,s=this.itemMap.get(n);s&&this.removeGuideLineItem(s);const o=new Yu({five:this.five,id:n,plugin:this});return this.itemMap.set(n,o),e&&o.setData(e),this.heightOffset+=1e-4,o.setHeightOffset(this.heightOffset),o}getGuideLineItemByID(e){return this.itemMap.get(e)}removeGuideLineItem(e){this.itemMap.delete(e.id),e.panoramaItem.dispose(),e.modelItem.dispose()}updateTagsEnable(){const e=[];function n(r){return Array.isArray(r)&&r.every(a=>typeof a=="number")}function s(r,a){return new E.Vector3().fromArray(r).distanceTo(new E.Vector3().fromArray(a))<.01}function o(r){var l;const a=(l=r.tag)==null?void 0:l.position;return n(a)?e.every(c=>{var d;return n((d=c.tag)==null?void 0:d.position)?!s(a,c.tag.position):!0}):!1}this.itemMap.forEach(r=>{const a=r.modelItem.startTagContainer,l=r.modelItem.endTagContainer,c=o(a);c&&e.push(a),a.plugin.setState({enabled:c},{});const d=o(l);d&&e.push(l),l.plugin.setState({enabled:d},{})})}clear(){this.itemMap.forEach(e=>{this.removeGuideLineItem(e)})}handleEnable(e,n=!0){this.hooks.emit(e?"enable":"disable",{userAction:n})}handleVisible(e,n=!0){this.state.enabled&&this.hooks.emit(e?"show":"hide",{userAction:n})}waitFiveLoaded(){return U(this,null,function*(){return new Promise(e=>{if(this.five.work){e();return}this.five.once("loaded",()=>{e()})})})}getDataWithoutVersion(e){return typeof e=="object"&&e!==null&&e.version&&e.data?e.data:e}}const Xu=(i,t)=>new WP(i,t);function Zu(i,t,e){if(e){const s=new E.Vector3().subVectors(i.position,e).applyQuaternion(i.quaternion.clone().inverse()).applyQuaternion(t).add(e);i.position.copy(s)}i.quaternion.copy(t)}class To extends eu{constructor(e,n){var s;super();f(this,"originObject3D");f(this,"onRender");this.originObject3D=e,this.onRender=(s=n==null?void 0:n.onRender)!=null?s:()=>{}}get helperObject(){return this}render(){this.onRender()}enable(){this.parent.children.includes(this)||this.parent.add(this)}disable(){this.removeFromParent()}show(){this.visible=!0,this.render()}hide(){this.visible=!1,this.render()}raycasterIntersectObject(e,n=[]){return e.intersectObject(this,!0,n)}initialPosition(){this.position.add(this.originObject3D.position)}initQuaternion(){this.quaternion.copy(this.originObject3D.quaternion)}applyHelperScaleMatrix4(e,n){this.scale.applyMatrix4(e)}setHelperQuaternion(e,n){Zu(this,e,n)}applyHelperQuaternion(e,n){if(n){const s=new R.Vector3().subVectors(this.position,n).applyQuaternion(e).add(n);this.position.copy(s)}this.applyQuaternion(e)}dispose(){this.removeFromParent()}}class FP extends To{}class YP extends To{}class UP extends To{}class Ju extends To{}class XP extends Ju{}class ZP extends E.Group{constructor(e){super();f(this,"direction");this.direction=e||"x"}}class nh extends E.Mesh{constructor(e,n,s){super(e,n);f(this,"direction");this.direction=s||"x"}}function JP(i,t){const{offsetWidth:e,offsetHeight:n}=t,{top:s,left:o}=t.getBoundingClientRect();return Object.assign(new E.Vector2,{x:(i.x-o)/e*2-1,y:-(i.y-s)/n*2+1})}function Fa(i,t,e){if(!t||!e||!i)return;const n=JP(t,e);if(Math.abs(n.x)===1||Math.abs(n.y)===1)return;const s=new E.Raycaster;return s.setFromCamera(n,i),s}function qP(i,t){return!(Math.abs(i.x-t.x)>1e-5||Math.abs(i.y-t.y)>1e-5||Math.abs(i.z-t.z)>1e-5)}class Vr extends ZP{constructor(e){var d;super(e.direction);f(this,"line");f(this,"arrow");f(this,"lineHeight",.4);f(this,"arrowHeight",.1);this.name="ArrowGroup";const n=new E.Color((d=e.color)!=null?d:16214315),s=new E.MeshBasicMaterial({color:n,depthTest:!1,opacity:1,transparent:!0,side:E.DoubleSide}),o=new E.ConeGeometry(.04,.1,32),r=new nh(o,s.clone(),e.direction);r.name=`arrow-${e.direction}`,this.arrow=r;const a=.004,l=new E.CylinderGeometry(a,a,.4,32),c=new nh(l,s.clone(),e.direction);c.name=`line-${e.direction}`,this.line=c,this.formatArrow(),this.formatLine(),this.add(this.arrow,this.line)}formatArrow(){this.arrow.geometry.translate(0,this.lineHeight+this.arrowHeight/2,0),this.direction==="x"?(this.arrow.geometry.rotateX(Math.PI/2),this.arrow.geometry.rotateY(Math.PI/2)):this.direction==="z"&&this.arrow.geometry.rotateX(Math.PI/2)}formatLine(){this.line.geometry.translate(0,this.lineHeight/2,0),this.direction==="x"?(this.line.geometry.rotateX(Math.PI/2),this.line.geometry.rotateY(Math.PI/2)):this.direction==="z"&&this.line.geometry.rotateX(Math.PI/2)}}const Rr={X:15618642,Y:4765519,Z:4227839};class ai{static get X(){return new E.Color(Rr.X).convertSRGBToLinear().clone()}static get Y(){return new E.Color(Rr.Y).convertSRGBToLinear().clone()}static get Z(){return new E.Color(Rr.Z).convertSRGBToLinear().clone()}}class KP extends FP{constructor(e){super(e);f(this,"xArrow",new Vr({direction:"x",color:ai.X}));f(this,"yArrow",new Vr({direction:"y",color:ai.Y}));f(this,"zArrow",new Vr({direction:"z",color:ai.Z}));this.add(this.xArrow),this.add(this.yArrow),this.add(this.zArrow)}show(){super.show(),this.xArrow.visible=!0,this.yArrow.visible=!0,this.zArrow.visible=!0}showDraggingHelper(e){this.xArrow.visible=e.includes("x"),this.yArrow.visible=e.includes("y"),this.zArrow.visible=e.includes("z")}dispose(){this.remove(this.xArrow,this.yArrow,this.zArrow)}}function Tn(i,t){return $P(document.createElement(t!=null?t:"div"),i)}function $P(i,t){if(!t)return i;for(const e in t)e&&t[e]&&(i.style[e]=t[e]);return i}function e2(i){const t=Tn(H({position:"absolute",display:"block",borderRadius:"4px",paddingTop:"1px",paddingBottom:"1px",paddingLeft:"4px",paddingRight:"4px",pointerEvents:"none",userSelect:"none",zIndex:"99999",backgroundColor:"rgba(0,0,0,0.7)",fontSize:"12px",color:"#fff",letterSpacing:"0",lineHeight:"18px"},i)),e=()=>{t.style.display!=="block"&&t.style.top&&t.style.left&&(t.style.display="block")};return{element:t,show:e,hide:()=>{t.style.display="none",t.style.top="",t.style.left=""},setLeftTop:(o,r)=>{t.style.left=o,t.style.top=r,e()}}}class t2 extends UP{constructor(e,n){super(e);f(this,"xCircle");f(this,"yCircle");f(this,"zCircle");f(this,"children",[]);f(this,"angleTips");f(this,"container");(n==null?void 0:n.yzCircleEnable)!==!1&&(this.xCircle=new Qr({direction:"x",color:ai.X})),(n==null?void 0:n.xzCircleEnable)!==!1&&(this.yCircle=new Qr({direction:"y",color:ai.Y})),(n==null?void 0:n.xyCircleEnable)!==!1&&(this.zCircle=new Qr({direction:"z",color:ai.Z})),n!=null&&n.container&&(n==null?void 0:n.angleTipsEnable)!==!1&&(this.container=n==null?void 0:n.container,this.angleTips=e2({display:"none"}),this.container.appendChild(this.angleTips.element)),this.add(...[this.xCircle,this.yCircle,this.zCircle].filter(Boolean)),this.show()}hide(){this.children.forEach(e=>e.hide())}show(){var e;this.children.forEach(n=>n.showCircle()),(e=this.angleTips)==null||e.hide()}showDraggingHelper(e){var n;this.hide(),this.children.filter(s=>e.includes(s.direction)).forEach(s=>s.showRing()),(n=this.angleTips)==null||n.show()}dispose(){var e,n;this.removeFromParent(),(n=(e=this.angleTips)==null?void 0:e.element)==null||n.remove()}}class Qr extends E.Group{constructor(e){super();f(this,"direction");f(this,"circle");f(this,"ring");f(this,"angleSector");this.direction=e.direction,this.circle=new n2(e),this.ring=new i2(e),this.angleSector=new s2(e),this.add(this.circle,this.ring,this.angleSector),this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}showCircle(){this.add(this.circle),this.remove(this.ring,this.angleSector)}showRing(){this.add(this.ring,this.angleSector),this.remove(this.circle)}hide(){this.remove(this.ring,this.angleSector,this.circle)}}class n2 extends E.Mesh{constructor(e){var n;super();f(this,"direction");f(this,"gapAngle",.02);f(this,"geometry",new E.RingGeometry(.25,.3,20,8,this.gapAngle,Math.PI/2-this.gapAngle*2));this.material=new E.MeshBasicMaterial({opacity:.6,color:(n=e.color)!=null?n:16777215,transparent:!0,side:E.DoubleSide,depthTest:!1}),this.direction=e.direction,this.geometry.name=`RotateHelperCircleGeometry-${this.direction}`}}class i2 extends E.Group{constructor(e){super();f(this,"direction");this.direction=e.direction;const n=.015,s=new Array(8).fill(null).map((o,r)=>{const a=new E.RingGeometry(.25,.3,20,8,Math.PI/4*r+n,Math.PI/4-n*2),l=new E.MeshBasicMaterial({opacity:1,color:16777215,depthTest:!1,transparent:!0,side:E.DoubleSide}),c=new E.Mesh(a,l);return c.name=`AxesDashedRing-${this.direction}-${r}`,c});this.add(...s)}}class s2 extends E.Mesh{constructor(e){var s;super();f(this,"direction");f(this,"baseAxes");f(this,"angleDirection");switch(e.direction){case"x":this.baseAxes=new E.Vector3(0,0,1);break;case"y":this.baseAxes=new E.Vector3(1,0,0);break;case"z":this.baseAxes=new E.Vector3(1,0,0);break}const n=.3+5e-4;this.geometry=new E.CircleGeometry(n,48,0,1e-4),this.material=new E.MeshBasicMaterial({opacity:.4,color:(s=e.color)!=null?s:16777215,depthTest:!1,transparent:!0,side:E.DoubleSide}),this.direction=e.direction,this.angleDirection=this.direction==="z"?1:-1}}function o2(){const i=Tn({width:"100%",height:"100%",left:"0",top:"0",position:"absolute",pointerEvents:"none"}),t=Tn({boxSizing:"border-box",width:"100%",height:"100%",left:"0",top:"0",position:"relative",display:"flex",alignItems:"center",justifyContent:"center"}),e=Tn({boxSizing:"border-box",width:"100%",height:"100%",left:"0",top:"0",position:"absolute",border:"1px solid rgba(255,255,255,0.4)"});i.appendChild(t),t.appendChild(e);const n="-4px",s={direction:"nesw",element:cn({cursor:"nesw-resize",left:n,bottom:n})},o={direction:"ns",element:cn({cursor:"ns-resize",bottom:n})},r={direction:"nwse",element:cn({cursor:"nwse-resize",right:n,bottom:n})},a={direction:"ew",element:cn({cursor:"ew-resize",right:n})},l={direction:"nesw",element:cn({cursor:"nesw-resize",right:n,top:n})},c={direction:"ns",element:cn({cursor:"ns-resize",top:n})},d={direction:"nwse",element:cn({cursor:"nwse-resize",left:n,top:n})},h={direction:"ew",element:cn({cursor:"ew-resize",left:n})};return new Array(o,a,c,h,s,r,l,d).forEach(m=>t.appendChild(m.element)),{container:i,squares:[s,o,r,a,l,c,d,h]}}function cn(i){const t=Tn(H({background:"#FFFFFF",width:"9px",height:"9px",position:"absolute",pointerEvents:"none"},i)),e=Tn({width:"15px",height:"15px",position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",pointerEvents:"none"}),n=Tn({width:"15px",height:"15px",cursor:i==null?void 0:i.cursor,pointerEvents:"auto",background:"transparent"});return n.draggable=!0,e.appendChild(n),t.appendChild(e),t}class r2 extends XP{constructor(e,n,s,o){super(e);f(this,"points",[]);f(this,"cornerPositions",[]);f(this,"css3DInstance");f(this,"plane");f(this,"css3DRenderer",new li);f(this,"camera");f(this,"scene");f(this,"container");f(this,"enabled",!1);this.camera=s,this.scene=o,this.container=n,this.initRectangleScaleHelper()}get helperObject(){var e;if(!((e=this.css3DInstance)!=null&&e.css3DObject))throw new Error("css3DInstance is not initialized");return this.css3DInstance.css3DObject}applyMatrix4(e){var n;super.applyMatrix4(e),this.helperObject.applyMatrix4(e),(n=this.plane)==null||n.applyMatrix4(e),this.cornerPositions.forEach(s=>s.applyMatrix4(e))}showDraggingHelper(){}applyHelperScaleMatrix4(e,n){var s;(s=this.plane)==null||s.scale.applyMatrix4(e),this.helperObject.applyScaleMatrix4(e)}updatePoints(){const e=this.calculatePointPosition(this.cornerPositions);this.points.forEach((n,s)=>{n.position.copy(e[s])})}applyHelperQuaternion(e,n){var o;const s=(o=this.css3DInstance)==null?void 0:o.css3DObject;if(s){const r=new E.Vector3().subVectors(s.position,n).applyQuaternion(e).add(n);s.position.copy(r),s.applyQuaternion(e)}if(this.plane){const r=new E.Vector3().subVectors(this.plane.position,n).applyQuaternion(e).add(n);this.plane.position.copy(r),this.plane.applyQuaternion(e)}this.cornerPositions.forEach(r=>{const a=new E.Vector3().subVectors(r,n).applyQuaternion(e).add(n);r.copy(a)})}enable(){var e;this.enabled||(this.enabled=!0,(e=this.css3DInstance)==null||e.enable(),this.plane&&this.scene.add(this.plane))}disable(){var e;this.enabled&&(this.enabled=!1,(e=this.css3DInstance)==null||e.disable(),this.plane&&this.scene.remove(this.plane))}show(){var e;(e=this.css3DInstance)==null||e.show(),this.plane&&(this.plane.visible=!0)}hide(){var e;(e=this.css3DInstance)==null||e.hide(),this.plane&&(this.plane.visible=!1)}dispose(){this.disable(),this.css3DRenderer.dispose()}initRectangleScaleHelper(){var a,l;const e=this.getCornerPositions();if(!e)return;this.cornerPositions=e;const n=this.css3DRenderer.create3DElement(this.camera,e,{ratio:.003});if(!n)return;this.css3DInstance=n,n.appendToElement(this.container);const s=n.css3DObject.container,{container:o,squares:r}=o2();this.points=r.map((c,d)=>({direction:c.direction,point:c.element,position:this.calculatePointPosition(e)[d]})),s.insertBefore(o,(a=s.children[0])!=null?a:null),this.helperObject.position.copy(this.originObject3D.position),(l=this.plane)==null||l.position.copy(this.originObject3D.position)}getCornerPositions(){const{originObject3D:e}=this;if(e.isCSS3DObjectPlus)return e.cornerPoints;console.error("当前物体暂时不支持 ScaleHelper")}calculatePointPosition(e){return[e[0].clone(),e[0].clone().add(e[1]).divideScalar(2),e[1].clone(),e[1].clone().add(e[2]).divideScalar(2),e[2].clone(),e[2].clone().add(e[3]).divideScalar(2),e[3].clone(),e[3].clone().add(e[0]).divideScalar(2)]}}function qu(i){const t=new E.Box3,e=new E.Vector3;if(i.traverse(n=>{var o;if(n.name==="shadow")return;const s=n.geometry;if(s!==void 0)if((o=s==null?void 0:s.attributes)!=null&&o.position){const r=s.attributes.position;for(let a=0,l=r.count;a<l;a++)e.fromBufferAttribute(r,a).applyMatrix4(n.matrix),t.expandByPoint(e)}else s.vertices.forEach(r=>{const a=r.clone().applyMatrix4(n.matrix);t.expandByPoint(a)})}),!t.isEmpty())return t}class a2 extends YP{constructor(e){super(e);f(this,"box");f(this,"outline");f(this,"originObject");f(this,"positionAttribute");this.originObject=e,this.positionAttribute=new E.BufferAttribute(new Float32Array(8*3),3),this.box=this.createBox(),this.outline=this.createOutline(),this.add(this.box,this.outline),this.update()}raycasterIntersectObject(e,n){return e.intersectObject(this,!1,n)}raycast(e,n){this.box.raycast(e,n)}update(){const e=qu(this.originObject);if(!e)return;const{min:n,max:s}=e;this.positionAttribute.setXYZ(0,s.x,s.y,s.z),this.positionAttribute.setXYZ(1,n.x,s.y,s.z),this.positionAttribute.setXYZ(2,n.x,n.y,s.z),this.positionAttribute.setXYZ(3,s.x,n.y,s.z),this.positionAttribute.setXYZ(4,s.x,s.y,n.z),this.positionAttribute.setXYZ(5,n.x,s.y,n.z),this.positionAttribute.setXYZ(6,n.x,n.y,n.z),this.positionAttribute.setXYZ(7,s.x,n.y,n.z),this.positionAttribute.needsUpdate=!0}createOutline(){const e=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),n=new E.BufferGeometry;n.setIndex(new E.BufferAttribute(e,1)),n.setAttribute("position",this.positionAttribute);const s=new E.LineBasicMaterial({color:64767,linewidth:1,opacity:1,depthTest:!1,transparent:!0,toneMapped:!1}),o=new E.LineSegments(n,s);return o.matrixAutoUpdate=!1,o}createBox(){const e=new Uint16Array([0,1,2,0,2,3,0,3,7,0,7,4,0,4,5,0,5,1,6,1,5,6,2,1,6,5,4,6,4,7,6,3,2,6,7,3]),n=new E.BufferGeometry;n.setIndex(new E.BufferAttribute(e,1)),n.setAttribute("position",this.positionAttribute);const s=new E.MeshBasicMaterial({color:64767,opacity:.1,depthTest:!1,transparent:!0});return new E.Mesh(n,s)}}class ls{constructor(t,e){f(this,"originObject3D");f(this,"hooks");f(this,"disposers",[]);f(this,"helperObject3D");f(this,"camera");f(this,"model");f(this,"scene");f(this,"container");f(this,"domEvents");f(this,"isDragging",!1);f(this,"enabled",!1);f(this,"name","BaseController");f(this,"boundingBox");f(this,"offset");f(this,"onRender");f(this,"onWantsTapGesture",t=>{if(this.getIntersectObject(t))return!1});var c,d;this.hooks=(c=t.sharedHooks)!=null?c:new pi,this.camera=t.camera,this.model=t.model,this.originObject3D=t.originObject3D,this.helperObject3D=t.helperObject3D,this.container=t.container,this.scene=t.scene,this.domEvents=new Se(t.camera,t.container),this.onRender=(d=t.onRender)!=null?d:()=>{},this.offset=e==null?void 0:e.offset,this.initialHelperPosition(),this.initialHelperQuaternion(),this.enable();const n=(...h)=>this.onSetOriginObjectScale(...h),s=(...h)=>this.onSetOriginObjectRotate(...h),o=(...h)=>this.onSetOriginObjectPosition(...h),r=(...h)=>this.onApplyOriginObjectScale(...h),a=(...h)=>this.onApplyOriginObjectRotate(...h),l=(...h)=>this.onApplyOriginObjectPosition(...h);this.hooks.on("setObjectScale",n),this.hooks.on("setObjectRotate",s),this.hooks.on("setObjectPosition",o),this.hooks.on("applyObjectPosition",l),this.hooks.on("applyObjectRotate",a),this.hooks.on("applyObjectScale",r),this.disposers.push(()=>{this.hooks.off("setObjectScale",n),this.hooks.off("setObjectRotate",s),this.hooks.off("setObjectPosition",o),this.hooks.off("applyObjectPosition",l),this.hooks.off("applyObjectRotate",a),this.hooks.off("applyObjectScale",r)})}initialHelperPosition(){this.helperObject3D.position.add(this.calculateOffset(this.offset)),this.helperObject3D.initialPosition()}initialHelperQuaternion(){this.helperObject3D.initQuaternion()}enable(){this.enabled||(this.enabled=!0,this.scene.add(this.helperObject3D),this.helperObject3D.enable(),this.render())}disable(){this.enabled&&(this.enabled=!1,this.helperObject3D.disable(),this.render())}show(){this.helperObject3D.show(),this.render()}hide(){this.helperObject3D.hide(),this.render()}dispose(){var t;(t=this.disposers)==null||t.forEach(e=>e==null?void 0:e()),this.helperObject3D.dispose(),this.render()}applyHelperMatrix4(t){this.helperObject3D.applyMatrix4(t)}applyHelperQuaternion(t,e){this.helperObject3D.applyHelperQuaternion(t,e)}applyHelperScaleMatrix4(t,e){this.helperObject3D.applyHelperScaleMatrix4(t,e)}onWantsGesture(t,e,n){if(this.isDragging)return!1}onIntersectionOnModelUpdate(t){}onApplyOriginObjectScale(t){this.applyHelperScaleMatrix4(t.matrix,t.origin)}onApplyOriginObjectRotate(t){this.applyHelperQuaternion(t.quaternion,t.origin)}onApplyOriginObjectPosition(t){this.applyHelperMatrix4(t.matrix)}onSetOriginObjectScale(t){this.helperObject3D.scale.copy(t),this.updateOffsetByScale(t)}onSetOriginObjectRotate(t,e){this.helperObject3D.setHelperQuaternion(t,e)}onSetOriginObjectPosition(t){this.helperObject3D.position.copy(t.clone().add(this.calculateOffset(this.offset)))}render(){this.onRender()}updateOffsetByScale(t){if(this.boundingBox&&this.offset){const e=this.originObject3D.position,n=new E.Vector3().subVectors(this.boundingBox.max,e).multiply(t).add(e),s=new E.Vector3().subVectors(this.boundingBox.min,e).multiply(t).add(e),o=this.calculateOffset(this.offset,{min:s,max:n});this.helperObject3D.position.copy(o),this.helperObject3D.initialPosition()}}hoverListener(t,e=16777215,n=1){const s=(Array.isArray(t)?t:[t]).filter(Ai),o=[];for(const r of s)if(r instanceof E.Mesh||r instanceof E.Group){const a=r instanceof E.Group?r.children.filter(u=>u instanceof E.Mesh):[r];a.forEach(u=>{u.__originalColor__=u.material.color.clone(),u.__originalOpacity__=u.material.opacity});const l=()=>{a.forEach(u=>{u.material.color.set(e),u.material.opacity=n}),this.render()},c=()=>{a.forEach(u=>{u.material.color.copy(u.__originalColor__),u.material.opacity=u.__originalOpacity__}),this.render()},d=()=>{this.isDragging||l()},h=()=>{this.isDragging||c()};for(const u of a)this.domEvents.addEventListener(u,"mouseover",d),this.domEvents.addEventListener(u,"mouseout",h),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",c),this.hooks.on("rotateEnd",c),o.push(()=>{this.domEvents.removeEventListener(u,"mouseover",d),this.domEvents.removeEventListener(u,"mouseout",h),this.hooks.off("moveStart",l),this.hooks.off("moveEnd",c),this.hooks.off("rotateEnd",c)})}return()=>o.forEach(r=>r==null?void 0:r())}getIntersectObject(t){const e=this.camera.position,n=this.helperObject3D;if(!n)return;const s=this.helperObject3D.raycasterIntersectObject(t)[0];if(!s)return;const o=s;if(o.object=n,this.model.intersectRaycaster){const r=this.model.intersectRaycaster(t)[0];if(r&&r.point.distanceTo(e)<o.point.distanceTo(e))return}return o.object}calculateOffset(t,e){const n=this.originObject3D,s=new E.Vector3(0,0,0);if(!t)return s;const o=()=>e||(this.boundingBox?this.boundingBox:(this.boundingBox=qu(n),this.boundingBox));if(typeof t.x=="number")s.setX(t.x);else if(typeof t.x=="object"){const r=o();s.setX((r.max.x-r.min.x)*t.x.percents)}if(typeof t.y=="number")s.setY(t.y);else if(typeof t.y=="object"){const r=o();s.setY((r.max.y-r.min.y)*t.y.percents)}if(typeof t.z=="number")s.setZ(t.z);else if(typeof t.z=="object"){const r=o();s.setZ((r.max.z-r.min.z)*t.z.percents)}return s}}class l2 extends ls{constructor(...e){super(...e);f(this,"name","MoveController");f(this,"startInfo");f(this,"_moveByMouseEnable",!1);f(this,"mouseInfo");f(this,"mousedownEventListenerDisposer");const n=this.helperObject3D;this.hoverListener([n.xArrow,n.yArrow,n.zArrow]);const s=this.dragStart.bind(this),o=this.dragging.bind(this),r=this.dragEnd.bind(this),a=this.show.bind(this),l=this.hide.bind(this);this.domEvents.addEventListener(this.helperObject3D,"mousedown",s),document.addEventListener("mousemove",o),document.addEventListener("mouseup",r),this.hooks.on("rotateStart",l),this.hooks.on("rotateEnd",a),this.hooks.on("moveByMouseEnable",l),this.hooks.on("moveByMouseDisable",a),this.disposers.push(()=>{this.domEvents.removeEventListener(this.helperObject3D,"mousedown",s),document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",r),this.hooks.off("rotateStart",l),this.hooks.off("rotateEnd",a),this.hooks.off("moveByMouseEnable",l),this.hooks.off("moveByMouseDisable",a)}),this.moveByMouseEnable&&this.moveByMouse()}get moveByMouseEnable(){return this._moveByMouseEnable}dispose(){var e;super.dispose(),(e=this.disposers)==null||e.forEach(n=>n==null?void 0:n())}moveByMouse(){this._moveByMouseEnable=!0;const e=this.handleMouseDown.bind(this),n=this.handleMouseUp.bind(this);this.hooks.emit("moveByMouseEnable"),setTimeout(()=>{this.container.addEventListener("mousedown",e),this.container.addEventListener("mouseup",n)}),this.mousedownEventListenerDisposer=()=>{this.container.removeEventListener("mousedown",e),this.container.removeEventListener("mouseup",n)}}disableMoveByMouse(){var e;this._moveByMouseEnable=!1,this.hooks.emit("moveByMouseDisable"),(e=this.mousedownEventListenerDisposer)==null||e.call(this)}onIntersectionOnModelUpdate(e){!this.moveByMouseEnable||this.hooks.emit("wantToMove",e.point)||(this.originObject3D.position.copy(e.point),this.hooks.emit("setObjectPosition",e.point),this.hooks.emit("move",e.point))}onApplyOriginObjectScale(e){}handleMouseDown(e){const{x:n,y:s}=e;this.mouseInfo={x:n,y:s,mouseDownTimestamp:Date.now()}}handleMouseUp(e){if(!this.mouseInfo)return;const{x:n,y:s}=e;this.mouseInfo.x===n&&this.mouseInfo.y===s&&Date.now()-this.mouseInfo.mouseDownTimestamp<500&&(this.disableMoveByMouse(),this.mouseInfo=void 0)}dragStart(e){if(this._moveByMouseEnable||this.isDragging)return;const n=e==null?void 0:e.intersect;if(!n)return this.dragEnd();const s=(n==null?void 0:n.object).direction;if(!s)return this.dragEnd();const o=new E.Vector3(1,0,0).applyQuaternion(this.helperObject3D.quaternion),r=new E.Vector3(0,1,0).applyQuaternion(this.helperObject3D.quaternion),a=new E.Vector3(0,0,1).applyQuaternion(this.helperObject3D.quaternion),l=(()=>{switch(s){case"x":return o;case"y":return r;case"z":return a}})(),c=(()=>{switch(s){case"x":case"y":return a;case"z":return o}})(),d=n.point.clone(),h=new E.Plane;h.setFromNormalAndCoplanarPoint(c,d),this.startInfo={startVectorProject:d.clone().projectOnVector(l),directionVector:l,plane:h},this.helperObject3D.showDraggingHelper([s]),this.hooks.emit("moveStart"),this.isDragging=!0}dragging(e){if(!this.isDragging||!this.startInfo)return;const n=Fa(this.camera,e,this.container);return n?(this.move(n),!1):this.dragEnd()}move(e){if(!this.startInfo)return this.dragEnd();const{plane:n,directionVector:s,startVectorProject:o}=this.startInfo,r=this.originObject3D,a=e.ray.intersectPlane(n,new E.Vector3);if(!a)return;const l=a.clone().projectOnVector(s),c=l.clone().sub(o),d=new E.Matrix4;d.setPosition(c);const h=r.position.clone().applyMatrix4(d);this.hooks.emit("wantToMove",h)||(r.applyMatrix4(d),o.copy(l),this.hooks.emit("applyObjectPosition",{matrix:d}),this.hooks.emit("move",h))}dragEnd(){this.isDragging&&(this.startInfo=void 0,this.isDragging=!1,this.helperObject3D.show(),this.hooks.emit("moveEnd"))}}class Fi{constructor(t,e,n,s,o,r){f(this,"helperController");f(this,"five");f(this,"onFiveWantsTapGesture",t=>{if(!this.helperController)return;const e=this.helperController.onWantsTapGesture(t);return this.five.needsRender=!0,e});f(this,"onFiveWantsGesture",(...t)=>{if(!this.helperController)return;const e=this.helperController.onWantsGesture(...t);return this.five.needsRender=!0,e});f(this,"onFiveIntersectionOnModelUpdate",(...t)=>{this.helperController&&this.helperController.onIntersectionOnModelUpdate(...t)});const{camera:a,model:l,scene:c}=t,d=t.getElement();if(this.five=t,!a||!l||!d||!c)return;const h=()=>{t.needsRender=!0};this.helperController=new e({camera:a,model:l,originObject3D:n,helperObject3D:s,container:d,scene:c,onRender:h,sharedHooks:r},o),t.on("wantsTapGesture",this.onFiveWantsTapGesture),t.on("wantsGesture",this.onFiveWantsGesture),t.on("intersectionOnModelUpdate",this.onFiveIntersectionOnModelUpdate)}dispose(){var t;this.five.off("wantsTapGesture",this.onFiveWantsTapGesture),this.five.off("wantsGesture",this.onFiveWantsGesture),this.five.off("intersectionOnModelUpdate",this.onFiveIntersectionOnModelUpdate),(t=this.helperController)==null||t.dispose()}}const c2="v1.0.1",d2="Object3DHelper",Ya=`${d2}@${c2}`,h2=()=>{console.error(`${Ya} is disposed`)},u2=()=>{console.warn(`${Ya} is disabled`)},f2=()=>{console.error(`${Ya} is disabled`)};class m2{constructor(t){f(this,"controllers",{});f(this,"state",{visible:!0,enabled:!0,disposed:!1});f(this,"hooks",new pi);f(this,"eventListener",{});t&&this.addControllers(t),this.setState(this.state)}show(t){return U(this,null,function*(){this.setState({visible:!0},t)})}hide(t){return U(this,null,function*(){this.setState({visible:!1},t)})}enable(t){this.setState({enabled:!0},t)}disable(t){this.setState({enabled:!1},t)}dispose(){this.setState({disposed:!0})}setState(t,e){if(this.state.disposed)return h2();if(!this.state.enabled&&t.enabled!==!0&&t.disposed!==!0)return f2();const n=H({},this.state);this.state=H(H({},this.state),t),t.disposed!==void 0&&t.disposed!==n.disposed&&t.disposed&&this.handleDispose(),t.visible!==void 0&&this.handleVisible(t.visible),t.enabled!==void 0&&this.handleEnable(t.enabled),this.hooks.emit("stateChange",{state:this.state,prevState:n})}addControllers(t){this.controllers=H(H({},this.controllers),t),this.setState(this.state)}getCurrentState(){return this.state}handleEnable(t,e=!0){t?(this.everyControllerDo(n=>{n.enable()}),this.hooks.emit("enable",{userAction:e})):(this.everyControllerDo(n=>{n.disable()}),this.hooks.emit("disable",{userAction:e})),this.state.enabled=t}handleVisible(t,e=!0){t?(this.everyControllerDo(n=>{n.show()}),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:e}))):(this.everyControllerDo(n=>{n.hide()}),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:e}))),this.state.visible=t}everyControllerDo(t){Object.values(this.controllers).forEach(e=>{e&&t(e)})}handleDispose(){var t,e;Object.values(this.controllers).forEach(n=>{n==null||n.dispose()});for(const n in this.controllers){if(!n)continue;const s=n;(e=(t=this.eventListener)[s])==null||e.call(t)}}actionIfStateIsEnabled(t,e){if(this.state.enabled)return t();e!=null&&e.warnLog&&u2()}}function Gr(i){return i*Math.PI/180}class g2 extends ls{constructor(...e){var c,d,h;super(...e);f(this,"name","RotateController");f(this,"startInfo");f(this,"removeListener");const n=this.helperObject3D;this.hoverListener([(c=n.xCircle)==null?void 0:c.circle,(d=n.yCircle)==null?void 0:d.circle,(h=n.zCircle)==null?void 0:h.circle].filter(Boolean));const s=this.dragStart.bind(this),o=this.dragging.bind(this),r=this.dragEnd.bind(this),a=this.show.bind(this),l=this.hide.bind(this);this.domEvents.addEventListener(this.helperObject3D,"mousedown",s),document.addEventListener("mousemove",o),document.addEventListener("mouseup",r),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",a),this.hooks.on("moveByMouseEnable",l),this.hooks.on("moveByMouseDisable",a),this.removeListener=()=>{this.domEvents.removeEventListener(this.helperObject3D,"mousedown",s),document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",r),this.hooks.off("moveStart",l),this.hooks.off("moveEnd",a),this.hooks.off("moveByMouseEnable",l),this.hooks.off("moveByMouseDisable",a)}}get rotateCenter(){return this.helperObject3D.position.clone()}initialHelperQuaternion(){this.helperObject3D.applyHelperQuaternion(this.originObject3D.quaternion)}setRotateAngle(e){const{x:n=0,y:s=0,z:o=0}=e,r=new E.Euler(Gr(n),Gr(s),Gr(o)),a=new E.Quaternion().setFromEuler(r);if(this.hooks.emit("wantToRotate",a))return;const{originObject3D:c,rotateCenter:d}=this;Zu(c,a,d),this.hooks.emit("setObjectRotate",a,d),this.hooks.emit("rotate",a),this.render()}dispose(){this.removeListener(),super.dispose()}onApplyOriginObjectRotate(e){this.isDragging||super.onApplyOriginObjectRotate(e)}onApplyOriginObjectScale(e){}dragStart(e){if(this.isDragging)return;const n=e==null?void 0:e.intersect;if(!n)return this.dragEnd();const s=(n==null?void 0:n.object).direction;if(!s)return this.dragEnd();const o=n.point,r=this.getAngleHelper(s);this.setTipsAngle(0);const a=o.clone();a.y+=.2,this.setTipsPosition(a);const l=(()=>{if(s==="x")return new E.Vector3(1,0,0).applyQuaternion(this.originObject3D.quaternion);if(s==="y")return new E.Vector3(0,1,0).applyQuaternion(this.originObject3D.quaternion);if(s==="z")return new E.Vector3(0,0,1).applyQuaternion(this.originObject3D.quaternion)})(),c=new E.Plane().setFromNormalAndCoplanarPoint(l,o),h=c.projectPoint(o.clone(),new E.Vector3).clone().sub(this.rotateCenter),u=h.angleTo(r.baseAxes.clone().applyQuaternion(this.originObject3D.quaternion));this.setAngleHelperStart(s,u),this.setAngleHelperLength(s,0),this.startInfo={direction:s,startVector:h,plane:c,angleHelper:r,angle:0,objectQuaternion:this.originObject3D.quaternion.clone()},this.helperObject3D.showDraggingHelper([s]),this.hooks.emit("rotateStart"),this.isDragging=!0}dragging(e){if(!this.isDragging)return;const n=Fa(this.camera,e,this.container);return n?(this.rotate(n),!1):this.dragEnd()}rotate(e){if(!this.startInfo)return this.dragEnd();const{startVector:n,plane:s,angleHelper:o,direction:r,objectQuaternion:a}=this.startInfo,{originObject3D:l}=this,c=e.ray.intersectPlane(s,new E.Vector3);if(!c)return;const d=this.rotateCenter.clone(),u=s.projectPoint(c.clone(),new E.Vector3).clone().sub(d);if(n.angleTo(u)===0)return;const m=new E.Quaternion().setFromUnitVectors(n.clone().normalize(),u.clone().normalize()),A=l.quaternion.clone().premultiply(m);if(this.hooks.emit("wantToRotate",A))return;const b=new E.Euler().setFromQuaternion(new E.Quaternion().setFromUnitVectors(n.clone().normalize().applyQuaternion(a.clone().inverse()),u.clone().normalize().applyQuaternion(a.clone().inverse())),`${r.toUpperCase()}${"XZY".replace(r.toUpperCase(),"")}`)[r]*o.angleDirection;if(this.startInfo.angle+=b,this.setAngleHelperLength(r,this.startInfo.angle),this.setTipsAngle(Nh(this.startInfo.angle)),d){const y=new E.Vector3().subVectors(l.position,d).applyQuaternion(m).add(d);l.position.copy(y)}l.applyQuaternion(m),this.hooks.emit("applyObjectRotate",{quaternion:m,origin:d}),this.hooks.emit("rotate",l.quaternion),this.startInfo.startVector=u}dragEnd(){this.isDragging&&(this.hooks.emit("setObjectRotate",this.originObject3D.quaternion,this.rotateCenter),this.startInfo=void 0,this.isDragging=!1,this.helperObject3D.show(),this.hooks.emit("rotateEnd"))}getAngleHelper(e){var n,s,o;switch(e){case"x":return(n=this.helperObject3D.xCircle)==null?void 0:n.angleSector;case"y":return(s=this.helperObject3D.yCircle)==null?void 0:s.angleSector;case"z":return(o=this.helperObject3D.zCircle)==null?void 0:o.angleSector}}setAngleHelperStart(e,n){const s=this.getAngleHelper(e);if(!s){console.warn("angleHelper is undefined");return}if(s instanceof E.Mesh&&s.geometry instanceof E.CircleGeometry){const{radius:o,segments:r,thetaLength:a}=s.geometry.parameters;s.geometry=new E.CircleGeometry(o,r,n,a)}else console.warn("only support THREE.CircleGeometry")}setAngleHelperLength(e,n){const o=n>=0?Math.max(n,.001):Math.min(n,-.001),r=this.getAngleHelper(e);if(r instanceof E.Mesh&&r.geometry instanceof E.CircleGeometry){const{radius:a,thetaStart:l}=r.geometry.parameters,c=Math.ceil(Math.abs(o)*(40/(2*Math.PI)));r.geometry=new E.CircleGeometry(a,c,l,o)}else console.warn("only support THREE.CircleGeometry")}setTipsAngle(e){var s;const n=(s=this.helperObject3D.angleTips)==null?void 0:s.element;n&&(n.innerText=`${e.toFixed(0)}°`)}setTipsPosition(e){const n=this.helperObject3D.angleTips;if(!n)return;const s=e.project(this.camera),{x:o,y:r,z:a}=s;if(a>1)return;const l=(o+1)/2*100+"%",c=(-r+1)/2*100+"%";n.setLeftTop(l,c)}}class p2 extends ls{constructor(...e){super(...e);f(this,"startInfo");f(this,"name","RectangleScaleController")}enable(){this.helperObject3D.enable(),super.enable()}disable(){this.helperObject3D.disable(),super.disable()}show(){this.helperObject3D.show(),super.show()}hide(){this.helperObject3D.hide(),super.hide()}onApplyOriginObjectPosition(e){this.isDragging||super.onApplyOriginObjectPosition(e)}onApplyOriginObjectScale(e){this.helperObject3D.applyHelperScaleMatrix4(e.matrix,e.origin)}getDragPlane(){const e=new E.Plane,n=this.helperObject3D.cornerPositions;if(n.length!==0)return n.length<3?e.setFromNormalAndCoplanarPoint(this.originObject3D.getWorldDirection(new R.Vector3),n[0]):e.setFromCoplanarPoints(n[0],n[1],n[2]),e}dragStart(e,n){var o,r;(r=(o=this.helperObject3D).updatePoints)==null||r.call(o);const s=this.getDragPlane();if(!s)return this.dragEnd();this.startInfo={startPoint:{position:n.position.clone(),direction:n.direction},plane:s},this.hooks.emit("scaleStart"),this.render(),this.isDragging=!0}dragging(e){if(!this.isDragging)return;const n=Fa(this.camera,e,this.container);if(!n)return this.dragEnd();this.scale(n)}scale(e){var W,q;if(!this.startInfo)return;const n=this.originObject3D,{startPoint:s,plane:o}=this.startInfo,r=this.helperObject3D.cornerPositions;if(r.length<4)return this.dragEnd();const a=e.ray.intersectPlane(o,new R.Vector3);if(!a||qP(a,this.camera.position))return;const l=new R.Vector3().addVectors(r[0],r[2]).divideScalar(2),{position:c,direction:d}=s,h=new R.Vector3().subVectors(r[1],r[0]),u=new R.Vector3().subVectors(r[3],r[0]),m=N=>{const G=new R.Vector3(0,0,0);if(!this.startInfo)return G;const _=(N==="ew"?h:u).clone(),Q=c.clone().projectOnVector(_),F=a.clone().projectOnVector(_),Z=l.clone().projectOnVector(_);if(F.equals(Q))return G;if(N==="ns"&&typeof this.startInfo.dragPointInCenterBottom!="boolean"){const ce=new R.Vector3().subVectors(F,Z),se=ce.x<0&&_.x>=0,we=ce.y<0&&_.y>=0,Ce=ce.z<0&&_.z>=0;this.startInfo.dragPointInCenterBottom=se||we||Ce}if(N==="ew"&&typeof this.startInfo.dragPointInCenterLeft!="boolean"){const ce=new R.Vector3().subVectors(F,Z),se=ce.x<0&&_.x>=0,we=ce.y<0&&_.y>=0,Ce=ce.z<0&&_.z>=0;this.startInfo.dragPointInCenterLeft=se||we||Ce}const X=new R.Vector3().subVectors(F,Q),$=X.length();return $>.3?(console.warn("offset.length() > 0.3, skipped",$),G):X},A=m("ew"),p=m("ns"),g=()=>{const N=A;this.helperObject3D.cornerPositions.forEach((G,_)=>{var Q;(Q=this.startInfo)!=null&&Q.dragPointInCenterLeft?(_===0||_===3)&&G.add(N):(_===1||_===2)&&G.add(N)})},b=()=>{const N=p;this.helperObject3D.cornerPositions.forEach((G,_)=>{var Q;(Q=this.startInfo)!=null&&Q.dragPointInCenterBottom?(_===0||_===1)&&G.add(N):(_===2||_===3)&&G.add(N)})};switch(d){case"ew":g();break;case"ns":b();break;case"nesw":case"nwse":g(),b()}const y=new R.Vector3().subVectors(r[1],r[0]).length()/h.length(),I=new R.Vector3().subVectors(r[3],r[0]).length()/u.length(),k=new R.Vector3(y,I,1),T=new E.Matrix4().scale(k);n.isCSS3DObjectPlus?n.applyScaleMatrix4(T):n.scale.applyMatrix4(T),s.position.copy(a);const P=new R.Vector3().addVectors(r[0],r[2]).divideScalar(2),V=new R.Vector3().subVectors(P,l),L=new E.Matrix4().setPosition(V);n.applyMatrix4(L),(W=this.helperObject3D.css3DInstance)==null||W.css3DObject.applyMatrix4(L),(q=this.helperObject3D.plane)==null||q.applyMatrix4(L),this.hooks.emit("applyObjectScale",{matrix:T}),this.hooks.emit("applyObjectPosition",{matrix:L}),this.render()}dragEnd(){this.isDragging&&(this.startInfo=void 0,this.isDragging=!1,this.hooks.emit("scaleEnd"),this.render())}}class A2 extends p2{constructor(...e){super(...e);f(this,"name","CSS3DScaleController");this.addHTMLEventListener()}addHTMLEventListener(){this.helperObject3D.points.forEach(e=>{if(!e)return;const n=e.point,s=a=>this.dragStart(a,e),o=this.dragging.bind(this),r=this.dragEnd.bind(this);n.addEventListener("dragstart",s),n.addEventListener("drag",o),n.addEventListener("dragend",r)})}}class v2 extends ls{constructor(...e){super(...e);f(this,"name","BoundingBoxController")}}class b2 extends Ju{constructor(t){super(t)}}class y2 extends ls{constructor(...e){super(...e);f(this,"name","ScaleController")}setScale(e){var l,c,d;let n=1,s=1,o=1;typeof e=="number"?(n=e,s=e,o=e):typeof e=="object"&&(n=(l=e.x)!=null?l:1,s=(c=e.y)!=null?c:1,o=(d=e.z)!=null?d:1);const r=new E.Vector3(n,s,o);this.hooks.emit("wantToScale",r)||(this.originObject3D.scale.copy(r),this.hooks.emit("setObjectScale",r),this.hooks.emit("scale",r),this.render())}}const aa="Object3DHelperPlugin",Lo=aa,w2=()=>{console.error(`${Lo} is disposed`)},C2=()=>{console.warn(`${Lo} is disabled`)},I2=()=>{console.error(`${Lo} is disabled`)};class Ku extends rs{constructor(e){super(e);f(this,"name",aa);f(this,"state",{visible:!0,enabled:!0,disposed:!1});f(this,"objectHelperMap",new Map);f(this,"css3DObjectParentMap",new Map);f(this,"css3DRender");this.five=e,this.css3DRender=new li(this.five.scene),console.warn("Object3DHelper: 使用此插件,需要在初始化five时,设置five参数: { backgroundAlpha: 0, backgroundColor: 0x000000 }"),Object.assign(window,{[`__${aa.toUpperCase()}_DEBUG__`]:this})}show(e){return U(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return U(this,null,function*(){this.setState({visible:!1},e)})}enable(e){this.setState({enabled:!0},e)}disable(e){this.setState({enabled:!1},e)}dispose(){this.setState({disposed:!0})}setState(e,n){if(this.state.disposed)return w2();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return I2();const s=H({},this.state);this.state=H(H({},this.state),e),e.disposed!==void 0&&e.disposed!==s.disposed&&e.disposed&&this.handleDispose(),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled),this.hooks.emit("stateChange",{state:this.state,prevState:s})}getObject3DHelper(e){return this.objectHelperMap.get(e)}addObject3DHelper(e,n={}){var m;if(!e)return console.error("Object3D is undefined");if(this.objectHelperMap.has(e)){console.warn(`Object3DHelperPlugin: object3D ${e.name} is already has helper`);return}const s=new m2,o=[],r=(m=this.five.getElement())==null?void 0:m.parentElement,a=this.five.camera,{moveHelper:l=!0,rotateHelper:c=!0,scaleHelper:d=!0,boundingBoxHelper:h=!1}=n,u=new Te.Subscribe;if(l){const A=new KP(e),p=this.getConfig(n.moveHelper),g=new Fi(this.five,l2,e,A,p,u);s.addControllers({moveController:g.helperController}),o.push(()=>g.dispose())}if(c){const A=this.getConfig(n.rotateHelper),p=new t2(e,H({container:r},A)),g=new Fi(this.five,g2,e,p,A,u);s.addControllers({rotateController:g.helperController}),o.push(()=>g.dispose())}if(h){const A=new a2(e),p=new Fi(this.five,v2,e,A,void 0,u);s.addControllers({boundingBoxController:p.helperController})}if(d)if(e.isCSS3DObjectPlus&&r){const A=new r2(e,r,a,this.five.scene),p=new Fi(this.five,A2,e,A,void 0,u);s.addControllers({scaleController:p.helperController}),o.push(()=>p.dispose()),hh(this.five).then(()=>{var g,b;if(e.isCSS3DObjectPlus){const y=e;if(!y||y.mode!=="front")return;const I=(g=this.css3DRender.behindModeCSS3DRenderer.wrapper)!=null?g:uh(this.five);I&&(this.css3DObjectParentMap.set(y,y.parent),y.removeFromParent(),this.css3DRender.behindModeCSS3DRenderer.setWrapper(I),(b=this.css3DRender.getBehindCSS3DObjectGroup())==null||b.add(y),this.css3DRender.render(this.five.camera))}})}else{const A=new b2(e),p=new Fi(this.five,y2,e,A,void 0,u);s.addControllers({scaleController:p.helperController}),o.push(()=>p.dispose())}return this.objectHelperMap.set(e,{helper:s,disposers:o}),s.controllers}removeObject3DHelper(e){if(!this.objectHelperMap.has(e))return;const{helper:n,disposers:s}=this.objectHelperMap.get(e);if(n){if(e.isCSS3DObjectPlus){const o=e,r=this.css3DObjectParentMap.get(o);r&&r.add(o),this.css3DRender.render(this.five.camera)}this.objectHelperMap.delete(e),n.dispose(),s==null||s.forEach(o=>o==null?void 0:o())}}handleEnable(e,n=!0){e?(this.everyHelperDo(s=>s.enable()),this.hooks.emit("enable",{userAction:n})):(this.everyHelperDo(s=>s.disable()),this.hooks.emit("disable",{userAction:n})),this.state.enabled=e}handleVisible(e,n=!0){e?(this.everyHelperDo(s=>s.show()),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:n}))):(this.everyHelperDo(s=>s.hide()),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:n}))),this.state.visible=e}handleDispose(){this.objectHelperMap.forEach(({helper:e,disposers:n})=>{e.dispose(),n==null||n.forEach(s=>s==null?void 0:s())})}everyHelperDo(e){this.objectHelperMap.forEach(({helper:n,disposers:s})=>{n&&e(n)})}actionIfStateIsEnabled(e,n){if(this.state.enabled)return e();n!=null&&n.warnLog&&C2()}getConfig(e){if(e&&typeof e!="boolean"&&e.enable)return e}}const P2=i=>new Ku(i),E2=`
|
|
672
|
+
`;class oa{constructor(t,e){f(this,"name","");f(this,"startTagContainer");f(this,"endTagContainer");f(this,"mesh");f(this,"five");f(this,"mode");f(this,"path",[]);f(this,"_curvePath",null);f(this,"_curvePoints",null);f(this,"_panoGroup",[]);f(this,"skippedPositions",null);f(this,"textureUrl","");f(this,"scale",1);f(this,"width",.5);f(this,"unitLength",.5);f(this,"_visibleFloorIndexes",null);f(this,"visible",null);f(this,"modeVisible",!1);f(this,"floorVisible",!0);f(this,"defaultVisible",!1);f(this,"inWalkAnimation",!1);f(this,"customVisible",null);f(this,"parent");f(this,"plugin");f(this,"textureHasLoaded",!1);f(this,"disposed",!1);f(this,"flowAnime",new go({progress:0}).to({progress:1}).duration(1500).repeat(1/0));f(this,"flickerAnime",po(300).yoyo(!0).repeat(5));f(this,"cacheLengths",[]);f(this,"dispose",()=>{var t,e;this.disposed||(this.disposed=!0,this.parent.hooks.off("show",this.updateVisible),this.parent.hooks.off("hide",this.updateVisible),this.plugin.hooks.off("show",this.updateVisible),this.plugin.hooks.off("hide",this.updateVisible),this.plugin.hooks.off("enable",this.updateVisible),this.plugin.hooks.off("disable",this.updateVisible),this.five.off("modeChange",this.onFiveModeChange),this.five.off("modelShownFloorChange",this.onFiveModelShownFloorChange),this.doHide(),(t=this.startTagContainer)==null||t.plugin.dispose(),(e=this.endTagContainer)==null||e.plugin.dispose())});f(this,"onWalkAnimationStart",()=>{this.inWalkAnimation=!0,this.updateVisible()});f(this,"onWalkAnimationEnd",()=>{this.inWalkAnimation=!1,this.updateVisible()});f(this,"onFiveModeChange",t=>{this.modeVisible=this.mode==="panorama"?ca(t):fh(t),this.updateVisible()});f(this,"onFiveModelShownFloorChange",t=>{this.floorVisible=t===null||this.visibleFloorIndexes===null||this.visibleFloorIndexes.includes(t),this.updateVisible()});f(this,"updateVisible",()=>{const t=(()=>!this.parent.visible||!this.plugin.state.enabled||!this.plugin.state.visible?!1:this.customVisible!==null?this.customVisible:this.inWalkAnimation?!0:this.modeVisible&&this.textureHasLoaded&&this.defaultVisible&&this.floorVisible)();this.visible!==t&&(this.visible=t,t?this.doShow():this.doHide())});f(this,"onFlowAnimeUpdate",t=>{const{progress:e}=t;this.mesh.material.uniforms.vOffset.value=e,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0});f(this,"onFlickerAnimeUpdate",t=>{var s,o;const{progress:e}=t,n=1-e;this.mesh.material.uniforms.flicker.value=n,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0,this.startTagContainer.tag&&Or(this.startTagContainer.tag)&&((s=this.startTagContainer.app)==null||s.$set(Ae(H({},this.startTagContainer.tag.data),{opacity:n,name:this.name,distance:Math.round(this.curvePath.getLength())}))),this.endTagContainer.tag&&Or(this.endTagContainer.tag)&&((o=this.endTagContainer.app)==null||o.$set(Ae(H({},this.endTagContainer.tag.data),{opacity:n})))});f(this,"logWarning",t=>Tb("GuideLineModeItem: ",t));f(this,"logError",t=>fu("GuideLineModeItem: ",t));var o,r;this.five=t,this.mode=e.mode,this.plugin=e.plugin,this.parent=e.parent,this.startTagContainer={tag:null,plugin:new fo(this.five)},this.endTagContainer={tag:null,plugin:new fo(this.five)};const n=new E.BufferGeometry,s=new E.ShaderMaterial({vertexShader:DP,fragmentShader:SP,transparent:!0,uniforms:{map:{value:null},useMapColor:{value:0},mapColor:{value:new E.Color},mapOpacity:{value:1},backgroundColor:{value:new E.Color},backgroundOpacity:{value:0},borderColor:{value:new E.Color},borderOpacity:{value:0},opacity:{value:1},flicker:{value:1},maxU:{value:0},vOffset:{value:0}}});this.mesh=new E.Mesh(n,s),this.mesh.name="GuideLineModeItem",this.mode==="panorama"&&(this.parent.hooks.on("walkStart",this.onWalkAnimationStart),this.parent.hooks.on("walkEnded",this.onWalkAnimationEnd)),this.updateVisible(),this.onFiveModeChange(this.five.getCurrentState().mode),this.onFiveModelShownFloorChange((r=(o=this.five.model)==null?void 0:o.shownFloor)!=null?r:null),this.flowAnime.onUpdate(this.onFlowAnimeUpdate),this.flickerAnime.onUpdate(this.onFlickerAnimeUpdate),this.parent.hooks.on("show",this.updateVisible),this.parent.hooks.on("hide",this.updateVisible),this.plugin.hooks.on("show",this.updateVisible),this.plugin.hooks.on("hide",this.updateVisible),this.plugin.hooks.on("enable",this.updateVisible),this.plugin.hooks.on("disable",this.updateVisible),this.plugin.hooks.on("dispose",this.dispose),this.five.on("modeChange",this.onFiveModeChange),this.five.on("modelShownFloorChange",this.onFiveModelShownFloorChange)}get panoGroup(){return this._panoGroup}get visibleFloorIndexes(){return this._visibleFloorIndexes}get curvePath(){return this._curvePath}get curvePoints(){return this._curvePoints}setCustomVisible(t){if(this.disposed)return this.logError("disposed");this.customVisible!==t&&(this.customVisible=t,this.updateVisible())}setDefaultVisible(t){if(this.disposed)return this.logError("disposed");this.defaultVisible!==t&&(this.defaultVisible=t,this.updateVisible())}setUnitSize(t,e){if(this.disposed)return this.logError("disposed");this.width=t,this.unitLength=e,this.setGeometryByPath(this.path,{width:t,unit_length:e})}setScale(t){if(this.disposed)return this.logError("disposed");this.scale=t,this.setGeometryByPath(this.path,{scale:t})}setGeometryByPanoGroup(t,e){if(this.disposed)return this.logError("disposed");if(!this.five.work)return this.logError("setPathByPanoGroup: work is not ready");const n=xP(t);if(this._panoGroup=n,(e==null?void 0:e.skipPanoGroup)!==void 0){const o=e.skipPanoGroup?n.map(r=>this.five.work.observers[r]).map(r=>r.standingPosition.clone()):null;this.skippedPositions=o}const s=this.getPathFromPanoGroup(n,this.five.work,e);this.path=s,this.setGeometryByPath(s,e)}setGeometryByPath(t,e){var d,h,u;if(this.disposed)return this.logError("disposed");const n=(d=e==null?void 0:e.scale)!=null?d:this.scale,s=(h=e==null?void 0:e.width)!=null?h:this.width,o=(u=e==null?void 0:e.unit_length)!=null?u:this.unitLength;this.path=t,this.scale=n,this.width=s,this.unitLength=o;const{geometry:r,maxU:a,curvePath:l,curvePoints:c}=Jb({path:t,width:s*n,unitLength:o*n,skipPositions:this.skippedPositions});this._curvePath=l,this._curvePoints=c,this.mesh.geometry=r,this.mesh.material.needsUpdate=!0,this.mesh.material.uniforms.maxU.value=a,this.five.needsRender=!0}setMartial(t){var e;if(this.disposed)return this.logError("disposed");(t==null?void 0:t.visible)!==void 0&&this.setDefaultVisible(t.visible),(t==null?void 0:t.color)!==void 0&&this.setColor(t.color),(t==null?void 0:t.opacity)!==void 0&&this.setOpacity(t.opacity),((e=t==null?void 0:t.texture)==null?void 0:e.url)!==void 0&&this.setTextureUrl(t.texture.url),(t==null?void 0:t.background_color)!==void 0&&this.setBackgroundColor(t.background_color),(t==null?void 0:t.background_opacity)!==void 0&&this.setBackgroundOpacity(t.background_opacity),(t==null?void 0:t.border_color)!==void 0&&this.setBorderColor(t.border_color),(t==null?void 0:t.border_opacity)!==void 0&&this.setBorderOpacity(t.border_opacity)}setColor(t){if(this.disposed)return this.logError("disposed");t&&(this.mesh.material.uniforms.mapColor.value=new E.Color().set(t)),this.mesh.material.uniforms.useMapColor.value=t?1:0,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBorderColor(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.borderColor.value=new E.Color().set(t),this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBorderOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.borderOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBackgroundColor(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.backgroundColor.value=new E.Color().set(t),this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBackgroundOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.backgroundOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.opacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setMapOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.mapOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setTextureUrl(t){if(this.disposed)return this.logError("disposed");this.textureUrl=t,ns(t).then(e=>{this.disposed||this.textureUrl===t&&(e.wrapT=E.RepeatWrapping,this.textureHasLoaded=!0,this.mesh.material.uniforms.map.value=e,this.mesh.material.uniformsNeedUpdate=!0,this.mesh.material.needsUpdate=!0,this.five.needsRender=!0,this.updateVisible())})}setVisibleFloorIndexes(t){var e,n;if(this.disposed)return this.logError("disposed");this._visibleFloorIndexes=t,this.onFiveModelShownFloorChange((n=(e=this.five.model)==null?void 0:e.shownFloor)!=null?n:null)}setStartTag(t){this.setTag("start",t)}setEndTag(t){this.setTag("end",t)}flicker(){if(this.disposed)return this.logError("disposed");this.flickerAnime.play()}getLengthByPanoGroupIndex(t){return this.disposed?this.logError("disposed"):this.cacheLengths.length!==0?this.cacheLengths[t]:(this.cacheLengths=this.getPanoGroupLengths(),this.cacheLengths[t])}getPanoGroupLengths(){const t=this.panoGroup.map(c=>this.five.work.observers[c]),e=this.curvePoints.length,n=this.curvePath.getLength(),s=e-1,o=n/s,r=this.curvePath.getLengths(s),a=[];let l=0;for(let c=0;c<e;c++){const d=this.curvePoints[c],h=t[l];if(!h)break;h.standingPosition.clone().setY(0).distanceTo(d.clone().setY(0))<o&&(a.push(r[c]),l+=1)}return a}setTag(t,e){const n=t==="start"?this.startTagContainer:this.endTagContainer;e||n.plugin.clearTags();const o=Xe({},{contentType:"Custom",stickType:"2DPoint",config:{visibleConfig:{visibleFiveMode:["Floorplan","Mapview"],followModelVisibility:!1}},style:{point:{enabled:!1}},data:{}},e);n.tag=o,Or(o)&&(n.tag.element=r=>{var c;(c=n.app)==null||c.$destroy();const a=t==="start"?Ae(H({},o.data),{name:this.name,distance:Math.round(this.curvePath.getLength()),i18n:this.plugin.config.i18n}):o.data,l=new MP({target:r,intro:!0,props:a});return n.app=l,()=>l.$destroy()}),n.plugin.load({tagList:[n.tag]})}doShow(){this.mode==="model"&&this.flowAnime.play(),this.five.scene.add(this.mesh),this.startTagContainer.plugin.show(),this.endTagContainer.plugin.show(),this.five.needsRender=!0}doHide(){this.mode==="model"&&this.flowAnime.stop(),this.five.scene.remove(this.mesh),this.startTagContainer.plugin.hide(),this.endTagContainer.plugin.hide(),this.five.needsRender=!0}getPathFromPanoGroup(t,e,n){if(t.length<2)return[];const o=t.map(r=>e.observers[r]).map(r=>r.standingPosition.toArray());return[H({type:"CatmullRomCurve3",points:o},n)]}}function Or(i){return i.contentType==="Custom"}const TP=Object.freeze(Object.defineProperty({__proto__:null,GuideLineModeItem:oa},Symbol.toStringTag,{value:"Module"}));function $d(i){const t=Math.abs(Math.cos(i.latitude));return new E.Vector3(-Math.sin(i.longitude)*t,-Math.sin(i.latitude),-Math.cos(i.longitude)*t)}function LP(i,t){const e=$d(i),n=$d(t);return e.angleTo(n)}const jP=i=>U(exports,null,function*(){try{i().then(()=>{},()=>{}).catch(()=>{})}catch(t){}}),Ns=Math.PI*2;function zP(i){return i>=0&&i<Ns?i:(i%Ns+Ns)%Ns}function OP(i){return{longitude:zP(-Math.atan2(i.x,-i.z)),latitude:-Math.asin(i.y/1)}}function BP(i,t,e,n){const s=-i/e,o=i;return s*n+o}function VP(i){return new Promise(t=>{setTimeout(()=>{t()},i)})}const Wu="v1.0.6",Fu="CruisePlugin",So=`${Fu}@${Wu}`,eh=()=>{console.error(`${So} is disposed`)},RP=()=>{console.warn(`${So} is disabled`)},QP=()=>{console.error(`${So} is disabled`)},Br=new Map;class as extends Bn{constructor(e,n){super(e,n);f(this,"state",{visible:!0,enabled:!0,disposed:!1,playing:!1,speed:1,config:{speedConfig:{rotateSpeed:.001,rotateSpeedUnit:"rad/ms",moveSpeed:.002,moveSpeedUnit:"m/ms"}}});f(this,"data");f(this,"config");f(this,"privateState",{playing:!1,currentPlayQueue:[],currentPlayKeyframe:null,broke:!1,disposers:[],modeChanging:!1});f(this,"GuideLine");this.config=n,Object.assign(window,{[`__${Fu}_DEBUG__`]:this});const s=this.setFiveLinearUpdateCamera.bind(this),o=this.setFiveOriginUpdateCamera.bind(this);this.hooks.on("play",s),this.hooks.on("broke",o),this.hooks.on("end",o),this.hooks.on("pause",o),this.privateState.disposers.push(()=>{this.hooks.off("play",s),this.hooks.off("broke",o),this.hooks.off("end",o),this.hooks.off("pause",o)})}load(e,n,s){return U(this,null,function*(){var d,h,u,m,A,p;if(this.state.disposed)return eh();this.privateState.fiveOriginGetProgress||(h=(d=this.five.controller)==null?void 0:d.cameraMotion)!=null&&h.getProgress||(yield this.waitFiveLoaded(),this.privateState.fiveOriginGetProgress=(m=(u=this.five.controller)==null?void 0:u.cameraMotion)==null?void 0:m.getProgress),this.clear();const o=this.data?JSON.parse(JSON.stringify(this.data)):void 0,r=yield this.formatData(e);this.data=r,this.hooks.emit("dataChange",r,o);let a=[],l;const c=this.data.keyframes.filter(g=>g.data.panoIndex!==void 0);c.filter((g,v)=>{var y;return g.data.panoIndex!==((y=c[v-1])==null?void 0:y.data.panoIndex)}).map(g=>g.data.panoIndex).forEach(g=>{var y,I;const v=(y=this.five.work.observers[g])==null?void 0:y.floorIndex;if(v!==void 0)if(l===v){const k=a.length-1;a[k]=[...(I=a[k])!=null?I:[],g]}else{l=v;const k=a.length;a[k]=[g]}}),!this.GuideLine&&((A=this.config)==null?void 0:A.useGuideLine)!==!1&&r.useGuildLine!==!1&&(this.GuideLine=Xu(this.five,this.config)),(p=this.GuideLine)==null||p.load({routes:a.map(g=>({panoIndexList:g})),config:r.guildPluginOptions}),this.setState({playing:!1}),this.handleVisible(this.state.visible),this.handleEnable(this.state.enabled),this.changePlayState(this.state.playing),this.changeSpeed(this.state.speed),n&&this.setState(n,{userAction:s}),console.debug(`${So} loaded`,r),this.hooks.emit("dataLoaded",r)})}play(e){this.setState({playing:!0},e)}playFrom(e){const{index:n,id:s,userAction:o}=e;this.state.playing&&this.setState({playing:!1},{userAction:o}),this.setState({playing:!0},{userAction:o,playFromIndex:n,playFromId:s})}playFromStart(e){return this.playFrom(Ae(H({},e),{index:0}))}pause(e){this.setState({playing:!1},e)}show(e){return U(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return U(this,null,function*(){this.setState({visible:!1},e)})}enable(e){this.setState({enabled:!0},e)}disable(e){this.setState({enabled:!1},e)}dispose(){this.setState({disposed:!0})}setState(e,n){var o;if(this.state.disposed)return eh();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return QP();const s=H({},this.state);this.state=H(H({},this.state),e),e.disposed!==void 0&&e.disposed!==s.disposed&&e.disposed&&this.handleDispose(),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible,n==null?void 0:n.userAction),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled,n==null?void 0:n.userAction),e.playing!==void 0&&e.playing!==s.playing&&this.changePlayState(e.playing,n),e.speed!==void 0&&e.speed!==s.speed&&this.changeSpeed(e.speed,n==null?void 0:n.userAction),Gt(s,this.state,{deep:!0})||this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:(o=n==null?void 0:n.userAction)!=null?o:!0})}formatData(e){return U(this,null,function*(){this.five.work||(yield this.waitFiveLoaded());const n=this.five.work.observers,s=(()=>{const o=e;return typeof o=="object"&&o!==null&&o.version&&o.data?o.data:o})();if(s.keyframes)return{keyframesId:at(),keyframes:s.keyframes.map((o,r)=>{var c;const a=s.keyframes[r+1],l=(()=>!a||a.start===void 0||o.end===void 0?0:a.start-o.end)();return Ae(H({id:(c=o.uuid)!=null?c:at(),moveIndex:r,stay:l,index:r},o),{guildPluginOptions:s.guildPluginOptions})})};if(s.panoIndexList){let o=[];const{moveEffect:r,moveToFirstPanoEffect:a,moveToFirstPanoDuration:l}=s;return this.privateState.moveToFirstPanoEffect=a,this.privateState.moveToFirstPanoDuration=l,s.panoIndexList.forEach((c,d)=>{const h=(()=>{var g,v,y,I;const u=s.panoIndexList.slice(d).find(k=>k!==c);if(u===void 0)return;const m=(g=n[c])==null?void 0:g.position,A=(v=n[u])==null?void 0:v.position;if(!A||!m||((y=n[c])==null?void 0:y.floorIndex)!==((I=n[u])==null?void 0:I.floorIndex))return;const p=new E.Vector3().subVectors(A,m);return OP(p.normalize())})();s.moveType===void 0||s.moveType==="justMove"?o.push({moveIndex:d,stay:s.stay,data:H({effect:"Move",panoIndex:c,moveEffect:r},h!=null?h:{})}):s.moveType==="moveAndRotate"&&(o.push({moveIndex:d,stay:s.stay,data:{effect:"Move",panoIndex:c,moveEffect:r}}),h&&o.push({moveIndex:d,stay:s.stay,data:H({effect:"Rotate",panoIndex:c},h)}))}),{keyframesId:at(),keyframes:o.map((c,d)=>H({id:at(),index:d},c)),guildPluginOptions:s.guildPluginOptions,useGuildLine:s.useGuildLine}}else throw new Error("format error: data no keyframes or no panoIndexList")})}handleEnable(e,n=!0){var s,o;e?((s=this.GuideLine)==null||s.enable(),this.hooks.emit("enable",{userAction:n})):((o=this.GuideLine)==null||o.disable(),this.changePlayState(!1,{userAction:n}),this.hooks.emit("disable",{userAction:n})),this.state.enabled=e}handleVisible(e,n=!0){var s,o;e?((s=this.GuideLine)==null||s.show(),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:n}))):((o=this.GuideLine)==null||o.hide(),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:n}))),this.state.visible=e}changePlayState(e,n){this.actionIfStateIsEnabled(()=>{var s;return this.hooks.emit("playStateChange",e?"playing":"pause",{userAction:(s=n==null?void 0:n.userAction)!=null?s:!0})}),e?this.handlePlay(n):this.handlePause(n),this.state.playing=e}handlePlay(e){return U(this,null,function*(){var m;const{data:n,state:s,privateState:o,hooks:r}=this;if(o.playing||!(n!=null&&n.keyframes)||(n==null?void 0:n.keyframes.length)===0)return;const a=at();o.playId=a,o.playing=!0,o.broke=!1;const l=n.keyframes,c=this.getPauseData();(e==null?void 0:e.notEmitEvent)!==!0&&r.emit("play",{userAction:(m=e==null?void 0:e.userAction)!=null?m:!0});let d=!1;const u=yield(()=>U(this,null,function*(){var A,p;if((e==null?void 0:e.playFromIndex)!==void 0)return e.playFromIndex;if((e==null?void 0:e.playFromId)!==void 0)return(A=this.data)==null?void 0:A.keyframes.findIndex(g=>g.id===e.playFromId);if(c!=null&&c.keyframeId){const g=(p=this.data)==null?void 0:p.keyframes.find(v=>v.id===c.keyframeId);if(c!=null&&c.fiveState&&(yield this.move(c.fiveState,{moveEffect:o.moveToFirstPanoEffect,duration:o.moveToFirstPanoDuration})),g){if(g.data.effect==="Move")return g.index;if(g.data.effect==="Rotate"){const v=c.duration!==void 0?c.duration*(1-c.playedProgress):void 0;return yield this.playKeyframe(g,{duration:v}),d=!0,g.index+1}}}}))();this.clearPauseData();for(const A of l){if(o.broke||!s.playing||!o.playing||a!==o.playId)return;if(!(u!==void 0&&A.index<u))try{r.emit("playIndexChange",A.index,A),yield this.playKeyframe(A,{moveEffect:d===!1?o.moveToFirstPanoEffect:void 0,duration:d===!1&&typeof o.moveToFirstPanoDuration=="number"?o.moveToFirstPanoDuration:void 0}),A.stay&&(yield VP(A.stay)),d===!1&&(d=!0)}catch(p){return Promise.resolve("broke")}}s.playing&&a===o.playId&&(this.setState({playing:!1},{userAction:!1}),r.emit("end"),this.clearPauseData())})}handlePause(e){var r;const{state:n,privateState:s,hooks:o}=this;n.playing=!1,s.playing!==!1&&(s.playing=!1,this.setPauseData(),s.broke||this.forceInteruptUpdateCamera(),(e==null?void 0:e.notEmitEvent)!==!0&&o.emit("pause",{userAction:(r=e==null?void 0:e.userAction)!=null?r:!0}))}playKeyframe(e,n){return U(this,null,function*(){var o;const{privateState:s}=this;return((o=this.privateState.currentPlayKeyframe)==null?void 0:o.keyframe.id)!==e.id&&(this.privateState.currentPlayKeyframe={keyframe:e}),s.currentPlayQueue.push(this.getPlayPromise(e,n)),this.actionPromiseQueue()})}addInterruptListener(e){const n=()=>{this.privateState.modeChanging||e()},s=e;return this.five.once("gesture",s),this.five.once("wantsChangeMode",n),()=>{this.five.off("gesture",s),this.five.once("wantsChangeMode",n)}}getPlayPromise(s){return U(this,arguments,function*(e,n={}){var r;const o=e.data;if(n.duration=(r=n.duration)!=null?r:e.start!==void 0&&e.end!==void 0?e.end-e.start:void 0,!!o)return new Promise((a,l)=>{let c=!1;this.addInterruptListener(()=>{if(!c)return this.hooks.emit("broke"),this.privateState.broke=!0,this.setState({playing:!1}),c=!0,l(new Error("play is interupted"))});try{if(c)return;const d=()=>{a(),c=!0};switch(o.effect){case"Move":this.move(o,n).then(d);break;case"Rotate":this.rotate(o,n).then(d);break;default:this.rotate(o,n).then(d)}}catch(d){}})})}actionPromiseQueue(){return U(this,null,function*(){const{privateState:e}=this;return new Promise((n,s)=>{if(e.currentPlayQueue.length===0){n();return}const o=e.currentPlayQueue.shift();if(!o){n();return}o.then(n,s)}).then(()=>e.currentPlayQueue.length===0?Promise.resolve():this.actionPromiseQueue())})}move(e,n){return U(this,null,function*(){if(e.mode&&e.mode!==this.five.currentMode)yield this.changeMode(e);else if(e.panoIndex!==this.five.panoIndex)yield this.changePano(e,n);else return Promise.resolve()})}rotate(e,n){return U(this,null,function*(){if(e.mode&&e.mode!==this.five.currentMode)yield this.changeMode({mode:e.mode,panoIndex:e.panoIndex});else if(e.panoIndex&&e.panoIndex!==this.five.panoIndex)return yield this.changePano(e,n);yield this.updateCamera(e,n)})}updateCamera(s){return U(this,arguments,function*(e,n={}){const{five:o,privateState:r,state:a}=this,l=(()=>{var m,A;const h=(m=a.config)==null?void 0:m.speedConfig,u=(A=e.rotateSpeed)!=null?A:h==null?void 0:h.rotateSpeed;if((h==null?void 0:h.rotateSpeedUnit)===void 0)return u;if(u!==void 0)return h.rotateSpeedUnit==="rad/ms"?u:u/1e3})(),c=(()=>{if(n.duration)return n.duration;if(l){const h=this.five.getCurrentState();return LP(h,e)/l}return 800})();r.currentPlayKeyframe&&(r.currentPlayKeyframe.originDuration=c);const d=this.getSpeededDuration(c);return new Promise(h=>{jP(()=>o.updateCamera(e,d)),setTimeout(()=>h(),d)})})}changePano(e,n){return U(this,null,function*(){const{five:s,privateState:o,state:r}=this;if(typeof e.panoIndex!="number"||e.panoIndex===s.panoIndex)return;const a=s.getCurrentState().mode!=="Panorama";a&&(this.privateState.modeChanging=!0);const l=(()=>{var u,m;const d=(u=r.config)==null?void 0:u.speedConfig,h=(m=e.moveSpeed)!=null?m:d==null?void 0:d.moveSpeed;if((d==null?void 0:d.moveSpeedUnit)===void 0)return h;if(h!==void 0)return d.moveSpeedUnit==="m/ms"?h:h/1e3})(),c=(()=>{if(n!=null&&n.duration)return n.duration;if(l&&typeof s.panoIndex=="number"&&typeof e.panoIndex=="number"){const d=s.work.observers[s.panoIndex].position,h=s.work.observers[e.panoIndex].position;return d.distanceTo(h)/l}return 800})();o.currentPlayKeyframe&&(o.currentPlayKeyframe.originDuration=c),yield new Promise(d=>{var h,u,m;s.moveToPano(e.panoIndex,{latitude:e.latitude,longitude:e.longitude,fov:e.fov,duration:this.getSpeededDuration(c),effect:(m=(u=n==null?void 0:n.moveEffect)!=null?u:(h=this.state.config)==null?void 0:h.moveEffect)!=null?m:e.moveEffect,moveCancelCallback:()=>d(),moveEndCallback:()=>d()}),a&&s.once("panoArrived",()=>d())}),a&&(this.privateState.modeChanging=!1)})}changeSpeed(e,n=!0){const{state:s,privateState:o,hooks:r}=this,{currentPlayKeyframe:a}=o;if(r.emit("speedChange",e,{userAction:n}),s.playing&&a)try{const l=a.originDuration!==void 0?a.originDuration*(1-this.getProgress()):void 0,c=this.playKeyframe(a.keyframe,{duration:l});o.currentPlayQueue.push(c)}catch(l){}}getSpeededDuration(e){return e/this.state.speed}getProgress(){return this.five.controller.cameraMotion.progress}changeMode(e,n){return U(this,null,function*(){e.mode&&e.mode!==this.five.currentMode&&(this.privateState.modeChanging=!0,yield this.five.changeMode(e.mode,e,n),this.privateState.modeChanging=!1)})}forceInteruptUpdateCamera(){this.five.updateCamera({},0)}getPauseData(){var e,n;if((e=this.data)!=null&&e.keyframesId)return Br.get((n=this.data)==null?void 0:n.keyframesId)}setPauseData(){var e,n,s,o;if((e=this.data)!=null&&e.keyframesId)return Br.set((n=this.data)==null?void 0:n.keyframesId,{keyframeId:(s=this.privateState.currentPlayKeyframe)==null?void 0:s.keyframe.id,fiveState:this.five.getCurrentState(),duration:(o=this.privateState.currentPlayKeyframe)==null?void 0:o.originDuration,playedProgress:this.getProgress()})}clearPauseData(){var e,n;if((e=this.data)!=null&&e.keyframesId)return Br.delete((n=this.data)==null?void 0:n.keyframesId)}clear(){this.clearPauseData(),this.privateState.currentPlayKeyframe=null}handleDispose(){var e,n;this.setState({playing:!1}),this.clearPauseData(),this.clear(),(e=this.GuideLine)==null||e.dispose(),this.GuideLine=void 0,(n=this.privateState.disposers)==null||n.forEach(s=>s==null?void 0:s())}actionIfStateIsEnabled(e,n){if(this.state.enabled)return e();n!=null&&n.warnLog&&RP()}waitFiveLoaded(){return U(this,null,function*(){return new Promise(e=>{if(this.five.work){e();return}this.five.once("loaded",()=>{e()})})})}setFiveLinearUpdateCamera(){this.privateState.fiveOriginGetProgress&&(this.five.controller.cameraMotion.getProgress=e=>{const n=this.five.controller.cameraMotion,s=e-n.startTime;return s<0?0:s>=n.duration?1:1-BP(1,n.startVelocity,n.duration,s)})}setFiveOriginUpdateCamera(){this.privateState.fiveOriginGetProgress&&(this.five.controller.cameraMotion.getProgress=this.privateState.fiveOriginGetProgress)}}f(as,"PluginVersion",Wu);const GP=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),NP=i=>new as(i);class Yu{constructor(t){f(this,"id");f(this,"renderID");f(this,"isGuideLine",!0);f(this,"panoramaItem");f(this,"modelItem");f(this,"hooks",new Te.Subscribe);f(this,"_visible",!0);f(this,"plugin");f(this,"five");f(this,"logError",t=>fu("GuideLineItem: ",t));this.id=t.id,this.five=t.five,this.plugin=t.plugin,this.panoramaItem=new oa(this.five,{mode:"panorama",plugin:this.plugin,parent:this}),this.modelItem=new oa(this.five,{mode:"model",plugin:this.plugin,parent:this})}get visible(){return this._visible}setData(t){this.setDataByMode("panorama",t),this.setDataByMode("model",t)}setHeightOffset(t){this.modelItem.mesh.position.y=t,this.panoramaItem.mesh.position.y=t}setDataByMode(t,e){var l;const n=t==="panorama"?this.panoramaItem:this.modelItem,s=t==="panorama"?e.panorama_style:e.model_style,o=e.path,r=s,a=s;if(e.pano_group){const c=t==="panorama";n.setGeometryByPanoGroup(e.pano_group,H({skipPanoGroup:c},r))}else e.path&&n.setGeometryByPath(o,r);n.name=e.name,n.setMartial(a),n.setVisibleFloorIndexes((l=e.visible_floor_indexes)!=null?l:null),n.setStartTag(s==null?void 0:s.start_tag),n.setEndTag(s==null?void 0:s.end_tag)}show(){this._visible=!0,this.hooks.emit("show",{userAction:!0})}hide(){this._visible=!1,this.hooks.emit("hide",{userAction:!0})}dispose(){this.panoramaItem.dispose(),this.modelItem.dispose()}walk(t){return U(this,null,function*(){if(!this.panoramaItem.panoGroup)return;const e=H({panoIndexList:this.panoramaItem.panoGroup},t);this.hooks.emit("walkStart",{userAction:!0});const[n]=yield di(HP(this.five,e));if(this.hooks.emit("walkEnded",{userAction:!0}),n)return this.logError(n.message)})}}function HP(i,t){return U(this,null,function*(){if(t.panoIndexList.length===0)return;const e=i.getCurrentState();e.mode!=="Panorama"&&(yield xa(i,["Panorama",{longitude:e.longitude,latitude:0,panoIndex:t.panoIndexList[0]}]));const n=new as(i,{useGuideLine:!1});yield n.load(t),yield new Promise((s,o)=>{const r=i.getCurrentState();let a=t.panoIndexList.slice();r.panoIndex===a[0]&&c(r.panoIndex),n.playFromStart();function l(m){if(m!=="Panorama")return h(new Error("mode not match"))}function c(m){const A=a[0];if(a=a.slice(1),m!==A)return h(new Error("panoIndex not match, wanted: "+A+", got: "+m));if(a.length===0)return u()}function d(){i.off("modeChange",l),i.off("panoArrived",c)}function h(m){d(),o(m)}function u(){d(),s()}i.on("modeChange",l),i.on("panoArrived",c)})})}const _P=Object.freeze(Object.defineProperty({__proto__:null,GuideLineItem:Yu},Symbol.toStringTag,{value:"Module"})),Uu="v1.1.0",ra="GuideLinePlugin",th=`${ra}@${Uu}`;class WP extends Bn{constructor(e,n){super(e,n);f(this,"version",Uu);f(this,"name",ra);f(this,"cruisePlugin");f(this,"itemMap",new Map);f(this,"state",{visible:!1,enabled:!0});f(this,"data");f(this,"heightOffset",0);f(this,"_config");f(this,"_disposed",!1);f(this,"disposedErrorLog",()=>{console.error(`${th} is disposed`)});this._config=n!=null?n:{},this.cruisePlugin=new as(e,{useGuideLine:!1}),Object.assign(window,{[`__${ra}_DEBUG__`]:this})}get config(){return this._config}get disposed(){return this._disposed}load(e,n,s=!0){return U(this,null,function*(){var m,A,p,g,v,y,I;if(this.disposed)return;const o=this.data?JSON.parse(JSON.stringify(this.data)):void 0,r=yield this.formatData(e);this.hooks.emit("dataChange",r,o),this.data=r;const a=r.config,c={panorama_style:{visible:!!(!r.lines&&r.routes),unit_length:(m=a==null?void 0:a.unitHeight)!=null?m:.4,width:(A=a==null?void 0:a.unitWidth)!=null?A:.6,texture:{url:(p=a==null?void 0:a.arrowTextureUrl)!=null?p:this.staticPrefix+"/release/web/arrow6.b6ce0c62.png"}}},d=(v=(g=r.routes)==null?void 0:g.map(k=>{var T;return Xe({},c,{id:(T=k.id)!=null?T:Date.now(),pano_group:k.panoIndexList})}))!=null?v:[],h=(I=(y=r.lines)==null?void 0:y.map(k=>Xe({},c,k)))!=null?I:[],u=[...d,...h];yield this.waitFiveLoaded(),this.clear(),u.forEach(k=>{this.addGuideLineItem(k)}),this.updateTagsEnable(),this.handleVisible(this.state.visible),this.handleEnable(this.state.enabled),n&&this.setState(n,{userAction:s}),this.hooks.emit("dataLoaded",r),console.debug(`${th} loaded`,r)})}formatData(e){return U(this,null,function*(){return this.getDataWithoutVersion(e)})}show(e){return U(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return U(this,null,function*(){this.setState({visible:!1},e)})}enable(e){this.setState({enabled:!0},e)}disable(e){this.setState({enabled:!1},e)}dispose(){this.disposed||(this.clear(),this.hooks.emit("dispose"))}setState(e,n){var o;if(this.disposed)return this.disposedErrorLog();const s=H({},this.state);this.state=H(H({},this.state),e),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible,n==null?void 0:n.userAction),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled,n==null?void 0:n.userAction),Gt(s,this.state,{deep:!0})||(this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:(o=n==null?void 0:n.userAction)!=null?o:!0}),this.five.needsRender=!0)}addGuideLineItem(e){const n=e.render_id||e.id,s=this.itemMap.get(n);s&&this.removeGuideLineItem(s);const o=new Yu({five:this.five,id:n,plugin:this});return this.itemMap.set(n,o),e&&o.setData(e),this.heightOffset+=1e-4,o.setHeightOffset(this.heightOffset),o}getGuideLineItemByID(e){return this.itemMap.get(e)}removeGuideLineItem(e){this.itemMap.delete(e.id),e.panoramaItem.dispose(),e.modelItem.dispose()}updateTagsEnable(){const e=[];function n(r){return Array.isArray(r)&&r.every(a=>typeof a=="number")}function s(r,a){return new E.Vector3().fromArray(r).distanceTo(new E.Vector3().fromArray(a))<.01}function o(r){var l;const a=(l=r.tag)==null?void 0:l.position;return n(a)?e.every(c=>{var d;return n((d=c.tag)==null?void 0:d.position)?!s(a,c.tag.position):!0}):!1}this.itemMap.forEach(r=>{const a=r.modelItem.startTagContainer,l=r.modelItem.endTagContainer,c=o(a);c&&e.push(a),a.plugin.setState({enabled:c},{});const d=o(l);d&&e.push(l),l.plugin.setState({enabled:d},{})})}clear(){this.itemMap.forEach(e=>{this.removeGuideLineItem(e)})}handleEnable(e,n=!0){this.hooks.emit(e?"enable":"disable",{userAction:n})}handleVisible(e,n=!0){this.state.enabled&&this.hooks.emit(e?"show":"hide",{userAction:n})}waitFiveLoaded(){return U(this,null,function*(){return new Promise(e=>{if(this.five.work){e();return}this.five.once("loaded",()=>{e()})})})}getDataWithoutVersion(e){return typeof e=="object"&&e!==null&&e.version&&e.data?e.data:e}}const Xu=(i,t)=>new WP(i,t);function Zu(i,t,e){if(e){const s=new E.Vector3().subVectors(i.position,e).applyQuaternion(i.quaternion.clone().inverse()).applyQuaternion(t).add(e);i.position.copy(s)}i.quaternion.copy(t)}class To extends eu{constructor(e,n){var s;super();f(this,"originObject3D");f(this,"onRender");this.originObject3D=e,this.onRender=(s=n==null?void 0:n.onRender)!=null?s:()=>{}}get helperObject(){return this}render(){this.onRender()}enable(){this.parent.children.includes(this)||this.parent.add(this)}disable(){this.removeFromParent()}show(){this.visible=!0,this.render()}hide(){this.visible=!1,this.render()}raycasterIntersectObject(e,n=[]){return e.intersectObject(this,!0,n)}initialPosition(){this.position.add(this.originObject3D.position)}initQuaternion(){this.quaternion.copy(this.originObject3D.quaternion)}applyHelperScaleMatrix4(e,n){this.scale.applyMatrix4(e)}setHelperQuaternion(e,n){Zu(this,e,n)}applyHelperQuaternion(e,n){if(n){const s=new R.Vector3().subVectors(this.position,n).applyQuaternion(e).add(n);this.position.copy(s)}this.applyQuaternion(e)}dispose(){this.removeFromParent()}}class FP extends To{}class YP extends To{}class UP extends To{}class Ju extends To{}class XP extends Ju{}class ZP extends E.Group{constructor(e){super();f(this,"direction");this.direction=e||"x"}}class nh extends E.Mesh{constructor(e,n,s){super(e,n);f(this,"direction");this.direction=s||"x"}}function JP(i,t){const{offsetWidth:e,offsetHeight:n}=t,{top:s,left:o}=t.getBoundingClientRect();return Object.assign(new E.Vector2,{x:(i.x-o)/e*2-1,y:-(i.y-s)/n*2+1})}function Fa(i,t,e){if(!t||!e||!i)return;const n=JP(t,e);if(Math.abs(n.x)===1||Math.abs(n.y)===1)return;const s=new E.Raycaster;return s.setFromCamera(n,i),s}function qP(i,t){return!(Math.abs(i.x-t.x)>1e-5||Math.abs(i.y-t.y)>1e-5||Math.abs(i.z-t.z)>1e-5)}class Vr extends ZP{constructor(e){var d;super(e.direction);f(this,"line");f(this,"arrow");f(this,"lineHeight",.4);f(this,"arrowHeight",.1);this.name="ArrowGroup";const n=new E.Color((d=e.color)!=null?d:16214315),s=new E.MeshBasicMaterial({color:n,depthTest:!1,opacity:1,transparent:!0,side:E.DoubleSide}),o=new E.ConeGeometry(.04,.1,32),r=new nh(o,s.clone(),e.direction);r.name=`arrow-${e.direction}`,this.arrow=r;const a=.004,l=new E.CylinderGeometry(a,a,.4,32),c=new nh(l,s.clone(),e.direction);c.name=`line-${e.direction}`,this.line=c,this.formatArrow(),this.formatLine(),this.add(this.arrow,this.line)}formatArrow(){this.arrow.geometry.translate(0,this.lineHeight+this.arrowHeight/2,0),this.direction==="x"?(this.arrow.geometry.rotateX(Math.PI/2),this.arrow.geometry.rotateY(Math.PI/2)):this.direction==="z"&&this.arrow.geometry.rotateX(Math.PI/2)}formatLine(){this.line.geometry.translate(0,this.lineHeight/2,0),this.direction==="x"?(this.line.geometry.rotateX(Math.PI/2),this.line.geometry.rotateY(Math.PI/2)):this.direction==="z"&&this.line.geometry.rotateX(Math.PI/2)}}const Rr={X:15618642,Y:4765519,Z:4227839};class ai{static get X(){return new E.Color(Rr.X).convertSRGBToLinear().clone()}static get Y(){return new E.Color(Rr.Y).convertSRGBToLinear().clone()}static get Z(){return new E.Color(Rr.Z).convertSRGBToLinear().clone()}}class KP extends FP{constructor(e){super(e);f(this,"xArrow",new Vr({direction:"x",color:ai.X}));f(this,"yArrow",new Vr({direction:"y",color:ai.Y}));f(this,"zArrow",new Vr({direction:"z",color:ai.Z}));this.add(this.xArrow),this.add(this.yArrow),this.add(this.zArrow)}show(){super.show(),this.xArrow.visible=!0,this.yArrow.visible=!0,this.zArrow.visible=!0}showDraggingHelper(e){this.xArrow.visible=e.includes("x"),this.yArrow.visible=e.includes("y"),this.zArrow.visible=e.includes("z")}dispose(){this.remove(this.xArrow,this.yArrow,this.zArrow)}}function Tn(i,t){return $P(document.createElement(t!=null?t:"div"),i)}function $P(i,t){if(!t)return i;for(const e in t)e&&t[e]&&(i.style[e]=t[e]);return i}function e2(i){const t=Tn(H({position:"absolute",display:"block",borderRadius:"4px",paddingTop:"1px",paddingBottom:"1px",paddingLeft:"4px",paddingRight:"4px",pointerEvents:"none",userSelect:"none",zIndex:"99999",backgroundColor:"rgba(0,0,0,0.7)",fontSize:"12px",color:"#fff",letterSpacing:"0",lineHeight:"18px"},i)),e=()=>{t.style.display!=="block"&&t.style.top&&t.style.left&&(t.style.display="block")};return{element:t,show:e,hide:()=>{t.style.display="none",t.style.top="",t.style.left=""},setLeftTop:(o,r)=>{t.style.left=o,t.style.top=r,e()}}}class t2 extends UP{constructor(e,n){super(e);f(this,"xCircle");f(this,"yCircle");f(this,"zCircle");f(this,"children",[]);f(this,"angleTips");f(this,"container");(n==null?void 0:n.yzCircleEnable)!==!1&&(this.xCircle=new Qr({direction:"x",color:ai.X})),(n==null?void 0:n.xzCircleEnable)!==!1&&(this.yCircle=new Qr({direction:"y",color:ai.Y})),(n==null?void 0:n.xyCircleEnable)!==!1&&(this.zCircle=new Qr({direction:"z",color:ai.Z})),n!=null&&n.container&&(n==null?void 0:n.angleTipsEnable)!==!1&&(this.container=n==null?void 0:n.container,this.angleTips=e2({display:"none"}),this.container.appendChild(this.angleTips.element)),this.add(...[this.xCircle,this.yCircle,this.zCircle].filter(Boolean)),this.show()}hide(){this.children.forEach(e=>e.hide())}show(){var e;this.children.forEach(n=>n.showCircle()),(e=this.angleTips)==null||e.hide()}showDraggingHelper(e){var n;this.hide(),this.children.filter(s=>e.includes(s.direction)).forEach(s=>s.showRing()),(n=this.angleTips)==null||n.show()}dispose(){var e,n;this.removeFromParent(),(n=(e=this.angleTips)==null?void 0:e.element)==null||n.remove()}}class Qr extends E.Group{constructor(e){super();f(this,"direction");f(this,"circle");f(this,"ring");f(this,"angleSector");this.direction=e.direction,this.circle=new n2(e),this.ring=new i2(e),this.angleSector=new s2(e),this.add(this.circle,this.ring,this.angleSector),this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}showCircle(){this.add(this.circle),this.remove(this.ring,this.angleSector)}showRing(){this.add(this.ring,this.angleSector),this.remove(this.circle)}hide(){this.remove(this.ring,this.angleSector,this.circle)}}class n2 extends E.Mesh{constructor(e){var n;super();f(this,"direction");f(this,"gapAngle",.02);f(this,"geometry",new E.RingGeometry(.25,.3,20,8,this.gapAngle,Math.PI/2-this.gapAngle*2));this.material=new E.MeshBasicMaterial({opacity:.6,color:(n=e.color)!=null?n:16777215,transparent:!0,side:E.DoubleSide,depthTest:!1}),this.direction=e.direction,this.geometry.name=`RotateHelperCircleGeometry-${this.direction}`}}class i2 extends E.Group{constructor(e){super();f(this,"direction");this.direction=e.direction;const n=.015,s=new Array(8).fill(null).map((o,r)=>{const a=new E.RingGeometry(.25,.3,20,8,Math.PI/4*r+n,Math.PI/4-n*2),l=new E.MeshBasicMaterial({opacity:1,color:16777215,depthTest:!1,transparent:!0,side:E.DoubleSide}),c=new E.Mesh(a,l);return c.name=`AxesDashedRing-${this.direction}-${r}`,c});this.add(...s)}}class s2 extends E.Mesh{constructor(e){var s;super();f(this,"direction");f(this,"baseAxes");f(this,"angleDirection");switch(e.direction){case"x":this.baseAxes=new E.Vector3(0,0,1);break;case"y":this.baseAxes=new E.Vector3(1,0,0);break;case"z":this.baseAxes=new E.Vector3(1,0,0);break}const n=.3+5e-4;this.geometry=new E.CircleGeometry(n,48,0,1e-4),this.material=new E.MeshBasicMaterial({opacity:.4,color:(s=e.color)!=null?s:16777215,depthTest:!1,transparent:!0,side:E.DoubleSide}),this.direction=e.direction,this.angleDirection=this.direction==="z"?1:-1}}function o2(){const i=Tn({width:"100%",height:"100%",left:"0",top:"0",position:"absolute",pointerEvents:"none"}),t=Tn({boxSizing:"border-box",width:"100%",height:"100%",left:"0",top:"0",position:"relative",display:"flex",alignItems:"center",justifyContent:"center"}),e=Tn({boxSizing:"border-box",width:"100%",height:"100%",left:"0",top:"0",position:"absolute",border:"1px solid rgba(255,255,255,0.4)"});i.appendChild(t),t.appendChild(e);const n="-4px",s={direction:"nesw",element:cn({cursor:"nesw-resize",left:n,bottom:n})},o={direction:"ns",element:cn({cursor:"ns-resize",bottom:n})},r={direction:"nwse",element:cn({cursor:"nwse-resize",right:n,bottom:n})},a={direction:"ew",element:cn({cursor:"ew-resize",right:n})},l={direction:"nesw",element:cn({cursor:"nesw-resize",right:n,top:n})},c={direction:"ns",element:cn({cursor:"ns-resize",top:n})},d={direction:"nwse",element:cn({cursor:"nwse-resize",left:n,top:n})},h={direction:"ew",element:cn({cursor:"ew-resize",left:n})};return new Array(o,a,c,h,s,r,l,d).forEach(m=>t.appendChild(m.element)),{container:i,squares:[s,o,r,a,l,c,d,h]}}function cn(i){const t=Tn(H({background:"#FFFFFF",width:"9px",height:"9px",position:"absolute",pointerEvents:"none"},i)),e=Tn({width:"15px",height:"15px",position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",pointerEvents:"none"}),n=Tn({width:"15px",height:"15px",cursor:i==null?void 0:i.cursor,pointerEvents:"auto",background:"transparent"});return n.draggable=!0,e.appendChild(n),t.appendChild(e),t}class r2 extends XP{constructor(e,n,s,o){super(e);f(this,"points",[]);f(this,"cornerPositions",[]);f(this,"css3DInstance");f(this,"plane");f(this,"css3DRenderer",new li);f(this,"camera");f(this,"scene");f(this,"container");f(this,"enabled",!1);this.camera=s,this.scene=o,this.container=n,this.initRectangleScaleHelper()}get helperObject(){var e;if(!((e=this.css3DInstance)!=null&&e.css3DObject))throw new Error("css3DInstance is not initialized");return this.css3DInstance.css3DObject}applyMatrix4(e){var n;super.applyMatrix4(e),this.helperObject.applyMatrix4(e),(n=this.plane)==null||n.applyMatrix4(e),this.cornerPositions.forEach(s=>s.applyMatrix4(e))}showDraggingHelper(){}applyHelperScaleMatrix4(e,n){var s;(s=this.plane)==null||s.scale.applyMatrix4(e),this.helperObject.applyScaleMatrix4(e)}updatePoints(){const e=this.calculatePointPosition(this.cornerPositions);this.points.forEach((n,s)=>{n.position.copy(e[s])})}applyHelperQuaternion(e,n){var o;const s=(o=this.css3DInstance)==null?void 0:o.css3DObject;if(s){const r=new E.Vector3().subVectors(s.position,n).applyQuaternion(e).add(n);s.position.copy(r),s.applyQuaternion(e)}if(this.plane){const r=new E.Vector3().subVectors(this.plane.position,n).applyQuaternion(e).add(n);this.plane.position.copy(r),this.plane.applyQuaternion(e)}this.cornerPositions.forEach(r=>{const a=new E.Vector3().subVectors(r,n).applyQuaternion(e).add(n);r.copy(a)})}enable(){var e;this.enabled||(this.enabled=!0,(e=this.css3DInstance)==null||e.enable(),this.plane&&this.scene.add(this.plane))}disable(){var e;this.enabled&&(this.enabled=!1,(e=this.css3DInstance)==null||e.disable(),this.plane&&this.scene.remove(this.plane))}show(){var e;(e=this.css3DInstance)==null||e.show(),this.plane&&(this.plane.visible=!0)}hide(){var e;(e=this.css3DInstance)==null||e.hide(),this.plane&&(this.plane.visible=!1)}dispose(){this.disable(),this.css3DRenderer.dispose()}initRectangleScaleHelper(){var a,l;const e=this.getCornerPositions();if(!e)return;this.cornerPositions=e;const n=this.css3DRenderer.create3DElement(this.camera,e,{ratio:.003});if(!n)return;this.css3DInstance=n,n.appendToElement(this.container);const s=n.css3DObject.container,{container:o,squares:r}=o2();this.points=r.map((c,d)=>({direction:c.direction,point:c.element,position:this.calculatePointPosition(e)[d]})),s.insertBefore(o,(a=s.children[0])!=null?a:null),this.helperObject.position.copy(this.originObject3D.position),(l=this.plane)==null||l.position.copy(this.originObject3D.position)}getCornerPositions(){const{originObject3D:e}=this;if(e.isCSS3DObjectPlus)return e.cornerPoints;console.error("当前物体暂时不支持 ScaleHelper")}calculatePointPosition(e){return[e[0].clone(),e[0].clone().add(e[1]).divideScalar(2),e[1].clone(),e[1].clone().add(e[2]).divideScalar(2),e[2].clone(),e[2].clone().add(e[3]).divideScalar(2),e[3].clone(),e[3].clone().add(e[0]).divideScalar(2)]}}function qu(i){const t=new E.Box3,e=new E.Vector3;if(i.traverse(n=>{var o;if(n.name==="shadow")return;const s=n.geometry;if(s!==void 0)if((o=s==null?void 0:s.attributes)!=null&&o.position){const r=s.attributes.position;for(let a=0,l=r.count;a<l;a++)e.fromBufferAttribute(r,a).applyMatrix4(n.matrix),t.expandByPoint(e)}else s.vertices.forEach(r=>{const a=r.clone().applyMatrix4(n.matrix);t.expandByPoint(a)})}),!t.isEmpty())return t}class a2 extends YP{constructor(e){super(e);f(this,"box");f(this,"outline");f(this,"originObject");f(this,"positionAttribute");this.originObject=e,this.positionAttribute=new E.BufferAttribute(new Float32Array(8*3),3),this.box=this.createBox(),this.outline=this.createOutline(),this.add(this.box,this.outline),this.update()}raycasterIntersectObject(e,n){return e.intersectObject(this,!1,n)}raycast(e,n){this.box.raycast(e,n)}update(){const e=qu(this.originObject);if(!e)return;const{min:n,max:s}=e;this.positionAttribute.setXYZ(0,s.x,s.y,s.z),this.positionAttribute.setXYZ(1,n.x,s.y,s.z),this.positionAttribute.setXYZ(2,n.x,n.y,s.z),this.positionAttribute.setXYZ(3,s.x,n.y,s.z),this.positionAttribute.setXYZ(4,s.x,s.y,n.z),this.positionAttribute.setXYZ(5,n.x,s.y,n.z),this.positionAttribute.setXYZ(6,n.x,n.y,n.z),this.positionAttribute.setXYZ(7,s.x,n.y,n.z),this.positionAttribute.needsUpdate=!0}createOutline(){const e=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),n=new E.BufferGeometry;n.setIndex(new E.BufferAttribute(e,1)),n.setAttribute("position",this.positionAttribute);const s=new E.LineBasicMaterial({color:64767,linewidth:1,opacity:1,depthTest:!1,transparent:!0,toneMapped:!1}),o=new E.LineSegments(n,s);return o.matrixAutoUpdate=!1,o}createBox(){const e=new Uint16Array([0,1,2,0,2,3,0,3,7,0,7,4,0,4,5,0,5,1,6,1,5,6,2,1,6,5,4,6,4,7,6,3,2,6,7,3]),n=new E.BufferGeometry;n.setIndex(new E.BufferAttribute(e,1)),n.setAttribute("position",this.positionAttribute);const s=new E.MeshBasicMaterial({color:64767,opacity:.1,depthTest:!1,transparent:!0});return new E.Mesh(n,s)}}class ls{constructor(t,e){f(this,"originObject3D");f(this,"hooks");f(this,"disposers",[]);f(this,"helperObject3D");f(this,"camera");f(this,"model");f(this,"scene");f(this,"container");f(this,"domEvents");f(this,"isDragging",!1);f(this,"enabled",!1);f(this,"name","BaseController");f(this,"boundingBox");f(this,"offset");f(this,"onRender");f(this,"onWantsTapGesture",t=>{if(this.getIntersectObject(t))return!1});var c,d;this.hooks=(c=t.sharedHooks)!=null?c:new pi,this.camera=t.camera,this.model=t.model,this.originObject3D=t.originObject3D,this.helperObject3D=t.helperObject3D,this.container=t.container,this.scene=t.scene,this.domEvents=new Se(t.camera,t.container),this.onRender=(d=t.onRender)!=null?d:()=>{},this.offset=e==null?void 0:e.offset,this.initialHelperPosition(),this.initialHelperQuaternion(),this.enable();const n=(...h)=>this.onSetOriginObjectScale(...h),s=(...h)=>this.onSetOriginObjectRotate(...h),o=(...h)=>this.onSetOriginObjectPosition(...h),r=(...h)=>this.onApplyOriginObjectScale(...h),a=(...h)=>this.onApplyOriginObjectRotate(...h),l=(...h)=>this.onApplyOriginObjectPosition(...h);this.hooks.on("setObjectScale",n),this.hooks.on("setObjectRotate",s),this.hooks.on("setObjectPosition",o),this.hooks.on("applyObjectPosition",l),this.hooks.on("applyObjectRotate",a),this.hooks.on("applyObjectScale",r),this.disposers.push(()=>{this.hooks.off("setObjectScale",n),this.hooks.off("setObjectRotate",s),this.hooks.off("setObjectPosition",o),this.hooks.off("applyObjectPosition",l),this.hooks.off("applyObjectRotate",a),this.hooks.off("applyObjectScale",r)})}initialHelperPosition(){this.helperObject3D.position.add(this.calculateOffset(this.offset)),this.helperObject3D.initialPosition()}initialHelperQuaternion(){this.helperObject3D.initQuaternion()}enable(){this.enabled||(this.enabled=!0,this.scene.add(this.helperObject3D),this.helperObject3D.enable(),this.render())}disable(){this.enabled&&(this.enabled=!1,this.helperObject3D.disable(),this.render())}show(){this.helperObject3D.show(),this.render()}hide(){this.helperObject3D.hide(),this.render()}dispose(){var t;(t=this.disposers)==null||t.forEach(e=>e==null?void 0:e()),this.helperObject3D.dispose(),this.render()}applyHelperMatrix4(t){this.helperObject3D.applyMatrix4(t)}applyHelperQuaternion(t,e){this.helperObject3D.applyHelperQuaternion(t,e)}applyHelperScaleMatrix4(t,e){this.helperObject3D.applyHelperScaleMatrix4(t,e)}onWantsGesture(t,e,n){if(this.isDragging)return!1}onIntersectionOnModelUpdate(t){}onApplyOriginObjectScale(t){this.applyHelperScaleMatrix4(t.matrix,t.origin)}onApplyOriginObjectRotate(t){this.applyHelperQuaternion(t.quaternion,t.origin)}onApplyOriginObjectPosition(t){this.applyHelperMatrix4(t.matrix)}onSetOriginObjectScale(t){this.helperObject3D.scale.copy(t),this.updateOffsetByScale(t)}onSetOriginObjectRotate(t,e){this.helperObject3D.setHelperQuaternion(t,e)}onSetOriginObjectPosition(t){this.helperObject3D.position.copy(t.clone().add(this.calculateOffset(this.offset)))}render(){this.onRender()}updateOffsetByScale(t){if(this.boundingBox&&this.offset){const e=this.originObject3D.position,n=new E.Vector3().subVectors(this.boundingBox.max,e).multiply(t).add(e),s=new E.Vector3().subVectors(this.boundingBox.min,e).multiply(t).add(e),o=this.calculateOffset(this.offset,{min:s,max:n});this.helperObject3D.position.copy(o),this.helperObject3D.initialPosition()}}hoverListener(t,e=16777215,n=1){const s=(Array.isArray(t)?t:[t]).filter(Ai),o=[];for(const r of s)if(r instanceof E.Mesh||r instanceof E.Group){const a=r instanceof E.Group?r.children.filter(u=>u instanceof E.Mesh):[r];a.forEach(u=>{u.__originalColor__=u.material.color.clone(),u.__originalOpacity__=u.material.opacity});const l=()=>{a.forEach(u=>{u.material.color.set(e),u.material.opacity=n}),this.render()},c=()=>{a.forEach(u=>{u.material.color.copy(u.__originalColor__),u.material.opacity=u.__originalOpacity__}),this.render()},d=()=>{this.isDragging||l()},h=()=>{this.isDragging||c()};for(const u of a)this.domEvents.addEventListener(u,"mouseover",d),this.domEvents.addEventListener(u,"mouseout",h),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",c),this.hooks.on("rotateEnd",c),o.push(()=>{this.domEvents.removeEventListener(u,"mouseover",d),this.domEvents.removeEventListener(u,"mouseout",h),this.hooks.off("moveStart",l),this.hooks.off("moveEnd",c),this.hooks.off("rotateEnd",c)})}return()=>o.forEach(r=>r==null?void 0:r())}getIntersectObject(t){const e=this.camera.position,n=this.helperObject3D;if(!n)return;const s=this.helperObject3D.raycasterIntersectObject(t)[0];if(!s)return;const o=s;if(o.object=n,this.model.intersectRaycaster){const r=this.model.intersectRaycaster(t)[0];if(r&&r.point.distanceTo(e)<o.point.distanceTo(e))return}return o.object}calculateOffset(t,e){const n=this.originObject3D,s=new E.Vector3(0,0,0);if(!t)return s;const o=()=>e||(this.boundingBox?this.boundingBox:(this.boundingBox=qu(n),this.boundingBox));if(typeof t.x=="number")s.setX(t.x);else if(typeof t.x=="object"){const r=o();s.setX((r.max.x-r.min.x)*t.x.percents)}if(typeof t.y=="number")s.setY(t.y);else if(typeof t.y=="object"){const r=o();s.setY((r.max.y-r.min.y)*t.y.percents)}if(typeof t.z=="number")s.setZ(t.z);else if(typeof t.z=="object"){const r=o();s.setZ((r.max.z-r.min.z)*t.z.percents)}return s}}class l2 extends ls{constructor(...e){super(...e);f(this,"name","MoveController");f(this,"startInfo");f(this,"_moveByMouseEnable",!1);f(this,"mouseInfo");f(this,"mousedownEventListenerDisposer");const n=this.helperObject3D;this.hoverListener([n.xArrow,n.yArrow,n.zArrow]);const s=this.dragStart.bind(this),o=this.dragging.bind(this),r=this.dragEnd.bind(this),a=this.show.bind(this),l=this.hide.bind(this);this.domEvents.addEventListener(this.helperObject3D,"mousedown",s),document.addEventListener("mousemove",o),document.addEventListener("mouseup",r),this.hooks.on("rotateStart",l),this.hooks.on("rotateEnd",a),this.hooks.on("moveByMouseEnable",l),this.hooks.on("moveByMouseDisable",a),this.disposers.push(()=>{this.domEvents.removeEventListener(this.helperObject3D,"mousedown",s),document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",r),this.hooks.off("rotateStart",l),this.hooks.off("rotateEnd",a),this.hooks.off("moveByMouseEnable",l),this.hooks.off("moveByMouseDisable",a)}),this.moveByMouseEnable&&this.moveByMouse()}get moveByMouseEnable(){return this._moveByMouseEnable}dispose(){var e;super.dispose(),(e=this.disposers)==null||e.forEach(n=>n==null?void 0:n())}moveByMouse(){this._moveByMouseEnable=!0;const e=this.handleMouseDown.bind(this),n=this.handleMouseUp.bind(this);this.hooks.emit("moveByMouseEnable"),setTimeout(()=>{this.container.addEventListener("mousedown",e),this.container.addEventListener("mouseup",n)}),this.mousedownEventListenerDisposer=()=>{this.container.removeEventListener("mousedown",e),this.container.removeEventListener("mouseup",n)}}disableMoveByMouse(){var e;this._moveByMouseEnable=!1,this.hooks.emit("moveByMouseDisable"),(e=this.mousedownEventListenerDisposer)==null||e.call(this)}onIntersectionOnModelUpdate(e){!this.moveByMouseEnable||this.hooks.emit("wantToMove",e.point)||(this.originObject3D.position.copy(e.point),this.hooks.emit("setObjectPosition",e.point),this.hooks.emit("move",e.point))}onApplyOriginObjectScale(e){}handleMouseDown(e){const{x:n,y:s}=e;this.mouseInfo={x:n,y:s,mouseDownTimestamp:Date.now()}}handleMouseUp(e){if(!this.mouseInfo)return;const{x:n,y:s}=e;this.mouseInfo.x===n&&this.mouseInfo.y===s&&Date.now()-this.mouseInfo.mouseDownTimestamp<500&&(this.disableMoveByMouse(),this.mouseInfo=void 0)}dragStart(e){if(this._moveByMouseEnable||this.isDragging)return;const n=e==null?void 0:e.intersect;if(!n)return this.dragEnd();const s=(n==null?void 0:n.object).direction;if(!s)return this.dragEnd();const o=new E.Vector3(1,0,0).applyQuaternion(this.helperObject3D.quaternion),r=new E.Vector3(0,1,0).applyQuaternion(this.helperObject3D.quaternion),a=new E.Vector3(0,0,1).applyQuaternion(this.helperObject3D.quaternion),l=(()=>{switch(s){case"x":return o;case"y":return r;case"z":return a}})(),c=(()=>{switch(s){case"x":case"y":return a;case"z":return o}})(),d=n.point.clone(),h=new E.Plane;h.setFromNormalAndCoplanarPoint(c,d),this.startInfo={startVectorProject:d.clone().projectOnVector(l),directionVector:l,plane:h},this.helperObject3D.showDraggingHelper([s]),this.hooks.emit("moveStart"),this.isDragging=!0}dragging(e){if(!this.isDragging||!this.startInfo)return;const n=Fa(this.camera,e,this.container);return n?(this.move(n),!1):this.dragEnd()}move(e){if(!this.startInfo)return this.dragEnd();const{plane:n,directionVector:s,startVectorProject:o}=this.startInfo,r=this.originObject3D,a=e.ray.intersectPlane(n,new E.Vector3);if(!a)return;const l=a.clone().projectOnVector(s),c=l.clone().sub(o),d=new E.Matrix4;d.setPosition(c);const h=r.position.clone().applyMatrix4(d);this.hooks.emit("wantToMove",h)||(r.applyMatrix4(d),o.copy(l),this.hooks.emit("applyObjectPosition",{matrix:d}),this.hooks.emit("move",h))}dragEnd(){this.isDragging&&(this.startInfo=void 0,this.isDragging=!1,this.helperObject3D.show(),this.hooks.emit("moveEnd"))}}class Fi{constructor(t,e,n,s,o,r){f(this,"helperController");f(this,"five");f(this,"onFiveWantsTapGesture",t=>{if(!this.helperController)return;const e=this.helperController.onWantsTapGesture(t);return this.five.needsRender=!0,e});f(this,"onFiveWantsGesture",(...t)=>{if(!this.helperController)return;const e=this.helperController.onWantsGesture(...t);return this.five.needsRender=!0,e});f(this,"onFiveIntersectionOnModelUpdate",(...t)=>{this.helperController&&this.helperController.onIntersectionOnModelUpdate(...t)});const{camera:a,model:l,scene:c}=t,d=t.getElement();if(this.five=t,!a||!l||!d||!c)return;const h=()=>{t.needsRender=!0};this.helperController=new e({camera:a,model:l,originObject3D:n,helperObject3D:s,container:d,scene:c,onRender:h,sharedHooks:r},o),t.on("wantsTapGesture",this.onFiveWantsTapGesture),t.on("wantsGesture",this.onFiveWantsGesture),t.on("intersectionOnModelUpdate",this.onFiveIntersectionOnModelUpdate)}dispose(){var t;this.five.off("wantsTapGesture",this.onFiveWantsTapGesture),this.five.off("wantsGesture",this.onFiveWantsGesture),this.five.off("intersectionOnModelUpdate",this.onFiveIntersectionOnModelUpdate),(t=this.helperController)==null||t.dispose()}}const c2="v1.0.1",d2="Object3DHelper",Ya=`${d2}@${c2}`,h2=()=>{console.error(`${Ya} is disposed`)},u2=()=>{console.warn(`${Ya} is disabled`)},f2=()=>{console.error(`${Ya} is disabled`)};class m2{constructor(t){f(this,"controllers",{});f(this,"state",{visible:!0,enabled:!0,disposed:!1});f(this,"hooks",new pi);f(this,"eventListener",{});t&&this.addControllers(t),this.setState(this.state)}show(t){return U(this,null,function*(){this.setState({visible:!0},t)})}hide(t){return U(this,null,function*(){this.setState({visible:!1},t)})}enable(t){this.setState({enabled:!0},t)}disable(t){this.setState({enabled:!1},t)}dispose(){this.setState({disposed:!0})}setState(t,e){if(this.state.disposed)return h2();if(!this.state.enabled&&t.enabled!==!0&&t.disposed!==!0)return f2();const n=H({},this.state);this.state=H(H({},this.state),t),t.disposed!==void 0&&t.disposed!==n.disposed&&t.disposed&&this.handleDispose(),t.visible!==void 0&&this.handleVisible(t.visible),t.enabled!==void 0&&this.handleEnable(t.enabled),this.hooks.emit("stateChange",{state:this.state,prevState:n})}addControllers(t){this.controllers=H(H({},this.controllers),t),this.setState(this.state)}getCurrentState(){return this.state}handleEnable(t,e=!0){t?(this.everyControllerDo(n=>{n.enable()}),this.hooks.emit("enable",{userAction:e})):(this.everyControllerDo(n=>{n.disable()}),this.hooks.emit("disable",{userAction:e})),this.state.enabled=t}handleVisible(t,e=!0){t?(this.everyControllerDo(n=>{n.show()}),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:e}))):(this.everyControllerDo(n=>{n.hide()}),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:e}))),this.state.visible=t}everyControllerDo(t){Object.values(this.controllers).forEach(e=>{e&&t(e)})}handleDispose(){var t,e;Object.values(this.controllers).forEach(n=>{n==null||n.dispose()});for(const n in this.controllers){if(!n)continue;const s=n;(e=(t=this.eventListener)[s])==null||e.call(t)}}actionIfStateIsEnabled(t,e){if(this.state.enabled)return t();e!=null&&e.warnLog&&u2()}}function Gr(i){return i*Math.PI/180}class g2 extends ls{constructor(...e){var c,d,h;super(...e);f(this,"name","RotateController");f(this,"startInfo");f(this,"removeListener");const n=this.helperObject3D;this.hoverListener([(c=n.xCircle)==null?void 0:c.circle,(d=n.yCircle)==null?void 0:d.circle,(h=n.zCircle)==null?void 0:h.circle].filter(Boolean));const s=this.dragStart.bind(this),o=this.dragging.bind(this),r=this.dragEnd.bind(this),a=this.show.bind(this),l=this.hide.bind(this);this.domEvents.addEventListener(this.helperObject3D,"mousedown",s),document.addEventListener("mousemove",o),document.addEventListener("mouseup",r),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",a),this.hooks.on("moveByMouseEnable",l),this.hooks.on("moveByMouseDisable",a),this.removeListener=()=>{this.domEvents.removeEventListener(this.helperObject3D,"mousedown",s),document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",r),this.hooks.off("moveStart",l),this.hooks.off("moveEnd",a),this.hooks.off("moveByMouseEnable",l),this.hooks.off("moveByMouseDisable",a)}}get rotateCenter(){return this.helperObject3D.position.clone()}initialHelperQuaternion(){this.helperObject3D.applyHelperQuaternion(this.originObject3D.quaternion)}setRotateAngle(e){const{x:n=0,y:s=0,z:o=0}=e,r=new E.Euler(Gr(n),Gr(s),Gr(o)),a=new E.Quaternion().setFromEuler(r);if(this.hooks.emit("wantToRotate",a))return;const{originObject3D:c,rotateCenter:d}=this;Zu(c,a,d),this.hooks.emit("setObjectRotate",a,d),this.hooks.emit("rotate",a),this.render()}dispose(){this.removeListener(),super.dispose()}onApplyOriginObjectRotate(e){this.isDragging||super.onApplyOriginObjectRotate(e)}onApplyOriginObjectScale(e){}dragStart(e){if(this.isDragging)return;const n=e==null?void 0:e.intersect;if(!n)return this.dragEnd();const s=(n==null?void 0:n.object).direction;if(!s)return this.dragEnd();const o=n.point,r=this.getAngleHelper(s);this.setTipsAngle(0);const a=o.clone();a.y+=.2,this.setTipsPosition(a);const l=(()=>{if(s==="x")return new E.Vector3(1,0,0).applyQuaternion(this.originObject3D.quaternion);if(s==="y")return new E.Vector3(0,1,0).applyQuaternion(this.originObject3D.quaternion);if(s==="z")return new E.Vector3(0,0,1).applyQuaternion(this.originObject3D.quaternion)})(),c=new E.Plane().setFromNormalAndCoplanarPoint(l,o),h=c.projectPoint(o.clone(),new E.Vector3).clone().sub(this.rotateCenter),u=h.angleTo(r.baseAxes.clone().applyQuaternion(this.originObject3D.quaternion));this.setAngleHelperStart(s,u),this.setAngleHelperLength(s,0),this.startInfo={direction:s,startVector:h,plane:c,angleHelper:r,angle:0,objectQuaternion:this.originObject3D.quaternion.clone()},this.helperObject3D.showDraggingHelper([s]),this.hooks.emit("rotateStart"),this.isDragging=!0}dragging(e){if(!this.isDragging)return;const n=Fa(this.camera,e,this.container);return n?(this.rotate(n),!1):this.dragEnd()}rotate(e){if(!this.startInfo)return this.dragEnd();const{startVector:n,plane:s,angleHelper:o,direction:r,objectQuaternion:a}=this.startInfo,{originObject3D:l}=this,c=e.ray.intersectPlane(s,new E.Vector3);if(!c)return;const d=this.rotateCenter.clone(),u=s.projectPoint(c.clone(),new E.Vector3).clone().sub(d);if(n.angleTo(u)===0)return;const m=new E.Quaternion().setFromUnitVectors(n.clone().normalize(),u.clone().normalize()),A=l.quaternion.clone().premultiply(m);if(this.hooks.emit("wantToRotate",A))return;const v=new E.Euler().setFromQuaternion(new E.Quaternion().setFromUnitVectors(n.clone().normalize().applyQuaternion(a.clone().inverse()),u.clone().normalize().applyQuaternion(a.clone().inverse())),`${r.toUpperCase()}${"XZY".replace(r.toUpperCase(),"")}`)[r]*o.angleDirection;if(this.startInfo.angle+=v,this.setAngleHelperLength(r,this.startInfo.angle),this.setTipsAngle(Nh(this.startInfo.angle)),d){const y=new E.Vector3().subVectors(l.position,d).applyQuaternion(m).add(d);l.position.copy(y)}l.applyQuaternion(m),this.hooks.emit("applyObjectRotate",{quaternion:m,origin:d}),this.hooks.emit("rotate",l.quaternion),this.startInfo.startVector=u}dragEnd(){this.isDragging&&(this.hooks.emit("setObjectRotate",this.originObject3D.quaternion,this.rotateCenter),this.startInfo=void 0,this.isDragging=!1,this.helperObject3D.show(),this.hooks.emit("rotateEnd"))}getAngleHelper(e){var n,s,o;switch(e){case"x":return(n=this.helperObject3D.xCircle)==null?void 0:n.angleSector;case"y":return(s=this.helperObject3D.yCircle)==null?void 0:s.angleSector;case"z":return(o=this.helperObject3D.zCircle)==null?void 0:o.angleSector}}setAngleHelperStart(e,n){const s=this.getAngleHelper(e);if(!s){console.warn("angleHelper is undefined");return}if(s instanceof E.Mesh&&s.geometry instanceof E.CircleGeometry){const{radius:o,segments:r,thetaLength:a}=s.geometry.parameters;s.geometry=new E.CircleGeometry(o,r,n,a)}else console.warn("only support THREE.CircleGeometry")}setAngleHelperLength(e,n){const o=n>=0?Math.max(n,.001):Math.min(n,-.001),r=this.getAngleHelper(e);if(r instanceof E.Mesh&&r.geometry instanceof E.CircleGeometry){const{radius:a,thetaStart:l}=r.geometry.parameters,c=Math.ceil(Math.abs(o)*(40/(2*Math.PI)));r.geometry=new E.CircleGeometry(a,c,l,o)}else console.warn("only support THREE.CircleGeometry")}setTipsAngle(e){var s;const n=(s=this.helperObject3D.angleTips)==null?void 0:s.element;n&&(n.innerText=`${e.toFixed(0)}°`)}setTipsPosition(e){const n=this.helperObject3D.angleTips;if(!n)return;const s=e.project(this.camera),{x:o,y:r,z:a}=s;if(a>1)return;const l=(o+1)/2*100+"%",c=(-r+1)/2*100+"%";n.setLeftTop(l,c)}}class p2 extends ls{constructor(...e){super(...e);f(this,"startInfo");f(this,"name","RectangleScaleController")}enable(){this.helperObject3D.enable(),super.enable()}disable(){this.helperObject3D.disable(),super.disable()}show(){this.helperObject3D.show(),super.show()}hide(){this.helperObject3D.hide(),super.hide()}onApplyOriginObjectPosition(e){this.isDragging||super.onApplyOriginObjectPosition(e)}onApplyOriginObjectScale(e){this.helperObject3D.applyHelperScaleMatrix4(e.matrix,e.origin)}getDragPlane(){const e=new E.Plane,n=this.helperObject3D.cornerPositions;if(n.length!==0)return n.length<3?e.setFromNormalAndCoplanarPoint(this.originObject3D.getWorldDirection(new R.Vector3),n[0]):e.setFromCoplanarPoints(n[0],n[1],n[2]),e}dragStart(e,n){var o,r;(r=(o=this.helperObject3D).updatePoints)==null||r.call(o);const s=this.getDragPlane();if(!s)return this.dragEnd();this.startInfo={startPoint:{position:n.position.clone(),direction:n.direction},plane:s},this.hooks.emit("scaleStart"),this.render(),this.isDragging=!0}dragging(e){if(!this.isDragging)return;const n=Fa(this.camera,e,this.container);if(!n)return this.dragEnd();this.scale(n)}scale(e){var W,q;if(!this.startInfo)return;const n=this.originObject3D,{startPoint:s,plane:o}=this.startInfo,r=this.helperObject3D.cornerPositions;if(r.length<4)return this.dragEnd();const a=e.ray.intersectPlane(o,new R.Vector3);if(!a||qP(a,this.camera.position))return;const l=new R.Vector3().addVectors(r[0],r[2]).divideScalar(2),{position:c,direction:d}=s,h=new R.Vector3().subVectors(r[1],r[0]),u=new R.Vector3().subVectors(r[3],r[0]),m=N=>{const G=new R.Vector3(0,0,0);if(!this.startInfo)return G;const _=(N==="ew"?h:u).clone(),Q=c.clone().projectOnVector(_),F=a.clone().projectOnVector(_),Z=l.clone().projectOnVector(_);if(F.equals(Q))return G;if(N==="ns"&&typeof this.startInfo.dragPointInCenterBottom!="boolean"){const ce=new R.Vector3().subVectors(F,Z),se=ce.x<0&&_.x>=0,we=ce.y<0&&_.y>=0,Ce=ce.z<0&&_.z>=0;this.startInfo.dragPointInCenterBottom=se||we||Ce}if(N==="ew"&&typeof this.startInfo.dragPointInCenterLeft!="boolean"){const ce=new R.Vector3().subVectors(F,Z),se=ce.x<0&&_.x>=0,we=ce.y<0&&_.y>=0,Ce=ce.z<0&&_.z>=0;this.startInfo.dragPointInCenterLeft=se||we||Ce}const X=new R.Vector3().subVectors(F,Q),$=X.length();return $>.3?(console.warn("offset.length() > 0.3, skipped",$),G):X},A=m("ew"),p=m("ns"),g=()=>{const N=A;this.helperObject3D.cornerPositions.forEach((G,_)=>{var Q;(Q=this.startInfo)!=null&&Q.dragPointInCenterLeft?(_===0||_===3)&&G.add(N):(_===1||_===2)&&G.add(N)})},v=()=>{const N=p;this.helperObject3D.cornerPositions.forEach((G,_)=>{var Q;(Q=this.startInfo)!=null&&Q.dragPointInCenterBottom?(_===0||_===1)&&G.add(N):(_===2||_===3)&&G.add(N)})};switch(d){case"ew":g();break;case"ns":v();break;case"nesw":case"nwse":g(),v()}const y=new R.Vector3().subVectors(r[1],r[0]).length()/h.length(),I=new R.Vector3().subVectors(r[3],r[0]).length()/u.length(),k=new R.Vector3(y,I,1),T=new E.Matrix4().scale(k);n.isCSS3DObjectPlus?n.applyScaleMatrix4(T):n.scale.applyMatrix4(T),s.position.copy(a);const P=new R.Vector3().addVectors(r[0],r[2]).divideScalar(2),V=new R.Vector3().subVectors(P,l),L=new E.Matrix4().setPosition(V);n.applyMatrix4(L),(W=this.helperObject3D.css3DInstance)==null||W.css3DObject.applyMatrix4(L),(q=this.helperObject3D.plane)==null||q.applyMatrix4(L),this.hooks.emit("applyObjectScale",{matrix:T}),this.hooks.emit("applyObjectPosition",{matrix:L}),this.render()}dragEnd(){this.isDragging&&(this.startInfo=void 0,this.isDragging=!1,this.hooks.emit("scaleEnd"),this.render())}}class A2 extends p2{constructor(...e){super(...e);f(this,"name","CSS3DScaleController");this.addHTMLEventListener()}addHTMLEventListener(){this.helperObject3D.points.forEach(e=>{if(!e)return;const n=e.point,s=a=>this.dragStart(a,e),o=this.dragging.bind(this),r=this.dragEnd.bind(this);n.addEventListener("dragstart",s),n.addEventListener("drag",o),n.addEventListener("dragend",r)})}}class v2 extends ls{constructor(...e){super(...e);f(this,"name","BoundingBoxController")}}class b2 extends Ju{constructor(t){super(t)}}class y2 extends ls{constructor(...e){super(...e);f(this,"name","ScaleController")}setScale(e){var l,c,d;let n=1,s=1,o=1;typeof e=="number"?(n=e,s=e,o=e):typeof e=="object"&&(n=(l=e.x)!=null?l:1,s=(c=e.y)!=null?c:1,o=(d=e.z)!=null?d:1);const r=new E.Vector3(n,s,o);this.hooks.emit("wantToScale",r)||(this.originObject3D.scale.copy(r),this.hooks.emit("setObjectScale",r),this.hooks.emit("scale",r),this.render())}}const aa="Object3DHelperPlugin",Lo=aa,w2=()=>{console.error(`${Lo} is disposed`)},C2=()=>{console.warn(`${Lo} is disabled`)},I2=()=>{console.error(`${Lo} is disabled`)};class Ku extends rs{constructor(e){super(e);f(this,"name",aa);f(this,"state",{visible:!0,enabled:!0,disposed:!1});f(this,"objectHelperMap",new Map);f(this,"css3DObjectParentMap",new Map);f(this,"css3DRender");this.five=e,this.css3DRender=new li(this.five.scene),console.warn("Object3DHelper: 使用此插件,需要在初始化five时,设置five参数: { backgroundAlpha: 0, backgroundColor: 0x000000 }"),Object.assign(window,{[`__${aa.toUpperCase()}_DEBUG__`]:this})}show(e){return U(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return U(this,null,function*(){this.setState({visible:!1},e)})}enable(e){this.setState({enabled:!0},e)}disable(e){this.setState({enabled:!1},e)}dispose(){this.setState({disposed:!0})}setState(e,n){if(this.state.disposed)return w2();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return I2();const s=H({},this.state);this.state=H(H({},this.state),e),e.disposed!==void 0&&e.disposed!==s.disposed&&e.disposed&&this.handleDispose(),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled),this.hooks.emit("stateChange",{state:this.state,prevState:s})}getObject3DHelper(e){return this.objectHelperMap.get(e)}addObject3DHelper(e,n={}){var m;if(!e)return console.error("Object3D is undefined");if(this.objectHelperMap.has(e)){console.warn(`Object3DHelperPlugin: object3D ${e.name} is already has helper`);return}const s=new m2,o=[],r=(m=this.five.getElement())==null?void 0:m.parentElement,a=this.five.camera,{moveHelper:l=!0,rotateHelper:c=!0,scaleHelper:d=!0,boundingBoxHelper:h=!1}=n,u=new Te.Subscribe;if(l){const A=new KP(e),p=this.getConfig(n.moveHelper),g=new Fi(this.five,l2,e,A,p,u);s.addControllers({moveController:g.helperController}),o.push(()=>g.dispose())}if(c){const A=this.getConfig(n.rotateHelper),p=new t2(e,H({container:r},A)),g=new Fi(this.five,g2,e,p,A,u);s.addControllers({rotateController:g.helperController}),o.push(()=>g.dispose())}if(h){const A=new a2(e),p=new Fi(this.five,v2,e,A,void 0,u);s.addControllers({boundingBoxController:p.helperController})}if(d)if(e.isCSS3DObjectPlus&&r){const A=new r2(e,r,a,this.five.scene),p=new Fi(this.five,A2,e,A,void 0,u);s.addControllers({scaleController:p.helperController}),o.push(()=>p.dispose()),hh(this.five).then(()=>{var g,v;if(e.isCSS3DObjectPlus){const y=e;if(!y||y.mode!=="front")return;const I=(g=this.css3DRender.behindModeCSS3DRenderer.wrapper)!=null?g:uh(this.five);I&&(this.css3DObjectParentMap.set(y,y.parent),y.removeFromParent(),this.css3DRender.behindModeCSS3DRenderer.setWrapper(I),(v=this.css3DRender.getBehindCSS3DObjectGroup())==null||v.add(y),this.css3DRender.render(this.five.camera))}})}else{const A=new b2(e),p=new Fi(this.five,y2,e,A,void 0,u);s.addControllers({scaleController:p.helperController}),o.push(()=>p.dispose())}return this.objectHelperMap.set(e,{helper:s,disposers:o}),s.controllers}removeObject3DHelper(e){if(!this.objectHelperMap.has(e))return;const{helper:n,disposers:s}=this.objectHelperMap.get(e);if(n){if(e.isCSS3DObjectPlus){const o=e,r=this.css3DObjectParentMap.get(o);r&&r.add(o),this.css3DRender.render(this.five.camera)}this.objectHelperMap.delete(e),n.dispose(),s==null||s.forEach(o=>o==null?void 0:o())}}handleEnable(e,n=!0){e?(this.everyHelperDo(s=>s.enable()),this.hooks.emit("enable",{userAction:n})):(this.everyHelperDo(s=>s.disable()),this.hooks.emit("disable",{userAction:n})),this.state.enabled=e}handleVisible(e,n=!0){e?(this.everyHelperDo(s=>s.show()),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:n}))):(this.everyHelperDo(s=>s.hide()),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:n}))),this.state.visible=e}handleDispose(){this.objectHelperMap.forEach(({helper:e,disposers:n})=>{e.dispose(),n==null||n.forEach(s=>s==null?void 0:s())})}everyHelperDo(e){this.objectHelperMap.forEach(({helper:n,disposers:s})=>{n&&e(n)})}actionIfStateIsEnabled(e,n){if(this.state.enabled)return e();n!=null&&n.warnLog&&C2()}getConfig(e){if(e&&typeof e!="boolean"&&e.enable)return e}}const P2=i=>new Ku(i),E2=`
|
|
673
673
|
varying vec2 vUv;
|
|
674
674
|
void main() {
|
|
675
675
|
vUv = uv;
|