@realsee/dnalogel 2.6.7-dev.1 → 2.6.7-dev.2
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/PanoTagPlugin/controller/TagComputer.d.ts +2 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.js +25 -12
- package/dist/index.umd.js +1 -1
- package/dist/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +1 -0
- package/dist/shared-utils/Object3DHelper/Helper/BoundingBoxHelper.d.ts +2 -0
- package/docs/assets/search.js +1 -1
- package/docs/classes/CSS3DRender.html +31 -31
- package/docs/classes/CruisePluginController.html +24 -24
- package/docs/classes/Magnifier.html +20 -20
- package/docs/classes/ModelRoomLabelController.html +11 -11
- package/docs/classes/Object3DHelperController.html +24 -24
- package/docs/classes/PaintBrush.html +15 -15
- package/docs/classes/PanoMeasurePluginLine.html +23 -23
- package/docs/classes/PanoMeasurePluginModel.html +22 -22
- package/docs/classes/PanoMeasurePluginPoint.html +14 -14
- package/docs/classes/PanoMeasurePluginPolyline.html +26 -26
- package/docs/classes/PanoTagPluginController.html +123 -51
- package/docs/classes/Util.BetterTween.html +8 -8
- package/docs/classes/Util.FivePointSelector.html +12 -12
- package/docs/classes/Util.Interval.html +12 -12
- package/docs/classes/Util.Magnifier.html +17 -17
- package/docs/classes/Util.PointDomHelper.html +11 -11
- package/docs/classes/Util.PointHelper.html +11 -11
- package/docs/classes/Util.Rectangle.html +13 -13
- package/docs/enums/CameraMovementEffect.html +7 -7
- package/docs/enums/ContentType.html +18 -18
- package/docs/enums/DIRECTION.html +9 -9
- package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
- package/docs/enums/DimensionType.html +7 -7
- package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
- package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
- package/docs/enums/PaintBrushTypeEnum.html +8 -8
- package/docs/enums/PointType.html +7 -7
- package/docs/enums/Rotation.html +8 -8
- package/docs/functions/CSS3DRenderPlugin.html +4 -4
- package/docs/functions/CameraMovementPlugin.html +4 -4
- package/docs/functions/CruisePlugin.html +4 -4
- package/docs/functions/GuideLinePlugin.html +5 -5
- package/docs/functions/ItemLabelPlugin.html +4 -4
- package/docs/functions/MapviewFloorplanPlugin.html +4 -4
- package/docs/functions/ModelChassisCompassPlugin.html +4 -4
- package/docs/functions/ModelEntryDoorGuidePlugin.html +4 -4
- package/docs/functions/ModelFloorplanPlugin.html +4 -4
- package/docs/functions/ModelItemLabelPlugin.html +4 -4
- package/docs/functions/ModelRoomLabelPlugin.html +4 -4
- package/docs/functions/ModelTVVideoPlugin.html +4 -4
- package/docs/functions/ModelViewPlugin.html +4 -4
- package/docs/functions/Object3DHelperPlugin.html +4 -4
- package/docs/functions/PanoCompassPlugin.html +4 -4
- package/docs/functions/PanoCursorRaycasterPlugin.html +4 -4
- package/docs/functions/PanoDoorLabelPlugin.html +4 -4
- package/docs/functions/PanoFloorplanRadarPlugin.html +4 -4
- package/docs/functions/PanoMeasurePlugin.html +4 -4
- package/docs/functions/PanoRulerPlugin.html +4 -4
- package/docs/functions/PanoRulerProPlugin.html +4 -4
- package/docs/functions/PanoSpatialTagPlugin.html +4 -4
- package/docs/functions/PanoTagPlugin.html +4 -4
- package/docs/functions/TopviewFloorplanPlugin.html +4 -4
- package/docs/functions/Util.getCoordsFromClient.html +5 -5
- package/docs/functions/Util.getCoordsFromElement.html +5 -5
- package/docs/functions/Util.getFrameTime.html +5 -5
- package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
- package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
- package/docs/functions/Util.isNil.html +5 -5
- package/docs/functions/Util.nextFrame.html +5 -5
- package/docs/functions/Util.notNil.html +5 -5
- package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
- package/docs/functions/Util.tweenProgress.html +5 -5
- package/docs/functions/pluginFlag.html +5 -5
- package/docs/index.html +4 -4
- package/docs/interfaces/AddTagConfig.html +6 -6
- package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
- package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
- package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
- package/docs/interfaces/EventMap.html +15 -15
- package/docs/interfaces/FloorplanBounding.html +8 -8
- package/docs/interfaces/FloorplanData.html +10 -10
- package/docs/interfaces/FloorplanEntrance.html +11 -11
- package/docs/interfaces/FloorplanExtraObject.html +10 -10
- package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
- package/docs/interfaces/FloorplanFloorData.html +9 -9
- package/docs/interfaces/FloorplanImagePosition.html +7 -7
- package/docs/interfaces/FloorplanObserver.html +9 -9
- package/docs/interfaces/FloorplanOutlineItem.html +9 -9
- package/docs/interfaces/FloorplanPosition.html +7 -7
- package/docs/interfaces/FloorplanRoomItem.html +13 -13
- package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
- package/docs/interfaces/FloorplanServerBounding.html +8 -8
- package/docs/interfaces/FloorplanServerComputedData.html +10 -10
- package/docs/interfaces/FloorplanServerData.html +7 -7
- package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
- package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
- package/docs/interfaces/FloorplanServerEntrance.html +11 -11
- package/docs/interfaces/FloorplanServerFloorData.html +9 -9
- package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
- package/docs/interfaces/FloorplanServerObserver.html +9 -9
- package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
- package/docs/interfaces/FloorplanServerPosition.html +7 -7
- package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
- package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
- package/docs/interfaces/HelperOffset.html +8 -8
- package/docs/interfaces/ItemLabelPluginData.html +6 -6
- package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
- package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
- package/docs/interfaces/MinMax.html +7 -7
- package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
- package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
- package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
- package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
- package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
- package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
- package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
- package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
- package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
- package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
- package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
- package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
- package/docs/interfaces/ModelViewPluginExportType.html +11 -11
- package/docs/interfaces/Object3DHelperState.html +8 -8
- package/docs/interfaces/ObjectHelperControllers.html +9 -9
- package/docs/interfaces/PaintBrushAction.html +12 -12
- package/docs/interfaces/PaintBrushConfigs.html +12 -12
- package/docs/interfaces/PaintBrushState.html +10 -10
- package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
- package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +5 -5
- package/docs/interfaces/PanoMeasureParameterType.html +12 -12
- package/docs/interfaces/PanoMeasurePluginLineJson.html +8 -8
- package/docs/interfaces/PanoMeasurePluginOpenParameter.html +7 -7
- package/docs/interfaces/PanoMeasurePluginPointJson.html +7 -7
- package/docs/interfaces/PanoMeasurePluginPolylineJson.html +8 -8
- package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
- package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
- package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
- package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
- package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
- package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
- package/docs/interfaces/PanoRulerProPluginState.html +8 -8
- package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +5 -5
- package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +5 -5
- package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
- package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
- package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
- package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
- package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
- package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
- package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
- package/docs/interfaces/Point.html +8 -8
- package/docs/interfaces/Room.html +9 -9
- package/docs/interfaces/RoomInfo.html +7 -7
- package/docs/interfaces/RoomLabel.html +14 -14
- package/docs/interfaces/RoomRules.html +5 -5
- package/docs/interfaces/Rooms.html +5 -5
- package/docs/interfaces/Scissor.html +9 -9
- package/docs/interfaces/State.html +8 -8
- package/docs/interfaces/TagCache.html +12 -12
- package/docs/interfaces/TagConfig.html +10 -10
- package/docs/interfaces/TagIconUrl.html +9 -9
- package/docs/interfaces/Tags.html +9 -9
- package/docs/interfaces/TemporaryState.html +6 -6
- package/docs/interfaces/Util.MagnifierParameter.html +11 -11
- package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
- package/docs/modules/Util.html +5 -5
- package/docs/modules.html +4 -4
- package/docs/types/ArrayPosition.html +5 -5
- package/docs/types/AudioAppearance.html +5 -5
- package/docs/types/AudioTagTypeConfigKey.html +5 -5
- package/docs/types/CSS3DRenderExportType.html +5 -5
- package/docs/types/CSS3DRenderPluginExportType.html +5 -5
- package/docs/types/CSS3DRenderPluginParameterType.html +5 -5
- package/docs/types/ClassFunctionParameters.html +5 -5
- package/docs/types/Color.html +5 -5
- package/docs/types/ContentTypeConfigKey.html +5 -5
- package/docs/types/ContentTypeConfigKeySplit.html +5 -5
- package/docs/types/ContentTypeMap.html +5 -5
- package/docs/types/Create3DDomContainerReturnType.html +5 -5
- package/docs/types/Create3DElementReturnType.html +5 -5
- package/docs/types/CruisePluginExportType.html +5 -5
- package/docs/types/Direction-1.html +5 -5
- package/docs/types/Direction4.html +5 -5
- package/docs/types/FloorplanRuleLabels.html +5 -5
- package/docs/types/FloorplanServerRuleLabels.html +5 -5
- package/docs/types/GuideLinePluginExportType.html +5 -5
- package/docs/types/HelperEventMap.html +5 -5
- package/docs/types/LoadTagConfig.html +5 -5
- package/docs/types/MapviewFloorplanPluginParameterType.html +5 -5
- package/docs/types/MapviewFloorplanPluginReturnType.html +5 -5
- package/docs/types/MediaData.html +5 -5
- package/docs/types/MediaStore.html +5 -5
- package/docs/types/ModelElement.html +5 -5
- package/docs/types/ModelEntryDoorGuidePluginParameterType.html +5 -5
- package/docs/types/ModelFloorplanPluginParameterType.html +5 -5
- package/docs/types/ModelFloorplanPluginReturnType.html +5 -5
- package/docs/types/ModelRoomLabelPluginParameters.html +5 -5
- package/docs/types/ModelRoomLabelPluginReturnType.html +5 -5
- package/docs/types/MoveArgs.html +5 -5
- package/docs/types/MoveOpts.html +5 -5
- package/docs/types/Object3DHelperEventMap.html +5 -5
- package/docs/types/ObjectFit.html +5 -5
- package/docs/types/PaintBrushEventMap.html +5 -5
- package/docs/types/PanoCompassPluginData.html +5 -5
- package/docs/types/PanoCompassPluginExportType.html +5 -5
- package/docs/types/PanoCompassPluginParameterType.html +5 -5
- package/docs/types/PanoFloorplanRadarPluginParameterType.html +5 -5
- package/docs/types/PanoFloorplanRadarPluginReturnType.html +5 -5
- package/docs/types/PanoIndex.html +5 -5
- package/docs/types/PanoMeasurePluginEvent.html +5 -5
- package/docs/types/PanoMeasureReturnType.html +5 -5
- package/docs/types/PanoSpatialTagPluginId.html +5 -5
- package/docs/types/PanoTagPluginExportInterface.html +5 -5
- package/docs/types/PanoTagPluginParamsInterface.html +5 -5
- package/docs/types/PlaneTag.html +5 -5
- package/docs/types/PlaneTagElement.html +5 -5
- package/docs/types/Point2DElement.html +5 -5
- package/docs/types/Point2DTag.html +5 -5
- package/docs/types/Point3DElement.html +5 -5
- package/docs/types/Point3DTag.html +5 -5
- package/docs/types/PointTag.html +5 -5
- package/docs/types/PointTagElement.html +5 -5
- package/docs/types/Position.html +5 -5
- package/docs/types/RotateArgs.html +5 -5
- package/docs/types/RotateOpts.html +5 -5
- package/docs/types/RuleLabelsKey.html +5 -5
- package/docs/types/RuleLabelsValue.html +5 -5
- package/docs/types/StickType.html +5 -5
- package/docs/types/Tag.html +5 -5
- package/docs/types/Tag2D.html +5 -5
- package/docs/types/Tag3D.html +5 -5
- package/docs/types/TagContentType.html +5 -5
- package/docs/types/TagDimensionType.html +5 -5
- package/docs/types/TagElement.html +5 -5
- package/docs/types/TagEvents.html +5 -5
- package/docs/types/TagGLTFObject.html +5 -5
- package/docs/types/TagHooks.html +5 -5
- package/docs/types/TagIconSize.html +5 -5
- package/docs/types/TagId.html +5 -5
- package/docs/types/TagPointType.html +5 -5
- package/docs/types/TopviewFloorplanPluginParameterType.html +5 -5
- package/docs/types/TopviewFloorplanPluginReturnType.html +5 -5
- package/docs/types/WorkCode.html +5 -5
- package/docs/variables/FLOOR_TYPE_MAP.html +5 -5
- package/docs/variables/PLUGIN.html +5 -5
- package/docs/variables/ROOM_FETILE_TYPE_MAP.html +5 -5
- package/docs/variables/ROOM_TYPE_MAP.html +5 -5
- package/docs/variables/VERSION.html +5 -5
- package/docs/variables/itemLabelPluginServerParams.html +5 -5
- package/docs/variables/modelItemLabelPluginServerParams.html +5 -5
- package/docs/variables/modelRoomLabelPluginServerParams.html +5 -5
- package/libs/PanoTagPlugin/controller/TagComputer.d.ts +2 -1
- package/libs/PanoTagPlugin/controller/TagComputer.js +26 -22
- package/libs/PanoTagPlugin/controller/index.js +20 -20
- package/libs/shared-utils/Object3DHelper/Base/BaseController.js +38 -38
- package/libs/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +1 -0
- package/libs/shared-utils/Object3DHelper/Base/BaseHelper.js +26 -23
- package/libs/shared-utils/Object3DHelper/Helper/BoundingBoxHelper.d.ts +2 -0
- package/libs/shared-utils/Object3DHelper/Helper/BoundingBoxHelper.js +28 -22
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -556,4 +556,4 @@ void main() {
|
|
|
556
556
|
float match = 1.0 - uv.x;
|
|
557
557
|
gl_FragColor = vec4(1.0,1.0,1.0,match);
|
|
558
558
|
}
|
|
559
|
-
`;function Wg(){const i=new k.PlaneGeometry(.4,.4),t=Hg,e=new k.TextureLoader().load(t);e.encoding=k.sRGBEncoding;const n=new k.MeshBasicMaterial({map:e,transparent:!0,depthTest:!1});return new k.Mesh(i,n)}function Ng(){const i=new k.CurvePath;i.add(new k.LineCurve3(new k.Vector3(0,0,0),new k.Vector3(0,0,.1)));const t=new k.TubeGeometry(i,8,.003),e=new k.ShaderMaterial({vertexShader:Fg,fragmentShader:Gg,depthTest:!1,transparent:!0});return new k.Mesh(t,e)}function _g(){const i=new k.SphereGeometry(.01,20,20),t=new k.MeshBasicMaterial({color:10349931,depthTest:!1,transparent:!0,side:k.DoubleSide}),e=new k.Mesh(i,t);return e.position.set(0,0,.1),e}class dl extends k.Object3D{constructor(){super();m(this,"planeMesh");m(this,"lineMesh");m(this,"ballMesh");this.planeMesh=Wg(),this.lineMesh=Ng(),this.ballMesh=_g(),this.add(this.planeMesh,this.lineMesh,this.ballMesh)}updateWithIntersect(e){if(!e.face)return;const n=new k.Vector3().addVectors(e.point,e.face.normal);this.position.copy(e.point),this.lookAt(n)}dispose(){var e;(e=this.planeMesh.material.map)==null||e.dispose()}}class ul{constructor(t){m(this,"five");m(this,"contentElement",document.createElement("div"));m(this,"animeIns");m(this,"container");m(this,"css3DObject");m(this,"disposeCss3DObject");m(this,"state",{enabled:!1});this.five=t;const n=.4/2,s=en(t).create3DDomContainer([[-n,n,0],[-n,-n,0],[n,-n,0],[n,n,0]].map(r=>new k.Vector3().fromArray(r)));if(s){const{container:r,dispose:a,css3DObject:l}=s;this.container=r,this.css3DObject=l,this.disposeCss3DObject=a}this.contentElement.style.width="100%",this.contentElement.style.height="100%",this.contentElement.style.backgroundImage=`url(${Ha})`,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 k.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 po({progress:0}).to({progress:[1,0]}).duration(500).easing(ii.Easing.Quadratic.InOut).onUpdate(({progress:e})=>{}).play()}dispose(){var t;(t=this.disposeCss3DObject)==null||t.call(this)}}class Xg{constructor(t,e){m(this,"five");m(this,"hooks",new be.Subscribe);m(this,"magnifier",null);m(this,"pointHelper",null);m(this,"pointDomHelper",null);m(this,"contentDom",document.createElement("div"));m(this,"state",{enabled:!1});m(this,"group",new k.Group);this.five=t,this.magnifier=(e==null?void 0:e.magnifier)===void 0?new ll(t,{dragEnabled:!0}):null,this.pointHelper=(e==null?void 0:e.pointHelper)===void 0?new dl:null,this.pointDomHelper=(e==null?void 0:e.pointDomHelper)===void 0?new ul(t):null,this.group.name="five-point-selector",this.five.scene.add(this.group),this.contentDom.classList.add("five-point-selector-content"),this.contentDom.style.position="absolute",this.contentDom.style.top="0",this.contentDom.style.left="0",this.contentDom.style.width="100%",this.contentDom.style.height="100%",this.contentDom.style.pointerEvents="none"}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}updateWithIntersect(t){var s;this.hooks.emit("pointChanged",{panoIndex:this.five.getCurrentState().panoIndex,position:t.point.toArray(),normal:(s=t.face)==null?void 0:s.normal.toArray()});const e=this.magnifier;e&&e.renderWithPoint(t.point);const n=this.pointHelper;n&&n.updateWithIntersect(t);const o=this.pointDomHelper;o&&o.updateWithIntersect(t),this.five.needsRender=!0}}const Yg=Object.freeze(Object.defineProperty({__proto__:null,Interval:Zi,Rectangle:jg,Magnifier:ll,getCoordsFromClient:Qg,getCoordsFromElement:cl,getRaycasterFromFivePointer:Rg,getIntersectFromRelativePosition:Og,PointHelper:dl,PointDomHelper:ul,FivePointSelector:Xg,isNil:Gm,notNil:Ne,BetterTween:po,tweenProgress:Sa,nextFrame:di,requestAnimationFrameInterval:ui,getFrameTime:cf},Symbol.toStringTag,{value:"Module"}));function Ug(i){le(i,"svelte-8mby9k",".svelte-8mby9k.svelte-8mby9k{box-sizing:border-box}.marketing.svelte-8mby9k.svelte-8mby9k{transform:translateY(-100%)}.content.svelte-8mby9k .headerImage.svelte-8mby9k{position:absolute;width:100%;top:0.25rem;transform:translateY(-100%);border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.line.svelte-8mby9k.svelte-8mby9k{position:absolute;height:2.0625rem;width:0.0625rem;left:50%;transform:translateX(-50%);background-color:white;bottom:0;transform-origin:bottom;transition:all 500ms}.content.svelte-8mby9k.svelte-8mby9k{background-color:white;position:relative;display:flex;flex-direction:column;min-width:11.125rem;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:all 500ms}.title.svelte-8mby9k.svelte-8mby9k{position:absolute;background-color:white;border-radius:0.25rem;width:100%;top:0.5rem;padding-left:0.75rem;padding-right:0.75rem}.title.svelte-8mby9k .text.svelte-8mby9k{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.75rem;font-weight:bold;line-height:1.125rem;color:#000}.footer.svelte-8mby9k.svelte-8mby9k{position:relative;padding-left:0.75rem;padding-right:0.75rem;width:100%;height:1.375rem;display:flex;align-items:center}.footer.svelte-8mby9k .goto-button.svelte-8mby9k{flex-shrink:0;white-space:nowrap;background-image:linear-gradient(to right, rgba(87, 144, 253, 1) 0, rgba(42, 114, 254, 1) 100%);color:#fff;font-size:0.625rem;border-radius:0.875rem;font-weight:bold;padding-left:0.5rem;padding-right:0.5rem;height:1.25rem;margin-left:auto;display:flex;align-items:center}.footer.svelte-8mby9k .goto-icon.svelte-8mby9k::after{content:'';display:inline-block;width:0.75rem;height:0.75rem;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAeFBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////GqOSsAAAAJ3RSTlMAFNO2pYt4bErz8uP6ysawgVtBPDcR5C4s2L6ZmJBzZGJXUyEeDws/0G2zAAAAkklEQVQ4y+3TRw6DMBAF0OAeJ3QCpCe0uf8NwRILLBYfiS1/aT3JoymnI+sERZ5VCH0iVto3QDfBLmeSSMUTogRV9bBEpJAKaYpGijn13aTSLeraeG9D0NZFZv4/rRL5FDHnITlllqjv6tykWsmX4JHr05y7j6oFKq2P8He48B0tAM0EY0EDxquClw6vLz6EI35GmwwSZpe+WOgAAAAASUVORK5CYII=);background-size:100% auto;background-repeat:no-repeat}.price.svelte-8mby9k.svelte-8mby9k{flex-shrink:0;margin-right:0.75rem;white-space:nowrap;color:#ff6600;display:flex;align-items:baseline}.price.svelte-8mby9k .value.svelte-8mby9k{position:relative;top:0.0625rem;font-size:1.125rem;line-height:1.375rem;font-family:TG-TYPE, PingFangSC, Segoe UI, Rototo, sans-serif;letter-spacing:0rem}.price.svelte-8mby9k .unit.svelte-8mby9k{padding-left:0.125rem;font-size:0.625rem}.tag.svelte-8mby9k.svelte-8mby9k{position:relative;background-color:white;display:flex;width:-moz-max-content;width:max-content;padding-left:0.75rem;padding-right:0.75rem;min-height:1.75rem}.tag.svelte-8mby9k .base-tag.svelte-8mby9k{height:1rem;margin-top:1.375rem;margin-bottom:0.5rem;margin-right:0.25rem;font-size:0.625rem;line-height:0.875rem;padding:0.0625rem 0.25rem;border-radius:0.125rem;overflow:hidden}.tag.svelte-8mby9k .primary-tag.svelte-8mby9k{background:#e5eefe;color:#0055ff}.tag.svelte-8mby9k .secondary-tag.svelte-8mby9k{background:rgba(255, 102, 0, 0.08);color:rgba(255, 102, 0, 1)}.unfolded.svelte-8mby9k .line.svelte-8mby9k{transform:translateX(-50%) scale(1, 1)}.folded.svelte-8mby9k .line.svelte-8mby9k{transform:translateX(-50%) scale(1, 0);transition-timing-function:ease-in}.unfolded.svelte-8mby9k .content.svelte-8mby9k{opacity:1}.folded.svelte-8mby9k .content.svelte-8mby9k{opacity:0;transform:translateY(0.425rem);transition-timing-function:ease-in}")}function Ir(i,t,e){const n=i.slice();return n[0]=t[e],n}function kr(i,t,e){const n=i.slice();return n[0]=t[e],n}function xr(i){let t,e=i[0]+"",n;return{c(){t=j("div"),n=Pe(e),b(t,"class","base-tag primary-tag svelte-8mby9k")},m(o,s){z(o,t,s),Q(t,n)},p(o,s){s&4&&e!==(e=o[0]+"")&&xe(n,e)},d(o){o&&T(t)}}}function Dr(i){let t,e=i[0]&&xr(i);return{c(){e&&e.c(),t=fe()},m(n,o){e&&e.m(n,o),z(n,t,o)},p(n,o){n[0]?e?e.p(n,o):(e=xr(n),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},d(n){e&&e.d(n),n&&T(t)}}}function Lr(i){let t,e=i[0]+"",n;return{c(){t=j("div"),n=Pe(e),b(t,"class","base-tag secondary-tag svelte-8mby9k")},m(o,s){z(o,t,s),Q(t,n)},p(o,s){s&4&&e!==(e=o[0]+"")&&xe(n,e)},d(o){o&&T(t)}}}function Sr(i){let t,e=i[0]&&Lr(i);return{c(){e&&e.c(),t=fe()},m(n,o){e&&e.m(n,o),z(n,t,o)},p(n,o){n[0]?e?e.p(n,o):(e=Lr(n),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},d(n){e&&e.d(n),n&&T(t)}}}function Mr(i){let t,e,n=i[2].price.value+"",o,s,r=i[2].price.unit&&Tr(i);return{c(){t=j("div"),e=j("span"),o=Pe(n),s=ee(),r&&r.c(),b(e,"class","value svelte-8mby9k"),b(t,"class","price svelte-8mby9k")},m(a,l){z(a,t,l),Q(t,e),Q(e,o),Q(t,s),r&&r.m(t,null)},p(a,l){l&4&&n!==(n=a[2].price.value+"")&&xe(o,n),a[2].price.unit?r?r.p(a,l):(r=Tr(a),r.c(),r.m(t,null)):r&&(r.d(1),r=null)},d(a){a&&T(t),r&&r.d()}}}function Tr(i){let t,e=i[2].price.unit+"",n;return{c(){t=j("span"),n=Pe(e),b(t,"class","unit svelte-8mby9k")},m(o,s){z(o,t,s),Q(t,n)},p(o,s){s&4&&e!==(e=o[2].price.unit+"")&&xe(n,e)},d(o){o&&T(t)}}}function zr(i){let t,e=i[2].highlightText+"",n;return{c(){t=j("div"),n=Pe(e),b(t,"class","goto-button goto-icon svelte-8mby9k")},m(o,s){z(o,t,s),Q(t,n)},p(o,s){s&4&&e!==(e=o[2].highlightText+"")&&xe(n,e)},d(o){o&&T(t)}}}function Jg(i){var Y,V;let t,e,n,o,s,r,a,l,c,d,u,f,h,p,A=i[2].title+"",g,v,w,y=Ne((Y=i[2].price)==null?void 0:Y.value)&&((V=i[2].price)==null?void 0:V.value)!=="",C,I;e=new $e({props:{visible:i[1],outDelay:500,left:61,bottom:87,blurRadius:150,spreadRadius:75}});let P=i[2].brandTags||[],L=[];for(let E=0;E<P.length;E+=1)L[E]=Dr(kr(i,P,E));let D=i[2].tags||[],B=[];for(let E=0;E<D.length;E+=1)B[E]=Sr(Ir(i,D,E));let W=y&&Mr(i),F=i[2].highlightText&&zr(i);return{c(){var E;t=j("div"),$(e.$$.fragment),n=ee(),o=j("div"),s=ee(),r=j("div"),a=j("img"),c=ee(),d=j("div");for(let R=0;R<L.length;R+=1)L[R].c();u=ee();for(let R=0;R<B.length;R+=1)B[R].c();f=ee(),h=j("div"),p=j("div"),g=Pe(A),v=ee(),w=j("div"),W&&W.c(),C=ee(),F&&F.c(),b(o,"class","line svelte-8mby9k"),M(o,"transition-delay",i[1]?jn+"ms":Vn+jr-Br-40+"ms"),b(a,"class","headerImage svelte-8mby9k"),_e(a.src,l=i[2].headerPictureUrl)||b(a,"src",l),b(a,"alt",""),b(d,"class","tag svelte-8mby9k"),b(p,"class","text svelte-8mby9k"),b(h,"class","title svelte-8mby9k"),b(w,"class","footer svelte-8mby9k"),M(w,"height",Ne((E=i[2].price)==null?void 0:E.value)&&i[2].highlightText?void 0:"1rem"),b(r,"class","content svelte-8mby9k"),M(r,"transition-delay",i[1]?jn+Vn+"ms":"0ms"),b(t,"class","marketing svelte-8mby9k"),te(t,"unfolded",i[1]),te(t,"folded",i[3])},m(E,R){z(E,t,R),q(e,t,null),Q(t,n),Q(t,o),Q(t,s),Q(t,r),Q(r,a),Q(r,c),Q(r,d);for(let H=0;H<L.length;H+=1)L[H].m(d,null);Q(d,u);for(let H=0;H<B.length;H+=1)B[H].m(d,null);Q(r,f),Q(r,h),Q(h,p),Q(p,g),Q(r,v),Q(r,w),W&&W.m(w,null),Q(w,C),F&&F.m(w,null),I=!0},p(E,[R]){var N,U,_;const H={};if(R&2&&(H.visible=E[1]),e.$set(H),R&2&&M(o,"transition-delay",E[1]?jn+"ms":Vn+jr-Br-40+"ms"),(!I||R&4&&!_e(a.src,l=E[2].headerPictureUrl))&&b(a,"src",l),R&4){P=E[2].brandTags||[];let J;for(J=0;J<P.length;J+=1){const de=kr(E,P,J);L[J]?L[J].p(de,R):(L[J]=Dr(de),L[J].c(),L[J].m(d,u))}for(;J<L.length;J+=1)L[J].d(1);L.length=P.length}if(R&4){D=E[2].tags||[];let J;for(J=0;J<D.length;J+=1){const de=Ir(E,D,J);B[J]?B[J].p(de,R):(B[J]=Sr(de),B[J].c(),B[J].m(d,null))}for(;J<B.length;J+=1)B[J].d(1);B.length=D.length}(!I||R&4)&&A!==(A=E[2].title+"")&&xe(g,A),R&4&&(y=Ne((N=E[2].price)==null?void 0:N.value)&&((U=E[2].price)==null?void 0:U.value)!==""),y?W?W.p(E,R):(W=Mr(E),W.c(),W.m(w,C)):W&&(W.d(1),W=null),E[2].highlightText?F?F.p(E,R):(F=zr(E),F.c(),F.m(w,null)):F&&(F.d(1),F=null),R&4&&M(w,"height",Ne((_=E[2].price)==null?void 0:_.value)&&E[2].highlightText?void 0:"1rem"),R&2&&M(r,"transition-delay",E[1]?jn+Vn+"ms":"0ms"),(!I||R&2)&&te(t,"unfolded",E[1]),(!I||R&8)&&te(t,"folded",E[3])},i(E){I||(x(e.$$.fragment,E),I=!0)},o(E){S(e.$$.fragment,E),I=!1},d(E){E&&T(t),K(e),dt(L,E),dt(B,E),W&&W.d(),F&&F.d()}}}const jn=400,Br=500,Vn=180,jr=500;function Zg(i,t,e){let n,o,s,{tag:r}=t;return i.$$set=a=>{"tag"in a&&e(0,r=a.tag)},i.$$.update=()=>{var a,l;i.$$.dirty&1&&e(1,n=(l=(a=r.state)==null?void 0:a.unfolded)!=null?l:!1),i.$$.dirty&2&&e(3,o=!n),i.$$.dirty&1&&e(2,s=r.data)},[r,n,s,o]}class qg extends oe{constructor(t){super(),ie(this,t,Zg,Jg,ne,{tag:0},Ug)}}const Kt="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=",fn={};var ni=(i=>(i.Default="default",i.GetAudioDuration="getAudioDuration",i.PlayAudio="playAudio",i))(ni||{});function fl(i,t){const e=(t==null?void 0:t.namespace)||"default",n=fn[e]||(fn[e]=[]);let o=n.find(s=>!s.realSrc||s.realSrc===Kt);return o||(console.warn("\u672A\u627E\u5230\u7F13\u5B58\u97F3\u9891\uFF0C\u5DF2\u65B0\u5EFA",fn),o=new bo(Kt),n.push(o)),i&&(o.src=i),o}function Kg(i){return X(this,null,function*(){const t=(()=>i instanceof bo?i:fl(i,{namespace:"getAudioDuration"}))(),e=yield new Promise(n=>{t.duration?t.isBlankAudio?n(0):n(t.duration):(t.addEventListener("loadedmetadata",()=>{t.isBlankAudio?n(0):n(t.duration)}),t.addEventListener("canplaythrough",()=>{t.isBlankAudio?n(0):n(t.duration)}))});return typeof i=="string"&&t.clear(),e})}function Vr(i,t){const e=(t==null?void 0:t.namespace)||"default",n=fn[e]||(fn[e]=[]),o=i-n.length;if(!(o<=0))for(let s=0;s<o;s++)n.push(new bo(Kt))}class bo extends Audio{constructor(e){super(e);m(this,"preload","auto");m(this,"realSrc","");m(this,"inited",!1);m(this,"removeDocumentEventListener");this.realSrc=e!=null?e:"",super.addEventListener("ended",()=>{this.src=""});const n=()=>$g(this);document.addEventListener("click",n),document.addEventListener("touchend",n),this.removeDocumentEventListener=()=>{document.removeEventListener("click",n),document.removeEventListener("touchend",n)}}get isBlankAudio(){return this.realSrc===Kt||!this.realSrc}get src(){return super.src}set src(e){super.src=e,this.realSrc=e}clear(){this.src=Kt,this.currentTime=0}}function $g(i){!i||i.inited||(i.src&&(i.inited=!0,i.removeDocumentEventListener()),i.src===Kt&&i.play())}class e0 extends Audio{constructor(e){super();m(this,"sharedAudioSrc");m(this,"sharedAudioPaused",!0);m(this,"sharedAudioCurrentTime",0);m(this,"tryplaying",!1);m(this,"audioInstance");m(this,"eventListenerDisposer");this.sharedAudioSrc=e}get paused(){var e;return(e=this.sharedAudioPaused)!=null?e:!0}get currentTime(){return this.sharedAudioCurrentTime}play(){return X(this,null,function*(){var e,n,o;this.tryplaying||(this.tryplaying=!0,(!this.audioInstance||((e=this.audioInstance)==null?void 0:e.realSrc)!==this.sharedAudioSrc)&&(this.audioInstance=fl(this.sharedAudioSrc,{namespace:ni.PlayAudio})),this.audioInstance.currentTime=(n=this.currentTime)!=null?n:0,(o=this.eventListenerDisposer)==null||o.call(this),this.eventListenerDisposer=this.addEventListeners(),this.audioInstance.play().then(()=>{this.sharedAudioPaused=!1}).catch(s=>{this.pause(),console.warn(s)}).finally(()=>{this.tryplaying=!1}))})}pause(){!this.audioInstance||this.paused||(this.sharedAudioPaused=!0,this.audioInstance.addEventListener("pause",()=>{var e;(e=this.eventListenerDisposer)==null||e.call(this)},{once:!0}),this.audioInstance.pause())}dispose(){this.clear(),this.audioInstance=void 0}clear(){var e;(e=this.audioInstance)==null||e.clear()}addEventListeners(){const e=this.audioInstance;if(!e)return;const n=f=>{var h;this.sharedAudioCurrentTime=e.currentTime,(h=this.ontimeupdate)==null||h.call(this,f)},o=f=>{var h;return(h=this.onplay)==null?void 0:h.call(this,f)},s=f=>{var h;(h=this.onpause)==null||h.call(this,f),this.clear()},r=f=>{var h;(h=this.onended)==null||h.call(this,f),this.sharedAudioCurrentTime=0},a=f=>{var h;return(h=this.onerror)==null?void 0:h.call(this,f)},l=f=>{var h;return(h=this.oncanplay)==null?void 0:h.call(this,f)},c=f=>{var h;return(h=this.oncanplaythrough)==null?void 0:h.call(this,f)},d=f=>{var h;return(h=this.onloadeddata)==null?void 0:h.call(this,f)},u=f=>{var h;return(h=this.onloadedmetadata)==null?void 0:h.call(this,f)};return e.addEventListener("timeupdate",n),e.addEventListener("play",o),e.addEventListener("pause",s),e.addEventListener("ended",r),e.addEventListener("error",a),e.addEventListener("canplay",l),e.addEventListener("canplaythrough",c),e.addEventListener("loadeddata",d),e.addEventListener("loadedmetadata",u),()=>{e.removeEventListener("timeupdate",n),e.removeEventListener("play",o),e.removeEventListener("pause",s),e.removeEventListener("ended",r),e.removeEventListener("error",a),e.removeEventListener("canplay",l),e.removeEventListener("canplaythrough",c),e.removeEventListener("loadeddata",d),e.removeEventListener("loadedmetadata",u)}}}function t0(i){le(i,"svelte-13e7hxv",".audio.svelte-13e7hxv{pointer-events:auto;cursor:pointer;width:100%;height:100%}")}function n0(i){let t,e,n,o;const s=i[8].default,r=ot(s,i,i[7],null);return{c(){t=j("div"),r&&r.c(),b(t,"class","audio svelte-13e7hxv"),b(t,"style",i[0])},m(a,l){z(a,t,l),r&&r.m(t,null),e=!0,n||(o=Se(t,"click",ma(i[1])),n=!0)},p(a,[l]){r&&r.p&&(!e||l&128)&&rt(r,s,a,a[7],e?st(s,a[7],l,null):at(a[7]),null),(!e||l&1)&&b(t,"style",a[0])},i(a){e||(x(r,a),e=!0)},o(a){S(r,a),e=!1},d(a){a&&T(t),r&&r.d(a),n=!1,o()}}}function i0(i,t,e){let{$$slots:n={},$$scope:o}=t,{url:s}=t,{enable:r=!0}=t,{style:a=""}=t,{hooksInfo:l}=t;const c=si(),d=ut("hooks"),u=ut("mediaStore");let f,h=!0;function p(){e(5,f.onplay=g=>{d.emit("playStateChange",G({event:g,state:"playing",mediaInstance:f},l)),c("play"),e(6,h=!1)},f),e(5,f.onpause=g=>{d.emit("playStateChange",G({event:g,state:"paused",mediaInstance:f},l)),c("pause"),e(6,h=!0)},f),e(5,f.onloadedmetadata=g=>{typeof f.duration=="number"&&!Number.isNaN(f.duration)&&c("duration",f.duration)},f),e(5,f.ontimeupdate=g=>{c("timeupdate",f.currentTime)},f)}u.subscribe(({currentMediaElement:g})=>{g!==f&&(h||f==null||f.pause())});function A(g){!f||(d.emit("click",G({event:g,target:"AudioTagPlayIcon",audioInstance:f},l)),u.set({currentMediaElement:f}),d.emit("playStateChange",G({event:g,state:f.paused?"playing":"paused",mediaInstance:f},l)),f.paused?f.play():f.pause())}return i.$$set=g=>{"url"in g&&e(2,s=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,o=g.$$scope)},i.$$.update=()=>{i.$$.dirty&4&&(s||c("duration",0)),i.$$.dirty&36&&(f==null||f.dispose(),e(5,f=new e0(s)),c("audioRef",f),setTimeout(()=>c("audioRef",f),200),Kg(s).then(g=>c("duration",g)),p()),i.$$.dirty&40&&(r||f==null||f.pause()),i.$$.dirty&72&&c(r&&!h?"play":"pause")},[a,A,s,r,l,f,h,o,n]}class hl extends oe{constructor(t){super(),ie(this,t,i0,n0,ne,{url:2,enable:3,style:0,hooksInfo:4},t0)}}function o0(i){le(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 Qr(i){let t,e;return t=new $e({props:{center:!0,blurRadius:12,spreadRadius:5}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function s0(i){let t,e,n,o,s,r=i[1]&&Qr();return{c(){t=j("div"),r&&r.c(),e=ee(),n=j("div"),o=j("div"),o.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>',b(o,"class","sound-wave__container svelte-srt2pi"),b(n,"class","audio-icon svelte-srt2pi"),te(n,"playing",i[0]),b(t,"class","audio-icon__wrapper svelte-srt2pi"),b(t,"style",i[2]),M(t,"width",i[5]),M(t,"height",i[5])},m(a,l){z(a,t,l),r&&r.m(t,null),Q(t,e),Q(t,n),Q(n,o),i[7](o),i[8](t),s=!0},p(a,[l]){a[1]?r?l&2&&x(r,1):(r=Qr(),r.c(),x(r,1),r.m(t,e)):r&&(se(),S(r,1,1,()=>{r=null}),re()),(!s||l&1)&&te(n,"playing",a[0]),(!s||l&4)&&b(t,"style",a[2]),l&32&&M(t,"width",a[5]),l&32&&M(t,"height",a[5])},i(a){s||(x(r),s=!0)},o(a){S(r),s=!1},d(a){a&&T(t),r&&r.d(),i[7](null),i[8](null)}}}function r0(i,t,e){let n,{playing:o}=t,{shadow:s=!1}=t,{style:r=null}=t,{width:a="100%"}=t,l,c;function d(f){Le[f?"unshift":"push"](()=>{c=f,e(4,c)})}function u(f){Le[f?"unshift":"push"](()=>{l=f,e(3,l)})}return i.$$set=f=>{"playing"in f&&e(0,o=f.playing),"shadow"in f&&e(1,s=f.shadow),"style"in f&&e(2,r=f.style),"width"in f&&e(6,a=f.width)},i.$$.update=()=>{i.$$.dirty&64&&e(5,n=typeof a=="number"?ye(a):a)},[o,s,r,l,c,n,a,d,u]}class ml extends oe{constructor(t){super(),ie(this,t,r0,s0,ne,{playing:0,shadow:1,style:2,width:6},o0)}}function a0(i){le(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 Rr(i){var v,w;let t,e,n,o,s,r,a,l,c,d,u,f,h,p,A;e=new $e({props:{visible:i[6],left:i[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}});let g=i[6]&&Or(i);return c=new ol({props:{visible:i[6],textUnfolded:i[1],content:i[5]}}),f=new Ao({props:{unfolded:i[6],length:i[3],outDelay:i[4]+20*Math.min((w=(v=i[5])==null?void 0:v.length)!=null?w:10,15),useLinearColor:!0}}),{c(){t=j("div"),$(e.$$.fragment),n=ee(),o=j("div"),s=j("div"),r=j("div"),g&&g.c(),a=ee(),l=j("div"),$(c.$$.fragment),u=ee(),$(f.$$.fragment),b(r,"class","audio-icon svelte-1s6gk4a"),De(()=>i[11].call(l)),M(l,"display","inline-block"),b(s,"class","wrapper svelte-1s6gk4a"),b(o,"class","content svelte-1s6gk4a"),b(t,"class","audio-tag svelte-1s6gk4a"),te(t,"unfolded",i[6])},m(y,C){z(y,t,C),q(e,t,null),Q(t,n),Q(t,o),Q(o,s),Q(s,r),g&&g.m(r,null),Q(s,a),Q(s,l),q(c,l,null),d=It(l,i[11].bind(l)),Q(t,u),q(f,t,null),h=!0,p||(A=Se(l,"click",i[7]),p=!0)},p(y,C){var D,B;const I={};C&64&&(I.visible=y[6]),C&8&&(I.left=y[3]/2+"px"),e.$set(I),y[6]?g?(g.p(y,C),C&64&&x(g,1)):(g=Or(y),g.c(),x(g,1),g.m(r,null)):g&&(se(),S(g,1,1,()=>{g=null}),re());const P={};C&64&&(P.visible=y[6]),C&2&&(P.textUnfolded=y[1]),C&32&&(P.content=y[5]),c.$set(P);const L={};C&64&&(L.unfolded=y[6]),C&8&&(L.length=y[3]),C&48&&(L.outDelay=y[4]+20*Math.min((B=(D=y[5])==null?void 0:D.length)!=null?B:10,15)),f.$set(L),(!h||C&64)&&te(t,"unfolded",y[6])},i(y){h||(x(e.$$.fragment,y),x(g),x(c.$$.fragment,y),x(f.$$.fragment,y),h=!0)},o(y){S(e.$$.fragment,y),S(g),S(c.$$.fragment,y),S(f.$$.fragment,y),h=!1},d(y){y&&T(t),K(e),g&&g.d(),K(c),d(),K(f),p=!1,A()}}}function Or(i){let t,e,n,o,s,r,a;return e=new $e({props:{center:!0,blurRadius:15,spreadRadius:6}}),o=new hl({props:{enable:i[6],url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[l0]},$$scope:{ctx:i}}}),o.$on("play",i[8]),o.$on("pause",i[9]),o.$on("audioRef",i[10]),{c(){t=j("div"),$(e.$$.fragment),n=ee(),$(o.$$.fragment),b(t,"class","audio svelte-1s6gk4a")},m(l,c){z(l,t,c),q(e,t,null),Q(t,n),q(o,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&4100&&(d.$$scope={dirty:c,ctx:i}),o.$set(d)},i(l){a||(x(e.$$.fragment,l),x(o.$$.fragment,l),l&&De(()=>{r&&r.end(1),s=Rt(t,Bt,{duration:1e3,delay:0,easing:Zt}),s.start()}),a=!0)},o(l){var c,d;S(e.$$.fragment,l),S(o.$$.fragment,l),s&&s.invalidate(),l&&(r=tn(t,Bt,{duration:1e3,delay:20*Math.min((d=(c=i[5])==null?void 0:c.length)!=null?d:10,15),easing:Zt})),a=!1},d(l){l&&T(t),K(e),K(o),l&&r&&r.end()}}}function l0(i){let t,e,n;return e=new ml({props:{playing:i[2]}}),{c(){t=j("div"),$(e.$$.fragment),b(t,"class","audio-icon__wrapper svelte-1s6gk4a")},m(o,s){z(o,t,s),q(e,t,null),n=!0},p(o,s){const r={};s&4&&(r.playing=o[2]),e.$set(r)},i(o){n||(x(e.$$.fragment,o),n=!0)},o(o){S(e.$$.fragment,o),n=!1},d(o){o&&T(t),K(e)}}}function c0(i){let t,e,n=i[0].state&&Rr(i);return{c(){n&&n.c(),t=fe()},m(o,s){n&&n.m(o,s),z(o,t,s),e=!0},p(o,[s]){o[0].state?n?(n.p(o,s),s&1&&x(n,1)):(n=Rr(o),n.c(),x(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(x(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&T(t)}}}function d0(i,t,e){let n,o,s,{tag:r}=t,a=!1,l=!1,c;function d(){e(1,a=!a)}const u=()=>{e(2,l=!0)},f=()=>{e(2,l=!1)};function h(A){oo.call(this,i,A)}function p(){c=this.clientWidth,e(3,c)}return i.$$set=A=>{"tag"in A&&e(0,r=A.tag)},i.$$.update=()=>{var A,g,v;i.$$.dirty&1&&e(6,n=!!((A=r.state)!=null&&A.unfolded)),i.$$.dirty&1&&e(5,o=(v=(g=r.data.title)!=null?g:r.data.text)!=null?v:""),i.$$.dirty&2&&e(4,s=a?450:0)},[r,a,l,c,s,o,n,d,u,f,h,p]}class u0 extends oe{constructor(t){super(),ie(this,t,d0,c0,ne,{tag:0},a0)}}function f0(i){const t=document.createElement("div");t.style.color=i,document.body.appendChild(t);const e=window.getComputedStyle(t).color;t.remove();const n=(()=>e.search("rgba")===-1?e.replace("rgb","rgba").replace(")",", 1)"):e)(),o=n.replace("rgba","").replace("(","").replace(")","").split(",").map(s=>Number(s.trim()));return{rgba:n,r:o[0],g:o[1],b:o[2],a:o[3]}}function h0(i){le(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 Hr(i){let t,e,n,o;return n=new hl({props:{style:"width: max-content; height: max-content;",enable:i[0].state.visible,url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[p0]},$$scope:{ctx:i}}}),n.$on("play",i[7]),n.$on("pause",i[8]),n.$on("timeupdate",i[9]),n.$on("duration",i[10]),n.$on("audioRef",i[11]),{c(){t=j("div"),e=j("div"),$(n.$$.fragment),b(e,"class","audio-tag svelte-58hfjf"),M(e,"background-color",i[1]),M(e,"color",i[5]),b(t,"class","audio-tag__wrapper svelte-58hfjf")},m(s,r){z(s,t,r),Q(t,e),q(n,e,null),o=!0},p(s,r){const a={};r&1&&(a.enable=s[0].state.visible),r&1&&(a.url=s[0].data.audioUrl),r&1&&(a.hooksInfo={tag:s[0]}),r&8260&&(a.$$scope={dirty:r,ctx:s}),n.$set(a),r&2&&M(e,"background-color",s[1]),r&32&&M(e,"color",s[5])},i(s){o||(x(n.$$.fragment,s),o=!0)},o(s){S(n.$$.fragment,s),o=!1},d(s){s&&T(t),K(n)}}}function m0(i){let t;return{c(){t=Pe(i[6])},m(e,n){z(e,t,n)},p(e,n){n&64&&xe(t,e[6])},d(e){e&&T(t)}}}function p0(i){let t,e,n,o,s,r,a;return n=new ml({props:{playing:i[2]}}),r=new vo({props:{maxWidth:72,$$slots:{default:[m0]},$$scope:{ctx:i}}}),{c(){t=j("div"),e=j("div"),$(n.$$.fragment),o=ee(),s=j("div"),$(r.$$.fragment),b(e,"class","audio-icon__wrapper svelte-58hfjf"),b(s,"class","text svelte-58hfjf"),b(t,"class","audio__inner svelte-58hfjf")},m(l,c){z(l,t,c),Q(t,e),q(n,e,null),Q(t,o),Q(t,s),q(r,s,null),a=!0},p(l,c){const d={};c&4&&(d.playing=l[2]),n.$set(d);const u={};c&8256&&(u.$$scope={dirty:c,ctx:l}),r.$set(u)},i(l){a||(x(n.$$.fragment,l),x(r.$$.fragment,l),a=!0)},o(l){S(n.$$.fragment,l),S(r.$$.fragment,l),a=!1},d(l){l&&T(t),K(n),K(r)}}}function g0(i){let t,e,n=i[0].state&&Hr(i);return{c(){n&&n.c(),t=fe()},m(o,s){n&&n.m(o,s),z(o,t,s),e=!0},p(o,[s]){o[0].state?n?(n.p(o,s),s&1&&x(n,1)):(n=Hr(o),n.c(),x(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(x(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&T(t)}}}function A0(i,t,e){let n,o,s,{tag:r}=t;si();let a=!1,l=0,c=0;const d=()=>{e(2,a=!0)},u=()=>{e(2,a=!1)},f=A=>{e(3,l=A.detail)},h=A=>{e(4,c=A.detail)};function p(A){oo.call(this,i,A)}return i.$$set=A=>{"tag"in A&&e(0,r=A.tag)},i.$$.update=()=>{var A,g;i.$$.dirty&1&&e(6,n=(g=(A=r.data.title)!=null?A:r.data.text)!=null?g:""),i.$$.dirty&1&&e(1,o=(()=>{var v;return r.data.backgroundColor==="dark"?"rgba(0, 0, 0, 0.3)":r.data.backgroundColor==="light"?"rgba(255, 255, 255, 0.3)":(v=r.data.backgroundColor)!=null?v:"rgba(0, 0, 0, 0.3)"})()),i.$$.dirty&2&&e(5,s=(()=>{const{r:v,g:w,b:y}=f0(o);return(v*299+w*587+y*114)/1e3>=128?"rgba(0, 0, 0, 0.6)":"white"})())},[r,o,a,l,c,s,n,d,u,f,h,p]}class v0 extends oe{constructor(t){super(),ie(this,t,A0,g0,ne,{tag:0},h0)}}function b0(i){let t,e;return t=new v0({props:{tag:i[0]}}),t.$on("audioRef",i[2]),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&1&&(s.tag=n[0]),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function y0(i){let t,e;return t=new u0({props:{tag:i[0]}}),t.$on("audioRef",i[2]),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&1&&(s.tag=n[0]),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function w0(i){let t,e,n,o;const s=[y0,b0],r=[];function a(l,c){return l[1]==="line"?0:l[1]==="plane"?1:-1}return~(t=a(i))&&(e=r[t]=s[t](i)),{c(){e&&e.c(),n=fe()},m(l,c){~t&&r[t].m(l,c),z(l,n,c),o=!0},p(l,[c]){let d=t;t=a(l),t===d?~t&&r[t].p(l,c):(e&&(se(),S(r[d],1,1,()=>{r[d]=null}),re()),~t?(e=r[t],e?e.p(l,c):(e=r[t]=s[t](l),e.c()),x(e,1),e.m(n.parentNode,n)):e=null)},i(l){o||(x(e),o=!0)},o(l){S(e),o=!1},d(l){~t&&r[t].d(l),l&&T(n)}}}function C0(i,t,e){let n,{tag:o}=t,s;function r(a){s=a.detail}return o.play=()=>s.play(),o.pause=()=>s.pause(),i.$$set=a=>{"tag"in a&&e(0,o=a.tag)},i.$$.update=()=>{var a;i.$$.dirty&1&&e(1,n=(a=o.data.appearance)!=null?a:"line")},[o,n,r]}class P0 extends oe{constructor(t){super(),ie(this,t,C0,w0,ne,{tag:0})}}function E0(i){le(i,"svelte-10cw0el",".media-wrapper.svelte-10cw0el{position:absolute;width:100%;height:100%}")}function Fr(i){var o;let t,e,n;return e=new al({props:{mediaItemConfig:{canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(o=i[4])!=null?o:"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=j("div"),$(e.$$.fragment),b(t,"class","media-wrapper svelte-10cw0el")},m(s,r){z(s,t,r),q(e,t,null),n=!0},p(s,r){var l;const a={};r&20&&(a.mediaItemConfig={canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(l=s[4])!=null?l:"withText",disableVideoIfHavePoster:!1,objectFit:s[2]}),r&64&&(a.unfolded=s[6]),r&32&&(a.mediaData=s[5]),r&2&&(a.enableCarousel=s[1]),r&8&&(a.autoplayConfig=s[3]),r&1&&(a.tag=s[0]),e.$set(a)},i(s){n||(x(e.$$.fragment,s),n=!0)},o(s){S(e.$$.fragment,s),n=!1},d(s){s&&T(t),K(e)}}}function I0(i){let t,e,n=i[0].state&&i[5]&&Fr(i);return{c(){n&&n.c(),t=fe()},m(o,s){n&&n.m(o,s),z(o,t,s),e=!0},p(o,[s]){o[0].state&&o[5]?n?(n.p(o,s),s&33&&x(n,1)):(n=Fr(o),n.c(),x(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(x(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&T(t)}}}function k0(i,t,e){let n,o,s,r,a,l,{tag:c}=t;return i.$$set=d=>{"tag"in d&&e(0,c=d.tag)},i.$$.update=()=>{var d,u;i.$$.dirty&1&&e(6,n=c.state?c.state.unfolded:!1),i.$$.dirty&1&&e(5,o=c.data.mediaData),i.$$.dirty&1&&e(1,s=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:s!=null?s:!0,autoplayVideo:!0}),i.$$.dirty&1&&e(2,l=(u=c.data.objectFit)!=null?u:(()=>c.data.adaptationMode==="stretch"?"cover":c.data.adaptationMode==="proportional"?"contain":void 0)())},[c,s,l,a,r,o,n]}class x0 extends oe{constructor(t){super(),ie(this,t,k0,I0,ne,{tag:0},E0)}}function D0(i){return X(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 L0(i){return X(this,null,function*(){const{steps:t,url:e,ratio:n=3,fps:o=24}=i;if(!t)throw new Error("KeyframeIcon requires steps");const{width:s,height:r}=yield D0(e),a=s/n,l=r/n,c=a/t,d=l,u=1/o*t+"s",f=a/t-a;return{url:e,keyframesWidth:a,keyframesHeight:l,wrapperWidth:c,wrapperHeight:d,steps:t,duration:u,offsetX:f,offsetY:0}})}function S0(i){le(i,"svelte-mhs8j5","@keyframes svelte-mhs8j5-sprites-animation{0%{background-position:0 0}100%{background-position:var(--keyframe_offset_x) 0}}.icon-image.svelte-mhs8j5{display:block;width:100%}.icon-keyframe-container.svelte-mhs8j5{overflow:hidden}.icon-keyframe-wrapper.svelte-mhs8j5{transform-origin:0 0}.icon-keyframe.svelte-mhs8j5{background-repeat:no-repeat;animation-direction:normal;animation-iteration-count:infinite;animation-name:svelte-mhs8j5-sprites-animation}")}function Gr(i){i[6]=i[14].url,i[7]=i[14].keyframesWidth,i[8]=i[14].keyframesHeight,i[9]=i[14].wrapperWidth,i[10]=i[14].wrapperHeight,i[11]=i[14].steps,i[12]=i[14].duration,i[13]=i[14].offsetX}function Wr(i){let t,e,n,o=i[2]&&Nr();function s(l,c){return l[3]?T0:M0}let r=s(i),a=r(i);return{c(){t=j("div"),o&&o.c(),e=ee(),a.c(),b(t,"class","icon"),M(t,"width",typeof i[0]=="number"?ye(i[0]):i[0])},m(l,c){z(l,t,c),o&&o.m(t,null),Q(t,e),a.m(t,null),n=!0},p(l,c){l[2]?o?c&4&&x(o,1):(o=Nr(),o.c(),x(o,1),o.m(t,e)):o&&(se(),S(o,1,1,()=>{o=null}),re()),r===(r=s(l))&&a?a.p(l,c):(a.d(1),a=r(l),a&&(a.c(),a.m(t,null))),c&1&&M(t,"width",typeof l[0]=="number"?ye(l[0]):l[0])},i(l){n||(x(o),n=!0)},o(l){S(o),n=!1},d(l){l&&T(t),o&&o.d(),a.d()}}}function Nr(i){let t,e;return t=new $e({props:{center:!0,blurRadius:24,spreadRadius:16}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function M0(i){let t,e;return{c(){t=j("img"),b(t,"class","icon-image svelte-mhs8j5"),_e(t.src,e=i[1].url)||b(t,"src",e),b(t,"alt","icon")},m(n,o){z(n,t,o)},p(n,o){o&2&&!_e(t.src,e=n[1].url)&&b(t,"src",e)},d(n){n&&T(t)}}}function T0(i){let t,e,n={ctx:i,current:null,token:null,hasCatch:!1,pending:j0,then:B0,catch:z0,value:14};return zo(e=i[4](i[1]),n),{c(){t=fe(),n.block.c()},m(o,s){z(o,t,s),n.block.m(o,n.anchor=s),n.mount=()=>t.parentNode,n.anchor=t},p(o,s){i=o,n.ctx=i,s&2&&e!==(e=i[4](i[1]))&&zo(e,n)||Ic(n,i,s)},d(o){o&&T(t),n.block.d(o),n.token=null,n=null}}}function z0(i){return{c:Z,m:Z,p:Z,d:Z}}function B0(i){Gr(i);let t,e,n,o=`url(${i[6]})`,s=`steps(${i[11]-1})`;return{c(){t=j("div"),e=j("div"),n=j("div"),b(n,"class","icon-keyframe svelte-mhs8j5"),M(n,"width",ye(i[7])),M(n,"height",ye(i[8])),M(n,"background-image",o),M(n,"animation-duration",i[12]),M(n,"animation-timing-function",s),M(n,"animation-delay",0),M(n,"background-size","100% 100%"),M(n,"--keyframe_offset_x",ye(i[13])),b(e,"class","icon-keyframe-wrapper svelte-mhs8j5"),M(e,"transform",typeof i[0]=="number"?`scale(${i[0]/i[9]})`:void 0),b(t,"class","icon-keyframe-container svelte-mhs8j5"),M(t,"width",typeof i[0]=="number"?ye(i[0]):ye(i[9])),M(t,"height",typeof i[0]=="number"?ye(i[10]*(i[0]/i[9])):ye(i[10]))},m(r,a){z(r,t,a),Q(t,e),Q(e,n)},p(r,a){Gr(r),a&2&&M(n,"width",ye(r[7])),a&2&&M(n,"height",ye(r[8])),a&2&&o!==(o=`url(${r[6]})`)&&M(n,"background-image",o),a&2&&M(n,"animation-duration",r[12]),a&2&&s!==(s=`steps(${r[11]-1})`)&&M(n,"animation-timing-function",s),a&2&&M(n,"--keyframe_offset_x",ye(r[13])),a&3&&M(e,"transform",typeof r[0]=="number"?`scale(${r[0]/r[9]})`:void 0),a&3&&M(t,"width",typeof r[0]=="number"?ye(r[0]):ye(r[9])),a&3&&M(t,"height",typeof r[0]=="number"?ye(r[10]*(r[0]/r[9])):ye(r[10]))},d(r){r&&T(t)}}}function j0(i){return{c:Z,m:Z,p:Z,d:Z}}function V0(i){let t,e,n=i[1]&&Wr(i);return{c(){n&&n.c(),t=fe()},m(o,s){n&&n.m(o,s),z(o,t,s),e=!0},p(o,[s]){o[1]?n?(n.p(o,s),s&2&&x(n,1)):(n=Wr(o),n.c(),x(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(x(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&T(t)}}}function Q0(i,t,e){let n,{width:o=null}=t,{icon:s=null}=t,{shadow:r=!1}=t;const a=si();function l(c){return X(this,null,function*(){const d=yield L0(c);return a("iconLoaded"),d})}return i.$$set=c=>{"width"in c&&e(0,o=c.width),"icon"in c&&e(1,s=c.icon),"shadow"in c&&e(2,r=c.shadow)},i.$$.update=()=>{i.$$.dirty&2&&e(3,n=(s==null?void 0:s.steps)>=2),i.$$.dirty&8&&!n&&a("iconLoaded")},[o,s,r,n,l]}class pl extends oe{constructor(t){super(),ie(this,t,Q0,V0,ne,{width:0,icon:1,shadow:2},S0)}}function R0(i){le(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 _r(i){let t,e,n,o,s,r;return e=new $e({props:{outDelay:0,inDelay:0,center:!0,width:"80%",blurRadius:40,spreadRadius:16,opacity:.08}}),{c(){t=j("div"),$(e.$$.fragment),n=ee(),o=j("div"),s=Pe(i[1]),b(o,"class","text svelte-e58ijk"),b(t,"class","text-wrapper svelte-e58ijk")},m(a,l){z(a,t,l),q(e,t,null),Q(t,n),Q(t,o),Q(o,s),r=!0},p(a,l){(!r||l&2)&&xe(s,a[1])},i(a){r||(x(e.$$.fragment,a),r=!0)},o(a){S(e.$$.fragment,a),r=!1},d(a){a&&T(t),K(e)}}}function O0(i){let t,e,n,o;e=new pl({props:{icon:i[0],shadow:!0}}),e.$on("iconLoaded",i[9]);let s=i[1]&&i[2]&&_r(i);return{c(){t=j("div"),$(e.$$.fragment),n=ee(),s&&s.c(),b(t,"class","wrapper svelte-e58ijk")},m(r,a){z(r,t,a),q(e,t,null),Q(t,n),s&&s.m(t,null),o=!0},p(r,[a]){const l={};a&1&&(l.icon=r[0]),e.$set(l),r[1]&&r[2]?s?(s.p(r,a),a&6&&x(s,1)):(s=_r(r),s.c(),x(s,1),s.m(t,null)):s&&(se(),S(s,1,1,()=>{s=null}),re())},i(r){o||(x(e.$$.fragment,r),x(s),o=!0)},o(r){S(e.$$.fragment,r),S(s),o=!1},d(r){r&&T(t),K(e),s&&s.d()}}}function H0(i,t,e){let n,o,s,r,a,l,c,d,{tag:u}=t;const f=()=>{e(2,n=!0)};return i.$$set=h=>{"tag"in h&&e(3,u=h.tag)},i.$$.update=()=>{var h,p;i.$$.dirty&8&&e(1,o=(h=u.data.title)!=null?h:u.data.text),i.$$.dirty&8&&e(8,s=(p=u.data.icon)!=null?p:u.style.point),i.$$.dirty&256&&e(7,r=s.url),i.$$.dirty&256&&e(6,a=s.steps),i.$$.dirty&256&&e(5,l=s.fps),i.$$.dirty&256&&e(4,c=s.ratio),i.$$.dirty&240&&e(0,d={url:r,steps:a,fps:l,ratio:c})},e(2,n=!1),[d,o,n,u,c,l,a,r,s,f]}class F0 extends oe{constructor(t){super(),ie(this,t,H0,O0,ne,{tag:3},R0)}}function G0(i){le(i,"svelte-kzl2aj",".customElement__container.svelte-kzl2aj{position:relative}")}function Xr(i){let t,e=i[0].element+"",n;return{c(){t=new Xn(!1),n=fe(),t.a=n},m(o,s){t.m(e,o,s),z(o,n,s)},p(o,s){s&1&&e!==(e=o[0].element+"")&&t.p(e)},d(o){o&&T(n),o&&t.d()}}}function W0(i){let t,e=typeof i[0].element=="string"&&Xr(i);return{c(){t=j("div"),e&&e.c(),b(t,"class","customElement__container svelte-kzl2aj")},m(n,o){z(n,t,o),e&&e.m(t,null),i[2](t)},p(n,[o]){typeof n[0].element=="string"?e?e.p(n,o):(e=Xr(n),e.c(),e.m(t,null)):e&&(e.d(1),e=null)},i:Z,o:Z,d(n){n&&T(t),e&&e.d(),i[2](null)}}}function N0(i,t,e){let{tag:n}=t,o,s;qe(()=>{if(o){if(n.element instanceof Element){const a=n.element;o.appendChild(a),s=()=>a.remove()}else if(typeof n.element=="function"){const a=n.element;s=a(o)}}}),xt(()=>{s==null||s()});function r(a){Le[a?"unshift":"push"](()=>{o=a,e(1,o)})}return i.$$set=a=>{"tag"in a&&e(0,n=a.tag)},[n,o,r]}class _0 extends oe{constructor(t){super(),ie(this,t,N0,W0,ne,{tag:0},G0)}}function X0(i){le(i,"svelte-ofx2uu",'@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,T1RUTwAKAIAAAwAgQ0ZGINFD4CEAAAaQAAAHC0dTVUIAAQAAAAANnAAAAApPUy8yaB5pEwAAAjQAAABgY21hcEItjGUAAAT0AAABfGhlYWQS1WWOAAAAtAAAADZoaGVhBfMBxwAAAhAAAAAkaG10eJ9gBO8AAADsAAABJG1heHAASVAAAAAArAAAAAZuYW1lqczkZQAAApQAAAJecG9zdP+4ADIAAAZwAAAAIAAAUAAASQAAAAEAAAABAADkeHeyXw889QADA+gAAAAA2NoRKwAAAADY2hErACn/OAHgAyAAAQADAAIAAAAAAAAB9ABdAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACCAA7AcwAdwIIADMCCAA0AhwAMwISADkCCAAuAfQANAH+ACsB/gApAggANAEeAFABHgBQAR4AUAIIADQCCAAuAR4AUAEeAFABfAAxAAEAAAPo/zgAAAIcACkAKQHgAAEAAAAAAAAAAAAAAAAAAABJAAMCLgGQAAUACAKKAlgAAABLAooCWAAAAV4AMgEsAAAAAAgAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFVLV04AIAAg/xsDIP84AMgD6ADIAAAAAQAAAAAB9AK8AAAAIAAAAAAAEADGAAEAAAAAAAEADAAAAAEAAAAAAAIABAAMAAEAAAAAAAMAGwAQAAEAAAAAAAQAEQArAAEAAAAAAAUAPAA8AAEAAAAAAAYAEAB4AAEAAAAAAAgADAAAAAEAAAAAAAkADAAAAAMAAQQJAAEAGACIAAMAAQQJAAIACACgAAMAAQQJAAMANgCoAAMAAQQJAAQAIgDeAAMAAQQJAAUAeAEAAAMAAQQJAAYAIAF4AAMAAQQJAAgAGACIAAMAAQQJAAkAGACIQUxJQkFCQSBGb250Qm9sZDEuMDAwO1VLV047QUxJQkFCQUZvbnQtQm9sZEFMSUJBQkEgRm9udCBCb2xkVmVyc2lvbiAxLjAwMDtQUyAwMDEuMDAwO2hvdGNvbnYgMS4wLjg4O21ha2VvdGYubGliMi41LjY0Nzc1QUxJQkFCQUZvbnQtQm9sZABBAEwASQBCAEEAQgBBACAARgBvAG4AdABCAG8AbABkADEALgAwADAAMAA7AFUASwBXAE4AOwBBAEwASQBCAEEAQgBBAEYAbwBuAHQALQBCAG8AbABkAEEATABJAEIAQQBCAEEAIABGAG8AbgB0ACAAQgBvAGwAZABWAGUAcgBzAGkAbwBuACAAMQAuADAAMAAwADsAUABTACAAMAAwADEALgAwADAAMAA7AGgAbwB0AGMAbwBuAHYAIAAxAC4AMAAuADgAOAA7AG0AYQBrAGUAbwB0AGYALgBsAGkAYgAyAC4ANQAuADYANAA3ADcANQBBAEwASQBCAEEAQgBBAEYAbwBuAHQALQBCAG8AbABkAAAAAAADAAAAAwAAASIAAQAAAAAAHAADAAEAAAEiAAABBgAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAABCSEMANjc4OTo7PD0+PwAAAAAAAAACAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGwAAAAAAABwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAFoAAAAQABAAAwAAACAALgA5AFoAegCl/xv//wAAACAALAAwAEEAYQCl/xr////hAAAABv/B/7v/nwAAAAEAAAAOAAAAAAAAAAAACgAAAEIASABDAEYARwADAAAAAAAA/7UAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERQUxJQkFCQUZvbnQtQm9sZAABAQEg+A8A+CAB+CEC+BgEtPtc+HT5tAX3KA/3UBGcHAZWEgAHAQENExoiKTpLbmluZS4wMDEuMDAxbW9uZXkudW5pRkYxQm5pbmUuMDAxdW5pRkYxQWNvcHlyaWdodCBtaXNzaW5nQUxJQkFCQSBGb250IEJvbGQAAAEAAQAAIhkAQhkAEQkBhwABigAADQAADwAAZAABiAABiwABiQAADgAASQIAAQCtAK4ArwCwALEAsgCzALQAtQC2ALcAuAC5ALoAuwC8AL0AvgC/AMAAwQDCAMMAxADFAMYAxwDIAMkAygDLAMwAzQDOAM8A0ADRANIA0wDUANUA1gDXANgA2QDaANsA3ADdAN4A3wDgAOEA4gFDAVoBqwIsAloCuAMcAzkDzwQ4BDoEPARRBFMEVQTNBOIE8QUEmPtc0Ky6rKKsuqzHrKPDoa2irLCspq2vraWssKzOAejVrKytrKzYA/gu+bQV+9H+fPfRBj76ORVqSWbNavs6rM2wSqwH7vsVFUXNafs68wfNaRVqZ6wG704VaklFJ6zNsEmsB/c6TxUn+zqt9xnNB6z7DhX7Bfs69wWsO++6anRpwwfv+0EV+wX7OvcFB/cZahUnXO8GrFMVamsHRVwF8Wr7OqwG0boFRawGDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4OrIr5UQH3OPdUA/ebihVmaZSdbB9Mr2TL0xr3vgewlK2eqh7Kr86y1BuvrIJ5qh/HZrJIQhr7vgdngmp5bR5OZ0tkQxv46ARUX2FSH/u+B1a5YMDAs7TCHve+B8RjtVYeDnD4utkB93HzA/cL+QgVPfH8vPP5UgcOrIn5UgG++DYD+GmJFfw28wb3svfUBZ2glKSnGsNduFBWXF1UiB4ijgaMsJWsnqoIyLHMstYbsa6Ceawfy2ezSUAaVndXZ2Me+2/7jQX3pwYOrIvy92Tz90ryEr/zM/L3SvMu8hPy+B/3/xUT7LCwpMDDGq6CrHqoHsZnTK5DG2lrg3puH09pZk5EGobykAe4tba6vrViXFZiYlcedyOfBhPyxLpdUlJcW1JSXLvEH5ojfAdllGiebB5LsM5j1xuwrpSeqx/KsLPO1xrKcMNerx4OwPL1Affi8gP4dPdlFWD4fPshBvuJ/HkF+wH3ryPy87YH+8z1Ffc69+QF++QHDrb3ZNf3ZfAB9zX3YwP3nRZlaJSebB9LsGPO1xrzBlK6XMTEubrEHtcHxF26UlJcXFIeI/g0+BYh+677JAaorK2ZsBuwroJ4qx/LZrNHPxo/B2aCaHhrHktmR2NAGw6si/X3b/IBufX3b/ID95n4QBWAg4uKhh/3EfelBfsHBvtK/CMFfnCFbm0aZJVnnmoeSrLPYdobsq6Vnqwfy7K10dgasoGueKwey2RHtT4b+9YETlu7yMe8vcfHvVlPT1laTx8OmIr5UQG/+B8D93iKFfsIBvdo+OYF+6T2+B8oBg6iifL3bPX3QPEStvNB8vc/8jXxE/L4EvgHFRPss7Cnu78arYOreqgexWpNr0YbaWyDem4fUmlmTUcaXqBftGAeE/JWYmROSxpklWieax5Ksc9i2BuxrpWerB/LsbTP2BrHaMVath4T7PsN93QVu7FjXFtlZltcZbC7urGzuh8T8oX8ghVPW7zHx7q6yMa9W1BPWVpQHw6i96Tz92/0AbTz93DzA/hp+HkVsIGveKwezmNFtUAbZGeBeGofSmNiRT8aZJVnnmseSrHPYtoboAb7EvukBfcHBvdL+CEFmaySqaQa+9gWxry+yJ6dhoGcHq12oWZmGk5YW1BMXLnKHg4gCiEK+11L91IlCvdiyhWtb6hpJgoeJAoOIQogCqz3pe/3b/UBufX3bfQD+G74dxWyga94rB7NZEW0PhtlaIF4ah9KY2FFPxo7tkTPZh6MjIqKjB+TiJCIjYoIjgaCoKGHoRuanY6QoB+IgfsB+6QF9wcG9y/4IgWYppGnqhr7a/sCFVBbvMjHu7zGyLxbTk5aWk4fDvtd+AojCoz7jBUmCh8kCq1vqGkeDvtdi/cS94wjCvwKBCIKDiD3ru8BvPeuA7z4EhUn967vBw4eoDf/DAmLDAv47BT4exWcEwAHAQFBXW97ipCarPcv8+7yAfdl8gP4aPf6FfIjB+r3gwUiBi77gwWHBjH3gwUkBuP7gwUnJPcxKPsxI/cx+y/y9y/3MPP7MO4GDvtdi/cSJQr3JBZkcqOzsKSksrCkcWdlcnFmHw6up6eurm+naGhvb2hop2+uHwv3EiUK9yP4ChUiCgt3SgWxBrnmBZGVj5eZGgsB2/cSAwtobm5paqBzqoYLAAABAAAAAAAAAAAAAA==) format("woff2")}*{-webkit-tap-highlight-color:transparent}.content__container.svelte-ofx2uu{position:relative;left:50%;top:50%;transform:translate(-50%, -50%);font-family:PingFangSC, Segoe UI, Rototo, sans-serif}.content__container.withAnimation.svelte-ofx2uu{transition:opacity 0.3s linear}.content__container.unClickable.svelte-ofx2uu{pointer-events:none !important}.content__container.unClickable.svelte-ofx2uu *{pointer-events:none !important}.content__wrapper.svelte-ofx2uu{pointer-events:none;width:100%;height:100%}.content__container.hide.svelte-ofx2uu{opacity:0;pointer-events:none}.content__container.hide.svelte-ofx2uu *{pointer-events:none !important}.content__container.disable.svelte-ofx2uu{display:none}.content.svelte-ofx2uu{position:relative;width:100%;height:100%;font-size:0.75rem;line-height:1.125rem;color:#fff}.content.svelte-ofx2uu:not(.unfolded){pointer-events:none}.content.svelte-ofx2uu:not(.unfolded) *{pointer-events:none !important}.content.unfolded.svelte-ofx2uu{pointer-events:auto}')}function Y0(i){let t,e;return{c(){t=j("div"),b(t,"data-info","tag content is keep folded"),b(t,"data-id",e=i[1].id)},m(n,o){z(n,t,o)},p(n,o){o&2&&e!==(e=n[1].id)&&b(t,"data-id",e)},i:Z,o:Z,d(n){n&&T(t)}}}function U0(i){let t,e,n,o,s,r,a,l,c;const d=[tA,eA,$0,K0,q0,Z0,J0],u=[];function f(h,p){return h[1].element?0:h[1].contentType==="Text"?1:h[1].contentType==="ImageText"||h[1].contentType==="Image"||h[1].contentType==="Video"?2:h[1].contentType==="Audio"?3:h[1].contentType==="Marketing"?4:h[1].contentType==="Link"||h[1].contentType==="VRLink"||h[1].contentType==="PanoLink"?5:h[1].contentType==="MediaPlane"||h[1].contentType==="MediaModel"?6:-1}return~(o=f(i))&&(s=u[o]=d[o](i)),{c(){var h;t=j("div"),e=j("div"),n=j("div"),s&&s.c(),b(n,"class","content svelte-ofx2uu"),te(n,"unfolded",(h=i[1].state)==null?void 0:h.unfolded),b(e,"class","content__wrapper svelte-ofx2uu"),b(t,"class","content__container svelte-ofx2uu"),b(t,"data-id",r=i[1].id),te(t,"disable",i[1].enabled===!1),te(t,"hide",i[4]),te(t,"withAnimation",i[0]),te(t,"unClickable",i[1].clickable===!1),M(t,"width",i[1].stickType==="Plane"||i[1].contentType==="MediaModel"?"100%":0),M(t,"height",i[1].stickType==="Plane"||i[1].contentType==="MediaModel"?"100%":0)},m(h,p){z(h,t,p),Q(t,e),Q(e,n),~o&&u[o].m(n,null),a=!0,l||(c=Se(t,"click",ma(i[13])),l=!0)},p(h,p){var g;let A=o;o=f(h),o===A?~o&&u[o].p(h,p):(s&&(se(),S(u[A],1,1,()=>{u[A]=null}),re()),~o?(s=u[o],s?s.p(h,p):(s=u[o]=d[o](h),s.c()),x(s,1),s.m(n,null)):s=null),(!a||p&2)&&te(n,"unfolded",(g=h[1].state)==null?void 0:g.unfolded),(!a||p&2&&r!==(r=h[1].id))&&b(t,"data-id",r),(!a||p&2)&&te(t,"disable",h[1].enabled===!1),(!a||p&16)&&te(t,"hide",h[4]),(!a||p&1)&&te(t,"withAnimation",h[0]),(!a||p&2)&&te(t,"unClickable",h[1].clickable===!1),p&2&&M(t,"width",h[1].stickType==="Plane"||h[1].contentType==="MediaModel"?"100%":0),p&2&&M(t,"height",h[1].stickType==="Plane"||h[1].contentType==="MediaModel"?"100%":0)},i(h){a||(x(s),a=!0)},o(h){S(s),a=!1},d(h){h&&T(t),~o&&u[o].d(),l=!1,c()}}}function J0(i){let t,e;return t=new x0({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function Z0(i){let t,e;return t=new F0({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function q0(i){let t,e;return t=new qg({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function K0(i){let t,e;return t=new P0({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function $0(i){let t,e;return t=new Bg({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function eA(i){let t,e;return t=new Yp({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function tA(i){let t,e;return t=new _0({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function nA(i){let t,e,n,o;const s=[U0,Y0],r=[];function a(l,c){return l[3]?0:1}return t=a(i),e=r[t]=s[t](i),{c(){e.c(),n=fe()},m(l,c){r[t].m(l,c),z(l,n,c),o=!0},p(l,[c]){let d=t;t=a(l),t===d?r[t].p(l,c):(se(),S(r[d],1,1,()=>{r[d]=null}),re(),e=r[t],e?e.p(l,c):(e=r[t]=s[t](l),e.c()),x(e,1),e.m(n.parentNode,n))},i(l){o||(x(e),o=!0)},o(l){S(e),o=!1},d(l){r[t].d(l),l&&T(n)}}}function iA(i,t,e){let n,o,s,r,a,l,{withAnimation:c=!1}=t,{tag:d}=t,{hooks:u}=t,{state:f}=t,{mediaStore:h}=t,{temporaryState:p}=t;Jn("hooks",u),Jn("mediaStore",h);let A,g;function v(C){C?u.emit("exposure",{id:r,type:"start"}):u.emit("exposure",{id:r,type:"end"})}function w(C,I,P){var L,D;return!(!I.visible||!I.enabled||!P.visible||!((L=C.state)!=null&&L.visible)||((D=C.temporaryState)==null?void 0:D.visible)===!1||He(C)&&C.mediaVisible===!1)}const y=C=>u.emit("click",{event:C,target:"TagContent",tag:d});return i.$$set=C=>{"withAnimation"in C&&e(0,c=C.withAnimation),"tag"in C&&e(1,d=C.tag),"hooks"in C&&e(2,u=C.hooks),"state"in C&&e(5,f=C.state),"mediaStore"in C&&e(6,h=C.mediaStore),"temporaryState"in C&&e(7,p=C.temporaryState)},i.$$.update=()=>{var C,I,P,L,D,B,W,F,Y,V,E;i.$$.dirty&2&&e(11,n=(C=d.state)==null?void 0:C.unfolded),i.$$.dirty&2&&e(10,o=(I=d.state)==null?void 0:I.visible),i.$$.dirty&162&&e(12,s=f.visible&&p.visible&&((P=d.state)==null?void 0:P.visible)),i.$$.dirty&2&&(r=d.id),i.$$.dirty&162&&e(4,a=!w(d,f,p)),i.$$.dirty&4096&&v(s),i.$$.dirty&3842&&d.hooks&&(n!==void 0&&n!==g&&(e(9,g=n),n?(D=(L=d.hooks).emit)==null||D.call(L,"unfolded"):(W=d==null?void 0:(B=d.hooks).emit)==null||W.call(B,"folded")),o!==void 0&&o!==A&&(e(8,A=o),o?(Y=(F=d.hooks).emit)==null||Y.call(F,"show"):(E=(V=d.hooks).emit)==null||E.call(V,"hide"))),i.$$.dirty&2&&e(3,l=(()=>!(typeof d.mergedConfig.unfoldedConfig=="object"&&d.mergedConfig.unfoldedConfig.keep==="folded"))())},[c,d,u,l,a,f,h,p,A,g,o,n,s,y]}class gl extends oe{constructor(t){super(),ie(this,t,iA,nA,ne,{withAnimation:0,tag:1,hooks:2,state:5,mediaStore:6,temporaryState:7},X0)}}function oA(i){le(i,"svelte-yex9rb",'@charset "UTF-8";.tag-point-click-helper.svelte-yex9rb.svelte-yex9rb{position:absolute;pointer-events:auto;cursor:pointer;width:2.5rem;height:2.5rem;left:50%;top:50%;transform:translate(-50%, -50%)}.tag-point-wrapper.svelte-yex9rb.svelte-yex9rb{pointer-events:none;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);z-index:-1}.tag-folded-point.svelte-yex9rb.svelte-yex9rb,.tag-unfolded-point.svelte-yex9rb.svelte-yex9rb{transition:all 0.5s}.tag-point-wrapper.svelte-yex9rb .tag-unfolded-point.svelte-yex9rb{display:flex;justify-content:center;align-items:center;position:absolute;width:100%;height:100%;border-radius:50%}.tag-point-wrapper.svelte-yex9rb .tag-unfolded-point.svelte-yex9rb: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-yex9rb .tag-unfolded-point.svelte-yex9rb: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-yex9rb .tag-folded-point.svelte-yex9rb{opacity:1;scale:1}.tag-point-wrapper.folded.svelte-yex9rb .tag-unfolded-point.svelte-yex9rb{opacity:0;scale:1}.tag-point-wrapper.unfolded.svelte-yex9rb .tag-folded-point.svelte-yex9rb{opacity:0;scale:0.2}.tag-point-wrapper.unfolded.svelte-yex9rb .tag-unfolded-point.svelte-yex9rb{opacity:1;scale:1}')}function sA(i){let t,e,n,o,s,r,a,l,c,d,u,f;return o=new $e({props:{center:!0,blurRadius:15,spreadRadius:5,opacity:.3}}),c=new pl({props:{icon:i[2],width:i[1]}}),{c(){t=j("div"),e=ee(),n=j("div"),$(o.$$.fragment),s=ee(),r=j("div"),a=ee(),l=j("div"),$(c.$$.fragment),b(t,"class","tag-point-click-helper svelte-yex9rb"),b(r,"class","tag-unfolded-point svelte-yex9rb"),M(r,"transition-delay",(i[3]?i[5]:0)+"ms"),b(l,"class","tag-folded-point svelte-yex9rb"),M(l,"transition-delay",(i[3]?i[5]:0)+"ms"),b(n,"class","tag-point-wrapper svelte-yex9rb"),te(n,"unfolded",i[0]),te(n,"folded",i[3]),M(n,"width",ye(i[1])),M(n,"height",ye(i[1]))},m(h,p){z(h,t,p),z(h,e,p),z(h,n,p),q(o,n,null),Q(n,s),Q(n,r),Q(n,a),Q(n,l),q(c,l,null),d=!0,u||(f=Se(t,"click",i[4]),u=!0)},p(h,[p]){p&8&&M(r,"transition-delay",(h[3]?h[5]:0)+"ms");const A={};p&4&&(A.icon=h[2]),p&2&&(A.width=h[1]),c.$set(A),p&8&&M(l,"transition-delay",(h[3]?h[5]:0)+"ms"),(!d||p&1)&&te(n,"unfolded",h[0]),(!d||p&8)&&te(n,"folded",h[3]),p&2&&M(n,"width",ye(h[1])),p&2&&M(n,"height",ye(h[1]))},i(h){d||(x(o.$$.fragment,h),x(c.$$.fragment,h),d=!0)},o(h){S(o.$$.fragment,h),S(c.$$.fragment,h),d=!1},d(h){h&&T(t),h&&T(e),h&&T(n),K(o),K(c),u=!1,f()}}}function rA(i,t,e){let n,o,s,r;const a=ut("hooks");let{tag:l}=t,c,d=!1;const u=()=>{c!==void 0&&clearTimeout(c),d=!0,c=setTimeout(()=>{d=!1},800)},f=p=>{d||a.emit("click",{event:p,target:"TagPoint",tag:l})},h=(()=>l.contentType==="Text"&&l.data.appearance==="plane"?500:800)();return i.$$set=p=>{"tag"in p&&e(6,l=p.tag)},i.$$.update=()=>{var p,A,g,v;i.$$.dirty&64&&e(0,n=(p=l.state)==null?void 0:p.unfolded),i.$$.dirty&1&&e(3,o=!n),i.$$.dirty&64&&e(2,s=(g=(A=l.style)==null?void 0:A.point)!=null&&g.url?(v=l.style)==null?void 0:v.point:{url:yp}),i.$$.dirty&64&&e(1,r=(()=>{var y,C,I;const w=(I=(C=(y=l.style)==null?void 0:y.point)==null?void 0:C.size)!=null?I:"S";return typeof w=="number"?w:w==="S"?18:w==="M"?20:w==="L"?24:w==="XL"?28:18})())},u(),[n,r,s,o,f,h,l]}class aA extends oe{constructor(t){super(),ie(this,t,rA,sA,ne,{tag:6},oA)}}function lA(i){le(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 cA(i){let t;return{c(){t=j("div"),b(t,"data-info","tag content is disable")},m(e,n){z(e,t,n)},p:Z,i:Z,o:Z,d(e){e&&T(t)}}}function dA(i){let t,e;return t=new gl({props:{mediaStore:i[2],withAnimation:i[0],tag:Me(i[1]),hooks:i[14],state:i[3],temporaryState:i[4]}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&4&&(s.mediaStore=n[2]),o&1&&(s.withAnimation=n[0]),o&2&&(s.tag=Me(n[1])),o&8&&(s.state=n[3]),o&16&&(s.temporaryState=n[4]),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function uA(i){let t;return{c(){t=j("div"),b(t,"data-info","tag point is disable")},m(e,n){z(e,t,n)},p:Z,i:Z,o:Z,d(e){e&&T(t)}}}function fA(i){let t,e;return t=new aA({props:{tag:i[1]}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=n[1]),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function hA(i){let t,e,n,o,s,r,a,l,c;const d=[dA,cA],u=[];function f(g,v){return g[12]?0:1}n=f(i),o=u[n]=d[n](i);const h=[fA,uA],p=[];function A(g,v){return g[13]?0:1}return r=A(i),a=p[r]=h[r](i),{c(){t=j("div"),e=j("div"),o.c(),s=ee(),a.c(),b(e,"class","wrapper svelte-pzwdws"),b(e,"data-tag-unfolded",i[8]),b(e,"data-tag-id",i[11]),b(e,"data-content-type",l=i[1].contentType),M(e,"left",i[7]),M(e,"top",i[6]),M(e,"z-index",i[5]),b(t,"class","tag svelte-pzwdws"),b(t,"data-tag-id",i[11]),te(t,"unClickable",i[1].clickable===!1),te(t,"disable",i[10]),te(t,"hide",i[9]),te(t,"withAnimation",i[0])},m(g,v){z(g,t,v),Q(t,e),u[n].m(e,null),Q(e,s),p[r].m(e,null),c=!0},p(g,[v]){let w=n;n=f(g),n===w?u[n].p(g,v):(se(),S(u[w],1,1,()=>{u[w]=null}),re(),o=u[n],o?o.p(g,v):(o=u[n]=d[n](g),o.c()),x(o,1),o.m(e,s));let y=r;r=A(g),r===y?p[r].p(g,v):(se(),S(p[y],1,1,()=>{p[y]=null}),re(),a=p[r],a?a.p(g,v):(a=p[r]=h[r](g),a.c()),x(a,1),a.m(e,null)),(!c||v&256)&&b(e,"data-tag-unfolded",g[8]),(!c||v&2048)&&b(e,"data-tag-id",g[11]),(!c||v&2&&l!==(l=g[1].contentType))&&b(e,"data-content-type",l),v&128&&M(e,"left",g[7]),v&64&&M(e,"top",g[6]),v&32&&M(e,"z-index",g[5]),(!c||v&2048)&&b(t,"data-tag-id",g[11]),(!c||v&2)&&te(t,"unClickable",g[1].clickable===!1),(!c||v&1024)&&te(t,"disable",g[10]),(!c||v&512)&&te(t,"hide",g[9]),(!c||v&1)&&te(t,"withAnimation",g[0])},i(g){c||(x(o),x(a),c=!0)},o(g){S(o),S(a),c=!1},d(g){g&&T(t),u[n].d(),p[r].d()}}}function mA(i,t,e){let n,o,s,r,a,l,c,d,u,{withAnimation:f=!1}=t,{tag:h}=t,{mediaStore:p}=t,{state:A}=t,{temporaryState:g}=t;const v=ut("hooks");return i.$$set=w=>{"withAnimation"in w&&e(0,f=w.withAnimation),"tag"in w&&e(1,h=w.tag),"mediaStore"in w&&e(2,p=w.mediaStore),"state"in w&&e(3,A=w.state),"temporaryState"in w&&e(4,g=w.temporaryState)},i.$$.update=()=>{var w,y,C,I,P,L,D,B;i.$$.dirty&2&&e(13,n=(()=>!(h.contentType==="Link"||h.contentType==="VRLink"||h.contentType==="PanoLink"||h.contentType==="Audio"&&h.data.appearance==="plane"))()),i.$$.dirty&2&&e(12,o=(()=>h.stickType==="2DPoint")()),i.$$.dirty&2&&e(11,s=h.id),i.$$.dirty&2&&e(10,r=!((w=h.pointTagStyle)!=null&&w.leftPercent)||!((y=h.pointTagStyle)!=null&&y.topPercent)||h.enabled===!1||!h.state),i.$$.dirty&2&&e(9,a=!((C=h.state)!=null&&C.visible)||((I=h.temporaryState)==null?void 0:I.visible)===!1),i.$$.dirty&2&&e(8,l=(P=h.state)==null?void 0:P.unfolded),i.$$.dirty&2&&e(7,c=((L=h.pointTagStyle)==null?void 0:L.leftPercent)+"%"),i.$$.dirty&2&&e(6,d=((D=h.pointTagStyle)==null?void 0:D.topPercent)+"%"),i.$$.dirty&2&&e(5,u=(B=h.state)!=null&&B.unfolded?1:0)},[f,h,p,A,g,u,d,c,l,a,r,s,o,n,v]}class pA extends oe{constructor(t){super(),ie(this,t,mA,hA,ne,{withAnimation:0,tag:1,mediaStore:2,state:3,temporaryState:4},lA)}}function gA(i){le(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 Yr(i,t,e){const n=i.slice();return n[6]=t[e],n}function Ur(i){let t,e=[],n=new Map,o,s=i[1];const r=a=>a[6].id;for(let a=0;a<s.length;a+=1){let l=Yr(i,s,a),c=r(l);n.set(c,e[a]=Jr(c,l))}return{c(){t=j("div");for(let a=0;a<e.length;a+=1)e[a].c();b(t,"class","tag--container svelte-uq11d5"),te(t,"hide",!i[3].visible||!i[4].visible),te(t,"withAnimation",i[0])},m(a,l){z(a,t,l);for(let c=0;c<e.length;c+=1)e[c].m(t,null);o=!0},p(a,l){l&31&&(s=a[1],se(),e=Ke(e,l,r,1,a,s,n,t,Ot,Jr,null,Yr),re()),(!o||l&24)&&te(t,"hide",!a[3].visible||!a[4].visible),(!o||l&1)&&te(t,"withAnimation",a[0])},i(a){if(!o){for(let l=0;l<s.length;l+=1)x(e[l]);o=!0}},o(a){for(let l=0;l<e.length;l+=1)S(e[l]);o=!1},d(a){a&&T(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function Jr(i,t){let e,n,o;return n=new pA({props:{state:t[3],temporaryState:t[4],withAnimation:t[0],tag:t[6],mediaStore:t[2]}}),{key:i,first:null,c(){e=fe(),$(n.$$.fragment),this.first=e},m(s,r){z(s,e,r),q(n,s,r),o=!0},p(s,r){t=s;const a={};r&8&&(a.state=t[3]),r&16&&(a.temporaryState=t[4]),r&1&&(a.withAnimation=t[0]),r&2&&(a.tag=t[6]),r&4&&(a.mediaStore=t[2]),n.$set(a)},i(s){o||(x(n.$$.fragment,s),o=!0)},o(s){S(n.$$.fragment,s),o=!1},d(s){s&&T(e),K(n,s)}}}function AA(i){let t,e,n=i[3].enabled&&Ur(i);return{c(){n&&n.c(),t=fe()},m(o,s){n&&n.m(o,s),z(o,t,s),e=!0},p(o,[s]){o[3].enabled?n?(n.p(o,s),s&8&&x(n,1)):(n=Ur(o),n.c(),x(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(x(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&T(t)}}}function vA(i,t,e){let{withAnimation:n=!1}=t,{tags:o=[]}=t,{hooks:s}=t,{mediaStore:r}=t,{state:a}=t,{temporaryState:l}=t;return Jn("hooks",s),i.$$set=c=>{"withAnimation"in c&&e(0,n=c.withAnimation),"tags"in c&&e(1,o=c.tags),"hooks"in c&&e(5,s=c.hooks),"mediaStore"in c&&e(2,r=c.mediaStore),"state"in c&&e(3,a=c.state),"temporaryState"in c&&e(4,l=c.temporaryState)},[n,o,r,a,l,s]}class bA extends oe{constructor(t){super(),ie(this,t,vA,AA,ne,{withAnimation:0,tags:1,hooks:5,mediaStore:2,state:3,temporaryState:4},gA)}}const yA={globalConfig:{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}},MediaModel:{unfoldedConfig:{keep:"unfolded"},visibleConfig:{keep:"visible",alwaysShowWhenMovePano:!0}}}};class wA extends ci{constructor(e){super(e);m(this,"tagCacheByPanoIndex",{})}getCache({panoIndex:e,id:n,key:o}){var c,d,u,f;const{five:s}=this,r=(c=s.panoIndex)!=null?c:e;if(r===void 0)throw new Error(`TagCacheController getCache(): fivePanoIndex is ${r}`);const a=`${(u=(d=s.work)==null?void 0:d.workCode)!=null?u:s.model.uuid}-${r}`;let l=this.tagCacheByPanoIndex[a];if(l||(l=new Map,this.tagCacheByPanoIndex[a]=l),n===void 0)return l;if(o===void 0){const h=l.get(n);return h||(l.set(n,{}),l.get(n))}return(f=l.get(n))==null?void 0:f[o]}clearCache(){this.tagCacheByPanoIndex={}}removeCache(){}}class CA extends wA{constructor(e){super(e);m(this,"tags",[]);m(this,"config",yA);m(this,"raycaster",new k.Raycaster)}get isPanorama(){return this.five.currentMode==="Panorama"}getTagById(e){const n=this.tags.find(o=>o.id===e);if(!n){console.error(`getTagById(): tag is ${n}, id is ${e}`);return}return n}changeContentTypeConfig(e,n,o=!0){this.config.contentTypeConfig||(this.config.contentTypeConfig={}),o?this.config.contentTypeConfig[e]=gt.default({},this.config.contentTypeConfig[e],n):this.config.contentTypeConfig[e]=n,this.clearCache()}getVisibleByPanoIndex(e,n){var r;const o=this.getCache({panoIndex:n,id:e.id}),s=(r=this.five.panoIndex)!=null?r:n;if(He(e))return!0;if(o.visible!==void 0)return o.visible;{const a=(()=>{var d,u,f;const l=(d=this.getTagConfig(e).visibleConfig)!=null?d:{},c=this.getDistance(e);if(typeof l=="function")return{value:l(this.five,{tag:e,distance:c}),reason:"config function result"};if(l.keep==="hidden")return{value:!1,reason:"config.keep is hidden"};if(l.keep==="visible")return{value:!0,reason:"config.keep is visible"};if(l.visiblePanoIndex!==void 0&&l.visiblePanoIndex!=="all"&&s!==void 0){if(Array.isArray(l.visiblePanoIndex)&&!l.visiblePanoIndex.includes(s))return{value:!1,reason:`current panoIndex is not included in visiblePano. currentPanoIndex: ${s}, visiblePanoIndex: ${l.visiblePanoIndex}`};if(l.visiblePanoIndex==="current"&&s!==((u=e.fiveState)==null?void 0:u.panoIndex))return{value:!1,reason:`current panoIndex is not equal to tag.panoIndex. currentPanoIndex: ${s}, tag.panoIndex: ${(f=e.fiveState)==null?void 0:f.panoIndex}`}}if(l.visibleDistance!==void 0&&l.visibleDistance!=="unLimited"&&rn(c,l.visibleDistance)===!1)return{value:!1,reason:`distance is not in visibleDistance. distance: ${c}, visibleDistance: ${l.visibleDistance}`};if(l.intersectRaycaster!==!1&&(typeof l.intersectRaycaster!="object"||l.intersectRaycaster.enabled!==!1)){if(s===void 0)return{value:!1,reason:`intersectRaycaster check failed: fivePanoIndex is ${s}`};const h=this.getRaycasterFromPanoIndex(e,s),p=this.getTagEnableByIntersect(e,h);if(p.value===!1)return p}if(l.angleRange&&rp(e)){const h=this.getAngle(e);if(rn(h,l.angleRange)===!1)return{value:!1,reason:`angle is not in angleRange. angle: ${h}, angleRange: ${l.angleRange}`}}return{value:!0,reason:"all check passed"}})();return o.visible=a.value,o.__debug_visible_reason__=a,o.visible}}getVisibelByFiveMode(e,n){var r;const o=(r=this.getTagConfig(e).visibleConfig)!=null?r:{};if(typeof o=="function")return n==="Panorama";const s=o==null?void 0:o.visibleFiveMode;return s?s.includes(n):n==="Panorama"}getModelMedialVisibleByPanoIndex(e){const n=this.five.getCurrentState().panoIndex,o=this.getCache({panoIndex:n,id:e.id});if(o.modelMedialVisible!==void 0)return o.modelMedialVisible;const s=this.getRaycasterFromPanoIndex(e,n),r=this.getTagEnableByIntersect(e,s);return o.modelMedialVisible=r.value,o.__debug_visible_reason__=r,r.value!==!1}getUnfoldedByPanoIndex(e,n){if(!this.getVisibleByPanoIndex(e))return;const s=this.getCache({panoIndex:n,id:e.id});if(s.unfolded!==void 0)return s.unfolded;{const r=this.getTagConfig(e).unfoldedConfig;if(!r)return;const a=(()=>{const c=this.getDistance(e);if(typeof r=="function")return r(this.five,{tag:e,distance:c});if(r.keep==="folded")return!1;if(r.keep==="unfolded")return!0;if(r.unfoldDistance&&rn(c,r.unfoldDistance)===!1)return!1})();s.unfolded=a;const l=this.getUnfoldedByCamera(e);return l!==void 0?l:s.unfolded}}getUnfoldedByCamera(e){return this.getVisibleByPanoIndex(e)?(()=>{var a;const s=this.getDistance(e),r=this.getTagConfig(e).unfoldedConfig;if(!!r){if(typeof r=="function")return r(this.five,{tag:e,distance:s});if(r.keep==="folded")return!1;if(r.keep==="unfolded")return!0;if(r.autoUnfold===void 0||r.autoUnfold===!1||r.autoUnfold.enable===!1)return;if(r.autoUnfold.strategy==="ScreenPostion"){const l=this.getTagProject(e);if(l&&rn(l.x,r.autoUnfold.autoUnfoldProjectX)===!1)return!1}if(r.autoUnfold.strategy==="MinimumDistance"){const d=this.filterPointTag().filter(f=>this.getVisibleByPanoIndex(f)).filter(f=>{const h=this.getTagProject(f);if(!h)return!1;const{x:p,y:A,z:g}=h;return!(Math.abs(g)>1||Math.abs(p)>1||Math.abs(A)>1)}).map(f=>({tag:f,id:f.id,tagConfig:this.getTagConfig(f).unfoldedConfig})).filter(({tag:f,tagConfig:h})=>{var p,A;return!(typeof h!="object"||h.keep||h.autoUnfold===!1||((p=h.autoUnfold)==null?void 0:p.enable)===!1||((A=h.autoUnfold)==null?void 0:A.strategy)!=="MinimumDistance")}).map(f=>he(G({},f),{distance:this.getDistance(f.tag)})).filter(({distance:f,tagConfig:h})=>{var p,A;return!(f===void 0||typeof h!="object"||h.autoUnfold===!1||((p=h.autoUnfold)==null?void 0:p.enable)===!1||((A=h.autoUnfold)==null?void 0:A.strategy)!=="MinimumDistance"||h.autoUnfold.distance&&rn(f,h.autoUnfold.distance)===!1)}).sort((f,h)=>f.distance-h.distance).findIndex(f=>f.id===e.id);if(d===-1||d<=((a=r.autoUnfold.maxNumber)!=null?a:1)-1===!1)return!1}return!0}})():void 0}getDistance(e,n){var r,a,l;const o=(r=this.five.panoIndex)!=null?r:n;if(o===void 0)throw new Error(`getDistance(): fivePanoIndex is ${o}`);const s=this.getCache({panoIndex:n,id:e.id});if(s.distance!==void 0)return s.distance;{const c=(l=(a=this.five.work)==null?void 0:a.observers[o])==null?void 0:l.position;if(c===void 0)throw new Error(`getDistance(): observerPosition is ${c}`);const d=Us(e),u=c.distanceTo(d);return s.distance=u,u}}getAngle(e,n){var r,a,l;const o=(r=this.five.panoIndex)!=null?r:n;if(o===void 0)throw new Error(`getDistance(): fivePanoIndex is ${o}`);const s=this.getCache({panoIndex:n,id:e.id});if(s.angle!==void 0)return s.angle;{const c=(l=(a=this.five.work)==null?void 0:a.observers[o])==null?void 0:l.position;if(c===void 0)throw new Error(`getAngleRange(): observerPosition is ${c}`);const d=(()=>e.stickType==="3DPoint"?mn(e.normal):_i(e.position))();if(!d)return;const u=new k.Vector3().copy(c).sub(Xi(e.position)),f=d.angleTo(u)*180/Math.PI;return s.angle=f,s.angle}}getTagConfig(e){var s,r;if(!e)return(s=this.config.globalConfig)!=null?s:{};const n={};this.config.contentTypeConfig&&Object.keys(this.config.contentTypeConfig).forEach(a=>{const l=a;if(n[l])return;const c=l.split("-");if(c.length===1){const[d]=c;e.contentType===d&&(n[l]=this.config.contentTypeConfig[l])}if(c.length===2){const[d="Any",u="Any"]=c;(e.stickType===d||d==="Any")&&(e.contentType===u||u==="Any")&&(n[l]=this.config.contentTypeConfig[l])}if(c.length===3){const[d="Any",u,f]=c;if(u==="Audio"&&e.contentType==="Audio"){const h=e;(h.stickType===d||d==="Any")&&h.data.appearance===f&&(n[l]=this.config.contentTypeConfig[l])}}});const o=gt.default({},this.config.globalConfig,...Object.values(n),e.config);return typeof o.unfoldedConfig=="object"&&(o.unfoldedConfig.disableFold&&(o.unfoldedConfig={keep:"unfolded"}),o.unfoldedConfig.disableUnfold&&(o.unfoldedConfig={keep:"folded"}),o.unfoldedConfig.keep&&(o.unfoldedConfig={keep:o.unfoldedConfig.keep})),typeof o.visibleConfig=="object"&&o.visibleConfig.keep&&(o.visibleConfig={keep:o.visibleConfig.keep,visibleFiveMode:(r=o.visibleConfig)==null?void 0:r.visibleFiveMode}),o}can(e,n){const o=this.getTagConfig(n);if(!o||typeof o!="object")return!0;if(e==="show"||e==="hide"){if(!o.visibleConfig||typeof o.visibleConfig!="object")return!0;if(e==="show"&&o.visibleConfig.keep==="hidden"||e==="hide"&&(o.visibleConfig.keep==="visible"||o.visibleConfig.alwaysShowWhenMovePano))return!1}if(e==="fold"||e==="unfold"){if(!o.unfoldedConfig||typeof o.unfoldedConfig!="object")return!0;if(e==="fold"&&o.unfoldedConfig.keep==="unfolded"||e==="unfold"&&o.unfoldedConfig.keep==="folded")return!1}return!0}sort(e){return e.sort((n,o)=>{const s=this.getDistance(n),r=this.getDistance(o);return s===void 0||r===void 0?0:r-s})}setPointTagPosition(){const e=this.filterPointTag();e.length!==0&&e.forEach(n=>{var s;if(!((s=n.state)!=null&&s.visible)){n.pointTagStyle=null;return}const o=this.getTagProject(n);if(!o){n.pointTagStyle=null;return}n.pointTagStyle={leftPercent:(o.x+1)/2*100,topPercent:(-o.y+1)/2*100}})}setVisibleByPanoIndex(){this.tags.forEach(e=>{const n=this.getVisibleByPanoIndex(e);e.state&&(e.state.visible=n)})}setModelMedialVisibleByPanoIndex(){this.tags.forEach(e=>{if(!He(e))return;const n=this.getModelMedialVisibleByPanoIndex(e);e.mediaVisible=n})}setUnfoldedByPanoIndex(){this.tags.forEach(e=>{const n=this.getUnfoldedByPanoIndex(e);if(!!e.state&&(n!==void 0&&(e.state.unfolded=n),n&&!e.state.visible)){const o=this.getTagConfig(e);typeof o.unfoldedConfig=="object"&&o.unfoldedConfig.autoUnfoldWhenHide!==!1&&(e.state.unfolded=!1)}})}getTagProject(e){if(!this.getVisibleByPanoIndex(e))return;const o=Xi(e.position),{x:s,y:r,z:a}=o.project(this.five.camera);if(!(a>1))return{x:s,y:r,z:a}}filterPointTag(){return this.tags.filter(e=>e.stickType==="2DPoint"||e.stickType==="3DPoint")}filter2DPointTag(){return this.tags.filter(e=>e.stickType==="2DPoint")}filter3DPointTag(){return this.tags.filter(e=>e.stickType==="3DPoint")}filterModelTag(){return this.tags.filter(e=>e.stickType==="Model")}filter3DTag(){return this.tags.filter(e=>e.stickType==="3DPoint"||e.stickType==="Plane")}filterPlaneTag(){return this.tags.filter(e=>e.stickType==="Plane")}updateTagConfig(e){e!=null&&e.force&&this.clearCache(),this.tags.forEach(n=>{const o=this.getTagConfig(n);n.mergedConfig=o})}getTagEnableByIntersect(e,n){var d,u,f;const o=(d=this.getTagConfig(e).visibleConfig)!=null?d:{},s=this.getDistance(e),[r]=this.five.model.intersectRaycaster(n),a=(()=>{if(!He(e))return;const h=this.tags.filter(He).map(A=>{var g;return(g=A.model)==null?void 0:g.object}).filter(Ne);return n.intersectObjects(h,!0)[0]})(),l=(()=>{var h;return typeof o=="object"&&typeof o.intersectRaycaster=="object"&&(h=o.intersectRaycaster.distanceAccuracy)!=null?h:.01})();return Math.min((u=r==null?void 0:r.distance)!=null?u:1/0,(f=a==null?void 0:a.distance)!=null?f:1/0)+l<s?{value:!1,reason:`intersectRaycaster check failed: distance is ${s}, intersection.point is ${r.point.toArray()}, distanceError is ${l}`}:{value:!0,reason:""}}getRaycasterFromPanoIndex(e,n){var r;const o=(r=this.five.work.observers[n])==null?void 0:r.position;if(o===void 0)throw new Error(`getVisible(): observerPosition is ${o}`);const s=Us(e).sub(o).normalize();return this.raycaster.set(o,s),this.raycaster}checkFloorIndex(e){var a;const n=e.fiveState;if(!n)return!0;const o=n.panoIndex,s=(a=this.five.work.observers[o])==null?void 0:a.floorIndex,r=this.five.model.shownFloor;return r===null||r===s}}function PA(i){var t,e,n,o;if(!i.stickType){const s=(()=>i.pointType==="PointTag"&&i.dimensionType==="3D"?"3DPoint":i.pointType==="PlaneTag"?"Plane":"2DPoint")();i.stickType=s}if(i.contentType==="VRLink"||i.contentType==="PanoLink"||i.contentType==="Link"){const s=i;!((e=(t=s.data)==null?void 0:t.icon)!=null&&e.url)&&!((o=(n=s.style)==null?void 0:n.point)!=null&&o.url)&&(s.data.icon={url:"//vrlab-static.ljcdn.com/release/web/test.09dee741.png",steps:28})}return i}const EA=new Rl.GLTFLoader;function IA(i){return new Promise((t,e)=>{function n(s){t(s)}function o(s){e(s)}EA.load(i,n,void 0,o)})}function kA(i){if(!i.matrix)return;const t=new O.Matrix4().fromArray(i.matrix),{mediaPosition:e}=i.data;return e.map(o=>new O.Vector3().fromArray(o).add(new O.Vector3(0,0,5e-4)).applyMatrix4(t).toArray())}const Al="2.0.10",qi=`DnalogelPlugin-PanoTagPlugin@${Al}`,xA=!1,DA=i=>`${qi}--${i}`;class vl extends CA{constructor(e,n){super(e);m(this,"version",Al);m(this,"state",{enabled:!0,visible:!0});m(this,"params");m(this,"debug");m(this,"css3DRenderPlugin");m(this,"TagContainerSvelte");m(this,"temporaryState",{visible:!0});m(this,"mediaStore",lo({currentMediaElement:null}));m(this,"group",new O.Group);m(this,"gltfObjectGroup",new O.Group);m(this,"isIOSWX",navigator.userAgent.toLowerCase().indexOf("micromessenger")!==-1&&navigator.userAgent.toLowerCase().indexOf("iphone")!==-1);m(this,"store",{disposers:[],disposed:!1,resizeObserverDisposerAdding:!1,css3DRenderDisposer:new Map});m(this,"enabledModelTagSet",new Set);m(this,"changeTagModel",(e,n)=>X(this,null,function*(){e.data=gt.default({},e.data,n),yield this.loadModel(e),this.updateRenderAllTags()}));m(this,"disposedErrorLog",()=>{console.error(`${qi} is disposed`)});m(this,"handleFiveInitAnimationEnded",()=>{const e=this.five.getCurrentState().mode;this.tags.forEach(n=>{n.temporaryState=he(G({},n.temporaryState),{visible:this.getVisibelByFiveMode(n,e)}),He(n)&&e==="Panorama"&&this.changeTagMode(n,"front")}),this.updateRenderAllTags(),this.updateRenderAllTags()});m(this,"handleFiveModelShownFloorChange",()=>{this.tags.forEach(e=>{!He(e)||(e.state.visible=this.checkFloorIndex(e))}),this.updateRenderAllTags()});m(this,"loadModel",e=>X(this,null,function*(){var l;const n=e.data.modelUrl;if(console.log("\u{1F436} ==> url:",n),!n)return;const o=IA(n).then(c=>Object.assign(c.scene,{customID:e.id,isTagModel:!0}));e.model={promise:o};const s=yield o;if(((l=e.model)==null?void 0:l.promise)!==o||(e.model.object=s,!this.tags.includes(e)))return;s.visible=e.state.visible,new O.Matrix4().fromArray(e.matrix).decompose(s.position,s.quaternion,s.scale),this.checkFloorIndex(e)||(s.visible=!1);const a=this.gltfObjectGroup.children.find(c=>c.customID===e.id);return a&&this.gltfObjectGroup.remove(a),this.gltfObjectGroup.add(s),this.updateTagCss3DObjectMatrix(e,s),s}));this.group.name="PanoTagPluginModelGroup",this.gltfObjectGroup.name="PanoTagPluginGLTFObjectGroup",this.group.add(this.gltfObjectGroup),this.params=G({debug:!1,config:this.config},n),this.debug=this.params.debug,this.config=this.params.config,Vr(1,{namespace:ni.GetAudioDuration}),Vr(1,{namespace:ni.PlayAudio}),Object.assign(window,{[`__PANOTAGPLUGIN_DEBUG_${Date.now()}__`]:this}),Object.assign(window,{__PANOTAGPLUGIN_DEBUG__:this}),this.state.enabled&&this.five.scene.add(this.group)}load(e,n){return X(this,null,function*(){var s,r;this.clearTags(),console.log(qi," load:",{data:JSON.parse(JSON.stringify(e))}),this.config=gt.default({},this.config,{globalConfig:(s=e.globalConfig)!=null?s:{},contentTypeConfig:(r=e.contentTypeConfig)!=null?r:{}});const o=yield this.addTag(e.tagList,n);if(this.debug)try{op(this.five,this.tags)}catch(a){console.error(a)}return o})}addTag(e,n){return X(this,null,function*(){const s=(Array.isArray(e)?e:[e]).map(r=>{const a=this.getTagConfig(r),l=he(G({},r),{state:G({visible:void 0,unfolded:xA},a.initialState),hooks:new be.Subscribe,clickable:a.clickable,mergedConfig:a});return He(r)&&(l.temporaryState={visible:!1}),l}).filter(r=>r.position);return s.forEach(PA),this.tags.push(...s),ap(this.five).then(()=>{var r,a,l;return this.store.eventListenerDisposer&&((a=(r=this.store).eventListenerDisposer)==null||a.call(r)),this.state.enabled&&(this.store.eventListenerDisposer=this.addEventListener()),this.addResizeListener(),this.checkPanelTag(),this.setVisibleAndUnfolded({withAnimation:(l=n==null?void 0:n.withAnimation)!=null?l:!0}).then(()=>this.updateRenderAllTags()),this.updateRenderAllTags(),console.log("\u{1F436} ==> waitFiveModelLoaded:"),this.addMediaModelTag(s)})})}changeConfig(e,n=!0){n?this.config=gt.default({},this.config,e):this.config=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}changeGlobalConfig(e,n=!0){n?this.config.globalConfig=gt.default({},this.config.globalConfig,e):this.config.globalConfig=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}clearTags(){this.tags=[],this.enabledModelTagSet.clear(),this.clearCache(),this.disposeAllCSS3DContainer(),this.updateRenderAllTags()}show(e){return X(this,null,function*(){const{userAction:n=!0,withAnimation:o=!1}=e!=null?e:{};if(this.store.disposed)return this.disposedErrorLog();this.setState({visible:!0},{userAction:n,visibleWithAnimation:o}),this.hooks.emit("show",{userAction:n,withAnimation:o})})}hide(e){return X(this,null,function*(){const{userAction:n=!0,withAnimation:o=!1}=e!=null?e:{};if(this.store.disposed)return this.disposedErrorLog();this.setState({visible:!1},{userAction:n,visibleWithAnimation:o}),this.hooks.emit("hide",{userAction:n,withAnimation:o})})}enable(e){const{userAction:n=!0}=e!=null?e:{};if(this.store.disposed)return this.disposedErrorLog();this.five.scene.children.includes(this.group)||this.five.scene.add(this.group),this.setState({enabled:!0},{userAction:n}),this.hooks.emit("enable",{userAction:n}),this.five.needsRender=!0}disable(e){const{userAction:n=!0}=e!=null?e:{};if(this.store.disposed)return this.disposedErrorLog();this.setState({enabled:!1},{userAction:n}),this.five.scene.remove(this.group),this.hooks.emit("disable",{userAction:n}),this.five.needsRender=!0}dispose(){var e,n,o,s,r,a;this.pauseCurrentMedia(),this.disposeAllCSS3DContainer(),(e=this.TagContainerSvelte)==null||e.$destroy(),this.filter3DTag().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=[],this.store.disposed=!0,(s=(o=this.store).eventListenerDisposer)==null||s.call(o),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.clearCache(),this.five.needsRender=!0,this.hooks.emit("dispose")}setState(e,n){if(this.store.disposed)return this.disposedErrorLog();const{userAction:o=!0,visibleWithAnimation:s=!1}=n,r=G({},this.state);this.state=Object.assign(this.state,e),this.store.visibleWithAnimation=s,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:o})}changeUnfoldedById(e,n){var r;const o=this.getTagById(e);if(!o)return;o.state.unfolded=n;const s=this.filterPointTag();(r=this.TagContainerSvelte)==null||r.$set({tags:s})}changeTagNormalById(e,n){const o=this.getTagById(e);!o||!o.tag3DContentSvelte||(o.tag3DContentSvelte.currentNormal=it(n),this.updateRenderPlaneTag())}changeDataById(e,n,o=!0){const s=this.getTagById(e);!s||(o?s.data=gt.default({},s.data,n):s.data=G(G({},s.data),n),this.checkPanelTag(),this.updateRenderAllTags())}changeStickTypeById(e,n,o=!0){this.changeTagById(e,n,o)}changeTagById(e,n,o=!0){const s=this.getTagById(e);!n||(o?gt.default(s,n):Object.assign(s,n),(s==null?void 0:s.tag3DContentSvelte)&&(n==null?void 0:n.normal)&&(s.tag3DContentSvelte.currentNormal=it(n.normal)),this.updateRenderAllTags(),this.checkPanelTag())}destroyTagById(e){(Array.isArray(e)?e:[e]).forEach(o=>{const s=this.tags.findIndex(r=>r.id===o);s!==-1&&this.tags.splice(s,1)}),this.updateRenderAllTags()}pauseCurrentMedia(){this.mediaStore.set({currentMediaElement:null})}updateTagCss3DObjectMatrix(e,n){var A,g,v,w;const o=(v=(g=(A=e.mergedConfig)==null?void 0:A.tag3DConfig)==null?void 0:g.ratio)!=null?v:.00216,s=(w=e.tag3DContentSvelte)==null?void 0:w.domContainer.css3DObject;if(!s)return;const r=He(e)?e.data.mediaPosition:e.position;n.updateWorldMatrix(!1,!1);const a=n.matrixWorld,l=new O.Vector3().fromArray(r[0]),c=new O.Vector3().fromArray(r[2]),d=new O.Vector3().lerpVectors(l,c,.5).add(new O.Vector3(0,0,5e-4)),u=new O.Matrix4().setPosition(d),f=new O.Matrix4().makeScale(o,o,o),h=new O.Matrix4().multiply(a).multiply(u).multiply(f);h.decompose(s.position,s.quaternion,s.scale);const p=s.opacityMesh;!p||h.decompose(p.position,p.quaternion,p.scale)}setVisibleAndUnfolded(){return X(this,arguments,function*({withAnimation:e}={withAnimation:!1}){if(!!this.isPanorama)return this.setVisibleByPanoIndex(),e?new Promise((n,o)=>{setTimeout(()=>{this.setUnfoldedByPanoIndex(),n()},10)}):(this.setUnfoldedByPanoIndex(),Promise.resolve())})}handleShow(){this.state.visible=!0,this.updateTagContainerVisible()}handleHide(){this.pauseCurrentMedia(),this.state.visible=!1,this.updateTagContainerVisible()}handleEnable(){this.state.enabled=!0,this.store.eventListenerDisposer=this.addEventListener(),this.updateRenderAllTags()}handleDisable(){var e,n,o;this.pauseCurrentMedia(),this.state.enabled=!1,(n=(e=this.store).eventListenerDisposer)==null||n.call(e),(o=this.TagContainerSvelte)==null||o.$set({tags:[]}),this.filter3DTag().forEach(s=>{var r;(r=s.tag3DContentSvelte)==null||r.svelteApp.$destroy(),s.tag3DContentSvelte=void 0})}addEventListener(){const{five:e,hooks:n}=this,o=this.handleFiveWantsMoveToPano.bind(this),s=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),u=this.five.currentMode;return this.handleFiveModeChange(u),this.handleFivePanoArrived(),e.on("wantsMoveToPano",o),e.on("modeChange",s),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",o),e.off("modeChange",s),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}}loadVideoFirstFrame(){this.isIOSWX&&this.hooks.emit("loadVideoFirstFrame")}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())},o=()=>{!this.state.enabled||this.hide()},{observe:s,unobserve:r}=Zs(cp(()=>{!this.store.resizeObserverDisposer||o()},500),e),{observe:a,unobserve:l}=Zs(Js(()=>n(),400),e);return s(),a(),()=>{r(),l()}}handleFiveModeChange(e){this.tags.forEach(n=>{n.temporaryState=he(G({},n.temporaryState),{visible:this.getVisibelByFiveMode(n,e)}),He(n)&&e!=="Panorama"&&this.changeTagMode(n,"behind")}),this.updateRenderAllTags(),this.updateRenderAllTags()}handleFiveWantsMoveToPano(){this.tags.forEach(e=>{const n=this.getTagConfig(e);typeof n.visibleConfig=="object"&&(n.visibleConfig.keep?e.temporaryState=he(G({},e.temporaryState),{visible:n.visibleConfig.keep==="visible"}):e.temporaryState=he(G({},e.temporaryState),{visible:Boolean(n.visibleConfig.alwaysShowWhenMovePano)}))}),this.updateTagContainerVisible()}temporaryShow({withAnimation:e}={withAnimation:!1}){this.store.visibleWithAnimation=e,this.temporaryState.visible=!0,this.updateTagContainerVisible()}temporaryHide({withAnimation:e}={withAnimation:!1}){this.store.visibleWithAnimation=e,this.temporaryState.visible=!1,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),o=this.can("unfold",e.tag);n&&o&&(e.tag.state.unfolded=!e.tag.state.unfolded,e.tag.state.unfolded&&this.tags.forEach(s=>{s.id!==e.tag.id&&s.state&&this.can("fold",s)&&(s.state.unfolded=!1)}),this.updateRenderAllTags())}updateRenderAllTags(){this.enabledModelTagSet.clear(),this.tags.forEach(e=>e.stickType==="Model"&&this.enabledModelTagSet.add(e.id)),this.updateRenderPointTag(),this.updateRenderPlaneTag(),this.updateRenderModelTag()}updateTagContainerVisible(){var e;(e=this.TagContainerSvelte)==null||e.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation}),this.filter3DTag().forEach(n=>{var o;(o=n.tag3DContentSvelte)==null||o.svelteApp.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation})})}handleFiveCameraUpdateDebounce(){return Js(()=>{this.setUnfoldedByCamera(),this.updateRenderAllTags()},100)}handleFiveCameraUpdate(){this.updateRenderPointTag()}handleFivePanoArrived(){return X(this,null,function*(){yield this.setVisibleAndUnfolded(),this.setModelMedialVisibleByPanoIndex(),this.tags.forEach(e=>{e.temporaryState=he(G({},e.temporaryState),{visible:!0})}),this.store.visibleWithAnimation=!0,this.updateTagContainerVisible()})}setUnfoldedByCamera(){let e=!1;this.tags.forEach(n=>{const o=this.getUnfoldedByCamera(n);!n.state||o!==void 0&&(o===!0&&(e=!0),n.state.unfolded=o)}),e&&this.tags.forEach(n=>{const o=this.getTagConfig(n).unfoldedConfig;typeof o=="object"&&(o.autoUnfold||o.keep)||n.state&&(n.state.unfolded=!1)})}updateRenderPointTag(){var n;const e=this.sort(this.filterPointTag());if(this.setPointTagPosition(),this.TagContainerSvelte)this.TagContainerSvelte.$set({tags:e,state:this.state,temporaryState:this.temporaryState});else{const o=(n=this.five.getElement())==null?void 0:n.parentElement;if(!o)return console.error("updateRenderPlaneTag: tag2DContainer not found");this.TagContainerSvelte=new bA({target:o,props:{hooks:this.hooks,tags:e,state:this.state,temporaryState:this.temporaryState,mediaStore:this.mediaStore}})}}updateRenderPlaneTag(){this.sort([...this.filterPlaneTag(),...this.filter3DPointTag(),...this.filterModelTag()]).forEach(n=>{var o;if(n.tag3DContentSvelte){const{svelteApp:s,domContainer:r,initialNormal:a,currentNormal:l}=n.tag3DContentSvelte;if(s.$set({tag:n,hooks:this.hooks,state:this.state,temporaryState:this.temporaryState}),!a.equals(l)){const c=new O.Quaternion().setFromUnitVectors(a,l);r.css3DObject.setRotationFromQuaternion(c)}}else{if(((o=n.state)==null?void 0:o.visible)===!1)return;if(this.css3DRenderPlugin||(this.css3DRenderPlugin=en(this.five)),n.stickType==="3DPoint"&&!n.normal)return console.error("updateRenderPlaneTag: \u4E09\u7EF4\u70B9\u6807\u7B7E\u7F3A\u5C11\u6CD5\u5411\u91CF\uFF01");const s=(()=>n.stickType==="Plane"?n.position:n.stickType==="Model"&&n.contentType==="MediaModel"?kA(n):lp(this.five.camera.position,it(n.position),it(n.normal)))();if(!s)return;const r=function(){if(n.normal)return it(n.normal);if(n.stickType==="Plane")return _i(n.position);if(n.contentType==="MediaModel")return _i(s)}();if(!r)return;const a=this.getTagConfig(n).tag3DConfig,l=this.css3DRenderPlugin.create3DDomContainer(s,a);if(!l)return;this.store.css3DRenderDisposer.set(n.id,l.dispose),n.tag3DContentSvelte={svelteApp:new gl({target:l.container,props:{tag:n,hooks:this.hooks,state:n.contentType==="MediaModel"?he(G({},this.state),{visible:!1}):this.state,mediaStore:this.mediaStore,temporaryState:this.temporaryState}}),domContainer:l,initialNormal:r,currentNormal:r}}}),this.checkPanelTag()}updateRenderModelTag(){const e=o=>!this.enabledModelTagSet.has(o.customID);this.gltfObjectGroup.remove(...this.gltfObjectGroup.children.filter(e)),this.tags.filter(He).forEach(o=>{var s;(s=o.model)==null||s.promise.then(r=>{r.visible=o.state.visible})})}disposeAllCSS3DContainer(){for(const[e,n]of this.store.css3DRenderDisposer)n==null||n();this.store.css3DRenderDisposer=new Map}checkPanelTag(){this.filter2DPointTag().forEach(e=>{var n;(n=e.tag3DContentSvelte)==null||n.domContainer.dispose(),e.tag3DContentSvelte=void 0});for(const[e,n]of this.store.css3DRenderDisposer){const o=this.getTagById(e);(!o||o.stickType==="2DPoint")&&(n==null||n(),this.store.css3DRenderDisposer.delete(e))}}addMediaModelTag(e){return X(this,null,function*(){const n=e.filter(He).map(this.loadModel);yield Promise.all(n),this.five.getCurrentState().mode==="Panorama"&&this.setModelMedialVisibleByPanoIndex(),this.updateRenderAllTags()})}changeTagMode(e,n){var o,s,r,a,l;((r=(s=(o=e.tag3DContentSvelte)==null?void 0:o.domContainer)==null?void 0:s.css3DObject)==null?void 0:r.mode)!==n&&((a=e.config)!=null&&a.tag3DConfig?e.config.tag3DConfig.mode=n:e.config?e.config.tag3DConfig={mode:n}:e.config={tag3DConfig:{mode:n}},(l=this.store.css3DRenderDisposer.get(e.id))==null||l(),e.tag3DContentSvelte=void 0)}}const LA=(i,t)=>new vl(i,t);function pe(i,t){this._camera=i||null,this._domElement=t||document,this._raycaster=new k.Raycaster,this._selected=null,this._boundObjs={};var e=this;this._$onClick=function(){e._onClick.apply(e,arguments)},this._$onDblClick=function(){e._onDblClick.apply(e,arguments)},this._$onMouseMove=function(){e._onMouseMove.apply(e,arguments)},this._$onMouseDown=function(){e._onMouseDown.apply(e,arguments)},this._$onMouseUp=function(){e._onMouseUp.apply(e,arguments)},this._$onTouchMove=function(){e._onTouchMove.apply(e,arguments)},this._$onTouchStart=function(){e._onTouchStart.apply(e,arguments)},this._$onTouchEnd=function(){e._onTouchEnd.apply(e,arguments)},this._$onContextmenu=function(){e._onContextmenu.apply(e,arguments)},this._domElement.addEventListener("click",this._$onClick,!1),this._domElement.addEventListener("dblclick",this._$onDblClick,!1),this._domElement.addEventListener("mousemove",this._$onMouseMove,!1),this._domElement.addEventListener("mousedown",this._$onMouseDown,!1),this._domElement.addEventListener("mouseup",this._$onMouseUp,!1),this._domElement.addEventListener("touchmove",this._$onTouchMove,!1),this._domElement.addEventListener("touchstart",this._$onTouchStart,!1),this._domElement.addEventListener("touchend",this._$onTouchEnd,!1),this._domElement.addEventListener("contextmenu",this._$onContextmenu,!1)}pe.prototype.destroy=function(){this._domElement.removeEventListener("click",this._$onClick,!1),this._domElement.removeEventListener("dblclick",this._$onDblClick,!1),this._domElement.removeEventListener("mousemove",this._$onMouseMove,!1),this._domElement.removeEventListener("mousedown",this._$onMouseDown,!1),this._domElement.removeEventListener("mouseup",this._$onMouseUp,!1),this._domElement.removeEventListener("touchmove",this._$onTouchMove,!1),this._domElement.removeEventListener("touchstart",this._$onTouchStart,!1),this._domElement.removeEventListener("touchend",this._$onTouchEnd,!1),this._domElement.removeEventListener("contextmenu",this._$onContextmenu,!1)};pe.eventNames=["click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","contextmenu","touchstart","touchend"];pe.prototype._getRelativeMouseXY=function(i){var t=i.target||i.srcElement;t.nodeType===3&&(t=t.parentNode);var e={x:0,y:0},n=t,o=getComputedStyle(n,null);e.y+=parseInt(o.getPropertyValue("padding-top"),10),e.x+=parseInt(o.getPropertyValue("padding-left"),10);do e.x+=n.offsetLeft,e.y+=n.offsetTop,o=getComputedStyle(n,null),e.x+=parseInt(o.getPropertyValue("border-left-width"),10),e.y+=parseInt(o.getPropertyValue("border-top-width"),10);while(n=n.offsetParent);var s={width:t===window?window.innerWidth:t.offsetWidth,height:t===window?window.innerHeight:t.offsetHeight};return{x:Number((i.pageX-e.x)/s.width)*2-1,y:-((i.pageY-e.y)/s.height)*2+1}};pe.prototype._objectCtxInit=function(i){i._3xDomEvent={}};pe.prototype._objectCtxDeinit=function(i){delete i._3xDomEvent};pe.prototype._objectCtxIsInit=function(i){return!!i._3xDomEvent};pe.prototype._objectCtxGet=function(i){return i._3xDomEvent};pe.prototype.camera=function(i){return i&&(this._camera=i),this._camera};pe.prototype.bind=function(i,t,e,n){console.assert(pe.eventNames.indexOf(t)!==-1,"not available events:"+t),this._objectCtxIsInit(i)||this._objectCtxInit(i);var o=this._objectCtxGet(i);o[t+"Handlers"]||(o[t+"Handlers"]=[]),o[t+"Handlers"].push({callback:e,useCapture:n}),this._boundObjs[t]===void 0&&(this._boundObjs[t]=[]),this._boundObjs[t].push(i)};pe.prototype.addEventListener=pe.prototype.bind;pe.prototype.unbind=function(i,t,e,n){console.assert(pe.eventNames.indexOf(t)!==-1,"not available events:"+t),this._objectCtxIsInit(i)||this._objectCtxInit(i);var o=this._objectCtxGet(i);o[t+"Handlers"]||(o[t+"Handlers"]=[]);for(var s=o[t+"Handlers"],r=0;r<s.length;r++){var a=s[r];if(e==a.callback&&n==a.useCapture){s.splice(r,1);break}}var l=this._boundObjs[t].indexOf(i);this._boundObjs[t].splice(l,1)};pe.prototype.removeEventListener=pe.prototype.unbind;pe.prototype._bound=function(i,t){var e=this._objectCtxGet(t);return e?!!e[i+"Handlers"]:!1};pe.prototype._onMove=function(i,t,e,n){var o=this._boundObjs[i];if(!(o===void 0||o.length===0)){var s=new k.Vector2;s.set(t,e),this._raycaster.setFromCamera(s,this._camera);var r=this._raycaster.intersectObjects(o),a=this._selected;if(r.length>0){var l,c,d,u=r[0],f=u.object;this._selected=f,d=this._bound("mousemove",f),a!=f&&(l=this._bound("mouseover",f),c=a&&this._bound("mouseout",a))}else c=a&&this._bound("mouseout",a),this._selected=null;d&&this._notify("mousemove",f,n,u),l&&this._notify("mouseover",f,n,u),c&&this._notify("mouseout",a,n,u)}};pe.prototype._onEvent=function(i,t,e,n){var o=this._boundObjs[i];if(!(o===void 0||o.length===0)){var s=new k.Vector2;s.set(t,e),this._raycaster.setFromCamera(s,this._camera);var r=this._raycaster.intersectObjects(o,!0);if(r.length!==0){for(var a=r[0],l=a.object,c=this._objectCtxGet(l),d=l.parent;typeof c=="undefined"&&d;)c=this._objectCtxGet(d),d=d.parent;!c||this._notify(i,l,n,a)}}};pe.prototype._notify=function(i,t,e,n){var o=this._objectCtxGet(t),s=o?o[i+"Handlers"]:null;if(!o||!s||s.length===0){t.parent&&this._notify(i,t.parent,e,n);return}for(var s=o[i+"Handlers"],r=0;r<s.length;r++){var a=s[r],l=!0;a.callback({type:i,target:t,origDomEvent:e,intersect:n,stopPropagation:function(){l=!1}}),!!l&&a.useCapture===!1&&t.parent&&this._notify(i,t.parent,e,n)}};pe.prototype._onMouseDown=function(i){return this._onMouseEvent("mousedown",i)};pe.prototype._onMouseUp=function(i){return this._onMouseEvent("mouseup",i)};pe.prototype._onMouseEvent=function(i,t){var e=this._getRelativeMouseXY(t);this._onEvent(i,e.x,e.y,t)};pe.prototype._onMouseMove=function(i){var t=this._getRelativeMouseXY(i);this._onMove("mousemove",t.x,t.y,i),this._onMove("mouseover",t.x,t.y,i),this._onMove("mouseout",t.x,t.y,i)};pe.prototype._onClick=function(i){this._onMouseEvent("click",i)};pe.prototype._onDblClick=function(i){this._onMouseEvent("dblclick",i)};pe.prototype._onContextmenu=function(i){this._onMouseEvent("contextmenu",i)};pe.prototype._onTouchStart=function(i){return this._onTouchEvent("touchstart",i)};pe.prototype._onTouchEnd=function(i){return this._onTouchEvent("touchend",i)};pe.prototype._onTouchMove=function(i){if(i.touches.length==1){i.preventDefault();var t=Number(i.touches[0].pageX/window.innerWidth)*2-1,e=-(i.touches[0].pageY/window.innerHeight)*2+1;this._onMove("mousemove",t,e,i),this._onMove("mouseover",t,e,i),this._onMove("mouseout",t,e,i)}};pe.prototype._onTouchEvent=function(i,t){if(t.touches.length==1){t.preventDefault();var e=Number(t.touches[0].pageX/window.innerWidth)*2-1,n=-(t.touches[0].pageY/window.innerHeight)*2+1;this._onEvent(i,e,n,t)}};function bl(i){const t=new k.Box3,e=new k.Vector3;if(i.updateMatrixWorld(!1),i.traverse(n=>{var s;if(n.name==="shadow")return;const o=n.geometry;if(o!==void 0)if((s=o==null?void 0:o.attributes)!=null&&s.position){const r=o.attributes.position;for(let a=0,l=r.count;a<l;a++)e.fromBufferAttribute(r,a).applyMatrix4(n.matrixWorld),t.expandByPoint(e)}else o.vertices.forEach(r=>{const a=r.clone().applyMatrix4(n.matrixWorld);t.expandByPoint(a)})}),!t.isEmpty())return t.translate(i.position.clone().negate()),t}class vn{constructor(t,e){m(this,"originObject3D");m(this,"hooks");m(this,"disposers",[]);m(this,"helperObject3D");m(this,"camera");m(this,"model");m(this,"scene");m(this,"container");m(this,"domEvents");m(this,"isDragging",!1);m(this,"enabled",!1);m(this,"name","BaseController");m(this,"boundingBox");m(this,"offset");m(this,"onRender");m(this,"onWantsTapGesture",t=>{if(this.getIntersectObject(t))return!1});var c,d;this.hooks=(c=t.sharedHooks)!=null?c:new $t,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 pe(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=(...u)=>this.onSetOriginObjectScale(...u),o=(...u)=>this.onSetOriginObjectRotate(...u),s=(...u)=>this.onSetOriginObjectPosition(...u),r=(...u)=>this.onApplyOriginObjectScale(...u),a=(...u)=>this.onApplyOriginObjectRotate(...u),l=(...u)=>this.onApplyOriginObjectPosition(...u);this.hooks.on("setObjectScale",n),this.hooks.on("setObjectRotate",o),this.hooks.on("setObjectPosition",s),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",o),this.hooks.off("setObjectPosition",s),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.matrix4,t.origin)}onApplyOriginObjectRotate(t){this.applyHelperQuaternion(t.quaternion,t.origin)}onApplyOriginObjectPosition(t){this.applyHelperMatrix4(t.matrix4)}onSetOriginObjectScale(t){this.helperObject3D.scale.copy(t),this.updateOffsetByScale(t)}onSetOriginObjectRotate(t,e){this.helperObject3D.quaternion.copy(t)}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 k.Vector3().subVectors(this.boundingBox.max,e).multiply(t).add(e),o=new k.Vector3().subVectors(this.boundingBox.min,e).multiply(t).add(e),s=this.calculateOffset(this.offset,{min:o,max:n});this.helperObject3D.position.copy(s),this.helperObject3D.initialPosition()}}hoverListener(t,e=16777215,n=1){const o=(Array.isArray(t)?t:[t]).filter(Ne),s=[];for(const r of o)if(r instanceof k.Mesh||r instanceof k.Group){const a=r instanceof k.Group?r.children.filter(f=>f instanceof k.Mesh):[r];a.forEach(f=>{f.__originalColor__=f.material.color.clone(),f.__originalOpacity__=f.material.opacity});const l=()=>{a.forEach(f=>{f.material.color.set(e),f.material.opacity=n}),this.render()},c=()=>{a.forEach(f=>{f.material.color.copy(f.__originalColor__),f.material.opacity=f.__originalOpacity__}),this.render()},d=()=>{this.isDragging||l()},u=()=>{this.isDragging||c()};for(const f of a)this.domEvents.addEventListener(f,"mouseover",d),this.domEvents.addEventListener(f,"mouseout",u),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",c),this.hooks.on("rotateEnd",c),s.push(()=>{this.domEvents.removeEventListener(f,"mouseover",d),this.domEvents.removeEventListener(f,"mouseout",u),this.hooks.off("moveStart",l),this.hooks.off("moveEnd",c),this.hooks.off("rotateEnd",c)})}return()=>s.forEach(r=>r==null?void 0:r())}getIntersectObject(t){const e=this.camera.position,n=this.helperObject3D;if(!n)return;let o;const s=t.intersectObject(n,!0)[0];if(!!s&&(o=s,o.object=n,!!o)){if(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,o=new k.Vector3(0,0,0);if(!t)return o;const s=()=>e||(this.boundingBox?this.boundingBox:(this.boundingBox=bl(n),this.boundingBox));if(typeof t.x=="number")o.setX(t.x);else if(typeof t.x=="object"){const r=s();o.setX((r.max.x-r.min.x)*t.x.percents)}if(typeof t.y=="number")o.setY(t.y);else if(typeof t.y=="object"){const r=s();o.setY((r.max.y-r.min.y)*t.y.percents)}if(typeof t.z=="number")o.setZ(t.z);else if(typeof t.z=="object"){const r=s();o.setZ((r.max.z-r.min.z)*t.z.percents)}return o}}class SA extends vn{constructor(...e){super(...e);m(this,"name","ScaleController")}setScale(e){var l,c,d;let n=1,o=1,s=1;typeof e=="number"?(n=e,o=e,s=e):typeof e=="object"&&(n=(l=e.x)!=null?l:1,o=(c=e.y)!=null?c:1,s=(d=e.z)!=null?d:1);const r=new k.Vector3(n,o,s);this.hooks.emit("wantToScale",r)||(this.originObject3D.scale.copy(r),this.hooks.emit("setObjectScale",r),this.hooks.emit("scale",r),this.render())}}class MA extends O.Object3D{constructor(){super()}removeFromParent(){const t=this.parent;return t!==null&&t.remove(this),this}}class gi extends MA{constructor(e,n){var o;super();m(this,"originObject3D");m(this,"onRender");this.originObject3D=e,this.onRender=(o=n==null?void 0:n.onRender)!=null?o:()=>{}}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()}initialPosition(){this.position.add(this.originObject3D.position)}initQuaternion(){this.quaternion.copy(this.originObject3D.quaternion)}applyHelperScaleMatrix4(e,n){this.scale.applyMatrix4(e)}setHelperQuaternion(e,n){if(n){const o=new O.Vector3().subVectors(this.position,n).applyQuaternion(e).add(n);this.position.copy(o)}this.quaternion.copy(e)}applyHelperQuaternion(e,n){if(n){const o=new O.Vector3().subVectors(this.position,n).applyQuaternion(e).add(n);this.position.copy(o)}this.applyQuaternion(e)}dispose(){this.removeFromParent()}}class TA extends gi{}class zA extends gi{}class BA extends gi{}class yl extends gi{}class jA extends yl{}class VA extends k.Group{constructor(e){super();m(this,"direction");this.direction=e||"x"}}class Zr extends k.Mesh{constructor(e,n,o){super(e,n);m(this,"direction");this.direction=o||"x"}}function QA(i,t){const{offsetWidth:e,offsetHeight:n}=t,{top:o,left:s}=t.getBoundingClientRect();return Object.assign(new k.Vector2,{x:(i.x-s)/e*2-1,y:-(i.y-o)/n*2+1})}function yo(i,t,e){if(!t||!e||!i)return;const n=QA(t,e);if(Math.abs(n.x)===1||Math.abs(n.y)===1)return;const o=new k.Raycaster;return o.setFromCamera(n,i),o}function RA(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 Mi extends VA{constructor(e){var d;super(e.direction);m(this,"line");m(this,"arrow");m(this,"lineHeight",.4);m(this,"arrowHeight",.1);this.name="ArrowGroup";const n=new k.Color((d=e.color)!=null?d:16214315),o=new k.MeshBasicMaterial({color:n,depthTest:!1,opacity:1,transparent:!0,side:k.DoubleSide}),s=new k.ConeGeometry(.04,.1,32),r=new Zr(s,o.clone(),e.direction);r.name=`arrow-${e.direction}`,this.arrow=r;const a=.004,l=new k.CylinderGeometry(a,a,.4,32),c=new Zr(l,o.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 Ti={X:15618642,Y:4765519,Z:4227839};class nt{static get X(){return new k.Color(Ti.X).convertSRGBToLinear().clone()}static get Y(){return new k.Color(Ti.Y).convertSRGBToLinear().clone()}static get Z(){return new k.Color(Ti.Z).convertSRGBToLinear().clone()}}class OA extends TA{constructor(e){super(e);m(this,"xArrow",new Mi({direction:"x",color:nt.X}));m(this,"yArrow",new Mi({direction:"y",color:nt.Y}));m(this,"zArrow",new Mi({direction:"z",color:nt.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 zt(i,t){return HA(document.createElement(t!=null?t:"div"),i)}function HA(i,t){if(!t)return i;for(const e in t)e&&t[e]&&(i.style[e]=t[e]);return i}function FA(i){const t=zt(G({position:"absolute",display:"block",borderRadius:"4px",paddingTop:"1px",paddingBottom:"1px",paddingLeft:"4px",paddingRight:"4px",pointerEvents:"none",userSelect:"none",zIndex:"9999",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:(s,r)=>{t.style.left=s,t.style.top=r,e()}}}class GA extends BA{constructor(e,n){var o;super(e);m(this,"yzCircle");m(this,"xzCircle");m(this,"xyCircle");m(this,"xRingHelper");m(this,"yRingHelper");m(this,"zRingHelper");m(this,"xAngleHelper");m(this,"yAngleHelper");m(this,"zAngleHelper");m(this,"angleTips");m(this,"container");(n==null?void 0:n.yzCircleEnable)!==!1&&(this.yzCircle=new zi({direction:"x",color:nt.X}),this.xRingHelper=new Bi({direction:"x"}),this.xAngleHelper=new ji({direction:"x",color:nt.X})),(n==null?void 0:n.xzCircleEnable)!==!1&&(this.xzCircle=new zi({direction:"y",color:nt.Y}),this.yRingHelper=new Bi({direction:"y"}),this.yAngleHelper=new ji({direction:"y",color:nt.Y})),(n==null?void 0:n.xyCircleEnable)!==!1&&(this.xyCircle=new zi({direction:"z",color:nt.Z}),this.zRingHelper=new Bi({direction:"z"}),this.zAngleHelper=new ji({direction:"z",color:nt.Z})),n!=null&&n.container&&(this.container=n==null?void 0:n.container,this.angleTips=FA({display:"none"}),(o=this.container)==null||o.appendChild(this.angleTips.element)),this.show()}updateAngleHelperQuaternion(){var e,n,o,s,r,a,l,c,d,u,f,h;(n=this.xAngleHelper)==null||n.quaternion.copy((e=this.yzCircle)==null?void 0:e.quaternion),(s=this.yAngleHelper)==null||s.quaternion.copy((o=this.xzCircle)==null?void 0:o.quaternion),(a=this.zAngleHelper)==null||a.quaternion.copy((r=this.xyCircle)==null?void 0:r.quaternion),(c=this.xRingHelper)==null||c.quaternion.copy((l=this.yzCircle)==null?void 0:l.quaternion),(u=this.yRingHelper)==null||u.quaternion.copy((d=this.xzCircle)==null?void 0:d.quaternion),(h=this.zRingHelper)==null||h.quaternion.copy((f=this.xyCircle)==null?void 0:f.quaternion)}applyHelperQuaternion(e,n){var o,s,r,a,l,c;(o=this.yzCircle)==null||o.applyQuaternion(e),(s=this.xzCircle)==null||s.applyQuaternion(e),(r=this.xyCircle)==null||r.applyQuaternion(e),(a=this.xAngleHelper)==null||a.baseAxes.applyQuaternion(e),(l=this.yAngleHelper)==null||l.baseAxes.applyQuaternion(e),(c=this.zAngleHelper)==null||c.baseAxes.applyQuaternion(e)}hide(){console.log("hide"),this.remove(this.yzCircle,this.xzCircle,this.xyCircle,this.xRingHelper,this.yRingHelper,this.zRingHelper,this.xAngleHelper,this.yAngleHelper,this.zAngleHelper)}show(){var e;console.log("show"),this.add(...[this.xyCircle,this.xzCircle,this.yzCircle].filter(Boolean)),this.remove(...[this.xRingHelper,this.yRingHelper,this.zRingHelper,this.xAngleHelper,this.yAngleHelper,this.zAngleHelper].filter(Boolean)),(e=this.angleTips)==null||e.hide()}showDraggingHelper(e){var n;this.hide(),this.add(...this.filterRingHelper(e)),this.add(...this.filterAngleHelper(e)),(n=this.angleTips)==null||n.show()}dispose(){var e,n;this.remove(...[this.yzCircle,this.xzCircle,this.xyCircle,this.xRingHelper,this.yRingHelper,this.zRingHelper,this.xAngleHelper,this.yAngleHelper,this.zAngleHelper].filter(Boolean)),(n=(e=this.angleTips)==null?void 0:e.element)==null||n.remove()}filterRingHelper(e){return[this.xRingHelper,this.yRingHelper,this.zRingHelper].filter(n=>e.includes(n==null?void 0:n.direction)).filter(Boolean)}filterAngleHelper(e){return[this.xAngleHelper,this.yAngleHelper,this.zAngleHelper].filter(n=>e.includes(n==null?void 0:n.direction)).filter(Boolean)}}class zi extends k.Mesh{constructor(e){var n;super();m(this,"direction");m(this,"gapAngle",.02);m(this,"geometry",new k.RingGeometry(.25,.3,20,8,this.gapAngle,Math.PI/2-this.gapAngle*2));this.material=new k.MeshBasicMaterial({opacity:.6,color:(n=e.color)!=null?n:16777215,transparent:!0,side:k.DoubleSide,depthTest:!1}),this.direction=e.direction,this.geometry.name=`RotateHelperCircleGeometry-${this.direction}`,this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}}class Bi extends k.Group{constructor(e){super();m(this,"direction");this.direction=e.direction;const n=.015,o=new Array(8).fill(null).map((s,r)=>{const a=new k.RingGeometry(.25,.3,20,8,Math.PI/4*r+n,Math.PI/4-n*2),l=new k.MeshBasicMaterial({opacity:1,color:16777215,depthTest:!1,transparent:!0,side:k.DoubleSide}),c=new k.Mesh(a,l);return c.name=`AxesDashedRing-${this.direction}-${r}`,c});this.add(...o),this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}}class ji extends k.Mesh{constructor(e){var o;super();m(this,"direction");m(this,"baseAxes");switch(e.direction){case"x":this.baseAxes=new k.Vector3(0,0,1);break;case"y":this.baseAxes=new k.Vector3(1,0,0);break;case"z":this.baseAxes=new k.Vector3(1,0,0);break}const n=.3+5e-4;this.geometry=new k.CircleGeometry(n,48,0,1e-4),this.material=new k.MeshBasicMaterial({opacity:.4,color:(o=e.color)!=null?o:16777215,depthTest:!1,transparent:!0,side:k.DoubleSide}),this.direction=e.direction,this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}}function WA(){const i=zt({width:"100%",height:"100%",left:"0",top:"0",position:"absolute",pointerEvents:"none"}),t=zt({boxSizing:"border-box",width:"100%",height:"100%",left:"0",top:"0",position:"relative",display:"flex",alignItems:"center",justifyContent:"center"}),e=zt({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",o={direction:"nesw",element:pt({cursor:"nesw-resize",left:n,bottom:n})},s={direction:"ns",element:pt({cursor:"ns-resize",bottom:n})},r={direction:"nwse",element:pt({cursor:"nwse-resize",right:n,bottom:n})},a={direction:"ew",element:pt({cursor:"ew-resize",right:n})},l={direction:"nesw",element:pt({cursor:"nesw-resize",right:n,top:n})},c={direction:"ns",element:pt({cursor:"ns-resize",top:n})},d={direction:"nwse",element:pt({cursor:"nwse-resize",left:n,top:n})},u={direction:"ew",element:pt({cursor:"ew-resize",left:n})};return new Array(s,a,c,u,o,r,l,d).forEach(h=>t.appendChild(h.element)),{container:i,squares:[o,s,r,a,l,c,d,u]}}function pt(i){const t=zt(G({background:"#FFFFFF",width:"9px",height:"9px",position:"absolute",pointerEvents:"none"},i)),e=zt({width:"15px",height:"15px",position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",pointerEvents:"none"}),n=zt({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 NA extends jA{constructor(e,n,o,s){super(e);m(this,"points",[]);m(this,"cornerPositions",[]);m(this,"css3DInstance");m(this,"plane");m(this,"css3DRenderer",new Jt);m(this,"camera");m(this,"scene");m(this,"container");m(this,"enabled",!1);this.camera=o,this.scene=s,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}updatePosition(){var e;this.helperObject.position.copy(this.originObject3D.position),(e=this.plane)==null||e.position.copy(this.originObject3D.position)}updateQuaternion(){var e;(e=this.plane)==null||e.quaternion.copy(this.originObject3D.quaternion)}applyMatrix4(e){var n;super.applyMatrix4(e),this.helperObject.applyMatrix4(e),(n=this.plane)==null||n.applyMatrix4(e),this.cornerPositions.forEach(o=>o.applyMatrix4(e))}showDraggingHelper(){}applyHelperScaleMatrix4(e,n){var o;(o=this.plane)==null||o.scale.applyMatrix4(e),this.helperObject.applyScaleMatrix4(e)}updatePoints(){const e=this.calculatePointPosition(this.cornerPositions);this.points.forEach((n,o)=>{n.position.copy(e[o])})}applyHelperQuaternion(e,n){var s;const o=(s=this.css3DInstance)==null?void 0:s.css3DObject;if(o){const r=new k.Vector3().subVectors(o.position,n).applyQuaternion(e).add(n);o.position.copy(r),o.applyQuaternion(e)}if(this.plane){const r=new k.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 k.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;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 o=n.css3DObject.container,{container:s,squares:r}=WA();this.points=r.map((l,c)=>({direction:l.direction,point:l.element,position:this.calculatePointPosition(e)[c]})),o.insertBefore(s,(a=o.children[0])!=null?a:null),this.updatePosition()}getCornerPositions(){const{originObject3D:e}=this;if(e.isCSS3DObjectPlus)return e.cornerPoints;console.error("\u5F53\u524D\u7269\u4F53\u6682\u65F6\u4E0D\u652F\u6301 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)]}}class _A extends zA{constructor(e){super(e);m(this,"box");m(this,"outline");m(this,"originObject");m(this,"positionAttribute");this.originObject=e,this.positionAttribute=new k.BufferAttribute(new Float32Array(8*3),3),this.box=this.createBox(),this.outline=this.createOutline(),this.add(this.box,this.outline),this.update()}update(){const e=bl(this.originObject);if(!e)return;const{min:n,max:o}=e;this.positionAttribute.setXYZ(0,o.x,o.y,o.z),this.positionAttribute.setXYZ(1,n.x,o.y,o.z),this.positionAttribute.setXYZ(2,n.x,n.y,o.z),this.positionAttribute.setXYZ(3,o.x,n.y,o.z),this.positionAttribute.setXYZ(4,o.x,o.y,n.z),this.positionAttribute.setXYZ(5,n.x,o.y,n.z),this.positionAttribute.setXYZ(6,n.x,n.y,n.z),this.positionAttribute.setXYZ(7,o.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 k.BufferGeometry;n.setIndex(new k.BufferAttribute(e,1)),n.setAttribute("position",this.positionAttribute);const o=new k.LineBasicMaterial({color:64767,linewidth:1,opacity:1,depthTest:!1,transparent:!0,toneMapped:!1}),s=new k.LineSegments(n,o);return s.matrixAutoUpdate=!1,s}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 k.BufferGeometry;n.setIndex(new k.BufferAttribute(e,1)),n.setAttribute("position",this.positionAttribute);const o=new k.MeshBasicMaterial({color:64767,opacity:.1,depthTest:!1,transparent:!0});return new k.Mesh(n,o)}}class XA extends vn{constructor(...e){super(...e);m(this,"name","MoveController");m(this,"startInfo");m(this,"_moveByMouseEnable",!1);m(this,"mouseInfo");m(this,"mousedownEventListenerDisposer");const n=this.helperObject3D;this.hoverListener([n.xArrow,n.yArrow,n.zArrow]);const o=this.dragStart.bind(this),s=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",o),document.addEventListener("mousemove",s),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",o),document.removeEventListener("mousemove",s),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:o}=e;this.mouseInfo={x:n,y:o,mouseDownTimestamp:Date.now()}}handleMouseUp(e){if(!this.mouseInfo)return;const{x:n,y:o}=e;this.mouseInfo.x===n&&this.mouseInfo.y===o&&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 o=(n==null?void 0:n.object).direction;if(!o)return this.dragEnd();const s=new k.Vector3(1,0,0).applyQuaternion(this.helperObject3D.quaternion),r=new k.Vector3(0,1,0).applyQuaternion(this.helperObject3D.quaternion),a=new k.Vector3(0,0,1).applyQuaternion(this.helperObject3D.quaternion),l=(()=>{switch(o){case"x":return s;case"y":return r;case"z":return a}})(),c=(()=>{switch(o){case"x":case"y":return a;case"z":return s}})(),d=n.point.clone(),u=new k.Plane;u.setFromNormalAndCoplanarPoint(c,d),this.startInfo={startVectorProject:d.clone().projectOnVector(l),directionVector:l,plane:u},this.helperObject3D.showDraggingHelper([o]),this.hooks.emit("moveStart"),this.isDragging=!0,console.log("%c MoveController dragStart","color: #e5af2e")}dragging(e){if(!this.isDragging||!this.startInfo)return;const n=yo(this.camera,e,this.container);return n?(console.log("%c MoveController dragging","color: #49de1b"),this.move(n),!1):this.dragEnd()}move(e){if(!this.startInfo)return this.dragEnd();const{plane:n,directionVector:o,startVectorProject:s}=this.startInfo,r=this.originObject3D,a=e.ray.intersectPlane(n,new k.Vector3);if(!a)return;const l=a.clone().projectOnVector(o),c=l.clone().sub(s),d=new k.Matrix4;d.setPosition(c);const u=r.position.clone().applyMatrix4(d);this.hooks.emit("wantToMove",u)||(r.applyMatrix4(d),s.copy(l),this.hooks.emit("applyObjectPosition",{matrix4:d}),this.hooks.emit("move",u))}dragEnd(){!this.isDragging||(console.log("%c MoveController dragEnd","color: #e94e4e"),this.startInfo=void 0,this.isDragging=!1,this.helperObject3D.show(),this.hooks.emit("moveEnd"))}}class an{constructor(t,e,n,o,s,r){m(this,"helperController");m(this,"five");m(this,"onFiveWantsTapGesture",t=>{if(!this.helperController)return;const e=this.helperController.onWantsTapGesture(t);return this.five.needsRender=!0,e});m(this,"onFiveWantsGesture",(...t)=>{if(!this.helperController)return;const e=this.helperController.onWantsGesture(...t);return this.five.needsRender=!0,e});m(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 u=()=>{t.needsRender=!0};this.helperController=new e({camera:a,model:l,originObject3D:n,helperObject3D:o,container:d,scene:c,onRender:u,sharedHooks:r},s),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 YA="v1.0.1",UA="Object3DHelper",wo=`${UA}@${YA}`,JA=()=>{console.error(`${wo} is disposed`)},ZA=()=>{console.warn(`${wo} is disabled`)},qA=()=>{console.error(`${wo} is disabled`)};class KA{constructor(t){m(this,"controllers",{});m(this,"state",{visible:!0,enabled:!0,disposed:!1});m(this,"hooks",new $t);m(this,"eventListener",{});t&&this.addControllers(t),this.setState(this.state)}show(t){return X(this,null,function*(){this.setState({visible:!0},t)})}hide(t){return X(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 JA();if(!this.state.enabled&&t.enabled!==!0&&t.disposed!==!0)return qA();const n=G({},this.state);this.state=G(G({},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=G(G({},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 o=n;(e=(t=this.eventListener)[o])==null||e.call(t)}}actionIfStateIsEnabled(t,e){if(this.state.enabled)return t();e!=null&&e.warnLog&&ZA()}}class $A extends vn{constructor(...e){super(...e);m(this,"name","RotateController");m(this,"startInfo");m(this,"lastRotation");m(this,"rotations",[]);m(this,"helperObject3DQuaternion",this.originObject3D.quaternion.clone());m(this,"removeListener");const n=this.helperObject3D;this.hoverListener([n.xyCircle,n.xzCircle,n.yzCircle]);const o=this.dragStart.bind(this),s=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",o),document.addEventListener("mousemove",s),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",o),document.removeEventListener("mousemove",s),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.updateAngleHelperQuaternion(),this.helperObject3D.applyHelperQuaternion(this.originObject3D.quaternion)}setRotateAngle(e){const{x:n=0,y:o=0,z:s=0}=e,r=new k.Euler(Math.PI*n/180,Math.PI*o/180,Math.PI*s/180),a=new k.Quaternion().setFromEuler(r);if(this.hooks.emit("wantToRotate",a))return;const{originObject3D:c,rotateCenter:d}=this;if(d){const u=new k.Vector3().subVectors(c.position,d).applyQuaternion(a).add(d);c.position.copy(u)}c.quaternion.copy(a),this.helperObject3DQuaternion.copy(a),this.hooks.emit("setObjectRotate",a,d),this.hooks.emit("rotate",a),this.render()}dispose(){this.removeListener(),super.dispose()}onApplyOriginObjectScale(e){}dragStart(e){if(this.isDragging)return;const n=e==null?void 0:e.intersect;if(!n)return this.dragEnd();const o=(n==null?void 0:n.object).direction;if(!o)return this.dragEnd();this.helperObject3D.updateAngleHelperQuaternion();const s=n.point,r=this.getAngleHelper(o);this.setTipsAngle(0);const a=s.clone();a.y+=.2,this.setTipsPosition(a);const l=new k.Vector3(1,0,0).applyQuaternion(this.helperObject3DQuaternion),c=new k.Vector3(0,1,0).applyQuaternion(this.helperObject3DQuaternion),d=new k.Vector3(0,0,1).applyQuaternion(this.helperObject3DQuaternion),u=(()=>{switch(o){case"x":return l;case"y":return c;case"z":return d}})(),f=new k.Plane().setFromNormalAndCoplanarPoint(u,s),h=new k.Vector3;f.projectPoint(s.clone(),h);const p=h.clone().sub(this.rotateCenter),A=p.clone(),g=p.angleTo(r.baseAxes);this.setAngleHelperStart(o,g),this.setAngleHelperLength(o,0),this.rotations.push({vector:p.clone(),direction:!0}),this.startInfo={direction:o,startVector:p,staticStartVector:A,plane:f,angleHelper:r},this.helperObject3D.showDraggingHelper([o]),this.hooks.emit("rotateStart"),this.isDragging=!0,console.log(`%c RotateController dragStart ${o}`,"color: #e5af2e")}dragging(e){var o;if(!this.isDragging)return;const n=yo(this.camera,e,this.container);return n?(console.log(`%c RotateController dragging ${(o=this.startInfo)==null?void 0:o.direction}`,"color: #49de1b"),this.rotate(n),!1):this.dragEnd()}rotate(e){if(!this.startInfo)return this.dragEnd();const{startVector:n,plane:o,angleHelper:s,staticStartVector:r,direction:a}=this.startInfo,l=e.ray.intersectPlane(o,new k.Vector3);if(!l)return;const c=this.rotateCenter,d=new k.Vector3;o.projectPoint(l.clone(),d);const u=d.clone().sub(c);if(n.angleTo(u)===0||(this.lastRotation===void 0&&(this.lastRotation={angle:0}),this.rotations.length===0))return;const f=(()=>{if(this.rotations.length===1)return u.angleTo(s.baseAxes)>r.angleTo(s.baseAxes);{const v=this.rotations[this.rotations.length-1],w=this.rotations[this.rotations.length-2],y=u.angleTo(w.vector),C=u.angleTo(v.vector),I=v.vector.angleTo(w.vector);if(I===0||C===0||y===0)return;if(y>C&&y>I)return v.direction;if(y<I&&C<I||y<C&&C>I)return!v.direction}})();if(f===void 0)return console.warn("rotationDirection is undefined");const h=new k.Quaternion().setFromUnitVectors(n.clone().normalize(),u.clone().normalize()),{originObject3D:p}=this,A=p.quaternion.clone().premultiply(h);if(!this.hooks.emit("wantToRotate",A)){if(this.rotations.push({vector:u,direction:f}),this.rotations=this.rotations.slice(-2),this.lastRotation.angle=this.lastRotation.angle+u.angleTo(n)*(f?1:-1),this.setAngleHelperLength(a,this.lastRotation.angle),this.setTipsAngle(this.lastRotation.angle/Math.PI*180),c){const v=new k.Vector3().subVectors(p.position,c).applyQuaternion(h).add(c);p.position.copy(v)}p.applyQuaternion(h),this.helperObject3DQuaternion.premultiply(h),this.hooks.emit("applyObjectRotate",{quaternion:h,origin:c}),this.hooks.emit("rotate",p.quaternion),this.startInfo.startVector=u}}dragEnd(){!this.isDragging||(console.log("%c RotateController dragEnd","color: #e94e4e"),this.startInfo=void 0,this.isDragging=!1,this.lastRotation=void 0,this.rotations=[],this.helperObject3D.show(),this.hooks.emit("rotateEnd"))}getAngleHelper(e){switch(e){case"x":return this.helperObject3D.xAngleHelper;case"y":return this.helperObject3D.yAngleHelper;case"z":return this.helperObject3D.zAngleHelper}}setAngleHelperStart(e,n){const o=this.getAngleHelper(e);if(o instanceof k.Mesh&&o.geometry instanceof k.CircleGeometry){const{radius:s,segments:r,thetaLength:a}=o.geometry.parameters;o.geometry=new k.CircleGeometry(s,r,n,a)}else console.warn("only support THREE.CircleGeometry")}setAngleHelperLength(e,n){const s=n>=0?Math.max(n,.001):Math.min(n,-.001),r=this.getAngleHelper(e);if(r instanceof k.Mesh&&r.geometry instanceof k.CircleGeometry){const{radius:a,thetaStart:l}=r.geometry.parameters,c=Math.ceil(Math.abs(s)*(40/(2*Math.PI)));r.geometry=new k.CircleGeometry(a,c,l,s)}else console.warn("only support THREE.CircleGeometry")}setTipsAngle(e){var o;const n=(o=this.helperObject3D.angleTips)==null?void 0:o.element;!n||(n.innerText=`${e.toFixed(0)}\xB0`)}setTipsPosition(e){const n=this.helperObject3D.angleTips;if(!n)return;const o=e.project(this.camera),{x:s,y:r,z:a}=o;if(a>1)return;const l=(s+1)/2*100+"%",c=(-r+1)/2*100+"%";n.setLeftTop(l,c)}}class ev extends vn{constructor(...e){super(...e);m(this,"startInfo");m(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()}onApplyOriginObjectScale(e){}getDragPlane(){const e=new k.Plane,n=this.helperObject3D.cornerPositions;if(n.length!==0)return n.length<3?e.setFromNormalAndCoplanarPoint(this.originObject3D.getWorldDirection(new O.Vector3),n[0]):e.setFromCoplanarPoints(n[0],n[1],n[2]),e}dragStart(e,n){var s,r;(r=(s=this.helperObject3D).updatePoints)==null||r.call(s);const o=this.getDragPlane();if(!o)return this.dragEnd();this.startInfo={startPoint:{position:n.position.clone(),direction:n.direction},plane:o},this.hooks.emit("scaleStart"),this.render(),this.isDragging=!0,console.log("%c RectangleScaleController dragStart","color: #e5af2e")}dragging(e){if(!this.isDragging)return;const n=yo(this.camera,e,this.container);if(!n)return this.dragEnd();this.scale(n),console.log("%c RectangleScaleController dragging","color: #49de1b")}scale(e){var B,W;if(!this.startInfo)return;const n=this.originObject3D,{startPoint:o,plane:s}=this.startInfo,r=this.helperObject3D.cornerPositions;if(r.length<4)return this.dragEnd();const a=e.ray.intersectPlane(s,new O.Vector3);if(!a||RA(a,this.camera.position))return;const l=new O.Vector3().addVectors(r[0],r[2]).divideScalar(2),{position:c,direction:d}=o,u=new O.Vector3().subVectors(r[1],r[0]),f=new O.Vector3().subVectors(r[3],r[0]),h=F=>{const Y=new O.Vector3(0,0,0);if(!this.startInfo)return Y;const V=(F==="ew"?u:f).clone(),E=c.clone().projectOnVector(V),R=a.clone().projectOnVector(V),H=l.clone().projectOnVector(V);if(R.equals(E))return Y;if(F==="ns"&&typeof this.startInfo.dragPointInCenterBottom!="boolean"){const _=new O.Vector3().subVectors(R,H),J=_.x<0&&V.x>=0,de=_.y<0&&V.y>=0,ue=_.z<0&&V.z>=0;this.startInfo.dragPointInCenterBottom=J||de||ue}if(F==="ew"&&typeof this.startInfo.dragPointInCenterLeft!="boolean"){const _=new O.Vector3().subVectors(R,H),J=_.x<0&&V.x>=0,de=_.y<0&&V.y>=0,ue=_.z<0&&V.z>=0;this.startInfo.dragPointInCenterLeft=J||de||ue}const N=new O.Vector3().subVectors(R,E),U=N.length();return U>.3?(console.warn("offset.length() > 0.3, skipped",U),Y):N},p=h("ew"),A=h("ns"),g=()=>{const F=p;this.helperObject3D.cornerPositions.forEach((Y,V)=>{var E;(E=this.startInfo)!=null&&E.dragPointInCenterLeft?(V===0||V===3)&&Y.add(F):(V===1||V===2)&&Y.add(F)})},v=()=>{const F=A;this.helperObject3D.cornerPositions.forEach((Y,V)=>{var E;(E=this.startInfo)!=null&&E.dragPointInCenterBottom?(V===0||V===1)&&Y.add(F):(V===2||V===3)&&Y.add(F)})};switch(d){case"ew":g();break;case"ns":v();break;case"nesw":case"nwse":g(),v()}const w=new O.Vector3().subVectors(r[1],r[0]).length()/u.length(),y=new O.Vector3().subVectors(r[3],r[0]).length()/f.length(),C=new O.Vector3(w,y,1),I=new k.Matrix4().scale(C);n.isCSS3DObjectPlus?n.applyScaleMatrix4(I):n.scale.applyMatrix4(I),o.position.copy(a);const P=new O.Vector3().addVectors(r[0],r[2]).divideScalar(2),L=new O.Vector3().subVectors(P,l),D=new k.Matrix4().setPosition(L);n.applyMatrix4(D),(B=this.helperObject3D.css3DInstance)==null||B.css3DObject.applyMatrix4(D),(W=this.helperObject3D.plane)==null||W.applyMatrix4(D),this.hooks.emit("applyObjectScale",{matrix4:I}),this.hooks.emit("applyObjectPosition",{matrix4:D}),this.render()}dragEnd(){!this.isDragging||(this.startInfo=void 0,this.isDragging=!1,this.hooks.emit("scaleEnd"),this.render(),console.log("%c RectangleScaleController dragEnd","color: #e94e4e"))}}class tv extends ev{constructor(...e){super(...e);m(this,"name","CSS3DScaleController");this.addHTMLEventListener()}addHTMLEventListener(){this.helperObject3D.points.forEach(e=>{if(!e)return;const n=e.point,o=a=>this.dragStart(a,e),s=this.dragging.bind(this),r=this.dragEnd.bind(this);n.addEventListener("dragstart",o),n.addEventListener("drag",s),n.addEventListener("dragend",r)})}}class nv extends vn{constructor(...e){super(...e);m(this,"name","BoundingBoxController")}}class iv extends yl{constructor(t){super(t)}}const Co="v1.0.0",Ki="Object3DHelperPlugin",Ai=`${Ki}@${Co}`,ov=()=>{console.error(`${Ai} is disposed`)},sv=()=>{console.warn(`${Ai} is disabled`)},rv=()=>{console.error(`${Ai} is disabled`)};class wl extends ci{constructor(e){super(e);m(this,"version",Co);m(this,"name",Ki);m(this,"state",{visible:!0,enabled:!0,disposed:!1});m(this,"objectHelperMap",new Map);m(this,"css3DObjectParentMap",new Map);m(this,"css3DRender");this.five=e,this.css3DRender=new Jt(this.five.scene),console.warn("Object3DHelper: \u4F7F\u7528\u6B64\u63D2\u4EF6\uFF0C\u9700\u8981\u5728\u521D\u59CB\u5316five\u65F6\uFF0C\u8BBE\u7F6Efive\u53C2\u6570: { backgroundAlpha: 0, backgroundColor: 0x000000 }"),Object.assign(window,{[`__${Ki.toUpperCase()}_DEBUG__`]:this})}show(e){return X(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return X(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 ov();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return rv();const o=G({},this.state);this.state=G(G({},this.state),e),e.disposed!==void 0&&e.disposed!==o.disposed&&e.disposed&&this.handleDispose(),e.visible!==void 0&&e.visible!==o.visible&&this.handleVisible(e.visible),e.enabled!==void 0&&e.enabled!==o.enabled&&this.handleEnable(e.enabled),this.hooks.emit("stateChange",{state:this.state,prevState:o})}getObject3DHelper(e){return this.objectHelperMap.get(e)}addObject3DHelper(e,n={}){var h;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 o=new KA,s=[],r=(h=this.five.getElement())==null?void 0:h.parentElement,a=this.five.camera,{moveHelper:l=!0,rotateHelper:c=!0,scaleHelper:d=!0,boundingBoxHelper:u=!1}=n,f=new be.Subscribe;if(l){const p=new OA(e),A=this.getConfig(n.moveHelper),g=new an(this.five,XA,e,p,A,f);o.addControllers({moveController:g.helperController}),s.push(()=>g.dispose())}if(c){const p=this.getConfig(n.rotateHelper),A=new GA(e,G({container:r},p)),g=new an(this.five,$A,e,A,p,f);o.addControllers({rotateController:g.helperController}),s.push(()=>g.dispose())}if(u){const p=new _A(e),A=new an(this.five,nv,e,p,void 0,f);o.addControllers({boundingBoxController:A.helperController})}if(d)if(e.isCSS3DObjectPlus&&r){const p=new NA(e,r,a,this.five.scene),A=new an(this.five,tv,e,p,void 0,f);o.addControllers({scaleController:A.helperController}),s.push(()=>A.dispose()),oa(this.five).then(()=>{var g,v;if(e.isCSS3DObjectPlus){const w=e;if(!w||w.mode!=="front")return;const y=(g=this.css3DRender.behindModeCSS3DRenderer.wrapper)!=null?g:sa(this.five);y&&(this.css3DObjectParentMap.set(w,w.parent),w.removeFromParent(),this.css3DRender.behindModeCSS3DRenderer.setWrapper(y),(v=this.css3DRender.getBehindCSS3DObjectGroup())==null||v.add(w),this.css3DRender.render(this.five.camera))}})}else{const p=new iv(e),A=new an(this.five,SA,e,p,void 0,f);o.addControllers({scaleController:A.helperController}),s.push(()=>A.dispose())}return this.objectHelperMap.set(e,{helper:o,disposers:s}),o.controllers}removeObject3DHelper(e){if(!this.objectHelperMap.has(e))return;const{helper:n,disposers:o}=this.objectHelperMap.get(e);if(!!n){if(e.isCSS3DObjectPlus){const s=e,r=this.css3DObjectParentMap.get(s);r&&r.add(s),this.css3DRender.render(this.five.camera)}this.objectHelperMap.delete(e),n.dispose(),o==null||o.forEach(s=>s==null?void 0:s())}}handleEnable(e,n=!0){e?(this.everyHelperDo(o=>o.enable()),this.hooks.emit("enable",{userAction:n})):(this.everyHelperDo(o=>o.disable()),this.hooks.emit("disable",{userAction:n})),this.state.enabled=e}handleVisible(e,n=!0){e?(this.everyHelperDo(o=>o.show()),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:n}))):(this.everyHelperDo(o=>o.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(o=>o==null?void 0:o())})}everyHelperDo(e){this.objectHelperMap.forEach(({helper:n,disposers:o})=>{n&&e(n)})}actionIfStateIsEnabled(e,n){if(this.state.enabled)return e();n!=null&&n.warnLog&&sv()}getConfig(e){if(!!e&&typeof e!="boolean"&&e.enable)return e}}const av=i=>new wl(i);exports.CSS3DRender=Jt;exports.CSS3DRenderPlugin=en;exports.CameraMovementEffect=Ma;exports.CameraMovementPlugin=hf;exports.ContentType=el;exports.CruisePlugin=qm;exports.CruisePluginController=go;exports.DIRECTION=Yt;exports.DISPLAY_STRATEGY_TYPE=Mt;exports.DimensionType=tl;exports.FLOOR_PLAN_ATTACHED_TO=bt;exports.FLOOR_TYPE_MAP=ef;exports.GuideLinePlugin=qa;exports.ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE=Tt;exports.ItemLabelPlugin=Cm;exports.Magnifier=ja;exports.MapviewFloorplanPlugin=Tu;exports.ModelChassisCompassPlugin=of;exports.ModelEntryDoorGuidePlugin=af;exports.ModelFloorplanPlugin=Du;exports.ModelItemLabelPlugin=nm;exports.ModelRoomLabelPlugin=Hc;exports.ModelTVVideoPlugin=sm;exports.ModelViewPlugin=Jl;exports.Object3DHelperController=wl;exports.Object3DHelperPlugin=av;exports.PLUGIN=Ai;exports.PaintBrush=Ul;exports.PaintBrushTypeEnum=tt;exports.PanoCompassPlugin=Bf;exports.PanoCursorRaycasterPlugin=mc;exports.PanoDoorLabelPlugin=jm;exports.PanoFloorplanRadarPlugin=Ku;exports.PanoMeasurePlugin=Sh;exports.PanoMeasurePluginLine=Ft;exports.PanoMeasurePluginModel=hi;exports.PanoMeasurePluginPoint=Xe;exports.PanoMeasurePluginPolyline=fi;exports.PanoRulerPlugin=vf;exports.PanoRulerProPlugin=Lf;exports.PanoSpatialTagPlugin=_h;exports.PanoTagPlugin=LA;exports.PanoTagPluginController=vl;exports.PointType=nl;exports.ROOM_FETILE_TYPE_MAP=$u;exports.ROOM_TYPE_MAP=tf;exports.Rotation=Je;exports.TopviewFloorplanPlugin=Bu;exports.Util=Yg;exports.VERSION=Co;exports.itemLabelPluginServerParams=Pm;exports.modelItemLabelPluginServerParams=im;exports.modelRoomLabelPluginServerParams=Fc;exports.pluginFlag=DA;
|
|
559
|
+
`;function Wg(){const i=new k.PlaneGeometry(.4,.4),t=Hg,e=new k.TextureLoader().load(t);e.encoding=k.sRGBEncoding;const n=new k.MeshBasicMaterial({map:e,transparent:!0,depthTest:!1});return new k.Mesh(i,n)}function Ng(){const i=new k.CurvePath;i.add(new k.LineCurve3(new k.Vector3(0,0,0),new k.Vector3(0,0,.1)));const t=new k.TubeGeometry(i,8,.003),e=new k.ShaderMaterial({vertexShader:Fg,fragmentShader:Gg,depthTest:!1,transparent:!0});return new k.Mesh(t,e)}function _g(){const i=new k.SphereGeometry(.01,20,20),t=new k.MeshBasicMaterial({color:10349931,depthTest:!1,transparent:!0,side:k.DoubleSide}),e=new k.Mesh(i,t);return e.position.set(0,0,.1),e}class dl extends k.Object3D{constructor(){super();m(this,"planeMesh");m(this,"lineMesh");m(this,"ballMesh");this.planeMesh=Wg(),this.lineMesh=Ng(),this.ballMesh=_g(),this.add(this.planeMesh,this.lineMesh,this.ballMesh)}updateWithIntersect(e){if(!e.face)return;const n=new k.Vector3().addVectors(e.point,e.face.normal);this.position.copy(e.point),this.lookAt(n)}dispose(){var e;(e=this.planeMesh.material.map)==null||e.dispose()}}class ul{constructor(t){m(this,"five");m(this,"contentElement",document.createElement("div"));m(this,"animeIns");m(this,"container");m(this,"css3DObject");m(this,"disposeCss3DObject");m(this,"state",{enabled:!1});this.five=t;const n=.4/2,s=en(t).create3DDomContainer([[-n,n,0],[-n,-n,0],[n,-n,0],[n,n,0]].map(r=>new k.Vector3().fromArray(r)));if(s){const{container:r,dispose:a,css3DObject:l}=s;this.container=r,this.css3DObject=l,this.disposeCss3DObject=a}this.contentElement.style.width="100%",this.contentElement.style.height="100%",this.contentElement.style.backgroundImage=`url(${Ha})`,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 k.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 po({progress:0}).to({progress:[1,0]}).duration(500).easing(ii.Easing.Quadratic.InOut).onUpdate(({progress:e})=>{}).play()}dispose(){var t;(t=this.disposeCss3DObject)==null||t.call(this)}}class Xg{constructor(t,e){m(this,"five");m(this,"hooks",new be.Subscribe);m(this,"magnifier",null);m(this,"pointHelper",null);m(this,"pointDomHelper",null);m(this,"contentDom",document.createElement("div"));m(this,"state",{enabled:!1});m(this,"group",new k.Group);this.five=t,this.magnifier=(e==null?void 0:e.magnifier)===void 0?new ll(t,{dragEnabled:!0}):null,this.pointHelper=(e==null?void 0:e.pointHelper)===void 0?new dl:null,this.pointDomHelper=(e==null?void 0:e.pointDomHelper)===void 0?new ul(t):null,this.group.name="five-point-selector",this.five.scene.add(this.group),this.contentDom.classList.add("five-point-selector-content"),this.contentDom.style.position="absolute",this.contentDom.style.top="0",this.contentDom.style.left="0",this.contentDom.style.width="100%",this.contentDom.style.height="100%",this.contentDom.style.pointerEvents="none"}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}updateWithIntersect(t){var s;this.hooks.emit("pointChanged",{panoIndex:this.five.getCurrentState().panoIndex,position:t.point.toArray(),normal:(s=t.face)==null?void 0:s.normal.toArray()});const e=this.magnifier;e&&e.renderWithPoint(t.point);const n=this.pointHelper;n&&n.updateWithIntersect(t);const o=this.pointDomHelper;o&&o.updateWithIntersect(t),this.five.needsRender=!0}}const Yg=Object.freeze(Object.defineProperty({__proto__:null,Interval:Zi,Rectangle:jg,Magnifier:ll,getCoordsFromClient:Qg,getCoordsFromElement:cl,getRaycasterFromFivePointer:Rg,getIntersectFromRelativePosition:Og,PointHelper:dl,PointDomHelper:ul,FivePointSelector:Xg,isNil:Gm,notNil:Ne,BetterTween:po,tweenProgress:Sa,nextFrame:di,requestAnimationFrameInterval:ui,getFrameTime:cf},Symbol.toStringTag,{value:"Module"}));function Ug(i){le(i,"svelte-8mby9k",".svelte-8mby9k.svelte-8mby9k{box-sizing:border-box}.marketing.svelte-8mby9k.svelte-8mby9k{transform:translateY(-100%)}.content.svelte-8mby9k .headerImage.svelte-8mby9k{position:absolute;width:100%;top:0.25rem;transform:translateY(-100%);border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.line.svelte-8mby9k.svelte-8mby9k{position:absolute;height:2.0625rem;width:0.0625rem;left:50%;transform:translateX(-50%);background-color:white;bottom:0;transform-origin:bottom;transition:all 500ms}.content.svelte-8mby9k.svelte-8mby9k{background-color:white;position:relative;display:flex;flex-direction:column;min-width:11.125rem;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:all 500ms}.title.svelte-8mby9k.svelte-8mby9k{position:absolute;background-color:white;border-radius:0.25rem;width:100%;top:0.5rem;padding-left:0.75rem;padding-right:0.75rem}.title.svelte-8mby9k .text.svelte-8mby9k{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.75rem;font-weight:bold;line-height:1.125rem;color:#000}.footer.svelte-8mby9k.svelte-8mby9k{position:relative;padding-left:0.75rem;padding-right:0.75rem;width:100%;height:1.375rem;display:flex;align-items:center}.footer.svelte-8mby9k .goto-button.svelte-8mby9k{flex-shrink:0;white-space:nowrap;background-image:linear-gradient(to right, rgba(87, 144, 253, 1) 0, rgba(42, 114, 254, 1) 100%);color:#fff;font-size:0.625rem;border-radius:0.875rem;font-weight:bold;padding-left:0.5rem;padding-right:0.5rem;height:1.25rem;margin-left:auto;display:flex;align-items:center}.footer.svelte-8mby9k .goto-icon.svelte-8mby9k::after{content:'';display:inline-block;width:0.75rem;height:0.75rem;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAkCAMAAADW3miqAAAAeFBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////GqOSsAAAAJ3RSTlMAFNO2pYt4bErz8uP6ysawgVtBPDcR5C4s2L6ZmJBzZGJXUyEeDws/0G2zAAAAkklEQVQ4y+3TRw6DMBAF0OAeJ3QCpCe0uf8NwRILLBYfiS1/aT3JoymnI+sERZ5VCH0iVto3QDfBLmeSSMUTogRV9bBEpJAKaYpGijn13aTSLeraeG9D0NZFZv4/rRL5FDHnITlllqjv6tykWsmX4JHr05y7j6oFKq2P8He48B0tAM0EY0EDxquClw6vLz6EI35GmwwSZpe+WOgAAAAASUVORK5CYII=);background-size:100% auto;background-repeat:no-repeat}.price.svelte-8mby9k.svelte-8mby9k{flex-shrink:0;margin-right:0.75rem;white-space:nowrap;color:#ff6600;display:flex;align-items:baseline}.price.svelte-8mby9k .value.svelte-8mby9k{position:relative;top:0.0625rem;font-size:1.125rem;line-height:1.375rem;font-family:TG-TYPE, PingFangSC, Segoe UI, Rototo, sans-serif;letter-spacing:0rem}.price.svelte-8mby9k .unit.svelte-8mby9k{padding-left:0.125rem;font-size:0.625rem}.tag.svelte-8mby9k.svelte-8mby9k{position:relative;background-color:white;display:flex;width:-moz-max-content;width:max-content;padding-left:0.75rem;padding-right:0.75rem;min-height:1.75rem}.tag.svelte-8mby9k .base-tag.svelte-8mby9k{height:1rem;margin-top:1.375rem;margin-bottom:0.5rem;margin-right:0.25rem;font-size:0.625rem;line-height:0.875rem;padding:0.0625rem 0.25rem;border-radius:0.125rem;overflow:hidden}.tag.svelte-8mby9k .primary-tag.svelte-8mby9k{background:#e5eefe;color:#0055ff}.tag.svelte-8mby9k .secondary-tag.svelte-8mby9k{background:rgba(255, 102, 0, 0.08);color:rgba(255, 102, 0, 1)}.unfolded.svelte-8mby9k .line.svelte-8mby9k{transform:translateX(-50%) scale(1, 1)}.folded.svelte-8mby9k .line.svelte-8mby9k{transform:translateX(-50%) scale(1, 0);transition-timing-function:ease-in}.unfolded.svelte-8mby9k .content.svelte-8mby9k{opacity:1}.folded.svelte-8mby9k .content.svelte-8mby9k{opacity:0;transform:translateY(0.425rem);transition-timing-function:ease-in}")}function Ir(i,t,e){const n=i.slice();return n[0]=t[e],n}function kr(i,t,e){const n=i.slice();return n[0]=t[e],n}function xr(i){let t,e=i[0]+"",n;return{c(){t=j("div"),n=Pe(e),b(t,"class","base-tag primary-tag svelte-8mby9k")},m(o,s){z(o,t,s),Q(t,n)},p(o,s){s&4&&e!==(e=o[0]+"")&&xe(n,e)},d(o){o&&T(t)}}}function Dr(i){let t,e=i[0]&&xr(i);return{c(){e&&e.c(),t=fe()},m(n,o){e&&e.m(n,o),z(n,t,o)},p(n,o){n[0]?e?e.p(n,o):(e=xr(n),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},d(n){e&&e.d(n),n&&T(t)}}}function Lr(i){let t,e=i[0]+"",n;return{c(){t=j("div"),n=Pe(e),b(t,"class","base-tag secondary-tag svelte-8mby9k")},m(o,s){z(o,t,s),Q(t,n)},p(o,s){s&4&&e!==(e=o[0]+"")&&xe(n,e)},d(o){o&&T(t)}}}function Sr(i){let t,e=i[0]&&Lr(i);return{c(){e&&e.c(),t=fe()},m(n,o){e&&e.m(n,o),z(n,t,o)},p(n,o){n[0]?e?e.p(n,o):(e=Lr(n),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},d(n){e&&e.d(n),n&&T(t)}}}function Mr(i){let t,e,n=i[2].price.value+"",o,s,r=i[2].price.unit&&Tr(i);return{c(){t=j("div"),e=j("span"),o=Pe(n),s=ee(),r&&r.c(),b(e,"class","value svelte-8mby9k"),b(t,"class","price svelte-8mby9k")},m(a,l){z(a,t,l),Q(t,e),Q(e,o),Q(t,s),r&&r.m(t,null)},p(a,l){l&4&&n!==(n=a[2].price.value+"")&&xe(o,n),a[2].price.unit?r?r.p(a,l):(r=Tr(a),r.c(),r.m(t,null)):r&&(r.d(1),r=null)},d(a){a&&T(t),r&&r.d()}}}function Tr(i){let t,e=i[2].price.unit+"",n;return{c(){t=j("span"),n=Pe(e),b(t,"class","unit svelte-8mby9k")},m(o,s){z(o,t,s),Q(t,n)},p(o,s){s&4&&e!==(e=o[2].price.unit+"")&&xe(n,e)},d(o){o&&T(t)}}}function zr(i){let t,e=i[2].highlightText+"",n;return{c(){t=j("div"),n=Pe(e),b(t,"class","goto-button goto-icon svelte-8mby9k")},m(o,s){z(o,t,s),Q(t,n)},p(o,s){s&4&&e!==(e=o[2].highlightText+"")&&xe(n,e)},d(o){o&&T(t)}}}function Jg(i){var Y,V;let t,e,n,o,s,r,a,l,c,d,u,f,h,p,A=i[2].title+"",g,v,w,y=Ne((Y=i[2].price)==null?void 0:Y.value)&&((V=i[2].price)==null?void 0:V.value)!=="",C,I;e=new $e({props:{visible:i[1],outDelay:500,left:61,bottom:87,blurRadius:150,spreadRadius:75}});let P=i[2].brandTags||[],L=[];for(let E=0;E<P.length;E+=1)L[E]=Dr(kr(i,P,E));let D=i[2].tags||[],B=[];for(let E=0;E<D.length;E+=1)B[E]=Sr(Ir(i,D,E));let W=y&&Mr(i),F=i[2].highlightText&&zr(i);return{c(){var E;t=j("div"),$(e.$$.fragment),n=ee(),o=j("div"),s=ee(),r=j("div"),a=j("img"),c=ee(),d=j("div");for(let R=0;R<L.length;R+=1)L[R].c();u=ee();for(let R=0;R<B.length;R+=1)B[R].c();f=ee(),h=j("div"),p=j("div"),g=Pe(A),v=ee(),w=j("div"),W&&W.c(),C=ee(),F&&F.c(),b(o,"class","line svelte-8mby9k"),M(o,"transition-delay",i[1]?jn+"ms":Vn+jr-Br-40+"ms"),b(a,"class","headerImage svelte-8mby9k"),_e(a.src,l=i[2].headerPictureUrl)||b(a,"src",l),b(a,"alt",""),b(d,"class","tag svelte-8mby9k"),b(p,"class","text svelte-8mby9k"),b(h,"class","title svelte-8mby9k"),b(w,"class","footer svelte-8mby9k"),M(w,"height",Ne((E=i[2].price)==null?void 0:E.value)&&i[2].highlightText?void 0:"1rem"),b(r,"class","content svelte-8mby9k"),M(r,"transition-delay",i[1]?jn+Vn+"ms":"0ms"),b(t,"class","marketing svelte-8mby9k"),te(t,"unfolded",i[1]),te(t,"folded",i[3])},m(E,R){z(E,t,R),q(e,t,null),Q(t,n),Q(t,o),Q(t,s),Q(t,r),Q(r,a),Q(r,c),Q(r,d);for(let H=0;H<L.length;H+=1)L[H].m(d,null);Q(d,u);for(let H=0;H<B.length;H+=1)B[H].m(d,null);Q(r,f),Q(r,h),Q(h,p),Q(p,g),Q(r,v),Q(r,w),W&&W.m(w,null),Q(w,C),F&&F.m(w,null),I=!0},p(E,[R]){var N,U,_;const H={};if(R&2&&(H.visible=E[1]),e.$set(H),R&2&&M(o,"transition-delay",E[1]?jn+"ms":Vn+jr-Br-40+"ms"),(!I||R&4&&!_e(a.src,l=E[2].headerPictureUrl))&&b(a,"src",l),R&4){P=E[2].brandTags||[];let J;for(J=0;J<P.length;J+=1){const de=kr(E,P,J);L[J]?L[J].p(de,R):(L[J]=Dr(de),L[J].c(),L[J].m(d,u))}for(;J<L.length;J+=1)L[J].d(1);L.length=P.length}if(R&4){D=E[2].tags||[];let J;for(J=0;J<D.length;J+=1){const de=Ir(E,D,J);B[J]?B[J].p(de,R):(B[J]=Sr(de),B[J].c(),B[J].m(d,null))}for(;J<B.length;J+=1)B[J].d(1);B.length=D.length}(!I||R&4)&&A!==(A=E[2].title+"")&&xe(g,A),R&4&&(y=Ne((N=E[2].price)==null?void 0:N.value)&&((U=E[2].price)==null?void 0:U.value)!==""),y?W?W.p(E,R):(W=Mr(E),W.c(),W.m(w,C)):W&&(W.d(1),W=null),E[2].highlightText?F?F.p(E,R):(F=zr(E),F.c(),F.m(w,null)):F&&(F.d(1),F=null),R&4&&M(w,"height",Ne((_=E[2].price)==null?void 0:_.value)&&E[2].highlightText?void 0:"1rem"),R&2&&M(r,"transition-delay",E[1]?jn+Vn+"ms":"0ms"),(!I||R&2)&&te(t,"unfolded",E[1]),(!I||R&8)&&te(t,"folded",E[3])},i(E){I||(x(e.$$.fragment,E),I=!0)},o(E){S(e.$$.fragment,E),I=!1},d(E){E&&T(t),K(e),dt(L,E),dt(B,E),W&&W.d(),F&&F.d()}}}const jn=400,Br=500,Vn=180,jr=500;function Zg(i,t,e){let n,o,s,{tag:r}=t;return i.$$set=a=>{"tag"in a&&e(0,r=a.tag)},i.$$.update=()=>{var a,l;i.$$.dirty&1&&e(1,n=(l=(a=r.state)==null?void 0:a.unfolded)!=null?l:!1),i.$$.dirty&2&&e(3,o=!n),i.$$.dirty&1&&e(2,s=r.data)},[r,n,s,o]}class qg extends oe{constructor(t){super(),ie(this,t,Zg,Jg,ne,{tag:0},Ug)}}const Kt="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=",fn={};var ni=(i=>(i.Default="default",i.GetAudioDuration="getAudioDuration",i.PlayAudio="playAudio",i))(ni||{});function fl(i,t){const e=(t==null?void 0:t.namespace)||"default",n=fn[e]||(fn[e]=[]);let o=n.find(s=>!s.realSrc||s.realSrc===Kt);return o||(console.warn("\u672A\u627E\u5230\u7F13\u5B58\u97F3\u9891\uFF0C\u5DF2\u65B0\u5EFA",fn),o=new bo(Kt),n.push(o)),i&&(o.src=i),o}function Kg(i){return X(this,null,function*(){const t=(()=>i instanceof bo?i:fl(i,{namespace:"getAudioDuration"}))(),e=yield new Promise(n=>{t.duration?t.isBlankAudio?n(0):n(t.duration):(t.addEventListener("loadedmetadata",()=>{t.isBlankAudio?n(0):n(t.duration)}),t.addEventListener("canplaythrough",()=>{t.isBlankAudio?n(0):n(t.duration)}))});return typeof i=="string"&&t.clear(),e})}function Vr(i,t){const e=(t==null?void 0:t.namespace)||"default",n=fn[e]||(fn[e]=[]),o=i-n.length;if(!(o<=0))for(let s=0;s<o;s++)n.push(new bo(Kt))}class bo extends Audio{constructor(e){super(e);m(this,"preload","auto");m(this,"realSrc","");m(this,"inited",!1);m(this,"removeDocumentEventListener");this.realSrc=e!=null?e:"",super.addEventListener("ended",()=>{this.src=""});const n=()=>$g(this);document.addEventListener("click",n),document.addEventListener("touchend",n),this.removeDocumentEventListener=()=>{document.removeEventListener("click",n),document.removeEventListener("touchend",n)}}get isBlankAudio(){return this.realSrc===Kt||!this.realSrc}get src(){return super.src}set src(e){super.src=e,this.realSrc=e}clear(){this.src=Kt,this.currentTime=0}}function $g(i){!i||i.inited||(i.src&&(i.inited=!0,i.removeDocumentEventListener()),i.src===Kt&&i.play())}class e0 extends Audio{constructor(e){super();m(this,"sharedAudioSrc");m(this,"sharedAudioPaused",!0);m(this,"sharedAudioCurrentTime",0);m(this,"tryplaying",!1);m(this,"audioInstance");m(this,"eventListenerDisposer");this.sharedAudioSrc=e}get paused(){var e;return(e=this.sharedAudioPaused)!=null?e:!0}get currentTime(){return this.sharedAudioCurrentTime}play(){return X(this,null,function*(){var e,n,o;this.tryplaying||(this.tryplaying=!0,(!this.audioInstance||((e=this.audioInstance)==null?void 0:e.realSrc)!==this.sharedAudioSrc)&&(this.audioInstance=fl(this.sharedAudioSrc,{namespace:ni.PlayAudio})),this.audioInstance.currentTime=(n=this.currentTime)!=null?n:0,(o=this.eventListenerDisposer)==null||o.call(this),this.eventListenerDisposer=this.addEventListeners(),this.audioInstance.play().then(()=>{this.sharedAudioPaused=!1}).catch(s=>{this.pause(),console.warn(s)}).finally(()=>{this.tryplaying=!1}))})}pause(){!this.audioInstance||this.paused||(this.sharedAudioPaused=!0,this.audioInstance.addEventListener("pause",()=>{var e;(e=this.eventListenerDisposer)==null||e.call(this)},{once:!0}),this.audioInstance.pause())}dispose(){this.clear(),this.audioInstance=void 0}clear(){var e;(e=this.audioInstance)==null||e.clear()}addEventListeners(){const e=this.audioInstance;if(!e)return;const n=f=>{var h;this.sharedAudioCurrentTime=e.currentTime,(h=this.ontimeupdate)==null||h.call(this,f)},o=f=>{var h;return(h=this.onplay)==null?void 0:h.call(this,f)},s=f=>{var h;(h=this.onpause)==null||h.call(this,f),this.clear()},r=f=>{var h;(h=this.onended)==null||h.call(this,f),this.sharedAudioCurrentTime=0},a=f=>{var h;return(h=this.onerror)==null?void 0:h.call(this,f)},l=f=>{var h;return(h=this.oncanplay)==null?void 0:h.call(this,f)},c=f=>{var h;return(h=this.oncanplaythrough)==null?void 0:h.call(this,f)},d=f=>{var h;return(h=this.onloadeddata)==null?void 0:h.call(this,f)},u=f=>{var h;return(h=this.onloadedmetadata)==null?void 0:h.call(this,f)};return e.addEventListener("timeupdate",n),e.addEventListener("play",o),e.addEventListener("pause",s),e.addEventListener("ended",r),e.addEventListener("error",a),e.addEventListener("canplay",l),e.addEventListener("canplaythrough",c),e.addEventListener("loadeddata",d),e.addEventListener("loadedmetadata",u),()=>{e.removeEventListener("timeupdate",n),e.removeEventListener("play",o),e.removeEventListener("pause",s),e.removeEventListener("ended",r),e.removeEventListener("error",a),e.removeEventListener("canplay",l),e.removeEventListener("canplaythrough",c),e.removeEventListener("loadeddata",d),e.removeEventListener("loadedmetadata",u)}}}function t0(i){le(i,"svelte-13e7hxv",".audio.svelte-13e7hxv{pointer-events:auto;cursor:pointer;width:100%;height:100%}")}function n0(i){let t,e,n,o;const s=i[8].default,r=ot(s,i,i[7],null);return{c(){t=j("div"),r&&r.c(),b(t,"class","audio svelte-13e7hxv"),b(t,"style",i[0])},m(a,l){z(a,t,l),r&&r.m(t,null),e=!0,n||(o=Se(t,"click",ma(i[1])),n=!0)},p(a,[l]){r&&r.p&&(!e||l&128)&&rt(r,s,a,a[7],e?st(s,a[7],l,null):at(a[7]),null),(!e||l&1)&&b(t,"style",a[0])},i(a){e||(x(r,a),e=!0)},o(a){S(r,a),e=!1},d(a){a&&T(t),r&&r.d(a),n=!1,o()}}}function i0(i,t,e){let{$$slots:n={},$$scope:o}=t,{url:s}=t,{enable:r=!0}=t,{style:a=""}=t,{hooksInfo:l}=t;const c=si(),d=ut("hooks"),u=ut("mediaStore");let f,h=!0;function p(){e(5,f.onplay=g=>{d.emit("playStateChange",G({event:g,state:"playing",mediaInstance:f},l)),c("play"),e(6,h=!1)},f),e(5,f.onpause=g=>{d.emit("playStateChange",G({event:g,state:"paused",mediaInstance:f},l)),c("pause"),e(6,h=!0)},f),e(5,f.onloadedmetadata=g=>{typeof f.duration=="number"&&!Number.isNaN(f.duration)&&c("duration",f.duration)},f),e(5,f.ontimeupdate=g=>{c("timeupdate",f.currentTime)},f)}u.subscribe(({currentMediaElement:g})=>{g!==f&&(h||f==null||f.pause())});function A(g){!f||(d.emit("click",G({event:g,target:"AudioTagPlayIcon",audioInstance:f},l)),u.set({currentMediaElement:f}),d.emit("playStateChange",G({event:g,state:f.paused?"playing":"paused",mediaInstance:f},l)),f.paused?f.play():f.pause())}return i.$$set=g=>{"url"in g&&e(2,s=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,o=g.$$scope)},i.$$.update=()=>{i.$$.dirty&4&&(s||c("duration",0)),i.$$.dirty&36&&(f==null||f.dispose(),e(5,f=new e0(s)),c("audioRef",f),setTimeout(()=>c("audioRef",f),200),Kg(s).then(g=>c("duration",g)),p()),i.$$.dirty&40&&(r||f==null||f.pause()),i.$$.dirty&72&&c(r&&!h?"play":"pause")},[a,A,s,r,l,f,h,o,n]}class hl extends oe{constructor(t){super(),ie(this,t,i0,n0,ne,{url:2,enable:3,style:0,hooksInfo:4},t0)}}function o0(i){le(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 Qr(i){let t,e;return t=new $e({props:{center:!0,blurRadius:12,spreadRadius:5}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function s0(i){let t,e,n,o,s,r=i[1]&&Qr();return{c(){t=j("div"),r&&r.c(),e=ee(),n=j("div"),o=j("div"),o.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>',b(o,"class","sound-wave__container svelte-srt2pi"),b(n,"class","audio-icon svelte-srt2pi"),te(n,"playing",i[0]),b(t,"class","audio-icon__wrapper svelte-srt2pi"),b(t,"style",i[2]),M(t,"width",i[5]),M(t,"height",i[5])},m(a,l){z(a,t,l),r&&r.m(t,null),Q(t,e),Q(t,n),Q(n,o),i[7](o),i[8](t),s=!0},p(a,[l]){a[1]?r?l&2&&x(r,1):(r=Qr(),r.c(),x(r,1),r.m(t,e)):r&&(se(),S(r,1,1,()=>{r=null}),re()),(!s||l&1)&&te(n,"playing",a[0]),(!s||l&4)&&b(t,"style",a[2]),l&32&&M(t,"width",a[5]),l&32&&M(t,"height",a[5])},i(a){s||(x(r),s=!0)},o(a){S(r),s=!1},d(a){a&&T(t),r&&r.d(),i[7](null),i[8](null)}}}function r0(i,t,e){let n,{playing:o}=t,{shadow:s=!1}=t,{style:r=null}=t,{width:a="100%"}=t,l,c;function d(f){Le[f?"unshift":"push"](()=>{c=f,e(4,c)})}function u(f){Le[f?"unshift":"push"](()=>{l=f,e(3,l)})}return i.$$set=f=>{"playing"in f&&e(0,o=f.playing),"shadow"in f&&e(1,s=f.shadow),"style"in f&&e(2,r=f.style),"width"in f&&e(6,a=f.width)},i.$$.update=()=>{i.$$.dirty&64&&e(5,n=typeof a=="number"?ye(a):a)},[o,s,r,l,c,n,a,d,u]}class ml extends oe{constructor(t){super(),ie(this,t,r0,s0,ne,{playing:0,shadow:1,style:2,width:6},o0)}}function a0(i){le(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 Rr(i){var v,w;let t,e,n,o,s,r,a,l,c,d,u,f,h,p,A;e=new $e({props:{visible:i[6],left:i[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}});let g=i[6]&&Or(i);return c=new ol({props:{visible:i[6],textUnfolded:i[1],content:i[5]}}),f=new Ao({props:{unfolded:i[6],length:i[3],outDelay:i[4]+20*Math.min((w=(v=i[5])==null?void 0:v.length)!=null?w:10,15),useLinearColor:!0}}),{c(){t=j("div"),$(e.$$.fragment),n=ee(),o=j("div"),s=j("div"),r=j("div"),g&&g.c(),a=ee(),l=j("div"),$(c.$$.fragment),u=ee(),$(f.$$.fragment),b(r,"class","audio-icon svelte-1s6gk4a"),De(()=>i[11].call(l)),M(l,"display","inline-block"),b(s,"class","wrapper svelte-1s6gk4a"),b(o,"class","content svelte-1s6gk4a"),b(t,"class","audio-tag svelte-1s6gk4a"),te(t,"unfolded",i[6])},m(y,C){z(y,t,C),q(e,t,null),Q(t,n),Q(t,o),Q(o,s),Q(s,r),g&&g.m(r,null),Q(s,a),Q(s,l),q(c,l,null),d=It(l,i[11].bind(l)),Q(t,u),q(f,t,null),h=!0,p||(A=Se(l,"click",i[7]),p=!0)},p(y,C){var D,B;const I={};C&64&&(I.visible=y[6]),C&8&&(I.left=y[3]/2+"px"),e.$set(I),y[6]?g?(g.p(y,C),C&64&&x(g,1)):(g=Or(y),g.c(),x(g,1),g.m(r,null)):g&&(se(),S(g,1,1,()=>{g=null}),re());const P={};C&64&&(P.visible=y[6]),C&2&&(P.textUnfolded=y[1]),C&32&&(P.content=y[5]),c.$set(P);const L={};C&64&&(L.unfolded=y[6]),C&8&&(L.length=y[3]),C&48&&(L.outDelay=y[4]+20*Math.min((B=(D=y[5])==null?void 0:D.length)!=null?B:10,15)),f.$set(L),(!h||C&64)&&te(t,"unfolded",y[6])},i(y){h||(x(e.$$.fragment,y),x(g),x(c.$$.fragment,y),x(f.$$.fragment,y),h=!0)},o(y){S(e.$$.fragment,y),S(g),S(c.$$.fragment,y),S(f.$$.fragment,y),h=!1},d(y){y&&T(t),K(e),g&&g.d(),K(c),d(),K(f),p=!1,A()}}}function Or(i){let t,e,n,o,s,r,a;return e=new $e({props:{center:!0,blurRadius:15,spreadRadius:6}}),o=new hl({props:{enable:i[6],url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[l0]},$$scope:{ctx:i}}}),o.$on("play",i[8]),o.$on("pause",i[9]),o.$on("audioRef",i[10]),{c(){t=j("div"),$(e.$$.fragment),n=ee(),$(o.$$.fragment),b(t,"class","audio svelte-1s6gk4a")},m(l,c){z(l,t,c),q(e,t,null),Q(t,n),q(o,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&4100&&(d.$$scope={dirty:c,ctx:i}),o.$set(d)},i(l){a||(x(e.$$.fragment,l),x(o.$$.fragment,l),l&&De(()=>{r&&r.end(1),s=Rt(t,Bt,{duration:1e3,delay:0,easing:Zt}),s.start()}),a=!0)},o(l){var c,d;S(e.$$.fragment,l),S(o.$$.fragment,l),s&&s.invalidate(),l&&(r=tn(t,Bt,{duration:1e3,delay:20*Math.min((d=(c=i[5])==null?void 0:c.length)!=null?d:10,15),easing:Zt})),a=!1},d(l){l&&T(t),K(e),K(o),l&&r&&r.end()}}}function l0(i){let t,e,n;return e=new ml({props:{playing:i[2]}}),{c(){t=j("div"),$(e.$$.fragment),b(t,"class","audio-icon__wrapper svelte-1s6gk4a")},m(o,s){z(o,t,s),q(e,t,null),n=!0},p(o,s){const r={};s&4&&(r.playing=o[2]),e.$set(r)},i(o){n||(x(e.$$.fragment,o),n=!0)},o(o){S(e.$$.fragment,o),n=!1},d(o){o&&T(t),K(e)}}}function c0(i){let t,e,n=i[0].state&&Rr(i);return{c(){n&&n.c(),t=fe()},m(o,s){n&&n.m(o,s),z(o,t,s),e=!0},p(o,[s]){o[0].state?n?(n.p(o,s),s&1&&x(n,1)):(n=Rr(o),n.c(),x(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(x(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&T(t)}}}function d0(i,t,e){let n,o,s,{tag:r}=t,a=!1,l=!1,c;function d(){e(1,a=!a)}const u=()=>{e(2,l=!0)},f=()=>{e(2,l=!1)};function h(A){oo.call(this,i,A)}function p(){c=this.clientWidth,e(3,c)}return i.$$set=A=>{"tag"in A&&e(0,r=A.tag)},i.$$.update=()=>{var A,g,v;i.$$.dirty&1&&e(6,n=!!((A=r.state)!=null&&A.unfolded)),i.$$.dirty&1&&e(5,o=(v=(g=r.data.title)!=null?g:r.data.text)!=null?v:""),i.$$.dirty&2&&e(4,s=a?450:0)},[r,a,l,c,s,o,n,d,u,f,h,p]}class u0 extends oe{constructor(t){super(),ie(this,t,d0,c0,ne,{tag:0},a0)}}function f0(i){const t=document.createElement("div");t.style.color=i,document.body.appendChild(t);const e=window.getComputedStyle(t).color;t.remove();const n=(()=>e.search("rgba")===-1?e.replace("rgb","rgba").replace(")",", 1)"):e)(),o=n.replace("rgba","").replace("(","").replace(")","").split(",").map(s=>Number(s.trim()));return{rgba:n,r:o[0],g:o[1],b:o[2],a:o[3]}}function h0(i){le(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 Hr(i){let t,e,n,o;return n=new hl({props:{style:"width: max-content; height: max-content;",enable:i[0].state.visible,url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[p0]},$$scope:{ctx:i}}}),n.$on("play",i[7]),n.$on("pause",i[8]),n.$on("timeupdate",i[9]),n.$on("duration",i[10]),n.$on("audioRef",i[11]),{c(){t=j("div"),e=j("div"),$(n.$$.fragment),b(e,"class","audio-tag svelte-58hfjf"),M(e,"background-color",i[1]),M(e,"color",i[5]),b(t,"class","audio-tag__wrapper svelte-58hfjf")},m(s,r){z(s,t,r),Q(t,e),q(n,e,null),o=!0},p(s,r){const a={};r&1&&(a.enable=s[0].state.visible),r&1&&(a.url=s[0].data.audioUrl),r&1&&(a.hooksInfo={tag:s[0]}),r&8260&&(a.$$scope={dirty:r,ctx:s}),n.$set(a),r&2&&M(e,"background-color",s[1]),r&32&&M(e,"color",s[5])},i(s){o||(x(n.$$.fragment,s),o=!0)},o(s){S(n.$$.fragment,s),o=!1},d(s){s&&T(t),K(n)}}}function m0(i){let t;return{c(){t=Pe(i[6])},m(e,n){z(e,t,n)},p(e,n){n&64&&xe(t,e[6])},d(e){e&&T(t)}}}function p0(i){let t,e,n,o,s,r,a;return n=new ml({props:{playing:i[2]}}),r=new vo({props:{maxWidth:72,$$slots:{default:[m0]},$$scope:{ctx:i}}}),{c(){t=j("div"),e=j("div"),$(n.$$.fragment),o=ee(),s=j("div"),$(r.$$.fragment),b(e,"class","audio-icon__wrapper svelte-58hfjf"),b(s,"class","text svelte-58hfjf"),b(t,"class","audio__inner svelte-58hfjf")},m(l,c){z(l,t,c),Q(t,e),q(n,e,null),Q(t,o),Q(t,s),q(r,s,null),a=!0},p(l,c){const d={};c&4&&(d.playing=l[2]),n.$set(d);const u={};c&8256&&(u.$$scope={dirty:c,ctx:l}),r.$set(u)},i(l){a||(x(n.$$.fragment,l),x(r.$$.fragment,l),a=!0)},o(l){S(n.$$.fragment,l),S(r.$$.fragment,l),a=!1},d(l){l&&T(t),K(n),K(r)}}}function g0(i){let t,e,n=i[0].state&&Hr(i);return{c(){n&&n.c(),t=fe()},m(o,s){n&&n.m(o,s),z(o,t,s),e=!0},p(o,[s]){o[0].state?n?(n.p(o,s),s&1&&x(n,1)):(n=Hr(o),n.c(),x(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(x(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&T(t)}}}function A0(i,t,e){let n,o,s,{tag:r}=t;si();let a=!1,l=0,c=0;const d=()=>{e(2,a=!0)},u=()=>{e(2,a=!1)},f=A=>{e(3,l=A.detail)},h=A=>{e(4,c=A.detail)};function p(A){oo.call(this,i,A)}return i.$$set=A=>{"tag"in A&&e(0,r=A.tag)},i.$$.update=()=>{var A,g;i.$$.dirty&1&&e(6,n=(g=(A=r.data.title)!=null?A:r.data.text)!=null?g:""),i.$$.dirty&1&&e(1,o=(()=>{var v;return r.data.backgroundColor==="dark"?"rgba(0, 0, 0, 0.3)":r.data.backgroundColor==="light"?"rgba(255, 255, 255, 0.3)":(v=r.data.backgroundColor)!=null?v:"rgba(0, 0, 0, 0.3)"})()),i.$$.dirty&2&&e(5,s=(()=>{const{r:v,g:w,b:y}=f0(o);return(v*299+w*587+y*114)/1e3>=128?"rgba(0, 0, 0, 0.6)":"white"})())},[r,o,a,l,c,s,n,d,u,f,h,p]}class v0 extends oe{constructor(t){super(),ie(this,t,A0,g0,ne,{tag:0},h0)}}function b0(i){let t,e;return t=new v0({props:{tag:i[0]}}),t.$on("audioRef",i[2]),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&1&&(s.tag=n[0]),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function y0(i){let t,e;return t=new u0({props:{tag:i[0]}}),t.$on("audioRef",i[2]),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&1&&(s.tag=n[0]),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function w0(i){let t,e,n,o;const s=[y0,b0],r=[];function a(l,c){return l[1]==="line"?0:l[1]==="plane"?1:-1}return~(t=a(i))&&(e=r[t]=s[t](i)),{c(){e&&e.c(),n=fe()},m(l,c){~t&&r[t].m(l,c),z(l,n,c),o=!0},p(l,[c]){let d=t;t=a(l),t===d?~t&&r[t].p(l,c):(e&&(se(),S(r[d],1,1,()=>{r[d]=null}),re()),~t?(e=r[t],e?e.p(l,c):(e=r[t]=s[t](l),e.c()),x(e,1),e.m(n.parentNode,n)):e=null)},i(l){o||(x(e),o=!0)},o(l){S(e),o=!1},d(l){~t&&r[t].d(l),l&&T(n)}}}function C0(i,t,e){let n,{tag:o}=t,s;function r(a){s=a.detail}return o.play=()=>s.play(),o.pause=()=>s.pause(),i.$$set=a=>{"tag"in a&&e(0,o=a.tag)},i.$$.update=()=>{var a;i.$$.dirty&1&&e(1,n=(a=o.data.appearance)!=null?a:"line")},[o,n,r]}class P0 extends oe{constructor(t){super(),ie(this,t,C0,w0,ne,{tag:0})}}function E0(i){le(i,"svelte-10cw0el",".media-wrapper.svelte-10cw0el{position:absolute;width:100%;height:100%}")}function Fr(i){var o;let t,e,n;return e=new al({props:{mediaItemConfig:{canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(o=i[4])!=null?o:"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=j("div"),$(e.$$.fragment),b(t,"class","media-wrapper svelte-10cw0el")},m(s,r){z(s,t,r),q(e,t,null),n=!0},p(s,r){var l;const a={};r&20&&(a.mediaItemConfig={canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(l=s[4])!=null?l:"withText",disableVideoIfHavePoster:!1,objectFit:s[2]}),r&64&&(a.unfolded=s[6]),r&32&&(a.mediaData=s[5]),r&2&&(a.enableCarousel=s[1]),r&8&&(a.autoplayConfig=s[3]),r&1&&(a.tag=s[0]),e.$set(a)},i(s){n||(x(e.$$.fragment,s),n=!0)},o(s){S(e.$$.fragment,s),n=!1},d(s){s&&T(t),K(e)}}}function I0(i){let t,e,n=i[0].state&&i[5]&&Fr(i);return{c(){n&&n.c(),t=fe()},m(o,s){n&&n.m(o,s),z(o,t,s),e=!0},p(o,[s]){o[0].state&&o[5]?n?(n.p(o,s),s&33&&x(n,1)):(n=Fr(o),n.c(),x(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(x(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&T(t)}}}function k0(i,t,e){let n,o,s,r,a,l,{tag:c}=t;return i.$$set=d=>{"tag"in d&&e(0,c=d.tag)},i.$$.update=()=>{var d,u;i.$$.dirty&1&&e(6,n=c.state?c.state.unfolded:!1),i.$$.dirty&1&&e(5,o=c.data.mediaData),i.$$.dirty&1&&e(1,s=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:s!=null?s:!0,autoplayVideo:!0}),i.$$.dirty&1&&e(2,l=(u=c.data.objectFit)!=null?u:(()=>c.data.adaptationMode==="stretch"?"cover":c.data.adaptationMode==="proportional"?"contain":void 0)())},[c,s,l,a,r,o,n]}class x0 extends oe{constructor(t){super(),ie(this,t,k0,I0,ne,{tag:0},E0)}}function D0(i){return X(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 L0(i){return X(this,null,function*(){const{steps:t,url:e,ratio:n=3,fps:o=24}=i;if(!t)throw new Error("KeyframeIcon requires steps");const{width:s,height:r}=yield D0(e),a=s/n,l=r/n,c=a/t,d=l,u=1/o*t+"s",f=a/t-a;return{url:e,keyframesWidth:a,keyframesHeight:l,wrapperWidth:c,wrapperHeight:d,steps:t,duration:u,offsetX:f,offsetY:0}})}function S0(i){le(i,"svelte-mhs8j5","@keyframes svelte-mhs8j5-sprites-animation{0%{background-position:0 0}100%{background-position:var(--keyframe_offset_x) 0}}.icon-image.svelte-mhs8j5{display:block;width:100%}.icon-keyframe-container.svelte-mhs8j5{overflow:hidden}.icon-keyframe-wrapper.svelte-mhs8j5{transform-origin:0 0}.icon-keyframe.svelte-mhs8j5{background-repeat:no-repeat;animation-direction:normal;animation-iteration-count:infinite;animation-name:svelte-mhs8j5-sprites-animation}")}function Gr(i){i[6]=i[14].url,i[7]=i[14].keyframesWidth,i[8]=i[14].keyframesHeight,i[9]=i[14].wrapperWidth,i[10]=i[14].wrapperHeight,i[11]=i[14].steps,i[12]=i[14].duration,i[13]=i[14].offsetX}function Wr(i){let t,e,n,o=i[2]&&Nr();function s(l,c){return l[3]?T0:M0}let r=s(i),a=r(i);return{c(){t=j("div"),o&&o.c(),e=ee(),a.c(),b(t,"class","icon"),M(t,"width",typeof i[0]=="number"?ye(i[0]):i[0])},m(l,c){z(l,t,c),o&&o.m(t,null),Q(t,e),a.m(t,null),n=!0},p(l,c){l[2]?o?c&4&&x(o,1):(o=Nr(),o.c(),x(o,1),o.m(t,e)):o&&(se(),S(o,1,1,()=>{o=null}),re()),r===(r=s(l))&&a?a.p(l,c):(a.d(1),a=r(l),a&&(a.c(),a.m(t,null))),c&1&&M(t,"width",typeof l[0]=="number"?ye(l[0]):l[0])},i(l){n||(x(o),n=!0)},o(l){S(o),n=!1},d(l){l&&T(t),o&&o.d(),a.d()}}}function Nr(i){let t,e;return t=new $e({props:{center:!0,blurRadius:24,spreadRadius:16}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function M0(i){let t,e;return{c(){t=j("img"),b(t,"class","icon-image svelte-mhs8j5"),_e(t.src,e=i[1].url)||b(t,"src",e),b(t,"alt","icon")},m(n,o){z(n,t,o)},p(n,o){o&2&&!_e(t.src,e=n[1].url)&&b(t,"src",e)},d(n){n&&T(t)}}}function T0(i){let t,e,n={ctx:i,current:null,token:null,hasCatch:!1,pending:j0,then:B0,catch:z0,value:14};return zo(e=i[4](i[1]),n),{c(){t=fe(),n.block.c()},m(o,s){z(o,t,s),n.block.m(o,n.anchor=s),n.mount=()=>t.parentNode,n.anchor=t},p(o,s){i=o,n.ctx=i,s&2&&e!==(e=i[4](i[1]))&&zo(e,n)||Ic(n,i,s)},d(o){o&&T(t),n.block.d(o),n.token=null,n=null}}}function z0(i){return{c:Z,m:Z,p:Z,d:Z}}function B0(i){Gr(i);let t,e,n,o=`url(${i[6]})`,s=`steps(${i[11]-1})`;return{c(){t=j("div"),e=j("div"),n=j("div"),b(n,"class","icon-keyframe svelte-mhs8j5"),M(n,"width",ye(i[7])),M(n,"height",ye(i[8])),M(n,"background-image",o),M(n,"animation-duration",i[12]),M(n,"animation-timing-function",s),M(n,"animation-delay",0),M(n,"background-size","100% 100%"),M(n,"--keyframe_offset_x",ye(i[13])),b(e,"class","icon-keyframe-wrapper svelte-mhs8j5"),M(e,"transform",typeof i[0]=="number"?`scale(${i[0]/i[9]})`:void 0),b(t,"class","icon-keyframe-container svelte-mhs8j5"),M(t,"width",typeof i[0]=="number"?ye(i[0]):ye(i[9])),M(t,"height",typeof i[0]=="number"?ye(i[10]*(i[0]/i[9])):ye(i[10]))},m(r,a){z(r,t,a),Q(t,e),Q(e,n)},p(r,a){Gr(r),a&2&&M(n,"width",ye(r[7])),a&2&&M(n,"height",ye(r[8])),a&2&&o!==(o=`url(${r[6]})`)&&M(n,"background-image",o),a&2&&M(n,"animation-duration",r[12]),a&2&&s!==(s=`steps(${r[11]-1})`)&&M(n,"animation-timing-function",s),a&2&&M(n,"--keyframe_offset_x",ye(r[13])),a&3&&M(e,"transform",typeof r[0]=="number"?`scale(${r[0]/r[9]})`:void 0),a&3&&M(t,"width",typeof r[0]=="number"?ye(r[0]):ye(r[9])),a&3&&M(t,"height",typeof r[0]=="number"?ye(r[10]*(r[0]/r[9])):ye(r[10]))},d(r){r&&T(t)}}}function j0(i){return{c:Z,m:Z,p:Z,d:Z}}function V0(i){let t,e,n=i[1]&&Wr(i);return{c(){n&&n.c(),t=fe()},m(o,s){n&&n.m(o,s),z(o,t,s),e=!0},p(o,[s]){o[1]?n?(n.p(o,s),s&2&&x(n,1)):(n=Wr(o),n.c(),x(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(x(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&T(t)}}}function Q0(i,t,e){let n,{width:o=null}=t,{icon:s=null}=t,{shadow:r=!1}=t;const a=si();function l(c){return X(this,null,function*(){const d=yield L0(c);return a("iconLoaded"),d})}return i.$$set=c=>{"width"in c&&e(0,o=c.width),"icon"in c&&e(1,s=c.icon),"shadow"in c&&e(2,r=c.shadow)},i.$$.update=()=>{i.$$.dirty&2&&e(3,n=(s==null?void 0:s.steps)>=2),i.$$.dirty&8&&!n&&a("iconLoaded")},[o,s,r,n,l]}class pl extends oe{constructor(t){super(),ie(this,t,Q0,V0,ne,{width:0,icon:1,shadow:2},S0)}}function R0(i){le(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 _r(i){let t,e,n,o,s,r;return e=new $e({props:{outDelay:0,inDelay:0,center:!0,width:"80%",blurRadius:40,spreadRadius:16,opacity:.08}}),{c(){t=j("div"),$(e.$$.fragment),n=ee(),o=j("div"),s=Pe(i[1]),b(o,"class","text svelte-e58ijk"),b(t,"class","text-wrapper svelte-e58ijk")},m(a,l){z(a,t,l),q(e,t,null),Q(t,n),Q(t,o),Q(o,s),r=!0},p(a,l){(!r||l&2)&&xe(s,a[1])},i(a){r||(x(e.$$.fragment,a),r=!0)},o(a){S(e.$$.fragment,a),r=!1},d(a){a&&T(t),K(e)}}}function O0(i){let t,e,n,o;e=new pl({props:{icon:i[0],shadow:!0}}),e.$on("iconLoaded",i[9]);let s=i[1]&&i[2]&&_r(i);return{c(){t=j("div"),$(e.$$.fragment),n=ee(),s&&s.c(),b(t,"class","wrapper svelte-e58ijk")},m(r,a){z(r,t,a),q(e,t,null),Q(t,n),s&&s.m(t,null),o=!0},p(r,[a]){const l={};a&1&&(l.icon=r[0]),e.$set(l),r[1]&&r[2]?s?(s.p(r,a),a&6&&x(s,1)):(s=_r(r),s.c(),x(s,1),s.m(t,null)):s&&(se(),S(s,1,1,()=>{s=null}),re())},i(r){o||(x(e.$$.fragment,r),x(s),o=!0)},o(r){S(e.$$.fragment,r),S(s),o=!1},d(r){r&&T(t),K(e),s&&s.d()}}}function H0(i,t,e){let n,o,s,r,a,l,c,d,{tag:u}=t;const f=()=>{e(2,n=!0)};return i.$$set=h=>{"tag"in h&&e(3,u=h.tag)},i.$$.update=()=>{var h,p;i.$$.dirty&8&&e(1,o=(h=u.data.title)!=null?h:u.data.text),i.$$.dirty&8&&e(8,s=(p=u.data.icon)!=null?p:u.style.point),i.$$.dirty&256&&e(7,r=s.url),i.$$.dirty&256&&e(6,a=s.steps),i.$$.dirty&256&&e(5,l=s.fps),i.$$.dirty&256&&e(4,c=s.ratio),i.$$.dirty&240&&e(0,d={url:r,steps:a,fps:l,ratio:c})},e(2,n=!1),[d,o,n,u,c,l,a,r,s,f]}class F0 extends oe{constructor(t){super(),ie(this,t,H0,O0,ne,{tag:3},R0)}}function G0(i){le(i,"svelte-kzl2aj",".customElement__container.svelte-kzl2aj{position:relative}")}function Xr(i){let t,e=i[0].element+"",n;return{c(){t=new Xn(!1),n=fe(),t.a=n},m(o,s){t.m(e,o,s),z(o,n,s)},p(o,s){s&1&&e!==(e=o[0].element+"")&&t.p(e)},d(o){o&&T(n),o&&t.d()}}}function W0(i){let t,e=typeof i[0].element=="string"&&Xr(i);return{c(){t=j("div"),e&&e.c(),b(t,"class","customElement__container svelte-kzl2aj")},m(n,o){z(n,t,o),e&&e.m(t,null),i[2](t)},p(n,[o]){typeof n[0].element=="string"?e?e.p(n,o):(e=Xr(n),e.c(),e.m(t,null)):e&&(e.d(1),e=null)},i:Z,o:Z,d(n){n&&T(t),e&&e.d(),i[2](null)}}}function N0(i,t,e){let{tag:n}=t,o,s;qe(()=>{if(o){if(n.element instanceof Element){const a=n.element;o.appendChild(a),s=()=>a.remove()}else if(typeof n.element=="function"){const a=n.element;s=a(o)}}}),xt(()=>{s==null||s()});function r(a){Le[a?"unshift":"push"](()=>{o=a,e(1,o)})}return i.$$set=a=>{"tag"in a&&e(0,n=a.tag)},[n,o,r]}class _0 extends oe{constructor(t){super(),ie(this,t,N0,W0,ne,{tag:0},G0)}}function X0(i){le(i,"svelte-ofx2uu",'@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,T1RUTwAKAIAAAwAgQ0ZGINFD4CEAAAaQAAAHC0dTVUIAAQAAAAANnAAAAApPUy8yaB5pEwAAAjQAAABgY21hcEItjGUAAAT0AAABfGhlYWQS1WWOAAAAtAAAADZoaGVhBfMBxwAAAhAAAAAkaG10eJ9gBO8AAADsAAABJG1heHAASVAAAAAArAAAAAZuYW1lqczkZQAAApQAAAJecG9zdP+4ADIAAAZwAAAAIAAAUAAASQAAAAEAAAABAADkeHeyXw889QADA+gAAAAA2NoRKwAAAADY2hErACn/OAHgAyAAAQADAAIAAAAAAAAB9ABdAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACWAAAAlgAAAJYAAACCAA7AcwAdwIIADMCCAA0AhwAMwISADkCCAAuAfQANAH+ACsB/gApAggANAEeAFABHgBQAR4AUAIIADQCCAAuAR4AUAEeAFABfAAxAAEAAAPo/zgAAAIcACkAKQHgAAEAAAAAAAAAAAAAAAAAAABJAAMCLgGQAAUACAKKAlgAAABLAooCWAAAAV4AMgEsAAAAAAgAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFVLV04AIAAg/xsDIP84AMgD6ADIAAAAAQAAAAAB9AK8AAAAIAAAAAAAEADGAAEAAAAAAAEADAAAAAEAAAAAAAIABAAMAAEAAAAAAAMAGwAQAAEAAAAAAAQAEQArAAEAAAAAAAUAPAA8AAEAAAAAAAYAEAB4AAEAAAAAAAgADAAAAAEAAAAAAAkADAAAAAMAAQQJAAEAGACIAAMAAQQJAAIACACgAAMAAQQJAAMANgCoAAMAAQQJAAQAIgDeAAMAAQQJAAUAeAEAAAMAAQQJAAYAIAF4AAMAAQQJAAgAGACIAAMAAQQJAAkAGACIQUxJQkFCQSBGb250Qm9sZDEuMDAwO1VLV047QUxJQkFCQUZvbnQtQm9sZEFMSUJBQkEgRm9udCBCb2xkVmVyc2lvbiAxLjAwMDtQUyAwMDEuMDAwO2hvdGNvbnYgMS4wLjg4O21ha2VvdGYubGliMi41LjY0Nzc1QUxJQkFCQUZvbnQtQm9sZABBAEwASQBCAEEAQgBBACAARgBvAG4AdABCAG8AbABkADEALgAwADAAMAA7AFUASwBXAE4AOwBBAEwASQBCAEEAQgBBAEYAbwBuAHQALQBCAG8AbABkAEEATABJAEIAQQBCAEEAIABGAG8AbgB0ACAAQgBvAGwAZABWAGUAcgBzAGkAbwBuACAAMQAuADAAMAAwADsAUABTACAAMAAwADEALgAwADAAMAA7AGgAbwB0AGMAbwBuAHYAIAAxAC4AMAAuADgAOAA7AG0AYQBrAGUAbwB0AGYALgBsAGkAYgAyAC4ANQAuADYANAA3ADcANQBBAEwASQBCAEEAQgBBAEYAbwBuAHQALQBCAG8AbABkAAAAAAADAAAAAwAAASIAAQAAAAAAHAADAAEAAAEiAAABBgAAAAAAAAAAAAAAAQAAAAEAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAABCSEMANjc4OTo7PD0+PwAAAAAAAAACAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGwAAAAAAABwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAFoAAAAQABAAAwAAACAALgA5AFoAegCl/xv//wAAACAALAAwAEEAYQCl/xr////hAAAABv/B/7v/nwAAAAEAAAAOAAAAAAAAAAAACgAAAEIASABDAEYARwADAAAAAAAA/7UAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAQAEAgABAQERQUxJQkFCQUZvbnQtQm9sZAABAQEg+A8A+CAB+CEC+BgEtPtc+HT5tAX3KA/3UBGcHAZWEgAHAQENExoiKTpLbmluZS4wMDEuMDAxbW9uZXkudW5pRkYxQm5pbmUuMDAxdW5pRkYxQWNvcHlyaWdodCBtaXNzaW5nQUxJQkFCQSBGb250IEJvbGQAAAEAAQAAIhkAQhkAEQkBhwABigAADQAADwAAZAABiAABiwABiQAADgAASQIAAQCtAK4ArwCwALEAsgCzALQAtQC2ALcAuAC5ALoAuwC8AL0AvgC/AMAAwQDCAMMAxADFAMYAxwDIAMkAygDLAMwAzQDOAM8A0ADRANIA0wDUANUA1gDXANgA2QDaANsA3ADdAN4A3wDgAOEA4gFDAVoBqwIsAloCuAMcAzkDzwQ4BDoEPARRBFMEVQTNBOIE8QUEmPtc0Ky6rKKsuqzHrKPDoa2irLCspq2vraWssKzOAejVrKytrKzYA/gu+bQV+9H+fPfRBj76ORVqSWbNavs6rM2wSqwH7vsVFUXNafs68wfNaRVqZ6wG704VaklFJ6zNsEmsB/c6TxUn+zqt9xnNB6z7DhX7Bfs69wWsO++6anRpwwfv+0EV+wX7OvcFB/cZahUnXO8GrFMVamsHRVwF8Wr7OqwG0boFRawGDg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4ODg4OrIr5UQH3OPdUA/ebihVmaZSdbB9Mr2TL0xr3vgewlK2eqh7Kr86y1BuvrIJ5qh/HZrJIQhr7vgdngmp5bR5OZ0tkQxv46ARUX2FSH/u+B1a5YMDAs7TCHve+B8RjtVYeDnD4utkB93HzA/cL+QgVPfH8vPP5UgcOrIn5UgG++DYD+GmJFfw28wb3svfUBZ2glKSnGsNduFBWXF1UiB4ijgaMsJWsnqoIyLHMstYbsa6Ceawfy2ezSUAaVndXZ2Me+2/7jQX3pwYOrIvy92Tz90ryEr/zM/L3SvMu8hPy+B/3/xUT7LCwpMDDGq6CrHqoHsZnTK5DG2lrg3puH09pZk5EGobykAe4tba6vrViXFZiYlcedyOfBhPyxLpdUlJcW1JSXLvEH5ojfAdllGiebB5LsM5j1xuwrpSeqx/KsLPO1xrKcMNerx4OwPL1Affi8gP4dPdlFWD4fPshBvuJ/HkF+wH3ryPy87YH+8z1Ffc69+QF++QHDrb3ZNf3ZfAB9zX3YwP3nRZlaJSebB9LsGPO1xrzBlK6XMTEubrEHtcHxF26UlJcXFIeI/g0+BYh+677JAaorK2ZsBuwroJ4qx/LZrNHPxo/B2aCaHhrHktmR2NAGw6si/X3b/IBufX3b/ID95n4QBWAg4uKhh/3EfelBfsHBvtK/CMFfnCFbm0aZJVnnmoeSrLPYdobsq6Vnqwfy7K10dgasoGueKwey2RHtT4b+9YETlu7yMe8vcfHvVlPT1laTx8OmIr5UQG/+B8D93iKFfsIBvdo+OYF+6T2+B8oBg6iifL3bPX3QPEStvNB8vc/8jXxE/L4EvgHFRPss7Cnu78arYOreqgexWpNr0YbaWyDem4fUmlmTUcaXqBftGAeE/JWYmROSxpklWieax5Ksc9i2BuxrpWerB/LsbTP2BrHaMVath4T7PsN93QVu7FjXFtlZltcZbC7urGzuh8T8oX8ghVPW7zHx7q6yMa9W1BPWVpQHw6i96Tz92/0AbTz93DzA/hp+HkVsIGveKwezmNFtUAbZGeBeGofSmNiRT8aZJVnnmseSrHPYtoboAb7EvukBfcHBvdL+CEFmaySqaQa+9gWxry+yJ6dhoGcHq12oWZmGk5YW1BMXLnKHg4gCiEK+11L91IlCvdiyhWtb6hpJgoeJAoOIQogCqz3pe/3b/UBufX3bfQD+G74dxWyga94rB7NZEW0PhtlaIF4ah9KY2FFPxo7tkTPZh6MjIqKjB+TiJCIjYoIjgaCoKGHoRuanY6QoB+IgfsB+6QF9wcG9y/4IgWYppGnqhr7a/sCFVBbvMjHu7zGyLxbTk5aWk4fDvtd+AojCoz7jBUmCh8kCq1vqGkeDvtdi/cS94wjCvwKBCIKDiD3ru8BvPeuA7z4EhUn967vBw4eoDf/DAmLDAv47BT4exWcEwAHAQFBXW97ipCarPcv8+7yAfdl8gP4aPf6FfIjB+r3gwUiBi77gwWHBjH3gwUkBuP7gwUnJPcxKPsxI/cx+y/y9y/3MPP7MO4GDvtdi/cSJQr3JBZkcqOzsKSksrCkcWdlcnFmHw6up6eurm+naGhvb2hop2+uHwv3EiUK9yP4ChUiCgt3SgWxBrnmBZGVj5eZGgsB2/cSAwtobm5paqBzqoYLAAABAAAAAAAAAAAAAA==) format("woff2")}*{-webkit-tap-highlight-color:transparent}.content__container.svelte-ofx2uu{position:relative;left:50%;top:50%;transform:translate(-50%, -50%);font-family:PingFangSC, Segoe UI, Rototo, sans-serif}.content__container.withAnimation.svelte-ofx2uu{transition:opacity 0.3s linear}.content__container.unClickable.svelte-ofx2uu{pointer-events:none !important}.content__container.unClickable.svelte-ofx2uu *{pointer-events:none !important}.content__wrapper.svelte-ofx2uu{pointer-events:none;width:100%;height:100%}.content__container.hide.svelte-ofx2uu{opacity:0;pointer-events:none}.content__container.hide.svelte-ofx2uu *{pointer-events:none !important}.content__container.disable.svelte-ofx2uu{display:none}.content.svelte-ofx2uu{position:relative;width:100%;height:100%;font-size:0.75rem;line-height:1.125rem;color:#fff}.content.svelte-ofx2uu:not(.unfolded){pointer-events:none}.content.svelte-ofx2uu:not(.unfolded) *{pointer-events:none !important}.content.unfolded.svelte-ofx2uu{pointer-events:auto}')}function Y0(i){let t,e;return{c(){t=j("div"),b(t,"data-info","tag content is keep folded"),b(t,"data-id",e=i[1].id)},m(n,o){z(n,t,o)},p(n,o){o&2&&e!==(e=n[1].id)&&b(t,"data-id",e)},i:Z,o:Z,d(n){n&&T(t)}}}function U0(i){let t,e,n,o,s,r,a,l,c;const d=[tA,eA,$0,K0,q0,Z0,J0],u=[];function f(h,p){return h[1].element?0:h[1].contentType==="Text"?1:h[1].contentType==="ImageText"||h[1].contentType==="Image"||h[1].contentType==="Video"?2:h[1].contentType==="Audio"?3:h[1].contentType==="Marketing"?4:h[1].contentType==="Link"||h[1].contentType==="VRLink"||h[1].contentType==="PanoLink"?5:h[1].contentType==="MediaPlane"||h[1].contentType==="MediaModel"?6:-1}return~(o=f(i))&&(s=u[o]=d[o](i)),{c(){var h;t=j("div"),e=j("div"),n=j("div"),s&&s.c(),b(n,"class","content svelte-ofx2uu"),te(n,"unfolded",(h=i[1].state)==null?void 0:h.unfolded),b(e,"class","content__wrapper svelte-ofx2uu"),b(t,"class","content__container svelte-ofx2uu"),b(t,"data-id",r=i[1].id),te(t,"disable",i[1].enabled===!1),te(t,"hide",i[4]),te(t,"withAnimation",i[0]),te(t,"unClickable",i[1].clickable===!1),M(t,"width",i[1].stickType==="Plane"||i[1].contentType==="MediaModel"?"100%":0),M(t,"height",i[1].stickType==="Plane"||i[1].contentType==="MediaModel"?"100%":0)},m(h,p){z(h,t,p),Q(t,e),Q(e,n),~o&&u[o].m(n,null),a=!0,l||(c=Se(t,"click",ma(i[13])),l=!0)},p(h,p){var g;let A=o;o=f(h),o===A?~o&&u[o].p(h,p):(s&&(se(),S(u[A],1,1,()=>{u[A]=null}),re()),~o?(s=u[o],s?s.p(h,p):(s=u[o]=d[o](h),s.c()),x(s,1),s.m(n,null)):s=null),(!a||p&2)&&te(n,"unfolded",(g=h[1].state)==null?void 0:g.unfolded),(!a||p&2&&r!==(r=h[1].id))&&b(t,"data-id",r),(!a||p&2)&&te(t,"disable",h[1].enabled===!1),(!a||p&16)&&te(t,"hide",h[4]),(!a||p&1)&&te(t,"withAnimation",h[0]),(!a||p&2)&&te(t,"unClickable",h[1].clickable===!1),p&2&&M(t,"width",h[1].stickType==="Plane"||h[1].contentType==="MediaModel"?"100%":0),p&2&&M(t,"height",h[1].stickType==="Plane"||h[1].contentType==="MediaModel"?"100%":0)},i(h){a||(x(s),a=!0)},o(h){S(s),a=!1},d(h){h&&T(t),~o&&u[o].d(),l=!1,c()}}}function J0(i){let t,e;return t=new x0({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function Z0(i){let t,e;return t=new F0({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function q0(i){let t,e;return t=new qg({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function K0(i){let t,e;return t=new P0({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function $0(i){let t,e;return t=new Bg({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function eA(i){let t,e;return t=new Yp({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function tA(i){let t,e;return t=new _0({props:{tag:Me(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Me(n[1])),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function nA(i){let t,e,n,o;const s=[U0,Y0],r=[];function a(l,c){return l[3]?0:1}return t=a(i),e=r[t]=s[t](i),{c(){e.c(),n=fe()},m(l,c){r[t].m(l,c),z(l,n,c),o=!0},p(l,[c]){let d=t;t=a(l),t===d?r[t].p(l,c):(se(),S(r[d],1,1,()=>{r[d]=null}),re(),e=r[t],e?e.p(l,c):(e=r[t]=s[t](l),e.c()),x(e,1),e.m(n.parentNode,n))},i(l){o||(x(e),o=!0)},o(l){S(e),o=!1},d(l){r[t].d(l),l&&T(n)}}}function iA(i,t,e){let n,o,s,r,a,l,{withAnimation:c=!1}=t,{tag:d}=t,{hooks:u}=t,{state:f}=t,{mediaStore:h}=t,{temporaryState:p}=t;Jn("hooks",u),Jn("mediaStore",h);let A,g;function v(C){C?u.emit("exposure",{id:r,type:"start"}):u.emit("exposure",{id:r,type:"end"})}function w(C,I,P){var L,D;return!(!I.visible||!I.enabled||!P.visible||!((L=C.state)!=null&&L.visible)||((D=C.temporaryState)==null?void 0:D.visible)===!1||He(C)&&C.mediaVisible===!1)}const y=C=>u.emit("click",{event:C,target:"TagContent",tag:d});return i.$$set=C=>{"withAnimation"in C&&e(0,c=C.withAnimation),"tag"in C&&e(1,d=C.tag),"hooks"in C&&e(2,u=C.hooks),"state"in C&&e(5,f=C.state),"mediaStore"in C&&e(6,h=C.mediaStore),"temporaryState"in C&&e(7,p=C.temporaryState)},i.$$.update=()=>{var C,I,P,L,D,B,W,F,Y,V,E;i.$$.dirty&2&&e(11,n=(C=d.state)==null?void 0:C.unfolded),i.$$.dirty&2&&e(10,o=(I=d.state)==null?void 0:I.visible),i.$$.dirty&162&&e(12,s=f.visible&&p.visible&&((P=d.state)==null?void 0:P.visible)),i.$$.dirty&2&&(r=d.id),i.$$.dirty&162&&e(4,a=!w(d,f,p)),i.$$.dirty&4096&&v(s),i.$$.dirty&3842&&d.hooks&&(n!==void 0&&n!==g&&(e(9,g=n),n?(D=(L=d.hooks).emit)==null||D.call(L,"unfolded"):(W=d==null?void 0:(B=d.hooks).emit)==null||W.call(B,"folded")),o!==void 0&&o!==A&&(e(8,A=o),o?(Y=(F=d.hooks).emit)==null||Y.call(F,"show"):(E=(V=d.hooks).emit)==null||E.call(V,"hide"))),i.$$.dirty&2&&e(3,l=(()=>!(typeof d.mergedConfig.unfoldedConfig=="object"&&d.mergedConfig.unfoldedConfig.keep==="folded"))())},[c,d,u,l,a,f,h,p,A,g,o,n,s,y]}class gl extends oe{constructor(t){super(),ie(this,t,iA,nA,ne,{withAnimation:0,tag:1,hooks:2,state:5,mediaStore:6,temporaryState:7},X0)}}function oA(i){le(i,"svelte-yex9rb",'@charset "UTF-8";.tag-point-click-helper.svelte-yex9rb.svelte-yex9rb{position:absolute;pointer-events:auto;cursor:pointer;width:2.5rem;height:2.5rem;left:50%;top:50%;transform:translate(-50%, -50%)}.tag-point-wrapper.svelte-yex9rb.svelte-yex9rb{pointer-events:none;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);z-index:-1}.tag-folded-point.svelte-yex9rb.svelte-yex9rb,.tag-unfolded-point.svelte-yex9rb.svelte-yex9rb{transition:all 0.5s}.tag-point-wrapper.svelte-yex9rb .tag-unfolded-point.svelte-yex9rb{display:flex;justify-content:center;align-items:center;position:absolute;width:100%;height:100%;border-radius:50%}.tag-point-wrapper.svelte-yex9rb .tag-unfolded-point.svelte-yex9rb: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-yex9rb .tag-unfolded-point.svelte-yex9rb: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-yex9rb .tag-folded-point.svelte-yex9rb{opacity:1;scale:1}.tag-point-wrapper.folded.svelte-yex9rb .tag-unfolded-point.svelte-yex9rb{opacity:0;scale:1}.tag-point-wrapper.unfolded.svelte-yex9rb .tag-folded-point.svelte-yex9rb{opacity:0;scale:0.2}.tag-point-wrapper.unfolded.svelte-yex9rb .tag-unfolded-point.svelte-yex9rb{opacity:1;scale:1}')}function sA(i){let t,e,n,o,s,r,a,l,c,d,u,f;return o=new $e({props:{center:!0,blurRadius:15,spreadRadius:5,opacity:.3}}),c=new pl({props:{icon:i[2],width:i[1]}}),{c(){t=j("div"),e=ee(),n=j("div"),$(o.$$.fragment),s=ee(),r=j("div"),a=ee(),l=j("div"),$(c.$$.fragment),b(t,"class","tag-point-click-helper svelte-yex9rb"),b(r,"class","tag-unfolded-point svelte-yex9rb"),M(r,"transition-delay",(i[3]?i[5]:0)+"ms"),b(l,"class","tag-folded-point svelte-yex9rb"),M(l,"transition-delay",(i[3]?i[5]:0)+"ms"),b(n,"class","tag-point-wrapper svelte-yex9rb"),te(n,"unfolded",i[0]),te(n,"folded",i[3]),M(n,"width",ye(i[1])),M(n,"height",ye(i[1]))},m(h,p){z(h,t,p),z(h,e,p),z(h,n,p),q(o,n,null),Q(n,s),Q(n,r),Q(n,a),Q(n,l),q(c,l,null),d=!0,u||(f=Se(t,"click",i[4]),u=!0)},p(h,[p]){p&8&&M(r,"transition-delay",(h[3]?h[5]:0)+"ms");const A={};p&4&&(A.icon=h[2]),p&2&&(A.width=h[1]),c.$set(A),p&8&&M(l,"transition-delay",(h[3]?h[5]:0)+"ms"),(!d||p&1)&&te(n,"unfolded",h[0]),(!d||p&8)&&te(n,"folded",h[3]),p&2&&M(n,"width",ye(h[1])),p&2&&M(n,"height",ye(h[1]))},i(h){d||(x(o.$$.fragment,h),x(c.$$.fragment,h),d=!0)},o(h){S(o.$$.fragment,h),S(c.$$.fragment,h),d=!1},d(h){h&&T(t),h&&T(e),h&&T(n),K(o),K(c),u=!1,f()}}}function rA(i,t,e){let n,o,s,r;const a=ut("hooks");let{tag:l}=t,c,d=!1;const u=()=>{c!==void 0&&clearTimeout(c),d=!0,c=setTimeout(()=>{d=!1},800)},f=p=>{d||a.emit("click",{event:p,target:"TagPoint",tag:l})},h=(()=>l.contentType==="Text"&&l.data.appearance==="plane"?500:800)();return i.$$set=p=>{"tag"in p&&e(6,l=p.tag)},i.$$.update=()=>{var p,A,g,v;i.$$.dirty&64&&e(0,n=(p=l.state)==null?void 0:p.unfolded),i.$$.dirty&1&&e(3,o=!n),i.$$.dirty&64&&e(2,s=(g=(A=l.style)==null?void 0:A.point)!=null&&g.url?(v=l.style)==null?void 0:v.point:{url:yp}),i.$$.dirty&64&&e(1,r=(()=>{var y,C,I;const w=(I=(C=(y=l.style)==null?void 0:y.point)==null?void 0:C.size)!=null?I:"S";return typeof w=="number"?w:w==="S"?18:w==="M"?20:w==="L"?24:w==="XL"?28:18})())},u(),[n,r,s,o,f,h,l]}class aA extends oe{constructor(t){super(),ie(this,t,rA,sA,ne,{tag:6},oA)}}function lA(i){le(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 cA(i){let t;return{c(){t=j("div"),b(t,"data-info","tag content is disable")},m(e,n){z(e,t,n)},p:Z,i:Z,o:Z,d(e){e&&T(t)}}}function dA(i){let t,e;return t=new gl({props:{mediaStore:i[2],withAnimation:i[0],tag:Me(i[1]),hooks:i[14],state:i[3],temporaryState:i[4]}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&4&&(s.mediaStore=n[2]),o&1&&(s.withAnimation=n[0]),o&2&&(s.tag=Me(n[1])),o&8&&(s.state=n[3]),o&16&&(s.temporaryState=n[4]),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function uA(i){let t;return{c(){t=j("div"),b(t,"data-info","tag point is disable")},m(e,n){z(e,t,n)},p:Z,i:Z,o:Z,d(e){e&&T(t)}}}function fA(i){let t,e;return t=new aA({props:{tag:i[1]}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=n[1]),t.$set(s)},i(n){e||(x(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function hA(i){let t,e,n,o,s,r,a,l,c;const d=[dA,cA],u=[];function f(g,v){return g[12]?0:1}n=f(i),o=u[n]=d[n](i);const h=[fA,uA],p=[];function A(g,v){return g[13]?0:1}return r=A(i),a=p[r]=h[r](i),{c(){t=j("div"),e=j("div"),o.c(),s=ee(),a.c(),b(e,"class","wrapper svelte-pzwdws"),b(e,"data-tag-unfolded",i[8]),b(e,"data-tag-id",i[11]),b(e,"data-content-type",l=i[1].contentType),M(e,"left",i[7]),M(e,"top",i[6]),M(e,"z-index",i[5]),b(t,"class","tag svelte-pzwdws"),b(t,"data-tag-id",i[11]),te(t,"unClickable",i[1].clickable===!1),te(t,"disable",i[10]),te(t,"hide",i[9]),te(t,"withAnimation",i[0])},m(g,v){z(g,t,v),Q(t,e),u[n].m(e,null),Q(e,s),p[r].m(e,null),c=!0},p(g,[v]){let w=n;n=f(g),n===w?u[n].p(g,v):(se(),S(u[w],1,1,()=>{u[w]=null}),re(),o=u[n],o?o.p(g,v):(o=u[n]=d[n](g),o.c()),x(o,1),o.m(e,s));let y=r;r=A(g),r===y?p[r].p(g,v):(se(),S(p[y],1,1,()=>{p[y]=null}),re(),a=p[r],a?a.p(g,v):(a=p[r]=h[r](g),a.c()),x(a,1),a.m(e,null)),(!c||v&256)&&b(e,"data-tag-unfolded",g[8]),(!c||v&2048)&&b(e,"data-tag-id",g[11]),(!c||v&2&&l!==(l=g[1].contentType))&&b(e,"data-content-type",l),v&128&&M(e,"left",g[7]),v&64&&M(e,"top",g[6]),v&32&&M(e,"z-index",g[5]),(!c||v&2048)&&b(t,"data-tag-id",g[11]),(!c||v&2)&&te(t,"unClickable",g[1].clickable===!1),(!c||v&1024)&&te(t,"disable",g[10]),(!c||v&512)&&te(t,"hide",g[9]),(!c||v&1)&&te(t,"withAnimation",g[0])},i(g){c||(x(o),x(a),c=!0)},o(g){S(o),S(a),c=!1},d(g){g&&T(t),u[n].d(),p[r].d()}}}function mA(i,t,e){let n,o,s,r,a,l,c,d,u,{withAnimation:f=!1}=t,{tag:h}=t,{mediaStore:p}=t,{state:A}=t,{temporaryState:g}=t;const v=ut("hooks");return i.$$set=w=>{"withAnimation"in w&&e(0,f=w.withAnimation),"tag"in w&&e(1,h=w.tag),"mediaStore"in w&&e(2,p=w.mediaStore),"state"in w&&e(3,A=w.state),"temporaryState"in w&&e(4,g=w.temporaryState)},i.$$.update=()=>{var w,y,C,I,P,L,D,B;i.$$.dirty&2&&e(13,n=(()=>!(h.contentType==="Link"||h.contentType==="VRLink"||h.contentType==="PanoLink"||h.contentType==="Audio"&&h.data.appearance==="plane"))()),i.$$.dirty&2&&e(12,o=(()=>h.stickType==="2DPoint")()),i.$$.dirty&2&&e(11,s=h.id),i.$$.dirty&2&&e(10,r=!((w=h.pointTagStyle)!=null&&w.leftPercent)||!((y=h.pointTagStyle)!=null&&y.topPercent)||h.enabled===!1||!h.state),i.$$.dirty&2&&e(9,a=!((C=h.state)!=null&&C.visible)||((I=h.temporaryState)==null?void 0:I.visible)===!1),i.$$.dirty&2&&e(8,l=(P=h.state)==null?void 0:P.unfolded),i.$$.dirty&2&&e(7,c=((L=h.pointTagStyle)==null?void 0:L.leftPercent)+"%"),i.$$.dirty&2&&e(6,d=((D=h.pointTagStyle)==null?void 0:D.topPercent)+"%"),i.$$.dirty&2&&e(5,u=(B=h.state)!=null&&B.unfolded?1:0)},[f,h,p,A,g,u,d,c,l,a,r,s,o,n,v]}class pA extends oe{constructor(t){super(),ie(this,t,mA,hA,ne,{withAnimation:0,tag:1,mediaStore:2,state:3,temporaryState:4},lA)}}function gA(i){le(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 Yr(i,t,e){const n=i.slice();return n[6]=t[e],n}function Ur(i){let t,e=[],n=new Map,o,s=i[1];const r=a=>a[6].id;for(let a=0;a<s.length;a+=1){let l=Yr(i,s,a),c=r(l);n.set(c,e[a]=Jr(c,l))}return{c(){t=j("div");for(let a=0;a<e.length;a+=1)e[a].c();b(t,"class","tag--container svelte-uq11d5"),te(t,"hide",!i[3].visible||!i[4].visible),te(t,"withAnimation",i[0])},m(a,l){z(a,t,l);for(let c=0;c<e.length;c+=1)e[c].m(t,null);o=!0},p(a,l){l&31&&(s=a[1],se(),e=Ke(e,l,r,1,a,s,n,t,Ot,Jr,null,Yr),re()),(!o||l&24)&&te(t,"hide",!a[3].visible||!a[4].visible),(!o||l&1)&&te(t,"withAnimation",a[0])},i(a){if(!o){for(let l=0;l<s.length;l+=1)x(e[l]);o=!0}},o(a){for(let l=0;l<e.length;l+=1)S(e[l]);o=!1},d(a){a&&T(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function Jr(i,t){let e,n,o;return n=new pA({props:{state:t[3],temporaryState:t[4],withAnimation:t[0],tag:t[6],mediaStore:t[2]}}),{key:i,first:null,c(){e=fe(),$(n.$$.fragment),this.first=e},m(s,r){z(s,e,r),q(n,s,r),o=!0},p(s,r){t=s;const a={};r&8&&(a.state=t[3]),r&16&&(a.temporaryState=t[4]),r&1&&(a.withAnimation=t[0]),r&2&&(a.tag=t[6]),r&4&&(a.mediaStore=t[2]),n.$set(a)},i(s){o||(x(n.$$.fragment,s),o=!0)},o(s){S(n.$$.fragment,s),o=!1},d(s){s&&T(e),K(n,s)}}}function AA(i){let t,e,n=i[3].enabled&&Ur(i);return{c(){n&&n.c(),t=fe()},m(o,s){n&&n.m(o,s),z(o,t,s),e=!0},p(o,[s]){o[3].enabled?n?(n.p(o,s),s&8&&x(n,1)):(n=Ur(o),n.c(),x(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(x(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&T(t)}}}function vA(i,t,e){let{withAnimation:n=!1}=t,{tags:o=[]}=t,{hooks:s}=t,{mediaStore:r}=t,{state:a}=t,{temporaryState:l}=t;return Jn("hooks",s),i.$$set=c=>{"withAnimation"in c&&e(0,n=c.withAnimation),"tags"in c&&e(1,o=c.tags),"hooks"in c&&e(5,s=c.hooks),"mediaStore"in c&&e(2,r=c.mediaStore),"state"in c&&e(3,a=c.state),"temporaryState"in c&&e(4,l=c.temporaryState)},[n,o,r,a,l,s]}class bA extends oe{constructor(t){super(),ie(this,t,vA,AA,ne,{withAnimation:0,tags:1,hooks:5,mediaStore:2,state:3,temporaryState:4},gA)}}const yA={globalConfig:{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}},MediaModel:{unfoldedConfig:{keep:"unfolded"},visibleConfig:{keep:"visible",alwaysShowWhenMovePano:!0}}}};class wA extends ci{constructor(e){super(e);m(this,"tagCacheByPanoIndex",{})}getCache({panoIndex:e,id:n,key:o}){var c,d,u,f;const{five:s}=this,r=(c=s.panoIndex)!=null?c:e;if(r===void 0)throw new Error(`TagCacheController getCache(): fivePanoIndex is ${r}`);const a=`${(u=(d=s.work)==null?void 0:d.workCode)!=null?u:s.model.uuid}-${r}`;let l=this.tagCacheByPanoIndex[a];if(l||(l=new Map,this.tagCacheByPanoIndex[a]=l),n===void 0)return l;if(o===void 0){const h=l.get(n);return h||(l.set(n,{}),l.get(n))}return(f=l.get(n))==null?void 0:f[o]}clearCache(){this.tagCacheByPanoIndex={}}removeCache(){}}class CA extends wA{constructor(e){super(e);m(this,"tags",[]);m(this,"config",yA);m(this,"raycaster",new k.Raycaster)}get isPanorama(){return this.five.currentMode==="Panorama"}getTagById(e){const n=this.tags.find(o=>o.id===e);if(!n){console.error(`getTagById(): tag is ${n}, id is ${e}`);return}return n}changeContentTypeConfig(e,n,o=!0){this.config.contentTypeConfig||(this.config.contentTypeConfig={}),o?this.config.contentTypeConfig[e]=gt.default({},this.config.contentTypeConfig[e],n):this.config.contentTypeConfig[e]=n,this.clearCache()}getVisibleByPanoIndex(e,n){var r;const o=this.getCache({panoIndex:n,id:e.id}),s=(r=this.five.panoIndex)!=null?r:n;if(He(e))return!0;if(o.visible!==void 0)return o.visible;{const a=(()=>{var d,u,f;const l=(d=this.getTagConfig(e).visibleConfig)!=null?d:{},c=this.getDistance(e);if(typeof l=="function")return{value:l(this.five,{tag:e,distance:c}),reason:"config function result"};if(l.keep==="hidden")return{value:!1,reason:"config.keep is hidden"};if(l.keep==="visible")return{value:!0,reason:"config.keep is visible"};if(l.visiblePanoIndex!==void 0&&l.visiblePanoIndex!=="all"&&s!==void 0){if(Array.isArray(l.visiblePanoIndex)&&!l.visiblePanoIndex.includes(s))return{value:!1,reason:`current panoIndex is not included in visiblePano. currentPanoIndex: ${s}, visiblePanoIndex: ${l.visiblePanoIndex}`};if(l.visiblePanoIndex==="current"&&s!==((u=e.fiveState)==null?void 0:u.panoIndex))return{value:!1,reason:`current panoIndex is not equal to tag.panoIndex. currentPanoIndex: ${s}, tag.panoIndex: ${(f=e.fiveState)==null?void 0:f.panoIndex}`}}if(l.visibleDistance!==void 0&&l.visibleDistance!=="unLimited"&&rn(c,l.visibleDistance)===!1)return{value:!1,reason:`distance is not in visibleDistance. distance: ${c}, visibleDistance: ${l.visibleDistance}`};if(l.intersectRaycaster!==!1&&(typeof l.intersectRaycaster!="object"||l.intersectRaycaster.enabled!==!1)){if(s===void 0)return{value:!1,reason:`intersectRaycaster check failed: fivePanoIndex is ${s}`};const h=this.getRaycasterFromPanoIndex(e,s),p=this.getTagEnableByIntersect(e,h);if(p.value===!1)return p}if(l.angleRange&&rp(e)){const h=this.getAngle(e);if(rn(h,l.angleRange)===!1)return{value:!1,reason:`angle is not in angleRange. angle: ${h}, angleRange: ${l.angleRange}`}}return{value:!0,reason:"all check passed"}})();return o.visible=a.value,o.__debug_visible_reason__=a,o.visible}}getVisibleByFiveMode(e,n){var r;const o=(r=this.getTagConfig(e).visibleConfig)!=null?r:{};if(typeof o=="function")return n==="Panorama";const s=o==null?void 0:o.visibleFiveMode;return s?s.includes(n):n==="Panorama"}getVisible(e){const n=this.five.getCurrentState(),o=this.getVisibleByFiveMode(e,n.mode),s=n.mode==="Panorama"?this.getVisibleByPanoIndex(e,n.panoIndex):!0;return o&&s}getModelMedialVisibleByPanoIndex(e){const n=this.five.getCurrentState().panoIndex,o=this.getCache({panoIndex:n,id:e.id});if(o.modelMedialVisible!==void 0)return o.modelMedialVisible;const s=this.getRaycasterFromPanoIndex(e,n),r=this.getTagEnableByIntersect(e,s);return o.modelMedialVisible=r.value,o.__debug_visible_reason__=r,r.value!==!1}getUnfoldedByPanoIndex(e,n){if(!this.getVisibleByPanoIndex(e))return;const s=this.getCache({panoIndex:n,id:e.id});if(s.unfolded!==void 0)return s.unfolded;{const r=this.getTagConfig(e).unfoldedConfig;if(!r)return;const a=(()=>{const c=this.getDistance(e);if(typeof r=="function")return r(this.five,{tag:e,distance:c});if(r.keep==="folded")return!1;if(r.keep==="unfolded")return!0;if(r.unfoldDistance&&rn(c,r.unfoldDistance)===!1)return!1})();s.unfolded=a;const l=this.getUnfoldedByCamera(e);return l!==void 0?l:s.unfolded}}getUnfoldedByCamera(e){return this.getVisibleByPanoIndex(e)?(()=>{var a;const s=this.getDistance(e),r=this.getTagConfig(e).unfoldedConfig;if(!!r){if(typeof r=="function")return r(this.five,{tag:e,distance:s});if(r.keep==="folded")return!1;if(r.keep==="unfolded")return!0;if(r.autoUnfold===void 0||r.autoUnfold===!1||r.autoUnfold.enable===!1)return;if(r.autoUnfold.strategy==="ScreenPostion"){const l=this.getTagProject(e);if(l&&rn(l.x,r.autoUnfold.autoUnfoldProjectX)===!1)return!1}if(r.autoUnfold.strategy==="MinimumDistance"){const d=this.filterPointTag().filter(f=>this.getVisibleByPanoIndex(f)).filter(f=>{const h=this.getTagProject(f);if(!h)return!1;const{x:p,y:A,z:g}=h;return!(Math.abs(g)>1||Math.abs(p)>1||Math.abs(A)>1)}).map(f=>({tag:f,id:f.id,tagConfig:this.getTagConfig(f).unfoldedConfig})).filter(({tag:f,tagConfig:h})=>{var p,A;return!(typeof h!="object"||h.keep||h.autoUnfold===!1||((p=h.autoUnfold)==null?void 0:p.enable)===!1||((A=h.autoUnfold)==null?void 0:A.strategy)!=="MinimumDistance")}).map(f=>he(G({},f),{distance:this.getDistance(f.tag)})).filter(({distance:f,tagConfig:h})=>{var p,A;return!(f===void 0||typeof h!="object"||h.autoUnfold===!1||((p=h.autoUnfold)==null?void 0:p.enable)===!1||((A=h.autoUnfold)==null?void 0:A.strategy)!=="MinimumDistance"||h.autoUnfold.distance&&rn(f,h.autoUnfold.distance)===!1)}).sort((f,h)=>f.distance-h.distance).findIndex(f=>f.id===e.id);if(d===-1||d<=((a=r.autoUnfold.maxNumber)!=null?a:1)-1===!1)return!1}return!0}})():void 0}getDistance(e,n){var r,a,l;const o=(r=this.five.panoIndex)!=null?r:n;if(o===void 0)throw new Error(`getDistance(): fivePanoIndex is ${o}`);const s=this.getCache({panoIndex:n,id:e.id});if(s.distance!==void 0)return s.distance;{const c=(l=(a=this.five.work)==null?void 0:a.observers[o])==null?void 0:l.position;if(c===void 0)throw new Error(`getDistance(): observerPosition is ${c}`);const d=Us(e),u=c.distanceTo(d);return s.distance=u,u}}getAngle(e,n){var r,a,l;const o=(r=this.five.panoIndex)!=null?r:n;if(o===void 0)throw new Error(`getDistance(): fivePanoIndex is ${o}`);const s=this.getCache({panoIndex:n,id:e.id});if(s.angle!==void 0)return s.angle;{const c=(l=(a=this.five.work)==null?void 0:a.observers[o])==null?void 0:l.position;if(c===void 0)throw new Error(`getAngleRange(): observerPosition is ${c}`);const d=(()=>e.stickType==="3DPoint"?mn(e.normal):_i(e.position))();if(!d)return;const u=new k.Vector3().copy(c).sub(Xi(e.position)),f=d.angleTo(u)*180/Math.PI;return s.angle=f,s.angle}}getTagConfig(e){var s,r;if(!e)return(s=this.config.globalConfig)!=null?s:{};const n={};this.config.contentTypeConfig&&Object.keys(this.config.contentTypeConfig).forEach(a=>{const l=a;if(n[l])return;const c=l.split("-");if(c.length===1){const[d]=c;e.contentType===d&&(n[l]=this.config.contentTypeConfig[l])}if(c.length===2){const[d="Any",u="Any"]=c;(e.stickType===d||d==="Any")&&(e.contentType===u||u==="Any")&&(n[l]=this.config.contentTypeConfig[l])}if(c.length===3){const[d="Any",u,f]=c;if(u==="Audio"&&e.contentType==="Audio"){const h=e;(h.stickType===d||d==="Any")&&h.data.appearance===f&&(n[l]=this.config.contentTypeConfig[l])}}});const o=gt.default({},this.config.globalConfig,...Object.values(n),e.config);return typeof o.unfoldedConfig=="object"&&(o.unfoldedConfig.disableFold&&(o.unfoldedConfig={keep:"unfolded"}),o.unfoldedConfig.disableUnfold&&(o.unfoldedConfig={keep:"folded"}),o.unfoldedConfig.keep&&(o.unfoldedConfig={keep:o.unfoldedConfig.keep})),typeof o.visibleConfig=="object"&&o.visibleConfig.keep&&(o.visibleConfig={keep:o.visibleConfig.keep,visibleFiveMode:(r=o.visibleConfig)==null?void 0:r.visibleFiveMode}),o}can(e,n){const o=this.getTagConfig(n);if(!o||typeof o!="object")return!0;if(e==="show"||e==="hide"){if(!o.visibleConfig||typeof o.visibleConfig!="object")return!0;if(e==="show"&&o.visibleConfig.keep==="hidden"||e==="hide"&&(o.visibleConfig.keep==="visible"||o.visibleConfig.alwaysShowWhenMovePano))return!1}if(e==="fold"||e==="unfold"){if(!o.unfoldedConfig||typeof o.unfoldedConfig!="object")return!0;if(e==="fold"&&o.unfoldedConfig.keep==="unfolded"||e==="unfold"&&o.unfoldedConfig.keep==="folded")return!1}return!0}sort(e){return e.sort((n,o)=>{const s=this.getDistance(n),r=this.getDistance(o);return s===void 0||r===void 0?0:r-s})}setPointTagPosition(){const e=this.filterPointTag();e.length!==0&&e.forEach(n=>{var s;if(!((s=n.state)!=null&&s.visible)){n.pointTagStyle=null;return}const o=this.getTagProject(n);if(!o){n.pointTagStyle=null;return}n.pointTagStyle={leftPercent:(o.x+1)/2*100,topPercent:(-o.y+1)/2*100}})}setVisibleByPanoIndex(){this.tags.forEach(e=>{const n=this.getVisibleByPanoIndex(e);e.state&&(e.state.visible=n)})}setModelMedialVisibleByPanoIndex(){this.tags.forEach(e=>{if(!He(e))return;const n=this.getModelMedialVisibleByPanoIndex(e);e.mediaVisible=n})}setUnfoldedByPanoIndex(){this.tags.forEach(e=>{const n=this.getUnfoldedByPanoIndex(e);if(!!e.state&&(n!==void 0&&(e.state.unfolded=n),n&&!e.state.visible)){const o=this.getTagConfig(e);typeof o.unfoldedConfig=="object"&&o.unfoldedConfig.autoUnfoldWhenHide!==!1&&(e.state.unfolded=!1)}})}getTagProject(e){if(!this.getVisibleByPanoIndex(e))return;const o=Xi(e.position),{x:s,y:r,z:a}=o.project(this.five.camera);if(!(a>1))return{x:s,y:r,z:a}}filterPointTag(){return this.tags.filter(e=>e.stickType==="2DPoint"||e.stickType==="3DPoint")}filter2DPointTag(){return this.tags.filter(e=>e.stickType==="2DPoint")}filter3DPointTag(){return this.tags.filter(e=>e.stickType==="3DPoint")}filterModelTag(){return this.tags.filter(e=>e.stickType==="Model")}filter3DTag(){return this.tags.filter(e=>e.stickType==="3DPoint"||e.stickType==="Plane")}filterPlaneTag(){return this.tags.filter(e=>e.stickType==="Plane")}updateTagConfig(e){e!=null&&e.force&&this.clearCache(),this.tags.forEach(n=>{const o=this.getTagConfig(n);n.mergedConfig=o})}getTagEnableByIntersect(e,n){var d,u,f;const o=(d=this.getTagConfig(e).visibleConfig)!=null?d:{},s=this.getDistance(e),[r]=this.five.model.intersectRaycaster(n),a=(()=>{if(!He(e))return;const h=this.tags.filter(He).map(A=>{var g;return(g=A.model)==null?void 0:g.object}).filter(Ne);return n.intersectObjects(h,!0)[0]})(),l=(()=>{var h;return typeof o=="object"&&typeof o.intersectRaycaster=="object"&&(h=o.intersectRaycaster.distanceAccuracy)!=null?h:.01})();return Math.min((u=r==null?void 0:r.distance)!=null?u:1/0,(f=a==null?void 0:a.distance)!=null?f:1/0)+l<s?{value:!1,reason:`intersectRaycaster check failed: distance is ${s}, intersection.point is ${r.point.toArray()}, distanceError is ${l}`}:{value:!0,reason:""}}getRaycasterFromPanoIndex(e,n){var r;const o=(r=this.five.work.observers[n])==null?void 0:r.position;if(o===void 0)throw new Error(`getVisible(): observerPosition is ${o}`);const s=Us(e).sub(o).normalize();return this.raycaster.set(o,s),this.raycaster}checkFloorIndex(e){var a;const n=e.fiveState;if(!n)return!0;const o=n.panoIndex,s=(a=this.five.work.observers[o])==null?void 0:a.floorIndex,r=this.five.model.shownFloor;return r===null||r===s}}function PA(i){var t,e,n,o;if(!i.stickType){const s=(()=>i.pointType==="PointTag"&&i.dimensionType==="3D"?"3DPoint":i.pointType==="PlaneTag"?"Plane":"2DPoint")();i.stickType=s}if(i.contentType==="VRLink"||i.contentType==="PanoLink"||i.contentType==="Link"){const s=i;!((e=(t=s.data)==null?void 0:t.icon)!=null&&e.url)&&!((o=(n=s.style)==null?void 0:n.point)!=null&&o.url)&&(s.data.icon={url:"//vrlab-static.ljcdn.com/release/web/test.09dee741.png",steps:28})}return i}const EA=new Rl.GLTFLoader;function IA(i){return new Promise((t,e)=>{function n(s){t(s)}function o(s){e(s)}EA.load(i,n,void 0,o)})}function kA(i){if(!i.matrix)return;const t=new O.Matrix4().fromArray(i.matrix),{mediaPosition:e}=i.data;return e.map(o=>new O.Vector3().fromArray(o).add(new O.Vector3(0,0,5e-4)).applyMatrix4(t).toArray())}const Al="2.0.10",qi=`DnalogelPlugin-PanoTagPlugin@${Al}`,xA=!1,DA=i=>`${qi}--${i}`;class vl extends CA{constructor(e,n){super(e);m(this,"version",Al);m(this,"state",{enabled:!0,visible:!0});m(this,"params");m(this,"debug");m(this,"css3DRenderPlugin");m(this,"TagContainerSvelte");m(this,"temporaryState",{visible:!0});m(this,"mediaStore",lo({currentMediaElement:null}));m(this,"group",new O.Group);m(this,"gltfObjectGroup",new O.Group);m(this,"isIOSWX",navigator.userAgent.toLowerCase().indexOf("micromessenger")!==-1&&navigator.userAgent.toLowerCase().indexOf("iphone")!==-1);m(this,"store",{disposers:[],disposed:!1,resizeObserverDisposerAdding:!1,css3DRenderDisposer:new Map});m(this,"enabledModelTagSet",new Set);m(this,"changeTagModel",(e,n)=>X(this,null,function*(){e.data=gt.default({},e.data,n),yield this.loadModel(e),this.updateRenderAllTags()}));m(this,"disposedErrorLog",()=>{console.error(`${qi} is disposed`)});m(this,"handleFiveInitAnimationEnded",()=>{const e=this.five.getCurrentState().mode;this.tags.forEach(n=>{n.state.visible=this.getVisible(n),He(n)&&e==="Panorama"&&this.changeTagMode(n,"front")}),this.updateRenderAllTags(),this.updateRenderAllTags()});m(this,"handleFiveModelShownFloorChange",()=>{this.tags.forEach(e=>{!He(e)||(e.state.visible=this.checkFloorIndex(e))}),this.updateRenderAllTags()});m(this,"loadModel",e=>X(this,null,function*(){var l;const n=e.data.modelUrl;if(console.log("\u{1F436} ==> url:",n),!n)return;const o=IA(n).then(c=>Object.assign(c.scene,{customID:e.id,isTagModel:!0}));e.model={promise:o};const s=yield o;if(((l=e.model)==null?void 0:l.promise)!==o||(e.model.object=s,!this.tags.includes(e)))return;s.visible=e.state.visible,new O.Matrix4().fromArray(e.matrix).decompose(s.position,s.quaternion,s.scale),this.checkFloorIndex(e)||(s.visible=!1);const a=this.gltfObjectGroup.children.find(c=>c.customID===e.id);return a&&this.gltfObjectGroup.remove(a),this.gltfObjectGroup.add(s),this.updateTagCss3DObjectMatrix(e,s),s}));this.group.name="PanoTagPluginModelGroup",this.gltfObjectGroup.name="PanoTagPluginGLTFObjectGroup",this.group.add(this.gltfObjectGroup),this.params=G({debug:!1,config:this.config},n),this.debug=this.params.debug,this.config=this.params.config,Vr(1,{namespace:ni.GetAudioDuration}),Vr(1,{namespace:ni.PlayAudio}),Object.assign(window,{[`__PANOTAGPLUGIN_DEBUG_${Date.now()}__`]:this}),Object.assign(window,{__PANOTAGPLUGIN_DEBUG__:this}),this.state.enabled&&this.five.scene.add(this.group)}load(e,n){return X(this,null,function*(){var s,r;this.clearTags(),console.log(qi," load:",{data:JSON.parse(JSON.stringify(e))}),this.config=gt.default({},this.config,{globalConfig:(s=e.globalConfig)!=null?s:{},contentTypeConfig:(r=e.contentTypeConfig)!=null?r:{}});const o=yield this.addTag(e.tagList,n);if(this.debug)try{op(this.five,this.tags)}catch(a){console.error(a)}return o})}addTag(e,n){return X(this,null,function*(){const s=(Array.isArray(e)?e:[e]).map(r=>{const a=this.getTagConfig(r),l=he(G({},r),{state:G({visible:void 0,unfolded:xA},a.initialState),hooks:new be.Subscribe,clickable:a.clickable,mergedConfig:a});return He(r)&&(l.temporaryState={visible:!1}),l}).filter(r=>r.position);return s.forEach(PA),this.tags.push(...s),ap(this.five).then(()=>{var r,a,l;return this.store.eventListenerDisposer&&((a=(r=this.store).eventListenerDisposer)==null||a.call(r)),this.state.enabled&&(this.store.eventListenerDisposer=this.addEventListener()),this.addResizeListener(),this.checkPanelTag(),this.setVisibleAndUnfolded({withAnimation:(l=n==null?void 0:n.withAnimation)!=null?l:!0}).then(()=>this.updateRenderAllTags()),this.updateRenderAllTags(),console.log("\u{1F436} ==> waitFiveModelLoaded:"),this.addMediaModelTag(s)})})}changeConfig(e,n=!0){n?this.config=gt.default({},this.config,e):this.config=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}changeGlobalConfig(e,n=!0){n?this.config.globalConfig=gt.default({},this.config.globalConfig,e):this.config.globalConfig=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}clearTags(){this.tags=[],this.enabledModelTagSet.clear(),this.clearCache(),this.disposeAllCSS3DContainer(),this.updateRenderAllTags()}show(e){return X(this,null,function*(){const{userAction:n=!0,withAnimation:o=!1}=e!=null?e:{};if(this.store.disposed)return this.disposedErrorLog();this.setState({visible:!0},{userAction:n,visibleWithAnimation:o}),this.hooks.emit("show",{userAction:n,withAnimation:o})})}hide(e){return X(this,null,function*(){const{userAction:n=!0,withAnimation:o=!1}=e!=null?e:{};if(this.store.disposed)return this.disposedErrorLog();this.setState({visible:!1},{userAction:n,visibleWithAnimation:o}),this.hooks.emit("hide",{userAction:n,withAnimation:o})})}enable(e){const{userAction:n=!0}=e!=null?e:{};if(this.store.disposed)return this.disposedErrorLog();this.five.scene.children.includes(this.group)||this.five.scene.add(this.group),this.setState({enabled:!0},{userAction:n}),this.hooks.emit("enable",{userAction:n}),this.five.needsRender=!0}disable(e){const{userAction:n=!0}=e!=null?e:{};if(this.store.disposed)return this.disposedErrorLog();this.setState({enabled:!1},{userAction:n}),this.five.scene.remove(this.group),this.hooks.emit("disable",{userAction:n}),this.five.needsRender=!0}dispose(){var e,n,o,s,r,a;this.pauseCurrentMedia(),this.disposeAllCSS3DContainer(),(e=this.TagContainerSvelte)==null||e.$destroy(),this.filter3DTag().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=[],this.store.disposed=!0,(s=(o=this.store).eventListenerDisposer)==null||s.call(o),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.clearCache(),this.five.needsRender=!0,this.hooks.emit("dispose")}setState(e,n){if(this.store.disposed)return this.disposedErrorLog();const{userAction:o=!0,visibleWithAnimation:s=!1}=n,r=G({},this.state);this.state=Object.assign(this.state,e),this.store.visibleWithAnimation=s,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:o})}changeUnfoldedById(e,n){var r;const o=this.getTagById(e);if(!o)return;o.state.unfolded=n;const s=this.filterPointTag();(r=this.TagContainerSvelte)==null||r.$set({tags:s})}changeTagNormalById(e,n){const o=this.getTagById(e);!o||!o.tag3DContentSvelte||(o.tag3DContentSvelte.currentNormal=it(n),this.updateRenderPlaneTag())}changeDataById(e,n,o=!0){const s=this.getTagById(e);!s||(o?s.data=gt.default({},s.data,n):s.data=G(G({},s.data),n),this.checkPanelTag(),this.updateRenderAllTags())}changeStickTypeById(e,n,o=!0){this.changeTagById(e,n,o)}changeTagById(e,n,o=!0){const s=this.getTagById(e);!n||(o?gt.default(s,n):Object.assign(s,n),(s==null?void 0:s.tag3DContentSvelte)&&(n==null?void 0:n.normal)&&(s.tag3DContentSvelte.currentNormal=it(n.normal)),this.updateRenderAllTags(),this.checkPanelTag())}destroyTagById(e){(Array.isArray(e)?e:[e]).forEach(o=>{const s=this.tags.findIndex(r=>r.id===o);s!==-1&&this.tags.splice(s,1)}),this.updateRenderAllTags()}pauseCurrentMedia(){this.mediaStore.set({currentMediaElement:null})}updateTagCss3DObjectMatrix(e,n){var A,g,v,w;const o=(v=(g=(A=e.mergedConfig)==null?void 0:A.tag3DConfig)==null?void 0:g.ratio)!=null?v:.00216,s=(w=e.tag3DContentSvelte)==null?void 0:w.domContainer.css3DObject;if(!s)return;const r=He(e)?e.data.mediaPosition:e.position;n.updateWorldMatrix(!1,!1);const a=n.matrixWorld,l=new O.Vector3().fromArray(r[0]),c=new O.Vector3().fromArray(r[2]),d=new O.Vector3().lerpVectors(l,c,.5).add(new O.Vector3(0,0,5e-4)),u=new O.Matrix4().setPosition(d),f=new O.Matrix4().makeScale(o,o,o),h=new O.Matrix4().multiply(a).multiply(u).multiply(f);h.decompose(s.position,s.quaternion,s.scale);const p=s.opacityMesh;!p||h.decompose(p.position,p.quaternion,p.scale)}setVisibleAndUnfolded(){return X(this,arguments,function*({withAnimation:e}={withAnimation:!1}){if(!!this.isPanorama)return this.setVisibleByPanoIndex(),e?new Promise((n,o)=>{setTimeout(()=>{this.setUnfoldedByPanoIndex(),n()},10)}):(this.setUnfoldedByPanoIndex(),Promise.resolve())})}handleShow(){this.state.visible=!0,this.updateTagContainerVisible()}handleHide(){this.pauseCurrentMedia(),this.state.visible=!1,this.updateTagContainerVisible()}handleEnable(){this.state.enabled=!0,this.store.eventListenerDisposer=this.addEventListener(),this.updateRenderAllTags()}handleDisable(){var e,n,o;this.pauseCurrentMedia(),this.state.enabled=!1,(n=(e=this.store).eventListenerDisposer)==null||n.call(e),(o=this.TagContainerSvelte)==null||o.$set({tags:[]}),this.filter3DTag().forEach(s=>{var r;(r=s.tag3DContentSvelte)==null||r.svelteApp.$destroy(),s.tag3DContentSvelte=void 0})}addEventListener(){const{five:e,hooks:n}=this,o=this.handleFiveWantsMoveToPano.bind(this),s=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),u=this.five.currentMode;return this.handleFiveModeChange(u),this.handleFivePanoArrived(),e.on("wantsMoveToPano",o),e.on("modeChange",s),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",o),e.off("modeChange",s),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}}loadVideoFirstFrame(){this.isIOSWX&&this.hooks.emit("loadVideoFirstFrame")}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())},o=()=>{!this.state.enabled||this.hide()},{observe:s,unobserve:r}=Zs(cp(()=>{!this.store.resizeObserverDisposer||o()},500),e),{observe:a,unobserve:l}=Zs(Js(()=>n(),400),e);return s(),a(),()=>{r(),l()}}handleFiveModeChange(e){this.tags.forEach(n=>{n.state.visible=this.getVisible(n),He(n)&&e!=="Panorama"&&this.changeTagMode(n,"behind")}),this.updateRenderAllTags(),this.updateRenderAllTags()}handleFiveWantsMoveToPano(){this.tags.forEach(e=>{const n=this.getTagConfig(e);typeof n.visibleConfig=="object"&&(n.visibleConfig.keep?e.temporaryState=he(G({},e.temporaryState),{visible:n.visibleConfig.keep==="visible"}):e.temporaryState=he(G({},e.temporaryState),{visible:Boolean(n.visibleConfig.alwaysShowWhenMovePano)}))}),this.updateTagContainerVisible()}temporaryShow({withAnimation:e}={withAnimation:!1}){this.store.visibleWithAnimation=e,this.temporaryState.visible=!0,this.updateTagContainerVisible()}temporaryHide({withAnimation:e}={withAnimation:!1}){this.store.visibleWithAnimation=e,this.temporaryState.visible=!1,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),o=this.can("unfold",e.tag);n&&o&&(e.tag.state.unfolded=!e.tag.state.unfolded,e.tag.state.unfolded&&this.tags.forEach(s=>{s.id!==e.tag.id&&s.state&&this.can("fold",s)&&(s.state.unfolded=!1)}),this.updateRenderAllTags())}updateRenderAllTags(){this.enabledModelTagSet.clear(),this.tags.forEach(e=>e.stickType==="Model"&&this.enabledModelTagSet.add(e.id)),this.updateRenderPointTag(),this.updateRenderPlaneTag(),this.updateRenderModelTag()}updateTagContainerVisible(){var e;(e=this.TagContainerSvelte)==null||e.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation}),this.filter3DTag().forEach(n=>{var o;(o=n.tag3DContentSvelte)==null||o.svelteApp.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation})})}handleFiveCameraUpdateDebounce(){return Js(()=>{this.setUnfoldedByCamera(),this.updateRenderAllTags()},100)}handleFiveCameraUpdate(){this.updateRenderPointTag()}handleFivePanoArrived(){return X(this,null,function*(){yield this.setVisibleAndUnfolded(),this.setModelMedialVisibleByPanoIndex(),this.tags.forEach(e=>{e.temporaryState=he(G({},e.temporaryState),{visible:!0})}),this.store.visibleWithAnimation=!0,this.updateTagContainerVisible()})}setUnfoldedByCamera(){let e=!1;this.tags.forEach(n=>{const o=this.getUnfoldedByCamera(n);!n.state||o!==void 0&&(o===!0&&(e=!0),n.state.unfolded=o)}),e&&this.tags.forEach(n=>{const o=this.getTagConfig(n).unfoldedConfig;typeof o=="object"&&(o.autoUnfold||o.keep)||n.state&&(n.state.unfolded=!1)})}updateRenderPointTag(){var n;const e=this.sort(this.filterPointTag());if(this.setPointTagPosition(),this.TagContainerSvelte)this.TagContainerSvelte.$set({tags:e,state:this.state,temporaryState:this.temporaryState});else{const o=(n=this.five.getElement())==null?void 0:n.parentElement;if(!o)return console.error("updateRenderPlaneTag: tag2DContainer not found");this.TagContainerSvelte=new bA({target:o,props:{hooks:this.hooks,tags:e,state:this.state,temporaryState:this.temporaryState,mediaStore:this.mediaStore}})}}updateRenderPlaneTag(){this.sort([...this.filterPlaneTag(),...this.filter3DPointTag(),...this.filterModelTag()]).forEach(n=>{var o;if(n.tag3DContentSvelte){const{svelteApp:s,domContainer:r,initialNormal:a,currentNormal:l}=n.tag3DContentSvelte;if(s.$set({tag:n,hooks:this.hooks,state:this.state,temporaryState:this.temporaryState}),!a.equals(l)){const c=new O.Quaternion().setFromUnitVectors(a,l);r.css3DObject.setRotationFromQuaternion(c)}}else{if(((o=n.state)==null?void 0:o.visible)===!1)return;if(this.css3DRenderPlugin||(this.css3DRenderPlugin=en(this.five)),n.stickType==="3DPoint"&&!n.normal)return console.error("updateRenderPlaneTag: \u4E09\u7EF4\u70B9\u6807\u7B7E\u7F3A\u5C11\u6CD5\u5411\u91CF\uFF01");const s=(()=>n.stickType==="Plane"?n.position:n.stickType==="Model"&&n.contentType==="MediaModel"?kA(n):lp(this.five.camera.position,it(n.position),it(n.normal)))();if(!s)return;const r=function(){if(n.normal)return it(n.normal);if(n.stickType==="Plane")return _i(n.position);if(n.contentType==="MediaModel")return _i(s)}();if(!r)return;const a=this.getTagConfig(n).tag3DConfig,l=this.css3DRenderPlugin.create3DDomContainer(s,a);if(!l)return;this.store.css3DRenderDisposer.set(n.id,l.dispose),n.tag3DContentSvelte={svelteApp:new gl({target:l.container,props:{tag:n,hooks:this.hooks,state:n.contentType==="MediaModel"?he(G({},this.state),{visible:!1}):this.state,mediaStore:this.mediaStore,temporaryState:this.temporaryState}}),domContainer:l,initialNormal:r,currentNormal:r}}}),this.checkPanelTag()}updateRenderModelTag(){const e=o=>!this.enabledModelTagSet.has(o.customID);this.gltfObjectGroup.remove(...this.gltfObjectGroup.children.filter(e)),this.tags.filter(He).forEach(o=>{var s;(s=o.model)==null||s.promise.then(r=>{r.visible=o.state.visible})})}disposeAllCSS3DContainer(){for(const[e,n]of this.store.css3DRenderDisposer)n==null||n();this.store.css3DRenderDisposer=new Map}checkPanelTag(){this.filter2DPointTag().forEach(e=>{var n;(n=e.tag3DContentSvelte)==null||n.domContainer.dispose(),e.tag3DContentSvelte=void 0});for(const[e,n]of this.store.css3DRenderDisposer){const o=this.getTagById(e);(!o||o.stickType==="2DPoint")&&(n==null||n(),this.store.css3DRenderDisposer.delete(e))}}addMediaModelTag(e){return X(this,null,function*(){const n=e.filter(He).map(this.loadModel);yield Promise.all(n),this.five.getCurrentState().mode==="Panorama"&&this.setModelMedialVisibleByPanoIndex(),this.updateRenderAllTags()})}changeTagMode(e,n){var o,s,r,a,l;((r=(s=(o=e.tag3DContentSvelte)==null?void 0:o.domContainer)==null?void 0:s.css3DObject)==null?void 0:r.mode)!==n&&((a=e.config)!=null&&a.tag3DConfig?e.config.tag3DConfig.mode=n:e.config?e.config.tag3DConfig={mode:n}:e.config={tag3DConfig:{mode:n}},(l=this.store.css3DRenderDisposer.get(e.id))==null||l(),e.tag3DContentSvelte=void 0)}}const LA=(i,t)=>new vl(i,t);function pe(i,t){this._camera=i||null,this._domElement=t||document,this._raycaster=new k.Raycaster,this._selected=null,this._boundObjs={};var e=this;this._$onClick=function(){e._onClick.apply(e,arguments)},this._$onDblClick=function(){e._onDblClick.apply(e,arguments)},this._$onMouseMove=function(){e._onMouseMove.apply(e,arguments)},this._$onMouseDown=function(){e._onMouseDown.apply(e,arguments)},this._$onMouseUp=function(){e._onMouseUp.apply(e,arguments)},this._$onTouchMove=function(){e._onTouchMove.apply(e,arguments)},this._$onTouchStart=function(){e._onTouchStart.apply(e,arguments)},this._$onTouchEnd=function(){e._onTouchEnd.apply(e,arguments)},this._$onContextmenu=function(){e._onContextmenu.apply(e,arguments)},this._domElement.addEventListener("click",this._$onClick,!1),this._domElement.addEventListener("dblclick",this._$onDblClick,!1),this._domElement.addEventListener("mousemove",this._$onMouseMove,!1),this._domElement.addEventListener("mousedown",this._$onMouseDown,!1),this._domElement.addEventListener("mouseup",this._$onMouseUp,!1),this._domElement.addEventListener("touchmove",this._$onTouchMove,!1),this._domElement.addEventListener("touchstart",this._$onTouchStart,!1),this._domElement.addEventListener("touchend",this._$onTouchEnd,!1),this._domElement.addEventListener("contextmenu",this._$onContextmenu,!1)}pe.prototype.destroy=function(){this._domElement.removeEventListener("click",this._$onClick,!1),this._domElement.removeEventListener("dblclick",this._$onDblClick,!1),this._domElement.removeEventListener("mousemove",this._$onMouseMove,!1),this._domElement.removeEventListener("mousedown",this._$onMouseDown,!1),this._domElement.removeEventListener("mouseup",this._$onMouseUp,!1),this._domElement.removeEventListener("touchmove",this._$onTouchMove,!1),this._domElement.removeEventListener("touchstart",this._$onTouchStart,!1),this._domElement.removeEventListener("touchend",this._$onTouchEnd,!1),this._domElement.removeEventListener("contextmenu",this._$onContextmenu,!1)};pe.eventNames=["click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","contextmenu","touchstart","touchend"];pe.prototype._getRelativeMouseXY=function(i){var t=i.target||i.srcElement;t.nodeType===3&&(t=t.parentNode);var e={x:0,y:0},n=t,o=getComputedStyle(n,null);e.y+=parseInt(o.getPropertyValue("padding-top"),10),e.x+=parseInt(o.getPropertyValue("padding-left"),10);do e.x+=n.offsetLeft,e.y+=n.offsetTop,o=getComputedStyle(n,null),e.x+=parseInt(o.getPropertyValue("border-left-width"),10),e.y+=parseInt(o.getPropertyValue("border-top-width"),10);while(n=n.offsetParent);var s={width:t===window?window.innerWidth:t.offsetWidth,height:t===window?window.innerHeight:t.offsetHeight};return{x:Number((i.pageX-e.x)/s.width)*2-1,y:-((i.pageY-e.y)/s.height)*2+1}};pe.prototype._objectCtxInit=function(i){i._3xDomEvent={}};pe.prototype._objectCtxDeinit=function(i){delete i._3xDomEvent};pe.prototype._objectCtxIsInit=function(i){return!!i._3xDomEvent};pe.prototype._objectCtxGet=function(i){return i._3xDomEvent};pe.prototype.camera=function(i){return i&&(this._camera=i),this._camera};pe.prototype.bind=function(i,t,e,n){console.assert(pe.eventNames.indexOf(t)!==-1,"not available events:"+t),this._objectCtxIsInit(i)||this._objectCtxInit(i);var o=this._objectCtxGet(i);o[t+"Handlers"]||(o[t+"Handlers"]=[]),o[t+"Handlers"].push({callback:e,useCapture:n}),this._boundObjs[t]===void 0&&(this._boundObjs[t]=[]),this._boundObjs[t].push(i)};pe.prototype.addEventListener=pe.prototype.bind;pe.prototype.unbind=function(i,t,e,n){console.assert(pe.eventNames.indexOf(t)!==-1,"not available events:"+t),this._objectCtxIsInit(i)||this._objectCtxInit(i);var o=this._objectCtxGet(i);o[t+"Handlers"]||(o[t+"Handlers"]=[]);for(var s=o[t+"Handlers"],r=0;r<s.length;r++){var a=s[r];if(e==a.callback&&n==a.useCapture){s.splice(r,1);break}}var l=this._boundObjs[t].indexOf(i);this._boundObjs[t].splice(l,1)};pe.prototype.removeEventListener=pe.prototype.unbind;pe.prototype._bound=function(i,t){var e=this._objectCtxGet(t);return e?!!e[i+"Handlers"]:!1};pe.prototype._onMove=function(i,t,e,n){var o=this._boundObjs[i];if(!(o===void 0||o.length===0)){var s=new k.Vector2;s.set(t,e),this._raycaster.setFromCamera(s,this._camera);var r=this._raycaster.intersectObjects(o),a=this._selected;if(r.length>0){var l,c,d,u=r[0],f=u.object;this._selected=f,d=this._bound("mousemove",f),a!=f&&(l=this._bound("mouseover",f),c=a&&this._bound("mouseout",a))}else c=a&&this._bound("mouseout",a),this._selected=null;d&&this._notify("mousemove",f,n,u),l&&this._notify("mouseover",f,n,u),c&&this._notify("mouseout",a,n,u)}};pe.prototype._onEvent=function(i,t,e,n){var o=this._boundObjs[i];if(!(o===void 0||o.length===0)){var s=new k.Vector2;s.set(t,e),this._raycaster.setFromCamera(s,this._camera);var r=this._raycaster.intersectObjects(o,!0);if(r.length!==0){for(var a=r[0],l=a.object,c=this._objectCtxGet(l),d=l.parent;typeof c=="undefined"&&d;)c=this._objectCtxGet(d),d=d.parent;!c||this._notify(i,l,n,a)}}};pe.prototype._notify=function(i,t,e,n){var o=this._objectCtxGet(t),s=o?o[i+"Handlers"]:null;if(!o||!s||s.length===0){t.parent&&this._notify(i,t.parent,e,n);return}for(var s=o[i+"Handlers"],r=0;r<s.length;r++){var a=s[r],l=!0;a.callback({type:i,target:t,origDomEvent:e,intersect:n,stopPropagation:function(){l=!1}}),!!l&&a.useCapture===!1&&t.parent&&this._notify(i,t.parent,e,n)}};pe.prototype._onMouseDown=function(i){return this._onMouseEvent("mousedown",i)};pe.prototype._onMouseUp=function(i){return this._onMouseEvent("mouseup",i)};pe.prototype._onMouseEvent=function(i,t){var e=this._getRelativeMouseXY(t);this._onEvent(i,e.x,e.y,t)};pe.prototype._onMouseMove=function(i){var t=this._getRelativeMouseXY(i);this._onMove("mousemove",t.x,t.y,i),this._onMove("mouseover",t.x,t.y,i),this._onMove("mouseout",t.x,t.y,i)};pe.prototype._onClick=function(i){this._onMouseEvent("click",i)};pe.prototype._onDblClick=function(i){this._onMouseEvent("dblclick",i)};pe.prototype._onContextmenu=function(i){this._onMouseEvent("contextmenu",i)};pe.prototype._onTouchStart=function(i){return this._onTouchEvent("touchstart",i)};pe.prototype._onTouchEnd=function(i){return this._onTouchEvent("touchend",i)};pe.prototype._onTouchMove=function(i){if(i.touches.length==1){i.preventDefault();var t=Number(i.touches[0].pageX/window.innerWidth)*2-1,e=-(i.touches[0].pageY/window.innerHeight)*2+1;this._onMove("mousemove",t,e,i),this._onMove("mouseover",t,e,i),this._onMove("mouseout",t,e,i)}};pe.prototype._onTouchEvent=function(i,t){if(t.touches.length==1){t.preventDefault();var e=Number(t.touches[0].pageX/window.innerWidth)*2-1,n=-(t.touches[0].pageY/window.innerHeight)*2+1;this._onEvent(i,e,n,t)}};function bl(i){const t=new k.Box3,e=new k.Vector3;if(i.updateMatrixWorld(!1),i.traverse(n=>{var s;if(n.name==="shadow")return;const o=n.geometry;if(o!==void 0)if((s=o==null?void 0:o.attributes)!=null&&s.position){const r=o.attributes.position;for(let a=0,l=r.count;a<l;a++)e.fromBufferAttribute(r,a).applyMatrix4(n.matrixWorld),t.expandByPoint(e)}else o.vertices.forEach(r=>{const a=r.clone().applyMatrix4(n.matrixWorld);t.expandByPoint(a)})}),!t.isEmpty())return t.translate(i.position.clone().negate()),t}class vn{constructor(t,e){m(this,"originObject3D");m(this,"hooks");m(this,"disposers",[]);m(this,"helperObject3D");m(this,"camera");m(this,"model");m(this,"scene");m(this,"container");m(this,"domEvents");m(this,"isDragging",!1);m(this,"enabled",!1);m(this,"name","BaseController");m(this,"boundingBox");m(this,"offset");m(this,"onRender");m(this,"onWantsTapGesture",t=>{if(this.getIntersectObject(t))return!1});var c,d;this.hooks=(c=t.sharedHooks)!=null?c:new $t,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 pe(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=(...u)=>this.onSetOriginObjectScale(...u),o=(...u)=>this.onSetOriginObjectRotate(...u),s=(...u)=>this.onSetOriginObjectPosition(...u),r=(...u)=>this.onApplyOriginObjectScale(...u),a=(...u)=>this.onApplyOriginObjectRotate(...u),l=(...u)=>this.onApplyOriginObjectPosition(...u);this.hooks.on("setObjectScale",n),this.hooks.on("setObjectRotate",o),this.hooks.on("setObjectPosition",s),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",o),this.hooks.off("setObjectPosition",s),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.matrix4,t.origin)}onApplyOriginObjectRotate(t){this.applyHelperQuaternion(t.quaternion,t.origin)}onApplyOriginObjectPosition(t){this.applyHelperMatrix4(t.matrix4)}onSetOriginObjectScale(t){this.helperObject3D.scale.copy(t),this.updateOffsetByScale(t)}onSetOriginObjectRotate(t,e){this.helperObject3D.quaternion.copy(t)}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 k.Vector3().subVectors(this.boundingBox.max,e).multiply(t).add(e),o=new k.Vector3().subVectors(this.boundingBox.min,e).multiply(t).add(e),s=this.calculateOffset(this.offset,{min:o,max:n});this.helperObject3D.position.copy(s),this.helperObject3D.initialPosition()}}hoverListener(t,e=16777215,n=1){const o=(Array.isArray(t)?t:[t]).filter(Ne),s=[];for(const r of o)if(r instanceof k.Mesh||r instanceof k.Group){const a=r instanceof k.Group?r.children.filter(f=>f instanceof k.Mesh):[r];a.forEach(f=>{f.__originalColor__=f.material.color.clone(),f.__originalOpacity__=f.material.opacity});const l=()=>{a.forEach(f=>{f.material.color.set(e),f.material.opacity=n}),this.render()},c=()=>{a.forEach(f=>{f.material.color.copy(f.__originalColor__),f.material.opacity=f.__originalOpacity__}),this.render()},d=()=>{this.isDragging||l()},u=()=>{this.isDragging||c()};for(const f of a)this.domEvents.addEventListener(f,"mouseover",d),this.domEvents.addEventListener(f,"mouseout",u),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",c),this.hooks.on("rotateEnd",c),s.push(()=>{this.domEvents.removeEventListener(f,"mouseover",d),this.domEvents.removeEventListener(f,"mouseout",u),this.hooks.off("moveStart",l),this.hooks.off("moveEnd",c),this.hooks.off("rotateEnd",c)})}return()=>s.forEach(r=>r==null?void 0:r())}getIntersectObject(t){const e=this.camera.position,n=this.helperObject3D;if(!n)return;const o=this.helperObject3D.raycasterIntersectObject(t)[0];if(!o)return;const s=o;if(s.object=n,this.model.intersectRaycaster){const r=this.model.intersectRaycaster(t)[0];if(r&&r.point.distanceTo(e)<s.point.distanceTo(e))return}return s.object}calculateOffset(t,e){const n=this.originObject3D,o=new k.Vector3(0,0,0);if(!t)return o;const s=()=>e||(this.boundingBox?this.boundingBox:(this.boundingBox=bl(n),this.boundingBox));if(typeof t.x=="number")o.setX(t.x);else if(typeof t.x=="object"){const r=s();o.setX((r.max.x-r.min.x)*t.x.percents)}if(typeof t.y=="number")o.setY(t.y);else if(typeof t.y=="object"){const r=s();o.setY((r.max.y-r.min.y)*t.y.percents)}if(typeof t.z=="number")o.setZ(t.z);else if(typeof t.z=="object"){const r=s();o.setZ((r.max.z-r.min.z)*t.z.percents)}return o}}class SA extends vn{constructor(...e){super(...e);m(this,"name","ScaleController")}setScale(e){var l,c,d;let n=1,o=1,s=1;typeof e=="number"?(n=e,o=e,s=e):typeof e=="object"&&(n=(l=e.x)!=null?l:1,o=(c=e.y)!=null?c:1,s=(d=e.z)!=null?d:1);const r=new k.Vector3(n,o,s);this.hooks.emit("wantToScale",r)||(this.originObject3D.scale.copy(r),this.hooks.emit("setObjectScale",r),this.hooks.emit("scale",r),this.render())}}class MA extends O.Object3D{constructor(){super()}removeFromParent(){const t=this.parent;return t!==null&&t.remove(this),this}}class gi extends MA{constructor(e,n){var o;super();m(this,"originObject3D");m(this,"onRender");this.originObject3D=e,this.onRender=(o=n==null?void 0:n.onRender)!=null?o:()=>{}}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){if(n){const o=new O.Vector3().subVectors(this.position,n).applyQuaternion(e).add(n);this.position.copy(o)}this.quaternion.copy(e)}applyHelperQuaternion(e,n){if(n){const o=new O.Vector3().subVectors(this.position,n).applyQuaternion(e).add(n);this.position.copy(o)}this.applyQuaternion(e)}dispose(){this.removeFromParent()}}class TA extends gi{}class zA extends gi{}class BA extends gi{}class yl extends gi{}class jA extends yl{}class VA extends k.Group{constructor(e){super();m(this,"direction");this.direction=e||"x"}}class Zr extends k.Mesh{constructor(e,n,o){super(e,n);m(this,"direction");this.direction=o||"x"}}function QA(i,t){const{offsetWidth:e,offsetHeight:n}=t,{top:o,left:s}=t.getBoundingClientRect();return Object.assign(new k.Vector2,{x:(i.x-s)/e*2-1,y:-(i.y-o)/n*2+1})}function yo(i,t,e){if(!t||!e||!i)return;const n=QA(t,e);if(Math.abs(n.x)===1||Math.abs(n.y)===1)return;const o=new k.Raycaster;return o.setFromCamera(n,i),o}function RA(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 Mi extends VA{constructor(e){var d;super(e.direction);m(this,"line");m(this,"arrow");m(this,"lineHeight",.4);m(this,"arrowHeight",.1);this.name="ArrowGroup";const n=new k.Color((d=e.color)!=null?d:16214315),o=new k.MeshBasicMaterial({color:n,depthTest:!1,opacity:1,transparent:!0,side:k.DoubleSide}),s=new k.ConeGeometry(.04,.1,32),r=new Zr(s,o.clone(),e.direction);r.name=`arrow-${e.direction}`,this.arrow=r;const a=.004,l=new k.CylinderGeometry(a,a,.4,32),c=new Zr(l,o.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 Ti={X:15618642,Y:4765519,Z:4227839};class nt{static get X(){return new k.Color(Ti.X).convertSRGBToLinear().clone()}static get Y(){return new k.Color(Ti.Y).convertSRGBToLinear().clone()}static get Z(){return new k.Color(Ti.Z).convertSRGBToLinear().clone()}}class OA extends TA{constructor(e){super(e);m(this,"xArrow",new Mi({direction:"x",color:nt.X}));m(this,"yArrow",new Mi({direction:"y",color:nt.Y}));m(this,"zArrow",new Mi({direction:"z",color:nt.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 zt(i,t){return HA(document.createElement(t!=null?t:"div"),i)}function HA(i,t){if(!t)return i;for(const e in t)e&&t[e]&&(i.style[e]=t[e]);return i}function FA(i){const t=zt(G({position:"absolute",display:"block",borderRadius:"4px",paddingTop:"1px",paddingBottom:"1px",paddingLeft:"4px",paddingRight:"4px",pointerEvents:"none",userSelect:"none",zIndex:"9999",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:(s,r)=>{t.style.left=s,t.style.top=r,e()}}}class GA extends BA{constructor(e,n){var o;super(e);m(this,"yzCircle");m(this,"xzCircle");m(this,"xyCircle");m(this,"xRingHelper");m(this,"yRingHelper");m(this,"zRingHelper");m(this,"xAngleHelper");m(this,"yAngleHelper");m(this,"zAngleHelper");m(this,"angleTips");m(this,"container");(n==null?void 0:n.yzCircleEnable)!==!1&&(this.yzCircle=new zi({direction:"x",color:nt.X}),this.xRingHelper=new Bi({direction:"x"}),this.xAngleHelper=new ji({direction:"x",color:nt.X})),(n==null?void 0:n.xzCircleEnable)!==!1&&(this.xzCircle=new zi({direction:"y",color:nt.Y}),this.yRingHelper=new Bi({direction:"y"}),this.yAngleHelper=new ji({direction:"y",color:nt.Y})),(n==null?void 0:n.xyCircleEnable)!==!1&&(this.xyCircle=new zi({direction:"z",color:nt.Z}),this.zRingHelper=new Bi({direction:"z"}),this.zAngleHelper=new ji({direction:"z",color:nt.Z})),n!=null&&n.container&&(this.container=n==null?void 0:n.container,this.angleTips=FA({display:"none"}),(o=this.container)==null||o.appendChild(this.angleTips.element)),this.show()}updateAngleHelperQuaternion(){var e,n,o,s,r,a,l,c,d,u,f,h;(n=this.xAngleHelper)==null||n.quaternion.copy((e=this.yzCircle)==null?void 0:e.quaternion),(s=this.yAngleHelper)==null||s.quaternion.copy((o=this.xzCircle)==null?void 0:o.quaternion),(a=this.zAngleHelper)==null||a.quaternion.copy((r=this.xyCircle)==null?void 0:r.quaternion),(c=this.xRingHelper)==null||c.quaternion.copy((l=this.yzCircle)==null?void 0:l.quaternion),(u=this.yRingHelper)==null||u.quaternion.copy((d=this.xzCircle)==null?void 0:d.quaternion),(h=this.zRingHelper)==null||h.quaternion.copy((f=this.xyCircle)==null?void 0:f.quaternion)}applyHelperQuaternion(e,n){var o,s,r,a,l,c;(o=this.yzCircle)==null||o.applyQuaternion(e),(s=this.xzCircle)==null||s.applyQuaternion(e),(r=this.xyCircle)==null||r.applyQuaternion(e),(a=this.xAngleHelper)==null||a.baseAxes.applyQuaternion(e),(l=this.yAngleHelper)==null||l.baseAxes.applyQuaternion(e),(c=this.zAngleHelper)==null||c.baseAxes.applyQuaternion(e)}hide(){console.log("hide"),this.remove(this.yzCircle,this.xzCircle,this.xyCircle,this.xRingHelper,this.yRingHelper,this.zRingHelper,this.xAngleHelper,this.yAngleHelper,this.zAngleHelper)}show(){var e;console.log("show"),this.add(...[this.xyCircle,this.xzCircle,this.yzCircle].filter(Boolean)),this.remove(...[this.xRingHelper,this.yRingHelper,this.zRingHelper,this.xAngleHelper,this.yAngleHelper,this.zAngleHelper].filter(Boolean)),(e=this.angleTips)==null||e.hide()}showDraggingHelper(e){var n;this.hide(),this.add(...this.filterRingHelper(e)),this.add(...this.filterAngleHelper(e)),(n=this.angleTips)==null||n.show()}dispose(){var e,n;this.remove(...[this.yzCircle,this.xzCircle,this.xyCircle,this.xRingHelper,this.yRingHelper,this.zRingHelper,this.xAngleHelper,this.yAngleHelper,this.zAngleHelper].filter(Boolean)),(n=(e=this.angleTips)==null?void 0:e.element)==null||n.remove()}filterRingHelper(e){return[this.xRingHelper,this.yRingHelper,this.zRingHelper].filter(n=>e.includes(n==null?void 0:n.direction)).filter(Boolean)}filterAngleHelper(e){return[this.xAngleHelper,this.yAngleHelper,this.zAngleHelper].filter(n=>e.includes(n==null?void 0:n.direction)).filter(Boolean)}}class zi extends k.Mesh{constructor(e){var n;super();m(this,"direction");m(this,"gapAngle",.02);m(this,"geometry",new k.RingGeometry(.25,.3,20,8,this.gapAngle,Math.PI/2-this.gapAngle*2));this.material=new k.MeshBasicMaterial({opacity:.6,color:(n=e.color)!=null?n:16777215,transparent:!0,side:k.DoubleSide,depthTest:!1}),this.direction=e.direction,this.geometry.name=`RotateHelperCircleGeometry-${this.direction}`,this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}}class Bi extends k.Group{constructor(e){super();m(this,"direction");this.direction=e.direction;const n=.015,o=new Array(8).fill(null).map((s,r)=>{const a=new k.RingGeometry(.25,.3,20,8,Math.PI/4*r+n,Math.PI/4-n*2),l=new k.MeshBasicMaterial({opacity:1,color:16777215,depthTest:!1,transparent:!0,side:k.DoubleSide}),c=new k.Mesh(a,l);return c.name=`AxesDashedRing-${this.direction}-${r}`,c});this.add(...o),this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}}class ji extends k.Mesh{constructor(e){var o;super();m(this,"direction");m(this,"baseAxes");switch(e.direction){case"x":this.baseAxes=new k.Vector3(0,0,1);break;case"y":this.baseAxes=new k.Vector3(1,0,0);break;case"z":this.baseAxes=new k.Vector3(1,0,0);break}const n=.3+5e-4;this.geometry=new k.CircleGeometry(n,48,0,1e-4),this.material=new k.MeshBasicMaterial({opacity:.4,color:(o=e.color)!=null?o:16777215,depthTest:!1,transparent:!0,side:k.DoubleSide}),this.direction=e.direction,this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}}function WA(){const i=zt({width:"100%",height:"100%",left:"0",top:"0",position:"absolute",pointerEvents:"none"}),t=zt({boxSizing:"border-box",width:"100%",height:"100%",left:"0",top:"0",position:"relative",display:"flex",alignItems:"center",justifyContent:"center"}),e=zt({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",o={direction:"nesw",element:pt({cursor:"nesw-resize",left:n,bottom:n})},s={direction:"ns",element:pt({cursor:"ns-resize",bottom:n})},r={direction:"nwse",element:pt({cursor:"nwse-resize",right:n,bottom:n})},a={direction:"ew",element:pt({cursor:"ew-resize",right:n})},l={direction:"nesw",element:pt({cursor:"nesw-resize",right:n,top:n})},c={direction:"ns",element:pt({cursor:"ns-resize",top:n})},d={direction:"nwse",element:pt({cursor:"nwse-resize",left:n,top:n})},u={direction:"ew",element:pt({cursor:"ew-resize",left:n})};return new Array(s,a,c,u,o,r,l,d).forEach(h=>t.appendChild(h.element)),{container:i,squares:[o,s,r,a,l,c,d,u]}}function pt(i){const t=zt(G({background:"#FFFFFF",width:"9px",height:"9px",position:"absolute",pointerEvents:"none"},i)),e=zt({width:"15px",height:"15px",position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",pointerEvents:"none"}),n=zt({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 NA extends jA{constructor(e,n,o,s){super(e);m(this,"points",[]);m(this,"cornerPositions",[]);m(this,"css3DInstance");m(this,"plane");m(this,"css3DRenderer",new Jt);m(this,"camera");m(this,"scene");m(this,"container");m(this,"enabled",!1);this.camera=o,this.scene=s,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}updatePosition(){var e;this.helperObject.position.copy(this.originObject3D.position),(e=this.plane)==null||e.position.copy(this.originObject3D.position)}updateQuaternion(){var e;(e=this.plane)==null||e.quaternion.copy(this.originObject3D.quaternion)}applyMatrix4(e){var n;super.applyMatrix4(e),this.helperObject.applyMatrix4(e),(n=this.plane)==null||n.applyMatrix4(e),this.cornerPositions.forEach(o=>o.applyMatrix4(e))}showDraggingHelper(){}applyHelperScaleMatrix4(e,n){var o;(o=this.plane)==null||o.scale.applyMatrix4(e),this.helperObject.applyScaleMatrix4(e)}updatePoints(){const e=this.calculatePointPosition(this.cornerPositions);this.points.forEach((n,o)=>{n.position.copy(e[o])})}applyHelperQuaternion(e,n){var s;const o=(s=this.css3DInstance)==null?void 0:s.css3DObject;if(o){const r=new k.Vector3().subVectors(o.position,n).applyQuaternion(e).add(n);o.position.copy(r),o.applyQuaternion(e)}if(this.plane){const r=new k.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 k.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;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 o=n.css3DObject.container,{container:s,squares:r}=WA();this.points=r.map((l,c)=>({direction:l.direction,point:l.element,position:this.calculatePointPosition(e)[c]})),o.insertBefore(s,(a=o.children[0])!=null?a:null),this.updatePosition()}getCornerPositions(){const{originObject3D:e}=this;if(e.isCSS3DObjectPlus)return e.cornerPoints;console.error("\u5F53\u524D\u7269\u4F53\u6682\u65F6\u4E0D\u652F\u6301 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)]}}class _A extends zA{constructor(e){super(e);m(this,"box");m(this,"outline");m(this,"originObject");m(this,"positionAttribute");this.originObject=e,this.positionAttribute=new k.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=bl(this.originObject);if(!e)return;const{min:n,max:o}=e;this.positionAttribute.setXYZ(0,o.x,o.y,o.z),this.positionAttribute.setXYZ(1,n.x,o.y,o.z),this.positionAttribute.setXYZ(2,n.x,n.y,o.z),this.positionAttribute.setXYZ(3,o.x,n.y,o.z),this.positionAttribute.setXYZ(4,o.x,o.y,n.z),this.positionAttribute.setXYZ(5,n.x,o.y,n.z),this.positionAttribute.setXYZ(6,n.x,n.y,n.z),this.positionAttribute.setXYZ(7,o.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 k.BufferGeometry;n.setIndex(new k.BufferAttribute(e,1)),n.setAttribute("position",this.positionAttribute);const o=new k.LineBasicMaterial({color:64767,linewidth:1,opacity:1,depthTest:!1,transparent:!0,toneMapped:!1}),s=new k.LineSegments(n,o);return s.matrixAutoUpdate=!1,s}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 k.BufferGeometry;n.setIndex(new k.BufferAttribute(e,1)),n.setAttribute("position",this.positionAttribute);const o=new k.MeshBasicMaterial({color:64767,opacity:.1,depthTest:!1,transparent:!0});return new k.Mesh(n,o)}}class XA extends vn{constructor(...e){super(...e);m(this,"name","MoveController");m(this,"startInfo");m(this,"_moveByMouseEnable",!1);m(this,"mouseInfo");m(this,"mousedownEventListenerDisposer");const n=this.helperObject3D;this.hoverListener([n.xArrow,n.yArrow,n.zArrow]);const o=this.dragStart.bind(this),s=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",o),document.addEventListener("mousemove",s),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",o),document.removeEventListener("mousemove",s),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:o}=e;this.mouseInfo={x:n,y:o,mouseDownTimestamp:Date.now()}}handleMouseUp(e){if(!this.mouseInfo)return;const{x:n,y:o}=e;this.mouseInfo.x===n&&this.mouseInfo.y===o&&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 o=(n==null?void 0:n.object).direction;if(!o)return this.dragEnd();const s=new k.Vector3(1,0,0).applyQuaternion(this.helperObject3D.quaternion),r=new k.Vector3(0,1,0).applyQuaternion(this.helperObject3D.quaternion),a=new k.Vector3(0,0,1).applyQuaternion(this.helperObject3D.quaternion),l=(()=>{switch(o){case"x":return s;case"y":return r;case"z":return a}})(),c=(()=>{switch(o){case"x":case"y":return a;case"z":return s}})(),d=n.point.clone(),u=new k.Plane;u.setFromNormalAndCoplanarPoint(c,d),this.startInfo={startVectorProject:d.clone().projectOnVector(l),directionVector:l,plane:u},this.helperObject3D.showDraggingHelper([o]),this.hooks.emit("moveStart"),this.isDragging=!0,console.log("%c MoveController dragStart","color: #e5af2e")}dragging(e){if(!this.isDragging||!this.startInfo)return;const n=yo(this.camera,e,this.container);return n?(console.log("%c MoveController dragging","color: #49de1b"),this.move(n),!1):this.dragEnd()}move(e){if(!this.startInfo)return this.dragEnd();const{plane:n,directionVector:o,startVectorProject:s}=this.startInfo,r=this.originObject3D,a=e.ray.intersectPlane(n,new k.Vector3);if(!a)return;const l=a.clone().projectOnVector(o),c=l.clone().sub(s),d=new k.Matrix4;d.setPosition(c);const u=r.position.clone().applyMatrix4(d);this.hooks.emit("wantToMove",u)||(r.applyMatrix4(d),s.copy(l),this.hooks.emit("applyObjectPosition",{matrix4:d}),this.hooks.emit("move",u))}dragEnd(){!this.isDragging||(console.log("%c MoveController dragEnd","color: #e94e4e"),this.startInfo=void 0,this.isDragging=!1,this.helperObject3D.show(),this.hooks.emit("moveEnd"))}}class an{constructor(t,e,n,o,s,r){m(this,"helperController");m(this,"five");m(this,"onFiveWantsTapGesture",t=>{if(!this.helperController)return;const e=this.helperController.onWantsTapGesture(t);return this.five.needsRender=!0,e});m(this,"onFiveWantsGesture",(...t)=>{if(!this.helperController)return;const e=this.helperController.onWantsGesture(...t);return this.five.needsRender=!0,e});m(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 u=()=>{t.needsRender=!0};this.helperController=new e({camera:a,model:l,originObject3D:n,helperObject3D:o,container:d,scene:c,onRender:u,sharedHooks:r},s),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 YA="v1.0.1",UA="Object3DHelper",wo=`${UA}@${YA}`,JA=()=>{console.error(`${wo} is disposed`)},ZA=()=>{console.warn(`${wo} is disabled`)},qA=()=>{console.error(`${wo} is disabled`)};class KA{constructor(t){m(this,"controllers",{});m(this,"state",{visible:!0,enabled:!0,disposed:!1});m(this,"hooks",new $t);m(this,"eventListener",{});t&&this.addControllers(t),this.setState(this.state)}show(t){return X(this,null,function*(){this.setState({visible:!0},t)})}hide(t){return X(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 JA();if(!this.state.enabled&&t.enabled!==!0&&t.disposed!==!0)return qA();const n=G({},this.state);this.state=G(G({},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=G(G({},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 o=n;(e=(t=this.eventListener)[o])==null||e.call(t)}}actionIfStateIsEnabled(t,e){if(this.state.enabled)return t();e!=null&&e.warnLog&&ZA()}}class $A extends vn{constructor(...e){super(...e);m(this,"name","RotateController");m(this,"startInfo");m(this,"lastRotation");m(this,"rotations",[]);m(this,"helperObject3DQuaternion",this.originObject3D.quaternion.clone());m(this,"removeListener");const n=this.helperObject3D;this.hoverListener([n.xyCircle,n.xzCircle,n.yzCircle]);const o=this.dragStart.bind(this),s=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",o),document.addEventListener("mousemove",s),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",o),document.removeEventListener("mousemove",s),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.updateAngleHelperQuaternion(),this.helperObject3D.applyHelperQuaternion(this.originObject3D.quaternion)}setRotateAngle(e){const{x:n=0,y:o=0,z:s=0}=e,r=new k.Euler(Math.PI*n/180,Math.PI*o/180,Math.PI*s/180),a=new k.Quaternion().setFromEuler(r);if(this.hooks.emit("wantToRotate",a))return;const{originObject3D:c,rotateCenter:d}=this;if(d){const u=new k.Vector3().subVectors(c.position,d).applyQuaternion(a).add(d);c.position.copy(u)}c.quaternion.copy(a),this.helperObject3DQuaternion.copy(a),this.hooks.emit("setObjectRotate",a,d),this.hooks.emit("rotate",a),this.render()}dispose(){this.removeListener(),super.dispose()}onApplyOriginObjectScale(e){}dragStart(e){if(this.isDragging)return;const n=e==null?void 0:e.intersect;if(!n)return this.dragEnd();const o=(n==null?void 0:n.object).direction;if(!o)return this.dragEnd();this.helperObject3D.updateAngleHelperQuaternion();const s=n.point,r=this.getAngleHelper(o);this.setTipsAngle(0);const a=s.clone();a.y+=.2,this.setTipsPosition(a);const l=new k.Vector3(1,0,0).applyQuaternion(this.helperObject3DQuaternion),c=new k.Vector3(0,1,0).applyQuaternion(this.helperObject3DQuaternion),d=new k.Vector3(0,0,1).applyQuaternion(this.helperObject3DQuaternion),u=(()=>{switch(o){case"x":return l;case"y":return c;case"z":return d}})(),f=new k.Plane().setFromNormalAndCoplanarPoint(u,s),h=new k.Vector3;f.projectPoint(s.clone(),h);const p=h.clone().sub(this.rotateCenter),A=p.clone(),g=p.angleTo(r.baseAxes);this.setAngleHelperStart(o,g),this.setAngleHelperLength(o,0),this.rotations.push({vector:p.clone(),direction:!0}),this.startInfo={direction:o,startVector:p,staticStartVector:A,plane:f,angleHelper:r},this.helperObject3D.showDraggingHelper([o]),this.hooks.emit("rotateStart"),this.isDragging=!0,console.log(`%c RotateController dragStart ${o}`,"color: #e5af2e")}dragging(e){var o;if(!this.isDragging)return;const n=yo(this.camera,e,this.container);return n?(console.log(`%c RotateController dragging ${(o=this.startInfo)==null?void 0:o.direction}`,"color: #49de1b"),this.rotate(n),!1):this.dragEnd()}rotate(e){if(!this.startInfo)return this.dragEnd();const{startVector:n,plane:o,angleHelper:s,staticStartVector:r,direction:a}=this.startInfo,l=e.ray.intersectPlane(o,new k.Vector3);if(!l)return;const c=this.rotateCenter,d=new k.Vector3;o.projectPoint(l.clone(),d);const u=d.clone().sub(c);if(n.angleTo(u)===0||(this.lastRotation===void 0&&(this.lastRotation={angle:0}),this.rotations.length===0))return;const f=(()=>{if(this.rotations.length===1)return u.angleTo(s.baseAxes)>r.angleTo(s.baseAxes);{const v=this.rotations[this.rotations.length-1],w=this.rotations[this.rotations.length-2],y=u.angleTo(w.vector),C=u.angleTo(v.vector),I=v.vector.angleTo(w.vector);if(I===0||C===0||y===0)return;if(y>C&&y>I)return v.direction;if(y<I&&C<I||y<C&&C>I)return!v.direction}})();if(f===void 0)return console.warn("rotationDirection is undefined");const h=new k.Quaternion().setFromUnitVectors(n.clone().normalize(),u.clone().normalize()),{originObject3D:p}=this,A=p.quaternion.clone().premultiply(h);if(!this.hooks.emit("wantToRotate",A)){if(this.rotations.push({vector:u,direction:f}),this.rotations=this.rotations.slice(-2),this.lastRotation.angle=this.lastRotation.angle+u.angleTo(n)*(f?1:-1),this.setAngleHelperLength(a,this.lastRotation.angle),this.setTipsAngle(this.lastRotation.angle/Math.PI*180),c){const v=new k.Vector3().subVectors(p.position,c).applyQuaternion(h).add(c);p.position.copy(v)}p.applyQuaternion(h),this.helperObject3DQuaternion.premultiply(h),this.hooks.emit("applyObjectRotate",{quaternion:h,origin:c}),this.hooks.emit("rotate",p.quaternion),this.startInfo.startVector=u}}dragEnd(){!this.isDragging||(console.log("%c RotateController dragEnd","color: #e94e4e"),this.startInfo=void 0,this.isDragging=!1,this.lastRotation=void 0,this.rotations=[],this.helperObject3D.show(),this.hooks.emit("rotateEnd"))}getAngleHelper(e){switch(e){case"x":return this.helperObject3D.xAngleHelper;case"y":return this.helperObject3D.yAngleHelper;case"z":return this.helperObject3D.zAngleHelper}}setAngleHelperStart(e,n){const o=this.getAngleHelper(e);if(o instanceof k.Mesh&&o.geometry instanceof k.CircleGeometry){const{radius:s,segments:r,thetaLength:a}=o.geometry.parameters;o.geometry=new k.CircleGeometry(s,r,n,a)}else console.warn("only support THREE.CircleGeometry")}setAngleHelperLength(e,n){const s=n>=0?Math.max(n,.001):Math.min(n,-.001),r=this.getAngleHelper(e);if(r instanceof k.Mesh&&r.geometry instanceof k.CircleGeometry){const{radius:a,thetaStart:l}=r.geometry.parameters,c=Math.ceil(Math.abs(s)*(40/(2*Math.PI)));r.geometry=new k.CircleGeometry(a,c,l,s)}else console.warn("only support THREE.CircleGeometry")}setTipsAngle(e){var o;const n=(o=this.helperObject3D.angleTips)==null?void 0:o.element;!n||(n.innerText=`${e.toFixed(0)}\xB0`)}setTipsPosition(e){const n=this.helperObject3D.angleTips;if(!n)return;const o=e.project(this.camera),{x:s,y:r,z:a}=o;if(a>1)return;const l=(s+1)/2*100+"%",c=(-r+1)/2*100+"%";n.setLeftTop(l,c)}}class ev extends vn{constructor(...e){super(...e);m(this,"startInfo");m(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()}onApplyOriginObjectScale(e){}getDragPlane(){const e=new k.Plane,n=this.helperObject3D.cornerPositions;if(n.length!==0)return n.length<3?e.setFromNormalAndCoplanarPoint(this.originObject3D.getWorldDirection(new O.Vector3),n[0]):e.setFromCoplanarPoints(n[0],n[1],n[2]),e}dragStart(e,n){var s,r;(r=(s=this.helperObject3D).updatePoints)==null||r.call(s);const o=this.getDragPlane();if(!o)return this.dragEnd();this.startInfo={startPoint:{position:n.position.clone(),direction:n.direction},plane:o},this.hooks.emit("scaleStart"),this.render(),this.isDragging=!0,console.log("%c RectangleScaleController dragStart","color: #e5af2e")}dragging(e){if(!this.isDragging)return;const n=yo(this.camera,e,this.container);if(!n)return this.dragEnd();this.scale(n),console.log("%c RectangleScaleController dragging","color: #49de1b")}scale(e){var B,W;if(!this.startInfo)return;const n=this.originObject3D,{startPoint:o,plane:s}=this.startInfo,r=this.helperObject3D.cornerPositions;if(r.length<4)return this.dragEnd();const a=e.ray.intersectPlane(s,new O.Vector3);if(!a||RA(a,this.camera.position))return;const l=new O.Vector3().addVectors(r[0],r[2]).divideScalar(2),{position:c,direction:d}=o,u=new O.Vector3().subVectors(r[1],r[0]),f=new O.Vector3().subVectors(r[3],r[0]),h=F=>{const Y=new O.Vector3(0,0,0);if(!this.startInfo)return Y;const V=(F==="ew"?u:f).clone(),E=c.clone().projectOnVector(V),R=a.clone().projectOnVector(V),H=l.clone().projectOnVector(V);if(R.equals(E))return Y;if(F==="ns"&&typeof this.startInfo.dragPointInCenterBottom!="boolean"){const _=new O.Vector3().subVectors(R,H),J=_.x<0&&V.x>=0,de=_.y<0&&V.y>=0,ue=_.z<0&&V.z>=0;this.startInfo.dragPointInCenterBottom=J||de||ue}if(F==="ew"&&typeof this.startInfo.dragPointInCenterLeft!="boolean"){const _=new O.Vector3().subVectors(R,H),J=_.x<0&&V.x>=0,de=_.y<0&&V.y>=0,ue=_.z<0&&V.z>=0;this.startInfo.dragPointInCenterLeft=J||de||ue}const N=new O.Vector3().subVectors(R,E),U=N.length();return U>.3?(console.warn("offset.length() > 0.3, skipped",U),Y):N},p=h("ew"),A=h("ns"),g=()=>{const F=p;this.helperObject3D.cornerPositions.forEach((Y,V)=>{var E;(E=this.startInfo)!=null&&E.dragPointInCenterLeft?(V===0||V===3)&&Y.add(F):(V===1||V===2)&&Y.add(F)})},v=()=>{const F=A;this.helperObject3D.cornerPositions.forEach((Y,V)=>{var E;(E=this.startInfo)!=null&&E.dragPointInCenterBottom?(V===0||V===1)&&Y.add(F):(V===2||V===3)&&Y.add(F)})};switch(d){case"ew":g();break;case"ns":v();break;case"nesw":case"nwse":g(),v()}const w=new O.Vector3().subVectors(r[1],r[0]).length()/u.length(),y=new O.Vector3().subVectors(r[3],r[0]).length()/f.length(),C=new O.Vector3(w,y,1),I=new k.Matrix4().scale(C);n.isCSS3DObjectPlus?n.applyScaleMatrix4(I):n.scale.applyMatrix4(I),o.position.copy(a);const P=new O.Vector3().addVectors(r[0],r[2]).divideScalar(2),L=new O.Vector3().subVectors(P,l),D=new k.Matrix4().setPosition(L);n.applyMatrix4(D),(B=this.helperObject3D.css3DInstance)==null||B.css3DObject.applyMatrix4(D),(W=this.helperObject3D.plane)==null||W.applyMatrix4(D),this.hooks.emit("applyObjectScale",{matrix4:I}),this.hooks.emit("applyObjectPosition",{matrix4:D}),this.render()}dragEnd(){!this.isDragging||(this.startInfo=void 0,this.isDragging=!1,this.hooks.emit("scaleEnd"),this.render(),console.log("%c RectangleScaleController dragEnd","color: #e94e4e"))}}class tv extends ev{constructor(...e){super(...e);m(this,"name","CSS3DScaleController");this.addHTMLEventListener()}addHTMLEventListener(){this.helperObject3D.points.forEach(e=>{if(!e)return;const n=e.point,o=a=>this.dragStart(a,e),s=this.dragging.bind(this),r=this.dragEnd.bind(this);n.addEventListener("dragstart",o),n.addEventListener("drag",s),n.addEventListener("dragend",r)})}}class nv extends vn{constructor(...e){super(...e);m(this,"name","BoundingBoxController")}}class iv extends yl{constructor(t){super(t)}}const Co="v1.0.0",Ki="Object3DHelperPlugin",Ai=`${Ki}@${Co}`,ov=()=>{console.error(`${Ai} is disposed`)},sv=()=>{console.warn(`${Ai} is disabled`)},rv=()=>{console.error(`${Ai} is disabled`)};class wl extends ci{constructor(e){super(e);m(this,"version",Co);m(this,"name",Ki);m(this,"state",{visible:!0,enabled:!0,disposed:!1});m(this,"objectHelperMap",new Map);m(this,"css3DObjectParentMap",new Map);m(this,"css3DRender");this.five=e,this.css3DRender=new Jt(this.five.scene),console.warn("Object3DHelper: \u4F7F\u7528\u6B64\u63D2\u4EF6\uFF0C\u9700\u8981\u5728\u521D\u59CB\u5316five\u65F6\uFF0C\u8BBE\u7F6Efive\u53C2\u6570: { backgroundAlpha: 0, backgroundColor: 0x000000 }"),Object.assign(window,{[`__${Ki.toUpperCase()}_DEBUG__`]:this})}show(e){return X(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return X(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 ov();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return rv();const o=G({},this.state);this.state=G(G({},this.state),e),e.disposed!==void 0&&e.disposed!==o.disposed&&e.disposed&&this.handleDispose(),e.visible!==void 0&&e.visible!==o.visible&&this.handleVisible(e.visible),e.enabled!==void 0&&e.enabled!==o.enabled&&this.handleEnable(e.enabled),this.hooks.emit("stateChange",{state:this.state,prevState:o})}getObject3DHelper(e){return this.objectHelperMap.get(e)}addObject3DHelper(e,n={}){var h;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 o=new KA,s=[],r=(h=this.five.getElement())==null?void 0:h.parentElement,a=this.five.camera,{moveHelper:l=!0,rotateHelper:c=!0,scaleHelper:d=!0,boundingBoxHelper:u=!1}=n,f=new be.Subscribe;if(l){const p=new OA(e),A=this.getConfig(n.moveHelper),g=new an(this.five,XA,e,p,A,f);o.addControllers({moveController:g.helperController}),s.push(()=>g.dispose())}if(c){const p=this.getConfig(n.rotateHelper),A=new GA(e,G({container:r},p)),g=new an(this.five,$A,e,A,p,f);o.addControllers({rotateController:g.helperController}),s.push(()=>g.dispose())}if(u){const p=new _A(e),A=new an(this.five,nv,e,p,void 0,f);o.addControllers({boundingBoxController:A.helperController})}if(d)if(e.isCSS3DObjectPlus&&r){const p=new NA(e,r,a,this.five.scene),A=new an(this.five,tv,e,p,void 0,f);o.addControllers({scaleController:A.helperController}),s.push(()=>A.dispose()),oa(this.five).then(()=>{var g,v;if(e.isCSS3DObjectPlus){const w=e;if(!w||w.mode!=="front")return;const y=(g=this.css3DRender.behindModeCSS3DRenderer.wrapper)!=null?g:sa(this.five);y&&(this.css3DObjectParentMap.set(w,w.parent),w.removeFromParent(),this.css3DRender.behindModeCSS3DRenderer.setWrapper(y),(v=this.css3DRender.getBehindCSS3DObjectGroup())==null||v.add(w),this.css3DRender.render(this.five.camera))}})}else{const p=new iv(e),A=new an(this.five,SA,e,p,void 0,f);o.addControllers({scaleController:A.helperController}),s.push(()=>A.dispose())}return this.objectHelperMap.set(e,{helper:o,disposers:s}),o.controllers}removeObject3DHelper(e){if(!this.objectHelperMap.has(e))return;const{helper:n,disposers:o}=this.objectHelperMap.get(e);if(!!n){if(e.isCSS3DObjectPlus){const s=e,r=this.css3DObjectParentMap.get(s);r&&r.add(s),this.css3DRender.render(this.five.camera)}this.objectHelperMap.delete(e),n.dispose(),o==null||o.forEach(s=>s==null?void 0:s())}}handleEnable(e,n=!0){e?(this.everyHelperDo(o=>o.enable()),this.hooks.emit("enable",{userAction:n})):(this.everyHelperDo(o=>o.disable()),this.hooks.emit("disable",{userAction:n})),this.state.enabled=e}handleVisible(e,n=!0){e?(this.everyHelperDo(o=>o.show()),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:n}))):(this.everyHelperDo(o=>o.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(o=>o==null?void 0:o())})}everyHelperDo(e){this.objectHelperMap.forEach(({helper:n,disposers:o})=>{n&&e(n)})}actionIfStateIsEnabled(e,n){if(this.state.enabled)return e();n!=null&&n.warnLog&&sv()}getConfig(e){if(!!e&&typeof e!="boolean"&&e.enable)return e}}const av=i=>new wl(i);exports.CSS3DRender=Jt;exports.CSS3DRenderPlugin=en;exports.CameraMovementEffect=Ma;exports.CameraMovementPlugin=hf;exports.ContentType=el;exports.CruisePlugin=qm;exports.CruisePluginController=go;exports.DIRECTION=Yt;exports.DISPLAY_STRATEGY_TYPE=Mt;exports.DimensionType=tl;exports.FLOOR_PLAN_ATTACHED_TO=bt;exports.FLOOR_TYPE_MAP=ef;exports.GuideLinePlugin=qa;exports.ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE=Tt;exports.ItemLabelPlugin=Cm;exports.Magnifier=ja;exports.MapviewFloorplanPlugin=Tu;exports.ModelChassisCompassPlugin=of;exports.ModelEntryDoorGuidePlugin=af;exports.ModelFloorplanPlugin=Du;exports.ModelItemLabelPlugin=nm;exports.ModelRoomLabelPlugin=Hc;exports.ModelTVVideoPlugin=sm;exports.ModelViewPlugin=Jl;exports.Object3DHelperController=wl;exports.Object3DHelperPlugin=av;exports.PLUGIN=Ai;exports.PaintBrush=Ul;exports.PaintBrushTypeEnum=tt;exports.PanoCompassPlugin=Bf;exports.PanoCursorRaycasterPlugin=mc;exports.PanoDoorLabelPlugin=jm;exports.PanoFloorplanRadarPlugin=Ku;exports.PanoMeasurePlugin=Sh;exports.PanoMeasurePluginLine=Ft;exports.PanoMeasurePluginModel=hi;exports.PanoMeasurePluginPoint=Xe;exports.PanoMeasurePluginPolyline=fi;exports.PanoRulerPlugin=vf;exports.PanoRulerProPlugin=Lf;exports.PanoSpatialTagPlugin=_h;exports.PanoTagPlugin=LA;exports.PanoTagPluginController=vl;exports.PointType=nl;exports.ROOM_FETILE_TYPE_MAP=$u;exports.ROOM_TYPE_MAP=tf;exports.Rotation=Je;exports.TopviewFloorplanPlugin=Bu;exports.Util=Yg;exports.VERSION=Co;exports.itemLabelPluginServerParams=Pm;exports.modelItemLabelPluginServerParams=im;exports.modelRoomLabelPluginServerParams=Fc;exports.pluginFlag=DA;
|