@realsee/dnalogel 2.5.1 → 2.5.3

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.
Files changed (243) hide show
  1. package/dist/index.cjs.js +2 -2
  2. package/dist/index.js +6 -5
  3. package/dist/index.umd.js +2 -2
  4. package/docs/classes/CSS3DRender.html +31 -31
  5. package/docs/classes/CruisePluginController.html +24 -24
  6. package/docs/classes/Magnifier.html +20 -20
  7. package/docs/classes/ModelRoomLabelController.html +11 -11
  8. package/docs/classes/Object3DHelperController.html +24 -24
  9. package/docs/classes/PaintBrush.html +15 -15
  10. package/docs/classes/PanoMeasurePluginLine.html +23 -23
  11. package/docs/classes/PanoMeasurePluginModel.html +22 -22
  12. package/docs/classes/PanoMeasurePluginPoint.html +14 -14
  13. package/docs/classes/PanoMeasurePluginPolyline.html +26 -26
  14. package/docs/classes/PanoTagPluginController.html +41 -41
  15. package/docs/classes/Util.BetterTween.html +8 -8
  16. package/docs/classes/Util.FivePointSelector.html +12 -12
  17. package/docs/classes/Util.Interval.html +12 -12
  18. package/docs/classes/Util.Magnifier.html +17 -17
  19. package/docs/classes/Util.PointDomHelper.html +11 -11
  20. package/docs/classes/Util.PointHelper.html +11 -11
  21. package/docs/classes/Util.Rectangle.html +13 -13
  22. package/docs/enums/CameraMovementEffect.html +7 -7
  23. package/docs/enums/ContentType.html +16 -16
  24. package/docs/enums/DIRECTION.html +9 -9
  25. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
  26. package/docs/enums/DimensionType.html +7 -7
  27. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
  28. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
  29. package/docs/enums/PaintBrushTypeEnum.html +8 -8
  30. package/docs/enums/PointType.html +7 -7
  31. package/docs/enums/Rotation.html +8 -8
  32. package/docs/functions/CSS3DRenderPlugin.html +4 -4
  33. package/docs/functions/CameraMovementPlugin.html +4 -4
  34. package/docs/functions/CruisePlugin.html +4 -4
  35. package/docs/functions/GuideLinePlugin.html +5 -5
  36. package/docs/functions/ItemLabelPlugin.html +4 -4
  37. package/docs/functions/MapviewFloorplanPlugin.html +4 -4
  38. package/docs/functions/ModelChassisCompassPlugin.html +4 -4
  39. package/docs/functions/ModelEntryDoorGuidePlugin.html +4 -4
  40. package/docs/functions/ModelFloorplanPlugin.html +4 -4
  41. package/docs/functions/ModelItemLabelPlugin.html +4 -4
  42. package/docs/functions/ModelRoomLabelPlugin.html +4 -4
  43. package/docs/functions/ModelTVVideoPlugin.html +4 -4
  44. package/docs/functions/ModelViewPlugin.html +4 -4
  45. package/docs/functions/Object3DHelperPlugin.html +4 -4
  46. package/docs/functions/PanoCompassPlugin.html +4 -4
  47. package/docs/functions/PanoCursorRaycasterPlugin.html +4 -4
  48. package/docs/functions/PanoDoorLabelPlugin.html +4 -4
  49. package/docs/functions/PanoFloorplanRadarPlugin.html +4 -4
  50. package/docs/functions/PanoMeasurePlugin.html +4 -4
  51. package/docs/functions/PanoRulerPlugin.html +4 -4
  52. package/docs/functions/PanoRulerProPlugin.html +4 -4
  53. package/docs/functions/PanoSpatialTagPlugin.html +4 -4
  54. package/docs/functions/PanoTagPlugin.html +4 -4
  55. package/docs/functions/TopviewFloorplanPlugin.html +4 -4
  56. package/docs/functions/Util.getCoordsFromClient.html +5 -5
  57. package/docs/functions/Util.getCoordsFromElement.html +5 -5
  58. package/docs/functions/Util.getFrameTime.html +5 -5
  59. package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
  60. package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
  61. package/docs/functions/Util.isNil.html +5 -5
  62. package/docs/functions/Util.nextFrame.html +5 -5
  63. package/docs/functions/Util.notNil.html +5 -5
  64. package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
  65. package/docs/functions/Util.tweenProgress.html +5 -5
  66. package/docs/functions/pluginFlag.html +5 -5
  67. package/docs/index.html +4 -4
  68. package/docs/interfaces/AddTagConfig.html +6 -6
  69. package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
  70. package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
  71. package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
  72. package/docs/interfaces/EventMap.html +15 -15
  73. package/docs/interfaces/FloorplanBounding.html +8 -8
  74. package/docs/interfaces/FloorplanData.html +10 -10
  75. package/docs/interfaces/FloorplanEntrance.html +11 -11
  76. package/docs/interfaces/FloorplanExtraObject.html +10 -10
  77. package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
  78. package/docs/interfaces/FloorplanFloorData.html +9 -9
  79. package/docs/interfaces/FloorplanImagePosition.html +7 -7
  80. package/docs/interfaces/FloorplanObserver.html +9 -9
  81. package/docs/interfaces/FloorplanOutlineItem.html +9 -9
  82. package/docs/interfaces/FloorplanPosition.html +7 -7
  83. package/docs/interfaces/FloorplanRoomItem.html +13 -13
  84. package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
  85. package/docs/interfaces/FloorplanServerBounding.html +8 -8
  86. package/docs/interfaces/FloorplanServerComputedData.html +10 -10
  87. package/docs/interfaces/FloorplanServerData.html +7 -7
  88. package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
  89. package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
  90. package/docs/interfaces/FloorplanServerEntrance.html +11 -11
  91. package/docs/interfaces/FloorplanServerFloorData.html +9 -9
  92. package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
  93. package/docs/interfaces/FloorplanServerObserver.html +9 -9
  94. package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
  95. package/docs/interfaces/FloorplanServerPosition.html +7 -7
  96. package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
  97. package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
  98. package/docs/interfaces/ItemLabelPluginData.html +6 -6
  99. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
  100. package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
  101. package/docs/interfaces/MinMax.html +7 -7
  102. package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
  103. package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
  104. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
  105. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
  106. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
  107. package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
  108. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
  109. package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
  110. package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
  111. package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
  112. package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
  113. package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
  114. package/docs/interfaces/ModelViewPluginExportType.html +11 -11
  115. package/docs/interfaces/Object3DHelperState.html +8 -8
  116. package/docs/interfaces/PaintBrushAction.html +12 -12
  117. package/docs/interfaces/PaintBrushConfigs.html +12 -12
  118. package/docs/interfaces/PaintBrushState.html +10 -10
  119. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
  120. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +5 -5
  121. package/docs/interfaces/PanoMeasureParameterType.html +12 -12
  122. package/docs/interfaces/PanoMeasurePluginLineJson.html +8 -8
  123. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +7 -7
  124. package/docs/interfaces/PanoMeasurePluginPointJson.html +7 -7
  125. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +8 -8
  126. package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
  127. package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
  128. package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
  129. package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
  130. package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
  131. package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
  132. package/docs/interfaces/PanoRulerProPluginState.html +8 -8
  133. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +5 -5
  134. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +5 -5
  135. package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
  136. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
  137. package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
  138. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
  139. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
  140. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
  141. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
  142. package/docs/interfaces/Point.html +8 -8
  143. package/docs/interfaces/Room.html +9 -9
  144. package/docs/interfaces/RoomInfo.html +7 -7
  145. package/docs/interfaces/RoomLabel.html +14 -14
  146. package/docs/interfaces/RoomRules.html +5 -5
  147. package/docs/interfaces/Rooms.html +5 -5
  148. package/docs/interfaces/Scissor.html +9 -9
  149. package/docs/interfaces/State.html +8 -8
  150. package/docs/interfaces/TagCache.html +10 -10
  151. package/docs/interfaces/TagConfig.html +10 -10
  152. package/docs/interfaces/TagIconUrl.html +9 -9
  153. package/docs/interfaces/Tags.html +9 -9
  154. package/docs/interfaces/TemporaryState.html +6 -6
  155. package/docs/interfaces/Util.MagnifierParameter.html +11 -11
  156. package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
  157. package/docs/modules/Util.html +5 -5
  158. package/docs/modules.html +4 -4
  159. package/docs/types/ArrayPosition.html +5 -5
  160. package/docs/types/AudioAppearance.html +5 -5
  161. package/docs/types/AudioTagTypeConfigKey.html +5 -5
  162. package/docs/types/CSS3DRenderExportType.html +5 -5
  163. package/docs/types/CSS3DRenderPluginExportType.html +5 -5
  164. package/docs/types/CSS3DRenderPluginParameterType.html +5 -5
  165. package/docs/types/Color.html +5 -5
  166. package/docs/types/ContentTypeConfigKey.html +5 -5
  167. package/docs/types/ContentTypeConfigKeySplit.html +5 -5
  168. package/docs/types/ContentTypeMap.html +5 -5
  169. package/docs/types/Create3DDomContainerReturnType.html +5 -5
  170. package/docs/types/Create3DElementReturnType.html +5 -5
  171. package/docs/types/CruisePluginExportType.html +5 -5
  172. package/docs/types/Direction-1.html +5 -5
  173. package/docs/types/Direction4.html +5 -5
  174. package/docs/types/FloorplanRuleLabels.html +5 -5
  175. package/docs/types/FloorplanServerRuleLabels.html +5 -5
  176. package/docs/types/GuideLinePluginExportType.html +5 -5
  177. package/docs/types/HelperEventMap.html +5 -5
  178. package/docs/types/LoadTagConfig.html +5 -5
  179. package/docs/types/MapviewFloorplanPluginParameterType.html +5 -5
  180. package/docs/types/MapviewFloorplanPluginReturnType.html +5 -5
  181. package/docs/types/MediaData.html +5 -5
  182. package/docs/types/MediaStore.html +5 -5
  183. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +5 -5
  184. package/docs/types/ModelFloorplanPluginParameterType.html +5 -5
  185. package/docs/types/ModelFloorplanPluginReturnType.html +5 -5
  186. package/docs/types/ModelRoomLabelPluginParameters.html +5 -5
  187. package/docs/types/ModelRoomLabelPluginReturnType.html +5 -5
  188. package/docs/types/MoveArgs.html +5 -5
  189. package/docs/types/MoveOpts.html +5 -5
  190. package/docs/types/Object3DHelperEventMap.html +5 -5
  191. package/docs/types/ObjectFit.html +5 -5
  192. package/docs/types/PaintBrushEventMap.html +5 -5
  193. package/docs/types/PanoCompassPluginData.html +5 -5
  194. package/docs/types/PanoCompassPluginExportType.html +5 -5
  195. package/docs/types/PanoCompassPluginParameterType.html +5 -5
  196. package/docs/types/PanoFloorplanRadarPluginParameterType.html +5 -5
  197. package/docs/types/PanoFloorplanRadarPluginReturnType.html +5 -5
  198. package/docs/types/PanoIndex.html +5 -5
  199. package/docs/types/PanoMeasurePluginEvent.html +5 -5
  200. package/docs/types/PanoMeasureReturnType.html +5 -5
  201. package/docs/types/PanoSpatialTagPluginId.html +5 -5
  202. package/docs/types/PanoTagPluginExportInterface.html +5 -5
  203. package/docs/types/PanoTagPluginParamsInterface.html +5 -5
  204. package/docs/types/PlaneTag.html +5 -5
  205. package/docs/types/PlaneTagElement.html +5 -5
  206. package/docs/types/Point2DElement.html +5 -5
  207. package/docs/types/Point2DTag.html +5 -5
  208. package/docs/types/Point3DElement.html +5 -5
  209. package/docs/types/Point3DTag.html +5 -5
  210. package/docs/types/PointTag.html +5 -5
  211. package/docs/types/PointTagElement.html +5 -5
  212. package/docs/types/Position.html +5 -5
  213. package/docs/types/RotateArgs.html +5 -5
  214. package/docs/types/RotateOpts.html +5 -5
  215. package/docs/types/RuleLabelsKey.html +5 -5
  216. package/docs/types/RuleLabelsValue.html +5 -5
  217. package/docs/types/StickType.html +5 -5
  218. package/docs/types/Tag.html +5 -5
  219. package/docs/types/Tag2D.html +5 -5
  220. package/docs/types/Tag3D.html +5 -5
  221. package/docs/types/TagContentType.html +5 -5
  222. package/docs/types/TagDimensionType.html +5 -5
  223. package/docs/types/TagElement.html +5 -5
  224. package/docs/types/TagEvents.html +5 -5
  225. package/docs/types/TagHooks.html +5 -5
  226. package/docs/types/TagIconSize.html +5 -5
  227. package/docs/types/TagId.html +5 -5
  228. package/docs/types/TagPointType.html +5 -5
  229. package/docs/types/TopviewFloorplanPluginParameterType.html +5 -5
  230. package/docs/types/TopviewFloorplanPluginReturnType.html +5 -5
  231. package/docs/types/WorkCode.html +5 -5
  232. package/docs/variables/FLOOR_TYPE_MAP.html +5 -5
  233. package/docs/variables/PLUGIN.html +5 -5
  234. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +5 -5
  235. package/docs/variables/ROOM_TYPE_MAP.html +5 -5
  236. package/docs/variables/VERSION.html +5 -5
  237. package/docs/variables/itemLabelPluginServerParams.html +5 -5
  238. package/docs/variables/modelItemLabelPluginServerParams.html +5 -5
  239. package/docs/variables/modelRoomLabelPluginServerParams.html +5 -5
  240. package/libs/PanoMeasurePlugin/Controller/ViewController.js +25 -24
  241. package/libs/PanoTagPlugin/Components/TagContainer.js +17 -17
  242. package/libs/PanoTagPlugin/controller/index.js +1 -1
  243. package/package.json +1 -1
package/dist/index.cjs.js CHANGED
@@ -205,7 +205,7 @@ transition: all 500ms;
205
205
  <div class="PanoRulerPlugin-rule-label-name">${e.options.distanceText(g)}</div>
206
206
  </div>
207
207
  </div>
208
- `,w=document.createElement("div");return w.setAttribute("class","PanoRulerPlugin-rule"),w.setAttribute("data-name",A),w.setAttribute("style","display: none"),w.innerHTML=v,w},o=document.createElement("div");o.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;");const s=document.createElement("div");s.innerHTML=uf,o.appendChild(s);const r={},a=(A,g)=>{if(e.loaded)throw new Error("\u6807\u5C3A\u88AB\u91CD\u590D\u521D\u59CB\u5316\uFF01");const v=hf(A,i),w=i.work;if(!w)return!1;for(const y in g){const P=g[y],{standingPosition:I}=w.observers[0],C=P.map(({x:L,z:D,observers:B})=>{const N=B.length>0?A.rooms[A.observers[B[0]]].name:"",F=v[N]?v[N].floor:null;let X=1/0,j={index:0,x:I.x,y:I.y,z:I.z};B.forEach(_=>{if(!w.observers[_])return;const{standingPosition:J}=w.observers[_],de={index:_,x:J.x,y:J.y,z:J.z},ue=ff({x:L,z:D},de);F?ue<X&&Math.abs(de.y-F)<.3&&(X=ue,j=de):ue<X&&(X=ue,j=de)});const E=new H.Vector3(L,j.y,D);Object.assign(E,{observers:B});const R=v[N]?v[N].roof:null,O=R?new H.Vector3(L,R,D):null;return O&&Object.assign(O,{observers:B}),{origin:E,vertical:O}});r[y]={origins:C.map(L=>L.origin),rules:[]};for(const{origin:L,vertical:D}of C){if(!D)continue;const B=n(y,L.distanceTo(D));o.append(B),r[y].rules.push({vertical:!0,rule:[L,D],$element:B})}for(let L=0;L<C.length;L++){let D=L+1;D>=C.length&&(D=0);const{origin:B}=C[L],{origin:N}=C[D],F=n(y,B.distanceTo(N));o.append(F),r[y].rules.push({vertical:!1,rule:[B,N],$element:F})}}return e.loaded=!0,!0},l=(A,g,v)=>Y(exports,null,function*(){const w=A||t.roomInfo,y=g||t.roomRules;if(!w||!y)throw new Error("\u6807\u5C3A\u6570\u636E\u4F9D\u8D56\u4E0D\u9F50\u5168\uFF01");return e.loaded=!1,e.options=G(G({},e.options),v||{}),i.model.loaded?a(w,y):yield new Promise(P=>i.once("modelLoaded",()=>P(a(w,y))))});t.roomInfo&&t.roomRules&&l(t.roomInfo,t.roomRules);const c=(A,g,v,w)=>{const y=[[{x:0,y:0},{x:v,y:0}],[{x:0,y:0},{x:0,y:w}],[{x:v,y:0},{x:v,y:w}],[{x:0,y:w},{x:v,y:w}]],P=[];for(let I=0;I<y.length;I++){const C=Ma([A,g],[y[I][0],y[I][1]],!0);C&&P.push(C)}return P.length===0?!1:P},d=()=>{var B;const A=(B=i.getElement())==null?void 0:B.parentElement;if(!A||!e.loaded||Object.keys(r).length<=0)return;const{panoIndex:g,camera:v,currentMode:w}=i;if(g===void 0)return;let y;for(const N in r)N.split(",").indexOf(g.toString())>=0&&(y=N);if(!y){for(const N in r)for(const{$element:F}of r[N].rules)F.style.display="none";return}const P=v.position,I=v.getWorldDirection(new H.Vector3),C=A.clientWidth,L=A.clientHeight;if(w!==be.Five.Mode.Panorama){for(const N in r)for(const{$element:F}of r[N].rules)F.style.display="none";return}for(const N in r)for(const{$element:F}of r[N].rules)F.style.display=N===y?"block":"none";const[D]=r[y].origins.slice().filter(N=>N.observers.indexOf(g)>=0).sort((N,F)=>{const X=N.clone().setY(0).sub(P).normalize().angleTo(I.clone().setY(0)),j=F.clone().setY(0).sub(P).normalize().angleTo(I.clone().setY(0));return X-j});for(const{rule:N,vertical:F,$element:X}of r[y].rules){const[j,E]=N,R=X.querySelector(".PanoRulerPlugin-rule-line");if(!R)return;if(!D){X.style.display="none";continue}if(j!==D&&E!==D){X.style.display="none";continue}if(j.distanceTo(E)<.3){X.style.display="none";continue}if(j.observers.indexOf(g)===-1||E.observers.indexOf(g)===-1){X.style.display="none";continue}if(j.clone().sub(P).normalize().angleTo(I)>Math.PI/2){X.style.display="none";continue}if(E.clone().sub(P).normalize().angleTo(I)>Math.PI/2){X.style.display="none";continue}const U=j.distanceTo(E);if(E.clone().sub(E.clone().sub(j).divide(new H.Vector3(2,2,2))).distanceTo(P)/U>8){X.style.display="none";continue}const de=j.clone().project(v),ue=(de.x+1)/2*C,me=(-de.y+1)/2*L,Pe=E.clone().project(v),Me=(Pe.x+1)/2*C,Re=(-Pe.y+1)/2*L,ae=Math.sqrt(Math.pow(Me-ue,2)+Math.pow(Re-me,2));let ve=ae,Ce=50;const ce=c({x:~~ue,y:~~me},{x:~~Me,y:~~Re},C,L);if(ce&&ce.length===1&&(D===j?(ve=Math.sqrt(Math.pow(ce[0].x-ue,2)+Math.pow(ce[0].y-me,2)),Ce=ve/ae*50):D===E&&(ve=Math.sqrt(Math.pow(ce[0].x-Me,2)+Math.pow(ce[0].y-Re,2)),Ce=100-ve/ae*50)),ce&&ce.length===2){const ut={x:(ce[0].x+ce[1].x)/2,y:(ce[0].y+ce[1].y)/2};Ce=Math.sqrt(Math.pow(ut.x-ue,2)+Math.pow(ut.y-me,2))/ae*100}const kt=(Math.PI/2-Math.atan2(Me-ue,me-Re))/Math.PI*180,ge=R.querySelector(".PanoRulerPlugin-rule-label"),dt=ge.children[0].clientWidth;dt>=ae||dt/2>=Ce/100*ae||dt/2>=(1-Ce/100)*ae?R.style.display="none":(R.style.display="block",R.style.width=ae+"px",R.style.left=ue+"px",R.style.top=me+"px",R.style.transform=`rotate(${-kt}deg)`,ge.style.left=`${Ce}%`)}},f=()=>za(d),u=()=>{var A,g;return e.loaded?(e.enable||(o.setAttribute("class","PanoRulerPlugin"+(e.options.className?" "+e.options.className:"")),(g=(A=i.getElement())==null?void 0:A.parentElement)==null||g.append(o),d(),i.on("modeChange",d),i.on("cameraUpdate",f),e.enable=!0),!0):!1},h=()=>(e.enable&&(i.off("modeChange",d),i.off("cameraUpdate",f),o&&o.remove(),e.enable=!1),!0);function p(A){if(A.distanceText&&A.distanceText!==e.options.distanceText){const g=A.distanceText;e.options.distanceText=g,Object.values(r).forEach(v=>{v.rules.forEach(w=>{const[y,P]=w.rule,I=y.distanceTo(P),C=w.$element.querySelector(".PanoRulerPlugin-rule-label-name");!C||(C.innerText=g(I))})})}}return{enable:u,disable:h,load:l,state:e,changeConfigs:p}};function pf(i){le(i,"svelte-1h27ktp",".PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp{position:absolute;transform-origin:left 0.0625rem;width:0;height:0.125rem;pointer-events:none}.PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp::after{content:'';position:absolute;left:-0.125rem;top:-0.1rem;width:0.25rem;height:0.25rem;border-radius:50%;background:#fff;z-index:1;animation:svelte-1h27ktp-viewport-rule-point 0.1s 1s;animation-fill-mode:both}.PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp::before{content:'';position:absolute;right:-0.125rem;top:-0.1rem;width:0.25rem;height:0.25rem;border-radius:50%;background:#fff;z-index:1;animation:svelte-1h27ktp-viewport-rule-point 0.1s 1.5s;animation-fill-mode:both}.PanoRulerPlugin-rule-line.svelte-1h27ktp em.svelte-1h27ktp{display:block;height:0.0625rem;animation:svelte-1h27ktp-viewport-rule-line 0.5s ease 1s;animation-fill-mode:both;box-shadow:0 0 0.25rem rgb(0 0 0 / 40%);position:relative}.rule-mixed-line.svelte-1h27ktp.svelte-1h27ktp{display:flex;height:0.0625rem;animation:svelte-1h27ktp-viewport-rule-line 0.5s ease 1s;animation-fill-mode:both;align-items:center}.em-solid.svelte-1h27ktp.svelte-1h27ktp{height:100%;background:#ffffff}.em-dotted.svelte-1h27ktp.svelte-1h27ktp{height:0.125rem;background:var(--background-image);background-position:center;background-repeat:repeat}.PanoRulerPlugin-rule-label.svelte-1h27ktp.svelte-1h27ktp{position:absolute;width:0;height:0;top:0.0625rem;pointer-events:none}.PanoRulerPlugin-rule-label-name.svelte-1h27ktp.svelte-1h27ktp{position:absolute;padding:0.1875rem 0.375rem;background:rgba(195, 195, 195, 0.3);backdrop-filter:blur(0.25rem);-webkit-backdrop-filter:blur(0.25rem);border-radius:6.25rem;border:0.0625rem solid rgba(255, 255, 255, 0.6);white-space:nowrap;overflow:hidden;color:#ffffff;font-weight:500;font-size:0.75rem;line-height:1;animation:svelte-1h27ktp-viewport-rule-label 0.25s ease 1s;animation-fill-mode:both;box-shadow:inset 0 0 0.625rem 0 rgba(255, 255, 255, 0.3)}@keyframes svelte-1h27ktp-viewport-rule-line{0%{width:0%}100%{width:100%}}@keyframes svelte-1h27ktp-viewport-rule-label{0%{opacity:0;transform:scaleX(0)}100%{opacity:1;transform:translate(-50%, -50%) scaleX(1)}}@keyframes svelte-1h27ktp-viewport-rule-point{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}")}function fs(i,t,e){const n=i.slice();return n[6]=t[e],n}function gf(i){let t,e=i[0].children,n=[];for(let o=0;o<e.length;o+=1)n[o]=hs(fs(i,e,o));return{c(){t=V("div");for(let o=0;o<n.length;o+=1)n[o].c();b(t,"class","rule-mixed-line svelte-1h27ktp")},m(o,s){z(o,t,s);for(let r=0;r<n.length;r+=1)n[r].m(t,null)},p(o,s){if(s&9){e=o[0].children;let r;for(r=0;r<e.length;r+=1){const a=fs(o,e,r);n[r]?n[r].p(a,s):(n[r]=hs(a),n[r].c(),n[r].m(t,null))}for(;r<n.length;r+=1)n[r].d(1);n.length=e.length}},d(o){o&&M(t),lt(n,o)}}}function Af(i){let t,e;return{c(){t=V("em"),b(t,"class",e=je(i[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),b(t,"style",i[3])},m(n,o){z(n,t,o)},p(n,o){o&1&&e!==(e=je(n[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&b(t,"class",e),o&8&&b(t,"style",n[3])},d(n){n&&M(t)}}}function hs(i){let t,e,n=`${i[6].width}px`;return{c(){t=V("div"),b(t,"class",e=je(i[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),b(t,"style",i[3]),T(t,"width",n)},m(o,s){z(o,t,s)},p(o,s){s&1&&e!==(e=je(o[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&b(t,"class",e),s&8&&b(t,"style",o[3]),s&1&&n!==(n=`${o[6].width}px`)&&T(t,"width",n)},d(o){o&&M(t)}}}function vf(i){let t,e,n,o,s=i[0].labelElement+"",r,a,l=`${i[0].labelOffset}%`,c=`${i[0].width}px`,d=`${i[0].left}px`,f=`${i[0].top}px`,u=`rotate(${i[0].rotateDeg}deg)`;function h(g,v){return g[0].children.length===0?Af:gf}let p=h(i),A=p(i);return{c(){t=V("div"),A.c(),e=ee(),n=V("div"),o=V("div"),r=Ee(s),b(o,"class","PanoRulerPlugin-rule-label-name svelte-1h27ktp"),De(()=>i[4].call(o)),b(n,"class","PanoRulerPlugin-rule-label svelte-1h27ktp"),T(n,"left",l),b(t,"class","PanoRulerPlugin-rule-line svelte-1h27ktp"),T(t,"width",c),T(t,"left",d),T(t,"top",f),T(t,"transform",u),T(t,"display",i[0].visible&&i[2]?"block":"none")},m(g,v){z(g,t,v),A.m(t,null),Q(t,e),Q(t,n),Q(n,o),Q(o,r),a=Et(o,i[4].bind(o))},p(g,[v]){p===(p=h(g))&&A?A.p(g,v):(A.d(1),A=p(g),A&&(A.c(),A.m(t,e))),v&1&&s!==(s=g[0].labelElement+"")&&xe(r,s),v&1&&l!==(l=`${g[0].labelOffset}%`)&&T(n,"left",l),v&1&&c!==(c=`${g[0].width}px`)&&T(t,"width",c),v&1&&d!==(d=`${g[0].left}px`)&&T(t,"left",d),v&1&&f!==(f=`${g[0].top}px`)&&T(t,"top",f),v&1&&u!==(u=`rotate(${g[0].rotateDeg}deg)`)&&T(t,"transform",u),v&5&&T(t,"display",g[0].visible&&g[2]?"block":"none")},i:Z,o:Z,d(g){g&&M(t),A.d(),a()}}}function bf(i,t,e){let n,{rulerItemProp:o}=t,s=!0,r,a="data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjQiIHdpZHRoPSIxMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGZpbHRlciBpZD0icHJlZml4X19hIiBoZWlnaHQ9IjQwMCUiIHdpZHRoPSIxMzcuNCUiIHg9Ii0xOC43JSIgeT0iLTE1MCUiPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iZGlsYXRlIiByYWRpdXM9Ii41IiByZXN1bHQ9InNoYWRvd1NwcmVhZE91dGVyMSIvPjxmZU9mZnNldCBpbj0ic2hhZG93U3ByZWFkT3V0ZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiByYWRpdXM9IjEiIHJlc3VsdD0ic2hhZG93SW5uZXIiLz48ZmVPZmZzZXQgaW49InNoYWRvd0lubmVyIiByZXN1bHQ9InNoYWRvd0lubmVyIi8+PGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIGluMj0ic2hhZG93SW5uZXIiIG9wZXJhdG9yPSJvdXQiIHJlc3VsdD0ic2hhZG93T2Zmc2V0T3V0ZXIxIi8+PGZlR2F1c3NpYW5CbHVyIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIgc3RkRGV2aWF0aW9uPSIuNSIvPjxmZUNvbG9yTWF0cml4IGluPSJzaGFkb3dCbHVyT3V0ZXIxIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuMiAwIi8+PC9maWx0ZXI+PHBhdGggaWQ9InByZWZpeF9fYiIgZD0iTS44ODkgMkgxMS41OCIvPjwvZGVmcz48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS1kYXNoYXJyYXk9IjUgNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuNCIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjwvZz48L3N2Zz4=";function l(){r=this.offsetWidth,e(1,r)}return i.$$set=c=>{"rulerItemProp"in c&&e(0,o=c.rulerItemProp)},i.$$.update=()=>{i.$$.dirty&3&&(r>=o.width||r/2>=o.labelOffset/100*o.width||r/2>=(1-o.labelOffset/100)*o.width?e(2,s=!1):e(2,s=!0))},e(3,n=`--background-image: url(${a})`),[o,r,s,n,l]}class yf extends oe{constructor(t){super(),ie(this,t,bf,vf,ne,{rulerItemProp:0},pf)}}function ms(i,t,e){const n=i.slice();return n[12]=t[e],n}function ps(i){let t,e;return t=new yf({props:{rulerItemProp:i[12]}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&1&&(s.rulerItemProp=n[12]),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function wf(i){let t,e,n=i[0],o=[];for(let r=0;r<n.length;r+=1)o[r]=ps(ms(i,n,r));const s=r=>S(o[r],1,1,()=>{o[r]=null});return{c(){t=V("div");for(let r=0;r<o.length;r+=1)o[r].c()},m(r,a){z(r,t,a);for(let l=0;l<o.length;l+=1)o[l].m(t,null);e=!0},p(r,[a]){if(a&1){n=r[0];let l;for(l=0;l<n.length;l+=1){const c=ms(r,n,l);o[l]?(o[l].p(c,a),k(o[l],1)):(o[l]=ps(c),o[l].c(),k(o[l],1),o[l].m(t,null))}for(se(),l=n.length;l<o.length;l+=1)s(l);re()}},i(r){if(!e){for(let a=0;a<n.length;a+=1)k(o[a]);e=!0}},o(r){o=o.filter(Boolean);for(let a=0;a<o.length;a+=1)S(o[a]);e=!1},d(r){r&&M(t),lt(o,r)}}}function Cf(i,t,e){var A,g,v,w;let{five:n}=t,{rulerDatas:o}=t,{options:s}=t,r=[];const a=((g=(A=n.getElement())==null?void 0:A.parentElement)==null?void 0:g.clientWidth)||0,l=((w=(v=n.getElement())==null?void 0:v.parentElement)==null?void 0:w.clientHeight)||0,c=(y,P)=>{const I=[[{x:0,y:0},{x:a,y:0}],[{x:0,y:0},{x:0,y:l}],[{x:a,y:0},{x:a,y:l}],[{x:0,y:l},{x:a,y:l}]],C=[];for(let L=0;L<I.length;L++){const D=Ma([y,P],[I[L][0],I[L][1]],!0);D&&C.push(D)}return C.length===0?!1:C},d=(y,P)=>{const I=y.clone().project(n.camera),C=(I.x+1)/2*a,L=(-I.y+1)/2*l,D=P.clone().project(n.camera),B=(D.x+1)/2*a,N=(-D.y+1)/2*l,F=Math.sqrt(Math.pow(B-C,2)+Math.pow(N-L,2));return{startLeft:C,startTop:L,endLeft:B,endTop:N,distance:F}},f=(y,P,I)=>{const C=n.camera.position,L=n.camera.getWorldDirection(new H.Vector3),D=y.clone().sub(C).normalize().angleTo(L),B=P.clone().sub(C).normalize().angleTo(L),N=y.distanceTo(P),X=P.clone().sub(P.clone().sub(y).divide(new H.Vector3(2,2,2))).distanceTo(C),{startLeft:j,startTop:E,endLeft:R,endTop:O,distance:W}=d(y,P),_=-((Math.PI/2-Math.atan2(R-j,E-O))/Math.PI)*180;let J=!0;I||(J=!1),!Je(y,I)&&!Je(P,I)&&(J=!1),N<.3&&(J=!1),D>Math.PI/2&&(J=!1),B>Math.PI/2&&(J=!1),X/N>8&&(J=!1);let de=50,ue=W;const me=c({x:~~j,y:~~E},{x:~~R,y:~~O});if(me&&me.length===1&&(Je(y,I)?(ue=Math.sqrt(Math.pow(me[0].x-j,2)+Math.pow(me[0].y-E,2)),de=ue/W*50):Je(P,I)&&(ue=Math.sqrt(Math.pow(me[0].x-R,2)+Math.pow(me[0].y-O,2)),de=100-ue/W*50)),me&&me.length===2){const Pe={x:(me[0].x+me[1].x)/2,y:(me[0].y+me[1].y)/2};de=Math.sqrt(Math.pow(Pe.x-j,2)+Math.pow(Pe.y-E,2))/W*100}return{startLeft:j,startTop:E,distance:W,deg:_,visible:J,labelOffset:de,ruleLength:N}},u=()=>{const y=n.panoIndex,P=o.find(F=>F.panoIndex===y);if(!P)return e(0,r=[]);if(n.currentMode!==be.Five.Mode.Panorama)return e(0,r=[]);const I=n.camera.position,C=n.camera.getWorldDirection(new H.Vector3),L=P.lines.map(F=>new H.Vector3(F.start[0],-F.start[1],-F.start[2])),D=P.lines.map(F=>new H.Vector3(F.end[0],-F.end[1],-F.end[2])),[B]=L.concat(D).sort((F,X)=>{const j=F.clone().setY(0).sub(I).normalize().angleTo(C.clone().setY(0)),E=X.clone().setY(0).sub(I).normalize().angleTo(C.clone().setY(0));return j-E}),N=P.lines.map(F=>{var ue,me;const X=F.start,j=F.end,{startLeft:E,startTop:R,distance:O,deg:W,visible:U,labelOffset:_,ruleLength:J}=f(new H.Vector3(X[0],-X[1],-X[2]),new H.Vector3(j[0],-j[1],-j[2]),B),de=[];return F.children&&((ue=F.children)==null?void 0:ue.length)>0&&((me=F.children)==null||me.forEach(Pe=>{const Me=Pe.start,Re=Pe.end,{distance:ae}=d(new H.Vector3(Me[0],-Me[1],-Me[2]),new H.Vector3(Re[0],-Re[1],-Re[2]));de.push({width:ae,state:Pe.state})})),{width:O,left:E,top:R,rotateDeg:W,state:F.state,children:de,labelOffset:_,visible:U,labelElement:s.distanceText(J)}});e(0,r=N)},h=()=>ci(u),p=lo(u,80);return Ze(()=>{u(),n.on("panoArrived",u),n.on("modeChange",u),n.on("cameraDirectionUpdate",h),n.on("movingToPano",h),n.on("mouseWheel",()=>p()),n.on("pinchGesture",()=>p())}),It(()=>{n.off("panoArrived",u),n.off("modeChange",u),n.off("cameraDirectionUpdate",h),n.off("movingToPano",h),n.off("mouseWheel",()=>p()),n.off("pinchGesture",()=>p())}),i.$$set=y=>{"five"in y&&e(1,n=y.five),"rulerDatas"in y&&e(2,o=y.rulerDatas),"options"in y&&e(3,s=y.options)},[r,n,o,s]}class Ef extends oe{constructor(t){super(),ie(this,t,Cf,wf,ne,{five:1,rulerDatas:2,options:3})}}class Pf{constructor(t,e){m(this,"five");m(this,"container",document.createElement("div"));m(this,"panoRulerProData");m(this,"rulerItems");m(this,"state",{enabled:!1,loaded:!1,options:{className:"",distanceText:t=>`${t.toFixed(1)}m`}});var n,o;this.five=t,this.container.classList.add("panoRulerProPlugin-container"),this.container.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;"),e&&(e.data&&this.load(e.data),this.state.options=G(G({},this.state.options),e.options||{}),(n=e.options)!=null&&n.className&&this.container.classList.add((o=e.options)==null?void 0:o.className)),this.five.once("modelLoaded",()=>Y(this,null,function*(){var s,r;(r=(s=this.five.getElement())==null?void 0:s.parentNode)==null||r.append(this.container)})),this.five.once("dispose",()=>this.dispose())}load(t){return Y(this,null,function*(){if(!this.five.work)return;const e=t.data;if(!e)throw new Error("\u6807\u5C3A\u6570\u636E\u4F9D\u8D56\u4E0D\u9F50\u5168\uFF01");this.panoRulerProData=e,this.state.loaded=!0})}enable(){return this.state.loaded?(this.state.enabled||(this.state.enabled=!0,this.render()),!0):!1}disable(){return this.state.enabled&&(this.state.enabled=!1,this.render()),!0}render(){return Y(this,null,function*(){var t;if(this.state.enabled){if(!this.panoRulerProData||!this.container)return;this.rulerItems=new Ef({target:this.container,props:{five:this.five,rulerDatas:this.panoRulerProData,options:this.state.options}})}else(t=this.rulerItems)==null||t.$destroy(),this.rulerItems=void 0})}dispose(){this.container&&(this.rulerItems.$destroy(),this.rulerItems=void 0),this.container.remove()}}const If=(i,t)=>new Pf(i,t),kf="data:image/png;base64,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";function xf(){const i=document.createElement("div"),t=document.createElement("i"),e=document.createElement("span");return i.appendChild(t),i.appendChild(e),i.style.position="relative",i.style.width="100%",i.style.display="flex",i.style.flexDirection="column",i.style.alignItems="center",i.style.marginTop=`${150/16}rem`,i.style.opacity="0",i.style.transition="opacity 1000ms linear",t.style.display="block",t.style.width=`${134/16}rem`,t.style.height=`${22/16}rem`,t.style.backgroundSize="100%",t.style.backgroundRepeat="no-repeat",t.style.backgroundImage=`url(${kf})`,e.style.marginTop=`${10/16}rem`,e.style.fontSize=`${16/16}rem`,e.style.color="#fff",e.style.opacity="0.7",e.style.textShadow="0 2px 16px rgb(22 34 83 / 24%)",e.style.fontWeight="bold",{appendTo(n){n.appendChild(i)},dispose(){i.remove()},setRoom(n){e.innerHTML=n.name+" "+Math.floor(n.size/1e6)+"\u33A1"},show(){i.style.opacity="1"},hide(){i.style.opacity="0"}}}const Df=new x.TextureLoader;function gs(i){return Y(this,null,function*(){return new Promise((t,e)=>{Df.load(i,t,void 0,e)}).then(t=>(t.encoding=x.sRGBEncoding,t))})}const xn={userAction:!0};class Lf extends Ht{constructor(e,n){super(e);m(this,"state",{visible:!0,enabled:!0,config:{compassImageUrl:"//vrlab-image4.ljcdn.com/release/web/v3/north-point-circle.96498e69.png",entryDoorImageUrl:"//vrlab-image4.ljcdn.com/release/web/enterDoor.831b8208.png"}});m(this,"data");m(this,"group",new x.Group);m(this,"roomInfoInstance");m(this,"roomInfoWrapperInstance");m(this,"compassMeshTween");m(this,"compassMesh");m(this,"entryDoorMesh");m(this,"dispose",()=>{var e,n,o,s;this.five.scene.remove(this.group),this.group.remove(...this.group.children),(n=(e=this.compassMesh)==null?void 0:e.material.map)==null||n.dispose(),(s=(o=this.entryDoorMesh)==null?void 0:o.material.map)==null||s.dispose(),this.five.off("dispose",this.dispose),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});m(this,"_addEventListener",()=>{this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive),this.five.on("modeChange",this.onFiveModeChange),this.five.on("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});m(this,"_removeEventListener",()=>{this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("modeChange",this.onFiveModeChange),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});m(this,"_enable",()=>{this.five.scene.add(this.group),this.init(),this.onFivePanoArrived(this.five.panoIndex||0),this._addEventListener()});m(this,"_disable",()=>{this._clearCompassIfNeed(),this._clearEntryDoorIfNeed(),this.five.scene.remove(this.group),this._removeEventListener()});m(this,"_toggleVisible",()=>{this.group.visible=this.state.visible,this.five.needsRender=!0});m(this,"_clearCompassIfNeed",()=>{var e;this.compassMesh&&(this.group.remove(this.compassMesh),(e=this.compassMesh.material.map)==null||e.dispose(),this.compassMesh=null)});m(this,"_clearEntryDoorIfNeed",()=>{var e;this.entryDoorMesh&&(this.group.remove(this.entryDoorMesh),(e=this.entryDoorMesh.material.map)==null||e.dispose(),this.entryDoorMesh=null),this.roomInfoInstance&&(this.roomInfoInstance.dispose(),this.roomInfoInstance=null),this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.dispose(),this.roomInfoWrapperInstance=null)});m(this,"onFivePanoWillArrive",e=>{var n,o;e!==this.five.panoIndex&&((n=this.compassMeshTween)==null||n.dispose(),(o=this.compassMesh)==null||o.material.setValues({opacity:0}))});m(this,"onFivePanoArrived",e=>{var o,s,r,a,l,c,d;const n=(r=(s=(o=this.five.work)==null?void 0:o.observers)==null?void 0:s[e])==null?void 0:r.standingPosition;if(this.compassMesh&&(this.compassMesh.position.copy(n.clone().setY(n.y+.01)),this.compassMesh.material.opacity===0&&((a=this.compassMeshTween)==null||a.dispose(),this.compassMeshTween=La(1e3).onUpdate(({progress:f})=>{var u;(u=this.compassMesh)==null||u.material.setValues({opacity:f}),this.five.needsRender=!0}).play())),this.entryDoorMesh){const u=new x.Vector3(this.data.entrance.position.x,this.data.entrance.position.y,this.data.entrance.position.z).clone().setY(n.y).sub(n).normalize(),h=n.clone().add(u.clone().multiplyScalar(.7)).setY(n.y+.01);this.entryDoorMesh.rotation.z=new x.Vector3(0,0,-1).angleTo(u),this.entryDoorMesh.position.copy(h),((l=this.data)==null?void 0:l.room_observers[e].room.type)===1?(c=this.entryDoorMesh)==null||c.material.setValues({opacity:1}):(d=this.entryDoorMesh)==null||d.material.setValues({opacity:0})}this.roomInfoInstance&&this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.css3DObject.position.copy(n.clone().setY(n.y+.01)),this.roomInfoInstance.setRoom(this.data.room_observers[e].room)),this.five.needsRender=!0});m(this,"onFiveCameraDirectionUpdate",({longitude:e,latitude:n})=>{var o,s;!this.roomInfoWrapperInstance||(this.roomInfoWrapperInstance.css3DObject.rotation.z=e,n>.66&&this.five.getCurrentState().mode==="Panorama"?(o=this.roomInfoInstance)==null||o.show():(s=this.roomInfoInstance)==null||s.hide())});m(this,"onFiveModeChange",(e,n,o,s,r)=>{e!==n&&this.setState({visible:e===be.Five.Mode.Panorama},{userAction:r})});this.five.scene.add(this.group),this.five.once("dispose",this.dispose),this.setState({visible:!0,enabled:!0,config:G(G({},this.state.config),n||{})})}enable(e=xn){this.setState({enabled:!0},e)}disable(e=xn){this.setState({enabled:!1},e)}show(e=xn){if(!!this.state.enabled)return this.setState({visible:!0},e),Promise.resolve()}hide(e=xn){if(!!this.state.enabled)return this.setState({visible:!1},e),Promise.resolve()}setState(e,n={userAction:!0}){var s,r;const o=JSON.parse(JSON.stringify(this.state));this.state={visible:(s=e.visible)!=null?s:o.visible,enabled:(r=e.enabled)!=null?r:o.enabled,config:G(G({},o.config),e.config||{})},this.hooks.emit("stateChange",{state:this.state,prevState:o,userAction:n.userAction}),e.enabled===!0&&(this._enable(),this.hooks.emit("enable",n)),e.enabled===!1&&(this._disable(),this.hooks.emit("disable",n)),e.visible===!1&&(this._toggleVisible(),this.hooks.emit("hide",n)),e.visible===!0&&(this._toggleVisible(),this.hooks.emit("show",n)),e.config&&this.init()}load(e,n,o=!0){return Y(this,null,function*(){const s=yield this.formatData(e);JSON.stringify(this.data)!==JSON.stringify(s)&&(this.hooks.emit("dataChange",s,this.data),this.data=G({},s),this.init(),n&&this.setState(n,{userAction:o}),this.hooks.emit("dataLoaded",this.data))})}formatData(e){return e.version&&e.data?Promise.resolve(e.data):Promise.resolve(e)}init(){return Y(this,null,function*(){var o,s,r,a;const e=(s=(o=this.data)==null?void 0:o.north_rad)!=null?s:null;this._clearCompassIfNeed(),e!==null&&(this.compassMesh=yield this.loadCompassMesh(),this.compassMesh.rotateX(-Math.PI/2),this.compassMesh.rotateZ(e-Math.PI/2),this.group.add(this.compassMesh));const n=(a=(r=this.data)==null?void 0:r.entrance)!=null?a:null;this._clearEntryDoorIfNeed(),n!==null&&(this.entryDoorMesh=yield this.loadEntryDoorMesh(),this.roomInfoWrapperInstance=this.loadRoomInfo(),this.roomInfoInstance=xf(),this.entryDoorMesh.rotateX(-Math.PI/2),this.roomInfoWrapperInstance&&this.roomInfoInstance.appendTo(this.roomInfoWrapperInstance.container),this.group.add(this.entryDoorMesh)),this.onFivePanoArrived(this.five.panoIndex||0),this.five.needsRender=!0})}loadCompassMesh(){return Y(this,null,function*(){const e=this.state.config.compassImageUrl,n=yield gs(e),o=new x.CircleGeometry(.7,32),s=new x.MeshBasicMaterial({map:n,transparent:!0,opacity:0,depthTest:!1}),r=new x.Mesh(o,s);return r.name="pano-compass-mesh",r})}loadEntryDoorMesh(){return Y(this,null,function*(){const e=this.state.config.entryDoorImageUrl,n=yield gs(e),o=new x.PlaneGeometry(.2,.16),s=new x.MeshBasicMaterial({map:n,transparent:!0,opacity:.8,depthTest:!1}),r=new x.Mesh(o,s);return r.name="pano-compass-entry-door",r})}loadRoomInfo(){const e=[new x.Vector3(-.7,0,-.7),new x.Vector3(.7,0,-.7),new x.Vector3(.7,0,.7),new x.Vector3(-.7,0,.7)];return en(this.five).create3DDomContainer(e)}}const Sf=(i,t)=>new Lf(i,t);function Dn(i,t,e){const n=i[t],o=i[e];n===void 0||o===void 0||(i[t]=o,i[e]=n)}function Tf(i,t,e){const n=e/2;for(let o=1;o<=n;o++){const s=e-(o-1);for(let r=1;r<=t;r++){const a=(o-1)*t+r-1,l=(s-1)*t+r-1;Dn(i,a*4+0,l*4+0),Dn(i,a*4+1,l*4+1),Dn(i,a*4+2,l*4+2),Dn(i,a*4+3,l*4+3)}}}class Ba{constructor(t,e){m(this,"width");m(this,"height");m(this,"containerDom");m(this,"hooks",new be.Subscribe);m(this,"canvas",document.createElement("canvas"));m(this,"five");m(this,"scale");m(this,"config");m(this,"offset",{x:0,y:0});m(this,"context");m(this,"renderCenter",new x.Vector3);m(this,"hammer");m(this,"state",{enabled:!1});m(this,"offsetRange");m(this,"isPanning",!1);m(this,"onPanstart",()=>{this.isPanning=!0,this.canvas.style.boxShadow="0 2px 30px 0 rgba(0,0,0,0.20)"});m(this,"onPan",t=>{if(!this.isPanning||!this.offsetRange||this.hooks.emit("wantsPanGesture",t))return;const{translateX:n,translateY:o}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${n}px, ${o}px, 100px)`});m(this,"onPanend",t=>{if(this.isPanning=!1,this.canvas.style.boxShadow="none",!this.offsetRange)return;const{translateX:e,translateY:n}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${e}px, ${n}px, 100px)`,this.offset={x:e,y:n}});var o,s,r;if(!t.renderer)throw new Error("Five Render \u672A\u521D\u59CB\u5316");this.five=t,this.scale=(o=e==null?void 0:e.scale)!=null?o:2,this.width=(s=e==null?void 0:e.width)!=null?s:190,this.height=(r=e==null?void 0:e.height)!=null?r:190,this.config={dragEnabled:(e==null?void 0:e.dragEnabled)||!1,autoFixPCPosition:(e==null?void 0:e.autoFixPCPosition)||!1,initialPosition:(e==null?void 0:e.initialPosition)||{left:"0",top:"0"}};const n=this.canvas.getContext("2d");if(!n)throw new Error("CANNOT CREATE CONTEXT2D");this.context=n,this.config.dragEnabled&&(this.hammer=new gn.default(this.canvas),this.hammer.on("pan",this.onPan),this.hammer.on("panstart",this.onPanstart),this.hammer.on("panend",this.onPanend)),this.initStyle()}dispose(){var t;this.clear(),this.disable(),(t=this.hammer)==null||t.destroy()}enable(){if(!this.state.enabled)return this.state.enabled=!0,this.containerDom&&this._appendTo(this.containerDom),this}disable(){if(!!this.state.enabled)return this.state.enabled=!1,this.canvas.remove(),this}appendTo(t){return this.containerDom=t,this.state.enabled&&this._appendTo(t),this}clear(){return this.context.clearRect(0,0,this.canvas.width,this.canvas.height),this}renderWithPoint(t){!this.containerDom||!this.state.enabled||(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}renderWithScreenPoint(t){!this.containerDom||!this.state.enabled||(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}resetOffset(){this.offset={x:0,y:0},this.canvas.style.transform=`translate3d(${0}px, ${0}px, 100px)`}getCurrentState(){return{enabled:this.state.enabled}}getRenderCenter(){return this.renderCenter}_appendTo(t){if(this.resetOffset(),t.appendChild(this.canvas),!this.offsetRange){const e=this.canvas.getBoundingClientRect(),n=t.getBoundingClientRect(),o=n.right-e.right,s=n.bottom-e.bottom,r=n.left-e.left,a=n.top-e.top;this.offsetRange={min:{x:r,y:a},max:{x:o,y:s}}}}autoFixPCPosition(){if(!this.containerDom)return;const{width:t,height:e}=this,[n,o,s]=(()=>{if(this.renderCenter instanceof x.Vector3){const r=this.renderCenter.clone().project(this.five.camera);return[(r.x+1)/2*this.containerDom.clientWidth,-(r.x-1)/2*this.containerDom.clientWidth,-(r.y-1)/2*this.containerDom.clientHeight]}else return[this.renderCenter.x,this.containerDom.clientWidth-this.renderCenter.x,this.renderCenter.y]})();n<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=90+"px"):s<183?(this.canvas.style.top=90+"px",this.canvas.style.left=-t/2+"px"):o<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=-t-90+"px"):(this.canvas.style.left=-t/2+"px",this.canvas.style.top=-e-90+"px"),this.canvas.style.transform=`translate3d(${n}px, ${s}px, 10px)`,this.offset={x:n,y:s}}render(){if(!this.five.renderer||!this.containerDom)return;const{scale:t,context:e,width:n,height:o}=this,s=this.five.renderer.getSize(new x.Vector2),[r,a]=(()=>{if(this.renderCenter instanceof x.Vector3){const g=this.renderCenter.clone().project(this.five.camera);return[(g.x+1)/2*s.x,(g.y+1)/2*s.y]}else return[this.renderCenter.x,s.y-this.renderCenter.y]})(),l=1,c=n/t,d=o/t,f=l*t,u=this.five.getPixels(r-c/2,a-c/2,c,d,f),h=Math.floor(n*l),p=Math.floor(o*l);Tf(u,h,p);const A=new ImageData(h,p);A.data.set(u),e.putImageData(A,0,0)}initStyle(){const t=this.canvas;t.classList.add("five-plugin__magnifier"),t.style.position="absolute",t.style.pointerEvents="all",t.style.borderRadius="50%",t.style.zIndex="99";const e=1;t.setAttribute("width",(this.width*e).toString()),t.setAttribute("height",(this.height*e).toString()),t.style.border="2px solid rgba(255,255,255,0.20)",t.style.width=this.width+"px",t.style.height=this.height+"px",t.style.top=this.config.initialPosition.top,t.style.left=this.config.initialPosition.left,t.style.transform="translate(0,0,100px)",this.config.dragEnabled&&(this.canvas.style.cursor="pointer")}getPanOffset(t,e){const{min:{x:n,y:o},max:{x:s,y:r}}=e,a=this.offset.x+t.deltaX,l=this.offset.y+t.deltaY,c=Math.min(Math.max(a,n),s),d=Math.min(Math.max(l,o),r);return{translateX:c,translateY:d}}}class Mf{constructor(t){m(this,"edges",[]);m(this,"five");m(this,"onModelLoaded",()=>{!this.five.model||(this.edges=this.five.model.getEdges())});this.five=t,this.five.model.loaded?this.onModelLoaded():this.five.on("modelLoaded",this.onModelLoaded)}dispose(){}getAdsorbentPoint(t){if(this.edges.length===0)return null;let e=1/0,n;return this.edges.forEach(o=>{const s=o.closestPointToPoint(t.point,!0,new H.Vector3),r=s.distanceTo(t.point);r<e&&(n=s,e=r)}),e>.1?null:n||null}}function zf(i,t){for(let e=0,n=t.length;e<n;e++)if(i===t[e])return t.splice(e,1)[0]}class _e{constructor(t){m(this,"id");m(this,"lines");m(this,"position");m(this,"type","point");this.id=He(),this.lines=[],this.position=new H.Vector3,t instanceof H.Vector3?this.position.copy(t):this.position.fromArray(t)}toJson(){return{id:this.id,position:this.position.toArray()}}addLine(t){this.lines.push(t)}removeLine(t){zf(t,this.lines)}clone(){return new _e(this.position)}}class ui{constructor(t){m(this,"id",He());m(this,"lines",[]);m(this,"points",[]);m(this,"visiblePanoIndexes");m(this,"model");m(this,"type","polyline");m(this,"hook",new be.Subscribe);this.model=t.model}addLine(t){if(this.includes(t)){console.error(new Error("\u4E0D\u80FD\u91CD\u590D\u6DFB\u52A0\u7EBF\u6BB5"));return}const e=this.getLastPoint(),n=e&&t.findAnotherPoint(e);e?e&&n?(this.lines.push(t),this.points.push(...t.points),this.hook.emit("lineAdded",t)):console.error(new Error("\u4F20\u5165\u7EBF\u6BB5\u65E0\u6CD5\u4E0E\u5F53\u524D\u6298\u7EBF\u8FDB\u884C\u8FDE\u63A5")):(this.lines.push(t),this.points.push(...t.points),this.hook.emit("lineAdded",t))}removeLine(t){if(this.lines.length!==0){if(!this.isLastLine(t)){console.error(new Error("\u4F20\u5165\u7EBF\u6BB5\u4E0D\u662F\u5F53\u524D\u6298\u7EBF\u7684\u6700\u540E\u4E00\u6BB5"));return}this.lines.pop(),this.lines.length===0?this.points.slice(0,this.points.length):this.points.pop(),this.hook.emit("lineRemoved",t)}}isLastLine(t){const e=this.getLastLine();return e?t.id===e.id:!1}getLastLine(){return this.lines.slice(-1)[0]}clear(){this.lines.slice(0,this.lines.length),this.points.slice(0,this.points.length)}overlapWith(t){return t.type==="point"?this.includes(t):t.type==="line"?t.points.some(e=>this.includes(e)):t.type==="polyline"?t.points.some(e=>this.includes(e)):!0}includes(t){return t.type==="point"?this.points.find(({id:e})=>e===t.id)!==void 0:t.type==="line"?this.lines.find(({id:e})=>e===t.id)!==void 0:!1}isEmpty(){return this.points.length===0}getLastPoint(){return this.points.slice(-1)[0]}toJson(){return{id:this.id,lines:this.lines.map(t=>t.toJson()),visiblePanoIndexes:this.visiblePanoIndexes}}getPointByID(t){return this.points.find(({id:e})=>e===t)}fromJson(t){this.clear(),this.id=t.id;const{getPoint:e,getAllPoints:n}=r(),o=t.lines.map(a=>{const[l,c]=a.points,d=e(l),f=e(c);if(!d||!f)throw new Error("\u7EBF\u4E0A\u7684\u70B9\u4E0D\u5B58\u5728");const u=new Ft(d,f,this.model);return u.id=a.id,u.text=a.text,u}),s=n();this.points.push(...s),this.lines.push(...o),this.visiblePanoIndexes=t.visiblePanoIndexes;function r(){const a=new Map;function l(d){const f=a.get(d.id);if(f)return f;const u=new _e(d.position);return u.id=d.id,a.set(d.id,u),u}function c(){return Array.from(a.values())}return{getPoint:l,getAllPoints:c}}return this}replace(t){this.id=t.id,this.clear(),this.lines.push(...t.lines),this.points.push(...t.points)}}const Bf=1,Vf=3,jf=new H.Color(16777215),Qf=new H.Color(6522623),Rf=new H.Color(16777215),Of=new H.Color(6522623),Hf=6,Ff=8,Gf="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAIVBMVEUAAAD////////////////////////////////////////PIev5AAAACnRSTlMAG/Py2baba05un7UgfgAAAHJJREFUKM9joBpgLHVSCRdA4metAoJlCJHmVWBgAeNzroKCCVCBLpjACqgJVjCBxRBT2FbBQQJYQAohsBAsUIUQWA4WiEIILAULeCEEloAFtBACizAEMLRgGIphLabDMJ2O6TlM72MGECIIMQIZIxqoBQCPvpJ/e9FaAAAAAABJRU5ErkJggg==",Va=new H.TextureLoader().load(Gf),ja={pointTexture:Va,pointSize:Hf,lineWidth:Bf,lineColor:jf,pointColor:Rf,lineRenderOrder:20,pointsRenderOrder:20};he(G({},ja),{dashed:!0});const Nf={pointTexture:Va,pointSize:Ff,lineWidth:Vf,lineColor:Qf,pointColor:Of,lineRenderOrder:10,pointsRenderOrder:10};function Wf(i,t,e){var d,f,u,h,p;const n=(d=e==null?void 0:e.lineWidth)!=null?d:2,o=(f=e==null?void 0:e.lineColor)!=null?f:new H.Color(16777215),s=(u=e==null?void 0:e.pointSize)!=null?u:5,r=(h=e==null?void 0:e.lineRenderOrder)!=null?h:10,a=(p=e==null?void 0:e.lineRenderOrder)!=null?p:20,l=new Ur.Line(i,t);l.setMaterial({linewidth:n,color:o}),l.line.material.depthTest=!1,l.line.material.transparent=!0,l.line.renderOrder=r,l.points.renderOrder=a;const c=l.points.material;return c.depthTest=!1,c.size=s,e!=null&&e.pointColor&&c.color.set(e.pointColor).convertSRGBToLinear(),e!=null&&e.pointTexture&&(c.map=e.pointTexture),l}function As(i,t){const[e,n]=i.points,o=t==="light"?Nf:ja,s=Wf(e.position,n.position,o);return s.name="normalLine_"+i.id,s}function At(i){const{x:t,y:e,z:n}=i;return!(Math.abs(t)>1||Math.abs(e)>1||Math.abs(n)>1)}function _f(){const i=document.createElement("div");return i.setAttribute("style","backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);-webkit-tap-highlight-color: rgba(0,0,0,0);"),i.style.width="max-content",i.style.padding="3px 6px",i.style.lineHeight="1",i.style.textAlign="center",i.style.transform="translate(-50%, -50%)",i.style.borderRadius="100px",i.style.fontSize="14px",i.style.color="#fff",i.style.background="rgba(195,195,195,0.70)",i.style.border="0.5px solid rgba(255,255,255,0.6)",i.style.cursor="pointer",i}function Xf(i){const t=document.createElement("div");return t.id="distance_"+i.id,t.classList.add("five-plugin-measure__distance"),t.style.opacity="0",t.style.position="absolute",t.style.left="0",t.style.top="0",t.style.width="0",t.style.height="0",t.style.transform="translate3d(0, 0, 0)",t.style.transformOrigin="left top",t}function Yf(i){let t=!0;const{line:e}=i,n=e.id,o=_f(),s=Xf(e),r=i.userDistanceItem,a=new H.Vector3(0,0,0),l={lineID:n,ndcPosition:a,update:u,appendTo:h,remove:p,highlight:d,unHighlight:f,getCurrentContent:A,setItemSelectable:g};s.style.pointerEvents=t?"all":"none",r!=null&&r.element?s.appendChild(r.element):s.appendChild(o);function c(){var v;(v=i.clickCallback)==null||v.call(i,l)}function d(){if(r)return r.highlight();o.style.border="0.5px solid #95AEFF",o.style.background="linear-gradient(90deg, #95AEFF 0%, #6386FF 100%)"}function f(){if(r)return r.unHighlight();o.style.border="0.5px solid rgba(255,255,255,0.6)",o.style.background="rgba(195,195,195,0.70)"}function u(v){if(e.mesh.visible===!1){s.style.opacity="0",s.style.pointerEvents="none";return}const w=v.getElement();if(!w)return;const y=w.clientWidth,P=w.clientHeight,I=y/2,C=P/2;if(e.points.length<2)return;const[L,D]=e.points,B=L.position.clone().project(v.camera),N=D.position.clone().project(v.camera),F=B.clone().lerp(N,.5),X=new H.Vector2(B.x*I,B.y*C),j=new H.Vector2(N.x*I,N.y*C),E=X.distanceTo(j);if((()=>!(Math.abs(B.z)>1||Math.abs(N.z)>1||!At(B)&&!At(N)||!At(F)||E===0))()===!1){s.style.opacity="0",s.style.pointerEvents="none";return}const O=(F.x+1)/2*y,W=-(F.y-1)/2*P,_=-(Math.atan((X.y-j.y)/(X.x-j.x))*180)/Math.PI,J=s.parentElement&&o.clientWidth>E?-20:0;s.style.transform=`translate(${O}px, ${W}px) rotate(${_}deg) translateY(${J}px)`,s.style.opacity="1",s.style.pointerEvents=t?"all":"none",r&&r.update({line:e,polyline:e.getPolyline()});const de=A();o.innerText=de}function h(v){v.appendChild(s),s.addEventListener("click",c)}function p(){o.removeEventListener("click",c),s.remove()}function A(){var L,D,B;if(e.points.length<2)return"";const[v,w]=e.points,y=v.position.clone().distanceTo(w.position),P=(L=i.line.text)!=null?L:i.line.model.config.defaultText,I=(B=(D=i.line.model.config)==null?void 0:D.getDistanceText)==null?void 0:B.call(D,y),C=P!=null?P:I;return C!=null?C:y.toFixed(2)+"m"}function g(v){t=v}return l}class Ft{constructor(t,e,n){m(this,"id");m(this,"selected",!1);m(this,"text");m(this,"type","line");m(this,"model");m(this,"mesh");m(this,"points");m(this,"lightMesh");m(this,"hook");m(this,"distanceItem");m(this,"polyline");var o;if(this.id=He(),this.model=n,t.id===e.id)throw new Error("\u65E0\u6548\u7684\u7EBF\u6BB5, \u4E00\u4E2A\u70B9\u65E0\u6CD5\u6784\u6210\u7EBF\u6BB5");typeof n.config.defaultText=="string"&&(this.text=n.config.defaultText),this.hook=new be.Subscribe,this.points=[t,e],this.mesh=As(this,"normal"),this.lightMesh=As(this,"light"),this.distanceItem=Yf({line:this,clickCallback:()=>this.hook.emit("selected",this),userDistanceItem:(o=this.model.config)!=null&&o.userDistanceItemCreator?this.model.config.userDistanceItemCreator():void 0}),t.lines.push(this),e.lines.push(this)}clear(){this.selected=!1,this.polyline=void 0}isEmpty(){return this.points.length===0}getPolyline(){if(this.polyline)return this.polyline;const t=this.model.polylines.find(e=>e.lines.includes(this));if(t)return this.polyline=t,t}findAnotherPoint(t){return this.points.find(({id:e})=>e!==t.id)}setText(t){this.text=t,this.hook.emit("textChanged",t)}toJson(){return{id:this.id,points:this.points.map(t=>t.toJson()),text:this.text}}clone(){const t=new Ft(this.points[0].clone(),this.points[1].clone(),this.model);return t.text=this.text,t}}class fi{constructor(t){m(this,"config");m(this,"polylines",[]);m(this,"hook",new be.Subscribe);this.config=t}addPolyline(t){if(this.includes(t)){console.error(new Error("\u4E0D\u80FD\u91CD\u590D\u6DFB\u52A0 polyline"));return}this.polylines.push(t),this.hook.emit("polylineAdded",t)}replacePolylineByID(t,e){const n=this.getPolylineByID(t);n==null||n.replace(e)}removePolyline(t){const e=this.polylines.findIndex(({id:n})=>n===t.id);if(e===-1){console.error(new Error("polyline \u4E0D\u5B58\u5728"));return}this.polylines.splice(e,1),this.hook.emit("polylineRemoved",t)}getPolylineByID(t){return this.polylines.find(e=>e.id===t)}getPolylineByLine(t){return this.polylines.find(e=>e.includes(t))}getLineByID(t){return this.getAllLines().find(e=>e.id===t)}getAllLines(){return this.polylines.map(t=>t.lines).flat(1)}getAllPoints(){return this.polylines.map(t=>t.points).flat(1)}includes(t){return this.polylines.find(({id:e})=>e===t.id)!==void 0}clear(){this.polylines.forEach(t=>this.hook.emit("polylineRemoved",t)),this.polylines.splice(0,this.polylines.length)}getClosestPoint(){}parse(t){this.clear(),this.polylines.push(...t.polylines.map(e=>new ui({model:this}).fromJson(e))),this.polylines.forEach(e=>this.hook.emit("polylineAdded",e))}toJson(){return{polylines:this.polylines.map(t=>t.toJson()).filter(t=>t.lines.length>0)}}}const Ln=i=>i.preventDefault();class hi{constructor(t){m(this,"model");m(this,"five");m(this,"group");m(this,"config");m(this,"dashed");m(this,"disposed",!1);m(this,"isMobile");m(this,"mouseGroup");m(this,"container");m(this,"fiveHelper");m(this,"hook");m(this,"magnifier");m(this,"userDistanceItemCreator");m(this,"updateDistanceUI",()=>{this.dashed.distanceItem.update(this.five),this.model.getAllLines().forEach(t=>t.distanceItem.update(this.five))});var n,o;this.five=t.five,this.hook=t.hook,this.model=t.model,this.config=t.config,this.magnifier=t.magnifier,this.container=t.container,this.fiveHelper=t.fiveHelper,this.isMobile=(o=(n=t.openParams)==null?void 0:n.isMobile)!=null?o:!1,this.userDistanceItemCreator=t.userDistanceItemCreator,this.group=t.group,this.mouseGroup=t.mouseGroup,this.dashed=new Ft(new _e([0,0,0]),new _e([0,0,0]),this.model),this.dashed.distanceItem.setItemSelectable(!1),this.dashed.mesh.setMaterial({dashed:!0,dashScale:100}),this.dashed.mesh.name="dashLine";const e=this.five.getElement();e&&(e.addEventListener("touchstart",Ln),e.addEventListener("contextmenu",Ln))}removeLine(t){this.group.remove(t.mesh,t.lightMesh),t.distanceItem.remove(),this.five.needsRender=!0}updateMouseGroup(t,e){if(!t)return this.mouseGroup;const n=this.fiveHelper.getAdsorbentPoint(t),o=n||t.point;if(this.mouseGroup.position.copy(o),e)this.mouseGroup.quaternion.copy(e.quaternion);else if(t.face){const r=t.face.normal.clone().multiplyScalar(.05),l=t.point.clone().add(r).clone().add(r);this.mouseGroup.lookAt(l)}return this.mouseGroup}dispose(){this.disposed=!0,this.magnifier.disable(),this.model.getAllLines().forEach(e=>this.removeLine(e));const t=this.five.getElement();t&&(t.removeEventListener("touchstart",Ln),t.removeEventListener("contextmenu",Ln))}}function Hi(i){const{x:t,y:e}=i.center,{clientWidth:n,clientHeight:o}=i.target,s=i.target.getBoundingClientRect(),r=new H.Vector2(t,e).sub(new H.Vector2(s.left,s.top)),a=new H.Vector2(r.x/n*2-1,-(r.y/o)*2+1);return{point:r,ndcPoint:a}}function Pi(i,t){const e=Hi(t).ndcPoint,n=new H.Raycaster;return n.setFromCamera(e,i.camera),i.model.intersectRaycaster(n)}class Sn extends hi{constructor(e){var o;super(e);m(this,"type","edit");m(this,"polyline");m(this,"pressPoint");m(this,"hasAppendDashed",!1);m(this,"hasAppendMouseGroup",!1);m(this,"fiveElement");m(this,"lastPoint",null);m(this,"hammer");m(this,"onIntersectionUpdate",lo((e,n)=>{var s;this.hasAppendMouseGroup===!1&&(this.group.add(this.mouseGroup),this.magnifier.appendTo(this.container),this.magnifier.enable(),this.hasAppendMouseGroup=!0);const o=this.updateMouseGroup(e,n).position;(s=this.pressPoint)==null||s.position.copy(o),this.updateDashed(),requestAnimationFrame(()=>this.magnifier.renderWithPoint(this.mouseGroup.position)),this.five.needsRender=!0},20));m(this,"revoke",()=>{if(this.polyline.lines.length===0&&this.lastPoint){this.lastPoint=null,this.hasAppendDashed=!1,this.dashed.distanceItem.remove(),this.group.remove(this.dashed.mesh),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.needsRender=!0;return}if(this.polyline.lines.length===0&&!this.lastPoint||!this.lastPoint)return;const e=this.polyline.lines[this.polyline.lines.length-1],n=e.findAnotherPoint(this.lastPoint);!n||(this.lastPoint=n,this.hook.emit("anchorChange",n.position),this.group.remove(e.mesh),this.polyline.removeLine(e),this.hasAppendMouseGroup=!1,this.mouseGroup.position.copy(this.lastPoint.position),this.group.remove(this.mouseGroup),e.distanceItem.remove(),this.updateDashed(),this.magnifier.disable(),this.five.needsRender=!0)});m(this,"onMouseLeave",()=>{this.magnifier.disable(),this.group.remove(this.mouseGroup),this.hasAppendMouseGroup=!1,this.lastPoint&&(this.mouseGroup.position.copy(this.lastPoint.position),this.updateDashed())});m(this,"onLineChanged",()=>{this.hook.emit("editedPolylineChange",this.polyline)});m(this,"onPress",e=>{const[n]=Pi(this.five,e);if(!(n!=null&&n.face))return;const o=new _e(n.point);this.pressPoint=o,this.onIntersectionUpdate(n)});m(this,"onPan",e=>{if(!this.pressPoint)return;const[n]=Pi(this.five,e);!(n!=null&&n.face)||this.onIntersectionUpdate(n)});m(this,"onPanEnd",e=>{!this.pressPoint||this.onTap(e)});m(this,"onTap",e=>{this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh)),this.hasAppendDashed=!0;const[n]=Pi(this.five,e);this.updateMouseGroup(n);const o=new _e(this.mouseGroup.position),s=this.lastPoint;if(o&&(this.lastPoint=o),o&&s){const r=new Ft(s,o,this.model);r.distanceItem.setItemSelectable(!1),r.distanceItem.appendTo(this.container),this.polyline.addLine(r),this.group.add(r.mesh),r.distanceItem.update(this.five)}this.pressPoint=void 0,this.hasAppendMouseGroup=!1,this.magnifier.disable(),this.group.remove(this.mouseGroup),this.updateDashed(),this.five.needsRender=!0,this.hook.emit("anchorChange",o.position)});m(this,"onWantsTapGesture",()=>!1);m(this,"onWantsToMoveToPano",()=>!1);m(this,"onWantsPanGesture",()=>this.pressPoint?!1:void 0);m(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.dashed.distanceItem.update(this.five)});m(this,"updateDashed",()=>{!this.lastPoint||(this.dashed.points[0].position.copy(this.lastPoint.position),this.dashed.points[1].position.copy(this.mouseGroup.position),this.dashed.mesh.setPoints(this.lastPoint.position,this.mouseGroup.position),this.dashed.distanceItem.update(this.five),this.hook.emit("editedDashedLineChange",this.dashed))});this.model=new fi(this.config),this.polyline=new ui({model:this.model}),this.model.addPolyline(this.polyline),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsPanGesture",this.onWantsPanGesture),this.five.on("wantsTapGesture",this.onWantsTapGesture),this.five.on("wantsToMoveToPano",this.onWantsToMoveToPano),this.five.on("intersectionOnModelUpdate",this.onIntersectionUpdate),this.polyline.hook.on("lineAdded",this.onLineChanged),this.polyline.hook.on("lineRemoved",this.onLineChanged);const n=this.five.getElement();if(n){this.fiveElement=n;const s=new gn.default(n);this.hammer=s,s.on("tap",this.onTap),s.on("pan",this.onPan),s.on("press",this.onPress),s.on("panend",this.onPanEnd)}this.five.helperVisible=!1,(o=this.fiveElement)==null||o.addEventListener("mouseleave",this.onMouseLeave),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.refresh()}dispose(){var e,n;super.dispose(),this.five.helperVisible=!0,this.group.remove(this.mouseGroup,this.dashed.mesh),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsPanGesture",this.onWantsPanGesture),this.five.off("wantsTapGesture",this.onWantsTapGesture),this.five.off("wantsToMoveToPano",this.onWantsToMoveToPano),this.five.off("intersectionOnModelUpdate",this.onIntersectionUpdate),this.polyline.hook.off("lineAdded",this.onLineChanged),this.polyline.hook.off("lineRemoved",this.onLineChanged),(e=this.hammer)==null||e.destroy(),(n=this.fiveElement)==null||n.removeEventListener("mouseleave",this.onMouseLeave),this.magnifier.dispose(),this.dashed.distanceItem.remove(),this.five.needsRender=!0}getEditingLines(){return this.polyline.lines}}class vs extends hi{constructor(e){super(e);m(this,"type","view");m(this,"hammer");m(this,"polylineRemoved",e=>{e.lines.forEach(n=>this.removeLine(n)),this.hook.emit("selectedChange",this.model.getAllLines().filter(n=>n.selected).map(n=>n))});m(this,"polylineAdded",e=>{e.lines.forEach(n=>{n.distanceItem.appendTo(this.container),n.distanceItem.update(this.five),this.group.add(n.mesh)})});m(this,"onCameraUpdate",()=>{this.updateDistanceUI()});m(this,"onFivePanoWillArrive",e=>{this.model.polylines.forEach(n=>{!n.visiblePanoIndexes||n.visiblePanoIndexes.includes(e)||n.lines.forEach(o=>{o.mesh.visible=!1,o.distanceItem.update(this.five)})})});m(this,"onFivePanoArrived",e=>{this.model.polylines.forEach(n=>{!n.visiblePanoIndexes||n.visiblePanoIndexes.includes(e)&&n.lines.forEach(o=>{o.mesh.visible=!0,o.distanceItem.update(this.five)})})});this.model.getAllLines().forEach(o=>{o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)});const n=this.five.getElement();if(n){const o=new gn.default(n);this.hammer=o}this.updateDistanceUI(),this.five.needsRender=!0,this.model.hook.on("polylineAdded",this.polylineAdded),this.model.hook.on("polylineRemoved",this.polylineRemoved),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive)}dispose(){var e;super.dispose(),this.model.hook.off("polylineAdded",this.polylineAdded),this.model.hook.off("polylineRemoved",this.polylineRemoved),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}}const Uf=`
208
+ `,w=document.createElement("div");return w.setAttribute("class","PanoRulerPlugin-rule"),w.setAttribute("data-name",A),w.setAttribute("style","display: none"),w.innerHTML=v,w},o=document.createElement("div");o.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;");const s=document.createElement("div");s.innerHTML=uf,o.appendChild(s);const r={},a=(A,g)=>{if(e.loaded)throw new Error("\u6807\u5C3A\u88AB\u91CD\u590D\u521D\u59CB\u5316\uFF01");const v=hf(A,i),w=i.work;if(!w)return!1;for(const y in g){const P=g[y],{standingPosition:I}=w.observers[0],C=P.map(({x:L,z:D,observers:B})=>{const N=B.length>0?A.rooms[A.observers[B[0]]].name:"",F=v[N]?v[N].floor:null;let X=1/0,j={index:0,x:I.x,y:I.y,z:I.z};B.forEach(_=>{if(!w.observers[_])return;const{standingPosition:J}=w.observers[_],de={index:_,x:J.x,y:J.y,z:J.z},ue=ff({x:L,z:D},de);F?ue<X&&Math.abs(de.y-F)<.3&&(X=ue,j=de):ue<X&&(X=ue,j=de)});const E=new H.Vector3(L,j.y,D);Object.assign(E,{observers:B});const R=v[N]?v[N].roof:null,O=R?new H.Vector3(L,R,D):null;return O&&Object.assign(O,{observers:B}),{origin:E,vertical:O}});r[y]={origins:C.map(L=>L.origin),rules:[]};for(const{origin:L,vertical:D}of C){if(!D)continue;const B=n(y,L.distanceTo(D));o.append(B),r[y].rules.push({vertical:!0,rule:[L,D],$element:B})}for(let L=0;L<C.length;L++){let D=L+1;D>=C.length&&(D=0);const{origin:B}=C[L],{origin:N}=C[D],F=n(y,B.distanceTo(N));o.append(F),r[y].rules.push({vertical:!1,rule:[B,N],$element:F})}}return e.loaded=!0,!0},l=(A,g,v)=>Y(exports,null,function*(){const w=A||t.roomInfo,y=g||t.roomRules;if(!w||!y)throw new Error("\u6807\u5C3A\u6570\u636E\u4F9D\u8D56\u4E0D\u9F50\u5168\uFF01");return e.loaded=!1,e.options=G(G({},e.options),v||{}),i.model.loaded?a(w,y):yield new Promise(P=>i.once("modelLoaded",()=>P(a(w,y))))});t.roomInfo&&t.roomRules&&l(t.roomInfo,t.roomRules);const c=(A,g,v,w)=>{const y=[[{x:0,y:0},{x:v,y:0}],[{x:0,y:0},{x:0,y:w}],[{x:v,y:0},{x:v,y:w}],[{x:0,y:w},{x:v,y:w}]],P=[];for(let I=0;I<y.length;I++){const C=Ma([A,g],[y[I][0],y[I][1]],!0);C&&P.push(C)}return P.length===0?!1:P},d=()=>{var B;const A=(B=i.getElement())==null?void 0:B.parentElement;if(!A||!e.loaded||Object.keys(r).length<=0)return;const{panoIndex:g,camera:v,currentMode:w}=i;if(g===void 0)return;let y;for(const N in r)N.split(",").indexOf(g.toString())>=0&&(y=N);if(!y){for(const N in r)for(const{$element:F}of r[N].rules)F.style.display="none";return}const P=v.position,I=v.getWorldDirection(new H.Vector3),C=A.clientWidth,L=A.clientHeight;if(w!==be.Five.Mode.Panorama){for(const N in r)for(const{$element:F}of r[N].rules)F.style.display="none";return}for(const N in r)for(const{$element:F}of r[N].rules)F.style.display=N===y?"block":"none";const[D]=r[y].origins.slice().filter(N=>N.observers.indexOf(g)>=0).sort((N,F)=>{const X=N.clone().setY(0).sub(P).normalize().angleTo(I.clone().setY(0)),j=F.clone().setY(0).sub(P).normalize().angleTo(I.clone().setY(0));return X-j});for(const{rule:N,vertical:F,$element:X}of r[y].rules){const[j,E]=N,R=X.querySelector(".PanoRulerPlugin-rule-line");if(!R)return;if(!D){X.style.display="none";continue}if(j!==D&&E!==D){X.style.display="none";continue}if(j.distanceTo(E)<.3){X.style.display="none";continue}if(j.observers.indexOf(g)===-1||E.observers.indexOf(g)===-1){X.style.display="none";continue}if(j.clone().sub(P).normalize().angleTo(I)>Math.PI/2){X.style.display="none";continue}if(E.clone().sub(P).normalize().angleTo(I)>Math.PI/2){X.style.display="none";continue}const U=j.distanceTo(E);if(E.clone().sub(E.clone().sub(j).divide(new H.Vector3(2,2,2))).distanceTo(P)/U>8){X.style.display="none";continue}const de=j.clone().project(v),ue=(de.x+1)/2*C,me=(-de.y+1)/2*L,Pe=E.clone().project(v),Me=(Pe.x+1)/2*C,Re=(-Pe.y+1)/2*L,ae=Math.sqrt(Math.pow(Me-ue,2)+Math.pow(Re-me,2));let ve=ae,Ce=50;const ce=c({x:~~ue,y:~~me},{x:~~Me,y:~~Re},C,L);if(ce&&ce.length===1&&(D===j?(ve=Math.sqrt(Math.pow(ce[0].x-ue,2)+Math.pow(ce[0].y-me,2)),Ce=ve/ae*50):D===E&&(ve=Math.sqrt(Math.pow(ce[0].x-Me,2)+Math.pow(ce[0].y-Re,2)),Ce=100-ve/ae*50)),ce&&ce.length===2){const ut={x:(ce[0].x+ce[1].x)/2,y:(ce[0].y+ce[1].y)/2};Ce=Math.sqrt(Math.pow(ut.x-ue,2)+Math.pow(ut.y-me,2))/ae*100}const kt=(Math.PI/2-Math.atan2(Me-ue,me-Re))/Math.PI*180,ge=R.querySelector(".PanoRulerPlugin-rule-label"),dt=ge.children[0].clientWidth;dt>=ae||dt/2>=Ce/100*ae||dt/2>=(1-Ce/100)*ae?R.style.display="none":(R.style.display="block",R.style.width=ae+"px",R.style.left=ue+"px",R.style.top=me+"px",R.style.transform=`rotate(${-kt}deg)`,ge.style.left=`${Ce}%`)}},f=()=>za(d),u=()=>{var A,g;return e.loaded?(e.enable||(o.setAttribute("class","PanoRulerPlugin"+(e.options.className?" "+e.options.className:"")),(g=(A=i.getElement())==null?void 0:A.parentElement)==null||g.append(o),d(),i.on("modeChange",d),i.on("cameraUpdate",f),e.enable=!0),!0):!1},h=()=>(e.enable&&(i.off("modeChange",d),i.off("cameraUpdate",f),o&&o.remove(),e.enable=!1),!0);function p(A){if(A.distanceText&&A.distanceText!==e.options.distanceText){const g=A.distanceText;e.options.distanceText=g,Object.values(r).forEach(v=>{v.rules.forEach(w=>{const[y,P]=w.rule,I=y.distanceTo(P),C=w.$element.querySelector(".PanoRulerPlugin-rule-label-name");!C||(C.innerText=g(I))})})}}return{enable:u,disable:h,load:l,state:e,changeConfigs:p}};function pf(i){le(i,"svelte-1h27ktp",".PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp{position:absolute;transform-origin:left 0.0625rem;width:0;height:0.125rem;pointer-events:none}.PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp::after{content:'';position:absolute;left:-0.125rem;top:-0.1rem;width:0.25rem;height:0.25rem;border-radius:50%;background:#fff;z-index:1;animation:svelte-1h27ktp-viewport-rule-point 0.1s 1s;animation-fill-mode:both}.PanoRulerPlugin-rule-line.svelte-1h27ktp.svelte-1h27ktp::before{content:'';position:absolute;right:-0.125rem;top:-0.1rem;width:0.25rem;height:0.25rem;border-radius:50%;background:#fff;z-index:1;animation:svelte-1h27ktp-viewport-rule-point 0.1s 1.5s;animation-fill-mode:both}.PanoRulerPlugin-rule-line.svelte-1h27ktp em.svelte-1h27ktp{display:block;height:0.0625rem;animation:svelte-1h27ktp-viewport-rule-line 0.5s ease 1s;animation-fill-mode:both;box-shadow:0 0 0.25rem rgb(0 0 0 / 40%);position:relative}.rule-mixed-line.svelte-1h27ktp.svelte-1h27ktp{display:flex;height:0.0625rem;animation:svelte-1h27ktp-viewport-rule-line 0.5s ease 1s;animation-fill-mode:both;align-items:center}.em-solid.svelte-1h27ktp.svelte-1h27ktp{height:100%;background:#ffffff}.em-dotted.svelte-1h27ktp.svelte-1h27ktp{height:0.125rem;background:var(--background-image);background-position:center;background-repeat:repeat}.PanoRulerPlugin-rule-label.svelte-1h27ktp.svelte-1h27ktp{position:absolute;width:0;height:0;top:0.0625rem;pointer-events:none}.PanoRulerPlugin-rule-label-name.svelte-1h27ktp.svelte-1h27ktp{position:absolute;padding:0.1875rem 0.375rem;background:rgba(195, 195, 195, 0.3);backdrop-filter:blur(0.25rem);-webkit-backdrop-filter:blur(0.25rem);border-radius:6.25rem;border:0.0625rem solid rgba(255, 255, 255, 0.6);white-space:nowrap;overflow:hidden;color:#ffffff;font-weight:500;font-size:0.75rem;line-height:1;animation:svelte-1h27ktp-viewport-rule-label 0.25s ease 1s;animation-fill-mode:both;box-shadow:inset 0 0 0.625rem 0 rgba(255, 255, 255, 0.3)}@keyframes svelte-1h27ktp-viewport-rule-line{0%{width:0%}100%{width:100%}}@keyframes svelte-1h27ktp-viewport-rule-label{0%{opacity:0;transform:scaleX(0)}100%{opacity:1;transform:translate(-50%, -50%) scaleX(1)}}@keyframes svelte-1h27ktp-viewport-rule-point{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}")}function fs(i,t,e){const n=i.slice();return n[6]=t[e],n}function gf(i){let t,e=i[0].children,n=[];for(let o=0;o<e.length;o+=1)n[o]=hs(fs(i,e,o));return{c(){t=V("div");for(let o=0;o<n.length;o+=1)n[o].c();b(t,"class","rule-mixed-line svelte-1h27ktp")},m(o,s){z(o,t,s);for(let r=0;r<n.length;r+=1)n[r].m(t,null)},p(o,s){if(s&9){e=o[0].children;let r;for(r=0;r<e.length;r+=1){const a=fs(o,e,r);n[r]?n[r].p(a,s):(n[r]=hs(a),n[r].c(),n[r].m(t,null))}for(;r<n.length;r+=1)n[r].d(1);n.length=e.length}},d(o){o&&M(t),lt(n,o)}}}function Af(i){let t,e;return{c(){t=V("em"),b(t,"class",e=je(i[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),b(t,"style",i[3])},m(n,o){z(n,t,o)},p(n,o){o&1&&e!==(e=je(n[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&b(t,"class",e),o&8&&b(t,"style",n[3])},d(n){n&&M(t)}}}function hs(i){let t,e,n=`${i[6].width}px`;return{c(){t=V("div"),b(t,"class",e=je(i[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),b(t,"style",i[3]),T(t,"width",n)},m(o,s){z(o,t,s)},p(o,s){s&1&&e!==(e=je(o[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&b(t,"class",e),s&8&&b(t,"style",o[3]),s&1&&n!==(n=`${o[6].width}px`)&&T(t,"width",n)},d(o){o&&M(t)}}}function vf(i){let t,e,n,o,s=i[0].labelElement+"",r,a,l=`${i[0].labelOffset}%`,c=`${i[0].width}px`,d=`${i[0].left}px`,f=`${i[0].top}px`,u=`rotate(${i[0].rotateDeg}deg)`;function h(g,v){return g[0].children.length===0?Af:gf}let p=h(i),A=p(i);return{c(){t=V("div"),A.c(),e=ee(),n=V("div"),o=V("div"),r=Ee(s),b(o,"class","PanoRulerPlugin-rule-label-name svelte-1h27ktp"),De(()=>i[4].call(o)),b(n,"class","PanoRulerPlugin-rule-label svelte-1h27ktp"),T(n,"left",l),b(t,"class","PanoRulerPlugin-rule-line svelte-1h27ktp"),T(t,"width",c),T(t,"left",d),T(t,"top",f),T(t,"transform",u),T(t,"display",i[0].visible&&i[2]?"block":"none")},m(g,v){z(g,t,v),A.m(t,null),Q(t,e),Q(t,n),Q(n,o),Q(o,r),a=Et(o,i[4].bind(o))},p(g,[v]){p===(p=h(g))&&A?A.p(g,v):(A.d(1),A=p(g),A&&(A.c(),A.m(t,e))),v&1&&s!==(s=g[0].labelElement+"")&&xe(r,s),v&1&&l!==(l=`${g[0].labelOffset}%`)&&T(n,"left",l),v&1&&c!==(c=`${g[0].width}px`)&&T(t,"width",c),v&1&&d!==(d=`${g[0].left}px`)&&T(t,"left",d),v&1&&f!==(f=`${g[0].top}px`)&&T(t,"top",f),v&1&&u!==(u=`rotate(${g[0].rotateDeg}deg)`)&&T(t,"transform",u),v&5&&T(t,"display",g[0].visible&&g[2]?"block":"none")},i:Z,o:Z,d(g){g&&M(t),A.d(),a()}}}function bf(i,t,e){let n,{rulerItemProp:o}=t,s=!0,r,a="data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjQiIHdpZHRoPSIxMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGZpbHRlciBpZD0icHJlZml4X19hIiBoZWlnaHQ9IjQwMCUiIHdpZHRoPSIxMzcuNCUiIHg9Ii0xOC43JSIgeT0iLTE1MCUiPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iZGlsYXRlIiByYWRpdXM9Ii41IiByZXN1bHQ9InNoYWRvd1NwcmVhZE91dGVyMSIvPjxmZU9mZnNldCBpbj0ic2hhZG93U3ByZWFkT3V0ZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiByYWRpdXM9IjEiIHJlc3VsdD0ic2hhZG93SW5uZXIiLz48ZmVPZmZzZXQgaW49InNoYWRvd0lubmVyIiByZXN1bHQ9InNoYWRvd0lubmVyIi8+PGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIGluMj0ic2hhZG93SW5uZXIiIG9wZXJhdG9yPSJvdXQiIHJlc3VsdD0ic2hhZG93T2Zmc2V0T3V0ZXIxIi8+PGZlR2F1c3NpYW5CbHVyIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIgc3RkRGV2aWF0aW9uPSIuNSIvPjxmZUNvbG9yTWF0cml4IGluPSJzaGFkb3dCbHVyT3V0ZXIxIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuMiAwIi8+PC9maWx0ZXI+PHBhdGggaWQ9InByZWZpeF9fYiIgZD0iTS44ODkgMkgxMS41OCIvPjwvZGVmcz48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS1kYXNoYXJyYXk9IjUgNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuNCIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjwvZz48L3N2Zz4=";function l(){r=this.offsetWidth,e(1,r)}return i.$$set=c=>{"rulerItemProp"in c&&e(0,o=c.rulerItemProp)},i.$$.update=()=>{i.$$.dirty&3&&(r>=o.width||r/2>=o.labelOffset/100*o.width||r/2>=(1-o.labelOffset/100)*o.width?e(2,s=!1):e(2,s=!0))},e(3,n=`--background-image: url(${a})`),[o,r,s,n,l]}class yf extends oe{constructor(t){super(),ie(this,t,bf,vf,ne,{rulerItemProp:0},pf)}}function ms(i,t,e){const n=i.slice();return n[12]=t[e],n}function ps(i){let t,e;return t=new yf({props:{rulerItemProp:i[12]}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&1&&(s.rulerItemProp=n[12]),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function wf(i){let t,e,n=i[0],o=[];for(let r=0;r<n.length;r+=1)o[r]=ps(ms(i,n,r));const s=r=>S(o[r],1,1,()=>{o[r]=null});return{c(){t=V("div");for(let r=0;r<o.length;r+=1)o[r].c()},m(r,a){z(r,t,a);for(let l=0;l<o.length;l+=1)o[l].m(t,null);e=!0},p(r,[a]){if(a&1){n=r[0];let l;for(l=0;l<n.length;l+=1){const c=ms(r,n,l);o[l]?(o[l].p(c,a),k(o[l],1)):(o[l]=ps(c),o[l].c(),k(o[l],1),o[l].m(t,null))}for(se(),l=n.length;l<o.length;l+=1)s(l);re()}},i(r){if(!e){for(let a=0;a<n.length;a+=1)k(o[a]);e=!0}},o(r){o=o.filter(Boolean);for(let a=0;a<o.length;a+=1)S(o[a]);e=!1},d(r){r&&M(t),lt(o,r)}}}function Cf(i,t,e){var A,g,v,w;let{five:n}=t,{rulerDatas:o}=t,{options:s}=t,r=[];const a=((g=(A=n.getElement())==null?void 0:A.parentElement)==null?void 0:g.clientWidth)||0,l=((w=(v=n.getElement())==null?void 0:v.parentElement)==null?void 0:w.clientHeight)||0,c=(y,P)=>{const I=[[{x:0,y:0},{x:a,y:0}],[{x:0,y:0},{x:0,y:l}],[{x:a,y:0},{x:a,y:l}],[{x:0,y:l},{x:a,y:l}]],C=[];for(let L=0;L<I.length;L++){const D=Ma([y,P],[I[L][0],I[L][1]],!0);D&&C.push(D)}return C.length===0?!1:C},d=(y,P)=>{const I=y.clone().project(n.camera),C=(I.x+1)/2*a,L=(-I.y+1)/2*l,D=P.clone().project(n.camera),B=(D.x+1)/2*a,N=(-D.y+1)/2*l,F=Math.sqrt(Math.pow(B-C,2)+Math.pow(N-L,2));return{startLeft:C,startTop:L,endLeft:B,endTop:N,distance:F}},f=(y,P,I)=>{const C=n.camera.position,L=n.camera.getWorldDirection(new H.Vector3),D=y.clone().sub(C).normalize().angleTo(L),B=P.clone().sub(C).normalize().angleTo(L),N=y.distanceTo(P),X=P.clone().sub(P.clone().sub(y).divide(new H.Vector3(2,2,2))).distanceTo(C),{startLeft:j,startTop:E,endLeft:R,endTop:O,distance:W}=d(y,P),_=-((Math.PI/2-Math.atan2(R-j,E-O))/Math.PI)*180;let J=!0;I||(J=!1),!Je(y,I)&&!Je(P,I)&&(J=!1),N<.3&&(J=!1),D>Math.PI/2&&(J=!1),B>Math.PI/2&&(J=!1),X/N>8&&(J=!1);let de=50,ue=W;const me=c({x:~~j,y:~~E},{x:~~R,y:~~O});if(me&&me.length===1&&(Je(y,I)?(ue=Math.sqrt(Math.pow(me[0].x-j,2)+Math.pow(me[0].y-E,2)),de=ue/W*50):Je(P,I)&&(ue=Math.sqrt(Math.pow(me[0].x-R,2)+Math.pow(me[0].y-O,2)),de=100-ue/W*50)),me&&me.length===2){const Pe={x:(me[0].x+me[1].x)/2,y:(me[0].y+me[1].y)/2};de=Math.sqrt(Math.pow(Pe.x-j,2)+Math.pow(Pe.y-E,2))/W*100}return{startLeft:j,startTop:E,distance:W,deg:_,visible:J,labelOffset:de,ruleLength:N}},u=()=>{const y=n.panoIndex,P=o.find(F=>F.panoIndex===y);if(!P)return e(0,r=[]);if(n.currentMode!==be.Five.Mode.Panorama)return e(0,r=[]);const I=n.camera.position,C=n.camera.getWorldDirection(new H.Vector3),L=P.lines.map(F=>new H.Vector3(F.start[0],-F.start[1],-F.start[2])),D=P.lines.map(F=>new H.Vector3(F.end[0],-F.end[1],-F.end[2])),[B]=L.concat(D).sort((F,X)=>{const j=F.clone().setY(0).sub(I).normalize().angleTo(C.clone().setY(0)),E=X.clone().setY(0).sub(I).normalize().angleTo(C.clone().setY(0));return j-E}),N=P.lines.map(F=>{var ue,me;const X=F.start,j=F.end,{startLeft:E,startTop:R,distance:O,deg:W,visible:U,labelOffset:_,ruleLength:J}=f(new H.Vector3(X[0],-X[1],-X[2]),new H.Vector3(j[0],-j[1],-j[2]),B),de=[];return F.children&&((ue=F.children)==null?void 0:ue.length)>0&&((me=F.children)==null||me.forEach(Pe=>{const Me=Pe.start,Re=Pe.end,{distance:ae}=d(new H.Vector3(Me[0],-Me[1],-Me[2]),new H.Vector3(Re[0],-Re[1],-Re[2]));de.push({width:ae,state:Pe.state})})),{width:O,left:E,top:R,rotateDeg:W,state:F.state,children:de,labelOffset:_,visible:U,labelElement:s.distanceText(J)}});e(0,r=N)},h=()=>ci(u),p=lo(u,80);return Ze(()=>{u(),n.on("panoArrived",u),n.on("modeChange",u),n.on("cameraDirectionUpdate",h),n.on("movingToPano",h),n.on("mouseWheel",()=>p()),n.on("pinchGesture",()=>p())}),It(()=>{n.off("panoArrived",u),n.off("modeChange",u),n.off("cameraDirectionUpdate",h),n.off("movingToPano",h),n.off("mouseWheel",()=>p()),n.off("pinchGesture",()=>p())}),i.$$set=y=>{"five"in y&&e(1,n=y.five),"rulerDatas"in y&&e(2,o=y.rulerDatas),"options"in y&&e(3,s=y.options)},[r,n,o,s]}class Ef extends oe{constructor(t){super(),ie(this,t,Cf,wf,ne,{five:1,rulerDatas:2,options:3})}}class Pf{constructor(t,e){m(this,"five");m(this,"container",document.createElement("div"));m(this,"panoRulerProData");m(this,"rulerItems");m(this,"state",{enabled:!1,loaded:!1,options:{className:"",distanceText:t=>`${t.toFixed(1)}m`}});var n,o;this.five=t,this.container.classList.add("panoRulerProPlugin-container"),this.container.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;"),e&&(e.data&&this.load(e.data),this.state.options=G(G({},this.state.options),e.options||{}),(n=e.options)!=null&&n.className&&this.container.classList.add((o=e.options)==null?void 0:o.className)),this.five.once("modelLoaded",()=>Y(this,null,function*(){var s,r;(r=(s=this.five.getElement())==null?void 0:s.parentNode)==null||r.append(this.container)})),this.five.once("dispose",()=>this.dispose())}load(t){return Y(this,null,function*(){if(!this.five.work)return;const e=t.data;if(!e)throw new Error("\u6807\u5C3A\u6570\u636E\u4F9D\u8D56\u4E0D\u9F50\u5168\uFF01");this.panoRulerProData=e,this.state.loaded=!0})}enable(){return this.state.loaded?(this.state.enabled||(this.state.enabled=!0,this.render()),!0):!1}disable(){return this.state.enabled&&(this.state.enabled=!1,this.render()),!0}render(){return Y(this,null,function*(){var t;if(this.state.enabled){if(!this.panoRulerProData||!this.container)return;this.rulerItems=new Ef({target:this.container,props:{five:this.five,rulerDatas:this.panoRulerProData,options:this.state.options}})}else(t=this.rulerItems)==null||t.$destroy(),this.rulerItems=void 0})}dispose(){this.container&&(this.rulerItems.$destroy(),this.rulerItems=void 0),this.container.remove()}}const If=(i,t)=>new Pf(i,t),kf="data:image/png;base64,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";function xf(){const i=document.createElement("div"),t=document.createElement("i"),e=document.createElement("span");return i.appendChild(t),i.appendChild(e),i.style.position="relative",i.style.width="100%",i.style.display="flex",i.style.flexDirection="column",i.style.alignItems="center",i.style.marginTop=`${150/16}rem`,i.style.opacity="0",i.style.transition="opacity 1000ms linear",t.style.display="block",t.style.width=`${134/16}rem`,t.style.height=`${22/16}rem`,t.style.backgroundSize="100%",t.style.backgroundRepeat="no-repeat",t.style.backgroundImage=`url(${kf})`,e.style.marginTop=`${10/16}rem`,e.style.fontSize=`${16/16}rem`,e.style.color="#fff",e.style.opacity="0.7",e.style.textShadow="0 2px 16px rgb(22 34 83 / 24%)",e.style.fontWeight="bold",{appendTo(n){n.appendChild(i)},dispose(){i.remove()},setRoom(n){e.innerHTML=n.name+" "+Math.floor(n.size/1e6)+"\u33A1"},show(){i.style.opacity="1"},hide(){i.style.opacity="0"}}}const Df=new x.TextureLoader;function gs(i){return Y(this,null,function*(){return new Promise((t,e)=>{Df.load(i,t,void 0,e)}).then(t=>(t.encoding=x.sRGBEncoding,t))})}const xn={userAction:!0};class Lf extends Ht{constructor(e,n){super(e);m(this,"state",{visible:!0,enabled:!0,config:{compassImageUrl:"//vrlab-image4.ljcdn.com/release/web/v3/north-point-circle.96498e69.png",entryDoorImageUrl:"//vrlab-image4.ljcdn.com/release/web/enterDoor.831b8208.png"}});m(this,"data");m(this,"group",new x.Group);m(this,"roomInfoInstance");m(this,"roomInfoWrapperInstance");m(this,"compassMeshTween");m(this,"compassMesh");m(this,"entryDoorMesh");m(this,"dispose",()=>{var e,n,o,s;this.five.scene.remove(this.group),this.group.remove(...this.group.children),(n=(e=this.compassMesh)==null?void 0:e.material.map)==null||n.dispose(),(s=(o=this.entryDoorMesh)==null?void 0:o.material.map)==null||s.dispose(),this.five.off("dispose",this.dispose),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});m(this,"_addEventListener",()=>{this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive),this.five.on("modeChange",this.onFiveModeChange),this.five.on("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});m(this,"_removeEventListener",()=>{this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("modeChange",this.onFiveModeChange),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});m(this,"_enable",()=>{this.five.scene.add(this.group),this.init(),this.onFivePanoArrived(this.five.panoIndex||0),this._addEventListener()});m(this,"_disable",()=>{this._clearCompassIfNeed(),this._clearEntryDoorIfNeed(),this.five.scene.remove(this.group),this._removeEventListener()});m(this,"_toggleVisible",()=>{this.group.visible=this.state.visible,this.five.needsRender=!0});m(this,"_clearCompassIfNeed",()=>{var e;this.compassMesh&&(this.group.remove(this.compassMesh),(e=this.compassMesh.material.map)==null||e.dispose(),this.compassMesh=null)});m(this,"_clearEntryDoorIfNeed",()=>{var e;this.entryDoorMesh&&(this.group.remove(this.entryDoorMesh),(e=this.entryDoorMesh.material.map)==null||e.dispose(),this.entryDoorMesh=null),this.roomInfoInstance&&(this.roomInfoInstance.dispose(),this.roomInfoInstance=null),this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.dispose(),this.roomInfoWrapperInstance=null)});m(this,"onFivePanoWillArrive",e=>{var n,o;e!==this.five.panoIndex&&((n=this.compassMeshTween)==null||n.dispose(),(o=this.compassMesh)==null||o.material.setValues({opacity:0}))});m(this,"onFivePanoArrived",e=>{var o,s,r,a,l,c,d;const n=(r=(s=(o=this.five.work)==null?void 0:o.observers)==null?void 0:s[e])==null?void 0:r.standingPosition;if(this.compassMesh&&(this.compassMesh.position.copy(n.clone().setY(n.y+.01)),this.compassMesh.material.opacity===0&&((a=this.compassMeshTween)==null||a.dispose(),this.compassMeshTween=La(1e3).onUpdate(({progress:f})=>{var u;(u=this.compassMesh)==null||u.material.setValues({opacity:f}),this.five.needsRender=!0}).play())),this.entryDoorMesh){const u=new x.Vector3(this.data.entrance.position.x,this.data.entrance.position.y,this.data.entrance.position.z).clone().setY(n.y).sub(n).normalize(),h=n.clone().add(u.clone().multiplyScalar(.7)).setY(n.y+.01);this.entryDoorMesh.rotation.z=new x.Vector3(0,0,-1).angleTo(u),this.entryDoorMesh.position.copy(h),((l=this.data)==null?void 0:l.room_observers[e].room.type)===1?(c=this.entryDoorMesh)==null||c.material.setValues({opacity:1}):(d=this.entryDoorMesh)==null||d.material.setValues({opacity:0})}this.roomInfoInstance&&this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.css3DObject.position.copy(n.clone().setY(n.y+.01)),this.roomInfoInstance.setRoom(this.data.room_observers[e].room)),this.five.needsRender=!0});m(this,"onFiveCameraDirectionUpdate",({longitude:e,latitude:n})=>{var o,s;!this.roomInfoWrapperInstance||(this.roomInfoWrapperInstance.css3DObject.rotation.z=e,n>.66&&this.five.getCurrentState().mode==="Panorama"?(o=this.roomInfoInstance)==null||o.show():(s=this.roomInfoInstance)==null||s.hide())});m(this,"onFiveModeChange",(e,n,o,s,r)=>{e!==n&&this.setState({visible:e===be.Five.Mode.Panorama},{userAction:r})});this.five.scene.add(this.group),this.five.once("dispose",this.dispose),this.setState({visible:!0,enabled:!0,config:G(G({},this.state.config),n||{})})}enable(e=xn){this.setState({enabled:!0},e)}disable(e=xn){this.setState({enabled:!1},e)}show(e=xn){if(!!this.state.enabled)return this.setState({visible:!0},e),Promise.resolve()}hide(e=xn){if(!!this.state.enabled)return this.setState({visible:!1},e),Promise.resolve()}setState(e,n={userAction:!0}){var s,r;const o=JSON.parse(JSON.stringify(this.state));this.state={visible:(s=e.visible)!=null?s:o.visible,enabled:(r=e.enabled)!=null?r:o.enabled,config:G(G({},o.config),e.config||{})},this.hooks.emit("stateChange",{state:this.state,prevState:o,userAction:n.userAction}),e.enabled===!0&&(this._enable(),this.hooks.emit("enable",n)),e.enabled===!1&&(this._disable(),this.hooks.emit("disable",n)),e.visible===!1&&(this._toggleVisible(),this.hooks.emit("hide",n)),e.visible===!0&&(this._toggleVisible(),this.hooks.emit("show",n)),e.config&&this.init()}load(e,n,o=!0){return Y(this,null,function*(){const s=yield this.formatData(e);JSON.stringify(this.data)!==JSON.stringify(s)&&(this.hooks.emit("dataChange",s,this.data),this.data=G({},s),this.init(),n&&this.setState(n,{userAction:o}),this.hooks.emit("dataLoaded",this.data))})}formatData(e){return e.version&&e.data?Promise.resolve(e.data):Promise.resolve(e)}init(){return Y(this,null,function*(){var o,s,r,a;const e=(s=(o=this.data)==null?void 0:o.north_rad)!=null?s:null;this._clearCompassIfNeed(),e!==null&&(this.compassMesh=yield this.loadCompassMesh(),this.compassMesh.rotateX(-Math.PI/2),this.compassMesh.rotateZ(e-Math.PI/2),this.group.add(this.compassMesh));const n=(a=(r=this.data)==null?void 0:r.entrance)!=null?a:null;this._clearEntryDoorIfNeed(),n!==null&&(this.entryDoorMesh=yield this.loadEntryDoorMesh(),this.roomInfoWrapperInstance=this.loadRoomInfo(),this.roomInfoInstance=xf(),this.entryDoorMesh.rotateX(-Math.PI/2),this.roomInfoWrapperInstance&&this.roomInfoInstance.appendTo(this.roomInfoWrapperInstance.container),this.group.add(this.entryDoorMesh)),this.onFivePanoArrived(this.five.panoIndex||0),this.five.needsRender=!0})}loadCompassMesh(){return Y(this,null,function*(){const e=this.state.config.compassImageUrl,n=yield gs(e),o=new x.CircleGeometry(.7,32),s=new x.MeshBasicMaterial({map:n,transparent:!0,opacity:0,depthTest:!1}),r=new x.Mesh(o,s);return r.name="pano-compass-mesh",r})}loadEntryDoorMesh(){return Y(this,null,function*(){const e=this.state.config.entryDoorImageUrl,n=yield gs(e),o=new x.PlaneGeometry(.2,.16),s=new x.MeshBasicMaterial({map:n,transparent:!0,opacity:.8,depthTest:!1}),r=new x.Mesh(o,s);return r.name="pano-compass-entry-door",r})}loadRoomInfo(){const e=[new x.Vector3(-.7,0,-.7),new x.Vector3(.7,0,-.7),new x.Vector3(.7,0,.7),new x.Vector3(-.7,0,.7)];return en(this.five).create3DDomContainer(e)}}const Sf=(i,t)=>new Lf(i,t);function Dn(i,t,e){const n=i[t],o=i[e];n===void 0||o===void 0||(i[t]=o,i[e]=n)}function Tf(i,t,e){const n=e/2;for(let o=1;o<=n;o++){const s=e-(o-1);for(let r=1;r<=t;r++){const a=(o-1)*t+r-1,l=(s-1)*t+r-1;Dn(i,a*4+0,l*4+0),Dn(i,a*4+1,l*4+1),Dn(i,a*4+2,l*4+2),Dn(i,a*4+3,l*4+3)}}}class Ba{constructor(t,e){m(this,"width");m(this,"height");m(this,"containerDom");m(this,"hooks",new be.Subscribe);m(this,"canvas",document.createElement("canvas"));m(this,"five");m(this,"scale");m(this,"config");m(this,"offset",{x:0,y:0});m(this,"context");m(this,"renderCenter",new x.Vector3);m(this,"hammer");m(this,"state",{enabled:!1});m(this,"offsetRange");m(this,"isPanning",!1);m(this,"onPanstart",()=>{this.isPanning=!0,this.canvas.style.boxShadow="0 2px 30px 0 rgba(0,0,0,0.20)"});m(this,"onPan",t=>{if(!this.isPanning||!this.offsetRange||this.hooks.emit("wantsPanGesture",t))return;const{translateX:n,translateY:o}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${n}px, ${o}px, 100px)`});m(this,"onPanend",t=>{if(this.isPanning=!1,this.canvas.style.boxShadow="none",!this.offsetRange)return;const{translateX:e,translateY:n}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${e}px, ${n}px, 100px)`,this.offset={x:e,y:n}});var o,s,r;if(!t.renderer)throw new Error("Five Render \u672A\u521D\u59CB\u5316");this.five=t,this.scale=(o=e==null?void 0:e.scale)!=null?o:2,this.width=(s=e==null?void 0:e.width)!=null?s:190,this.height=(r=e==null?void 0:e.height)!=null?r:190,this.config={dragEnabled:(e==null?void 0:e.dragEnabled)||!1,autoFixPCPosition:(e==null?void 0:e.autoFixPCPosition)||!1,initialPosition:(e==null?void 0:e.initialPosition)||{left:"0",top:"0"}};const n=this.canvas.getContext("2d");if(!n)throw new Error("CANNOT CREATE CONTEXT2D");this.context=n,this.config.dragEnabled&&(this.hammer=new gn.default(this.canvas),this.hammer.on("pan",this.onPan),this.hammer.on("panstart",this.onPanstart),this.hammer.on("panend",this.onPanend)),this.initStyle()}dispose(){var t;this.clear(),this.disable(),(t=this.hammer)==null||t.destroy()}enable(){if(!this.state.enabled)return this.state.enabled=!0,this.containerDom&&this._appendTo(this.containerDom),this}disable(){if(!!this.state.enabled)return this.state.enabled=!1,this.canvas.remove(),this}appendTo(t){return this.containerDom=t,this.state.enabled&&this._appendTo(t),this}clear(){return this.context.clearRect(0,0,this.canvas.width,this.canvas.height),this}renderWithPoint(t){!this.containerDom||!this.state.enabled||(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}renderWithScreenPoint(t){!this.containerDom||!this.state.enabled||(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}resetOffset(){this.offset={x:0,y:0},this.canvas.style.transform=`translate3d(${0}px, ${0}px, 100px)`}getCurrentState(){return{enabled:this.state.enabled}}getRenderCenter(){return this.renderCenter}_appendTo(t){if(this.resetOffset(),t.appendChild(this.canvas),!this.offsetRange){const e=this.canvas.getBoundingClientRect(),n=t.getBoundingClientRect(),o=n.right-e.right,s=n.bottom-e.bottom,r=n.left-e.left,a=n.top-e.top;this.offsetRange={min:{x:r,y:a},max:{x:o,y:s}}}}autoFixPCPosition(){if(!this.containerDom)return;const{width:t,height:e}=this,[n,o,s]=(()=>{if(this.renderCenter instanceof x.Vector3){const r=this.renderCenter.clone().project(this.five.camera);return[(r.x+1)/2*this.containerDom.clientWidth,-(r.x-1)/2*this.containerDom.clientWidth,-(r.y-1)/2*this.containerDom.clientHeight]}else return[this.renderCenter.x,this.containerDom.clientWidth-this.renderCenter.x,this.renderCenter.y]})();n<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=90+"px"):s<183?(this.canvas.style.top=90+"px",this.canvas.style.left=-t/2+"px"):o<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=-t-90+"px"):(this.canvas.style.left=-t/2+"px",this.canvas.style.top=-e-90+"px"),this.canvas.style.transform=`translate3d(${n}px, ${s}px, 10px)`,this.offset={x:n,y:s}}render(){if(!this.five.renderer||!this.containerDom)return;const{scale:t,context:e,width:n,height:o}=this,s=this.five.renderer.getSize(new x.Vector2),[r,a]=(()=>{if(this.renderCenter instanceof x.Vector3){const g=this.renderCenter.clone().project(this.five.camera);return[(g.x+1)/2*s.x,(g.y+1)/2*s.y]}else return[this.renderCenter.x,s.y-this.renderCenter.y]})(),l=1,c=n/t,d=o/t,f=l*t,u=this.five.getPixels(r-c/2,a-c/2,c,d,f),h=Math.floor(n*l),p=Math.floor(o*l);Tf(u,h,p);const A=new ImageData(h,p);A.data.set(u),e.putImageData(A,0,0)}initStyle(){const t=this.canvas;t.classList.add("five-plugin__magnifier"),t.style.position="absolute",t.style.pointerEvents="all",t.style.borderRadius="50%",t.style.zIndex="99";const e=1;t.setAttribute("width",(this.width*e).toString()),t.setAttribute("height",(this.height*e).toString()),t.style.border="2px solid rgba(255,255,255,0.20)",t.style.width=this.width+"px",t.style.height=this.height+"px",t.style.top=this.config.initialPosition.top,t.style.left=this.config.initialPosition.left,t.style.transform="translate(0,0,100px)",this.config.dragEnabled&&(this.canvas.style.cursor="pointer")}getPanOffset(t,e){const{min:{x:n,y:o},max:{x:s,y:r}}=e,a=this.offset.x+t.deltaX,l=this.offset.y+t.deltaY,c=Math.min(Math.max(a,n),s),d=Math.min(Math.max(l,o),r);return{translateX:c,translateY:d}}}class Mf{constructor(t){m(this,"edges",[]);m(this,"five");m(this,"onModelLoaded",()=>{!this.five.model||(this.edges=this.five.model.getEdges())});this.five=t,this.five.model.loaded?this.onModelLoaded():this.five.on("modelLoaded",this.onModelLoaded)}dispose(){}getAdsorbentPoint(t){if(this.edges.length===0)return null;let e=1/0,n;return this.edges.forEach(o=>{const s=o.closestPointToPoint(t.point,!0,new H.Vector3),r=s.distanceTo(t.point);r<e&&(n=s,e=r)}),e>.1?null:n||null}}function zf(i,t){for(let e=0,n=t.length;e<n;e++)if(i===t[e])return t.splice(e,1)[0]}class _e{constructor(t){m(this,"id");m(this,"lines");m(this,"position");m(this,"type","point");this.id=He(),this.lines=[],this.position=new H.Vector3,t instanceof H.Vector3?this.position.copy(t):this.position.fromArray(t)}toJson(){return{id:this.id,position:this.position.toArray()}}addLine(t){this.lines.push(t)}removeLine(t){zf(t,this.lines)}clone(){return new _e(this.position)}}class ui{constructor(t){m(this,"id",He());m(this,"lines",[]);m(this,"points",[]);m(this,"visiblePanoIndexes");m(this,"model");m(this,"type","polyline");m(this,"hook",new be.Subscribe);this.model=t.model}addLine(t){if(this.includes(t)){console.error(new Error("\u4E0D\u80FD\u91CD\u590D\u6DFB\u52A0\u7EBF\u6BB5"));return}const e=this.getLastPoint(),n=e&&t.findAnotherPoint(e);e?e&&n?(this.lines.push(t),this.points.push(...t.points),this.hook.emit("lineAdded",t)):console.error(new Error("\u4F20\u5165\u7EBF\u6BB5\u65E0\u6CD5\u4E0E\u5F53\u524D\u6298\u7EBF\u8FDB\u884C\u8FDE\u63A5")):(this.lines.push(t),this.points.push(...t.points),this.hook.emit("lineAdded",t))}removeLine(t){if(this.lines.length!==0){if(!this.isLastLine(t)){console.error(new Error("\u4F20\u5165\u7EBF\u6BB5\u4E0D\u662F\u5F53\u524D\u6298\u7EBF\u7684\u6700\u540E\u4E00\u6BB5"));return}this.lines.pop(),this.lines.length===0?this.points.slice(0,this.points.length):this.points.pop(),this.hook.emit("lineRemoved",t)}}isLastLine(t){const e=this.getLastLine();return e?t.id===e.id:!1}getLastLine(){return this.lines.slice(-1)[0]}clear(){this.lines.slice(0,this.lines.length),this.points.slice(0,this.points.length)}overlapWith(t){return t.type==="point"?this.includes(t):t.type==="line"?t.points.some(e=>this.includes(e)):t.type==="polyline"?t.points.some(e=>this.includes(e)):!0}includes(t){return t.type==="point"?this.points.find(({id:e})=>e===t.id)!==void 0:t.type==="line"?this.lines.find(({id:e})=>e===t.id)!==void 0:!1}isEmpty(){return this.points.length===0}getLastPoint(){return this.points.slice(-1)[0]}toJson(){return{id:this.id,lines:this.lines.map(t=>t.toJson()),visiblePanoIndexes:this.visiblePanoIndexes}}getPointByID(t){return this.points.find(({id:e})=>e===t)}fromJson(t){this.clear(),this.id=t.id;const{getPoint:e,getAllPoints:n}=r(),o=t.lines.map(a=>{const[l,c]=a.points,d=e(l),f=e(c);if(!d||!f)throw new Error("\u7EBF\u4E0A\u7684\u70B9\u4E0D\u5B58\u5728");const u=new Ft(d,f,this.model);return u.id=a.id,u.text=a.text,u}),s=n();this.points.push(...s),this.lines.push(...o),this.visiblePanoIndexes=t.visiblePanoIndexes;function r(){const a=new Map;function l(d){const f=a.get(d.id);if(f)return f;const u=new _e(d.position);return u.id=d.id,a.set(d.id,u),u}function c(){return Array.from(a.values())}return{getPoint:l,getAllPoints:c}}return this}replace(t){this.id=t.id,this.clear(),this.lines.push(...t.lines),this.points.push(...t.points)}}const Bf=1,Vf=3,jf=new H.Color(16777215),Qf=new H.Color(6522623),Rf=new H.Color(16777215),Of=new H.Color(6522623),Hf=6,Ff=8,Gf="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAIVBMVEUAAAD////////////////////////////////////////PIev5AAAACnRSTlMAG/Py2baba05un7UgfgAAAHJJREFUKM9joBpgLHVSCRdA4metAoJlCJHmVWBgAeNzroKCCVCBLpjACqgJVjCBxRBT2FbBQQJYQAohsBAsUIUQWA4WiEIILAULeCEEloAFtBACizAEMLRgGIphLabDMJ2O6TlM72MGECIIMQIZIxqoBQCPvpJ/e9FaAAAAAABJRU5ErkJggg==",Va=new H.TextureLoader().load(Gf),ja={pointTexture:Va,pointSize:Hf,lineWidth:Bf,lineColor:jf,pointColor:Rf,lineRenderOrder:20,pointsRenderOrder:20};he(G({},ja),{dashed:!0});const Nf={pointTexture:Va,pointSize:Ff,lineWidth:Vf,lineColor:Qf,pointColor:Of,lineRenderOrder:10,pointsRenderOrder:10};function Wf(i,t,e){var d,f,u,h,p;const n=(d=e==null?void 0:e.lineWidth)!=null?d:2,o=(f=e==null?void 0:e.lineColor)!=null?f:new H.Color(16777215),s=(u=e==null?void 0:e.pointSize)!=null?u:5,r=(h=e==null?void 0:e.lineRenderOrder)!=null?h:10,a=(p=e==null?void 0:e.lineRenderOrder)!=null?p:20,l=new Ur.Line(i,t);l.setMaterial({linewidth:n,color:o}),l.line.material.depthTest=!1,l.line.material.transparent=!0,l.line.renderOrder=r,l.points.renderOrder=a;const c=l.points.material;return c.depthTest=!1,c.size=s,e!=null&&e.pointColor&&c.color.set(e.pointColor).convertSRGBToLinear(),e!=null&&e.pointTexture&&(c.map=e.pointTexture),l}function As(i,t){const[e,n]=i.points,o=t==="light"?Nf:ja,s=Wf(e.position,n.position,o);return s.name="normalLine_"+i.id,s}function At(i){const{x:t,y:e,z:n}=i;return!(Math.abs(t)>1||Math.abs(e)>1||Math.abs(n)>1)}function _f(){const i=document.createElement("div");return i.setAttribute("style","backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);-webkit-tap-highlight-color: rgba(0,0,0,0);"),i.style.width="max-content",i.style.padding="3px 6px",i.style.lineHeight="1",i.style.textAlign="center",i.style.transform="translate(-50%, -50%)",i.style.borderRadius="100px",i.style.fontSize="14px",i.style.color="#fff",i.style.background="rgba(195,195,195,0.70)",i.style.border="0.5px solid rgba(255,255,255,0.6)",i.style.cursor="pointer",i}function Xf(i){const t=document.createElement("div");return t.id="distance_"+i.id,t.classList.add("five-plugin-measure__distance"),t.style.opacity="0",t.style.position="absolute",t.style.left="0",t.style.top="0",t.style.width="0",t.style.height="0",t.style.transform="translate3d(0, 0, 0)",t.style.transformOrigin="left top",t}function Yf(i){let t=!0;const{line:e}=i,n=e.id,o=_f(),s=Xf(e),r=i.userDistanceItem,a=new H.Vector3(0,0,0),l={lineID:n,ndcPosition:a,update:u,appendTo:h,remove:p,highlight:d,unHighlight:f,getCurrentContent:A,setItemSelectable:g};s.style.pointerEvents=t?"all":"none",r!=null&&r.element?s.appendChild(r.element):s.appendChild(o);function c(){var v;(v=i.clickCallback)==null||v.call(i,l)}function d(){if(r)return r.highlight();o.style.border="0.5px solid #95AEFF",o.style.background="linear-gradient(90deg, #95AEFF 0%, #6386FF 100%)"}function f(){if(r)return r.unHighlight();o.style.border="0.5px solid rgba(255,255,255,0.6)",o.style.background="rgba(195,195,195,0.70)"}function u(v){if(e.mesh.visible===!1){s.style.opacity="0",s.style.pointerEvents="none";return}const w=v.getElement();if(!w)return;const y=w.clientWidth,P=w.clientHeight,I=y/2,C=P/2;if(e.points.length<2)return;const[L,D]=e.points,B=L.position.clone().project(v.camera),N=D.position.clone().project(v.camera),F=B.clone().lerp(N,.5),X=new H.Vector2(B.x*I,B.y*C),j=new H.Vector2(N.x*I,N.y*C),E=X.distanceTo(j);if((()=>!(Math.abs(B.z)>1||Math.abs(N.z)>1||!At(B)&&!At(N)||!At(F)||E===0))()===!1){s.style.opacity="0",s.style.pointerEvents="none";return}const O=(F.x+1)/2*y,W=-(F.y-1)/2*P,_=-(Math.atan((X.y-j.y)/(X.x-j.x))*180)/Math.PI,J=s.parentElement&&o.clientWidth>E?-20:0;s.style.transform=`translate(${O}px, ${W}px) rotate(${_}deg) translateY(${J}px)`,s.style.opacity="1",s.style.pointerEvents=t?"all":"none",r&&r.update({line:e,polyline:e.getPolyline()});const de=A();o.innerText=de}function h(v){v.appendChild(s),s.addEventListener("click",c)}function p(){o.removeEventListener("click",c),s.remove()}function A(){var L,D,B;if(e.points.length<2)return"";const[v,w]=e.points,y=v.position.clone().distanceTo(w.position),P=(L=i.line.text)!=null?L:i.line.model.config.defaultText,I=(B=(D=i.line.model.config)==null?void 0:D.getDistanceText)==null?void 0:B.call(D,y),C=P!=null?P:I;return C!=null?C:y.toFixed(2)+"m"}function g(v){t=v}return l}class Ft{constructor(t,e,n){m(this,"id");m(this,"selected",!1);m(this,"text");m(this,"type","line");m(this,"model");m(this,"mesh");m(this,"points");m(this,"lightMesh");m(this,"hook");m(this,"distanceItem");m(this,"polyline");var o;if(this.id=He(),this.model=n,t.id===e.id)throw new Error("\u65E0\u6548\u7684\u7EBF\u6BB5, \u4E00\u4E2A\u70B9\u65E0\u6CD5\u6784\u6210\u7EBF\u6BB5");typeof n.config.defaultText=="string"&&(this.text=n.config.defaultText),this.hook=new be.Subscribe,this.points=[t,e],this.mesh=As(this,"normal"),this.lightMesh=As(this,"light"),this.distanceItem=Yf({line:this,clickCallback:()=>this.hook.emit("selected",this),userDistanceItem:(o=this.model.config)!=null&&o.userDistanceItemCreator?this.model.config.userDistanceItemCreator():void 0}),t.lines.push(this),e.lines.push(this)}clear(){this.selected=!1,this.polyline=void 0}isEmpty(){return this.points.length===0}getPolyline(){if(this.polyline)return this.polyline;const t=this.model.polylines.find(e=>e.lines.includes(this));if(t)return this.polyline=t,t}findAnotherPoint(t){return this.points.find(({id:e})=>e!==t.id)}setText(t){this.text=t,this.hook.emit("textChanged",t)}toJson(){return{id:this.id,points:this.points.map(t=>t.toJson()),text:this.text}}clone(){const t=new Ft(this.points[0].clone(),this.points[1].clone(),this.model);return t.text=this.text,t}}class fi{constructor(t){m(this,"config");m(this,"polylines",[]);m(this,"hook",new be.Subscribe);this.config=t}addPolyline(t){if(this.includes(t)){console.error(new Error("\u4E0D\u80FD\u91CD\u590D\u6DFB\u52A0 polyline"));return}this.polylines.push(t),this.hook.emit("polylineAdded",t)}replacePolylineByID(t,e){const n=this.getPolylineByID(t);n==null||n.replace(e)}removePolyline(t){const e=this.polylines.findIndex(({id:n})=>n===t.id);if(e===-1){console.error(new Error("polyline \u4E0D\u5B58\u5728"));return}this.polylines.splice(e,1),this.hook.emit("polylineRemoved",t)}getPolylineByID(t){return this.polylines.find(e=>e.id===t)}getPolylineByLine(t){return this.polylines.find(e=>e.includes(t))}getLineByID(t){return this.getAllLines().find(e=>e.id===t)}getAllLines(){return this.polylines.map(t=>t.lines).flat(1)}getAllPoints(){return this.polylines.map(t=>t.points).flat(1)}includes(t){return this.polylines.find(({id:e})=>e===t.id)!==void 0}clear(){this.polylines.forEach(t=>this.hook.emit("polylineRemoved",t)),this.polylines.splice(0,this.polylines.length)}getClosestPoint(){}parse(t){this.clear(),this.polylines.push(...t.polylines.map(e=>new ui({model:this}).fromJson(e))),this.polylines.forEach(e=>this.hook.emit("polylineAdded",e))}toJson(){return{polylines:this.polylines.map(t=>t.toJson()).filter(t=>t.lines.length>0)}}}const Ln=i=>i.preventDefault();class hi{constructor(t){m(this,"model");m(this,"five");m(this,"group");m(this,"config");m(this,"dashed");m(this,"disposed",!1);m(this,"isMobile");m(this,"mouseGroup");m(this,"container");m(this,"fiveHelper");m(this,"hook");m(this,"magnifier");m(this,"userDistanceItemCreator");m(this,"updateDistanceUI",()=>{this.dashed.distanceItem.update(this.five),this.model.getAllLines().forEach(t=>t.distanceItem.update(this.five))});var n,o;this.five=t.five,this.hook=t.hook,this.model=t.model,this.config=t.config,this.magnifier=t.magnifier,this.container=t.container,this.fiveHelper=t.fiveHelper,this.isMobile=(o=(n=t.openParams)==null?void 0:n.isMobile)!=null?o:!1,this.userDistanceItemCreator=t.userDistanceItemCreator,this.group=t.group,this.mouseGroup=t.mouseGroup,this.dashed=new Ft(new _e([0,0,0]),new _e([0,0,0]),this.model),this.dashed.distanceItem.setItemSelectable(!1),this.dashed.mesh.setMaterial({dashed:!0,dashScale:100}),this.dashed.mesh.name="dashLine";const e=this.five.getElement();e&&(e.addEventListener("touchstart",Ln),e.addEventListener("contextmenu",Ln))}removeLine(t){this.group.remove(t.mesh,t.lightMesh),t.distanceItem.remove(),this.five.needsRender=!0}updateMouseGroup(t,e){if(!t)return this.mouseGroup;const n=this.fiveHelper.getAdsorbentPoint(t),o=n||t.point;if(this.mouseGroup.position.copy(o),e)this.mouseGroup.quaternion.copy(e.quaternion);else if(t.face){const r=t.face.normal.clone().multiplyScalar(.05),l=t.point.clone().add(r).clone().add(r);this.mouseGroup.lookAt(l)}return this.mouseGroup}dispose(){this.disposed=!0,this.magnifier.disable(),this.model.getAllLines().forEach(e=>this.removeLine(e));const t=this.five.getElement();t&&(t.removeEventListener("touchstart",Ln),t.removeEventListener("contextmenu",Ln))}}function Hi(i){const{x:t,y:e}=i.center,{clientWidth:n,clientHeight:o}=i.target,s=i.target.getBoundingClientRect(),r=new H.Vector2(t,e).sub(new H.Vector2(s.left,s.top)),a=new H.Vector2(r.x/n*2-1,-(r.y/o)*2+1);return{point:r,ndcPoint:a}}function Pi(i,t){const e=Hi(t).ndcPoint,n=new H.Raycaster;return n.setFromCamera(e,i.camera),i.model.intersectRaycaster(n)}class Sn extends hi{constructor(e){var o;super(e);m(this,"type","edit");m(this,"polyline");m(this,"pressPoint");m(this,"hasAppendDashed",!1);m(this,"hasAppendMouseGroup",!1);m(this,"fiveElement");m(this,"lastPoint",null);m(this,"hammer");m(this,"onIntersectionUpdate",lo((e,n)=>{var s;this.hasAppendMouseGroup===!1&&(this.group.add(this.mouseGroup),this.magnifier.appendTo(this.container),this.magnifier.enable(),this.hasAppendMouseGroup=!0);const o=this.updateMouseGroup(e,n).position;(s=this.pressPoint)==null||s.position.copy(o),this.updateDashed(),requestAnimationFrame(()=>this.magnifier.renderWithPoint(this.mouseGroup.position)),this.five.needsRender=!0},20));m(this,"revoke",()=>{if(this.polyline.lines.length===0&&this.lastPoint){this.lastPoint=null,this.hasAppendDashed=!1,this.dashed.distanceItem.remove(),this.group.remove(this.dashed.mesh),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.needsRender=!0;return}if(this.polyline.lines.length===0&&!this.lastPoint||!this.lastPoint)return;const e=this.polyline.lines[this.polyline.lines.length-1],n=e.findAnotherPoint(this.lastPoint);!n||(this.lastPoint=n,this.hook.emit("anchorChange",n.position),this.group.remove(e.mesh),this.polyline.removeLine(e),this.hasAppendMouseGroup=!1,this.mouseGroup.position.copy(this.lastPoint.position),this.group.remove(this.mouseGroup),e.distanceItem.remove(),this.updateDashed(),this.magnifier.disable(),this.five.needsRender=!0)});m(this,"onMouseLeave",()=>{this.magnifier.disable(),this.group.remove(this.mouseGroup),this.hasAppendMouseGroup=!1,this.lastPoint&&(this.mouseGroup.position.copy(this.lastPoint.position),this.updateDashed())});m(this,"onLineChanged",()=>{this.hook.emit("editedPolylineChange",this.polyline)});m(this,"onPress",e=>{const[n]=Pi(this.five,e);if(!(n!=null&&n.face))return;const o=new _e(n.point);this.pressPoint=o,this.onIntersectionUpdate(n)});m(this,"onPan",e=>{if(!this.pressPoint)return;const[n]=Pi(this.five,e);!(n!=null&&n.face)||this.onIntersectionUpdate(n)});m(this,"onPanEnd",e=>{!this.pressPoint||this.onTap(e)});m(this,"onTap",e=>{this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh)),this.hasAppendDashed=!0;const[n]=Pi(this.five,e);this.updateMouseGroup(n);const o=new _e(this.mouseGroup.position),s=this.lastPoint;if(o&&(this.lastPoint=o),o&&s){const r=new Ft(s,o,this.model);r.distanceItem.setItemSelectable(!1),r.distanceItem.appendTo(this.container),this.polyline.addLine(r),this.group.add(r.mesh),r.distanceItem.update(this.five)}this.pressPoint=void 0,this.hasAppendMouseGroup=!1,this.magnifier.disable(),this.group.remove(this.mouseGroup),this.updateDashed(),this.five.needsRender=!0,this.hook.emit("anchorChange",o.position)});m(this,"onWantsTapGesture",()=>!1);m(this,"onWantsToMoveToPano",()=>!1);m(this,"onWantsPanGesture",()=>this.pressPoint?!1:void 0);m(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.dashed.distanceItem.update(this.five)});m(this,"updateDashed",()=>{!this.lastPoint||(this.dashed.points[0].position.copy(this.lastPoint.position),this.dashed.points[1].position.copy(this.mouseGroup.position),this.dashed.mesh.setPoints(this.lastPoint.position,this.mouseGroup.position),this.dashed.distanceItem.update(this.five),this.hook.emit("editedDashedLineChange",this.dashed))});this.model=new fi(this.config),this.polyline=new ui({model:this.model}),this.model.addPolyline(this.polyline),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsPanGesture",this.onWantsPanGesture),this.five.on("wantsTapGesture",this.onWantsTapGesture),this.five.on("wantsToMoveToPano",this.onWantsToMoveToPano),this.five.on("intersectionOnModelUpdate",this.onIntersectionUpdate),this.polyline.hook.on("lineAdded",this.onLineChanged),this.polyline.hook.on("lineRemoved",this.onLineChanged);const n=this.five.getElement();if(n){this.fiveElement=n;const s=new gn.default(n);this.hammer=s,s.on("tap",this.onTap),s.on("pan",this.onPan),s.on("press",this.onPress),s.on("panend",this.onPanEnd)}this.five.helperVisible=!1,(o=this.fiveElement)==null||o.addEventListener("mouseleave",this.onMouseLeave),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.refresh()}dispose(){var e,n;super.dispose(),this.five.helperVisible=!0,this.group.remove(this.mouseGroup,this.dashed.mesh),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsPanGesture",this.onWantsPanGesture),this.five.off("wantsTapGesture",this.onWantsTapGesture),this.five.off("wantsToMoveToPano",this.onWantsToMoveToPano),this.five.off("intersectionOnModelUpdate",this.onIntersectionUpdate),this.polyline.hook.off("lineAdded",this.onLineChanged),this.polyline.hook.off("lineRemoved",this.onLineChanged),(e=this.hammer)==null||e.destroy(),(n=this.fiveElement)==null||n.removeEventListener("mouseleave",this.onMouseLeave),this.magnifier.dispose(),this.dashed.distanceItem.remove(),this.five.needsRender=!0}getEditingLines(){return this.polyline.lines}}class vs extends hi{constructor(e){super(e);m(this,"type","view");m(this,"hammer");m(this,"polylineRemoved",e=>{e.lines.forEach(n=>this.removeLine(n)),this.hook.emit("selectedChange",this.model.getAllLines().filter(n=>n.selected).map(n=>n))});m(this,"polylineAdded",e=>{const n=this.five.getCurrentState().panoIndex;e.lines.forEach(o=>{e.visiblePanoIndexes&&!e.visiblePanoIndexes.includes(n)&&(o.mesh.visible=!1),o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)})});m(this,"onCameraUpdate",()=>{this.updateDistanceUI()});m(this,"onFivePanoWillArrive",e=>{this.model.polylines.forEach(n=>{!n.visiblePanoIndexes||n.visiblePanoIndexes.includes(e)||n.lines.forEach(o=>{o.mesh.visible=!1,o.distanceItem.update(this.five)})})});m(this,"onFivePanoArrived",e=>{this.model.polylines.forEach(n=>{!n.visiblePanoIndexes||n.visiblePanoIndexes.includes(e)&&n.lines.forEach(o=>{o.mesh.visible=!0,o.distanceItem.update(this.five)})})});this.model.getAllLines().forEach(o=>{o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)});const n=this.five.getElement();if(n){const o=new gn.default(n);this.hammer=o}this.updateDistanceUI(),this.five.needsRender=!0,this.model.hook.on("polylineAdded",this.polylineAdded),this.model.hook.on("polylineRemoved",this.polylineRemoved),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive)}dispose(){var e;super.dispose(),this.model.hook.off("polylineAdded",this.polylineAdded),this.model.hook.off("polylineRemoved",this.polylineRemoved),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}}const Uf=`
209
209
  <svg class="fpm__delete-icon" width="16px" height="17px" viewBox="0 0 16 17" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
210
210
  <defs>
211
211
  <linearGradient x1="22.185491%" y1="100%" x2="66.8316686%" y2="6.67239121%" id="linearGradient-1">
@@ -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 Qg(){const i=new x.PlaneGeometry(.4,.4),t=Bg,e=new x.TextureLoader().load(t);e.encoding=x.sRGBEncoding;const n=new x.MeshBasicMaterial({map:e,transparent:!0,depthTest:!1});return new x.Mesh(i,n)}function Rg(){const i=new x.CurvePath;i.add(new x.LineCurve3(new x.Vector3(0,0,0),new x.Vector3(0,0,.1)));const t=new x.TubeGeometry(i,8,.003),e=new x.ShaderMaterial({vertexShader:Vg,fragmentShader:jg,depthTest:!1,transparent:!0});return new x.Mesh(t,e)}function Og(){const i=new x.SphereGeometry(.01,20,20),t=new x.MeshBasicMaterial({color:10349931,depthTest:!1,transparent:!0,side:x.DoubleSide}),e=new x.Mesh(i,t);return e.position.set(0,0,.1),e}class al extends x.Object3D{constructor(){super();m(this,"planeMesh");m(this,"lineMesh");m(this,"ballMesh");this.planeMesh=Qg(),this.lineMesh=Rg(),this.ballMesh=Og(),this.add(this.planeMesh,this.lineMesh,this.ballMesh)}updateWithIntersect(e){if(!e.face)return;const n=new x.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 ll{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 x.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(${Oa})`,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 x.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 co({progress:0}).to({progress:[1,0]}).duration(500).easing(ni.Easing.Quadratic.InOut).onUpdate(({progress:e})=>{}).play()}dispose(){var t;(t=this.disposeCss3DObject)==null||t.call(this)}}class Hg{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 x.Group);this.five=t,this.magnifier=(e==null?void 0:e.magnifier)===void 0?new sl(t,{dragEnabled:!0}):null,this.pointHelper=(e==null?void 0:e.pointHelper)===void 0?new al:null,this.pointDomHelper=(e==null?void 0:e.pointDomHelper)===void 0?new ll(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 Fg=Object.freeze(Object.defineProperty({__proto__:null,Interval:Xi,Rectangle:Lg,Magnifier:sl,getCoordsFromClient:Tg,getCoordsFromElement:rl,getRaycasterFromFivePointer:Mg,getIntersectFromRelativePosition:zg,PointHelper:al,PointDomHelper:ll,FivePointSelector:Hg,isNil:Rm,notNil:We,BetterTween:co,tweenProgress:La,nextFrame:ci,requestAnimationFrameInterval:di,getFrameTime:sf},Symbol.toStringTag,{value:"Module"}));function Gg(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 Cr(i,t,e){const n=i.slice();return n[0]=t[e],n}function Er(i,t,e){const n=i.slice();return n[0]=t[e],n}function Pr(i){let t,e=i[0]+"",n;return{c(){t=V("div"),n=Ee(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&&M(t)}}}function Ir(i){let t,e=i[0]&&Pr(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=Pr(n),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},d(n){e&&e.d(n),n&&M(t)}}}function kr(i){let t,e=i[0]+"",n;return{c(){t=V("div"),n=Ee(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&&M(t)}}}function xr(i){let t,e=i[0]&&kr(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=kr(n),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},d(n){e&&e.d(n),n&&M(t)}}}function Dr(i){let t,e,n=i[2].price.value+"",o,s,r=i[2].price.unit&&Lr(i);return{c(){t=V("div"),e=V("span"),o=Ee(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=Lr(a),r.c(),r.m(t,null)):r&&(r.d(1),r=null)},d(a){a&&M(t),r&&r.d()}}}function Lr(i){let t,e=i[2].price.unit+"",n;return{c(){t=V("span"),n=Ee(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&&M(t)}}}function Sr(i){let t,e=i[2].highlightText+"",n;return{c(){t=V("div"),n=Ee(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&&M(t)}}}function Ng(i){var X,j;let t,e,n,o,s,r,a,l,c,d,f,u,h,p,A=i[2].title+"",g,v,w,y=We((X=i[2].price)==null?void 0:X.value)&&((j=i[2].price)==null?void 0:j.value)!=="",P,I;e=new Ke({props:{visible:i[1],outDelay:500,left:61,bottom:87,blurRadius:150,spreadRadius:75}});let C=i[2].brandTags||[],L=[];for(let E=0;E<C.length;E+=1)L[E]=Ir(Er(i,C,E));let D=i[2].tags||[],B=[];for(let E=0;E<D.length;E+=1)B[E]=xr(Cr(i,D,E));let N=y&&Dr(i),F=i[2].highlightText&&Sr(i);return{c(){var E;t=V("div"),$(e.$$.fragment),n=ee(),o=V("div"),s=ee(),r=V("div"),a=V("img"),c=ee(),d=V("div");for(let R=0;R<L.length;R+=1)L[R].c();f=ee();for(let R=0;R<B.length;R+=1)B[R].c();u=ee(),h=V("div"),p=V("div"),g=Ee(A),v=ee(),w=V("div"),N&&N.c(),P=ee(),F&&F.c(),b(o,"class","line svelte-8mby9k"),T(o,"transition-delay",i[1]?Bn+"ms":Vn+Mr-Tr-40+"ms"),b(a,"class","headerImage svelte-8mby9k"),Ne(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"),T(w,"height",We((E=i[2].price)==null?void 0:E.value)&&i[2].highlightText?void 0:"1rem"),b(r,"class","content svelte-8mby9k"),T(r,"transition-delay",i[1]?Bn+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 O=0;O<L.length;O+=1)L[O].m(d,null);Q(d,f);for(let O=0;O<B.length;O+=1)B[O].m(d,null);Q(r,u),Q(r,h),Q(h,p),Q(p,g),Q(r,v),Q(r,w),N&&N.m(w,null),Q(w,P),F&&F.m(w,null),I=!0},p(E,[R]){var W,U,_;const O={};if(R&2&&(O.visible=E[1]),e.$set(O),R&2&&T(o,"transition-delay",E[1]?Bn+"ms":Vn+Mr-Tr-40+"ms"),(!I||R&4&&!Ne(a.src,l=E[2].headerPictureUrl))&&b(a,"src",l),R&4){C=E[2].brandTags||[];let J;for(J=0;J<C.length;J+=1){const de=Er(E,C,J);L[J]?L[J].p(de,R):(L[J]=Ir(de),L[J].c(),L[J].m(d,f))}for(;J<L.length;J+=1)L[J].d(1);L.length=C.length}if(R&4){D=E[2].tags||[];let J;for(J=0;J<D.length;J+=1){const de=Cr(E,D,J);B[J]?B[J].p(de,R):(B[J]=xr(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=We((W=E[2].price)==null?void 0:W.value)&&((U=E[2].price)==null?void 0:U.value)!==""),y?N?N.p(E,R):(N=Dr(E),N.c(),N.m(w,P)):N&&(N.d(1),N=null),E[2].highlightText?F?F.p(E,R):(F=Sr(E),F.c(),F.m(w,null)):F&&(F.d(1),F=null),R&4&&T(w,"height",We((_=E[2].price)==null?void 0:_.value)&&E[2].highlightText?void 0:"1rem"),R&2&&T(r,"transition-delay",E[1]?Bn+Vn+"ms":"0ms"),(!I||R&2)&&te(t,"unfolded",E[1]),(!I||R&8)&&te(t,"folded",E[3])},i(E){I||(k(e.$$.fragment,E),I=!0)},o(E){S(e.$$.fragment,E),I=!1},d(E){E&&M(t),K(e),lt(L,E),lt(B,E),N&&N.d(),F&&F.d()}}}const Bn=400,Tr=500,Vn=180,Mr=500;function Wg(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 _g extends oe{constructor(t){super(),ie(this,t,Wg,Ng,ne,{tag:0},Gg)}}const Jt="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=",un={};var ti=(i=>(i.Default="default",i.GetAudioDuration="getAudioDuration",i.PlayAudio="playAudio",i))(ti||{});function cl(i,t){const e=(t==null?void 0:t.namespace)||"default",n=un[e]||(un[e]=[]);let o=n.find(s=>!s.realSrc||s.realSrc===Jt);return o||(console.warn("\u672A\u627E\u5230\u7F13\u5B58\u97F3\u9891\uFF0C\u5DF2\u65B0\u5EFA",un),o=new mo(Jt),n.push(o)),i&&(o.src=i),o}function Xg(i){return Y(this,null,function*(){const t=(()=>i instanceof mo?i:cl(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 zr(i,t){const e=(t==null?void 0:t.namespace)||"default",n=un[e]||(un[e]=[]),o=i-n.length;if(!(o<=0))for(let s=0;s<o;s++)n.push(new mo(Jt))}class mo 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=this.initAudio.bind(this);document.addEventListener("click",n),this.removeDocumentEventListener=()=>{document.removeEventListener("click",n)}}get isBlankAudio(){return this.realSrc===Jt||!this.realSrc}get src(){return super.src}set src(e){super.src=e,this.realSrc=e}clear(){this.src=Jt,this.currentTime=0}initAudio(){this.inited||(this.src&&(this.inited=!0,this.removeDocumentEventListener()),this.src===Jt&&this.play())}}class Yg 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 Y(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=cl(this.sharedAudioSrc,{namespace:ti.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=u=>{var h;this.sharedAudioCurrentTime=e.currentTime,(h=this.ontimeupdate)==null||h.call(this,u)},o=u=>{var h;return(h=this.onplay)==null?void 0:h.call(this,u)},s=u=>{var h;(h=this.onpause)==null||h.call(this,u),this.clear()},r=u=>{var h;(h=this.onended)==null||h.call(this,u),this.sharedAudioCurrentTime=0},a=u=>{var h;return(h=this.onerror)==null?void 0:h.call(this,u)},l=u=>{var h;return(h=this.oncanplay)==null?void 0:h.call(this,u)},c=u=>{var h;return(h=this.oncanplaythrough)==null?void 0:h.call(this,u)},d=u=>{var h;return(h=this.onloadeddata)==null?void 0:h.call(this,u)},f=u=>{var h;return(h=this.onloadedmetadata)==null?void 0:h.call(this,u)};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",f),()=>{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",f)}}}function Ug(i){le(i,"svelte-13e7hxv",".audio.svelte-13e7hxv{pointer-events:auto;cursor:pointer;width:100%;height:100%}")}function Jg(i){let t,e,n,o;const s=i[8].default,r=it(s,i,i[7],null);return{c(){t=V("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",ha(i[1])),n=!0)},p(a,[l]){r&&r.p&&(!e||l&128)&&st(r,s,a,a[7],e?ot(s,a[7],l,null):rt(a[7]),null),(!e||l&1)&&b(t,"style",a[0])},i(a){e||(k(r,a),e=!0)},o(a){S(r,a),e=!1},d(a){a&&M(t),r&&r.d(a),n=!1,o()}}}function Zg(i,t,e){let{$$slots:n={},$$scope:o}=t,{url:s}=t,{enable:r=!0}=t,{style:a=""}=t,{hooksInfo:l}=t;const c=oi(),d=ct("hooks"),f=ct("mediaStore");let u,h=!0;function p(){e(5,u.onplay=g=>{d.emit("playStateChange",G({event:g,state:"playing",mediaInstance:u},l)),c("play"),e(6,h=!1)},u),e(5,u.onpause=g=>{d.emit("playStateChange",G({event:g,state:"paused",mediaInstance:u},l)),c("pause"),e(6,h=!0)},u),e(5,u.onloadedmetadata=g=>{typeof u.duration=="number"&&!Number.isNaN(u.duration)&&c("duration",u.duration)},u),e(5,u.ontimeupdate=g=>{c("timeupdate",u.currentTime)},u)}f.subscribe(({currentMediaElement:g})=>{g!==u&&(h||u==null||u.pause())});function A(g){!u||(d.emit("click",G({event:g,target:"AudioTagPlayIcon",audioInstance:u},l)),f.set({currentMediaElement:u}),d.emit("playStateChange",G({event:g,state:u.paused?"playing":"paused",mediaInstance:u},l)),u.paused?u.play():u.pause())}return i.$$set=g=>{"url"in g&&e(2,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&&(u==null||u.dispose(),e(5,u=new Yg(s)),c("audioRef",u),setTimeout(()=>c("audioRef",u),200),Xg(s).then(g=>c("duration",g)),p()),i.$$.dirty&40&&(r||u==null||u.pause()),i.$$.dirty&72&&c(r&&!h?"play":"pause")},[a,A,s,r,l,u,h,o,n]}class dl extends oe{constructor(t){super(),ie(this,t,Zg,Jg,ne,{url:2,enable:3,style:0,hooksInfo:4},Ug)}}function qg(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 Br(i){let t,e;return t=new Ke({props:{center:!0,blurRadius:12,spreadRadius:5}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function Kg(i){let t,e,n,o,s,r=i[1]&&Br();return{c(){t=V("div"),r&&r.c(),e=ee(),n=V("div"),o=V("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]),T(t,"width",i[5]),T(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&&k(r,1):(r=Br(),r.c(),k(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&&T(t,"width",a[5]),l&32&&T(t,"height",a[5])},i(a){s||(k(r),s=!0)},o(a){S(r),s=!1},d(a){a&&M(t),r&&r.d(),i[7](null),i[8](null)}}}function $g(i,t,e){let n,{playing:o}=t,{shadow:s=!1}=t,{style:r=null}=t,{width:a="100%"}=t,l,c;function d(u){Le[u?"unshift":"push"](()=>{c=u,e(4,c)})}function f(u){Le[u?"unshift":"push"](()=>{l=u,e(3,l)})}return i.$$set=u=>{"playing"in u&&e(0,o=u.playing),"shadow"in u&&e(1,s=u.shadow),"style"in u&&e(2,r=u.style),"width"in u&&e(6,a=u.width)},i.$$.update=()=>{i.$$.dirty&64&&e(5,n=typeof a=="number"?ye(a):a)},[o,s,r,l,c,n,a,d,f]}class ul extends oe{constructor(t){super(),ie(this,t,$g,Kg,ne,{playing:0,shadow:1,style:2,width:6},qg)}}function e0(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 Vr(i){var v,w;let t,e,n,o,s,r,a,l,c,d,f,u,h,p,A;e=new Ke({props:{visible:i[6],left:i[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}});let g=i[6]&&jr(i);return c=new tl({props:{visible:i[6],textUnfolded:i[1],content:i[5]}}),u=new fo({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=V("div"),$(e.$$.fragment),n=ee(),o=V("div"),s=V("div"),r=V("div"),g&&g.c(),a=ee(),l=V("div"),$(c.$$.fragment),f=ee(),$(u.$$.fragment),b(r,"class","audio-icon svelte-1s6gk4a"),De(()=>i[11].call(l)),T(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,P){z(y,t,P),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=Et(l,i[11].bind(l)),Q(t,f),q(u,t,null),h=!0,p||(A=Se(l,"click",i[7]),p=!0)},p(y,P){var D,B;const I={};P&64&&(I.visible=y[6]),P&8&&(I.left=y[3]/2+"px"),e.$set(I),y[6]?g?(g.p(y,P),P&64&&k(g,1)):(g=jr(y),g.c(),k(g,1),g.m(r,null)):g&&(se(),S(g,1,1,()=>{g=null}),re());const C={};P&64&&(C.visible=y[6]),P&2&&(C.textUnfolded=y[1]),P&32&&(C.content=y[5]),c.$set(C);const L={};P&64&&(L.unfolded=y[6]),P&8&&(L.length=y[3]),P&48&&(L.outDelay=y[4]+20*Math.min((B=(D=y[5])==null?void 0:D.length)!=null?B:10,15)),u.$set(L),(!h||P&64)&&te(t,"unfolded",y[6])},i(y){h||(k(e.$$.fragment,y),k(g),k(c.$$.fragment,y),k(u.$$.fragment,y),h=!0)},o(y){S(e.$$.fragment,y),S(g),S(c.$$.fragment,y),S(u.$$.fragment,y),h=!1},d(y){y&&M(t),K(e),g&&g.d(),K(c),d(),K(u),p=!1,A()}}}function jr(i){let t,e,n,o,s,r,a;return e=new Ke({props:{center:!0,blurRadius:15,spreadRadius:6}}),o=new dl({props:{enable:i[6],url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[t0]},$$scope:{ctx:i}}}),o.$on("play",i[8]),o.$on("pause",i[9]),o.$on("audioRef",i[10]),{c(){t=V("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||(k(e.$$.fragment,l),k(o.$$.fragment,l),l&&De(()=>{r&&r.end(1),s=Rt(t,Bt,{duration:1e3,delay:0,easing:qt}),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:qt})),a=!1},d(l){l&&M(t),K(e),K(o),l&&r&&r.end()}}}function t0(i){let t,e,n;return e=new ul({props:{playing:i[2]}}),{c(){t=V("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||(k(e.$$.fragment,o),n=!0)},o(o){S(e.$$.fragment,o),n=!1},d(o){o&&M(t),K(e)}}}function n0(i){let t,e,n=i[0].state&&Vr(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&&k(n,1)):(n=Vr(o),n.c(),k(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(k(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&M(t)}}}function i0(i,t,e){let n,o,s,{tag:r}=t,a=!1,l=!1,c;function d(){e(1,a=!a)}const f=()=>{e(2,l=!0)},u=()=>{e(2,l=!1)};function h(A){$i.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,f,u,h,p]}class o0 extends oe{constructor(t){super(),ie(this,t,i0,n0,ne,{tag:0},e0)}}function s0(i){const t=document.createElement("div");t.style.color=i,document.body.appendChild(t);const e=window.getComputedStyle(t).color;document.body.removeChild(t);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 r0(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 Qr(i){let t,e,n,o;return n=new dl({props:{style:"width: max-content; height: max-content;",enable:i[0].state.visible,url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[l0]},$$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=V("div"),e=V("div"),$(n.$$.fragment),b(e,"class","audio-tag svelte-58hfjf"),T(e,"background-color",i[1]),T(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&&T(e,"background-color",s[1]),r&32&&T(e,"color",s[5])},i(s){o||(k(n.$$.fragment,s),o=!0)},o(s){S(n.$$.fragment,s),o=!1},d(s){s&&M(t),K(n)}}}function a0(i){let t;return{c(){t=Ee(i[6])},m(e,n){z(e,t,n)},p(e,n){n&64&&xe(t,e[6])},d(e){e&&M(t)}}}function l0(i){let t,e,n,o,s,r,a;return n=new ul({props:{playing:i[2]}}),r=new ho({props:{maxWidth:72,$$slots:{default:[a0]},$$scope:{ctx:i}}}),{c(){t=V("div"),e=V("div"),$(n.$$.fragment),o=ee(),s=V("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 f={};c&8256&&(f.$$scope={dirty:c,ctx:l}),r.$set(f)},i(l){a||(k(n.$$.fragment,l),k(r.$$.fragment,l),a=!0)},o(l){S(n.$$.fragment,l),S(r.$$.fragment,l),a=!1},d(l){l&&M(t),K(n),K(r)}}}function c0(i){let t,e,n=i[0].state&&Qr(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&&k(n,1)):(n=Qr(o),n.c(),k(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(k(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&M(t)}}}function d0(i,t,e){let n,o,s,{tag:r}=t;oi();let a=!1,l=0,c=0;const d=()=>{e(2,a=!0)},f=()=>{e(2,a=!1)},u=A=>{e(3,l=A.detail)},h=A=>{e(4,c=A.detail)};function p(A){$i.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}=s0(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,f,u,h,p]}class u0 extends oe{constructor(t){super(),ie(this,t,d0,c0,ne,{tag:0},r0)}}function f0(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||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function h0(i){let t,e;return t=new o0({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||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function m0(i){let t,e,n,o;const s=[h0,f0],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()),k(e,1),e.m(n.parentNode,n)):e=null)},i(l){o||(k(e),o=!0)},o(l){S(e),o=!1},d(l){~t&&r[t].d(l),l&&M(n)}}}function p0(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 g0 extends oe{constructor(t){super(),ie(this,t,p0,m0,ne,{tag:0})}}function A0(i){le(i,"svelte-10cw0el",".media-wrapper.svelte-10cw0el{position:absolute;width:100%;height:100%}")}function Rr(i){var o;let t,e,n;return e=new ol({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=V("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||(k(e.$$.fragment,s),n=!0)},o(s){S(e.$$.fragment,s),n=!1},d(s){s&&M(t),K(e)}}}function v0(i){let t,e,n=i[0].state&&i[5]&&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&&o[5]?n?(n.p(o,s),s&33&&k(n,1)):(n=Rr(o),n.c(),k(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(k(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&M(t)}}}function b0(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,f;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=(f=c.data.objectFit)!=null?f:(()=>c.data.adaptationMode==="stretch"?"cover":c.data.adaptationMode==="proportional"?"contain":void 0)())},[c,s,l,a,r,o,n]}class y0 extends oe{constructor(t){super(),ie(this,t,b0,v0,ne,{tag:0},A0)}}function w0(i){return Y(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 C0(i){return Y(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 w0(e),a=s/n,l=r/n,c=a/t,d=l,f=1/o*t+"s",u=a/t-a;return{url:e,keyframesWidth:a,keyframesHeight:l,wrapperWidth:c,wrapperHeight:d,steps:t,duration:f,offsetX:u,offsetY:0}})}function E0(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 Or(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 Hr(i){let t,e,n,o=i[2]&&Fr();function s(l,c){return l[3]?I0:P0}let r=s(i),a=r(i);return{c(){t=V("div"),o&&o.c(),e=ee(),a.c(),b(t,"class","icon"),T(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&&k(o,1):(o=Fr(),o.c(),k(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&&T(t,"width",typeof l[0]=="number"?ye(l[0]):l[0])},i(l){n||(k(o),n=!0)},o(l){S(o),n=!1},d(l){l&&M(t),o&&o.d(),a.d()}}}function Fr(i){let t,e;return t=new Ke({props:{center:!0,blurRadius:24,spreadRadius:16}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function P0(i){let t,e;return{c(){t=V("img"),b(t,"class","icon-image svelte-mhs8j5"),Ne(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&&!Ne(t.src,e=n[1].url)&&b(t,"src",e)},d(n){n&&M(t)}}}function I0(i){let t,e,n={ctx:i,current:null,token:null,hasCatch:!1,pending:D0,then:x0,catch:k0,value:14};return To(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]))&&To(e,n)||wc(n,i,s)},d(o){o&&M(t),n.block.d(o),n.token=null,n=null}}}function k0(i){return{c:Z,m:Z,p:Z,d:Z}}function x0(i){Or(i);let t,e,n,o=`url(${i[6]})`,s=`steps(${i[11]-1})`;return{c(){t=V("div"),e=V("div"),n=V("div"),b(n,"class","icon-keyframe svelte-mhs8j5"),T(n,"width",ye(i[7])),T(n,"height",ye(i[8])),T(n,"background-image",o),T(n,"animation-duration",i[12]),T(n,"animation-timing-function",s),T(n,"animation-delay",0),T(n,"background-size","100% 100%"),T(n,"--keyframe_offset_x",ye(i[13])),b(e,"class","icon-keyframe-wrapper svelte-mhs8j5"),T(e,"transform",typeof i[0]=="number"?`scale(${i[0]/i[9]})`:void 0),b(t,"class","icon-keyframe-container svelte-mhs8j5"),T(t,"width",typeof i[0]=="number"?ye(i[0]):ye(i[9])),T(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){Or(r),a&2&&T(n,"width",ye(r[7])),a&2&&T(n,"height",ye(r[8])),a&2&&o!==(o=`url(${r[6]})`)&&T(n,"background-image",o),a&2&&T(n,"animation-duration",r[12]),a&2&&s!==(s=`steps(${r[11]-1})`)&&T(n,"animation-timing-function",s),a&2&&T(n,"--keyframe_offset_x",ye(r[13])),a&3&&T(e,"transform",typeof r[0]=="number"?`scale(${r[0]/r[9]})`:void 0),a&3&&T(t,"width",typeof r[0]=="number"?ye(r[0]):ye(r[9])),a&3&&T(t,"height",typeof r[0]=="number"?ye(r[10]*(r[0]/r[9])):ye(r[10]))},d(r){r&&M(t)}}}function D0(i){return{c:Z,m:Z,p:Z,d:Z}}function L0(i){let t,e,n=i[1]&&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[1]?n?(n.p(o,s),s&2&&k(n,1)):(n=Hr(o),n.c(),k(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(k(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&M(t)}}}function S0(i,t,e){let n,{width:o=null}=t,{icon:s=null}=t,{shadow:r=!1}=t;const a=oi();function l(c){return Y(this,null,function*(){const d=yield C0(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 fl extends oe{constructor(t){super(),ie(this,t,S0,L0,ne,{width:0,icon:1,shadow:2},E0)}}function T0(i){le(i,"svelte-1lmyni6",".wrapper.svelte-1lmyni6{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-1lmyni6{position:relative;display:flex;align-items:center;justify-content:center}.text.svelte-1lmyni6{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;word-break:break-all;line-height:1.125rem;text-shadow:0.125rem 0rem 0.5rem rgba(0, 0, 0, 0.15)}")}function Gr(i){let t,e,n,o,s,r;return e=new Ke({props:{outDelay:0,inDelay:0,center:!0,width:"80%",blurRadius:40,spreadRadius:16,opacity:.08}}),{c(){t=V("div"),$(e.$$.fragment),n=ee(),o=V("div"),s=Ee(i[1]),b(o,"class","text svelte-1lmyni6"),b(t,"class","text-wrapper svelte-1lmyni6")},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||(k(e.$$.fragment,a),r=!0)},o(a){S(e.$$.fragment,a),r=!1},d(a){a&&M(t),K(e)}}}function M0(i){let t,e,n,o;e=new fl({props:{icon:i[0],shadow:!0}}),e.$on("iconLoaded",i[9]);let s=i[1]&&i[2]&&Gr(i);return{c(){t=V("div"),$(e.$$.fragment),n=ee(),s&&s.c(),b(t,"class","wrapper svelte-1lmyni6")},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&&k(s,1)):(s=Gr(r),s.c(),k(s,1),s.m(t,null)):s&&(se(),S(s,1,1,()=>{s=null}),re())},i(r){o||(k(e.$$.fragment,r),k(s),o=!0)},o(r){S(e.$$.fragment,r),S(s),o=!1},d(r){r&&M(t),K(e),s&&s.d()}}}function z0(i,t,e){let n,o,s,r,a,l,c,d,{tag:f}=t;const u=()=>{e(2,n=!0)};return i.$$set=h=>{"tag"in h&&e(3,f=h.tag)},i.$$.update=()=>{var h,p;i.$$.dirty&8&&e(1,o=(h=f.data.title)!=null?h:f.data.text),i.$$.dirty&8&&e(8,s=(p=f.data.icon)!=null?p:f.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,f,c,l,a,r,s,u]}class B0 extends oe{constructor(t){super(),ie(this,t,z0,M0,ne,{tag:3},T0)}}function V0(i){le(i,"svelte-kzl2aj",".customElement__container.svelte-kzl2aj{position:relative}")}function Nr(i){let t,e=i[0].element+"",n;return{c(){t=new _n(!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&&M(n),o&&t.d()}}}function j0(i){let t,e=typeof i[0].element=="string"&&Nr(i);return{c(){t=V("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=Nr(n),e.c(),e.m(t,null)):e&&(e.d(1),e=null)},i:Z,o:Z,d(n){n&&M(t),e&&e.d(),i[2](null)}}}function Q0(i,t,e){let{tag:n}=t,o,s;Ze(()=>{if(o){if(n.element instanceof Element){const a=n.element;o.appendChild(a),s=()=>o==null?void 0:o.removeChild(a)}else if(typeof n.element=="function"){const a=n.element;s=a(o)}}}),It(()=>{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 R0 extends oe{constructor(t){super(),ie(this,t,Q0,j0,ne,{tag:0},V0)}}function O0(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,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) 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 H0(i){let t,e;return{c(){t=V("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&&M(t)}}}function F0(i){let t,e,n,o,s,r,a,l,c;const d=[U0,Y0,X0,_0,W0,N0,G0],f=[];function u(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"?6:-1}return~(o=u(i))&&(s=f[o]=d[o](i)),{c(){var h,p,A;t=V("div"),e=V("div"),n=V("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[3].visible||!i[3].enabled||!i[4].visible||!((p=i[1].state)!=null&&p.visible)||((A=i[1].temporaryState)==null?void 0:A.visible)===!1),te(t,"withAnimation",i[0]),te(t,"unClickable",i[1].clickable===!1),T(t,"width",i[1].stickType==="Plane"?"100%":0),T(t,"height",i[1].stickType==="Plane"?"100%":0)},m(h,p){z(h,t,p),Q(t,e),Q(e,n),~o&&f[o].m(n,null),a=!0,l||(c=Se(t,"click",ha(i[12])),l=!0)},p(h,p){var g,v,w;let A=o;o=u(h),o===A?~o&&f[o].p(h,p):(s&&(se(),S(f[A],1,1,()=>{f[A]=null}),re()),~o?(s=f[o],s?s.p(h,p):(s=f[o]=d[o](h),s.c()),k(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&26)&&te(t,"hide",!h[3].visible||!h[3].enabled||!h[4].visible||!((v=h[1].state)!=null&&v.visible)||((w=h[1].temporaryState)==null?void 0:w.visible)===!1),(!a||p&1)&&te(t,"withAnimation",h[0]),(!a||p&2)&&te(t,"unClickable",h[1].clickable===!1),p&2&&T(t,"width",h[1].stickType==="Plane"?"100%":0),p&2&&T(t,"height",h[1].stickType==="Plane"?"100%":0)},i(h){a||(k(s),a=!0)},o(h){S(s),a=!1},d(h){h&&M(t),~o&&f[o].d(),l=!1,c()}}}function G0(i){let t,e;return t=new y0({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function N0(i){let t,e;return t=new B0({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function W0(i){let t,e;return t=new _g({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(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 g0({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function X0(i){let t,e;return t=new Dg({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(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 Fp({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function U0(i){let t,e;return t=new R0({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function J0(i){let t,e,n,o;const s=[F0,H0],r=[];function a(l,c){return l[5]?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()),k(e,1),e.m(n.parentNode,n))},i(l){o||(k(e),o=!0)},o(l){S(e),o=!1},d(l){r[t].d(l),l&&M(n)}}}function Z0(i,t,e){let n,o,s,r,a,{withAnimation:l=!1}=t,{tag:c}=t,{hooks:d}=t,{state:f}=t,{mediaStore:u}=t,{temporaryState:h}=t;Un("hooks",d),Un("mediaStore",u);let p,A;function g(w){w?d.emit("exposure",{id:r,type:"start"}):d.emit("exposure",{id:r,type:"end"})}const v=w=>d.emit("click",{event:w,target:"TagContent",tag:c});return i.$$set=w=>{"withAnimation"in w&&e(0,l=w.withAnimation),"tag"in w&&e(1,c=w.tag),"hooks"in w&&e(2,d=w.hooks),"state"in w&&e(3,f=w.state),"mediaStore"in w&&e(6,u=w.mediaStore),"temporaryState"in w&&e(4,h=w.temporaryState)},i.$$.update=()=>{var w,y,P,I,C,L,D,B,N,F,X;i.$$.dirty&2&&e(10,n=(w=c.state)==null?void 0:w.unfolded),i.$$.dirty&2&&e(9,o=(y=c.state)==null?void 0:y.visible),i.$$.dirty&26&&e(11,s=f.visible&&h.visible&&((P=c.state)==null?void 0:P.visible)),i.$$.dirty&2&&(r=c.id),i.$$.dirty&2048&&g(s),i.$$.dirty&1922&&c.hooks&&(n!==void 0&&n!==A&&(e(8,A=n),n?(C=(I=c.hooks).emit)==null||C.call(I,"unfolded"):(D=c==null?void 0:(L=c.hooks).emit)==null||D.call(L,"folded")),o!==void 0&&o!==p&&(e(7,p=o),o?(N=(B=c.hooks).emit)==null||N.call(B,"show"):(X=(F=c.hooks).emit)==null||X.call(F,"hide"))),i.$$.dirty&2&&e(5,a=(()=>!(typeof c.mergedConfig.unfoldedConfig=="object"&&c.mergedConfig.unfoldedConfig.keep==="folded"))())},[l,c,d,f,h,a,u,p,A,o,n,s,v]}class hl extends oe{constructor(t){super(),ie(this,t,Z0,J0,ne,{withAnimation:0,tag:1,hooks:2,state:3,mediaStore:6,temporaryState:4},O0)}}function q0(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 K0(i){let t,e,n,o,s,r,a,l,c,d,f,u;return o=new Ke({props:{center:!0,blurRadius:15,spreadRadius:5,opacity:.3}}),c=new fl({props:{icon:i[2],width:i[1]}}),{c(){t=V("div"),e=ee(),n=V("div"),$(o.$$.fragment),s=ee(),r=V("div"),a=ee(),l=V("div"),$(c.$$.fragment),b(t,"class","tag-point-click-helper svelte-yex9rb"),b(r,"class","tag-unfolded-point svelte-yex9rb"),T(r,"transition-delay",(i[3]?i[5]:0)+"ms"),b(l,"class","tag-folded-point svelte-yex9rb"),T(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]),T(n,"width",ye(i[1])),T(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,f||(u=Se(t,"click",i[4]),f=!0)},p(h,[p]){p&8&&T(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&&T(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&&T(n,"width",ye(h[1])),p&2&&T(n,"height",ye(h[1]))},i(h){d||(k(o.$$.fragment,h),k(c.$$.fragment,h),d=!0)},o(h){S(o.$$.fragment,h),S(c.$$.fragment,h),d=!1},d(h){h&&M(t),h&&M(e),h&&M(n),K(o),K(c),f=!1,u()}}}function $0(i,t,e){let n,o,s,r;const a=ct("hooks");let{tag:l}=t,c,d=!1;const f=()=>{c!==void 0&&clearTimeout(c),d=!0,c=setTimeout(()=>{d=!1},800)},u=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:mp}),i.$$.dirty&64&&e(1,r=(()=>{var y,P,I;const w=(I=(P=(y=l.style)==null?void 0:y.point)==null?void 0:P.size)!=null?I:"S";return typeof w=="number"?w:w==="S"?18:w==="M"?20:w==="L"?24:w==="XL"?28:18})())},f(),[n,r,s,o,u,h,l]}class eA extends oe{constructor(t){super(),ie(this,t,$0,K0,ne,{tag:6},q0)}}function tA(i){le(i,"svelte-bdubcv",".tag.hide.svelte-bdubcv{opacity:0;pointer-events:none}.tag.disable.svelte-bdubcv{display:none}.tag.withAnimation.svelte-bdubcv{transition:opacity 0.3s linear}.wrapper.svelte-bdubcv{position:absolute;width:0rem;height:0rem;overflow:visible;pointer-events:auto}")}function nA(i){let t;return{c(){t=V("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&&M(t)}}}function iA(i){let t,e;return t=new hl({props:{mediaStore:i[2],withAnimation:i[0],tag:Te(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=Te(n[1])),o&8&&(s.state=n[3]),o&16&&(s.temporaryState=n[4]),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function oA(i){let t;return{c(){t=V("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&&M(t)}}}function sA(i){let t,e;return t=new eA({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||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function rA(i){let t,e,n,o,s,r,a,l,c;const d=[iA,nA],f=[];function u(g,v){return g[12]?0:1}n=u(i),o=f[n]=d[n](i);const h=[sA,oA],p=[];function A(g,v){return g[13]?0:1}return r=A(i),a=p[r]=h[r](i),{c(){t=V("div"),e=V("div"),o.c(),s=ee(),a.c(),b(e,"class","wrapper svelte-bdubcv"),b(e,"data-tag-unfolded",i[8]),b(e,"data-tag-id",i[11]),b(e,"data-content-type",l=i[1].contentType),T(e,"left",i[7]),T(e,"top",i[6]),T(e,"z-index",i[5]),b(t,"class","tag svelte-bdubcv"),b(t,"data-tag-id",i[11]),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),f[n].m(e,null),Q(e,s),p[r].m(e,null),c=!0},p(g,[v]){let w=n;n=u(g),n===w?f[n].p(g,v):(se(),S(f[w],1,1,()=>{f[w]=null}),re(),o=f[n],o?o.p(g,v):(o=f[n]=d[n](g),o.c()),k(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()),k(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&&T(e,"left",g[7]),v&64&&T(e,"top",g[6]),v&32&&T(e,"z-index",g[5]),(!c||v&2048)&&b(t,"data-tag-id",g[11]),(!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||(k(o),k(a),c=!0)},o(g){S(o),S(a),c=!1},d(g){g&&M(t),f[n].d(),p[r].d()}}}function aA(i,t,e){let n,o,s,r,a,l,c,d,f,{withAnimation:u=!1}=t,{tag:h}=t,{mediaStore:p}=t,{state:A}=t,{temporaryState:g}=t;const v=ct("hooks");return i.$$set=w=>{"withAnimation"in w&&e(0,u=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,P,I,C,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=!((P=h.state)!=null&&P.visible)||((I=h.temporaryState)==null?void 0:I.visible)===!1),i.$$.dirty&2&&e(8,l=(C=h.state)==null?void 0:C.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,f=(B=h.state)!=null&&B.unfolded?1:0)},[u,h,p,A,g,f,d,c,l,a,r,s,o,n,v]}class lA extends oe{constructor(t){super(),ie(this,t,aA,rA,ne,{withAnimation:0,tag:1,mediaStore:2,state:3,temporaryState:4},tA)}}function cA(i){le(i,"svelte-qr9nko",".tag--container.svelte-qr9nko{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-qr9nko{transition:opacity 0.3s linear}.tag--container.hide.svelte-qr9nko{opacity:0;pointer-events:none}.tag--container.hide.svelte-qr9nko *{pointer-events:none}")}function Wr(i,t,e){const n=i.slice();return n[6]=t[e],n}function _r(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=Wr(i,s,a),c=r(l);n.set(c,e[a]=Xr(c,l))}return{c(){t=V("div");for(let a=0;a<e.length;a+=1)e[a].c();b(t,"class","tag--container svelte-qr9nko"),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=qe(e,l,r,1,a,s,n,t,Ot,Xr,null,Wr),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)k(e[l]);o=!0}},o(a){for(let l=0;l<e.length;l+=1)S(e[l]);o=!1},d(a){a&&M(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function Xr(i,t){let e,n,o;return n=new lA({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||(k(n.$$.fragment,s),o=!0)},o(s){S(n.$$.fragment,s),o=!1},d(s){s&&M(e),K(n,s)}}}function dA(i){let t,e,n=i[3].enabled&&_r(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&&k(n,1)):(n=_r(o),n.c(),k(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(k(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&M(t)}}}function uA(i,t,e){let{withAnimation:n=!1}=t,{tags:o=[]}=t,{hooks:s}=t,{mediaStore:r}=t,{state:a}=t,{temporaryState:l}=t;return Un("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 fA extends oe{constructor(t){super(),ie(this,t,uA,dA,ne,{withAnimation:0,tags:1,hooks:5,mediaStore:2,state:3,temporaryState:4},cA)}}const hA={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}}}};function mA(i){return i.stickType==="2DPoint"||i.stickType==="3DPoint"}function pA(i){return i.stickType==="3DPoint"||i.stickType==="Plane"}class gA extends li{constructor(e){super(e);m(this,"tagCacheByPanoIndex",{})}getCaches({panoIndex:e,id:n,key:o}){var c,d,f,u;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=`${(f=(d=s.work)==null?void 0:d.workCode)!=null?f: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(u=l.get(n))==null?void 0:u[o]}clearCache(){this.tagCacheByPanoIndex={}}}class AA extends gA{constructor(e){super(e);m(this,"tags",[]);m(this,"config",hA);m(this,"raycaster",new x.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]=St.default({},this.config.contentTypeConfig[e],n):this.config.contentTypeConfig[e]=n,this.clearCache()}getVisibleByPanoIndex(e,n){var r;const o=this.getCaches({panoIndex:n,id:e.id}),s=(r=this.five.panoIndex)!=null?r:n;if(o.visible!==void 0)return o.visible;{const a=(()=>{var d,f,u;const l=(d=this.getTagConfig(e).visibleConfig)!=null?d:{},c=this.getDistance(e);if(typeof l=="function")return l(this.five,{tag:e,distance:c});if(l.keep==="hidden")return!1;if(l.keep==="visible")return!0;if(l.visiblePanoIndex!==void 0&&l.visiblePanoIndex!=="all"&&s!==void 0&&(Array.isArray(l.visiblePanoIndex)&&!l.visiblePanoIndex.includes(s)||l.visiblePanoIndex==="current"&&s!==((f=e.fiveState)==null?void 0:f.panoIndex))||l.visibleDistance!==void 0&&l.visibleDistance!=="unLimited"&&rn(c,l.visibleDistance)===!1)return!1;if(l.intersectRaycaster!==!1&&(typeof l.intersectRaycaster!="object"||l.intersectRaycaster.enabled!==!1)){if(s===void 0)return!1;const h=(u=this.five.work.observers[s])==null?void 0:u.position;if(h===void 0)throw new Error(`getVisible(): observerPosition is ${h}`);const p=Mn(e.position).sub(h).normalize();this.raycaster.set(h,p);const[A]=this.five.model.intersectRaycaster(this.raycaster),g=(()=>{var v;return typeof l.intersectRaycaster=="object"&&(v=l.intersectRaycaster.distanceAccuracy)!=null?v:.01})();if(A&&A.distance+g<c)return!1}return!(l.angleRange&&pA(e)&&rn(this.getAngle(e),l.angleRange)===!1)})();return o.visible=a,o.visible}}getUnfoldedByPanoIndex(e,n){if(!this.getVisibleByPanoIndex(e))return;const s=this.getCaches({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(u=>this.getVisibleByPanoIndex(u)).filter(u=>{const h=this.getTagProject(u);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(u=>({tag:u,id:u.id,tagConfig:this.getTagConfig(u).unfoldedConfig})).filter(({tag:u,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(u=>he(G({},u),{distance:this.getDistance(u.tag)})).filter(({distance:u,tagConfig:h})=>{var p,A;return!(u===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(u,h.autoUnfold.distance)===!1)}).sort((u,h)=>u.distance-h.distance).findIndex(u=>u.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.getCaches({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=(()=>mA(e)?nt(e==null?void 0:e.position):Mn(e.position))(),f=c.distanceTo(d);return s.distance=f,f}}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.getCaches({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"?hn(e.normal):$a(e.position))();if(!d)return;const f=new x.Vector3().copy(c).sub(Mn(e.position)),u=d.angleTo(f)*180/Math.PI;return s.angle=u,s.angle}}getTagConfig(e){var s;if(!e)return(s=this.config.globalConfig)!=null?s:{};const n={};this.config.contentTypeConfig&&Object.keys(this.config.contentTypeConfig).forEach(r=>{const a=r;if(n[a])return;const l=a.split("-");if(l.length===1){const[c]=l;e.contentType===c&&(n[a]=this.config.contentTypeConfig[a])}if(l.length===2){const[c="Any",d="Any"]=l;(e.stickType===c||c==="Any")&&(e.contentType===d||d==="Any")&&(n[a]=this.config.contentTypeConfig[a])}if(l.length===3){const[c="Any",d,f]=l;if(d==="Audio"&&e.contentType==="Audio"){const u=e;(u.stickType===c||c==="Any")&&u.data.appearance===f&&(n[a]=this.config.contentTypeConfig[a])}}});const o=St.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}),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=void 0;return}const o=this.getTagProject(n);if(!o){n.pointTagStyle=void 0;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)})}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=Mn(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")}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})}}function vA(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 ml="2.0.6",Yi=`DnalogelPlugin-PanoTagPlugin@${ml}`,bA=!1,yA=i=>`${Yi}--${i}`;class pl extends AA{constructor(e,n){super(e);m(this,"version",ml);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",io({currentMediaElement:null}));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,"disposedErrorLog",()=>{console.error(`${Yi} is disposed`)});this.params=G({debug:!1,config:this.config},n),this.debug=this.params.debug,this.config=this.params.config,zr(1,{namespace:ti.GetAudioDuration}),zr(1,{namespace:ti.PlayAudio}),Object.assign(window,{[`__PANOTAGPLUGIN_DEBUG_${Date.now()}__`]:this}),Object.assign(window,{__PANOTAGPLUGIN_DEBUG__:this})}load(e,n){return Y(this,null,function*(){var o,s;if(this.clearTags(),console.log(Yi," load:",{data:e}),this.config=St.default({},this.config,{globalConfig:(o=e.globalConfig)!=null?o:{},contentTypeConfig:(s=e.contentTypeConfig)!=null?s:{}}),this.debug)try{ep(this.five,this.tags)}catch(r){console.error(r)}return this.addTag(e.tagList,n)})}addTag(e,n){return Y(this,null,function*(){const s=(Array.isArray(e)?e:[e]).map(r=>{const a=this.getTagConfig(r);return he(G({},r),{state:G({visible:void 0,unfolded:bA},a.initialState),hooks:new be.Subscribe,clickable:a.clickable,mergedConfig:a})}).filter(r=>r.position);return s.forEach(vA),this.tags.push(...s),tp(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(),!0})})}changeConfig(e,n=!0){n?this.config=St.default({},this.config,e):this.config=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}changeGlobalConfig(e,n=!0){n?this.config.globalConfig=St.default({},this.config.globalConfig,e):this.config.globalConfig=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}clearTags(){this.tags=[],this.clearCache(),this.disposeAllCSS3DContainer(),this.updateRenderAllTags()}show(e){return Y(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 Y(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.setState({enabled:!0},{userAction:n}),this.hooks.emit("enable",{userAction:n})}disable(e){const{userAction:n=!0}=e!=null?e:{};if(this.store.disposed)return this.disposedErrorLog();this.setState({enabled:!1},{userAction:n}),this.hooks.emit("disable",{userAction:n})}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.clearCache(),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=nt(n),this.updateRenderPlaneTag())}changeDataById(e,n,o=!0){const s=this.getTagById(e);!s||(o?s.data=St.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?St.default(s,n):Object.assign(s,n),(s==null?void 0:s.tag3DContentSvelte)&&(n==null?void 0:n.normal)&&(s.tag3DContentSvelte.currentNormal=nt(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})}setVisibleAndUnfolded(){return Y(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);return this.five.currentMode&&(this.isPanorama?(this.handleFivePanoArrived(),this.temporaryShow({withAnimation:!0})):this.temporaryHide()),e.on("wantsMoveToPano",o),e.on("modeChange",s),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("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}=Ys(ip(()=>{!this.store.resizeObserverDisposer||o()},500),e),{observe:a,unobserve:l}=Ys(Xs(()=>n(),400),e);return s(),a(),()=>{r(),l()}}handleFiveModeChange(e){e==="Panorama"?this.five.once("panoArrived",()=>this.temporaryShow({withAnimation:!0})):this.temporaryHide()}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.updateRenderPointTag(),this.updateRenderPlaneTag()}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 Xs(()=>{this.setUnfoldedByCamera(),this.updateRenderAllTags()},100)}handleFiveCameraUpdate(){this.updateRenderPointTag()}handleFivePanoArrived(){return Y(this,null,function*(){yield this.setVisibleAndUnfolded(),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 fA({target:o,props:{hooks:this.hooks,tags:e,state:this.state,temporaryState:this.temporaryState,mediaStore:this.mediaStore}})}}updateRenderPlaneTag(){this.sort([...this.filterPlaneTag(),...this.filter3DPointTag()]).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 H.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:np(this.five.camera.position,nt(n.position),nt(n.normal)),r=n.stickType==="Plane"?$a(n.position):nt(n.normal),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 hl({target:l.container,props:{tag:n,hooks:this.hooks,state:this.state,mediaStore:this.mediaStore,temporaryState:this.temporaryState}}),domContainer:l,initialNormal:r,currentNormal:r}}}),this.checkPanelTag()}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))}}}var gl=(i=>(i.Audio="Audio",i.Text="Text",i.ImageText="ImageText",i.Image="Image",i.Video="Video",i.Link="Link",i.VRLink="VRLink",i.PanoLink="PanoLink",i.Marketing="Marketing",i.MediaPlane="MediaPlane",i.Custom="Custom",i))(gl||{}),Al=(i=>(i.Two="2D",i.Three="3D",i))(Al||{}),vl=(i=>(i.PointTag="PointTag",i.PlaneTag="PlaneTag",i))(vl||{});const wA=(i,t)=>new pl(i,t);class po extends H.Object3D{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()}show(){this.visible=!0,this.render()}hide(){this.visible=!1,this.render()}updatePosition(){this.position.copy(this.originObject3D.position)}updateQuaternion(){this.quaternion.copy(this.originObject3D.quaternion)}applyHelperScaleMatrix4(e,n){this.scale.applyMatrix4(e)}applyHelperQuaternion(e,n){this.applyQuaternion(e)}}class CA extends po{}class EA extends po{}class PA extends po{}class IA extends PA{}class kA extends x.Group{constructor(e){super();m(this,"direction");this.direction=e||"x"}}class Yr extends x.Mesh{constructor(e,n,o){super(e,n);m(this,"direction");this.direction=o||"x"}}function xA(i,t){const{offsetWidth:e,offsetHeight:n}=t,{top:o,left:s}=t.getBoundingClientRect();return Object.assign(new x.Vector2,{x:(i.x-s)/e*2-1,y:-(i.y-o)/n*2+1})}function go(i,t,e){if(!t||!e||!i)return;const n=xA(t,e);if(Math.abs(n.x)===1||Math.abs(n.y)===1)return;const o=new x.Raycaster;return o.setFromCamera(n,i),o}function DA(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 Di extends kA{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 x.Color((d=e.color)!=null?d:16214315),o=new x.MeshBasicMaterial({color:n,depthTest:!1,opacity:1,transparent:!0,side:x.DoubleSide}),s=new x.ConeGeometry(.04,.1,32),r=new Yr(s,o.clone(),e.direction);r.name=`arrow-${e.direction}`,this.arrow=r;const a=.004,l=new x.CylinderGeometry(a,a,.4,32),c=new Yr(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 Li={X:15618642,Y:4765519,Z:4227839};class tt{static get X(){return new x.Color(Li.X).convertSRGBToLinear().clone()}static get Y(){return new x.Color(Li.Y).convertSRGBToLinear().clone()}static get Z(){return new x.Color(Li.Z).convertSRGBToLinear().clone()}}class LA extends CA{constructor(e){super(e);m(this,"xArrow",new Di({direction:"x",color:tt.X}));m(this,"yArrow",new Di({direction:"y",color:tt.Y}));m(this,"zArrow",new Di({direction:"z",color:tt.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 SA(document.createElement(t!=null?t:"div"),i)}function SA(i,t){if(!t)return i;for(const e in t)e&&t[e]&&(i.style[e]=t[e]);return i}function TA(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 MA extends EA{constructor(e,n){var o;super(e);m(this,"yzCircle",new Si({direction:"x",color:tt.X}));m(this,"xzCircle",new Si({direction:"y",color:tt.Y}));m(this,"xyCircle",new Si({direction:"z",color:tt.Z}));m(this,"xRingHelper",new Ti({direction:"x"}));m(this,"yRingHelper",new Ti({direction:"y"}));m(this,"zRingHelper",new Ti({direction:"z"}));m(this,"xAngleHelper",new Mi({direction:"x",color:tt.X}));m(this,"yAngleHelper",new Mi({direction:"y",color:tt.Y}));m(this,"zAngleHelper",new Mi({direction:"z",color:tt.Z}));m(this,"angleTips");m(this,"container");n&&(this.container=n==null?void 0:n.container,this.angleTips=TA({display:"none"}),(o=this.container)==null||o.appendChild(this.angleTips.element)),this.show()}updateAngleHelperQuaternion(){this.xAngleHelper.quaternion.copy(this.yzCircle.quaternion),this.yAngleHelper.quaternion.copy(this.xzCircle.quaternion),this.zAngleHelper.quaternion.copy(this.xyCircle.quaternion),this.xRingHelper.quaternion.copy(this.yzCircle.quaternion),this.yRingHelper.quaternion.copy(this.xzCircle.quaternion),this.zRingHelper.quaternion.copy(this.xyCircle.quaternion)}applyHelperQuaternion(e,n){this.yzCircle.applyQuaternion(e),this.xzCircle.applyQuaternion(e),this.xyCircle.applyQuaternion(e),this.xAngleHelper.baseAxes.applyQuaternion(e),this.yAngleHelper.baseAxes.applyQuaternion(e),this.zAngleHelper.baseAxes.applyQuaternion(e)}hide(){this.remove(this.yzCircle,this.xzCircle,this.xyCircle,this.xRingHelper,this.yRingHelper,this.zRingHelper,this.xAngleHelper,this.yAngleHelper,this.zAngleHelper)}show(){var e;this.add(this.xyCircle,this.xzCircle,this.yzCircle),this.remove(this.xRingHelper,this.yRingHelper,this.zRingHelper,this.xAngleHelper,this.yAngleHelper,this.zAngleHelper),(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),(e=this.angleTips)!=null&&e.element&&((n=this.container)==null||n.removeChild(this.angleTips.element))}filterRingHelper(e){return[this.xRingHelper,this.yRingHelper,this.zRingHelper].filter(n=>e.includes(n.direction))}filterAngleHelper(e){return[this.xAngleHelper,this.yAngleHelper,this.zAngleHelper].filter(n=>e.includes(n.direction))}}class Si extends x.Mesh{constructor(e){var n;super();m(this,"direction");m(this,"gapAngle",.02);m(this,"geometry",new x.RingGeometry(.25,.3,20,8,this.gapAngle,Math.PI/2-this.gapAngle*2));this.material=new x.MeshBasicMaterial({opacity:.6,color:(n=e.color)!=null?n:16777215,transparent:!0,side:x.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 Ti extends x.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 x.RingGeometry(.25,.3,20,8,Math.PI/4*r+n,Math.PI/4-n*2),l=new x.MeshBasicMaterial({opacity:1,color:16777215,depthTest:!1,transparent:!0,side:x.DoubleSide}),c=new x.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 Mi extends x.Mesh{constructor(e){var o;super();m(this,"direction");m(this,"baseAxes");switch(e.direction){case"x":this.baseAxes=new x.Vector3(0,0,1);break;case"y":this.baseAxes=new x.Vector3(1,0,0);break;case"z":this.baseAxes=new x.Vector3(1,0,0);break}const n=.3+5e-4;this.geometry=new x.CircleGeometry(n,48,0,1e-4),this.material=new x.MeshBasicMaterial({opacity:.4,color:(o=e.color)!=null?o:16777215,depthTest:!1,transparent:!0,side:x.DoubleSide}),this.direction=e.direction,this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}}function zA(){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:ht({cursor:"nesw-resize",left:n,bottom:n})},s={direction:"ns",element:ht({cursor:"ns-resize",bottom:n})},r={direction:"nwse",element:ht({cursor:"nwse-resize",right:n,bottom:n})},a={direction:"ew",element:ht({cursor:"ew-resize",right:n})},l={direction:"nesw",element:ht({cursor:"nesw-resize",right:n,top:n})},c={direction:"ns",element:ht({cursor:"ns-resize",top:n})},d={direction:"nwse",element:ht({cursor:"nwse-resize",left:n,top:n})},f={direction:"ew",element:ht({cursor:"ew-resize",left:n})};return new Array(s,a,c,f,o,r,l,d).forEach(h=>t.appendChild(h.element)),{container:i,squares:[o,s,r,a,l,c,d,f]}}function ht(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 BA extends IA{constructor(e,n,o,s){super(e);m(this,"points",[]);m(this,"cornerPositions",[]);m(this,"css3DInstance");m(this,"plane");m(this,"css3DRenderer",new Zt);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 x.Vector3().subVectors(o.position,n).applyQuaternion(e).add(n);o.position.copy(r),o.applyQuaternion(e)}if(this.plane){const r=new x.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 x.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}=zA();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)]}}new x.Vector3;function pe(i,t){this._camera=i||null,this._domElement=t||document,this._raycaster=new x.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);console.assert(l!==-1),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 x.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,f=r[0],u=f.object;this._selected=u,d=this._bound("mousemove",u),a!=u&&(l=this._bound("mouseover",u),c=a&&this._bound("mouseout",a))}else c=a&&this._bound("mouseout",a),this._selected=null;d&&this._notify("mousemove",u,n,f),l&&this._notify("mouseover",u,n,f),c&&this._notify("mouseout",a,n,f)}};pe.prototype._onEvent=function(i,t,e,n){var o=this._boundObjs[i];if(!(o===void 0||o.length===0)){var s=new x.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(console.assert(arguments.length===4),!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)}};let Lt=null;class Ao{constructor(t,e,n,o,s,r,a){m(this,"hooks",new $t);m(this,"helperObject3D");m(this,"originObject3D");m(this,"camera");m(this,"model");m(this,"scene");m(this,"container");m(this,"domEvents");m(this,"isDragging",!1);m(this,"onRender");m(this,"enabled",!1);m(this,"onWantsTapGesture",t=>{if(this.getIntersectObject(t))return!1});this.camera=t,this.model=e,this.originObject3D=n,this.helperObject3D=o,this.container=s,this.scene=r,this.domEvents=new pe(t,s),this.onRender=a!=null?a:()=>{},this.initialHelperPosition(),this.initialHelperQuaternion(),this.enable()}initialHelperPosition(){this.helperObject3D.updatePosition()}initialHelperQuaternion(){this.helperObject3D.updateQuaternion()}enable(){this.enabled||(this.enabled=!0,this.scene.add(this.helperObject3D),this.render())}disable(){!this.enabled||(this.enabled=!1,this.scene.remove(this.helperObject3D),this.render())}show(){this.helperObject3D.show(),this.render()}hide(){this.helperObject3D.hide(),this.render()}dispose(){this.helperObject3D.dispose(),this.scene.remove(this.helperObject3D),this.render()}setOpacity(t){this.setOriginOpacityProperty();const e=this.originObject3D;if(e instanceof x.Mesh&&(e.material.opacity=t),e.isCSS3DObjectPlus){const n=e;n.container.style.opacity=t.toString()}this.render()}restoreOpacity(){if(Lt===null)return;const t=this.originObject3D;if(t instanceof x.Mesh&&(t.material.opacity=Lt.opacity),t.isCSS3DObjectPlus){const e=t;e.container.style.opacity=Lt.opacity.toString()}this.render()}setOriginOpacityProperty(){var t,e;if(Lt===null){const n=this.originObject3D;n instanceof x.Mesh&&(Lt={opacity:n.material.opacity}),n instanceof ta&&(Lt={opacity:(t=n.container.style.opacity)!=null?t:1}),n.isCSS3DObjectPlus&&(Lt={opacity:Number((e=n.container.style.opacity)!=null?e:1)})}}updateHelperPosition(){this.helperObject3D.updatePosition()}updateHelperQuaternion(){this.helperObject3D.updateQuaternion()}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}render(){this.onRender()}hoverListener(t,e=16777215,n=1){const o=(Array.isArray(t)?t:[t]).filter(We),s=[];for(const r of o)if(r instanceof x.Mesh||r instanceof x.Group){const a=r instanceof x.Group?r.children.filter(u=>u instanceof x.Mesh):[r];a.forEach(u=>{u.__originalColor__=u.material.color.clone(),u.__originalOpacity__=u.material.opacity});const l=()=>{a.forEach(u=>{u.material.color.set(e),u.material.opacity=n}),this.render()},c=()=>{a.forEach(u=>{u.material.color.copy(u.__originalColor__),u.material.opacity=u.__originalOpacity__}),this.render()},d=()=>{this.isDragging||l()},f=()=>{this.isDragging||c()};for(const u of a)this.domEvents.addEventListener(u,"mouseover",d),this.domEvents.addEventListener(u,"mouseout",f),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",c),this.hooks.on("rotateEnd",c),s.push(()=>{this.domEvents.removeEventListener(u,"mouseover",d),this.domEvents.removeEventListener(u,"mouseout",f),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}}}class VA extends Ao{constructor(...e){super(...e);m(this,"startInfo");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);this.domEvents.addEventListener(this.helperObject3D,"mousedown",o),document.addEventListener("mousemove",s),document.addEventListener("mouseup",r)}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();const s=new x.Vector3(1,0,0).applyQuaternion(this.helperObject3D.quaternion),r=new x.Vector3(0,1,0).applyQuaternion(this.helperObject3D.quaternion),a=new x.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(),f=new x.Plane;f.setFromNormalAndCoplanarPoint(c,d),this.startInfo={startVectorProject:d.clone().projectOnVector(l),directionVector:l,plane:f},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=go(this.camera,e,this.container);return n?(console.log("%c RotateController 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 x.Vector3);if(!a)return;const l=a.clone().projectOnVector(o),c=l.clone().sub(s),d=new x.Matrix4;d.setPosition(c),r.applyMatrix4(d),this.helperObject3D.applyMatrix4(d),s.copy(l),this.hooks.emit("positionUpdate",{matrix4:d})}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 zi{constructor(t,e,n,o){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});const{camera:s,model:r,scene:a}=t,l=t.getElement();if(this.five=t,!s||!r||!l||!a)return;const c=()=>{t.needsRender=!0};this.helperController=new e(s,r,n,o,l,a,c),t.on("wantsTapGesture",this.onFiveWantsTapGesture),t.on("wantsGesture",this.onFiveWantsGesture)}}const jA="v1.0.1",QA="Object3DHelper",vo=`${QA}@${jA}`,RA=()=>{console.error(`${vo} is disposed`)},OA=()=>{console.warn(`${vo} is disabled`)},HA=()=>{console.error(`${vo} is disabled`)};class FA{constructor(t,e){m(this,"controllers",{});m(this,"state",{visible:!0,enabled:!0,disposed:!1});m(this,"hooks",new $t);m(this,"helpers");m(this,"eventListener",{});m(this,"handlePositionUpdate",(t,...e)=>{var s,r,a,l;const[n]=e,o=n==null?void 0:n.matrix4;o&&(t!==this.controllers.moveController&&((s=this.controllers.moveController)==null||s.applyHelperMatrix4(o)),t!==this.controllers.rotateController&&((r=this.controllers.rotateController)==null||r.applyHelperMatrix4(o)),t!==this.controllers.scaleController&&((a=this.controllers.scaleController)==null||a.applyHelperMatrix4(o)),(l=this.helpers.outlineHelper)==null||l.applyMatrix4(o))});m(this,"handleScaleUpdate",(t,...e)=>{var s,r;const[n]=e,o=n==null?void 0:n.matrix4;o&&((s=this.controllers.scaleController)==null||s.applyHelperScaleMatrix4(o,n),(r=this.helpers.outlineHelper)==null||r.scale.applyMatrix4(o))});m(this,"handleRotateUpdate",(t,...e)=>{var o,s,r,a;const[n]=e;if(n){const{quaternion:l,origin:c}=n;l&&(t!==this.controllers.moveController&&((o=this.controllers.moveController)==null||o.applyHelperQuaternion(l,c)),t!==this.controllers.rotateController&&((s=this.controllers.rotateController)==null||s.applyHelperQuaternion(l,c)),t!==this.controllers.scaleController&&((r=this.controllers.scaleController)==null||r.applyHelperQuaternion(l,c)),(a=this.helpers.outlineHelper)==null||a.applyQuaternion(l))}});t&&this.addControllers(t),this.helpers=e!=null?e:{},this.setState(this.state)}show(t){return Y(this,null,function*(){this.setState({visible:!0},t)})}hide(t){return Y(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 RA();if(!this.state.enabled&&t.enabled!==!0&&t.disposed!==!0)return HA();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.addEventListener(),this.setState(this.state)}addHelpers(t){this.helpers=G(G({},this.helpers),t)}getCurrentState(){return this.state}addEventListener(){for(const t in this.controllers){if(!t)continue;const e=t;this.eventListener[e]||(this.eventListener[e]=(()=>{const n=this.controllers[e];if(!n)return;const o=()=>this.handleStart(n),s=()=>this.handleEnd(n),r=(...c)=>this.handlePositionUpdate(n,...c),a=(...c)=>this.handleRotateUpdate(n,...c),l=(...c)=>this.handleScaleUpdate(n,...c);return n.hooks.on("moveStart",o),n.hooks.on("rotateStart",o),n.hooks.on("scaleStart",o),n.hooks.on("positionUpdate",r),n.hooks.on("rotateUpdate",a),n.hooks.on("scaleUpdate",l),n.hooks.on("moveEnd",s),n.hooks.on("rotateEnd",s),n.hooks.on("scaleEnd",s),()=>{n.hooks.off("moveStart",o),n.hooks.off("rotateStart",o),n.hooks.off("scaleStart",o),n.hooks.off("positionUpdate",r),n.hooks.off("rotateUpdate",a),n.hooks.off("scaleUpdate",l),n.hooks.off("moveEnd",s),n.hooks.off("rotateEnd",s),n.hooks.off("scaleEnd",s)}})())}}handleEnd(t){t&&this.setOtherHelpersVisible(!0,t)}handleStart(t){t&&this.setOtherHelpersVisible(!1,t)}setOtherHelpersVisible(t,e){var n,o,s,r;t?((s=this.controllers.moveController)==null||s.helperObject3D.show(),(r=this.controllers.rotateController)==null||r.helperObject3D.show()):(e!==this.controllers.moveController&&((n=this.controllers.moveController)==null||n.helperObject3D.hide()),e!==this.controllers.rotateController&&((o=this.controllers.rotateController)==null||o.helperObject3D.hide()))}handleEnable(t,e=!0){t?(this.everyControllerDo(n=>{n.enable()}),this.hooks.emit("enable",{userAction:e})):(this.everyControllerDo(n=>{n.disable(),n.restoreOpacity()}),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(),n.restoreOpacity()}),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(),n==null||n.restoreOpacity()});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&&OA()}}class GA extends Ao{constructor(...e){super(...e);m(this,"startInfo");m(this,"lastRotation");m(this,"rotations",[]);m(this,"helperObject3DQuaternion",this.originObject3D.quaternion.clone());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);this.domEvents.addEventListener(this.helperObject3D,"mousedown",o),document.addEventListener("mousemove",s),document.addEventListener("mouseup",r)}initialHelperQuaternion(){this.helperObject3D.updateAngleHelperQuaternion(),this.helperObject3D.applyHelperQuaternion(this.originObject3D.quaternion)}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.originObject3D.position.clone(),a=this.getAngleHelper(o);this.setTipsAngle(0);const l=s.clone();l.y+=.2,this.setTipsPosition(l);const c=new x.Vector3(1,0,0).applyQuaternion(this.helperObject3DQuaternion),d=new x.Vector3(0,1,0).applyQuaternion(this.helperObject3DQuaternion),f=new x.Vector3(0,0,1).applyQuaternion(this.helperObject3DQuaternion),u=(()=>{switch(o){case"x":return c;case"y":return d;case"z":return f}})(),h=new x.Plane().setFromNormalAndCoplanarPoint(u,s),p=new x.Vector3;h.projectPoint(s.clone(),p);const A=p.clone().sub(r),g=A.clone(),v=A.angleTo(a.baseAxes);this.setAngleHelperStart(o,v),this.setAngleHelperLength(o,0),this.rotations.push({vector:A.clone(),direction:!0}),this.startInfo={direction:o,startVector:A,staticStartVector:g,plane:h,angleHelper:a},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=go(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=this.originObject3D,c=e.ray.intersectPlane(o,new x.Vector3);if(!c)return;const d=l.position.clone(),f=new x.Vector3;o.projectPoint(c.clone(),f);const u=f.clone().sub(d);if(n.angleTo(u)===0||(this.lastRotation===void 0&&(this.lastRotation={angle:0}),this.rotations.length===0))return;const h=(()=>{if(this.rotations.length===1)return u.angleTo(s.baseAxes)>r.angleTo(s.baseAxes);{const A=this.rotations[this.rotations.length-1],g=this.rotations[this.rotations.length-2],v=u.angleTo(g.vector),w=u.angleTo(A.vector),y=A.vector.angleTo(g.vector);if(y===0||w===0||v===0)return;if(v>w&&v>y)return A.direction;if(v<y&&w<y||v<w&&w>y)return!A.direction}})();if(h===void 0)return console.warn("rotationDirection is undefined");this.rotations.push({vector:u,direction:h}),this.rotations=this.rotations.slice(-2),this.lastRotation.angle=this.lastRotation.angle+u.angleTo(n)*(h?1:-1),this.setAngleHelperLength(a,this.lastRotation.angle),this.setTipsAngle(this.lastRotation.angle/Math.PI*180);const p=new x.Quaternion().setFromUnitVectors(n.clone().normalize(),u.clone().normalize());l.applyQuaternion(p),this.helperObject3D.applyHelperQuaternion(p),this.helperObject3DQuaternion.premultiply(p),this.hooks.emit("rotateUpdate",{quaternion:p,origin:d}),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 x.Mesh&&o.geometry instanceof x.CircleGeometry){const{radius:s,segments:r,thetaLength:a}=o.geometry.parameters;o.geometry=new x.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 x.Mesh&&r.geometry instanceof x.CircleGeometry){const{radius:a,thetaStart:l}=r.geometry.parameters,c=Math.ceil(Math.abs(s)*(40/(2*Math.PI)));r.geometry=new x.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 NA extends Ao{constructor(...e){super(...e);m(this,"startInfo")}enable(){this.helperObject3D.enable(),super.enable()}disable(){this.helperObject3D.disable(),super.disable()}show(){this.helperObject3D.show(),super.show()}hide(){this.helperObject3D.hide(),super.hide()}getDragPlane(){const e=new x.Plane,n=this.helperObject3D.cornerPositions;if(n.length!==0)return n.length<3?e.setFromNormalAndCoplanarPoint(this.originObject3D.getWorldDirection(new H.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=go(this.camera,e,this.container);if(!n)return this.dragEnd();this.scale(n),console.log("%c RectangleScaleController dragging","color: #49de1b")}scale(e){var B,N;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 H.Vector3);if(!a||DA(a,this.camera.position))return;const l=new H.Vector3().addVectors(r[0],r[2]).divideScalar(2),{position:c,direction:d}=o,f=new H.Vector3().subVectors(r[1],r[0]),u=new H.Vector3().subVectors(r[3],r[0]),h=F=>{const X=new H.Vector3(0,0,0);if(!this.startInfo)return X;const j=(F==="ew"?f:u).clone(),E=c.clone().projectOnVector(j),R=a.clone().projectOnVector(j),O=l.clone().projectOnVector(j);if(R.equals(E))return X;if(F==="ns"&&typeof this.startInfo.dragPointInCenterBottom!="boolean"){const _=new H.Vector3().subVectors(R,O),J=_.x<0&&j.x>=0,de=_.y<0&&j.y>=0,ue=_.z<0&&j.z>=0;this.startInfo.dragPointInCenterBottom=J||de||ue}if(F==="ew"&&typeof this.startInfo.dragPointInCenterLeft!="boolean"){const _=new H.Vector3().subVectors(R,O),J=_.x<0&&j.x>=0,de=_.y<0&&j.y>=0,ue=_.z<0&&j.z>=0;this.startInfo.dragPointInCenterLeft=J||de||ue}const W=new H.Vector3().subVectors(R,E),U=W.length();return U>.3?(console.warn("offset.length() > 0.3, skipped",U),X):W},p=h("ew"),A=h("ns"),g=()=>{const F=p;this.helperObject3D.cornerPositions.forEach((X,j)=>{var E;(E=this.startInfo)!=null&&E.dragPointInCenterLeft?(j===0||j===3)&&X.add(F):(j===1||j===2)&&X.add(F)})},v=()=>{const F=A;this.helperObject3D.cornerPositions.forEach((X,j)=>{var E;(E=this.startInfo)!=null&&E.dragPointInCenterBottom?(j===0||j===1)&&X.add(F):(j===2||j===3)&&X.add(F)})};switch(d){case"ew":g();break;case"ns":v();break;case"nesw":case"nwse":g(),v()}const w=new H.Vector3().subVectors(r[1],r[0]).length()/f.length(),y=new H.Vector3().subVectors(r[3],r[0]).length()/u.length(),P=new H.Vector3(w,y,1),I=new x.Matrix4().scale(P);n.isCSS3DObjectPlus?n.applyScaleMatrix4(I):n.scale.applyMatrix4(I),o.position.copy(a);const C=new H.Vector3().addVectors(r[0],r[2]).divideScalar(2),L=new H.Vector3().subVectors(C,l),D=new x.Matrix4().setPosition(L);n.applyMatrix4(D),(B=this.helperObject3D.css3DInstance)==null||B.css3DObject.applyMatrix4(D),(N=this.helperObject3D.plane)==null||N.applyMatrix4(D),this.hooks.emit("scaleUpdate",{matrix4:I,helperOrigin:l}),this.hooks.emit("positionUpdate",{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 WA extends NA{constructor(...t){super(...t),this.addHTMLEventListener()}addHTMLEventListener(){this.helperObject3D.points.forEach(t=>{if(!t)return;const e=t.point,n=r=>this.dragStart(r,t),o=this.dragging.bind(this),s=this.dragEnd.bind(this);e.addEventListener("dragstart",n),e.addEventListener("drag",o),e.addEventListener("dragend",s)})}}const bo="v1.0.0",Ui="Object3DHelperPlugin",pi=`${Ui}@${bo}`,_A=()=>{console.error(`${pi} is disposed`)},XA=()=>{console.warn(`${pi} is disabled`)},YA=()=>{console.error(`${pi} is disabled`)};class bl extends li{constructor(e){super(e);m(this,"version",bo);m(this,"name",Ui);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 Zt(this.five.scene),console.warn("Object3DHelper: \u4F7F\u7528\u6B64\u63D2\u4EF6\u9700\u8981\u5728\u521D\u59CB\u5316five\u65F6\uFF0C\u8BBE\u7F6Efive\u53C2\u6570: { backgroundAlpha: 0, backgroundColor: 0x000000 }"),Object.assign(window,{[`__${Ui.toUpperCase()}_DEBUG__`]:this})}show(e){return Y(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return Y(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 _A();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return YA();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 d;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 FA;this.objectHelperMap.set(e,o);const s=(d=this.five.getElement())==null?void 0:d.parentElement,r=this.five.camera,{moveHelper:a=!0,rotateHelper:l=!0,scaleHelper:c=!0}=n;if(a){const f=new LA(e),u=new zi(this.five,VA,e,f);o.addControllers({moveController:u.helperController})}if(l){let f;s&&r&&(f={container:s});const u=new MA(e,f),h=new zi(this.five,GA,e,u);o.addControllers({rotateController:h.helperController})}if(c&&s){const f=new BA(e,s,r,this.five.scene),u=new zi(this.five,WA,e,f);o.addControllers({scaleController:u.helperController})}e.isCSS3DObjectPlus&&ia(this.five).then(()=>{var f,u;if(e.isCSS3DObjectPlus){const h=e,p=(f=this.css3DRender.behindModeCSS3DRenderer.wrapper)!=null?f:oa(this.five);p&&e&&(this.css3DObjectParentMap.set(h,h.parent),h.removeFromParent(),this.css3DRender.behindModeCSS3DRenderer.setWrapper(p),(u=this.css3DRender.getBehindCSS3DObjectGroup())==null||u.add(h),this.css3DRender.render(this.five.camera))}})}removeObject3DHelper(e){const n=this.objectHelperMap.get(e);if(!!n){if(e.isCSS3DObjectPlus){const o=e,s=this.css3DObjectParentMap.get(o);s==null||s.add(o),this.css3DRender.render(this.five.camera)}this.objectHelperMap.delete(e),n.dispose()}}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.everyHelperDo(e=>e.dispose())}everyHelperDo(e){this.objectHelperMap.forEach(n=>{n&&e(n)})}actionIfStateIsEnabled(e,n){if(this.state.enabled)return e();n!=null&&n.warnLog&&XA()}}const UA=i=>new bl(i);exports.CSS3DRender=Zt;exports.CSS3DRenderPlugin=en;exports.CameraMovementEffect=Sa;exports.CameraMovementPlugin=cf;exports.ContentType=gl;exports.CruisePlugin=Ym;exports.CruisePluginController=uo;exports.DIRECTION=Yt;exports.DISPLAY_STRATEGY_TYPE=Tt;exports.DimensionType=Al;exports.FLOOR_PLAN_ATTACHED_TO=gt;exports.FLOOR_TYPE_MAP=Zu;exports.GuideLinePlugin=Za;exports.ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE=Mt;exports.ItemLabelPlugin=vm;exports.Magnifier=Ba;exports.MapviewFloorplanPlugin=Du;exports.ModelChassisCompassPlugin=$u;exports.ModelEntryDoorGuidePlugin=nf;exports.ModelFloorplanPlugin=Pu;exports.ModelItemLabelPlugin=Kh;exports.ModelRoomLabelPlugin=jc;exports.ModelTVVideoPlugin=tm;exports.ModelViewPlugin=Xl;exports.Object3DHelperController=bl;exports.Object3DHelperPlugin=UA;exports.PLUGIN=pi;exports.PaintBrush=_l;exports.PaintBrushTypeEnum=et;exports.PanoCompassPlugin=Sf;exports.PanoCursorRaycasterPlugin=dc;exports.PanoDoorLabelPlugin=Tm;exports.PanoFloorplanRadarPlugin=Uu;exports.PanoMeasurePlugin=kh;exports.PanoMeasurePluginLine=Ft;exports.PanoMeasurePluginModel=fi;exports.PanoMeasurePluginPoint=_e;exports.PanoMeasurePluginPolyline=ui;exports.PanoRulerPlugin=mf;exports.PanoRulerProPlugin=If;exports.PanoSpatialTagPlugin=Fh;exports.PanoTagPlugin=wA;exports.PanoTagPluginController=pl;exports.PointType=vl;exports.ROOM_FETILE_TYPE_MAP=Ju;exports.ROOM_TYPE_MAP=qu;exports.Rotation=Ue;exports.TopviewFloorplanPlugin=Su;exports.Util=Fg;exports.VERSION=bo;exports.itemLabelPluginServerParams=bm;exports.modelItemLabelPluginServerParams=$h;exports.modelRoomLabelPluginServerParams=Qc;exports.pluginFlag=yA;
559
+ `;function Qg(){const i=new x.PlaneGeometry(.4,.4),t=Bg,e=new x.TextureLoader().load(t);e.encoding=x.sRGBEncoding;const n=new x.MeshBasicMaterial({map:e,transparent:!0,depthTest:!1});return new x.Mesh(i,n)}function Rg(){const i=new x.CurvePath;i.add(new x.LineCurve3(new x.Vector3(0,0,0),new x.Vector3(0,0,.1)));const t=new x.TubeGeometry(i,8,.003),e=new x.ShaderMaterial({vertexShader:Vg,fragmentShader:jg,depthTest:!1,transparent:!0});return new x.Mesh(t,e)}function Og(){const i=new x.SphereGeometry(.01,20,20),t=new x.MeshBasicMaterial({color:10349931,depthTest:!1,transparent:!0,side:x.DoubleSide}),e=new x.Mesh(i,t);return e.position.set(0,0,.1),e}class al extends x.Object3D{constructor(){super();m(this,"planeMesh");m(this,"lineMesh");m(this,"ballMesh");this.planeMesh=Qg(),this.lineMesh=Rg(),this.ballMesh=Og(),this.add(this.planeMesh,this.lineMesh,this.ballMesh)}updateWithIntersect(e){if(!e.face)return;const n=new x.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 ll{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 x.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(${Oa})`,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 x.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 co({progress:0}).to({progress:[1,0]}).duration(500).easing(ni.Easing.Quadratic.InOut).onUpdate(({progress:e})=>{}).play()}dispose(){var t;(t=this.disposeCss3DObject)==null||t.call(this)}}class Hg{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 x.Group);this.five=t,this.magnifier=(e==null?void 0:e.magnifier)===void 0?new sl(t,{dragEnabled:!0}):null,this.pointHelper=(e==null?void 0:e.pointHelper)===void 0?new al:null,this.pointDomHelper=(e==null?void 0:e.pointDomHelper)===void 0?new ll(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 Fg=Object.freeze(Object.defineProperty({__proto__:null,Interval:Xi,Rectangle:Lg,Magnifier:sl,getCoordsFromClient:Tg,getCoordsFromElement:rl,getRaycasterFromFivePointer:Mg,getIntersectFromRelativePosition:zg,PointHelper:al,PointDomHelper:ll,FivePointSelector:Hg,isNil:Rm,notNil:We,BetterTween:co,tweenProgress:La,nextFrame:ci,requestAnimationFrameInterval:di,getFrameTime:sf},Symbol.toStringTag,{value:"Module"}));function Gg(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 Cr(i,t,e){const n=i.slice();return n[0]=t[e],n}function Er(i,t,e){const n=i.slice();return n[0]=t[e],n}function Pr(i){let t,e=i[0]+"",n;return{c(){t=V("div"),n=Ee(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&&M(t)}}}function Ir(i){let t,e=i[0]&&Pr(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=Pr(n),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},d(n){e&&e.d(n),n&&M(t)}}}function kr(i){let t,e=i[0]+"",n;return{c(){t=V("div"),n=Ee(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&&M(t)}}}function xr(i){let t,e=i[0]&&kr(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=kr(n),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},d(n){e&&e.d(n),n&&M(t)}}}function Dr(i){let t,e,n=i[2].price.value+"",o,s,r=i[2].price.unit&&Lr(i);return{c(){t=V("div"),e=V("span"),o=Ee(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=Lr(a),r.c(),r.m(t,null)):r&&(r.d(1),r=null)},d(a){a&&M(t),r&&r.d()}}}function Lr(i){let t,e=i[2].price.unit+"",n;return{c(){t=V("span"),n=Ee(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&&M(t)}}}function Sr(i){let t,e=i[2].highlightText+"",n;return{c(){t=V("div"),n=Ee(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&&M(t)}}}function Ng(i){var X,j;let t,e,n,o,s,r,a,l,c,d,f,u,h,p,A=i[2].title+"",g,v,w,y=We((X=i[2].price)==null?void 0:X.value)&&((j=i[2].price)==null?void 0:j.value)!=="",P,I;e=new Ke({props:{visible:i[1],outDelay:500,left:61,bottom:87,blurRadius:150,spreadRadius:75}});let C=i[2].brandTags||[],L=[];for(let E=0;E<C.length;E+=1)L[E]=Ir(Er(i,C,E));let D=i[2].tags||[],B=[];for(let E=0;E<D.length;E+=1)B[E]=xr(Cr(i,D,E));let N=y&&Dr(i),F=i[2].highlightText&&Sr(i);return{c(){var E;t=V("div"),$(e.$$.fragment),n=ee(),o=V("div"),s=ee(),r=V("div"),a=V("img"),c=ee(),d=V("div");for(let R=0;R<L.length;R+=1)L[R].c();f=ee();for(let R=0;R<B.length;R+=1)B[R].c();u=ee(),h=V("div"),p=V("div"),g=Ee(A),v=ee(),w=V("div"),N&&N.c(),P=ee(),F&&F.c(),b(o,"class","line svelte-8mby9k"),T(o,"transition-delay",i[1]?Bn+"ms":Vn+Mr-Tr-40+"ms"),b(a,"class","headerImage svelte-8mby9k"),Ne(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"),T(w,"height",We((E=i[2].price)==null?void 0:E.value)&&i[2].highlightText?void 0:"1rem"),b(r,"class","content svelte-8mby9k"),T(r,"transition-delay",i[1]?Bn+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 O=0;O<L.length;O+=1)L[O].m(d,null);Q(d,f);for(let O=0;O<B.length;O+=1)B[O].m(d,null);Q(r,u),Q(r,h),Q(h,p),Q(p,g),Q(r,v),Q(r,w),N&&N.m(w,null),Q(w,P),F&&F.m(w,null),I=!0},p(E,[R]){var W,U,_;const O={};if(R&2&&(O.visible=E[1]),e.$set(O),R&2&&T(o,"transition-delay",E[1]?Bn+"ms":Vn+Mr-Tr-40+"ms"),(!I||R&4&&!Ne(a.src,l=E[2].headerPictureUrl))&&b(a,"src",l),R&4){C=E[2].brandTags||[];let J;for(J=0;J<C.length;J+=1){const de=Er(E,C,J);L[J]?L[J].p(de,R):(L[J]=Ir(de),L[J].c(),L[J].m(d,f))}for(;J<L.length;J+=1)L[J].d(1);L.length=C.length}if(R&4){D=E[2].tags||[];let J;for(J=0;J<D.length;J+=1){const de=Cr(E,D,J);B[J]?B[J].p(de,R):(B[J]=xr(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=We((W=E[2].price)==null?void 0:W.value)&&((U=E[2].price)==null?void 0:U.value)!==""),y?N?N.p(E,R):(N=Dr(E),N.c(),N.m(w,P)):N&&(N.d(1),N=null),E[2].highlightText?F?F.p(E,R):(F=Sr(E),F.c(),F.m(w,null)):F&&(F.d(1),F=null),R&4&&T(w,"height",We((_=E[2].price)==null?void 0:_.value)&&E[2].highlightText?void 0:"1rem"),R&2&&T(r,"transition-delay",E[1]?Bn+Vn+"ms":"0ms"),(!I||R&2)&&te(t,"unfolded",E[1]),(!I||R&8)&&te(t,"folded",E[3])},i(E){I||(k(e.$$.fragment,E),I=!0)},o(E){S(e.$$.fragment,E),I=!1},d(E){E&&M(t),K(e),lt(L,E),lt(B,E),N&&N.d(),F&&F.d()}}}const Bn=400,Tr=500,Vn=180,Mr=500;function Wg(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 _g extends oe{constructor(t){super(),ie(this,t,Wg,Ng,ne,{tag:0},Gg)}}const Jt="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=",un={};var ti=(i=>(i.Default="default",i.GetAudioDuration="getAudioDuration",i.PlayAudio="playAudio",i))(ti||{});function cl(i,t){const e=(t==null?void 0:t.namespace)||"default",n=un[e]||(un[e]=[]);let o=n.find(s=>!s.realSrc||s.realSrc===Jt);return o||(console.warn("\u672A\u627E\u5230\u7F13\u5B58\u97F3\u9891\uFF0C\u5DF2\u65B0\u5EFA",un),o=new mo(Jt),n.push(o)),i&&(o.src=i),o}function Xg(i){return Y(this,null,function*(){const t=(()=>i instanceof mo?i:cl(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 zr(i,t){const e=(t==null?void 0:t.namespace)||"default",n=un[e]||(un[e]=[]),o=i-n.length;if(!(o<=0))for(let s=0;s<o;s++)n.push(new mo(Jt))}class mo 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=this.initAudio.bind(this);document.addEventListener("click",n),this.removeDocumentEventListener=()=>{document.removeEventListener("click",n)}}get isBlankAudio(){return this.realSrc===Jt||!this.realSrc}get src(){return super.src}set src(e){super.src=e,this.realSrc=e}clear(){this.src=Jt,this.currentTime=0}initAudio(){this.inited||(this.src&&(this.inited=!0,this.removeDocumentEventListener()),this.src===Jt&&this.play())}}class Yg 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 Y(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=cl(this.sharedAudioSrc,{namespace:ti.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=u=>{var h;this.sharedAudioCurrentTime=e.currentTime,(h=this.ontimeupdate)==null||h.call(this,u)},o=u=>{var h;return(h=this.onplay)==null?void 0:h.call(this,u)},s=u=>{var h;(h=this.onpause)==null||h.call(this,u),this.clear()},r=u=>{var h;(h=this.onended)==null||h.call(this,u),this.sharedAudioCurrentTime=0},a=u=>{var h;return(h=this.onerror)==null?void 0:h.call(this,u)},l=u=>{var h;return(h=this.oncanplay)==null?void 0:h.call(this,u)},c=u=>{var h;return(h=this.oncanplaythrough)==null?void 0:h.call(this,u)},d=u=>{var h;return(h=this.onloadeddata)==null?void 0:h.call(this,u)},f=u=>{var h;return(h=this.onloadedmetadata)==null?void 0:h.call(this,u)};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",f),()=>{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",f)}}}function Ug(i){le(i,"svelte-13e7hxv",".audio.svelte-13e7hxv{pointer-events:auto;cursor:pointer;width:100%;height:100%}")}function Jg(i){let t,e,n,o;const s=i[8].default,r=it(s,i,i[7],null);return{c(){t=V("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",ha(i[1])),n=!0)},p(a,[l]){r&&r.p&&(!e||l&128)&&st(r,s,a,a[7],e?ot(s,a[7],l,null):rt(a[7]),null),(!e||l&1)&&b(t,"style",a[0])},i(a){e||(k(r,a),e=!0)},o(a){S(r,a),e=!1},d(a){a&&M(t),r&&r.d(a),n=!1,o()}}}function Zg(i,t,e){let{$$slots:n={},$$scope:o}=t,{url:s}=t,{enable:r=!0}=t,{style:a=""}=t,{hooksInfo:l}=t;const c=oi(),d=ct("hooks"),f=ct("mediaStore");let u,h=!0;function p(){e(5,u.onplay=g=>{d.emit("playStateChange",G({event:g,state:"playing",mediaInstance:u},l)),c("play"),e(6,h=!1)},u),e(5,u.onpause=g=>{d.emit("playStateChange",G({event:g,state:"paused",mediaInstance:u},l)),c("pause"),e(6,h=!0)},u),e(5,u.onloadedmetadata=g=>{typeof u.duration=="number"&&!Number.isNaN(u.duration)&&c("duration",u.duration)},u),e(5,u.ontimeupdate=g=>{c("timeupdate",u.currentTime)},u)}f.subscribe(({currentMediaElement:g})=>{g!==u&&(h||u==null||u.pause())});function A(g){!u||(d.emit("click",G({event:g,target:"AudioTagPlayIcon",audioInstance:u},l)),f.set({currentMediaElement:u}),d.emit("playStateChange",G({event:g,state:u.paused?"playing":"paused",mediaInstance:u},l)),u.paused?u.play():u.pause())}return i.$$set=g=>{"url"in g&&e(2,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&&(u==null||u.dispose(),e(5,u=new Yg(s)),c("audioRef",u),setTimeout(()=>c("audioRef",u),200),Xg(s).then(g=>c("duration",g)),p()),i.$$.dirty&40&&(r||u==null||u.pause()),i.$$.dirty&72&&c(r&&!h?"play":"pause")},[a,A,s,r,l,u,h,o,n]}class dl extends oe{constructor(t){super(),ie(this,t,Zg,Jg,ne,{url:2,enable:3,style:0,hooksInfo:4},Ug)}}function qg(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 Br(i){let t,e;return t=new Ke({props:{center:!0,blurRadius:12,spreadRadius:5}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function Kg(i){let t,e,n,o,s,r=i[1]&&Br();return{c(){t=V("div"),r&&r.c(),e=ee(),n=V("div"),o=V("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]),T(t,"width",i[5]),T(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&&k(r,1):(r=Br(),r.c(),k(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&&T(t,"width",a[5]),l&32&&T(t,"height",a[5])},i(a){s||(k(r),s=!0)},o(a){S(r),s=!1},d(a){a&&M(t),r&&r.d(),i[7](null),i[8](null)}}}function $g(i,t,e){let n,{playing:o}=t,{shadow:s=!1}=t,{style:r=null}=t,{width:a="100%"}=t,l,c;function d(u){Le[u?"unshift":"push"](()=>{c=u,e(4,c)})}function f(u){Le[u?"unshift":"push"](()=>{l=u,e(3,l)})}return i.$$set=u=>{"playing"in u&&e(0,o=u.playing),"shadow"in u&&e(1,s=u.shadow),"style"in u&&e(2,r=u.style),"width"in u&&e(6,a=u.width)},i.$$.update=()=>{i.$$.dirty&64&&e(5,n=typeof a=="number"?ye(a):a)},[o,s,r,l,c,n,a,d,f]}class ul extends oe{constructor(t){super(),ie(this,t,$g,Kg,ne,{playing:0,shadow:1,style:2,width:6},qg)}}function e0(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 Vr(i){var v,w;let t,e,n,o,s,r,a,l,c,d,f,u,h,p,A;e=new Ke({props:{visible:i[6],left:i[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}});let g=i[6]&&jr(i);return c=new tl({props:{visible:i[6],textUnfolded:i[1],content:i[5]}}),u=new fo({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=V("div"),$(e.$$.fragment),n=ee(),o=V("div"),s=V("div"),r=V("div"),g&&g.c(),a=ee(),l=V("div"),$(c.$$.fragment),f=ee(),$(u.$$.fragment),b(r,"class","audio-icon svelte-1s6gk4a"),De(()=>i[11].call(l)),T(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,P){z(y,t,P),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=Et(l,i[11].bind(l)),Q(t,f),q(u,t,null),h=!0,p||(A=Se(l,"click",i[7]),p=!0)},p(y,P){var D,B;const I={};P&64&&(I.visible=y[6]),P&8&&(I.left=y[3]/2+"px"),e.$set(I),y[6]?g?(g.p(y,P),P&64&&k(g,1)):(g=jr(y),g.c(),k(g,1),g.m(r,null)):g&&(se(),S(g,1,1,()=>{g=null}),re());const C={};P&64&&(C.visible=y[6]),P&2&&(C.textUnfolded=y[1]),P&32&&(C.content=y[5]),c.$set(C);const L={};P&64&&(L.unfolded=y[6]),P&8&&(L.length=y[3]),P&48&&(L.outDelay=y[4]+20*Math.min((B=(D=y[5])==null?void 0:D.length)!=null?B:10,15)),u.$set(L),(!h||P&64)&&te(t,"unfolded",y[6])},i(y){h||(k(e.$$.fragment,y),k(g),k(c.$$.fragment,y),k(u.$$.fragment,y),h=!0)},o(y){S(e.$$.fragment,y),S(g),S(c.$$.fragment,y),S(u.$$.fragment,y),h=!1},d(y){y&&M(t),K(e),g&&g.d(),K(c),d(),K(u),p=!1,A()}}}function jr(i){let t,e,n,o,s,r,a;return e=new Ke({props:{center:!0,blurRadius:15,spreadRadius:6}}),o=new dl({props:{enable:i[6],url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[t0]},$$scope:{ctx:i}}}),o.$on("play",i[8]),o.$on("pause",i[9]),o.$on("audioRef",i[10]),{c(){t=V("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||(k(e.$$.fragment,l),k(o.$$.fragment,l),l&&De(()=>{r&&r.end(1),s=Rt(t,Bt,{duration:1e3,delay:0,easing:qt}),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:qt})),a=!1},d(l){l&&M(t),K(e),K(o),l&&r&&r.end()}}}function t0(i){let t,e,n;return e=new ul({props:{playing:i[2]}}),{c(){t=V("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||(k(e.$$.fragment,o),n=!0)},o(o){S(e.$$.fragment,o),n=!1},d(o){o&&M(t),K(e)}}}function n0(i){let t,e,n=i[0].state&&Vr(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&&k(n,1)):(n=Vr(o),n.c(),k(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(k(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&M(t)}}}function i0(i,t,e){let n,o,s,{tag:r}=t,a=!1,l=!1,c;function d(){e(1,a=!a)}const f=()=>{e(2,l=!0)},u=()=>{e(2,l=!1)};function h(A){$i.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,f,u,h,p]}class o0 extends oe{constructor(t){super(),ie(this,t,i0,n0,ne,{tag:0},e0)}}function s0(i){const t=document.createElement("div");t.style.color=i,document.body.appendChild(t);const e=window.getComputedStyle(t).color;document.body.removeChild(t);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 r0(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 Qr(i){let t,e,n,o;return n=new dl({props:{style:"width: max-content; height: max-content;",enable:i[0].state.visible,url:i[0].data.audioUrl,hooksInfo:{tag:i[0]},$$slots:{default:[l0]},$$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=V("div"),e=V("div"),$(n.$$.fragment),b(e,"class","audio-tag svelte-58hfjf"),T(e,"background-color",i[1]),T(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&&T(e,"background-color",s[1]),r&32&&T(e,"color",s[5])},i(s){o||(k(n.$$.fragment,s),o=!0)},o(s){S(n.$$.fragment,s),o=!1},d(s){s&&M(t),K(n)}}}function a0(i){let t;return{c(){t=Ee(i[6])},m(e,n){z(e,t,n)},p(e,n){n&64&&xe(t,e[6])},d(e){e&&M(t)}}}function l0(i){let t,e,n,o,s,r,a;return n=new ul({props:{playing:i[2]}}),r=new ho({props:{maxWidth:72,$$slots:{default:[a0]},$$scope:{ctx:i}}}),{c(){t=V("div"),e=V("div"),$(n.$$.fragment),o=ee(),s=V("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 f={};c&8256&&(f.$$scope={dirty:c,ctx:l}),r.$set(f)},i(l){a||(k(n.$$.fragment,l),k(r.$$.fragment,l),a=!0)},o(l){S(n.$$.fragment,l),S(r.$$.fragment,l),a=!1},d(l){l&&M(t),K(n),K(r)}}}function c0(i){let t,e,n=i[0].state&&Qr(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&&k(n,1)):(n=Qr(o),n.c(),k(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(k(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&M(t)}}}function d0(i,t,e){let n,o,s,{tag:r}=t;oi();let a=!1,l=0,c=0;const d=()=>{e(2,a=!0)},f=()=>{e(2,a=!1)},u=A=>{e(3,l=A.detail)},h=A=>{e(4,c=A.detail)};function p(A){$i.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}=s0(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,f,u,h,p]}class u0 extends oe{constructor(t){super(),ie(this,t,d0,c0,ne,{tag:0},r0)}}function f0(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||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function h0(i){let t,e;return t=new o0({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||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function m0(i){let t,e,n,o;const s=[h0,f0],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()),k(e,1),e.m(n.parentNode,n)):e=null)},i(l){o||(k(e),o=!0)},o(l){S(e),o=!1},d(l){~t&&r[t].d(l),l&&M(n)}}}function p0(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 g0 extends oe{constructor(t){super(),ie(this,t,p0,m0,ne,{tag:0})}}function A0(i){le(i,"svelte-10cw0el",".media-wrapper.svelte-10cw0el{position:absolute;width:100%;height:100%}")}function Rr(i){var o;let t,e,n;return e=new ol({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=V("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||(k(e.$$.fragment,s),n=!0)},o(s){S(e.$$.fragment,s),n=!1},d(s){s&&M(t),K(e)}}}function v0(i){let t,e,n=i[0].state&&i[5]&&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&&o[5]?n?(n.p(o,s),s&33&&k(n,1)):(n=Rr(o),n.c(),k(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(k(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&M(t)}}}function b0(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,f;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=(f=c.data.objectFit)!=null?f:(()=>c.data.adaptationMode==="stretch"?"cover":c.data.adaptationMode==="proportional"?"contain":void 0)())},[c,s,l,a,r,o,n]}class y0 extends oe{constructor(t){super(),ie(this,t,b0,v0,ne,{tag:0},A0)}}function w0(i){return Y(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 C0(i){return Y(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 w0(e),a=s/n,l=r/n,c=a/t,d=l,f=1/o*t+"s",u=a/t-a;return{url:e,keyframesWidth:a,keyframesHeight:l,wrapperWidth:c,wrapperHeight:d,steps:t,duration:f,offsetX:u,offsetY:0}})}function E0(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 Or(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 Hr(i){let t,e,n,o=i[2]&&Fr();function s(l,c){return l[3]?I0:P0}let r=s(i),a=r(i);return{c(){t=V("div"),o&&o.c(),e=ee(),a.c(),b(t,"class","icon"),T(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&&k(o,1):(o=Fr(),o.c(),k(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&&T(t,"width",typeof l[0]=="number"?ye(l[0]):l[0])},i(l){n||(k(o),n=!0)},o(l){S(o),n=!1},d(l){l&&M(t),o&&o.d(),a.d()}}}function Fr(i){let t,e;return t=new Ke({props:{center:!0,blurRadius:24,spreadRadius:16}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function P0(i){let t,e;return{c(){t=V("img"),b(t,"class","icon-image svelte-mhs8j5"),Ne(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&&!Ne(t.src,e=n[1].url)&&b(t,"src",e)},d(n){n&&M(t)}}}function I0(i){let t,e,n={ctx:i,current:null,token:null,hasCatch:!1,pending:D0,then:x0,catch:k0,value:14};return To(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]))&&To(e,n)||wc(n,i,s)},d(o){o&&M(t),n.block.d(o),n.token=null,n=null}}}function k0(i){return{c:Z,m:Z,p:Z,d:Z}}function x0(i){Or(i);let t,e,n,o=`url(${i[6]})`,s=`steps(${i[11]-1})`;return{c(){t=V("div"),e=V("div"),n=V("div"),b(n,"class","icon-keyframe svelte-mhs8j5"),T(n,"width",ye(i[7])),T(n,"height",ye(i[8])),T(n,"background-image",o),T(n,"animation-duration",i[12]),T(n,"animation-timing-function",s),T(n,"animation-delay",0),T(n,"background-size","100% 100%"),T(n,"--keyframe_offset_x",ye(i[13])),b(e,"class","icon-keyframe-wrapper svelte-mhs8j5"),T(e,"transform",typeof i[0]=="number"?`scale(${i[0]/i[9]})`:void 0),b(t,"class","icon-keyframe-container svelte-mhs8j5"),T(t,"width",typeof i[0]=="number"?ye(i[0]):ye(i[9])),T(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){Or(r),a&2&&T(n,"width",ye(r[7])),a&2&&T(n,"height",ye(r[8])),a&2&&o!==(o=`url(${r[6]})`)&&T(n,"background-image",o),a&2&&T(n,"animation-duration",r[12]),a&2&&s!==(s=`steps(${r[11]-1})`)&&T(n,"animation-timing-function",s),a&2&&T(n,"--keyframe_offset_x",ye(r[13])),a&3&&T(e,"transform",typeof r[0]=="number"?`scale(${r[0]/r[9]})`:void 0),a&3&&T(t,"width",typeof r[0]=="number"?ye(r[0]):ye(r[9])),a&3&&T(t,"height",typeof r[0]=="number"?ye(r[10]*(r[0]/r[9])):ye(r[10]))},d(r){r&&M(t)}}}function D0(i){return{c:Z,m:Z,p:Z,d:Z}}function L0(i){let t,e,n=i[1]&&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[1]?n?(n.p(o,s),s&2&&k(n,1)):(n=Hr(o),n.c(),k(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(k(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&M(t)}}}function S0(i,t,e){let n,{width:o=null}=t,{icon:s=null}=t,{shadow:r=!1}=t;const a=oi();function l(c){return Y(this,null,function*(){const d=yield C0(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 fl extends oe{constructor(t){super(),ie(this,t,S0,L0,ne,{width:0,icon:1,shadow:2},E0)}}function T0(i){le(i,"svelte-1lmyni6",".wrapper.svelte-1lmyni6{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-1lmyni6{position:relative;display:flex;align-items:center;justify-content:center}.text.svelte-1lmyni6{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;word-break:break-all;line-height:1.125rem;text-shadow:0.125rem 0rem 0.5rem rgba(0, 0, 0, 0.15)}")}function Gr(i){let t,e,n,o,s,r;return e=new Ke({props:{outDelay:0,inDelay:0,center:!0,width:"80%",blurRadius:40,spreadRadius:16,opacity:.08}}),{c(){t=V("div"),$(e.$$.fragment),n=ee(),o=V("div"),s=Ee(i[1]),b(o,"class","text svelte-1lmyni6"),b(t,"class","text-wrapper svelte-1lmyni6")},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||(k(e.$$.fragment,a),r=!0)},o(a){S(e.$$.fragment,a),r=!1},d(a){a&&M(t),K(e)}}}function M0(i){let t,e,n,o;e=new fl({props:{icon:i[0],shadow:!0}}),e.$on("iconLoaded",i[9]);let s=i[1]&&i[2]&&Gr(i);return{c(){t=V("div"),$(e.$$.fragment),n=ee(),s&&s.c(),b(t,"class","wrapper svelte-1lmyni6")},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&&k(s,1)):(s=Gr(r),s.c(),k(s,1),s.m(t,null)):s&&(se(),S(s,1,1,()=>{s=null}),re())},i(r){o||(k(e.$$.fragment,r),k(s),o=!0)},o(r){S(e.$$.fragment,r),S(s),o=!1},d(r){r&&M(t),K(e),s&&s.d()}}}function z0(i,t,e){let n,o,s,r,a,l,c,d,{tag:f}=t;const u=()=>{e(2,n=!0)};return i.$$set=h=>{"tag"in h&&e(3,f=h.tag)},i.$$.update=()=>{var h,p;i.$$.dirty&8&&e(1,o=(h=f.data.title)!=null?h:f.data.text),i.$$.dirty&8&&e(8,s=(p=f.data.icon)!=null?p:f.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,f,c,l,a,r,s,u]}class B0 extends oe{constructor(t){super(),ie(this,t,z0,M0,ne,{tag:3},T0)}}function V0(i){le(i,"svelte-kzl2aj",".customElement__container.svelte-kzl2aj{position:relative}")}function Nr(i){let t,e=i[0].element+"",n;return{c(){t=new _n(!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&&M(n),o&&t.d()}}}function j0(i){let t,e=typeof i[0].element=="string"&&Nr(i);return{c(){t=V("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=Nr(n),e.c(),e.m(t,null)):e&&(e.d(1),e=null)},i:Z,o:Z,d(n){n&&M(t),e&&e.d(),i[2](null)}}}function Q0(i,t,e){let{tag:n}=t,o,s;Ze(()=>{if(o){if(n.element instanceof Element){const a=n.element;o.appendChild(a),s=()=>o==null?void 0:o.removeChild(a)}else if(typeof n.element=="function"){const a=n.element;s=a(o)}}}),It(()=>{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 R0 extends oe{constructor(t){super(),ie(this,t,Q0,j0,ne,{tag:0},V0)}}function O0(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,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) 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 H0(i){let t,e;return{c(){t=V("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&&M(t)}}}function F0(i){let t,e,n,o,s,r,a,l,c;const d=[U0,Y0,X0,_0,W0,N0,G0],f=[];function u(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"?6:-1}return~(o=u(i))&&(s=f[o]=d[o](i)),{c(){var h,p,A;t=V("div"),e=V("div"),n=V("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[3].visible||!i[3].enabled||!i[4].visible||!((p=i[1].state)!=null&&p.visible)||((A=i[1].temporaryState)==null?void 0:A.visible)===!1),te(t,"withAnimation",i[0]),te(t,"unClickable",i[1].clickable===!1),T(t,"width",i[1].stickType==="Plane"?"100%":0),T(t,"height",i[1].stickType==="Plane"?"100%":0)},m(h,p){z(h,t,p),Q(t,e),Q(e,n),~o&&f[o].m(n,null),a=!0,l||(c=Se(t,"click",ha(i[12])),l=!0)},p(h,p){var g,v,w;let A=o;o=u(h),o===A?~o&&f[o].p(h,p):(s&&(se(),S(f[A],1,1,()=>{f[A]=null}),re()),~o?(s=f[o],s?s.p(h,p):(s=f[o]=d[o](h),s.c()),k(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&26)&&te(t,"hide",!h[3].visible||!h[3].enabled||!h[4].visible||!((v=h[1].state)!=null&&v.visible)||((w=h[1].temporaryState)==null?void 0:w.visible)===!1),(!a||p&1)&&te(t,"withAnimation",h[0]),(!a||p&2)&&te(t,"unClickable",h[1].clickable===!1),p&2&&T(t,"width",h[1].stickType==="Plane"?"100%":0),p&2&&T(t,"height",h[1].stickType==="Plane"?"100%":0)},i(h){a||(k(s),a=!0)},o(h){S(s),a=!1},d(h){h&&M(t),~o&&f[o].d(),l=!1,c()}}}function G0(i){let t,e;return t=new y0({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function N0(i){let t,e;return t=new B0({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function W0(i){let t,e;return t=new _g({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(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 g0({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function X0(i){let t,e;return t=new Dg({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(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 Fp({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function U0(i){let t,e;return t=new R0({props:{tag:Te(i[1])}}),{c(){$(t.$$.fragment)},m(n,o){q(t,n,o),e=!0},p(n,o){const s={};o&2&&(s.tag=Te(n[1])),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function J0(i){let t,e,n,o;const s=[F0,H0],r=[];function a(l,c){return l[5]?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()),k(e,1),e.m(n.parentNode,n))},i(l){o||(k(e),o=!0)},o(l){S(e),o=!1},d(l){r[t].d(l),l&&M(n)}}}function Z0(i,t,e){let n,o,s,r,a,{withAnimation:l=!1}=t,{tag:c}=t,{hooks:d}=t,{state:f}=t,{mediaStore:u}=t,{temporaryState:h}=t;Un("hooks",d),Un("mediaStore",u);let p,A;function g(w){w?d.emit("exposure",{id:r,type:"start"}):d.emit("exposure",{id:r,type:"end"})}const v=w=>d.emit("click",{event:w,target:"TagContent",tag:c});return i.$$set=w=>{"withAnimation"in w&&e(0,l=w.withAnimation),"tag"in w&&e(1,c=w.tag),"hooks"in w&&e(2,d=w.hooks),"state"in w&&e(3,f=w.state),"mediaStore"in w&&e(6,u=w.mediaStore),"temporaryState"in w&&e(4,h=w.temporaryState)},i.$$.update=()=>{var w,y,P,I,C,L,D,B,N,F,X;i.$$.dirty&2&&e(10,n=(w=c.state)==null?void 0:w.unfolded),i.$$.dirty&2&&e(9,o=(y=c.state)==null?void 0:y.visible),i.$$.dirty&26&&e(11,s=f.visible&&h.visible&&((P=c.state)==null?void 0:P.visible)),i.$$.dirty&2&&(r=c.id),i.$$.dirty&2048&&g(s),i.$$.dirty&1922&&c.hooks&&(n!==void 0&&n!==A&&(e(8,A=n),n?(C=(I=c.hooks).emit)==null||C.call(I,"unfolded"):(D=c==null?void 0:(L=c.hooks).emit)==null||D.call(L,"folded")),o!==void 0&&o!==p&&(e(7,p=o),o?(N=(B=c.hooks).emit)==null||N.call(B,"show"):(X=(F=c.hooks).emit)==null||X.call(F,"hide"))),i.$$.dirty&2&&e(5,a=(()=>!(typeof c.mergedConfig.unfoldedConfig=="object"&&c.mergedConfig.unfoldedConfig.keep==="folded"))())},[l,c,d,f,h,a,u,p,A,o,n,s,v]}class hl extends oe{constructor(t){super(),ie(this,t,Z0,J0,ne,{withAnimation:0,tag:1,hooks:2,state:3,mediaStore:6,temporaryState:4},O0)}}function q0(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 K0(i){let t,e,n,o,s,r,a,l,c,d,f,u;return o=new Ke({props:{center:!0,blurRadius:15,spreadRadius:5,opacity:.3}}),c=new fl({props:{icon:i[2],width:i[1]}}),{c(){t=V("div"),e=ee(),n=V("div"),$(o.$$.fragment),s=ee(),r=V("div"),a=ee(),l=V("div"),$(c.$$.fragment),b(t,"class","tag-point-click-helper svelte-yex9rb"),b(r,"class","tag-unfolded-point svelte-yex9rb"),T(r,"transition-delay",(i[3]?i[5]:0)+"ms"),b(l,"class","tag-folded-point svelte-yex9rb"),T(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]),T(n,"width",ye(i[1])),T(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,f||(u=Se(t,"click",i[4]),f=!0)},p(h,[p]){p&8&&T(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&&T(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&&T(n,"width",ye(h[1])),p&2&&T(n,"height",ye(h[1]))},i(h){d||(k(o.$$.fragment,h),k(c.$$.fragment,h),d=!0)},o(h){S(o.$$.fragment,h),S(c.$$.fragment,h),d=!1},d(h){h&&M(t),h&&M(e),h&&M(n),K(o),K(c),f=!1,u()}}}function $0(i,t,e){let n,o,s,r;const a=ct("hooks");let{tag:l}=t,c,d=!1;const f=()=>{c!==void 0&&clearTimeout(c),d=!0,c=setTimeout(()=>{d=!1},800)},u=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:mp}),i.$$.dirty&64&&e(1,r=(()=>{var y,P,I;const w=(I=(P=(y=l.style)==null?void 0:y.point)==null?void 0:P.size)!=null?I:"S";return typeof w=="number"?w:w==="S"?18:w==="M"?20:w==="L"?24:w==="XL"?28:18})())},f(),[n,r,s,o,u,h,l]}class eA extends oe{constructor(t){super(),ie(this,t,$0,K0,ne,{tag:6},q0)}}function tA(i){le(i,"svelte-bdubcv",".tag.hide.svelte-bdubcv{opacity:0;pointer-events:none}.tag.disable.svelte-bdubcv{display:none}.tag.withAnimation.svelte-bdubcv{transition:opacity 0.3s linear}.wrapper.svelte-bdubcv{position:absolute;width:0rem;height:0rem;overflow:visible;pointer-events:auto}")}function nA(i){let t;return{c(){t=V("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&&M(t)}}}function iA(i){let t,e;return t=new hl({props:{mediaStore:i[2],withAnimation:i[0],tag:Te(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=Te(n[1])),o&8&&(s.state=n[3]),o&16&&(s.temporaryState=n[4]),t.$set(s)},i(n){e||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function oA(i){let t;return{c(){t=V("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&&M(t)}}}function sA(i){let t,e;return t=new eA({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||(k(t.$$.fragment,n),e=!0)},o(n){S(t.$$.fragment,n),e=!1},d(n){K(t,n)}}}function rA(i){let t,e,n,o,s,r,a,l,c;const d=[iA,nA],f=[];function u(g,v){return g[12]?0:1}n=u(i),o=f[n]=d[n](i);const h=[sA,oA],p=[];function A(g,v){return g[13]?0:1}return r=A(i),a=p[r]=h[r](i),{c(){t=V("div"),e=V("div"),o.c(),s=ee(),a.c(),b(e,"class","wrapper svelte-bdubcv"),b(e,"data-tag-unfolded",i[8]),b(e,"data-tag-id",i[11]),b(e,"data-content-type",l=i[1].contentType),T(e,"left",i[7]),T(e,"top",i[6]),T(e,"z-index",i[5]),b(t,"class","tag svelte-bdubcv"),b(t,"data-tag-id",i[11]),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),f[n].m(e,null),Q(e,s),p[r].m(e,null),c=!0},p(g,[v]){let w=n;n=u(g),n===w?f[n].p(g,v):(se(),S(f[w],1,1,()=>{f[w]=null}),re(),o=f[n],o?o.p(g,v):(o=f[n]=d[n](g),o.c()),k(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()),k(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&&T(e,"left",g[7]),v&64&&T(e,"top",g[6]),v&32&&T(e,"z-index",g[5]),(!c||v&2048)&&b(t,"data-tag-id",g[11]),(!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||(k(o),k(a),c=!0)},o(g){S(o),S(a),c=!1},d(g){g&&M(t),f[n].d(),p[r].d()}}}function aA(i,t,e){let n,o,s,r,a,l,c,d,f,{withAnimation:u=!1}=t,{tag:h}=t,{mediaStore:p}=t,{state:A}=t,{temporaryState:g}=t;const v=ct("hooks");return i.$$set=w=>{"withAnimation"in w&&e(0,u=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,P,I,C,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=!((P=h.state)!=null&&P.visible)||((I=h.temporaryState)==null?void 0:I.visible)===!1),i.$$.dirty&2&&e(8,l=(C=h.state)==null?void 0:C.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,f=(B=h.state)!=null&&B.unfolded?1:0)},[u,h,p,A,g,f,d,c,l,a,r,s,o,n,v]}class lA extends oe{constructor(t){super(),ie(this,t,aA,rA,ne,{withAnimation:0,tag:1,mediaStore:2,state:3,temporaryState:4},tA)}}function cA(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 Wr(i,t,e){const n=i.slice();return n[6]=t[e],n}function _r(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=Wr(i,s,a),c=r(l);n.set(c,e[a]=Xr(c,l))}return{c(){t=V("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=qe(e,l,r,1,a,s,n,t,Ot,Xr,null,Wr),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)k(e[l]);o=!0}},o(a){for(let l=0;l<e.length;l+=1)S(e[l]);o=!1},d(a){a&&M(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function Xr(i,t){let e,n,o;return n=new lA({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||(k(n.$$.fragment,s),o=!0)},o(s){S(n.$$.fragment,s),o=!1},d(s){s&&M(e),K(n,s)}}}function dA(i){let t,e,n=i[3].enabled&&_r(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&&k(n,1)):(n=_r(o),n.c(),k(n,1),n.m(t.parentNode,t)):n&&(se(),S(n,1,1,()=>{n=null}),re())},i(o){e||(k(n),e=!0)},o(o){S(n),e=!1},d(o){n&&n.d(o),o&&M(t)}}}function uA(i,t,e){let{withAnimation:n=!1}=t,{tags:o=[]}=t,{hooks:s}=t,{mediaStore:r}=t,{state:a}=t,{temporaryState:l}=t;return Un("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 fA extends oe{constructor(t){super(),ie(this,t,uA,dA,ne,{withAnimation:0,tags:1,hooks:5,mediaStore:2,state:3,temporaryState:4},cA)}}const hA={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}}}};function mA(i){return i.stickType==="2DPoint"||i.stickType==="3DPoint"}function pA(i){return i.stickType==="3DPoint"||i.stickType==="Plane"}class gA extends li{constructor(e){super(e);m(this,"tagCacheByPanoIndex",{})}getCaches({panoIndex:e,id:n,key:o}){var c,d,f,u;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=`${(f=(d=s.work)==null?void 0:d.workCode)!=null?f: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(u=l.get(n))==null?void 0:u[o]}clearCache(){this.tagCacheByPanoIndex={}}}class AA extends gA{constructor(e){super(e);m(this,"tags",[]);m(this,"config",hA);m(this,"raycaster",new x.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]=St.default({},this.config.contentTypeConfig[e],n):this.config.contentTypeConfig[e]=n,this.clearCache()}getVisibleByPanoIndex(e,n){var r;const o=this.getCaches({panoIndex:n,id:e.id}),s=(r=this.five.panoIndex)!=null?r:n;if(o.visible!==void 0)return o.visible;{const a=(()=>{var d,f,u;const l=(d=this.getTagConfig(e).visibleConfig)!=null?d:{},c=this.getDistance(e);if(typeof l=="function")return l(this.five,{tag:e,distance:c});if(l.keep==="hidden")return!1;if(l.keep==="visible")return!0;if(l.visiblePanoIndex!==void 0&&l.visiblePanoIndex!=="all"&&s!==void 0&&(Array.isArray(l.visiblePanoIndex)&&!l.visiblePanoIndex.includes(s)||l.visiblePanoIndex==="current"&&s!==((f=e.fiveState)==null?void 0:f.panoIndex))||l.visibleDistance!==void 0&&l.visibleDistance!=="unLimited"&&rn(c,l.visibleDistance)===!1)return!1;if(l.intersectRaycaster!==!1&&(typeof l.intersectRaycaster!="object"||l.intersectRaycaster.enabled!==!1)){if(s===void 0)return!1;const h=(u=this.five.work.observers[s])==null?void 0:u.position;if(h===void 0)throw new Error(`getVisible(): observerPosition is ${h}`);const p=Mn(e.position).sub(h).normalize();this.raycaster.set(h,p);const[A]=this.five.model.intersectRaycaster(this.raycaster),g=(()=>{var v;return typeof l.intersectRaycaster=="object"&&(v=l.intersectRaycaster.distanceAccuracy)!=null?v:.01})();if(A&&A.distance+g<c)return!1}return!(l.angleRange&&pA(e)&&rn(this.getAngle(e),l.angleRange)===!1)})();return o.visible=a,o.visible}}getUnfoldedByPanoIndex(e,n){if(!this.getVisibleByPanoIndex(e))return;const s=this.getCaches({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(u=>this.getVisibleByPanoIndex(u)).filter(u=>{const h=this.getTagProject(u);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(u=>({tag:u,id:u.id,tagConfig:this.getTagConfig(u).unfoldedConfig})).filter(({tag:u,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(u=>he(G({},u),{distance:this.getDistance(u.tag)})).filter(({distance:u,tagConfig:h})=>{var p,A;return!(u===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(u,h.autoUnfold.distance)===!1)}).sort((u,h)=>u.distance-h.distance).findIndex(u=>u.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.getCaches({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=(()=>mA(e)?nt(e==null?void 0:e.position):Mn(e.position))(),f=c.distanceTo(d);return s.distance=f,f}}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.getCaches({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"?hn(e.normal):$a(e.position))();if(!d)return;const f=new x.Vector3().copy(c).sub(Mn(e.position)),u=d.angleTo(f)*180/Math.PI;return s.angle=u,s.angle}}getTagConfig(e){var s;if(!e)return(s=this.config.globalConfig)!=null?s:{};const n={};this.config.contentTypeConfig&&Object.keys(this.config.contentTypeConfig).forEach(r=>{const a=r;if(n[a])return;const l=a.split("-");if(l.length===1){const[c]=l;e.contentType===c&&(n[a]=this.config.contentTypeConfig[a])}if(l.length===2){const[c="Any",d="Any"]=l;(e.stickType===c||c==="Any")&&(e.contentType===d||d==="Any")&&(n[a]=this.config.contentTypeConfig[a])}if(l.length===3){const[c="Any",d,f]=l;if(d==="Audio"&&e.contentType==="Audio"){const u=e;(u.stickType===c||c==="Any")&&u.data.appearance===f&&(n[a]=this.config.contentTypeConfig[a])}}});const o=St.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}),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=void 0;return}const o=this.getTagProject(n);if(!o){n.pointTagStyle=void 0;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)})}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=Mn(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")}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})}}function vA(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 ml="2.0.7",Yi=`DnalogelPlugin-PanoTagPlugin@${ml}`,bA=!1,yA=i=>`${Yi}--${i}`;class pl extends AA{constructor(e,n){super(e);m(this,"version",ml);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",io({currentMediaElement:null}));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,"disposedErrorLog",()=>{console.error(`${Yi} is disposed`)});this.params=G({debug:!1,config:this.config},n),this.debug=this.params.debug,this.config=this.params.config,zr(1,{namespace:ti.GetAudioDuration}),zr(1,{namespace:ti.PlayAudio}),Object.assign(window,{[`__PANOTAGPLUGIN_DEBUG_${Date.now()}__`]:this}),Object.assign(window,{__PANOTAGPLUGIN_DEBUG__:this})}load(e,n){return Y(this,null,function*(){var o,s;if(this.clearTags(),console.log(Yi," load:",{data:e}),this.config=St.default({},this.config,{globalConfig:(o=e.globalConfig)!=null?o:{},contentTypeConfig:(s=e.contentTypeConfig)!=null?s:{}}),this.debug)try{ep(this.five,this.tags)}catch(r){console.error(r)}return this.addTag(e.tagList,n)})}addTag(e,n){return Y(this,null,function*(){const s=(Array.isArray(e)?e:[e]).map(r=>{const a=this.getTagConfig(r);return he(G({},r),{state:G({visible:void 0,unfolded:bA},a.initialState),hooks:new be.Subscribe,clickable:a.clickable,mergedConfig:a})}).filter(r=>r.position);return s.forEach(vA),this.tags.push(...s),tp(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(),!0})})}changeConfig(e,n=!0){n?this.config=St.default({},this.config,e):this.config=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}changeGlobalConfig(e,n=!0){n?this.config.globalConfig=St.default({},this.config.globalConfig,e):this.config.globalConfig=e,this.updateTagConfig({force:!0}),this.updateRenderAllTags()}clearTags(){this.tags=[],this.clearCache(),this.disposeAllCSS3DContainer(),this.updateRenderAllTags()}show(e){return Y(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 Y(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.setState({enabled:!0},{userAction:n}),this.hooks.emit("enable",{userAction:n})}disable(e){const{userAction:n=!0}=e!=null?e:{};if(this.store.disposed)return this.disposedErrorLog();this.setState({enabled:!1},{userAction:n}),this.hooks.emit("disable",{userAction:n})}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.clearCache(),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=nt(n),this.updateRenderPlaneTag())}changeDataById(e,n,o=!0){const s=this.getTagById(e);!s||(o?s.data=St.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?St.default(s,n):Object.assign(s,n),(s==null?void 0:s.tag3DContentSvelte)&&(n==null?void 0:n.normal)&&(s.tag3DContentSvelte.currentNormal=nt(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})}setVisibleAndUnfolded(){return Y(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);return this.five.currentMode&&(this.isPanorama?(this.handleFivePanoArrived(),this.temporaryShow({withAnimation:!0})):this.temporaryHide()),e.on("wantsMoveToPano",o),e.on("modeChange",s),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("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}=Ys(ip(()=>{!this.store.resizeObserverDisposer||o()},500),e),{observe:a,unobserve:l}=Ys(Xs(()=>n(),400),e);return s(),a(),()=>{r(),l()}}handleFiveModeChange(e){e==="Panorama"?this.five.once("panoArrived",()=>this.temporaryShow({withAnimation:!0})):this.temporaryHide()}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.updateRenderPointTag(),this.updateRenderPlaneTag()}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 Xs(()=>{this.setUnfoldedByCamera(),this.updateRenderAllTags()},100)}handleFiveCameraUpdate(){this.updateRenderPointTag()}handleFivePanoArrived(){return Y(this,null,function*(){yield this.setVisibleAndUnfolded(),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 fA({target:o,props:{hooks:this.hooks,tags:e,state:this.state,temporaryState:this.temporaryState,mediaStore:this.mediaStore}})}}updateRenderPlaneTag(){this.sort([...this.filterPlaneTag(),...this.filter3DPointTag()]).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 H.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:np(this.five.camera.position,nt(n.position),nt(n.normal)),r=n.stickType==="Plane"?$a(n.position):nt(n.normal),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 hl({target:l.container,props:{tag:n,hooks:this.hooks,state:this.state,mediaStore:this.mediaStore,temporaryState:this.temporaryState}}),domContainer:l,initialNormal:r,currentNormal:r}}}),this.checkPanelTag()}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))}}}var gl=(i=>(i.Audio="Audio",i.Text="Text",i.ImageText="ImageText",i.Image="Image",i.Video="Video",i.Link="Link",i.VRLink="VRLink",i.PanoLink="PanoLink",i.Marketing="Marketing",i.MediaPlane="MediaPlane",i.Custom="Custom",i))(gl||{}),Al=(i=>(i.Two="2D",i.Three="3D",i))(Al||{}),vl=(i=>(i.PointTag="PointTag",i.PlaneTag="PlaneTag",i))(vl||{});const wA=(i,t)=>new pl(i,t);class po extends H.Object3D{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()}show(){this.visible=!0,this.render()}hide(){this.visible=!1,this.render()}updatePosition(){this.position.copy(this.originObject3D.position)}updateQuaternion(){this.quaternion.copy(this.originObject3D.quaternion)}applyHelperScaleMatrix4(e,n){this.scale.applyMatrix4(e)}applyHelperQuaternion(e,n){this.applyQuaternion(e)}}class CA extends po{}class EA extends po{}class PA extends po{}class IA extends PA{}class kA extends x.Group{constructor(e){super();m(this,"direction");this.direction=e||"x"}}class Yr extends x.Mesh{constructor(e,n,o){super(e,n);m(this,"direction");this.direction=o||"x"}}function xA(i,t){const{offsetWidth:e,offsetHeight:n}=t,{top:o,left:s}=t.getBoundingClientRect();return Object.assign(new x.Vector2,{x:(i.x-s)/e*2-1,y:-(i.y-o)/n*2+1})}function go(i,t,e){if(!t||!e||!i)return;const n=xA(t,e);if(Math.abs(n.x)===1||Math.abs(n.y)===1)return;const o=new x.Raycaster;return o.setFromCamera(n,i),o}function DA(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 Di extends kA{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 x.Color((d=e.color)!=null?d:16214315),o=new x.MeshBasicMaterial({color:n,depthTest:!1,opacity:1,transparent:!0,side:x.DoubleSide}),s=new x.ConeGeometry(.04,.1,32),r=new Yr(s,o.clone(),e.direction);r.name=`arrow-${e.direction}`,this.arrow=r;const a=.004,l=new x.CylinderGeometry(a,a,.4,32),c=new Yr(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 Li={X:15618642,Y:4765519,Z:4227839};class tt{static get X(){return new x.Color(Li.X).convertSRGBToLinear().clone()}static get Y(){return new x.Color(Li.Y).convertSRGBToLinear().clone()}static get Z(){return new x.Color(Li.Z).convertSRGBToLinear().clone()}}class LA extends CA{constructor(e){super(e);m(this,"xArrow",new Di({direction:"x",color:tt.X}));m(this,"yArrow",new Di({direction:"y",color:tt.Y}));m(this,"zArrow",new Di({direction:"z",color:tt.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 SA(document.createElement(t!=null?t:"div"),i)}function SA(i,t){if(!t)return i;for(const e in t)e&&t[e]&&(i.style[e]=t[e]);return i}function TA(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 MA extends EA{constructor(e,n){var o;super(e);m(this,"yzCircle",new Si({direction:"x",color:tt.X}));m(this,"xzCircle",new Si({direction:"y",color:tt.Y}));m(this,"xyCircle",new Si({direction:"z",color:tt.Z}));m(this,"xRingHelper",new Ti({direction:"x"}));m(this,"yRingHelper",new Ti({direction:"y"}));m(this,"zRingHelper",new Ti({direction:"z"}));m(this,"xAngleHelper",new Mi({direction:"x",color:tt.X}));m(this,"yAngleHelper",new Mi({direction:"y",color:tt.Y}));m(this,"zAngleHelper",new Mi({direction:"z",color:tt.Z}));m(this,"angleTips");m(this,"container");n&&(this.container=n==null?void 0:n.container,this.angleTips=TA({display:"none"}),(o=this.container)==null||o.appendChild(this.angleTips.element)),this.show()}updateAngleHelperQuaternion(){this.xAngleHelper.quaternion.copy(this.yzCircle.quaternion),this.yAngleHelper.quaternion.copy(this.xzCircle.quaternion),this.zAngleHelper.quaternion.copy(this.xyCircle.quaternion),this.xRingHelper.quaternion.copy(this.yzCircle.quaternion),this.yRingHelper.quaternion.copy(this.xzCircle.quaternion),this.zRingHelper.quaternion.copy(this.xyCircle.quaternion)}applyHelperQuaternion(e,n){this.yzCircle.applyQuaternion(e),this.xzCircle.applyQuaternion(e),this.xyCircle.applyQuaternion(e),this.xAngleHelper.baseAxes.applyQuaternion(e),this.yAngleHelper.baseAxes.applyQuaternion(e),this.zAngleHelper.baseAxes.applyQuaternion(e)}hide(){this.remove(this.yzCircle,this.xzCircle,this.xyCircle,this.xRingHelper,this.yRingHelper,this.zRingHelper,this.xAngleHelper,this.yAngleHelper,this.zAngleHelper)}show(){var e;this.add(this.xyCircle,this.xzCircle,this.yzCircle),this.remove(this.xRingHelper,this.yRingHelper,this.zRingHelper,this.xAngleHelper,this.yAngleHelper,this.zAngleHelper),(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),(e=this.angleTips)!=null&&e.element&&((n=this.container)==null||n.removeChild(this.angleTips.element))}filterRingHelper(e){return[this.xRingHelper,this.yRingHelper,this.zRingHelper].filter(n=>e.includes(n.direction))}filterAngleHelper(e){return[this.xAngleHelper,this.yAngleHelper,this.zAngleHelper].filter(n=>e.includes(n.direction))}}class Si extends x.Mesh{constructor(e){var n;super();m(this,"direction");m(this,"gapAngle",.02);m(this,"geometry",new x.RingGeometry(.25,.3,20,8,this.gapAngle,Math.PI/2-this.gapAngle*2));this.material=new x.MeshBasicMaterial({opacity:.6,color:(n=e.color)!=null?n:16777215,transparent:!0,side:x.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 Ti extends x.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 x.RingGeometry(.25,.3,20,8,Math.PI/4*r+n,Math.PI/4-n*2),l=new x.MeshBasicMaterial({opacity:1,color:16777215,depthTest:!1,transparent:!0,side:x.DoubleSide}),c=new x.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 Mi extends x.Mesh{constructor(e){var o;super();m(this,"direction");m(this,"baseAxes");switch(e.direction){case"x":this.baseAxes=new x.Vector3(0,0,1);break;case"y":this.baseAxes=new x.Vector3(1,0,0);break;case"z":this.baseAxes=new x.Vector3(1,0,0);break}const n=.3+5e-4;this.geometry=new x.CircleGeometry(n,48,0,1e-4),this.material=new x.MeshBasicMaterial({opacity:.4,color:(o=e.color)!=null?o:16777215,depthTest:!1,transparent:!0,side:x.DoubleSide}),this.direction=e.direction,this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}}function zA(){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:ht({cursor:"nesw-resize",left:n,bottom:n})},s={direction:"ns",element:ht({cursor:"ns-resize",bottom:n})},r={direction:"nwse",element:ht({cursor:"nwse-resize",right:n,bottom:n})},a={direction:"ew",element:ht({cursor:"ew-resize",right:n})},l={direction:"nesw",element:ht({cursor:"nesw-resize",right:n,top:n})},c={direction:"ns",element:ht({cursor:"ns-resize",top:n})},d={direction:"nwse",element:ht({cursor:"nwse-resize",left:n,top:n})},f={direction:"ew",element:ht({cursor:"ew-resize",left:n})};return new Array(s,a,c,f,o,r,l,d).forEach(h=>t.appendChild(h.element)),{container:i,squares:[o,s,r,a,l,c,d,f]}}function ht(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 BA extends IA{constructor(e,n,o,s){super(e);m(this,"points",[]);m(this,"cornerPositions",[]);m(this,"css3DInstance");m(this,"plane");m(this,"css3DRenderer",new Zt);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 x.Vector3().subVectors(o.position,n).applyQuaternion(e).add(n);o.position.copy(r),o.applyQuaternion(e)}if(this.plane){const r=new x.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 x.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}=zA();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)]}}new x.Vector3;function pe(i,t){this._camera=i||null,this._domElement=t||document,this._raycaster=new x.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);console.assert(l!==-1),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 x.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,f=r[0],u=f.object;this._selected=u,d=this._bound("mousemove",u),a!=u&&(l=this._bound("mouseover",u),c=a&&this._bound("mouseout",a))}else c=a&&this._bound("mouseout",a),this._selected=null;d&&this._notify("mousemove",u,n,f),l&&this._notify("mouseover",u,n,f),c&&this._notify("mouseout",a,n,f)}};pe.prototype._onEvent=function(i,t,e,n){var o=this._boundObjs[i];if(!(o===void 0||o.length===0)){var s=new x.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(console.assert(arguments.length===4),!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)}};let Lt=null;class Ao{constructor(t,e,n,o,s,r,a){m(this,"hooks",new $t);m(this,"helperObject3D");m(this,"originObject3D");m(this,"camera");m(this,"model");m(this,"scene");m(this,"container");m(this,"domEvents");m(this,"isDragging",!1);m(this,"onRender");m(this,"enabled",!1);m(this,"onWantsTapGesture",t=>{if(this.getIntersectObject(t))return!1});this.camera=t,this.model=e,this.originObject3D=n,this.helperObject3D=o,this.container=s,this.scene=r,this.domEvents=new pe(t,s),this.onRender=a!=null?a:()=>{},this.initialHelperPosition(),this.initialHelperQuaternion(),this.enable()}initialHelperPosition(){this.helperObject3D.updatePosition()}initialHelperQuaternion(){this.helperObject3D.updateQuaternion()}enable(){this.enabled||(this.enabled=!0,this.scene.add(this.helperObject3D),this.render())}disable(){!this.enabled||(this.enabled=!1,this.scene.remove(this.helperObject3D),this.render())}show(){this.helperObject3D.show(),this.render()}hide(){this.helperObject3D.hide(),this.render()}dispose(){this.helperObject3D.dispose(),this.scene.remove(this.helperObject3D),this.render()}setOpacity(t){this.setOriginOpacityProperty();const e=this.originObject3D;if(e instanceof x.Mesh&&(e.material.opacity=t),e.isCSS3DObjectPlus){const n=e;n.container.style.opacity=t.toString()}this.render()}restoreOpacity(){if(Lt===null)return;const t=this.originObject3D;if(t instanceof x.Mesh&&(t.material.opacity=Lt.opacity),t.isCSS3DObjectPlus){const e=t;e.container.style.opacity=Lt.opacity.toString()}this.render()}setOriginOpacityProperty(){var t,e;if(Lt===null){const n=this.originObject3D;n instanceof x.Mesh&&(Lt={opacity:n.material.opacity}),n instanceof ta&&(Lt={opacity:(t=n.container.style.opacity)!=null?t:1}),n.isCSS3DObjectPlus&&(Lt={opacity:Number((e=n.container.style.opacity)!=null?e:1)})}}updateHelperPosition(){this.helperObject3D.updatePosition()}updateHelperQuaternion(){this.helperObject3D.updateQuaternion()}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}render(){this.onRender()}hoverListener(t,e=16777215,n=1){const o=(Array.isArray(t)?t:[t]).filter(We),s=[];for(const r of o)if(r instanceof x.Mesh||r instanceof x.Group){const a=r instanceof x.Group?r.children.filter(u=>u instanceof x.Mesh):[r];a.forEach(u=>{u.__originalColor__=u.material.color.clone(),u.__originalOpacity__=u.material.opacity});const l=()=>{a.forEach(u=>{u.material.color.set(e),u.material.opacity=n}),this.render()},c=()=>{a.forEach(u=>{u.material.color.copy(u.__originalColor__),u.material.opacity=u.__originalOpacity__}),this.render()},d=()=>{this.isDragging||l()},f=()=>{this.isDragging||c()};for(const u of a)this.domEvents.addEventListener(u,"mouseover",d),this.domEvents.addEventListener(u,"mouseout",f),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",c),this.hooks.on("rotateEnd",c),s.push(()=>{this.domEvents.removeEventListener(u,"mouseover",d),this.domEvents.removeEventListener(u,"mouseout",f),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}}}class VA extends Ao{constructor(...e){super(...e);m(this,"startInfo");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);this.domEvents.addEventListener(this.helperObject3D,"mousedown",o),document.addEventListener("mousemove",s),document.addEventListener("mouseup",r)}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();const s=new x.Vector3(1,0,0).applyQuaternion(this.helperObject3D.quaternion),r=new x.Vector3(0,1,0).applyQuaternion(this.helperObject3D.quaternion),a=new x.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(),f=new x.Plane;f.setFromNormalAndCoplanarPoint(c,d),this.startInfo={startVectorProject:d.clone().projectOnVector(l),directionVector:l,plane:f},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=go(this.camera,e,this.container);return n?(console.log("%c RotateController 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 x.Vector3);if(!a)return;const l=a.clone().projectOnVector(o),c=l.clone().sub(s),d=new x.Matrix4;d.setPosition(c),r.applyMatrix4(d),this.helperObject3D.applyMatrix4(d),s.copy(l),this.hooks.emit("positionUpdate",{matrix4:d})}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 zi{constructor(t,e,n,o){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});const{camera:s,model:r,scene:a}=t,l=t.getElement();if(this.five=t,!s||!r||!l||!a)return;const c=()=>{t.needsRender=!0};this.helperController=new e(s,r,n,o,l,a,c),t.on("wantsTapGesture",this.onFiveWantsTapGesture),t.on("wantsGesture",this.onFiveWantsGesture)}}const jA="v1.0.1",QA="Object3DHelper",vo=`${QA}@${jA}`,RA=()=>{console.error(`${vo} is disposed`)},OA=()=>{console.warn(`${vo} is disabled`)},HA=()=>{console.error(`${vo} is disabled`)};class FA{constructor(t,e){m(this,"controllers",{});m(this,"state",{visible:!0,enabled:!0,disposed:!1});m(this,"hooks",new $t);m(this,"helpers");m(this,"eventListener",{});m(this,"handlePositionUpdate",(t,...e)=>{var s,r,a,l;const[n]=e,o=n==null?void 0:n.matrix4;o&&(t!==this.controllers.moveController&&((s=this.controllers.moveController)==null||s.applyHelperMatrix4(o)),t!==this.controllers.rotateController&&((r=this.controllers.rotateController)==null||r.applyHelperMatrix4(o)),t!==this.controllers.scaleController&&((a=this.controllers.scaleController)==null||a.applyHelperMatrix4(o)),(l=this.helpers.outlineHelper)==null||l.applyMatrix4(o))});m(this,"handleScaleUpdate",(t,...e)=>{var s,r;const[n]=e,o=n==null?void 0:n.matrix4;o&&((s=this.controllers.scaleController)==null||s.applyHelperScaleMatrix4(o,n),(r=this.helpers.outlineHelper)==null||r.scale.applyMatrix4(o))});m(this,"handleRotateUpdate",(t,...e)=>{var o,s,r,a;const[n]=e;if(n){const{quaternion:l,origin:c}=n;l&&(t!==this.controllers.moveController&&((o=this.controllers.moveController)==null||o.applyHelperQuaternion(l,c)),t!==this.controllers.rotateController&&((s=this.controllers.rotateController)==null||s.applyHelperQuaternion(l,c)),t!==this.controllers.scaleController&&((r=this.controllers.scaleController)==null||r.applyHelperQuaternion(l,c)),(a=this.helpers.outlineHelper)==null||a.applyQuaternion(l))}});t&&this.addControllers(t),this.helpers=e!=null?e:{},this.setState(this.state)}show(t){return Y(this,null,function*(){this.setState({visible:!0},t)})}hide(t){return Y(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 RA();if(!this.state.enabled&&t.enabled!==!0&&t.disposed!==!0)return HA();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.addEventListener(),this.setState(this.state)}addHelpers(t){this.helpers=G(G({},this.helpers),t)}getCurrentState(){return this.state}addEventListener(){for(const t in this.controllers){if(!t)continue;const e=t;this.eventListener[e]||(this.eventListener[e]=(()=>{const n=this.controllers[e];if(!n)return;const o=()=>this.handleStart(n),s=()=>this.handleEnd(n),r=(...c)=>this.handlePositionUpdate(n,...c),a=(...c)=>this.handleRotateUpdate(n,...c),l=(...c)=>this.handleScaleUpdate(n,...c);return n.hooks.on("moveStart",o),n.hooks.on("rotateStart",o),n.hooks.on("scaleStart",o),n.hooks.on("positionUpdate",r),n.hooks.on("rotateUpdate",a),n.hooks.on("scaleUpdate",l),n.hooks.on("moveEnd",s),n.hooks.on("rotateEnd",s),n.hooks.on("scaleEnd",s),()=>{n.hooks.off("moveStart",o),n.hooks.off("rotateStart",o),n.hooks.off("scaleStart",o),n.hooks.off("positionUpdate",r),n.hooks.off("rotateUpdate",a),n.hooks.off("scaleUpdate",l),n.hooks.off("moveEnd",s),n.hooks.off("rotateEnd",s),n.hooks.off("scaleEnd",s)}})())}}handleEnd(t){t&&this.setOtherHelpersVisible(!0,t)}handleStart(t){t&&this.setOtherHelpersVisible(!1,t)}setOtherHelpersVisible(t,e){var n,o,s,r;t?((s=this.controllers.moveController)==null||s.helperObject3D.show(),(r=this.controllers.rotateController)==null||r.helperObject3D.show()):(e!==this.controllers.moveController&&((n=this.controllers.moveController)==null||n.helperObject3D.hide()),e!==this.controllers.rotateController&&((o=this.controllers.rotateController)==null||o.helperObject3D.hide()))}handleEnable(t,e=!0){t?(this.everyControllerDo(n=>{n.enable()}),this.hooks.emit("enable",{userAction:e})):(this.everyControllerDo(n=>{n.disable(),n.restoreOpacity()}),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(),n.restoreOpacity()}),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(),n==null||n.restoreOpacity()});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&&OA()}}class GA extends Ao{constructor(...e){super(...e);m(this,"startInfo");m(this,"lastRotation");m(this,"rotations",[]);m(this,"helperObject3DQuaternion",this.originObject3D.quaternion.clone());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);this.domEvents.addEventListener(this.helperObject3D,"mousedown",o),document.addEventListener("mousemove",s),document.addEventListener("mouseup",r)}initialHelperQuaternion(){this.helperObject3D.updateAngleHelperQuaternion(),this.helperObject3D.applyHelperQuaternion(this.originObject3D.quaternion)}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.originObject3D.position.clone(),a=this.getAngleHelper(o);this.setTipsAngle(0);const l=s.clone();l.y+=.2,this.setTipsPosition(l);const c=new x.Vector3(1,0,0).applyQuaternion(this.helperObject3DQuaternion),d=new x.Vector3(0,1,0).applyQuaternion(this.helperObject3DQuaternion),f=new x.Vector3(0,0,1).applyQuaternion(this.helperObject3DQuaternion),u=(()=>{switch(o){case"x":return c;case"y":return d;case"z":return f}})(),h=new x.Plane().setFromNormalAndCoplanarPoint(u,s),p=new x.Vector3;h.projectPoint(s.clone(),p);const A=p.clone().sub(r),g=A.clone(),v=A.angleTo(a.baseAxes);this.setAngleHelperStart(o,v),this.setAngleHelperLength(o,0),this.rotations.push({vector:A.clone(),direction:!0}),this.startInfo={direction:o,startVector:A,staticStartVector:g,plane:h,angleHelper:a},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=go(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=this.originObject3D,c=e.ray.intersectPlane(o,new x.Vector3);if(!c)return;const d=l.position.clone(),f=new x.Vector3;o.projectPoint(c.clone(),f);const u=f.clone().sub(d);if(n.angleTo(u)===0||(this.lastRotation===void 0&&(this.lastRotation={angle:0}),this.rotations.length===0))return;const h=(()=>{if(this.rotations.length===1)return u.angleTo(s.baseAxes)>r.angleTo(s.baseAxes);{const A=this.rotations[this.rotations.length-1],g=this.rotations[this.rotations.length-2],v=u.angleTo(g.vector),w=u.angleTo(A.vector),y=A.vector.angleTo(g.vector);if(y===0||w===0||v===0)return;if(v>w&&v>y)return A.direction;if(v<y&&w<y||v<w&&w>y)return!A.direction}})();if(h===void 0)return console.warn("rotationDirection is undefined");this.rotations.push({vector:u,direction:h}),this.rotations=this.rotations.slice(-2),this.lastRotation.angle=this.lastRotation.angle+u.angleTo(n)*(h?1:-1),this.setAngleHelperLength(a,this.lastRotation.angle),this.setTipsAngle(this.lastRotation.angle/Math.PI*180);const p=new x.Quaternion().setFromUnitVectors(n.clone().normalize(),u.clone().normalize());l.applyQuaternion(p),this.helperObject3D.applyHelperQuaternion(p),this.helperObject3DQuaternion.premultiply(p),this.hooks.emit("rotateUpdate",{quaternion:p,origin:d}),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 x.Mesh&&o.geometry instanceof x.CircleGeometry){const{radius:s,segments:r,thetaLength:a}=o.geometry.parameters;o.geometry=new x.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 x.Mesh&&r.geometry instanceof x.CircleGeometry){const{radius:a,thetaStart:l}=r.geometry.parameters,c=Math.ceil(Math.abs(s)*(40/(2*Math.PI)));r.geometry=new x.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 NA extends Ao{constructor(...e){super(...e);m(this,"startInfo")}enable(){this.helperObject3D.enable(),super.enable()}disable(){this.helperObject3D.disable(),super.disable()}show(){this.helperObject3D.show(),super.show()}hide(){this.helperObject3D.hide(),super.hide()}getDragPlane(){const e=new x.Plane,n=this.helperObject3D.cornerPositions;if(n.length!==0)return n.length<3?e.setFromNormalAndCoplanarPoint(this.originObject3D.getWorldDirection(new H.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=go(this.camera,e,this.container);if(!n)return this.dragEnd();this.scale(n),console.log("%c RectangleScaleController dragging","color: #49de1b")}scale(e){var B,N;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 H.Vector3);if(!a||DA(a,this.camera.position))return;const l=new H.Vector3().addVectors(r[0],r[2]).divideScalar(2),{position:c,direction:d}=o,f=new H.Vector3().subVectors(r[1],r[0]),u=new H.Vector3().subVectors(r[3],r[0]),h=F=>{const X=new H.Vector3(0,0,0);if(!this.startInfo)return X;const j=(F==="ew"?f:u).clone(),E=c.clone().projectOnVector(j),R=a.clone().projectOnVector(j),O=l.clone().projectOnVector(j);if(R.equals(E))return X;if(F==="ns"&&typeof this.startInfo.dragPointInCenterBottom!="boolean"){const _=new H.Vector3().subVectors(R,O),J=_.x<0&&j.x>=0,de=_.y<0&&j.y>=0,ue=_.z<0&&j.z>=0;this.startInfo.dragPointInCenterBottom=J||de||ue}if(F==="ew"&&typeof this.startInfo.dragPointInCenterLeft!="boolean"){const _=new H.Vector3().subVectors(R,O),J=_.x<0&&j.x>=0,de=_.y<0&&j.y>=0,ue=_.z<0&&j.z>=0;this.startInfo.dragPointInCenterLeft=J||de||ue}const W=new H.Vector3().subVectors(R,E),U=W.length();return U>.3?(console.warn("offset.length() > 0.3, skipped",U),X):W},p=h("ew"),A=h("ns"),g=()=>{const F=p;this.helperObject3D.cornerPositions.forEach((X,j)=>{var E;(E=this.startInfo)!=null&&E.dragPointInCenterLeft?(j===0||j===3)&&X.add(F):(j===1||j===2)&&X.add(F)})},v=()=>{const F=A;this.helperObject3D.cornerPositions.forEach((X,j)=>{var E;(E=this.startInfo)!=null&&E.dragPointInCenterBottom?(j===0||j===1)&&X.add(F):(j===2||j===3)&&X.add(F)})};switch(d){case"ew":g();break;case"ns":v();break;case"nesw":case"nwse":g(),v()}const w=new H.Vector3().subVectors(r[1],r[0]).length()/f.length(),y=new H.Vector3().subVectors(r[3],r[0]).length()/u.length(),P=new H.Vector3(w,y,1),I=new x.Matrix4().scale(P);n.isCSS3DObjectPlus?n.applyScaleMatrix4(I):n.scale.applyMatrix4(I),o.position.copy(a);const C=new H.Vector3().addVectors(r[0],r[2]).divideScalar(2),L=new H.Vector3().subVectors(C,l),D=new x.Matrix4().setPosition(L);n.applyMatrix4(D),(B=this.helperObject3D.css3DInstance)==null||B.css3DObject.applyMatrix4(D),(N=this.helperObject3D.plane)==null||N.applyMatrix4(D),this.hooks.emit("scaleUpdate",{matrix4:I,helperOrigin:l}),this.hooks.emit("positionUpdate",{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 WA extends NA{constructor(...t){super(...t),this.addHTMLEventListener()}addHTMLEventListener(){this.helperObject3D.points.forEach(t=>{if(!t)return;const e=t.point,n=r=>this.dragStart(r,t),o=this.dragging.bind(this),s=this.dragEnd.bind(this);e.addEventListener("dragstart",n),e.addEventListener("drag",o),e.addEventListener("dragend",s)})}}const bo="v1.0.0",Ui="Object3DHelperPlugin",pi=`${Ui}@${bo}`,_A=()=>{console.error(`${pi} is disposed`)},XA=()=>{console.warn(`${pi} is disabled`)},YA=()=>{console.error(`${pi} is disabled`)};class bl extends li{constructor(e){super(e);m(this,"version",bo);m(this,"name",Ui);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 Zt(this.five.scene),console.warn("Object3DHelper: \u4F7F\u7528\u6B64\u63D2\u4EF6\u9700\u8981\u5728\u521D\u59CB\u5316five\u65F6\uFF0C\u8BBE\u7F6Efive\u53C2\u6570: { backgroundAlpha: 0, backgroundColor: 0x000000 }"),Object.assign(window,{[`__${Ui.toUpperCase()}_DEBUG__`]:this})}show(e){return Y(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return Y(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 _A();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return YA();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 d;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 FA;this.objectHelperMap.set(e,o);const s=(d=this.five.getElement())==null?void 0:d.parentElement,r=this.five.camera,{moveHelper:a=!0,rotateHelper:l=!0,scaleHelper:c=!0}=n;if(a){const f=new LA(e),u=new zi(this.five,VA,e,f);o.addControllers({moveController:u.helperController})}if(l){let f;s&&r&&(f={container:s});const u=new MA(e,f),h=new zi(this.five,GA,e,u);o.addControllers({rotateController:h.helperController})}if(c&&s){const f=new BA(e,s,r,this.five.scene),u=new zi(this.five,WA,e,f);o.addControllers({scaleController:u.helperController})}e.isCSS3DObjectPlus&&ia(this.five).then(()=>{var f,u;if(e.isCSS3DObjectPlus){const h=e,p=(f=this.css3DRender.behindModeCSS3DRenderer.wrapper)!=null?f:oa(this.five);p&&e&&(this.css3DObjectParentMap.set(h,h.parent),h.removeFromParent(),this.css3DRender.behindModeCSS3DRenderer.setWrapper(p),(u=this.css3DRender.getBehindCSS3DObjectGroup())==null||u.add(h),this.css3DRender.render(this.five.camera))}})}removeObject3DHelper(e){const n=this.objectHelperMap.get(e);if(!!n){if(e.isCSS3DObjectPlus){const o=e,s=this.css3DObjectParentMap.get(o);s==null||s.add(o),this.css3DRender.render(this.five.camera)}this.objectHelperMap.delete(e),n.dispose()}}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.everyHelperDo(e=>e.dispose())}everyHelperDo(e){this.objectHelperMap.forEach(n=>{n&&e(n)})}actionIfStateIsEnabled(e,n){if(this.state.enabled)return e();n!=null&&n.warnLog&&XA()}}const UA=i=>new bl(i);exports.CSS3DRender=Zt;exports.CSS3DRenderPlugin=en;exports.CameraMovementEffect=Sa;exports.CameraMovementPlugin=cf;exports.ContentType=gl;exports.CruisePlugin=Ym;exports.CruisePluginController=uo;exports.DIRECTION=Yt;exports.DISPLAY_STRATEGY_TYPE=Tt;exports.DimensionType=Al;exports.FLOOR_PLAN_ATTACHED_TO=gt;exports.FLOOR_TYPE_MAP=Zu;exports.GuideLinePlugin=Za;exports.ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE=Mt;exports.ItemLabelPlugin=vm;exports.Magnifier=Ba;exports.MapviewFloorplanPlugin=Du;exports.ModelChassisCompassPlugin=$u;exports.ModelEntryDoorGuidePlugin=nf;exports.ModelFloorplanPlugin=Pu;exports.ModelItemLabelPlugin=Kh;exports.ModelRoomLabelPlugin=jc;exports.ModelTVVideoPlugin=tm;exports.ModelViewPlugin=Xl;exports.Object3DHelperController=bl;exports.Object3DHelperPlugin=UA;exports.PLUGIN=pi;exports.PaintBrush=_l;exports.PaintBrushTypeEnum=et;exports.PanoCompassPlugin=Sf;exports.PanoCursorRaycasterPlugin=dc;exports.PanoDoorLabelPlugin=Tm;exports.PanoFloorplanRadarPlugin=Uu;exports.PanoMeasurePlugin=kh;exports.PanoMeasurePluginLine=Ft;exports.PanoMeasurePluginModel=fi;exports.PanoMeasurePluginPoint=_e;exports.PanoMeasurePluginPolyline=ui;exports.PanoRulerPlugin=mf;exports.PanoRulerProPlugin=If;exports.PanoSpatialTagPlugin=Fh;exports.PanoTagPlugin=wA;exports.PanoTagPluginController=pl;exports.PointType=vl;exports.ROOM_FETILE_TYPE_MAP=Ju;exports.ROOM_TYPE_MAP=qu;exports.Rotation=Ue;exports.TopviewFloorplanPlugin=Su;exports.Util=Fg;exports.VERSION=bo;exports.itemLabelPluginServerParams=bm;exports.modelItemLabelPluginServerParams=$h;exports.modelRoomLabelPluginServerParams=Qc;exports.pluginFlag=yA;