@realsee/dnalogel 2.27.0-dev.2 → 2.27.0-dev.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 (318) hide show
  1. package/dist/PanoTagPlugin/typings/tag/TagConfig.d.ts +17 -3
  2. package/dist/PanoTagPlugin/typings/tag/TagData.d.ts +1 -1
  3. package/dist/index.cjs.js +32 -30
  4. package/dist/index.js +2292 -2259
  5. package/dist/index.umd.js +32 -30
  6. package/docs/classes/CSS3DRender.html +3 -3
  7. package/docs/classes/CruisePluginController.html +3 -3
  8. package/docs/classes/GuideLineItem.GuideLineItem.html +3 -3
  9. package/docs/classes/GuideLineModeItem.GuideLineModeItem.html +3 -3
  10. package/docs/classes/Magnifier.html +3 -3
  11. package/docs/classes/ModelRoomLabelController.html +3 -3
  12. package/docs/classes/Object3DHelperController.html +3 -3
  13. package/docs/classes/PaintBrush.html +3 -3
  14. package/docs/classes/PanoMeasurePluginLine.html +3 -3
  15. package/docs/classes/PanoMeasurePluginModel.html +3 -3
  16. package/docs/classes/PanoMeasurePluginPoint.html +3 -3
  17. package/docs/classes/PanoMeasurePluginPolyline.html +3 -3
  18. package/docs/classes/PanoTagPluginController.html +3 -3
  19. package/docs/classes/Util.BetterTween.html +3 -3
  20. package/docs/classes/Util.Interval.html +3 -3
  21. package/docs/classes/Util.Magnifier.html +3 -3
  22. package/docs/classes/Util.PointDomHelper.html +3 -3
  23. package/docs/classes/Util.PointHelper.html +3 -3
  24. package/docs/classes/Util.PointSelectorHelper.html +3 -3
  25. package/docs/classes/Util.Rectangle.html +3 -3
  26. package/docs/enums/CameraMovementEffect.html +3 -3
  27. package/docs/enums/ContentType.html +3 -3
  28. package/docs/enums/DIRECTION.html +3 -3
  29. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +3 -3
  30. package/docs/enums/DimensionType.html +3 -3
  31. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +3 -3
  32. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +3 -3
  33. package/docs/enums/PaintBrushTypeEnum.html +3 -3
  34. package/docs/enums/PointType.html +3 -3
  35. package/docs/enums/Rotation.html +3 -3
  36. package/docs/functions/CSS3DRenderPlugin.html +3 -3
  37. package/docs/functions/CameraMovementPlugin.html +3 -3
  38. package/docs/functions/CruisePlugin.html +3 -3
  39. package/docs/functions/GuideLinePlugin.html +3 -3
  40. package/docs/functions/ItemLabelPlugin.html +3 -3
  41. package/docs/functions/MapviewFloorplanPlugin.html +3 -3
  42. package/docs/functions/ModelChassisCompassPlugin.html +3 -3
  43. package/docs/functions/ModelEntryDoorGuidePlugin.html +3 -3
  44. package/docs/functions/ModelFloorplanPlugin.html +3 -3
  45. package/docs/functions/ModelItemLabelPlugin.html +3 -3
  46. package/docs/functions/ModelRoomLabelPlugin.html +3 -3
  47. package/docs/functions/ModelTVVideoPlugin.html +3 -3
  48. package/docs/functions/ModelViewPlugin.html +3 -3
  49. package/docs/functions/Object3DHelperPlugin.html +3 -3
  50. package/docs/functions/PanoCompassPlugin.html +3 -3
  51. package/docs/functions/PanoCursorRaycasterPlugin.html +3 -3
  52. package/docs/functions/PanoDoorLabelPlugin.html +3 -3
  53. package/docs/functions/PanoFloorplanRadarPlugin.html +3 -3
  54. package/docs/functions/PanoMeasurePlugin.html +3 -3
  55. package/docs/functions/PanoRulerPlugin.html +3 -3
  56. package/docs/functions/PanoRulerProPlugin.html +3 -3
  57. package/docs/functions/PanoSpatialTagPlugin.html +3 -3
  58. package/docs/functions/PanoTagPlugin.html +3 -3
  59. package/docs/functions/PanoVideoPlugin.html +3 -3
  60. package/docs/functions/PipelinePlugin.html +3 -3
  61. package/docs/functions/TopviewFloorplanPlugin.html +3 -3
  62. package/docs/functions/Util.absoluteUrl.html +3 -3
  63. package/docs/functions/Util.getCoordsFromClient.html +3 -3
  64. package/docs/functions/Util.getCoordsFromElement.html +3 -3
  65. package/docs/functions/Util.getFrameTime.html +3 -3
  66. package/docs/functions/Util.getIntersectFromRelativePosition.html +3 -3
  67. package/docs/functions/Util.getRaycasterFromFivePointer.html +3 -3
  68. package/docs/functions/Util.isAbsoluteURL.html +3 -3
  69. package/docs/functions/Util.isModelLike.html +3 -3
  70. package/docs/functions/Util.isNil.html +3 -3
  71. package/docs/functions/Util.isPanoramaLike.html +3 -3
  72. package/docs/functions/Util.nextFrame.html +3 -3
  73. package/docs/functions/Util.notNil.html +3 -3
  74. package/docs/functions/Util.requestAnimationFrameInterval.html +3 -3
  75. package/docs/functions/Util.tweenProgress.html +3 -3
  76. package/docs/functions/Util.uuid.html +3 -3
  77. package/docs/functions/pluginFlag.html +3 -3
  78. package/docs/index.html +4 -4
  79. package/docs/interfaces/AddTagConfig.html +3 -3
  80. package/docs/interfaces/CSS3DRenderPluginEventMap.html +3 -3
  81. package/docs/interfaces/CSS3DRenderPluginState.html +3 -3
  82. package/docs/interfaces/CameraMovementPluginExportType.html +3 -3
  83. package/docs/interfaces/CruisePluginTypes.Config.html +3 -3
  84. package/docs/interfaces/CruisePluginTypes.CruiseKeyframe.html +3 -3
  85. package/docs/interfaces/CruisePluginTypes.EventMap.html +3 -3
  86. package/docs/interfaces/CruisePluginTypes.MoveAction.html +3 -3
  87. package/docs/interfaces/CruisePluginTypes.MoveWithKeyframesAction.html +3 -3
  88. package/docs/interfaces/CruisePluginTypes.MoveWithPanoIndexAction.html +3 -3
  89. package/docs/interfaces/CruisePluginTypes.PluginData.html +3 -3
  90. package/docs/interfaces/CruisePluginTypes.PluginServerData.html +3 -3
  91. package/docs/interfaces/CruisePluginTypes.PluginState.html +3 -3
  92. package/docs/interfaces/EventMap.html +3 -3
  93. package/docs/interfaces/FloorplanBounding.html +3 -3
  94. package/docs/interfaces/FloorplanData.html +3 -3
  95. package/docs/interfaces/FloorplanEntrance.html +3 -3
  96. package/docs/interfaces/FloorplanExtraObject.html +3 -3
  97. package/docs/interfaces/FloorplanExtraObject3D.html +3 -3
  98. package/docs/interfaces/FloorplanFloorData.html +3 -3
  99. package/docs/interfaces/FloorplanImagePosition.html +3 -3
  100. package/docs/interfaces/FloorplanObserver.html +3 -3
  101. package/docs/interfaces/FloorplanOutlineItem.html +3 -3
  102. package/docs/interfaces/FloorplanPosition.html +3 -3
  103. package/docs/interfaces/FloorplanRoomItem.html +3 -3
  104. package/docs/interfaces/FloorplanRoomLabelItem.html +3 -3
  105. package/docs/interfaces/FloorplanServerBounding.html +3 -3
  106. package/docs/interfaces/FloorplanServerComputedData.html +3 -3
  107. package/docs/interfaces/FloorplanServerData.html +3 -3
  108. package/docs/interfaces/FloorplanServerDoorItem.html +3 -3
  109. package/docs/interfaces/FloorplanServerDoorPosition.html +3 -3
  110. package/docs/interfaces/FloorplanServerEntrance.html +3 -3
  111. package/docs/interfaces/FloorplanServerFloorData.html +3 -3
  112. package/docs/interfaces/FloorplanServerImagePosition.html +3 -3
  113. package/docs/interfaces/FloorplanServerObserver.html +3 -3
  114. package/docs/interfaces/FloorplanServerOutlineItem.html +3 -3
  115. package/docs/interfaces/FloorplanServerPosition.html +3 -3
  116. package/docs/interfaces/FloorplanServerRoomItem.html +3 -3
  117. package/docs/interfaces/FloorplanServerRoomLabelItem.html +3 -3
  118. package/docs/interfaces/GuideLineModeItem.GuideLineTagContainer.html +3 -3
  119. package/docs/interfaces/GuideLinePluginType.CatmullRomCurve3.html +3 -3
  120. package/docs/interfaces/GuideLinePluginType.EventMap.html +3 -3
  121. package/docs/interfaces/GuideLinePluginType.GuideLineGeometryStyle.html +3 -3
  122. package/docs/interfaces/GuideLinePluginType.GuideLineItemContainer.html +3 -3
  123. package/docs/interfaces/GuideLinePluginType.GuideLineMaterialStyle.html +3 -3
  124. package/docs/interfaces/GuideLinePluginType.LineGeometriesConfig.html +3 -3
  125. package/docs/interfaces/GuideLinePluginType.ModelGuideLineStyle.html +3 -3
  126. package/docs/interfaces/GuideLinePluginType.ModelGuideLineTagData.html +3 -3
  127. package/docs/interfaces/GuideLinePluginType.PanoramaGuideLineStyle.html +3 -3
  128. package/docs/interfaces/GuideLinePluginType.PluginDataV2.html +3 -3
  129. package/docs/interfaces/GuideLinePluginType.PluginServerData.html +3 -3
  130. package/docs/interfaces/GuideLinePluginType.PluginState.html +3 -3
  131. package/docs/interfaces/GuideLinePluginType.Route.html +3 -3
  132. package/docs/interfaces/GuideLinePluginType.RouteConfig.html +3 -3
  133. package/docs/interfaces/HelperOffset.html +3 -3
  134. package/docs/interfaces/ImagePlaneGroup.html +3 -3
  135. package/docs/interfaces/ItemLabelPluginData.html +3 -3
  136. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +3 -3
  137. package/docs/interfaces/ItemLabelPluginParametersType.html +3 -3
  138. package/docs/interfaces/MinMax.html +3 -3
  139. package/docs/interfaces/ModelChassisCompassPluginData.html +3 -3
  140. package/docs/interfaces/ModelChassisCompassPluginExportType.html +3 -3
  141. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +3 -3
  142. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +3 -3
  143. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +3 -3
  144. package/docs/interfaces/ModelItemLabelPluginData.html +3 -3
  145. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +3 -3
  146. package/docs/interfaces/ModelItemLabelPluginParametersType.html +3 -3
  147. package/docs/interfaces/ModelRoomLabelPluginData.html +3 -3
  148. package/docs/interfaces/ModelTVVideoPluginData.html +3 -3
  149. package/docs/interfaces/ModelTVVideoPluginExportType.html +3 -3
  150. package/docs/interfaces/ModelTVVideoPluginParameterType.html +3 -3
  151. package/docs/interfaces/ModelViewPluginExportType.html +3 -3
  152. package/docs/interfaces/Object3DHelperState.html +3 -3
  153. package/docs/interfaces/ObjectHelperControllers.html +3 -3
  154. package/docs/interfaces/PaintBrushAction.html +3 -3
  155. package/docs/interfaces/PaintBrushConfigs.html +3 -3
  156. package/docs/interfaces/PaintBrushState.html +3 -3
  157. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +3 -3
  158. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +3 -3
  159. package/docs/interfaces/PanoMeasureParameterType.html +3 -3
  160. package/docs/interfaces/PanoMeasurePluginLineJson.html +3 -3
  161. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +3 -3
  162. package/docs/interfaces/PanoMeasurePluginPointJson.html +3 -3
  163. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +3 -3
  164. package/docs/interfaces/PanoRulerPluginExportType.html +3 -3
  165. package/docs/interfaces/PanoRulerPluginOptions.html +3 -3
  166. package/docs/interfaces/PanoRulerPluginParameterType.html +3 -3
  167. package/docs/interfaces/PanoRulerProPluginExportType.html +3 -3
  168. package/docs/interfaces/PanoRulerProPluginOptions.html +3 -3
  169. package/docs/interfaces/PanoRulerProPluginParameterType.html +3 -3
  170. package/docs/interfaces/PanoRulerProPluginState.html +3 -3
  171. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +3 -3
  172. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +3 -3
  173. package/docs/interfaces/PanoSpatialTagPluginData.html +3 -3
  174. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +3 -3
  175. package/docs/interfaces/PanoSpatialTagPluginExportType.html +3 -3
  176. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +3 -3
  177. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +3 -3
  178. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +3 -3
  179. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +3 -3
  180. package/docs/interfaces/PanoVideoPluginType.LoadParams.html +3 -3
  181. package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +3 -3
  182. package/docs/interfaces/PanoVideoPluginType.PluginData.html +3 -3
  183. package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +3 -3
  184. package/docs/interfaces/PanoVideoPluginType.PluginState.html +3 -3
  185. package/docs/interfaces/PanoVideoPluginType.VideoItem.html +3 -3
  186. package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +3 -3
  187. package/docs/interfaces/Point.html +3 -3
  188. package/docs/interfaces/Room.html +3 -3
  189. package/docs/interfaces/RoomInfo.html +3 -3
  190. package/docs/interfaces/RoomLabel.html +3 -3
  191. package/docs/interfaces/RoomRules.html +3 -3
  192. package/docs/interfaces/Rooms.html +3 -3
  193. package/docs/interfaces/Scissor.html +3 -3
  194. package/docs/interfaces/State.html +3 -3
  195. package/docs/interfaces/TagCacheInterface.html +3 -3
  196. package/docs/interfaces/TagConfig.html +17 -11
  197. package/docs/interfaces/TagGLTFObjectGroup.html +3 -3
  198. package/docs/interfaces/TagIconUrl.html +3 -3
  199. package/docs/interfaces/TagObjectGroup.html +3 -3
  200. package/docs/interfaces/TagStyle.html +3 -3
  201. package/docs/interfaces/Tags.html +3 -3
  202. package/docs/interfaces/TemporaryState.html +3 -3
  203. package/docs/interfaces/Util.MagnifierParameter.html +3 -3
  204. package/docs/interfaces/Util.MouseGroupParameter.html +3 -3
  205. package/docs/interfaces/Util.PointIntersection.html +3 -3
  206. package/docs/modules/CruisePluginTypes.html +3 -3
  207. package/docs/modules/GuideLineItem.html +3 -3
  208. package/docs/modules/GuideLineModeItem.html +3 -3
  209. package/docs/modules/GuideLinePluginType.html +3 -3
  210. package/docs/modules/PanoVideoPluginType.html +3 -3
  211. package/docs/modules/Util.html +3 -3
  212. package/docs/modules.html +4 -4
  213. package/docs/types/ArrayPosition.html +3 -3
  214. package/docs/types/AudioAppearance.html +3 -3
  215. package/docs/types/AudioTagTypeConfigKey.html +3 -3
  216. package/docs/types/CSS3DRenderExportType.html +3 -3
  217. package/docs/types/CSS3DRenderPluginExportType.html +3 -3
  218. package/docs/types/CSS3DRenderPluginParameterType.html +3 -3
  219. package/docs/types/ClassFunctionParameters.html +3 -3
  220. package/docs/types/Color.html +3 -3
  221. package/docs/types/ContentTypeConfigKey.html +3 -3
  222. package/docs/types/ContentTypeConfigKeySplit.html +3 -3
  223. package/docs/types/ContentTypeMap.html +3 -3
  224. package/docs/types/Create3DDomContainerReturnType.html +3 -3
  225. package/docs/types/Create3DElementReturnType.html +3 -3
  226. package/docs/types/CruisePluginExportType.html +3 -3
  227. package/docs/types/CruisePluginTypes.CruiseData.html +3 -3
  228. package/docs/types/CruisePluginTypes.MoveEffect.html +3 -3
  229. package/docs/types/DeprecatedMediaPlaneProperty.html +3 -3
  230. package/docs/types/DeprecatedTagProperty.html +3 -3
  231. package/docs/types/Direction-1.html +3 -3
  232. package/docs/types/Direction4.html +3 -3
  233. package/docs/types/ElementRenderer.html +3 -3
  234. package/docs/types/FloorplanRuleLabels.html +3 -3
  235. package/docs/types/FloorplanServerRuleLabels.html +3 -3
  236. package/docs/types/GuideLinePluginExportType.html +3 -3
  237. package/docs/types/GuideLinePluginType.GuideLineItem.html +3 -3
  238. package/docs/types/GuideLinePluginType.GuideLineItemEventMap.html +3 -3
  239. package/docs/types/GuideLinePluginType.GuideLineModeItemMode.html +3 -3
  240. package/docs/types/GuideLinePluginType.GuideLineStyle.html +3 -3
  241. package/docs/types/GuideLinePluginType.ModelGuideLineTag.html +3 -3
  242. package/docs/types/GuideLinePluginType.PathItem.html +3 -3
  243. package/docs/types/GuideLinePluginType.PluginData.html +3 -3
  244. package/docs/types/HelperEventMap.html +3 -3
  245. package/docs/types/LoadTagConfig.html +3 -3
  246. package/docs/types/MapviewFloorplanPluginParameterType.html +3 -3
  247. package/docs/types/MapviewFloorplanPluginReturnType.html +3 -3
  248. package/docs/types/MediaData.html +3 -3
  249. package/docs/types/MediaStore.html +3 -3
  250. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +3 -3
  251. package/docs/types/ModelFloorplanPluginParameterType.html +3 -3
  252. package/docs/types/ModelFloorplanPluginReturnType.html +3 -3
  253. package/docs/types/ModelRoomLabelPluginParameters.html +3 -3
  254. package/docs/types/ModelRoomLabelPluginReturnType.html +3 -3
  255. package/docs/types/MoveArgs.html +3 -3
  256. package/docs/types/MoveOpts.html +3 -3
  257. package/docs/types/Object3DHelperEventMap.html +3 -3
  258. package/docs/types/ObjectFit.html +3 -3
  259. package/docs/types/PaintBrushEventMap.html +3 -3
  260. package/docs/types/PanoCompassPluginData.html +3 -3
  261. package/docs/types/PanoCompassPluginExportType.html +3 -3
  262. package/docs/types/PanoCompassPluginParameterType.html +3 -3
  263. package/docs/types/PanoFloorplanRadarPluginParameterType.html +3 -3
  264. package/docs/types/PanoFloorplanRadarPluginReturnType.html +3 -3
  265. package/docs/types/PanoIndex.html +3 -3
  266. package/docs/types/PanoMeasurePluginEvent.html +3 -3
  267. package/docs/types/PanoMeasureReturnType.html +3 -3
  268. package/docs/types/PanoSpatialTagPluginId.html +3 -3
  269. package/docs/types/PanoTagPluginExportInterface.html +3 -3
  270. package/docs/types/PanoTagPluginParamsInterface.html +3 -3
  271. package/docs/types/PanoVideoPluginParameterType.html +3 -3
  272. package/docs/types/PanoVideoPluginReturnType.html +3 -3
  273. package/docs/types/PickTagContentTypeInContentTypeConfigKey.html +3 -3
  274. package/docs/types/PipelinePluginParameterType.html +3 -3
  275. package/docs/types/PipelinePluginReturnType.html +3 -3
  276. package/docs/types/PlaneTag.html +3 -3
  277. package/docs/types/Point2DTag.html +3 -3
  278. package/docs/types/Point3DTag.html +3 -3
  279. package/docs/types/PointTag.html +3 -3
  280. package/docs/types/PointTagInstance.html +3 -3
  281. package/docs/types/Position.html +3 -3
  282. package/docs/types/RotateArgs.html +3 -3
  283. package/docs/types/RotateOpts.html +3 -3
  284. package/docs/types/RuleLabelsKey.html +3 -3
  285. package/docs/types/RuleLabelsValue.html +3 -3
  286. package/docs/types/StickType.html +3 -3
  287. package/docs/types/Tag.html +3 -3
  288. package/docs/types/Tag2D.html +3 -3
  289. package/docs/types/Tag3D.html +3 -3
  290. package/docs/types/TagConfigByKey.html +3 -3
  291. package/docs/types/TagContentType.html +3 -3
  292. package/docs/types/TagDimensionType.html +3 -3
  293. package/docs/types/TagElement.html +3 -3
  294. package/docs/types/TagEvents.html +3 -3
  295. package/docs/types/TagGLTFObject.html +3 -3
  296. package/docs/types/TagHooks.html +3 -3
  297. package/docs/types/TagId.html +3 -3
  298. package/docs/types/TagInstance.html +3 -3
  299. package/docs/types/TagPointType.html +3 -3
  300. package/docs/types/TagRendererMap.html +3 -3
  301. package/docs/types/TopviewFloorplanPluginParameterType.html +3 -3
  302. package/docs/types/TopviewFloorplanPluginReturnType.html +3 -3
  303. package/docs/types/WorkCode.html +3 -3
  304. package/docs/variables/FLOOR_TYPE_MAP.html +3 -3
  305. package/docs/variables/PLUGIN.html +3 -3
  306. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +3 -3
  307. package/docs/variables/ROOM_TYPE_MAP.html +3 -3
  308. package/docs/variables/defaultGlobalConfig.html +4 -4
  309. package/docs/variables/itemLabelPluginServerParams.html +3 -3
  310. package/docs/variables/modelItemLabelPluginServerParams.html +3 -3
  311. package/docs/variables/modelRoomLabelPluginServerParams.html +3 -3
  312. package/libs/PanoTagPlugin/Components/Common/Text/FlyText.js +133 -112
  313. package/libs/PanoTagPlugin/Components/Tag/TextTag/TextTag.js +107 -95
  314. package/libs/PanoTagPlugin/typings/tag/TagConfig.d.ts +17 -3
  315. package/libs/PanoTagPlugin/typings/tag/TagData.d.ts +1 -1
  316. package/libs/base/BasePlugin.js +1 -1
  317. package/libs/shared-utils/logger.js +1 -1
  318. package/package.json +1 -1
package/dist/index.cjs.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var df=Object.defineProperty,hf=Object.defineProperties;var uf=Object.getOwnPropertyDescriptors;var $a=Object.getOwnPropertySymbols;var ff=Object.prototype.hasOwnProperty,mf=Object.prototype.propertyIsEnumerable;var vr=(n,t,e)=>t in n?df(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,G=(n,t)=>{for(var e in t||(t={}))ff.call(t,e)&&vr(n,e,t[e]);if($a)for(var e of $a(t))mf.call(t,e)&&vr(n,e,t[e]);return n},ve=(n,t)=>hf(n,uf(t));var f=(n,t,e)=>(vr(n,typeof t!="symbol"?t+"":t,e),e);var W=(n,t,e)=>new Promise((i,s)=>{var o=l=>{try{a(e.next(l))}catch(c){s(c)}},r=l=>{try{a(e.throw(l))}catch(c){s(c)}},a=l=>l.done?i(l.value):Promise.resolve(l.value).then(o,r);a((e=e.apply(n,t)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const je=require("@realsee/five"),R=require("three"),Js=require("three/examples/jsm/renderers/CSS3DRenderer"),ls=require("hammerjs"),hh=require("@realsee/five/line"),uh=require("three/examples/jsm/loaders/FBXLoader"),gf=require("earcut"),el=require("animejs"),pf=require("@realsee/five/gltf-loader");function Af(n){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const e in n)if(e!=="default"){const i=Object.getOwnPropertyDescriptor(n,e);Object.defineProperty(t,e,i.get?i:{enumerable:!0,get:()=>n[e]})}}return t.default=n,Object.freeze(t)}const E=Af(R);function vf(){console.debug("%c %c@realsee/dnalogel %cv2.27.0-dev.2",["background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAMCAMAAACHgmeRAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABLFBMVEUAAAAapPoap/oaqvkbrfkbr/gZnfwZoPsaqfnD4v/E4/8Ylv0clPm93/+/4P/B4f8Yj/683/8Wif+33P8Uhv+x2f8ShP+s1v8Pgf+n0/8Nf/+h0f8Lff8Lff8Nf/9dl/+czv8KfP8KfP+Lxf+Uyv+Xy/+Hwv+Jw/+Mxf+Oxv+RyP8aovsapfoap/oZmfwZm/wZnvsYnPsYkf4YlP0NePsDYfgYcfi43f+63v8Xiv8Xjf4EWfwCV/sWZ/qz2v+02/8Vh/8WiP8EUf8CTf4WXv2u1/+v2P8Thf8Thv8ETf8CR/8VV/+o1f+q1f8Qgv8Rg/8DSv8BRf8UVP+j0v+k0v8OgP8Pgf8DR/8DQv9Nhf+dzv+fz/+Kv/+Vyv+Xy/+azf+Oxv+Qx/+SyP////8MUhLdAAAAK3RSTlMACEWQ2bd98uQECPXxqO7c+Pb49vj2+Pb49vj23Oul8fMHA+TwerXXjEIG2P+bHgAAAAFiS0dEY1y+LaoAAAB+SURBVAjXY2BgZGJmYWVgYGBgY9fW0eVg4ORi4NbTNzDk4eXjZxAwMjYxNTO3EGQQsrSytrG1sxdmEHFwdHJ2cXUTZRBz9/D08vbxFWeQ8PMPCAwKDpFkkAoNC4+IjIqWZpCRlZOPiY2LV2BQVGJQTkhMUlEFWaOmrqGpxQAAyg0S9Dq+VPYAAAAASUVORK5CYII=')","background-repeat: no-repeat","background-position: 0 center","padding-left: 8px"].join(";"),"","background-color: #12ce9b;color:black;padding:0 6px;border-radius: 3px")}function bf(){const n=typeof OffscreenCanvas!="undefined",t=n&&new OffscreenCanvas(1,1).getContext("webgl")!==null;n&&!t&&Object.assign(window,{OffscreenCanvas:function(e,i){const s=document.createElement("canvas");return s.width=e,s.height=i,s}})}function fh(){}const tl=()=>Promise.resolve(),il={__queue:Promise.resolve()};function yf(n=tl){il.__queue=il.__queue.then(n).catch(tl)}function Ms(n,t,e){const i=n.x,s=n.y,o=Math.floor(i/t*1e4)/1e4,r=Math.floor(s/e*1e4)/1e4;return{x:o,y:r}}function br(n,t,e){const{x:i,y:s}=n,o=i*t,r=s*e;return{x:o,y:r}}function ks(n){if(n.length<2)return{};const t=n.slice(-2),e=t[0],i={x:(t[0].x+t[1].x)/2,y:(t[0].y+t[1].y)/2};return{control:e,end:i}}function wf(n,t,e=fh){new Promise(i=>{setTimeout(()=>{e(),i(!0)},t*n)})}const Cf=window,nl=window.requestAnimationFrame||Cf.webkitRequestAnimationFrame||(n=>setTimeout(n,16));function Ws(n,t=0){t<=0?nl(n):nl(()=>Ws(n,t-1))}var Lt=Object.freeze({Linear:Object.freeze({None:function(n){return n},In:function(n){return this.None(n)},Out:function(n){return this.None(n)},InOut:function(n){return this.None(n)}}),Quadratic:Object.freeze({In:function(n){return n*n},Out:function(n){return n*(2-n)},InOut:function(n){return(n*=2)<1?.5*n*n:-.5*(--n*(n-2)-1)}}),Cubic:Object.freeze({In:function(n){return n*n*n},Out:function(n){return--n*n*n+1},InOut:function(n){return(n*=2)<1?.5*n*n*n:.5*((n-=2)*n*n+2)}}),Quartic:Object.freeze({In:function(n){return n*n*n*n},Out:function(n){return 1- --n*n*n*n},InOut:function(n){return(n*=2)<1?.5*n*n*n*n:-.5*((n-=2)*n*n*n-2)}}),Quintic:Object.freeze({In:function(n){return n*n*n*n*n},Out:function(n){return--n*n*n*n*n+1},InOut:function(n){return(n*=2)<1?.5*n*n*n*n*n:.5*((n-=2)*n*n*n*n+2)}}),Sinusoidal:Object.freeze({In:function(n){return 1-Math.sin((1-n)*Math.PI/2)},Out:function(n){return Math.sin(n*Math.PI/2)},InOut:function(n){return .5*(1-Math.sin(Math.PI*(.5-n)))}}),Exponential:Object.freeze({In:function(n){return n===0?0:Math.pow(1024,n-1)},Out:function(n){return n===1?1:1-Math.pow(2,-10*n)},InOut:function(n){return n===0?0:n===1?1:(n*=2)<1?.5*Math.pow(1024,n-1):.5*(-Math.pow(2,-10*(n-1))+2)}}),Circular:Object.freeze({In:function(n){return 1-Math.sqrt(1-n*n)},Out:function(n){return Math.sqrt(1- --n*n)},InOut:function(n){return(n*=2)<1?-.5*(Math.sqrt(1-n*n)-1):.5*(Math.sqrt(1-(n-=2)*n)+1)}}),Elastic:Object.freeze({In:function(n){return n===0?0:n===1?1:-Math.pow(2,10*(n-1))*Math.sin((n-1.1)*5*Math.PI)},Out:function(n){return n===0?0:n===1?1:Math.pow(2,-10*n)*Math.sin((n-.1)*5*Math.PI)+1},InOut:function(n){return n===0?0:n===1?1:(n*=2,n<1?-.5*Math.pow(2,10*(n-1))*Math.sin((n-1.1)*5*Math.PI):.5*Math.pow(2,-10*(n-1))*Math.sin((n-1.1)*5*Math.PI)+1)}}),Back:Object.freeze({In:function(n){var t=1.70158;return n===1?1:n*n*((t+1)*n-t)},Out:function(n){var t=1.70158;return n===0?0:--n*n*((t+1)*n+t)+1},InOut:function(n){var t=2.5949095;return(n*=2)<1?.5*(n*n*((t+1)*n-t)):.5*((n-=2)*n*((t+1)*n+t)+2)}}),Bounce:Object.freeze({In:function(n){return 1-Lt.Bounce.Out(1-n)},Out:function(n){return n<1/2.75?7.5625*n*n:n<2/2.75?7.5625*(n-=1.5/2.75)*n+.75:n<2.5/2.75?7.5625*(n-=2.25/2.75)*n+.9375:7.5625*(n-=2.625/2.75)*n+.984375},InOut:function(n){return n<.5?Lt.Bounce.In(n*2)*.5:Lt.Bounce.Out(n*2-1)*.5+.5}}),generatePow:function(n){return n===void 0&&(n=4),n=n<Number.EPSILON?Number.EPSILON:n,n=n>1e4?1e4:n,{In:function(t){return Math.pow(t,n)},Out:function(t){return 1-Math.pow(1-t,n)},InOut:function(t){return t<.5?Math.pow(t*2,n)/2:(1-Math.pow(2-t*2,n))/2+.5}}}}),nn=function(){return performance.now()},mh=function(){function n(){this._tweens={},this._tweensAddedDuringUpdate={}}return n.prototype.getAll=function(){var t=this;return Object.keys(this._tweens).map(function(e){return t._tweens[e]})},n.prototype.removeAll=function(){this._tweens={}},n.prototype.add=function(t){this._tweens[t.getId()]=t,this._tweensAddedDuringUpdate[t.getId()]=t},n.prototype.remove=function(t){delete this._tweens[t.getId()],delete this._tweensAddedDuringUpdate[t.getId()]},n.prototype.update=function(t,e){t===void 0&&(t=nn()),e===void 0&&(e=!1);var i=Object.keys(this._tweens);if(i.length===0)return!1;for(;i.length>0;){this._tweensAddedDuringUpdate={};for(var s=0;s<i.length;s++){var o=this._tweens[i[s]],r=!e;o&&o.update(t,r)===!1&&!e&&delete this._tweens[i[s]]}i=Object.keys(this._tweensAddedDuringUpdate)}return!0},n}(),Di={Linear:function(n,t){var e=n.length-1,i=e*t,s=Math.floor(i),o=Di.Utils.Linear;return t<0?o(n[0],n[1],i):t>1?o(n[e],n[e-1],e-i):o(n[s],n[s+1>e?e:s+1],i-s)},Bezier:function(n,t){for(var e=0,i=n.length-1,s=Math.pow,o=Di.Utils.Bernstein,r=0;r<=i;r++)e+=s(1-t,i-r)*s(t,r)*n[r]*o(i,r);return e},CatmullRom:function(n,t){var e=n.length-1,i=e*t,s=Math.floor(i),o=Di.Utils.CatmullRom;return n[0]===n[e]?(t<0&&(s=Math.floor(i=e*(1+t))),o(n[(s-1+e)%e],n[s],n[(s+1)%e],n[(s+2)%e],i-s)):t<0?n[0]-(o(n[0],n[0],n[1],n[1],-i)-n[0]):t>1?n[e]-(o(n[e],n[e],n[e-1],n[e-1],i-e)-n[e]):o(n[s?s-1:0],n[s],n[e<s+1?e:s+1],n[e<s+2?e:s+2],i-s)},Utils:{Linear:function(n,t,e){return(t-n)*e+n},Bernstein:function(n,t){var e=Di.Utils.Factorial;return e(n)/e(t)/e(n-t)},Factorial:function(){var n=[1];return function(t){var e=1;if(n[t])return n[t];for(var i=t;i>1;i--)e*=i;return n[t]=e,e}}(),CatmullRom:function(n,t,e,i,s){var o=(e-n)*.5,r=(i-t)*.5,a=s*s,l=s*a;return(2*t-2*e+o+r)*l+(-3*t+3*e-2*o-r)*a+o*s+t}}},fa=function(){function n(){}return n.nextId=function(){return n._nextId++},n._nextId=0,n}(),Wr=new mh,po=function(){function n(t,e){e===void 0&&(e=Wr),this._object=t,this._group=e,this._isPaused=!1,this._pauseStart=0,this._valuesStart={},this._valuesEnd={},this._valuesStartRepeat={},this._duration=1e3,this._isDynamic=!1,this._initialRepeat=0,this._repeat=0,this._yoyo=!1,this._isPlaying=!1,this._reversed=!1,this._delayTime=0,this._startTime=0,this._easingFunction=Lt.Linear.None,this._interpolationFunction=Di.Linear,this._chainedTweens=[],this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._id=fa.nextId(),this._isChainStopped=!1,this._propertiesAreSetUp=!1,this._goToEnd=!1}return n.prototype.getId=function(){return this._id},n.prototype.isPlaying=function(){return this._isPlaying},n.prototype.isPaused=function(){return this._isPaused},n.prototype.to=function(t,e){if(e===void 0&&(e=1e3),this._isPlaying)throw new Error("Can not call Tween.to() while Tween is already started or paused. Stop the Tween first.");return this._valuesEnd=t,this._propertiesAreSetUp=!1,this._duration=e,this},n.prototype.duration=function(t){return t===void 0&&(t=1e3),this._duration=t,this},n.prototype.dynamic=function(t){return t===void 0&&(t=!1),this._isDynamic=t,this},n.prototype.start=function(t,e){if(t===void 0&&(t=nn()),e===void 0&&(e=!1),this._isPlaying)return this;if(this._group&&this._group.add(this),this._repeat=this._initialRepeat,this._reversed){this._reversed=!1;for(var i in this._valuesStartRepeat)this._swapEndStartRepeatValues(i),this._valuesStart[i]=this._valuesStartRepeat[i]}if(this._isPlaying=!0,this._isPaused=!1,this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._isChainStopped=!1,this._startTime=t,this._startTime+=this._delayTime,!this._propertiesAreSetUp||e){if(this._propertiesAreSetUp=!0,!this._isDynamic){var s={};for(var o in this._valuesEnd)s[o]=this._valuesEnd[o];this._valuesEnd=s}this._setupProperties(this._object,this._valuesStart,this._valuesEnd,this._valuesStartRepeat,e)}return this},n.prototype.startFromCurrentValues=function(t){return this.start(t,!0)},n.prototype._setupProperties=function(t,e,i,s,o){for(var r in i){var a=t[r],l=Array.isArray(a),c=l?"array":typeof a,d=!l&&Array.isArray(i[r]);if(!(c==="undefined"||c==="function")){if(d){var h=i[r];if(h.length===0)continue;for(var u=[a],m=0,A=h.length;m<A;m+=1){var p=this._handleRelativeValue(a,h[m]);if(isNaN(p)){d=!1,console.warn("Found invalid interpolation list. Skipping.");break}u.push(p)}d&&(i[r]=u)}if((c==="object"||l)&&a&&!d){e[r]=l?[]:{};var g=a;for(var v in g)e[r][v]=g[v];s[r]=l?[]:{};var h=i[r];if(!this._isDynamic){var y={};for(var v in h)y[v]=h[v];i[r]=h=y}this._setupProperties(g,e[r],h,s[r],o)}else(typeof e[r]=="undefined"||o)&&(e[r]=a),l||(e[r]*=1),d?s[r]=i[r].slice().reverse():s[r]=e[r]||0}}},n.prototype.stop=function(){return this._isChainStopped||(this._isChainStopped=!0,this.stopChainedTweens()),this._isPlaying?(this._group&&this._group.remove(this),this._isPlaying=!1,this._isPaused=!1,this._onStopCallback&&this._onStopCallback(this._object),this):this},n.prototype.end=function(){return this._goToEnd=!0,this.update(1/0),this},n.prototype.pause=function(t){return t===void 0&&(t=nn()),this._isPaused||!this._isPlaying?this:(this._isPaused=!0,this._pauseStart=t,this._group&&this._group.remove(this),this)},n.prototype.resume=function(t){return t===void 0&&(t=nn()),!this._isPaused||!this._isPlaying?this:(this._isPaused=!1,this._startTime+=t-this._pauseStart,this._pauseStart=0,this._group&&this._group.add(this),this)},n.prototype.stopChainedTweens=function(){for(var t=0,e=this._chainedTweens.length;t<e;t++)this._chainedTweens[t].stop();return this},n.prototype.group=function(t){return t===void 0&&(t=Wr),this._group=t,this},n.prototype.delay=function(t){return t===void 0&&(t=0),this._delayTime=t,this},n.prototype.repeat=function(t){return t===void 0&&(t=0),this._initialRepeat=t,this._repeat=t,this},n.prototype.repeatDelay=function(t){return this._repeatDelayTime=t,this},n.prototype.yoyo=function(t){return t===void 0&&(t=!1),this._yoyo=t,this},n.prototype.easing=function(t){return t===void 0&&(t=Lt.Linear.None),this._easingFunction=t,this},n.prototype.interpolation=function(t){return t===void 0&&(t=Di.Linear),this._interpolationFunction=t,this},n.prototype.chain=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return this._chainedTweens=t,this},n.prototype.onStart=function(t){return this._onStartCallback=t,this},n.prototype.onEveryStart=function(t){return this._onEveryStartCallback=t,this},n.prototype.onUpdate=function(t){return this._onUpdateCallback=t,this},n.prototype.onRepeat=function(t){return this._onRepeatCallback=t,this},n.prototype.onComplete=function(t){return this._onCompleteCallback=t,this},n.prototype.onStop=function(t){return this._onStopCallback=t,this},n.prototype.update=function(t,e){if(t===void 0&&(t=nn()),e===void 0&&(e=!0),this._isPaused)return!0;var i,s,o=this._startTime+this._duration;if(!this._goToEnd&&!this._isPlaying){if(t>o)return!1;e&&this.start(t,!0)}if(this._goToEnd=!1,t<this._startTime)return!0;this._onStartCallbackFired===!1&&(this._onStartCallback&&this._onStartCallback(this._object),this._onStartCallbackFired=!0),this._onEveryStartCallbackFired===!1&&(this._onEveryStartCallback&&this._onEveryStartCallback(this._object),this._onEveryStartCallbackFired=!0),s=(t-this._startTime)/this._duration,s=this._duration===0||s>1?1:s;var r=this._easingFunction(s);if(this._updateProperties(this._object,this._valuesStart,this._valuesEnd,r),this._onUpdateCallback&&this._onUpdateCallback(this._object,s),s===1)if(this._repeat>0){isFinite(this._repeat)&&this._repeat--;for(i in this._valuesStartRepeat)!this._yoyo&&typeof this._valuesEnd[i]=="string"&&(this._valuesStartRepeat[i]=this._valuesStartRepeat[i]+parseFloat(this._valuesEnd[i])),this._yoyo&&this._swapEndStartRepeatValues(i),this._valuesStart[i]=this._valuesStartRepeat[i];return this._yoyo&&(this._reversed=!this._reversed),this._repeatDelayTime!==void 0?this._startTime=t+this._repeatDelayTime:this._startTime=t+this._delayTime,this._onRepeatCallback&&this._onRepeatCallback(this._object),this._onEveryStartCallbackFired=!1,!0}else{this._onCompleteCallback&&this._onCompleteCallback(this._object);for(var a=0,l=this._chainedTweens.length;a<l;a++)this._chainedTweens[a].start(this._startTime+this._duration,!1);return this._isPlaying=!1,!1}return!0},n.prototype._updateProperties=function(t,e,i,s){for(var o in i)if(e[o]!==void 0){var r=e[o]||0,a=i[o],l=Array.isArray(t[o]),c=Array.isArray(a),d=!l&&c;d?t[o]=this._interpolationFunction(a,s):typeof a=="object"&&a?this._updateProperties(t[o],r,a,s):(a=this._handleRelativeValue(r,a),typeof a=="number"&&(t[o]=r+(a-r)*s))}},n.prototype._handleRelativeValue=function(t,e){return typeof e!="string"?e:e.charAt(0)==="+"||e.charAt(0)==="-"?t+parseFloat(e):parseFloat(e)},n.prototype._swapEndStartRepeatValues=function(t){var e=this._valuesStartRepeat[t],i=this._valuesEnd[t];typeof i=="string"?this._valuesStartRepeat[t]=this._valuesStartRepeat[t]+parseFloat(i):this._valuesStartRepeat[t]=this._valuesEnd[t],this._valuesEnd[t]=e},n}(),If="20.0.3",Pf=fa.nextId,_t=Wr,Ef=_t.getAll.bind(_t),Mf=_t.removeAll.bind(_t),kf=_t.add.bind(_t),gh=_t.remove.bind(_t),xf=_t.update.bind(_t),sl={Easing:Lt,Group:mh,Interpolation:Di,now:nn,Sequence:fa,nextId:Pf,Tween:po,VERSION:If,getAll:Ef,removeAll:Mf,add:kf,remove:gh,update:xf};function Df(n,t,e,i=Lt.Linear.None){const s=new po(n).to(t,e).easing(i).start();function o(r){s.update(r)&&requestAnimationFrame(o)}return requestAnimationFrame(o),s}var Kt=(n=>(n.Drawline="Drawline",n.Undo="Undo",n.Exit="Exit",n))(Kt||{});const es=Symbol("$$PAINT_BRUSH_EVENT$$");function xs(n){return n[es]||(n[es]={}),n[es]}function Sf(n){n[es]||delete n[es]}let Tf=class{hasListener(t){const e=xs(this);return e&&e[t]&&e[t].length>0}on(t,e,i){const s=xs(this);return s[t]||(s[t]=[]),s[t].push([e,i||!1]),()=>this.off(t,e)}once(t,e){return this.on(t,e,!0)}off(t,e){if(t===void 0){Sf(this);return}const i=xs(this);if(i[t]||(i[t]=[]),e===void 0){i[t].length=0;return}let s=0;for(;s<i[t].length&&i[t][s][0]!==e;s++);s<i[t].length&&i[t].splice(s,1)}emit(t,...e){let i=!1;const o=xs(this)[t]||[];for(let r of o.slice()){const[a,l=!1]=r,c=a(...e);l&&this.off(t,a),c===!1&&(i=!0)}return i}};function li(){return((1+Math.random())*65536|0).toString(16).substring(1)}function lt(){return(li()+li()+"-"+li()+"-4"+li().substr(0,3)+"-"+li()+"-"+li()+li()+li()).toLowerCase()}const Lf=`
1
+ "use strict";var df=Object.defineProperty,hf=Object.defineProperties;var uf=Object.getOwnPropertyDescriptors;var $a=Object.getOwnPropertySymbols;var ff=Object.prototype.hasOwnProperty,mf=Object.prototype.propertyIsEnumerable;var br=(n,t,e)=>t in n?df(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e,G=(n,t)=>{for(var e in t||(t={}))ff.call(t,e)&&br(n,e,t[e]);if($a)for(var e of $a(t))mf.call(t,e)&&br(n,e,t[e]);return n},ve=(n,t)=>hf(n,uf(t));var f=(n,t,e)=>(br(n,typeof t!="symbol"?t+"":t,e),e);var W=(n,t,e)=>new Promise((i,s)=>{var o=l=>{try{a(e.next(l))}catch(c){s(c)}},r=l=>{try{a(e.throw(l))}catch(c){s(c)}},a=l=>l.done?i(l.value):Promise.resolve(l.value).then(o,r);a((e=e.apply(n,t)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const je=require("@realsee/five"),R=require("three"),qs=require("three/examples/jsm/renderers/CSS3DRenderer"),ls=require("hammerjs"),hh=require("@realsee/five/line"),uh=require("three/examples/jsm/loaders/FBXLoader"),gf=require("earcut"),el=require("animejs"),pf=require("@realsee/five/gltf-loader");function Af(n){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const e in n)if(e!=="default"){const i=Object.getOwnPropertyDescriptor(n,e);Object.defineProperty(t,e,i.get?i:{enumerable:!0,get:()=>n[e]})}}return t.default=n,Object.freeze(t)}const E=Af(R);function vf(){console.debug("%c %c@realsee/dnalogel %cv2.27.0-dev.3",["background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAMCAMAAACHgmeRAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAABLFBMVEUAAAAapPoap/oaqvkbrfkbr/gZnfwZoPsaqfnD4v/E4/8Ylv0clPm93/+/4P/B4f8Yj/683/8Wif+33P8Uhv+x2f8ShP+s1v8Pgf+n0/8Nf/+h0f8Lff8Lff8Nf/9dl/+czv8KfP8KfP+Lxf+Uyv+Xy/+Hwv+Jw/+Mxf+Oxv+RyP8aovsapfoap/oZmfwZm/wZnvsYnPsYkf4YlP0NePsDYfgYcfi43f+63v8Xiv8Xjf4EWfwCV/sWZ/qz2v+02/8Vh/8WiP8EUf8CTf4WXv2u1/+v2P8Thf8Thv8ETf8CR/8VV/+o1f+q1f8Qgv8Rg/8DSv8BRf8UVP+j0v+k0v8OgP8Pgf8DR/8DQv9Nhf+dzv+fz/+Kv/+Vyv+Xy/+azf+Oxv+Qx/+SyP////8MUhLdAAAAK3RSTlMACEWQ2bd98uQECPXxqO7c+Pb49vj2+Pb49vj23Oul8fMHA+TwerXXjEIG2P+bHgAAAAFiS0dEY1y+LaoAAAB+SURBVAjXY2BgZGJmYWVgYGBgY9fW0eVg4ORi4NbTNzDk4eXjZxAwMjYxNTO3EGQQsrSytrG1sxdmEHFwdHJ2cXUTZRBz9/D08vbxFWeQ8PMPCAwKDpFkkAoNC4+IjIqWZpCRlZOPiY2LV2BQVGJQTkhMUlEFWaOmrqGpxQAAyg0S9Dq+VPYAAAAASUVORK5CYII=')","background-repeat: no-repeat","background-position: 0 center","padding-left: 8px"].join(";"),"","background-color: #12ce9b;color:black;padding:0 6px;border-radius: 3px")}function bf(){const n=typeof OffscreenCanvas!="undefined",t=n&&new OffscreenCanvas(1,1).getContext("webgl")!==null;n&&!t&&Object.assign(window,{OffscreenCanvas:function(e,i){const s=document.createElement("canvas");return s.width=e,s.height=i,s}})}function fh(){}const tl=()=>Promise.resolve(),il={__queue:Promise.resolve()};function yf(n=tl){il.__queue=il.__queue.then(n).catch(tl)}function Ms(n,t,e){const i=n.x,s=n.y,o=Math.floor(i/t*1e4)/1e4,r=Math.floor(s/e*1e4)/1e4;return{x:o,y:r}}function yr(n,t,e){const{x:i,y:s}=n,o=i*t,r=s*e;return{x:o,y:r}}function ks(n){if(n.length<2)return{};const t=n.slice(-2),e=t[0],i={x:(t[0].x+t[1].x)/2,y:(t[0].y+t[1].y)/2};return{control:e,end:i}}function wf(n,t,e=fh){new Promise(i=>{setTimeout(()=>{e(),i(!0)},t*n)})}const Cf=window,nl=window.requestAnimationFrame||Cf.webkitRequestAnimationFrame||(n=>setTimeout(n,16));function Ys(n,t=0){t<=0?nl(n):nl(()=>Ys(n,t-1))}var Lt=Object.freeze({Linear:Object.freeze({None:function(n){return n},In:function(n){return this.None(n)},Out:function(n){return this.None(n)},InOut:function(n){return this.None(n)}}),Quadratic:Object.freeze({In:function(n){return n*n},Out:function(n){return n*(2-n)},InOut:function(n){return(n*=2)<1?.5*n*n:-.5*(--n*(n-2)-1)}}),Cubic:Object.freeze({In:function(n){return n*n*n},Out:function(n){return--n*n*n+1},InOut:function(n){return(n*=2)<1?.5*n*n*n:.5*((n-=2)*n*n+2)}}),Quartic:Object.freeze({In:function(n){return n*n*n*n},Out:function(n){return 1- --n*n*n*n},InOut:function(n){return(n*=2)<1?.5*n*n*n*n:-.5*((n-=2)*n*n*n-2)}}),Quintic:Object.freeze({In:function(n){return n*n*n*n*n},Out:function(n){return--n*n*n*n*n+1},InOut:function(n){return(n*=2)<1?.5*n*n*n*n*n:.5*((n-=2)*n*n*n*n+2)}}),Sinusoidal:Object.freeze({In:function(n){return 1-Math.sin((1-n)*Math.PI/2)},Out:function(n){return Math.sin(n*Math.PI/2)},InOut:function(n){return .5*(1-Math.sin(Math.PI*(.5-n)))}}),Exponential:Object.freeze({In:function(n){return n===0?0:Math.pow(1024,n-1)},Out:function(n){return n===1?1:1-Math.pow(2,-10*n)},InOut:function(n){return n===0?0:n===1?1:(n*=2)<1?.5*Math.pow(1024,n-1):.5*(-Math.pow(2,-10*(n-1))+2)}}),Circular:Object.freeze({In:function(n){return 1-Math.sqrt(1-n*n)},Out:function(n){return Math.sqrt(1- --n*n)},InOut:function(n){return(n*=2)<1?-.5*(Math.sqrt(1-n*n)-1):.5*(Math.sqrt(1-(n-=2)*n)+1)}}),Elastic:Object.freeze({In:function(n){return n===0?0:n===1?1:-Math.pow(2,10*(n-1))*Math.sin((n-1.1)*5*Math.PI)},Out:function(n){return n===0?0:n===1?1:Math.pow(2,-10*n)*Math.sin((n-.1)*5*Math.PI)+1},InOut:function(n){return n===0?0:n===1?1:(n*=2,n<1?-.5*Math.pow(2,10*(n-1))*Math.sin((n-1.1)*5*Math.PI):.5*Math.pow(2,-10*(n-1))*Math.sin((n-1.1)*5*Math.PI)+1)}}),Back:Object.freeze({In:function(n){var t=1.70158;return n===1?1:n*n*((t+1)*n-t)},Out:function(n){var t=1.70158;return n===0?0:--n*n*((t+1)*n+t)+1},InOut:function(n){var t=2.5949095;return(n*=2)<1?.5*(n*n*((t+1)*n-t)):.5*((n-=2)*n*((t+1)*n+t)+2)}}),Bounce:Object.freeze({In:function(n){return 1-Lt.Bounce.Out(1-n)},Out:function(n){return n<1/2.75?7.5625*n*n:n<2/2.75?7.5625*(n-=1.5/2.75)*n+.75:n<2.5/2.75?7.5625*(n-=2.25/2.75)*n+.9375:7.5625*(n-=2.625/2.75)*n+.984375},InOut:function(n){return n<.5?Lt.Bounce.In(n*2)*.5:Lt.Bounce.Out(n*2-1)*.5+.5}}),generatePow:function(n){return n===void 0&&(n=4),n=n<Number.EPSILON?Number.EPSILON:n,n=n>1e4?1e4:n,{In:function(t){return Math.pow(t,n)},Out:function(t){return 1-Math.pow(1-t,n)},InOut:function(t){return t<.5?Math.pow(t*2,n)/2:(1-Math.pow(2-t*2,n))/2+.5}}}}),nn=function(){return performance.now()},mh=function(){function n(){this._tweens={},this._tweensAddedDuringUpdate={}}return n.prototype.getAll=function(){var t=this;return Object.keys(this._tweens).map(function(e){return t._tweens[e]})},n.prototype.removeAll=function(){this._tweens={}},n.prototype.add=function(t){this._tweens[t.getId()]=t,this._tweensAddedDuringUpdate[t.getId()]=t},n.prototype.remove=function(t){delete this._tweens[t.getId()],delete this._tweensAddedDuringUpdate[t.getId()]},n.prototype.update=function(t,e){t===void 0&&(t=nn()),e===void 0&&(e=!1);var i=Object.keys(this._tweens);if(i.length===0)return!1;for(;i.length>0;){this._tweensAddedDuringUpdate={};for(var s=0;s<i.length;s++){var o=this._tweens[i[s]],r=!e;o&&o.update(t,r)===!1&&!e&&delete this._tweens[i[s]]}i=Object.keys(this._tweensAddedDuringUpdate)}return!0},n}(),Di={Linear:function(n,t){var e=n.length-1,i=e*t,s=Math.floor(i),o=Di.Utils.Linear;return t<0?o(n[0],n[1],i):t>1?o(n[e],n[e-1],e-i):o(n[s],n[s+1>e?e:s+1],i-s)},Bezier:function(n,t){for(var e=0,i=n.length-1,s=Math.pow,o=Di.Utils.Bernstein,r=0;r<=i;r++)e+=s(1-t,i-r)*s(t,r)*n[r]*o(i,r);return e},CatmullRom:function(n,t){var e=n.length-1,i=e*t,s=Math.floor(i),o=Di.Utils.CatmullRom;return n[0]===n[e]?(t<0&&(s=Math.floor(i=e*(1+t))),o(n[(s-1+e)%e],n[s],n[(s+1)%e],n[(s+2)%e],i-s)):t<0?n[0]-(o(n[0],n[0],n[1],n[1],-i)-n[0]):t>1?n[e]-(o(n[e],n[e],n[e-1],n[e-1],i-e)-n[e]):o(n[s?s-1:0],n[s],n[e<s+1?e:s+1],n[e<s+2?e:s+2],i-s)},Utils:{Linear:function(n,t,e){return(t-n)*e+n},Bernstein:function(n,t){var e=Di.Utils.Factorial;return e(n)/e(t)/e(n-t)},Factorial:function(){var n=[1];return function(t){var e=1;if(n[t])return n[t];for(var i=t;i>1;i--)e*=i;return n[t]=e,e}}(),CatmullRom:function(n,t,e,i,s){var o=(e-n)*.5,r=(i-t)*.5,a=s*s,l=s*a;return(2*t-2*e+o+r)*l+(-3*t+3*e-2*o-r)*a+o*s+t}}},fa=function(){function n(){}return n.nextId=function(){return n._nextId++},n._nextId=0,n}(),Wr=new mh,Ao=function(){function n(t,e){e===void 0&&(e=Wr),this._object=t,this._group=e,this._isPaused=!1,this._pauseStart=0,this._valuesStart={},this._valuesEnd={},this._valuesStartRepeat={},this._duration=1e3,this._isDynamic=!1,this._initialRepeat=0,this._repeat=0,this._yoyo=!1,this._isPlaying=!1,this._reversed=!1,this._delayTime=0,this._startTime=0,this._easingFunction=Lt.Linear.None,this._interpolationFunction=Di.Linear,this._chainedTweens=[],this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._id=fa.nextId(),this._isChainStopped=!1,this._propertiesAreSetUp=!1,this._goToEnd=!1}return n.prototype.getId=function(){return this._id},n.prototype.isPlaying=function(){return this._isPlaying},n.prototype.isPaused=function(){return this._isPaused},n.prototype.to=function(t,e){if(e===void 0&&(e=1e3),this._isPlaying)throw new Error("Can not call Tween.to() while Tween is already started or paused. Stop the Tween first.");return this._valuesEnd=t,this._propertiesAreSetUp=!1,this._duration=e,this},n.prototype.duration=function(t){return t===void 0&&(t=1e3),this._duration=t,this},n.prototype.dynamic=function(t){return t===void 0&&(t=!1),this._isDynamic=t,this},n.prototype.start=function(t,e){if(t===void 0&&(t=nn()),e===void 0&&(e=!1),this._isPlaying)return this;if(this._group&&this._group.add(this),this._repeat=this._initialRepeat,this._reversed){this._reversed=!1;for(var i in this._valuesStartRepeat)this._swapEndStartRepeatValues(i),this._valuesStart[i]=this._valuesStartRepeat[i]}if(this._isPlaying=!0,this._isPaused=!1,this._onStartCallbackFired=!1,this._onEveryStartCallbackFired=!1,this._isChainStopped=!1,this._startTime=t,this._startTime+=this._delayTime,!this._propertiesAreSetUp||e){if(this._propertiesAreSetUp=!0,!this._isDynamic){var s={};for(var o in this._valuesEnd)s[o]=this._valuesEnd[o];this._valuesEnd=s}this._setupProperties(this._object,this._valuesStart,this._valuesEnd,this._valuesStartRepeat,e)}return this},n.prototype.startFromCurrentValues=function(t){return this.start(t,!0)},n.prototype._setupProperties=function(t,e,i,s,o){for(var r in i){var a=t[r],l=Array.isArray(a),c=l?"array":typeof a,d=!l&&Array.isArray(i[r]);if(!(c==="undefined"||c==="function")){if(d){var h=i[r];if(h.length===0)continue;for(var u=[a],m=0,A=h.length;m<A;m+=1){var p=this._handleRelativeValue(a,h[m]);if(isNaN(p)){d=!1,console.warn("Found invalid interpolation list. Skipping.");break}u.push(p)}d&&(i[r]=u)}if((c==="object"||l)&&a&&!d){e[r]=l?[]:{};var g=a;for(var v in g)e[r][v]=g[v];s[r]=l?[]:{};var h=i[r];if(!this._isDynamic){var y={};for(var v in h)y[v]=h[v];i[r]=h=y}this._setupProperties(g,e[r],h,s[r],o)}else(typeof e[r]=="undefined"||o)&&(e[r]=a),l||(e[r]*=1),d?s[r]=i[r].slice().reverse():s[r]=e[r]||0}}},n.prototype.stop=function(){return this._isChainStopped||(this._isChainStopped=!0,this.stopChainedTweens()),this._isPlaying?(this._group&&this._group.remove(this),this._isPlaying=!1,this._isPaused=!1,this._onStopCallback&&this._onStopCallback(this._object),this):this},n.prototype.end=function(){return this._goToEnd=!0,this.update(1/0),this},n.prototype.pause=function(t){return t===void 0&&(t=nn()),this._isPaused||!this._isPlaying?this:(this._isPaused=!0,this._pauseStart=t,this._group&&this._group.remove(this),this)},n.prototype.resume=function(t){return t===void 0&&(t=nn()),!this._isPaused||!this._isPlaying?this:(this._isPaused=!1,this._startTime+=t-this._pauseStart,this._pauseStart=0,this._group&&this._group.add(this),this)},n.prototype.stopChainedTweens=function(){for(var t=0,e=this._chainedTweens.length;t<e;t++)this._chainedTweens[t].stop();return this},n.prototype.group=function(t){return t===void 0&&(t=Wr),this._group=t,this},n.prototype.delay=function(t){return t===void 0&&(t=0),this._delayTime=t,this},n.prototype.repeat=function(t){return t===void 0&&(t=0),this._initialRepeat=t,this._repeat=t,this},n.prototype.repeatDelay=function(t){return this._repeatDelayTime=t,this},n.prototype.yoyo=function(t){return t===void 0&&(t=!1),this._yoyo=t,this},n.prototype.easing=function(t){return t===void 0&&(t=Lt.Linear.None),this._easingFunction=t,this},n.prototype.interpolation=function(t){return t===void 0&&(t=Di.Linear),this._interpolationFunction=t,this},n.prototype.chain=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return this._chainedTweens=t,this},n.prototype.onStart=function(t){return this._onStartCallback=t,this},n.prototype.onEveryStart=function(t){return this._onEveryStartCallback=t,this},n.prototype.onUpdate=function(t){return this._onUpdateCallback=t,this},n.prototype.onRepeat=function(t){return this._onRepeatCallback=t,this},n.prototype.onComplete=function(t){return this._onCompleteCallback=t,this},n.prototype.onStop=function(t){return this._onStopCallback=t,this},n.prototype.update=function(t,e){if(t===void 0&&(t=nn()),e===void 0&&(e=!0),this._isPaused)return!0;var i,s,o=this._startTime+this._duration;if(!this._goToEnd&&!this._isPlaying){if(t>o)return!1;e&&this.start(t,!0)}if(this._goToEnd=!1,t<this._startTime)return!0;this._onStartCallbackFired===!1&&(this._onStartCallback&&this._onStartCallback(this._object),this._onStartCallbackFired=!0),this._onEveryStartCallbackFired===!1&&(this._onEveryStartCallback&&this._onEveryStartCallback(this._object),this._onEveryStartCallbackFired=!0),s=(t-this._startTime)/this._duration,s=this._duration===0||s>1?1:s;var r=this._easingFunction(s);if(this._updateProperties(this._object,this._valuesStart,this._valuesEnd,r),this._onUpdateCallback&&this._onUpdateCallback(this._object,s),s===1)if(this._repeat>0){isFinite(this._repeat)&&this._repeat--;for(i in this._valuesStartRepeat)!this._yoyo&&typeof this._valuesEnd[i]=="string"&&(this._valuesStartRepeat[i]=this._valuesStartRepeat[i]+parseFloat(this._valuesEnd[i])),this._yoyo&&this._swapEndStartRepeatValues(i),this._valuesStart[i]=this._valuesStartRepeat[i];return this._yoyo&&(this._reversed=!this._reversed),this._repeatDelayTime!==void 0?this._startTime=t+this._repeatDelayTime:this._startTime=t+this._delayTime,this._onRepeatCallback&&this._onRepeatCallback(this._object),this._onEveryStartCallbackFired=!1,!0}else{this._onCompleteCallback&&this._onCompleteCallback(this._object);for(var a=0,l=this._chainedTweens.length;a<l;a++)this._chainedTweens[a].start(this._startTime+this._duration,!1);return this._isPlaying=!1,!1}return!0},n.prototype._updateProperties=function(t,e,i,s){for(var o in i)if(e[o]!==void 0){var r=e[o]||0,a=i[o],l=Array.isArray(t[o]),c=Array.isArray(a),d=!l&&c;d?t[o]=this._interpolationFunction(a,s):typeof a=="object"&&a?this._updateProperties(t[o],r,a,s):(a=this._handleRelativeValue(r,a),typeof a=="number"&&(t[o]=r+(a-r)*s))}},n.prototype._handleRelativeValue=function(t,e){return typeof e!="string"?e:e.charAt(0)==="+"||e.charAt(0)==="-"?t+parseFloat(e):parseFloat(e)},n.prototype._swapEndStartRepeatValues=function(t){var e=this._valuesStartRepeat[t],i=this._valuesEnd[t];typeof i=="string"?this._valuesStartRepeat[t]=this._valuesStartRepeat[t]+parseFloat(i):this._valuesStartRepeat[t]=this._valuesEnd[t],this._valuesEnd[t]=e},n}(),If="20.0.3",Pf=fa.nextId,_t=Wr,Ef=_t.getAll.bind(_t),Mf=_t.removeAll.bind(_t),kf=_t.add.bind(_t),gh=_t.remove.bind(_t),xf=_t.update.bind(_t),sl={Easing:Lt,Group:mh,Interpolation:Di,now:nn,Sequence:fa,nextId:Pf,Tween:Ao,VERSION:If,getAll:Ef,removeAll:Mf,add:kf,remove:gh,update:xf};function Df(n,t,e,i=Lt.Linear.None){const s=new Ao(n).to(t,e).easing(i).start();function o(r){s.update(r)&&requestAnimationFrame(o)}return requestAnimationFrame(o),s}var Kt=(n=>(n.Drawline="Drawline",n.Undo="Undo",n.Exit="Exit",n))(Kt||{});const es=Symbol("$$PAINT_BRUSH_EVENT$$");function xs(n){return n[es]||(n[es]={}),n[es]}function Sf(n){n[es]||delete n[es]}let Tf=class{hasListener(t){const e=xs(this);return e&&e[t]&&e[t].length>0}on(t,e,i){const s=xs(this);return s[t]||(s[t]=[]),s[t].push([e,i||!1]),()=>this.off(t,e)}once(t,e){return this.on(t,e,!0)}off(t,e){if(t===void 0){Sf(this);return}const i=xs(this);if(i[t]||(i[t]=[]),e===void 0){i[t].length=0;return}let s=0;for(;s<i[t].length&&i[t][s][0]!==e;s++);s<i[t].length&&i[t].splice(s,1)}emit(t,...e){let i=!1;const o=xs(this)[t]||[];for(let r of o.slice()){const[a,l=!1]=r,c=a(...e);l&&this.off(t,a),c===!1&&(i=!0)}return i}};function li(){return((1+Math.random())*65536|0).toString(16).substring(1)}function lt(){return(li()+li()+"-"+li()+"-4"+li().substr(0,3)+"-"+li()+"-"+li()+li()+li()).toLowerCase()}const Lf=`
2
2
  <style type="text/css">
3
3
 
4
4
  #_gl_paintBrush {
@@ -98,7 +98,7 @@ transition: all 500ms;
98
98
  }
99
99
 
100
100
  </style>
101
- `;let jf=class extends Tf{constructor(e){super();f(this,"configs");f(this,"clientWidth");f(this,"clientHeight");f(this,"ready",!1);f(this,"uuid",lt());f(this,"tween");f(this,"tweening",!1);f(this,"container");f(this,"canvas");f(this,"data",{});f(this,"tempLine",{});this.configs=e,this.clientWidth=document.body.clientWidth,this.clientHeight=document.body.clientHeight,this.container=this.ifInsertToDOM(),this.canvas={},this.initCtrl()}get color(){return this.configs.currentColor}get state(){return this.data}get dpr(){return this.configs.DPR||1}ifInsertToDOM(){if(this.container)return this.container;if(this.configs.container)this.configs.container.id="_gl_paintBrush",this.container=this.configs.container;else if(document.getElementById("_gl_paintBrush"))this.container=document.getElementById("_gl_paintBrush");else{const e=document.createElement("div");e.id="_gl_paintBrush",document.body.appendChild(e),this.container=e}return this.container.innerHTML=Lf,this.container}initCanvas(e){const i=document.createElement("canvas");i.className=e,i.width=this.clientWidth,i.height=this.clientHeight;const s=i.getContext("2d");if(s)return s.lineWidth=5*this.dpr,s.lineCap="round",s.lineJoin="round",this.container.appendChild(i),i}initCtrl(){const e=document.createElement("div");e.className="_paintBrush-ctrl";const i=document.createElement("div");i.className="_paintBrush-ctrlinner";const s=document.createElement("a");s.className="_paintBrush-ctrlitem _paintBrush-ctrlitem--undo",s.addEventListener("click",a=>{var u;if(a.stopPropagation(),this.configs.onClickUndo&&this.configs.onClickUndo(),!this.canvas[this.uuid]||!this.data[this.uuid]||this.data[this.uuid].length===0)return;const l=this.data[this.uuid].pop();l&&this.emitStateChange({type:Kt.Undo,color:this.color,ready:this.ready,state:l,uuid:this.uuid});const c=(u=this.canvas[this.uuid])==null?void 0:u.getContext("2d");if(!this.canvas[this.uuid])return;const{width:d,height:h}=this.canvas[this.uuid];c&&c.clearRect(0,0,d,h),this.data[this.uuid].forEach(m=>this.handleDrawLine(this.uuid,m,{withUndo:!0}))});const o=document.createElement("a");return o.className="_paintBrush-ctrlitem _paintBrush-ctrlitem--close",o.addEventListener("click",a=>{a.stopPropagation(),this.closeBrush(),this.configs.onClickClose&&this.configs.onClickClose()}),[s,o].forEach(a=>{const l=document.createElement("i");l.className="brush-icon";const c=document.createElement("span");c.className="brush-txt",c.innerText=a.className.endsWith("undo")?this.configs.onUndoText:this.configs.onExitText,a.appendChild(l),a.appendChild(c)}),i.appendChild(s),i.appendChild(o),e.appendChild(i),this.container.appendChild(e),e}openBrush(){if(this.ready)return;this.canvas[this.uuid]||(this.canvas[this.uuid]=this.initCanvas("_paintBrush-canvas")),this.container.className="brushing";const e=this.canvas[this.uuid];e.getContext("2d").clearRect(0,0,e.width,e.height),this.openBrushHandle(),this.ready=!0,this.emit("readyChange",!0)}closeBrush(){this.ready&&(this.container.className="",this.data={},this.tempLine={},Object.keys(this.canvas).forEach(e=>{this.canvas[e].ontouchstart=()=>!1,this.canvas[e].ontouchmove=()=>!1,this.canvas[e].ontouchend=()=>!1,this.canvas[e].ontouchcancel=()=>!1;const i=this.canvas[e].getContext("2d");i&&i.clearRect(0,0,this.canvas[e].width,this.canvas[e].height)}),this.ready=!1,this.emit("readyChange",!1),this.emitStateChange({type:Kt.Exit,color:this.color,ready:!1,uuid:this.uuid}))}updateCurrentColor(e){const i=this.canvas[this.uuid];if(!i)return;const s=i.getContext("2d");s&&(this.configs.currentColor=e,s.strokeStyle=e)}openBrushHandle(){const e=this.canvas[this.uuid];if(!e)return;const i=e.getContext("2d");if(!i)return;const s=this.color||"#6D92FF";i.strokeStyle=s;let o=null,r=[],a,l=[],c=0;const d=(h,u,m)=>{const A=this.color||"#ff0000";i.strokeStyle=A,i.beginPath(),i.moveTo(h.x,h.y),i.quadraticCurveTo(u.x,u.y,m.x,m.y),i.stroke()};e.onmousedown=h=>{h.preventDefault(),c=Date.now();const u=h.clientX,m=h.clientY;r=[],r.push({x:u,y:m}),o={x:u,y:m},a=Ms({x:u,y:m},this.clientWidth,this.clientHeight),l=[]},e.onmousemove=h=>{if(h.preventDefault(),!o)return;const u=Number(h.clientX),m=Number(h.clientY);if(Math.abs(u-o.x)<5&&Math.abs(m-o.y)<5||(r.push({x:u,y:m}),l.push(Ms({x:u,y:m},this.clientWidth,this.clientHeight)),r.length<3))return;const{control:A,end:p}=ks(r);!A||!p||(d(o,A,p),o=p)},e.onmouseup=h=>{if(h.preventDefault(),o=null,r.length<3)return;this.data[this.uuid]||(this.data[this.uuid]=[]);const u=Date.now()-c,m={move:Object.assign({},a),uuid:this.uuid,line:[...l],color:this.color,duration:u<1280?u:u<2e3?1280:0};this.data[this.uuid].push(m),Ws(()=>{this.emitStateChange({type:Kt.Drawline,color:this.color,ready:this.ready,state:m,uuid:this.uuid})})},e.ontouchstart=h=>{h.preventDefault(),c=Date.now();const u=h.touches[0].clientX,m=h.touches[0].clientY;r=[],r.push({x:u,y:m}),o={x:u,y:m},a=Ms({x:u,y:m},this.clientWidth,this.clientHeight),l=[]},e.ontouchmove=h=>{if(h.preventDefault(),!o)return;const u=Number(h.touches[0].clientX),m=Number(h.touches[0].clientY);if(Math.abs(u-o.x)<5&&Math.abs(m-o.y)<5||(r.push({x:u,y:m}),l.push(Ms({x:u,y:m},this.clientWidth,this.clientHeight)),r.length<3))return;const{control:A,end:p}=ks(r);!A||!p||(d(o,A,p),o=p)},e.ontouchend=e.ontouchcancel=h=>{if(h.preventDefault(),o=null,r.length<3)return;this.data[this.uuid]||(this.data[this.uuid]=[]);const u=Date.now()-c,m={move:Object.assign({},a),line:[...l],uuid:this.uuid,color:this.color,duration:u<1280?u:u<2e3?1280:0};this.data[this.uuid].push(m),Ws(()=>{this.emitStateChange({type:Kt.Drawline,color:this.color,ready:this.ready,state:m,uuid:this.uuid})})}}emitStateChange(e,i=!0){if(e.type!==Kt.Drawline){this.emit("stateChange",e,i);return}const s=Date.now(),o=e.state;if(!o||!o.line)return;const r=Math.ceil(o.line.length/100);for(let a=0;a<r;a++){const l={uuid:this.uuid,color:this.color,ready:this.ready,type:e.type,state:{uuid:this.uuid,move:o.move,duration:o.duration,color:this.color,line:o.line.slice(a*100,(a+1)*100)},timestamp:s,end:a===r-1};wf(a,20,()=>{this.emit("stateChange",l,i)})}}action(e){const{ready:i,type:s,uuid:o}=e;if(!i&&this.ready){this.closeBrush();return}if(i&&!this.ready){this.openBrush();return}if(this.ready)switch(s){case Kt.Drawline:const{state:r,timestamp:a,end:l}=e;if(!a||!r)return;this.tempLine[a]=[].concat(this.tempLine[a]||[],r.line),l&&(Object.assign(r,{line:this.tempLine[a]}),this.handleDrawLine(o,r,{},()=>delete this.tempLine[a]));break;case Kt.Undo:this.handleUndo(o);break}}handleDrawLine(e,i,{withUndo:s=!1},o=fh){!i||Object.prototype.toString.call(i)!="[object Object]"||Object.keys(i).length===0||yf(()=>new Promise(r=>{if(s||(this.canvas[e]||(this.canvas[e]=this.initCanvas("_paintBrush-canvas--sync")),this.data[e]||(this.data[e]=[]),this.data[e].push(i)),!this.canvas[e])return;const a=this.canvas[e].getContext("2d");if(!a)return;const{line:l=[],color:c="black",duration:d=0,uuid:h}=i,u=br(i.move||{},this.clientWidth,this.clientHeight);let m=[u];if(a.strokeStyle=c,a.beginPath(),a.moveTo(u.x,u.y),d&&!s){let A=[];const p=this;p.tween=Df({step:0},{step:l.length-1},d).onUpdate(({step:g})=>{var y;if(p.tweening=!0,!p.ready)return a.clearRect(0,0,p.canvas[h].width,p.canvas[h].height),(y=p.tween)==null?void 0:y.stop();const v=Math.floor(g);if(!A.find(I=>I===v)){if(A.push(v),m.push(br(l[v],p.clientWidth,p.clientHeight)),m.length<3)return;const{control:I,end:M}=ks(m);if(!I||!M)return;a.quadraticCurveTo(I.x,I.y,M.x,M.y),a.stroke()}}).onComplete(g=>{p.tween=void 0,p.tweening=!1,A=[],m=[],o&&o(),r()})}else{for(let A=0;A<l.length;A++){if(m.push(br(l[A],this.clientWidth,this.clientHeight)),m.length<3)continue;const{control:p,end:g}=ks(m);!p||!g||a.quadraticCurveTo(p.x,p.y,g.x,g.y)}a.stroke(),m=[],o&&o(),r()}}))}handleUndo(e){if(!this.canvas[e]||!this.data[e]||this.data[e].length===0)return;this.data[e].pop();const i=()=>{var o;const s=(o=this.canvas[e])==null?void 0:o.getContext("2d");s&&s.clearRect(0,0,this.canvas[e].width,this.canvas[e].height),this.data[e].forEach(r=>this.handleDrawLine(e,r,{withUndo:!0}))};if(this.tween&&this.tweening){this.tween.stop(),Ws(i,60);return}i()}destroyBrush(){this.closeBrush(),this.ready=!1,this.emit("readyChange",!0)}};class zf{constructor(t={}){f(this,"controller");const e=Object.assign({currentColor:"#f44336",onUndoText:"回退",onExitText:"关闭"},t);this.controller=new jf(e)}on(t,e){this.controller.on(t,e)}off(t,e){this.controller.off(t,e)}once(t,e){this.controller.once(t,e)}show(){this.controller.openBrush()}action(t){this.controller.action(t)}get state(){return this.controller.state}get configs(){return this.controller.configs}dispose(){return this.controller.destroyBrush()}setCurrentColor(t){this.controller.updateCurrentColor(t)}}const Of=(n,t)=>{var H,_;let e=(_=(H=t==null?void 0:t.initialState)==null?void 0:H.enabled)!=null?_:!0,i=!1,s=!0,o=null;const a=G(G({},{lookAtCurrentCamera:!1,lockedPanoIndex:null,lockedLatitude:null,lockedLongitude:null}),t==null?void 0:t.config),l=new E.Scene,c=new je.Camera(60);let d=new E.Object3D,h,u;{const Q=new E.DirectionalLight(16777215,.5);Q.position.copy(new E.Vector3(1,1,1)),l.add(Q)}{const Q=new E.DirectionalLight(16777215,.3);l.add(Q)}{const Q=new E.AmbientLight(16777215,.3);l.add(Q)}l.add(d);const m=()=>{if(i)return;h=D(n.model,c.fov,c.aspect),u=n.model.bounding.getCenter(new E.Vector3),l.remove(d),d=F(n.model),l.add(d),i=!0,V();function Q(J){const Z=J.clone();return Z.uniforms.modelAlpha.value=1,Z.uniforms.map.value&&(Z.uniforms.map.value.needsUpdate=!0),Z}function F(J){if(J instanceof E.Mesh){const Z=J.geometry,ee=Array.isArray(J.material)?J.material.map(Q):Q(J.material);return new E.Mesh(Z,ee)}else if(J instanceof E.Group){const Z=new E.Group;return J.children.forEach(ee=>Z.add(F(ee))),Z}else{const Z=new E.Object3D;return J.children.forEach(ee=>Z.add(F(ee))),Z}}},A=()=>{if(n.renderer)return o||(o=new E.WebGLRenderer({antialias:!1,alpha:!0}),o.setPixelRatio(n.renderer.getPixelRatio()),o.outputEncoding=E.sRGBEncoding,o.setClearColor(1579548,0),o.autoClear=!0),o},p=()=>{d.traverse(Q=>{Q instanceof E.Mesh&&[].concat(Q.material).forEach(J=>J.dispose())}),l.remove(d),d=new E.Object3D,l.add(d),i=!1,V()},g=()=>{e&&(i||m())},v=()=>{e||(e=!0,l.add(d),!i&&n.model.loaded&&m(),V())},y=()=>{e&&(l.remove(d),s=!0,L(),e=!1)},I=(Q,F={})=>{const J=A();if(!J)return;Q.appendChild(J.domElement),M(F);const Z=window.getComputedStyle(Q).position;Z!=="relative"&&Z!=="absolute"&&Z!=="fixed"&&Z!=="sticky"&&(Q.style.position="relative")},M=(Q={})=>{if(!o)return;const J=o.domElement.parentNode;if(J!=null&&J.nodeName){const{width:Z=J.offsetWidth,height:ee=J.offsetHeight}=Q;o.setSize(Z,ee),c.aspect=Z/ee,c.updateProjectionMatrix()}V()};function D(Q,F,J){const Z=Q.bounding,ee=Math.pow(Math.pow(Z.max.x-Z.min.x+1,2)+Math.pow(Z.max.y-Z.min.y+1,2)+Math.pow(Z.max.z-Z.min.z+1,2),1/2);let ce=ee/2/Math.tan(Math.PI*F/360);return J<1&&(ce=ce/J),isNaN(ce)?ee:ce}function P(Q){return n.work.observers[Q].standingPosition.clone()}const V=()=>{if(!e||!h||!u)return;const Q=n.getPose();Q.fov=c.fov,Q.offset=u,Q.distance=h,typeof a.lockedLatitude=="number"&&(Q.latitude=a.lockedLatitude),typeof a.lockedLongitude=="number"&&(Q.longitude=a.lockedLongitude),typeof a.lockedPanoIndex=="number"&&(Q.offset=P(a.lockedPanoIndex)),a.lookAtCurrentCamera&&(Q.offset=n.camera.position.clone().setY(n.camera.position.y+1)),c.setFromPose(Q),s=!0},L=()=>{!e||s!==!0||!o||!o.domElement.parentNode||o.domElement.parentNode.offsetWidth===0||(o.render(l,c),s=!1)},X=()=>{o&&o.dispose(),o=null},U=Q=>{Object.assign(a,Q),V()},N=()=>({enabled:e});return Object.assign(window,{camera:c}),n.on("modelLoaded",g),n.on("modelWillLoad",p),n.on("cameraDirectionUpdate",V),n.on("dispose",X),n.on("renderFrame",L),n.on("cameraPositionUpdate",V),{appendTo:I,refresh:M,changeConfigs:U,enable:v,disable:y,getCurrentState:N}},Bf=({x:n,y:t,z:e})=>new R.Vector3(n,t,e),Et=n=>new R.Vector3().fromArray(n),an=n=>n instanceof R.Vector3?n:Array.isArray(n)?Et(n):Bf(n);function Vf(n){if(n)return Array.isArray(n)?typeof n[0]=="number"?an(n):n.map(an):an(n)}function ui(...n){const t=[];return n.forEach(e=>{e.isCSS3DObjectPlus?t.push(e):t.push(...ui(...e.children))}),t}function qs(n,t){const e=Math.round(n);return e%2===0?e:e+(t!=null&&t.floor?-1:1)}function Rf(n,t,e=!0){if(!n)return console.error("createResizeObserver: element is undefined"),{observe:()=>{},unobserve:()=>{}};const i=()=>{const o=qs(n.clientWidth,{floor:!0}),r=qs(n.clientHeight,{floor:!0});t(o,r)};if(typeof ResizeObserver=="undefined"||!ResizeObserver)return console.warn("createResizeObserver: ResizeObserver is undefined"),{observe:()=>i(),unobserve:()=>{}};const s=new ResizeObserver(i);return e&&i(),{observe:()=>s.observe(n),unobserve:()=>s.unobserve(n)}}class ol extends Js.CSS3DRenderer{constructor(){super();f(this,"wrapper");f(this,"requestAnimationFrameId");f(this,"resizeDisoper");this.domElement.style.position="absolute",this.domElement.style.top="0",this.domElement.style.left="0",this.domElement.style.userSelect="none",this.domElement.style.pointerEvents="none"}setWrapper(e){if(!e)throw new Error("CSS3DRenderer: wrapper is required");if(e.contains(this.domElement))return;const i=this.wrapper;return i&&i.contains(this.domElement)&&this.domElement.remove(),this.appendToElement(e),this.wrapper=e,this}appendToElement(e){e.appendChild(this.domElement);const i=(r,a)=>this.setSize(r,a),{observe:s,unobserve:o}=Rf(e,i,!0);s(),this.resizeDisoper=o,this.wrapper=e}renderEveryFrame(e,i){if(this.wrapper||console.warn("wrapper is not find, creating a html element and call setWrapper(wrapper)",this,e),this.requestAnimationFrameId)return;const s=()=>{this.requestAnimationFrameId=requestAnimationFrame(s),e.visible&&ui(e).length!==0&&this.render(e,i)};s()}stopRender(){this.requestAnimationFrameId&&cancelAnimationFrame(this.requestAnimationFrameId)}dispose(){var e;this.stopRender(),(e=this.resizeDisoper)==null||e.call(this),this.domElement.remove()}}function Qf(n){return typeof Symbol=="undefined"?`$Symbol<${n}>$`:Symbol(n)}const ts=Qf("$$EVENT$$");function Ds(n){return n[ts]||(n[ts]={}),n[ts]}function Gf(n){n[ts]||delete n[ts]}class Cn{hasListener(t){const e=Ds(this);return!!(e!=null&&e[t]&&e[t].length>0)}on(t,e,i){const s=Ds(this);return s[t]||(s[t]=[]),s[t].push([e,i||!1]),()=>this.off(t,e)}once(t,e){return this.on(t,e,!0)}off(t,e){if(t===void 0){Gf(this);return}const i=Ds(this);if(i[t]||(i[t]=[]),e===void 0){i[t].length=0;return}let s=0;for(;s<i[t].length&&i[t][s][0]!==e;s++);s<i[t].length&&i[t].splice(s,1)}emit(t,...e){let i=!1;const o=Ds(this)[t]||[];for(let r of o.slice()){const[a,l=!1]=r,c=a(...e);l&&this.off(t,a),c===!1&&(i=!0)}return i}}class Nf extends E.Mesh{constructor(e,i){const s=new E.MeshBasicMaterial({opacity:0,color:0,transparent:!1,side:E.DoubleSide}),o=new E.PlaneGeometry(e,i);super(o,s);f(this,"name","opacity-mesh")}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}}function Ai(...n){const t=new R.Vector3;return n.forEach(e=>t.add(e)),t.divideScalar(n.length),t}const ph=1,Hf=`CSS3DObjectPlus@${ph}`,_f=.00216,Ff=.003;class Wf extends Js.CSS3DObject{constructor(e){var D,P,V;const i=e.container,s=e.cornerPoints,o=(D=e.ratio)!=null?D:Ff,r=(P=e.dpr)!=null?P:1,a=(V=e.pointerEvents)!=null?V:"auto",l=Math.max(_f,o),c=s[0].distanceTo(s[1]),d=s[1].distanceTo(s[2]),h=qs(c/o*r),u=qs(d/o*r),m=Ai(...s);let A;if(l===o)i.style.width=`${h}px`,i.style.height=`${u}px`,A=i;else{const L=document.createElement("div");L.style.width=`${h}px`,L.style.height=`${u}px`,L.style.pointerEvents="none";const X=o/l;i.style.position="absolute",i.style.left="0",i.style.top="0",i.style.width=`${X*h}px`,i.style.height=`${X*u}px`,L.appendChild(i),A=L}super(A);f(this,"version",ph);f(this,"isCSS3DObjectPlus",!0);f(this,"container");f(this,"width");f(this,"height");f(this,"domWidthPx");f(this,"domHeightPx");f(this,"cornerPoints");f(this,"centerPosition");f(this,"ratio");f(this,"mode","front");f(this,"hooks",new Cn);f(this,"opacityMesh");f(this,"selfVisible",!0);f(this,"parentVisibleListenerDisposer");f(this,"createOpacityMesh",e=>{const{domWidthPx:i,domHeightPx:s}=e,o=new Nf(i,s);return o.position.copy(e.position),o.rotation.copy(e.rotation),o.scale.copy(e.scale),o});f(this,"addParentVisibleListener",()=>{var e;if((e=this.parent)!=null&&e.isCSS3DGroup){const i=this.parent,s=o=>{this.setVisible(o&&this.selfVisible,{setSelfVisible:!1})};i.hooks.on("visibleChange",s),this.parentVisibleListenerDisposer=()=>i.hooks.off("visibleChange",s)}});f(this,"removeParentVisibleListener",()=>{var e;(e=this.parentVisibleListenerDisposer)==null||e.call(this)});if(i.style.pointerEvents=a,this.scale.set(l,l,l),this.cornerPoints=s,this.ratio=o,this.container=i,e.mode&&(this.mode=e.mode),l===o)this.width=c,this.height=d,this.domWidthPx=h,this.domHeightPx=u,this.centerPosition=m;else{const L=o/l;this.width=L*c,this.height=L*d,this.domWidthPx=L*h,this.domHeightPx=L*u,this.centerPosition=new R.Vector3().subVectors(m,s[0]).multiplyScalar(L).add(s[0])}i.classList.add(`${Hf}__container`);const p=new R.Vector3().subVectors(s[1],s[0]),g=new R.Vector3().subVectors(s[3],s[0]),v=new R.Vector3().crossVectors(p,g).normalize();this.lookAt(v);const y=this.up.clone().applyQuaternion(this.quaternion),I=g.clone(),M=new R.Vector3().crossVectors(y,I).normalize();this.rotateOnWorldAxis(M,y.angleTo(I)),this.position.copy(m),this.addEventListener("added",()=>{var L;this.mode==="front"&&((L=this.opacityMesh)==null||L.removeFromParent()),this.addParentVisibleListener()}),this.addEventListener("removed",()=>{var L;(L=this.opacityMesh)==null||L.removeFromParent(),this.removeParentVisibleListener()})}setVisible(e,i={setSelfVisible:!0}){i.setSelfVisible&&(this.selfVisible=e),this.visible=e,this.opacityMesh&&(this.opacityMesh.visible=e)}removeFromParent(){var i;const e=this.parent;return e!==null&&e.remove(this),(i=this.opacityMesh)==null||i.removeFromParent(),this}removeOpacityMesh(){var e;return(e=this.opacityMesh)==null||e.removeFromParent(),this.opacityMesh=void 0,this}dispose(){var e;this.container.remove(),this.removeFromParent(),(e=this.opacityMesh)==null||e.removeFromParent()}getOpacityMesh(){if(this.opacityMesh)return this.opacityMesh;{const e=this.createOpacityMesh(this);return this.opacityMesh=e,e}}applyMatrix4(e){var i;super.applyMatrix4(e),(i=this.opacityMesh)==null||i.applyMatrix4(e)}applyQuaternion(e){var i;return super.applyQuaternion(e),(i=this.opacityMesh)==null||i.applyQuaternion(e),this}applyScaleMatrix4(e){var i;this.scale.applyMatrix4(e),(i=this.opacityMesh)==null||i.scale.applyMatrix4(e)}}class Yf extends E.Scene{constructor(){super()}add(...t){return super.add(...t),ui(...t).forEach(e=>{e.mode="front"}),this}}class Uf extends E.Scene{constructor(e){super();f(this,"scene");if(!e)throw new Error("CSS3DBehindScene: scene is required");this.scene=e}add(...e){return super.add(...e),ui(...e).forEach(i=>{i.mode="behind",this.scene.add(i.getOpacityMesh())}),this}remove(...e){return ui(...e).forEach(i=>{var s;(s=i.opacityMesh)==null||s.removeFromParent(),i.opacityMesh=null}),super.remove(...e),this}}class Ah extends E.Group{constructor(e){super();f(this,"isCSS3DGroup",!0);f(this,"mode");f(this,"CSS3DObjectLength",0);f(this,"hooks",new Cn);this.mode=e}add(...e){return ui(...e).forEach(i=>{i.mode=this.mode}),super.add(...e),this.updateLength(),this}setVisible(e){this.visible=e,this.hooks.emit("visibleChange",e)}remove(...e){return super.remove(...e),this.updateLength(),this}updateLength(){this.CSS3DObjectLength=ui(this).length}}class Xf extends Ah{constructor(){super("front")}}class Zf extends Ah{constructor(e){super("behind");f(this,"scene");if(!e)throw new Error("CSS3DBehindScene: scene is required");this.scene=e}add(...e){return ui(...e).forEach(i=>{this.scene.add(i.getOpacityMesh())}),super.add(...e),this}}const Jf=3,Yr="CSS3DRenderer",Kn=`${Yr}@${Jf}`,Zi=()=>{console.error(`${Kn} is disposed`)},Xe={css3DObjects:[],frontModeStore:{css3DRenderer:new ol},behindModeStore:{css3DRenderer:new ol}};function rl(n){return Xe.css3DObjects.find(t=>t.id===n)}function qf(n){Xe.frontModeStore.css3DRenderer.setWrapper(n)}function Kf(n){Xe.behindModeStore.css3DRenderer.setWrapper(n)}class un{constructor(t){f(this,"hooks",new Cn);f(this,"state",{enabled:!0,visible:!0,disposed:!1});f(this,"_scene");f(this,"store",{frontModeGroup:new Xf});f(this,"create3DElement",(t,e,i)=>{if(this.state.disposed)return Zi();const s=(()=>{const M={ratio:.00216,devicePixelRatio:1,mode:"front",autoRender:!0,container:document.createElement("div"),pointerEvents:"none"};return Object.assign(M,i)})(),o=e.map(an);if((o==null?void 0:o.length)<4)return console.error(`${Kn}: requires 4 point but params may have fewer`);const{ratio:r,devicePixelRatio:a,mode:l,autoRender:c,container:d,pointerEvents:h}=s;let u=!1;const m=this.createObject(o,{ratio:r,dpr:a,container:d,mode:l,pointerEvents:h});Xe.css3DObjects.push(m),s.scene&&this.setScene(s.scene);const A=()=>{if(u)return;const M=m.mode==="front"?this.getFrontCSS3DObjectGroup():this.getBehindCSS3DObjectGroup();M&&M.add(m)},p=()=>{u||(A(),this.render(t),this.hooks.emit("render"))},g=M=>this.setVisibleById(m.id,M),v=M=>this.setEnabledById(m.id,M),y=()=>(u=!0,m.removeFromParent(),!0),I=l==="front"?Xe.frontModeStore.css3DRenderer:Xe.behindModeStore.css3DRenderer;return c&&p(),{id:m.uuid,container:d,css3DObject:m,render:c?void 0:p,show:()=>g(!0),hide:()=>g(!1),setVisible:g,enable:()=>v(!0),disable:()=>v(!1),setEnabled:v,dispose:y,appendToElement:M=>I.setWrapper(M)}});f(this,"setVisibleById",(t,e)=>{var i;(i=rl(t))==null||i.setVisible(e)});f(this,"setEnabledById",(t,e)=>{const i=rl(t);if(!i)return;const s=i.mode==="front"?this.getFrontCSS3DObjectGroup({addGroupIfNotExists:!1}):this.getBehindCSS3DObjectGroup({addGroupIfNotExists:!1});s&&(e?s.add(i):s.remove(i))});f(this,"createObject",(t,e)=>{const i=new Wf(G({cornerPoints:t},e));return i.element.classList.add(`${Yr}__container`),i.element.id=`${Yr}__container--${i.uuid}`,i});t&&this.setScene(t)}get scene(){return this._scene||console.error("scene doesn't exist!, please call setScene(scene) first"),this._scene}static get frontModeCSS3DRenderer(){return Xe.frontModeStore.css3DRenderer}static get behindModeCSS3DRenderer(){return Xe.behindModeStore.css3DRenderer}get frontModeCSS3DRenderer(){return Xe.frontModeStore.css3DRenderer}get behindModeCSS3DRenderer(){return Xe.behindModeStore.css3DRenderer}setScene(t){this._scene=t}getCurrentState(){return this.state}setState(t,e={userAction:!0}){if(this.state.disposed)return Zi();const i=G({},this.state);this.state=Object.assign(this.state,t),i.visible!==this.state.visible&&(t.visible?this.handleShow():this.handleHide()),i.enabled!==this.state.enabled&&(t.enabled?this.handleEnable():this.handleDisable()),i.disposed!==this.state.disposed&&this.handleDispose(),this.hooks.emit("stateChange",{state:this.state,prevState:i,userAction:e.userAction})}dispose(){this.setState({disposed:!0}),this.hooks.emit("dispose")}show(){return W(this,arguments,function*({userAction:t}={userAction:!0}){if(this.state.disposed)return Zi();this.setState({visible:!0},{userAction:t}),this.hooks.emit("show",{userAction:t})})}hide(){return W(this,arguments,function*({userAction:t}={userAction:!0}){if(this.state.disposed)return Zi();this.setState({visible:!1},{userAction:t}),this.hooks.emit("hide",{userAction:t})})}enable({userAction:t}={userAction:!0}){if(this.state.disposed)return Zi();this.setState({enabled:!0},{userAction:t}),this.hooks.emit("enable",{userAction:t})}disable({userAction:t}={userAction:!0}){if(this.state.disposed)return Zi();this.setState({enabled:!1},{userAction:t}),this.hooks.emit("disable",{userAction:t})}getFrontCSS3DScene({createSceneIfNotExists:t=!1}={}){var i;const e=(i=Xe.frontModeStore)==null?void 0:i.css3DScene;if(e)return e;if(t){const s=new Yf;Xe.frontModeStore.css3DScene=s}return Xe.frontModeStore.css3DScene}getBehindCSS3DScene({createSceneIfNotExists:t=!1}={}){var i,s;const e=(i=Xe.behindModeStore)==null?void 0:i.css3DScene;if(e)return e;if(t){const o=(s=Xe.behindModeStore.scene)!=null?s:this.scene;if(!o){console.error(`${Kn}: scene is required when mode is behind`);return}const r=new Uf(o);Xe.behindModeStore.css3DScene=r,Xe.behindModeStore.scene=o}return Xe.behindModeStore.css3DScene}getFrontCSS3DObjectGroup({addGroupIfNotExists:t=!0}={}){const e=this.getFrontCSS3DScene({createSceneIfNotExists:t});return t&&e&&(e.getObjectById(this.store.frontModeGroup.id)||e.add(this.store.frontModeGroup)),this.store.frontModeGroup}getBehindCSS3DObjectGroup({addGroupIfNotExists:t=!0}={}){var i;const e=this.getBehindCSS3DScene({createSceneIfNotExists:t});if(t&&e&&this.scene){const s=(i=this.store.behindModeGroup)!=null?i:new Zf(this.scene);this.store.behindModeGroup=s,e.getObjectById(s.id)||e.add(s)}return this.store.behindModeGroup}render(t){var e,i;if(this.getFrontCSS3DObjectGroup({addGroupIfNotExists:!1}).CSS3DObjectLength>0){const s=this.getFrontCSS3DScene({createSceneIfNotExists:!0});if(!s)return console.error(`${Kn}: css3DScene is required when mode is front`);Xe.frontModeStore.css3DRenderer.renderEveryFrame(s,t)}if(((i=(e=this.getBehindCSS3DObjectGroup({addGroupIfNotExists:!1}))==null?void 0:e.CSS3DObjectLength)!=null?i:0)>0){const s=this.getBehindCSS3DScene({createSceneIfNotExists:!0});if(!s)return console.error(`${Kn}: css3DScene is required when mode is behind`);Xe.behindModeStore.css3DRenderer.renderEveryFrame(s,t)}}handleShow(){return W(this,null,function*(){var t;this.store.frontModeGroup.setVisible(!0),(t=this.store.behindModeGroup)==null||t.setVisible(!0)})}handleHide(){return W(this,null,function*(){var t;this.store.frontModeGroup.setVisible(!1),(t=this.store.behindModeGroup)==null||t.setVisible(!1)})}handleEnable(){var t,e;(t=this.getFrontCSS3DScene())==null||t.add(this.store.frontModeGroup),this.store.behindModeGroup&&((e=this.getBehindCSS3DScene())==null||e.add(this.store.behindModeGroup))}handleDisable(){var t,e,i;this.store.frontModeGroup.children.forEach(s=>{s instanceof Js.CSS3DObject&&s.element instanceof Element&&s.element.parentNode!==null&&s.element.remove()}),(t=this.store.behindModeGroup)==null||t.children.forEach(s=>{s instanceof Js.CSS3DObject&&s.element instanceof Element&&s.element.parentNode!==null&&s.element.remove()}),(e=this.getFrontCSS3DScene())==null||e.remove(this.store.frontModeGroup),this.store.behindModeGroup&&((i=this.getBehindCSS3DScene())==null||i.remove(this.store.behindModeGroup))}handleDispose(){this.handleDisable()}}f(un,"setFrontModeContainer",qf),f(un,"setBehindModeContainer",Kf);function vh(n){return W(this,null,function*(){return new Promise(t=>{var e;if((e=n.model)!=null&&e.loaded){t();return}else n.once("modelLoaded",()=>t())})})}const Tt=document.createElement("div");Tt.classList.add("behindFiveElement");Tt.style.position="absolute";Tt.style.top="0";Tt.style.left="0";Tt.style.width="100%";Tt.style.height="100%";Tt.style.pointerEvents="none";function bh(n){var i,s,o,r,a;const t=(a=(s=yr(n.getElement()))!=null?s:yr((i=n.getElement())==null?void 0:i.parentElement))!=null?a:yr((r=(o=n.getElement())==null?void 0:o.parentElement)==null?void 0:r.parentElement),e=t==null?void 0:t.parentElement;if(e)return e.contains(Tt)||t.parentElement.insertBefore(Tt,t),Tt;console.error("Can not find a valid element to insert behindFiveElement. How to fix it: https://github.com/realsee-developer/dnalogel/tree/main/plugins/src/CSS3DRenderPlugin/README.md")}function yr(n){var a;if(!n)return;const t=(a=n.style.position)!=null?a:getComputedStyle(n).position;if(t!=="fixed"&&t!=="absolute"&&t!=="relative")return;const e=getComputedStyle(n),i=e.backgroundColor,s=e.backgroundImage;if(!(i!=="transparent"&&i!=="rgba(0, 0, 0, 0)"&&i!==""||s!=="none"&&s!==""))return n}class Ur{constructor(t=0,e=0){f(this,"min");f(this,"max");f(this,"isInterval",!0);this.min=t,this.max=e}fromArray(t){return this.min=t[0],this.max=t[1],this}isOverlap(t){return Math.min(this.max,t.max)<Math.max(this.min,t.min)}contains(t){return this.min<t.min&&this.max>t.max}}class $f{constructor(t,e){f(this,"min");f(this,"max");f(this,"xInterval");f(this,"yInterval");f(this,"isRectangle",!0);this.min=t,this.max=e,this.xInterval=new Ur(this.min.x,this.max.x),this.yInterval=new Ur(this.min.y,this.max.y)}isOverlapWithRectangle(t){return!this.xInterval.isOverlap(t.xInterval)&&!this.yInterval.isOverlap(t.yInterval)}containsRect(t){return this.xInterval.contains(t.xInterval)&&this.yInterval.contains(t.yInterval)}}function ma(n){return n==="Panorama"||n==="DepthPanorama"||n==="VRPanorama"||n==="XRPanorama"}function yh(n){return!ma(n)}function Ss(n,t,e){const i=n[t],s=n[e];i===void 0||s===void 0||(n[t]=s,n[e]=i)}function em(n,t,e){const i=e/2;for(let s=1;s<=i;s++){const o=e-(s-1);for(let r=1;r<=t;r++){const a=(s-1)*t+r-1,l=(o-1)*t+r-1;Ss(n,a*4+0,l*4+0),Ss(n,a*4+1,l*4+1),Ss(n,a*4+2,l*4+2),Ss(n,a*4+3,l*4+3)}}}let ga=class{constructor(t,e){f(this,"width");f(this,"height");f(this,"containerDom");f(this,"hooks",new je.Subscribe);f(this,"canvas",document.createElement("canvas"));f(this,"five");f(this,"scale");f(this,"config");f(this,"offset",{x:0,y:0});f(this,"context");f(this,"renderCenter",new E.Vector3);f(this,"hammer");f(this,"state",{enabled:!1});f(this,"onPan",t=>{if(!this.containerDom||this.hooks.emit("wantsPanGesture",t))return;const i=this.offset.x+t.deltaX,s=this.offset.y+t.deltaY;this.canvas.style.boxShadow="0 2px 30px 0 rgba(0,0,0,0.20)",this.canvas.style.transform=`translate3d(${i}px, ${s}px, 100px)`});f(this,"onPanEnd",t=>{this.offset={x:this.offset.x+t.deltaX,y:this.offset.y+t.deltaY},this.canvas.style.boxShadow="none"});var s,o,r;if(!t.renderer)throw new Error("Five Render 未初始化");this.five=t,this.scale=(s=e==null?void 0:e.scale)!=null?s:2,this.width=(o=e==null?void 0:e.width)!=null?o:190,this.height=(r=e==null?void 0:e.height)!=null?r:190,this.config={dragEnabled:(e==null?void 0:e.dragEnabled)||!1,autoFixPCPosition:(e==null?void 0:e.autoFixPCPosition)||!1,initialPosition:(e==null?void 0:e.initialPosition)||{left:"0",top:"0"}};const i=this.canvas.getContext("2d");if(!i)throw new Error("CANNOT CREATE CONTEXT2D");this.context=i,this.config.dragEnabled&&(this.hammer=new ls(this.canvas),this.hammer.on("pan",this.onPan),this.hammer.on("panend",this.onPanEnd)),this.initStyle()}getCurrentState(){return this.state}dispose(){var t;this.clear(),this.disable(),(t=this.hammer)==null||t.destroy()}show(){return this.canvas.style.visibility="visible",this}hide(){return this.canvas.style.visibility="hidden",this}enable(){var t;if(!this.state.enabled)return this.state.enabled=!0,(t=this.containerDom)==null||t.append(this.canvas),this}disable(){if(this.state.enabled)return this.state.enabled=!1,this.canvas.remove(),this}appendTo(t){return this.containerDom&&Array.from(this.containerDom.children).includes(this.canvas)&&this.containerDom.removeChild(this.canvas),this.containerDom=t,this.state.enabled&&t.append(this.canvas),this}clear(){return this.context.clearRect(0,0,this.canvas.width,this.canvas.height),this}renderWithPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}autoFixPCPosition(){if(!this.containerDom)return;const{width:t,height:e}=this,i=this.renderCenter.clone().project(this.five.camera),s=(i.x+1)/2*this.containerDom.clientWidth,o=-(i.x-1)/2*this.containerDom.clientWidth,r=-(i.y-1)/2*this.containerDom.clientHeight;s<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left="90px"):r<183?(this.canvas.style.top="90px",this.canvas.style.left=-t/2+"px"):o<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=-t-90+"px"):(this.canvas.style.left=-t/2+"px",this.canvas.style.top=-e-90+"px"),this.canvas.style.transform=`translate3d(${s}px, ${r}px, 10px)`,this.offset={x:s,y:r}}render(){if(!this.five.renderer||!this.containerDom)return;const{scale:t,context:e,width:i,height:s}=this,o=this.renderCenter.clone().project(this.five.camera),r=this.five.renderer.getSize(new E.Vector2),a=1,l=i/t,c=s/t,d=a*t,h=(o.x+1)/2*r.x,u=(o.y+1)/2*r.y,m=this.five.getPixels(h-l/2,u-l/2,l,c,d),A=Math.floor(i*a),p=Math.floor(s*a);em(m,A,p);const g=new ImageData(A,p);g.data.set(m),e.putImageData(g,0,0)}initStyle(){const t=this.canvas;t.classList.add("five-plugin__magnifier"),t.style.position="absolute",t.style.pointerEvents="all",t.style.borderRadius="50%",t.style.zIndex="99";const e=1;t.setAttribute("width",(this.width*e).toString()),t.setAttribute("height",(this.height*e).toString()),t.style.border="2px solid rgba(255,255,255,0.20)",t.style.width=this.width+"px",t.style.height=this.height+"px",t.style.top=this.config.initialPosition.top,t.style.left=this.config.initialPosition.left,t.style.transform="translate(0,0,100px)",t.style.visibility="visible",this.config.dragEnabled&&(this.canvas.style.cursor="pointer")}};function tm(n,t){const{offsetWidth:e,offsetHeight:i}=t,{top:s,left:o}=t.getBoundingClientRect();return new E.Vector2().set((n.x-o)/e*2-1,-(n.y-s)/i*2+1)}function wh(n,t){const{offsetWidth:e,offsetHeight:i}=t;return new E.Vector2().set(n.x/e*2-1,-n.y/i*2+1)}function im(n,t){const e=n.getElement();if(!e)return;const i=wh(t,e),s=new E.Raycaster;return s.setFromCamera(i,n.camera),s}function Ch(n,t){const{x:e,y:i}=t,s=e*2-1,o=i*2-1,r=new E.Vector2().fromArray([s,o]),a=new E.Raycaster;return a.setFromCamera(r,n.camera),n.model.intersectRaycaster(a)[0]}const nm="data:image/png;base64,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",sm=`
101
+ `;let jf=class extends Tf{constructor(e){super();f(this,"configs");f(this,"clientWidth");f(this,"clientHeight");f(this,"ready",!1);f(this,"uuid",lt());f(this,"tween");f(this,"tweening",!1);f(this,"container");f(this,"canvas");f(this,"data",{});f(this,"tempLine",{});this.configs=e,this.clientWidth=document.body.clientWidth,this.clientHeight=document.body.clientHeight,this.container=this.ifInsertToDOM(),this.canvas={},this.initCtrl()}get color(){return this.configs.currentColor}get state(){return this.data}get dpr(){return this.configs.DPR||1}ifInsertToDOM(){if(this.container)return this.container;if(this.configs.container)this.configs.container.id="_gl_paintBrush",this.container=this.configs.container;else if(document.getElementById("_gl_paintBrush"))this.container=document.getElementById("_gl_paintBrush");else{const e=document.createElement("div");e.id="_gl_paintBrush",document.body.appendChild(e),this.container=e}return this.container.innerHTML=Lf,this.container}initCanvas(e){const i=document.createElement("canvas");i.className=e,i.width=this.clientWidth,i.height=this.clientHeight;const s=i.getContext("2d");if(s)return s.lineWidth=5*this.dpr,s.lineCap="round",s.lineJoin="round",this.container.appendChild(i),i}initCtrl(){const e=document.createElement("div");e.className="_paintBrush-ctrl";const i=document.createElement("div");i.className="_paintBrush-ctrlinner";const s=document.createElement("a");s.className="_paintBrush-ctrlitem _paintBrush-ctrlitem--undo",s.addEventListener("click",a=>{var u;if(a.stopPropagation(),this.configs.onClickUndo&&this.configs.onClickUndo(),!this.canvas[this.uuid]||!this.data[this.uuid]||this.data[this.uuid].length===0)return;const l=this.data[this.uuid].pop();l&&this.emitStateChange({type:Kt.Undo,color:this.color,ready:this.ready,state:l,uuid:this.uuid});const c=(u=this.canvas[this.uuid])==null?void 0:u.getContext("2d");if(!this.canvas[this.uuid])return;const{width:d,height:h}=this.canvas[this.uuid];c&&c.clearRect(0,0,d,h),this.data[this.uuid].forEach(m=>this.handleDrawLine(this.uuid,m,{withUndo:!0}))});const o=document.createElement("a");return o.className="_paintBrush-ctrlitem _paintBrush-ctrlitem--close",o.addEventListener("click",a=>{a.stopPropagation(),this.closeBrush(),this.configs.onClickClose&&this.configs.onClickClose()}),[s,o].forEach(a=>{const l=document.createElement("i");l.className="brush-icon";const c=document.createElement("span");c.className="brush-txt",c.innerText=a.className.endsWith("undo")?this.configs.onUndoText:this.configs.onExitText,a.appendChild(l),a.appendChild(c)}),i.appendChild(s),i.appendChild(o),e.appendChild(i),this.container.appendChild(e),e}openBrush(){if(this.ready)return;this.canvas[this.uuid]||(this.canvas[this.uuid]=this.initCanvas("_paintBrush-canvas")),this.container.className="brushing";const e=this.canvas[this.uuid];e.getContext("2d").clearRect(0,0,e.width,e.height),this.openBrushHandle(),this.ready=!0,this.emit("readyChange",!0)}closeBrush(){this.ready&&(this.container.className="",this.data={},this.tempLine={},Object.keys(this.canvas).forEach(e=>{this.canvas[e].ontouchstart=()=>!1,this.canvas[e].ontouchmove=()=>!1,this.canvas[e].ontouchend=()=>!1,this.canvas[e].ontouchcancel=()=>!1;const i=this.canvas[e].getContext("2d");i&&i.clearRect(0,0,this.canvas[e].width,this.canvas[e].height)}),this.ready=!1,this.emit("readyChange",!1),this.emitStateChange({type:Kt.Exit,color:this.color,ready:!1,uuid:this.uuid}))}updateCurrentColor(e){const i=this.canvas[this.uuid];if(!i)return;const s=i.getContext("2d");s&&(this.configs.currentColor=e,s.strokeStyle=e)}openBrushHandle(){const e=this.canvas[this.uuid];if(!e)return;const i=e.getContext("2d");if(!i)return;const s=this.color||"#6D92FF";i.strokeStyle=s;let o=null,r=[],a,l=[],c=0;const d=(h,u,m)=>{const A=this.color||"#ff0000";i.strokeStyle=A,i.beginPath(),i.moveTo(h.x,h.y),i.quadraticCurveTo(u.x,u.y,m.x,m.y),i.stroke()};e.onmousedown=h=>{h.preventDefault(),c=Date.now();const u=h.clientX,m=h.clientY;r=[],r.push({x:u,y:m}),o={x:u,y:m},a=Ms({x:u,y:m},this.clientWidth,this.clientHeight),l=[]},e.onmousemove=h=>{if(h.preventDefault(),!o)return;const u=Number(h.clientX),m=Number(h.clientY);if(Math.abs(u-o.x)<5&&Math.abs(m-o.y)<5||(r.push({x:u,y:m}),l.push(Ms({x:u,y:m},this.clientWidth,this.clientHeight)),r.length<3))return;const{control:A,end:p}=ks(r);!A||!p||(d(o,A,p),o=p)},e.onmouseup=h=>{if(h.preventDefault(),o=null,r.length<3)return;this.data[this.uuid]||(this.data[this.uuid]=[]);const u=Date.now()-c,m={move:Object.assign({},a),uuid:this.uuid,line:[...l],color:this.color,duration:u<1280?u:u<2e3?1280:0};this.data[this.uuid].push(m),Ys(()=>{this.emitStateChange({type:Kt.Drawline,color:this.color,ready:this.ready,state:m,uuid:this.uuid})})},e.ontouchstart=h=>{h.preventDefault(),c=Date.now();const u=h.touches[0].clientX,m=h.touches[0].clientY;r=[],r.push({x:u,y:m}),o={x:u,y:m},a=Ms({x:u,y:m},this.clientWidth,this.clientHeight),l=[]},e.ontouchmove=h=>{if(h.preventDefault(),!o)return;const u=Number(h.touches[0].clientX),m=Number(h.touches[0].clientY);if(Math.abs(u-o.x)<5&&Math.abs(m-o.y)<5||(r.push({x:u,y:m}),l.push(Ms({x:u,y:m},this.clientWidth,this.clientHeight)),r.length<3))return;const{control:A,end:p}=ks(r);!A||!p||(d(o,A,p),o=p)},e.ontouchend=e.ontouchcancel=h=>{if(h.preventDefault(),o=null,r.length<3)return;this.data[this.uuid]||(this.data[this.uuid]=[]);const u=Date.now()-c,m={move:Object.assign({},a),line:[...l],uuid:this.uuid,color:this.color,duration:u<1280?u:u<2e3?1280:0};this.data[this.uuid].push(m),Ys(()=>{this.emitStateChange({type:Kt.Drawline,color:this.color,ready:this.ready,state:m,uuid:this.uuid})})}}emitStateChange(e,i=!0){if(e.type!==Kt.Drawline){this.emit("stateChange",e,i);return}const s=Date.now(),o=e.state;if(!o||!o.line)return;const r=Math.ceil(o.line.length/100);for(let a=0;a<r;a++){const l={uuid:this.uuid,color:this.color,ready:this.ready,type:e.type,state:{uuid:this.uuid,move:o.move,duration:o.duration,color:this.color,line:o.line.slice(a*100,(a+1)*100)},timestamp:s,end:a===r-1};wf(a,20,()=>{this.emit("stateChange",l,i)})}}action(e){const{ready:i,type:s,uuid:o}=e;if(!i&&this.ready){this.closeBrush();return}if(i&&!this.ready){this.openBrush();return}if(this.ready)switch(s){case Kt.Drawline:const{state:r,timestamp:a,end:l}=e;if(!a||!r)return;this.tempLine[a]=[].concat(this.tempLine[a]||[],r.line),l&&(Object.assign(r,{line:this.tempLine[a]}),this.handleDrawLine(o,r,{},()=>delete this.tempLine[a]));break;case Kt.Undo:this.handleUndo(o);break}}handleDrawLine(e,i,{withUndo:s=!1},o=fh){!i||Object.prototype.toString.call(i)!="[object Object]"||Object.keys(i).length===0||yf(()=>new Promise(r=>{if(s||(this.canvas[e]||(this.canvas[e]=this.initCanvas("_paintBrush-canvas--sync")),this.data[e]||(this.data[e]=[]),this.data[e].push(i)),!this.canvas[e])return;const a=this.canvas[e].getContext("2d");if(!a)return;const{line:l=[],color:c="black",duration:d=0,uuid:h}=i,u=yr(i.move||{},this.clientWidth,this.clientHeight);let m=[u];if(a.strokeStyle=c,a.beginPath(),a.moveTo(u.x,u.y),d&&!s){let A=[];const p=this;p.tween=Df({step:0},{step:l.length-1},d).onUpdate(({step:g})=>{var y;if(p.tweening=!0,!p.ready)return a.clearRect(0,0,p.canvas[h].width,p.canvas[h].height),(y=p.tween)==null?void 0:y.stop();const v=Math.floor(g);if(!A.find(I=>I===v)){if(A.push(v),m.push(yr(l[v],p.clientWidth,p.clientHeight)),m.length<3)return;const{control:I,end:M}=ks(m);if(!I||!M)return;a.quadraticCurveTo(I.x,I.y,M.x,M.y),a.stroke()}}).onComplete(g=>{p.tween=void 0,p.tweening=!1,A=[],m=[],o&&o(),r()})}else{for(let A=0;A<l.length;A++){if(m.push(yr(l[A],this.clientWidth,this.clientHeight)),m.length<3)continue;const{control:p,end:g}=ks(m);!p||!g||a.quadraticCurveTo(p.x,p.y,g.x,g.y)}a.stroke(),m=[],o&&o(),r()}}))}handleUndo(e){if(!this.canvas[e]||!this.data[e]||this.data[e].length===0)return;this.data[e].pop();const i=()=>{var o;const s=(o=this.canvas[e])==null?void 0:o.getContext("2d");s&&s.clearRect(0,0,this.canvas[e].width,this.canvas[e].height),this.data[e].forEach(r=>this.handleDrawLine(e,r,{withUndo:!0}))};if(this.tween&&this.tweening){this.tween.stop(),Ys(i,60);return}i()}destroyBrush(){this.closeBrush(),this.ready=!1,this.emit("readyChange",!0)}};class zf{constructor(t={}){f(this,"controller");const e=Object.assign({currentColor:"#f44336",onUndoText:"回退",onExitText:"关闭"},t);this.controller=new jf(e)}on(t,e){this.controller.on(t,e)}off(t,e){this.controller.off(t,e)}once(t,e){this.controller.once(t,e)}show(){this.controller.openBrush()}action(t){this.controller.action(t)}get state(){return this.controller.state}get configs(){return this.controller.configs}dispose(){return this.controller.destroyBrush()}setCurrentColor(t){this.controller.updateCurrentColor(t)}}const Of=(n,t)=>{var H,_;let e=(_=(H=t==null?void 0:t.initialState)==null?void 0:H.enabled)!=null?_:!0,i=!1,s=!0,o=null;const a=G(G({},{lookAtCurrentCamera:!1,lockedPanoIndex:null,lockedLatitude:null,lockedLongitude:null}),t==null?void 0:t.config),l=new E.Scene,c=new je.Camera(60);let d=new E.Object3D,h,u;{const Q=new E.DirectionalLight(16777215,.5);Q.position.copy(new E.Vector3(1,1,1)),l.add(Q)}{const Q=new E.DirectionalLight(16777215,.3);l.add(Q)}{const Q=new E.AmbientLight(16777215,.3);l.add(Q)}l.add(d);const m=()=>{if(i)return;h=B(n.model,c.fov,c.aspect),u=n.model.bounding.getCenter(new E.Vector3),l.remove(d),d=F(n.model),l.add(d),i=!0,V();function Q(J){const Z=J.clone();return Z.uniforms.modelAlpha.value=1,Z.uniforms.map.value&&(Z.uniforms.map.value.needsUpdate=!0),Z}function F(J){if(J instanceof E.Mesh){const Z=J.geometry,ee=Array.isArray(J.material)?J.material.map(Q):Q(J.material);return new E.Mesh(Z,ee)}else if(J instanceof E.Group){const Z=new E.Group;return J.children.forEach(ee=>Z.add(F(ee))),Z}else{const Z=new E.Object3D;return J.children.forEach(ee=>Z.add(F(ee))),Z}}},A=()=>{if(n.renderer)return o||(o=new E.WebGLRenderer({antialias:!1,alpha:!0}),o.setPixelRatio(n.renderer.getPixelRatio()),o.outputEncoding=E.sRGBEncoding,o.setClearColor(1579548,0),o.autoClear=!0),o},p=()=>{d.traverse(Q=>{Q instanceof E.Mesh&&[].concat(Q.material).forEach(J=>J.dispose())}),l.remove(d),d=new E.Object3D,l.add(d),i=!1,V()},g=()=>{e&&(i||m())},v=()=>{e||(e=!0,l.add(d),!i&&n.model.loaded&&m(),V())},y=()=>{e&&(l.remove(d),s=!0,L(),e=!1)},I=(Q,F={})=>{const J=A();if(!J)return;Q.appendChild(J.domElement),M(F);const Z=window.getComputedStyle(Q).position;Z!=="relative"&&Z!=="absolute"&&Z!=="fixed"&&Z!=="sticky"&&(Q.style.position="relative")},M=(Q={})=>{if(!o)return;const J=o.domElement.parentNode;if(J!=null&&J.nodeName){const{width:Z=J.offsetWidth,height:ee=J.offsetHeight}=Q;o.setSize(Z,ee),c.aspect=Z/ee,c.updateProjectionMatrix()}V()};function B(Q,F,J){const Z=Q.bounding,ee=Math.pow(Math.pow(Z.max.x-Z.min.x+1,2)+Math.pow(Z.max.y-Z.min.y+1,2)+Math.pow(Z.max.z-Z.min.z+1,2),1/2);let ce=ee/2/Math.tan(Math.PI*F/360);return J<1&&(ce=ce/J),isNaN(ce)?ee:ce}function P(Q){return n.work.observers[Q].standingPosition.clone()}const V=()=>{if(!e||!h||!u)return;const Q=n.getPose();Q.fov=c.fov,Q.offset=u,Q.distance=h,typeof a.lockedLatitude=="number"&&(Q.latitude=a.lockedLatitude),typeof a.lockedLongitude=="number"&&(Q.longitude=a.lockedLongitude),typeof a.lockedPanoIndex=="number"&&(Q.offset=P(a.lockedPanoIndex)),a.lookAtCurrentCamera&&(Q.offset=n.camera.position.clone().setY(n.camera.position.y+1)),c.setFromPose(Q),s=!0},L=()=>{!e||s!==!0||!o||!o.domElement.parentNode||o.domElement.parentNode.offsetWidth===0||(o.render(l,c),s=!1)},X=()=>{o&&o.dispose(),o=null},Y=Q=>{Object.assign(a,Q),V()},N=()=>({enabled:e});return Object.assign(window,{camera:c}),n.on("modelLoaded",g),n.on("modelWillLoad",p),n.on("cameraDirectionUpdate",V),n.on("dispose",X),n.on("renderFrame",L),n.on("cameraPositionUpdate",V),{appendTo:I,refresh:M,changeConfigs:Y,enable:v,disable:y,getCurrentState:N}},Bf=({x:n,y:t,z:e})=>new R.Vector3(n,t,e),Et=n=>new R.Vector3().fromArray(n),an=n=>n instanceof R.Vector3?n:Array.isArray(n)?Et(n):Bf(n);function Vf(n){if(n)return Array.isArray(n)?typeof n[0]=="number"?an(n):n.map(an):an(n)}function ui(...n){const t=[];return n.forEach(e=>{e.isCSS3DObjectPlus?t.push(e):t.push(...ui(...e.children))}),t}function Ks(n,t){const e=Math.round(n);return e%2===0?e:e+(t!=null&&t.floor?-1:1)}function Rf(n,t,e=!0){if(!n)return console.error("createResizeObserver: element is undefined"),{observe:()=>{},unobserve:()=>{}};const i=()=>{const o=Ks(n.clientWidth,{floor:!0}),r=Ks(n.clientHeight,{floor:!0});t(o,r)};if(typeof ResizeObserver=="undefined"||!ResizeObserver)return console.warn("createResizeObserver: ResizeObserver is undefined"),{observe:()=>i(),unobserve:()=>{}};const s=new ResizeObserver(i);return e&&i(),{observe:()=>s.observe(n),unobserve:()=>s.unobserve(n)}}class ol extends qs.CSS3DRenderer{constructor(){super();f(this,"wrapper");f(this,"requestAnimationFrameId");f(this,"resizeDisoper");this.domElement.style.position="absolute",this.domElement.style.top="0",this.domElement.style.left="0",this.domElement.style.userSelect="none",this.domElement.style.pointerEvents="none"}setWrapper(e){if(!e)throw new Error("CSS3DRenderer: wrapper is required");if(e.contains(this.domElement))return;const i=this.wrapper;return i&&i.contains(this.domElement)&&this.domElement.remove(),this.appendToElement(e),this.wrapper=e,this}appendToElement(e){e.appendChild(this.domElement);const i=(r,a)=>this.setSize(r,a),{observe:s,unobserve:o}=Rf(e,i,!0);s(),this.resizeDisoper=o,this.wrapper=e}renderEveryFrame(e,i){if(this.wrapper||console.warn("wrapper is not find, creating a html element and call setWrapper(wrapper)",this,e),this.requestAnimationFrameId)return;const s=()=>{this.requestAnimationFrameId=requestAnimationFrame(s),e.visible&&ui(e).length!==0&&this.render(e,i)};s()}stopRender(){this.requestAnimationFrameId&&cancelAnimationFrame(this.requestAnimationFrameId)}dispose(){var e;this.stopRender(),(e=this.resizeDisoper)==null||e.call(this),this.domElement.remove()}}function Qf(n){return typeof Symbol=="undefined"?`$Symbol<${n}>$`:Symbol(n)}const ts=Qf("$$EVENT$$");function Ds(n){return n[ts]||(n[ts]={}),n[ts]}function Gf(n){n[ts]||delete n[ts]}class Cn{hasListener(t){const e=Ds(this);return!!(e!=null&&e[t]&&e[t].length>0)}on(t,e,i){const s=Ds(this);return s[t]||(s[t]=[]),s[t].push([e,i||!1]),()=>this.off(t,e)}once(t,e){return this.on(t,e,!0)}off(t,e){if(t===void 0){Gf(this);return}const i=Ds(this);if(i[t]||(i[t]=[]),e===void 0){i[t].length=0;return}let s=0;for(;s<i[t].length&&i[t][s][0]!==e;s++);s<i[t].length&&i[t].splice(s,1)}emit(t,...e){let i=!1;const o=Ds(this)[t]||[];for(let r of o.slice()){const[a,l=!1]=r,c=a(...e);l&&this.off(t,a),c===!1&&(i=!0)}return i}}class Nf extends E.Mesh{constructor(e,i){const s=new E.MeshBasicMaterial({opacity:0,color:0,transparent:!1,side:E.DoubleSide}),o=new E.PlaneGeometry(e,i);super(o,s);f(this,"name","opacity-mesh")}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}}function Ai(...n){const t=new R.Vector3;return n.forEach(e=>t.add(e)),t.divideScalar(n.length),t}const ph=1,Hf=`CSS3DObjectPlus@${ph}`,_f=.00216,Ff=.003;class Wf extends qs.CSS3DObject{constructor(e){var B,P,V;const i=e.container,s=e.cornerPoints,o=(B=e.ratio)!=null?B:Ff,r=(P=e.dpr)!=null?P:1,a=(V=e.pointerEvents)!=null?V:"auto",l=Math.max(_f,o),c=s[0].distanceTo(s[1]),d=s[1].distanceTo(s[2]),h=Ks(c/o*r),u=Ks(d/o*r),m=Ai(...s);let A;if(l===o)i.style.width=`${h}px`,i.style.height=`${u}px`,A=i;else{const L=document.createElement("div");L.style.width=`${h}px`,L.style.height=`${u}px`,L.style.pointerEvents="none";const X=o/l;i.style.position="absolute",i.style.left="0",i.style.top="0",i.style.width=`${X*h}px`,i.style.height=`${X*u}px`,L.appendChild(i),A=L}super(A);f(this,"version",ph);f(this,"isCSS3DObjectPlus",!0);f(this,"container");f(this,"width");f(this,"height");f(this,"domWidthPx");f(this,"domHeightPx");f(this,"cornerPoints");f(this,"centerPosition");f(this,"ratio");f(this,"mode","front");f(this,"hooks",new Cn);f(this,"opacityMesh");f(this,"selfVisible",!0);f(this,"parentVisibleListenerDisposer");f(this,"createOpacityMesh",e=>{const{domWidthPx:i,domHeightPx:s}=e,o=new Nf(i,s);return o.position.copy(e.position),o.rotation.copy(e.rotation),o.scale.copy(e.scale),o});f(this,"addParentVisibleListener",()=>{var e;if((e=this.parent)!=null&&e.isCSS3DGroup){const i=this.parent,s=o=>{this.setVisible(o&&this.selfVisible,{setSelfVisible:!1})};i.hooks.on("visibleChange",s),this.parentVisibleListenerDisposer=()=>i.hooks.off("visibleChange",s)}});f(this,"removeParentVisibleListener",()=>{var e;(e=this.parentVisibleListenerDisposer)==null||e.call(this)});if(i.style.pointerEvents=a,this.scale.set(l,l,l),this.cornerPoints=s,this.ratio=o,this.container=i,e.mode&&(this.mode=e.mode),l===o)this.width=c,this.height=d,this.domWidthPx=h,this.domHeightPx=u,this.centerPosition=m;else{const L=o/l;this.width=L*c,this.height=L*d,this.domWidthPx=L*h,this.domHeightPx=L*u,this.centerPosition=new R.Vector3().subVectors(m,s[0]).multiplyScalar(L).add(s[0])}i.classList.add(`${Hf}__container`);const p=new R.Vector3().subVectors(s[1],s[0]),g=new R.Vector3().subVectors(s[3],s[0]),v=new R.Vector3().crossVectors(p,g).normalize();this.lookAt(v);const y=this.up.clone().applyQuaternion(this.quaternion),I=g.clone(),M=new R.Vector3().crossVectors(y,I).normalize();this.rotateOnWorldAxis(M,y.angleTo(I)),this.position.copy(m),this.addEventListener("added",()=>{var L;this.mode==="front"&&((L=this.opacityMesh)==null||L.removeFromParent()),this.addParentVisibleListener()}),this.addEventListener("removed",()=>{var L;(L=this.opacityMesh)==null||L.removeFromParent(),this.removeParentVisibleListener()})}setVisible(e,i={setSelfVisible:!0}){i.setSelfVisible&&(this.selfVisible=e),this.visible=e,this.opacityMesh&&(this.opacityMesh.visible=e)}removeFromParent(){var i;const e=this.parent;return e!==null&&e.remove(this),(i=this.opacityMesh)==null||i.removeFromParent(),this}removeOpacityMesh(){var e;return(e=this.opacityMesh)==null||e.removeFromParent(),this.opacityMesh=void 0,this}dispose(){var e;this.container.remove(),this.removeFromParent(),(e=this.opacityMesh)==null||e.removeFromParent()}getOpacityMesh(){if(this.opacityMesh)return this.opacityMesh;{const e=this.createOpacityMesh(this);return this.opacityMesh=e,e}}applyMatrix4(e){var i;super.applyMatrix4(e),(i=this.opacityMesh)==null||i.applyMatrix4(e)}applyQuaternion(e){var i;return super.applyQuaternion(e),(i=this.opacityMesh)==null||i.applyQuaternion(e),this}applyScaleMatrix4(e){var i;this.scale.applyMatrix4(e),(i=this.opacityMesh)==null||i.scale.applyMatrix4(e)}}class Yf extends E.Scene{constructor(){super()}add(...t){return super.add(...t),ui(...t).forEach(e=>{e.mode="front"}),this}}class Uf extends E.Scene{constructor(e){super();f(this,"scene");if(!e)throw new Error("CSS3DBehindScene: scene is required");this.scene=e}add(...e){return super.add(...e),ui(...e).forEach(i=>{i.mode="behind",this.scene.add(i.getOpacityMesh())}),this}remove(...e){return ui(...e).forEach(i=>{var s;(s=i.opacityMesh)==null||s.removeFromParent(),i.opacityMesh=null}),super.remove(...e),this}}class Ah extends E.Group{constructor(e){super();f(this,"isCSS3DGroup",!0);f(this,"mode");f(this,"CSS3DObjectLength",0);f(this,"hooks",new Cn);this.mode=e}add(...e){return ui(...e).forEach(i=>{i.mode=this.mode}),super.add(...e),this.updateLength(),this}setVisible(e){this.visible=e,this.hooks.emit("visibleChange",e)}remove(...e){return super.remove(...e),this.updateLength(),this}updateLength(){this.CSS3DObjectLength=ui(this).length}}class Xf extends Ah{constructor(){super("front")}}class Zf extends Ah{constructor(e){super("behind");f(this,"scene");if(!e)throw new Error("CSS3DBehindScene: scene is required");this.scene=e}add(...e){return ui(...e).forEach(i=>{this.scene.add(i.getOpacityMesh())}),super.add(...e),this}}const Jf=3,Yr="CSS3DRenderer",Kn=`${Yr}@${Jf}`,Zi=()=>{console.error(`${Kn} is disposed`)},Xe={css3DObjects:[],frontModeStore:{css3DRenderer:new ol},behindModeStore:{css3DRenderer:new ol}};function rl(n){return Xe.css3DObjects.find(t=>t.id===n)}function qf(n){Xe.frontModeStore.css3DRenderer.setWrapper(n)}function Kf(n){Xe.behindModeStore.css3DRenderer.setWrapper(n)}class un{constructor(t){f(this,"hooks",new Cn);f(this,"state",{enabled:!0,visible:!0,disposed:!1});f(this,"_scene");f(this,"store",{frontModeGroup:new Xf});f(this,"create3DElement",(t,e,i)=>{if(this.state.disposed)return Zi();const s=(()=>{const M={ratio:.00216,devicePixelRatio:1,mode:"front",autoRender:!0,container:document.createElement("div"),pointerEvents:"none"};return Object.assign(M,i)})(),o=e.map(an);if((o==null?void 0:o.length)<4)return console.error(`${Kn}: requires 4 point but params may have fewer`);const{ratio:r,devicePixelRatio:a,mode:l,autoRender:c,container:d,pointerEvents:h}=s;let u=!1;const m=this.createObject(o,{ratio:r,dpr:a,container:d,mode:l,pointerEvents:h});Xe.css3DObjects.push(m),s.scene&&this.setScene(s.scene);const A=()=>{if(u)return;const M=m.mode==="front"?this.getFrontCSS3DObjectGroup():this.getBehindCSS3DObjectGroup();M&&M.add(m)},p=()=>{u||(A(),this.render(t),this.hooks.emit("render"))},g=M=>this.setVisibleById(m.id,M),v=M=>this.setEnabledById(m.id,M),y=()=>(u=!0,m.removeFromParent(),!0),I=l==="front"?Xe.frontModeStore.css3DRenderer:Xe.behindModeStore.css3DRenderer;return c&&p(),{id:m.uuid,container:d,css3DObject:m,render:c?void 0:p,show:()=>g(!0),hide:()=>g(!1),setVisible:g,enable:()=>v(!0),disable:()=>v(!1),setEnabled:v,dispose:y,appendToElement:M=>I.setWrapper(M)}});f(this,"setVisibleById",(t,e)=>{var i;(i=rl(t))==null||i.setVisible(e)});f(this,"setEnabledById",(t,e)=>{const i=rl(t);if(!i)return;const s=i.mode==="front"?this.getFrontCSS3DObjectGroup({addGroupIfNotExists:!1}):this.getBehindCSS3DObjectGroup({addGroupIfNotExists:!1});s&&(e?s.add(i):s.remove(i))});f(this,"createObject",(t,e)=>{const i=new Wf(G({cornerPoints:t},e));return i.element.classList.add(`${Yr}__container`),i.element.id=`${Yr}__container--${i.uuid}`,i});t&&this.setScene(t)}get scene(){return this._scene||console.error("scene doesn't exist!, please call setScene(scene) first"),this._scene}static get frontModeCSS3DRenderer(){return Xe.frontModeStore.css3DRenderer}static get behindModeCSS3DRenderer(){return Xe.behindModeStore.css3DRenderer}get frontModeCSS3DRenderer(){return Xe.frontModeStore.css3DRenderer}get behindModeCSS3DRenderer(){return Xe.behindModeStore.css3DRenderer}setScene(t){this._scene=t}getCurrentState(){return this.state}setState(t,e={userAction:!0}){if(this.state.disposed)return Zi();const i=G({},this.state);this.state=Object.assign(this.state,t),i.visible!==this.state.visible&&(t.visible?this.handleShow():this.handleHide()),i.enabled!==this.state.enabled&&(t.enabled?this.handleEnable():this.handleDisable()),i.disposed!==this.state.disposed&&this.handleDispose(),this.hooks.emit("stateChange",{state:this.state,prevState:i,userAction:e.userAction})}dispose(){this.setState({disposed:!0}),this.hooks.emit("dispose")}show(){return W(this,arguments,function*({userAction:t}={userAction:!0}){if(this.state.disposed)return Zi();this.setState({visible:!0},{userAction:t}),this.hooks.emit("show",{userAction:t})})}hide(){return W(this,arguments,function*({userAction:t}={userAction:!0}){if(this.state.disposed)return Zi();this.setState({visible:!1},{userAction:t}),this.hooks.emit("hide",{userAction:t})})}enable({userAction:t}={userAction:!0}){if(this.state.disposed)return Zi();this.setState({enabled:!0},{userAction:t}),this.hooks.emit("enable",{userAction:t})}disable({userAction:t}={userAction:!0}){if(this.state.disposed)return Zi();this.setState({enabled:!1},{userAction:t}),this.hooks.emit("disable",{userAction:t})}getFrontCSS3DScene({createSceneIfNotExists:t=!1}={}){var i;const e=(i=Xe.frontModeStore)==null?void 0:i.css3DScene;if(e)return e;if(t){const s=new Yf;Xe.frontModeStore.css3DScene=s}return Xe.frontModeStore.css3DScene}getBehindCSS3DScene({createSceneIfNotExists:t=!1}={}){var i,s;const e=(i=Xe.behindModeStore)==null?void 0:i.css3DScene;if(e)return e;if(t){const o=(s=Xe.behindModeStore.scene)!=null?s:this.scene;if(!o){console.error(`${Kn}: scene is required when mode is behind`);return}const r=new Uf(o);Xe.behindModeStore.css3DScene=r,Xe.behindModeStore.scene=o}return Xe.behindModeStore.css3DScene}getFrontCSS3DObjectGroup({addGroupIfNotExists:t=!0}={}){const e=this.getFrontCSS3DScene({createSceneIfNotExists:t});return t&&e&&(e.getObjectById(this.store.frontModeGroup.id)||e.add(this.store.frontModeGroup)),this.store.frontModeGroup}getBehindCSS3DObjectGroup({addGroupIfNotExists:t=!0}={}){var i;const e=this.getBehindCSS3DScene({createSceneIfNotExists:t});if(t&&e&&this.scene){const s=(i=this.store.behindModeGroup)!=null?i:new Zf(this.scene);this.store.behindModeGroup=s,e.getObjectById(s.id)||e.add(s)}return this.store.behindModeGroup}render(t){var e,i;if(this.getFrontCSS3DObjectGroup({addGroupIfNotExists:!1}).CSS3DObjectLength>0){const s=this.getFrontCSS3DScene({createSceneIfNotExists:!0});if(!s)return console.error(`${Kn}: css3DScene is required when mode is front`);Xe.frontModeStore.css3DRenderer.renderEveryFrame(s,t)}if(((i=(e=this.getBehindCSS3DObjectGroup({addGroupIfNotExists:!1}))==null?void 0:e.CSS3DObjectLength)!=null?i:0)>0){const s=this.getBehindCSS3DScene({createSceneIfNotExists:!0});if(!s)return console.error(`${Kn}: css3DScene is required when mode is behind`);Xe.behindModeStore.css3DRenderer.renderEveryFrame(s,t)}}handleShow(){return W(this,null,function*(){var t;this.store.frontModeGroup.setVisible(!0),(t=this.store.behindModeGroup)==null||t.setVisible(!0)})}handleHide(){return W(this,null,function*(){var t;this.store.frontModeGroup.setVisible(!1),(t=this.store.behindModeGroup)==null||t.setVisible(!1)})}handleEnable(){var t,e;(t=this.getFrontCSS3DScene())==null||t.add(this.store.frontModeGroup),this.store.behindModeGroup&&((e=this.getBehindCSS3DScene())==null||e.add(this.store.behindModeGroup))}handleDisable(){var t,e,i;this.store.frontModeGroup.children.forEach(s=>{s instanceof qs.CSS3DObject&&s.element instanceof Element&&s.element.parentNode!==null&&s.element.remove()}),(t=this.store.behindModeGroup)==null||t.children.forEach(s=>{s instanceof qs.CSS3DObject&&s.element instanceof Element&&s.element.parentNode!==null&&s.element.remove()}),(e=this.getFrontCSS3DScene())==null||e.remove(this.store.frontModeGroup),this.store.behindModeGroup&&((i=this.getBehindCSS3DScene())==null||i.remove(this.store.behindModeGroup))}handleDispose(){this.handleDisable()}}f(un,"setFrontModeContainer",qf),f(un,"setBehindModeContainer",Kf);function vh(n){return W(this,null,function*(){return new Promise(t=>{var e;if((e=n.model)!=null&&e.loaded){t();return}else n.once("modelLoaded",()=>t())})})}const Tt=document.createElement("div");Tt.classList.add("behindFiveElement");Tt.style.position="absolute";Tt.style.top="0";Tt.style.left="0";Tt.style.width="100%";Tt.style.height="100%";Tt.style.pointerEvents="none";function bh(n){var i,s,o,r,a;const t=(a=(s=wr(n.getElement()))!=null?s:wr((i=n.getElement())==null?void 0:i.parentElement))!=null?a:wr((r=(o=n.getElement())==null?void 0:o.parentElement)==null?void 0:r.parentElement),e=t==null?void 0:t.parentElement;if(e)return e.contains(Tt)||t.parentElement.insertBefore(Tt,t),Tt;console.error("Can not find a valid element to insert behindFiveElement. How to fix it: https://github.com/realsee-developer/dnalogel/tree/main/plugins/src/CSS3DRenderPlugin/README.md")}function wr(n){var a;if(!n)return;const t=(a=n.style.position)!=null?a:getComputedStyle(n).position;if(t!=="fixed"&&t!=="absolute"&&t!=="relative")return;const e=getComputedStyle(n),i=e.backgroundColor,s=e.backgroundImage;if(!(i!=="transparent"&&i!=="rgba(0, 0, 0, 0)"&&i!==""||s!=="none"&&s!==""))return n}class Ur{constructor(t=0,e=0){f(this,"min");f(this,"max");f(this,"isInterval",!0);this.min=t,this.max=e}fromArray(t){return this.min=t[0],this.max=t[1],this}isOverlap(t){return Math.min(this.max,t.max)<Math.max(this.min,t.min)}contains(t){return this.min<t.min&&this.max>t.max}}class $f{constructor(t,e){f(this,"min");f(this,"max");f(this,"xInterval");f(this,"yInterval");f(this,"isRectangle",!0);this.min=t,this.max=e,this.xInterval=new Ur(this.min.x,this.max.x),this.yInterval=new Ur(this.min.y,this.max.y)}isOverlapWithRectangle(t){return!this.xInterval.isOverlap(t.xInterval)&&!this.yInterval.isOverlap(t.yInterval)}containsRect(t){return this.xInterval.contains(t.xInterval)&&this.yInterval.contains(t.yInterval)}}function ma(n){return n==="Panorama"||n==="DepthPanorama"||n==="VRPanorama"||n==="XRPanorama"}function yh(n){return!ma(n)}function Ss(n,t,e){const i=n[t],s=n[e];i===void 0||s===void 0||(n[t]=s,n[e]=i)}function em(n,t,e){const i=e/2;for(let s=1;s<=i;s++){const o=e-(s-1);for(let r=1;r<=t;r++){const a=(s-1)*t+r-1,l=(o-1)*t+r-1;Ss(n,a*4+0,l*4+0),Ss(n,a*4+1,l*4+1),Ss(n,a*4+2,l*4+2),Ss(n,a*4+3,l*4+3)}}}let ga=class{constructor(t,e){f(this,"width");f(this,"height");f(this,"containerDom");f(this,"hooks",new je.Subscribe);f(this,"canvas",document.createElement("canvas"));f(this,"five");f(this,"scale");f(this,"config");f(this,"offset",{x:0,y:0});f(this,"context");f(this,"renderCenter",new E.Vector3);f(this,"hammer");f(this,"state",{enabled:!1});f(this,"onPan",t=>{if(!this.containerDom||this.hooks.emit("wantsPanGesture",t))return;const i=this.offset.x+t.deltaX,s=this.offset.y+t.deltaY;this.canvas.style.boxShadow="0 2px 30px 0 rgba(0,0,0,0.20)",this.canvas.style.transform=`translate3d(${i}px, ${s}px, 100px)`});f(this,"onPanEnd",t=>{this.offset={x:this.offset.x+t.deltaX,y:this.offset.y+t.deltaY},this.canvas.style.boxShadow="none"});var s,o,r;if(!t.renderer)throw new Error("Five Render 未初始化");this.five=t,this.scale=(s=e==null?void 0:e.scale)!=null?s:2,this.width=(o=e==null?void 0:e.width)!=null?o:190,this.height=(r=e==null?void 0:e.height)!=null?r:190,this.config={dragEnabled:(e==null?void 0:e.dragEnabled)||!1,autoFixPCPosition:(e==null?void 0:e.autoFixPCPosition)||!1,initialPosition:(e==null?void 0:e.initialPosition)||{left:"0",top:"0"}};const i=this.canvas.getContext("2d");if(!i)throw new Error("CANNOT CREATE CONTEXT2D");this.context=i,this.config.dragEnabled&&(this.hammer=new ls(this.canvas),this.hammer.on("pan",this.onPan),this.hammer.on("panend",this.onPanEnd)),this.initStyle()}getCurrentState(){return this.state}dispose(){var t;this.clear(),this.disable(),(t=this.hammer)==null||t.destroy()}show(){return this.canvas.style.visibility="visible",this}hide(){return this.canvas.style.visibility="hidden",this}enable(){var t;if(!this.state.enabled)return this.state.enabled=!0,(t=this.containerDom)==null||t.append(this.canvas),this}disable(){if(this.state.enabled)return this.state.enabled=!1,this.canvas.remove(),this}appendTo(t){return this.containerDom&&Array.from(this.containerDom.children).includes(this.canvas)&&this.containerDom.removeChild(this.canvas),this.containerDom=t,this.state.enabled&&t.append(this.canvas),this}clear(){return this.context.clearRect(0,0,this.canvas.width,this.canvas.height),this}renderWithPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}autoFixPCPosition(){if(!this.containerDom)return;const{width:t,height:e}=this,i=this.renderCenter.clone().project(this.five.camera),s=(i.x+1)/2*this.containerDom.clientWidth,o=-(i.x-1)/2*this.containerDom.clientWidth,r=-(i.y-1)/2*this.containerDom.clientHeight;s<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left="90px"):r<183?(this.canvas.style.top="90px",this.canvas.style.left=-t/2+"px"):o<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=-t-90+"px"):(this.canvas.style.left=-t/2+"px",this.canvas.style.top=-e-90+"px"),this.canvas.style.transform=`translate3d(${s}px, ${r}px, 10px)`,this.offset={x:s,y:r}}render(){if(!this.five.renderer||!this.containerDom)return;const{scale:t,context:e,width:i,height:s}=this,o=this.renderCenter.clone().project(this.five.camera),r=this.five.renderer.getSize(new E.Vector2),a=1,l=i/t,c=s/t,d=a*t,h=(o.x+1)/2*r.x,u=(o.y+1)/2*r.y,m=this.five.getPixels(h-l/2,u-l/2,l,c,d),A=Math.floor(i*a),p=Math.floor(s*a);em(m,A,p);const g=new ImageData(A,p);g.data.set(m),e.putImageData(g,0,0)}initStyle(){const t=this.canvas;t.classList.add("five-plugin__magnifier"),t.style.position="absolute",t.style.pointerEvents="all",t.style.borderRadius="50%",t.style.zIndex="99";const e=1;t.setAttribute("width",(this.width*e).toString()),t.setAttribute("height",(this.height*e).toString()),t.style.border="2px solid rgba(255,255,255,0.20)",t.style.width=this.width+"px",t.style.height=this.height+"px",t.style.top=this.config.initialPosition.top,t.style.left=this.config.initialPosition.left,t.style.transform="translate(0,0,100px)",t.style.visibility="visible",this.config.dragEnabled&&(this.canvas.style.cursor="pointer")}};function tm(n,t){const{offsetWidth:e,offsetHeight:i}=t,{top:s,left:o}=t.getBoundingClientRect();return new E.Vector2().set((n.x-o)/e*2-1,-(n.y-s)/i*2+1)}function wh(n,t){const{offsetWidth:e,offsetHeight:i}=t;return new E.Vector2().set(n.x/e*2-1,-n.y/i*2+1)}function im(n,t){const e=n.getElement();if(!e)return;const i=wh(t,e),s=new E.Raycaster;return s.setFromCamera(i,n.camera),s}function Ch(n,t){const{x:e,y:i}=t,s=e*2-1,o=i*2-1,r=new E.Vector2().fromArray([s,o]),a=new E.Raycaster;return a.setFromCamera(r,n.camera),n.model.intersectRaycaster(a)[0]}const nm="data:image/png;base64,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",sm=`
102
102
  varying vec2 vUv;
103
103
  void main() {
104
104
  vUv = uv;
@@ -174,15 +174,15 @@ void main() {
174
174
  <div class='range-piece__content'></div>
175
175
  <div class="range-piece__aim"></div>
176
176
  </div>
177
- `;class Eh{constructor(t){f(this,"five");f(this,"contentElement",document.createElement("div"));f(this,"animeIns");f(this,"container");f(this,"css3DObject");f(this,"disposeCss3DObject");f(this,"state",{enabled:!1});this.five=t;const i=.4/2,o=bo(t).create3DDomContainer([[-i,i,0],[-i,-i,0],[i,-i,0],[i,i,0]].map(r=>new E.Vector3().fromArray(r)));if(o){const{container:r,dispose:a,css3DObject:l}=o;this.container=r,this.css3DObject=l,this.disposeCss3DObject=a}this.contentElement.style.width="100%",this.contentElement.style.height="100%",this.contentElement.style.backgroundImage=`url(${Ph})`,this.contentElement.style.backgroundSize="100%",this.contentElement.style.backgroundRepeat="no-repeat"}enable(){var t;this.state.enabled||(this.state.enabled=!0,(t=this.container)==null||t.appendChild(this.contentElement))}disable(){this.state.enabled&&(this.state.enabled=!1,this.contentElement.remove())}updateWithIntersect(t){if(!t.face||!this.css3DObject)return;const e=new E.Vector3().addVectors(t.point,t.face.normal);this.css3DObject.position.copy(t.point),this.css3DObject.lookAt(e),this.five.needsRender=!0}doAnimation(){var t;(t=this.animeIns)==null||t.dispose(),new fn({progress:0}).to({progress:[1,0]}).duration(500).easing(Lt.Quadratic.InOut).onUpdate(({progress:e})=>{}).play()}dispose(){var t;(t=this.disposeCss3DObject)==null||t.call(this)}}class Mh{constructor(t,e){f(this,"five");f(this,"hooks",new je.Subscribe);f(this,"position");f(this,"magnifier",null);f(this,"pointHelper",null);f(this,"pointDomHelper",null);f(this,"state",{enabled:!1,visible:!0});f(this,"group",new E.Group);f(this,"show",()=>{this.state.visible||(this.state.visible=!0,this.pointHelper.visible=!0,this.pointDomHelper.enable(),this.magnifier.show(),this.five.needsRender=!0)});f(this,"hide",()=>{this.state.visible&&(this.state.visible=!1,this.pointHelper.visible=!1,this.pointDomHelper.disable(),this.magnifier.hide(),this.five.needsRender=!0)});f(this,"updateWithIntersect",(t,e={emitEvent:!0})=>{var s;this.abortUpdateMagnifier(),this.position=t,e.emitEvent&&this.hooks.emit("intersectionUpdate",t),this.pointHelper.updateWithIntersect(t),(s=this.pointDomHelper)==null||s.updateWithIntersect(t);const i=()=>this.magnifier.renderWithPoint(t.point);this.abortUpdateMagnifier=()=>this.five.off("renderFrame",i),this.five.once("renderFrame",i),this.five.needsRender=!0});f(this,"abortUpdateMagnifier",()=>{});var i;this.five=t,this.magnifier=(e==null?void 0:e.magnifier)!==void 0?e.magnifier:new ga(t,(i=e==null?void 0:e.magnifierParams)!=null?i:{dragEnabled:!0}),this.pointHelper=(e==null?void 0:e.pointHelper)!==void 0?e.pointHelper:new Ih,this.pointDomHelper=(e==null?void 0:e.pointDomHelper)!==void 0?e.pointDomHelper:new Eh(t),this.group.name="five-point-selector",this.five.scene.add(this.group),this.magnifier.appendTo(document.body)}enable(){var t,e;this.state.enabled||(this.state.enabled=!0,this.pointHelper&&this.group.add(this.pointHelper),(t=this.magnifier)==null||t.enable(),(e=this.pointDomHelper)==null||e.enable(),this.five.needsRender=!0,this.hooks.emit("enabled"))}disable(){var t,e;this.state.enabled&&(this.state.enabled=!1,this.pointHelper&&this.group.remove(this.pointHelper),(t=this.magnifier)==null||t.disable(),(e=this.pointDomHelper)==null||e.disable(),this.hooks.emit("disabled"))}dispose(){this.hooks.off(),this.disable(),this.magnifier=null,this.pointHelper=null,this.pointDomHelper=null}}function kh(n){return!ni(n)}function ni(n){return n!=null}function xh(n){return/^https?:\/\/|^\/\//.test(n)||/^data:/.test(n)}function pa(n,t){return xh(t)?t:`${n}${t}`}class fn extends po{constructor(){super(...arguments);f(this,"disposeMethods",[]);f(this,"animationFrameDisposer");f(this,"onDispose",e=>(this.disposeMethods.push(e),this));f(this,"play",()=>{var e;return this.start(0),(e=this.animationFrameDisposer)==null||e.call(this),this.animationFrameDisposer=In(i=>this.update(i)),this});f(this,"stop",()=>{var e;return super.stop(),(e=this.animationFrameDisposer)==null||e.call(this),this});f(this,"dispose",()=>{var e;this.stop(),(e=this.animationFrameDisposer)==null||e.call(this),this.disposeMethods.forEach(i=>i()),this.disposeMethods=[],gh(this)})}}function Ao(n,t=Lt.Linear.None){const e=new fn({progress:0}).to({progress:1});return n!==void 0&&e.duration(n),t!==void 0&&e.easing(t),e}const os=window.requestAnimationFrame||(n=>setTimeout(n,16)),hm=window.cancelAnimationFrame||clearTimeout;function vo(n,t=0){t<=0?os(n):os(()=>vo(n,t-1))}function In(n,t=60){let e=-1,i=0,s=-1;const o=1e3/t;function r(a){s===-1&&(s=a),e=os(r),!(a-i<o)&&(i=a,n==null||n(a-s))}return e=os(r),function(){hm(e)}}function um(){const n=Date.now();return new Promise(t=>{os(()=>{t(Date.now()-n)})})}const fm=Object.freeze(Object.defineProperty({__proto__:null,BetterTween:fn,Interval:Ur,Magnifier:ga,PointDomHelper:Eh,PointHelper:Ih,PointSelectorHelper:Mh,Rectangle:$f,absoluteUrl:pa,getCoordsFromClient:tm,getCoordsFromElement:wh,getFrameTime:um,getIntersectFromRelativePosition:Ch,getRaycasterFromFivePointer:im,isAbsoluteURL:xh,isModelLike:yh,isNil:kh,isPanoramaLike:ma,nextFrame:vo,notNil:ni,requestAnimationFrameInterval:In,tweenProgress:Ao,uuid:lt},Symbol.toStringTag,{value:"Module"})),Dh="v2.0.1",wr=`CSS3DRenderPlugin@${Dh}`;let mm=class extends un{constructor(e){super();f(this,"five");f(this,"behindFiveContainer");f(this,"VERSION",Dh);f(this,"staticPrefix","//vr-image-4.realsee-cdn.cn");f(this,"create3DDomContainer",(e,i)=>{if(this.state.disposed)return;const s=(()=>{var h;(i==null?void 0:i.dpr)!==void 0&&console.warn(`${wr}: please use "config.devicePixelRatio" replace "config.dpr"`);const d={ratio:.00216,devicePixelRatio:(h=i==null?void 0:i.dpr)!=null?h:1,mode:"front",autoRender:!0};return Object.assign(d,i,(i==null?void 0:i.mode)==="behind"?{scene:this.five.scene}:void 0)})(),o=this.five.getElement();if(!o){console.error(`${wr}: five.getElement() is ${o}`);return}const{autoRender:r}=s;s.mode==="behind"&&s.behindFiveContainer&&(this.behindFiveContainer=s.behindFiveContainer);const a=this.create3DElement(this.five.camera,e,ve(G({},s),{autoRender:!1}));if(!a)return;const l=()=>{const d=a.css3DObject.mode==="front"?o.parentElement:this.getBehindFiveElement();if(!d)return console.error(`${wr}: wrapper is ${d}`);a.appendToElement(d),a.render()},c=()=>{a.css3DObject.mode==="front"&&l(),a.css3DObject.mode==="behind"&&vh(this.five).then(()=>l())};return r&&c(),ve(G({},a),{render:r?void 0:c})});this.five=e}disposeAll(){return this.dispose()}setState(...e){const i=super.setState(...e);return this.five.needsRender=!0,i}getBehindFiveElement(){return this.behindFiveContainer?this.behindFiveContainer:(this.behindFiveContainer=bh(this.five),this.behindFiveContainer)}absoluteUrl(e){return pa(this.staticPrefix,e)}};const Aa=n=>new mm(n),bo=Aa;function Cr(n,t,e=new R.Vector3(1,1,1),i=!1){const s=new hh.Line(n,t);return s.setMaterial({dashed:i,color:e,linewidth:1}),s.remove(s.points),s}const gm=n=>{const t={intersection:null,disposers:[]},e=d=>{t.intersection=d},i=()=>{t.intersection=null};n.on("modelLoaded",()=>{n.on("intersectionOnModelUpdate",e),n.on("intersectionHidden",i)}),n.on("dispose",()=>{n.off("intersectionOnModelUpdate",e),n.off("intersectionHidden",i)});const s=(d,h=2,u=.1)=>{const m=h/2,p=c(d,u),g=new R.Group;g.add(Cr(new R.Vector3(p.x+m,p.y,p.z),new R.Vector3(p.x-m,p.y,p.z),new R.Vector3(1,0,0)),Cr(new R.Vector3(p.x,p.y+m,p.z),new R.Vector3(p.x,p.y-m,p.z),new R.Vector3(0,1,0)),Cr(new R.Vector3(p.x,p.y,p.z+m),new R.Vector3(p.x,p.y,p.z-m),new R.Vector3(0,0,1))),n.scene.add(g),n.needsRender=!0;const v=()=>{n.scene.remove(g)};return t.disposers.push(v),{clear:v,pointAxesHelperMesh:g}},o=(d,h=0)=>{var v,y;const u=(v=n==null?void 0:n.camera)==null?void 0:v.position;if(!u)return!1;const m=d.distanceTo(u),A=d.sub(u).normalize(),p=new R.Raycaster(u,A),g=(y=n.model.intersectRaycaster(p))==null?void 0:y[0];return!(g&&g.distance+h<m)},r=()=>t.intersection,a=()=>{var d,h;(h=(d=t.disposers)==null?void 0:d.forEach)==null||h.call(d,u=>u==null?void 0:u()),n.off("intersectionOnModelUpdate",e),n.off("intersectionHidden",i)},l=a,c=(d,h)=>{const u=d.clone();return n.camera.position.clone().sub(u).setLength(h).add(u)};return{intersection:r,pointAxesHelper:s,movePointTowardsCamera:c,destroy:a,dispose:l,canSeePoint:o}};function q(){}const ti=n=>n;function tt(n,t){for(const e in t)n[e]=t[e];return n}function pm(n){return!!n&&(typeof n=="object"||typeof n=="function")&&typeof n.then=="function"}function Sh(n){return n()}function al(){return Object.create(null)}function qe(n){n.forEach(Sh)}function si(n){return typeof n=="function"}function oe(n,t){return n!=n?t==t:n!==t||n&&typeof n=="object"||typeof n=="function"}let Ts;function kt(n,t){return n===t?!0:(Ts||(Ts=document.createElement("a")),Ts.href=t,n===Ts.href)}function Am(n){return Object.keys(n).length===0}function Pn(n,t,e,i){if(n){const s=Th(n,t,e,i);return n[0](s)}}function Th(n,t,e,i){return n[1]&&i?tt(e.ctx.slice(),n[1](i(t))):e.ctx}function En(n,t,e,i){if(n[2]&&i){const s=n[2](i(e));if(t.dirty===void 0)return s;if(typeof s=="object"){const o=[],r=Math.max(t.dirty.length,s.length);for(let a=0;a<r;a+=1)o[a]=t.dirty[a]|s[a];return o}return t.dirty|s}return t.dirty}function Mn(n,t,e,i,s,o){if(s){const r=Th(t,e,i,o);n.p(r,s)}}function kn(n){if(n.ctx.length>32){const t=[],e=n.ctx.length/32;for(let i=0;i<e;i++)t[i]=-1;return t}return-1}function Qe(n){return n==null?"":n}function ei(n){return n&&si(n.destroy)?n.destroy:q}function ll(n){const t=typeof n=="string"&&n.match(/^\s*(-?[\d.]+)([^\s]*)\s*$/);return t?[parseFloat(t[1]),t[2]||"px"]:[n,"px"]}const Lh=typeof window!="undefined";let va=Lh?()=>window.performance.now():()=>Date.now(),ba=Lh?n=>requestAnimationFrame(n):q;const ln=new Set;function jh(n){ln.forEach(t=>{t.c(n)||(ln.delete(t),t.f())}),ln.size!==0&&ba(jh)}function ya(n){let t;return ln.size===0&&ba(jh),{promise:new Promise(e=>{ln.add(t={c:n,f:e})}),abort(){ln.delete(t)}}}const vm=typeof window!="undefined"?window:typeof globalThis!="undefined"?globalThis:global;function x(n,t){n.appendChild(t)}function ue(n,t,e){const i=wa(n);if(!i.getElementById(t)){const s=S("style");s.id=t,s.textContent=e,zh(i,s)}}function wa(n){if(!n)return document;const t=n.getRootNode?n.getRootNode():n.ownerDocument;return t&&t.host?t:n.ownerDocument}function bm(n){const t=S("style");return t.textContent="/* empty */",zh(wa(n),t),t.sheet}function zh(n,t){return x(n.head||n,t),t.sheet}function B(n,t,e){n.insertBefore(t,e||null)}function O(n){n.parentNode&&n.parentNode.removeChild(n)}function jt(n,t){for(let e=0;e<n.length;e+=1)n[e]&&n[e].d(t)}function S(n){return document.createElement(n)}function Be(n){return document.createElementNS("http://www.w3.org/2000/svg",n)}function xe(n){return document.createTextNode(n)}function $(){return xe(" ")}function Ee(){return xe("")}function be(n,t,e,i){return n.addEventListener(t,e,i),()=>n.removeEventListener(t,e,i)}function Oh(n){return function(t){return t.stopPropagation(),n.call(this,t)}}function w(n,t,e){e==null?n.removeAttribute(t):n.getAttribute(t)!==e&&n.setAttribute(t,e)}function ym(n){return Array.from(n.childNodes)}function Se(n,t){t=""+t,n.data!==t&&(n.data=t)}function z(n,t,e,i){e==null?n.style.removeProperty(t):n.style.setProperty(t,e,i?"important":"")}let Ls;function wm(){if(Ls===void 0){Ls=!1;try{typeof window!="undefined"&&window.parent&&window.parent.document}catch(n){Ls=!0}}return Ls}function yo(n,t){getComputedStyle(n).position==="static"&&(n.style.position="relative");const i=S("iframe");i.setAttribute("style","display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: -1;"),i.setAttribute("aria-hidden","true"),i.tabIndex=-1;const s=wm();let o;return s?(i.src="data:text/html,<script>onresize=function(){parent.postMessage(0,'*')}<\/script>",o=be(window,"message",r=>{r.source===i.contentWindow&&t()})):(i.src="about:blank",i.onload=()=>{o=be(i.contentWindow,"resize",t),t()}),x(n,i),()=>{(s||o&&i.contentWindow)&&o(),O(i)}}function K(n,t,e){n.classList.toggle(t,!!e)}function Bh(n,t,{bubbles:e=!1,cancelable:i=!1}={}){return new CustomEvent(n,{detail:t,bubbles:e,cancelable:i})}class Ks{constructor(t=!1){f(this,"is_svg",!1);f(this,"e");f(this,"n");f(this,"t");f(this,"a");this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,e,i=null){this.e||(this.is_svg?this.e=Be(e.nodeName):this.e=S(e.nodeType===11?"TEMPLATE":e.nodeName),this.t=e.tagName!=="TEMPLATE"?e:e.content,this.c(t)),this.i(i)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.nodeName==="TEMPLATE"?this.e.content.childNodes:this.e.childNodes)}i(t){for(let e=0;e<this.n.length;e+=1)B(this.t,this.n[e],t)}p(t){this.d(),this.h(t),this.i(this.a)}d(){this.n.forEach(O)}}const $s=new Map;let eo=0;function Cm(n){let t=5381,e=n.length;for(;e--;)t=(t<<5)-t^n.charCodeAt(e);return t>>>0}function Im(n,t){const e={stylesheet:bm(t),rules:{}};return $s.set(n,e),e}function to(n,t,e,i,s,o,r,a=0){const l=16.666/i;let c=`{
177
+ `;class Eh{constructor(t){f(this,"five");f(this,"contentElement",document.createElement("div"));f(this,"animeIns");f(this,"container");f(this,"css3DObject");f(this,"disposeCss3DObject");f(this,"state",{enabled:!1});this.five=t;const i=.4/2,o=yo(t).create3DDomContainer([[-i,i,0],[-i,-i,0],[i,-i,0],[i,i,0]].map(r=>new E.Vector3().fromArray(r)));if(o){const{container:r,dispose:a,css3DObject:l}=o;this.container=r,this.css3DObject=l,this.disposeCss3DObject=a}this.contentElement.style.width="100%",this.contentElement.style.height="100%",this.contentElement.style.backgroundImage=`url(${Ph})`,this.contentElement.style.backgroundSize="100%",this.contentElement.style.backgroundRepeat="no-repeat"}enable(){var t;this.state.enabled||(this.state.enabled=!0,(t=this.container)==null||t.appendChild(this.contentElement))}disable(){this.state.enabled&&(this.state.enabled=!1,this.contentElement.remove())}updateWithIntersect(t){if(!t.face||!this.css3DObject)return;const e=new E.Vector3().addVectors(t.point,t.face.normal);this.css3DObject.position.copy(t.point),this.css3DObject.lookAt(e),this.five.needsRender=!0}doAnimation(){var t;(t=this.animeIns)==null||t.dispose(),new fn({progress:0}).to({progress:[1,0]}).duration(500).easing(Lt.Quadratic.InOut).onUpdate(({progress:e})=>{}).play()}dispose(){var t;(t=this.disposeCss3DObject)==null||t.call(this)}}class Mh{constructor(t,e){f(this,"five");f(this,"hooks",new je.Subscribe);f(this,"position");f(this,"magnifier",null);f(this,"pointHelper",null);f(this,"pointDomHelper",null);f(this,"state",{enabled:!1,visible:!0});f(this,"group",new E.Group);f(this,"show",()=>{this.state.visible||(this.state.visible=!0,this.pointHelper.visible=!0,this.pointDomHelper.enable(),this.magnifier.show(),this.five.needsRender=!0)});f(this,"hide",()=>{this.state.visible&&(this.state.visible=!1,this.pointHelper.visible=!1,this.pointDomHelper.disable(),this.magnifier.hide(),this.five.needsRender=!0)});f(this,"updateWithIntersect",(t,e={emitEvent:!0})=>{var s;this.abortUpdateMagnifier(),this.position=t,e.emitEvent&&this.hooks.emit("intersectionUpdate",t),this.pointHelper.updateWithIntersect(t),(s=this.pointDomHelper)==null||s.updateWithIntersect(t);const i=()=>this.magnifier.renderWithPoint(t.point);this.abortUpdateMagnifier=()=>this.five.off("renderFrame",i),this.five.once("renderFrame",i),this.five.needsRender=!0});f(this,"abortUpdateMagnifier",()=>{});var i;this.five=t,this.magnifier=(e==null?void 0:e.magnifier)!==void 0?e.magnifier:new ga(t,(i=e==null?void 0:e.magnifierParams)!=null?i:{dragEnabled:!0}),this.pointHelper=(e==null?void 0:e.pointHelper)!==void 0?e.pointHelper:new Ih,this.pointDomHelper=(e==null?void 0:e.pointDomHelper)!==void 0?e.pointDomHelper:new Eh(t),this.group.name="five-point-selector",this.five.scene.add(this.group),this.magnifier.appendTo(document.body)}enable(){var t,e;this.state.enabled||(this.state.enabled=!0,this.pointHelper&&this.group.add(this.pointHelper),(t=this.magnifier)==null||t.enable(),(e=this.pointDomHelper)==null||e.enable(),this.five.needsRender=!0,this.hooks.emit("enabled"))}disable(){var t,e;this.state.enabled&&(this.state.enabled=!1,this.pointHelper&&this.group.remove(this.pointHelper),(t=this.magnifier)==null||t.disable(),(e=this.pointDomHelper)==null||e.disable(),this.hooks.emit("disabled"))}dispose(){this.hooks.off(),this.disable(),this.magnifier=null,this.pointHelper=null,this.pointDomHelper=null}}function kh(n){return!ni(n)}function ni(n){return n!=null}function xh(n){return/^https?:\/\/|^\/\//.test(n)||/^data:/.test(n)}function pa(n,t){return xh(t)?t:`${n}${t}`}class fn extends Ao{constructor(){super(...arguments);f(this,"disposeMethods",[]);f(this,"animationFrameDisposer");f(this,"onDispose",e=>(this.disposeMethods.push(e),this));f(this,"play",()=>{var e;return this.start(0),(e=this.animationFrameDisposer)==null||e.call(this),this.animationFrameDisposer=In(i=>this.update(i)),this});f(this,"stop",()=>{var e;return super.stop(),(e=this.animationFrameDisposer)==null||e.call(this),this});f(this,"dispose",()=>{var e;this.stop(),(e=this.animationFrameDisposer)==null||e.call(this),this.disposeMethods.forEach(i=>i()),this.disposeMethods=[],gh(this)})}}function vo(n,t=Lt.Linear.None){const e=new fn({progress:0}).to({progress:1});return n!==void 0&&e.duration(n),t!==void 0&&e.easing(t),e}const os=window.requestAnimationFrame||(n=>setTimeout(n,16)),hm=window.cancelAnimationFrame||clearTimeout;function bo(n,t=0){t<=0?os(n):os(()=>bo(n,t-1))}function In(n,t=60){let e=-1,i=0,s=-1;const o=1e3/t;function r(a){s===-1&&(s=a),e=os(r),!(a-i<o)&&(i=a,n==null||n(a-s))}return e=os(r),function(){hm(e)}}function um(){const n=Date.now();return new Promise(t=>{os(()=>{t(Date.now()-n)})})}const fm=Object.freeze(Object.defineProperty({__proto__:null,BetterTween:fn,Interval:Ur,Magnifier:ga,PointDomHelper:Eh,PointHelper:Ih,PointSelectorHelper:Mh,Rectangle:$f,absoluteUrl:pa,getCoordsFromClient:tm,getCoordsFromElement:wh,getFrameTime:um,getIntersectFromRelativePosition:Ch,getRaycasterFromFivePointer:im,isAbsoluteURL:xh,isModelLike:yh,isNil:kh,isPanoramaLike:ma,nextFrame:bo,notNil:ni,requestAnimationFrameInterval:In,tweenProgress:vo,uuid:lt},Symbol.toStringTag,{value:"Module"})),Dh="v2.0.1",Cr=`CSS3DRenderPlugin@${Dh}`;let mm=class extends un{constructor(e){super();f(this,"five");f(this,"behindFiveContainer");f(this,"VERSION",Dh);f(this,"staticPrefix","//vr-image-4.realsee-cdn.cn");f(this,"create3DDomContainer",(e,i)=>{if(this.state.disposed)return;const s=(()=>{var h;(i==null?void 0:i.dpr)!==void 0&&console.warn(`${Cr}: please use "config.devicePixelRatio" replace "config.dpr"`);const d={ratio:.00216,devicePixelRatio:(h=i==null?void 0:i.dpr)!=null?h:1,mode:"front",autoRender:!0};return Object.assign(d,i,(i==null?void 0:i.mode)==="behind"?{scene:this.five.scene}:void 0)})(),o=this.five.getElement();if(!o){console.error(`${Cr}: five.getElement() is ${o}`);return}const{autoRender:r}=s;s.mode==="behind"&&s.behindFiveContainer&&(this.behindFiveContainer=s.behindFiveContainer);const a=this.create3DElement(this.five.camera,e,ve(G({},s),{autoRender:!1}));if(!a)return;const l=()=>{const d=a.css3DObject.mode==="front"?o.parentElement:this.getBehindFiveElement();if(!d)return console.error(`${Cr}: wrapper is ${d}`);a.appendToElement(d),a.render()},c=()=>{a.css3DObject.mode==="front"&&l(),a.css3DObject.mode==="behind"&&vh(this.five).then(()=>l())};return r&&c(),ve(G({},a),{render:r?void 0:c})});this.five=e}disposeAll(){return this.dispose()}setState(...e){const i=super.setState(...e);return this.five.needsRender=!0,i}getBehindFiveElement(){return this.behindFiveContainer?this.behindFiveContainer:(this.behindFiveContainer=bh(this.five),this.behindFiveContainer)}absoluteUrl(e){return pa(this.staticPrefix,e)}};const Aa=n=>new mm(n),yo=Aa;function Ir(n,t,e=new R.Vector3(1,1,1),i=!1){const s=new hh.Line(n,t);return s.setMaterial({dashed:i,color:e,linewidth:1}),s.remove(s.points),s}const gm=n=>{const t={intersection:null,disposers:[]},e=d=>{t.intersection=d},i=()=>{t.intersection=null};n.on("modelLoaded",()=>{n.on("intersectionOnModelUpdate",e),n.on("intersectionHidden",i)}),n.on("dispose",()=>{n.off("intersectionOnModelUpdate",e),n.off("intersectionHidden",i)});const s=(d,h=2,u=.1)=>{const m=h/2,p=c(d,u),g=new R.Group;g.add(Ir(new R.Vector3(p.x+m,p.y,p.z),new R.Vector3(p.x-m,p.y,p.z),new R.Vector3(1,0,0)),Ir(new R.Vector3(p.x,p.y+m,p.z),new R.Vector3(p.x,p.y-m,p.z),new R.Vector3(0,1,0)),Ir(new R.Vector3(p.x,p.y,p.z+m),new R.Vector3(p.x,p.y,p.z-m),new R.Vector3(0,0,1))),n.scene.add(g),n.needsRender=!0;const v=()=>{n.scene.remove(g)};return t.disposers.push(v),{clear:v,pointAxesHelperMesh:g}},o=(d,h=0)=>{var v,y;const u=(v=n==null?void 0:n.camera)==null?void 0:v.position;if(!u)return!1;const m=d.distanceTo(u),A=d.sub(u).normalize(),p=new R.Raycaster(u,A),g=(y=n.model.intersectRaycaster(p))==null?void 0:y[0];return!(g&&g.distance+h<m)},r=()=>t.intersection,a=()=>{var d,h;(h=(d=t.disposers)==null?void 0:d.forEach)==null||h.call(d,u=>u==null?void 0:u()),n.off("intersectionOnModelUpdate",e),n.off("intersectionHidden",i)},l=a,c=(d,h)=>{const u=d.clone();return n.camera.position.clone().sub(u).setLength(h).add(u)};return{intersection:r,pointAxesHelper:s,movePointTowardsCamera:c,destroy:a,dispose:l,canSeePoint:o}};function q(){}const ti=n=>n;function tt(n,t){for(const e in t)n[e]=t[e];return n}function pm(n){return!!n&&(typeof n=="object"||typeof n=="function")&&typeof n.then=="function"}function Sh(n){return n()}function al(){return Object.create(null)}function qe(n){n.forEach(Sh)}function si(n){return typeof n=="function"}function oe(n,t){return n!=n?t==t:n!==t||n&&typeof n=="object"||typeof n=="function"}let Ts;function kt(n,t){return n===t?!0:(Ts||(Ts=document.createElement("a")),Ts.href=t,n===Ts.href)}function Am(n){return Object.keys(n).length===0}function Pn(n,t,e,i){if(n){const s=Th(n,t,e,i);return n[0](s)}}function Th(n,t,e,i){return n[1]&&i?tt(e.ctx.slice(),n[1](i(t))):e.ctx}function En(n,t,e,i){if(n[2]&&i){const s=n[2](i(e));if(t.dirty===void 0)return s;if(typeof s=="object"){const o=[],r=Math.max(t.dirty.length,s.length);for(let a=0;a<r;a+=1)o[a]=t.dirty[a]|s[a];return o}return t.dirty|s}return t.dirty}function Mn(n,t,e,i,s,o){if(s){const r=Th(t,e,i,o);n.p(r,s)}}function kn(n){if(n.ctx.length>32){const t=[],e=n.ctx.length/32;for(let i=0;i<e;i++)t[i]=-1;return t}return-1}function Qe(n){return n==null?"":n}function ei(n){return n&&si(n.destroy)?n.destroy:q}function ll(n){const t=typeof n=="string"&&n.match(/^\s*(-?[\d.]+)([^\s]*)\s*$/);return t?[parseFloat(t[1]),t[2]||"px"]:[n,"px"]}const Lh=typeof window!="undefined";let va=Lh?()=>window.performance.now():()=>Date.now(),ba=Lh?n=>requestAnimationFrame(n):q;const ln=new Set;function jh(n){ln.forEach(t=>{t.c(n)||(ln.delete(t),t.f())}),ln.size!==0&&ba(jh)}function ya(n){let t;return ln.size===0&&ba(jh),{promise:new Promise(e=>{ln.add(t={c:n,f:e})}),abort(){ln.delete(t)}}}const vm=typeof window!="undefined"?window:typeof globalThis!="undefined"?globalThis:global;function x(n,t){n.appendChild(t)}function ue(n,t,e){const i=wa(n);if(!i.getElementById(t)){const s=D("style");s.id=t,s.textContent=e,zh(i,s)}}function wa(n){if(!n)return document;const t=n.getRootNode?n.getRootNode():n.ownerDocument;return t&&t.host?t:n.ownerDocument}function bm(n){const t=D("style");return t.textContent="/* empty */",zh(wa(n),t),t.sheet}function zh(n,t){return x(n.head||n,t),t.sheet}function O(n,t,e){n.insertBefore(t,e||null)}function z(n){n.parentNode&&n.parentNode.removeChild(n)}function jt(n,t){for(let e=0;e<n.length;e+=1)n[e]&&n[e].d(t)}function D(n){return document.createElement(n)}function Be(n){return document.createElementNS("http://www.w3.org/2000/svg",n)}function xe(n){return document.createTextNode(n)}function $(){return xe(" ")}function Ee(){return xe("")}function be(n,t,e,i){return n.addEventListener(t,e,i),()=>n.removeEventListener(t,e,i)}function Oh(n){return function(t){return t.stopPropagation(),n.call(this,t)}}function w(n,t,e){e==null?n.removeAttribute(t):n.getAttribute(t)!==e&&n.setAttribute(t,e)}function ym(n){return Array.from(n.childNodes)}function Se(n,t){t=""+t,n.data!==t&&(n.data=t)}function j(n,t,e,i){e==null?n.style.removeProperty(t):n.style.setProperty(t,e,i?"important":"")}let Ls;function wm(){if(Ls===void 0){Ls=!1;try{typeof window!="undefined"&&window.parent&&window.parent.document}catch(n){Ls=!0}}return Ls}function wo(n,t){getComputedStyle(n).position==="static"&&(n.style.position="relative");const i=D("iframe");i.setAttribute("style","display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; border: 0; opacity: 0; pointer-events: none; z-index: -1;"),i.setAttribute("aria-hidden","true"),i.tabIndex=-1;const s=wm();let o;return s?(i.src="data:text/html,<script>onresize=function(){parent.postMessage(0,'*')}<\/script>",o=be(window,"message",r=>{r.source===i.contentWindow&&t()})):(i.src="about:blank",i.onload=()=>{o=be(i.contentWindow,"resize",t),t()}),x(n,i),()=>{(s||o&&i.contentWindow)&&o(),z(i)}}function K(n,t,e){n.classList.toggle(t,!!e)}function Bh(n,t,{bubbles:e=!1,cancelable:i=!1}={}){return new CustomEvent(n,{detail:t,bubbles:e,cancelable:i})}class $s{constructor(t=!1){f(this,"is_svg",!1);f(this,"e");f(this,"n");f(this,"t");f(this,"a");this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,e,i=null){this.e||(this.is_svg?this.e=Be(e.nodeName):this.e=D(e.nodeType===11?"TEMPLATE":e.nodeName),this.t=e.tagName!=="TEMPLATE"?e:e.content,this.c(t)),this.i(i)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.nodeName==="TEMPLATE"?this.e.content.childNodes:this.e.childNodes)}i(t){for(let e=0;e<this.n.length;e+=1)O(this.t,this.n[e],t)}p(t){this.d(),this.h(t),this.i(this.a)}d(){this.n.forEach(z)}}const eo=new Map;let to=0;function Cm(n){let t=5381,e=n.length;for(;e--;)t=(t<<5)-t^n.charCodeAt(e);return t>>>0}function Im(n,t){const e={stylesheet:bm(t),rules:{}};return eo.set(n,e),e}function io(n,t,e,i,s,o,r,a=0){const l=16.666/i;let c=`{
178
178
  `;for(let g=0;g<=1;g+=l){const v=t+(e-t)*o(g);c+=g*100+`%{${r(v,1-v)}}
179
179
  `}const d=c+`100% {${r(e,1-e)}}
180
- }`,h=`__svelte_${Cm(d)}_${a}`,u=wa(n),{stylesheet:m,rules:A}=$s.get(u)||Im(u,n);A[h]||(A[h]=!0,m.insertRule(`@keyframes ${h} ${d}`,m.cssRules.length));const p=n.style.animation||"";return n.style.animation=`${p?`${p}, `:""}${h} ${i}ms linear ${s}ms 1 both`,eo+=1,h}function io(n,t){const e=(n.style.animation||"").split(", "),i=e.filter(t?o=>o.indexOf(t)<0:o=>o.indexOf("__svelte")===-1),s=e.length-i.length;s&&(n.style.animation=i.join(", "),eo-=s,eo||Pm())}function Pm(){ba(()=>{eo||($s.forEach(n=>{const{ownerNode:t}=n.stylesheet;t&&O(t)}),$s.clear())})}let rs;function $t(n){rs=n}function vi(){if(!rs)throw new Error("Function called outside component initialization");return rs}function Vh(n){vi().$$.before_update.push(n)}function bt(n){vi().$$.on_mount.push(n)}function Rh(n){vi().$$.after_update.push(n)}function zt(n){vi().$$.on_destroy.push(n)}function wo(){const n=vi();return(t,e,{cancelable:i=!1}={})=>{const s=n.$$.callbacks[t];if(s){const o=Bh(t,e,{cancelable:i});return s.slice().forEach(r=>{r.call(n,o)}),!o.defaultPrevented}return!0}}function Xr(n,t){return vi().$$.context.set(n,t),t}function fi(n){return vi().$$.context.get(n)}function xn(n,t){const e=n.$$.callbacks[t.type];e&&e.slice().forEach(i=>i.call(this,t))}const tn=[],Ge=[];let cn=[];const Zr=[],Qh=Promise.resolve();let Jr=!1;function Gh(){Jr||(Jr=!0,Qh.then(Ia))}function cl(){return Gh(),Qh}function He(n){cn.push(n)}function Ca(n){Zr.push(n)}const Ir=new Set;let Ji=0;function Ia(){if(Ji!==0)return;const n=rs;do{try{for(;Ji<tn.length;){const t=tn[Ji];Ji++,$t(t),Em(t.$$)}}catch(t){throw tn.length=0,Ji=0,t}for($t(null),tn.length=0,Ji=0;Ge.length;)Ge.pop()();for(let t=0;t<cn.length;t+=1){const e=cn[t];Ir.has(e)||(Ir.add(e),e())}cn.length=0}while(tn.length);for(;Zr.length;)Zr.pop()();Jr=!1,Ir.clear(),$t(n)}function Em(n){if(n.fragment!==null){n.update(),qe(n.before_update);const t=n.dirty;n.dirty=[-1],n.fragment&&n.fragment.p(n.ctx,t),n.after_update.forEach(He)}}function Mm(n){const t=[],e=[];cn.forEach(i=>n.indexOf(i)===-1?t.push(i):e.push(i)),e.forEach(i=>i()),cn=t}let Yn;function Pa(){return Yn||(Yn=Promise.resolve(),Yn.then(()=>{Yn=null})),Yn}function Li(n,t,e){n.dispatchEvent(Bh(`${t?"intro":"outro"}${e}`))}const Ys=new Set;let Nt;function de(){Nt={r:0,c:[],p:Nt}}function he(){Nt.r||qe(Nt.c),Nt=Nt.p}function k(n,t){n&&n.i&&(Ys.delete(n),n.i(t))}function j(n,t,e,i){if(n&&n.o){if(Ys.has(n))return;Ys.add(n),Nt.c.push(()=>{Ys.delete(n),i&&(e&&n.d(1),i())}),n.o(t)}else i&&i()}const Ea={duration:0};function Vi(n,t,e){const i={direction:"in"};let s=t(n,e,i),o=!1,r,a,l=0;function c(){r&&io(n,r)}function d(){const{delay:u=0,duration:m=300,easing:A=ti,tick:p=q,css:g}=s||Ea;g&&(r=to(n,0,1,m,u,A,g,l++)),p(0,1);const v=va()+u,y=v+m;a&&a.abort(),o=!0,He(()=>Li(n,!0,"start")),a=ya(I=>{if(o){if(I>=y)return p(1,0),Li(n,!0,"end"),c(),o=!1;if(I>=v){const M=A((I-v)/m);p(M,1-M)}}return o})}let h=!1;return{start(){h||(h=!0,io(n),si(s)?(s=s(i),Pa().then(d)):d())},invalidate(){h=!1},end(){o&&(c(),o=!1)}}}function Dn(n,t,e){const i={direction:"out"};let s=t(n,e,i),o=!0,r;const a=Nt;a.r+=1;let l;function c(){const{delay:d=0,duration:h=300,easing:u=ti,tick:m=q,css:A}=s||Ea;A&&(r=to(n,1,0,h,d,u,A));const p=va()+d,g=p+h;He(()=>Li(n,!1,"start")),"inert"in n&&(l=n.inert,n.inert=!0),ya(v=>{if(o){if(v>=g)return m(0,1),Li(n,!1,"end"),--a.r||qe(a.c),!1;if(v>=p){const y=u((v-p)/h);m(1-y,y)}}return o})}return si(s)?Pa().then(()=>{s=s(i),c()}):c(),{end(d){d&&"inert"in n&&(n.inert=l),d&&s.tick&&s.tick(1,0),o&&(r&&io(n,r),o=!1)}}}function Ft(n,t,e,i){let o=t(n,e,{direction:"both"}),r=i?0:1,a=null,l=null,c=null,d;function h(){c&&io(n,c)}function u(A,p){const g=A.b-r;return p*=Math.abs(g),{a:r,b:A.b,d:g,duration:p,start:A.start,end:A.start+p,group:A.group}}function m(A){const{delay:p=0,duration:g=300,easing:v=ti,tick:y=q,css:I}=o||Ea,M={start:va()+p,b:A};A||(M.group=Nt,Nt.r+=1),"inert"in n&&(A?d!==void 0&&(n.inert=d):(d=n.inert,n.inert=!0)),a||l?l=M:(I&&(h(),c=to(n,r,A,g,p,v,I)),A&&y(0,1),a=u(M,g),He(()=>Li(n,A,"start")),ya(D=>{if(l&&D>l.start&&(a=u(l,g),l=null,Li(n,a.b,"start"),I&&(h(),c=to(n,r,a.b,a.duration,0,v,o.css))),a){if(D>=a.end)y(r=a.b,1-r),Li(n,a.b,"end"),l||(a.b?h():--a.group.r||qe(a.group.c)),a=null;else if(D>=a.start){const P=D-a.start;r=a.a+a.d*v(P/a.duration),y(r,1-r)}}return!!(a||l)}))}return{run(A){si(o)?Pa().then(()=>{o=o({direction:A?"in":"out"}),m(A)}):m(A)},end(){h(),a=l=null}}}function no(n,t){const e=t.token={};function i(s,o,r,a){if(t.token!==e)return;t.resolved=a;let l=t.ctx;r!==void 0&&(l=l.slice(),l[r]=a);const c=s&&(t.current=s)(l);let d=!1;t.block&&(t.blocks?t.blocks.forEach((h,u)=>{u!==o&&h&&(de(),j(h,1,1,()=>{t.blocks[u]===h&&(t.blocks[u]=null)}),he())}):t.block.d(1),c.c(),k(c,1),c.m(t.mount(),t.anchor),d=!0),t.block=c,t.blocks&&(t.blocks[o]=c),d&&Ia()}if(pm(n)){const s=vi();if(n.then(o=>{$t(s),i(t.then,1,t.value,o),$t(null)},o=>{if($t(s),i(t.catch,2,t.error,o),$t(null),!t.hasCatch)throw o}),t.current!==t.pending)return i(t.pending,0),!0}else{if(t.current!==t.then)return i(t.then,1,t.value,n),!0;t.resolved=n}}function Nh(n,t,e){const i=t.slice(),{resolved:s}=n;n.current===n.then&&(i[n.value]=s),n.current===n.catch&&(i[n.error]=s),n.block.p(i,e)}function Pe(n){return(n==null?void 0:n.length)!==void 0?n:Array.from(n)}function Ma(n,t){n.d(1),t.delete(n.key)}function bi(n,t){j(n,1,1,()=>{t.delete(n.key)})}function Ot(n,t,e,i,s,o,r,a,l,c,d,h){let u=n.length,m=o.length,A=u;const p={};for(;A--;)p[n[A].key]=A;const g=[],v=new Map,y=new Map,I=[];for(A=m;A--;){const V=h(s,o,A),L=e(V);let X=r.get(L);X?i&&I.push(()=>X.p(V,t)):(X=c(L,V),X.c()),v.set(L,g[A]=X),L in p&&y.set(L,Math.abs(A-p[L]))}const M=new Set,D=new Set;function P(V){k(V,1),V.m(a,d),r.set(V.key,V),d=V.first,m--}for(;u&&m;){const V=g[m-1],L=n[u-1],X=V.key,U=L.key;V===L?(d=V.first,u--,m--):v.has(U)?!r.has(X)||M.has(X)?P(V):D.has(U)?u--:y.get(X)>y.get(U)?(D.add(X),P(V)):(M.add(U),u--):(l(L,r),u--)}for(;u--;){const V=n[u];v.has(V.key)||l(V,r)}for(;m;)P(g[m-1]);return qe(I),g}function ct(n,t){const e={},i={},s={$$scope:1};let o=n.length;for(;o--;){const r=n[o],a=t[o];if(a){for(const l in r)l in a||(i[l]=1);for(const l in a)s[l]||(e[l]=a[l],s[l]=1);n[o]=a}else for(const l in r)s[l]=1}for(const r in i)r in e||(e[r]=void 0);return e}function Hh(n){return typeof n=="object"&&n!==null?n:{}}function ka(n,t,e){const i=n.$$.props[t];i!==void 0&&(n.$$.bound[i]=e,e(n.$$.ctx[i]))}function ne(n){n&&n.c()}function te(n,t,e){const{fragment:i,after_update:s}=n.$$;i&&i.m(t,e),He(()=>{const o=n.$$.on_mount.map(Sh).filter(si);n.$$.on_destroy?n.$$.on_destroy.push(...o):qe(o),n.$$.on_mount=[]}),s.forEach(He)}function ie(n,t){const e=n.$$;e.fragment!==null&&(Mm(e.after_update),qe(e.on_destroy),e.fragment&&e.fragment.d(t),e.on_destroy=e.fragment=null,e.ctx=[])}function km(n,t){n.$$.dirty[0]===-1&&(tn.push(n),Gh(),n.$$.dirty.fill(0)),n.$$.dirty[t/31|0]|=1<<t%31}function ae(n,t,e,i,s,o,r,a=[-1]){const l=rs;$t(n);const c=n.$$={fragment:null,ctx:[],props:o,update:q,not_equal:s,bound:al(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(t.context||(l?l.$$.context:[])),callbacks:al(),dirty:a,skip_bound:!1,root:t.target||l.$$.root};r&&r(c.root);let d=!1;if(c.ctx=e?e(n,t.props||{},(h,u,...m)=>{const A=m.length?m[0]:u;return c.ctx&&s(c.ctx[h],c.ctx[h]=A)&&(!c.skip_bound&&c.bound[h]&&c.bound[h](A),d&&km(n,h)),u}):[],c.update(),d=!0,qe(c.before_update),c.fragment=i?i(c.ctx):!1,t.target){if(t.hydrate){const h=ym(t.target);c.fragment&&c.fragment.l(h),h.forEach(O)}else c.fragment&&c.fragment.c();t.intro&&k(n.$$.fragment),te(n,t.target,t.anchor),Ia()}$t(l)}class le{constructor(){f(this,"$$");f(this,"$$set")}$destroy(){ie(this,1),this.$destroy=q}$on(t,e){if(!si(e))return q;const i=this.$$.callbacks[t]||(this.$$.callbacks[t]=[]);return i.push(e),()=>{const s=i.indexOf(e);s!==-1&&i.splice(s,1)}}$set(t){this.$$set&&!Am(t)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}}const xm="4";typeof window!="undefined"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(xm);const Dm="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAAA8CAYAAACZ1L+0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAYKADAAQAAAABAAAAPAAAAABU0H2EAAARRElEQVR4Ad2czY9cRZbFq1yFoQGDNCzwuAENohl54dkgdrNh34tZ8GciFi31nwEsmAEhhAWD1GMJCZgx5sMfUHN+J+NE3XfrZWWVcVVLHVLmuXG/74148V5m2bm/N8bR0dH+Bx988Po333zzbz///PONg4ODa+I9I9y/cuXKgV77h4eH+1KH3hP/yv7+vuBAsG+5UCIpCkMzDQ962Eu80Q1P/KmHT82v8IocZFL4pslDvL3fNARHoPI2wtbrV1jBIf9N8SEZ0UUP2wFHv2ocSc/2ouEz8PVooJXQ0/j10aNHoH2Idj4PHz4k1n29/k+5/u3ll1/+r7fffvtLzfGzd8ibjK6+9957f5ajf1XzH9y7d+8Xjf9FRs1SdvNBBg2SDQ1xh9ALH4yN0M2BNZrKwtFc9Fmkquuma5HJBzvLiIONBnx40B7QIzTdxCcNwj3dYlEoUmabAU+UFZDpxah22Ng2NjQXH0LrwccGwyEzXfWhWQwSYQHYuFevXj14/vnn37h79+7Nr7766gup/FX5PnAj33///f/46aef3vj444/vfPbZZz9IYGMcnDbkhEYQL001Hfsu775i+7j6LID6cDQWYo8mabGMxOr+e/ye3y7989p3/9jfvHnz2q1bt25oMb549913/3Lwzjvv/Mu3337775988smdzz///AcVQ+IecsAOp8OOHRpkiJniWQnrBJmwc7EF8atxBA2ihx/obf7Qqa+un+aDI0f7k08nU+PLj3PBR+qpcvFdd3BNP7YgI7mnHqHzBRndv1hH33///QNtlAcvvfTSq999992dQzFu/vjjj/c//fTTu1z+unT2wDFoHN13QbVg5CQS3tBfQGwHoo+chltPto4FMsR3nKCZ7a3KyDM+UOOyHzV4xxAHOTjGqfVcVv23b9++++abb/4TvT+8f//+dS3ALzqj3MxgMq6IjAUC4as4CrbdmLtA8S2vttA0D5vSxNBnOvLwK1vO4K3+FSY+Z/Ol71RiC8JI7iBzcrus+nWfvf/iiy/+86Eux2u6JO6RQBoTFCvFOGEKkcyFRZ+kt+kP/pRHF9xiD3uOrs8OFW9eoaFBxorcsfGDvOdTeJCRTxQruT/x+rXxH6nvzx1qRx+I4FHJQZxJeat8CqCY0vCarG+AnK86++whdDlzeQrZKieWhmCTC3GgEy+x01DiKHfuK6vxYhfcYj/zKWVPMrnAwE98RCG+mZPHafVVOX71hPRUHkOpnMe9+SSBQ5wpgJF5mlGTgp+R5oHwhj/7Za7kzQMZ8RPsBaZYEH3k6KbotfySQ/Tjg7lsXQ/IQFc5Chb5zgUR/8LqJyi99QJA0CySFc4znUTFm3d2Cq8FuYryFhk42HLh3bz1zI4N+qGLvXkJMXKcDer6yE+7IuInuObvMusn/iHNz4DBqoMM0W4gyJxmsgijqSfkyNALdv3YRl51oXfFP4u+fCjd43xTQ/wLtx5Zu+L3euI78VJXsOvX+hXrijbL3qEIP1lEObuKhENnR+IgvDU5vD7wGx4Fyn4ucHzFfy8I2/Dio2JkIPyu3+XEp2iQ0ePvqm+X3E7b27b64ZPHYRrCE0R/jq68kfB80mBOQhWhTxu9YHTTfOi+QGLZf7Dbd/3UAjK6PDwL9dafmi6zfm0Ob8xDVkIJs7O5ErxDQQaFhMdctHVB5o8xfLXJzo0dC1wfKxefK1b8L+xHHuGhHjobgzzDO+Fu1Dw/V6RWkHGR9avv5LW5CRNs7Aaf8Qq82mAZUNh8CkEPXvRDDz3cLob4zB0YAjvF3Wrf/fcdK3nyxt2k0WNoR/MlopG54i820Iq/RT3Y1DHqemL1cxX4JkxiXAkECBK4N6Ams0ZjCz+Y8xZkcCSEx3xXPOTJAf3kFv/dfkWOja9i7ImvMW/ChXbe3V9igxjuGskrmFrX6lcsP+FwBPn40WJAsihGgvWEkIe3JpetiwUZTz31lBsOMihE9NzxZpY3GoTtaNSk40/ooyXY84UfHm57fHjKH/DoDYotiEJqBZnDD29NTp74Bxk9fq8f3XwOIHM7z6rbw+bNwcc8tDG6YNGvpNxu/xwwZPOKobj4xEnobf536cvOVwDI6PrJLXl0uY3U94FA6CdSvxbKR5C3DcFJJFiCTrLvmJ4w9hr2g5Fo72aQgX7Fy9ZX7Bw/Z9rh5FrHk6yfJnGlH1+PilQbVOkkUXnQNDAIjV4wNhUjA3nFFqx05B2zuGClo9fj4xNe/IcG18Yu/S6vNUDjM7jmPzJwvPb5HCB6NoTLnoRjn0e41UuOhKTvRsagouSLpw49lXAu8ue6qjbpWuBkniScC2zyrPn253hkqs06Q3+Rb3IH1/yJd6H1c0XxFDSPIAVMM50QSdXRG4St5EmSQk2D1S70sE8MGriwj942PK//7mclXnJPvsntwuvX8cPfyTdfRSRRGqQifckO3lkSig4moV1Ab3iX94aOZ/bFB7ORk/2tPLfPZ/+R7wJoeGIg6PmkVjDy8Mxo9QzehO5PgvPUzx/19w71xqOhX3jm0akOjqfM04wR2OxKR28bsuLckEGGbH1EgAwVf64PZvgh/23+5JIdjuvVI7Q/JqJ4WfVrM/km7A9iKtw3tVHQbBDNogCQwWJoLjheFAvGW2QgrNGYc/09IDGwD5143f9afuJJfZNfaDD5YJMFgy9acCxnVxb5hdVPUNWz+RxAQF7sQKFvVKMBvoGpIKa+hNFJg80sb5GBg51mbBwUXUj8xIZ56GLvRUDGGDnOBj2G/vSxzd8l1/+P9/cAdn92dF8gFrAeWdLzgoBZkPCY46f6g85VuCbPxgx2/diCel1Rfnv+KgLFKCdpAoQG1wJikySRrw10wt+1g+MLxGaX/136tWD8Sf/EkRIfyNFPzcxDX0T9o9/H34YmYMXxVMKNEbaPIyVpNGPc3ESvHjFDZ0IvCEGKg+4LJFb8Grt915d8+tjiD/YcXT+5BC+yfi28Nyb/LKV+DpjJQZBgbbjoxWMdH6hGkrYLnQVbONtM+nP3QgX/YkRnIRuTyLwgK/qnynu+sl/s+B7wIuvXFeAa+JOkdw1NY+WTVE+GueQuEGQuGy8IyBxbaJB5H6MgirZIeosFHXbTXnqLfEaO9XPCqZ8DkmdwJd+5yUiox1vJ/4nXf66/B+xqAOcaSQfzSAcy1OBFwbsajjxNwT40OPwt5OJl8SxHpw42m8b83FDo6Y/cR14n4j3J+hWDmJvvglTQiS+3yJREakKhwTU5x5ps5ueG0CADu3Hi2R59mgIyQo9GmR8ecvKpuCsfdOsgTnKq/NA9P+IlBjqhQeZd3v0nFsjATkOw+YM8vMXfAyIEEVK8du/8ICVWjhZj35HY1NH9VRl0CglSUHwiDw0y7+NJ6/d8L7p+5X/y7wFJgmI5OrjscoTsagCNrPaiafLc4bI/1wLSYGIG1/yfdoX0BcxCBvsCdv8XWb9iubbN8+XoLAkRNAWLnfMwRwZ2bjIm0OiCw8Xc1ZlXjG30Y5t48MOrdqGzuCC87q/L9b2O6wHR7wsi/XnsISf2ZdVP7nrtLz6IKUHvWDAJJWnmocE1Obw6uj4yAkeH3SsdN2Hw3CjUorOCUxZbkBHfQfiiHQM5DRYvm+pEPefV7/6IUUdigeEnt8z974LE5PFqPmKJtgEJ5c6PAToN0bMdfOlPH8z76AmPONO+P6cTOzx8df/JDVyTm1neejyJEjt1LR6LL7h+paMv47QL544Sgx0yG60Es1vmCpZ6TjSEAtOkoXeiwFL0CXv95wg3HGTI1+I/TKw0fLFBbFTeej7UJ3Fqwn+uCltdZv3qu8Jrg+vMIyG/uFxF+7JNHfWSGQnOAtDVoMlWt8PNBzrPdzVsRX6uvwcQRDHn5uj+JE5u3mTopgZsyZuck/9l1q+4zm3+PYDEuCmRDJgEw2POYqBXF8WK4y0yMPxK54kFHCMfihyw2/d4XR4nwa6v3J0riE6P3+WpFWQonnsBMrp/M8vbWn7wolLji08vl1/GESBJxagizrKLKj90ZCC8+AKjU7H76/boklNsKEA686b9GPq2xcfa+DvU73uAk6I4VoTkQIZon+Egc/FphnnMV+TRCy7uCV0fHywCyOhHyC79jdXxO75kM4/I0GD866a+9dtd6pbupdSvWJu/BygxN1Tz2SwlcaYGVpvjNiwpdJac41m3J254aIU+xUc2w8xXZuHhIrTlaS7I6P53xd8lt9P2ti13jhrJlkdQlINJMj7rGTZ4+Zpi7uLoriF+dZmnKVapsXb5J2nsQYy7Puzw1uQOWN66fnIJolrp+AbHeOz645cHaBdFYfG6DTHKLkCHT40kAzJCJ8EuT/O2xdrlv9uzEOERP3T8n9cfPk4bu/ydp/7kmK+js3MWBfVk0nwQmQJ6QUDm8MNjzpnOIoCMQfvjPvNe0C7/StpPJSCDHRwec9m7DnDMrYhf5skt+ca2+Lv0+t0ZdhJDiczHIBKuvFGAi1YBTCctPc9pKEQQvmjrDb5peAzioQsOuenYd3nPB3l4a/bw6hh559GXDWEaRK/7i28QOfaQT6J+Umdj5LsgYs9iErDySIDGYJQGhc4OQ+e0sWK/2LEUJl+zwNAgg3wqkmdyDD885n3gBxfFn+nhluae6m8lf/dC/pxXj9fn1Z5aefFJ2I2twjjk6NBjm/+bz3BGQMgEzCPf5hJoEfETv03kKTKIgviNT0Shz+Q/seIPB3X0fLp+l190/Sw494Bc9v57LkkosAvmi7B8P1MLCS3bxXP3SkE+guQzJosFFN8NBqNQEf/Mg12fBuEbHONU/+Q3/AUXC07d8ncp9XPlkotvwiN5ijEz2BOCnyaXQsyLjxSZecXYFp3YptE0JrxqGjqyVf2V/KIX7Efo/PBHgNQdvMj66YGOoH3+WYqLKk1JsTtvkr1gzjSONJCBT1a6+q40eoo/9WWyeK6OL5Ax/Edn2uKDEd9BM8tbzxe98IraJJM7CBP98JjHFmR+3vqxOXzmmWceaKU337CxGhqCTUVolIGMabAnhGgUb71iahI7fFf7FIFCb3j/18voiuemdd/Mu/+uE1sQWfeX3MBuyzx5B39P/fRcr4dcAT9p5bxl4zhIgNqgnlRkILKuf1654tIUCk2oLJYbQpr0ZqRrGt30C1tk4FnyQYccray31B3s9UQviG104IUGmZ8mH5v+3qF2w51nn332TzHCsI7KJzEVm6akEVuPhLWGhUeM0CAjvkHmxCM+uCYPD2R0f2Ilt7lB4tMGZ3i7qPqfe+65P6j3X1y5du3aZ3rSefrGjRsvkNxpI80AeTGC0NgGoakvuFYrtvDjD11okBF6m3yjdfze9eM7sbPQIC8sg8detlPdP7XCy8ASOh6IC534Qf126Au6Aq7S+0P9jOJ/f/jhh7dfeeWVN1C4c+cOv5zoxsQgKD7O/OgIT3OLgrrkLAMR9EuQYsXLlWO5ePNMJ25s7Fhv8EIraduDDOJI7kfh6FT98M6Ka/GrLbE0/131X79+/YVXX331+tNPP32b3nt1tGhXP/rooz/ruf9N/YzWQ/2e2c8Cfg7Wz8RC9WkeE8pj/rQltMRH/jXdsdreAEp04mg8u22zYhvZ9IPueLE4puMLfnjRKzKCbD4ZHv9oK/mwaPOlm/ukkbFwjKLj428j8t8DEEvN9xJoJuhsDI9lxOeHXr3zE8cGm7fpQMfNgR54ntXmYXzx1ltvbX64VUl4SH//66+/fl2/5ndLC/BHMV/Q6ypN06Bm3lgFaKMcEbj+bDHN88/curvewF4hjhNWasrwhy/0waIPjylyYjp49Ag++NhFhi7F+jeEFcc/H6w5TYbnxo2OoufXmNPcX+XWv4QLMo+taJkfeY4gvtRs/n8vzY/cssxB5CyKxi96/aB+/Y9+KfE/X3vttS8lI7e9/wfu514OAjYP0QAAAABJRU5ErkJggg==";function Sm(n){ue(n,"svelte-1d7uzh5",".room-label-item.svelte-1d7uzh5{position:absolute;font-size:0.5rem;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.room-label-item__text.svelte-1d7uzh5{position:absolute;left:0;top:-4rem;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center;height:1.25rem;min-width:2rem;padding:0 0.375rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap}.room-label-item__bar.svelte-1d7uzh5{position:absolute;top:-2.75rem;height:3rem;width:0.0625rem;background-image:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0))}.wide.svelte-1d7uzh5{font-size:0.625rem}")}function Tm(n){let t,e,i=n[0].name+"",s,o,r,a,l;return{c(){t=S("div"),e=S("span"),s=xe(i),o=$(),r=S("div"),w(e,"class","room-label-item__text svelte-1d7uzh5"),z(e,"background-image","url("+Dm+")"),K(e,"wide",n[0].name.length>3),w(r,"class","room-label-item__bar svelte-1d7uzh5"),w(t,"class","room-label-item svelte-1d7uzh5"),z(t,"z-index",n[0].zIndex),z(t,"transform",n[0].transform),z(t,"opacity",n[0].visible?1:0)},m(c,d){B(c,t,d),x(t,e),x(e,s),x(t,o),x(t,r),a||(l=be(e,"click",n[1]),a=!0)},p(c,[d]){d&1&&i!==(i=c[0].name+"")&&Se(s,i),d&1&&K(e,"wide",c[0].name.length>3),d&1&&z(t,"z-index",c[0].zIndex),d&1&&z(t,"transform",c[0].transform),d&1&&z(t,"opacity",c[0].visible?1:0)},i:q,o:q,d(c){c&&O(t),a=!1,l()}}}function Lm(n,t,e){let{five:i}=t,{roomLabel:s}=t;function o(){i.setState({panoIndex:s.panoIndex,mode:"Panorama",longitude:s.longitude})}return n.$$set=r=>{"five"in r&&e(2,i=r.five),"roomLabel"in r&&e(0,s=r.roomLabel)},[s,o,i]}class jm extends le{constructor(t){super(),ae(this,t,Lm,Tm,oe,{five:2,roomLabel:0},Sm)}}var _h=function(){if(typeof Map!="undefined")return Map;function n(t,e){var i=-1;return t.some(function(s,o){return s[0]===e?(i=o,!0):!1}),i}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(e){var i=n(this.__entries__,e),s=this.__entries__[i];return s&&s[1]},t.prototype.set=function(e,i){var s=n(this.__entries__,e);~s?this.__entries__[s][1]=i:this.__entries__.push([e,i])},t.prototype.delete=function(e){var i=this.__entries__,s=n(i,e);~s&&i.splice(s,1)},t.prototype.has=function(e){return!!~n(this.__entries__,e)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(e,i){i===void 0&&(i=null);for(var s=0,o=this.__entries__;s<o.length;s++){var r=o[s];e.call(i,r[1],r[0])}},t}()}(),qr=typeof window!="undefined"&&typeof document!="undefined"&&window.document===document,so=function(){return typeof global!="undefined"&&global.Math===Math?global:typeof self!="undefined"&&self.Math===Math?self:typeof window!="undefined"&&window.Math===Math?window:Function("return this")()}(),zm=function(){return typeof requestAnimationFrame=="function"?requestAnimationFrame.bind(so):function(n){return setTimeout(function(){return n(Date.now())},1e3/60)}}(),Om=2;function Bm(n,t){var e=!1,i=!1,s=0;function o(){e&&(e=!1,n()),i&&a()}function r(){zm(o)}function a(){var l=Date.now();if(e){if(l-s<Om)return;i=!0}else e=!0,i=!1,setTimeout(r,t);s=l}return a}var Vm=20,Rm=["top","right","bottom","left","width","height","size","weight"],Qm=typeof MutationObserver!="undefined",Gm=function(){function n(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=Bm(this.refresh.bind(this),Vm)}return n.prototype.addObserver=function(t){~this.observers_.indexOf(t)||this.observers_.push(t),this.connected_||this.connect_()},n.prototype.removeObserver=function(t){var e=this.observers_,i=e.indexOf(t);~i&&e.splice(i,1),!e.length&&this.connected_&&this.disconnect_()},n.prototype.refresh=function(){var t=this.updateObservers_();t&&this.refresh()},n.prototype.updateObservers_=function(){var t=this.observers_.filter(function(e){return e.gatherActive(),e.hasActive()});return t.forEach(function(e){return e.broadcastActive()}),t.length>0},n.prototype.connect_=function(){!qr||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),Qm?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},n.prototype.disconnect_=function(){!qr||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},n.prototype.onTransitionEnd_=function(t){var e=t.propertyName,i=e===void 0?"":e,s=Rm.some(function(o){return!!~i.indexOf(o)});s&&this.refresh()},n.getInstance=function(){return this.instance_||(this.instance_=new n),this.instance_},n.instance_=null,n}(),Fh=function(n,t){for(var e=0,i=Object.keys(t);e<i.length;e++){var s=i[e];Object.defineProperty(n,s,{value:t[s],enumerable:!1,writable:!1,configurable:!0})}return n},mn=function(n){var t=n&&n.ownerDocument&&n.ownerDocument.defaultView;return t||so},Wh=Co(0,0,0,0);function oo(n){return parseFloat(n)||0}function dl(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return t.reduce(function(i,s){var o=n["border-"+s+"-width"];return i+oo(o)},0)}function Nm(n){for(var t=["top","right","bottom","left"],e={},i=0,s=t;i<s.length;i++){var o=s[i],r=n["padding-"+o];e[o]=oo(r)}return e}function Hm(n){var t=n.getBBox();return Co(0,0,t.width,t.height)}function _m(n){var t=n.clientWidth,e=n.clientHeight;if(!t&&!e)return Wh;var i=mn(n).getComputedStyle(n),s=Nm(i),o=s.left+s.right,r=s.top+s.bottom,a=oo(i.width),l=oo(i.height);if(i.boxSizing==="border-box"&&(Math.round(a+o)!==t&&(a-=dl(i,"left","right")+o),Math.round(l+r)!==e&&(l-=dl(i,"top","bottom")+r)),!Wm(n)){var c=Math.round(a+o)-t,d=Math.round(l+r)-e;Math.abs(c)!==1&&(a-=c),Math.abs(d)!==1&&(l-=d)}return Co(s.left,s.top,a,l)}var Fm=function(){return typeof SVGGraphicsElement!="undefined"?function(n){return n instanceof mn(n).SVGGraphicsElement}:function(n){return n instanceof mn(n).SVGElement&&typeof n.getBBox=="function"}}();function Wm(n){return n===mn(n).document.documentElement}function Ym(n){return qr?Fm(n)?Hm(n):_m(n):Wh}function Um(n){var t=n.x,e=n.y,i=n.width,s=n.height,o=typeof DOMRectReadOnly!="undefined"?DOMRectReadOnly:Object,r=Object.create(o.prototype);return Fh(r,{x:t,y:e,width:i,height:s,top:e,right:t+i,bottom:s+e,left:t}),r}function Co(n,t,e,i){return{x:n,y:t,width:e,height:i}}var Xm=function(){function n(t){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=Co(0,0,0,0),this.target=t}return n.prototype.isActive=function(){var t=Ym(this.target);return this.contentRect_=t,t.width!==this.broadcastWidth||t.height!==this.broadcastHeight},n.prototype.broadcastRect=function(){var t=this.contentRect_;return this.broadcastWidth=t.width,this.broadcastHeight=t.height,t},n}(),Zm=function(){function n(t,e){var i=Um(e);Fh(this,{target:t,contentRect:i})}return n}(),Jm=function(){function n(t,e,i){if(this.activeObservations_=[],this.observations_=new _h,typeof t!="function")throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=t,this.controller_=e,this.callbackCtx_=i}return n.prototype.observe=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element=="undefined"||!(Element instanceof Object))){if(!(t instanceof mn(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)||(e.set(t,new Xm(t)),this.controller_.addObserver(this),this.controller_.refresh())}},n.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element=="undefined"||!(Element instanceof Object))){if(!(t instanceof mn(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)&&(e.delete(t),e.size||this.controller_.removeObserver(this))}},n.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},n.prototype.gatherActive=function(){var t=this;this.clearActive(),this.observations_.forEach(function(e){e.isActive()&&t.activeObservations_.push(e)})},n.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,e=this.activeObservations_.map(function(i){return new Zm(i.target,i.broadcastRect())});this.callback_.call(t,e,t),this.clearActive()}},n.prototype.clearActive=function(){this.activeObservations_.splice(0)},n.prototype.hasActive=function(){return this.activeObservations_.length>0},n}(),Yh=typeof WeakMap!="undefined"?new WeakMap:new _h,Uh=function(){function n(t){if(!(this instanceof n))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var e=Gm.getInstance(),i=new Jm(t,e,this);Yh.set(this,i)}return n}();["observe","unobserve","disconnect"].forEach(function(n){Uh.prototype[n]=function(){var t;return(t=Yh.get(this))[n].apply(t,arguments)}});var qm=function(){return typeof so.ResizeObserver!="undefined"?so.ResizeObserver:Uh}();function Sn(n){new qm((e,i)=>{var s,o,r,a,l,c;for(const d of e){const{borderBoxSize:h,contentRect:u}=d,m=(r=(o=(s=h==null?void 0:h[0])==null?void 0:s.inlineSize)!=null?o:u.width)!=null?r:n.clientWidth,A=(c=(l=(a=h==null?void 0:h[0])==null?void 0:a.blockSize)!=null?l:u.height)!=null?c:n.clientHeight;n.dispatchEvent(new CustomEvent("clientWidth",{detail:m})),n.dispatchEvent(new CustomEvent("clientHeight",{detail:A}))}}).observe(n)}const{Map:Km}=vm;function $m(n){ue(n,"svelte-9eg4zi",".room-labels-container.svelte-9eg4zi{width:100%;height:100%;position:relative;color:#fff}")}function hl(n,t,e){const i=n.slice();return i[13]=t[e],i}function ul(n,t){let e,i,s;return i=new jm({props:{roomLabel:t[13],five:t[1]}}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(o,r){B(o,e,r),te(i,o,r),s=!0},p(o,r){t=o;const a={};r&1&&(a.roomLabel=t[13]),r&2&&(a.five=t[1]),i.$set(a)},i(o){s||(k(i.$$.fragment,o),s=!0)},o(o){j(i.$$.fragment,o),s=!1},d(o){o&&O(e),ie(i,o)}}}function eg(n){let t,e=[],i=new Km,s,o,r,a=Pe(n[0]);const l=c=>c[13].id;for(let c=0;c<a.length;c+=1){let d=hl(n,a,c),h=l(d);i.set(h,e[c]=ul(h,d))}return{c(){t=S("div");for(let c=0;c<e.length;c+=1)e[c].c();w(t,"class","room-labels-container svelte-9eg4zi")},m(c,d){B(c,t,d);for(let h=0;h<e.length;h+=1)e[h]&&e[h].m(t,null);s=!0,o||(r=[ei(Sn.call(null,t)),be(t,"clientWidth",n[6]),be(t,"clientHeight",n[7])],o=!0)},p(c,[d]){d&3&&(a=Pe(c[0]),de(),e=Ot(e,d,l,1,c,a,i,t,bi,ul,null,hl),he())},i(c){if(!s){for(let d=0;d<a.length;d+=1)k(e[d]);s=!0}},o(c){for(let d=0;d<e.length;d+=1)j(e[d]);s=!1},d(c){c&&O(t);for(let d=0;d<e.length;d+=1)e[d].d();o=!1,qe(r)}}}function tg(n,t,e){var g;let i,{five:s}=t,{roomLabels:o}=t,r,a,l=(g=s.model.shownFloor)!=null?g:null;function c(v){if(!(l===null||v.floorIndex===l))return!1;const I=new R.Raycaster,M=s.camera.position.clone(),D=new R.Vector3(v.position.x,v.position.y,v.position.z),P=D.distanceTo(M);I.set(M.clone(),D.clone().sub(M).normalize());const[V]=s.model.intersectRaycaster(I);return!(V&&V.distance+1<P)}function d(v,y){const M=new R.Vector3(v.position.x,v.position.y,v.position.z).clone().project(s.camera),D=Math.ceil((M.x+1)/2*y.x),P=Math.ceil((-M.y+1)/2*y.y);return`translate(${D}px, ${P}px)`}function h(v){const{rendererSize:y}=v,I=new Map;function M(P){const V=I.get(P.id);if(V)return V;const{x:L,y:X,z:U}=P.position,N=new R.Vector3(L,X,U).clone().distanceTo(s.camera.position);return I.set(P.id,N),N}return o.map(P=>{const V=c(P),L=V?d(P,y):P.transform,X=M(P),N=o.filter(H=>H.visible&&M(H)<X).length*10;return ve(G({},P),{visible:V,transform:L,zIndex:N})})}function u(){e(0,o=h({rendererSize:i,shownFloor:l}))}function m(v){e(4,l=v)}s.on("cameraUpdate",u),s.on("modelShownFloorChange",m),Rh(()=>{e(0,o=h({rendererSize:i,shownFloor:l}))}),zt(()=>{s.off("cameraUpdate",u),s.off("modelShownFloorChange",m)});const A=v=>{e(2,r=v.detail)},p=v=>{e(3,a=v.detail)};return n.$$set=v=>{"five"in v&&e(1,s=v.five),"roomLabels"in v&&e(0,o=v.roomLabels)},n.$$.update=()=>{n.$$.dirty&12&&e(5,i={x:r,y:a}),n.$$.dirty&48&&e(0,o=h({rendererSize:i,shownFloor:l}))},[o,s,r,a,l,i,A,p]}class ig extends le{constructor(t){super(),ae(this,t,tg,eg,oe,{five:1,roomLabels:0},$m)}}function ng(n){return n.model_room_labels.map(({id:t,pano_index:e,floor_index:i,name:s,position:o,longitude:r})=>({id:t,name:s,position:o,longitude:r,panoIndex:e,floorIndex:i,zIndex:0,visible:!1,transform:""}))}class sg{constructor(t){f(this,"five");f(this,"enabled",!0);f(this,"fiveModeEnabled");f(this,"app");f(this,"wrapper");f(this,"roomLabels",[]);f(this,"container",document.createElement("div"));f(this,"onFiveModeChange",t=>{if(!this.checkFiveMode(t)){this.fiveModeEnabled=!1,this.render();return}this.five.once("initAnimationEnded",()=>{this.fiveModeEnabled=this.checkFiveMode(this.five.getCurrentState().mode),this.render()})});this.five=t,this.fiveModeEnabled=this.checkFiveMode(t.getCurrentState().mode),this.container.classList.add("model-room-label-plugin-container"),this.container.style.width="100%",this.container.style.height="100%",this.container.style.position="absolute",this.container.style.pointerEvents="none",this.container.style.left="0",this.container.style.top="0",this.container.style.zIndex="5",this.five.once("dispose",()=>this.dispose()),this.five.on("modeChange",this.onFiveModeChange),this.render()}dispose(){this.five.off("modeChange",this.onFiveModeChange),this.container.remove()}load(t){this.roomLabels=ng(t),this.render()}appendTo(t){return this.wrapper=t,t.appendChild(this.container),this.render(),this}disable(){return this.enabled=!1,this.render(),this}enable(){return this.enabled=!0,this.render(),this}checkFiveMode(t){return t==="Floorplan"||t==="Mapview"}render(){var t;if(this.wrapper){if(!this.enabled||!this.fiveModeEnabled){(t=this.app)==null||t.$destroy(),this.app=void 0;return}this.app?this.app.$set({five:this.five,roomLabels:this.roomLabels}):this.app=new ig({target:this.container,props:{five:this.five,roomLabels:this.roomLabels}})}}}const og=n=>new sg(n),rg={name:"ModelRoomLabelPlugin",version:0};var hi=(n=>(n[n.FLOOR=1]="FLOOR",n[n.CEILING=2]="CEILING",n[n.BOUNDING_CENTER=3]="BOUNDING_CENTER",n))(hi||{});function gn(n){return W(this,null,function*(){try{return[null,yield n]}catch(t){return t instanceof Error?[t,null]:[new Error(""),null]}})}function ro(n){return Object.prototype.toString.call(n)==="[object Object]"}function Io(n,t){return n===t?!0:typeof n!=typeof t?!1:!!(Number.isNaN(n)&&Number.isNaN(t))}function ag(n,t){const e=Object.getOwnPropertyNames(n),i=Object.getOwnPropertyNames(t);if(e.length!==i.length)return!1;for(let s=0,o=e.length;s<o;s++){const r=e[s];if(!Io(n[r],t[r]))return!1}return!0}function lg(n,t){if(n.length!==t.length)return!1;for(let e=0,i=n.length;e<i;e++)if(!Io(n[e],t[e]))return!1;return!0}function cg(n,t){return Io(n,t)?!0:ro(n)&&ro(t)?ag(n,t):Array.isArray(n)&&Array.isArray(t)?lg(n,t):!1}function xa(n,t){return Io(n,t)?!0:ro(n)&&ro(t)?hg(n,t):Array.isArray(n)&&Array.isArray(t)?dg(n,t):!1}function dg(n,t){if(n.length!==t.length)return!1;for(let e=0,i=n.length;e<i;e++)if(!xa(n[e],t[e]))return!1;return!0}function hg(n,t){const e=Object.getOwnPropertyNames(n),i=Object.getOwnPropertyNames(t);if(e.length!==i.length)return!1;for(let s=0,o=e.length;s<o;s++){const r=e[s];if(!xa(n[r],t[r]))return!1}return!0}function It(n,t,e={deep:!1}){return e.deep?xa(n,t):cg(n,t)}function pn(n){return n<.5?4*n*n*n:.5*Math.pow(2*n-2,3)+1}function Xh(n){const t=n-1;return t*t*t+1}function it(n,{delay:t=0,duration:e=400,easing:i=ti}={}){const s=+getComputedStyle(n).opacity;return{delay:t,duration:e,easing:i,css:o=>`opacity: ${o*s}`}}function fl(n,{delay:t=0,duration:e=400,easing:i=Xh,x:s=0,y:o=0,opacity:r=0}={}){const a=getComputedStyle(n),l=+a.opacity,c=a.transform==="none"?"":a.transform,d=l*(1-r),[h,u]=ll(s),[m,A]=ll(o);return{delay:t,duration:e,easing:i,css:(p,g)=>`
180
+ }`,h=`__svelte_${Cm(d)}_${a}`,u=wa(n),{stylesheet:m,rules:A}=eo.get(u)||Im(u,n);A[h]||(A[h]=!0,m.insertRule(`@keyframes ${h} ${d}`,m.cssRules.length));const p=n.style.animation||"";return n.style.animation=`${p?`${p}, `:""}${h} ${i}ms linear ${s}ms 1 both`,to+=1,h}function no(n,t){const e=(n.style.animation||"").split(", "),i=e.filter(t?o=>o.indexOf(t)<0:o=>o.indexOf("__svelte")===-1),s=e.length-i.length;s&&(n.style.animation=i.join(", "),to-=s,to||Pm())}function Pm(){ba(()=>{to||(eo.forEach(n=>{const{ownerNode:t}=n.stylesheet;t&&z(t)}),eo.clear())})}let rs;function $t(n){rs=n}function vi(){if(!rs)throw new Error("Function called outside component initialization");return rs}function Vh(n){vi().$$.before_update.push(n)}function bt(n){vi().$$.on_mount.push(n)}function Rh(n){vi().$$.after_update.push(n)}function zt(n){vi().$$.on_destroy.push(n)}function Co(){const n=vi();return(t,e,{cancelable:i=!1}={})=>{const s=n.$$.callbacks[t];if(s){const o=Bh(t,e,{cancelable:i});return s.slice().forEach(r=>{r.call(n,o)}),!o.defaultPrevented}return!0}}function Xr(n,t){return vi().$$.context.set(n,t),t}function fi(n){return vi().$$.context.get(n)}function xn(n,t){const e=n.$$.callbacks[t.type];e&&e.slice().forEach(i=>i.call(this,t))}const tn=[],Ge=[];let cn=[];const Zr=[],Qh=Promise.resolve();let Jr=!1;function Gh(){Jr||(Jr=!0,Qh.then(Ia))}function cl(){return Gh(),Qh}function He(n){cn.push(n)}function Ca(n){Zr.push(n)}const Pr=new Set;let Ji=0;function Ia(){if(Ji!==0)return;const n=rs;do{try{for(;Ji<tn.length;){const t=tn[Ji];Ji++,$t(t),Em(t.$$)}}catch(t){throw tn.length=0,Ji=0,t}for($t(null),tn.length=0,Ji=0;Ge.length;)Ge.pop()();for(let t=0;t<cn.length;t+=1){const e=cn[t];Pr.has(e)||(Pr.add(e),e())}cn.length=0}while(tn.length);for(;Zr.length;)Zr.pop()();Jr=!1,Pr.clear(),$t(n)}function Em(n){if(n.fragment!==null){n.update(),qe(n.before_update);const t=n.dirty;n.dirty=[-1],n.fragment&&n.fragment.p(n.ctx,t),n.after_update.forEach(He)}}function Mm(n){const t=[],e=[];cn.forEach(i=>n.indexOf(i)===-1?t.push(i):e.push(i)),e.forEach(i=>i()),cn=t}let Yn;function Pa(){return Yn||(Yn=Promise.resolve(),Yn.then(()=>{Yn=null})),Yn}function Li(n,t,e){n.dispatchEvent(Bh(`${t?"intro":"outro"}${e}`))}const Us=new Set;let Nt;function de(){Nt={r:0,c:[],p:Nt}}function he(){Nt.r||qe(Nt.c),Nt=Nt.p}function k(n,t){n&&n.i&&(Us.delete(n),n.i(t))}function T(n,t,e,i){if(n&&n.o){if(Us.has(n))return;Us.add(n),Nt.c.push(()=>{Us.delete(n),i&&(e&&n.d(1),i())}),n.o(t)}else i&&i()}const Ea={duration:0};function Vi(n,t,e){const i={direction:"in"};let s=t(n,e,i),o=!1,r,a,l=0;function c(){r&&no(n,r)}function d(){const{delay:u=0,duration:m=300,easing:A=ti,tick:p=q,css:g}=s||Ea;g&&(r=io(n,0,1,m,u,A,g,l++)),p(0,1);const v=va()+u,y=v+m;a&&a.abort(),o=!0,He(()=>Li(n,!0,"start")),a=ya(I=>{if(o){if(I>=y)return p(1,0),Li(n,!0,"end"),c(),o=!1;if(I>=v){const M=A((I-v)/m);p(M,1-M)}}return o})}let h=!1;return{start(){h||(h=!0,no(n),si(s)?(s=s(i),Pa().then(d)):d())},invalidate(){h=!1},end(){o&&(c(),o=!1)}}}function Dn(n,t,e){const i={direction:"out"};let s=t(n,e,i),o=!0,r;const a=Nt;a.r+=1;let l;function c(){const{delay:d=0,duration:h=300,easing:u=ti,tick:m=q,css:A}=s||Ea;A&&(r=io(n,1,0,h,d,u,A));const p=va()+d,g=p+h;He(()=>Li(n,!1,"start")),"inert"in n&&(l=n.inert,n.inert=!0),ya(v=>{if(o){if(v>=g)return m(0,1),Li(n,!1,"end"),--a.r||qe(a.c),!1;if(v>=p){const y=u((v-p)/h);m(1-y,y)}}return o})}return si(s)?Pa().then(()=>{s=s(i),c()}):c(),{end(d){d&&"inert"in n&&(n.inert=l),d&&s.tick&&s.tick(1,0),o&&(r&&no(n,r),o=!1)}}}function Ft(n,t,e,i){let o=t(n,e,{direction:"both"}),r=i?0:1,a=null,l=null,c=null,d;function h(){c&&no(n,c)}function u(A,p){const g=A.b-r;return p*=Math.abs(g),{a:r,b:A.b,d:g,duration:p,start:A.start,end:A.start+p,group:A.group}}function m(A){const{delay:p=0,duration:g=300,easing:v=ti,tick:y=q,css:I}=o||Ea,M={start:va()+p,b:A};A||(M.group=Nt,Nt.r+=1),"inert"in n&&(A?d!==void 0&&(n.inert=d):(d=n.inert,n.inert=!0)),a||l?l=M:(I&&(h(),c=io(n,r,A,g,p,v,I)),A&&y(0,1),a=u(M,g),He(()=>Li(n,A,"start")),ya(B=>{if(l&&B>l.start&&(a=u(l,g),l=null,Li(n,a.b,"start"),I&&(h(),c=io(n,r,a.b,a.duration,0,v,o.css))),a){if(B>=a.end)y(r=a.b,1-r),Li(n,a.b,"end"),l||(a.b?h():--a.group.r||qe(a.group.c)),a=null;else if(B>=a.start){const P=B-a.start;r=a.a+a.d*v(P/a.duration),y(r,1-r)}}return!!(a||l)}))}return{run(A){si(o)?Pa().then(()=>{o=o({direction:A?"in":"out"}),m(A)}):m(A)},end(){h(),a=l=null}}}function so(n,t){const e=t.token={};function i(s,o,r,a){if(t.token!==e)return;t.resolved=a;let l=t.ctx;r!==void 0&&(l=l.slice(),l[r]=a);const c=s&&(t.current=s)(l);let d=!1;t.block&&(t.blocks?t.blocks.forEach((h,u)=>{u!==o&&h&&(de(),T(h,1,1,()=>{t.blocks[u]===h&&(t.blocks[u]=null)}),he())}):t.block.d(1),c.c(),k(c,1),c.m(t.mount(),t.anchor),d=!0),t.block=c,t.blocks&&(t.blocks[o]=c),d&&Ia()}if(pm(n)){const s=vi();if(n.then(o=>{$t(s),i(t.then,1,t.value,o),$t(null)},o=>{if($t(s),i(t.catch,2,t.error,o),$t(null),!t.hasCatch)throw o}),t.current!==t.pending)return i(t.pending,0),!0}else{if(t.current!==t.then)return i(t.then,1,t.value,n),!0;t.resolved=n}}function Nh(n,t,e){const i=t.slice(),{resolved:s}=n;n.current===n.then&&(i[n.value]=s),n.current===n.catch&&(i[n.error]=s),n.block.p(i,e)}function Pe(n){return(n==null?void 0:n.length)!==void 0?n:Array.from(n)}function Ma(n,t){n.d(1),t.delete(n.key)}function bi(n,t){T(n,1,1,()=>{t.delete(n.key)})}function Ot(n,t,e,i,s,o,r,a,l,c,d,h){let u=n.length,m=o.length,A=u;const p={};for(;A--;)p[n[A].key]=A;const g=[],v=new Map,y=new Map,I=[];for(A=m;A--;){const V=h(s,o,A),L=e(V);let X=r.get(L);X?i&&I.push(()=>X.p(V,t)):(X=c(L,V),X.c()),v.set(L,g[A]=X),L in p&&y.set(L,Math.abs(A-p[L]))}const M=new Set,B=new Set;function P(V){k(V,1),V.m(a,d),r.set(V.key,V),d=V.first,m--}for(;u&&m;){const V=g[m-1],L=n[u-1],X=V.key,Y=L.key;V===L?(d=V.first,u--,m--):v.has(Y)?!r.has(X)||M.has(X)?P(V):B.has(Y)?u--:y.get(X)>y.get(Y)?(B.add(X),P(V)):(M.add(Y),u--):(l(L,r),u--)}for(;u--;){const V=n[u];v.has(V.key)||l(V,r)}for(;m;)P(g[m-1]);return qe(I),g}function ct(n,t){const e={},i={},s={$$scope:1};let o=n.length;for(;o--;){const r=n[o],a=t[o];if(a){for(const l in r)l in a||(i[l]=1);for(const l in a)s[l]||(e[l]=a[l],s[l]=1);n[o]=a}else for(const l in r)s[l]=1}for(const r in i)r in e||(e[r]=void 0);return e}function Hh(n){return typeof n=="object"&&n!==null?n:{}}function ka(n,t,e){const i=n.$$.props[t];i!==void 0&&(n.$$.bound[i]=e,e(n.$$.ctx[i]))}function ne(n){n&&n.c()}function te(n,t,e){const{fragment:i,after_update:s}=n.$$;i&&i.m(t,e),He(()=>{const o=n.$$.on_mount.map(Sh).filter(si);n.$$.on_destroy?n.$$.on_destroy.push(...o):qe(o),n.$$.on_mount=[]}),s.forEach(He)}function ie(n,t){const e=n.$$;e.fragment!==null&&(Mm(e.after_update),qe(e.on_destroy),e.fragment&&e.fragment.d(t),e.on_destroy=e.fragment=null,e.ctx=[])}function km(n,t){n.$$.dirty[0]===-1&&(tn.push(n),Gh(),n.$$.dirty.fill(0)),n.$$.dirty[t/31|0]|=1<<t%31}function ae(n,t,e,i,s,o,r,a=[-1]){const l=rs;$t(n);const c=n.$$={fragment:null,ctx:[],props:o,update:q,not_equal:s,bound:al(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(t.context||(l?l.$$.context:[])),callbacks:al(),dirty:a,skip_bound:!1,root:t.target||l.$$.root};r&&r(c.root);let d=!1;if(c.ctx=e?e(n,t.props||{},(h,u,...m)=>{const A=m.length?m[0]:u;return c.ctx&&s(c.ctx[h],c.ctx[h]=A)&&(!c.skip_bound&&c.bound[h]&&c.bound[h](A),d&&km(n,h)),u}):[],c.update(),d=!0,qe(c.before_update),c.fragment=i?i(c.ctx):!1,t.target){if(t.hydrate){const h=ym(t.target);c.fragment&&c.fragment.l(h),h.forEach(z)}else c.fragment&&c.fragment.c();t.intro&&k(n.$$.fragment),te(n,t.target,t.anchor),Ia()}$t(l)}class le{constructor(){f(this,"$$");f(this,"$$set")}$destroy(){ie(this,1),this.$destroy=q}$on(t,e){if(!si(e))return q;const i=this.$$.callbacks[t]||(this.$$.callbacks[t]=[]);return i.push(e),()=>{const s=i.indexOf(e);s!==-1&&i.splice(s,1)}}$set(t){this.$$set&&!Am(t)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}}const xm="4";typeof window!="undefined"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(xm);const Dm="data:image/png;base64,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";function Sm(n){ue(n,"svelte-1d7uzh5",".room-label-item.svelte-1d7uzh5{position:absolute;font-size:0.5rem;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.room-label-item__text.svelte-1d7uzh5{position:absolute;left:0;top:-4rem;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center;height:1.25rem;min-width:2rem;padding:0 0.375rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap}.room-label-item__bar.svelte-1d7uzh5{position:absolute;top:-2.75rem;height:3rem;width:0.0625rem;background-image:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0))}.wide.svelte-1d7uzh5{font-size:0.625rem}")}function Tm(n){let t,e,i=n[0].name+"",s,o,r,a,l;return{c(){t=D("div"),e=D("span"),s=xe(i),o=$(),r=D("div"),w(e,"class","room-label-item__text svelte-1d7uzh5"),j(e,"background-image","url("+Dm+")"),K(e,"wide",n[0].name.length>3),w(r,"class","room-label-item__bar svelte-1d7uzh5"),w(t,"class","room-label-item svelte-1d7uzh5"),j(t,"z-index",n[0].zIndex),j(t,"transform",n[0].transform),j(t,"opacity",n[0].visible?1:0)},m(c,d){O(c,t,d),x(t,e),x(e,s),x(t,o),x(t,r),a||(l=be(e,"click",n[1]),a=!0)},p(c,[d]){d&1&&i!==(i=c[0].name+"")&&Se(s,i),d&1&&K(e,"wide",c[0].name.length>3),d&1&&j(t,"z-index",c[0].zIndex),d&1&&j(t,"transform",c[0].transform),d&1&&j(t,"opacity",c[0].visible?1:0)},i:q,o:q,d(c){c&&z(t),a=!1,l()}}}function Lm(n,t,e){let{five:i}=t,{roomLabel:s}=t;function o(){i.setState({panoIndex:s.panoIndex,mode:"Panorama",longitude:s.longitude})}return n.$$set=r=>{"five"in r&&e(2,i=r.five),"roomLabel"in r&&e(0,s=r.roomLabel)},[s,o,i]}class jm extends le{constructor(t){super(),ae(this,t,Lm,Tm,oe,{five:2,roomLabel:0},Sm)}}var _h=function(){if(typeof Map!="undefined")return Map;function n(t,e){var i=-1;return t.some(function(s,o){return s[0]===e?(i=o,!0):!1}),i}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(e){var i=n(this.__entries__,e),s=this.__entries__[i];return s&&s[1]},t.prototype.set=function(e,i){var s=n(this.__entries__,e);~s?this.__entries__[s][1]=i:this.__entries__.push([e,i])},t.prototype.delete=function(e){var i=this.__entries__,s=n(i,e);~s&&i.splice(s,1)},t.prototype.has=function(e){return!!~n(this.__entries__,e)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(e,i){i===void 0&&(i=null);for(var s=0,o=this.__entries__;s<o.length;s++){var r=o[s];e.call(i,r[1],r[0])}},t}()}(),qr=typeof window!="undefined"&&typeof document!="undefined"&&window.document===document,oo=function(){return typeof global!="undefined"&&global.Math===Math?global:typeof self!="undefined"&&self.Math===Math?self:typeof window!="undefined"&&window.Math===Math?window:Function("return this")()}(),zm=function(){return typeof requestAnimationFrame=="function"?requestAnimationFrame.bind(oo):function(n){return setTimeout(function(){return n(Date.now())},1e3/60)}}(),Om=2;function Bm(n,t){var e=!1,i=!1,s=0;function o(){e&&(e=!1,n()),i&&a()}function r(){zm(o)}function a(){var l=Date.now();if(e){if(l-s<Om)return;i=!0}else e=!0,i=!1,setTimeout(r,t);s=l}return a}var Vm=20,Rm=["top","right","bottom","left","width","height","size","weight"],Qm=typeof MutationObserver!="undefined",Gm=function(){function n(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=Bm(this.refresh.bind(this),Vm)}return n.prototype.addObserver=function(t){~this.observers_.indexOf(t)||this.observers_.push(t),this.connected_||this.connect_()},n.prototype.removeObserver=function(t){var e=this.observers_,i=e.indexOf(t);~i&&e.splice(i,1),!e.length&&this.connected_&&this.disconnect_()},n.prototype.refresh=function(){var t=this.updateObservers_();t&&this.refresh()},n.prototype.updateObservers_=function(){var t=this.observers_.filter(function(e){return e.gatherActive(),e.hasActive()});return t.forEach(function(e){return e.broadcastActive()}),t.length>0},n.prototype.connect_=function(){!qr||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),Qm?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},n.prototype.disconnect_=function(){!qr||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},n.prototype.onTransitionEnd_=function(t){var e=t.propertyName,i=e===void 0?"":e,s=Rm.some(function(o){return!!~i.indexOf(o)});s&&this.refresh()},n.getInstance=function(){return this.instance_||(this.instance_=new n),this.instance_},n.instance_=null,n}(),Fh=function(n,t){for(var e=0,i=Object.keys(t);e<i.length;e++){var s=i[e];Object.defineProperty(n,s,{value:t[s],enumerable:!1,writable:!1,configurable:!0})}return n},mn=function(n){var t=n&&n.ownerDocument&&n.ownerDocument.defaultView;return t||oo},Wh=Io(0,0,0,0);function ro(n){return parseFloat(n)||0}function dl(n){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];return t.reduce(function(i,s){var o=n["border-"+s+"-width"];return i+ro(o)},0)}function Nm(n){for(var t=["top","right","bottom","left"],e={},i=0,s=t;i<s.length;i++){var o=s[i],r=n["padding-"+o];e[o]=ro(r)}return e}function Hm(n){var t=n.getBBox();return Io(0,0,t.width,t.height)}function _m(n){var t=n.clientWidth,e=n.clientHeight;if(!t&&!e)return Wh;var i=mn(n).getComputedStyle(n),s=Nm(i),o=s.left+s.right,r=s.top+s.bottom,a=ro(i.width),l=ro(i.height);if(i.boxSizing==="border-box"&&(Math.round(a+o)!==t&&(a-=dl(i,"left","right")+o),Math.round(l+r)!==e&&(l-=dl(i,"top","bottom")+r)),!Wm(n)){var c=Math.round(a+o)-t,d=Math.round(l+r)-e;Math.abs(c)!==1&&(a-=c),Math.abs(d)!==1&&(l-=d)}return Io(s.left,s.top,a,l)}var Fm=function(){return typeof SVGGraphicsElement!="undefined"?function(n){return n instanceof mn(n).SVGGraphicsElement}:function(n){return n instanceof mn(n).SVGElement&&typeof n.getBBox=="function"}}();function Wm(n){return n===mn(n).document.documentElement}function Ym(n){return qr?Fm(n)?Hm(n):_m(n):Wh}function Um(n){var t=n.x,e=n.y,i=n.width,s=n.height,o=typeof DOMRectReadOnly!="undefined"?DOMRectReadOnly:Object,r=Object.create(o.prototype);return Fh(r,{x:t,y:e,width:i,height:s,top:e,right:t+i,bottom:s+e,left:t}),r}function Io(n,t,e,i){return{x:n,y:t,width:e,height:i}}var Xm=function(){function n(t){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=Io(0,0,0,0),this.target=t}return n.prototype.isActive=function(){var t=Ym(this.target);return this.contentRect_=t,t.width!==this.broadcastWidth||t.height!==this.broadcastHeight},n.prototype.broadcastRect=function(){var t=this.contentRect_;return this.broadcastWidth=t.width,this.broadcastHeight=t.height,t},n}(),Zm=function(){function n(t,e){var i=Um(e);Fh(this,{target:t,contentRect:i})}return n}(),Jm=function(){function n(t,e,i){if(this.activeObservations_=[],this.observations_=new _h,typeof t!="function")throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=t,this.controller_=e,this.callbackCtx_=i}return n.prototype.observe=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element=="undefined"||!(Element instanceof Object))){if(!(t instanceof mn(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)||(e.set(t,new Xm(t)),this.controller_.addObserver(this),this.controller_.refresh())}},n.prototype.unobserve=function(t){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if(!(typeof Element=="undefined"||!(Element instanceof Object))){if(!(t instanceof mn(t).Element))throw new TypeError('parameter 1 is not of type "Element".');var e=this.observations_;e.has(t)&&(e.delete(t),e.size||this.controller_.removeObserver(this))}},n.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},n.prototype.gatherActive=function(){var t=this;this.clearActive(),this.observations_.forEach(function(e){e.isActive()&&t.activeObservations_.push(e)})},n.prototype.broadcastActive=function(){if(this.hasActive()){var t=this.callbackCtx_,e=this.activeObservations_.map(function(i){return new Zm(i.target,i.broadcastRect())});this.callback_.call(t,e,t),this.clearActive()}},n.prototype.clearActive=function(){this.activeObservations_.splice(0)},n.prototype.hasActive=function(){return this.activeObservations_.length>0},n}(),Yh=typeof WeakMap!="undefined"?new WeakMap:new _h,Uh=function(){function n(t){if(!(this instanceof n))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var e=Gm.getInstance(),i=new Jm(t,e,this);Yh.set(this,i)}return n}();["observe","unobserve","disconnect"].forEach(function(n){Uh.prototype[n]=function(){var t;return(t=Yh.get(this))[n].apply(t,arguments)}});var qm=function(){return typeof oo.ResizeObserver!="undefined"?oo.ResizeObserver:Uh}();function Sn(n){new qm((e,i)=>{var s,o,r,a,l,c;for(const d of e){const{borderBoxSize:h,contentRect:u}=d,m=(r=(o=(s=h==null?void 0:h[0])==null?void 0:s.inlineSize)!=null?o:u.width)!=null?r:n.clientWidth,A=(c=(l=(a=h==null?void 0:h[0])==null?void 0:a.blockSize)!=null?l:u.height)!=null?c:n.clientHeight;n.dispatchEvent(new CustomEvent("clientWidth",{detail:m})),n.dispatchEvent(new CustomEvent("clientHeight",{detail:A}))}}).observe(n)}const{Map:Km}=vm;function $m(n){ue(n,"svelte-9eg4zi",".room-labels-container.svelte-9eg4zi{width:100%;height:100%;position:relative;color:#fff}")}function hl(n,t,e){const i=n.slice();return i[13]=t[e],i}function ul(n,t){let e,i,s;return i=new jm({props:{roomLabel:t[13],five:t[1]}}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(o,r){O(o,e,r),te(i,o,r),s=!0},p(o,r){t=o;const a={};r&1&&(a.roomLabel=t[13]),r&2&&(a.five=t[1]),i.$set(a)},i(o){s||(k(i.$$.fragment,o),s=!0)},o(o){T(i.$$.fragment,o),s=!1},d(o){o&&z(e),ie(i,o)}}}function eg(n){let t,e=[],i=new Km,s,o,r,a=Pe(n[0]);const l=c=>c[13].id;for(let c=0;c<a.length;c+=1){let d=hl(n,a,c),h=l(d);i.set(h,e[c]=ul(h,d))}return{c(){t=D("div");for(let c=0;c<e.length;c+=1)e[c].c();w(t,"class","room-labels-container svelte-9eg4zi")},m(c,d){O(c,t,d);for(let h=0;h<e.length;h+=1)e[h]&&e[h].m(t,null);s=!0,o||(r=[ei(Sn.call(null,t)),be(t,"clientWidth",n[6]),be(t,"clientHeight",n[7])],o=!0)},p(c,[d]){d&3&&(a=Pe(c[0]),de(),e=Ot(e,d,l,1,c,a,i,t,bi,ul,null,hl),he())},i(c){if(!s){for(let d=0;d<a.length;d+=1)k(e[d]);s=!0}},o(c){for(let d=0;d<e.length;d+=1)T(e[d]);s=!1},d(c){c&&z(t);for(let d=0;d<e.length;d+=1)e[d].d();o=!1,qe(r)}}}function tg(n,t,e){var g;let i,{five:s}=t,{roomLabels:o}=t,r,a,l=(g=s.model.shownFloor)!=null?g:null;function c(v){if(!(l===null||v.floorIndex===l))return!1;const I=new R.Raycaster,M=s.camera.position.clone(),B=new R.Vector3(v.position.x,v.position.y,v.position.z),P=B.distanceTo(M);I.set(M.clone(),B.clone().sub(M).normalize());const[V]=s.model.intersectRaycaster(I);return!(V&&V.distance+1<P)}function d(v,y){const M=new R.Vector3(v.position.x,v.position.y,v.position.z).clone().project(s.camera),B=Math.ceil((M.x+1)/2*y.x),P=Math.ceil((-M.y+1)/2*y.y);return`translate(${B}px, ${P}px)`}function h(v){const{rendererSize:y}=v,I=new Map;function M(P){const V=I.get(P.id);if(V)return V;const{x:L,y:X,z:Y}=P.position,N=new R.Vector3(L,X,Y).clone().distanceTo(s.camera.position);return I.set(P.id,N),N}return o.map(P=>{const V=c(P),L=V?d(P,y):P.transform,X=M(P),N=o.filter(H=>H.visible&&M(H)<X).length*10;return ve(G({},P),{visible:V,transform:L,zIndex:N})})}function u(){e(0,o=h({rendererSize:i,shownFloor:l}))}function m(v){e(4,l=v)}s.on("cameraUpdate",u),s.on("modelShownFloorChange",m),Rh(()=>{e(0,o=h({rendererSize:i,shownFloor:l}))}),zt(()=>{s.off("cameraUpdate",u),s.off("modelShownFloorChange",m)});const A=v=>{e(2,r=v.detail)},p=v=>{e(3,a=v.detail)};return n.$$set=v=>{"five"in v&&e(1,s=v.five),"roomLabels"in v&&e(0,o=v.roomLabels)},n.$$.update=()=>{n.$$.dirty&12&&e(5,i={x:r,y:a}),n.$$.dirty&48&&e(0,o=h({rendererSize:i,shownFloor:l}))},[o,s,r,a,l,i,A,p]}class ig extends le{constructor(t){super(),ae(this,t,tg,eg,oe,{five:1,roomLabels:0},$m)}}function ng(n){return n.model_room_labels.map(({id:t,pano_index:e,floor_index:i,name:s,position:o,longitude:r})=>({id:t,name:s,position:o,longitude:r,panoIndex:e,floorIndex:i,zIndex:0,visible:!1,transform:""}))}class sg{constructor(t){f(this,"five");f(this,"enabled",!0);f(this,"fiveModeEnabled");f(this,"app");f(this,"wrapper");f(this,"roomLabels",[]);f(this,"container",document.createElement("div"));f(this,"onFiveModeChange",t=>{if(!this.checkFiveMode(t)){this.fiveModeEnabled=!1,this.render();return}this.five.once("initAnimationEnded",()=>{this.fiveModeEnabled=this.checkFiveMode(this.five.getCurrentState().mode),this.render()})});this.five=t,this.fiveModeEnabled=this.checkFiveMode(t.getCurrentState().mode),this.container.classList.add("model-room-label-plugin-container"),this.container.style.width="100%",this.container.style.height="100%",this.container.style.position="absolute",this.container.style.pointerEvents="none",this.container.style.left="0",this.container.style.top="0",this.container.style.zIndex="5",this.five.once("dispose",()=>this.dispose()),this.five.on("modeChange",this.onFiveModeChange),this.render()}dispose(){this.five.off("modeChange",this.onFiveModeChange),this.container.remove()}load(t){this.roomLabels=ng(t),this.render()}appendTo(t){return this.wrapper=t,t.appendChild(this.container),this.render(),this}disable(){return this.enabled=!1,this.render(),this}enable(){return this.enabled=!0,this.render(),this}checkFiveMode(t){return t==="Floorplan"||t==="Mapview"}render(){var t;if(this.wrapper){if(!this.enabled||!this.fiveModeEnabled){(t=this.app)==null||t.$destroy(),this.app=void 0;return}this.app?this.app.$set({five:this.five,roomLabels:this.roomLabels}):this.app=new ig({target:this.container,props:{five:this.five,roomLabels:this.roomLabels}})}}}const og=n=>new sg(n),rg={name:"ModelRoomLabelPlugin",version:0};var hi=(n=>(n[n.FLOOR=1]="FLOOR",n[n.CEILING=2]="CEILING",n[n.BOUNDING_CENTER=3]="BOUNDING_CENTER",n))(hi||{});function gn(n){return W(this,null,function*(){try{return[null,yield n]}catch(t){return t instanceof Error?[t,null]:[new Error(""),null]}})}function ao(n){return Object.prototype.toString.call(n)==="[object Object]"}function Po(n,t){return n===t?!0:typeof n!=typeof t?!1:!!(Number.isNaN(n)&&Number.isNaN(t))}function ag(n,t){const e=Object.getOwnPropertyNames(n),i=Object.getOwnPropertyNames(t);if(e.length!==i.length)return!1;for(let s=0,o=e.length;s<o;s++){const r=e[s];if(!Po(n[r],t[r]))return!1}return!0}function lg(n,t){if(n.length!==t.length)return!1;for(let e=0,i=n.length;e<i;e++)if(!Po(n[e],t[e]))return!1;return!0}function cg(n,t){return Po(n,t)?!0:ao(n)&&ao(t)?ag(n,t):Array.isArray(n)&&Array.isArray(t)?lg(n,t):!1}function xa(n,t){return Po(n,t)?!0:ao(n)&&ao(t)?hg(n,t):Array.isArray(n)&&Array.isArray(t)?dg(n,t):!1}function dg(n,t){if(n.length!==t.length)return!1;for(let e=0,i=n.length;e<i;e++)if(!xa(n[e],t[e]))return!1;return!0}function hg(n,t){const e=Object.getOwnPropertyNames(n),i=Object.getOwnPropertyNames(t);if(e.length!==i.length)return!1;for(let s=0,o=e.length;s<o;s++){const r=e[s];if(!xa(n[r],t[r]))return!1}return!0}function It(n,t,e={deep:!1}){return e.deep?xa(n,t):cg(n,t)}function pn(n){return n<.5?4*n*n*n:.5*Math.pow(2*n-2,3)+1}function Xh(n){const t=n-1;return t*t*t+1}function it(n,{delay:t=0,duration:e=400,easing:i=ti}={}){const s=+getComputedStyle(n).opacity;return{delay:t,duration:e,easing:i,css:o=>`opacity: ${o*s}`}}function fl(n,{delay:t=0,duration:e=400,easing:i=Xh,x:s=0,y:o=0,opacity:r=0}={}){const a=getComputedStyle(n),l=+a.opacity,c=a.transform==="none"?"":a.transform,d=l*(1-r),[h,u]=ll(s),[m,A]=ll(o);return{delay:t,duration:e,easing:i,css:(p,g)=>`
181
181
  transform: ${c} translate(${(1-p)*h}${u}, ${(1-p)*m}${A});
182
- opacity: ${l-d*g}`}}function ao(n,{delay:t=0,speed:e,duration:i,easing:s=pn}={}){let o=n.getTotalLength();const r=getComputedStyle(n);return r.strokeLinecap!=="butt"&&(o+=parseInt(r.strokeWidth)),i===void 0?e===void 0?i=800:i=o/e:typeof i=="function"&&(i=i(o)),{delay:t,duration:i,easing:s,css:(a,l)=>`
182
+ opacity: ${l-d*g}`}}function lo(n,{delay:t=0,speed:e,duration:i,easing:s=pn}={}){let o=n.getTotalLength();const r=getComputedStyle(n);return r.strokeLinecap!=="butt"&&(o+=parseInt(r.strokeWidth)),i===void 0?e===void 0?i=800:i=o/e:typeof i=="function"&&(i=i(o)),{delay:t,duration:i,easing:s,css:(a,l)=>`
183
183
  stroke-dasharray: ${o};
184
184
  stroke-dashoffset: ${l*o};
185
- `}}const mi="data:image/png;base64,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";function Zh(n){return n*180/Math.PI}function ug(n){ue(n,"svelte-17cl35n",".floorplan__camera-position.svelte-17cl35n{position:absolute;width:0;height:0}.floorplan__camera-rotate.svelte-17cl35n{position:absolute;background-repeat:no-repeat;background-size:100%}")}function fg(n){let t,e;return{c(){t=S("div"),e=S("div"),w(e,"class","floorplan__camera-rotate svelte-17cl35n"),z(e,"background-image",`url(${n[0]||mi})`),z(e,"width",n[4]),z(e,"height",n[4]),z(e,"left","-"+n[4]),z(e,"top","-"+n[4]),z(e,"transform",`rotate(${n[3]}deg)`),z(e,"transform-origin",`${n[4]} ${n[4]}`),w(t,"class","floorplan__camera-position svelte-17cl35n"),z(t,"left",n[1]),z(t,"top",n[2])},m(i,s){B(i,t,s),x(t,e)},p(i,[s]){s&1&&z(e,"background-image",`url(${i[0]||mi})`);const o=s&1;o&&z(e,"width",i[4]),o&&z(e,"height",i[4]),o&&z(e,"left","-"+i[4]),o&&z(e,"top","-"+i[4]),o&&z(e,"transform",`rotate(${i[3]}deg)`),o&&z(e,"transform-origin",`${i[4]} ${i[4]}`)},i:q,o:q,d(i){i&&O(t)}}}function mg(n,t,e){let{panoIndex:i}=t,{floorplanData:s}=t,{lastPanoramaLongitude:o}=t,{cameraImageUrl:r}=t;const{observers:a}=s,l=a[i],c=l.positionInImage.x,d=l.positionInImage.y,h=c*100+"%",u=d*100+"%",m=-Zh(o)+45,A=document.body.clientWidth,p=document.body.clientHeight,v=`${(A<500||p<500?17:37)/16}rem`;return n.$$set=y=>{"panoIndex"in y&&e(5,i=y.panoIndex),"floorplanData"in y&&e(6,s=y.floorplanData),"lastPanoramaLongitude"in y&&e(7,o=y.lastPanoramaLongitude),"cameraImageUrl"in y&&e(0,r=y.cameraImageUrl)},[r,h,u,m,v,i,s,o]}let gg=class extends le{constructor(t){super(),ae(this,t,mg,fg,oe,{panoIndex:5,floorplanData:6,lastPanoramaLongitude:7,cameraImageUrl:0},ug)}};const pg="data:image/png;base64,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";function Ag(n){ue(n,"svelte-rpkaro",".floorplan-plugin__compass.svelte-rpkaro{position:absolute;left:50%;top:-2.875rem;width:14.4375rem;height:2.5625rem;will-change:opacity;transform-origin:center 11.5rem}.floorplan-plugin__compass-image.svelte-rpkaro{width:100%;height:100%;position:absolute;left:0;top:0;opacity:0.1;background-repeat:no-repeat;background-size:100% 100%}.floorplan-plugin__compass-text.svelte-rpkaro{position:absolute;left:50%;top:0.9375rem;transform:translateX(-50%);opacity:0.2;font-weight:bold;font-size:0.625rem;color:#fff}")}function vg(n){let t,e,i,s,o;return{c(){t=S("div"),e=S("div"),i=$(),s=S("span"),o=xe(n[0]),w(e,"class","floorplan-plugin__compass-image svelte-rpkaro"),z(e,"background-image",`url(${pg})`),w(s,"class","floorplan-plugin__compass-text svelte-rpkaro"),w(t,"class","floorplan-plugin__compass svelte-rpkaro"),z(t,"transform",n[2])},m(r,a){B(r,t,a),x(t,e),x(t,i),x(t,s),x(s,o)},p(r,a){a&1&&Se(o,r[0])},d(r){r&&O(t)}}}function bg(n){let t,e=n[1]&&vg(n);return{c(){e&&e.c(),t=Ee()},m(i,s){e&&e.m(i,s),B(i,t,s)},p(i,[s]){i[1]&&e.p(i,s)},i:q,o:q,d(i){i&&O(t),e&&e.d(i)}}}function yg(n){return n/Math.PI*180}function wg(n,t,e){var c;let{floorplanData:i}=t,{northDesc:s}=t;const o=(c=i.entrance)==null?void 0:c.northRad,r=typeof o=="number",l=`translateX(-50%) translateZ(10px) rotate(${-(o?yg(o):0)+90}deg)`;return n.$$set=d=>{"floorplanData"in d&&e(3,i=d.floorplanData),"northDesc"in d&&e(0,s=d.northDesc)},[s,r,l,i]}class Cg extends le{constructor(t){super(),ae(this,t,wg,bg,oe,{floorplanData:3,northDesc:0},Ag)}}const qi=[];function Da(n,t=q){let e;const i=new Set;function s(a){if(oe(n,a)&&(n=a,e)){const l=!qi.length;for(const c of i)c[1](),qi.push(c,n);if(l){for(let c=0;c<qi.length;c+=2)qi[c][0](qi[c+1]);qi.length=0}}}function o(a){s(a(n))}function r(a,l=q){const c=[a,l];return i.add(c),i.size===1&&(e=t(s,o)||q),a(n),()=>{i.delete(c),i.size===0&&e&&(e(),e=null)}}return{set:s,update:o,subscribe:r}}function Ig(n){ue(n,"svelte-1gfoniz","img.svelte-1gfoniz{width:100%;height:100%}")}function Pg(n){let t,e;return{c(){t=S("img"),kt(t.src,e=n[0])||w(t,"src",e),w(t,"alt","floorplan iamge"),w(t,"class","svelte-1gfoniz")},m(i,s){B(i,t,s)},p(i,[s]){s&1&&!kt(t.src,e=i[0])&&w(t,"src",e)},i:q,o:q,d(i){i&&O(t)}}}function Eg(n,t,e){let{url:i}=t;return n.$$set=s=>{"url"in s&&e(0,i=s.url)},[i]}class Mg extends le{constructor(t){super(),ae(this,t,Eg,Pg,oe,{url:0},Ig)}}function kg(n){ue(n,"svelte-ub47ya",".floorplan-plugin__base-image.svelte-ub47ya{width:100%;height:100%}")}function xg(n){let t,e,i,s;return{c(){t=S("div"),e=new Ks(!1),i=$(),s=new Ks(!1),e.a=i,s.a=null,w(t,"class","floorplan-plugin__base-image svelte-ub47ya")},m(o,r){B(o,t,r),e.m(n[1],t),x(t,i),s.m(n[0],t)},p(o,[r]){r&1&&s.p(o[0])},i:q,o:q,d(o){o&&O(t)}}}function Dg(n,t,e){let{content:i}=t;const s=`
185
+ `}}const mi="data:image/png;base64,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";function Zh(n){return n*180/Math.PI}function ug(n){ue(n,"svelte-17cl35n",".floorplan__camera-position.svelte-17cl35n{position:absolute;width:0;height:0}.floorplan__camera-rotate.svelte-17cl35n{position:absolute;background-repeat:no-repeat;background-size:100%}")}function fg(n){let t,e;return{c(){t=D("div"),e=D("div"),w(e,"class","floorplan__camera-rotate svelte-17cl35n"),j(e,"background-image",`url(${n[0]||mi})`),j(e,"width",n[4]),j(e,"height",n[4]),j(e,"left","-"+n[4]),j(e,"top","-"+n[4]),j(e,"transform",`rotate(${n[3]}deg)`),j(e,"transform-origin",`${n[4]} ${n[4]}`),w(t,"class","floorplan__camera-position svelte-17cl35n"),j(t,"left",n[1]),j(t,"top",n[2])},m(i,s){O(i,t,s),x(t,e)},p(i,[s]){s&1&&j(e,"background-image",`url(${i[0]||mi})`);const o=s&1;o&&j(e,"width",i[4]),o&&j(e,"height",i[4]),o&&j(e,"left","-"+i[4]),o&&j(e,"top","-"+i[4]),o&&j(e,"transform",`rotate(${i[3]}deg)`),o&&j(e,"transform-origin",`${i[4]} ${i[4]}`)},i:q,o:q,d(i){i&&z(t)}}}function mg(n,t,e){let{panoIndex:i}=t,{floorplanData:s}=t,{lastPanoramaLongitude:o}=t,{cameraImageUrl:r}=t;const{observers:a}=s,l=a[i],c=l.positionInImage.x,d=l.positionInImage.y,h=c*100+"%",u=d*100+"%",m=-Zh(o)+45,A=document.body.clientWidth,p=document.body.clientHeight,v=`${(A<500||p<500?17:37)/16}rem`;return n.$$set=y=>{"panoIndex"in y&&e(5,i=y.panoIndex),"floorplanData"in y&&e(6,s=y.floorplanData),"lastPanoramaLongitude"in y&&e(7,o=y.lastPanoramaLongitude),"cameraImageUrl"in y&&e(0,r=y.cameraImageUrl)},[r,h,u,m,v,i,s,o]}let gg=class extends le{constructor(t){super(),ae(this,t,mg,fg,oe,{panoIndex:5,floorplanData:6,lastPanoramaLongitude:7,cameraImageUrl:0},ug)}};const pg="data:image/png;base64,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";function Ag(n){ue(n,"svelte-rpkaro",".floorplan-plugin__compass.svelte-rpkaro{position:absolute;left:50%;top:-2.875rem;width:14.4375rem;height:2.5625rem;will-change:opacity;transform-origin:center 11.5rem}.floorplan-plugin__compass-image.svelte-rpkaro{width:100%;height:100%;position:absolute;left:0;top:0;opacity:0.1;background-repeat:no-repeat;background-size:100% 100%}.floorplan-plugin__compass-text.svelte-rpkaro{position:absolute;left:50%;top:0.9375rem;transform:translateX(-50%);opacity:0.2;font-weight:bold;font-size:0.625rem;color:#fff}")}function vg(n){let t,e,i,s,o;return{c(){t=D("div"),e=D("div"),i=$(),s=D("span"),o=xe(n[0]),w(e,"class","floorplan-plugin__compass-image svelte-rpkaro"),j(e,"background-image",`url(${pg})`),w(s,"class","floorplan-plugin__compass-text svelte-rpkaro"),w(t,"class","floorplan-plugin__compass svelte-rpkaro"),j(t,"transform",n[2])},m(r,a){O(r,t,a),x(t,e),x(t,i),x(t,s),x(s,o)},p(r,a){a&1&&Se(o,r[0])},d(r){r&&z(t)}}}function bg(n){let t,e=n[1]&&vg(n);return{c(){e&&e.c(),t=Ee()},m(i,s){e&&e.m(i,s),O(i,t,s)},p(i,[s]){i[1]&&e.p(i,s)},i:q,o:q,d(i){i&&z(t),e&&e.d(i)}}}function yg(n){return n/Math.PI*180}function wg(n,t,e){var c;let{floorplanData:i}=t,{northDesc:s}=t;const o=(c=i.entrance)==null?void 0:c.northRad,r=typeof o=="number",l=`translateX(-50%) translateZ(10px) rotate(${-(o?yg(o):0)+90}deg)`;return n.$$set=d=>{"floorplanData"in d&&e(3,i=d.floorplanData),"northDesc"in d&&e(0,s=d.northDesc)},[s,r,l,i]}class Cg extends le{constructor(t){super(),ae(this,t,wg,bg,oe,{floorplanData:3,northDesc:0},Ag)}}const qi=[];function Da(n,t=q){let e;const i=new Set;function s(a){if(oe(n,a)&&(n=a,e)){const l=!qi.length;for(const c of i)c[1](),qi.push(c,n);if(l){for(let c=0;c<qi.length;c+=2)qi[c][0](qi[c+1]);qi.length=0}}}function o(a){s(a(n))}function r(a,l=q){const c=[a,l];return i.add(c),i.size===1&&(e=t(s,o)||q),a(n),()=>{i.delete(c),i.size===0&&e&&(e(),e=null)}}return{set:s,update:o,subscribe:r}}function Ig(n){ue(n,"svelte-1gfoniz","img.svelte-1gfoniz{width:100%;height:100%}")}function Pg(n){let t,e;return{c(){t=D("img"),kt(t.src,e=n[0])||w(t,"src",e),w(t,"alt","floorplan iamge"),w(t,"class","svelte-1gfoniz")},m(i,s){O(i,t,s)},p(i,[s]){s&1&&!kt(t.src,e=i[0])&&w(t,"src",e)},i:q,o:q,d(i){i&&z(t)}}}function Eg(n,t,e){let{url:i}=t;return n.$$set=s=>{"url"in s&&e(0,i=s.url)},[i]}class Mg extends le{constructor(t){super(),ae(this,t,Eg,Pg,oe,{url:0},Ig)}}function kg(n){ue(n,"svelte-ub47ya",".floorplan-plugin__base-image.svelte-ub47ya{width:100%;height:100%}")}function xg(n){let t,e,i,s;return{c(){t=D("div"),e=new $s(!1),i=$(),s=new $s(!1),e.a=i,s.a=null,w(t,"class","floorplan-plugin__base-image svelte-ub47ya")},m(o,r){O(o,t,r),e.m(n[1],t),x(t,i),s.m(n[0],t)},p(o,[r]){r&1&&s.p(o[0])},i:q,o:q,d(o){o&&z(t)}}}function Dg(n,t,e){let{content:i}=t;const s=`
186
186
  <style>
187
187
  svg [type='lineGroup'] path {
188
188
  fill: #ffffff;
@@ -191,7 +191,7 @@ void main() {
191
191
  svg [type='lineItemGroup'] g g g g {
192
192
  stroke: #ffffff;
193
193
  }</style>
194
- `;return n.$$set=o=>{"content"in o&&e(0,i=o.content)},[i,s]}class Sg extends le{constructor(t){super(),ae(this,t,Dg,xg,oe,{content:0},kg)}}function Tg(n){ue(n,"svelte-ozpg4a",".floorplan-plugin__base-image.svelte-ozpg4a{position:absolute;z-index:10;width:100%;height:100%;pointer-events:none}")}function Lg(n){let t,e;return t=new Mg({props:{url:n[1].url}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.url=i[1].url),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function jg(n){let t,e;return t=new Sg({props:{content:n[0]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.content=i[0]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function zg(n){let t,e,i,s;const o=[jg,Lg],r=[];function a(l,c){return l[0]?0:l[1]?1:-1}return~(e=a(n))&&(i=r[e]=o[e](n)),{c(){t=S("div"),i&&i.c(),w(t,"class","floorplan-plugin__base-image svelte-ozpg4a")},m(l,c){B(l,t,c),~e&&r[e].m(t,null),s=!0},p(l,[c]){let d=e;e=a(l),e===d?~e&&r[e].p(l,c):(i&&(de(),j(r[d],1,1,()=>{r[d]=null}),he()),~e?(i=r[e],i?i.p(l,c):(i=r[e]=o[e](l),i.c()),k(i,1),i.m(t,null)):i=null)},i(l){s||(k(i),s=!0)},o(l){j(i),s=!1},d(l){l&&O(t),~e&&r[e].d()}}}function Og(n,t,e){let i,s,{floorIndex:o}=t,{floorplanData:r}=t;return n.$$set=a=>{"floorIndex"in a&&e(2,o=a.floorIndex),"floorplanData"in a&&e(3,r=a.floorplanData)},n.$$.update=()=>{var a,l;n.$$.dirty&12&&e(1,i=r.outlines[o]),n.$$.dirty&12&&e(0,s=(l=(a=r.outlines)==null?void 0:a[o])==null?void 0:l.svgContent)},[s,i,o,r]}class Jh extends le{constructor(t){super(),ae(this,t,Og,zg,oe,{floorIndex:2,floorplanData:3},Tg)}}function Bg(n){ue(n,"svelte-12pzct5",".floorplan-plugin__room-label-item.svelte-12pzct5{position:absolute;display:flex;flex-flow:column;align-items:center;line-height:1;color:#fff;transform:translate(-50%, -50%);white-space:nowrap;will-change:opacity;transition:opacity 300ms}.floorplan-plugin__room-size.svelte-12pzct5{opacity:0.45}")}function Vg(n){let t,e=n[8].outerHTML+"",i;return{c(){t=new Ks(!1),i=Ee(),t.a=i},m(s,o){t.m(e,s,o),B(s,i,o)},p(s,o){o&256&&e!==(e=s[8].outerHTML+"")&&t.p(e)},d(s){s&&(O(i),t.d())}}}function Rg(n){let t,e,i=n[1]&&ml(n),s=n[0]&&gl(n);return{c(){i&&i.c(),t=$(),s&&s.c(),e=Ee()},m(o,r){i&&i.m(o,r),B(o,t,r),s&&s.m(o,r),B(o,e,r)},p(o,r){o[1]?i?i.p(o,r):(i=ml(o),i.c(),i.m(t.parentNode,t)):i&&(i.d(1),i=null),o[0]?s?s.p(o,r):(s=gl(o),s.c(),s.m(e.parentNode,e)):s&&(s.d(1),s=null)},d(o){o&&(O(t),O(e)),i&&i.d(o),s&&s.d(o)}}}function ml(n){let t,e=n[2].name+"",i;return{c(){t=S("span"),i=xe(e),w(t,"class","floorplan-plugin__room-name")},m(s,o){B(s,t,o),x(t,i)},p(s,o){o&4&&e!==(e=s[2].name+"")&&Se(i,e)},d(s){s&&O(t)}}}function gl(n){let t,e;return{c(){t=S("span"),e=xe(n[7]),w(t,"class","floorplan-plugin__room-size svelte-12pzct5")},m(i,s){B(i,t,s),x(t,e)},p(i,s){s&128&&Se(e,i[7])},d(i){i&&O(t)}}}function Qg(n){let t,e,i;function s(a,l){if(a[3]===void 0)return Rg;if(a[8])return Vg}let o=s(n),r=o&&o(n);return{c(){t=S("div"),r&&r.c(),w(t,"class","floorplan-plugin__room-label-item svelte-12pzct5"),z(t,"left",n[9]),z(t,"top",n[10]),z(t,"font-size",n[11]),z(t,"opacity",n[6]?"1":"0")},m(a,l){B(a,t,l),r&&r.m(t,null),e||(i=[ei(Sn.call(null,t)),be(t,"clientWidth",n[19]),be(t,"clientHeight",n[20])],e=!0)},p(a,[l]){o===(o=s(a))&&r?r.p(a,l):(r&&r.d(1),r=o&&o(a),r&&(r.c(),r.m(t,null))),l&64&&z(t,"opacity",a[6]?"1":"0")},i:q,o:q,d(a){a&&O(t),r&&r.d(),e=!1,qe(i)}}}function Gg(n,t){const e=n[0],i=n[1];let s=!1;for(let o=0,r=t.length-1;o<t.length;r=o++){const a=t[o][0],l=t[o][1],c=t[r][0],d=t[r][1];l>i!=d>i&&e<(c-a)*(i-l)/(d-l)+a&&(s=!s)}return s}function Ng(n,t,e){let i,s,o,r,a,{pxmm:l}=t,{roomAreaEnable:c}=t,{roomNameEnable:d}=t,{room:h}=t,{hoveredRoom:u}=t,{getRoomAreaText:m}=t,{getLabelElement:A}=t,{adaptiveRoomLabelVisibleEnable:p}=t;function g(H,_){if(_.width===0||_.height===0)return()=>!1;const Q=H.path.map(({x:Ce,y:pe})=>[Ce,pe]),F=H.roomLabel.position,{x:J,y:Z}=F,{width:ee,height:ce}=_,se=ee/2,we=ce/2;return function(pe){const Ve=J*pe,Ae=Z*pe,Ye=Q.map(([ye,ze])=>[ye*pe,ze*pe]);return[[Ve+se,Ae-we],[Ve-se,Ae-we],[Ve-se,Ae+we],[Ve+se,Ae+we]].every(ye=>Gg(ye,Ye))}}const v=document.body.clientWidth,y=document.body.clientHeight,I=h.roomLabel,M=I.positionInImage.x*100+"%",D=I.positionInImage.y*100+"%",P=(v<500||y<500?10:14)+"px";let V=0,L=0,X=!1;u.subscribe(function(_){e(16,X=!!_&&_.id===h.id)});const U=H=>{e(4,V=H.detail)},N=H=>{e(5,L=H.detail)};return n.$$set=H=>{"pxmm"in H&&e(12,l=H.pxmm),"roomAreaEnable"in H&&e(0,c=H.roomAreaEnable),"roomNameEnable"in H&&e(1,d=H.roomNameEnable),"room"in H&&e(2,h=H.room),"hoveredRoom"in H&&e(13,u=H.hoveredRoom),"getRoomAreaText"in H&&e(14,m=H.getRoomAreaText),"getLabelElement"in H&&e(3,A=H.getLabelElement),"adaptiveRoomLabelVisibleEnable"in H&&e(15,p=H.adaptiveRoomLabelVisibleEnable)},n.$$.update=()=>{n.$$.dirty&12&&e(8,i=A==null?void 0:A(h)),n.$$.dirty&16388&&e(7,s=h.size?m(h.size):""),n.$$.dirty&48&&e(18,o={width:V,height:L}),n.$$.dirty&262148&&e(17,r=o?g(h,o):void 0),n.$$.dirty&233472&&e(6,a=p?X?!0:!!(r!=null&&r(l)):!0)},[c,d,h,A,V,L,a,s,i,M,D,P,l,u,m,p,X,r,o,U,N]}class Hg extends le{constructor(t){super(),ae(this,t,Ng,Qg,oe,{pxmm:12,roomAreaEnable:0,roomNameEnable:1,room:2,hoveredRoom:13,getRoomAreaText:14,getLabelElement:3,adaptiveRoomLabelVisibleEnable:15},Bg)}}function _g(n){ue(n,"svelte-13xux0b",".floorplan-plugin__room-labels.svelte-13xux0b{width:100%;height:100%;position:absolute;left:0;top:0;z-index:20;pointer-events:none}")}function pl(n,t,e){const i=n.slice();return i[12]=t[e],i}function Al(n){let t,e=[],i=new Map,s,o,r,a=Pe(n[8]);const l=c=>c[12].id;for(let c=0;c<a.length;c+=1){let d=pl(n,a,c),h=l(d);i.set(h,e[c]=vl(h,d))}return{c(){t=S("div");for(let c=0;c<e.length;c+=1)e[c].c();w(t,"class","floorplan-plugin__room-labels svelte-13xux0b")},m(c,d){B(c,t,d);for(let h=0;h<e.length;h+=1)e[h]&&e[h].m(t,null);s=!0,o||(r=[ei(Sn.call(null,t)),be(t,"clientWidth",n[11])],o=!0)},p(c,d){d&447&&(a=Pe(c[8]),de(),e=Ot(e,d,l,1,c,a,i,t,bi,vl,null,pl),he())},i(c){if(!s){for(let d=0;d<a.length;d+=1)k(e[d]);s=!0}},o(c){for(let d=0;d<e.length;d+=1)j(e[d]);s=!1},d(c){c&&O(t);for(let d=0;d<e.length;d+=1)e[d].d();o=!1,qe(r)}}}function vl(n,t){let e,i,s;const o=[{pxmm:t[7],room:t[12],hoveredRoom:t[2],roomAreaEnable:t[0],roomNameEnable:t[1],getLabelElement:t[4],getRoomAreaText:t[3],adaptiveRoomLabelVisibleEnable:t[5]}];let r={};for(let a=0;a<o.length;a+=1)r=tt(r,o[a]);return i=new Hg({props:r}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(a,l){B(a,e,l),te(i,a,l),s=!0},p(a,l){t=a;const c=l&447?ct(o,[{pxmm:t[7],room:t[12],hoveredRoom:t[2],roomAreaEnable:t[0],roomNameEnable:t[1],getLabelElement:t[4],getRoomAreaText:t[3],adaptiveRoomLabelVisibleEnable:t[5]}]):{};i.$set(c)},i(a){s||(k(i.$$.fragment,a),s=!0)},o(a){j(i.$$.fragment,a),s=!1},d(a){a&&O(e),ie(i,a)}}}function Fg(n){let t,e,i=n[8]&&Al(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[8]?i?(i.p(s,o),o&256&&k(i,1)):(i=Al(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function Wg(n,t,e){let i,{floorIndex:s}=t,{roomAreaEnable:o}=t,{roomNameEnable:r}=t,{floorplanData:a}=t,{hoveredRoom:l}=t,{getRoomAreaText:c}=t,{getLabelElement:d}=t,{adaptiveRoomLabelVisibleEnable:h}=t,u=0,m=0;const A=p=>{e(6,u=p.detail)};return n.$$set=p=>{"floorIndex"in p&&e(9,s=p.floorIndex),"roomAreaEnable"in p&&e(0,o=p.roomAreaEnable),"roomNameEnable"in p&&e(1,r=p.roomNameEnable),"floorplanData"in p&&e(10,a=p.floorplanData),"hoveredRoom"in p&&e(2,l=p.hoveredRoom),"getRoomAreaText"in p&&e(3,c=p.getRoomAreaText),"getLabelElement"in p&&e(4,d=p.getLabelElement),"adaptiveRoomLabelVisibleEnable"in p&&e(5,h=p.adaptiveRoomLabelVisibleEnable)},n.$$.update=()=>{if(n.$$.dirty&1536&&e(8,i=a.floorDatas[s].rooms),n.$$.dirty&1088){const{max:p,min:g}=a.bounding,v=p.x-g.x;e(7,m=u/v)}},[o,r,l,c,d,h,u,m,i,s,a,A]}class Yg extends le{constructor(t){super(),ae(this,t,Wg,Fg,oe,{floorIndex:9,roomAreaEnable:0,roomNameEnable:1,floorplanData:10,hoveredRoom:2,getRoomAreaText:3,getLabelElement:4,adaptiveRoomLabelVisibleEnable:5},_g)}}function Ug(n){ue(n,"svelte-djlmk4",".floorplan-plugin__rule-labels.svelte-djlmk4.svelte-djlmk4{position:absolute;display:flex}.floorplan-plugin__rule-labels--top.svelte-djlmk4.svelte-djlmk4{left:0;top:-1.25rem}.floorplan-plugin__rule-labels--bottom.svelte-djlmk4.svelte-djlmk4{left:0;bottom:-1.25rem}.floorplan-plugin__rule-labels--left.svelte-djlmk4.svelte-djlmk4{top:0;left:-1.25rem}.floorplan-plugin__rule-labels--right.svelte-djlmk4.svelte-djlmk4{top:0;right:-1.25rem}.floorplan-plugin__rule-line.svelte-djlmk4.svelte-djlmk4{background:#fff;opacity:0.05;width:100%;height:100%}.floorplan-plugin__rule-scale-wrapper.svelte-djlmk4.svelte-djlmk4{position:absolute;width:0.3125rem;height:100%;left:50%;top:0;transform:translateX(-50%)}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-scale-wrapper.svelte-djlmk4{width:100%;height:0.3125rem;top:50%;left:0;transform:translateY(-50%)}.floorplan-plugin__rule-scale.svelte-djlmk4.svelte-djlmk4{position:absolute;background:#fff;opacity:0.05;width:100%;height:0.0625rem}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-scale.svelte-djlmk4{width:0.0625rem;height:100%}.floorplan-plugin__rule-text-wrapper.svelte-djlmk4.svelte-djlmk4{position:absolute}.floorplan-plugin__rule-labels--top.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:100%;height:0;top:0.625rem}.floorplan-plugin__rule-labels--bottom.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:100%;height:0;bottom:0.625rem}.floorplan-plugin__rule-labels--left.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:0;height:100%;left:0.625rem}.floorplan-plugin__rule-labels--right.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:0;height:100%;right:0.625rem}.floorplan-plugin__rule-text-item.svelte-djlmk4.svelte-djlmk4{width:0;height:0;position:absolute;transform:rotate(90deg)}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-text-item.svelte-djlmk4{transform:rotate(0)}.floorplan-plugin__rule-text.svelte-djlmk4.svelte-djlmk4{width:-moz-max-content;width:max-content;transform:translate(-50%, -50%);font-size:0.625rem;color:#fff;opacity:0.2}")}function bl(n,t,e){const i=n.slice();return i[11]=t[e],i[13]=e,i}function yl(n,t,e){const i=n.slice();return i[14]=t[e],i}function wl(n){let t;return{c(){t=S("div"),w(t,"class","floorplan-plugin__rule-scale svelte-djlmk4"),z(t,"left",n[14].left*100+"%"),z(t,"bottom",n[14].bottom*100+"%")},m(e,i){B(e,t,i)},p:q,d(e){e&&O(t)}}}function Cl(n,t){let e,i,s=t[1](t[11].distance)+"",o,r;return{key:n,first:null,c(){e=S("div"),i=S("div"),o=xe(s),r=$(),w(i,"class","floorplan-plugin__rule-text svelte-djlmk4"),K(i,"is-row",t[2]),w(e,"class","floorplan-plugin__rule-text-item svelte-djlmk4"),z(e,"left",t[11].left*100+"%"),z(e,"bottom",t[11].bottom*100+"%"),this.first=e},m(a,l){B(a,e,l),x(e,i),x(i,o),x(e,r)},p(a,l){t=a,l&2&&s!==(s=t[1](t[11].distance)+"")&&Se(o,s)},d(a){a&&O(e)}}}function Xg(n){let t,e,i,s,o,r,a=[],l=new Map,c,d=Pe(n[3]),h=[];for(let A=0;A<d.length;A+=1)h[A]=wl(yl(n,d,A));let u=Pe(n[4]);const m=A=>A[13];for(let A=0;A<u.length;A+=1){let p=bl(n,u,A),g=m(p);l.set(g,a[A]=Cl(g,p))}return{c(){t=S("div"),e=S("div"),i=$(),s=S("div");for(let A=0;A<h.length;A+=1)h[A].c();o=$(),r=S("div");for(let A=0;A<a.length;A+=1)a[A].c();w(e,"class","floorplan-plugin__rule-line svelte-djlmk4"),w(s,"class","floorplan-plugin__rule-scale-wrapper svelte-djlmk4"),K(s,"is-row",n[2]),w(r,"class","floorplan-plugin__rule-text-wrapper svelte-djlmk4"),w(t,"class",c="floorplan-plugin__rule-labels floorplan-plugin__rule-labels--"+n[0]+" svelte-djlmk4"),K(t,"is-row",n[2]),z(t,"width",n[2]?"100%":1/16+"rem"),z(t,"height",n[2]?1/16+"rem":"100%")},m(A,p){B(A,t,p),x(t,e),x(t,i),x(t,s);for(let g=0;g<h.length;g+=1)h[g]&&h[g].m(s,null);x(t,o),x(t,r);for(let g=0;g<a.length;g+=1)a[g]&&a[g].m(r,null)},p(A,[p]){if(p&8){d=Pe(A[3]);let g;for(g=0;g<d.length;g+=1){const v=yl(A,d,g);h[g]?h[g].p(v,p):(h[g]=wl(v),h[g].c(),h[g].m(s,null))}for(;g<h.length;g+=1)h[g].d(1);h.length=d.length}p&22&&(u=Pe(A[4]),a=Ot(a,p,m,1,A,u,l,r,Ma,Cl,null,bl)),p&1&&c!==(c="floorplan-plugin__rule-labels floorplan-plugin__rule-labels--"+A[0]+" svelte-djlmk4")&&w(t,"class",c),p&5&&K(t,"is-row",A[2])},i:q,o:q,d(A){A&&O(t),jt(h,A);for(let p=0;p<a.length;p+=1)a[p].d()}}}const Ki=1e3,$i=180;function Zg(n,t,e){let{type:i}=t,{data:s}=t,{bounding:o}=t,{getRuleDistanceText:r}=t;const a=i==="top"||i==="bottom",l=o.max.x-o.min.x-(Ki-$i)*2,c=o.max.y-o.min.y-(Ki-$i)*2,d=s.map(([A,p])=>a?[A.x,p.x]:[A.y,p.y]).flat().sort().filter((A,p,g)=>p===0?!0:A!==g[p-1]),h=d.map(A=>{const p=a?(A-o.min.x-Ki+$i)/l:0,g=a?0:(A-o.min.y-Ki+$i)/c;return{left:p,bottom:g}});h.unshift({left:0,bottom:0}),h.push(a?{left:1,bottom:0}:{left:0,bottom:1});const u=d[d.length-1]-d[0],m=d.map((A,p,g)=>{const v=p===0?0:A-g[p-1],y=p===0?0:(A+g[p-1])/2,I=a?(y-o.min.x-Ki+$i)/l:0,M=a?0:(y-o.min.y-Ki+$i)/c;return{left:I,bottom:M,distance:v}}).filter(({distance:A})=>A/u>.1);return n.$$set=A=>{"type"in A&&e(0,i=A.type),"data"in A&&e(5,s=A.data),"bounding"in A&&e(6,o=A.bounding),"getRuleDistanceText"in A&&e(1,r=A.getRuleDistanceText)},[i,r,a,h,m,s,o]}class Jg extends le{constructor(t){super(),ae(this,t,Zg,Xg,oe,{type:0,data:5,bounding:6,getRuleDistanceText:1},Ug)}}function qg(n){ue(n,"svelte-1mzj9p3",".floorplan-plugin__rule-labels-wrapper.svelte-1mzj9p3{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);pointer-events:none}")}function Il(n,t,e){const i=n.slice();return i[13]=t[e][0],i[14]=t[e][1],i}function Pl(n,t){let e,i,s;const o=[{type:t[13],data:t[14],bounding:t[1],getRuleDistanceText:t[0]}];let r={};for(let a=0;a<o.length;a+=1)r=tt(r,o[a]);return i=new Jg({props:r}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(a,l){B(a,e,l),te(i,a,l),s=!0},p(a,l){t=a;const c=l&19?ct(o,[{type:t[13],data:t[14],bounding:t[1],getRuleDistanceText:t[0]}]):{};i.$set(c)},i(a){s||(k(i.$$.fragment,a),s=!0)},o(a){j(i.$$.fragment,a),s=!1},d(a){a&&O(e),ie(i,a)}}}function Kg(n){let t,e=[],i=new Map,s,o=Pe(n[4]);const r=a=>a[13];for(let a=0;a<o.length;a+=1){let l=Il(n,o,a),c=r(l);i.set(c,e[a]=Pl(c,l))}return{c(){t=S("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","floorplan-plugin__rule-labels-wrapper svelte-1mzj9p3"),z(t,"width",n[3]),z(t,"height",n[2])},m(a,l){B(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,[l]){l&19&&(o=Pe(a[4]),de(),e=Ot(e,l,r,1,a,o,i,t,bi,Pl,null,Il),he()),l&8&&z(t,"width",a[3]),l&4&&z(t,"height",a[2])},i(a){if(!s){for(let l=0;l<o.length;l+=1)k(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)j(e[l]);s=!1},d(a){a&&O(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}const El=1e3,Ml=180;function $g(n,t,e){let i,s,o,r,a,l,c,d,h,u,{floorIndex:m}=t,{floorplanData:A}=t,{getRuleDistanceText:p}=t;return n.$$set=g=>{"floorIndex"in g&&e(5,m=g.floorIndex),"floorplanData"in g&&e(6,A=g.floorplanData),"getRuleDistanceText"in g&&e(0,p=g.getRuleDistanceText)},n.$$.update=()=>{n.$$.dirty&64&&e(1,i=A.bounding),n.$$.dirty&96&&e(11,s=A.floorDatas[m].rules),n.$$.dirty&2048&&e(12,o=Object.keys(s)),n.$$.dirty&6144&&e(4,r=o.map(g=>[g,s[g]])),n.$$.dirty&2&&e(9,a=i.max.x-i.min.x),n.$$.dirty&2&&e(7,l=i.max.y-i.min.y),n.$$.dirty&2&&e(10,c=i.max.x-i.min.x-(El-Ml)*2),n.$$.dirty&2&&e(8,d=i.max.y-i.min.y-(El-Ml)*2),n.$$.dirty&1536&&e(3,h=c/a*100+"%"),n.$$.dirty&384&&e(2,u=d/l*100+"%")},[p,i,u,h,r,m,A,l,d,a,c,s,o]}class ep extends le{constructor(t){super(),ae(this,t,$g,Kg,oe,{floorIndex:5,floorplanData:6,getRuleDistanceText:0},qg)}}function Po(n,t={}){let e="";const{needZ:i,needA:s}=t;return(i?n.slice().concat(n[0]):n.slice()).forEach((r,a)=>{const{x:l,y:c}=t.format?t.format(r):r,d=l+","+c;return a===0?(e+="M"+d,e):s!=null&&s[a]?(e+="A"+s[a]+","+d,e):(e+="L"+d,e)}),e+(i?"Z":"")}function qh({x:n,y:t},e){const{max:i,min:s}=e;return{x:n-s.x,y:i.y-t}}function tp(n,t){const e=n.x*1e3+t.bounding.origin.x,i=-n.z*1e3+t.bounding.origin.y;return{x:e,y:i}}function ip(n,t){const e=t.bounding,i=e.max.x-e.min.x,s=e.max.y-e.min.y;return{x:(n.x-e.min.x)/i,y:(e.max.y-n.y)/s}}function np(n,t){return Math.max(...t.work.observers.map(i=>n.z>=i.standingPosition.z?i.floorIndex:0))}function sp(n){let t;return{c(){t=Be("path"),w(t,"d",n[0]),w(t,"fill","#2F313A")},m(e,i){B(e,t,i)},p(e,[i]){i&1&&w(t,"d",e[0])},i:q,o:q,d(e){e&&O(t)}}}function op(n,t,e){let i,{path:s}=t;return n.$$set=o=>{"path"in o&&e(1,s=o.path)},n.$$.update=()=>{n.$$.dirty&2&&e(0,i=Po(s,{needZ:!0}))},[i,s]}class rp extends le{constructor(t){super(),ae(this,t,op,sp,oe,{path:1})}}function ap(n){let t,e,i,s,o,r;return{c(){t=Be("defs"),e=Be("pattern"),i=Be("rect"),s=Be("path"),o=$(),r=Be("path"),w(i,"x","0"),w(i,"y","0"),w(i,"width",n[1]),w(i,"height",n[1]),w(i,"fill","#323747"),w(s,"d",n[2]),w(s,"stroke","#ffffff"),w(s,"stroke-opacity","0.06"),w(s,"stroke-width","0.5"),w(s,"fill","none"),w(e,"id","fpm-room-pattern-0"),w(e,"x","0"),w(e,"y","0"),w(e,"width",n[1]),w(e,"height",n[1]),w(e,"patternUnits","userSpaceOnUse"),w(e,"patternTransform","scale(50 50)"),w(r,"d",n[0]),w(r,"fill","url(#fpm-room-pattern-0)")},m(a,l){B(a,t,l),x(t,e),x(e,i),x(e,s),B(a,o,l),B(a,r,l)},p(a,[l]){l&1&&w(r,"d",a[0])},i:q,o:q,d(a){a&&(O(t),O(o),O(r))}}}const Pr=6;function lp(n,t,e){let i,{path:s}=t;const o=Pr*2,r=`M0 ${Pr} h ${o} M${Pr} 0 v ${o}`;return n.$$set=a=>{"path"in a&&e(3,s=a.path)},n.$$.update=()=>{n.$$.dirty&8&&e(0,i=Po(s,{needZ:!0}))},[i,o,r,s]}class cp extends le{constructor(t){super(),ae(this,t,lp,ap,oe,{path:3})}}function dp(n){let t,e,i,s,o,r,a,l,c,d,h;return{c(){t=Be("defs"),e=Be("pattern"),i=Be("rect"),s=Be("pattern"),o=Be("rect"),r=$(),a=Be("path"),l=$(),c=Be("path"),d=$(),h=Be("path"),w(i,"x","0"),w(i,"y","0"),w(i,"width","6"),w(i,"height","50"),w(i,"fill","none"),w(i,"stroke","#4B4B57"),w(i,"stroke-width","0.5"),w(e,"id","room-material-pattern-1"),w(e,"x","0"),w(e,"y","0"),w(e,"width","12"),w(e,"height","50"),w(e,"patternUnits","userSpaceOnUse"),w(e,"patternTransform","scale(50 50)"),w(o,"x","0"),w(o,"y","0"),w(o,"width","6"),w(o,"height","50"),w(o,"fill","none"),w(o,"stroke","#4B4B57"),w(o,"stroke-width","0.5"),w(s,"id","room-material-pattern-2"),w(s,"x","6"),w(s,"y","25"),w(s,"width","12"),w(s,"height","50"),w(s,"patternUnits","userSpaceOnUse"),w(s,"patternTransform","scale(50 50)"),w(a,"d",n[0]),w(a,"fill","#43434D"),w(c,"d",n[0]),w(c,"fill","url(#room-material-pattern-1)"),w(h,"d",n[0]),w(h,"fill","url(#room-material-pattern-2)")},m(u,m){B(u,t,m),x(t,e),x(e,i),x(t,s),x(s,o),B(u,r,m),B(u,a,m),B(u,l,m),B(u,c,m),B(u,d,m),B(u,h,m)},p(u,[m]){m&1&&w(a,"d",u[0]),m&1&&w(c,"d",u[0]),m&1&&w(h,"d",u[0])},i:q,o:q,d(u){u&&(O(t),O(r),O(a),O(l),O(c),O(d),O(h))}}}function hp(n,t,e){let i,{path:s}=t;return n.$$set=o=>{"path"in o&&e(1,s=o.path)},n.$$.update=()=>{n.$$.dirty&2&&e(0,i=Po(s,{needZ:!0}))},[i,s]}class up extends le{constructor(t){super(),ae(this,t,hp,dp,oe,{path:1})}}function fp(n){ue(n,"svelte-1dykexu",".floorplan-plugin__room-material.svelte-1dykexu{position:absolute;left:0;top:0;width:100%;height:100%}svg.svelte-1dykexu{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}")}function kl(n,t,e){const i=n.slice();return i[5]=t[e],i}function mp(n){let t,e;return t=new cp({props:{path:n[5].path}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.path=i[5].path),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function gp(n){let t,e;return t=new up({props:{path:n[5].path}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.path=i[5].path),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function pp(n){let t,e;return t=new rp({props:{path:n[5].path}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.path=i[5].path),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function xl(n){let t,e,i,s;const o=[pp,gp,mp],r=[];function a(l,c){return l[5].floorType===1?0:l[5].floorType===0?1:2}return e=a(n),i=r[e]=o[e](n),{c(){t=Be("svg"),i.c(),w(t,"width","100%"),w(t,"height","100%"),w(t,"viewBox",`0 0 ${n[1]} ${n[2]}`),w(t,"class","svelte-1dykexu")},m(l,c){B(l,t,c),r[e].m(t,null),s=!0},p(l,c){let d=e;e=a(l),e===d?r[e].p(l,c):(de(),j(r[d],1,1,()=>{r[d]=null}),he(),i=r[e],i?i.p(l,c):(i=r[e]=o[e](l),i.c()),k(i,1),i.m(t,null))},i(l){s||(k(i),s=!0)},o(l){j(i),s=!1},d(l){l&&O(t),r[e].d()}}}function Ap(n){let t,e,i=Pe(n[0]),s=[];for(let r=0;r<i.length;r+=1)s[r]=xl(kl(n,i,r));const o=r=>j(s[r],1,1,()=>{s[r]=null});return{c(){t=S("div");for(let r=0;r<s.length;r+=1)s[r].c();w(t,"class","floorplan-plugin__room-material svelte-1dykexu")},m(r,a){B(r,t,a);for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(t,null);e=!0},p(r,[a]){if(a&7){i=Pe(r[0]);let l;for(l=0;l<i.length;l+=1){const c=kl(r,i,l);s[l]?(s[l].p(c,a),k(s[l],1)):(s[l]=xl(c),s[l].c(),k(s[l],1),s[l].m(t,null))}for(de(),l=i.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<i.length;a+=1)k(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)j(s[a]);e=!1},d(r){r&&O(t),jt(s,r)}}}function vp(n,t,e){let i,{floorIndex:s}=t,{floorplanData:o}=t;const r=o.bounding.max.x-o.bounding.min.x,a=o.bounding.max.y-o.bounding.min.y;return n.$$set=l=>{"floorIndex"in l&&e(3,s=l.floorIndex),"floorplanData"in l&&e(4,o=l.floorplanData)},n.$$.update=()=>{n.$$.dirty&24&&e(0,i=o.floorDatas[s].rooms.map(l=>ve(G({},l),{path:l.path.map(c=>qh(c,o.bounding))})))},[i,r,a,s,o]}class bp extends le{constructor(t){super(),ae(this,t,vp,Ap,oe,{floorIndex:3,floorplanData:4},fp)}}function yp(n){ue(n,"svelte-qq2273","path.svelte-qq2273{--opacity:0;opacity:var(--opacity)}path.svelte-qq2273:hover{opacity:calc(var(--opacity) + 0.1)}")}function wp(n){let t,e,i,s;return{c(){t=Be("path"),w(t,"d",n[5]),w(t,"fill","#fff"),w(t,"style",n[2]),w(t,"id",e=`${n[1]}_${n[0].id}`),w(t,"class","svelte-qq2273")},m(o,r){B(o,t,r),i||(s=[be(t,"mouseenter",n[3]),be(t,"mouseleave",n[4])],i=!0)},p(o,[r]){r&4&&w(t,"style",o[2]),r&3&&e!==(e=`${o[1]}_${o[0].id}`)&&w(t,"id",e)},i:q,o:q,d(o){o&&O(t),i=!1,qe(s)}}}function Cp(n,t,e){let i,s,{room:o}=t,{floorIndex:r}=t,{floorplanData:a}=t,{highlightData:l}=t,{hoveredRoom:c}=t;function d(){c==null||c.set(o)}function h(){c==null||c.set(void 0)}const{bounding:u}=a,m=Po(o.path,{needZ:!0,format:A=>qh(A,u)});return n.$$set=A=>{"room"in A&&e(0,o=A.room),"floorIndex"in A&&e(1,r=A.floorIndex),"floorplanData"in A&&e(6,a=A.floorplanData),"highlightData"in A&&e(7,l=A.highlightData),"hoveredRoom"in A&&e(8,c=A.hoveredRoom)},n.$$.update=()=>{n.$$.dirty&131&&e(9,i=l[`${r}_${o.id}`]),n.$$.dirty&512&&e(2,s=i?`fill: ${i.color}; --opacity: ${i.opacity}; pointer-events: ${i.disabled?"none":"auto"}`:null)},[o,r,s,d,h,m,a,l,c,i]}class Ip extends le{constructor(t){super(),ae(this,t,Cp,wp,oe,{room:0,floorIndex:1,floorplanData:6,highlightData:7,hoveredRoom:8},yp)}}function Pp(n){ue(n,"svelte-1kqo6e4",".floorplan-plugin__room-highlight.svelte-1kqo6e4{position:absolute;width:100%;height:100%}svg.svelte-1kqo6e4{width:100%;height:100%;overflow:visible}")}function Dl(n,t,e){const i=n.slice();return i[6]=t[e],i}function Sl(n,t){let e,i,s;const o=[{room:t[6],floorplanData:t[1],hoveredRoom:t[3],floorIndex:t[0],highlightData:t[2]}];let r={};for(let a=0;a<o.length;a+=1)r=tt(r,o[a]);return i=new Ip({props:r}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(a,l){B(a,e,l),te(i,a,l),s=!0},p(a,l){t=a;const c=l&15?ct(o,[{room:t[6],floorplanData:t[1],hoveredRoom:t[3],floorIndex:t[0],highlightData:t[2]}]):{};i.$set(c)},i(a){s||(k(i.$$.fragment,a),s=!0)},o(a){j(i.$$.fragment,a),s=!1},d(a){a&&O(e),ie(i,a)}}}function Ep(n){let t,e,i=[],s=new Map,o,r=Pe(n[1].floorDatas[n[0]].rooms);const a=l=>l[6].id;for(let l=0;l<r.length;l+=1){let c=Dl(n,r,l),d=a(c);s.set(d,i[l]=Sl(d,c))}return{c(){t=S("div"),e=Be("svg");for(let l=0;l<i.length;l+=1)i[l].c();w(e,"width","100%"),w(e,"height","100%"),w(e,"viewBox",`0 0 ${n[4]} ${n[5]}`),w(e,"class","svelte-1kqo6e4"),w(t,"class","floorplan-plugin__room-highlight svelte-1kqo6e4")},m(l,c){B(l,t,c),x(t,e);for(let d=0;d<i.length;d+=1)i[d]&&i[d].m(e,null);o=!0},p(l,[c]){c&15&&(r=Pe(l[1].floorDatas[l[0]].rooms),de(),i=Ot(i,c,a,1,l,r,s,e,bi,Sl,null,Dl),he())},i(l){if(!o){for(let c=0;c<r.length;c+=1)k(i[c]);o=!0}},o(l){for(let c=0;c<i.length;c+=1)j(i[c]);o=!1},d(l){l&&O(t);for(let c=0;c<i.length;c+=1)i[c].d()}}}function Mp(n,t,e){let{floorIndex:i}=t,{floorplanData:s}=t,{highlightData:o}=t,{hoveredRoom:r}=t;const a=s.bounding.max.x-s.bounding.min.x,l=s.bounding.max.y-s.bounding.min.y;return n.$$set=c=>{"floorIndex"in c&&e(0,i=c.floorIndex),"floorplanData"in c&&e(1,s=c.floorplanData),"highlightData"in c&&e(2,o=c.highlightData),"hoveredRoom"in c&&e(3,r=c.hoveredRoom)},[i,s,o,r,a,l]}class Kh extends le{constructor(t){super(),ae(this,t,Mp,Ep,oe,{floorIndex:0,floorplanData:1,highlightData:2,hoveredRoom:3},Pp)}}function kp(n){ue(n,"svelte-bl8zrz",".floorplan-plugin__floor.svelte-bl8zrz{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;pointer-events:none}.floorplan-plugin__floor--is-current.svelte-bl8zrz{opacity:1;pointer-events:auto}")}function Tl(n){let t,e;const i=[{floorIndex:n[1],floorplanData:n[8],hoveredRoom:n[14],highlightData:n[13]}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new Kh({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&24834?ct(i,[{floorIndex:o[1],floorplanData:o[8],hoveredRoom:o[14],highlightData:o[13]}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function Ll(n){let t,e;const i=[{floorplanData:n[8],roomAreaEnable:n[5],roomNameEnable:n[6],floorIndex:n[1],getRoomAreaText:n[9],getLabelElement:n[10],hoveredRoom:n[14],adaptiveRoomLabelVisibleEnable:n[12]}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new Yg({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&22370?ct(i,[{floorplanData:o[8],roomAreaEnable:o[5],roomNameEnable:o[6],floorIndex:o[1],getRoomAreaText:o[9],getLabelElement:o[10],hoveredRoom:o[14],adaptiveRoomLabelVisibleEnable:o[12]}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function jl(n){let t,e;const i=[{floorplanData:n[8],floorIndex:n[1],getRuleDistanceText:n[11]}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new ep({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&2306?ct(i,[{floorplanData:o[8],floorIndex:o[1],getRuleDistanceText:o[11]}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function xp(n){let t,e,i,s,o,r,a,l,c;const d=[{floorIndex:n[1],floorplanData:n[8]}];let h={};for(let v=0;v<d.length;v+=1)h=tt(h,d[v]);e=new bp({props:h});let u=(n[2]||n[3])&&Tl(n);const m=[{floorplanData:n[8],floorIndex:n[1]}];let A={};for(let v=0;v<m.length;v+=1)A=tt(A,m[v]);o=new Jh({props:A});let p=n[4]&&Ll(n),g=n[7]&&jl(n);return{c(){t=S("div"),ne(e.$$.fragment),i=$(),u&&u.c(),s=$(),ne(o.$$.fragment),r=$(),p&&p.c(),a=$(),g&&g.c(),w(t,"class",l=Qe(`floorplan-plugin__floor${n[0]?" floorplan-plugin__floor--is-current":""}`)+" svelte-bl8zrz")},m(v,y){B(v,t,y),te(e,t,null),x(t,i),u&&u.m(t,null),x(t,s),te(o,t,null),x(t,r),p&&p.m(t,null),x(t,a),g&&g.m(t,null),c=!0},p(v,[y]){const I=y&258?ct(d,[{floorIndex:v[1],floorplanData:v[8]}]):{};e.$set(I),v[2]||v[3]?u?(u.p(v,y),y&12&&k(u,1)):(u=Tl(v),u.c(),k(u,1),u.m(t,s)):u&&(de(),j(u,1,1,()=>{u=null}),he());const M=y&258?ct(m,[{floorplanData:v[8],floorIndex:v[1]}]):{};o.$set(M),v[4]?p?(p.p(v,y),y&16&&k(p,1)):(p=Ll(v),p.c(),k(p,1),p.m(t,a)):p&&(de(),j(p,1,1,()=>{p=null}),he()),v[7]?g?(g.p(v,y),y&128&&k(g,1)):(g=jl(v),g.c(),k(g,1),g.m(t,null)):g&&(de(),j(g,1,1,()=>{g=null}),he()),(!c||y&1&&l!==(l=Qe(`floorplan-plugin__floor${v[0]?" floorplan-plugin__floor--is-current":""}`)+" svelte-bl8zrz"))&&w(t,"class",l)},i(v){c||(k(e.$$.fragment,v),k(u),k(o.$$.fragment,v),k(p),k(g),c=!0)},o(v){j(e.$$.fragment,v),j(u),j(o.$$.fragment,v),j(p),j(g),c=!1},d(v){v&&O(t),ie(e),u&&u.d(),ie(o),p&&p.d(),g&&g.d()}}}function Dp(n,t,e){let{isCurrent:i}=t,{floorIndex:s}=t,{highlightEnable:o}=t,{hoverEnable:r}=t,{roomLabelsEnable:a}=t,{roomAreaEnable:l}=t,{roomNameEnable:c}=t,{ruleLabelsEnable:d}=t,{floorplanData:h}=t,{getRoomAreaText:u}=t,{getLabelElement:m}=t,{getRuleDistanceText:A}=t,{adaptiveRoomLabelVisibleEnable:p}=t,{highlightData:g}=t;const v=Da(void 0);return n.$$set=y=>{"isCurrent"in y&&e(0,i=y.isCurrent),"floorIndex"in y&&e(1,s=y.floorIndex),"highlightEnable"in y&&e(2,o=y.highlightEnable),"hoverEnable"in y&&e(3,r=y.hoverEnable),"roomLabelsEnable"in y&&e(4,a=y.roomLabelsEnable),"roomAreaEnable"in y&&e(5,l=y.roomAreaEnable),"roomNameEnable"in y&&e(6,c=y.roomNameEnable),"ruleLabelsEnable"in y&&e(7,d=y.ruleLabelsEnable),"floorplanData"in y&&e(8,h=y.floorplanData),"getRoomAreaText"in y&&e(9,u=y.getRoomAreaText),"getLabelElement"in y&&e(10,m=y.getLabelElement),"getRuleDistanceText"in y&&e(11,A=y.getRuleDistanceText),"adaptiveRoomLabelVisibleEnable"in y&&e(12,p=y.adaptiveRoomLabelVisibleEnable),"highlightData"in y&&e(13,g=y.highlightData)},[i,s,o,r,a,l,c,d,h,u,m,A,p,g,v]}let Sp=class extends le{constructor(t){super(),ae(this,t,Dp,xp,oe,{isCurrent:0,floorIndex:1,highlightEnable:2,hoverEnable:3,roomLabelsEnable:4,roomAreaEnable:5,roomNameEnable:6,ruleLabelsEnable:7,floorplanData:8,getRoomAreaText:9,getLabelElement:10,getRuleDistanceText:11,adaptiveRoomLabelVisibleEnable:12,highlightData:13},kp)}};function Tp(n){ue(n,"svelte-86bqav",".floorplan-main.svelte-86bqav{width:100%;height:100%;pointer-events:none}")}function zl(n,t,e){const i=n.slice();return i[21]=t[e],i}function Ol(n){let t,e,i,s,o,r=Pe(n[13].floorDatas),a=[];for(let h=0;h<r.length;h+=1)a[h]=Bl(zl(n,r,h));const l=h=>j(a[h],1,1,()=>{a[h]=null});let c=n[5]&&Vl(n),d=n[8]&&Rl(n);return{c(){t=S("div");for(let h=0;h<a.length;h+=1)a[h].c();e=$(),c&&c.c(),i=$(),d&&d.c(),w(t,"class","floorplan-main svelte-86bqav")},m(h,u){B(h,t,u);for(let m=0;m<a.length;m+=1)a[m]&&a[m].m(t,null);x(t,e),c&&c.m(t,null),x(t,i),d&&d.m(t,null),o=!0},p(h,u){if(n=h,u&2047696){r=Pe(n[13].floorDatas);let m;for(m=0;m<r.length;m+=1){const A=zl(n,r,m);a[m]?(a[m].p(A,u),k(a[m],1)):(a[m]=Bl(A),a[m].c(),k(a[m],1),a[m].m(t,e))}for(de(),m=r.length;m<a.length;m+=1)l(m);he()}n[5]?c?(c.p(n,u),u&32&&k(c,1)):(c=Vl(n),c.c(),k(c,1),c.m(t,i)):c&&(de(),j(c,1,1,()=>{c=null}),he()),n[8]?d?(d.p(n,u),u&256&&k(d,1)):(d=Rl(n),d.c(),k(d,1),d.m(t,null)):d&&(de(),j(d,1,1,()=>{d=null}),he())},i(h){if(!o){for(let u=0;u<r.length;u+=1)k(a[u]);k(c),k(d),h&&(s||He(()=>{s=Vi(t,it,{duration:n[0],easing:ti}),s.start()})),o=!0}},o(h){a=a.filter(Boolean);for(let u=0;u<a.length;u+=1)j(a[u]);j(c),j(d),o=!1},d(h){h&&O(t),jt(a,h),c&&c.d(),d&&d.d()}}}function Bl(n){let t,e;const i=[{hoverEnable:n[6],highlightEnable:n[7],floorplanData:n[13],getRoomAreaText:n[16],getLabelElement:n[17],getRuleDistanceText:n[18],roomLabelsEnable:n[9],roomAreaEnable:n[10],roomNameEnable:n[11],ruleLabelsEnable:n[12],adaptiveRoomLabelVisibleEnable:n[19],highlightData:n[20]},{floorIndex:n[21].floorIndex},{isCurrent:n[21].floorIndex===n[4]}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new Sp({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&2047696?ct(i,[r&2047680&&{hoverEnable:o[6],highlightEnable:o[7],floorplanData:o[13],getRoomAreaText:o[16],getLabelElement:o[17],getRuleDistanceText:o[18],roomLabelsEnable:o[9],roomAreaEnable:o[10],roomNameEnable:o[11],ruleLabelsEnable:o[12],adaptiveRoomLabelVisibleEnable:o[19],highlightData:o[20]},r&8192&&{floorIndex:o[21].floorIndex},r&8208&&{isCurrent:o[21].floorIndex===o[4]}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function Vl(n){let t,e;const i=[{panoIndex:n[3],floorplanData:n[13],lastPanoramaLongitude:n[14],cameraImageUrl:n[15]}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new gg({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&57352?ct(i,[{panoIndex:o[3],floorplanData:o[13],lastPanoramaLongitude:o[14],cameraImageUrl:o[15]}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function Rl(n){let t,e;return t=new Cg({props:{floorplanData:n[13],northDesc:n[2]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&8192&&(o.floorplanData=i[13]),s&4&&(o.northDesc=i[2]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function Lp(n){let t,e,i=n[1]&&Ol(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[1]?i?(i.p(s,o),o&2&&k(i,1)):(i=Ol(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function jp(n,t,e){let{duration:i=0}=t,{visible:s}=t,{northDesc:o}=t,{panoIndex:r}=t,{floorIndex:a}=t,{cameraEnable:l}=t,{hoverEnable:c}=t,{highlightEnable:d}=t,{compassEnable:h}=t,{roomLabelsEnable:u}=t,{roomAreaEnable:m}=t,{roomNameEnable:A}=t,{ruleLabelsEnable:p}=t,{floorplanData:g}=t,{lastPanoramaLongitude:v}=t,{cameraImageUrl:y}=t,{getRoomAreaText:I}=t,{getLabelElement:M}=t,{getRuleDistanceText:D}=t,{adaptiveRoomLabelVisibleEnable:P}=t,{highlightData:V}=t;return n.$$set=L=>{"duration"in L&&e(0,i=L.duration),"visible"in L&&e(1,s=L.visible),"northDesc"in L&&e(2,o=L.northDesc),"panoIndex"in L&&e(3,r=L.panoIndex),"floorIndex"in L&&e(4,a=L.floorIndex),"cameraEnable"in L&&e(5,l=L.cameraEnable),"hoverEnable"in L&&e(6,c=L.hoverEnable),"highlightEnable"in L&&e(7,d=L.highlightEnable),"compassEnable"in L&&e(8,h=L.compassEnable),"roomLabelsEnable"in L&&e(9,u=L.roomLabelsEnable),"roomAreaEnable"in L&&e(10,m=L.roomAreaEnable),"roomNameEnable"in L&&e(11,A=L.roomNameEnable),"ruleLabelsEnable"in L&&e(12,p=L.ruleLabelsEnable),"floorplanData"in L&&e(13,g=L.floorplanData),"lastPanoramaLongitude"in L&&e(14,v=L.lastPanoramaLongitude),"cameraImageUrl"in L&&e(15,y=L.cameraImageUrl),"getRoomAreaText"in L&&e(16,I=L.getRoomAreaText),"getLabelElement"in L&&e(17,M=L.getLabelElement),"getRuleDistanceText"in L&&e(18,D=L.getRuleDistanceText),"adaptiveRoomLabelVisibleEnable"in L&&e(19,P=L.adaptiveRoomLabelVisibleEnable),"highlightData"in L&&e(20,V=L.highlightData)},[i,s,o,r,a,l,c,d,h,u,m,A,p,g,v,y,I,M,D,P,V]}let Sa=class extends le{constructor(t){super(),ae(this,t,jp,Lp,oe,{duration:0,visible:1,northDesc:2,panoIndex:3,floorIndex:4,cameraEnable:5,hoverEnable:6,highlightEnable:7,compassEnable:8,roomLabelsEnable:9,roomAreaEnable:10,roomNameEnable:11,ruleLabelsEnable:12,floorplanData:13,lastPanoramaLongitude:14,cameraImageUrl:15,getRoomAreaText:16,getLabelElement:17,getRuleDistanceText:18,adaptiveRoomLabelVisibleEnable:19,highlightData:20},Tp)}};const zp="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAwCAYAAACFUvPfAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAALaADAAQAAAABAAAAMAAAAADe2FZjAAAEF0lEQVRoBe2WzWskRRiHf13V092TxI2oEzYeVDwITtyDuCiihwiCePGgxIM3vYgHL4J4UIhBRA8i/gPqyUvWg7AiIuIeloDiYUHJLOK6BPwIk9nNODM9Xf1RVe1b3elJRjCZmQ6euqGmuqer33rq4e23GqiOykBloDJQGagMVAYqA5WBykBlYFYD1qwP/tdzaZqOx9zYOLxeX0+L5yzLGp0X/03a25MOnGRcBtx+6Rlo9SL08G4EooFnxa8Yiivox5/h5Ys/4cl7NVorNDRnngX+0MIkVMeMSf23zyKML8J7/Dy8hwF2Buh9CnS+AEQIdLspBuGb+M7/qLW4qJrNpsLapjYhpwVnx3BMfCtNNx3Etc9xywvnMf80wG8HmQainw0RxSGrnmeBp+8k5/j9S0HbvXb5io0Lz880/0wPHV1NlhLd316He+4xOCv5ragF7L9PrH1qBJyB0626x/lC+qrSvH5r/W+n1WpxUM5nMY4GPeH8lHJaPgfeAFQHCL+ntkXT+vnUc3W6pvTIwC0wy3rA4dwLmK2avZ7Eo9uKBuYJfgJscbs8dLCxDMt+EOEPBEZNEWyBYHqTz6bPXrzUnNrSShxHIsYiOL69zrCGLLcLqJP68tB+9w5wj+YhWDafQ2s61wNqxjZhmrQ2pvMFCEvXuCUZ7wqH794ZWs28LJqlTXSUyuksF2M/yOwqgkx2c1ADa4wLAQRk2sAGQQakhN6yFC2hltfz5kSY44NKQeeh+vtI/SSzWhg2CzCgmWISmKUGmaYFBDfCSymnfxJ6/+ospVcWOLLp5DGP/y0P/Rp66O99DQNq7Po3Ds0a0wY+My2QSv2N2mO/OyxR2o6UQk+Lv7yJ06JYSnnolZVU9cUn2O9SmaMWGFBqYXRwbqAJWIi94TX5biotpcGl1DXZ6LnqIbNDTnmUgi52Mv5l5ysMxIcZcGjy2DTK4ZHlcBC14zeSge4qphICjj3bS0A7o9nSp2TOkm7aZ8bGZy/jxhO87V91G0+dfY/Z7BWIIK9KYUi5qy/Hf8YfBG3sqJTHiQWhmTVkbip+wX3x6volVSx+LPAxF+VLXhZ8VQ+iP2Rta/iWe5v42Fngj0BbdnRTXh12ZIcKhTaGbcYjybRwXBU1lu9KlndXp04NM52poKWO0RZsviNaP9a6grkO972+st05pXhE5c1hTEluJy7XUejGUQNLMbAmTdWY1rKBLW3aTJqBZ7nZkb36DhYCreeYHbMUXHvaYi5XDK70EcgulmRjm77wNtenzuXCbmnTRaAx493rbGf3Jr/njMzj920CnKdUaFCjlDioy7NYNvOdGrQJNgI32/L2tkXfFPlxgToqjWVhD6KdLnQRdARf/HHQz2r2X2Gqy8pAZaAyUBmoDFQGKgP/q4F/AJYg9/s0ZoABAAAAAElFTkSuQmCC";function Op(n){return W(this,null,function*(){const t=new Headers({"Content-Type":"text/plain"}),e=function(s){return W(this,null,function*(){const o={index:s.index,url:s.url,svgUrl:s.svg_url};if(s.svg_url){const r=yield fetch(s.svg_url,{headers:t}).then(a=>a.text());o.svgContent=r}return o})};return yield Promise.all(n.map(e))})}function Bp(n){return{id:n.id,size:n.size,name:n.name,path:n.path,roomType:n.room_type,floorType:n.floor_type,roomLabel:{position:n.room_label.position,positionInImage:n.room_label.position_in_image},observerIndexs:n.observer_indexs}}function Vp(n){return{floorName:n.floor_name,floorIndex:n.floor_index,rooms:n.rooms.map(Bp),rules:n.rules}}function Rp(n){return{index:n.index,floorIndex:n.floor_index,position:n.position,positionInImage:n.position_in_image}}function Qp(n){return{rad:n.rad,position:n.position,positionInImage:n.position_in_image,northRad:n.north_rad,roomId:n.room_id,floorIndex:n.floor_index}}function gi(n){return W(this,null,function*(){const t=yield Op(n.outlines),e=n.computed_data.bounding,i=n.computed_data.floor_datas.map(Vp),s=n.computed_data.entrance?Qp(n.computed_data.entrance):null;return{outlines:t,entrance:s,bounding:e,floorDatas:i,observers:n.computed_data.observers.map(Rp)}})}function Gp(n,t,e){return n.map(s=>{const o=s.position,r=s.icon?s.icon:{url:zp,width:45,height:48},a=np(o,t),l=tp(o,e),c=ip(l,e);return{floorIndex:a,icon:r,id:s.id,position:l,positionInImage:c}})}function Np(n,t){return t(n),n}function Eo(n,t){return Np({},e=>{for(const i in n)t.indexOf(i)===-1&&(e[i]=n[i])})}function Ql(n,t){const e=Math.max(...n.work.observers.map(i=>i.floorIndex));return t>e?n.model.bounding.max.y:Math.max(...n.work.observers.filter(i=>i.floorIndex===t).map(i=>i.standingPosition.y))}function Ta(n,t,e=hi.BOUNDING_CENTER){const i=Ql(n,t),s=Ql(n,t+1);return e===hi.BOUNDING_CENTER?(n.model.bounding.max.y+n.model.bounding.min.y)/2:e===hi.CEILING?s:i}function La(n,t,e,i){const s=Ta(n,e,i==null?void 0:i.attachedTo),o=new E.Vector3(0,s,0),r=new E.Vector3(1,s,0),a=o.clone().project(n.camera),l=r.clone().project(n.camera);return Math.abs((l.x-a.x)/1e3)*(t.getBoundingClientRect().width/2)}let cs=class{constructor(t,e){f(this,"VERSION","2.27.0-dev.2");f(this,"five");f(this,"hooks",new Cn);f(this,"staticPrefix","//vr-image-4.realsee-cdn.cn");this.five=t,e!=null&&e.staticPrefix&&(this.staticPrefix=e.staticPrefix)}getCurrentState(){return this.state}absoluteUrl(t){return pa(this.staticPrefix,t)}},yi=class extends cs{};var Ct=(n=>(n.UnknownError="UnknownError",n.DataNotLoaded="DataNotLoaded",n.BreakOffByHide="BreakOffByHide",n.BreakOffByDisable="BreakOffByDisable",n.ModelNotLoaded="ModelNotLoaded",n.ChangeModeError="ChangeModeError",n.UpdateCameraError="UpdateCameraError",n))(Ct||{});const $h=500,Hp=80;function Kr(n,t,e=4){return Math.floor(n*Math.pow(10,e))===Math.floor(t*Math.pow(10,e))}function ja(n,t){return W(this,null,function*(){const[e]=yield gn(n.changeMode(...t));if(e)throw new Error("change mode canceled");yield new Promise(r=>{n.once("initAnimationWillStart",()=>{n.once("initAnimationEnded",()=>r())})});const i=t[1];if(!i)return!0;const s=n.getCurrentState();if(!_p(i,s))throw new Error("pose 与预期不符")})}function _p(n,t){return Object.keys(n).every(e=>{const i=t[e];if(i===void 0)return!0;const s=n[e];return typeof i=="number"&&typeof s=="number"?Kr(i,s,2):i===s})}function za(n,t){if(n.currentMode!==t.mode)return!1;const{latitude:e,longitude:i,fov:s}=t,{latitude:o,longitude:r}=n.getCurrentState(),a=n.camera.fov;return!(!Kr(e,o,2)||!Kr(i,r,2)||s!==a)}function eu(n,t,e=!0){return W(this,null,function*(){if(za(n,t)===!0)return;const s=n.getCurrentState();if(s.mode!==t.mode){const[d]=yield gn(ja(n,[t.mode,t,void 0,e]));if(d)throw new Error(Ct.ChangeModeError);return}const{latitude:o,longitude:r,fov:a}=s,l=Math.min(1e3,Math.max(200,Math.abs(o-Math.PI/2)*1e3,(r>Math.PI?2*Math.PI-r:r)*500,Math.abs(a-t.fov)*10)),[c]=yield gn(n.updateCamera(t,l,e));if(c)throw new Error(Ct.UpdateCameraError)})}function An(n,t,e=300){const i=n.getElement();i&&(i.style.opacity=t+"",i.style.transition=e===0?"none":`opacity ${e}ms linear`,e!==0&&Promise.race([new Promise(s=>i.addEventListener("transitionend",s,{once:!0})),new Promise(s=>setTimeout(s,e))]).then(()=>{i.style.transition="none"}))}function Fp(n){const{latitude:t,longitude:e}=n,i=Math.abs(t-Math.PI/2)>5*Math.PI/180,s=e>5*(Math.PI/180)&&e<355*(Math.PI/180);return i||s}function Wp(n){const{latitude:t,longitude:e}=n,i=Math.abs(t-Math.PI/2)<10*Math.PI/180,s=e<30*(Math.PI/180)||e>330*(Math.PI/180);return i&&s}let Yp=class extends yi{constructor(e,i){var a;super(e);f(this,"name","modelFloorplanPlugin");f(this,"state");f(this,"data");f(this,"showState");f(this,"showPromise");f(this,"app");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"selector");f(this,"showRejection");f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"dispose",()=>{var e,i;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(i=this.container)==null||i.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"show",(...i)=>W(this,[...i],function*(e={}){if(!this.state.enabled||!this.showPromise&&this.state.visible)return;const s=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},s),this._show(e)}));f(this,"hide",(...i)=>W(this,[...i],function*(e={}){this.state.enabled&&(this.isHiddenByHideFunc=!0,this.state.visible!==!1&&(this.updateState({visible:!1},e.userAction||!0),this._hide(e)))}));f(this,"updateSize",()=>{if(!this.data||!za(this.five,this.showState)||!this.container||!this.wrapper)return;const{min:e,max:i}=this.data.bounding,s=i.x-e.x,o=i.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=La(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o,r;const{userAction:i}=e;this.hooks.emit("disable",{userAction:i}),(s=this.showRejection)==null||s.call(this,Ct.BreakOffByDisable),this.showPromise=void 0,(o=this.app)==null||o.$destroy(),this.app=void 0,(r=this.container)==null||r.remove(),this.removeEventListener()});f(this,"_enable",e=>{const{userAction:i}=e;this.addEventListener(),this.wrapper&&(this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:i}),this.state.visible&&this._show({userAction:i}))});f(this,"_show",e=>W(this,null,function*(){var r;if(!this.state.enabled)return;if(!((r=this.five.model)!=null&&r.loaded))throw new Error(Ct.ModelNotLoaded);if(!this.data)throw new Error(Ct.DataNotLoaded);if(this.showPromise)return this.showPromise;const i={floorIndex:this.floorIndex,modelOpacity:this.state.config.modelOpacity,immediately:!1,isAutoShow:!1,userAction:!0},s=G(G({},i),e),o=()=>W(this,null,function*(){this.hooks.emit("show",{userAction:s.userAction,auto:s.isAutoShow});let a=!1,l;this.showRejection=d=>{a=!0,l=d};const[c]=yield gn(eu(this.five,this.showState,s.userAction));if(c)throw c;if(a)throw l?new Error(l):new Error(Ct.UnknownError);this.updateSize(),this.floorIndex=s.floorIndex,this.five.model.show(this.floorIndex)});return this.isHiddenByHideFunc=!1,this.showPromise=o().then(()=>{this.showPromise=void 0,this.showRejection=void 0;const a=s.modelOpacity,l=s.immediately?0:$h;An(this.five,a,l),this.render(l),this.hooks.emit("showAnimationEnded",{auto:s.isAutoShow,userAction:s.userAction})}).catch(a=>{if(this.showPromise=void 0,this.showRejection=void 0,this.updateState({visible:!1},s.userAction),!s.isAutoShow&&a instanceof Error)throw a}),this.showPromise}));f(this,"_hide",e=>{var o;(o=this.showRejection)==null||o.call(this,Ct.BreakOffByHide),this.showPromise=void 0;const s=G(G({},{userAction:!0,isAutoHide:!1}),e);An(this.five,1,0),this.hooks.emit("hide",{auto:s.isAutoHide,userAction:s.userAction}),this.render()});f(this,"handleClick",()=>{if(!this.state.visible)return;if(this.hooks.emit("click"))return!1});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",e=>{e!==this.showState.mode&&(this.updateState({visible:!1},!1),this._hide({userAction:!1}))});f(this,"onFiveInteriaPan",(e,i)=>{if(!i||this.state.config.autoShowEnable===!1||this.isHiddenByHideFunc)return;const s=this.five.getCurrentState();s.mode==="Floorplan"&&(this.state.visible||Wp(s)&&(this.updateState({visible:!0},!0),this._show({isAutoShow:!0})))});f(this,"onFivePanoArrived",e=>{var i;(i=this.five)!=null&&i.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,i)=>{if(!this.state.visible||this.showPromise)return;const s=this.five.getCurrentState();Fp(s)&&(this.updateState({visible:!1},i),this._hide({userAction:i,isAutoHide:!0}))});f(this,"onFiveWantsGesture",(e,i)=>{if(this.state.visible&&(i.length>1||e==="mouseWheel"))return!1});f(this,"onFiveWantsPanGesture",(e,i)=>{if(this.five.getCurrentState().mode==="Floorplan"&&this.state.config.autoShowEnable!==!1&&i&&this.state.visible)return this.five.updateCamera(this.showState,0),!1});f(this,"onFiveWantsTapGesture",()=>this.handleClick());f(this,"onFiveWantsChangeMode",(e,i)=>{i==="Panorama"&&e==="Floorplan"&&(this.lastPanoramaLongitude=this.five.getCurrentState().longitude)});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const i=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[i].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});i!=null&&i.selector&&(this.selector=i.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法")),this.showState={mode:"Floorplan",longitude:0,latitude:Math.PI/2,fov:Hp/((a=i==null?void 0:i.scale)!=null?a:1)};const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,highlightEnable:!1,hoverEnable:!0,compassEnable:!0,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,adaptiveRoomLabelVisibleEnable:!0,cameraImageUrl:mi,attachedTo:hi.BOUNDING_CENTER,getLabelElement:void 0,getRoomAreaText:l=>(l/1e6).toFixed(1)+"㎡",getRuleDistanceText:l=>l.toString()},o=i?Eo(i,["selector","scale"]):{},r=G(G({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,i,s=!0){return W(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gi(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),i&&this.updateState(i,s),this.render()})}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}enable(e={}){if(this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||i),this._enable({userAction:i})}disable(e={}){if(!this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||i),this._disable({userAction:i})}setState(e,i={}){const s=this.state,o=i.userAction!==void 0?i.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled&&(e.enabled?this._enable({userAction:o}):this._disable({userAction:o})),e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}this.render()}changeConfigs(e,i=!0){this.updateState({config:e},i),this.render()}formatData(e){return W(this,null,function*(){return yield gi(e.data)})}updateState(e,i){const s=this.state,o=e.config?G(G({},s.config),e.config):s.config;this.state=ve(G(G({},this.state),e),{config:o}),!It(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i})}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",zIndex:10,pointerEvents:"none"}),this.five.addExtraElement(this.container)}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("interiaPan",this.onFiveInteriaPan),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsGesture",this.onFiveWantsGesture),e.on("wantsPanGesture",this.onFiveWantsPanGesture),e.on("wantsTapGesture",this.onFiveWantsTapGesture),e.on("wantsChangeMode",this.onFiveWantsChangeMode),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modelLoaded",this.onFiveModelLoaded),e.off("modeChange",this.onFiveModeChange),e.off("interiaPan",this.onFiveInteriaPan),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsGesture",this.onFiveWantsGesture),e.off("wantsPanGesture",this.onFiveWantsPanGesture),e.off("wantsTapGesture",this.onFiveWantsTapGesture),e.off("wantsChangeMode",this.onFiveWantsChangeMode),e.off("modelShownFloorChange",this.onModelShownFloorChange)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0||this.showPromise)return;const i=ve(G({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(i);this.app=new Sa({target:this.container,intro:!0,props:i})}};const Up=(n,t)=>new Yp(n,t);function Xp(n){const{latitude:t,longitude:e}=n,i=Math.abs(t-Math.PI/2)>5*Math.PI/180,s=e>5*(Math.PI/180)&&e<355*(Math.PI/180);return i||s}function Zp(n){const{latitude:t,longitude:e}=n,i=Math.abs(t-Math.PI/2)<10*Math.PI/180,s=e<30*(Math.PI/180)||e>330*(Math.PI/180);return i&&s}let Jp=class extends yi{constructor(e,i){super(e);f(this,"name","modelFloorplanPlugin");f(this,"state");f(this,"data");f(this,"showState");f(this,"showPromise");f(this,"app");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"selector");f(this,"showRejection");f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"dispose",()=>{var e,i;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(i=this.container)==null||i.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"show",(...i)=>W(this,[...i],function*(e={}){if(!this.state.enabled||!this.showPromise&&this.state.visible)return;const s=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},s),this._show(e)}));f(this,"hide",(...i)=>W(this,[...i],function*(e={}){this.state.enabled&&(this.isHiddenByHideFunc=!0,this.state.visible!==!1&&(this.updateState({visible:!1},e.userAction||!0),this._hide(e)))}));f(this,"updateSize",()=>{if(!this.data||!za(this.five,this.showState)||!this.container||!this.wrapper)return;const{min:e,max:i}=this.data.bounding,s=i.x-e.x,o=i.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=La(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o,r;const{userAction:i}=e;this.hooks.emit("disable",{userAction:i}),(s=this.showRejection)==null||s.call(this,Ct.BreakOffByDisable),this.showPromise=void 0,(o=this.app)==null||o.$destroy(),this.app=void 0,(r=this.container)==null||r.remove(),this.removeEventListener()});f(this,"_enable",e=>{const{userAction:i}=e;this.addEventListener(),this.wrapper&&(this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:i}),this.state.visible&&this._show({userAction:i}))});f(this,"_show",e=>W(this,null,function*(){var r;if(!this.state.enabled)return;if(!((r=this.five.model)!=null&&r.loaded))throw new Error(Ct.ModelNotLoaded);if(!this.data)throw new Error(Ct.DataNotLoaded);if(this.showPromise)return this.showPromise;const i={floorIndex:this.floorIndex,modelOpacity:this.state.config.modelOpacity,immediately:!1,isAutoShow:!1,userAction:!0},s=G(G({},i),e),o=()=>W(this,null,function*(){this.hooks.emit("show",{userAction:s.userAction,auto:s.isAutoShow});let a=!1,l;this.showRejection=d=>{a=!0,l=d};const[c]=yield gn(eu(this.five,this.showState,s.userAction));if(c)throw c;if(a)throw l?new Error(l):new Error(Ct.UnknownError);this.updateSize(),this.updatePosition(),this.floorIndex=s.floorIndex,this.five.model.show(this.floorIndex)});return this.isHiddenByHideFunc=!1,this.showPromise=o().then(()=>{this.showPromise=void 0,this.showRejection=void 0;const a=s.modelOpacity,l=s.immediately?0:$h;An(this.five,a,l),this.render(l),this.hooks.emit("showAnimationEnded",{auto:s.isAutoShow,userAction:s.userAction})}).catch(a=>{if(this.showPromise=void 0,this.showRejection=void 0,this.updateState({visible:!1},s.userAction),!s.isAutoShow&&a instanceof Error)throw a}),this.showPromise}));f(this,"_hide",e=>{var o;(o=this.showRejection)==null||o.call(this,Ct.BreakOffByHide),this.showPromise=void 0;const s=G(G({},{userAction:!0,isAutoHide:!1}),e);An(this.five,1,0),this.hooks.emit("hide",{auto:s.isAutoHide,userAction:s.userAction}),this.render()});f(this,"handleClick",()=>{if(!this.state.visible)return;if(this.hooks.emit("click"))return!1});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",e=>{e!==this.showState.mode&&(this.updateState({visible:!1},!1),this._hide({userAction:!1}))});f(this,"onFiveInteriaPan",(e,i)=>{if(!i||this.state.visible||this.state.config.autoShowEnable===!1||this.isHiddenByHideFunc)return;const s=this.five.getCurrentState();s.mode===this.showState.mode&&Zp(s)&&(this.updateState({visible:!0},!0),this._show({isAutoShow:!0}))});f(this,"onFivePanoArrived",e=>{var i;(i=this.five)!=null&&i.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,i)=>{if(!this.state.visible||this.showPromise)return;const s=this.five.getCurrentState();this.updatePosition(),this.updateSize(),Xp(s)&&(this.updateState({visible:!1},i),this._hide({userAction:i}))});f(this,"onFiveWantsPanGesture",(e,i)=>{if(this.five.getCurrentState().mode===this.showState.mode&&this.state.config.autoShowEnable!==!1&&i&&this.state.visible)return this.five.updateCamera(this.showState,0),!1});f(this,"onFiveWantsTapGesture",()=>this.handleClick());f(this,"onFiveWantsChangeMode",(e,i)=>{i==="Panorama"&&e===this.showState.mode&&(this.lastPanoramaLongitude=this.five.getCurrentState().longitude)});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const i=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[i].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});i!=null&&i.selector&&(this.selector=i.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法")),this.showState={mode:"Mapview",longitude:0,latitude:Math.PI/2,fov:90};const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,highlightEnable:!1,hoverEnable:!0,compassEnable:!0,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,cameraImageUrl:mi,attachedTo:hi.BOUNDING_CENTER,getLabelElement:void 0,adaptiveRoomLabelVisibleEnable:!0,getRoomAreaText:a=>(a/1e6).toFixed(1)+"㎡",getRuleDistanceText:a=>a.toString()},o=i?Eo(i,["selector","scale"]):{},r=G(G({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,i,s=!0){return W(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gi(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),i&&this.updateState(i,s),this.render()})}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}enable(e={}){if(this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||i),this._enable({userAction:i})}disable(e={}){if(!this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||i),this._disable({userAction:i})}setState(e,i={}){const s=this.state,o=i.userAction!==void 0?i.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled&&(e.enabled?this._enable({userAction:o}):this._disable({userAction:o})),e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}changeConfigs(e,i=!0){this.updateState({config:e},i),this.render()}updatePosition(){var a;const e=Ta(this.five,this.floorIndex,this.state.config.attachedTo),i=(a=this.five.model)==null?void 0:a.bounding.getCenter(new E.Vector3).setY(e);if(!i)return;const s=i.clone().project(this.five.camera),o=(s.x+1)/2,r=-(s.y-1)/2;this.container.style.left=o*100+"%",this.container.style.top=r*100+"%"}formatData(e){return W(this,null,function*(){return yield gi(e.data)})}updateState(e,i){const s=this.state,o=e.config?G(G({},s.config),e.config):s.config;this.state=ve(G(G({},this.state),e),{config:o}),!It(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i})}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",zIndex:10,pointerEvents:"none"}),this.five.addExtraElement(this.container)}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("interiaPan",this.onFiveInteriaPan),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsPanGesture",this.onFiveWantsPanGesture),e.on("wantsTapGesture",this.onFiveWantsTapGesture),e.on("wantsChangeMode",this.onFiveWantsChangeMode),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modelLoaded",this.onFiveModelLoaded),e.off("modeChange",this.onFiveModeChange),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsPanGesture",this.onFiveWantsPanGesture),e.off("wantsTapGesture",this.onFiveWantsTapGesture),e.off("wantsChangeMode",this.onFiveWantsChangeMode),e.off("modelShownFloorChange",this.onModelShownFloorChange)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0||this.showPromise)return;const i=ve(G({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(i);this.app=new Sa({target:this.container,intro:!0,props:i})}};const qp=(n,t)=>new Jp(n,t);let Kp=class extends yi{constructor(e,i){super(e);f(this,"name","topviewFloorplanPlugin");f(this,"state");f(this,"data");f(this,"app");f(this,"selector");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"updateSize",()=>{if(!this.data||!this.container||!this.wrapper||this.five.getCurrentState().mode!=="Topview")return;const{min:e,max:i}=this.data.bounding,s=i.x-e.x,o=i.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=La(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"dispose",()=>{var e,i;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(i=this.container)==null||i.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o;const{userAction:i}=e;(s=this.app)==null||s.$destroy(),this.app=void 0,(o=this.container)==null||o.remove(),this.removeEventListener(),this.hooks.emit("disable",{userAction:i})});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",(...[e,,,,i])=>{e!=="Topview"&&this.state.visible&&(this.updateState({visible:!1},i),this._hide({userAction:i}))});f(this,"onFivePanoArrived",e=>{var i;(i=this.five)!=null&&i.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,i)=>{this.state.visible&&(this.updatePosition(),this.updateSize())});f(this,"onFiveWantsGesture",e=>{if(!(e!=="pan"&&e!=="pinch"&&e!=="mouseWheel")&&this.state.visible&&!this.state.config.gestureEnable)return!1});f(this,"onFiveWantsMoveToPano",()=>{if(this.state.visible&&this.state.config.preventRoomClick)return!1});f(this,"onFiveInitAnimationEnded",(...[,,e])=>{const{mode:i}=this.five.getCurrentState();i==="Topview"&&!this.isHiddenByHideFunc&&!this.state.visible&&this.state.config.autoShowEnable&&(this.updateState({visible:!0},e),this._show({userAction:e}))});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const i=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[i].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});i!=null&&i.selector&&(this.selector=i.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法"));const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,hoverEnable:!0,highlightEnable:!1,compassEnable:!0,gestureEnable:!1,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,cameraImageUrl:mi,attachedTo:hi.BOUNDING_CENTER,getLabelElement:void 0,adaptiveRoomLabelVisibleEnable:!0,getRoomAreaText:a=>(a/1e6).toFixed(1)+"㎡",getRuleDistanceText:a=>a.toString()},o=i?Eo(i,["selector","scale"]):{},r=G(G({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,i,s=!0){return W(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gi(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),i&&this.updateState(i,s),this.render()})}updatePosition(){var a;const e=Ta(this.five,this.floorIndex,this.state.config.attachedTo),i=(a=this.five.model)==null?void 0:a.bounding.getCenter(new E.Vector3).setY(e);if(!i)return;const s=i.clone().project(this.five.camera),o=(s.x+1)/2,r=-(s.y-1)/2;this.container.style.left=o*100+"%",this.container.style.top=r*100+"%"}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}show(){return W(this,arguments,function*(e={}){if(this.state.visible)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},i),this._show({userAction:i})})}hide(){return W(this,arguments,function*(e={}){if(this.isHiddenByHideFunc=!0,!this.state.visible)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!1},i),this._hide({userAction:i})})}enable(e={}){if(this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||i),this._enable({userAction:i})}disable(e={}){if(!this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||i),this._disable({userAction:i})}setState(e,i={}){const s=this.state,o=i.userAction!==void 0?i.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled){const r={userAction:o};e.enabled?this._enable(r):this._disable(r)}if(e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}changeConfigs(e,i=!0){this.updateState({config:e},i),this.render()}formatData(e){return W(this,null,function*(){return yield gi(e.data)})}_show(e){return W(this,null,function*(){if(!this.state.enabled)return;this.isHiddenByHideFunc=!1;const{userAction:i}=e;this.hooks.emit("show",{userAction:i,auto:!1}),this.five.getCurrentState().mode!=="Topview"&&(yield ja(this.five,["Topview",void 0,void 0,i])),this.five.model.show(this.floorIndex),this.updatePosition(),this.updateSize();const s=500,o=this.state.config.modelOpacity;An(this.five,o,s),this.hooks.emit("showAnimationEnded",{userAction:i,auto:!1}),this.render()})}_hide(e){return W(this,null,function*(){if(!this.state.enabled)return;const{userAction:i}=e;this.hooks.emit("hide",{userAction:i,auto:!1});const s=1,o=0;An(this.five,s,o),this.render()})}_enable(e){const{userAction:i}=e;this.addEventListener(),this.wrapper&&this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:i}),this.state.visible&&this._show({userAction:i})}updateState(e,i){const s=this.state,o=e.config?G(G({},s.config),e.config):s.config;this.state=ve(G(G({},this.state),e),{config:o}),!It(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i})}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsGesture",this.onFiveWantsGesture),e.on("wantsMoveToPano",this.onFiveWantsMoveToPano),e.on("initAnimationEnded",this.onFiveInitAnimationEnded),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modeChange",this.onFiveModeChange),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsGesture",this.onFiveWantsGesture),e.off("wantsMoveToPano",this.onFiveWantsMoveToPano),e.off("initAnimationEnded",this.onFiveInitAnimationEnded),e.off("modelShownFloorChange",this.onModelShownFloorChange)}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate3d(-50%, -50%, 10px)",zIndex:10,pointerEvents:"none","will-change":"width, height"}),this.five.addExtraElement(this.container)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0)return;const i=ve(G({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(i);this.app=new Sa({target:this.container,intro:!0,props:i})}};const $p=(n,t)=>new Kp(n,t);function Oa(n,t=200){let e;return function(...i){e||(n(...i),e=setTimeout(function(){e=null},t))}}function eA(n){ue(n,"svelte-1nqrlxd",".plugin-radar__camera-wrapper.svelte-1nqrlxd{width:100%;height:100%;position:absolute;pointer-events:none}.plugin-radar__camera-position.svelte-1nqrlxd{position:absolute;left:0;top:0;width:0;height:0;transform:none;pointer-events:none;transition:transform 1s linear}.plugin-radar__camera-rotate.svelte-1nqrlxd{position:absolute;left:-0.9375rem;top:-0.9375rem;width:1.0625rem;height:1.0625rem;transform-origin:0.9375rem 0.9375rem;transform:rotate(45deg);background-repeat:no-repeat;background-size:100%}")}function tA(n){let t,e,i;return{c(){t=S("div"),e=S("div"),i=S("div"),w(i,"class","plugin-radar__camera-rotate svelte-1nqrlxd"),z(i,"background-image","url("+(n[0]||mi)+")"),z(i,"transform",n[1]),w(e,"class","plugin-radar__camera-position svelte-1nqrlxd"),z(e,"transform",n[2]),w(t,"class","plugin-radar__camera-wrapper svelte-1nqrlxd")},m(s,o){B(s,t,o),x(t,e),x(e,i)},p(s,[o]){o&1&&z(i,"background-image","url("+(s[0]||mi)+")"),(o&1||o&3)&&z(i,"transform",s[1]),o&4&&z(e,"transform",s[2])},i:q,o:q,d(s){s&&O(t)}}}function iA(n){return`rotate(${Math.floor(n/Math.PI*180)*-1+45}deg)`}function nA(n,t,e){let i,s,{five:o}=t,{pxmm:r}=t,{floorplanData:a}=t,{cameraImageUrl:l}=t,c=o.getCurrentState().panoIndex,d=o.getCurrentState().longitude;function h(A,p){const g=A.bounding,v=A.observers[p];if(!v)return"";const y=(g.max.x-g.min.x)*r,I=(g.max.y-g.min.y)*r,M=Math.floor(v.positionInImage.x*y),D=Math.floor(v.positionInImage.y*I);return`translate(${M}px, ${D}px)`}function u(A){e(6,c=A)}const m=Oa(A=>{e(7,d=A.longitude)},1e3/60);return bt(()=>(o.on("panoWillArrive",u),o.on("cameraDirectionUpdate",m),function(){o.off("panoWillArrive",u),o.off("cameraDirectionUpdate",m)})),n.$$set=A=>{"five"in A&&e(3,o=A.five),"pxmm"in A&&e(4,r=A.pxmm),"floorplanData"in A&&e(5,a=A.floorplanData),"cameraImageUrl"in A&&e(0,l=A.cameraImageUrl)},n.$$.update=()=>{n.$$.dirty&96&&e(2,i=h(a,c)),n.$$.dirty&128&&e(1,s=iA(d))},[l,s,i,o,r,a,c,d]}class sA extends le{constructor(t){super(),ae(this,t,nA,tA,oe,{five:3,pxmm:4,floorplanData:5,cameraImageUrl:0},eA)}}function oA(n){ue(n,"svelte-1i87fz7",".plugin-pano-floorplan__extra-objects.svelte-1i87fz7{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.plugin-pano-floorplan__extra-object-item--position.svelte-1i87fz7{position:absolute;width:0;height:0}.plugin-pano-floorplan__extra-object-item.svelte-1i87fz7{transform:translate(-50%, -50%)}")}function Gl(n,t,e){const i=n.slice();return i[1]=t[e],i}function Nl(n,t){let e,i,s=`${t[1].icon.width/16}rem`,o=`${t[1].icon.height/16}rem`,r,a=`${t[1].positionInImage.y*100}%`,l=`${t[1].positionInImage.x*100}%`;return{key:n,first:null,c(){e=S("div"),i=S("div"),r=$(),w(i,"class","plugin-pano-floorplan__extra-object-item svelte-1i87fz7"),z(i,"background-image",`url(${t[1].icon.url})`),z(i,"width",s),z(i,"height",o),w(e,"class","plugin-pano-floorplan__extra-object-item--position svelte-1i87fz7"),z(e,"top",a),z(e,"left",l),this.first=e},m(c,d){B(c,e,d),x(e,i),x(e,r)},p(c,d){t=c,d&1&&z(i,"background-image",`url(${t[1].icon.url})`);const h=d&1;h&&z(i,"width",s),h&&z(i,"height",o),d&1&&a!==(a=`${t[1].positionInImage.y*100}%`)&&z(e,"top",a),d&1&&l!==(l=`${t[1].positionInImage.x*100}%`)&&z(e,"left",l)},d(c){c&&O(e)}}}function rA(n){let t,e=[],i=new Map,s=Pe(n[0]);const o=r=>r[1].id;for(let r=0;r<s.length;r+=1){let a=Gl(n,s,r),l=o(a);i.set(l,e[r]=Nl(l,a))}return{c(){t=S("div");for(let r=0;r<e.length;r+=1)e[r].c();w(t,"class","plugin-pano-floorplan__extra-objects svelte-1i87fz7")},m(r,a){B(r,t,a);for(let l=0;l<e.length;l+=1)e[l]&&e[l].m(t,null)},p(r,[a]){a&1&&(s=Pe(r[0]),e=Ot(e,a,o,1,r,s,i,t,Ma,Nl,null,Gl))},i:q,o:q,d(r){r&&O(t);for(let a=0;a<e.length;a+=1)e[a].d()}}}function aA(n,t,e){let{extraObjects:i=[]}=t;return n.$$set=s=>{"extraObjects"in s&&e(0,i=s.extraObjects)},[i]}class lA extends le{constructor(t){super(),ae(this,t,aA,rA,oe,{extraObjects:0},oA)}}function Hl(n){let t,e;const i=[{five:n[0],pxmm:n[1],floorIndex:n[2],floorplanData:n[4],onRoomHeightClick:n[7],highlightData:n[5],hoveredRoom:void 0}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new Kh({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&183?ct(i,[{five:o[0],pxmm:o[1],floorIndex:o[2],floorplanData:o[4],onRoomHeightClick:o[7],highlightData:o[5],hoveredRoom:void 0}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){j(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function cA(n){let t,e,i,s,o,r;const a=[{floorIndex:n[2],floorplanData:n[4]}];let l={};for(let d=0;d<a.length;d+=1)l=tt(l,a[d]);t=new Jh({props:l}),i=new lA({props:{extraObjects:n[6]}});let c=n[3]&&Hl(n);return{c(){ne(t.$$.fragment),e=$(),ne(i.$$.fragment),s=$(),c&&c.c(),o=Ee()},m(d,h){te(t,d,h),B(d,e,h),te(i,d,h),B(d,s,h),c&&c.m(d,h),B(d,o,h),r=!0},p(d,[h]){const u=h&20?ct(a,[{floorIndex:d[2],floorplanData:d[4]}]):{};t.$set(u);const m={};h&64&&(m.extraObjects=d[6]),i.$set(m),d[3]?c?(c.p(d,h),h&8&&k(c,1)):(c=Hl(d),c.c(),k(c,1),c.m(o.parentNode,o)):c&&(de(),j(c,1,1,()=>{c=null}),he())},i(d){r||(k(t.$$.fragment,d),k(i.$$.fragment,d),k(c),r=!0)},o(d){j(t.$$.fragment,d),j(i.$$.fragment,d),j(c),r=!1},d(d){d&&(O(e),O(s),O(o)),ie(t,d),ie(i,d),c&&c.d(d)}}}function dA(n,t,e){let i,{five:s}=t,{pxmm:o}=t,{floorIndex:r}=t,{hoverEnable:a}=t,{floorplanData:l}=t,{extraObjects:c=[]}=t,{highlightData:d}=t;const h=void 0;return n.$$set=u=>{"five"in u&&e(0,s=u.five),"pxmm"in u&&e(1,o=u.pxmm),"floorIndex"in u&&e(2,r=u.floorIndex),"hoverEnable"in u&&e(3,a=u.hoverEnable),"floorplanData"in u&&e(4,l=u.floorplanData),"extraObjects"in u&&e(8,c=u.extraObjects),"highlightData"in u&&e(5,d=u.highlightData)},n.$$.update=()=>{n.$$.dirty&260&&e(6,i=c==null?void 0:c.filter(u=>u.floorIndex===r))},[s,o,r,a,l,d,i,h,c]}class hA extends le{constructor(t){super(),ae(this,t,dA,cA,oe,{five:0,pxmm:1,floorIndex:2,hoverEnable:3,floorplanData:4,extraObjects:8,highlightData:5})}}function uA(n){ue(n,"svelte-1mvqyqq",".plugin-floorplan-radar.svelte-1mvqyqq{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.plugin-floorplan-radar-container.svelte-1mvqyqq{position:relative}")}function _l(n){let t,e,i,s,o=n[7]!==0&&Fl(n);return{c(){t=S("div"),o&&o.c(),w(t,"class","plugin-floorplan-radar svelte-1mvqyqq")},m(r,a){B(r,t,a),o&&o.m(t,null),e=!0,i||(s=[ei(Sn.call(null,t)),be(t,"clientWidth",n[13]),be(t,"clientHeight",n[14])],i=!0)},p(r,a){r[7]!==0?o?(o.p(r,a),a&128&&k(o,1)):(o=Fl(r),o.c(),k(o,1),o.m(t,null)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){e||(k(o),e=!0)},o(r){j(o),e=!1},d(r){r&&O(t),o&&o.d(),i=!1,qe(s)}}}function Fl(n){let t,e,i,s,o=`${n[9]}px`,r=`${n[12]}px`,a;const l=[{five:n[0],pxmm:n[10],floorIndex:n[11],floorplanData:n[3],hoverEnable:n[2],extraObjects:n[5],highlightData:n[6]}];let c={};for(let u=0;u<l.length;u+=1)c=tt(c,l[u]);e=new hA({props:c});const d=[{pxmm:n[10],five:n[0],floorplanData:n[3],cameraImageUrl:n[4]}];let h={};for(let u=0;u<d.length;u+=1)h=tt(h,d[u]);return s=new sA({props:h}),{c(){t=S("div"),ne(e.$$.fragment),i=$(),ne(s.$$.fragment),w(t,"class","plugin-floorplan-radar-container svelte-1mvqyqq"),z(t,"width",o),z(t,"height",r)},m(u,m){B(u,t,m),te(e,t,null),x(t,i),te(s,t,null),a=!0},p(u,m){const A=m&3181?ct(l,[{five:u[0],pxmm:u[10],floorIndex:u[11],floorplanData:u[3],hoverEnable:u[2],extraObjects:u[5],highlightData:u[6]}]):{};e.$set(A);const p=m&1049?ct(d,[{pxmm:u[10],five:u[0],floorplanData:u[3],cameraImageUrl:u[4]}]):{};s.$set(p),m&512&&o!==(o=`${u[9]}px`)&&z(t,"width",o),m&4096&&r!==(r=`${u[12]}px`)&&z(t,"height",r)},i(u){a||(k(e.$$.fragment,u),k(s.$$.fragment,u),a=!0)},o(u){j(e.$$.fragment,u),j(s.$$.fragment,u),a=!1},d(u){u&&O(t),ie(e),ie(s)}}}function fA(n){let t,e,i=n[1]&&_l(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[1]?i?(i.p(s,o),o&2&&k(i,1)):(i=_l(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function mA(n,t,e){var I,M;let{five:i}=t,{visible:s}=t,{hoverEnable:o}=t,{floorplanData:r}=t,{cameraImageUrl:a}=t,{extraObjects:l=[]}=t,{highlightData:c}=t,d=0,h=(M=(I=i.work.observers[i.getCurrentState().panoIndex])==null?void 0:I.floorIndex)!=null?M:0,u=0,m=0,A=0,p=0;function g(D){e(11,h=i.work.observers[D].floorIndex)}bt(()=>(i.on("panoArrived",g),()=>{i.off("panoArrived",g)}));const v=D=>{e(7,u=D.detail)},y=D=>{e(8,m=D.detail)};return n.$$set=D=>{"five"in D&&e(0,i=D.five),"visible"in D&&e(1,s=D.visible),"hoverEnable"in D&&e(2,o=D.hoverEnable),"floorplanData"in D&&e(3,r=D.floorplanData),"cameraImageUrl"in D&&e(4,a=D.cameraImageUrl),"extraObjects"in D&&e(5,l=D.extraObjects),"highlightData"in D&&e(6,c=D.highlightData)},n.$$.update=()=>{if(n.$$.dirty&904){const D=Math.min(u,m),{max:P,min:V}=r.bounding,L=P.x-V.x,X=P.y-V.y,U=function(){return L>X?[D,D/L*X]:[D/X*L,D]}();e(9,A=U[0]),e(12,p=U[1]),e(10,d=A/L)}},[i,s,o,r,a,l,c,u,m,A,d,h,p,v,y]}class gA extends le{constructor(t){super(),ae(this,t,mA,fA,oe,{five:0,visible:1,hoverEnable:2,floorplanData:3,cameraImageUrl:4,extraObjects:5,highlightData:6},uA)}}let pA=class extends yi{constructor(e,i){super(e);f(this,"name","panoFloorplanRadarPlugin");f(this,"state");f(this,"data");f(this,"app");f(this,"wrapperSelector","");f(this,"wrapper",null);f(this,"disposed",!1);f(this,"extraObjects",[]);f(this,"highlightData",{});f(this,"dispose",()=>{var e;this.disposed=!0,(e=this.app)==null||e.$destroy(),this.wrapper=null,this.wrapperSelector="",this.hooks.emit("dispose")});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s;const{userAction:i}=e;(s=this.app)==null||s.$destroy(),this.app=void 0,this.hooks.emit("disable",{userAction:i})});this.five=e;const s={hoverEnable:!0,highlightEnable:!0,cameraImageUrl:mi},o=i!=null&&i.configs?i.configs:{},r=G(G({},s),o);this.state={enabled:!0,visible:!0,config:r},i!=null&&i.wrapper&&console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法"),typeof(i==null?void 0:i.wrapper)=="string"?this.wrapperSelector=i.wrapper:(i==null?void 0:i.wrapper)instanceof Element&&(this.wrapper=i.wrapper),e.once("dispose",this.dispose)}load(e,i,s=!0){return W(this,null,function*(){function o(c){return Object.prototype.hasOwnProperty.apply(c,["version"])}const r=JSON.parse(JSON.stringify(e)),a=o(r)?r.data:r,l=this.data;this.data=yield gi(a),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,l),i&&this.updateState(i,s),this.render()})}show(){return W(this,arguments,function*(e={}){if(this.state.visible)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},i),this._show({userAction:i})})}hide(){return W(this,arguments,function*(e={}){if(!this.state.visible)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!1},i),this._hide({userAction:i})})}enable(e={}){if(this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||i),this._enable({userAction:i})}disable(e={}){if(!this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||i),this._disable({userAction:i})}setState(e,i={}){const s=this.state,o=i.userAction!==void 0?i.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled){const r={userAction:o};e.enabled?this._enable(r):this._disable(r)}if(e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}appendTo(e){this.wrapper=e,this.render()}changeConfigs(e,i=!0){this.setState({config:e},{userAction:i}),this.render()}setExtraObjectsWith3DPositions(e){this.data&&(this.extraObjects=Gp(e,this.five,this.data),this.render())}formatData(e){return W(this,null,function*(){return yield gi(e.data)})}_enable(e){const{userAction:i}=e;this.hooks.emit("enable",{userAction:i}),this.state.visible&&this._show({userAction:i})}_show(e){if(this.disposed||!this.state.enabled)return;const{userAction:i}=e;this.hooks.emit("show",{userAction:i}),this.render()}_hide(e){if(this.disposed||!this.state.enabled)return;const{userAction:i}=e;this.hooks.emit("hide",{userAction:i}),this.render()}updateState(e,i){const s=this.state;this.state=G(G({},this.state),e),!It(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i})}render(){if(this.disposed||!this.state.enabled)return;if(!this.wrapper&&this.wrapperSelector){const i=document.querySelector(this.wrapperSelector);this.wrapper=i}if(!this.data||!this.wrapper)return;const e=ve(G({},this.state.config),{five:this.five,floorplanData:this.data,visible:this.state.visible,extraObjects:this.extraObjects,highlightData:this.highlightData});this.app?this.app.$set(e):this.app=new gA({target:this.wrapper,props:e})}};const AA=(n,t)=>new pA(n,t),vA=[{type:0,floorType:1,roomType:"100900000012",name:"其他"},{type:1,floorType:1,roomType:"100900000002",name:"客厅"},{type:2,floorType:1,roomType:"100900000002",name:"餐厅"},{type:3,floorType:0,roomType:"100900000001",name:"卧室"},{type:4,floorType:0,roomType:"100900000001",name:"书房"},{type:5,floorType:3,roomType:"100900000004",name:"卫生间"},{type:6,floorType:3,roomType:"100900000004",name:"淋浴间"},{type:7,floorType:3,roomType:"100900000004",name:"洗手间"},{type:8,floorType:3,roomType:"100900000003",name:"厨房"},{type:9,floorType:1,roomType:"100900000003",name:"开放厨房",onlySubArea:!0},{type:10,floorType:0,roomType:"100900000001",name:"多功能间"},{type:11,floorType:0,roomType:"100900000009",name:"保姆间"},{type:12,floorType:4,roomType:"100900000005",name:"阳台"},{type:13,floorType:4,roomType:"100900000006",name:"露台"},{type:14,floorType:0,roomType:"100900000008",name:"储物间"},{type:15,floorType:0,roomType:"100900000013",name:"衣帽间"},{type:16,floorType:0,roomType:"100900000011",name:"阁楼"},{type:17,floorType:2,roomType:"100900000007",name:"花园"},{type:18,floorType:5,roomType:"100900000010",name:"车库"},{type:19,floorType:1,roomType:"100900000012",name:"电梯"},{type:20,floorType:1,roomType:"100900000012",name:"地下室"},{type:21,floorType:1,roomType:"100900000012",name:"天井"},{type:22,floorType:1,roomType:"100900000012",name:"阳光房"},{type:23,floorType:1,roomType:"100900000012",name:"过道"},{type:24,floorType:1,roomType:"100900000012",name:"楼梯间"},{type:25,floorType:1,roomType:"100900000012",name:"门厅"},{type:26,floorType:2,roomType:"100900000012",name:"入户花园"},{type:27,floorType:1,roomType:"100900000012",name:"玄关"},{type:28,floorType:1,roomType:"100900000012",name:"挑空"},{type:29,floorType:4,roomType:"100900000012",name:"晾晒区"},{type:30,floorType:4,roomType:"100900000012",name:"洗衣房"},{type:31,floorType:0,roomType:"100900000012",name:"娱乐区"},{type:32,floorType:0,roomType:"100900000012",name:"健身区"},{type:33,floorType:0,roomType:"100900000012",name:"接待区"},{type:34,floorType:0,roomType:"100900000012",name:"影音区"},{type:35,floorType:1,roomType:"100900000012",name:"餐饮区"},{type:36,floorType:1,roomType:"100900000012",name:"其他",onlySubArea:!0},{type:37,floorType:1,roomType:"100900000002",name:"起居室"},{type:38,floorType:0,roomType:"100900000001",name:"主卧"},{type:39,floorType:0,roomType:"100900000001",name:"次卧"},{type:40,floorType:0,roomType:"100900000001",name:"优化间"},{type:41,floorType:0,roomType:"100900000001",name:"办公室"},{type:42,floorType:0,roomType:"100900000001",name:"会议室"},{type:43,floorType:0,roomType:"100900000001",name:"洽谈间"},{type:44,floorType:1,roomType:"100900000002",name:"共享大厅"},{type:45,floorType:1,roomType:"100900000012",name:"水吧"},{type:46,floorType:0,roomType:"100900000015",name:"出入口"},{type:47,floorType:0,roomType:"100900000015",name:"大厅"},{type:48,floorType:0,roomType:"100900000015",name:"包厢"},{type:49,floorType:0,roomType:"100900000015",name:"其他"},{type:50,floorType:0,roomType:"100900000016",name:"出入口"},{type:51,floorType:0,roomType:"100900000016",name:"办公区"},{type:52,floorType:0,roomType:"100900000016",name:"老板间"},{type:53,floorType:0,roomType:"100900000016",name:"会议室"},{type:54,floorType:0,roomType:"100900000016",name:"休息区/水吧"},{type:55,floorType:0,roomType:"100900000016",name:"其他"},{type:56,floorType:2,roomType:"100900000012",name:"空中花园"},{type:57,floorType:0,roomType:"100900000001",name:"洋室"},{type:58,floorType:0,roomType:"100900000001",name:"和室"}],bA=[{type:0,description:"木质地板"},{type:1,description:"瓷砖地面"},{type:2,description:"户外地面"},{type:3,description:"卫生间地面"},{type:4,description:"阳台地面"},{type:5,description:"车库地面"}],yA=[{roomType:"100900000001",description:"室"},{roomType:"100900000002",description:"厅"},{roomType:"100900000003",description:"厨"},{roomType:"100900000004",description:"卫"},{roomType:"100900000005",description:"阳台"},{roomType:"100900000006",description:"露台"},{roomType:"100900000007",description:"花园"},{roomType:"100900000008",description:"储"},{roomType:"100900000009",description:"保姆间"},{roomType:"100900000010",description:"车库"},{roomType:"100900000011",description:"阁楼"},{roomType:"100900000012",description:"其他"},{roomType:"100900000013",description:"衣"},{roomType:"100900000015",description:"商铺"},{roomType:"100900000016",description:"写字楼"}],Er=(n,t,e)=>{const i=new E.Matrix4,s=new E.Euler(n,t,e,"YXZ");return i.makeRotationFromEuler(s),i},wA=(n,{scale:t,rotation:e,position:i})=>{if(t&&n.scale.set(t,t,t),e){const[s,o,r]=e;s&&n.applyMatrix4(Er(s,0,0)),o&&n.applyMatrix4(Er(0,o,0)),r&&n.applyMatrix4(Er(0,0,r))}return i&&n.position.set(i.x,i.y,i.z),n};function tu(n,t){n.traverse(e=>{var i;if(e.type==="Mesh"){const s=e,o=G({map:s.material.map||{}},t);s.material=new R.MeshBasicMaterial(o),s.renderOrder=1,((i=e.parent)==null?void 0:i.type)==="Mesh"&&(e.renderOrder=e.parent.renderOrder+1)}})}const CA=(n,t)=>{var p;const e=t.fbx_url||"//vrlab-image4.ljcdn.com/release/web/dipan2.f38a21cc.FBX",i=(p=t.north_rad)!=null?p:void 0,s={};let o={x:0,y:0,z:0},r=[0,0,0],a=1,l=i;n.on("modelLoaded",A);const c=g=>W(exports,null,function*(){var M;const v=(g==null?void 0:g.fbx_url)||e;if(l=(M=g==null?void 0:g.north_rad)!=null?M:i,typeof l!="number")throw new Error('"northRad"配置参数缺失:未配置指南针指向!');const I=yield new uh.FBXLoader().loadAsync(v);return tu(I,{transparent:!0,side:E.DoubleSide,blending:E.AdditiveBlending}),s.object=I,A(),!0}),d=({latitude:g})=>{if(!s.object)return;const v=h(g);v&&(s.object.position.y=v)},h=g=>{if(s.yBase===void 0)return;const v=.6;if(g>=Math.PI/4)return s.yBase-(v+1.6);const y=g*(4/Math.PI);return s.yBase-(v*y+1.6)},u=()=>{if(!s.object)return;const g=h(n.getPose().latitude);g&&(s.object.position.y=g),n.scene.add(s.object),n.needsRender=!0,n.on("cameraDirectionUpdate",d)},m=()=>{s.object&&(n.scene.remove(s.object),n.needsRender=!0,n.off("cameraDirectionUpdate",d))};function A(){const g=s.object;if(!g)return;const v=n.model.bounding,y=v.max.x-v.min.x,I=v.max.z-v.min.z,M=Math.max(y,I),{max:{x:D,z:P},min:{x:V,y:L,z:X}}=v;s.yBase=L,o={x:(D+V)/2,y:L-1.6,z:(P+X)/2},r=[0,l-Math.PI/2,0],a=.0045*M,wA(g,{position:o,rotation:r,scale:a})}return{load:c,disable:m,enable:u}};function IA(n,t){var c,d,h,u,m;const e=(c=t==null?void 0:t.size)!=null?c:512,i=(d=t==null?void 0:t.fontSize)!=null?d:e*(35/256)*1.2,s=(h=t==null?void 0:t.backgroundColor)!=null?h:"rgba(0,0,0,0)",o=(u=t==null?void 0:t.fontColor)!=null?u:"#fff",r=(m=t==null?void 0:t.textAlign)!=null?m:"center",a=document.createElement("canvas");a.setAttribute("width",e+""),a.setAttribute("height",e+"");const l=a.getContext("2d");return l.fillStyle=s,l.fillRect(0,0,e,e),l.font=`${i}px "微软雅黑"`,l.textAlign=r,l.fillStyle=o,l.fillText(n,e/2,e*.7),new R.CanvasTexture(a)}const PA=({x:n,y:t,z:e})=>new R.Vector3(n,t,e),EA=(n,t)=>{var p,g,v;const e={},i=(p=t.animationEnabled)!=null?p:!0,s=(g=t.position)!=null?g:void 0,o=(v=t.rad)!=null?v:void 0,r=t.fbx_url||"//vrlab-image4.ljcdn.com/release/web/entryDoorMini/Anim_Door1.fbx",a=[],l=y=>W(exports,null,function*(){var U,N,H,_,Q,F,J,Z;const I=(U=y==null?void 0:y.position)!=null?U:s;if(!I)return Promise.reject(new Error("ModelEntryDoorGuidePlugin.load(): position is undefined"));const M=PA(I),D=(N=y==null?void 0:y.rad)!=null?N:o,P=(H=y==null?void 0:y.fbx_url)!=null?H:r;if(e.rad=D,D===void 0)return Promise.reject(new Error(`ModelEntryDoorGuidePlugin.load(): rad is ${D}`));const V=yield new uh.FBXLoader().loadAsync(P);V.position.copy(M),V.rotation.z=D,V.scale.set(.8,.8,.8),tu(V,{transparent:!0,side:E.DoubleSide});const L=(J=(F=(Q=(_=V.children)==null?void 0:_[0])==null?void 0:Q.children)==null?void 0:F[3])==null?void 0:J.clone();if(!L)return Promise.reject(new Error(`ModelEntryDoorGuidePlugin.load(): textMesh is ${L}`));const X=(Z=t.name)!=null?Z:"入户门";return L.material=new R.MeshBasicMaterial({transparent:!0,map:IA(X)}),L.renderOrder=3,V.children[0].add(L),e.object=V,!0}),c=()=>{if(e.animation)return;if(!e.object)return console.error("ModelEntryDoorGuidePlugin.initAnimation(): state.object is ",e.object);const y=1,I=new R.AnimationMixer(e.object);a.push(I);const M=I.clipAction(e.object.animations[0]);M.timeScale=y;let D;const P=()=>{let U=0,N=0;const H=1e3/30,_=Q=>{U=requestAnimationFrame(_);const F=Q-N;F<H||(N=Q,a.forEach(J=>J.update(F/1e3)),n.needsRender=!0)};return U=requestAnimationFrame(_),()=>{cancelAnimationFrame(U)}},X={play:()=>{D||(M.play(),D=P(),requestAnimationFrame(()=>{e.object&&e.object.rotation.z!==e.rad&&(e.object.rotation.z=e.rad)}))},stop:()=>{M.stop(),D==null||D(),D=void 0}};e.animation=X},d=y=>{var M;if(!e.object)return console.error("ModelEntryDoorGuidePlugin.enable(): object is ",e.object);((M=y==null?void 0:y.animationEnable)!=null?M:i)&&(e.animation||c(),e.animation.play()),n.scene.add(e.object),n.needsRender=!0},h=()=>{e.object&&(e.animation&&e.animation.stop(),n.scene.remove(e.object),n.needsRender=!0)},u=y=>y==="Floorplan"?d():h();return{load:l,enable:y=>(e.enabled||(e.enabled=!0,u(n.currentMode),n.on("modeChange",u),d(y)),!0),disable:()=>(e.enabled&&(e.enabled=!1,h(),n.off("modeChange",u)),!0)}},MA=Lt;function kA(n,t,e,i=MA.Linear.None){const s=new po(n).to(t,e).easing(i);vo(()=>s.start(0));const o=In(a=>{s.update(a)===!1&&o()}),r=[];return s.onDestroy=a=>(r.push(a),s),s.destroy=function(){this.stop(),Object.assign(s,{_onStartCallback:null,_onUpdateCallback:null,_onCompleteCallback:null,_onStopCallbackL:null});let a;for(;a=r.shift();)a();o()},s}function xA(n,t){return kA({progress:0},{progress:1},n,t)}var iu=(n=>(n.Move="Move",n.Rotate="Rotate",n))(iu||{}),Gt=(n=>(n.Clockwise="Clockwise",n.Anticlockwise="Anticlockwise",n.Loop="Loop",n))(Gt||{});const Us=Math.PI*2;function Wl(n){return(n%Us+Us)%Us}function Yl(n){return n%Us}function Mr(n,t,e){return n+(t-n)*e}const $r=(n,t,e)=>{const i=Math.PI,s=i*2;let o=Wl(n),r=Wl(t);return e===Gt.Anticlockwise&&o<r&&(o+=s),e===Gt.Clockwise&&r<o&&(r+=s),e===Gt.Loop&&r-o>i?$r(o,r,Gt.Anticlockwise):e===Gt.Loop&&o-r>i?$r(o,r,Gt.Clockwise):{from:o,to:r}},DA=n=>{const t={},e=(l,c,...d)=>W(exports,[l,c,...d],function*(o,r,a={preload:!0}){return t.interruptCallback&&t.interruptCallback(!1),a.asyncStartCallback&&(yield a.asyncStartCallback()),o.mode&&o.mode!==n.currentMode&&(yield n.changeMode(o.mode)),a.preload&&o.panoIndex!==void 0&&o.panoIndex!==n.panoIndex&&(yield n.preloadPano(o.panoIndex)),a.asyncEndCallback&&(yield a.asyncEndCallback()),o.panoIndex===void 0&&o.fov===void 0&&o.latitude===void 0&&o.longitude===void 0?!0:yield new Promise((h,u)=>{const m=o.panoIndex!==void 0?o.panoIndex:n.panoIndex;m!==void 0?n.moveToPano(m,G({duration:r,moveEndCallback:()=>h(!0),moveCancelCallback:()=>u(new Error("move canceled"))},o)):u(new Error("unexpected error"))})}),i=o=>{const r=n.state,a=Yl(r.latitude),l=Yl(o.latitude),{from:c,to:d}=$r(r.longitude,o.longitude,o.rotation||Gt.Loop),h=r.fov,u=o.fov;return{from:{latitude:a,longitude:c,fov:h},to:{latitude:l,longitude:d,fov:u}}};return{move:e,rotate:(l,c,...d)=>W(exports,[l,c,...d],function*(o,r,a={}){t.interruptCallback&&t.interruptCallback(!1),a.asyncStartCallback&&(yield a.asyncStartCallback()),n.currentMode!==je.Five.Mode.Panorama&&(yield n.changeMode(je.Five.Mode.Panorama)),o.panoIndex!==void 0&&o.panoIndex!==n.panoIndex&&(a.preload&&(yield n.preloadPano(o.panoIndex)),yield new Promise((m,A)=>{if(!o.panoIndex){m(!0);return}n.moveToPano(o.panoIndex,{moveEndCallback:()=>m(!0),moveCancelCallback:()=>A(new Error("move canceled"))})})),a.asyncEndCallback&&(yield a.asyncEndCallback());const{from:h,to:u}=i(o);return yield new Promise(m=>{const A=({progress:I})=>{const M={};M.longitude=Mr(h.longitude,u.longitude,I),M.latitude=Mr(h.latitude,u.latitude,I),M.fov=Mr(h.fov,u.fov,I),n.setState(M,!0)},p=()=>{m(!0)},g=()=>{m(!1)},v=o.rotateSpeed?Math.ceil(Math.abs(u.longitude-h.longitude)/o.rotateSpeed*1e3):r,y=xA(v,Lt.Linear.None).onUpdate(A).onComplete(p).onDestroy(g);o.rotation===Gt.Loop&&y.repeat(1/0).yoyo(!0),t.interruptCallback=(I=!0)=>{y.destroy(),t.interruptCallback=void 0,t.timeoutId&&(clearTimeout(t.timeoutId),t.timeoutId=void 0),m(I)},t.timeoutId=setTimeout(()=>{t.interruptCallback&&t.interruptCallback(!0)},r)})})}};function Ul(n,t){return n.x===t.x&&n.y===t.y}function nu(n,t){return Math.abs(n)===1/0&&Math.abs(t)===1/0?!0:Math.abs(n-t)<.001}function lo(n,t){return(t.y-n.y)/(t.x-n.x)}function su(n,t,e){const i=lo(n[1],n[0]),s=lo(t[1],t[0]);if(isNaN(i)||isNaN(s)||nu(i,s))return!1;if(js(n[0],t))return n[0];if(js(n[1],t))return n[1];if(js(t[0],n))return t[0];if(js(t[1],n))return t[1];if(e&&!SA(n,t))return!1;const o=n[0],r=t[0];if(Math.abs(i)===1/0)return{x:o.x,y:t[1].y-(t[1].x-o.x)*s};if(Math.abs(s)===1/0)return{x:r.x,y:n[1].y-(n[1].x-r.x)*i};const a=(r.y-o.y+i*o.x-s*r.x)/(i-s),l=i*a-i*o.x+o.y;return{x:a,y:l}}function js(n,t){return Ul(n,t[0])||Ul(n,t[1])?!0:(t[0].x-n.x)*(n.x-t[1].x)>=0&&(t[0].y-n.y)*(n.y-t[1].y)>=0&&nu(lo(t[0],n),lo(n,t[1]))}function zs(n,t,e){return(n.x-e.x)*(t.y-e.y)-(t.x-e.x)*(n.y-e.y)}function SA(n,t){return Math.max(n[0].x,n[1].x)>=Math.min(t[0].x,t[1].x)&&Math.max(t[0].x,t[1].x)>=Math.min(n[0].x,n[1].x)&&Math.max(n[0].y,n[1].y)>=Math.min(t[0].y,t[1].y)&&zs(t[0],n[1],n[0])*zs(n[1],t[1],n[0])>0&&zs(n[0],t[1],t[0])*zs(t[1],n[1],t[0])>0?1:0}function ou(n,t=0){t<=0?requestAnimationFrame(n):requestAnimationFrame(()=>ou(n,t-1))}const TA=`<style type="text/css">
194
+ `;return n.$$set=o=>{"content"in o&&e(0,i=o.content)},[i,s]}class Sg extends le{constructor(t){super(),ae(this,t,Dg,xg,oe,{content:0},kg)}}function Tg(n){ue(n,"svelte-ozpg4a",".floorplan-plugin__base-image.svelte-ozpg4a{position:absolute;z-index:10;width:100%;height:100%;pointer-events:none}")}function Lg(n){let t,e;return t=new Mg({props:{url:n[1].url}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.url=i[1].url),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function jg(n){let t,e;return t=new Sg({props:{content:n[0]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.content=i[0]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function zg(n){let t,e,i,s;const o=[jg,Lg],r=[];function a(l,c){return l[0]?0:l[1]?1:-1}return~(e=a(n))&&(i=r[e]=o[e](n)),{c(){t=D("div"),i&&i.c(),w(t,"class","floorplan-plugin__base-image svelte-ozpg4a")},m(l,c){O(l,t,c),~e&&r[e].m(t,null),s=!0},p(l,[c]){let d=e;e=a(l),e===d?~e&&r[e].p(l,c):(i&&(de(),T(r[d],1,1,()=>{r[d]=null}),he()),~e?(i=r[e],i?i.p(l,c):(i=r[e]=o[e](l),i.c()),k(i,1),i.m(t,null)):i=null)},i(l){s||(k(i),s=!0)},o(l){T(i),s=!1},d(l){l&&z(t),~e&&r[e].d()}}}function Og(n,t,e){let i,s,{floorIndex:o}=t,{floorplanData:r}=t;return n.$$set=a=>{"floorIndex"in a&&e(2,o=a.floorIndex),"floorplanData"in a&&e(3,r=a.floorplanData)},n.$$.update=()=>{var a,l;n.$$.dirty&12&&e(1,i=r.outlines[o]),n.$$.dirty&12&&e(0,s=(l=(a=r.outlines)==null?void 0:a[o])==null?void 0:l.svgContent)},[s,i,o,r]}class Jh extends le{constructor(t){super(),ae(this,t,Og,zg,oe,{floorIndex:2,floorplanData:3},Tg)}}function Bg(n){ue(n,"svelte-12pzct5",".floorplan-plugin__room-label-item.svelte-12pzct5{position:absolute;display:flex;flex-flow:column;align-items:center;line-height:1;color:#fff;transform:translate(-50%, -50%);white-space:nowrap;will-change:opacity;transition:opacity 300ms}.floorplan-plugin__room-size.svelte-12pzct5{opacity:0.45}")}function Vg(n){let t,e=n[8].outerHTML+"",i;return{c(){t=new $s(!1),i=Ee(),t.a=i},m(s,o){t.m(e,s,o),O(s,i,o)},p(s,o){o&256&&e!==(e=s[8].outerHTML+"")&&t.p(e)},d(s){s&&(z(i),t.d())}}}function Rg(n){let t,e,i=n[1]&&ml(n),s=n[0]&&gl(n);return{c(){i&&i.c(),t=$(),s&&s.c(),e=Ee()},m(o,r){i&&i.m(o,r),O(o,t,r),s&&s.m(o,r),O(o,e,r)},p(o,r){o[1]?i?i.p(o,r):(i=ml(o),i.c(),i.m(t.parentNode,t)):i&&(i.d(1),i=null),o[0]?s?s.p(o,r):(s=gl(o),s.c(),s.m(e.parentNode,e)):s&&(s.d(1),s=null)},d(o){o&&(z(t),z(e)),i&&i.d(o),s&&s.d(o)}}}function ml(n){let t,e=n[2].name+"",i;return{c(){t=D("span"),i=xe(e),w(t,"class","floorplan-plugin__room-name")},m(s,o){O(s,t,o),x(t,i)},p(s,o){o&4&&e!==(e=s[2].name+"")&&Se(i,e)},d(s){s&&z(t)}}}function gl(n){let t,e;return{c(){t=D("span"),e=xe(n[7]),w(t,"class","floorplan-plugin__room-size svelte-12pzct5")},m(i,s){O(i,t,s),x(t,e)},p(i,s){s&128&&Se(e,i[7])},d(i){i&&z(t)}}}function Qg(n){let t,e,i;function s(a,l){if(a[3]===void 0)return Rg;if(a[8])return Vg}let o=s(n),r=o&&o(n);return{c(){t=D("div"),r&&r.c(),w(t,"class","floorplan-plugin__room-label-item svelte-12pzct5"),j(t,"left",n[9]),j(t,"top",n[10]),j(t,"font-size",n[11]),j(t,"opacity",n[6]?"1":"0")},m(a,l){O(a,t,l),r&&r.m(t,null),e||(i=[ei(Sn.call(null,t)),be(t,"clientWidth",n[19]),be(t,"clientHeight",n[20])],e=!0)},p(a,[l]){o===(o=s(a))&&r?r.p(a,l):(r&&r.d(1),r=o&&o(a),r&&(r.c(),r.m(t,null))),l&64&&j(t,"opacity",a[6]?"1":"0")},i:q,o:q,d(a){a&&z(t),r&&r.d(),e=!1,qe(i)}}}function Gg(n,t){const e=n[0],i=n[1];let s=!1;for(let o=0,r=t.length-1;o<t.length;r=o++){const a=t[o][0],l=t[o][1],c=t[r][0],d=t[r][1];l>i!=d>i&&e<(c-a)*(i-l)/(d-l)+a&&(s=!s)}return s}function Ng(n,t,e){let i,s,o,r,a,{pxmm:l}=t,{roomAreaEnable:c}=t,{roomNameEnable:d}=t,{room:h}=t,{hoveredRoom:u}=t,{getRoomAreaText:m}=t,{getLabelElement:A}=t,{adaptiveRoomLabelVisibleEnable:p}=t;function g(H,_){if(_.width===0||_.height===0)return()=>!1;const Q=H.path.map(({x:Ce,y:pe})=>[Ce,pe]),F=H.roomLabel.position,{x:J,y:Z}=F,{width:ee,height:ce}=_,se=ee/2,we=ce/2;return function(pe){const Ve=J*pe,Ae=Z*pe,Ye=Q.map(([ye,ze])=>[ye*pe,ze*pe]);return[[Ve+se,Ae-we],[Ve-se,Ae-we],[Ve-se,Ae+we],[Ve+se,Ae+we]].every(ye=>Gg(ye,Ye))}}const v=document.body.clientWidth,y=document.body.clientHeight,I=h.roomLabel,M=I.positionInImage.x*100+"%",B=I.positionInImage.y*100+"%",P=(v<500||y<500?10:14)+"px";let V=0,L=0,X=!1;u.subscribe(function(_){e(16,X=!!_&&_.id===h.id)});const Y=H=>{e(4,V=H.detail)},N=H=>{e(5,L=H.detail)};return n.$$set=H=>{"pxmm"in H&&e(12,l=H.pxmm),"roomAreaEnable"in H&&e(0,c=H.roomAreaEnable),"roomNameEnable"in H&&e(1,d=H.roomNameEnable),"room"in H&&e(2,h=H.room),"hoveredRoom"in H&&e(13,u=H.hoveredRoom),"getRoomAreaText"in H&&e(14,m=H.getRoomAreaText),"getLabelElement"in H&&e(3,A=H.getLabelElement),"adaptiveRoomLabelVisibleEnable"in H&&e(15,p=H.adaptiveRoomLabelVisibleEnable)},n.$$.update=()=>{n.$$.dirty&12&&e(8,i=A==null?void 0:A(h)),n.$$.dirty&16388&&e(7,s=h.size?m(h.size):""),n.$$.dirty&48&&e(18,o={width:V,height:L}),n.$$.dirty&262148&&e(17,r=o?g(h,o):void 0),n.$$.dirty&233472&&e(6,a=p?X?!0:!!(r!=null&&r(l)):!0)},[c,d,h,A,V,L,a,s,i,M,B,P,l,u,m,p,X,r,o,Y,N]}class Hg extends le{constructor(t){super(),ae(this,t,Ng,Qg,oe,{pxmm:12,roomAreaEnable:0,roomNameEnable:1,room:2,hoveredRoom:13,getRoomAreaText:14,getLabelElement:3,adaptiveRoomLabelVisibleEnable:15},Bg)}}function _g(n){ue(n,"svelte-13xux0b",".floorplan-plugin__room-labels.svelte-13xux0b{width:100%;height:100%;position:absolute;left:0;top:0;z-index:20;pointer-events:none}")}function pl(n,t,e){const i=n.slice();return i[12]=t[e],i}function Al(n){let t,e=[],i=new Map,s,o,r,a=Pe(n[8]);const l=c=>c[12].id;for(let c=0;c<a.length;c+=1){let d=pl(n,a,c),h=l(d);i.set(h,e[c]=vl(h,d))}return{c(){t=D("div");for(let c=0;c<e.length;c+=1)e[c].c();w(t,"class","floorplan-plugin__room-labels svelte-13xux0b")},m(c,d){O(c,t,d);for(let h=0;h<e.length;h+=1)e[h]&&e[h].m(t,null);s=!0,o||(r=[ei(Sn.call(null,t)),be(t,"clientWidth",n[11])],o=!0)},p(c,d){d&447&&(a=Pe(c[8]),de(),e=Ot(e,d,l,1,c,a,i,t,bi,vl,null,pl),he())},i(c){if(!s){for(let d=0;d<a.length;d+=1)k(e[d]);s=!0}},o(c){for(let d=0;d<e.length;d+=1)T(e[d]);s=!1},d(c){c&&z(t);for(let d=0;d<e.length;d+=1)e[d].d();o=!1,qe(r)}}}function vl(n,t){let e,i,s;const o=[{pxmm:t[7],room:t[12],hoveredRoom:t[2],roomAreaEnable:t[0],roomNameEnable:t[1],getLabelElement:t[4],getRoomAreaText:t[3],adaptiveRoomLabelVisibleEnable:t[5]}];let r={};for(let a=0;a<o.length;a+=1)r=tt(r,o[a]);return i=new Hg({props:r}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(a,l){O(a,e,l),te(i,a,l),s=!0},p(a,l){t=a;const c=l&447?ct(o,[{pxmm:t[7],room:t[12],hoveredRoom:t[2],roomAreaEnable:t[0],roomNameEnable:t[1],getLabelElement:t[4],getRoomAreaText:t[3],adaptiveRoomLabelVisibleEnable:t[5]}]):{};i.$set(c)},i(a){s||(k(i.$$.fragment,a),s=!0)},o(a){T(i.$$.fragment,a),s=!1},d(a){a&&z(e),ie(i,a)}}}function Fg(n){let t,e,i=n[8]&&Al(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[8]?i?(i.p(s,o),o&256&&k(i,1)):(i=Al(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function Wg(n,t,e){let i,{floorIndex:s}=t,{roomAreaEnable:o}=t,{roomNameEnable:r}=t,{floorplanData:a}=t,{hoveredRoom:l}=t,{getRoomAreaText:c}=t,{getLabelElement:d}=t,{adaptiveRoomLabelVisibleEnable:h}=t,u=0,m=0;const A=p=>{e(6,u=p.detail)};return n.$$set=p=>{"floorIndex"in p&&e(9,s=p.floorIndex),"roomAreaEnable"in p&&e(0,o=p.roomAreaEnable),"roomNameEnable"in p&&e(1,r=p.roomNameEnable),"floorplanData"in p&&e(10,a=p.floorplanData),"hoveredRoom"in p&&e(2,l=p.hoveredRoom),"getRoomAreaText"in p&&e(3,c=p.getRoomAreaText),"getLabelElement"in p&&e(4,d=p.getLabelElement),"adaptiveRoomLabelVisibleEnable"in p&&e(5,h=p.adaptiveRoomLabelVisibleEnable)},n.$$.update=()=>{if(n.$$.dirty&1536&&e(8,i=a.floorDatas[s].rooms),n.$$.dirty&1088){const{max:p,min:g}=a.bounding,v=p.x-g.x;e(7,m=u/v)}},[o,r,l,c,d,h,u,m,i,s,a,A]}class Yg extends le{constructor(t){super(),ae(this,t,Wg,Fg,oe,{floorIndex:9,roomAreaEnable:0,roomNameEnable:1,floorplanData:10,hoveredRoom:2,getRoomAreaText:3,getLabelElement:4,adaptiveRoomLabelVisibleEnable:5},_g)}}function Ug(n){ue(n,"svelte-djlmk4",".floorplan-plugin__rule-labels.svelte-djlmk4.svelte-djlmk4{position:absolute;display:flex}.floorplan-plugin__rule-labels--top.svelte-djlmk4.svelte-djlmk4{left:0;top:-1.25rem}.floorplan-plugin__rule-labels--bottom.svelte-djlmk4.svelte-djlmk4{left:0;bottom:-1.25rem}.floorplan-plugin__rule-labels--left.svelte-djlmk4.svelte-djlmk4{top:0;left:-1.25rem}.floorplan-plugin__rule-labels--right.svelte-djlmk4.svelte-djlmk4{top:0;right:-1.25rem}.floorplan-plugin__rule-line.svelte-djlmk4.svelte-djlmk4{background:#fff;opacity:0.05;width:100%;height:100%}.floorplan-plugin__rule-scale-wrapper.svelte-djlmk4.svelte-djlmk4{position:absolute;width:0.3125rem;height:100%;left:50%;top:0;transform:translateX(-50%)}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-scale-wrapper.svelte-djlmk4{width:100%;height:0.3125rem;top:50%;left:0;transform:translateY(-50%)}.floorplan-plugin__rule-scale.svelte-djlmk4.svelte-djlmk4{position:absolute;background:#fff;opacity:0.05;width:100%;height:0.0625rem}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-scale.svelte-djlmk4{width:0.0625rem;height:100%}.floorplan-plugin__rule-text-wrapper.svelte-djlmk4.svelte-djlmk4{position:absolute}.floorplan-plugin__rule-labels--top.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:100%;height:0;top:0.625rem}.floorplan-plugin__rule-labels--bottom.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:100%;height:0;bottom:0.625rem}.floorplan-plugin__rule-labels--left.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:0;height:100%;left:0.625rem}.floorplan-plugin__rule-labels--right.svelte-djlmk4 .floorplan-plugin__rule-text-wrapper.svelte-djlmk4{width:0;height:100%;right:0.625rem}.floorplan-plugin__rule-text-item.svelte-djlmk4.svelte-djlmk4{width:0;height:0;position:absolute;transform:rotate(90deg)}.floorplan-plugin__rule-labels.is-row.svelte-djlmk4 .floorplan-plugin__rule-text-item.svelte-djlmk4{transform:rotate(0)}.floorplan-plugin__rule-text.svelte-djlmk4.svelte-djlmk4{width:-moz-max-content;width:max-content;transform:translate(-50%, -50%);font-size:0.625rem;color:#fff;opacity:0.2}")}function bl(n,t,e){const i=n.slice();return i[11]=t[e],i[13]=e,i}function yl(n,t,e){const i=n.slice();return i[14]=t[e],i}function wl(n){let t;return{c(){t=D("div"),w(t,"class","floorplan-plugin__rule-scale svelte-djlmk4"),j(t,"left",n[14].left*100+"%"),j(t,"bottom",n[14].bottom*100+"%")},m(e,i){O(e,t,i)},p:q,d(e){e&&z(t)}}}function Cl(n,t){let e,i,s=t[1](t[11].distance)+"",o,r;return{key:n,first:null,c(){e=D("div"),i=D("div"),o=xe(s),r=$(),w(i,"class","floorplan-plugin__rule-text svelte-djlmk4"),K(i,"is-row",t[2]),w(e,"class","floorplan-plugin__rule-text-item svelte-djlmk4"),j(e,"left",t[11].left*100+"%"),j(e,"bottom",t[11].bottom*100+"%"),this.first=e},m(a,l){O(a,e,l),x(e,i),x(i,o),x(e,r)},p(a,l){t=a,l&2&&s!==(s=t[1](t[11].distance)+"")&&Se(o,s)},d(a){a&&z(e)}}}function Xg(n){let t,e,i,s,o,r,a=[],l=new Map,c,d=Pe(n[3]),h=[];for(let A=0;A<d.length;A+=1)h[A]=wl(yl(n,d,A));let u=Pe(n[4]);const m=A=>A[13];for(let A=0;A<u.length;A+=1){let p=bl(n,u,A),g=m(p);l.set(g,a[A]=Cl(g,p))}return{c(){t=D("div"),e=D("div"),i=$(),s=D("div");for(let A=0;A<h.length;A+=1)h[A].c();o=$(),r=D("div");for(let A=0;A<a.length;A+=1)a[A].c();w(e,"class","floorplan-plugin__rule-line svelte-djlmk4"),w(s,"class","floorplan-plugin__rule-scale-wrapper svelte-djlmk4"),K(s,"is-row",n[2]),w(r,"class","floorplan-plugin__rule-text-wrapper svelte-djlmk4"),w(t,"class",c="floorplan-plugin__rule-labels floorplan-plugin__rule-labels--"+n[0]+" svelte-djlmk4"),K(t,"is-row",n[2]),j(t,"width",n[2]?"100%":1/16+"rem"),j(t,"height",n[2]?1/16+"rem":"100%")},m(A,p){O(A,t,p),x(t,e),x(t,i),x(t,s);for(let g=0;g<h.length;g+=1)h[g]&&h[g].m(s,null);x(t,o),x(t,r);for(let g=0;g<a.length;g+=1)a[g]&&a[g].m(r,null)},p(A,[p]){if(p&8){d=Pe(A[3]);let g;for(g=0;g<d.length;g+=1){const v=yl(A,d,g);h[g]?h[g].p(v,p):(h[g]=wl(v),h[g].c(),h[g].m(s,null))}for(;g<h.length;g+=1)h[g].d(1);h.length=d.length}p&22&&(u=Pe(A[4]),a=Ot(a,p,m,1,A,u,l,r,Ma,Cl,null,bl)),p&1&&c!==(c="floorplan-plugin__rule-labels floorplan-plugin__rule-labels--"+A[0]+" svelte-djlmk4")&&w(t,"class",c),p&5&&K(t,"is-row",A[2])},i:q,o:q,d(A){A&&z(t),jt(h,A);for(let p=0;p<a.length;p+=1)a[p].d()}}}const Ki=1e3,$i=180;function Zg(n,t,e){let{type:i}=t,{data:s}=t,{bounding:o}=t,{getRuleDistanceText:r}=t;const a=i==="top"||i==="bottom",l=o.max.x-o.min.x-(Ki-$i)*2,c=o.max.y-o.min.y-(Ki-$i)*2,d=s.map(([A,p])=>a?[A.x,p.x]:[A.y,p.y]).flat().sort().filter((A,p,g)=>p===0?!0:A!==g[p-1]),h=d.map(A=>{const p=a?(A-o.min.x-Ki+$i)/l:0,g=a?0:(A-o.min.y-Ki+$i)/c;return{left:p,bottom:g}});h.unshift({left:0,bottom:0}),h.push(a?{left:1,bottom:0}:{left:0,bottom:1});const u=d[d.length-1]-d[0],m=d.map((A,p,g)=>{const v=p===0?0:A-g[p-1],y=p===0?0:(A+g[p-1])/2,I=a?(y-o.min.x-Ki+$i)/l:0,M=a?0:(y-o.min.y-Ki+$i)/c;return{left:I,bottom:M,distance:v}}).filter(({distance:A})=>A/u>.1);return n.$$set=A=>{"type"in A&&e(0,i=A.type),"data"in A&&e(5,s=A.data),"bounding"in A&&e(6,o=A.bounding),"getRuleDistanceText"in A&&e(1,r=A.getRuleDistanceText)},[i,r,a,h,m,s,o]}class Jg extends le{constructor(t){super(),ae(this,t,Zg,Xg,oe,{type:0,data:5,bounding:6,getRuleDistanceText:1},Ug)}}function qg(n){ue(n,"svelte-1mzj9p3",".floorplan-plugin__rule-labels-wrapper.svelte-1mzj9p3{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);pointer-events:none}")}function Il(n,t,e){const i=n.slice();return i[13]=t[e][0],i[14]=t[e][1],i}function Pl(n,t){let e,i,s;const o=[{type:t[13],data:t[14],bounding:t[1],getRuleDistanceText:t[0]}];let r={};for(let a=0;a<o.length;a+=1)r=tt(r,o[a]);return i=new Jg({props:r}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(a,l){O(a,e,l),te(i,a,l),s=!0},p(a,l){t=a;const c=l&19?ct(o,[{type:t[13],data:t[14],bounding:t[1],getRuleDistanceText:t[0]}]):{};i.$set(c)},i(a){s||(k(i.$$.fragment,a),s=!0)},o(a){T(i.$$.fragment,a),s=!1},d(a){a&&z(e),ie(i,a)}}}function Kg(n){let t,e=[],i=new Map,s,o=Pe(n[4]);const r=a=>a[13];for(let a=0;a<o.length;a+=1){let l=Il(n,o,a),c=r(l);i.set(c,e[a]=Pl(c,l))}return{c(){t=D("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","floorplan-plugin__rule-labels-wrapper svelte-1mzj9p3"),j(t,"width",n[3]),j(t,"height",n[2])},m(a,l){O(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,[l]){l&19&&(o=Pe(a[4]),de(),e=Ot(e,l,r,1,a,o,i,t,bi,Pl,null,Il),he()),l&8&&j(t,"width",a[3]),l&4&&j(t,"height",a[2])},i(a){if(!s){for(let l=0;l<o.length;l+=1)k(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)T(e[l]);s=!1},d(a){a&&z(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}const El=1e3,Ml=180;function $g(n,t,e){let i,s,o,r,a,l,c,d,h,u,{floorIndex:m}=t,{floorplanData:A}=t,{getRuleDistanceText:p}=t;return n.$$set=g=>{"floorIndex"in g&&e(5,m=g.floorIndex),"floorplanData"in g&&e(6,A=g.floorplanData),"getRuleDistanceText"in g&&e(0,p=g.getRuleDistanceText)},n.$$.update=()=>{n.$$.dirty&64&&e(1,i=A.bounding),n.$$.dirty&96&&e(11,s=A.floorDatas[m].rules),n.$$.dirty&2048&&e(12,o=Object.keys(s)),n.$$.dirty&6144&&e(4,r=o.map(g=>[g,s[g]])),n.$$.dirty&2&&e(9,a=i.max.x-i.min.x),n.$$.dirty&2&&e(7,l=i.max.y-i.min.y),n.$$.dirty&2&&e(10,c=i.max.x-i.min.x-(El-Ml)*2),n.$$.dirty&2&&e(8,d=i.max.y-i.min.y-(El-Ml)*2),n.$$.dirty&1536&&e(3,h=c/a*100+"%"),n.$$.dirty&384&&e(2,u=d/l*100+"%")},[p,i,u,h,r,m,A,l,d,a,c,s,o]}class ep extends le{constructor(t){super(),ae(this,t,$g,Kg,oe,{floorIndex:5,floorplanData:6,getRuleDistanceText:0},qg)}}function Eo(n,t={}){let e="";const{needZ:i,needA:s}=t;return(i?n.slice().concat(n[0]):n.slice()).forEach((r,a)=>{const{x:l,y:c}=t.format?t.format(r):r,d=l+","+c;return a===0?(e+="M"+d,e):s!=null&&s[a]?(e+="A"+s[a]+","+d,e):(e+="L"+d,e)}),e+(i?"Z":"")}function qh({x:n,y:t},e){const{max:i,min:s}=e;return{x:n-s.x,y:i.y-t}}function tp(n,t){const e=n.x*1e3+t.bounding.origin.x,i=-n.z*1e3+t.bounding.origin.y;return{x:e,y:i}}function ip(n,t){const e=t.bounding,i=e.max.x-e.min.x,s=e.max.y-e.min.y;return{x:(n.x-e.min.x)/i,y:(e.max.y-n.y)/s}}function np(n,t){return Math.max(...t.work.observers.map(i=>n.z>=i.standingPosition.z?i.floorIndex:0))}function sp(n){let t;return{c(){t=Be("path"),w(t,"d",n[0]),w(t,"fill","#2F313A")},m(e,i){O(e,t,i)},p(e,[i]){i&1&&w(t,"d",e[0])},i:q,o:q,d(e){e&&z(t)}}}function op(n,t,e){let i,{path:s}=t;return n.$$set=o=>{"path"in o&&e(1,s=o.path)},n.$$.update=()=>{n.$$.dirty&2&&e(0,i=Eo(s,{needZ:!0}))},[i,s]}class rp extends le{constructor(t){super(),ae(this,t,op,sp,oe,{path:1})}}function ap(n){let t,e,i,s,o,r;return{c(){t=Be("defs"),e=Be("pattern"),i=Be("rect"),s=Be("path"),o=$(),r=Be("path"),w(i,"x","0"),w(i,"y","0"),w(i,"width",n[1]),w(i,"height",n[1]),w(i,"fill","#323747"),w(s,"d",n[2]),w(s,"stroke","#ffffff"),w(s,"stroke-opacity","0.06"),w(s,"stroke-width","0.5"),w(s,"fill","none"),w(e,"id","fpm-room-pattern-0"),w(e,"x","0"),w(e,"y","0"),w(e,"width",n[1]),w(e,"height",n[1]),w(e,"patternUnits","userSpaceOnUse"),w(e,"patternTransform","scale(50 50)"),w(r,"d",n[0]),w(r,"fill","url(#fpm-room-pattern-0)")},m(a,l){O(a,t,l),x(t,e),x(e,i),x(e,s),O(a,o,l),O(a,r,l)},p(a,[l]){l&1&&w(r,"d",a[0])},i:q,o:q,d(a){a&&(z(t),z(o),z(r))}}}const Er=6;function lp(n,t,e){let i,{path:s}=t;const o=Er*2,r=`M0 ${Er} h ${o} M${Er} 0 v ${o}`;return n.$$set=a=>{"path"in a&&e(3,s=a.path)},n.$$.update=()=>{n.$$.dirty&8&&e(0,i=Eo(s,{needZ:!0}))},[i,o,r,s]}class cp extends le{constructor(t){super(),ae(this,t,lp,ap,oe,{path:3})}}function dp(n){let t,e,i,s,o,r,a,l,c,d,h;return{c(){t=Be("defs"),e=Be("pattern"),i=Be("rect"),s=Be("pattern"),o=Be("rect"),r=$(),a=Be("path"),l=$(),c=Be("path"),d=$(),h=Be("path"),w(i,"x","0"),w(i,"y","0"),w(i,"width","6"),w(i,"height","50"),w(i,"fill","none"),w(i,"stroke","#4B4B57"),w(i,"stroke-width","0.5"),w(e,"id","room-material-pattern-1"),w(e,"x","0"),w(e,"y","0"),w(e,"width","12"),w(e,"height","50"),w(e,"patternUnits","userSpaceOnUse"),w(e,"patternTransform","scale(50 50)"),w(o,"x","0"),w(o,"y","0"),w(o,"width","6"),w(o,"height","50"),w(o,"fill","none"),w(o,"stroke","#4B4B57"),w(o,"stroke-width","0.5"),w(s,"id","room-material-pattern-2"),w(s,"x","6"),w(s,"y","25"),w(s,"width","12"),w(s,"height","50"),w(s,"patternUnits","userSpaceOnUse"),w(s,"patternTransform","scale(50 50)"),w(a,"d",n[0]),w(a,"fill","#43434D"),w(c,"d",n[0]),w(c,"fill","url(#room-material-pattern-1)"),w(h,"d",n[0]),w(h,"fill","url(#room-material-pattern-2)")},m(u,m){O(u,t,m),x(t,e),x(e,i),x(t,s),x(s,o),O(u,r,m),O(u,a,m),O(u,l,m),O(u,c,m),O(u,d,m),O(u,h,m)},p(u,[m]){m&1&&w(a,"d",u[0]),m&1&&w(c,"d",u[0]),m&1&&w(h,"d",u[0])},i:q,o:q,d(u){u&&(z(t),z(r),z(a),z(l),z(c),z(d),z(h))}}}function hp(n,t,e){let i,{path:s}=t;return n.$$set=o=>{"path"in o&&e(1,s=o.path)},n.$$.update=()=>{n.$$.dirty&2&&e(0,i=Eo(s,{needZ:!0}))},[i,s]}class up extends le{constructor(t){super(),ae(this,t,hp,dp,oe,{path:1})}}function fp(n){ue(n,"svelte-1dykexu",".floorplan-plugin__room-material.svelte-1dykexu{position:absolute;left:0;top:0;width:100%;height:100%}svg.svelte-1dykexu{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}")}function kl(n,t,e){const i=n.slice();return i[5]=t[e],i}function mp(n){let t,e;return t=new cp({props:{path:n[5].path}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.path=i[5].path),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function gp(n){let t,e;return t=new up({props:{path:n[5].path}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.path=i[5].path),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function pp(n){let t,e;return t=new rp({props:{path:n[5].path}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.path=i[5].path),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function xl(n){let t,e,i,s;const o=[pp,gp,mp],r=[];function a(l,c){return l[5].floorType===1?0:l[5].floorType===0?1:2}return e=a(n),i=r[e]=o[e](n),{c(){t=Be("svg"),i.c(),w(t,"width","100%"),w(t,"height","100%"),w(t,"viewBox",`0 0 ${n[1]} ${n[2]}`),w(t,"class","svelte-1dykexu")},m(l,c){O(l,t,c),r[e].m(t,null),s=!0},p(l,c){let d=e;e=a(l),e===d?r[e].p(l,c):(de(),T(r[d],1,1,()=>{r[d]=null}),he(),i=r[e],i?i.p(l,c):(i=r[e]=o[e](l),i.c()),k(i,1),i.m(t,null))},i(l){s||(k(i),s=!0)},o(l){T(i),s=!1},d(l){l&&z(t),r[e].d()}}}function Ap(n){let t,e,i=Pe(n[0]),s=[];for(let r=0;r<i.length;r+=1)s[r]=xl(kl(n,i,r));const o=r=>T(s[r],1,1,()=>{s[r]=null});return{c(){t=D("div");for(let r=0;r<s.length;r+=1)s[r].c();w(t,"class","floorplan-plugin__room-material svelte-1dykexu")},m(r,a){O(r,t,a);for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(t,null);e=!0},p(r,[a]){if(a&7){i=Pe(r[0]);let l;for(l=0;l<i.length;l+=1){const c=kl(r,i,l);s[l]?(s[l].p(c,a),k(s[l],1)):(s[l]=xl(c),s[l].c(),k(s[l],1),s[l].m(t,null))}for(de(),l=i.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<i.length;a+=1)k(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)T(s[a]);e=!1},d(r){r&&z(t),jt(s,r)}}}function vp(n,t,e){let i,{floorIndex:s}=t,{floorplanData:o}=t;const r=o.bounding.max.x-o.bounding.min.x,a=o.bounding.max.y-o.bounding.min.y;return n.$$set=l=>{"floorIndex"in l&&e(3,s=l.floorIndex),"floorplanData"in l&&e(4,o=l.floorplanData)},n.$$.update=()=>{n.$$.dirty&24&&e(0,i=o.floorDatas[s].rooms.map(l=>ve(G({},l),{path:l.path.map(c=>qh(c,o.bounding))})))},[i,r,a,s,o]}class bp extends le{constructor(t){super(),ae(this,t,vp,Ap,oe,{floorIndex:3,floorplanData:4},fp)}}function yp(n){ue(n,"svelte-qq2273","path.svelte-qq2273{--opacity:0;opacity:var(--opacity)}path.svelte-qq2273:hover{opacity:calc(var(--opacity) + 0.1)}")}function wp(n){let t,e,i,s;return{c(){t=Be("path"),w(t,"d",n[5]),w(t,"fill","#fff"),w(t,"style",n[2]),w(t,"id",e=`${n[1]}_${n[0].id}`),w(t,"class","svelte-qq2273")},m(o,r){O(o,t,r),i||(s=[be(t,"mouseenter",n[3]),be(t,"mouseleave",n[4])],i=!0)},p(o,[r]){r&4&&w(t,"style",o[2]),r&3&&e!==(e=`${o[1]}_${o[0].id}`)&&w(t,"id",e)},i:q,o:q,d(o){o&&z(t),i=!1,qe(s)}}}function Cp(n,t,e){let i,s,{room:o}=t,{floorIndex:r}=t,{floorplanData:a}=t,{highlightData:l}=t,{hoveredRoom:c}=t;function d(){c==null||c.set(o)}function h(){c==null||c.set(void 0)}const{bounding:u}=a,m=Eo(o.path,{needZ:!0,format:A=>qh(A,u)});return n.$$set=A=>{"room"in A&&e(0,o=A.room),"floorIndex"in A&&e(1,r=A.floorIndex),"floorplanData"in A&&e(6,a=A.floorplanData),"highlightData"in A&&e(7,l=A.highlightData),"hoveredRoom"in A&&e(8,c=A.hoveredRoom)},n.$$.update=()=>{n.$$.dirty&131&&e(9,i=l[`${r}_${o.id}`]),n.$$.dirty&512&&e(2,s=i?`fill: ${i.color}; --opacity: ${i.opacity}; pointer-events: ${i.disabled?"none":"auto"}`:null)},[o,r,s,d,h,m,a,l,c,i]}class Ip extends le{constructor(t){super(),ae(this,t,Cp,wp,oe,{room:0,floorIndex:1,floorplanData:6,highlightData:7,hoveredRoom:8},yp)}}function Pp(n){ue(n,"svelte-1kqo6e4",".floorplan-plugin__room-highlight.svelte-1kqo6e4{position:absolute;width:100%;height:100%}svg.svelte-1kqo6e4{width:100%;height:100%;overflow:visible}")}function Dl(n,t,e){const i=n.slice();return i[6]=t[e],i}function Sl(n,t){let e,i,s;const o=[{room:t[6],floorplanData:t[1],hoveredRoom:t[3],floorIndex:t[0],highlightData:t[2]}];let r={};for(let a=0;a<o.length;a+=1)r=tt(r,o[a]);return i=new Ip({props:r}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(a,l){O(a,e,l),te(i,a,l),s=!0},p(a,l){t=a;const c=l&15?ct(o,[{room:t[6],floorplanData:t[1],hoveredRoom:t[3],floorIndex:t[0],highlightData:t[2]}]):{};i.$set(c)},i(a){s||(k(i.$$.fragment,a),s=!0)},o(a){T(i.$$.fragment,a),s=!1},d(a){a&&z(e),ie(i,a)}}}function Ep(n){let t,e,i=[],s=new Map,o,r=Pe(n[1].floorDatas[n[0]].rooms);const a=l=>l[6].id;for(let l=0;l<r.length;l+=1){let c=Dl(n,r,l),d=a(c);s.set(d,i[l]=Sl(d,c))}return{c(){t=D("div"),e=Be("svg");for(let l=0;l<i.length;l+=1)i[l].c();w(e,"width","100%"),w(e,"height","100%"),w(e,"viewBox",`0 0 ${n[4]} ${n[5]}`),w(e,"class","svelte-1kqo6e4"),w(t,"class","floorplan-plugin__room-highlight svelte-1kqo6e4")},m(l,c){O(l,t,c),x(t,e);for(let d=0;d<i.length;d+=1)i[d]&&i[d].m(e,null);o=!0},p(l,[c]){c&15&&(r=Pe(l[1].floorDatas[l[0]].rooms),de(),i=Ot(i,c,a,1,l,r,s,e,bi,Sl,null,Dl),he())},i(l){if(!o){for(let c=0;c<r.length;c+=1)k(i[c]);o=!0}},o(l){for(let c=0;c<i.length;c+=1)T(i[c]);o=!1},d(l){l&&z(t);for(let c=0;c<i.length;c+=1)i[c].d()}}}function Mp(n,t,e){let{floorIndex:i}=t,{floorplanData:s}=t,{highlightData:o}=t,{hoveredRoom:r}=t;const a=s.bounding.max.x-s.bounding.min.x,l=s.bounding.max.y-s.bounding.min.y;return n.$$set=c=>{"floorIndex"in c&&e(0,i=c.floorIndex),"floorplanData"in c&&e(1,s=c.floorplanData),"highlightData"in c&&e(2,o=c.highlightData),"hoveredRoom"in c&&e(3,r=c.hoveredRoom)},[i,s,o,r,a,l]}class Kh extends le{constructor(t){super(),ae(this,t,Mp,Ep,oe,{floorIndex:0,floorplanData:1,highlightData:2,hoveredRoom:3},Pp)}}function kp(n){ue(n,"svelte-bl8zrz",".floorplan-plugin__floor.svelte-bl8zrz{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;pointer-events:none}.floorplan-plugin__floor--is-current.svelte-bl8zrz{opacity:1;pointer-events:auto}")}function Tl(n){let t,e;const i=[{floorIndex:n[1],floorplanData:n[8],hoveredRoom:n[14],highlightData:n[13]}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new Kh({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&24834?ct(i,[{floorIndex:o[1],floorplanData:o[8],hoveredRoom:o[14],highlightData:o[13]}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){T(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function Ll(n){let t,e;const i=[{floorplanData:n[8],roomAreaEnable:n[5],roomNameEnable:n[6],floorIndex:n[1],getRoomAreaText:n[9],getLabelElement:n[10],hoveredRoom:n[14],adaptiveRoomLabelVisibleEnable:n[12]}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new Yg({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&22370?ct(i,[{floorplanData:o[8],roomAreaEnable:o[5],roomNameEnable:o[6],floorIndex:o[1],getRoomAreaText:o[9],getLabelElement:o[10],hoveredRoom:o[14],adaptiveRoomLabelVisibleEnable:o[12]}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){T(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function jl(n){let t,e;const i=[{floorplanData:n[8],floorIndex:n[1],getRuleDistanceText:n[11]}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new ep({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&2306?ct(i,[{floorplanData:o[8],floorIndex:o[1],getRuleDistanceText:o[11]}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){T(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function xp(n){let t,e,i,s,o,r,a,l,c;const d=[{floorIndex:n[1],floorplanData:n[8]}];let h={};for(let v=0;v<d.length;v+=1)h=tt(h,d[v]);e=new bp({props:h});let u=(n[2]||n[3])&&Tl(n);const m=[{floorplanData:n[8],floorIndex:n[1]}];let A={};for(let v=0;v<m.length;v+=1)A=tt(A,m[v]);o=new Jh({props:A});let p=n[4]&&Ll(n),g=n[7]&&jl(n);return{c(){t=D("div"),ne(e.$$.fragment),i=$(),u&&u.c(),s=$(),ne(o.$$.fragment),r=$(),p&&p.c(),a=$(),g&&g.c(),w(t,"class",l=Qe(`floorplan-plugin__floor${n[0]?" floorplan-plugin__floor--is-current":""}`)+" svelte-bl8zrz")},m(v,y){O(v,t,y),te(e,t,null),x(t,i),u&&u.m(t,null),x(t,s),te(o,t,null),x(t,r),p&&p.m(t,null),x(t,a),g&&g.m(t,null),c=!0},p(v,[y]){const I=y&258?ct(d,[{floorIndex:v[1],floorplanData:v[8]}]):{};e.$set(I),v[2]||v[3]?u?(u.p(v,y),y&12&&k(u,1)):(u=Tl(v),u.c(),k(u,1),u.m(t,s)):u&&(de(),T(u,1,1,()=>{u=null}),he());const M=y&258?ct(m,[{floorplanData:v[8],floorIndex:v[1]}]):{};o.$set(M),v[4]?p?(p.p(v,y),y&16&&k(p,1)):(p=Ll(v),p.c(),k(p,1),p.m(t,a)):p&&(de(),T(p,1,1,()=>{p=null}),he()),v[7]?g?(g.p(v,y),y&128&&k(g,1)):(g=jl(v),g.c(),k(g,1),g.m(t,null)):g&&(de(),T(g,1,1,()=>{g=null}),he()),(!c||y&1&&l!==(l=Qe(`floorplan-plugin__floor${v[0]?" floorplan-plugin__floor--is-current":""}`)+" svelte-bl8zrz"))&&w(t,"class",l)},i(v){c||(k(e.$$.fragment,v),k(u),k(o.$$.fragment,v),k(p),k(g),c=!0)},o(v){T(e.$$.fragment,v),T(u),T(o.$$.fragment,v),T(p),T(g),c=!1},d(v){v&&z(t),ie(e),u&&u.d(),ie(o),p&&p.d(),g&&g.d()}}}function Dp(n,t,e){let{isCurrent:i}=t,{floorIndex:s}=t,{highlightEnable:o}=t,{hoverEnable:r}=t,{roomLabelsEnable:a}=t,{roomAreaEnable:l}=t,{roomNameEnable:c}=t,{ruleLabelsEnable:d}=t,{floorplanData:h}=t,{getRoomAreaText:u}=t,{getLabelElement:m}=t,{getRuleDistanceText:A}=t,{adaptiveRoomLabelVisibleEnable:p}=t,{highlightData:g}=t;const v=Da(void 0);return n.$$set=y=>{"isCurrent"in y&&e(0,i=y.isCurrent),"floorIndex"in y&&e(1,s=y.floorIndex),"highlightEnable"in y&&e(2,o=y.highlightEnable),"hoverEnable"in y&&e(3,r=y.hoverEnable),"roomLabelsEnable"in y&&e(4,a=y.roomLabelsEnable),"roomAreaEnable"in y&&e(5,l=y.roomAreaEnable),"roomNameEnable"in y&&e(6,c=y.roomNameEnable),"ruleLabelsEnable"in y&&e(7,d=y.ruleLabelsEnable),"floorplanData"in y&&e(8,h=y.floorplanData),"getRoomAreaText"in y&&e(9,u=y.getRoomAreaText),"getLabelElement"in y&&e(10,m=y.getLabelElement),"getRuleDistanceText"in y&&e(11,A=y.getRuleDistanceText),"adaptiveRoomLabelVisibleEnable"in y&&e(12,p=y.adaptiveRoomLabelVisibleEnable),"highlightData"in y&&e(13,g=y.highlightData)},[i,s,o,r,a,l,c,d,h,u,m,A,p,g,v]}let Sp=class extends le{constructor(t){super(),ae(this,t,Dp,xp,oe,{isCurrent:0,floorIndex:1,highlightEnable:2,hoverEnable:3,roomLabelsEnable:4,roomAreaEnable:5,roomNameEnable:6,ruleLabelsEnable:7,floorplanData:8,getRoomAreaText:9,getLabelElement:10,getRuleDistanceText:11,adaptiveRoomLabelVisibleEnable:12,highlightData:13},kp)}};function Tp(n){ue(n,"svelte-86bqav",".floorplan-main.svelte-86bqav{width:100%;height:100%;pointer-events:none}")}function zl(n,t,e){const i=n.slice();return i[21]=t[e],i}function Ol(n){let t,e,i,s,o,r=Pe(n[13].floorDatas),a=[];for(let h=0;h<r.length;h+=1)a[h]=Bl(zl(n,r,h));const l=h=>T(a[h],1,1,()=>{a[h]=null});let c=n[5]&&Vl(n),d=n[8]&&Rl(n);return{c(){t=D("div");for(let h=0;h<a.length;h+=1)a[h].c();e=$(),c&&c.c(),i=$(),d&&d.c(),w(t,"class","floorplan-main svelte-86bqav")},m(h,u){O(h,t,u);for(let m=0;m<a.length;m+=1)a[m]&&a[m].m(t,null);x(t,e),c&&c.m(t,null),x(t,i),d&&d.m(t,null),o=!0},p(h,u){if(n=h,u&2047696){r=Pe(n[13].floorDatas);let m;for(m=0;m<r.length;m+=1){const A=zl(n,r,m);a[m]?(a[m].p(A,u),k(a[m],1)):(a[m]=Bl(A),a[m].c(),k(a[m],1),a[m].m(t,e))}for(de(),m=r.length;m<a.length;m+=1)l(m);he()}n[5]?c?(c.p(n,u),u&32&&k(c,1)):(c=Vl(n),c.c(),k(c,1),c.m(t,i)):c&&(de(),T(c,1,1,()=>{c=null}),he()),n[8]?d?(d.p(n,u),u&256&&k(d,1)):(d=Rl(n),d.c(),k(d,1),d.m(t,null)):d&&(de(),T(d,1,1,()=>{d=null}),he())},i(h){if(!o){for(let u=0;u<r.length;u+=1)k(a[u]);k(c),k(d),h&&(s||He(()=>{s=Vi(t,it,{duration:n[0],easing:ti}),s.start()})),o=!0}},o(h){a=a.filter(Boolean);for(let u=0;u<a.length;u+=1)T(a[u]);T(c),T(d),o=!1},d(h){h&&z(t),jt(a,h),c&&c.d(),d&&d.d()}}}function Bl(n){let t,e;const i=[{hoverEnable:n[6],highlightEnable:n[7],floorplanData:n[13],getRoomAreaText:n[16],getLabelElement:n[17],getRuleDistanceText:n[18],roomLabelsEnable:n[9],roomAreaEnable:n[10],roomNameEnable:n[11],ruleLabelsEnable:n[12],adaptiveRoomLabelVisibleEnable:n[19],highlightData:n[20]},{floorIndex:n[21].floorIndex},{isCurrent:n[21].floorIndex===n[4]}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new Sp({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&2047696?ct(i,[r&2047680&&{hoverEnable:o[6],highlightEnable:o[7],floorplanData:o[13],getRoomAreaText:o[16],getLabelElement:o[17],getRuleDistanceText:o[18],roomLabelsEnable:o[9],roomAreaEnable:o[10],roomNameEnable:o[11],ruleLabelsEnable:o[12],adaptiveRoomLabelVisibleEnable:o[19],highlightData:o[20]},r&8192&&{floorIndex:o[21].floorIndex},r&8208&&{isCurrent:o[21].floorIndex===o[4]}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){T(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function Vl(n){let t,e;const i=[{panoIndex:n[3],floorplanData:n[13],lastPanoramaLongitude:n[14],cameraImageUrl:n[15]}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new gg({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&57352?ct(i,[{panoIndex:o[3],floorplanData:o[13],lastPanoramaLongitude:o[14],cameraImageUrl:o[15]}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){T(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function Rl(n){let t,e;return t=new Cg({props:{floorplanData:n[13],northDesc:n[2]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&8192&&(o.floorplanData=i[13]),s&4&&(o.northDesc=i[2]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function Lp(n){let t,e,i=n[1]&&Ol(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[1]?i?(i.p(s,o),o&2&&k(i,1)):(i=Ol(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function jp(n,t,e){let{duration:i=0}=t,{visible:s}=t,{northDesc:o}=t,{panoIndex:r}=t,{floorIndex:a}=t,{cameraEnable:l}=t,{hoverEnable:c}=t,{highlightEnable:d}=t,{compassEnable:h}=t,{roomLabelsEnable:u}=t,{roomAreaEnable:m}=t,{roomNameEnable:A}=t,{ruleLabelsEnable:p}=t,{floorplanData:g}=t,{lastPanoramaLongitude:v}=t,{cameraImageUrl:y}=t,{getRoomAreaText:I}=t,{getLabelElement:M}=t,{getRuleDistanceText:B}=t,{adaptiveRoomLabelVisibleEnable:P}=t,{highlightData:V}=t;return n.$$set=L=>{"duration"in L&&e(0,i=L.duration),"visible"in L&&e(1,s=L.visible),"northDesc"in L&&e(2,o=L.northDesc),"panoIndex"in L&&e(3,r=L.panoIndex),"floorIndex"in L&&e(4,a=L.floorIndex),"cameraEnable"in L&&e(5,l=L.cameraEnable),"hoverEnable"in L&&e(6,c=L.hoverEnable),"highlightEnable"in L&&e(7,d=L.highlightEnable),"compassEnable"in L&&e(8,h=L.compassEnable),"roomLabelsEnable"in L&&e(9,u=L.roomLabelsEnable),"roomAreaEnable"in L&&e(10,m=L.roomAreaEnable),"roomNameEnable"in L&&e(11,A=L.roomNameEnable),"ruleLabelsEnable"in L&&e(12,p=L.ruleLabelsEnable),"floorplanData"in L&&e(13,g=L.floorplanData),"lastPanoramaLongitude"in L&&e(14,v=L.lastPanoramaLongitude),"cameraImageUrl"in L&&e(15,y=L.cameraImageUrl),"getRoomAreaText"in L&&e(16,I=L.getRoomAreaText),"getLabelElement"in L&&e(17,M=L.getLabelElement),"getRuleDistanceText"in L&&e(18,B=L.getRuleDistanceText),"adaptiveRoomLabelVisibleEnable"in L&&e(19,P=L.adaptiveRoomLabelVisibleEnable),"highlightData"in L&&e(20,V=L.highlightData)},[i,s,o,r,a,l,c,d,h,u,m,A,p,g,v,y,I,M,B,P,V]}let Sa=class extends le{constructor(t){super(),ae(this,t,jp,Lp,oe,{duration:0,visible:1,northDesc:2,panoIndex:3,floorIndex:4,cameraEnable:5,hoverEnable:6,highlightEnable:7,compassEnable:8,roomLabelsEnable:9,roomAreaEnable:10,roomNameEnable:11,ruleLabelsEnable:12,floorplanData:13,lastPanoramaLongitude:14,cameraImageUrl:15,getRoomAreaText:16,getLabelElement:17,getRuleDistanceText:18,adaptiveRoomLabelVisibleEnable:19,highlightData:20},Tp)}};const zp="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAwCAYAAACFUvPfAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAALaADAAQAAAABAAAAMAAAAADe2FZjAAAEF0lEQVRoBe2WzWskRRiHf13V092TxI2oEzYeVDwITtyDuCiihwiCePGgxIM3vYgHL4J4UIhBRA8i/gPqyUvWg7AiIuIeloDiYUHJLOK6BPwIk9nNODM9Xf1RVe1b3elJRjCZmQ6euqGmuqer33rq4e23GqiOykBloDJQGagMVAYqA5WBykBlYFYD1qwP/tdzaZqOx9zYOLxeX0+L5yzLGp0X/03a25MOnGRcBtx+6Rlo9SL08G4EooFnxa8Yiivox5/h5Ys/4cl7NVorNDRnngX+0MIkVMeMSf23zyKML8J7/Dy8hwF2Buh9CnS+AEQIdLspBuGb+M7/qLW4qJrNpsLapjYhpwVnx3BMfCtNNx3Etc9xywvnMf80wG8HmQainw0RxSGrnmeBp+8k5/j9S0HbvXb5io0Lz880/0wPHV1NlhLd316He+4xOCv5ragF7L9PrH1qBJyB0626x/lC+qrSvH5r/W+n1WpxUM5nMY4GPeH8lHJaPgfeAFQHCL+ntkXT+vnUc3W6pvTIwC0wy3rA4dwLmK2avZ7Eo9uKBuYJfgJscbs8dLCxDMt+EOEPBEZNEWyBYHqTz6bPXrzUnNrSShxHIsYiOL69zrCGLLcLqJP68tB+9w5wj+YhWDafQ2s61wNqxjZhmrQ2pvMFCEvXuCUZ7wqH794ZWs28LJqlTXSUyuksF2M/yOwqgkx2c1ADa4wLAQRk2sAGQQakhN6yFC2hltfz5kSY44NKQeeh+vtI/SSzWhg2CzCgmWISmKUGmaYFBDfCSymnfxJ6/+ospVcWOLLp5DGP/y0P/Rp66O99DQNq7Po3Ds0a0wY+My2QSv2N2mO/OyxR2o6UQk+Lv7yJ06JYSnnolZVU9cUn2O9SmaMWGFBqYXRwbqAJWIi94TX5biotpcGl1DXZ6LnqIbNDTnmUgi52Mv5l5ysMxIcZcGjy2DTK4ZHlcBC14zeSge4qphICjj3bS0A7o9nSp2TOkm7aZ8bGZy/jxhO87V91G0+dfY/Z7BWIIK9KYUi5qy/Hf8YfBG3sqJTHiQWhmTVkbip+wX3x6volVSx+LPAxF+VLXhZ8VQ+iP2Rta/iWe5v42Fngj0BbdnRTXh12ZIcKhTaGbcYjybRwXBU1lu9KlndXp04NM52poKWO0RZsviNaP9a6grkO972+st05pXhE5c1hTEluJy7XUejGUQNLMbAmTdWY1rKBLW3aTJqBZ7nZkb36DhYCreeYHbMUXHvaYi5XDK70EcgulmRjm77wNtenzuXCbmnTRaAx493rbGf3Jr/njMzj920CnKdUaFCjlDioy7NYNvOdGrQJNgI32/L2tkXfFPlxgToqjWVhD6KdLnQRdARf/HHQz2r2X2Gqy8pAZaAyUBmoDFQGKgP/q4F/AJYg9/s0ZoABAAAAAElFTkSuQmCC";function Op(n){return W(this,null,function*(){const t=new Headers({"Content-Type":"text/plain"}),e=function(s){return W(this,null,function*(){const o={index:s.index,url:s.url,svgUrl:s.svg_url};if(s.svg_url){const r=yield fetch(s.svg_url,{headers:t}).then(a=>a.text());o.svgContent=r}return o})};return yield Promise.all(n.map(e))})}function Bp(n){return{id:n.id,size:n.size,name:n.name,path:n.path,roomType:n.room_type,floorType:n.floor_type,roomLabel:{position:n.room_label.position,positionInImage:n.room_label.position_in_image},observerIndexs:n.observer_indexs}}function Vp(n){return{floorName:n.floor_name,floorIndex:n.floor_index,rooms:n.rooms.map(Bp),rules:n.rules}}function Rp(n){return{index:n.index,floorIndex:n.floor_index,position:n.position,positionInImage:n.position_in_image}}function Qp(n){return{rad:n.rad,position:n.position,positionInImage:n.position_in_image,northRad:n.north_rad,roomId:n.room_id,floorIndex:n.floor_index}}function gi(n){return W(this,null,function*(){const t=yield Op(n.outlines),e=n.computed_data.bounding,i=n.computed_data.floor_datas.map(Vp),s=n.computed_data.entrance?Qp(n.computed_data.entrance):null;return{outlines:t,entrance:s,bounding:e,floorDatas:i,observers:n.computed_data.observers.map(Rp)}})}function Gp(n,t,e){return n.map(s=>{const o=s.position,r=s.icon?s.icon:{url:zp,width:45,height:48},a=np(o,t),l=tp(o,e),c=ip(l,e);return{floorIndex:a,icon:r,id:s.id,position:l,positionInImage:c}})}function Np(n,t){return t(n),n}function Mo(n,t){return Np({},e=>{for(const i in n)t.indexOf(i)===-1&&(e[i]=n[i])})}function Ql(n,t){const e=Math.max(...n.work.observers.map(i=>i.floorIndex));return t>e?n.model.bounding.max.y:Math.max(...n.work.observers.filter(i=>i.floorIndex===t).map(i=>i.standingPosition.y))}function Ta(n,t,e=hi.BOUNDING_CENTER){const i=Ql(n,t),s=Ql(n,t+1);return e===hi.BOUNDING_CENTER?(n.model.bounding.max.y+n.model.bounding.min.y)/2:e===hi.CEILING?s:i}function La(n,t,e,i){const s=Ta(n,e,i==null?void 0:i.attachedTo),o=new E.Vector3(0,s,0),r=new E.Vector3(1,s,0),a=o.clone().project(n.camera),l=r.clone().project(n.camera);return Math.abs((l.x-a.x)/1e3)*(t.getBoundingClientRect().width/2)}let cs=class{constructor(t,e){f(this,"VERSION","2.27.0-dev.3");f(this,"five");f(this,"hooks",new Cn);f(this,"staticPrefix","//vr-image-4.realsee-cdn.cn");this.five=t,e!=null&&e.staticPrefix&&(this.staticPrefix=e.staticPrefix)}getCurrentState(){return this.state}absoluteUrl(t){return pa(this.staticPrefix,t)}},yi=class extends cs{};var Ct=(n=>(n.UnknownError="UnknownError",n.DataNotLoaded="DataNotLoaded",n.BreakOffByHide="BreakOffByHide",n.BreakOffByDisable="BreakOffByDisable",n.ModelNotLoaded="ModelNotLoaded",n.ChangeModeError="ChangeModeError",n.UpdateCameraError="UpdateCameraError",n))(Ct||{});const $h=500,Hp=80;function Kr(n,t,e=4){return Math.floor(n*Math.pow(10,e))===Math.floor(t*Math.pow(10,e))}function ja(n,t){return W(this,null,function*(){const[e]=yield gn(n.changeMode(...t));if(e)throw new Error("change mode canceled");yield new Promise(r=>{n.once("initAnimationWillStart",()=>{n.once("initAnimationEnded",()=>r())})});const i=t[1];if(!i)return!0;const s=n.getCurrentState();if(!_p(i,s))throw new Error("pose 与预期不符")})}function _p(n,t){return Object.keys(n).every(e=>{const i=t[e];if(i===void 0)return!0;const s=n[e];return typeof i=="number"&&typeof s=="number"?Kr(i,s,2):i===s})}function za(n,t){if(n.currentMode!==t.mode)return!1;const{latitude:e,longitude:i,fov:s}=t,{latitude:o,longitude:r}=n.getCurrentState(),a=n.camera.fov;return!(!Kr(e,o,2)||!Kr(i,r,2)||s!==a)}function eu(n,t,e=!0){return W(this,null,function*(){if(za(n,t)===!0)return;const s=n.getCurrentState();if(s.mode!==t.mode){const[d]=yield gn(ja(n,[t.mode,t,void 0,e]));if(d)throw new Error(Ct.ChangeModeError);return}const{latitude:o,longitude:r,fov:a}=s,l=Math.min(1e3,Math.max(200,Math.abs(o-Math.PI/2)*1e3,(r>Math.PI?2*Math.PI-r:r)*500,Math.abs(a-t.fov)*10)),[c]=yield gn(n.updateCamera(t,l,e));if(c)throw new Error(Ct.UpdateCameraError)})}function An(n,t,e=300){const i=n.getElement();i&&(i.style.opacity=t+"",i.style.transition=e===0?"none":`opacity ${e}ms linear`,e!==0&&Promise.race([new Promise(s=>i.addEventListener("transitionend",s,{once:!0})),new Promise(s=>setTimeout(s,e))]).then(()=>{i.style.transition="none"}))}function Fp(n){const{latitude:t,longitude:e}=n,i=Math.abs(t-Math.PI/2)>5*Math.PI/180,s=e>5*(Math.PI/180)&&e<355*(Math.PI/180);return i||s}function Wp(n){const{latitude:t,longitude:e}=n,i=Math.abs(t-Math.PI/2)<10*Math.PI/180,s=e<30*(Math.PI/180)||e>330*(Math.PI/180);return i&&s}let Yp=class extends yi{constructor(e,i){var a;super(e);f(this,"name","modelFloorplanPlugin");f(this,"state");f(this,"data");f(this,"showState");f(this,"showPromise");f(this,"app");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"selector");f(this,"showRejection");f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"dispose",()=>{var e,i;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(i=this.container)==null||i.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"show",(...i)=>W(this,[...i],function*(e={}){if(!this.state.enabled||!this.showPromise&&this.state.visible)return;const s=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},s),this._show(e)}));f(this,"hide",(...i)=>W(this,[...i],function*(e={}){this.state.enabled&&(this.isHiddenByHideFunc=!0,this.state.visible!==!1&&(this.updateState({visible:!1},e.userAction||!0),this._hide(e)))}));f(this,"updateSize",()=>{if(!this.data||!za(this.five,this.showState)||!this.container||!this.wrapper)return;const{min:e,max:i}=this.data.bounding,s=i.x-e.x,o=i.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=La(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o,r;const{userAction:i}=e;this.hooks.emit("disable",{userAction:i}),(s=this.showRejection)==null||s.call(this,Ct.BreakOffByDisable),this.showPromise=void 0,(o=this.app)==null||o.$destroy(),this.app=void 0,(r=this.container)==null||r.remove(),this.removeEventListener()});f(this,"_enable",e=>{const{userAction:i}=e;this.addEventListener(),this.wrapper&&(this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:i}),this.state.visible&&this._show({userAction:i}))});f(this,"_show",e=>W(this,null,function*(){var r;if(!this.state.enabled)return;if(!((r=this.five.model)!=null&&r.loaded))throw new Error(Ct.ModelNotLoaded);if(!this.data)throw new Error(Ct.DataNotLoaded);if(this.showPromise)return this.showPromise;const i={floorIndex:this.floorIndex,modelOpacity:this.state.config.modelOpacity,immediately:!1,isAutoShow:!1,userAction:!0},s=G(G({},i),e),o=()=>W(this,null,function*(){this.hooks.emit("show",{userAction:s.userAction,auto:s.isAutoShow});let a=!1,l;this.showRejection=d=>{a=!0,l=d};const[c]=yield gn(eu(this.five,this.showState,s.userAction));if(c)throw c;if(a)throw l?new Error(l):new Error(Ct.UnknownError);this.updateSize(),this.floorIndex=s.floorIndex,this.five.model.show(this.floorIndex)});return this.isHiddenByHideFunc=!1,this.showPromise=o().then(()=>{this.showPromise=void 0,this.showRejection=void 0;const a=s.modelOpacity,l=s.immediately?0:$h;An(this.five,a,l),this.render(l),this.hooks.emit("showAnimationEnded",{auto:s.isAutoShow,userAction:s.userAction})}).catch(a=>{if(this.showPromise=void 0,this.showRejection=void 0,this.updateState({visible:!1},s.userAction),!s.isAutoShow&&a instanceof Error)throw a}),this.showPromise}));f(this,"_hide",e=>{var o;(o=this.showRejection)==null||o.call(this,Ct.BreakOffByHide),this.showPromise=void 0;const s=G(G({},{userAction:!0,isAutoHide:!1}),e);An(this.five,1,0),this.hooks.emit("hide",{auto:s.isAutoHide,userAction:s.userAction}),this.render()});f(this,"handleClick",()=>{if(!this.state.visible)return;if(this.hooks.emit("click"))return!1});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",e=>{e!==this.showState.mode&&(this.updateState({visible:!1},!1),this._hide({userAction:!1}))});f(this,"onFiveInteriaPan",(e,i)=>{if(!i||this.state.config.autoShowEnable===!1||this.isHiddenByHideFunc)return;const s=this.five.getCurrentState();s.mode==="Floorplan"&&(this.state.visible||Wp(s)&&(this.updateState({visible:!0},!0),this._show({isAutoShow:!0})))});f(this,"onFivePanoArrived",e=>{var i;(i=this.five)!=null&&i.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,i)=>{if(!this.state.visible||this.showPromise)return;const s=this.five.getCurrentState();Fp(s)&&(this.updateState({visible:!1},i),this._hide({userAction:i,isAutoHide:!0}))});f(this,"onFiveWantsGesture",(e,i)=>{if(this.state.visible&&(i.length>1||e==="mouseWheel"))return!1});f(this,"onFiveWantsPanGesture",(e,i)=>{if(this.five.getCurrentState().mode==="Floorplan"&&this.state.config.autoShowEnable!==!1&&i&&this.state.visible)return this.five.updateCamera(this.showState,0),!1});f(this,"onFiveWantsTapGesture",()=>this.handleClick());f(this,"onFiveWantsChangeMode",(e,i)=>{i==="Panorama"&&e==="Floorplan"&&(this.lastPanoramaLongitude=this.five.getCurrentState().longitude)});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const i=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[i].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});i!=null&&i.selector&&(this.selector=i.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法")),this.showState={mode:"Floorplan",longitude:0,latitude:Math.PI/2,fov:Hp/((a=i==null?void 0:i.scale)!=null?a:1)};const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,highlightEnable:!1,hoverEnable:!0,compassEnable:!0,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,adaptiveRoomLabelVisibleEnable:!0,cameraImageUrl:mi,attachedTo:hi.BOUNDING_CENTER,getLabelElement:void 0,getRoomAreaText:l=>(l/1e6).toFixed(1)+"㎡",getRuleDistanceText:l=>l.toString()},o=i?Mo(i,["selector","scale"]):{},r=G(G({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,i,s=!0){return W(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gi(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),i&&this.updateState(i,s),this.render()})}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}enable(e={}){if(this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||i),this._enable({userAction:i})}disable(e={}){if(!this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||i),this._disable({userAction:i})}setState(e,i={}){const s=this.state,o=i.userAction!==void 0?i.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled&&(e.enabled?this._enable({userAction:o}):this._disable({userAction:o})),e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}this.render()}changeConfigs(e,i=!0){this.updateState({config:e},i),this.render()}formatData(e){return W(this,null,function*(){return yield gi(e.data)})}updateState(e,i){const s=this.state,o=e.config?G(G({},s.config),e.config):s.config;this.state=ve(G(G({},this.state),e),{config:o}),!It(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i})}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",zIndex:10,pointerEvents:"none"}),this.five.addExtraElement(this.container)}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("interiaPan",this.onFiveInteriaPan),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsGesture",this.onFiveWantsGesture),e.on("wantsPanGesture",this.onFiveWantsPanGesture),e.on("wantsTapGesture",this.onFiveWantsTapGesture),e.on("wantsChangeMode",this.onFiveWantsChangeMode),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modelLoaded",this.onFiveModelLoaded),e.off("modeChange",this.onFiveModeChange),e.off("interiaPan",this.onFiveInteriaPan),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsGesture",this.onFiveWantsGesture),e.off("wantsPanGesture",this.onFiveWantsPanGesture),e.off("wantsTapGesture",this.onFiveWantsTapGesture),e.off("wantsChangeMode",this.onFiveWantsChangeMode),e.off("modelShownFloorChange",this.onModelShownFloorChange)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0||this.showPromise)return;const i=ve(G({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(i);this.app=new Sa({target:this.container,intro:!0,props:i})}};const Up=(n,t)=>new Yp(n,t);function Xp(n){const{latitude:t,longitude:e}=n,i=Math.abs(t-Math.PI/2)>5*Math.PI/180,s=e>5*(Math.PI/180)&&e<355*(Math.PI/180);return i||s}function Zp(n){const{latitude:t,longitude:e}=n,i=Math.abs(t-Math.PI/2)<10*Math.PI/180,s=e<30*(Math.PI/180)||e>330*(Math.PI/180);return i&&s}let Jp=class extends yi{constructor(e,i){super(e);f(this,"name","modelFloorplanPlugin");f(this,"state");f(this,"data");f(this,"showState");f(this,"showPromise");f(this,"app");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"selector");f(this,"showRejection");f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"dispose",()=>{var e,i;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(i=this.container)==null||i.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"show",(...i)=>W(this,[...i],function*(e={}){if(!this.state.enabled||!this.showPromise&&this.state.visible)return;const s=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},s),this._show(e)}));f(this,"hide",(...i)=>W(this,[...i],function*(e={}){this.state.enabled&&(this.isHiddenByHideFunc=!0,this.state.visible!==!1&&(this.updateState({visible:!1},e.userAction||!0),this._hide(e)))}));f(this,"updateSize",()=>{if(!this.data||!za(this.five,this.showState)||!this.container||!this.wrapper)return;const{min:e,max:i}=this.data.bounding,s=i.x-e.x,o=i.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=La(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o,r;const{userAction:i}=e;this.hooks.emit("disable",{userAction:i}),(s=this.showRejection)==null||s.call(this,Ct.BreakOffByDisable),this.showPromise=void 0,(o=this.app)==null||o.$destroy(),this.app=void 0,(r=this.container)==null||r.remove(),this.removeEventListener()});f(this,"_enable",e=>{const{userAction:i}=e;this.addEventListener(),this.wrapper&&(this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:i}),this.state.visible&&this._show({userAction:i}))});f(this,"_show",e=>W(this,null,function*(){var r;if(!this.state.enabled)return;if(!((r=this.five.model)!=null&&r.loaded))throw new Error(Ct.ModelNotLoaded);if(!this.data)throw new Error(Ct.DataNotLoaded);if(this.showPromise)return this.showPromise;const i={floorIndex:this.floorIndex,modelOpacity:this.state.config.modelOpacity,immediately:!1,isAutoShow:!1,userAction:!0},s=G(G({},i),e),o=()=>W(this,null,function*(){this.hooks.emit("show",{userAction:s.userAction,auto:s.isAutoShow});let a=!1,l;this.showRejection=d=>{a=!0,l=d};const[c]=yield gn(eu(this.five,this.showState,s.userAction));if(c)throw c;if(a)throw l?new Error(l):new Error(Ct.UnknownError);this.updateSize(),this.updatePosition(),this.floorIndex=s.floorIndex,this.five.model.show(this.floorIndex)});return this.isHiddenByHideFunc=!1,this.showPromise=o().then(()=>{this.showPromise=void 0,this.showRejection=void 0;const a=s.modelOpacity,l=s.immediately?0:$h;An(this.five,a,l),this.render(l),this.hooks.emit("showAnimationEnded",{auto:s.isAutoShow,userAction:s.userAction})}).catch(a=>{if(this.showPromise=void 0,this.showRejection=void 0,this.updateState({visible:!1},s.userAction),!s.isAutoShow&&a instanceof Error)throw a}),this.showPromise}));f(this,"_hide",e=>{var o;(o=this.showRejection)==null||o.call(this,Ct.BreakOffByHide),this.showPromise=void 0;const s=G(G({},{userAction:!0,isAutoHide:!1}),e);An(this.five,1,0),this.hooks.emit("hide",{auto:s.isAutoHide,userAction:s.userAction}),this.render()});f(this,"handleClick",()=>{if(!this.state.visible)return;if(this.hooks.emit("click"))return!1});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",e=>{e!==this.showState.mode&&(this.updateState({visible:!1},!1),this._hide({userAction:!1}))});f(this,"onFiveInteriaPan",(e,i)=>{if(!i||this.state.visible||this.state.config.autoShowEnable===!1||this.isHiddenByHideFunc)return;const s=this.five.getCurrentState();s.mode===this.showState.mode&&Zp(s)&&(this.updateState({visible:!0},!0),this._show({isAutoShow:!0}))});f(this,"onFivePanoArrived",e=>{var i;(i=this.five)!=null&&i.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,i)=>{if(!this.state.visible||this.showPromise)return;const s=this.five.getCurrentState();this.updatePosition(),this.updateSize(),Xp(s)&&(this.updateState({visible:!1},i),this._hide({userAction:i}))});f(this,"onFiveWantsPanGesture",(e,i)=>{if(this.five.getCurrentState().mode===this.showState.mode&&this.state.config.autoShowEnable!==!1&&i&&this.state.visible)return this.five.updateCamera(this.showState,0),!1});f(this,"onFiveWantsTapGesture",()=>this.handleClick());f(this,"onFiveWantsChangeMode",(e,i)=>{i==="Panorama"&&e===this.showState.mode&&(this.lastPanoramaLongitude=this.five.getCurrentState().longitude)});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const i=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[i].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});i!=null&&i.selector&&(this.selector=i.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法")),this.showState={mode:"Mapview",longitude:0,latitude:Math.PI/2,fov:90};const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,highlightEnable:!1,hoverEnable:!0,compassEnable:!0,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,cameraImageUrl:mi,attachedTo:hi.BOUNDING_CENTER,getLabelElement:void 0,adaptiveRoomLabelVisibleEnable:!0,getRoomAreaText:a=>(a/1e6).toFixed(1)+"㎡",getRuleDistanceText:a=>a.toString()},o=i?Mo(i,["selector","scale"]):{},r=G(G({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,i,s=!0){return W(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gi(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),i&&this.updateState(i,s),this.render()})}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}enable(e={}){if(this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||i),this._enable({userAction:i})}disable(e={}){if(!this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||i),this._disable({userAction:i})}setState(e,i={}){const s=this.state,o=i.userAction!==void 0?i.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled&&(e.enabled?this._enable({userAction:o}):this._disable({userAction:o})),e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}changeConfigs(e,i=!0){this.updateState({config:e},i),this.render()}updatePosition(){var a;const e=Ta(this.five,this.floorIndex,this.state.config.attachedTo),i=(a=this.five.model)==null?void 0:a.bounding.getCenter(new E.Vector3).setY(e);if(!i)return;const s=i.clone().project(this.five.camera),o=(s.x+1)/2,r=-(s.y-1)/2;this.container.style.left=o*100+"%",this.container.style.top=r*100+"%"}formatData(e){return W(this,null,function*(){return yield gi(e.data)})}updateState(e,i){const s=this.state,o=e.config?G(G({},s.config),e.config):s.config;this.state=ve(G(G({},this.state),e),{config:o}),!It(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i})}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",zIndex:10,pointerEvents:"none"}),this.five.addExtraElement(this.container)}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("interiaPan",this.onFiveInteriaPan),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsPanGesture",this.onFiveWantsPanGesture),e.on("wantsTapGesture",this.onFiveWantsTapGesture),e.on("wantsChangeMode",this.onFiveWantsChangeMode),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modelLoaded",this.onFiveModelLoaded),e.off("modeChange",this.onFiveModeChange),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsPanGesture",this.onFiveWantsPanGesture),e.off("wantsTapGesture",this.onFiveWantsTapGesture),e.off("wantsChangeMode",this.onFiveWantsChangeMode),e.off("modelShownFloorChange",this.onModelShownFloorChange)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0||this.showPromise)return;const i=ve(G({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(i);this.app=new Sa({target:this.container,intro:!0,props:i})}};const qp=(n,t)=>new Jp(n,t);let Kp=class extends yi{constructor(e,i){super(e);f(this,"name","topviewFloorplanPlugin");f(this,"state");f(this,"data");f(this,"app");f(this,"selector");f(this,"panoIndex",0);f(this,"floorIndex",0);f(this,"wrapper");f(this,"container",document.createElement("div"));f(this,"lastPanoramaLongitude",0);f(this,"size",{width:0,height:0});f(this,"hasAddedEventListener",!1);f(this,"isHiddenByHideFunc",!1);f(this,"highlightData",{});f(this,"updateSize",()=>{if(!this.data||!this.container||!this.wrapper||this.five.getCurrentState().mode!=="Topview")return;const{min:e,max:i}=this.data.bounding,s=i.x-e.x,o=i.y-e.y,r=this.state.config.attachedTo?{attachedTo:this.state.config.attachedTo}:void 0,a=La(this.five,this.wrapper,this.floorIndex,r),l=Math.ceil(s*a),c=Math.ceil(o*a);this.size.width===l&&this.size.height===c||(this.container.style.width=l+"px",this.container.style.height=c+"px",this.size={width:l,height:c})});f(this,"dispose",()=>{var e,i;this.removeEventListener(),(e=this.app)==null||e.$destroy(),this.app=void 0,(i=this.container)==null||i.remove(),this.data=void 0,this.wrapper=void 0,this.selector=void 0,this.hooks.emit("dispose")});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s,o;const{userAction:i}=e;(s=this.app)==null||s.$destroy(),this.app=void 0,(o=this.container)==null||o.remove(),this.removeEventListener(),this.hooks.emit("disable",{userAction:i})});f(this,"onFiveModelLoaded",()=>{if(this.state.enabled===!1||this.wrapper||!this.selector)return;const e=this.selector instanceof Element?this.selector:document.querySelector(this.selector);if(!e)throw new Error("不正确的父容器选择器");this.wrapper=e,e.append(this.container)});f(this,"onFiveModeChange",(...[e,,,,i])=>{e!=="Topview"&&this.state.visible&&(this.updateState({visible:!1},i),this._hide({userAction:i}))});f(this,"onFivePanoArrived",e=>{var i;(i=this.five)!=null&&i.work&&(this.panoIndex=e,this.floorIndex=this.five.work.observers[e].floorIndex)});f(this,"onFiveCameraUpdate",(e,i)=>{this.state.visible&&(this.updatePosition(),this.updateSize())});f(this,"onFiveWantsGesture",e=>{if(!(e!=="pan"&&e!=="pinch"&&e!=="mouseWheel")&&this.state.visible&&!this.state.config.gestureEnable)return!1});f(this,"onFiveWantsMoveToPano",()=>{if(this.state.visible&&this.state.config.preventRoomClick)return!1});f(this,"onFiveInitAnimationEnded",(...[,,e])=>{const{mode:i}=this.five.getCurrentState();i==="Topview"&&!this.isHiddenByHideFunc&&!this.state.visible&&this.state.config.autoShowEnable&&(this.updateState({visible:!0},e),this._show({userAction:e}))});f(this,"onModelShownFloorChange",e=>{if(this.floorIndex!==e){if(e===null){const i=this.five.getCurrentState().panoIndex;this.floorIndex=this.five.work.observers[i].floorIndex;return}this.floorIndex=e,this.updateSize(),this.render()}});i!=null&&i.selector&&(this.selector=i.selector,console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法"));const s={northDesc:"北",modelOpacity:1,cameraEnable:!0,hoverEnable:!0,highlightEnable:!1,compassEnable:!0,gestureEnable:!1,autoShowEnable:!0,ruleLabelsEnable:!0,roomLabelsEnable:!0,roomAreaEnable:!0,roomNameEnable:!0,cameraImageUrl:mi,attachedTo:hi.BOUNDING_CENTER,getLabelElement:void 0,adaptiveRoomLabelVisibleEnable:!0,getRoomAreaText:a=>(a/1e6).toFixed(1)+"㎡",getRuleDistanceText:a=>a.toString()},o=i?Mo(i,["selector","scale"]):{},r=G(G({},s),o);this.state={enabled:!0,visible:!1,config:r},this.initContainer(),e.model.loaded?this.onFiveModelLoaded():e.once("modelLoaded",this.onFiveModelLoaded),e.once("dispose",this.dispose),this.addEventListener()}load(e,i,s=!0){return W(this,null,function*(){function o(d){return Object.prototype.hasOwnProperty.apply(d,["version"])}const r=e;r&&!r.version&&console.warn("传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数");const a=JSON.parse(JSON.stringify(e)),l=o(a)?a.data:a,c=this.data;this.data=yield gi(l),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,c),i&&this.updateState(i,s),this.render()})}updatePosition(){var a;const e=Ta(this.five,this.floorIndex,this.state.config.attachedTo),i=(a=this.five.model)==null?void 0:a.bounding.getCenter(new E.Vector3).setY(e);if(!i)return;const s=i.clone().project(this.five.camera),o=(s.x+1)/2,r=-(s.y-1)/2;this.container.style.left=o*100+"%",this.container.style.top=r*100+"%"}appendTo(e){if(this.wrapper=e,!!this.state.enabled)return e.appendChild(this.container),this.render(),this}show(){return W(this,arguments,function*(e={}){if(this.state.visible)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},i),this._show({userAction:i})})}hide(){return W(this,arguments,function*(e={}){if(this.isHiddenByHideFunc=!0,!this.state.visible)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!1},i),this._hide({userAction:i})})}enable(e={}){if(this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||i),this._enable({userAction:i})}disable(e={}){if(!this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||i),this._disable({userAction:i})}setState(e,i={}){const s=this.state,o=i.userAction!==void 0?i.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled){const r={userAction:o};e.enabled?this._enable(r):this._disable(r)}if(e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}changeConfigs(e,i=!0){this.updateState({config:e},i),this.render()}formatData(e){return W(this,null,function*(){return yield gi(e.data)})}_show(e){return W(this,null,function*(){if(!this.state.enabled)return;this.isHiddenByHideFunc=!1;const{userAction:i}=e;this.hooks.emit("show",{userAction:i,auto:!1}),this.five.getCurrentState().mode!=="Topview"&&(yield ja(this.five,["Topview",void 0,void 0,i])),this.five.model.show(this.floorIndex),this.updatePosition(),this.updateSize();const s=500,o=this.state.config.modelOpacity;An(this.five,o,s),this.hooks.emit("showAnimationEnded",{userAction:i,auto:!1}),this.render()})}_hide(e){return W(this,null,function*(){if(!this.state.enabled)return;const{userAction:i}=e;this.hooks.emit("hide",{userAction:i,auto:!1});const s=1,o=0;An(this.five,s,o),this.render()})}_enable(e){const{userAction:i}=e;this.addEventListener(),this.wrapper&&this.wrapper.append(this.container),this.hooks.emit("enable",{userAction:i}),this.state.visible&&this._show({userAction:i})}updateState(e,i){const s=this.state,o=e.config?G(G({},s.config),e.config):s.config;this.state=ve(G(G({},this.state),e),{config:o}),!It(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i})}addEventListener(){if(!this.state.enabled||this.hasAddedEventListener)return;const e=this.five;e.on("modeChange",this.onFiveModeChange),e.on("panoArrived",this.onFivePanoArrived),e.on("cameraUpdate",this.onFiveCameraUpdate),e.on("wantsGesture",this.onFiveWantsGesture),e.on("wantsMoveToPano",this.onFiveWantsMoveToPano),e.on("initAnimationEnded",this.onFiveInitAnimationEnded),e.on("modelShownFloorChange",this.onModelShownFloorChange)}removeEventListener(){const e=this.five;this.hasAddedEventListener=!1,e.off("modeChange",this.onFiveModeChange),e.off("panoArrived",this.onFivePanoArrived),e.off("cameraUpdate",this.onFiveCameraUpdate),e.off("wantsGesture",this.onFiveWantsGesture),e.off("wantsMoveToPano",this.onFiveWantsMoveToPano),e.off("initAnimationEnded",this.onFiveInitAnimationEnded),e.off("modelShownFloorChange",this.onModelShownFloorChange)}initContainer(){this.container.classList.add("floorplan-plugin"),Object.assign(this.container.style,{position:"absolute",left:"50%",top:"50%",transform:"translate3d(-50%, -50%, 10px)",zIndex:10,pointerEvents:"none","will-change":"width, height"}),this.five.addExtraElement(this.container)}render(e){if(!this.state.enabled||!this.container||!this.data||this.size.width===0)return;const i=ve(G({},this.state.config),{visible:this.state.visible,duration:e!=null?e:0,panoIndex:this.panoIndex,floorIndex:this.floorIndex,floorplanData:this.data,lastPanoramaLongitude:this.lastPanoramaLongitude,highlightData:this.highlightData});if(this.app)return this.app.$set(i);this.app=new Sa({target:this.container,intro:!0,props:i})}};const $p=(n,t)=>new Kp(n,t);function Oa(n,t=200){let e;return function(...i){e||(n(...i),e=setTimeout(function(){e=null},t))}}function eA(n){ue(n,"svelte-1nqrlxd",".plugin-radar__camera-wrapper.svelte-1nqrlxd{width:100%;height:100%;position:absolute;pointer-events:none}.plugin-radar__camera-position.svelte-1nqrlxd{position:absolute;left:0;top:0;width:0;height:0;transform:none;pointer-events:none;transition:transform 1s linear}.plugin-radar__camera-rotate.svelte-1nqrlxd{position:absolute;left:-0.9375rem;top:-0.9375rem;width:1.0625rem;height:1.0625rem;transform-origin:0.9375rem 0.9375rem;transform:rotate(45deg);background-repeat:no-repeat;background-size:100%}")}function tA(n){let t,e,i;return{c(){t=D("div"),e=D("div"),i=D("div"),w(i,"class","plugin-radar__camera-rotate svelte-1nqrlxd"),j(i,"background-image","url("+(n[0]||mi)+")"),j(i,"transform",n[1]),w(e,"class","plugin-radar__camera-position svelte-1nqrlxd"),j(e,"transform",n[2]),w(t,"class","plugin-radar__camera-wrapper svelte-1nqrlxd")},m(s,o){O(s,t,o),x(t,e),x(e,i)},p(s,[o]){o&1&&j(i,"background-image","url("+(s[0]||mi)+")"),(o&1||o&3)&&j(i,"transform",s[1]),o&4&&j(e,"transform",s[2])},i:q,o:q,d(s){s&&z(t)}}}function iA(n){return`rotate(${Math.floor(n/Math.PI*180)*-1+45}deg)`}function nA(n,t,e){let i,s,{five:o}=t,{pxmm:r}=t,{floorplanData:a}=t,{cameraImageUrl:l}=t,c=o.getCurrentState().panoIndex,d=o.getCurrentState().longitude;function h(A,p){const g=A.bounding,v=A.observers[p];if(!v)return"";const y=(g.max.x-g.min.x)*r,I=(g.max.y-g.min.y)*r,M=Math.floor(v.positionInImage.x*y),B=Math.floor(v.positionInImage.y*I);return`translate(${M}px, ${B}px)`}function u(A){e(6,c=A)}const m=Oa(A=>{e(7,d=A.longitude)},1e3/60);return bt(()=>(o.on("panoWillArrive",u),o.on("cameraDirectionUpdate",m),function(){o.off("panoWillArrive",u),o.off("cameraDirectionUpdate",m)})),n.$$set=A=>{"five"in A&&e(3,o=A.five),"pxmm"in A&&e(4,r=A.pxmm),"floorplanData"in A&&e(5,a=A.floorplanData),"cameraImageUrl"in A&&e(0,l=A.cameraImageUrl)},n.$$.update=()=>{n.$$.dirty&96&&e(2,i=h(a,c)),n.$$.dirty&128&&e(1,s=iA(d))},[l,s,i,o,r,a,c,d]}class sA extends le{constructor(t){super(),ae(this,t,nA,tA,oe,{five:3,pxmm:4,floorplanData:5,cameraImageUrl:0},eA)}}function oA(n){ue(n,"svelte-1i87fz7",".plugin-pano-floorplan__extra-objects.svelte-1i87fz7{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.plugin-pano-floorplan__extra-object-item--position.svelte-1i87fz7{position:absolute;width:0;height:0}.plugin-pano-floorplan__extra-object-item.svelte-1i87fz7{transform:translate(-50%, -50%)}")}function Gl(n,t,e){const i=n.slice();return i[1]=t[e],i}function Nl(n,t){let e,i,s=`${t[1].icon.width/16}rem`,o=`${t[1].icon.height/16}rem`,r,a=`${t[1].positionInImage.y*100}%`,l=`${t[1].positionInImage.x*100}%`;return{key:n,first:null,c(){e=D("div"),i=D("div"),r=$(),w(i,"class","plugin-pano-floorplan__extra-object-item svelte-1i87fz7"),j(i,"background-image",`url(${t[1].icon.url})`),j(i,"width",s),j(i,"height",o),w(e,"class","plugin-pano-floorplan__extra-object-item--position svelte-1i87fz7"),j(e,"top",a),j(e,"left",l),this.first=e},m(c,d){O(c,e,d),x(e,i),x(e,r)},p(c,d){t=c,d&1&&j(i,"background-image",`url(${t[1].icon.url})`);const h=d&1;h&&j(i,"width",s),h&&j(i,"height",o),d&1&&a!==(a=`${t[1].positionInImage.y*100}%`)&&j(e,"top",a),d&1&&l!==(l=`${t[1].positionInImage.x*100}%`)&&j(e,"left",l)},d(c){c&&z(e)}}}function rA(n){let t,e=[],i=new Map,s=Pe(n[0]);const o=r=>r[1].id;for(let r=0;r<s.length;r+=1){let a=Gl(n,s,r),l=o(a);i.set(l,e[r]=Nl(l,a))}return{c(){t=D("div");for(let r=0;r<e.length;r+=1)e[r].c();w(t,"class","plugin-pano-floorplan__extra-objects svelte-1i87fz7")},m(r,a){O(r,t,a);for(let l=0;l<e.length;l+=1)e[l]&&e[l].m(t,null)},p(r,[a]){a&1&&(s=Pe(r[0]),e=Ot(e,a,o,1,r,s,i,t,Ma,Nl,null,Gl))},i:q,o:q,d(r){r&&z(t);for(let a=0;a<e.length;a+=1)e[a].d()}}}function aA(n,t,e){let{extraObjects:i=[]}=t;return n.$$set=s=>{"extraObjects"in s&&e(0,i=s.extraObjects)},[i]}class lA extends le{constructor(t){super(),ae(this,t,aA,rA,oe,{extraObjects:0},oA)}}function Hl(n){let t,e;const i=[{five:n[0],pxmm:n[1],floorIndex:n[2],floorplanData:n[4],onRoomHeightClick:n[7],highlightData:n[5],hoveredRoom:void 0}];let s={};for(let o=0;o<i.length;o+=1)s=tt(s,i[o]);return t=new Kh({props:s}),{c(){ne(t.$$.fragment)},m(o,r){te(t,o,r),e=!0},p(o,r){const a=r&183?ct(i,[{five:o[0],pxmm:o[1],floorIndex:o[2],floorplanData:o[4],onRoomHeightClick:o[7],highlightData:o[5],hoveredRoom:void 0}]):{};t.$set(a)},i(o){e||(k(t.$$.fragment,o),e=!0)},o(o){T(t.$$.fragment,o),e=!1},d(o){ie(t,o)}}}function cA(n){let t,e,i,s,o,r;const a=[{floorIndex:n[2],floorplanData:n[4]}];let l={};for(let d=0;d<a.length;d+=1)l=tt(l,a[d]);t=new Jh({props:l}),i=new lA({props:{extraObjects:n[6]}});let c=n[3]&&Hl(n);return{c(){ne(t.$$.fragment),e=$(),ne(i.$$.fragment),s=$(),c&&c.c(),o=Ee()},m(d,h){te(t,d,h),O(d,e,h),te(i,d,h),O(d,s,h),c&&c.m(d,h),O(d,o,h),r=!0},p(d,[h]){const u=h&20?ct(a,[{floorIndex:d[2],floorplanData:d[4]}]):{};t.$set(u);const m={};h&64&&(m.extraObjects=d[6]),i.$set(m),d[3]?c?(c.p(d,h),h&8&&k(c,1)):(c=Hl(d),c.c(),k(c,1),c.m(o.parentNode,o)):c&&(de(),T(c,1,1,()=>{c=null}),he())},i(d){r||(k(t.$$.fragment,d),k(i.$$.fragment,d),k(c),r=!0)},o(d){T(t.$$.fragment,d),T(i.$$.fragment,d),T(c),r=!1},d(d){d&&(z(e),z(s),z(o)),ie(t,d),ie(i,d),c&&c.d(d)}}}function dA(n,t,e){let i,{five:s}=t,{pxmm:o}=t,{floorIndex:r}=t,{hoverEnable:a}=t,{floorplanData:l}=t,{extraObjects:c=[]}=t,{highlightData:d}=t;const h=void 0;return n.$$set=u=>{"five"in u&&e(0,s=u.five),"pxmm"in u&&e(1,o=u.pxmm),"floorIndex"in u&&e(2,r=u.floorIndex),"hoverEnable"in u&&e(3,a=u.hoverEnable),"floorplanData"in u&&e(4,l=u.floorplanData),"extraObjects"in u&&e(8,c=u.extraObjects),"highlightData"in u&&e(5,d=u.highlightData)},n.$$.update=()=>{n.$$.dirty&260&&e(6,i=c==null?void 0:c.filter(u=>u.floorIndex===r))},[s,o,r,a,l,d,i,h,c]}class hA extends le{constructor(t){super(),ae(this,t,dA,cA,oe,{five:0,pxmm:1,floorIndex:2,hoverEnable:3,floorplanData:4,extraObjects:8,highlightData:5})}}function uA(n){ue(n,"svelte-1mvqyqq",".plugin-floorplan-radar.svelte-1mvqyqq{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.plugin-floorplan-radar-container.svelte-1mvqyqq{position:relative}")}function _l(n){let t,e,i,s,o=n[7]!==0&&Fl(n);return{c(){t=D("div"),o&&o.c(),w(t,"class","plugin-floorplan-radar svelte-1mvqyqq")},m(r,a){O(r,t,a),o&&o.m(t,null),e=!0,i||(s=[ei(Sn.call(null,t)),be(t,"clientWidth",n[13]),be(t,"clientHeight",n[14])],i=!0)},p(r,a){r[7]!==0?o?(o.p(r,a),a&128&&k(o,1)):(o=Fl(r),o.c(),k(o,1),o.m(t,null)):o&&(de(),T(o,1,1,()=>{o=null}),he())},i(r){e||(k(o),e=!0)},o(r){T(o),e=!1},d(r){r&&z(t),o&&o.d(),i=!1,qe(s)}}}function Fl(n){let t,e,i,s,o=`${n[9]}px`,r=`${n[12]}px`,a;const l=[{five:n[0],pxmm:n[10],floorIndex:n[11],floorplanData:n[3],hoverEnable:n[2],extraObjects:n[5],highlightData:n[6]}];let c={};for(let u=0;u<l.length;u+=1)c=tt(c,l[u]);e=new hA({props:c});const d=[{pxmm:n[10],five:n[0],floorplanData:n[3],cameraImageUrl:n[4]}];let h={};for(let u=0;u<d.length;u+=1)h=tt(h,d[u]);return s=new sA({props:h}),{c(){t=D("div"),ne(e.$$.fragment),i=$(),ne(s.$$.fragment),w(t,"class","plugin-floorplan-radar-container svelte-1mvqyqq"),j(t,"width",o),j(t,"height",r)},m(u,m){O(u,t,m),te(e,t,null),x(t,i),te(s,t,null),a=!0},p(u,m){const A=m&3181?ct(l,[{five:u[0],pxmm:u[10],floorIndex:u[11],floorplanData:u[3],hoverEnable:u[2],extraObjects:u[5],highlightData:u[6]}]):{};e.$set(A);const p=m&1049?ct(d,[{pxmm:u[10],five:u[0],floorplanData:u[3],cameraImageUrl:u[4]}]):{};s.$set(p),m&512&&o!==(o=`${u[9]}px`)&&j(t,"width",o),m&4096&&r!==(r=`${u[12]}px`)&&j(t,"height",r)},i(u){a||(k(e.$$.fragment,u),k(s.$$.fragment,u),a=!0)},o(u){T(e.$$.fragment,u),T(s.$$.fragment,u),a=!1},d(u){u&&z(t),ie(e),ie(s)}}}function fA(n){let t,e,i=n[1]&&_l(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[1]?i?(i.p(s,o),o&2&&k(i,1)):(i=_l(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function mA(n,t,e){var I,M;let{five:i}=t,{visible:s}=t,{hoverEnable:o}=t,{floorplanData:r}=t,{cameraImageUrl:a}=t,{extraObjects:l=[]}=t,{highlightData:c}=t,d=0,h=(M=(I=i.work.observers[i.getCurrentState().panoIndex])==null?void 0:I.floorIndex)!=null?M:0,u=0,m=0,A=0,p=0;function g(B){e(11,h=i.work.observers[B].floorIndex)}bt(()=>(i.on("panoArrived",g),()=>{i.off("panoArrived",g)}));const v=B=>{e(7,u=B.detail)},y=B=>{e(8,m=B.detail)};return n.$$set=B=>{"five"in B&&e(0,i=B.five),"visible"in B&&e(1,s=B.visible),"hoverEnable"in B&&e(2,o=B.hoverEnable),"floorplanData"in B&&e(3,r=B.floorplanData),"cameraImageUrl"in B&&e(4,a=B.cameraImageUrl),"extraObjects"in B&&e(5,l=B.extraObjects),"highlightData"in B&&e(6,c=B.highlightData)},n.$$.update=()=>{if(n.$$.dirty&904){const B=Math.min(u,m),{max:P,min:V}=r.bounding,L=P.x-V.x,X=P.y-V.y,Y=function(){return L>X?[B,B/L*X]:[B/X*L,B]}();e(9,A=Y[0]),e(12,p=Y[1]),e(10,d=A/L)}},[i,s,o,r,a,l,c,u,m,A,d,h,p,v,y]}class gA extends le{constructor(t){super(),ae(this,t,mA,fA,oe,{five:0,visible:1,hoverEnable:2,floorplanData:3,cameraImageUrl:4,extraObjects:5,highlightData:6},uA)}}let pA=class extends yi{constructor(e,i){super(e);f(this,"name","panoFloorplanRadarPlugin");f(this,"state");f(this,"data");f(this,"app");f(this,"wrapperSelector","");f(this,"wrapper",null);f(this,"disposed",!1);f(this,"extraObjects",[]);f(this,"highlightData",{});f(this,"dispose",()=>{var e;this.disposed=!0,(e=this.app)==null||e.$destroy(),this.wrapper=null,this.wrapperSelector="",this.hooks.emit("dispose")});f(this,"highlight",e=>{this.state.config.highlightEnable&&(this.highlightData=e,this.render())});f(this,"unhighlight",()=>{this.highlightData={},this.render()});f(this,"_disable",e=>{var s;const{userAction:i}=e;(s=this.app)==null||s.$destroy(),this.app=void 0,this.hooks.emit("disable",{userAction:i})});this.five=e;const s={hoverEnable:!0,highlightEnable:!0,cameraImageUrl:mi},o=i!=null&&i.configs?i.configs:{},r=G(G({},s),o);this.state={enabled:!0,visible:!0,config:r},i!=null&&i.wrapper&&console.warn("不推荐继续使用 params.selector 配置父容器,请使用 appendTo 方法"),typeof(i==null?void 0:i.wrapper)=="string"?this.wrapperSelector=i.wrapper:(i==null?void 0:i.wrapper)instanceof Element&&(this.wrapper=i.wrapper),e.once("dispose",this.dispose)}load(e,i,s=!0){return W(this,null,function*(){function o(c){return Object.prototype.hasOwnProperty.apply(c,["version"])}const r=JSON.parse(JSON.stringify(e)),a=o(r)?r.data:r,l=this.data;this.data=yield gi(a),this.hooks.emit("dataLoaded",this.data),this.hooks.emit("dataChange",this.data,l),i&&this.updateState(i,s),this.render()})}show(){return W(this,arguments,function*(e={}){if(this.state.visible)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!0},i),this._show({userAction:i})})}hide(){return W(this,arguments,function*(e={}){if(!this.state.visible)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({visible:!1},i),this._hide({userAction:i})})}enable(e={}){if(this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!0},e.userAction||i),this._enable({userAction:i})}disable(e={}){if(!this.state.enabled)return;const i=e.userAction!==void 0?e.userAction:!0;this.updateState({enabled:!1},e.userAction||i),this._disable({userAction:i})}setState(e,i={}){const s=this.state,o=i.userAction!==void 0?i.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled){const r={userAction:o};e.enabled?this._enable(r):this._disable(r)}if(e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o};e.visible?this._show(r):this._hide(r)}}appendTo(e){this.wrapper=e,this.render()}changeConfigs(e,i=!0){this.setState({config:e},{userAction:i}),this.render()}setExtraObjectsWith3DPositions(e){this.data&&(this.extraObjects=Gp(e,this.five,this.data),this.render())}formatData(e){return W(this,null,function*(){return yield gi(e.data)})}_enable(e){const{userAction:i}=e;this.hooks.emit("enable",{userAction:i}),this.state.visible&&this._show({userAction:i})}_show(e){if(this.disposed||!this.state.enabled)return;const{userAction:i}=e;this.hooks.emit("show",{userAction:i}),this.render()}_hide(e){if(this.disposed||!this.state.enabled)return;const{userAction:i}=e;this.hooks.emit("hide",{userAction:i}),this.render()}updateState(e,i){const s=this.state;this.state=G(G({},this.state),e),!It(this.state,s,{deep:!0})&&this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i})}render(){if(this.disposed||!this.state.enabled)return;if(!this.wrapper&&this.wrapperSelector){const i=document.querySelector(this.wrapperSelector);this.wrapper=i}if(!this.data||!this.wrapper)return;const e=ve(G({},this.state.config),{five:this.five,floorplanData:this.data,visible:this.state.visible,extraObjects:this.extraObjects,highlightData:this.highlightData});this.app?this.app.$set(e):this.app=new gA({target:this.wrapper,props:e})}};const AA=(n,t)=>new pA(n,t),vA=[{type:0,floorType:1,roomType:"100900000012",name:"其他"},{type:1,floorType:1,roomType:"100900000002",name:"客厅"},{type:2,floorType:1,roomType:"100900000002",name:"餐厅"},{type:3,floorType:0,roomType:"100900000001",name:"卧室"},{type:4,floorType:0,roomType:"100900000001",name:"书房"},{type:5,floorType:3,roomType:"100900000004",name:"卫生间"},{type:6,floorType:3,roomType:"100900000004",name:"淋浴间"},{type:7,floorType:3,roomType:"100900000004",name:"洗手间"},{type:8,floorType:3,roomType:"100900000003",name:"厨房"},{type:9,floorType:1,roomType:"100900000003",name:"开放厨房",onlySubArea:!0},{type:10,floorType:0,roomType:"100900000001",name:"多功能间"},{type:11,floorType:0,roomType:"100900000009",name:"保姆间"},{type:12,floorType:4,roomType:"100900000005",name:"阳台"},{type:13,floorType:4,roomType:"100900000006",name:"露台"},{type:14,floorType:0,roomType:"100900000008",name:"储物间"},{type:15,floorType:0,roomType:"100900000013",name:"衣帽间"},{type:16,floorType:0,roomType:"100900000011",name:"阁楼"},{type:17,floorType:2,roomType:"100900000007",name:"花园"},{type:18,floorType:5,roomType:"100900000010",name:"车库"},{type:19,floorType:1,roomType:"100900000012",name:"电梯"},{type:20,floorType:1,roomType:"100900000012",name:"地下室"},{type:21,floorType:1,roomType:"100900000012",name:"天井"},{type:22,floorType:1,roomType:"100900000012",name:"阳光房"},{type:23,floorType:1,roomType:"100900000012",name:"过道"},{type:24,floorType:1,roomType:"100900000012",name:"楼梯间"},{type:25,floorType:1,roomType:"100900000012",name:"门厅"},{type:26,floorType:2,roomType:"100900000012",name:"入户花园"},{type:27,floorType:1,roomType:"100900000012",name:"玄关"},{type:28,floorType:1,roomType:"100900000012",name:"挑空"},{type:29,floorType:4,roomType:"100900000012",name:"晾晒区"},{type:30,floorType:4,roomType:"100900000012",name:"洗衣房"},{type:31,floorType:0,roomType:"100900000012",name:"娱乐区"},{type:32,floorType:0,roomType:"100900000012",name:"健身区"},{type:33,floorType:0,roomType:"100900000012",name:"接待区"},{type:34,floorType:0,roomType:"100900000012",name:"影音区"},{type:35,floorType:1,roomType:"100900000012",name:"餐饮区"},{type:36,floorType:1,roomType:"100900000012",name:"其他",onlySubArea:!0},{type:37,floorType:1,roomType:"100900000002",name:"起居室"},{type:38,floorType:0,roomType:"100900000001",name:"主卧"},{type:39,floorType:0,roomType:"100900000001",name:"次卧"},{type:40,floorType:0,roomType:"100900000001",name:"优化间"},{type:41,floorType:0,roomType:"100900000001",name:"办公室"},{type:42,floorType:0,roomType:"100900000001",name:"会议室"},{type:43,floorType:0,roomType:"100900000001",name:"洽谈间"},{type:44,floorType:1,roomType:"100900000002",name:"共享大厅"},{type:45,floorType:1,roomType:"100900000012",name:"水吧"},{type:46,floorType:0,roomType:"100900000015",name:"出入口"},{type:47,floorType:0,roomType:"100900000015",name:"大厅"},{type:48,floorType:0,roomType:"100900000015",name:"包厢"},{type:49,floorType:0,roomType:"100900000015",name:"其他"},{type:50,floorType:0,roomType:"100900000016",name:"出入口"},{type:51,floorType:0,roomType:"100900000016",name:"办公区"},{type:52,floorType:0,roomType:"100900000016",name:"老板间"},{type:53,floorType:0,roomType:"100900000016",name:"会议室"},{type:54,floorType:0,roomType:"100900000016",name:"休息区/水吧"},{type:55,floorType:0,roomType:"100900000016",name:"其他"},{type:56,floorType:2,roomType:"100900000012",name:"空中花园"},{type:57,floorType:0,roomType:"100900000001",name:"洋室"},{type:58,floorType:0,roomType:"100900000001",name:"和室"}],bA=[{type:0,description:"木质地板"},{type:1,description:"瓷砖地面"},{type:2,description:"户外地面"},{type:3,description:"卫生间地面"},{type:4,description:"阳台地面"},{type:5,description:"车库地面"}],yA=[{roomType:"100900000001",description:"室"},{roomType:"100900000002",description:"厅"},{roomType:"100900000003",description:"厨"},{roomType:"100900000004",description:"卫"},{roomType:"100900000005",description:"阳台"},{roomType:"100900000006",description:"露台"},{roomType:"100900000007",description:"花园"},{roomType:"100900000008",description:"储"},{roomType:"100900000009",description:"保姆间"},{roomType:"100900000010",description:"车库"},{roomType:"100900000011",description:"阁楼"},{roomType:"100900000012",description:"其他"},{roomType:"100900000013",description:"衣"},{roomType:"100900000015",description:"商铺"},{roomType:"100900000016",description:"写字楼"}],Mr=(n,t,e)=>{const i=new E.Matrix4,s=new E.Euler(n,t,e,"YXZ");return i.makeRotationFromEuler(s),i},wA=(n,{scale:t,rotation:e,position:i})=>{if(t&&n.scale.set(t,t,t),e){const[s,o,r]=e;s&&n.applyMatrix4(Mr(s,0,0)),o&&n.applyMatrix4(Mr(0,o,0)),r&&n.applyMatrix4(Mr(0,0,r))}return i&&n.position.set(i.x,i.y,i.z),n};function tu(n,t){n.traverse(e=>{var i;if(e.type==="Mesh"){const s=e,o=G({map:s.material.map||{}},t);s.material=new R.MeshBasicMaterial(o),s.renderOrder=1,((i=e.parent)==null?void 0:i.type)==="Mesh"&&(e.renderOrder=e.parent.renderOrder+1)}})}const CA=(n,t)=>{var p;const e=t.fbx_url||"//vrlab-image4.ljcdn.com/release/web/dipan2.f38a21cc.FBX",i=(p=t.north_rad)!=null?p:void 0,s={};let o={x:0,y:0,z:0},r=[0,0,0],a=1,l=i;n.on("modelLoaded",A);const c=g=>W(exports,null,function*(){var M;const v=(g==null?void 0:g.fbx_url)||e;if(l=(M=g==null?void 0:g.north_rad)!=null?M:i,typeof l!="number")throw new Error('"northRad"配置参数缺失:未配置指南针指向!');const I=yield new uh.FBXLoader().loadAsync(v);return tu(I,{transparent:!0,side:E.DoubleSide,blending:E.AdditiveBlending}),s.object=I,A(),!0}),d=({latitude:g})=>{if(!s.object)return;const v=h(g);v&&(s.object.position.y=v)},h=g=>{if(s.yBase===void 0)return;const v=.6;if(g>=Math.PI/4)return s.yBase-(v+1.6);const y=g*(4/Math.PI);return s.yBase-(v*y+1.6)},u=()=>{if(!s.object)return;const g=h(n.getPose().latitude);g&&(s.object.position.y=g),n.scene.add(s.object),n.needsRender=!0,n.on("cameraDirectionUpdate",d)},m=()=>{s.object&&(n.scene.remove(s.object),n.needsRender=!0,n.off("cameraDirectionUpdate",d))};function A(){const g=s.object;if(!g)return;const v=n.model.bounding,y=v.max.x-v.min.x,I=v.max.z-v.min.z,M=Math.max(y,I),{max:{x:B,z:P},min:{x:V,y:L,z:X}}=v;s.yBase=L,o={x:(B+V)/2,y:L-1.6,z:(P+X)/2},r=[0,l-Math.PI/2,0],a=.0045*M,wA(g,{position:o,rotation:r,scale:a})}return{load:c,disable:m,enable:u}};function IA(n,t){var c,d,h,u,m;const e=(c=t==null?void 0:t.size)!=null?c:512,i=(d=t==null?void 0:t.fontSize)!=null?d:e*(35/256)*1.2,s=(h=t==null?void 0:t.backgroundColor)!=null?h:"rgba(0,0,0,0)",o=(u=t==null?void 0:t.fontColor)!=null?u:"#fff",r=(m=t==null?void 0:t.textAlign)!=null?m:"center",a=document.createElement("canvas");a.setAttribute("width",e+""),a.setAttribute("height",e+"");const l=a.getContext("2d");return l.fillStyle=s,l.fillRect(0,0,e,e),l.font=`${i}px "微软雅黑"`,l.textAlign=r,l.fillStyle=o,l.fillText(n,e/2,e*.7),new R.CanvasTexture(a)}const PA=({x:n,y:t,z:e})=>new R.Vector3(n,t,e),EA=(n,t)=>{var p,g,v;const e={},i=(p=t.animationEnabled)!=null?p:!0,s=(g=t.position)!=null?g:void 0,o=(v=t.rad)!=null?v:void 0,r=t.fbx_url||"//vrlab-image4.ljcdn.com/release/web/entryDoorMini/Anim_Door1.fbx",a=[],l=y=>W(exports,null,function*(){var Y,N,H,_,Q,F,J,Z;const I=(Y=y==null?void 0:y.position)!=null?Y:s;if(!I)return Promise.reject(new Error("ModelEntryDoorGuidePlugin.load(): position is undefined"));const M=PA(I),B=(N=y==null?void 0:y.rad)!=null?N:o,P=(H=y==null?void 0:y.fbx_url)!=null?H:r;if(e.rad=B,B===void 0)return Promise.reject(new Error(`ModelEntryDoorGuidePlugin.load(): rad is ${B}`));const V=yield new uh.FBXLoader().loadAsync(P);V.position.copy(M),V.rotation.z=B,V.scale.set(.8,.8,.8),tu(V,{transparent:!0,side:E.DoubleSide});const L=(J=(F=(Q=(_=V.children)==null?void 0:_[0])==null?void 0:Q.children)==null?void 0:F[3])==null?void 0:J.clone();if(!L)return Promise.reject(new Error(`ModelEntryDoorGuidePlugin.load(): textMesh is ${L}`));const X=(Z=t.name)!=null?Z:"入户门";return L.material=new R.MeshBasicMaterial({transparent:!0,map:IA(X)}),L.renderOrder=3,V.children[0].add(L),e.object=V,!0}),c=()=>{if(e.animation)return;if(!e.object)return console.error("ModelEntryDoorGuidePlugin.initAnimation(): state.object is ",e.object);const y=1,I=new R.AnimationMixer(e.object);a.push(I);const M=I.clipAction(e.object.animations[0]);M.timeScale=y;let B;const P=()=>{let Y=0,N=0;const H=1e3/30,_=Q=>{Y=requestAnimationFrame(_);const F=Q-N;F<H||(N=Q,a.forEach(J=>J.update(F/1e3)),n.needsRender=!0)};return Y=requestAnimationFrame(_),()=>{cancelAnimationFrame(Y)}},X={play:()=>{B||(M.play(),B=P(),requestAnimationFrame(()=>{e.object&&e.object.rotation.z!==e.rad&&(e.object.rotation.z=e.rad)}))},stop:()=>{M.stop(),B==null||B(),B=void 0}};e.animation=X},d=y=>{var M;if(!e.object)return console.error("ModelEntryDoorGuidePlugin.enable(): object is ",e.object);((M=y==null?void 0:y.animationEnable)!=null?M:i)&&(e.animation||c(),e.animation.play()),n.scene.add(e.object),n.needsRender=!0},h=()=>{e.object&&(e.animation&&e.animation.stop(),n.scene.remove(e.object),n.needsRender=!0)},u=y=>y==="Floorplan"?d():h();return{load:l,enable:y=>(e.enabled||(e.enabled=!0,u(n.currentMode),n.on("modeChange",u),d(y)),!0),disable:()=>(e.enabled&&(e.enabled=!1,h(),n.off("modeChange",u)),!0)}},MA=Lt;function kA(n,t,e,i=MA.Linear.None){const s=new Ao(n).to(t,e).easing(i);bo(()=>s.start(0));const o=In(a=>{s.update(a)===!1&&o()}),r=[];return s.onDestroy=a=>(r.push(a),s),s.destroy=function(){this.stop(),Object.assign(s,{_onStartCallback:null,_onUpdateCallback:null,_onCompleteCallback:null,_onStopCallbackL:null});let a;for(;a=r.shift();)a();o()},s}function xA(n,t){return kA({progress:0},{progress:1},n,t)}var iu=(n=>(n.Move="Move",n.Rotate="Rotate",n))(iu||{}),Gt=(n=>(n.Clockwise="Clockwise",n.Anticlockwise="Anticlockwise",n.Loop="Loop",n))(Gt||{});const Xs=Math.PI*2;function Wl(n){return(n%Xs+Xs)%Xs}function Yl(n){return n%Xs}function kr(n,t,e){return n+(t-n)*e}const $r=(n,t,e)=>{const i=Math.PI,s=i*2;let o=Wl(n),r=Wl(t);return e===Gt.Anticlockwise&&o<r&&(o+=s),e===Gt.Clockwise&&r<o&&(r+=s),e===Gt.Loop&&r-o>i?$r(o,r,Gt.Anticlockwise):e===Gt.Loop&&o-r>i?$r(o,r,Gt.Clockwise):{from:o,to:r}},DA=n=>{const t={},e=(l,c,...d)=>W(exports,[l,c,...d],function*(o,r,a={preload:!0}){return t.interruptCallback&&t.interruptCallback(!1),a.asyncStartCallback&&(yield a.asyncStartCallback()),o.mode&&o.mode!==n.currentMode&&(yield n.changeMode(o.mode)),a.preload&&o.panoIndex!==void 0&&o.panoIndex!==n.panoIndex&&(yield n.preloadPano(o.panoIndex)),a.asyncEndCallback&&(yield a.asyncEndCallback()),o.panoIndex===void 0&&o.fov===void 0&&o.latitude===void 0&&o.longitude===void 0?!0:yield new Promise((h,u)=>{const m=o.panoIndex!==void 0?o.panoIndex:n.panoIndex;m!==void 0?n.moveToPano(m,G({duration:r,moveEndCallback:()=>h(!0),moveCancelCallback:()=>u(new Error("move canceled"))},o)):u(new Error("unexpected error"))})}),i=o=>{const r=n.state,a=Yl(r.latitude),l=Yl(o.latitude),{from:c,to:d}=$r(r.longitude,o.longitude,o.rotation||Gt.Loop),h=r.fov,u=o.fov;return{from:{latitude:a,longitude:c,fov:h},to:{latitude:l,longitude:d,fov:u}}};return{move:e,rotate:(l,c,...d)=>W(exports,[l,c,...d],function*(o,r,a={}){t.interruptCallback&&t.interruptCallback(!1),a.asyncStartCallback&&(yield a.asyncStartCallback()),n.currentMode!==je.Five.Mode.Panorama&&(yield n.changeMode(je.Five.Mode.Panorama)),o.panoIndex!==void 0&&o.panoIndex!==n.panoIndex&&(a.preload&&(yield n.preloadPano(o.panoIndex)),yield new Promise((m,A)=>{if(!o.panoIndex){m(!0);return}n.moveToPano(o.panoIndex,{moveEndCallback:()=>m(!0),moveCancelCallback:()=>A(new Error("move canceled"))})})),a.asyncEndCallback&&(yield a.asyncEndCallback());const{from:h,to:u}=i(o);return yield new Promise(m=>{const A=({progress:I})=>{const M={};M.longitude=kr(h.longitude,u.longitude,I),M.latitude=kr(h.latitude,u.latitude,I),M.fov=kr(h.fov,u.fov,I),n.setState(M,!0)},p=()=>{m(!0)},g=()=>{m(!1)},v=o.rotateSpeed?Math.ceil(Math.abs(u.longitude-h.longitude)/o.rotateSpeed*1e3):r,y=xA(v,Lt.Linear.None).onUpdate(A).onComplete(p).onDestroy(g);o.rotation===Gt.Loop&&y.repeat(1/0).yoyo(!0),t.interruptCallback=(I=!0)=>{y.destroy(),t.interruptCallback=void 0,t.timeoutId&&(clearTimeout(t.timeoutId),t.timeoutId=void 0),m(I)},t.timeoutId=setTimeout(()=>{t.interruptCallback&&t.interruptCallback(!0)},r)})})}};function Ul(n,t){return n.x===t.x&&n.y===t.y}function nu(n,t){return Math.abs(n)===1/0&&Math.abs(t)===1/0?!0:Math.abs(n-t)<.001}function co(n,t){return(t.y-n.y)/(t.x-n.x)}function su(n,t,e){const i=co(n[1],n[0]),s=co(t[1],t[0]);if(isNaN(i)||isNaN(s)||nu(i,s))return!1;if(js(n[0],t))return n[0];if(js(n[1],t))return n[1];if(js(t[0],n))return t[0];if(js(t[1],n))return t[1];if(e&&!SA(n,t))return!1;const o=n[0],r=t[0];if(Math.abs(i)===1/0)return{x:o.x,y:t[1].y-(t[1].x-o.x)*s};if(Math.abs(s)===1/0)return{x:r.x,y:n[1].y-(n[1].x-r.x)*i};const a=(r.y-o.y+i*o.x-s*r.x)/(i-s),l=i*a-i*o.x+o.y;return{x:a,y:l}}function js(n,t){return Ul(n,t[0])||Ul(n,t[1])?!0:(t[0].x-n.x)*(n.x-t[1].x)>=0&&(t[0].y-n.y)*(n.y-t[1].y)>=0&&nu(co(t[0],n),co(n,t[1]))}function zs(n,t,e){return(n.x-e.x)*(t.y-e.y)-(t.x-e.x)*(n.y-e.y)}function SA(n,t){return Math.max(n[0].x,n[1].x)>=Math.min(t[0].x,t[1].x)&&Math.max(t[0].x,t[1].x)>=Math.min(n[0].x,n[1].x)&&Math.max(n[0].y,n[1].y)>=Math.min(t[0].y,t[1].y)&&zs(t[0],n[1],n[0])*zs(n[1],t[1],n[0])>0&&zs(n[0],t[1],t[0])*zs(t[1],n[1],t[0])>0?1:0}function ou(n,t=0){t<=0?requestAnimationFrame(n):requestAnimationFrame(()=>ou(n,t-1))}const TA=`<style type="text/css">
195
195
  .PanoRulerPlugin-rule-line {
196
196
  position: absolute;
197
197
  transform-origin: left center;
@@ -284,7 +284,7 @@ void main() {
284
284
  <div class="PanoRulerPlugin-rule-label-name">${e.options.distanceText(g)}</div>
285
285
  </div>
286
286
  </div>
287
- `,y=document.createElement("div");return y.setAttribute("class","PanoRulerPlugin-rule"),y.setAttribute("data-name",p),y.setAttribute("style","display: none"),y.innerHTML=v,y},s=document.createElement("div");s.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;");const o=document.createElement("div");o.innerHTML=TA,s.appendChild(o);const r={},a=(p,g)=>{if(e.loaded)throw new Error("标尺被重复初始化!");const v=jA(p,n),y=n.work;if(!y)return!1;for(const I in g){const M=g[I],{standingPosition:D}=y.observers[0],P=M.map(({x:V,z:L,observers:X})=>{const U=X.length>0?p.rooms[p.observers[X[0]]].name:"",N=v[U]?v[U].floor:null;let H=1/0,_={index:0,x:D.x,y:D.y,z:D.z};X.forEach(ce=>{if(!y.observers[ce])return;const{standingPosition:se}=y.observers[ce],we={index:ce,x:se.x,y:se.y,z:se.z},Ce=LA({x:V,z:L},we);N?Ce<H&&Math.abs(we.y-N)<.3&&(H=Ce,_=we):Ce<H&&(H=Ce,_=we)});const Q=new R.Vector3(V,_.y,L);Object.assign(Q,{observers:X});const F=v[U]?v[U].roof:null,J=F?new R.Vector3(V,F,L):null;return J&&Object.assign(J,{observers:X}),{origin:Q,vertical:J}});r[I]={origins:P.map(V=>V.origin),rules:[]};for(const{origin:V,vertical:L}of P){if(!L)continue;const X=i(I,V.distanceTo(L));s.append(X),r[I].rules.push({vertical:!0,rule:[V,L],$element:X})}for(let V=0;V<P.length;V++){let L=V+1;L>=P.length&&(L=0);const{origin:X}=P[V],{origin:U}=P[L],N=i(I,X.distanceTo(U));s.append(N),r[I].rules.push({vertical:!1,rule:[X,U],$element:N})}}return e.loaded=!0,!0},l=(p,g,v)=>W(exports,null,function*(){const y=p||t.roomInfo,I=g||t.roomRules;if(!y||!I)throw new Error("标尺数据依赖不齐全!");return e.loaded=!1,e.options=G(G({},e.options),v||{}),n.model.loaded?a(y,I):yield new Promise(M=>n.once("modelLoaded",()=>M(a(y,I))))});t.roomInfo&&t.roomRules&&l(t.roomInfo,t.roomRules);const c=(p,g,v,y)=>{const I=[[{x:0,y:0},{x:v,y:0}],[{x:0,y:0},{x:0,y}],[{x:v,y:0},{x:v,y}],[{x:0,y},{x:v,y}]],M=[];for(let D=0;D<I.length;D++){const P=su([p,g],[I[D][0],I[D][1]],!0);P&&M.push(P)}return M.length===0?!1:M},d=()=>{var X;const p=(X=n.getElement())==null?void 0:X.parentElement;if(!p||!e.loaded||Object.keys(r).length<=0)return;const{panoIndex:g,camera:v,currentMode:y}=n;if(g===void 0)return;let I;for(const U in r)U.split(",").indexOf(g.toString())>=0&&(I=U);if(!I){for(const U in r)for(const{$element:N}of r[U].rules)N.style.display="none";return}const M=v.position,D=v.getWorldDirection(new R.Vector3),P=p.clientWidth,V=p.clientHeight;if(y!==je.Five.Mode.Panorama){for(const U in r)for(const{$element:N}of r[U].rules)N.style.display="none";return}for(const U in r)for(const{$element:N}of r[U].rules)N.style.display=U===I?"block":"none";const[L]=r[I].origins.slice().filter(U=>U.observers.indexOf(g)>=0).sort((U,N)=>{const H=U.clone().setY(0).sub(M).normalize().angleTo(D.clone().setY(0)),_=N.clone().setY(0).sub(M).normalize().angleTo(D.clone().setY(0));return H-_});for(const{rule:U,vertical:N,$element:H}of r[I].rules){const[_,Q]=U,F=H.querySelector(".PanoRulerPlugin-rule-line");if(!F)return;if(!L){H.style.display="none";continue}if(_!==L&&Q!==L){H.style.display="none";continue}if(_.distanceTo(Q)<.3){H.style.display="none";continue}if(_.observers.indexOf(g)===-1||Q.observers.indexOf(g)===-1){H.style.display="none";continue}if(_.clone().sub(M).normalize().angleTo(D)>Math.PI/2){H.style.display="none";continue}if(Q.clone().sub(M).normalize().angleTo(D)>Math.PI/2){H.style.display="none";continue}const ee=_.distanceTo(Q);if(Q.clone().sub(Q.clone().sub(_).divide(new R.Vector3(2,2,2))).distanceTo(M)/ee>8){H.style.display="none";continue}const we=_.clone().project(v),Ce=(we.x+1)/2*P,pe=(-we.y+1)/2*V,Ve=Q.clone().project(v),Ae=(Ve.x+1)/2*P,Ye=(-Ve.y+1)/2*V,fe=Math.sqrt(Math.pow(Ae-Ce,2)+Math.pow(Ye-pe,2));let ye=fe,ze=50;const me=c({x:~~Ce,y:~~pe},{x:~~Ae,y:~~Ye},P,V);if(me&&me.length===1&&(L===_?(ye=Math.sqrt(Math.pow(me[0].x-Ce,2)+Math.pow(me[0].y-pe,2)),ze=ye/fe*50):L===Q&&(ye=Math.sqrt(Math.pow(me[0].x-Ae,2)+Math.pow(me[0].y-Ye,2)),ze=100-ye/fe*50)),me&&me.length===2){const re={x:(me[0].x+me[1].x)/2,y:(me[0].y+me[1].y)/2};ze=Math.sqrt(Math.pow(re.x-Ce,2)+Math.pow(re.y-pe,2))/fe*100}const dt=(Math.PI/2-Math.atan2(Ae-Ce,pe-Ye))/Math.PI*180,ke=F.querySelector(".PanoRulerPlugin-rule-label"),nt=ke.children[0].clientWidth;nt>=fe||nt/2>=ze/100*fe||nt/2>=(1-ze/100)*fe?F.style.display="none":(F.style.display="block",F.style.width=fe+"px",F.style.left=Ce+"px",F.style.top=pe+"px",F.style.transform=`rotate(${-dt}deg)`,ke.style.left=`${ze}%`)}},h=()=>ou(d),u=()=>{var p,g;return e.loaded?(e.enable||(s.setAttribute("class","PanoRulerPlugin"+(e.options.className?" "+e.options.className:"")),(g=(p=n.getElement())==null?void 0:p.parentElement)==null||g.append(s),d(),n.on("modeChange",d),n.on("cameraUpdate",h),e.enable=!0),!0):!1},m=()=>(e.enable&&(n.off("modeChange",d),n.off("cameraUpdate",h),s&&s.remove(),e.enable=!1),!0);function A(p){if(p.distanceText&&p.distanceText!==e.options.distanceText){const g=p.distanceText;e.options.distanceText=g,Object.values(r).forEach(v=>{v.rules.forEach(y=>{const[I,M]=y.rule,D=I.distanceTo(M),P=y.$element.querySelector(".PanoRulerPlugin-rule-label-name");P&&(P.innerText=g(D))})})}}return{enable:u,disable:m,load:l,state:e,changeConfigs:A}};function OA(n){ue(n,"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 Xl(n,t,e){const i=n.slice();return i[6]=t[e],i}function BA(n){let t,e=Pe(n[0].children),i=[];for(let s=0;s<e.length;s+=1)i[s]=Zl(Xl(n,e,s));return{c(){t=S("div");for(let s=0;s<i.length;s+=1)i[s].c();w(t,"class","rule-mixed-line svelte-1h27ktp")},m(s,o){B(s,t,o);for(let r=0;r<i.length;r+=1)i[r]&&i[r].m(t,null)},p(s,o){if(o&9){e=Pe(s[0].children);let r;for(r=0;r<e.length;r+=1){const a=Xl(s,e,r);i[r]?i[r].p(a,o):(i[r]=Zl(a),i[r].c(),i[r].m(t,null))}for(;r<i.length;r+=1)i[r].d(1);i.length=e.length}},d(s){s&&O(t),jt(i,s)}}}function VA(n){let t,e;return{c(){t=S("em"),w(t,"class",e=Qe(n[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),w(t,"style",n[3])},m(i,s){B(i,t,s)},p(i,s){s&1&&e!==(e=Qe(i[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&w(t,"class",e),s&8&&w(t,"style",i[3])},d(i){i&&O(t)}}}function Zl(n){let t,e,i=`${n[6].width}px`;return{c(){t=S("div"),w(t,"class",e=Qe(n[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),w(t,"style",n[3]),z(t,"width",i)},m(s,o){B(s,t,o)},p(s,o){o&1&&e!==(e=Qe(s[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&w(t,"class",e),o&8&&w(t,"style",s[3]),(o&8||o&9&&i!==(i=`${s[6].width}px`))&&z(t,"width",i)},d(s){s&&O(t)}}}function RA(n){let t,e,i,s,o=n[0].labelElement+"",r,a,l=`${n[0].labelOffset}%`,c=`${n[0].width}px`,d=`${n[0].left}px`,h=`${n[0].top}px`,u=`rotate(${n[0].rotateDeg}deg)`;function m(g,v){return g[0].children.length===0?VA:BA}let A=m(n),p=A(n);return{c(){t=S("div"),p.c(),e=$(),i=S("div"),s=S("div"),r=xe(o),w(s,"class","PanoRulerPlugin-rule-label-name svelte-1h27ktp"),He(()=>n[4].call(s)),w(i,"class","PanoRulerPlugin-rule-label svelte-1h27ktp"),z(i,"left",l),w(t,"class","PanoRulerPlugin-rule-line svelte-1h27ktp"),z(t,"width",c),z(t,"left",d),z(t,"top",h),z(t,"transform",u),z(t,"display",n[0].visible&&n[2]?"block":"none")},m(g,v){B(g,t,v),p.m(t,null),x(t,e),x(t,i),x(i,s),x(s,r),a=yo(s,n[4].bind(s))},p(g,[v]){A===(A=m(g))&&p?p.p(g,v):(p.d(1),p=A(g),p&&(p.c(),p.m(t,e))),v&1&&o!==(o=g[0].labelElement+"")&&Se(r,o),v&1&&l!==(l=`${g[0].labelOffset}%`)&&z(i,"left",l),v&1&&c!==(c=`${g[0].width}px`)&&z(t,"width",c),v&1&&d!==(d=`${g[0].left}px`)&&z(t,"left",d),v&1&&h!==(h=`${g[0].top}px`)&&z(t,"top",h),v&1&&u!==(u=`rotate(${g[0].rotateDeg}deg)`)&&z(t,"transform",u),v&5&&z(t,"display",g[0].visible&&g[2]?"block":"none")},i:q,o:q,d(g){g&&O(t),p.d(),a()}}}function QA(n,t,e){let i,{rulerItemProp:s}=t,o=!0,r,a="data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjQiIHdpZHRoPSIxMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGZpbHRlciBpZD0icHJlZml4X19hIiBoZWlnaHQ9IjQwMCUiIHdpZHRoPSIxMzcuNCUiIHg9Ii0xOC43JSIgeT0iLTE1MCUiPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iZGlsYXRlIiByYWRpdXM9Ii41IiByZXN1bHQ9InNoYWRvd1NwcmVhZE91dGVyMSIvPjxmZU9mZnNldCBpbj0ic2hhZG93U3ByZWFkT3V0ZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiByYWRpdXM9IjEiIHJlc3VsdD0ic2hhZG93SW5uZXIiLz48ZmVPZmZzZXQgaW49InNoYWRvd0lubmVyIiByZXN1bHQ9InNoYWRvd0lubmVyIi8+PGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIGluMj0ic2hhZG93SW5uZXIiIG9wZXJhdG9yPSJvdXQiIHJlc3VsdD0ic2hhZG93T2Zmc2V0T3V0ZXIxIi8+PGZlR2F1c3NpYW5CbHVyIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIgc3RkRGV2aWF0aW9uPSIuNSIvPjxmZUNvbG9yTWF0cml4IGluPSJzaGFkb3dCbHVyT3V0ZXIxIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuMiAwIi8+PC9maWx0ZXI+PHBhdGggaWQ9InByZWZpeF9fYiIgZD0iTS44ODkgMkgxMS41OCIvPjwvZGVmcz48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS1kYXNoYXJyYXk9IjUgNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuNCIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjwvZz48L3N2Zz4=";function l(){r=this.offsetWidth,e(1,r)}return n.$$set=c=>{"rulerItemProp"in c&&e(0,s=c.rulerItemProp)},n.$$.update=()=>{n.$$.dirty&3&&(r>=s.width||r/2>=s.labelOffset/100*s.width||r/2>=(1-s.labelOffset/100)*s.width?e(2,o=!1):e(2,o=!0))},e(3,i=`--background-image: url(${a})`),[s,r,o,i,l]}class GA extends le{constructor(t){super(),ae(this,t,QA,RA,oe,{rulerItemProp:0},OA)}}function Jl(n,t,e){const i=n.slice();return i[12]=t[e],i}function ql(n){let t,e;return t=new GA({props:{rulerItemProp:n[12]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.rulerItemProp=i[12]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function NA(n){let t,e,i=Pe(n[0]),s=[];for(let r=0;r<i.length;r+=1)s[r]=ql(Jl(n,i,r));const o=r=>j(s[r],1,1,()=>{s[r]=null});return{c(){t=S("div");for(let r=0;r<s.length;r+=1)s[r].c()},m(r,a){B(r,t,a);for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(t,null);e=!0},p(r,[a]){if(a&1){i=Pe(r[0]);let l;for(l=0;l<i.length;l+=1){const c=Jl(r,i,l);s[l]?(s[l].p(c,a),k(s[l],1)):(s[l]=ql(c),s[l].c(),k(s[l],1),s[l].m(t,null))}for(de(),l=i.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<i.length;a+=1)k(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)j(s[a]);e=!1},d(r){r&&O(t),jt(s,r)}}}function HA(n,t,e){var p,g,v,y;let{five:i}=t,{rulerDatas:s}=t,{options:o}=t,r=[];const a=((g=(p=i.getElement())==null?void 0:p.parentElement)==null?void 0:g.clientWidth)||0,l=((y=(v=i.getElement())==null?void 0:v.parentElement)==null?void 0:y.clientHeight)||0,c=(I,M)=>{const D=[[{x:0,y:0},{x:a,y:0}],[{x:0,y:0},{x:0,y:l}],[{x:a,y:0},{x:a,y:l}],[{x:0,y:l},{x:a,y:l}]],P=[];for(let V=0;V<D.length;V++){const L=su([I,M],[D[V][0],D[V][1]],!0);L&&P.push(L)}return P.length===0?!1:P},d=(I,M)=>{const D=I.clone().project(i.camera),P=(D.x+1)/2*a,V=(-D.y+1)/2*l,L=M.clone().project(i.camera),X=(L.x+1)/2*a,U=(-L.y+1)/2*l,N=Math.sqrt(Math.pow(X-P,2)+Math.pow(U-V,2));return{startLeft:P,startTop:V,endLeft:X,endTop:U,distance:N}},h=(I,M,D)=>{const P=i.camera.position,V=i.camera.getWorldDirection(new R.Vector3),L=I.clone().sub(P).normalize().angleTo(V),X=M.clone().sub(P).normalize().angleTo(V),U=I.distanceTo(M),H=M.clone().sub(M.clone().sub(I).divide(new R.Vector3(2,2,2))).distanceTo(P),{startLeft:_,startTop:Q,endLeft:F,endTop:J,distance:Z}=d(I,M),ce=-((Math.PI/2-Math.atan2(F-_,Q-J))/Math.PI)*180;let se=!0;D||(se=!1),!It(I,D)&&!It(M,D)&&(se=!1),U<.3&&(se=!1),L>Math.PI/2&&(se=!1),X>Math.PI/2&&(se=!1),H/U>8&&(se=!1);let we=50,Ce=Z;const pe=c({x:~~_,y:~~Q},{x:~~F,y:~~J});if(pe&&pe.length===1&&(It(I,D)?(Ce=Math.sqrt(Math.pow(pe[0].x-_,2)+Math.pow(pe[0].y-Q,2)),we=Ce/Z*50):It(M,D)&&(Ce=Math.sqrt(Math.pow(pe[0].x-F,2)+Math.pow(pe[0].y-J,2)),we=100-Ce/Z*50)),pe&&pe.length===2){const Ve={x:(pe[0].x+pe[1].x)/2,y:(pe[0].y+pe[1].y)/2};we=Math.sqrt(Math.pow(Ve.x-_,2)+Math.pow(Ve.y-Q,2))/Z*100}return{startLeft:_,startTop:Q,distance:Z,deg:ce,visible:se,labelOffset:we,ruleLength:U}},u=()=>{const I=i.panoIndex,M=s.find(N=>N.panoIndex===I);if(!M)return e(0,r=[]);if(i.currentMode!==je.Five.Mode.Panorama)return e(0,r=[]);const D=i.camera.position,P=i.camera.getWorldDirection(new R.Vector3),V=M.lines.map(N=>new R.Vector3(N.start[0],-N.start[1],-N.start[2])),L=M.lines.map(N=>new R.Vector3(N.end[0],-N.end[1],-N.end[2])),[X]=V.concat(L).sort((N,H)=>{const _=N.clone().setY(0).sub(D).normalize().angleTo(P.clone().setY(0)),Q=H.clone().setY(0).sub(D).normalize().angleTo(P.clone().setY(0));return _-Q}),U=M.lines.map(N=>{var Ce,pe;const H=N.start,_=N.end,{startLeft:Q,startTop:F,distance:J,deg:Z,visible:ee,labelOffset:ce,ruleLength:se}=h(new R.Vector3(H[0],-H[1],-H[2]),new R.Vector3(_[0],-_[1],-_[2]),X),we=[];return N.children&&((Ce=N.children)==null?void 0:Ce.length)>0&&((pe=N.children)==null||pe.forEach(Ve=>{const Ae=Ve.start,Ye=Ve.end,{distance:fe}=d(new R.Vector3(Ae[0],-Ae[1],-Ae[2]),new R.Vector3(Ye[0],-Ye[1],-Ye[2]));we.push({width:fe,state:Ve.state})})),{width:J,left:Q,top:F,rotateDeg:Z,state:N.state,children:we,labelOffset:ce,visible:ee,labelElement:o.distanceText(se)}});e(0,r=U)},m=()=>vo(u),A=Oa(u,80);return bt(()=>{u(),i.on("panoArrived",u),i.on("modeChange",u),i.on("cameraDirectionUpdate",m),i.on("movingToPano",m),i.on("mouseWheel",()=>A()),i.on("pinchGesture",()=>A())}),zt(()=>{i.off("panoArrived",u),i.off("modeChange",u),i.off("cameraDirectionUpdate",m),i.off("movingToPano",m),i.off("mouseWheel",()=>A()),i.off("pinchGesture",()=>A())}),n.$$set=I=>{"five"in I&&e(1,i=I.five),"rulerDatas"in I&&e(2,s=I.rulerDatas),"options"in I&&e(3,o=I.options)},[r,i,s,o]}class _A extends le{constructor(t){super(),ae(this,t,HA,NA,oe,{five:1,rulerDatas:2,options:3})}}let FA=class{constructor(t,e){f(this,"five");f(this,"container",document.createElement("div"));f(this,"panoRulerProData");f(this,"rulerItems");f(this,"state",{enabled:!1,loaded:!1,options:{className:"",distanceText:t=>`${t.toFixed(1)}m`}});var i,s;this.five=t,this.container.classList.add("panoRulerProPlugin-container"),this.container.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;"),e&&(e.data&&this.load(e.data),this.state.options=G(G({},this.state.options),e.options||{}),(i=e.options)!=null&&i.className&&this.container.classList.add((s=e.options)==null?void 0:s.className)),this.five.once("modelLoaded",()=>W(this,null,function*(){var o,r;(r=(o=this.five.getElement())==null?void 0:o.parentNode)==null||r.append(this.container)})),this.five.once("dispose",()=>this.dispose())}load(t){return W(this,null,function*(){if(!this.five.work)return;const e=t.data;if(!e)throw new Error("标尺数据依赖不齐全!");this.panoRulerProData=e,this.state.loaded=!0})}enable(){return this.state.loaded?(this.state.enabled||(this.state.enabled=!0,this.render()),!0):!1}disable(){return this.state.enabled&&(this.state.enabled=!1,this.render()),!0}render(){return W(this,null,function*(){var t;if(this.state.enabled){if(!this.panoRulerProData||!this.container)return;this.rulerItems=new _A({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 WA=(n,t)=>new FA(n,t),YA="data:image/png;base64,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";function UA(){const n=document.createElement("div"),t=document.createElement("i"),e=document.createElement("span");return n.appendChild(t),n.appendChild(e),n.style.position="relative",n.style.width="100%",n.style.display="flex",n.style.flexDirection="column",n.style.alignItems="center",n.style.marginTop=`${150/16}rem`,n.style.opacity="0",n.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(${YA})`,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(i){i.appendChild(n)},dispose(){n.remove()},setRoom(i){e.innerHTML=i.name+" "+Math.floor(i.size/1e6)+"㎡"},show(){n.style.opacity="1"},hide(){n.style.opacity="0"}}}const XA=new E.TextureLoader;function vn(n){return W(this,null,function*(){return new Promise((t,e)=>{XA.load(n,t,void 0,e)}).then(t=>(t.encoding=E.sRGBEncoding,t))})}const Os={userAction:!0};class ZA extends yi{constructor(e,i){super(e,i);f(this,"state",{visible:!0,enabled:!0,config:{compassImageUrl:this.absoluteUrl("/release/web/v3/north-point-circle.96498e69.png"),entryDoorImageUrl:this.absoluteUrl("/release/web/enterDoor.831b8208.png")}});f(this,"data");f(this,"group",new E.Group);f(this,"roomInfoInstance");f(this,"roomInfoWrapperInstance");f(this,"compassMeshTween");f(this,"compassMesh");f(this,"entryDoorMesh");f(this,"dispose",()=>{var e,i,s,o;this.five.scene.remove(this.group),this.group.remove(...this.group.children),(i=(e=this.compassMesh)==null?void 0:e.material.map)==null||i.dispose(),(o=(s=this.entryDoorMesh)==null?void 0:s.material.map)==null||o.dispose(),this.five.off("dispose",this.dispose),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_addEventListener",()=>{this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive),this.five.on("modeChange",this.onFiveModeChange),this.five.on("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_removeEventListener",()=>{this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("modeChange",this.onFiveModeChange),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_enable",()=>{this.five.scene.add(this.group),this.init(),this.onFivePanoArrived(this.five.panoIndex||0),this._addEventListener()});f(this,"_disable",()=>{this._clearCompassIfNeed(),this._clearEntryDoorIfNeed(),this.five.scene.remove(this.group),this._removeEventListener()});f(this,"_toggleVisible",()=>{this.group.visible=this.state.visible,this.five.needsRender=!0});f(this,"_clearCompassIfNeed",()=>{var e;this.compassMesh&&(this.group.remove(this.compassMesh),(e=this.compassMesh.material.map)==null||e.dispose(),this.compassMesh=null)});f(this,"_clearEntryDoorIfNeed",()=>{var e;this.entryDoorMesh&&(this.group.remove(this.entryDoorMesh),(e=this.entryDoorMesh.material.map)==null||e.dispose(),this.entryDoorMesh=null),this.roomInfoInstance&&(this.roomInfoInstance.dispose(),this.roomInfoInstance=null),this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.dispose(),this.roomInfoWrapperInstance=null)});f(this,"onFivePanoWillArrive",e=>{var i,s;e!==this.five.panoIndex&&((i=this.compassMeshTween)==null||i.dispose(),(s=this.compassMesh)==null||s.material.setValues({opacity:0}))});f(this,"onFivePanoArrived",e=>{var s,o,r,a,l,c,d;const i=(r=(o=(s=this.five.work)==null?void 0:s.observers)==null?void 0:o[e])==null?void 0:r.standingPosition;if(this.compassMesh&&(this.compassMesh.position.copy(i.clone().setY(i.y+.01)),this.compassMesh.material.opacity===0&&((a=this.compassMeshTween)==null||a.dispose(),this.compassMeshTween=Ao(1e3).onUpdate(({progress:h})=>{var u;(u=this.compassMesh)==null||u.material.setValues({opacity:h}),this.five.needsRender=!0}).play())),this.entryDoorMesh){const u=new E.Vector3(this.data.entrance.position.x,this.data.entrance.position.y,this.data.entrance.position.z).clone().setY(i.y).sub(i).normalize(),m=i.clone().add(u.clone().multiplyScalar(.7)).setY(i.y+.01);this.entryDoorMesh.rotation.z=new E.Vector3(0,0,-1).angleTo(u),this.entryDoorMesh.position.copy(m),((l=this.data)==null?void 0:l.room_observers[e].room.type)===1?(c=this.entryDoorMesh)==null||c.material.setValues({opacity:1}):(d=this.entryDoorMesh)==null||d.material.setValues({opacity:0})}this.roomInfoInstance&&this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.css3DObject.position.copy(i.clone().setY(i.y+.01)),this.roomInfoInstance.setRoom(this.data.room_observers[e].room)),this.five.needsRender=!0});f(this,"onFiveCameraDirectionUpdate",({longitude:e,latitude:i})=>{var s,o;this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.css3DObject.rotation.z=e,i>.66&&this.five.getCurrentState().mode==="Panorama"?(s=this.roomInfoInstance)==null||s.show():(o=this.roomInfoInstance)==null||o.hide())});f(this,"onFiveModeChange",(e,i,s,o,r)=>{e!==i&&this.setState({visible:e===je.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),i||{})})}enable(e=Os){this.setState({enabled:!0},e)}disable(e=Os){this.setState({enabled:!1},e)}show(e=Os){if(this.state.enabled)return this.setState({visible:!0},e),Promise.resolve()}hide(e=Os){if(this.state.enabled)return this.setState({visible:!1},e),Promise.resolve()}setState(e,i={userAction:!0}){var o,r;const s=JSON.parse(JSON.stringify(this.state));this.state={visible:(o=e.visible)!=null?o:s.visible,enabled:(r=e.enabled)!=null?r:s.enabled,config:G(G({},s.config),e.config||{})},this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i.userAction}),e.enabled===!0&&(this._enable(),this.hooks.emit("enable",i)),e.enabled===!1&&(this._disable(),this.hooks.emit("disable",i)),e.visible===!1&&(this._toggleVisible(),this.hooks.emit("hide",i)),e.visible===!0&&(this._toggleVisible(),this.hooks.emit("show",i)),e.config&&this.init()}load(e,i,s=!0){return W(this,null,function*(){const o=yield this.formatData(e);JSON.stringify(this.data)!==JSON.stringify(o)&&(this.hooks.emit("dataChange",o,this.data),this.data=G({},o),this.init(),i&&this.setState(i,{userAction:s}),this.hooks.emit("dataLoaded",this.data))})}formatData(e){return e.version&&e.data?Promise.resolve(e.data):Promise.resolve(e)}init(){return W(this,null,function*(){var s,o,r,a;const e=(o=(s=this.data)==null?void 0:s.north_rad)!=null?o:null;this._clearCompassIfNeed(),e!==null&&(this.compassMesh=yield this.loadCompassMesh(),this.compassMesh.rotateX(-Math.PI/2),this.compassMesh.rotateZ(e-Math.PI/2),this.group.add(this.compassMesh));const i=(a=(r=this.data)==null?void 0:r.entrance)!=null?a:null;this._clearEntryDoorIfNeed(),i!==null&&(this.entryDoorMesh=yield this.loadEntryDoorMesh(),this.roomInfoWrapperInstance=this.loadRoomInfo(),this.roomInfoInstance=UA(),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 W(this,null,function*(){const e=this.state.config.compassImageUrl,i=yield vn(e),s=new E.CircleGeometry(.7,32),o=new E.MeshBasicMaterial({map:i,transparent:!0,opacity:0,depthTest:!1}),r=new E.Mesh(s,o);return r.name="pano-compass-mesh",r})}loadEntryDoorMesh(){return W(this,null,function*(){const e=this.state.config.entryDoorImageUrl,i=yield vn(e),s=new E.PlaneGeometry(.2,.16),o=new E.MeshBasicMaterial({map:i,transparent:!0,opacity:.8,depthTest:!1}),r=new E.Mesh(s,o);return r.name="pano-compass-entry-door",r})}loadRoomInfo(){const e=[new E.Vector3(-.7,0,-.7),new E.Vector3(.7,0,-.7),new E.Vector3(.7,0,.7),new E.Vector3(-.7,0,.7)];return bo(this.five).create3DDomContainer(e)}}const JA=(n,t)=>new ZA(n,t),qA=1,KA=3,$A=new R.Color(16777215),ev=new R.Color(6522623),tv=new R.Color(16777215),iv=new R.Color(6522623),nv=6,sv=8,ov="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAIVBMVEUAAAD////////////////////////////////////////PIev5AAAACnRSTlMAG/Py2baba05un7UgfgAAAHJJREFUKM9joBpgLHVSCRdA4metAoJlCJHmVWBgAeNzroKCCVCBLpjACqgJVjCBxRBT2FbBQQJYQAohsBAsUIUQWA4WiEIILAULeCEEloAFtBACizAEMLRgGIphLabDMJ2O6TlM72MGECIIMQIZIxqoBQCPvpJ/e9FaAAAAAABJRU5ErkJggg==",ru=new R.TextureLoader().load(ov),rv={pointTexture:ru,pointSize:nv,lineWidth:qA,lineColor:$A,pointColor:tv,lineRenderOrder:20,pointsRenderOrder:20},av={pointTexture:ru,pointSize:sv,lineWidth:KA,lineColor:ev,pointColor:iv,lineRenderOrder:10,pointsRenderOrder:10};function lv(n,t,e){var d,h,u,m,A;const i=(d=e==null?void 0:e.lineWidth)!=null?d:2,s=(h=e==null?void 0:e.lineColor)!=null?h:new R.Color(16777215),o=(u=e==null?void 0:e.pointSize)!=null?u:5,r=(m=e==null?void 0:e.lineRenderOrder)!=null?m:10,a=(A=e==null?void 0:e.lineRenderOrder)!=null?A:20,l=new hh.Line(n,t);l.setMaterial({linewidth:i,color:s}),l.line.material.depthTest=!1,l.line.material.transparent=!0,l.line.renderOrder=r,l.points.renderOrder=a;const c=l.points.material;return c.depthTest=!1,c.size=o,e!=null&&e.pointColor&&c.color.set(e.pointColor).convertSRGBToLinear(),e!=null&&e.pointTexture&&(c.map=e.pointTexture),l}function Kl(n,t){const[e,i]=n.points,s=t==="light"?av:rv,o=lv(e.position,i.position,s);return o.name="normalLine_"+n.id,o}function zi(n){const{x:t,y:e,z:i}=n;return!(Math.abs(t)>1||Math.abs(e)>1||Math.abs(i)>1)}function Xs(n){const{z:t}=n;return!(Math.abs(t)>1)}function cv(n){const t=document.createElement("div");return t.setAttribute("style","backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);-webkit-tap-highlight-color: rgba(0,0,0,0);"),t.style.width="max-content",t.style.padding="3px 6px",t.style.lineHeight="1",t.style.textAlign="center",t.style.transform="translate(-50%, -50%)",t.style.fontSize="14px",t.style.color="#fff",t.style.cursor="pointer",t.style.userSelect="none",n!=null&&n.style&&Object.assign(t.style,n==null?void 0:n.style),t}function dv(n){const t=document.createElement("div");return n!=null&&n.id&&(t.id=n==null?void 0:n.id),t.classList.add("five-plugin-measure__distance"),t.style.position="absolute",t.style.left="0",t.style.top="0",t.style.width="0",t.style.height="0",t.style.transform="translate(-10px, -10px)",t.style.transformOrigin="left top",n!=null&&n.style&&Object.assign(t.style,n.style),t}class au{constructor(t){f(this,"ndcPosition");f(this,"contentDom");f(this,"containerDom");f(this,"params");f(this,"canSelected");f(this,"handleClick",t=>{var e,i;(i=(e=this.params).clickCallback)==null||i.call(e,t,this)});this.params=t,this.contentDom=cv({style:t.contentStyle}),this.containerDom=dv({style:t.containerStyle}),this.setCanSelect(!0)}setCanSelect(t){this.canSelected=t,this.containerDom.style.pointerEvents=t?"all":"none"}highlight(){this.contentDom.style.border="0.5px solid #95AEFF",this.contentDom.style.background="linear-gradient(90deg, #95AEFF 0%, #6386FF 100%)"}unHighlight(){this.contentDom.style.border="0.5px solid rgba(255,255,255,0.6)",this.contentDom.style.background="rgba(195,195,195,0.70)"}appendTo(t){t.appendChild(this.containerDom),this.containerDom.addEventListener("click",this.handleClick)}remove(){this.contentDom.removeEventListener("click",this.handleClick),this.containerDom.remove()}show(){this.containerDom.style.visibility="visible"}hide(){this.containerDom.style.visibility="hidden"}tempHide(){this.containerDom.style.opacity="0"}tempShow(){this.containerDom.style.opacity="1"}updateDomPosition(t){if(!this.ndcPosition){this.tempHide();return}const e=t.getElement();if(!e)return;const i=e.clientWidth,s=e.clientHeight,o=this.ndcPosition.clone().project(t.camera);if(!Xs(o)){this.tempHide();return}const r=(o.x+1)/2*i,a=-(o.y-1)/2*s;this.containerDom.style.transform=`translate(${r}px, ${a}px)`,this.tempShow()}}class hv extends au{constructor(e){var i;e.contentStyle=ve(G({},e.contentStyle),{background:"rgba(195,195,195,0.70)",border:"0.5px solid rgba(255,255,255,0.6)",borderRadius:"999px"});super(e);f(this,"line");this.line=e.line,(i=this.params.userDistanceItem)!=null&&i.element?this.containerDom.appendChild(this.params.userDistanceItem.element):this.containerDom.appendChild(this.contentDom)}update(e){var V;if(this.line.mesh.visible===!1){this.hide();return}const i=e.getElement();if(!i)return;const s=i.clientWidth,o=i.clientHeight,r=s/2,a=o/2;if(this.line.points.length<2)return;const[l,c]=this.line.points,d=l.position.clone().project(e.camera),h=c.position.clone().project(e.camera),u=Ai(l.position,c.position).clone().project(e.camera),m=new R.Vector2(d.x*r,d.y*a),A=new R.Vector2(h.x*r,h.y*a),p=m.distanceTo(A);if((()=>!(Math.abs(d.z)>1||Math.abs(h.z)>1||!Xs(d)&&!Xs(h)||!Xs(u)||p===0))()===!1){this.hide();return}const v=(u.x+1)/2*s,y=-(u.y-1)/2*o,M=-(Math.atan((m.y-A.y)/(m.x-A.x))*180)/Math.PI,D=this.containerDom.parentElement&&this.contentDom.clientWidth>p?-20:0;this.containerDom.style.transform=`translate(${v}px, ${y}px) rotate(${M}deg) translateY(${D}px)`,this.show(),(V=this.params.userDistanceItem)==null||V.update({line:this.line,polyline:this.line.getPolyline()});const P=this.getCurrentContent();this.contentDom.innerText=P}getCurrentContent(){var l,c,d,h;if(this.line.points.length<2)return"";const[e,i]=this.line.points,s=e.position.clone().distanceTo(i.position),o=(c=this.line.text)!=null?c:(l=this.line.model.config)==null?void 0:l.defaultText,r=(h=(d=this.line.model.config)==null?void 0:d.getDistanceText)==null?void 0:h.call(d,s),a=o!=null?o:r;return a!=null?a:s.toFixed(2)+"m"}}class ii{constructor(t,e,i){f(this,"id");f(this,"selected",!1);f(this,"text");f(this,"type","line");f(this,"model");f(this,"mesh");f(this,"points");f(this,"lightMesh");f(this,"hook");f(this,"distanceItem");f(this,"polyline");f(this,"visible");var s;if(this.id=lt(),this.model=i,t.id===e.id)throw new Error("无效的线段, 一个点无法构成线段");typeof i.config.defaultText=="string"&&(this.text=i.config.defaultText),this.hook=new je.Subscribe,this.points=[t,e],this.mesh=Kl(this,"normal"),this.lightMesh=Kl(this,"light"),this.distanceItem=new hv({line:this,clickCallback:()=>this.hook.emit("selected",this),userDistanceItem:(s=this.model.config)!=null&&s.userDistanceItemCreator?this.model.config.userDistanceItemCreator():void 0})}hide(){this.visible&&(this.visible=!1,this.mesh.visible=!1,this.distanceItem.hide())}show(){this.visible||(this.visible=!0,this.mesh.visible=!0,this.distanceItem.show())}setPoints(t,e){this.points[0].position.copy(t),this.points[1].position.copy(e),this.mesh.setPoints(t,e)}remove(){this.mesh.parent&&this.mesh.parent.remove(this.mesh),this.distanceItem.remove()}clear(){this.selected=!1,this.polyline=void 0}isEmpty(){return this.points.length===0}getPolyline(){if(this.polyline)return this.polyline;const t=this.model.polylines.find(e=>e.lines.includes(this));if(t)return this.polyline=t,t}findAnotherPoint(t){return this.points.find(({id:e})=>e!==t.id)}setText(t){this.text=t,this.hook.emit("textChanged",t)}toJson(){return{id:this.id,points:this.points.map(t=>t.toJson()),text:this.text}}clone(){const t=new ii(this.points[0].clone(),this.points[1].clone(),this.model);return t.text=this.text,t}}class ft{constructor(t){f(this,"id");f(this,"position");f(this,"type","point");if(this.id=lt(),this.position=new R.Vector3,Array.isArray(t))this.position.fromArray(t);else if(typeof t=="object"&&t.isVector3)this.position.copy(t);else throw new Error("position must be Vector3 or number[]")}toJson(){return{id:this.id,position:this.position.toArray()}}clone(){return new ft(this.position)}}const Bs=n=>n.preventDefault();let Mo=class{constructor(t){f(this,"model");f(this,"five");f(this,"group");f(this,"config");f(this,"dashed");f(this,"perpendicularDashed");f(this,"disposed",!1);f(this,"isMobile");f(this,"editParams");f(this,"magnifierParams");f(this,"mouseGroup");f(this,"container");f(this,"hook");f(this,"magnifier");f(this,"userDistanceItemCreator");f(this,"getMeasureType");f(this,"updateDistanceUI",()=>{this.dashed.distanceItem.update(this.five),this.model.getAllLines().forEach(t=>t.distanceItem.update(this.five))});f(this,"updateAreaUI",()=>{this.dashed.distanceItem.update(this.five),this.model.getAllAreas().forEach(t=>{t.areaItem.updateArea(this.five),t.polyline.lines.forEach(e=>{e.distanceItem.update(this.five)})})});var i,s;this.five=t.five,this.hook=t.hook,this.model=t.model,this.getMeasureType=t.getMeasureType,this.config=t.config,this.magnifierParams=t.magnifierParams,this.editParams=t.editParams,this.magnifier=t.magnifier,this.container=t.container,this.isMobile=(s=(i=t.openParams)==null?void 0:i.isMobile)!=null?s:!1,this.userDistanceItemCreator=t.userDistanceItemCreator,this.group=t.group,this.mouseGroup=t.mouseGroup,this.dashed=new ii(new ft([0,0,0]),new ft([0,0,0]),this.model),this.dashed.distanceItem.setCanSelect(!1),this.dashed.mesh.setMaterial({dashed:!0,dashScale:100}),this.dashed.mesh.name="dashLine",this.perpendicularDashed=new ii(new ft([0,0,0]),new ft([0,0,0]),this.model),this.perpendicularDashed.distanceItem.setCanSelect(!1),this.perpendicularDashed.mesh.setMaterial({dashed:!0,dashScale:40,color:new R.Color(10218089)}),this.perpendicularDashed.mesh.name="perpendicularDashLine";const e=this.five.getElement();e&&(e.addEventListener("touchstart",Bs),e.addEventListener("contextmenu",Bs))}get currentMeasureType(){return this.getMeasureType()}removeLine(t){this.group.remove(t.mesh,t.lightMesh),t.distanceItem.remove(),this.five.needsRender=!0}updateMouseGroup(t,e){if(!t)return this.mouseGroup;if(this.mouseGroup.position.copy(t.point),e)this.mouseGroup.quaternion.copy(e.quaternion);else if(t.face){const s=t.face.normal.clone().multiplyScalar(.05),r=t.point.clone().add(s).clone().add(s);this.mouseGroup.lookAt(r)}return this.mouseGroup}dispose(){this.disposed=!0,this.magnifier.disable(),this.model.getAllLines().forEach(e=>this.removeLine(e)),this.model.areas.forEach(e=>e.remove());const t=this.five.getElement();t&&(t.removeEventListener("touchstart",Bs),t.removeEventListener("contextmenu",Bs))}},Oi=class{constructor(t){f(this,"id",lt());f(this,"lines",[]);f(this,"visiblePanoIndexes");f(this,"model");f(this,"type","polyline");f(this,"hook",new je.Subscribe);this.model=t.model}get points(){const t=new Set;return this.lines.forEach(e=>{t.add(e.points[0]),t.add(e.points[1])}),Array.from(t)}addLine(t){if(this.includes(t)){console.error(new Error("不能重复添加线段"));return}const e=this.getLastPoint(),i=e&&t.findAnotherPoint(e);if(e&&!i){console.error(new Error("传入线段无法与当前折线进行连接"));return}this.lines.push(t),this.hook.emit("lineAdded",t)}removeLine(t){if(this.lines.length===0)return;if(!this.isLastLine(t)){console.error(new Error("传入线段不是当前折线的最后一段"));return}this.lines.pop()&&this.hook.emit("lineRemoved",t)}isLastLine(t){const e=this.getLastLine();return e?t.id===e.id:!1}getLastLine(){return this.lines.slice(-1)[0]}getPointLength(){return this.lines.length+1}clear(){const t=this.lines.slice();this.lines.length=0,t.reduceRight((e,i)=>this.hook.emit("lineRemoved",i),void 0)}overlapWith(t){return t.type==="point"?this.includes(t):t.type==="line"?t.points.some(e=>this.includes(e)):t.type==="polyline"?t.points.some(e=>this.includes(e)):!0}includes(t){return t.type==="point"?this.points.find(({id:e})=>e===t.id)!==void 0:t.type==="line"?this.lines.find(({id:e})=>e===t.id)!==void 0:!1}isEmpty(){return this.lines.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}=s(),i=t.lines.map(o=>{const[r,a]=o.points,l=e(r),c=e(a);if(!l||!c)throw new Error("线上的点不存在");const d=new ii(l,c,this.model);return d.id=o.id,d.text=o.text,d});this.lines.push(...i),this.visiblePanoIndexes=t.visiblePanoIndexes;function s(){const o=new Map;function r(l){const c=o.get(l.id);if(c)return c;const d=new ft(l.position);return d.id=l.id,o.set(l.id,d),d}function a(){return Array.from(o.values())}return{getPoint:r,getAllPoints:a}}return this}replace(t){this.id=t.id,this.clear(),this.lines.push(...t.lines)}};class lu extends R.Object3D{constructor(){super()}add(...t){if(t.length===0)return this;const e=t.filter(Boolean);return super.add(...e)}remove(...t){if(t.length===0)return this;const e=t.filter(Boolean);return super.remove(...e)}removeFromParent(){const t=this.parent;return t!==null&&t.remove(this),this}}function uv(n){const t=[...new Set(n)];if(t.length<3)return;t.at(-1).equals(t[0])||t.push(t[0]);const e=t.flatMap(r=>[r.x,r.y,r.z]),i=new E.Float32BufferAttribute(e,3),s=gf(e,void 0,3),o=new E.BufferGeometry;return o.setAttribute("position",i),o.setIndex(s),o.name="PolygonGeometry",o}const fv=new E.BufferGeometry;class cu extends lu{constructor(e){super();f(this,"isPolygonMesh",!0);f(this,"geometry",new E.BufferGeometry);f(this,"isBlank",!0);f(this,"points",[]);const i=new E.MeshBasicMaterial({color:4090367,transparent:!0,side:E.DoubleSide,depthTest:!0,opacity:.5}),s=new E.MeshBasicMaterial({color:16777215,transparent:!0,side:E.DoubleSide,depthTest:!1,depthWrite:!1,opacity:.3}),o=new E.Mesh(this.geometry,i),r=new E.Mesh(this.geometry,s);o.renderOrder=1,r.renderOrder=0,e&&this.updatePoints(e),this.add(o,r)}updatePoints(e){this.points=e;const i=uv(e);i?(this.geometry.copy(i),this.isBlank=!1):(this.geometry.copy(fv),this.isBlank=!0)}}function mv(n){const t=pv(n);if(t.length===0)return;let e=0,i=new R.Vector3;for(const[s,o,r]of t){const a=du(s,o,r),l=gv(s,o,r,a);e+=a,i.add(l)}return i=i.divideScalar(e),{center:i,area:e}}function du(n,t,e){return t.clone().sub(n).cross(e.clone().sub(n)).length()/2}function gv(n,t,e,i){const s=i!=null?i:du(n,t,e);return Ai(n,t,e).multiplyScalar(s)}function pv(n){var s;const t=n.getAttribute("position"),e=(s=n.getIndex())==null?void 0:s.array;if(!t||!e)return[];let i=[];for(let o=0;o<e.length;o+=3){const r=e[o],a=e[o+1],l=e[o+2],c=new R.Vector3().fromArray([t.getX(r),t.getY(r),t.getZ(r)]),d=new R.Vector3().fromArray([t.getX(a),t.getY(a),t.getZ(a)]),h=new R.Vector3().fromArray([t.getX(l),t.getY(l),t.getZ(l)]);i.push([c,d,h])}return i}class Av extends au{constructor(e){e.containerStyle=ve(G({},e.containerStyle),{zIndex:"1"}),e.contentStyle=ve(G({},e.contentStyle),{background:"#6386FF",borderRadius:"2px"});super(e);f(this,"area");this.area=e.area,this.containerDom.appendChild(this.contentDom)}updateArea(e,i){var l,c;const s=i!=null?i:this.area.polygon.geometry,o=mv(s);if(!o){this.ndcPosition=null,this.updateDomPosition(e);return}const{area:r,center:a}=o;this.ndcPosition=a,this.updateDomPosition(e),(c=(l=this.area.model)==null?void 0:l.config)!=null&&c.getAreaText?this.contentDom.innerText=this.area.model.config.getAreaText(r):this.updateAreaText(r,{fix:2})}updateAreaText(e,i){const{unit:s="m²",fix:o}=i!=null?i:{};this.contentDom.innerText=`${kh(o)?e:e.toFixed(o)}${s}`}}class ea{constructor(t,e){f(this,"id",lt());f(this,"selected",!1);f(this,"text");f(this,"type","area");f(this,"lightMesh");f(this,"areaItem");f(this,"hook",new je.Subscribe);f(this,"model");f(this,"polygon");f(this,"points",[]);f(this,"planeHelper");f(this,"polyline");f(this,"meshContainer");f(this,"domContainer");f(this,"five");f(this,"updateDom",()=>{this.five&&(this.polyline.lines.forEach(t=>t.distanceItem.update(this.five)),this.areaItem.updateDomPosition(this.five))});var i;t&&(this.points=t),this.model=e.model,this.polygon=new cu(t),this.polyline=new Oi({model:e.model}),this.areaItem=new Av({area:this,clickCallback:(s,o)=>{const r=s.clientX+"px",a=s.clientY+"px";this.hook.emit("selected",this,{left:r,top:a})}}),this.domContainer=e.domContainer||null,this.meshContainer=e.meshContainer||null,this.five=e.five||null,this.areaItem.appendTo(this.domContainer),(i=this.five)==null||i.on("cameraUpdate",this.updateDom)}get isClosed(){var t;return this.points.length>=4&&((t=this.points.at(0))==null?void 0:t.equals(this.points.at(-1)))}addPoints(t){var s;this.points=this.points.concat(t);const e=this.points.at(-2),i=this.points.at(-1);if(e&&i){const o=new ii(new ft(e),new ft(i),this.polyline.model);this.polyline.addLine(o),this.meshContainer.add(o.mesh),this.five&&(o.distanceItem.setCanSelect(!1),o.distanceItem.appendTo(this.domContainer),o.distanceItem.update(this.five))}(s=this.meshContainer)!=null&&s.children.includes(this.polygon)||this.meshContainer.add(this.polygon),this.polygon.updatePoints(this.points),this.areaItem.updateArea(this.five),this.points.length===3?this.planeHelper=new E.Plane().setFromCoplanarPoints(this.points[0],this.points[1],this.points[2]):this.points.length<3&&(this.planeHelper=null)}popPoint(){this.points.pop();const t=this.polyline.lines.pop();t==null||t.remove(),this.polygon.updatePoints(this.points),this.areaItem.updateArea(this.five),this.points.length<3&&(this.planeHelper=null)}complete(){this.points.at(-1).equals(this.points[0])||this.addPoints(this.points[0])}hideArea(){this.polygon.visible=!1,this.areaItem.hide()}showArea(){this.polygon.visible=!0,this.areaItem.show()}projectPoint(t){return t&&(this.planeHelper?this.planeHelper.projectPoint(t,new E.Vector3):t)}remove(){this.polygon.removeFromParent(),this.areaItem.remove(),this.polyline.lines.forEach(t=>t.remove())}dispose(){this.remove(),this.model.areas.splice(this.model.areas.indexOf(this),1),this.planeHelper=null,this.five.off("cameraUpdate",this.updateDom),this.five.needsRender=!0}}function $l(n,t){const e=Array.isArray(t)?t:[t];for(let i=0;i<e.length;i++){const s=e[i],o=n.start,r=n.end,a=s.start,l=s.end;if(Un(o,a)||Un(o,l)||Un(r,a)||Un(r,l)||Un(o,r))continue;const c=Vs(o,r,a),d=Vs(o,r,l),h=Vs(a,l,o),u=Vs(a,l,r);if(c!==d&&h!==u||c===0&&Rs(o,r,a)||d===0&&Rs(o,r,l)||h===0&&Rs(a,l,o)||u===0&&Rs(a,l,r))return!0}return!1}function Un(n,t){return n.x===t.x&&n.z===t.z&&n.y===t.y}function Vs(n,t,e){const i=(e.z-n.z)*(t.x-n.x)-(t.z-n.z)*(e.x-n.x);return i===0?0:i<0?2:1}function Rs(n,t,e){return t.x<=Math.max(n.x,e.x)&&t.x>=Math.min(n.x,e.x)&&t.z<=Math.max(n.z,e.z)&&t.z>=Math.min(n.z,e.z)}const hu="ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0;function ta(n){const{x:t,y:e}=n.center,{clientWidth:i,clientHeight:s}=n.target,o=n.target.getBoundingClientRect(),r=new R.Vector2(t,e).sub(new R.Vector2(o.left,o.top)),a=new R.Vector2(r.x/i*2-1,-(r.y/s)*2+1);return{point:r,ndcPoint:a}}function kr(n,t){const e=ta(t).ndcPoint,i=new R.Raycaster;return i.setFromCamera(e,n.camera),n.model.intersectRaycaster(i)}const en=()=>!1;class vv{constructor(t,e){f(this,"hook",new je.Subscribe);f(this,"outOfFive",!1);f(this,"five");f(this,"hammer");f(this,"mode");f(this,"pointSelectorHelper");f(this,"enabled",!1);f(this,"pressDown",!1);f(this,"adherePoints",null);f(this,"adherePointsRadius",.1);f(this,"lastFiveHelperVisible");f(this,"select",t=>{t&&this.updatePointSelectorHelperIntersect(t);const e=this.hook.emit("wantsSelect",this.position);return e||(this.pointSelectorHelper.hide(),this.hook.emit("select",this.position)),!e});f(this,"onEnter",()=>{this.pointSelectorHelper.show(),this.outOfFive=!1,this.hook.emit("intersectionUpdate",this.position)});f(this,"onLeave",()=>{this.pointSelectorHelper.hide(),this.outOfFive=!0,this.hook.emit("intersectionUpdate",null)});f(this,"onTap",t=>{const[e]=kr(this.five,t);e!=null&&e.face&&this.select(e)});f(this,"onPan",t=>{if(!this.pressDown)return;const[e]=kr(this.five,t);e!=null&&e.face&&this.intersectionOnModelUpdate(e)});f(this,"onPress",t=>{const[e]=kr(this.five,t);e!=null&&e.face&&(this.pressDown=!0,this.intersectionOnModelUpdate(e))});f(this,"onPanEnd",()=>{this.pressDown&&(this.pressDown=!1,this.select())});f(this,"intersectionOnModelUpdate",t=>{this.pointSelectorHelper.show(),this.updatePointSelectorHelperIntersect(t)});f(this,"updateByMousePosition",t=>{const e=this.five.getElement();if(!e)return;const{clientX:i,clientY:s}=t,o={x:i/e.clientWidth,y:1-s/e.clientHeight};this.updateByNdcPosition(o)});f(this,"updateByNdcPosition",t=>{const e=Ch(this.five,t),i=(()=>e?ve(G({},e),{isVirtual:!1}):ve(G({},yv(this.five,t)),{isVirtual:!0}))();this.updatePointSelectorHelperIntersect(i)});f(this,"updatePointSelectorHelperIntersect",t=>{var s;const e=G({},t);let i=!1;if(((s=this.adherePoints)==null?void 0:s.length)>0&&typeof this.adherePointsRadius=="number"){for(const o of this.adherePoints)if(o.distanceTo(t.point)<this.adherePointsRadius){e.point=o.clone(),i=!0;break}}this.pointSelectorHelper.updateWithIntersect(e,{emitEvent:!1}),this.hook.emit("intersectionUpdate",e,i)});f(this,"onFiveWantsPanGesture",()=>{if(this.pressDown)return!1});f(this,"renderScreenCenter",()=>{this.updateByNdcPosition({x:.5,y:.5})});f(this,"emitIntersectionUpdate",t=>{this.hook.emit("intersectionUpdate",t)});var o,r;this.five=t;const i=(o=e==null?void 0:e.mode)!=null?o:"auto";i==="auto"?this.mode=hu?"fixed":"cursor":this.mode=i;const s={autoFixPCPosition:this.mode==="cursor",initialPosition:this.mode==="fixed"?{left:"35%",top:"20%"}:void 0};this.pointSelectorHelper=new Mh(t,ve(G({},e==null?void 0:e.pointSelectorHelperParams),{magnifierParams:G(G({},s),(r=e==null?void 0:e.pointSelectorHelperParams)==null?void 0:r.magnifierParams)})),this.pointSelectorHelper.hide()}get position(){return this.outOfFive?null:this.pointSelectorHelper.position}enable(){if(this.enabled)return;this.enabled=!0,this.pointSelectorHelper.enable();const t=this.five.getElement();if(!t)throw new Error("five element not found");this.hammer||(this.hammer=new ls(t)),this.mode==="cursor"?(this.five.on("intersectionOnModelUpdate",this.intersectionOnModelUpdate),this.five.on("wantsPanGesture",this.onFiveWantsPanGesture),this.five.on("wantsMoveToPano",en),this.five.on("wantsChangeMode",en),this.five.on("wantsTapGesture",en),t.addEventListener("mousemove",this.updateByMousePosition),t.addEventListener("mouseenter",this.onEnter),t.addEventListener("mouseout",this.onLeave),this.hammer.on("tap",this.onTap),this.hammer.on("pan",this.onPan),this.hammer.on("press",this.onPress),this.hammer.on("panend",this.onPanEnd)):this.mode==="fixed"&&(this.five.on("panGesture",this.renderScreenCenter),this.five.on("interiaPan",this.renderScreenCenter),this.renderScreenCenter(),this.pointSelectorHelper.show()),this.pointSelectorHelper.hooks.on("intersectionUpdate",this.emitIntersectionUpdate),this.lastFiveHelperVisible=this.five.helperVisible,this.five.helperVisible=!1}disable(){if(!this.enabled)return;this.enabled=!1,this.pointSelectorHelper.disable();const t=this.five.getElement();this.five.off("intersectionOnModelUpdate",this.intersectionOnModelUpdate),this.five.off("wantsPanGesture",this.onFiveWantsPanGesture),this.five.off("wantsMoveToPano",en),this.five.off("wantsChangeMode",en),this.five.off("wantsTapGesture",en),this.five.helperVisible=this.lastFiveHelperVisible,t==null||t.removeEventListener("mousemove",this.updateByMousePosition),t==null||t.removeEventListener("mouseenter",this.onEnter),t==null||t.removeEventListener("mouseout",this.onLeave),this.hammer.off("tap",this.onTap),this.hammer.off("pan",this.onPan),this.hammer.off("press",this.onPress),this.hammer.off("panend",this.onPanEnd),this.five.off("panGesture",this.renderScreenCenter),this.five.off("interiaPan",this.renderScreenCenter),this.pointSelectorHelper.hooks.off("intersectionUpdate",this.emitIntersectionUpdate)}dispose(){this.disable(),this.pointSelectorHelper.dispose()}setAdherePoints(t,e){t?this.adherePoints=Array.isArray(t)?t:[t]:this.adherePoints=null,typeof e=="number"&&(this.adherePointsRadius=e)}}function bv(n,t){const{x:e,y:i}=t,s=e*2-1,o=i*2-1,r=new R.Vector2().fromArray([s,o]),a=new R.Raycaster;return a.setFromCamera(r,n.camera),a}function yv(n,t){const e=bv(n,t),i=3,s=new R.Vector3().addVectors(e.ray.origin,e.ray.direction.clone().normalize().multiplyScalar(i)),o=e.ray.direction.clone().negate();return{distance:i,point:s,object:new R.Object3D,face:new R.Face3(0,0,0,o)}}const wv=`
287
+ `,y=document.createElement("div");return y.setAttribute("class","PanoRulerPlugin-rule"),y.setAttribute("data-name",p),y.setAttribute("style","display: none"),y.innerHTML=v,y},s=document.createElement("div");s.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;");const o=document.createElement("div");o.innerHTML=TA,s.appendChild(o);const r={},a=(p,g)=>{if(e.loaded)throw new Error("标尺被重复初始化!");const v=jA(p,n),y=n.work;if(!y)return!1;for(const I in g){const M=g[I],{standingPosition:B}=y.observers[0],P=M.map(({x:V,z:L,observers:X})=>{const Y=X.length>0?p.rooms[p.observers[X[0]]].name:"",N=v[Y]?v[Y].floor:null;let H=1/0,_={index:0,x:B.x,y:B.y,z:B.z};X.forEach(ce=>{if(!y.observers[ce])return;const{standingPosition:se}=y.observers[ce],we={index:ce,x:se.x,y:se.y,z:se.z},Ce=LA({x:V,z:L},we);N?Ce<H&&Math.abs(we.y-N)<.3&&(H=Ce,_=we):Ce<H&&(H=Ce,_=we)});const Q=new R.Vector3(V,_.y,L);Object.assign(Q,{observers:X});const F=v[Y]?v[Y].roof:null,J=F?new R.Vector3(V,F,L):null;return J&&Object.assign(J,{observers:X}),{origin:Q,vertical:J}});r[I]={origins:P.map(V=>V.origin),rules:[]};for(const{origin:V,vertical:L}of P){if(!L)continue;const X=i(I,V.distanceTo(L));s.append(X),r[I].rules.push({vertical:!0,rule:[V,L],$element:X})}for(let V=0;V<P.length;V++){let L=V+1;L>=P.length&&(L=0);const{origin:X}=P[V],{origin:Y}=P[L],N=i(I,X.distanceTo(Y));s.append(N),r[I].rules.push({vertical:!1,rule:[X,Y],$element:N})}}return e.loaded=!0,!0},l=(p,g,v)=>W(exports,null,function*(){const y=p||t.roomInfo,I=g||t.roomRules;if(!y||!I)throw new Error("标尺数据依赖不齐全!");return e.loaded=!1,e.options=G(G({},e.options),v||{}),n.model.loaded?a(y,I):yield new Promise(M=>n.once("modelLoaded",()=>M(a(y,I))))});t.roomInfo&&t.roomRules&&l(t.roomInfo,t.roomRules);const c=(p,g,v,y)=>{const I=[[{x:0,y:0},{x:v,y:0}],[{x:0,y:0},{x:0,y}],[{x:v,y:0},{x:v,y}],[{x:0,y},{x:v,y}]],M=[];for(let B=0;B<I.length;B++){const P=su([p,g],[I[B][0],I[B][1]],!0);P&&M.push(P)}return M.length===0?!1:M},d=()=>{var X;const p=(X=n.getElement())==null?void 0:X.parentElement;if(!p||!e.loaded||Object.keys(r).length<=0)return;const{panoIndex:g,camera:v,currentMode:y}=n;if(g===void 0)return;let I;for(const Y in r)Y.split(",").indexOf(g.toString())>=0&&(I=Y);if(!I){for(const Y in r)for(const{$element:N}of r[Y].rules)N.style.display="none";return}const M=v.position,B=v.getWorldDirection(new R.Vector3),P=p.clientWidth,V=p.clientHeight;if(y!==je.Five.Mode.Panorama){for(const Y in r)for(const{$element:N}of r[Y].rules)N.style.display="none";return}for(const Y in r)for(const{$element:N}of r[Y].rules)N.style.display=Y===I?"block":"none";const[L]=r[I].origins.slice().filter(Y=>Y.observers.indexOf(g)>=0).sort((Y,N)=>{const H=Y.clone().setY(0).sub(M).normalize().angleTo(B.clone().setY(0)),_=N.clone().setY(0).sub(M).normalize().angleTo(B.clone().setY(0));return H-_});for(const{rule:Y,vertical:N,$element:H}of r[I].rules){const[_,Q]=Y,F=H.querySelector(".PanoRulerPlugin-rule-line");if(!F)return;if(!L){H.style.display="none";continue}if(_!==L&&Q!==L){H.style.display="none";continue}if(_.distanceTo(Q)<.3){H.style.display="none";continue}if(_.observers.indexOf(g)===-1||Q.observers.indexOf(g)===-1){H.style.display="none";continue}if(_.clone().sub(M).normalize().angleTo(B)>Math.PI/2){H.style.display="none";continue}if(Q.clone().sub(M).normalize().angleTo(B)>Math.PI/2){H.style.display="none";continue}const ee=_.distanceTo(Q);if(Q.clone().sub(Q.clone().sub(_).divide(new R.Vector3(2,2,2))).distanceTo(M)/ee>8){H.style.display="none";continue}const we=_.clone().project(v),Ce=(we.x+1)/2*P,pe=(-we.y+1)/2*V,Ve=Q.clone().project(v),Ae=(Ve.x+1)/2*P,Ye=(-Ve.y+1)/2*V,fe=Math.sqrt(Math.pow(Ae-Ce,2)+Math.pow(Ye-pe,2));let ye=fe,ze=50;const me=c({x:~~Ce,y:~~pe},{x:~~Ae,y:~~Ye},P,V);if(me&&me.length===1&&(L===_?(ye=Math.sqrt(Math.pow(me[0].x-Ce,2)+Math.pow(me[0].y-pe,2)),ze=ye/fe*50):L===Q&&(ye=Math.sqrt(Math.pow(me[0].x-Ae,2)+Math.pow(me[0].y-Ye,2)),ze=100-ye/fe*50)),me&&me.length===2){const re={x:(me[0].x+me[1].x)/2,y:(me[0].y+me[1].y)/2};ze=Math.sqrt(Math.pow(re.x-Ce,2)+Math.pow(re.y-pe,2))/fe*100}const dt=(Math.PI/2-Math.atan2(Ae-Ce,pe-Ye))/Math.PI*180,ke=F.querySelector(".PanoRulerPlugin-rule-label"),nt=ke.children[0].clientWidth;nt>=fe||nt/2>=ze/100*fe||nt/2>=(1-ze/100)*fe?F.style.display="none":(F.style.display="block",F.style.width=fe+"px",F.style.left=Ce+"px",F.style.top=pe+"px",F.style.transform=`rotate(${-dt}deg)`,ke.style.left=`${ze}%`)}},h=()=>ou(d),u=()=>{var p,g;return e.loaded?(e.enable||(s.setAttribute("class","PanoRulerPlugin"+(e.options.className?" "+e.options.className:"")),(g=(p=n.getElement())==null?void 0:p.parentElement)==null||g.append(s),d(),n.on("modeChange",d),n.on("cameraUpdate",h),e.enable=!0),!0):!1},m=()=>(e.enable&&(n.off("modeChange",d),n.off("cameraUpdate",h),s&&s.remove(),e.enable=!1),!0);function A(p){if(p.distanceText&&p.distanceText!==e.options.distanceText){const g=p.distanceText;e.options.distanceText=g,Object.values(r).forEach(v=>{v.rules.forEach(y=>{const[I,M]=y.rule,B=I.distanceTo(M),P=y.$element.querySelector(".PanoRulerPlugin-rule-label-name");P&&(P.innerText=g(B))})})}}return{enable:u,disable:m,load:l,state:e,changeConfigs:A}};function OA(n){ue(n,"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 Xl(n,t,e){const i=n.slice();return i[6]=t[e],i}function BA(n){let t,e=Pe(n[0].children),i=[];for(let s=0;s<e.length;s+=1)i[s]=Zl(Xl(n,e,s));return{c(){t=D("div");for(let s=0;s<i.length;s+=1)i[s].c();w(t,"class","rule-mixed-line svelte-1h27ktp")},m(s,o){O(s,t,o);for(let r=0;r<i.length;r+=1)i[r]&&i[r].m(t,null)},p(s,o){if(o&9){e=Pe(s[0].children);let r;for(r=0;r<e.length;r+=1){const a=Xl(s,e,r);i[r]?i[r].p(a,o):(i[r]=Zl(a),i[r].c(),i[r].m(t,null))}for(;r<i.length;r+=1)i[r].d(1);i.length=e.length}},d(s){s&&z(t),jt(i,s)}}}function VA(n){let t,e;return{c(){t=D("em"),w(t,"class",e=Qe(n[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),w(t,"style",n[3])},m(i,s){O(i,t,s)},p(i,s){s&1&&e!==(e=Qe(i[0].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&w(t,"class",e),s&8&&w(t,"style",i[3])},d(i){i&&z(t)}}}function Zl(n){let t,e,i=`${n[6].width}px`;return{c(){t=D("div"),w(t,"class",e=Qe(n[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp"),w(t,"style",n[3]),j(t,"width",i)},m(s,o){O(s,t,o)},p(s,o){o&1&&e!==(e=Qe(s[6].state?"em-solid":"em-dotted")+" svelte-1h27ktp")&&w(t,"class",e),o&8&&w(t,"style",s[3]),(o&8||o&9&&i!==(i=`${s[6].width}px`))&&j(t,"width",i)},d(s){s&&z(t)}}}function RA(n){let t,e,i,s,o=n[0].labelElement+"",r,a,l=`${n[0].labelOffset}%`,c=`${n[0].width}px`,d=`${n[0].left}px`,h=`${n[0].top}px`,u=`rotate(${n[0].rotateDeg}deg)`;function m(g,v){return g[0].children.length===0?VA:BA}let A=m(n),p=A(n);return{c(){t=D("div"),p.c(),e=$(),i=D("div"),s=D("div"),r=xe(o),w(s,"class","PanoRulerPlugin-rule-label-name svelte-1h27ktp"),He(()=>n[4].call(s)),w(i,"class","PanoRulerPlugin-rule-label svelte-1h27ktp"),j(i,"left",l),w(t,"class","PanoRulerPlugin-rule-line svelte-1h27ktp"),j(t,"width",c),j(t,"left",d),j(t,"top",h),j(t,"transform",u),j(t,"display",n[0].visible&&n[2]?"block":"none")},m(g,v){O(g,t,v),p.m(t,null),x(t,e),x(t,i),x(i,s),x(s,r),a=wo(s,n[4].bind(s))},p(g,[v]){A===(A=m(g))&&p?p.p(g,v):(p.d(1),p=A(g),p&&(p.c(),p.m(t,e))),v&1&&o!==(o=g[0].labelElement+"")&&Se(r,o),v&1&&l!==(l=`${g[0].labelOffset}%`)&&j(i,"left",l),v&1&&c!==(c=`${g[0].width}px`)&&j(t,"width",c),v&1&&d!==(d=`${g[0].left}px`)&&j(t,"left",d),v&1&&h!==(h=`${g[0].top}px`)&&j(t,"top",h),v&1&&u!==(u=`rotate(${g[0].rotateDeg}deg)`)&&j(t,"transform",u),v&5&&j(t,"display",g[0].visible&&g[2]?"block":"none")},i:q,o:q,d(g){g&&z(t),p.d(),a()}}}function QA(n,t,e){let i,{rulerItemProp:s}=t,o=!0,r,a="data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjQiIHdpZHRoPSIxMiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+PGRlZnM+PGZpbHRlciBpZD0icHJlZml4X19hIiBoZWlnaHQ9IjQwMCUiIHdpZHRoPSIxMzcuNCUiIHg9Ii0xOC43JSIgeT0iLTE1MCUiPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iZGlsYXRlIiByYWRpdXM9Ii41IiByZXN1bHQ9InNoYWRvd1NwcmVhZE91dGVyMSIvPjxmZU9mZnNldCBpbj0ic2hhZG93U3ByZWFkT3V0ZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZU1vcnBob2xvZ3kgaW49IlNvdXJjZUFscGhhIiByYWRpdXM9IjEiIHJlc3VsdD0ic2hhZG93SW5uZXIiLz48ZmVPZmZzZXQgaW49InNoYWRvd0lubmVyIiByZXN1bHQ9InNoYWRvd0lubmVyIi8+PGZlQ29tcG9zaXRlIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIGluMj0ic2hhZG93SW5uZXIiIG9wZXJhdG9yPSJvdXQiIHJlc3VsdD0ic2hhZG93T2Zmc2V0T3V0ZXIxIi8+PGZlR2F1c3NpYW5CbHVyIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIgc3RkRGV2aWF0aW9uPSIuNSIvPjxmZUNvbG9yTWF0cml4IGluPSJzaGFkb3dCbHVyT3V0ZXIxIiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAuMiAwIi8+PC9maWx0ZXI+PHBhdGggaWQ9InByZWZpeF9fYiIgZD0iTS44ODkgMkgxMS41OCIvPjwvZGVmcz48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZS1kYXNoYXJyYXk9IjUgNiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBzdHJva2U9IiNmZmYiIHN0cm9rZS1vcGFjaXR5PSIuNCIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjwvZz48L3N2Zz4=";function l(){r=this.offsetWidth,e(1,r)}return n.$$set=c=>{"rulerItemProp"in c&&e(0,s=c.rulerItemProp)},n.$$.update=()=>{n.$$.dirty&3&&(r>=s.width||r/2>=s.labelOffset/100*s.width||r/2>=(1-s.labelOffset/100)*s.width?e(2,o=!1):e(2,o=!0))},e(3,i=`--background-image: url(${a})`),[s,r,o,i,l]}class GA extends le{constructor(t){super(),ae(this,t,QA,RA,oe,{rulerItemProp:0},OA)}}function Jl(n,t,e){const i=n.slice();return i[12]=t[e],i}function ql(n){let t,e;return t=new GA({props:{rulerItemProp:n[12]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.rulerItemProp=i[12]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function NA(n){let t,e,i=Pe(n[0]),s=[];for(let r=0;r<i.length;r+=1)s[r]=ql(Jl(n,i,r));const o=r=>T(s[r],1,1,()=>{s[r]=null});return{c(){t=D("div");for(let r=0;r<s.length;r+=1)s[r].c()},m(r,a){O(r,t,a);for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(t,null);e=!0},p(r,[a]){if(a&1){i=Pe(r[0]);let l;for(l=0;l<i.length;l+=1){const c=Jl(r,i,l);s[l]?(s[l].p(c,a),k(s[l],1)):(s[l]=ql(c),s[l].c(),k(s[l],1),s[l].m(t,null))}for(de(),l=i.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<i.length;a+=1)k(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)T(s[a]);e=!1},d(r){r&&z(t),jt(s,r)}}}function HA(n,t,e){var p,g,v,y;let{five:i}=t,{rulerDatas:s}=t,{options:o}=t,r=[];const a=((g=(p=i.getElement())==null?void 0:p.parentElement)==null?void 0:g.clientWidth)||0,l=((y=(v=i.getElement())==null?void 0:v.parentElement)==null?void 0:y.clientHeight)||0,c=(I,M)=>{const B=[[{x:0,y:0},{x:a,y:0}],[{x:0,y:0},{x:0,y:l}],[{x:a,y:0},{x:a,y:l}],[{x:0,y:l},{x:a,y:l}]],P=[];for(let V=0;V<B.length;V++){const L=su([I,M],[B[V][0],B[V][1]],!0);L&&P.push(L)}return P.length===0?!1:P},d=(I,M)=>{const B=I.clone().project(i.camera),P=(B.x+1)/2*a,V=(-B.y+1)/2*l,L=M.clone().project(i.camera),X=(L.x+1)/2*a,Y=(-L.y+1)/2*l,N=Math.sqrt(Math.pow(X-P,2)+Math.pow(Y-V,2));return{startLeft:P,startTop:V,endLeft:X,endTop:Y,distance:N}},h=(I,M,B)=>{const P=i.camera.position,V=i.camera.getWorldDirection(new R.Vector3),L=I.clone().sub(P).normalize().angleTo(V),X=M.clone().sub(P).normalize().angleTo(V),Y=I.distanceTo(M),H=M.clone().sub(M.clone().sub(I).divide(new R.Vector3(2,2,2))).distanceTo(P),{startLeft:_,startTop:Q,endLeft:F,endTop:J,distance:Z}=d(I,M),ce=-((Math.PI/2-Math.atan2(F-_,Q-J))/Math.PI)*180;let se=!0;B||(se=!1),!It(I,B)&&!It(M,B)&&(se=!1),Y<.3&&(se=!1),L>Math.PI/2&&(se=!1),X>Math.PI/2&&(se=!1),H/Y>8&&(se=!1);let we=50,Ce=Z;const pe=c({x:~~_,y:~~Q},{x:~~F,y:~~J});if(pe&&pe.length===1&&(It(I,B)?(Ce=Math.sqrt(Math.pow(pe[0].x-_,2)+Math.pow(pe[0].y-Q,2)),we=Ce/Z*50):It(M,B)&&(Ce=Math.sqrt(Math.pow(pe[0].x-F,2)+Math.pow(pe[0].y-J,2)),we=100-Ce/Z*50)),pe&&pe.length===2){const Ve={x:(pe[0].x+pe[1].x)/2,y:(pe[0].y+pe[1].y)/2};we=Math.sqrt(Math.pow(Ve.x-_,2)+Math.pow(Ve.y-Q,2))/Z*100}return{startLeft:_,startTop:Q,distance:Z,deg:ce,visible:se,labelOffset:we,ruleLength:Y}},u=()=>{const I=i.panoIndex,M=s.find(N=>N.panoIndex===I);if(!M)return e(0,r=[]);if(i.currentMode!==je.Five.Mode.Panorama)return e(0,r=[]);const B=i.camera.position,P=i.camera.getWorldDirection(new R.Vector3),V=M.lines.map(N=>new R.Vector3(N.start[0],-N.start[1],-N.start[2])),L=M.lines.map(N=>new R.Vector3(N.end[0],-N.end[1],-N.end[2])),[X]=V.concat(L).sort((N,H)=>{const _=N.clone().setY(0).sub(B).normalize().angleTo(P.clone().setY(0)),Q=H.clone().setY(0).sub(B).normalize().angleTo(P.clone().setY(0));return _-Q}),Y=M.lines.map(N=>{var Ce,pe;const H=N.start,_=N.end,{startLeft:Q,startTop:F,distance:J,deg:Z,visible:ee,labelOffset:ce,ruleLength:se}=h(new R.Vector3(H[0],-H[1],-H[2]),new R.Vector3(_[0],-_[1],-_[2]),X),we=[];return N.children&&((Ce=N.children)==null?void 0:Ce.length)>0&&((pe=N.children)==null||pe.forEach(Ve=>{const Ae=Ve.start,Ye=Ve.end,{distance:fe}=d(new R.Vector3(Ae[0],-Ae[1],-Ae[2]),new R.Vector3(Ye[0],-Ye[1],-Ye[2]));we.push({width:fe,state:Ve.state})})),{width:J,left:Q,top:F,rotateDeg:Z,state:N.state,children:we,labelOffset:ce,visible:ee,labelElement:o.distanceText(se)}});e(0,r=Y)},m=()=>bo(u),A=Oa(u,80);return bt(()=>{u(),i.on("panoArrived",u),i.on("modeChange",u),i.on("cameraDirectionUpdate",m),i.on("movingToPano",m),i.on("mouseWheel",()=>A()),i.on("pinchGesture",()=>A())}),zt(()=>{i.off("panoArrived",u),i.off("modeChange",u),i.off("cameraDirectionUpdate",m),i.off("movingToPano",m),i.off("mouseWheel",()=>A()),i.off("pinchGesture",()=>A())}),n.$$set=I=>{"five"in I&&e(1,i=I.five),"rulerDatas"in I&&e(2,s=I.rulerDatas),"options"in I&&e(3,o=I.options)},[r,i,s,o]}class _A extends le{constructor(t){super(),ae(this,t,HA,NA,oe,{five:1,rulerDatas:2,options:3})}}let FA=class{constructor(t,e){f(this,"five");f(this,"container",document.createElement("div"));f(this,"panoRulerProData");f(this,"rulerItems");f(this,"state",{enabled:!1,loaded:!1,options:{className:"",distanceText:t=>`${t.toFixed(1)}m`}});var i,s;this.five=t,this.container.classList.add("panoRulerProPlugin-container"),this.container.setAttribute("style","position: absolute;pointer-events: none;width: 100%;height: 100%;left: 0;top: 0;overflow: hidden;"),e&&(e.data&&this.load(e.data),this.state.options=G(G({},this.state.options),e.options||{}),(i=e.options)!=null&&i.className&&this.container.classList.add((s=e.options)==null?void 0:s.className)),this.five.once("modelLoaded",()=>W(this,null,function*(){var o,r;(r=(o=this.five.getElement())==null?void 0:o.parentNode)==null||r.append(this.container)})),this.five.once("dispose",()=>this.dispose())}load(t){return W(this,null,function*(){if(!this.five.work)return;const e=t.data;if(!e)throw new Error("标尺数据依赖不齐全!");this.panoRulerProData=e,this.state.loaded=!0})}enable(){return this.state.loaded?(this.state.enabled||(this.state.enabled=!0,this.render()),!0):!1}disable(){return this.state.enabled&&(this.state.enabled=!1,this.render()),!0}render(){return W(this,null,function*(){var t;if(this.state.enabled){if(!this.panoRulerProData||!this.container)return;this.rulerItems=new _A({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 WA=(n,t)=>new FA(n,t),YA="data:image/png;base64,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";function UA(){const n=document.createElement("div"),t=document.createElement("i"),e=document.createElement("span");return n.appendChild(t),n.appendChild(e),n.style.position="relative",n.style.width="100%",n.style.display="flex",n.style.flexDirection="column",n.style.alignItems="center",n.style.marginTop=`${150/16}rem`,n.style.opacity="0",n.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(${YA})`,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(i){i.appendChild(n)},dispose(){n.remove()},setRoom(i){e.innerHTML=i.name+" "+Math.floor(i.size/1e6)+"㎡"},show(){n.style.opacity="1"},hide(){n.style.opacity="0"}}}const XA=new E.TextureLoader;function vn(n){return W(this,null,function*(){return new Promise((t,e)=>{XA.load(n,t,void 0,e)}).then(t=>(t.encoding=E.sRGBEncoding,t))})}const Os={userAction:!0};class ZA extends yi{constructor(e,i){super(e,i);f(this,"state",{visible:!0,enabled:!0,config:{compassImageUrl:this.absoluteUrl("/release/web/v3/north-point-circle.96498e69.png"),entryDoorImageUrl:this.absoluteUrl("/release/web/enterDoor.831b8208.png")}});f(this,"data");f(this,"group",new E.Group);f(this,"roomInfoInstance");f(this,"roomInfoWrapperInstance");f(this,"compassMeshTween");f(this,"compassMesh");f(this,"entryDoorMesh");f(this,"dispose",()=>{var e,i,s,o;this.five.scene.remove(this.group),this.group.remove(...this.group.children),(i=(e=this.compassMesh)==null?void 0:e.material.map)==null||i.dispose(),(o=(s=this.entryDoorMesh)==null?void 0:s.material.map)==null||o.dispose(),this.five.off("dispose",this.dispose),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_addEventListener",()=>{this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive),this.five.on("modeChange",this.onFiveModeChange),this.five.on("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_removeEventListener",()=>{this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("modeChange",this.onFiveModeChange),this.five.off("cameraDirectionUpdate",this.onFiveCameraDirectionUpdate)});f(this,"_enable",()=>{this.five.scene.add(this.group),this.init(),this.onFivePanoArrived(this.five.panoIndex||0),this._addEventListener()});f(this,"_disable",()=>{this._clearCompassIfNeed(),this._clearEntryDoorIfNeed(),this.five.scene.remove(this.group),this._removeEventListener()});f(this,"_toggleVisible",()=>{this.group.visible=this.state.visible,this.five.needsRender=!0});f(this,"_clearCompassIfNeed",()=>{var e;this.compassMesh&&(this.group.remove(this.compassMesh),(e=this.compassMesh.material.map)==null||e.dispose(),this.compassMesh=null)});f(this,"_clearEntryDoorIfNeed",()=>{var e;this.entryDoorMesh&&(this.group.remove(this.entryDoorMesh),(e=this.entryDoorMesh.material.map)==null||e.dispose(),this.entryDoorMesh=null),this.roomInfoInstance&&(this.roomInfoInstance.dispose(),this.roomInfoInstance=null),this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.dispose(),this.roomInfoWrapperInstance=null)});f(this,"onFivePanoWillArrive",e=>{var i,s;e!==this.five.panoIndex&&((i=this.compassMeshTween)==null||i.dispose(),(s=this.compassMesh)==null||s.material.setValues({opacity:0}))});f(this,"onFivePanoArrived",e=>{var s,o,r,a,l,c,d;const i=(r=(o=(s=this.five.work)==null?void 0:s.observers)==null?void 0:o[e])==null?void 0:r.standingPosition;if(this.compassMesh&&(this.compassMesh.position.copy(i.clone().setY(i.y+.01)),this.compassMesh.material.opacity===0&&((a=this.compassMeshTween)==null||a.dispose(),this.compassMeshTween=vo(1e3).onUpdate(({progress:h})=>{var u;(u=this.compassMesh)==null||u.material.setValues({opacity:h}),this.five.needsRender=!0}).play())),this.entryDoorMesh){const u=new E.Vector3(this.data.entrance.position.x,this.data.entrance.position.y,this.data.entrance.position.z).clone().setY(i.y).sub(i).normalize(),m=i.clone().add(u.clone().multiplyScalar(.7)).setY(i.y+.01);this.entryDoorMesh.rotation.z=new E.Vector3(0,0,-1).angleTo(u),this.entryDoorMesh.position.copy(m),((l=this.data)==null?void 0:l.room_observers[e].room.type)===1?(c=this.entryDoorMesh)==null||c.material.setValues({opacity:1}):(d=this.entryDoorMesh)==null||d.material.setValues({opacity:0})}this.roomInfoInstance&&this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.css3DObject.position.copy(i.clone().setY(i.y+.01)),this.roomInfoInstance.setRoom(this.data.room_observers[e].room)),this.five.needsRender=!0});f(this,"onFiveCameraDirectionUpdate",({longitude:e,latitude:i})=>{var s,o;this.roomInfoWrapperInstance&&(this.roomInfoWrapperInstance.css3DObject.rotation.z=e,i>.66&&this.five.getCurrentState().mode==="Panorama"?(s=this.roomInfoInstance)==null||s.show():(o=this.roomInfoInstance)==null||o.hide())});f(this,"onFiveModeChange",(e,i,s,o,r)=>{e!==i&&this.setState({visible:e===je.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),i||{})})}enable(e=Os){this.setState({enabled:!0},e)}disable(e=Os){this.setState({enabled:!1},e)}show(e=Os){if(this.state.enabled)return this.setState({visible:!0},e),Promise.resolve()}hide(e=Os){if(this.state.enabled)return this.setState({visible:!1},e),Promise.resolve()}setState(e,i={userAction:!0}){var o,r;const s=JSON.parse(JSON.stringify(this.state));this.state={visible:(o=e.visible)!=null?o:s.visible,enabled:(r=e.enabled)!=null?r:s.enabled,config:G(G({},s.config),e.config||{})},this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i.userAction}),e.enabled===!0&&(this._enable(),this.hooks.emit("enable",i)),e.enabled===!1&&(this._disable(),this.hooks.emit("disable",i)),e.visible===!1&&(this._toggleVisible(),this.hooks.emit("hide",i)),e.visible===!0&&(this._toggleVisible(),this.hooks.emit("show",i)),e.config&&this.init()}load(e,i,s=!0){return W(this,null,function*(){const o=yield this.formatData(e);JSON.stringify(this.data)!==JSON.stringify(o)&&(this.hooks.emit("dataChange",o,this.data),this.data=G({},o),this.init(),i&&this.setState(i,{userAction:s}),this.hooks.emit("dataLoaded",this.data))})}formatData(e){return e.version&&e.data?Promise.resolve(e.data):Promise.resolve(e)}init(){return W(this,null,function*(){var s,o,r,a;const e=(o=(s=this.data)==null?void 0:s.north_rad)!=null?o:null;this._clearCompassIfNeed(),e!==null&&(this.compassMesh=yield this.loadCompassMesh(),this.compassMesh.rotateX(-Math.PI/2),this.compassMesh.rotateZ(e-Math.PI/2),this.group.add(this.compassMesh));const i=(a=(r=this.data)==null?void 0:r.entrance)!=null?a:null;this._clearEntryDoorIfNeed(),i!==null&&(this.entryDoorMesh=yield this.loadEntryDoorMesh(),this.roomInfoWrapperInstance=this.loadRoomInfo(),this.roomInfoInstance=UA(),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 W(this,null,function*(){const e=this.state.config.compassImageUrl,i=yield vn(e),s=new E.CircleGeometry(.7,32),o=new E.MeshBasicMaterial({map:i,transparent:!0,opacity:0,depthTest:!1}),r=new E.Mesh(s,o);return r.name="pano-compass-mesh",r})}loadEntryDoorMesh(){return W(this,null,function*(){const e=this.state.config.entryDoorImageUrl,i=yield vn(e),s=new E.PlaneGeometry(.2,.16),o=new E.MeshBasicMaterial({map:i,transparent:!0,opacity:.8,depthTest:!1}),r=new E.Mesh(s,o);return r.name="pano-compass-entry-door",r})}loadRoomInfo(){const e=[new E.Vector3(-.7,0,-.7),new E.Vector3(.7,0,-.7),new E.Vector3(.7,0,.7),new E.Vector3(-.7,0,.7)];return yo(this.five).create3DDomContainer(e)}}const JA=(n,t)=>new ZA(n,t),qA=1,KA=3,$A=new R.Color(16777215),ev=new R.Color(6522623),tv=new R.Color(16777215),iv=new R.Color(6522623),nv=6,sv=8,ov="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAIVBMVEUAAAD////////////////////////////////////////PIev5AAAACnRSTlMAG/Py2baba05un7UgfgAAAHJJREFUKM9joBpgLHVSCRdA4metAoJlCJHmVWBgAeNzroKCCVCBLpjACqgJVjCBxRBT2FbBQQJYQAohsBAsUIUQWA4WiEIILAULeCEEloAFtBACizAEMLRgGIphLabDMJ2O6TlM72MGECIIMQIZIxqoBQCPvpJ/e9FaAAAAAABJRU5ErkJggg==",ru=new R.TextureLoader().load(ov),rv={pointTexture:ru,pointSize:nv,lineWidth:qA,lineColor:$A,pointColor:tv,lineRenderOrder:20,pointsRenderOrder:20},av={pointTexture:ru,pointSize:sv,lineWidth:KA,lineColor:ev,pointColor:iv,lineRenderOrder:10,pointsRenderOrder:10};function lv(n,t,e){var d,h,u,m,A;const i=(d=e==null?void 0:e.lineWidth)!=null?d:2,s=(h=e==null?void 0:e.lineColor)!=null?h:new R.Color(16777215),o=(u=e==null?void 0:e.pointSize)!=null?u:5,r=(m=e==null?void 0:e.lineRenderOrder)!=null?m:10,a=(A=e==null?void 0:e.lineRenderOrder)!=null?A:20,l=new hh.Line(n,t);l.setMaterial({linewidth:i,color:s}),l.line.material.depthTest=!1,l.line.material.transparent=!0,l.line.renderOrder=r,l.points.renderOrder=a;const c=l.points.material;return c.depthTest=!1,c.size=o,e!=null&&e.pointColor&&c.color.set(e.pointColor).convertSRGBToLinear(),e!=null&&e.pointTexture&&(c.map=e.pointTexture),l}function Kl(n,t){const[e,i]=n.points,s=t==="light"?av:rv,o=lv(e.position,i.position,s);return o.name="normalLine_"+n.id,o}function zi(n){const{x:t,y:e,z:i}=n;return!(Math.abs(t)>1||Math.abs(e)>1||Math.abs(i)>1)}function Zs(n){const{z:t}=n;return!(Math.abs(t)>1)}function cv(n){const t=document.createElement("div");return t.setAttribute("style","backdrop-filter: blur(4px);-webkit-backdrop-filter: blur(4px);-webkit-tap-highlight-color: rgba(0,0,0,0);"),t.style.width="max-content",t.style.padding="3px 6px",t.style.lineHeight="1",t.style.textAlign="center",t.style.transform="translate(-50%, -50%)",t.style.fontSize="14px",t.style.color="#fff",t.style.cursor="pointer",t.style.userSelect="none",n!=null&&n.style&&Object.assign(t.style,n==null?void 0:n.style),t}function dv(n){const t=document.createElement("div");return n!=null&&n.id&&(t.id=n==null?void 0:n.id),t.classList.add("five-plugin-measure__distance"),t.style.position="absolute",t.style.left="0",t.style.top="0",t.style.width="0",t.style.height="0",t.style.transform="translate(-10px, -10px)",t.style.transformOrigin="left top",n!=null&&n.style&&Object.assign(t.style,n.style),t}class au{constructor(t){f(this,"ndcPosition");f(this,"contentDom");f(this,"containerDom");f(this,"params");f(this,"canSelected");f(this,"handleClick",t=>{var e,i;(i=(e=this.params).clickCallback)==null||i.call(e,t,this)});this.params=t,this.contentDom=cv({style:t.contentStyle}),this.containerDom=dv({style:t.containerStyle}),this.setCanSelect(!0)}setCanSelect(t){this.canSelected=t,this.containerDom.style.pointerEvents=t?"all":"none"}highlight(){this.contentDom.style.border="0.5px solid #95AEFF",this.contentDom.style.background="linear-gradient(90deg, #95AEFF 0%, #6386FF 100%)"}unHighlight(){this.contentDom.style.border="0.5px solid rgba(255,255,255,0.6)",this.contentDom.style.background="rgba(195,195,195,0.70)"}appendTo(t){t.appendChild(this.containerDom),this.containerDom.addEventListener("click",this.handleClick)}remove(){this.contentDom.removeEventListener("click",this.handleClick),this.containerDom.remove()}show(){this.containerDom.style.visibility="visible"}hide(){this.containerDom.style.visibility="hidden"}tempHide(){this.containerDom.style.opacity="0"}tempShow(){this.containerDom.style.opacity="1"}updateDomPosition(t){if(!this.ndcPosition){this.tempHide();return}const e=t.getElement();if(!e)return;const i=e.clientWidth,s=e.clientHeight,o=this.ndcPosition.clone().project(t.camera);if(!Zs(o)){this.tempHide();return}const r=(o.x+1)/2*i,a=-(o.y-1)/2*s;this.containerDom.style.transform=`translate(${r}px, ${a}px)`,this.tempShow()}}class hv extends au{constructor(e){var i;e.contentStyle=ve(G({},e.contentStyle),{background:"rgba(195,195,195,0.70)",border:"0.5px solid rgba(255,255,255,0.6)",borderRadius:"999px"});super(e);f(this,"line");this.line=e.line,(i=this.params.userDistanceItem)!=null&&i.element?this.containerDom.appendChild(this.params.userDistanceItem.element):this.containerDom.appendChild(this.contentDom)}update(e){var V;if(this.line.mesh.visible===!1){this.hide();return}const i=e.getElement();if(!i)return;const s=i.clientWidth,o=i.clientHeight,r=s/2,a=o/2;if(this.line.points.length<2)return;const[l,c]=this.line.points,d=l.position.clone().project(e.camera),h=c.position.clone().project(e.camera),u=Ai(l.position,c.position).clone().project(e.camera),m=new R.Vector2(d.x*r,d.y*a),A=new R.Vector2(h.x*r,h.y*a),p=m.distanceTo(A);if((()=>!(Math.abs(d.z)>1||Math.abs(h.z)>1||!Zs(d)&&!Zs(h)||!Zs(u)||p===0))()===!1){this.hide();return}const v=(u.x+1)/2*s,y=-(u.y-1)/2*o,M=-(Math.atan((m.y-A.y)/(m.x-A.x))*180)/Math.PI,B=this.containerDom.parentElement&&this.contentDom.clientWidth>p?-20:0;this.containerDom.style.transform=`translate(${v}px, ${y}px) rotate(${M}deg) translateY(${B}px)`,this.show(),(V=this.params.userDistanceItem)==null||V.update({line:this.line,polyline:this.line.getPolyline()});const P=this.getCurrentContent();this.contentDom.innerText=P}getCurrentContent(){var l,c,d,h;if(this.line.points.length<2)return"";const[e,i]=this.line.points,s=e.position.clone().distanceTo(i.position),o=(c=this.line.text)!=null?c:(l=this.line.model.config)==null?void 0:l.defaultText,r=(h=(d=this.line.model.config)==null?void 0:d.getDistanceText)==null?void 0:h.call(d,s),a=o!=null?o:r;return a!=null?a:s.toFixed(2)+"m"}}class ii{constructor(t,e,i){f(this,"id");f(this,"selected",!1);f(this,"text");f(this,"type","line");f(this,"model");f(this,"mesh");f(this,"points");f(this,"lightMesh");f(this,"hook");f(this,"distanceItem");f(this,"polyline");f(this,"visible");var s;if(this.id=lt(),this.model=i,t.id===e.id)throw new Error("无效的线段, 一个点无法构成线段");typeof i.config.defaultText=="string"&&(this.text=i.config.defaultText),this.hook=new je.Subscribe,this.points=[t,e],this.mesh=Kl(this,"normal"),this.lightMesh=Kl(this,"light"),this.distanceItem=new hv({line:this,clickCallback:()=>this.hook.emit("selected",this),userDistanceItem:(s=this.model.config)!=null&&s.userDistanceItemCreator?this.model.config.userDistanceItemCreator():void 0})}hide(){this.visible&&(this.visible=!1,this.mesh.visible=!1,this.distanceItem.hide())}show(){this.visible||(this.visible=!0,this.mesh.visible=!0,this.distanceItem.show())}setPoints(t,e){this.points[0].position.copy(t),this.points[1].position.copy(e),this.mesh.setPoints(t,e)}remove(){this.mesh.parent&&this.mesh.parent.remove(this.mesh),this.distanceItem.remove()}clear(){this.selected=!1,this.polyline=void 0}isEmpty(){return this.points.length===0}getPolyline(){if(this.polyline)return this.polyline;const t=this.model.polylines.find(e=>e.lines.includes(this));if(t)return this.polyline=t,t}findAnotherPoint(t){return this.points.find(({id:e})=>e!==t.id)}setText(t){this.text=t,this.hook.emit("textChanged",t)}toJson(){return{id:this.id,points:this.points.map(t=>t.toJson()),text:this.text}}clone(){const t=new ii(this.points[0].clone(),this.points[1].clone(),this.model);return t.text=this.text,t}}class ft{constructor(t){f(this,"id");f(this,"position");f(this,"type","point");if(this.id=lt(),this.position=new R.Vector3,Array.isArray(t))this.position.fromArray(t);else if(typeof t=="object"&&t.isVector3)this.position.copy(t);else throw new Error("position must be Vector3 or number[]")}toJson(){return{id:this.id,position:this.position.toArray()}}clone(){return new ft(this.position)}}const Bs=n=>n.preventDefault();let ko=class{constructor(t){f(this,"model");f(this,"five");f(this,"group");f(this,"config");f(this,"dashed");f(this,"perpendicularDashed");f(this,"disposed",!1);f(this,"isMobile");f(this,"editParams");f(this,"magnifierParams");f(this,"mouseGroup");f(this,"container");f(this,"hook");f(this,"magnifier");f(this,"userDistanceItemCreator");f(this,"getMeasureType");f(this,"updateDistanceUI",()=>{this.dashed.distanceItem.update(this.five),this.model.getAllLines().forEach(t=>t.distanceItem.update(this.five))});f(this,"updateAreaUI",()=>{this.dashed.distanceItem.update(this.five),this.model.getAllAreas().forEach(t=>{t.areaItem.updateArea(this.five),t.polyline.lines.forEach(e=>{e.distanceItem.update(this.five)})})});var i,s;this.five=t.five,this.hook=t.hook,this.model=t.model,this.getMeasureType=t.getMeasureType,this.config=t.config,this.magnifierParams=t.magnifierParams,this.editParams=t.editParams,this.magnifier=t.magnifier,this.container=t.container,this.isMobile=(s=(i=t.openParams)==null?void 0:i.isMobile)!=null?s:!1,this.userDistanceItemCreator=t.userDistanceItemCreator,this.group=t.group,this.mouseGroup=t.mouseGroup,this.dashed=new ii(new ft([0,0,0]),new ft([0,0,0]),this.model),this.dashed.distanceItem.setCanSelect(!1),this.dashed.mesh.setMaterial({dashed:!0,dashScale:100}),this.dashed.mesh.name="dashLine",this.perpendicularDashed=new ii(new ft([0,0,0]),new ft([0,0,0]),this.model),this.perpendicularDashed.distanceItem.setCanSelect(!1),this.perpendicularDashed.mesh.setMaterial({dashed:!0,dashScale:40,color:new R.Color(10218089)}),this.perpendicularDashed.mesh.name="perpendicularDashLine";const e=this.five.getElement();e&&(e.addEventListener("touchstart",Bs),e.addEventListener("contextmenu",Bs))}get currentMeasureType(){return this.getMeasureType()}removeLine(t){this.group.remove(t.mesh,t.lightMesh),t.distanceItem.remove(),this.five.needsRender=!0}updateMouseGroup(t,e){if(!t)return this.mouseGroup;if(this.mouseGroup.position.copy(t.point),e)this.mouseGroup.quaternion.copy(e.quaternion);else if(t.face){const s=t.face.normal.clone().multiplyScalar(.05),r=t.point.clone().add(s).clone().add(s);this.mouseGroup.lookAt(r)}return this.mouseGroup}dispose(){this.disposed=!0,this.magnifier.disable(),this.model.getAllLines().forEach(e=>this.removeLine(e)),this.model.areas.forEach(e=>e.remove());const t=this.five.getElement();t&&(t.removeEventListener("touchstart",Bs),t.removeEventListener("contextmenu",Bs))}},Oi=class{constructor(t){f(this,"id",lt());f(this,"lines",[]);f(this,"visiblePanoIndexes");f(this,"model");f(this,"type","polyline");f(this,"hook",new je.Subscribe);this.model=t.model}get points(){const t=new Set;return this.lines.forEach(e=>{t.add(e.points[0]),t.add(e.points[1])}),Array.from(t)}addLine(t){if(this.includes(t)){console.error(new Error("不能重复添加线段"));return}const e=this.getLastPoint(),i=e&&t.findAnotherPoint(e);if(e&&!i){console.error(new Error("传入线段无法与当前折线进行连接"));return}this.lines.push(t),this.hook.emit("lineAdded",t)}removeLine(t){if(this.lines.length===0)return;if(!this.isLastLine(t)){console.error(new Error("传入线段不是当前折线的最后一段"));return}this.lines.pop()&&this.hook.emit("lineRemoved",t)}isLastLine(t){const e=this.getLastLine();return e?t.id===e.id:!1}getLastLine(){return this.lines.slice(-1)[0]}getPointLength(){return this.lines.length+1}clear(){const t=this.lines.slice();this.lines.length=0,t.reduceRight((e,i)=>this.hook.emit("lineRemoved",i),void 0)}overlapWith(t){return t.type==="point"?this.includes(t):t.type==="line"?t.points.some(e=>this.includes(e)):t.type==="polyline"?t.points.some(e=>this.includes(e)):!0}includes(t){return t.type==="point"?this.points.find(({id:e})=>e===t.id)!==void 0:t.type==="line"?this.lines.find(({id:e})=>e===t.id)!==void 0:!1}isEmpty(){return this.lines.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}=s(),i=t.lines.map(o=>{const[r,a]=o.points,l=e(r),c=e(a);if(!l||!c)throw new Error("线上的点不存在");const d=new ii(l,c,this.model);return d.id=o.id,d.text=o.text,d});this.lines.push(...i),this.visiblePanoIndexes=t.visiblePanoIndexes;function s(){const o=new Map;function r(l){const c=o.get(l.id);if(c)return c;const d=new ft(l.position);return d.id=l.id,o.set(l.id,d),d}function a(){return Array.from(o.values())}return{getPoint:r,getAllPoints:a}}return this}replace(t){this.id=t.id,this.clear(),this.lines.push(...t.lines)}};class lu extends R.Object3D{constructor(){super()}add(...t){if(t.length===0)return this;const e=t.filter(Boolean);return super.add(...e)}remove(...t){if(t.length===0)return this;const e=t.filter(Boolean);return super.remove(...e)}removeFromParent(){const t=this.parent;return t!==null&&t.remove(this),this}}function uv(n){const t=[...new Set(n)];if(t.length<3)return;t.at(-1).equals(t[0])||t.push(t[0]);const e=t.flatMap(r=>[r.x,r.y,r.z]),i=new E.Float32BufferAttribute(e,3),s=gf(e,void 0,3),o=new E.BufferGeometry;return o.setAttribute("position",i),o.setIndex(s),o.name="PolygonGeometry",o}const fv=new E.BufferGeometry;class cu extends lu{constructor(e){super();f(this,"isPolygonMesh",!0);f(this,"geometry",new E.BufferGeometry);f(this,"isBlank",!0);f(this,"points",[]);const i=new E.MeshBasicMaterial({color:4090367,transparent:!0,side:E.DoubleSide,depthTest:!0,opacity:.5}),s=new E.MeshBasicMaterial({color:16777215,transparent:!0,side:E.DoubleSide,depthTest:!1,depthWrite:!1,opacity:.3}),o=new E.Mesh(this.geometry,i),r=new E.Mesh(this.geometry,s);o.renderOrder=1,r.renderOrder=0,e&&this.updatePoints(e),this.add(o,r)}updatePoints(e){this.points=e;const i=uv(e);i?(this.geometry.copy(i),this.isBlank=!1):(this.geometry.copy(fv),this.isBlank=!0)}}function mv(n){const t=pv(n);if(t.length===0)return;let e=0,i=new R.Vector3;for(const[s,o,r]of t){const a=du(s,o,r),l=gv(s,o,r,a);e+=a,i.add(l)}return i=i.divideScalar(e),{center:i,area:e}}function du(n,t,e){return t.clone().sub(n).cross(e.clone().sub(n)).length()/2}function gv(n,t,e,i){const s=i!=null?i:du(n,t,e);return Ai(n,t,e).multiplyScalar(s)}function pv(n){var s;const t=n.getAttribute("position"),e=(s=n.getIndex())==null?void 0:s.array;if(!t||!e)return[];let i=[];for(let o=0;o<e.length;o+=3){const r=e[o],a=e[o+1],l=e[o+2],c=new R.Vector3().fromArray([t.getX(r),t.getY(r),t.getZ(r)]),d=new R.Vector3().fromArray([t.getX(a),t.getY(a),t.getZ(a)]),h=new R.Vector3().fromArray([t.getX(l),t.getY(l),t.getZ(l)]);i.push([c,d,h])}return i}class Av extends au{constructor(e){e.containerStyle=ve(G({},e.containerStyle),{zIndex:"1"}),e.contentStyle=ve(G({},e.contentStyle),{background:"#6386FF",borderRadius:"2px"});super(e);f(this,"area");this.area=e.area,this.containerDom.appendChild(this.contentDom)}updateArea(e,i){var l,c;const s=i!=null?i:this.area.polygon.geometry,o=mv(s);if(!o){this.ndcPosition=null,this.updateDomPosition(e);return}const{area:r,center:a}=o;this.ndcPosition=a,this.updateDomPosition(e),(c=(l=this.area.model)==null?void 0:l.config)!=null&&c.getAreaText?this.contentDom.innerText=this.area.model.config.getAreaText(r):this.updateAreaText(r,{fix:2})}updateAreaText(e,i){const{unit:s="m²",fix:o}=i!=null?i:{};this.contentDom.innerText=`${kh(o)?e:e.toFixed(o)}${s}`}}class ea{constructor(t,e){f(this,"id",lt());f(this,"selected",!1);f(this,"text");f(this,"type","area");f(this,"lightMesh");f(this,"areaItem");f(this,"hook",new je.Subscribe);f(this,"model");f(this,"polygon");f(this,"points",[]);f(this,"planeHelper");f(this,"polyline");f(this,"meshContainer");f(this,"domContainer");f(this,"five");f(this,"updateDom",()=>{this.five&&(this.polyline.lines.forEach(t=>t.distanceItem.update(this.five)),this.areaItem.updateDomPosition(this.five))});var i;t&&(this.points=t),this.model=e.model,this.polygon=new cu(t),this.polyline=new Oi({model:e.model}),this.areaItem=new Av({area:this,clickCallback:(s,o)=>{const r=s.clientX+"px",a=s.clientY+"px";this.hook.emit("selected",this,{left:r,top:a})}}),this.domContainer=e.domContainer||null,this.meshContainer=e.meshContainer||null,this.five=e.five||null,this.areaItem.appendTo(this.domContainer),(i=this.five)==null||i.on("cameraUpdate",this.updateDom)}get isClosed(){var t;return this.points.length>=4&&((t=this.points.at(0))==null?void 0:t.equals(this.points.at(-1)))}addPoints(t){var s;this.points=this.points.concat(t);const e=this.points.at(-2),i=this.points.at(-1);if(e&&i){const o=new ii(new ft(e),new ft(i),this.polyline.model);this.polyline.addLine(o),this.meshContainer.add(o.mesh),this.five&&(o.distanceItem.setCanSelect(!1),o.distanceItem.appendTo(this.domContainer),o.distanceItem.update(this.five))}(s=this.meshContainer)!=null&&s.children.includes(this.polygon)||this.meshContainer.add(this.polygon),this.polygon.updatePoints(this.points),this.areaItem.updateArea(this.five),this.points.length===3?this.planeHelper=new E.Plane().setFromCoplanarPoints(this.points[0],this.points[1],this.points[2]):this.points.length<3&&(this.planeHelper=null)}popPoint(){this.points.pop();const t=this.polyline.lines.pop();t==null||t.remove(),this.polygon.updatePoints(this.points),this.areaItem.updateArea(this.five),this.points.length<3&&(this.planeHelper=null)}complete(){this.points.at(-1).equals(this.points[0])||this.addPoints(this.points[0])}hideArea(){this.polygon.visible=!1,this.areaItem.hide()}showArea(){this.polygon.visible=!0,this.areaItem.show()}projectPoint(t){return t&&(this.planeHelper?this.planeHelper.projectPoint(t,new E.Vector3):t)}remove(){this.polygon.removeFromParent(),this.areaItem.remove(),this.polyline.lines.forEach(t=>t.remove())}dispose(){this.remove(),this.model.areas.splice(this.model.areas.indexOf(this),1),this.planeHelper=null,this.five.off("cameraUpdate",this.updateDom),this.five.needsRender=!0}}function $l(n,t){const e=Array.isArray(t)?t:[t];for(let i=0;i<e.length;i++){const s=e[i],o=n.start,r=n.end,a=s.start,l=s.end;if(Un(o,a)||Un(o,l)||Un(r,a)||Un(r,l)||Un(o,r))continue;const c=Vs(o,r,a),d=Vs(o,r,l),h=Vs(a,l,o),u=Vs(a,l,r);if(c!==d&&h!==u||c===0&&Rs(o,r,a)||d===0&&Rs(o,r,l)||h===0&&Rs(a,l,o)||u===0&&Rs(a,l,r))return!0}return!1}function Un(n,t){return n.x===t.x&&n.z===t.z&&n.y===t.y}function Vs(n,t,e){const i=(e.z-n.z)*(t.x-n.x)-(t.z-n.z)*(e.x-n.x);return i===0?0:i<0?2:1}function Rs(n,t,e){return t.x<=Math.max(n.x,e.x)&&t.x>=Math.min(n.x,e.x)&&t.z<=Math.max(n.z,e.z)&&t.z>=Math.min(n.z,e.z)}const hu="ontouchstart"in window||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0;function ta(n){const{x:t,y:e}=n.center,{clientWidth:i,clientHeight:s}=n.target,o=n.target.getBoundingClientRect(),r=new R.Vector2(t,e).sub(new R.Vector2(o.left,o.top)),a=new R.Vector2(r.x/i*2-1,-(r.y/s)*2+1);return{point:r,ndcPoint:a}}function xr(n,t){const e=ta(t).ndcPoint,i=new R.Raycaster;return i.setFromCamera(e,n.camera),n.model.intersectRaycaster(i)}const en=()=>!1;class vv{constructor(t,e){f(this,"hook",new je.Subscribe);f(this,"outOfFive",!1);f(this,"five");f(this,"hammer");f(this,"mode");f(this,"pointSelectorHelper");f(this,"enabled",!1);f(this,"pressDown",!1);f(this,"adherePoints",null);f(this,"adherePointsRadius",.1);f(this,"lastFiveHelperVisible");f(this,"select",t=>{t&&this.updatePointSelectorHelperIntersect(t);const e=this.hook.emit("wantsSelect",this.position);return e||(this.pointSelectorHelper.hide(),this.hook.emit("select",this.position)),!e});f(this,"onEnter",()=>{this.pointSelectorHelper.show(),this.outOfFive=!1,this.hook.emit("intersectionUpdate",this.position)});f(this,"onLeave",()=>{this.pointSelectorHelper.hide(),this.outOfFive=!0,this.hook.emit("intersectionUpdate",null)});f(this,"onTap",t=>{const[e]=xr(this.five,t);e!=null&&e.face&&this.select(e)});f(this,"onPan",t=>{if(!this.pressDown)return;const[e]=xr(this.five,t);e!=null&&e.face&&this.intersectionOnModelUpdate(e)});f(this,"onPress",t=>{const[e]=xr(this.five,t);e!=null&&e.face&&(this.pressDown=!0,this.intersectionOnModelUpdate(e))});f(this,"onPanEnd",()=>{this.pressDown&&(this.pressDown=!1,this.select())});f(this,"intersectionOnModelUpdate",t=>{this.pointSelectorHelper.show(),this.updatePointSelectorHelperIntersect(t)});f(this,"updateByMousePosition",t=>{const e=this.five.getElement();if(!e)return;const{clientX:i,clientY:s}=t,o={x:i/e.clientWidth,y:1-s/e.clientHeight};this.updateByNdcPosition(o)});f(this,"updateByNdcPosition",t=>{const e=Ch(this.five,t),i=(()=>e?ve(G({},e),{isVirtual:!1}):ve(G({},yv(this.five,t)),{isVirtual:!0}))();this.updatePointSelectorHelperIntersect(i)});f(this,"updatePointSelectorHelperIntersect",t=>{var s;const e=G({},t);let i=!1;if(((s=this.adherePoints)==null?void 0:s.length)>0&&typeof this.adherePointsRadius=="number"){for(const o of this.adherePoints)if(o.distanceTo(t.point)<this.adherePointsRadius){e.point=o.clone(),i=!0;break}}this.pointSelectorHelper.updateWithIntersect(e,{emitEvent:!1}),this.hook.emit("intersectionUpdate",e,i)});f(this,"onFiveWantsPanGesture",()=>{if(this.pressDown)return!1});f(this,"renderScreenCenter",()=>{this.updateByNdcPosition({x:.5,y:.5})});f(this,"emitIntersectionUpdate",t=>{this.hook.emit("intersectionUpdate",t)});var o,r;this.five=t;const i=(o=e==null?void 0:e.mode)!=null?o:"auto";i==="auto"?this.mode=hu?"fixed":"cursor":this.mode=i;const s={autoFixPCPosition:this.mode==="cursor",initialPosition:this.mode==="fixed"?{left:"35%",top:"20%"}:void 0};this.pointSelectorHelper=new Mh(t,ve(G({},e==null?void 0:e.pointSelectorHelperParams),{magnifierParams:G(G({},s),(r=e==null?void 0:e.pointSelectorHelperParams)==null?void 0:r.magnifierParams)})),this.pointSelectorHelper.hide()}get position(){return this.outOfFive?null:this.pointSelectorHelper.position}enable(){if(this.enabled)return;this.enabled=!0,this.pointSelectorHelper.enable();const t=this.five.getElement();if(!t)throw new Error("five element not found");this.hammer||(this.hammer=new ls(t)),this.mode==="cursor"?(this.five.on("intersectionOnModelUpdate",this.intersectionOnModelUpdate),this.five.on("wantsPanGesture",this.onFiveWantsPanGesture),this.five.on("wantsMoveToPano",en),this.five.on("wantsChangeMode",en),this.five.on("wantsTapGesture",en),t.addEventListener("mousemove",this.updateByMousePosition),t.addEventListener("mouseenter",this.onEnter),t.addEventListener("mouseout",this.onLeave),this.hammer.on("tap",this.onTap),this.hammer.on("pan",this.onPan),this.hammer.on("press",this.onPress),this.hammer.on("panend",this.onPanEnd)):this.mode==="fixed"&&(this.five.on("panGesture",this.renderScreenCenter),this.five.on("interiaPan",this.renderScreenCenter),this.renderScreenCenter(),this.pointSelectorHelper.show()),this.pointSelectorHelper.hooks.on("intersectionUpdate",this.emitIntersectionUpdate),this.lastFiveHelperVisible=this.five.helperVisible,this.five.helperVisible=!1}disable(){if(!this.enabled)return;this.enabled=!1,this.pointSelectorHelper.disable();const t=this.five.getElement();this.five.off("intersectionOnModelUpdate",this.intersectionOnModelUpdate),this.five.off("wantsPanGesture",this.onFiveWantsPanGesture),this.five.off("wantsMoveToPano",en),this.five.off("wantsChangeMode",en),this.five.off("wantsTapGesture",en),this.five.helperVisible=this.lastFiveHelperVisible,t==null||t.removeEventListener("mousemove",this.updateByMousePosition),t==null||t.removeEventListener("mouseenter",this.onEnter),t==null||t.removeEventListener("mouseout",this.onLeave),this.hammer.off("tap",this.onTap),this.hammer.off("pan",this.onPan),this.hammer.off("press",this.onPress),this.hammer.off("panend",this.onPanEnd),this.five.off("panGesture",this.renderScreenCenter),this.five.off("interiaPan",this.renderScreenCenter),this.pointSelectorHelper.hooks.off("intersectionUpdate",this.emitIntersectionUpdate)}dispose(){this.disable(),this.pointSelectorHelper.dispose()}setAdherePoints(t,e){t?this.adherePoints=Array.isArray(t)?t:[t]:this.adherePoints=null,typeof e=="number"&&(this.adherePointsRadius=e)}}function bv(n,t){const{x:e,y:i}=t,s=e*2-1,o=i*2-1,r=new R.Vector2().fromArray([s,o]),a=new R.Raycaster;return a.setFromCamera(r,n.camera),a}function yv(n,t){const e=bv(n,t),i=3,s=new R.Vector3().addVectors(e.ray.origin,e.ray.direction.clone().normalize().multiplyScalar(i)),o=e.ray.direction.clone().negate();return{distance:i,point:s,object:new R.Object3D,face:new R.Face3(0,0,0,o)}}const wv=`
288
288
  <svg class="fpm__delete-icon" width="16px" height="17px" viewBox="0 0 16 17" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
289
289
  <defs>
290
290
  <linearGradient x1="22.185491%" y1="100%" x2="66.8316686%" y2="6.67239121%" id="linearGradient-1">
@@ -297,7 +297,7 @@ void main() {
297
297
  `,ec="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTciIGhlaWdodD0iMjUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSIxMC43MDYlIiB5MT0iNDIuNzQ0JSIgeDI9Ijg5LjA2NCUiIHkyPSI1Ny4yMDglIiBpZD0icHJlZml4X19hIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9Ii4zMDgiIG9mZnNldD0iNDkuNTY5JSIvPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iMCIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iLS4yNSIgeT0iLS4yNSIgd2lkdGg9IjU3LjUiIGhlaWdodD0iMjMuNSIgcng9IjExLjI1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDEpIiBmaWxsPSIjMkMyQzJDIiBzdHJva2U9InVybCgjcHJlZml4X19hKSIgc3Ryb2tlLXdpZHRoPSIuNSIgZmlsbC1ydWxlPSJldmVub2RkIiBmaWxsLW9wYWNpdHk9Ii4zMDMiLz48L3N2Zz4=",Cv="data:image/png;base64,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";class Ba{constructor(t,e){f(this,"visible",!1);f(this,"five");f(this,"lines",[]);f(this,"points",[]);f(this,"onClick");f(this,"cancel");f(this,"content",document.createElement("div"));f(this,"container",document.createElement("div"));f(this,"masking",document.createElement("div"));f(this,"target");f(this,"clickHandler",t=>{this.onClick(t,this.target)});f(this,"cancelHandler",()=>{this.cancel(this.target)});f(this,"hover",()=>{this.content.style.backgroundImage=`url(${Cv})`});f(this,"unHover",()=>{this.content.style.backgroundImage=`url(${ec})`});var s,o;this.five=t,this.onClick=(e==null?void 0:e.onClick)||(()=>{}),this.cancel=(e==null?void 0:e.cancel)||(()=>{}),this.container.classList.add("fpm__delete"),this.container.style.opacity="0",this.container.style.position="absolute",this.container.style.left="0",this.container.style.top="10px",this.container.style.transform="translate3d(0, 0, 10px)",this.container.style.pointerEvents="none",this.container.style.transition="opacity 200ms ease",this.container.style.zIndex="99",this.content.classList.add("fpm__delete-content"),this.content.style.width="62px",this.content.style.height="26px",this.content.style.display="flex",this.content.style.alignItems="center",this.content.style.justifyContent="center",this.content.style.transform="translate(-50%, -50%)",this.content.style.color="#fff",this.content.style.fontSize="12px",this.content.style.lineHeight="17px",this.content.style.borderRadius="11px",this.content.style.backgroundSize="100% 100%",this.content.style.cursor="pointer",this.content.style.userSelect="none",this.content.style.backgroundImage=`url(${ec})`,this.content.innerHTML=`
298
298
  ${wv}
299
299
  <span>${(o=(s=e.i18n)==null?void 0:s.call(e,"删除"))!=null?o:"删除"}</span>
300
- `,this.container.append(this.content);const i=this.content.querySelector(".fpm__delete-icon");i&&(i.style.width="16px",i.style.height="17px",i.style.marginRight="1px"),this.content.addEventListener("click",this.clickHandler),this.content.addEventListener("mouseenter",this.hover),this.content.addEventListener("mouseleave",this.unHover),this.masking.setAttribute("style","position: absolute;top: 0;left: 0;bottom: 0;right: 0;pointer-events: none;"),this.masking.addEventListener("click",this.cancelHandler),this.masking.addEventListener("touchstart",this.cancelHandler)}dispose(){this.content.removeEventListener("click",this.clickHandler),this.content.removeEventListener("mouseenter",this.hover),this.content.removeEventListener("mouseleave",this.unHover),this.container.remove(),this.masking.removeEventListener("click",this.cancelHandler),this.masking.removeEventListener("touchstart",this.cancelHandler),this.masking.remove()}appendTo(t){return t.append(this.container),t.append(this.masking),this}setLines(t){return this.lines=t,this.points=Array.from(new Set(this.lines.map(e=>[e.points[0],e.points[1]]).flat(1))),this}setTarget(t){return this.target=t,this}updatePosition(t,e){if(t&&e)return this.container.style.left=t,this.container.style.top=e,this.container.style.transform="",this.show();if(this.lines.length===0)return this;const i=this.points.map(A=>A.position),s=i.map(A=>A.clone().project(this.five.camera));if(s.some(A=>Math.abs(A.z)>1))return this.hide();const o=s.map(A=>A.x),r=s.map(A=>A.y),a=(Math.min(...o)+Math.max(...o))/2,l=Math.max(...r),c=this.container.parentElement;if(!c)return this;const d=(a+1)/2*c.clientWidth,h=-(l-1)/2*c.clientHeight;let u=d,m=h-34;if(this.lines.length===1&&i.length===2){const A=(r[1]-r[0])/(o[1]-o[0]),g=-((r[1]+r[0])/2-1)/2*c.clientHeight;Math.abs(A)>.4&&(u=d+57,m=g)}return this.container.style.top="0",this.container.style.left="0",this.container.style.transform=`translate3d(${u}px, ${m}px, 0)`,this.show()}hide(){return this.visible=!1,this.masking.style.pointerEvents="none",this.container.style.opacity="0",this.container.style.pointerEvents="none",this.unHover(),this}show(){return this.visible=!0,this.masking.style.pointerEvents="auto",this.container.style.opacity="1",this.container.style.pointerEvents="auto",this}}function Va(n,t){const e=n.x-t[0].x,i=n.y-t[0].y,s=t[1].x-t[0].x,o=t[1].y-t[0].y,r=e*s+i*o,a=s*s+o*o,l=r/a;let c,d;return l<0||Iv(t[0],t[1])?(c=t[0].x,d=t[0].y):l>1?(c=t[1].x,d=t[1].y):(c=t[0].x+l*s,d=t[0].y+l*o),new R.Vector2(c,d)}function Iv(n,t){return n.x===t.x&&n.y===t.y}const tc=()=>!1;class di extends Mo{constructor(e){var i;super(e);f(this,"type","edit");f(this,"polyline");f(this,"area");f(this,"hasAppendDashed",!1);f(this,"fiveElement");f(this,"lastPoint",null);f(this,"pointSelector");f(this,"deleteDom");f(this,"onIntersectionUpdate",Oa((e,i)=>{this.currentMeasureType==="area"&&typeof i=="boolean"&&(i?this.hook.emit("readyComplete"):this.hook.emit("notReadyComplete")),this.updateDashed()},20));f(this,"revoke",()=>{this.currentMeasureType==="area"?this.revokeArea():this.currentMeasureType==="line"&&this.revokeLine()});f(this,"revokeArea",()=>{if(this.area.points.length!==0){if(this.area.popPoint(),this.hook.emit("pointsChange",this.area.points),this.area.points.length===0){this.lastPoint=null,this.hasAppendDashed=!1,this.dashed.remove(),this.five.needsRender=!0,this.hook.emit("revoke",{isEmpty:!0});return}else this.lastPoint=new ft(this.area.points[this.area.points.length-1]),this.updateDashed();this.five.needsRender=!0}});f(this,"revokeLine",e=>{const i=e||this.polyline;if(i.lines.length===0&&this.lastPoint){this.lastPoint=null,this.hasAppendDashed=!1,this.dashed.remove(),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.needsRender=!0,this.hook.emit("pointsChange",[]);return}if(i.lines.length===0&&!this.lastPoint||!this.lastPoint)return;const s=i.lines[i.lines.length-1],o=s.findAnotherPoint(this.lastPoint);o&&(this.lastPoint=o,this.hook.emit("anchorChange",o.position),this.group.remove(s.mesh),i.removeLine(s),s.distanceItem.remove(),this.updateDashed(),this.five.needsRender=!0)});f(this,"onMouseLeave",()=>{this.dashed.hide(),this.perpendicularDashed.hide(),this.area.hideArea()});f(this,"onLineChanged",()=>{this.hook.emit("editedPolylineChange",this.polyline)});f(this,"onWantsSelect",()=>{if(this.currentMeasureType==="area"){const e=this.area.polygon.isBlank||this.area.polygon.visible===!1;if(this.area.points.length>=3&&e)return!1}});f(this,"wantsMoveToPano",()=>{if(this.lastPoint)return!1});f(this,"onSelect",()=>{var o,r,a,l;this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh),this.currentMeasureType==="area"&&this.group.add(this.perpendicularDashed.mesh)),this.hasAppendDashed=!0;const e=(()=>{var c,d;if(this.currentMeasureType==="area")return this.area.projectPoint((c=this.pointSelector.position)==null?void 0:c.point);if(this.currentMeasureType==="line")return(d=this.pointSelector.position)==null?void 0:d.point})();if(!e)return;const i=new ft(e),s=this.lastPoint;if(!(s!=null&&s.position&&i.position.equals(s==null?void 0:s.position))){if(this.lastPoint=i,this.currentMeasureType==="line"){if(i&&s){const d=new ii(s,i,this.model);d.distanceItem.setCanSelect(!1),d.distanceItem.appendTo(this.container),this.polyline.addLine(d),this.group.add(d.mesh),d.distanceItem.update(this.five)}const c=(r=(o=this.editParams)==null?void 0:o.autoEndConfig)==null?void 0:r.line;typeof c=="number"&&(this.polyline.getPointLength()>=c?this.complete():this.polyline.getPointLength()===c-1&&this.hook.emit("readyComplete")),this.hook.emit("pointsChange",this.polyline.points)}else if(this.currentMeasureType==="area"){if(this.area.addPoints(i.position),this.area.isClosed){this.complete();return}this.area.points.length>=3?this.pointSelector.setAdherePoints(this.area.points[0]):this.pointSelector.setAdherePoints(null);const c=(l=(a=this.editParams)==null?void 0:a.autoEndConfig)==null?void 0:l.area;typeof c=="number"&&(this.area.points.length>=c?this.complete():this.area.points.length===c-1&&this.hook.emit("readyComplete")),this.hook.emit("pointsChange",this.area.points)}this.updateDashed(),this.five.needsRender=!0,this.hook.emit("anchorChange",i.position)}});f(this,"onCameraUpdate",()=>{this.updateDistanceUI()});f(this,"updateDashed",()=>{var s;if(!this.lastPoint)return;const e=this.lastPoint.position,i=(()=>{var o,r;if(this.currentMeasureType==="area")return this.area.projectPoint((o=this.pointSelector.position)==null?void 0:o.point);if(this.currentMeasureType==="line")return(r=this.pointSelector.position)==null?void 0:r.point})();if(!i){this.dashed.hide();return}if(this.dashed.show(),this.dashed.setPoints(e,i),this.dashed.distanceItem.update(this.five),this.hook.emit("editedDashedLineChange",this.dashed),this.currentMeasureType==="area")if(this.area.areaItem.setCanSelect(!1),this.area.points.length>=2){const o=(s=this.pointSelector.position)==null?void 0:s.point;if(o){const d=o,h=i;this.perpendicularDashed.setPoints(d,h),this.perpendicularDashed.show()}else this.perpendicularDashed.hide();const r=this.area.polyline.lines.map(d=>({start:d.points[0].position,end:d.points[1].position})),a=$l({start:e,end:i},r),l=$l({start:i,end:this.area.points[0]},r);if(a||l)this.area.hideArea(),this.hook.emit("allowAddPointStateChange","forbid");else{this.area.showArea();const d=[...this.area.points,i];this.area.polygon.updatePoints(d),this.area.areaItem.updateArea(this.five),this.hook.emit("allowAddPointStateChange","allow")}}else this.area.hideArea(),this.perpendicularDashed.hide();this.five.needsRender=!0});f(this,"wantsTapGesture",e=>{var p,g;if(this.editParams.pointSelectorMode==="cursor"||this.lastPoint)return!1;const i=this.model.areas.map(v=>e.intersectObject(v.polygon,!0)[0]).sort((v,y)=>v.distance-y.distance),s=(g=(p=i[0])==null?void 0:p.object)==null?void 0:g.parent;if(s!=null&&s.isPolygonMesh){const v=this.model.areas.find(y=>y.polygon===s);if(v){const{x:y,y:I}=i[0].point.clone().project(this.five.camera),M=`${(y+1)/2*100}%`,D=`${(-I+1)/2*100}%`;return this.chooseArea(v,{left:M,top:D}),!1}}const[o]=this.five.model.intersectRaycaster(e);if(!o)return;const r=this.five.camera,a=o.point.clone().project(r),l=this.container.clientWidth,c=this.container.clientHeight,d=new R.Vector2(a.x*l,a.y*c),h=this.model.getAllLines().map(v=>{const[y,I]=v.points,M=y.position.clone().project(r),D=I.position.clone().project(r);if(!zi(M)&&!zi(D))return null;const P=new R.Vector2(M.x*l,M.y*c),V=new R.Vector2(D.x*l,D.y*c);return{id:v.id,points:[P,V]}}).filter(v=>!!v);if(h.length===0)return;const m=h.map(v=>{const y=Va(d,v.points);return{id:v.id,distance:y.distanceTo(d)}}).sort((v,y)=>v.distance-y.distance)[0];if(m.distance>20)return;const A=this.model.getAllLines().find(({id:v})=>v===m.id);if(A)return this.chooseLine(A),!1});f(this,"chooseLine",e=>{const i=e.getPolyline().lines;this.deleteDom.setTarget(i).setLines(i).updatePosition().show(),this.highlightLines(i),this.hook.emit("selectedChange",i)});f(this,"chooseArea",(e,i)=>{this.deleteDom.setTarget(e).updatePosition(i.left,`calc(${i.top} - 1.5rem)`).show(),this.highlightArea(e)});f(this,"deleteArea",e=>{this.unHighlightArea(e),e.dispose(),this.deleteDom.hide()});f(this,"deleteLine",e=>{const i=e[0],s=this.model.getPolylineByLine(i);s&&(this.model.removePolyline(s),s.lines.forEach(o=>this.removeLine(o)),this.deleteDom.setLines([]).hide())});this.fiveElement=this.five.getElement(),this.deleteDom=new Ba(this.five,{i18n:this.config.i18n,onClick:(s,o)=>{var l;const r=o.type==="area",a=Array.isArray(o)&&((l=o[0])==null?void 0:l.type)==="line";r&&this.deleteArea(o),a&&this.deleteLine(o)},cancel:s=>{var a;this.deleteDom.hide();const o=s.type==="area",r=Array.isArray(s)&&((a=s[0])==null?void 0:a.type)==="line";o&&this.unHighlightArea(s),r&&this.unHighlightLines(s)}}).appendTo(this.container),this.pointSelector=new vv(this.five,{mode:this.editParams.pointSelectorMode,pointSelectorHelperParams:{magnifierParams:this.magnifierParams}}),this.pointSelector.enable(),this.polyline=new Oi({model:this.model}),this.area=new ea(void 0,{five:this.five,model:this.model,meshContainer:this.group,domContainer:this.container}),this.model.addPolyline(this.polyline),this.model.addArea(this.area),this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),s.distanceItem.setCanSelect(!0),s.hook.on("selected",this.chooseLine),this.group.add(s.mesh)}),this.model.getAllAreas().forEach(s=>{s.areaItem.appendTo(this.container),s.areaItem.updateDomPosition(this.five),s.areaItem.setCanSelect(!0),s.hook.on("selected",this.chooseArea),this.group.add(s.polygon),s.polyline.lines.forEach(o=>{o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)})}),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.wantsTapGesture),this.five.on("wantsMoveToPano",this.wantsMoveToPano),this.five.on("wantsChangeMode",tc),this.pointSelector.hook.on("intersectionUpdate",this.onIntersectionUpdate),this.pointSelector.hook.on("select",this.onSelect),this.pointSelector.hook.on("wantsSelect",this.onWantsSelect),this.polyline.hook.on("lineAdded",this.onLineChanged),this.polyline.hook.on("lineRemoved",this.onLineChanged),this.five.helperVisible=!1,(i=this.fiveElement)==null||i.addEventListener("mouseleave",this.onMouseLeave),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.refresh()}dispose(){var e;super.dispose(),this.model.areas.forEach(i=>{(i.points.length<2||i.polygon.isBlank)&&this.model.removeArea(i)}),this.five.helperVisible=!0,this.pointSelector.disable(),this.dashed.remove(),this.perpendicularDashed.remove(),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsTapGesture",this.wantsTapGesture),this.five.off("wantsMoveToPano",this.wantsMoveToPano),this.five.off("wantsChangeMode",tc),this.pointSelector.hook.off("intersectionUpdate",this.onIntersectionUpdate),this.pointSelector.hook.off("select",this.onSelect),this.polyline.hook.off("lineAdded",this.onLineChanged),this.polyline.hook.off("lineRemoved",this.onLineChanged),(e=this.fiveElement)==null||e.removeEventListener("mouseleave",this.onMouseLeave),this.magnifier.dispose(),this.deleteDom.dispose(),this.dashed.distanceItem.remove(),this.five.needsRender=!0}getEditingLines(){return this.polyline.lines}selectPoint(){this.onSelect()}complete(){this.hook.emit("complete"),this.currentMeasureType==="area"?(this.area.points.length<3?this.deleteArea(this.area):(this.area.showArea(),this.area.complete(),this.area.hook.on("selected",this.chooseArea)),this.area=new ea(void 0,{five:this.five,model:this.model,meshContainer:this.group,domContainer:this.container}),this.model.addArea(this.area)):this.currentMeasureType==="line"&&(this.polyline.lines.forEach(e=>{e.hook.on("selected",this.chooseLine),e.distanceItem.setCanSelect(!0)}),this.polyline=new Oi({model:this.model}),this.model.addPolyline(this.polyline)),this.pointSelector.setAdherePoints(null),this.dashed.hide(),this.perpendicularDashed.hide(),this.lastPoint=void 0}highlightArea(e){this.highlightLines(e.polyline.lines),this.five.needsRender=!0}unHighlightArea(e){this.unHighlightLines(e.polyline.lines),this.five.needsRender=!0}highlightLines(e){e.forEach(i=>this.highlightLine(i))}unHighlightLines(e){e.forEach(i=>{i.selected=!1,i.distanceItem.unHighlight(),this.group.remove(i.lightMesh),this.five.needsRender=!0})}highlightLine(e){this.unHighlightLines(this.model.getAllLines()),!e.selected&&(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}}class ic extends Mo{constructor(e){super(e);f(this,"type","view");f(this,"hammer");f(this,"polylineRemoved",e=>{e.lines.forEach(i=>this.removeLine(i)),this.hook.emit("selectedChange",this.model.getAllLines().filter(i=>i.selected).map(i=>i))});f(this,"polylineAdded",e=>{const i=this.five.getCurrentState().panoIndex;e.lines.forEach(s=>{e.visiblePanoIndexes&&!e.visiblePanoIndexes.includes(i)&&(s.mesh.visible=!1),s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),this.group.add(s.mesh)})});f(this,"onCameraUpdate",()=>{this.updateDistanceUI()});f(this,"onFivePanoWillArrive",e=>{this.model.polylines.forEach(i=>{i.visiblePanoIndexes&&(i.visiblePanoIndexes.includes(e)||i.lines.forEach(s=>{s.mesh.visible=!1,s.distanceItem.update(this.five)}))})});f(this,"onFivePanoArrived",e=>{this.model.polylines.forEach(i=>{i.visiblePanoIndexes&&i.visiblePanoIndexes.includes(e)&&i.lines.forEach(s=>{s.mesh.visible=!0,s.distanceItem.update(this.five)})})});this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),this.group.add(s.mesh)});const i=this.five.getElement();if(i){const s=new ls(i);this.hammer=s}this.onFivePanoWillArrive(this.five.getCurrentState().panoIndex),this.onFivePanoArrived(this.five.getCurrentState().panoIndex),this.updateDistanceUI(),this.five.needsRender=!0,this.model.hook.on("polylineAdded",this.polylineAdded),this.model.hook.on("polylineRemoved",this.polylineRemoved),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive)}dispose(){var e;super.dispose(),this.model.hook.off("polylineAdded",this.polylineAdded),this.model.hook.off("polylineRemoved",this.polylineRemoved),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}}function Pv(n,t){const e=(n.x+1)/2*t.width,i=-(n.y-1)/2*t.height;return new R.Vector2(e,i)}function Ev(n,t,e,i){const s=n.getElement();if(!s||t.length===0)return null;const o={width:s.clientWidth,height:s.clientHeight},r=t.map(a=>{const l=a.position.clone().project(n.camera);return zi(l)?{distance:Pv(l,o).distanceTo(e),point:a}:{distance:1/0,point:a}}).sort((a,l)=>a.distance-l.distance);return typeof i=="number"&&r[0].distance>i?null:r[0]}const nc=()=>!1;class sc extends Mo{constructor(e){super(e);f(this,"type","watch");f(this,"deleteDom");f(this,"choose");f(this,"highlightedLines",[]);f(this,"highlightedArea");f(this,"fiveElement");f(this,"editPointState");f(this,"hammer");f(this,"onPanStart",e=>{var l;if(this.model.getAllLines().length===0||!this.fiveElement)return;const i=ta(e).point,s=(l=Ev(this.five,this.model.getAllPoints(),i,20))==null?void 0:l.point;if(!s){this.editPointState=void 0;return}const o=this.model.polylines.find(c=>c.includes(s)),r={point:s,associatedLines:o.lines};this.hook.emit("wantsDragLine",{point:s.id,lines:r.associatedLines.map(({id:c})=>c)})||(this.editPointState=r,this.magnifier.appendTo(this.container),this.magnifier.enable(),this.group.add(this.mouseGroup))});f(this,"onPanEnd",()=>{this.editPointState&&(this.editPointState.associatedLines.forEach(e=>e.mesh.setMaterial({dashed:!1})),this.highlightLines(this.editPointState.associatedLines),this.editPointState=void 0,this.magnifier.disable(),this.group.remove(this.mouseGroup))});f(this,"onPan",e=>{if(!this.editPointState||!this.fiveElement)return;const i=ta(e).ndcPoint,s=new R.Raycaster;s.setFromCamera(i,this.five.camera);const[o]=this.five.model.intersectRaycaster(s);o&&this.onIntersectionUpdate(o)});f(this,"onIntersectionUpdate",(e,i)=>{if(this.editPointState){if(this.clearHighlightLines(),this.editPointState.point.position.copy(e.point),this.editPointState.associatedLines.forEach(s=>{s.mesh.setPoints(s.points[0].position.clone(),s.points[1].position.clone()),s.lightMesh.setPoints(s.points[0].position.clone(),s.points[1].position.clone()),s.mesh.setMaterial({dashed:!0})}),this.updateDistanceUI(),this.magnifier.renderWithPoint(e.point),this.mouseGroup.position.copy(e.point),i)this.mouseGroup.quaternion.copy(i.quaternion);else if(e.face){const o=e.face.normal.clone().multiplyScalar(.05),a=e.point.clone().add(o).clone().add(o);this.mouseGroup.lookAt(a)}this.five.needsRender=!0,this.hook.emit("selectedChange",this.editPointState.associatedLines.map(s=>s))}});f(this,"wantsPanGesture",()=>{if(this.editPointState)return!1});f(this,"wantsTapGesture",e=>{var p;const i=this.model.areas.map(g=>e.intersectObject(g.polygon,!0)[0]).sort((g,v)=>g.distance-v.distance),s=(p=i[0])==null?void 0:p.object.parent;if(s instanceof cu){const g=this.model.areas.find(v=>v.polygon===s);if(g){const{x:v,y}=i[0].point.clone().project(this.five.camera),I=`${(v+1)/2*100}%`,M=`${(-y+1)/2*100}%`;return this.chooseArea(g,{left:I,top:M}),!1}}const[o]=this.five.model.intersectRaycaster(e);if(!o)return;const r=this.five.camera,a=o.point.clone().project(r),l=this.container.clientWidth,c=this.container.clientHeight,d=new R.Vector2(a.x*l,a.y*c),h=this.model.getAllLines().map(g=>{const[v,y]=g.points,I=v.position.clone().project(r),M=y.position.clone().project(r);if(!zi(I)&&!zi(M))return null;const D=new R.Vector2(I.x*l,I.y*c),P=new R.Vector2(M.x*l,M.y*c);return{id:g.id,points:[D,P]}}).filter(g=>!!g);if(h.length===0)return;const m=h.map(g=>{const v=Va(d,g.points);return{id:g.id,distance:v.distanceTo(d)}}).sort((g,v)=>g.distance-v.distance)[0];if(m.distance>20)return;const A=this.model.getAllLines().find(({id:g})=>g===m.id);if(A)return this.chooseLine(A),!1});f(this,"chooseLine",e=>{this.choose="line";const i=e.getPolyline().lines;this.deleteDom.setLines(i).updatePosition().show(),this.highlightLines(i),this.five.needsRender=!0,this.hook.emit("selectedChange",i.map(s=>s))});f(this,"chooseArea",(e,i)=>{this.choose=e,this.deleteDom.updatePosition(i.left,`calc(${i.top} - 20px)`).show(),this.highlightArea(e)});f(this,"polylineRemoved",e=>{e.lines.forEach(i=>this.removeLine(i)),this.hook.emit("selectedChange",this.model.getAllLines().filter(i=>i.selected).map(i=>i))});f(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.highlightedLines.length>0&&this.deleteDom.updatePosition()});f(this,"deleteArea",e=>{this.unHighlightArea(e),e.dispose(),this.deleteDom.hide()});f(this,"deleteLine",()=>{const e=this.highlightedLines[0],i=this.model.getPolylineByLine(e);i&&(this.model.removePolyline(i),this.highlightedLines=[],this.deleteDom.setLines([]).hide())});f(this,"cancelDeleteClickCallback",()=>{this.deleteDom.hide(),this.clearHighlightLines(),this.unHighlightArea()});this.deleteDom=new Ba(this.five,{i18n:this.config.i18n,onClick:()=>{this.choose==="line"?this.deleteLine():this.choose instanceof ea&&this.deleteArea(this.choose)},cancel:this.cancelDeleteClickCallback}).appendTo(this.container),this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),s.hook.on("selected",this.chooseLine),s.distanceItem.setCanSelect(!0),this.group.add(s.mesh)}),this.model.getAllAreas().forEach(s=>{s.areaItem.appendTo(this.container),s.areaItem.updateArea(this.five),s.hook.on("selected",this.chooseArea),s.areaItem.setCanSelect(!0),this.group.add(s.polygon),s.polyline.lines.forEach(o=>{o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)})});const i=this.five.getElement();if(i){this.fiveElement=i;const s=new ls(i);this.hammer=s,s.on("pan",this.onPan),s.on("panstart",this.onPanStart),s.on("panend",this.onPanEnd)}this.updateDistanceUI(),this.five.needsRender=!0,this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.wantsTapGesture),this.five.on("wantsPanGesture",this.wantsPanGesture),this.five.on("wantsChangeMode",nc),this.model.hook.on("polylineRemoved",this.polylineRemoved)}dispose(){var e;super.dispose(),this.deleteDom.dispose(),this.model.hook.off("polylineRemoved",this.polylineRemoved),this.model.getAllLines().forEach(i=>i.hook.off("selected",this.chooseLine)),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsPanGesture",this.wantsPanGesture),this.five.off("wantsTapGesture",this.wantsTapGesture),this.five.off("wantsChangeMode",nc),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.unHighlightLines(this.highlightedLines),this.highlightedLines=[])}highlightArea(e){this.unHighlightLines(),this.unHighlightArea(),this.highlightLines(e.polyline.lines),this.five.needsRender=!0}unHighlightArea(e){const i=e!=null?e:this.highlightedArea;i&&(this.unHighlightLines(i.polyline.lines),this.five.needsRender=!0)}highlightLines(e){this.unHighlightLines(),this.highlightedLines=e,e.forEach(i=>this.highlightLine(i))}unHighlightLines(e){this.unHighlightArea();const i=e!=null?e:this.highlightedLines;i&&i.forEach(s=>{s.selected=!1,s.distanceItem.unHighlight(),this.group.remove(s.lightMesh),this.five.needsRender=!0})}}class Ra{constructor(t){f(this,"config");f(this,"polylines",[]);f(this,"areas",[]);f(this,"hook",new je.Subscribe);this.config=t}addPolyline(t){if(this.includes(t)){console.error(new Error("不能重复添加 polyline"));return}this.polylines.push(t),this.hook.emit("polylineAdded",t)}addArea(t){if(this.areas.find(({id:e})=>e===t.id)!==void 0){console.error(new Error("不能重复添加 area"));return}this.areas.push(t),this.hook.emit("areaAdded",t)}replacePolylineByID(t,e){const i=this.getPolylineByID(t);i==null||i.replace(e)}removePolyline(t){const e=this.polylines.findIndex(({id:i})=>i===t.id);if(e===-1){console.error(new Error("polyline 不存在"));return}this.polylines.splice(e,1),this.hook.emit("polylineRemoved",t)}removeArea(t){const e=this.areas.findIndex(({id:i})=>i===t.id);if(e===-1){console.error(new Error("area 不存在"));return}this.areas.splice(e,1)}getPolylineByID(t){return this.polylines.find(e=>e.id===t)}getPolylineByLine(t){return this.polylines.find(e=>e.includes(t))}getLineByID(t){return this.getAllLines().find(e=>e.id===t)}getAllLines(){return this.polylines.map(t=>t.lines).flat(1)}getAllAreas(){return this.areas}getAllPoints(){return this.polylines.map(t=>t.points).flat(1)}includes(t){return this.polylines.find(({id:e})=>e===t.id)!==void 0}clear(){this.polylines.forEach(t=>this.hook.emit("polylineRemoved",t)),this.areas.forEach(t=>t.dispose()),this.polylines.splice(0,this.polylines.length),this.areas.splice(0,this.areas.length)}dispose(){this.clear()}getClosestPoint(){}parse(t){this.clear(),this.polylines.push(...t.polylines.map(e=>new Oi({model:this}).fromJson(e))),this.polylines.forEach(e=>this.hook.emit("polylineAdded",e))}toJson(){return{polylines:this.polylines.map(t=>t.toJson()).filter(t=>t.lines.length>0)}}}function Mv(){}const{Vector2:kv}=E;function xv(n,t){const{offsetWidth:e,offsetHeight:i}=t,{top:s,left:o}=t.getBoundingClientRect();return Object.assign(new kv,{x:(n.x-o)/e*2-1,y:-(n.y-s)/i*2+1})}const Dv="data:image/png;base64,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",Sv="data:image/png;base64,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",Tv=`
300
+ `,this.container.append(this.content);const i=this.content.querySelector(".fpm__delete-icon");i&&(i.style.width="16px",i.style.height="17px",i.style.marginRight="1px"),this.content.addEventListener("click",this.clickHandler),this.content.addEventListener("mouseenter",this.hover),this.content.addEventListener("mouseleave",this.unHover),this.masking.setAttribute("style","position: absolute;top: 0;left: 0;bottom: 0;right: 0;pointer-events: none;"),this.masking.addEventListener("click",this.cancelHandler),this.masking.addEventListener("touchstart",this.cancelHandler)}dispose(){this.content.removeEventListener("click",this.clickHandler),this.content.removeEventListener("mouseenter",this.hover),this.content.removeEventListener("mouseleave",this.unHover),this.container.remove(),this.masking.removeEventListener("click",this.cancelHandler),this.masking.removeEventListener("touchstart",this.cancelHandler),this.masking.remove()}appendTo(t){return t.append(this.container),t.append(this.masking),this}setLines(t){return this.lines=t,this.points=Array.from(new Set(this.lines.map(e=>[e.points[0],e.points[1]]).flat(1))),this}setTarget(t){return this.target=t,this}updatePosition(t,e){if(t&&e)return this.container.style.left=t,this.container.style.top=e,this.container.style.transform="",this.show();if(this.lines.length===0)return this;const i=this.points.map(A=>A.position),s=i.map(A=>A.clone().project(this.five.camera));if(s.some(A=>Math.abs(A.z)>1))return this.hide();const o=s.map(A=>A.x),r=s.map(A=>A.y),a=(Math.min(...o)+Math.max(...o))/2,l=Math.max(...r),c=this.container.parentElement;if(!c)return this;const d=(a+1)/2*c.clientWidth,h=-(l-1)/2*c.clientHeight;let u=d,m=h-34;if(this.lines.length===1&&i.length===2){const A=(r[1]-r[0])/(o[1]-o[0]),g=-((r[1]+r[0])/2-1)/2*c.clientHeight;Math.abs(A)>.4&&(u=d+57,m=g)}return this.container.style.top="0",this.container.style.left="0",this.container.style.transform=`translate3d(${u}px, ${m}px, 0)`,this.show()}hide(){return this.visible=!1,this.masking.style.pointerEvents="none",this.container.style.opacity="0",this.container.style.pointerEvents="none",this.unHover(),this}show(){return this.visible=!0,this.masking.style.pointerEvents="auto",this.container.style.opacity="1",this.container.style.pointerEvents="auto",this}}function Va(n,t){const e=n.x-t[0].x,i=n.y-t[0].y,s=t[1].x-t[0].x,o=t[1].y-t[0].y,r=e*s+i*o,a=s*s+o*o,l=r/a;let c,d;return l<0||Iv(t[0],t[1])?(c=t[0].x,d=t[0].y):l>1?(c=t[1].x,d=t[1].y):(c=t[0].x+l*s,d=t[0].y+l*o),new R.Vector2(c,d)}function Iv(n,t){return n.x===t.x&&n.y===t.y}const tc=()=>!1;class di extends ko{constructor(e){var i;super(e);f(this,"type","edit");f(this,"polyline");f(this,"area");f(this,"hasAppendDashed",!1);f(this,"fiveElement");f(this,"lastPoint",null);f(this,"pointSelector");f(this,"deleteDom");f(this,"onIntersectionUpdate",Oa((e,i)=>{this.currentMeasureType==="area"&&typeof i=="boolean"&&(i?this.hook.emit("readyComplete"):this.hook.emit("notReadyComplete")),this.updateDashed()},20));f(this,"revoke",()=>{this.currentMeasureType==="area"?this.revokeArea():this.currentMeasureType==="line"&&this.revokeLine()});f(this,"revokeArea",()=>{if(this.area.points.length!==0){if(this.area.popPoint(),this.hook.emit("pointsChange",this.area.points),this.area.points.length===0){this.lastPoint=null,this.hasAppendDashed=!1,this.dashed.remove(),this.five.needsRender=!0,this.hook.emit("revoke",{isEmpty:!0});return}else this.lastPoint=new ft(this.area.points[this.area.points.length-1]),this.updateDashed();this.five.needsRender=!0}});f(this,"revokeLine",e=>{const i=e||this.polyline;if(i.lines.length===0&&this.lastPoint){this.lastPoint=null,this.hasAppendDashed=!1,this.dashed.remove(),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.needsRender=!0,this.hook.emit("pointsChange",[]);return}if(i.lines.length===0&&!this.lastPoint||!this.lastPoint)return;const s=i.lines[i.lines.length-1],o=s.findAnotherPoint(this.lastPoint);o&&(this.lastPoint=o,this.hook.emit("anchorChange",o.position),this.group.remove(s.mesh),i.removeLine(s),s.distanceItem.remove(),this.updateDashed(),this.five.needsRender=!0)});f(this,"onMouseLeave",()=>{this.dashed.hide(),this.perpendicularDashed.hide(),this.area.hideArea()});f(this,"onLineChanged",()=>{this.hook.emit("editedPolylineChange",this.polyline)});f(this,"onWantsSelect",()=>{if(this.currentMeasureType==="area"){const e=this.area.polygon.isBlank||this.area.polygon.visible===!1;if(this.area.points.length>=3&&e)return!1}});f(this,"wantsMoveToPano",()=>{if(this.lastPoint)return!1});f(this,"onSelect",()=>{var o,r,a,l;this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh),this.currentMeasureType==="area"&&this.group.add(this.perpendicularDashed.mesh)),this.hasAppendDashed=!0;const e=(()=>{var c,d;if(this.currentMeasureType==="area")return this.area.projectPoint((c=this.pointSelector.position)==null?void 0:c.point);if(this.currentMeasureType==="line")return(d=this.pointSelector.position)==null?void 0:d.point})();if(!e)return;const i=new ft(e),s=this.lastPoint;if(!(s!=null&&s.position&&i.position.equals(s==null?void 0:s.position))){if(this.lastPoint=i,this.currentMeasureType==="line"){if(i&&s){const d=new ii(s,i,this.model);d.distanceItem.setCanSelect(!1),d.distanceItem.appendTo(this.container),this.polyline.addLine(d),this.group.add(d.mesh),d.distanceItem.update(this.five)}const c=(r=(o=this.editParams)==null?void 0:o.autoEndConfig)==null?void 0:r.line;typeof c=="number"&&(this.polyline.getPointLength()>=c?this.complete():this.polyline.getPointLength()===c-1&&this.hook.emit("readyComplete")),this.hook.emit("pointsChange",this.polyline.points)}else if(this.currentMeasureType==="area"){if(this.area.addPoints(i.position),this.area.isClosed){this.complete();return}this.area.points.length>=3?this.pointSelector.setAdherePoints(this.area.points[0]):this.pointSelector.setAdherePoints(null);const c=(l=(a=this.editParams)==null?void 0:a.autoEndConfig)==null?void 0:l.area;typeof c=="number"&&(this.area.points.length>=c?this.complete():this.area.points.length===c-1&&this.hook.emit("readyComplete")),this.hook.emit("pointsChange",this.area.points)}this.updateDashed(),this.five.needsRender=!0,this.hook.emit("anchorChange",i.position)}});f(this,"onCameraUpdate",()=>{this.updateDistanceUI()});f(this,"updateDashed",()=>{var s;if(!this.lastPoint)return;const e=this.lastPoint.position,i=(()=>{var o,r;if(this.currentMeasureType==="area")return this.area.projectPoint((o=this.pointSelector.position)==null?void 0:o.point);if(this.currentMeasureType==="line")return(r=this.pointSelector.position)==null?void 0:r.point})();if(!i){this.dashed.hide();return}if(this.dashed.show(),this.dashed.setPoints(e,i),this.dashed.distanceItem.update(this.five),this.hook.emit("editedDashedLineChange",this.dashed),this.currentMeasureType==="area")if(this.area.areaItem.setCanSelect(!1),this.area.points.length>=2){const o=(s=this.pointSelector.position)==null?void 0:s.point;if(o){const d=o,h=i;this.perpendicularDashed.setPoints(d,h),this.perpendicularDashed.show()}else this.perpendicularDashed.hide();const r=this.area.polyline.lines.map(d=>({start:d.points[0].position,end:d.points[1].position})),a=$l({start:e,end:i},r),l=$l({start:i,end:this.area.points[0]},r);if(a||l)this.area.hideArea(),this.hook.emit("allowAddPointStateChange","forbid");else{this.area.showArea();const d=[...this.area.points,i];this.area.polygon.updatePoints(d),this.area.areaItem.updateArea(this.five),this.hook.emit("allowAddPointStateChange","allow")}}else this.area.hideArea(),this.perpendicularDashed.hide();this.five.needsRender=!0});f(this,"wantsTapGesture",e=>{var p,g;if(this.editParams.pointSelectorMode==="cursor"||this.lastPoint)return!1;const i=this.model.areas.map(v=>e.intersectObject(v.polygon,!0)[0]).sort((v,y)=>v.distance-y.distance),s=(g=(p=i[0])==null?void 0:p.object)==null?void 0:g.parent;if(s!=null&&s.isPolygonMesh){const v=this.model.areas.find(y=>y.polygon===s);if(v){const{x:y,y:I}=i[0].point.clone().project(this.five.camera),M=`${(y+1)/2*100}%`,B=`${(-I+1)/2*100}%`;return this.chooseArea(v,{left:M,top:B}),!1}}const[o]=this.five.model.intersectRaycaster(e);if(!o)return;const r=this.five.camera,a=o.point.clone().project(r),l=this.container.clientWidth,c=this.container.clientHeight,d=new R.Vector2(a.x*l,a.y*c),h=this.model.getAllLines().map(v=>{const[y,I]=v.points,M=y.position.clone().project(r),B=I.position.clone().project(r);if(!zi(M)&&!zi(B))return null;const P=new R.Vector2(M.x*l,M.y*c),V=new R.Vector2(B.x*l,B.y*c);return{id:v.id,points:[P,V]}}).filter(v=>!!v);if(h.length===0)return;const m=h.map(v=>{const y=Va(d,v.points);return{id:v.id,distance:y.distanceTo(d)}}).sort((v,y)=>v.distance-y.distance)[0];if(m.distance>20)return;const A=this.model.getAllLines().find(({id:v})=>v===m.id);if(A)return this.chooseLine(A),!1});f(this,"chooseLine",e=>{const i=e.getPolyline().lines;this.deleteDom.setTarget(i).setLines(i).updatePosition().show(),this.highlightLines(i),this.hook.emit("selectedChange",i)});f(this,"chooseArea",(e,i)=>{this.deleteDom.setTarget(e).updatePosition(i.left,`calc(${i.top} - 1.5rem)`).show(),this.highlightArea(e)});f(this,"deleteArea",e=>{this.unHighlightArea(e),e.dispose(),this.deleteDom.hide()});f(this,"deleteLine",e=>{const i=e[0],s=this.model.getPolylineByLine(i);s&&(this.model.removePolyline(s),s.lines.forEach(o=>this.removeLine(o)),this.deleteDom.setLines([]).hide())});this.fiveElement=this.five.getElement(),this.deleteDom=new Ba(this.five,{i18n:this.config.i18n,onClick:(s,o)=>{var l;const r=o.type==="area",a=Array.isArray(o)&&((l=o[0])==null?void 0:l.type)==="line";r&&this.deleteArea(o),a&&this.deleteLine(o)},cancel:s=>{var a;this.deleteDom.hide();const o=s.type==="area",r=Array.isArray(s)&&((a=s[0])==null?void 0:a.type)==="line";o&&this.unHighlightArea(s),r&&this.unHighlightLines(s)}}).appendTo(this.container),this.pointSelector=new vv(this.five,{mode:this.editParams.pointSelectorMode,pointSelectorHelperParams:{magnifierParams:this.magnifierParams}}),this.pointSelector.enable(),this.polyline=new Oi({model:this.model}),this.area=new ea(void 0,{five:this.five,model:this.model,meshContainer:this.group,domContainer:this.container}),this.model.addPolyline(this.polyline),this.model.addArea(this.area),this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),s.distanceItem.setCanSelect(!0),s.hook.on("selected",this.chooseLine),this.group.add(s.mesh)}),this.model.getAllAreas().forEach(s=>{s.areaItem.appendTo(this.container),s.areaItem.updateDomPosition(this.five),s.areaItem.setCanSelect(!0),s.hook.on("selected",this.chooseArea),this.group.add(s.polygon),s.polyline.lines.forEach(o=>{o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)})}),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.wantsTapGesture),this.five.on("wantsMoveToPano",this.wantsMoveToPano),this.five.on("wantsChangeMode",tc),this.pointSelector.hook.on("intersectionUpdate",this.onIntersectionUpdate),this.pointSelector.hook.on("select",this.onSelect),this.pointSelector.hook.on("wantsSelect",this.onWantsSelect),this.polyline.hook.on("lineAdded",this.onLineChanged),this.polyline.hook.on("lineRemoved",this.onLineChanged),this.five.helperVisible=!1,(i=this.fiveElement)==null||i.addEventListener("mouseleave",this.onMouseLeave),this.hook.emit("anchorChange",null),this.hook.emit("editedDashedLineChange",null),this.five.refresh()}dispose(){var e;super.dispose(),this.model.areas.forEach(i=>{(i.points.length<2||i.polygon.isBlank)&&this.model.removeArea(i)}),this.five.helperVisible=!0,this.pointSelector.disable(),this.dashed.remove(),this.perpendicularDashed.remove(),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsTapGesture",this.wantsTapGesture),this.five.off("wantsMoveToPano",this.wantsMoveToPano),this.five.off("wantsChangeMode",tc),this.pointSelector.hook.off("intersectionUpdate",this.onIntersectionUpdate),this.pointSelector.hook.off("select",this.onSelect),this.polyline.hook.off("lineAdded",this.onLineChanged),this.polyline.hook.off("lineRemoved",this.onLineChanged),(e=this.fiveElement)==null||e.removeEventListener("mouseleave",this.onMouseLeave),this.magnifier.dispose(),this.deleteDom.dispose(),this.dashed.distanceItem.remove(),this.five.needsRender=!0}getEditingLines(){return this.polyline.lines}selectPoint(){this.onSelect()}complete(){this.hook.emit("complete"),this.currentMeasureType==="area"?(this.area.points.length<3?this.deleteArea(this.area):(this.area.showArea(),this.area.complete(),this.area.hook.on("selected",this.chooseArea)),this.area=new ea(void 0,{five:this.five,model:this.model,meshContainer:this.group,domContainer:this.container}),this.model.addArea(this.area)):this.currentMeasureType==="line"&&(this.polyline.lines.forEach(e=>{e.hook.on("selected",this.chooseLine),e.distanceItem.setCanSelect(!0)}),this.polyline=new Oi({model:this.model}),this.model.addPolyline(this.polyline)),this.pointSelector.setAdherePoints(null),this.dashed.hide(),this.perpendicularDashed.hide(),this.lastPoint=void 0}highlightArea(e){this.highlightLines(e.polyline.lines),this.five.needsRender=!0}unHighlightArea(e){this.unHighlightLines(e.polyline.lines),this.five.needsRender=!0}highlightLines(e){e.forEach(i=>this.highlightLine(i))}unHighlightLines(e){e.forEach(i=>{i.selected=!1,i.distanceItem.unHighlight(),this.group.remove(i.lightMesh),this.five.needsRender=!0})}highlightLine(e){this.unHighlightLines(this.model.getAllLines()),!e.selected&&(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}}class ic extends ko{constructor(e){super(e);f(this,"type","view");f(this,"hammer");f(this,"polylineRemoved",e=>{e.lines.forEach(i=>this.removeLine(i)),this.hook.emit("selectedChange",this.model.getAllLines().filter(i=>i.selected).map(i=>i))});f(this,"polylineAdded",e=>{const i=this.five.getCurrentState().panoIndex;e.lines.forEach(s=>{e.visiblePanoIndexes&&!e.visiblePanoIndexes.includes(i)&&(s.mesh.visible=!1),s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),this.group.add(s.mesh)})});f(this,"onCameraUpdate",()=>{this.updateDistanceUI()});f(this,"onFivePanoWillArrive",e=>{this.model.polylines.forEach(i=>{i.visiblePanoIndexes&&(i.visiblePanoIndexes.includes(e)||i.lines.forEach(s=>{s.mesh.visible=!1,s.distanceItem.update(this.five)}))})});f(this,"onFivePanoArrived",e=>{this.model.polylines.forEach(i=>{i.visiblePanoIndexes&&i.visiblePanoIndexes.includes(e)&&i.lines.forEach(s=>{s.mesh.visible=!0,s.distanceItem.update(this.five)})})});this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),this.group.add(s.mesh)});const i=this.five.getElement();if(i){const s=new ls(i);this.hammer=s}this.onFivePanoWillArrive(this.five.getCurrentState().panoIndex),this.onFivePanoArrived(this.five.getCurrentState().panoIndex),this.updateDistanceUI(),this.five.needsRender=!0,this.model.hook.on("polylineAdded",this.polylineAdded),this.model.hook.on("polylineRemoved",this.polylineRemoved),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive)}dispose(){var e;super.dispose(),this.model.hook.off("polylineAdded",this.polylineAdded),this.model.hook.off("polylineRemoved",this.polylineRemoved),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}}function Pv(n,t){const e=(n.x+1)/2*t.width,i=-(n.y-1)/2*t.height;return new R.Vector2(e,i)}function Ev(n,t,e,i){const s=n.getElement();if(!s||t.length===0)return null;const o={width:s.clientWidth,height:s.clientHeight},r=t.map(a=>{const l=a.position.clone().project(n.camera);return zi(l)?{distance:Pv(l,o).distanceTo(e),point:a}:{distance:1/0,point:a}}).sort((a,l)=>a.distance-l.distance);return typeof i=="number"&&r[0].distance>i?null:r[0]}const nc=()=>!1;class sc extends ko{constructor(e){super(e);f(this,"type","watch");f(this,"deleteDom");f(this,"choose");f(this,"highlightedLines",[]);f(this,"highlightedArea");f(this,"fiveElement");f(this,"editPointState");f(this,"hammer");f(this,"onPanStart",e=>{var l;if(this.model.getAllLines().length===0||!this.fiveElement)return;const i=ta(e).point,s=(l=Ev(this.five,this.model.getAllPoints(),i,20))==null?void 0:l.point;if(!s){this.editPointState=void 0;return}const o=this.model.polylines.find(c=>c.includes(s)),r={point:s,associatedLines:o.lines};this.hook.emit("wantsDragLine",{point:s.id,lines:r.associatedLines.map(({id:c})=>c)})||(this.editPointState=r,this.magnifier.appendTo(this.container),this.magnifier.enable(),this.group.add(this.mouseGroup))});f(this,"onPanEnd",()=>{this.editPointState&&(this.editPointState.associatedLines.forEach(e=>e.mesh.setMaterial({dashed:!1})),this.highlightLines(this.editPointState.associatedLines),this.editPointState=void 0,this.magnifier.disable(),this.group.remove(this.mouseGroup))});f(this,"onPan",e=>{if(!this.editPointState||!this.fiveElement)return;const i=ta(e).ndcPoint,s=new R.Raycaster;s.setFromCamera(i,this.five.camera);const[o]=this.five.model.intersectRaycaster(s);o&&this.onIntersectionUpdate(o)});f(this,"onIntersectionUpdate",(e,i)=>{if(this.editPointState){if(this.clearHighlightLines(),this.editPointState.point.position.copy(e.point),this.editPointState.associatedLines.forEach(s=>{s.mesh.setPoints(s.points[0].position.clone(),s.points[1].position.clone()),s.lightMesh.setPoints(s.points[0].position.clone(),s.points[1].position.clone()),s.mesh.setMaterial({dashed:!0})}),this.updateDistanceUI(),this.magnifier.renderWithPoint(e.point),this.mouseGroup.position.copy(e.point),i)this.mouseGroup.quaternion.copy(i.quaternion);else if(e.face){const o=e.face.normal.clone().multiplyScalar(.05),a=e.point.clone().add(o).clone().add(o);this.mouseGroup.lookAt(a)}this.five.needsRender=!0,this.hook.emit("selectedChange",this.editPointState.associatedLines.map(s=>s))}});f(this,"wantsPanGesture",()=>{if(this.editPointState)return!1});f(this,"wantsTapGesture",e=>{var p;const i=this.model.areas.map(g=>e.intersectObject(g.polygon,!0)[0]).sort((g,v)=>g.distance-v.distance),s=(p=i[0])==null?void 0:p.object.parent;if(s instanceof cu){const g=this.model.areas.find(v=>v.polygon===s);if(g){const{x:v,y}=i[0].point.clone().project(this.five.camera),I=`${(v+1)/2*100}%`,M=`${(-y+1)/2*100}%`;return this.chooseArea(g,{left:I,top:M}),!1}}const[o]=this.five.model.intersectRaycaster(e);if(!o)return;const r=this.five.camera,a=o.point.clone().project(r),l=this.container.clientWidth,c=this.container.clientHeight,d=new R.Vector2(a.x*l,a.y*c),h=this.model.getAllLines().map(g=>{const[v,y]=g.points,I=v.position.clone().project(r),M=y.position.clone().project(r);if(!zi(I)&&!zi(M))return null;const B=new R.Vector2(I.x*l,I.y*c),P=new R.Vector2(M.x*l,M.y*c);return{id:g.id,points:[B,P]}}).filter(g=>!!g);if(h.length===0)return;const m=h.map(g=>{const v=Va(d,g.points);return{id:g.id,distance:v.distanceTo(d)}}).sort((g,v)=>g.distance-v.distance)[0];if(m.distance>20)return;const A=this.model.getAllLines().find(({id:g})=>g===m.id);if(A)return this.chooseLine(A),!1});f(this,"chooseLine",e=>{this.choose="line";const i=e.getPolyline().lines;this.deleteDom.setLines(i).updatePosition().show(),this.highlightLines(i),this.five.needsRender=!0,this.hook.emit("selectedChange",i.map(s=>s))});f(this,"chooseArea",(e,i)=>{this.choose=e,this.deleteDom.updatePosition(i.left,`calc(${i.top} - 20px)`).show(),this.highlightArea(e)});f(this,"polylineRemoved",e=>{e.lines.forEach(i=>this.removeLine(i)),this.hook.emit("selectedChange",this.model.getAllLines().filter(i=>i.selected).map(i=>i))});f(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.highlightedLines.length>0&&this.deleteDom.updatePosition()});f(this,"deleteArea",e=>{this.unHighlightArea(e),e.dispose(),this.deleteDom.hide()});f(this,"deleteLine",()=>{const e=this.highlightedLines[0],i=this.model.getPolylineByLine(e);i&&(this.model.removePolyline(i),this.highlightedLines=[],this.deleteDom.setLines([]).hide())});f(this,"cancelDeleteClickCallback",()=>{this.deleteDom.hide(),this.clearHighlightLines(),this.unHighlightArea()});this.deleteDom=new Ba(this.five,{i18n:this.config.i18n,onClick:()=>{this.choose==="line"?this.deleteLine():this.choose instanceof ea&&this.deleteArea(this.choose)},cancel:this.cancelDeleteClickCallback}).appendTo(this.container),this.model.getAllLines().forEach(s=>{s.distanceItem.appendTo(this.container),s.distanceItem.update(this.five),s.hook.on("selected",this.chooseLine),s.distanceItem.setCanSelect(!0),this.group.add(s.mesh)}),this.model.getAllAreas().forEach(s=>{s.areaItem.appendTo(this.container),s.areaItem.updateArea(this.five),s.hook.on("selected",this.chooseArea),s.areaItem.setCanSelect(!0),this.group.add(s.polygon),s.polyline.lines.forEach(o=>{o.distanceItem.appendTo(this.container),o.distanceItem.update(this.five),this.group.add(o.mesh)})});const i=this.five.getElement();if(i){this.fiveElement=i;const s=new ls(i);this.hammer=s,s.on("pan",this.onPan),s.on("panstart",this.onPanStart),s.on("panend",this.onPanEnd)}this.updateDistanceUI(),this.five.needsRender=!0,this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.wantsTapGesture),this.five.on("wantsPanGesture",this.wantsPanGesture),this.five.on("wantsChangeMode",nc),this.model.hook.on("polylineRemoved",this.polylineRemoved)}dispose(){var e;super.dispose(),this.deleteDom.dispose(),this.model.hook.off("polylineRemoved",this.polylineRemoved),this.model.getAllLines().forEach(i=>i.hook.off("selected",this.chooseLine)),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsPanGesture",this.wantsPanGesture),this.five.off("wantsTapGesture",this.wantsTapGesture),this.five.off("wantsChangeMode",nc),this.five.needsRender=!0,this.hook.emit("selectedChange",[]),(e=this.hammer)==null||e.destroy()}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.unHighlightLines(this.highlightedLines),this.highlightedLines=[])}highlightArea(e){this.unHighlightLines(),this.unHighlightArea(),this.highlightLines(e.polyline.lines),this.five.needsRender=!0}unHighlightArea(e){const i=e!=null?e:this.highlightedArea;i&&(this.unHighlightLines(i.polyline.lines),this.five.needsRender=!0)}highlightLines(e){this.unHighlightLines(),this.highlightedLines=e,e.forEach(i=>this.highlightLine(i))}unHighlightLines(e){this.unHighlightArea();const i=e!=null?e:this.highlightedLines;i&&i.forEach(s=>{s.selected=!1,s.distanceItem.unHighlight(),this.group.remove(s.lightMesh),this.five.needsRender=!0})}}class Ra{constructor(t){f(this,"config");f(this,"polylines",[]);f(this,"areas",[]);f(this,"hook",new je.Subscribe);this.config=t}addPolyline(t){if(this.includes(t)){console.error(new Error("不能重复添加 polyline"));return}this.polylines.push(t),this.hook.emit("polylineAdded",t)}addArea(t){if(this.areas.find(({id:e})=>e===t.id)!==void 0){console.error(new Error("不能重复添加 area"));return}this.areas.push(t),this.hook.emit("areaAdded",t)}replacePolylineByID(t,e){const i=this.getPolylineByID(t);i==null||i.replace(e)}removePolyline(t){const e=this.polylines.findIndex(({id:i})=>i===t.id);if(e===-1){console.error(new Error("polyline 不存在"));return}this.polylines.splice(e,1),this.hook.emit("polylineRemoved",t)}removeArea(t){const e=this.areas.findIndex(({id:i})=>i===t.id);if(e===-1){console.error(new Error("area 不存在"));return}this.areas.splice(e,1)}getPolylineByID(t){return this.polylines.find(e=>e.id===t)}getPolylineByLine(t){return this.polylines.find(e=>e.includes(t))}getLineByID(t){return this.getAllLines().find(e=>e.id===t)}getAllLines(){return this.polylines.map(t=>t.lines).flat(1)}getAllAreas(){return this.areas}getAllPoints(){return this.polylines.map(t=>t.points).flat(1)}includes(t){return this.polylines.find(({id:e})=>e===t.id)!==void 0}clear(){this.polylines.forEach(t=>this.hook.emit("polylineRemoved",t)),this.areas.forEach(t=>t.dispose()),this.polylines.splice(0,this.polylines.length),this.areas.splice(0,this.areas.length)}dispose(){this.clear()}getClosestPoint(){}parse(t){this.clear(),this.polylines.push(...t.polylines.map(e=>new Oi({model:this}).fromJson(e))),this.polylines.forEach(e=>this.hook.emit("polylineAdded",e))}toJson(){return{polylines:this.polylines.map(t=>t.toJson()).filter(t=>t.lines.length>0)}}}function Mv(){}const{Vector2:kv}=E;function xv(n,t){const{offsetWidth:e,offsetHeight:i}=t,{top:s,left:o}=t.getBoundingClientRect();return Object.assign(new kv,{x:(n.x-o)/e*2-1,y:-(n.y-s)/i*2+1})}const Dv="data:image/png;base64,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",Sv="data:image/png;base64,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",Tv=`
301
301
  varying vec2 vUv;
302
302
  void main() {
303
303
  vUv = uv;
@@ -312,7 +312,7 @@ void main() {
312
312
  float match = 1.0 - uv.x;
313
313
  gl_FragColor = vec4(1.0,1.0,1.0,match);
314
314
  }
315
- `;function uu(n){var v,y;const t=(v=n.isMobile)!=null?v:!0,e=(y=n.useNormalVector)!=null?y:!0;let i=10349931;e&&n.ballColor>=0&&(i=n.ballColor);const s=new R.Group,o=new R.PlaneGeometry(.3,.3),r=t?Dv:Sv,a=new R.TextureLoader().load(r);a.encoding=R.sRGBEncoding,a.minFilter=R.LinearFilter;const l=new R.MeshBasicMaterial({map:a,transparent:!0,depthTest:!1}),c=new R.Mesh(o,l),d=new R.CurvePath;d.add(new R.LineCurve3(new R.Vector3(0,0,0),new R.Vector3(0,0,.1)));const h=new R.TubeGeometry(d,8,.003),u=new R.ShaderMaterial({vertexShader:Tv,fragmentShader:Lv,depthTest:!1,transparent:!0}),m=new R.Mesh(h,u),A=new R.SphereGeometry(.01,20,20),p=new R.MeshBasicMaterial({color:i,depthTest:!1,transparent:!0,side:R.DoubleSide}),g=new R.Mesh(A,p);return g.position.set(0,0,.1),s.name="mouse-current",s.add(c),e&&s.add(m,g),s}class jv{constructor(t){f(this,"container",document.createElement("div"));f(this,"five");f(this,"group");f(this,"mouseGroup");f(this,"hasAppendMouseGroup",!1);f(this,"hook");f(this,"content");f(this,"intersectMesh");f(this,"centerMouseXY");f(this,"raycaster",new R.Raycaster);f(this,"pieceStyl",{matrix3d:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],scale:1,opacity:.4});f(this,"onCameraDirectionUpdate",()=>{const t=this.getIntersection();if(t){this.pieceChange(t),this.updateMouseGroup(t);const e=new ft(this.mouseGroup.position);this.hook.emit("nowPointChange",e)}});f(this,"onWillChangeState",(t,e)=>{var s;this.dotAnimation();const i=(s=this.getIntersection())==null?void 0:s.point;i&&(e==="editing"?this.hook.emit("getStartPoint",new ft(i)):this.hook.emit("getEndPoint",new ft(i)))});f(this,"computedCenterMouseXY",()=>{const t=this.container.querySelector(".range-piece__aim");if(!t)return null;const{left:e,top:i,width:s,height:o}=t.getBoundingClientRect(),r=Math.round(e+s/2),a=Math.round(i+o/2),c=xv({x:r,y:a},this.five.getElement());this.centerMouseXY=c});f(this,"getIntersection",()=>{if(!this.centerMouseXY)return null;this.raycaster.setFromCamera(this.centerMouseXY,this.five.camera);const t=this.five.model.intersectRaycaster(this.raycaster)[0];return t||null});this.five=t.five,this.hook=t.hook,this.group=t.group,this.mouseGroup=uu(G({isMobile:!0},t.openParams.crossHairParameter)),this.container.innerHTML=dm,this.container.classList.add("range-piece-controller"),this.content=this.container.querySelector(".range-piece__content"),this.content&&(this.content.style.transform=`matrix3d(${this.pieceStyl.matrix3d.toString()}) scale(${this.pieceStyl.scale})`,this.content.style.opacity=`${this.pieceStyl.opacity}`),t.container.append(this.container),this.intersectMesh=new R.Mesh(new R.RingGeometry(.04,.08,32),new R.MeshBasicMaterial({color:1245179,opacity:0,side:R.DoubleSide,transparent:!0})),this.container.addEventListener("animationend",this.computedCenterMouseXY),this.five.on("cameraUpdate",this.onCameraDirectionUpdate),this.hook.on("willChangeState",this.onWillChangeState)}dispose(){this.container.removeEventListener("animationend",this.computedCenterMouseXY),this.five.off("cameraUpdate",this.onCameraDirectionUpdate),this.hook.off("willChangeState",this.onWillChangeState),this.container.remove(),this.group.remove(this.mouseGroup),this.mouseGroup.remove(),this.hasAppendMouseGroup=!1,this.five.scene.remove(this.intersectMesh)}pieceChange(t){const e=t.face,i=t.point;if(e&&i){const o=e.normal.clone().clone().multiplyScalar(.05),r=i.clone().add(o);this.intersectMesh.position.copy(r);const a=r.clone().add(o);this.intersectMesh.lookAt(a),this.five.scene.add(this.intersectMesh);const l=this.intersectMesh.modelViewMatrix.clone().toArray();this.changePieceStyl("matrix3d",l);const c=this.calculateSize(i);this.changePieceStyl("scale",c)}}calculateSize(t){if(!t)return;const e=this.five.camera.position;let i=t.distanceTo(e);const s=4,o=1;return i>s&&(i=s),i<o&&(i=o),-.51/(s-o)*i+1}dotAnimation(){const t=sl.Easing.Quadratic.InOut,e={opacity:.4,scale:this.pieceStyl.scale},i={opacity:[1,.4],scale:[this.pieceStyl.scale*.8,this.pieceStyl.scale]};let s=Mv;const o=new sl.Tween(e).to(i,500).easing(t).start(0).onUpdate(({opacity:r,scale:a})=>{this.changePieceStyl("scale",a),this.changePieceStyl("opacity",r)}).onComplete(()=>{s()});s=In(r=>{o.update(r)})}changePieceStyl(t,e){this.content&&(this.pieceStyl[t]=e,this.content.style.transform=`matrix3d(${this.pieceStyl.matrix3d.toString()}) scale(${this.pieceStyl.scale})`,this.content.style.opacity=`${this.pieceStyl.opacity}`)}updateMouseGroup(t,e){if(!this.hasAppendMouseGroup){this.group.add(this.mouseGroup),this.hasAppendMouseGroup=!0;const i=this.container.querySelector(".range-piece__aim");i&&(i.style.opacity="0")}if(!t)return this.mouseGroup;if(this.mouseGroup.position.copy(t.point),e)this.mouseGroup.quaternion.copy(e.quaternion);else if(t.face){const s=t.face.normal.clone().multiplyScalar(.05),r=t.point.clone().add(s).clone().add(s);this.mouseGroup.lookAt(r)}return this.mouseGroup}}class Xn extends Mo{constructor(e){super(e);f(this,"state","watching");f(this,"polyline");f(this,"hasAppendDashed",!1);f(this,"mobileStartPoint",null);f(this,"mobileNowPoint",null);f(this,"highlightedLines",[]);f(this,"deleteDom");f(this,"rangePieceController");f(this,"disposers",[]);f(this,"onWantsTapGesture",e=>{if(this.state==="editing")return!1;const[i]=this.five.model.intersectRaycaster(e);if(!i)return;const s=this.five.camera,o=i.point.clone().project(s),r=this.container.clientWidth,a=this.container.clientHeight,l=new R.Vector2(o.x*r,o.y*a),c=this.model.getAllLines().map(m=>{const[A,p]=m.points,g=A.position.clone().project(s),v=p.position.clone().project(s);if(!zi(g)&&!zi(v))return null;const y=new R.Vector2(g.x*r,g.y*a),I=new R.Vector2(v.x*r,v.y*a);return{id:m.id,points:[y,I]}}).filter(m=>!!m);if(c.length===0)return;const h=c.map(m=>{const A=Va(l,m.points);return{id:m.id,distance:A.distanceTo(l)}}).sort((m,A)=>m.distance-A.distance)[0];if(h.distance>20)return;const u=this.model.getAllLines().find(({id:m})=>m===h.id);if(u)return this.chooseLine(u),!1});f(this,"onWantsToMoveToPano",()=>this.state==="watching");f(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.dashed.distanceItem.update(this.five)});f(this,"updateMobileDashed",()=>{!this.mobileStartPoint||!this.mobileNowPoint||(this.dashed.setPoints(this.mobileStartPoint.position,this.mobileNowPoint.position),this.dashed.distanceItem.update(this.five),this.hook.emit("editedDashedLineChange",this.dashed))});f(this,"updateMagnifier",e=>{this.magnifier.containerDom!==this.container&&this.magnifier.appendTo(this.container),this.magnifier.getCurrentState().enabled||this.magnifier.enable(),requestAnimationFrame(()=>this.magnifier.renderWithPoint(e.position)),this.five.needsRender=!0});f(this,"onGetStartPoint",e=>{this.mobileStartPoint=e,this.polyline=new Oi({model:this.model}),this.polyline.hook.on("lineAdded",()=>this.hook.emit("editedPolylineChange",this.polyline)),this.polyline.hook.on("lineRemoved",()=>this.hook.emit("editedPolylineChange",this.polyline))});f(this,"onGetEndPoint",()=>{const e=this.mobileNowPoint;if(this.removeLine(this.dashed),this.hasAppendDashed=!1,this.mobileStartPoint&&e){const i=new ii(this.mobileStartPoint,e,this.model);this.polyline.addLine(i),i.distanceItem.appendTo(this.container),i.distanceItem.update(this.five),i.hook.on("selected",this.chooseLine),this.disposers.push(()=>i.hook.off("selected",this.chooseLine)),this.group.add(i.mesh),this.model.addPolyline(this.polyline)}this.mobileStartPoint=null,this.mobileNowPoint=null,this.five.needsRender=!0});f(this,"onNowPointChange",e=>{if(this.state==="watching"){this.mobileNowPoint=e,this.updateMagnifier(e);return}this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh),this.hasAppendDashed=!0),this.five.needsRender=!0,this.mobileNowPoint=e,this.updateMobileDashed(),this.updateMagnifier(e),this.five.needsRender=!0});f(this,"onWillChangeState",(e,i)=>{this.state=i,this.state==="watching"?this.five.helperVisible=!0:this.five.helperVisible=!1});f(this,"chooseLine",e=>{const i=e.getPolyline().lines;this.highlightLines(i),this.five.needsRender=!0,this.hook.emit("selectedChange",i.map(s=>s))});f(this,"deleteDomClickCallback",()=>{this.highlightedLines.forEach(e=>{this.removeLine(e);const i=this.model.getPolylineByLine(e);this.model.removePolyline(i)}),this.highlightedLines=[],this.deleteDom.setLines([]).hide()});f(this,"cancelDeleteClickCallback",()=>{this.clearHighlightLines()});this.model=new Ra(this.config),this.polyline=new Oi({model:this.model}),this.rangePieceController=new jv(e),this.deleteDom=new Ba(this.five,{i18n:this.config.i18n,onClick:this.deleteDomClickCallback,cancel:this.cancelDeleteClickCallback}).appendTo(this.container),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.onWantsTapGesture),this.five.on("wantsToMoveToPano",this.onWantsToMoveToPano),this.five.helperVisible=!1,this.hook.emit("editedDashedLineChange",null),this.hook.on("getStartPoint",this.onGetStartPoint),this.hook.on("getEndPoint",this.onGetEndPoint),this.hook.on("nowPointChange",this.onNowPointChange),this.hook.on("willChangeState",this.onWillChangeState),this.five.refresh()}dispose(){super.dispose(),this.disposers.forEach(e=>e()),this.five.helperVisible=!0,this.rangePieceController.dispose(),this.group.remove(this.mouseGroup),this.dashed.remove(),this.perpendicularDashed.remove(),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsTapGesture",this.onWantsTapGesture),this.five.off("wantsToMoveToPano",this.onWantsToMoveToPano),this.hook.off("getStartPoint",this.onGetStartPoint),this.hook.off("getEndPoint",this.onGetEndPoint),this.hook.off("nowPointChange",this.onNowPointChange),this.hook.off("willChangeState",this.onWillChangeState),this.hook.emit("selectedChange",[]),this.five.needsRender=!0}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.deleteDom.setLines([]).hide(),this.model.getAllLines().forEach(e=>{e.selected=!1,e.distanceItem.unHighlight(),this.group.remove(e.lightMesh)}),this.highlightedLines=[],this.five.needsRender=!0)}getEditingLines(){return this.model.polylines}highlightLines(e){this.clearHighlightLines(),this.highlightedLines=e,this.deleteDom.setLines(e).updatePosition().show(),e.forEach(i=>this.highlightLine(i))}}const co="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxmaWx0ZXIgeD0iLTUuMyUiIHk9Ii01LjMlIiB3aWR0aD0iMTEwLjUlIiBoZWlnaHQ9IjExMC41JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19hIj48ZmVPZmZzZXQgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93Qmx1ck91dGVyMSIgaW4yPSJTb3VyY2VBbHBoYSIgb3BlcmF0b3I9Im91dCIgcmVzdWx0PSJzaGFkb3dCbHVyT3V0ZXIxIi8+PGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwLjUgMCIgaW49InNoYWRvd0JsdXJPdXRlcjEiLz48L2ZpbHRlcj48ZmlsdGVyIHg9Ii0xMS40JSIgeT0iLTExLjQlIiB3aWR0aD0iMTIyLjklIiBoZWlnaHQ9IjEyMi45JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19jIj48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSI0LjUiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIi8+PGZlT2Zmc2V0IGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMC4zIDAiIGluPSJzaGFkb3dJbm5lcklubmVyMSIvPjwvZmlsdGVyPjxmaWx0ZXIgeD0iLTEyNi42JSIgeT0iLTMzNy41JSIgd2lkdGg9IjM1My4xJSIgaGVpZ2h0PSI3NzUlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJwcmVmaXhfX2UiPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjE2IiBpbj0iU291cmNlR3JhcGhpYyIvPjwvZmlsdGVyPjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19kIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9Ii43IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2YiPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48Y2lyY2xlIGlkPSJwcmVmaXhfX2IiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC40NDQiLz48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBmaWxsPSIjMDAwIiBmaWx0ZXI9InVybCgjcHJlZml4X19jKSIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjxjaXJjbGUgc3Ryb2tlPSJ1cmwoI3ByZWZpeF9fZCkiIHN0cm9rZS13aWR0aD0iLjQiIGZpbGwtb3BhY2l0eT0iLjI0MSIgZmlsbD0iI0ZGRiIgc3Ryb2tlLWxpbmVqb2luPSJzcXVhcmUiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC4yNDQiLz48ZWxsaXBzZSBmaWxsPSIjRkZGIiBvcGFjaXR5PSIuNTk2IiBmaWx0ZXI9InVybCgjcHJlZml4X19lKSIgY3g9IjM2IiBjeT0iMzYiIHJ4PSIxOC45NjMiIHJ5PSI3LjExMSIvPjxwYXRoIGQ9Ik0zNiAwQzE2LjExOCAwIDAgMTYuMTE4IDAgMzZzMTYuMTE4IDM2IDM2IDM2IDM2LTE2LjExOCAzNi0zNlM1NS44ODIgMCAzNiAwem0wIDQuNDQ0YzE3LjQyOCAwIDMxLjU1NiAxNC4xMjggMzEuNTU2IDMxLjU1NlM1My40MjggNjcuNTU2IDM2IDY3LjU1NiA0LjQ0NCA1My40MjggNC40NDQgMzYgMTguNTcyIDQuNDQ0IDM2IDQuNDQ0eiIgZmlsbD0idXJsKCNwcmVmaXhfX2YpIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L2c+PC9zdmc+",Qa="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSIxNS41MSUiIHkxPSIxMi40OTclIiB4Mj0iODUuMjY1JSIgeTI9Ijg2LjE0MyUiIGlkPSJwcmVmaXhfX2IiPjxzdG9wIHN0b3AtY29sb3I9IiM5NUFFRkYiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjNjM4NkZGIiBvZmZzZXQ9IjEwMCUiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19hIj48c3RvcCBzdG9wLWNvbG9yPSIjOTlBRUZGIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiM5OUFFRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2QiPjxzdG9wIHN0b3AtY29sb3I9IiM4Nzk3RDIiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzYyNzdDNyIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48ZmlsdGVyIHg9Ii02My4zJSIgeT0iLTE2OC44JSIgd2lkdGg9IjIyNi42JSIgaGVpZ2h0PSI0MzcuNSUiIGZpbHRlclVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgaWQ9InByZWZpeF9fYyI+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iOCIgaW49IlNvdXJjZUdyYXBoaWMiLz48L2ZpbHRlcj48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48Y2lyY2xlIHN0cm9rZT0idXJsKCNwcmVmaXhfX2EpIiBzdHJva2Utd2lkdGg9Ii40IiBmaWxsPSJ1cmwoI3ByZWZpeF9fYikiIG9wYWNpdHk9Ii43IiBjeD0iMzYiIGN5PSIzNiIgcj0iMjguMjQ0Ii8+PGVsbGlwc2UgZmlsbD0iIzdDOTBEQSIgb3BhY2l0eT0iLjU5NiIgZmlsdGVyPSJ1cmwoI3ByZWZpeF9fYykiIGN4PSIzNiIgY3k9IjM2IiByeD0iMTguOTYzIiByeT0iNy4xMTEiLz48cGF0aCBkPSJNMzYgMEMxNi4xMTggMCAwIDE2LjExOCAwIDM2czE2LjExOCAzNiAzNiAzNiAzNi0xNi4xMTggMzYtMzZTNTUuODgyIDAgMzYgMHptMCA0LjQ0NGMxNy40MjggMCAzMS41NTYgMTQuMTI4IDMxLjU1NiAzMS41NTZTNTMuNDI4IDY3LjU1NiAzNiA2Ny41NTYgNC40NDQgNTMuNDI4IDQuNDQ0IDM2IDE4LjU3MiA0LjQ0NCAzNiA0LjQ0NHoiIGZpbGw9InVybCgjcHJlZml4X19kKSIgZmlsbC1ydWxlPSJub256ZXJvIi8+PC9nPjwvc3ZnPg==",zv=`
315
+ `;function uu(n){var v,y;const t=(v=n.isMobile)!=null?v:!0,e=(y=n.useNormalVector)!=null?y:!0;let i=10349931;e&&n.ballColor>=0&&(i=n.ballColor);const s=new R.Group,o=new R.PlaneGeometry(.3,.3),r=t?Dv:Sv,a=new R.TextureLoader().load(r);a.encoding=R.sRGBEncoding,a.minFilter=R.LinearFilter;const l=new R.MeshBasicMaterial({map:a,transparent:!0,depthTest:!1}),c=new R.Mesh(o,l),d=new R.CurvePath;d.add(new R.LineCurve3(new R.Vector3(0,0,0),new R.Vector3(0,0,.1)));const h=new R.TubeGeometry(d,8,.003),u=new R.ShaderMaterial({vertexShader:Tv,fragmentShader:Lv,depthTest:!1,transparent:!0}),m=new R.Mesh(h,u),A=new R.SphereGeometry(.01,20,20),p=new R.MeshBasicMaterial({color:i,depthTest:!1,transparent:!0,side:R.DoubleSide}),g=new R.Mesh(A,p);return g.position.set(0,0,.1),s.name="mouse-current",s.add(c),e&&s.add(m,g),s}class jv{constructor(t){f(this,"container",document.createElement("div"));f(this,"five");f(this,"group");f(this,"mouseGroup");f(this,"hasAppendMouseGroup",!1);f(this,"hook");f(this,"content");f(this,"intersectMesh");f(this,"centerMouseXY");f(this,"raycaster",new R.Raycaster);f(this,"pieceStyl",{matrix3d:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],scale:1,opacity:.4});f(this,"onCameraDirectionUpdate",()=>{const t=this.getIntersection();if(t){this.pieceChange(t),this.updateMouseGroup(t);const e=new ft(this.mouseGroup.position);this.hook.emit("nowPointChange",e)}});f(this,"onWillChangeState",(t,e)=>{var s;this.dotAnimation();const i=(s=this.getIntersection())==null?void 0:s.point;i&&(e==="editing"?this.hook.emit("getStartPoint",new ft(i)):this.hook.emit("getEndPoint",new ft(i)))});f(this,"computedCenterMouseXY",()=>{const t=this.container.querySelector(".range-piece__aim");if(!t)return null;const{left:e,top:i,width:s,height:o}=t.getBoundingClientRect(),r=Math.round(e+s/2),a=Math.round(i+o/2),c=xv({x:r,y:a},this.five.getElement());this.centerMouseXY=c});f(this,"getIntersection",()=>{if(!this.centerMouseXY)return null;this.raycaster.setFromCamera(this.centerMouseXY,this.five.camera);const t=this.five.model.intersectRaycaster(this.raycaster)[0];return t||null});this.five=t.five,this.hook=t.hook,this.group=t.group,this.mouseGroup=uu(G({isMobile:!0},t.openParams.crossHairParameter)),this.container.innerHTML=dm,this.container.classList.add("range-piece-controller"),this.content=this.container.querySelector(".range-piece__content"),this.content&&(this.content.style.transform=`matrix3d(${this.pieceStyl.matrix3d.toString()}) scale(${this.pieceStyl.scale})`,this.content.style.opacity=`${this.pieceStyl.opacity}`),t.container.append(this.container),this.intersectMesh=new R.Mesh(new R.RingGeometry(.04,.08,32),new R.MeshBasicMaterial({color:1245179,opacity:0,side:R.DoubleSide,transparent:!0})),this.container.addEventListener("animationend",this.computedCenterMouseXY),this.five.on("cameraUpdate",this.onCameraDirectionUpdate),this.hook.on("willChangeState",this.onWillChangeState)}dispose(){this.container.removeEventListener("animationend",this.computedCenterMouseXY),this.five.off("cameraUpdate",this.onCameraDirectionUpdate),this.hook.off("willChangeState",this.onWillChangeState),this.container.remove(),this.group.remove(this.mouseGroup),this.mouseGroup.remove(),this.hasAppendMouseGroup=!1,this.five.scene.remove(this.intersectMesh)}pieceChange(t){const e=t.face,i=t.point;if(e&&i){const o=e.normal.clone().clone().multiplyScalar(.05),r=i.clone().add(o);this.intersectMesh.position.copy(r);const a=r.clone().add(o);this.intersectMesh.lookAt(a),this.five.scene.add(this.intersectMesh);const l=this.intersectMesh.modelViewMatrix.clone().toArray();this.changePieceStyl("matrix3d",l);const c=this.calculateSize(i);this.changePieceStyl("scale",c)}}calculateSize(t){if(!t)return;const e=this.five.camera.position;let i=t.distanceTo(e);const s=4,o=1;return i>s&&(i=s),i<o&&(i=o),-.51/(s-o)*i+1}dotAnimation(){const t=sl.Easing.Quadratic.InOut,e={opacity:.4,scale:this.pieceStyl.scale},i={opacity:[1,.4],scale:[this.pieceStyl.scale*.8,this.pieceStyl.scale]};let s=Mv;const o=new sl.Tween(e).to(i,500).easing(t).start(0).onUpdate(({opacity:r,scale:a})=>{this.changePieceStyl("scale",a),this.changePieceStyl("opacity",r)}).onComplete(()=>{s()});s=In(r=>{o.update(r)})}changePieceStyl(t,e){this.content&&(this.pieceStyl[t]=e,this.content.style.transform=`matrix3d(${this.pieceStyl.matrix3d.toString()}) scale(${this.pieceStyl.scale})`,this.content.style.opacity=`${this.pieceStyl.opacity}`)}updateMouseGroup(t,e){if(!this.hasAppendMouseGroup){this.group.add(this.mouseGroup),this.hasAppendMouseGroup=!0;const i=this.container.querySelector(".range-piece__aim");i&&(i.style.opacity="0")}if(!t)return this.mouseGroup;if(this.mouseGroup.position.copy(t.point),e)this.mouseGroup.quaternion.copy(e.quaternion);else if(t.face){const s=t.face.normal.clone().multiplyScalar(.05),r=t.point.clone().add(s).clone().add(s);this.mouseGroup.lookAt(r)}return this.mouseGroup}}class Xn extends ko{constructor(e){super(e);f(this,"state","watching");f(this,"polyline");f(this,"hasAppendDashed",!1);f(this,"mobileStartPoint",null);f(this,"mobileNowPoint",null);f(this,"highlightedLines",[]);f(this,"deleteDom");f(this,"rangePieceController");f(this,"disposers",[]);f(this,"onWantsTapGesture",e=>{if(this.state==="editing")return!1;const[i]=this.five.model.intersectRaycaster(e);if(!i)return;const s=this.five.camera,o=i.point.clone().project(s),r=this.container.clientWidth,a=this.container.clientHeight,l=new R.Vector2(o.x*r,o.y*a),c=this.model.getAllLines().map(m=>{const[A,p]=m.points,g=A.position.clone().project(s),v=p.position.clone().project(s);if(!zi(g)&&!zi(v))return null;const y=new R.Vector2(g.x*r,g.y*a),I=new R.Vector2(v.x*r,v.y*a);return{id:m.id,points:[y,I]}}).filter(m=>!!m);if(c.length===0)return;const h=c.map(m=>{const A=Va(l,m.points);return{id:m.id,distance:A.distanceTo(l)}}).sort((m,A)=>m.distance-A.distance)[0];if(h.distance>20)return;const u=this.model.getAllLines().find(({id:m})=>m===h.id);if(u)return this.chooseLine(u),!1});f(this,"onWantsToMoveToPano",()=>this.state==="watching");f(this,"onCameraUpdate",()=>{this.updateDistanceUI(),this.dashed.distanceItem.update(this.five)});f(this,"updateMobileDashed",()=>{!this.mobileStartPoint||!this.mobileNowPoint||(this.dashed.setPoints(this.mobileStartPoint.position,this.mobileNowPoint.position),this.dashed.distanceItem.update(this.five),this.hook.emit("editedDashedLineChange",this.dashed))});f(this,"updateMagnifier",e=>{this.magnifier.containerDom!==this.container&&this.magnifier.appendTo(this.container),this.magnifier.getCurrentState().enabled||this.magnifier.enable(),requestAnimationFrame(()=>this.magnifier.renderWithPoint(e.position)),this.five.needsRender=!0});f(this,"onGetStartPoint",e=>{this.mobileStartPoint=e,this.polyline=new Oi({model:this.model}),this.polyline.hook.on("lineAdded",()=>this.hook.emit("editedPolylineChange",this.polyline)),this.polyline.hook.on("lineRemoved",()=>this.hook.emit("editedPolylineChange",this.polyline))});f(this,"onGetEndPoint",()=>{const e=this.mobileNowPoint;if(this.removeLine(this.dashed),this.hasAppendDashed=!1,this.mobileStartPoint&&e){const i=new ii(this.mobileStartPoint,e,this.model);this.polyline.addLine(i),i.distanceItem.appendTo(this.container),i.distanceItem.update(this.five),i.hook.on("selected",this.chooseLine),this.disposers.push(()=>i.hook.off("selected",this.chooseLine)),this.group.add(i.mesh),this.model.addPolyline(this.polyline)}this.mobileStartPoint=null,this.mobileNowPoint=null,this.five.needsRender=!0});f(this,"onNowPointChange",e=>{if(this.state==="watching"){this.mobileNowPoint=e,this.updateMagnifier(e);return}this.hasAppendDashed||(this.dashed.distanceItem.appendTo(this.container),this.group.add(this.dashed.mesh),this.hasAppendDashed=!0),this.five.needsRender=!0,this.mobileNowPoint=e,this.updateMobileDashed(),this.updateMagnifier(e),this.five.needsRender=!0});f(this,"onWillChangeState",(e,i)=>{this.state=i,this.state==="watching"?this.five.helperVisible=!0:this.five.helperVisible=!1});f(this,"chooseLine",e=>{const i=e.getPolyline().lines;this.highlightLines(i),this.five.needsRender=!0,this.hook.emit("selectedChange",i.map(s=>s))});f(this,"deleteDomClickCallback",()=>{this.highlightedLines.forEach(e=>{this.removeLine(e);const i=this.model.getPolylineByLine(e);this.model.removePolyline(i)}),this.highlightedLines=[],this.deleteDom.setLines([]).hide()});f(this,"cancelDeleteClickCallback",()=>{this.clearHighlightLines()});this.model=new Ra(this.config),this.polyline=new Oi({model:this.model}),this.rangePieceController=new jv(e),this.deleteDom=new Ba(this.five,{i18n:this.config.i18n,onClick:this.deleteDomClickCallback,cancel:this.cancelDeleteClickCallback}).appendTo(this.container),this.five.on("cameraUpdate",this.onCameraUpdate),this.five.on("wantsTapGesture",this.onWantsTapGesture),this.five.on("wantsToMoveToPano",this.onWantsToMoveToPano),this.five.helperVisible=!1,this.hook.emit("editedDashedLineChange",null),this.hook.on("getStartPoint",this.onGetStartPoint),this.hook.on("getEndPoint",this.onGetEndPoint),this.hook.on("nowPointChange",this.onNowPointChange),this.hook.on("willChangeState",this.onWillChangeState),this.five.refresh()}dispose(){super.dispose(),this.disposers.forEach(e=>e()),this.five.helperVisible=!0,this.rangePieceController.dispose(),this.group.remove(this.mouseGroup),this.dashed.remove(),this.perpendicularDashed.remove(),this.five.off("cameraUpdate",this.onCameraUpdate),this.five.off("wantsTapGesture",this.onWantsTapGesture),this.five.off("wantsToMoveToPano",this.onWantsToMoveToPano),this.hook.off("getStartPoint",this.onGetStartPoint),this.hook.off("getEndPoint",this.onGetEndPoint),this.hook.off("nowPointChange",this.onNowPointChange),this.hook.off("willChangeState",this.onWillChangeState),this.hook.emit("selectedChange",[]),this.five.needsRender=!0}highlightLine(e){e.selected||(e.selected=!0,this.group.add(e.lightMesh),e.distanceItem.highlight(),this.five.needsRender=!0)}clearHighlightLines(){this.group.children.length!==0&&(this.deleteDom.setLines([]).hide(),this.model.getAllLines().forEach(e=>{e.selected=!1,e.distanceItem.unHighlight(),this.group.remove(e.lightMesh)}),this.highlightedLines=[],this.five.needsRender=!0)}getEditingLines(){return this.model.polylines}highlightLines(e){this.clearHighlightLines(),this.highlightedLines=e,this.deleteDom.setLines(e).updatePosition().show(),e.forEach(i=>this.highlightLine(i))}}const ho="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPjxkZWZzPjxmaWx0ZXIgeD0iLTUuMyUiIHk9Ii01LjMlIiB3aWR0aD0iMTEwLjUlIiBoZWlnaHQ9IjExMC41JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19hIj48ZmVPZmZzZXQgaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9InNoYWRvd09mZnNldE91dGVyMSIvPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEiIGluPSJzaGFkb3dPZmZzZXRPdXRlcjEiIHJlc3VsdD0ic2hhZG93Qmx1ck91dGVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93Qmx1ck91dGVyMSIgaW4yPSJTb3VyY2VBbHBoYSIgb3BlcmF0b3I9Im91dCIgcmVzdWx0PSJzaGFkb3dCbHVyT3V0ZXIxIi8+PGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwLjUgMCIgaW49InNoYWRvd0JsdXJPdXRlcjEiLz48L2ZpbHRlcj48ZmlsdGVyIHg9Ii0xMS40JSIgeT0iLTExLjQlIiB3aWR0aD0iMTIyLjklIiBoZWlnaHQ9IjEyMi45JSIgZmlsdGVyVW5pdHM9Im9iamVjdEJvdW5kaW5nQm94IiBpZD0icHJlZml4X19jIj48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSI0LjUiIGluPSJTb3VyY2VBbHBoYSIgcmVzdWx0PSJzaGFkb3dCbHVySW5uZXIxIi8+PGZlT2Zmc2V0IGluPSJzaGFkb3dCbHVySW5uZXIxIiByZXN1bHQ9InNoYWRvd09mZnNldElubmVyMSIvPjxmZUNvbXBvc2l0ZSBpbj0ic2hhZG93T2Zmc2V0SW5uZXIxIiBpbjI9IlNvdXJjZUFscGhhIiBvcGVyYXRvcj0iYXJpdGhtZXRpYyIgazI9Ii0xIiBrMz0iMSIgcmVzdWx0PSJzaGFkb3dJbm5lcklubmVyMSIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwIDEgMCAwIDAgMC4zIDAiIGluPSJzaGFkb3dJbm5lcklubmVyMSIvPjwvZmlsdGVyPjxmaWx0ZXIgeD0iLTEyNi42JSIgeT0iLTMzNy41JSIgd2lkdGg9IjM1My4xJSIgaGVpZ2h0PSI3NzUlIiBmaWx0ZXJVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIGlkPSJwcmVmaXhfX2UiPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjE2IiBpbj0iU291cmNlR3JhcGhpYyIvPjwvZmlsdGVyPjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19kIj48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9Ii43IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2YiPjxzdG9wIHN0b3AtY29sb3I9IiNGRkYiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48Y2lyY2xlIGlkPSJwcmVmaXhfX2IiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC40NDQiLz48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48dXNlIGZpbGw9IiMwMDAiIGZpbHRlcj0idXJsKCNwcmVmaXhfX2EpIiB4bGluazpocmVmPSIjcHJlZml4X19iIi8+PHVzZSBmaWxsPSIjMDAwIiBmaWx0ZXI9InVybCgjcHJlZml4X19jKSIgeGxpbms6aHJlZj0iI3ByZWZpeF9fYiIvPjxjaXJjbGUgc3Ryb2tlPSJ1cmwoI3ByZWZpeF9fZCkiIHN0cm9rZS13aWR0aD0iLjQiIGZpbGwtb3BhY2l0eT0iLjI0MSIgZmlsbD0iI0ZGRiIgc3Ryb2tlLWxpbmVqb2luPSJzcXVhcmUiIGN4PSIzNiIgY3k9IjM2IiByPSIyOC4yNDQiLz48ZWxsaXBzZSBmaWxsPSIjRkZGIiBvcGFjaXR5PSIuNTk2IiBmaWx0ZXI9InVybCgjcHJlZml4X19lKSIgY3g9IjM2IiBjeT0iMzYiIHJ4PSIxOC45NjMiIHJ5PSI3LjExMSIvPjxwYXRoIGQ9Ik0zNiAwQzE2LjExOCAwIDAgMTYuMTE4IDAgMzZzMTYuMTE4IDM2IDM2IDM2IDM2LTE2LjExOCAzNi0zNlM1NS44ODIgMCAzNiAwem0wIDQuNDQ0YzE3LjQyOCAwIDMxLjU1NiAxNC4xMjggMzEuNTU2IDMxLjU1NlM1My40MjggNjcuNTU2IDM2IDY3LjU1NiA0LjQ0NCA1My40MjggNC40NDQgMzYgMTguNTcyIDQuNDQ0IDM2IDQuNDQ0eiIgZmlsbD0idXJsKCNwcmVmaXhfX2YpIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L2c+PC9zdmc+",Qa="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzIiIGhlaWdodD0iNzIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IHgxPSIxNS41MSUiIHkxPSIxMi40OTclIiB4Mj0iODUuMjY1JSIgeTI9Ijg2LjE0MyUiIGlkPSJwcmVmaXhfX2IiPjxzdG9wIHN0b3AtY29sb3I9IiM5NUFFRkYiIG9mZnNldD0iMCUiLz48c3RvcCBzdG9wLWNvbG9yPSIjNjM4NkZGIiBvZmZzZXQ9IjEwMCUiLz48L2xpbmVhckdyYWRpZW50PjxsaW5lYXJHcmFkaWVudCB4MT0iNTAlIiB5MT0iMTAwJSIgeDI9IjUwJSIgeTI9IjAlIiBpZD0icHJlZml4X19hIj48c3RvcCBzdG9wLWNvbG9yPSIjOTlBRUZGIiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iI0ZGRiIgc3RvcC1vcGFjaXR5PSIwIiBvZmZzZXQ9IjI2LjQzMiUiLz48c3RvcCBzdG9wLWNvbG9yPSIjRkZGIiBzdG9wLW9wYWNpdHk9IjAiIG9mZnNldD0iODIuMzA1JSIvPjxzdG9wIHN0b3AtY29sb3I9IiM5OUFFRkYiIHN0b3Atb3BhY2l0eT0iLjQiIG9mZnNldD0iMTAwJSIvPjwvbGluZWFyR3JhZGllbnQ+PGxpbmVhckdyYWRpZW50IHgxPSI1MCUiIHkxPSIwJSIgeDI9IjUwJSIgeTI9IjEwMCUiIGlkPSJwcmVmaXhfX2QiPjxzdG9wIHN0b3AtY29sb3I9IiM4Nzk3RDIiIHN0b3Atb3BhY2l0eT0iLjA1IiBvZmZzZXQ9IjAlIi8+PHN0b3Agc3RvcC1jb2xvcj0iIzYyNzdDNyIgc3RvcC1vcGFjaXR5PSIuMiIgb2Zmc2V0PSIxMDAlIi8+PC9saW5lYXJHcmFkaWVudD48ZmlsdGVyIHg9Ii02My4zJSIgeT0iLTE2OC44JSIgd2lkdGg9IjIyNi42JSIgaGVpZ2h0PSI0MzcuNSUiIGZpbHRlclVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgaWQ9InByZWZpeF9fYyI+PGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj0iOCIgaW49IlNvdXJjZUdyYXBoaWMiLz48L2ZpbHRlcj48L2RlZnM+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48Y2lyY2xlIHN0cm9rZT0idXJsKCNwcmVmaXhfX2EpIiBzdHJva2Utd2lkdGg9Ii40IiBmaWxsPSJ1cmwoI3ByZWZpeF9fYikiIG9wYWNpdHk9Ii43IiBjeD0iMzYiIGN5PSIzNiIgcj0iMjguMjQ0Ii8+PGVsbGlwc2UgZmlsbD0iIzdDOTBEQSIgb3BhY2l0eT0iLjU5NiIgZmlsdGVyPSJ1cmwoI3ByZWZpeF9fYykiIGN4PSIzNiIgY3k9IjM2IiByeD0iMTguOTYzIiByeT0iNy4xMTEiLz48cGF0aCBkPSJNMzYgMEMxNi4xMTggMCAwIDE2LjExOCAwIDM2czE2LjExOCAzNiAzNiAzNiAzNi0xNi4xMTggMzYtMzZTNTUuODgyIDAgMzYgMHptMCA0LjQ0NGMxNy40MjggMCAzMS41NTYgMTQuMTI4IDMxLjU1NiAzMS41NTZTNTMuNDI4IDY3LjU1NiAzNiA2Ny41NTYgNC40NDQgNTMuNDI4IDQuNDQ0IDM2IDE4LjU3MiA0LjQ0NCAzNiA0LjQ0NHoiIGZpbGw9InVybCgjcHJlZml4X19kKSIgZmlsbC1ydWxlPSJub256ZXJvIi8+PC9nPjwvc3ZnPg==",zv=`
316
316
  <svg class="fpm__exit-icon width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
317
317
  <defs>
318
318
  <radialGradient cx="50%" cy="50%" fx="50%" fy="50%" r="86.3016741%" id="radialGradient-1">
@@ -371,7 +371,7 @@ void main() {
371
371
  opacity: 1;
372
372
  }
373
373
  .fpm__main__start {
374
- background-image: url(${co});
374
+ background-image: url(${ho});
375
375
  }
376
376
  .fpm__main__end {
377
377
  background-image: url(${Qa});
@@ -486,7 +486,7 @@ void main() {
486
486
  opacity: 1;
487
487
  }
488
488
  .fpm__main__start {
489
- background-image: url(${co});
489
+ background-image: url(${ho});
490
490
  }
491
491
  .fpm__main__end {
492
492
  background-image: url(${Qa});
@@ -512,8 +512,8 @@ void main() {
512
512
  </div>
513
513
  </div>
514
514
  </div>
515
- `,Qv={display:"none",position:"absolute",top:"0",left:"0",width:"100%",height:"100%",opacity:"0",transform:"translate(0, 10px)",transition:"opacity 500ms ease-in-out, transform 500ms ease-in-out"},Gv={position:"absolute",left:"50%",bottom:"32px",transform:"translateX(-50%)",height:"89px",display:"flex",justifyContent:"space-between",alignItems:"center",fontSize:"14px",pointerEvents:"all",color:"#fff",zIndex:"10"},Nv={position:"absolute",bottom:"0",left:"0",opacity:"0.5",width:"100%",height:"184px",background:"linear-gradient(180deg, rgba(0,0,0,0.00) 0%, #000000 100%)",zIndex:"0"},fu={margin:"0 64px"},Hv={opacity:"0.85"},mu={width:"72px",height:"72px",backgroundSize:"100%",cursor:"pointer",transition:"all 200ms ease-in-out"},_v={width:"24px",height:"24px",marginRight:"4px",backgroundSize:"100%",cursor:"pointer"},Fv={userSelect:"none",pointerEvents:"none"};class Wv{constructor(t,e,i){f(this,"container");f(this,"measureController");f(this,"mainElement");f(this,"_params");f(this,"_btnTexts",{start:"开始",end:"结束",revoke:"撤销",exit:"退出"});f(this,"onMouseEnter",()=>{const{mainItem:t}=this.mainElement;t.style.opacity="1"});f(this,"onMouseLeave",()=>{const{mainItem:t}=this.mainElement;t.style.opacity="0.85"});f(this,"onClick",()=>{this.measureController.getCurrentMode()!=="Edit"?this.measureController.changeMode("Edit"):this.measureController.save().changeMode("Watch")});f(this,"modeChangeHandler",t=>{t==="Edit"?this.change2Done():this.change2Add()});var r,a,l,c;this._params=i,this._btnTexts={start:(r=this._params.startButtonText)!=null?r:this._btnTexts.start,end:(a=this._params.endButtonText)!=null?a:this._btnTexts.end,revoke:(l=this._params.revokeButtonText)!=null?l:this._btnTexts.revoke,exit:(c=this._params.exitButtonText)!=null?c:this._btnTexts.exit},this.measureController=t,this.container=e,this.mainElement=this.getMainElement(),Object.assign(this.mainElement.mainIcon.style,mu),Object.assign(this.mainElement.mainItem.style,fu);const{revokeTextDom:s,exitTextDom:o}=this._getTextElement();s&&(s.innerText=this._btnTexts.revoke),o&&(o.innerText=this._btnTexts.exit),this.change2Add(),this.measureController.hook.on("modeChange",this.modeChangeHandler),this.mainElement.mainItem.addEventListener("click",this.onClick),this.mainElement.mainItem.addEventListener("mouseenter",this.onMouseEnter),this.mainElement.mainItem.addEventListener("mouseleave",this.onMouseLeave)}dispose(){this.measureController.hook.off("modeChange",this.modeChangeHandler),this.mainElement.mainItem.removeEventListener("click",this.onClick),this.mainElement.mainItem.removeEventListener("mouseenter",this.onMouseEnter),this.mainElement.mainItem.removeEventListener("mouseleave",this.onMouseLeave)}getMainElement(){const t=this.container.querySelector(".fpm__main-text"),e=this.container.querySelector(".fpm__main"),i=this.container.querySelector(".fpm__main-icon");if(!e||!t||!i)throw new Error("cannot find dom");return{mainTextDom:t,mainItem:e,mainIcon:i}}_getTextElement(){const t=this.container.querySelector(".fpm__revoke-text"),e=this.container.querySelector(".fpm__exit-text");return{revokeTextDom:t,exitTextDom:e}}change2Add(){const{mainIcon:t,mainTextDom:e}=this.mainElement;if(t.className.includes("fpm__main__start")){e.innerText=this._btnTexts.start;return}t.className.includes("fpm__main__end")&&(t.style.transform="scale(0.8)",e.className.includes("fpm__main-text__show")?e.classList.replace("fpm__main-text__show","fpm__main-text__hide"):e.classList.add("fpm__main-text__hide"),setTimeout(()=>{t.classList.replace("fpm__main__end","fpm__main__start"),t.style.transform="scale(1)",e.innerText=this._btnTexts.start,e.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200))}change2Done(){const{mainTextDom:t,mainIcon:e}=this.getMainElement();t.innerText!==this._btnTexts.end&&(e.className.includes("fpm__main__end")||e.className.includes("fpm__main__start")&&(e.style.transform="scale(0.8)",t.className.includes("fpm__main-text__show")?t.classList.replace("fpm__main-text__show","fpm__main-text__hide"):t.classList.add("fpm__main-text__hide"),setTimeout(()=>{e.classList.replace("fpm__main__start","fpm__main__end"),e.style.transform="scale(1)",t.innerText=this._btnTexts.end,t.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200)))}}class Yv{constructor(t,e,i){f(this,"container");f(this,"measureController");f(this,"mainElement");f(this,"_params");f(this,"_btnTexts",{start:"开始",end:"结束"});f(this,"onClick",()=>{var t;this.mainElement.mainTextDom.innerText===((t=this._params.startButtonText)!=null?t:"开始")?(this.measureController.hook.emit("willChangeState","watching","editing"),this.change2Done()):(this.measureController.hook.emit("willChangeState","editing","watching"),this.change2Add())});var s,o;this._params=i,this._btnTexts={start:(s=this._params.startButtonText)!=null?s:this._btnTexts.start,end:(o=this._params.endButtonText)!=null?o:this._btnTexts.end},this.measureController=t,this.container=e,this.mainElement=this.getMainElement(),this.mainElement.mainIcon.setAttribute("style","-webkit-tap-highlight-color: rgba(0,0,0,0);"),Object.assign(this.mainElement.mainIcon.style,mu),Object.assign(this.mainElement.mainItem.style,fu),this.change2Add(),this.mainElement.mainItem.addEventListener("click",this.onClick)}dispose(){this.mainElement.mainItem.removeEventListener("click",this.onClick)}getMainElement(){const t=this.container.querySelector(".fpm__main-text"),e=this.container.querySelector(".fpm__main"),i=this.container.querySelector(".fpm__main-icon");if(!e||!t||!i)throw new Error("cannot find dom");return{mainTextDom:t,mainItem:e,mainIcon:i}}change2Add(){const{mainIcon:t,mainTextDom:e}=this.mainElement;if(t.className.includes("fpm__main__start")){e.innerText=this._btnTexts.start;return}t.className.includes("fpm__main__end")&&(t.style.transform="scale(0.8)",e.className.includes("fpm__main-text__show")?e.classList.replace("fpm__main-text__show","fpm__main-text__hide"):e.classList.add("fpm__main-text__hide"),setTimeout(()=>{t.classList.replace("fpm__main__end","fpm__main__start"),t.style.transform="scale(1)",e.innerText=this._btnTexts.start,e.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200))}change2Done(){const{mainTextDom:t,mainIcon:e}=this.mainElement;t.innerText!==this._btnTexts.end&&(e.className.includes("fpm__main__end")||e.className.includes("fpm__main__start")&&(e.style.transform="scale(0.8)",t.className.includes("fpm__main-text__show")?t.classList.replace("fpm__main-text__show","fpm__main-text__hide"):t.classList.add("fpm__main-text__hide"),setTimeout(()=>{e.classList.replace("fpm__main__start","fpm__main__end"),e.style.transform="scale(1)",t.innerText=this._btnTexts.end,t.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200)))}}class Uv{constructor(t,e){f(this,"container");f(this,"revokeIcon");f(this,"revokeItem");f(this,"measureController");f(this,"onClick",()=>{this.measureController.revoke()});f(this,"onModeChange",t=>{if(t!=="Edit"&&this.revokeItem.className.includes("enabled")){this.revokeItem.classList.remove("enabled"),this.measureController.hook.off("anchorChange",this.onAnchorChange);return}this.measureController.hook.on("anchorChange",this.onAnchorChange)});f(this,"onAnchorChange",t=>{t&&this.revokeItem.classList.add("enabled")});this.measureController=t,this.container=e;const i=this.container.querySelector(".fpm__revoke-icon"),s=this.container.querySelector(".fpm__revoke");if(!i||!s)throw new Error("不正确的选择器");this.revokeIcon=i,this.revokeItem=s,this.revokeItem.addEventListener("click",this.onClick),t.hook.on("modeChange",this.onModeChange)}dispose(){this.revokeItem.removeEventListener("click",this.onClick),this.measureController.hook.off("modeChange",this.onModeChange)}}function Xv(n){ue(n,"svelte-1v1ixi2",'.Switcher.svelte-1v1ixi2.svelte-1v1ixi2{position:relative;box-sizing:border-box;width:-moz-max-content;width:max-content}.Switcher.svelte-1v1ixi2 .content.svelte-1v1ixi2,.Switcher.svelte-1v1ixi2 .active-slider.svelte-1v1ixi2{transition-property:transform, width, opacity;transition-duration:300ms;transition-timing-function:ease-out}.Switcher-bg.svelte-1v1ixi2.svelte-1v1ixi2{content:"";position:absolute;box-sizing:border-box;top:50%;left:0;width:100%;height:3.75rem;transform:translateY(-50%);border-style:solid;border-width:0rem 1.875rem;-o-border-image:url("data:image/png;base64,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");border-image:url("data:image/png;base64,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");border-image-slice:0 90 fill}.Switcher-buttons.svelte-1v1ixi2.svelte-1v1ixi2{display:flex;align-items:center;box-sizing:border-box;padding:0 0.1875rem;height:100%}.Switcher-buttons.has-divider.svelte-1v1ixi2 .button.svelte-1v1ixi2:not(:last-child)::after{content:"";position:absolute;right:0;top:10%;height:80%;width:0.0625rem;background-image:linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.3), transparent);background-size:100%;background-repeat:no-repeat;background-position:center}.active-slider.svelte-1v1ixi2.svelte-1v1ixi2{box-sizing:border-box;position:absolute;height:3.25rem;top:50%;transform:translate(0, -50%);border-style:solid;border-width:0rem 1.875rem;-o-border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXQAAACcCAMAAABY3aA6AAAAhFBMVEX///////8AAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////88i7DIAAAALHRSTlNmawBvc3d6BAcZDid8NwyFja/XEhYkHTErIS41gpajnUyRVEE7XKpiRczDuH1q6FcAAA1mSURBVHja7Ndtk5owFAXg2KKtiiUdlTdBYH1Z//8vbC4SjkmuDlpmOht7AWfdLyaPZw4ovo06PzydcZX+Eh3QP99gXvsCRkbvsX91s/B29A41/rch9mOjq09twUl6TbNRM/d4aH9rmsWVfkDmx0XX4ORN1HGcZdlWzdLbod2pTcYx8St5Dc/7jIiOjGtw4lbSaZ4nSbJTs/J0aG9qi3meKn+i1/AM+/joWlyBk3eaJ7tj/RlEsiyr/fm3t3PeV2Upo+CzPu6SPFXyBM+4j4oO8k6cwI+nUFbdihopI49HyqbLVSXD05HgO3ejZsZDR5OrkHfiCnxWns9VKaNQzczzCa+vaiJZVudzOVPwnbuKO9RHRidyCnkrLqQCb6I73FNvhtsdyTcKXorWneIO9jHRf1zJ5/F2ma9O0X5fEriXzvfHgi/3++i0ypfbeA72EdF78jS5TKtW/J20efvWvZpekvRJdjH49rneEHld7CsZhhx44Pm48OQuq31RE/tmPfhJRgwzBzlC7mhPA2/hsTXYI+5gH/YgI4aWebZM6qhqil4c4P5ac/o0lntRVlGdLLOhHSMGxnyZH6Y9Od8n3z0fvm069qaaHvLlwLCLQTfQbbr7LEuD3NUOPD9c+1v2qCw/d+n2GvbX0RFzahbd5ZZ4z+190G/xLXfd7apjdNhfQof5PEtXk1K65AB3ZmJfX2bshbP47TDsspys0mwO9RfQ1YPiYh1v80PRFA656327dPui40uczsIxVurhDnYFdci38XqBh8cn0anOqVo+JMXcJg8c7W7V7sq/UNCZvOjDtmfYKezygyoGxf4celvnVC1N1Mdci2M099eSfWVu8cGu3fuwRw1VTFvsT6Kjzo+hLBBzM+Tv4+3g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");border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXQAAACcCAMAAABY3aA6AAAAhFBMVEX///////8AAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////88i7DIAAAALHRSTlNmawBvc3d6BAcZDid8NwyFja/XEhYkHTErIS41gpajnUyRVEE7XKpiRczDuH1q6FcAAA1mSURBVHja7Ndtk5owFAXg2KKtiiUdlTdBYH1Z//8vbC4SjkmuDlpmOht7AWfdLyaPZw4ovo06PzydcZX+Eh3QP99gXvsCRkbvsX91s/B29A41/rch9mOjq09twUl6TbNRM/d4aH9rmsWVfkDmx0XX4ORN1HGcZdlWzdLbod2pTcYx8St5Dc/7jIiOjGtw4lbSaZ4nSbJTs/J0aG9qi3meKn+i1/AM+/joWlyBk3eaJ7tj/RlEsiyr/fm3t3PeV2Upo+CzPu6SPFXyBM+4j4oO8k6cwI+nUFbdihopI49HyqbLVSXD05HgO3ejZsZDR5OrkHfiCnxWns9VKaNQzczzCa+vaiJZVudzOVPwnbuKO9RHRidyCnkrLqQCb6I73FNvhtsdyTcKXorWneIO9jHRf1zJ5/F2ma9O0X5fEriXzvfHgi/3++i0ypfbeA72EdF78jS5TKtW/J20efvWvZpekvRJdjH49rneEHld7CsZhhx44Pm48OQuq31RE/tmPfhJRgwzBzlC7mhPA2/hsTXYI+5gH/YgI4aWebZM6qhqil4c4P5ac/o0lntRVlGdLLOhHSMGxnyZH6Y9Od8n3z0fvm069qaaHvLlwLCLQTfQbbr7LEuD3NUOPD9c+1v2qCw/d+n2GvbX0RFzahbd5ZZ4z+190G/xLXfd7apjdNhfQof5PEtXk1K65AB3ZmJfX2bshbP47TDsspys0mwO9RfQ1YPiYh1v80PRFA656327dPui40uczsIxVurhDnYFdci38XqBh8cn0anOqVo+JMXcJg8c7W7V7sq/UNCZvOjDtmfYKezygyoGxf4celvnVC1N1Mdci2M099eSfWVu8cGu3fuwRw1VTFvsT6Kjzo+hLBBzM+Tv4+3g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");border-image-slice:0 90 fill}.button.svelte-1v1ixi2.svelte-1v1ixi2{height:3.5rem;display:flex;position:relative;cursor:pointer;align-items:center;justify-content:center;pointer-events:all;width:7.25rem}.button.svelte-1v1ixi2 .content.svelte-1v1ixi2{position:absolute;display:flex;align-items:center;font-size:1rem;color:#fff;text-shadow:0 0.125rem 0.5rem rgba(0, 0, 0, 0.5);font-weight:bold}.button.svelte-1v1ixi2 .content .icon.svelte-1v1ixi2{display:inline-block;width:1.15625rem;height:1.15625rem;background-repeat:no-repeat;background-size:100%;margin-right:0.125rem}.button.svelte-1v1ixi2:not(.active) .content.svelte-1v1ixi2{opacity:0.65;transform:scale(0.875)}.button.svelte-1v1ixi2:not(.active) .content.svelte-1v1ixi2:hover{opacity:0.85}.button.active.svelte-1v1ixi2 .content.svelte-1v1ixi2{opacity:1;transform:scale(1)}')}function oc(n,t,e){const i=n.slice();return i[13]=t[e],i[14]=t,i[15]=e,i}function rc(n){let t;return{c(){t=S("div"),w(t,"class","active-slider svelte-1v1ixi2"),z(t,"width",n[6]+"px"),z(t,"transform",`translate(${n[7]}px, -50%)`)},m(e,i){B(e,t,i)},p(e,i){i&64&&z(t,"width",e[6]+"px"),i&128&&z(t,"transform",`translate(${e[7]}px, -50%)`)},d(e){e&&O(t)}}}function ac(n){let t;return{c(){t=S("span"),w(t,"class","icon svelte-1v1ixi2"),z(t,"background-image",`url(${n[13].icon})`)},m(e,i){B(e,t,i)},p(e,i){i&1&&z(t,"background-image",`url(${e[13].icon})`)},d(e){e&&O(t)}}}function lc(n){let t,e,i,s=n[13].value+"",o,r,a=n[15],l,c,d=n[13].icon&&ac(n);const h=()=>n[10](t,a),u=()=>n[10](null,a);function m(){return n[11](n[13],n[15])}return{c(){t=S("div"),e=S("div"),d&&d.c(),i=$(),o=xe(s),r=$(),w(e,"class","content svelte-1v1ixi2"),w(t,"class","button svelte-1v1ixi2"),K(t,"active",n[4]===n[15])},m(A,p){B(A,t,p),x(t,e),d&&d.m(e,null),x(e,i),x(e,o),x(t,r),h(),l||(c=be(t,"click",m),l=!0)},p(A,p){n=A,n[13].icon?d?d.p(n,p):(d=ac(n),d.c(),d.m(e,i)):d&&(d.d(1),d=null),p&1&&s!==(s=n[13].value+"")&&Se(o,s),a!==n[15]&&(u(),a=n[15],h()),p&16&&K(t,"active",n[4]===n[15])},d(A){A&&O(t),d&&d.d(),u(),l=!1,c()}}}function Zv(n){let t,e,i,s,o,r=n[5]&&rc(n),a=Pe(n[0]),l=[];for(let c=0;c<a.length;c+=1)l[c]=lc(oc(n,a,c));return{c(){t=S("div"),e=S("div"),i=$(),r&&r.c(),s=$(),o=S("div");for(let c=0;c<l.length;c+=1)l[c].c();w(e,"class","Switcher-bg svelte-1v1ixi2"),w(o,"class","Switcher-buttons svelte-1v1ixi2"),K(o,"has-divider",!n[5]),w(t,"class","Switcher svelte-1v1ixi2")},m(c,d){B(c,t,d),x(t,e),x(t,i),r&&r.m(t,null),x(t,s),x(t,o);for(let h=0;h<l.length;h+=1)l[h]&&l[h].m(o,null);n[12](t)},p(c,[d]){if(c[5]?r?r.p(c,d):(r=rc(c),r.c(),r.m(t,s)):r&&(r.d(1),r=null),d&23){a=Pe(c[0]);let h;for(h=0;h<a.length;h+=1){const u=oc(c,a,h);l[h]?l[h].p(u,d):(l[h]=lc(u),l[h].c(),l[h].m(o,null))}for(;h<l.length;h+=1)l[h].d(1);l.length=a.length}d&32&&K(o,"has-divider",!c[5])},i:q,o:q,d(c){c&&O(t),r&&r.d(),jt(l,c),n[12](null)}}}function Jv(n,t,e){let i;const o=g=>{e(4,d=g)};let{options:r}=t,{onChange:a}=t;const l=[];let c,d=null,h,u;function m(g,v){Ge[g?"unshift":"push"](()=>{l[v]=g,e(2,l)})}const A=(g,v)=>{a(g.key),e(4,d=v)};function p(g){Ge[g?"unshift":"push"](()=>{c=g,e(3,c)})}return n.$$set=g=>{"options"in g&&e(0,r=g.options),"onChange"in g&&e(1,a=g.onChange)},n.$$.update=()=>{n.$$.dirty&20&&e(5,i=l[d]),n.$$.dirty&40&&i&&c&&setTimeout(()=>{e(6,h=i.clientWidth),e(7,u=i.getBoundingClientRect().left-c.getBoundingClientRect().left)},0)},[r,a,l,c,d,i,h,u,null,o,m,A,p]}class qv extends le{constructor(t){super(),ae(this,t,Jv,Zv,oe,{defaultIndex:8,setIndex:9,options:0,onChange:1},Xv)}get defaultIndex(){return this.$$.ctx[8]}get setIndex(){return this.$$.ctx[9]}}function Kv(n){ue(n,"svelte-1m0stw",".exit.svelte-1m0stw{position:relative;pointer-events:all;cursor:pointer;left:1.5rem;top:1.5rem;width:1.5rem;height:1.5rem;background-image:url(data:image/png;base64,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);background-repeat:no-repeat;background-size:100% 100%}")}function $v(n){let t,e,i;return{c(){t=S("div"),w(t,"class","exit svelte-1m0stw")},m(s,o){B(s,t,o),e||(i=be(t,"click",function(){si(n[0])&&n[0].apply(this,arguments)}),e=!0)},p(s,[o]){n=s},i:q,o:q,d(s){s&&O(t),e=!1,i()}}}function e0(n,t,e){let{onClick:i=null}=t;return n.$$set=s=>{"onClick"in s&&e(0,i=s.onClick)},[i]}class gu extends le{constructor(t){super(),ae(this,t,e0,$v,oe,{onClick:0},Kv)}}const pu="data:image/png;base64,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",Au="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAASKADAAQAAAABAAAASAAAAACQMUbvAAAFO0lEQVR4Ae2YWYgdRRSG78SFOG6Ju4MxIRnRgCCKBlSC24P64IO4h7wI6oMPCioqAX1TfFIQRFFBETQmIioqGhDBh3GJiMSAZnABNSIuUQTFbcz4fZcup297b9+t7525wznwU11d1aervj6nurprtbAgEASCQBAIAkEgCASBIBAEgkAQCAJBIAgEgSAQBIJAEMgIzM7OLkHL0STaJ8DMgRkDyDK0CX2MptEUOrMbSGPddB6VvkAwUo5Hd6OzCuP+hfr5Y2NjvxbON60uaXp2hE8CZ3+GfzJ6ABXhOLND0VoPOrF9O+k0Kn2AM85Y16M70UTJuL8taWtoWjSAgHMYM7sQ3YyWN8yysbKZ9NrdeKp1bVGsQcBxvbkUXYsOaD3d2jbabgXQ3yV9GppGPoKA43pyDboclb3G36T9rm7g0L82soAAY/S7CG9E56GybHiLduH4BuvKRhIQcIyUi5BwTmsz47dpvwftadOvafPIAQLOUmZiSl2JVjed1dzJ7Rzei74iembnTnd+NFKAgHMIU7seXYKObTPN92kXzue9wtH/yAACjkBuQecgN3tltoNGN4rTwNlb1rFd20gAAs4JTOR2dAYqe407351IOB/2C0dnlQBiAm7vZ6oYkIPKG77XUd+E1iDvU2bTND6I3qtqLH0BYvDuWP3uORHNUHeAOxlcRx+C9C01/F1MhzvQUahsj6OfT9HDaKoqODot2zvY3tIYvOuAi+W5SD++Xf5BU+h1BvklZc+G/+u4+AbkwtxunF/QRzivcl/HUJn1E0GTjMKNmtGin7+QKeD30AQTfI1ye7dPk+uMFFPqMtRuvaFLzQfxOKocjs57ApRNwrfKDPKJ+YSV9Z/RKcj2lfR9BUi/cdzW6GsU3o98U3Uytq/p9wR6serIwWfdevoflA3mh8yHGzBfpYJK5U8cuz5dhW5k4isoS40+ptJDaD3qBM439HsKbR0UHHzXegLkhdhnaBcyrfJwhKSMGtPuAnQbAM6mbGq0HU3DI+h01Akc/+c8owYJB/9tFz/7NDUmZUqtRFegVehP5OSU64jlfpkOp/wRbUNbmNQflHXDzyoO7kMnIX16rWr18L6nbTN6FD+m9EDNAfVsGaRJHAjpOGTEJDgJViqX0WakvYu2ot3oVHQT0odRJxT7C1Y/RUtwHgNOx/90ik66qfcFyBvlIG2gOoGMjgTFMg/sQOoHo++QQFynjC7BJjjpWq/LQ3LNM62GBod79Z5iXpwsg7SWul/YQiqmW4qINPmD6OM5zUU+QbQs9vUhzgsc7tsyz23r2Ah3J/kJegE5mXFkOjVbvNMC7v7JaHMd8ZzST/4a6/MGh3vXU8GybxMS9hGOfOJG0jFIAGnylk7edpXOm1qpzWPb7Ge0mYrPoaGmFff7zxxEZZZB2oFD00RIRyAhJSh5MHkoAhFOeit5vQvyFvTksBZk7vU/qxSQ3jNIH2R3cqPoh+bvKEVMiqJ8tKSo8TLXIdPqWfT0fMLh/tWlmM6SMam9pFsRkgt3ihRhGS3FiHLT6X7JfY475KG8yrlXS6s8gtKdCpCu5ryR5Os8H0H5NDNyhGNaPc/1Kd2ozp8NDJBTKkDawKkjkZFkeuVBOY49yMh5eaHAYSyDSTEdJytAcuF2n2TqmF5pD5Tg+B9pQUQOY6ubgxyKsSYZNf4GEdJqJJylyA/Pl9AbCw0OY6o/RcuhGJB8IMJZh1Ygf4u8g3YBx5QLk4DRhMaRC3NYEAgCQSAIBIEgEASCQBAIAkEgCASBIBAEgkAQCAJBYJEQ+BdpRqKi3IjqNwAAAABJRU5ErkJggg==",cc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAABi0lEQVRoBe2Yu20DMRBEdW7EuVLX4NQVuAEVoUhFuAFV4FQ1OHWuRkzNABRwMLhDfbhcBhyA0IEjnvYNjjxoN5upmcBMYCYQmcCifjyl9AL/E+Md4xXjjHHCOC7L8ofPcJkAufgvVPhWqPIHc7sRIJiwJSZfKp7f5zz9cCkAPjZKNV+tbeYpAD7zSjVfrW3mKQBuWKWar9Y28xQATxsl7PNkHgJqYUtPARzxQzxtLG1h7KMhZIL5KP3/HkgonMVf9Y2LA45UzneXBChVkxPfw/tY+WEQdwOw6JEgHgIYCeJhgFEgngIYAeJpgGiIJgCREM0AoiCaAkRANAfoDeEC0BPCDaAXhCtADwh3AG+ILgCeEN0AvCC6AnhAdAdoDRECICB+4bEmtmzOGNU2ZhgAirP+2dFaS7YxVVdifROX69wIOODmTN6SbGOGArDiDFF7Esw2ZjhAjr3WpjT9UQC4YZVMfxSAWhvT9EcBUG1MnkL0i6ptnuIij0mjjVl9D3jUMu85E5gJzARuT+ACS7KuMQ7rOEcAAAAASUVORK5CYII=",dc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAAByElEQVRoBe1ZMU4DMRC8Q7yCJjVNKCh4ARVfAPo0PCYNPeQLVLyAggIa6jQ8g2NGsiJjeUfHrdGd0K60Sm7t3R3P+hx503UhwUAwEAzMyUCvkg/DcITxa+gldAXdQ5+hu77vv/DZTKbmMheQAt4D4XkF5Stsm1aL8OQiw5aQ+Rp4zqed461kci5VgUegO22F0BnnA9W+qcVQFeCeX4qYWNQC+MIuRUwsxwIhTxu1hV4w/ib8fzN0hskXwoFYqqIqsIMHT5uafML4XhuYaGMsxqwJMRBLVcyXmLOzs/ku8ybzTDhkthZfiWUNzSuxxbP8zVEV6HjOQx8KdNw2rcEzBWP+2JLMTQwctEQuwHJakj0WMHc1ogJRAScDsYWcBLrdowJuCp0BogJOAt3uUQE3hc4AUQEngW73/10BXimhtwVNvIDLq2gxf+wjYzL2QZg7XWsPtvKLCSQ5Wq1FXsCfoK2ulsRxBT2BliLbmGoLqXYfE/EC3koYqwae8WUbU1UgWoutyoM4KyuW2kJ7y2kGu4nF01rcVnpGk9aWTrq8eVbGad5alO2+MvuIZ9XGlLnMl5hJ01HK02ixfzGNICemBAPBQDDwhwx8A43PdoQvgLfYAAAAAElFTkSuQmCC";function t0(n){ue(n,"svelte-468fdd",'*.forbid.svelte-468fdd.svelte-468fdd{pointer-events:none !important;opacity:0.5}.Measure-Controller.svelte-468fdd.svelte-468fdd{pointer-events:none;position:relative;width:100%;height:100%;z-index:2}.Measure-Controller.svelte-468fdd .mode-switcher.svelte-468fdd{margin-top:2.25rem}.Measure-Controller.svelte-468fdd .bottom.svelte-468fdd{position:absolute;width:100%;bottom:0}.Measure-Controller.svelte-468fdd .bottom .mask.svelte-468fdd{position:absolute;bottom:0;width:100%;height:11.5rem;background-size:100%;background-image:linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.3))}.Measure-Controller.svelte-468fdd .bottom .center.svelte-468fdd{display:flex;flex-direction:column;align-items:center;margin-bottom:2.5rem}.Measure-Controller.svelte-468fdd .buttons.svelte-468fdd{pointer-events:all;display:flex;align-items:center;height:2.5rem;background:rgba(0, 0, 0, 0.2);color:rgba(255, 255, 255, 0.85);width:-moz-max-content;width:max-content;border-radius:624.9375rem;overflow:hidden}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd{cursor:pointer;display:flex;align-items:center;position:relative;font-size:0.875rem;padding:0rem 1rem}.Measure-Controller.svelte-468fdd .buttons .button .icon.svelte-468fdd{width:1.5rem;height:1.5rem;background-repeat:no-repeat;background-size:100%;margin-right:0.25rem}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd::after{content:"";position:absolute;display:block;right:-0.03125rem;height:1.5rem;width:0.0625rem;background-image:linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.3), transparent);background-size:100%;background-repeat:no-repeat;background-position:center}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd:last-child::after{display:none}')}function hc(n){let t,e;return t=new gu({props:{onClick:n[0].disable}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.onClick=i[0].disable),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function uc(n){let t,e,i,s,o=n[2]("撤销")+"",r,a,l,c,d,h=n[2]("结束")+"",u,m,A;return{c(){t=S("div"),e=S("div"),i=S("div"),s=$(),r=xe(o),a=$(),l=S("div"),c=S("div"),d=$(),u=xe(h),w(i,"class","icon svelte-468fdd"),z(i,"background-image",`url(${pu})`),w(e,"class","button svelte-468fdd"),K(e,"forbid",!n[3]),w(c,"class","icon svelte-468fdd"),z(c,"background-image",`url(${Au})`),w(l,"class","button svelte-468fdd"),w(t,"class","buttons svelte-468fdd")},m(p,g){B(p,t,g),x(t,e),x(e,i),x(e,s),x(e,r),x(t,a),x(t,l),x(l,c),x(l,d),x(l,u),m||(A=[be(e,"click",n[7]),be(l,"click",n[6])],m=!0)},p(p,g){g&4&&o!==(o=p[2]("撤销")+"")&&Se(r,o),g&8&&K(e,"forbid",!p[3]),g&4&&h!==(h=p[2]("结束")+"")&&Se(u,h)},d(p){p&&O(t),m=!1,qe(A)}}}function i0(n){let t,e,i,s,o,r,a,l,c,d,h,u=n[1]&&hc(n),m=n[5]&&uc(n);function A(g){n[9](g)}let p={options:[{key:"line",value:n[2]("测距离"),icon:cc},{key:"area",value:n[2]("测面积"),icon:dc}],onChange:n[8]};return n[4]!==void 0&&(p.setIndex=n[4]),c=new qv({props:p}),Ge.push(()=>ka(c,"setIndex",A)),{c(){t=S("div"),u&&u.c(),e=$(),i=S("div"),s=S("div"),o=$(),r=S("div"),m&&m.c(),a=$(),l=S("div"),ne(c.$$.fragment),w(s,"class","mask svelte-468fdd"),w(l,"class","mode-switcher svelte-468fdd"),w(r,"class","center svelte-468fdd"),w(i,"class","bottom svelte-468fdd"),w(t,"class","Measure-Controller svelte-468fdd")},m(g,v){B(g,t,v),u&&u.m(t,null),x(t,e),x(t,i),x(i,s),x(i,o),x(i,r),m&&m.m(r,null),x(r,a),x(r,l),te(c,l,null),h=!0},p(g,[v]){g[1]?u?(u.p(g,v),v&2&&k(u,1)):(u=hc(g),u.c(),k(u,1),u.m(t,e)):u&&(de(),j(u,1,1,()=>{u=null}),he()),g[5]?m?m.p(g,v):(m=uc(g),m.c(),m.m(r,a)):m&&(m.d(1),m=null);const y={};v&4&&(y.options=[{key:"line",value:g[2]("测距离"),icon:cc},{key:"area",value:g[2]("测面积"),icon:dc}]),v&1&&(y.onChange=g[8]),!d&&v&16&&(d=!0,y.setIndex=g[4],Ca(()=>d=!1)),c.$set(y)},i(g){h||(k(u),k(c.$$.fragment,g),h=!0)},o(g){j(u),j(c.$$.fragment,g),h=!1},d(g){g&&O(t),u&&u.d(),m&&m.d(),ie(c)}}}function n0(n,t,e){let{measureController:i}=t,{showExit:s=!1}=t,{i18n:o=g=>g}=t,r=!1,a;function l(g){g==="Edit"?e(5,u=!0):(a(null),e(5,u=!1))}function c(){i.controller instanceof di&&i.controller.complete(),i.save({mode:"Watch"})}function d(g){e(3,r=g.length>0)}function h(){e(3,r=!1)}bt(()=>{i.hook.on("modeChange",l),i.hook.on("complete",h),i.hook.on("pointsChange",d)}),zt(()=>{i.hook.off("modeChange",l),i.hook.off("complete",h),i.hook.off("pointsChange",d)});let u=!1;const m=()=>i.revoke(),A=g=>{i.save().changeMode("Edit"),i.changeMeasureType(g)};function p(g){a=g,e(4,a)}return n.$$set=g=>{"measureController"in g&&e(0,i=g.measureController),"showExit"in g&&e(1,s=g.showExit),"i18n"in g&&e(2,o=g.i18n)},[i,s,o,r,a,u,c,m,A,p]}class s0 extends le{constructor(t){super(),ae(this,t,n0,i0,oe,{measureController:0,showExit:1,i18n:2},t0)}}function o0(n){ue(n,"svelte-1mfj5mk",'.Switcher.svelte-1mfj5mk.svelte-1mfj5mk{pointer-events:all;position:relative;margin-bottom:1.5rem;box-sizing:border-box;width:-moz-max-content;width:max-content}.Switcher.svelte-1mfj5mk .svelte-1mfj5mk{transition-duration:300ms;transition-timing-function:ease-out}.Switcher.svelte-1mfj5mk .content.svelte-1mfj5mk{transition-property:opacity}.Switcher.svelte-1mfj5mk .highlight.svelte-1mfj5mk{transition-property:width}.Switcher.svelte-1mfj5mk .Switcher-buttons.svelte-1mfj5mk{transition-property:transform}.Switcher.svelte-1mfj5mk .Switcher-buttons.svelte-1mfj5mk{position:absolute;top:50%;left:0;transform:translate(0, -50%);width:-moz-max-content;width:max-content}.Switcher.svelte-1mfj5mk .Switcher-buttons .button.svelte-1mfj5mk{display:inline-block;margin:0 0.5625rem}.Switcher.svelte-1mfj5mk .highlight.svelte-1mfj5mk{height:2rem;background:rgba(0, 0, 0, 0.3);border-radius:624.9375rem}.Switcher.svelte-1mfj5mk .content.svelte-1mfj5mk{position:relative;padding:0 0.75rem}.Switcher.svelte-1mfj5mk .button:not(.active) .content.svelte-1mfj5mk::before{content:"";position:absolute;top:50%;left:10%;width:80%;transform:translateY(-50%);height:0;box-shadow:0 0 0.9375rem 0.3125rem rgba(0, 0, 0, 0.3)}')}function fc(n,t,e){const i=n.slice();return i[13]=t[e],i[14]=t,i[15]=e,i}function mc(n){let t;return{c(){t=S("span"),w(t,"class","icon svelte-1mfj5mk"),z(t,"background-image",n[13].icon)},m(e,i){B(e,t,i)},p(e,i){i&1&&z(t,"background-image",e[13].icon)},d(e){e&&O(t)}}}function gc(n){let t,e,i,s=n[13].value+"",o,r,a=n[15],l,c,d=n[13].icon&&mc(n);const h=()=>n[9](t,a),u=()=>n[9](null,a);function m(){return n[10](n[13],n[15])}return{c(){t=S("div"),e=S("div"),d&&d.c(),i=$(),o=xe(s),r=$(),w(e,"class","content svelte-1mfj5mk"),w(t,"class","button svelte-1mfj5mk"),K(t,"active",n[4]===n[15])},m(A,p){B(A,t,p),x(t,e),d&&d.m(e,null),x(e,i),x(e,o),x(t,r),h(),l||(c=be(t,"click",m),l=!0)},p(A,p){n=A,n[13].icon?d?d.p(n,p):(d=mc(n),d.c(),d.m(e,i)):d&&(d.d(1),d=null),p&1&&s!==(s=n[13].value+"")&&Se(o,s),a!==n[15]&&(u(),a=n[15],h()),p&16&&K(t,"active",n[4]===n[15])},d(A){A&&O(t),d&&d.d(),u(),l=!1,c()}}}function r0(n){let t,e,i,s,o=Pe(n[0]),r=[];for(let a=0;a<o.length;a+=1)r[a]=gc(fc(n,o,a));return{c(){t=S("div"),e=S("div"),i=$(),s=S("div");for(let a=0;a<r.length;a+=1)r[a].c();w(e,"class","highlight svelte-1mfj5mk"),z(e,"width",n[5]?`${n[5]}px`:void 0),w(s,"class","Switcher-buttons svelte-1mfj5mk"),z(s,"transform",`translate(${n[6]}px, -50%)`),w(t,"class","Switcher svelte-1mfj5mk")},m(a,l){B(a,t,l),x(t,e),x(t,i),x(t,s);for(let c=0;c<r.length;c+=1)r[c]&&r[c].m(s,null);n[11](t)},p(a,[l]){if(l&32&&z(e,"width",a[5]?`${a[5]}px`:void 0),l&23){o=Pe(a[0]);let c;for(c=0;c<o.length;c+=1){const d=fc(a,o,c);r[c]?r[c].p(d,l):(r[c]=gc(d),r[c].c(),r[c].m(s,null))}for(;c<r.length;c+=1)r[c].d(1);r.length=o.length}l&64&&z(s,"transform",`translate(${a[6]}px, -50%)`)},i:q,o:q,d(a){a&&O(t),jt(r,a),n[11](null)}}}function a0(n,t,e){let i,s,{options:o}=t,{defaultKey:r=null}=t,{onChange:a}=t;const l=[];let c,d,h=0;function u(){if(s&&c){e(5,d=s.clientWidth);const g=h+c.getBoundingClientRect().left-s.getBoundingClientRect().left;e(6,h=g)}}function m(g,v){Ge[g?"unshift":"push"](()=>{l[v]=g,e(2,l)})}const A=(g,v)=>{a(g.key),e(4,i=v)};function p(g){Ge[g?"unshift":"push"](()=>{c=g,e(3,c)})}return n.$$set=g=>{"options"in g&&e(0,o=g.options),"defaultKey"in g&&e(7,r=g.defaultKey),"onChange"in g&&e(1,a=g.onChange)},n.$$.update=()=>{n.$$.dirty&129&&e(4,i=r?o.findIndex(g=>g.key===r):0),n.$$.dirty&20&&e(8,s=l[i]),n.$$.dirty&264&&s&&c&&setTimeout(()=>u(),0)},[o,a,l,c,i,d,h,r,s,m,A,p]}class l0 extends le{constructor(t){super(),ae(this,t,a0,r0,oe,{options:0,defaultKey:7,onChange:1},o0)}}function c0(n){ue(n,"svelte-82ysdl",".CircleButton.svelte-82ysdl.svelte-82ysdl{position:relative;display:flex;justify-content:center;align-items:center;width:4.5rem;height:4.5rem;background-image:inherit;background-size:100% auto;background-repeat:no-repeat;transition:transform 200ms ease-in-out}.CircleButton.svelte-82ysdl.svelte-82ysdl:active{transform:scale(0.8)}.CircleButton.svelte-82ysdl .text.svelte-82ysdl{position:absolute}")}function pc(n){let t,e,i,s;return{c(){t=S("div"),e=xe(n[0]),w(t,"class","text svelte-82ysdl")},m(o,r){B(o,t,r),x(t,e),s=!0},p(o,r){(!s||r&1)&&Se(e,o[0])},i(o){s||(o&&He(()=>{s&&(i||(i=Ft(t,it,{duration:300},!0)),i.run(1))}),s=!0)},o(o){o&&(i||(i=Ft(t,it,{duration:300},!1)),i.run(0)),s=!1},d(o){o&&O(t),o&&i&&i.end()}}}function d0(n){let t,e=n[0],i,s,o=pc(n);return{c(){t=S("div"),o.c(),w(t,"class","CircleButton svelte-82ysdl"),z(t,"background-image",`url(${n[2]})`)},m(r,a){B(r,t,a),o.m(t,null),i||(s=be(t,"click",function(){si(n[1])&&n[1].apply(this,arguments)}),i=!0)},p(r,[a]){n=r,a&1&&oe(e,e=n[0])?(de(),j(o,1,1,q),he(),o=pc(n),o.c(),k(o,1),o.m(t,null)):o.p(n,a),a&4&&z(t,"background-image",`url(${n[2]})`)},i(r){k(o)},o(r){j(o)},d(r){r&&O(t),o.d(r),i=!1,s()}}}function h0(n,t,e){let i,{text:s}=t,{onClick:o=null}=t,{color:r="white"}=t;return n.$$set=a=>{"text"in a&&e(0,s=a.text),"onClick"in a&&e(1,o=a.onClick),"color"in a&&e(3,r=a.color)},n.$$.update=()=>{n.$$.dirty&8&&e(2,i=(()=>r==="white"?co:r==="blue"?Qa:co)())},[s,o,i,r]}class u0 extends le{constructor(t){super(),ae(this,t,h0,d0,oe,{text:0,onClick:1,color:3},c0)}}function f0(n){ue(n,"svelte-ldjbp8","*.forbid.svelte-ldjbp8.svelte-ldjbp8{pointer-events:none !important;opacity:0.5}.Measure-Controller.svelte-ldjbp8.svelte-ldjbp8{pointer-events:none;position:relative;width:100%;height:100%;z-index:2;color:white}.Measure-Controller.svelte-ldjbp8 .mode-switcher.svelte-ldjbp8{margin-top:2.25rem}.Measure-Controller.svelte-ldjbp8 .bottom.svelte-ldjbp8{position:absolute;width:100%;bottom:0}.Measure-Controller.svelte-ldjbp8 .bottom .mask.svelte-ldjbp8{position:absolute;bottom:0;width:100%;height:12.5rem;background-size:100%;z-index:-1;background-image:linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.5))}.Measure-Controller.svelte-ldjbp8 .bottom .center.svelte-ldjbp8{display:flex;flex-direction:column;align-items:center;margin-bottom:2.5rem}.Measure-Controller.svelte-ldjbp8 .controller.svelte-ldjbp8{pointer-events:all;display:flex;align-items:center}.Measure-Controller.svelte-ldjbp8 .controller .button.svelte-ldjbp8{cursor:pointer;display:flex;align-items:center;height:2.5rem;padding-left:1rem;padding-right:1rem;border-radius:624.9375rem;font-size:0.875rem;color:#fff;background-color:rgba(0, 0, 0, 0.2)}.Measure-Controller.svelte-ldjbp8 .controller .button .icon.svelte-ldjbp8{width:1.5rem;height:1.5rem;background-repeat:no-repeat;background-size:100%;margin:0 0.25rem}.Measure-Controller.svelte-ldjbp8 .controller .main-button.svelte-ldjbp8{margin-left:1.75rem;margin-right:1.75rem;font-size:0.875rem;font-weight:bold}")}function Ac(n){let t,e;return t=new gu({props:{onClick:n[0].disable}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.onClick=i[0].disable),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function vc(n){let t,e,i,s;return e=new l0({props:{options:[{key:"line",value:n[2]("测距离")},{key:"area",value:n[2]("测面积")}],defaultKey:n[0].currentMeasureType,onChange:n[0].changeMeasureType}}),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","mode-switcher svelte-ldjbp8")},m(o,r){B(o,t,r),te(e,t,null),s=!0},p(o,r){n=o;const a={};r&4&&(a.options=[{key:"line",value:n[2]("测距离")},{key:"area",value:n[2]("测面积")}]),r&1&&(a.defaultKey=n[0].currentMeasureType),r&1&&(a.onChange=n[0].changeMeasureType),e.$set(a)},i(o){s||(k(e.$$.fragment,o),o&&He(()=>{s&&(i||(i=Ft(t,it,{duration:bn},!0)),i.run(1))}),s=!0)},o(o){j(e.$$.fragment,o),o&&(i||(i=Ft(t,it,{duration:bn},!1)),i.run(0)),s=!1},d(o){o&&O(t),ie(e),o&&i&&i.end()}}}function bc(n){let t,e,i,s=n[2]("撤销")+"",o,r,a,l,c;return{c(){t=S("div"),e=S("div"),i=$(),o=xe(s),w(e,"class","icon svelte-ldjbp8"),z(e,"background-image",`url(${pu})`),w(t,"class","button svelte-ldjbp8"),K(t,"forbid",n[3]==="start")},m(d,h){B(d,t,h),x(t,e),x(t,i),x(t,o),a=!0,l||(c=be(t,"click",n[13]),l=!0)},p(d,h){n=d,(!a||h&4)&&s!==(s=n[2]("撤销")+"")&&Se(o,s),(!a||h&8)&&K(t,"forbid",n[3]==="start")},i(d){a||(d&&He(()=>{a&&(r||(r=Ft(t,it,{duration:bn},!0)),r.run(1))}),a=!0)},o(d){d&&(r||(r=Ft(t,it,{duration:bn},!1)),r.run(0)),a=!1},d(d){d&&O(t),d&&r&&r.end(),l=!1,c()}}}function yc(n){let t,e,i,s=n[2]("结束")+"",o,r,a,l,c;return{c(){t=S("div"),e=S("div"),i=$(),o=xe(s),w(e,"class","icon svelte-ldjbp8"),z(e,"background-image",`url(${Au})`),w(t,"class","button svelte-ldjbp8")},m(d,h){B(d,t,h),x(t,e),x(t,i),x(t,o),a=!0,l||(c=be(t,"click",n[10]),l=!0)},p(d,h){n=d,(!a||h&4)&&s!==(s=n[2]("结束")+"")&&Se(o,s)},i(d){a||(d&&He(()=>{a&&(r||(r=Ft(t,it,{duration:bn},!0)),r.run(1))}),a=!0)},o(d){d&&(r||(r=Ft(t,it,{duration:bn},!1)),r.run(0)),a=!1},d(d){d&&O(t),d&&r&&r.end(),l=!1,c()}}}function m0(n){let t,e,i,s,o,r,a,l,c,d,h,u,m,A=n[1]&&Ac(n),p=n[0].allowMeasureType.length>=2&&n[3]==="start"&&vc(n),g=n[4]&&bc(n);h=new u0({props:{onClick:n[14],text:n[6][n[3]],color:n[7][n[3]]}});let v=n[4]&&yc(n);return{c(){t=S("div"),A&&A.c(),e=$(),i=S("div"),s=S("div"),o=$(),r=S("div"),p&&p.c(),a=$(),l=S("div"),g&&g.c(),c=$(),d=S("div"),ne(h.$$.fragment),u=$(),v&&v.c(),w(s,"class","mask svelte-ldjbp8"),w(d,"class","main-button svelte-ldjbp8"),K(d,"forbid",!n[5]),w(l,"class","controller svelte-ldjbp8"),w(r,"class","center svelte-ldjbp8"),w(i,"class","bottom svelte-ldjbp8"),w(t,"class","Measure-Controller svelte-ldjbp8")},m(y,I){B(y,t,I),A&&A.m(t,null),x(t,e),x(t,i),x(i,s),x(i,o),x(i,r),p&&p.m(r,null),x(r,a),x(r,l),g&&g.m(l,null),x(l,c),x(l,d),te(h,d,null),x(l,u),v&&v.m(l,null),m=!0},p(y,[I]){y[1]?A?(A.p(y,I),I&2&&k(A,1)):(A=Ac(y),A.c(),k(A,1),A.m(t,e)):A&&(de(),j(A,1,1,()=>{A=null}),he()),y[0].allowMeasureType.length>=2&&y[3]==="start"?p?(p.p(y,I),I&9&&k(p,1)):(p=vc(y),p.c(),k(p,1),p.m(r,a)):p&&(de(),j(p,1,1,()=>{p=null}),he()),y[4]?g?(g.p(y,I),I&16&&k(g,1)):(g=bc(y),g.c(),k(g,1),g.m(l,c)):g&&(de(),j(g,1,1,()=>{g=null}),he());const M={};I&8&&(M.onClick=y[14]),I&8&&(M.text=y[6][y[3]]),I&8&&(M.color=y[7][y[3]]),h.$set(M),(!m||I&32)&&K(d,"forbid",!y[5]),y[4]?v?(v.p(y,I),I&16&&k(v,1)):(v=yc(y),v.c(),k(v,1),v.m(l,null)):v&&(de(),j(v,1,1,()=>{v=null}),he())},i(y){m||(k(A),k(p),k(g),k(h.$$.fragment,y),k(v),m=!0)},o(y){j(A),j(p),j(g),j(h.$$.fragment,y),j(v),m=!1},d(y){y&&O(t),A&&A.d(),p&&p.d(),g&&g.d(),ie(h),v&&v.d()}}}const bn=100;function g0(n,t,e){let{measureController:i}=t,{showExit:s=!1}=t,{i18n:o=U=>U}=t;const r={start:o("开始"),add:o("添加"),end:o("结束"),complete:o("完成")},a={start:"white",add:"white",end:"blue",complete:"blue"};let l=!1,c=!0,d="start",h=i.currentMeasureType;const u=()=>{i.getCurrentMode()!=="Edit"?i.changeMode("Edit"):(p("add"),m())},m=()=>{i.controller instanceof di&&i.controller.selectPoint()},A=()=>{i.controller instanceof di&&i.controller.complete()},p=U=>{e(3,d=U)},g=()=>{m(),D("allow")},v=()=>{p("complete")},y=()=>{i.currentMeasureType==="area"&&d==="complete"&&p("add")},I=U=>{U.length},M=()=>{p("start"),D("allow")},D=U=>{e(5,c=U==="allow")},P=U=>{e(12,h=U)},V=U=>{U.isEmpty&&p("start")};bt(()=>{i.hook.on("revoke",V),i.hook.on("measureTypeChange",P),i.hook.on("modeChange",M),i.hook.on("pointsChange",I),i.hook.on("allowAddPointStateChange",D),i.hook.on("readyComplete",v),i.hook.on("notReadyComplete",y),i.hook.on("complete",M)}),zt(()=>{i.hook.off("measureTypeChange",P),i.hook.off("modeChange",M),i.hook.off("allowAddPointStateChange",D),i.hook.off("readyComplete",v),i.hook.off("pointsChange",I),i.hook.off("notReadyComplete",y),i.hook.off("complete",M)});const L=()=>i.revoke(),X=()=>{d==="start"?u():d==="add"?m():(d==="end"||d==="complete")&&g()};return n.$$set=U=>{"measureController"in U&&e(0,i=U.measureController),"showExit"in U&&e(1,s=U.showExit),"i18n"in U&&e(2,o=U.i18n)},n.$$.update=()=>{n.$$.dirty&4104&&e(4,l=h==="area"&&d!=="start")},[i,s,o,d,l,c,r,a,u,m,A,g,h,L,X]}class p0 extends le{constructor(t){super(),ae(this,t,g0,m0,oe,{measureController:0,showExit:1,i18n:2},f0)}}class A0{constructor(t,e){f(this,"revoke");f(this,"container");f(this,"mainController");f(this,"disposers",[]);f(this,"measureController");f(this,"mode");f(this,"svelteDom");f(this,"_params");f(this,"handleExit",()=>{const t=this.container.querySelector(".fpm__exit-icon"),e=this.container.querySelector(".fpm__exit");if(!e||!t)throw new Error("cannot find dom");this.mode==="pc"&&(Object.assign(e.style,Hv),Object.assign(t==null?void 0:t.style,_v));const i=()=>{e.style.opacity="1"},s=()=>{e.style.opacity="0.85"},o=()=>{this.measureController.disable()};return e.addEventListener("click",o),e.addEventListener("mouseenter",i),e.addEventListener("mouseleave",s),()=>{e.removeEventListener("click",o),e.removeEventListener("mouseenter",i),e.removeEventListener("mouseleave",s)}});var s,o;this._params=e,this.measureController=t,this.mode=(s=e.mode)!=null?s:"pc",this.container=document.createElement("div"),this.container.innerHTML=this.mode==="mobile"?Ov:Rv,this.container.classList.add("fpm__ui-controller",this.mode),this.container.style.background="rgba(0, 0, 0, 0.15)";const i=(o=e.useNewUI)!=null?o:!1;if(i&&(e.pointSelectorMode==="cursor"?this.svelteDom=new s0({target:e.container,props:{measureController:this.measureController,i18n:e.i18n,showExit:e.showExit}}):e.pointSelectorMode==="fixed"&&(this.svelteDom=new p0({target:e.container,props:{measureController:this.measureController,i18n:e.i18n,showExit:e.showExit}}))),!i){e.container.appendChild(this.container);const r=this.container.querySelectorAll(".fpm__text"),a=this.container.querySelector(".fpm_ui-bg"),l=this.container.querySelector(".fpm_operating-space");Object.assign(a==null?void 0:a.style,Nv),Object.assign(l==null?void 0:l.style,Gv),Object.assign(this.container.style,Qv),r.forEach(c=>Object.assign(c.style,Fv))}}dispose(){var t;this.hide(),(t=this.svelteDom)==null||t.$destroy(),this.container.remove()}show(){return this.container.style.display="block",this.container.style.opacity="1",this.container.style.transform="translate(0, 0)",this.mode==="pc"?(this.revoke=new Uv(this.measureController,this.container),this.mainController=new Wv(this.measureController,this.container,this._params)):this.mainController=new Yv(this.measureController,this.container,this._params),this.disposers.push(this.handleExit()),this}hide(){var t,e;return this.container.style.display="none",this.container.style.opacity="0",this.container.style.transform="translate(0, 10px)",this.mode==="pc"&&((t=this.revoke)==null||t.dispose()),(e=this.mainController)==null||e.dispose(),this.disposers.forEach(i=>i()),this.disposers=[],this}}var Mt=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},Fe={},v0={get exports(){return Fe},set exports(n){Fe=n}};function ho(n){return n===null?"null":typeof n=="undefined"?"undefined":typeof n=="object"?Array.isArray(n)?"array":"object":typeof n}function vu(n){return ho(n)==="object"?na(n):ho(n)==="array"?ia(n):n}function ia(n){return n.map(vu)}function na(n){const t={};for(const e in n)n.hasOwnProperty(e)&&(t[e]=vu(n[e]));return t}function ko(n,t=[],e={}){const i={arrayBehaviour:e.arrayBehaviour||"replace"},s=t.map(r=>r||{}),o=n||{};for(let r=0;r<s.length;r++){const a=s[r],l=Object.keys(a);for(let c=0;c<l.length;c++){const d=l[c],h=a[d],u=ho(h),m=ho(o[d]);if(u==="object")if(m!=="undefined"){const A=m==="object"?o[d]:{};o[d]=ko({},[A,na(h)],i)}else o[d]=na(h);else if(u==="array")if(m==="array"){const A=ia(h);o[d]=i.arrayBehaviour==="merge"?o[d].concat(A):A}else o[d]=ia(h);else o[d]=h}}return o}v0.exports=function(t,...e){return ko(t,e)};Fe.noMutate=function(...t){return ko({},t)};Fe.withOptions=function(t,e,i){return ko(t,e,i)};function b0(n){ue(n,"svelte-1q8gtp4",".Measure-Tips.svelte-1q8gtp4.svelte-1q8gtp4{box-sizing:border-box;position:absolute;pointer-events:none;top:0;width:100%;padding:0 2.5rem}.Measure-Tips.svelte-1q8gtp4 .text.svelte-1q8gtp4{text-align:center;position:relative;max-width:100%;top:3.125rem;color:#fff;word-break:break-all;word-wrap:break-word;text-shadow:0 0.0625rem 0.375rem rgba(0, 0, 0, 0.5);font-size:1.25rem;font-weight:bold}")}function wc(n){let t,e,i,s,o;return{c(){t=S("div"),e=S("div"),i=xe(n[2]),w(e,"class","text svelte-1q8gtp4"),w(t,"class","Measure-Tips svelte-1q8gtp4")},m(r,a){B(r,t,a),x(t,e),x(e,i),n[7](e),o=!0},p(r,a){(!o||a&4)&&Se(i,r[2])},i(r){o||(r&&He(()=>{o&&(s||(s=Ft(t,it,{},!0)),s.run(1))}),o=!0)},o(r){r&&(s||(s=Ft(t,it,{},!1)),s.run(0)),o=!1},d(r){r&&O(t),n[7](null),r&&s&&s.end()}}}function y0(n){let t,e=n[0]&&wc(n);return{c(){e&&e.c(),t=Ee()},m(i,s){e&&e.m(i,s),B(i,t,s)},p(i,[s]){i[0]?e?(e.p(i,s),s&1&&k(e,1)):(e=wc(i),e.c(),k(e,1),e.m(t.parentNode,t)):e&&(de(),j(e,1,1,()=>{e=null}),he())},i(i){k(e)},o(i){j(e)},d(i){i&&O(t),e&&e.d(i)}}}function w0(n,t,e){let{measureController:i}=t,{i18n:s=y=>y}=t,{tips:o}=t,{tipStyle:r={}}=t,{visible:a=!0}=t,l=null;const c=y=>{const I=i.currentMeasureType;let M="";return M=o[y],M===void 0&&(M=o[I][y]),M},d=y=>{e(2,u=s(c(y)))},h=()=>{e(2,u="")};let u="";const m=y=>{y==="Edit"&&i.changeMeasureType?d("start"):h()},A=()=>{i.getCurrentMode()==="Watch"&&h()},p=()=>{i.getCurrentMode()==="Edit"&&d("start")},g=y=>{i.currentMeasureType==="area"&&(y.length>=2?d("close"):y.length===0?d("start"):h())};bt(()=>{m(i.getCurrentMode()),i.hook.on("modeChange",m),i.hook.on("complete",A),i.hook.on("pointsChange",g),i.hook.on("measureTypeChange",p)}),zt(()=>{i.hook.off("modeChange",m),i.hook.off("complete",A),i.hook.off("pointsChange",g),i.hook.off("measureTypeChange",p),h()});function v(y){Ge[y?"unshift":"push"](()=>{l=y,e(1,l),e(6,r)})}return n.$$set=y=>{"measureController"in y&&e(3,i=y.measureController),"i18n"in y&&e(4,s=y.i18n),"tips"in y&&e(5,o=y.tips),"tipStyle"in y&&e(6,r=y.tipStyle),"visible"in y&&e(0,a=y.visible)},n.$$.update=()=>{if(n.$$.dirty&66&&l)for(const y in r)r.hasOwnProperty(y)&&e(1,l.style[y]=r[y],l)},[a,l,u,i,s,o,r,v]}class C0 extends le{constructor(t){super(),ae(this,t,w0,y0,oe,{measureController:3,i18n:4,tips:5,tipStyle:6,visible:0},b0)}}const I0={line:{start:"选择一个合适的位置开始测量,点击【结束】或【鼠标右键】结束测量"},area:{start:"选择一个合适的位置开始绘制平面",close:"选择3个点后将闭合平面,点击【结束】或【鼠标右键】将自动闭合"}},P0={line:{start:""},area:{start:"",close:"选择3个点后将闭合平面,点击结束自动闭合"}};class E0{constructor(t,e){f(this,"tipSvelteDom");this.tipSvelteDom=new C0({target:e.container,props:{measureController:t,tips:Fe({},e.pointSelectorMode==="fixed"?P0:I0,e.tips),i18n:e.i18n,visible:!0,tipStyle:e.tipStyle}})}dispose(){var t;(t=this.tipSvelteDom)==null||t.$destroy()}show(){var t;return(t=this.tipSvelteDom)==null||t.$set({visible:!0}),this}hide(){var t;return(t=this.tipSvelteDom)==null||t.$set({visible:!1}),this}}class M0{constructor(t,e){f(this,"five");f(this,"measureController");f(this,"onKeyDown",t=>{if(t.metaKey&&t.code==="KeyS"){this.measureController.save().changeMode("Watch"),t.preventDefault();return}if(t.code==="Escape")return this.escape()});f(this,"onMouseDown",t=>{t.button===2&&(t.preventDefault(),this.escape())});this.five=e,this.measureController=t;const i=this.five.getElement();i&&(document.body.addEventListener("keydown",this.onKeyDown),i.addEventListener("mousedown",this.onMouseDown))}dispose(){const t=this.five.getElement();t&&(document.body.removeEventListener("keydown",this.onKeyDown),t.removeEventListener("mousedown",this.onMouseDown))}escape(){return this.measureController.getCurrentMode()==="Watch"?this.measureController.disable():this.measureController.save().changeMode("Watch")}}function uo(n){return typeof n=="object"?n===null?{}:n:{}}class k0{constructor(t,e){f(this,"hasOpen",!1);f(this,"hook",new je.Subscribe);f(this,"magnifier");f(this,"controller",null);f(this,"allowMeasureType");f(this,"currentMeasureType");f(this,"five");f(this,"model");f(this,"group");f(this,"config");f(this,"isMobile");f(this,"useUIController");f(this,"params");f(this,"useGuideController");f(this,"container",document.createElement("div"));f(this,"shortcutKeyController");f(this,"disable",()=>{var t,e,i,s;this.hasOpen=!1,this.container.style.opacity="0",(t=this.controller)==null||t.dispose(),(e=this.useUIController)==null||e.hide(),(i=this.useGuideController)==null||i.hide(),(s=this.shortcutKeyController)==null||s.dispose(),this.controller=null,this.five.helperVisible=!0,this.five.scene.remove(this.group),this.five.needsRender=!0,this.hook.emit("disable",!0)});f(this,"getCurrentMode",()=>this.controller instanceof di?"Edit":this.controller instanceof sc?"Watch":this.controller instanceof Xn?"Mixed":this.controller instanceof ic?"View":null);f(this,"changeMode",t=>{var s;if(!this.hasOpen||this.getCurrentMode()===t)return;(s=this.controller)==null||s.dispose();const e={View:ic,Watch:sc,Edit:di,Mixed:Xn};if(!e[t])throw new Error("不存在的 Mode");const i=this.createControllerParams();this.controller=new e[t](i),this.hook.emit("modeChange",t)});f(this,"changeMeasureType",t=>{this.currentMeasureType=t,this.hook.emit("measureTypeChange",t)});var o,r,a,l,c,d,h,u,m;this.five=t,this.params=e,this.config=Eo(e,["openParams","magnifierParams"]),this.model=new Ra(this.config),this.isMobile=(r=(o=e==null?void 0:e.openParams)==null?void 0:o.isMobile)!=null?r:!1,this.magnifier=new ga(t,(a=e.magnifierParams)!=null?a:{width:190,height:190,scale:2}),this.allowMeasureType=Array.from(new Set((c=(l=e.editParams)==null?void 0:l.allowMeasureType)!=null?c:["line"])),this.currentMeasureType=(d=this.allowMeasureType[0])!=null?d:"line",this.group=new R.Group,this.group.name="plugin-measure-group",this.container.classList.add("five-plugin-measure-container"),this.container.style.position="absolute",this.container.style.left="0",this.container.style.top="0",this.container.style.pointerEvents="none",this.container.style.width="100%",this.container.style.height="100%",this.container.style.opacity="0";const i=(u=(h=e.editParams)==null?void 0:h.pointSelectorMode)!=null?u:hu?"fixed":"cursor",s=(m=this.params.openParams)!=null?m:{};if(this.params.useUIController!==!1){const A=G({container:this.container,openParams:s,i18n:e.i18n,pointSelectorMode:i,useNewUI:this.allowMeasureType.length>1},uo(this.params.useUIController));this.useUIController=new A0(this,A)}if(this.params.useGuideController!==!1){const A=G({container:this.container,pointSelectorMode:i,i18n:e.i18n},uo(this.params.useGuideController));this.useGuideController=new E0(this,A)}}appendTo(t){t.append(this.container)}clear(){this.model.clear()}dispose(){var t,e;this.disable(),this.clear(),(t=this.useUIController)==null||t.dispose(),(e=this.magnifier)==null||e.dispose(),this.five.needsRender=!0}load(t){this.model.parse(t),this.save()}enable(t){var e;this.hasOpen||(this.hasOpen=!0,this.five.scene.add(this.group),this.container.style.opacity="1",t!=null&&t.mode?this.changeMode(t.mode):this.isMobile?this.changeMode("Mixed"):this.changeMode("Watch"),(e=this.useUIController)==null||e.show(),this.shortcutKeyController=new M0(this,this.five),this.hook.emit("enable",!0))}edit(t){t&&this.changeMeasureType(t);const e=this.isMobile?"Mixed":"Edit";this.changeMode(e)}revoke(){this.controller instanceof di&&this.controller.revoke()}removePolyline(t){this.model.removePolyline(t)}removeArea(t){this.model.removeArea(t)}removePolylineByID(t){const e=this.model.getPolylineByID(t);e&&this.model.removePolyline(e)}getPolylineByID(t){return this.model.getPolylineByID(t)}getEditedPolyline(){}highlightLine(t){if(this.getCurrentMode()!=="Watch")return!1;const e=this.model.getLineByID(t);return e?(this.controller.highlightLine(e),!0):!1}clearHighlightLines(){return this.getCurrentMode()!=="Watch"?!1:(this.controller.clearHighlightLines(),!0)}save(t){var s;if(!(this.controller instanceof di)&&!(this.controller instanceof Xn))return this;const e=(s=t==null?void 0:t.mode)!=null?s:"View",i=this.controller.model.areas;return this.controller instanceof di?this.controller.complete():i.forEach(o=>{o.showArea(),this.model.addArea(o)}),this.changeMode(e),this}addStartPoint(){this.controller instanceof Xn&&this.hook.emit("willChangeState","watching","editing")}addEndPoint(){this.controller instanceof Xn&&this.hook.emit("willChangeState","editing","watching")}toJson(){return this.model.toJson()}changeIsMobile(t){}changeConfigs(t){var e,i;Object.assign(this.config,t),(e=this.controller)==null||e.updateDistanceUI(),(i=this.controller)==null||i.updateAreaUI()}setCustomText(t,e){var s;const i=this.model.getLineByID(t);if(!i)throw new Error("不存在的线段");i.setText(e),(s=this.controller)==null||s.updateDistanceUI()}createControllerParams(){var i,s;const t=(i=this.params.openParams)!=null?i:{},e=(s=this.params.editParams)!=null?s:{};return t.isMobile=this.isMobile,{five:this.five,hook:this.hook,group:this.group,model:this.model,config:this.config,magnifier:this.magnifier,container:this.container,openParams:t,editParams:e,magnifierParams:this.params.magnifierParams,getMeasureType:()=>this.currentMeasureType,mouseGroup:uu(G({},t.crossHairParameter)),userDistanceItemCreator:this.params.userDistanceItemCreator}}}function Qs(n,t,e){const i=n[t],s=n[e];i===void 0||s===void 0||(n[t]=s,n[e]=i)}function x0(n,t,e){const i=e/2;for(let s=1;s<=i;s++){const o=e-(s-1);for(let r=1;r<=t;r++){const a=(s-1)*t+r-1,l=(o-1)*t+r-1;Qs(n,a*4+0,l*4+0),Qs(n,a*4+1,l*4+1),Qs(n,a*4+2,l*4+2),Qs(n,a*4+3,l*4+3)}}}class D0{constructor(t,e){f(this,"width");f(this,"height");f(this,"containerDom");f(this,"hooks",new je.Subscribe);f(this,"canvas",document.createElement("canvas"));f(this,"five");f(this,"scale");f(this,"config");f(this,"offset",{x:0,y:0});f(this,"context");f(this,"renderCenter",new E.Vector3);f(this,"hammer");f(this,"state",{enabled:!1});f(this,"offsetRange");f(this,"isPanning",!1);f(this,"onPanstart",()=>{this.isPanning=!0,this.canvas.style.boxShadow="0 2px 30px 0 rgba(0,0,0,0.20)"});f(this,"onPan",t=>{if(!this.isPanning||!this.offsetRange||this.hooks.emit("wantsPanGesture",t))return;const{translateX:i,translateY:s}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${i}px, ${s}px, 100px)`});f(this,"onPanend",t=>{if(this.isPanning=!1,this.canvas.style.boxShadow="none",!this.offsetRange)return;const{translateX:e,translateY:i}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${e}px, ${i}px, 100px)`,this.offset={x:e,y:i}});var s,o,r;if(!t.renderer)throw new Error("Five Render 未初始化");this.five=t,this.scale=(s=e==null?void 0:e.scale)!=null?s:2,this.width=(o=e==null?void 0:e.width)!=null?o:190,this.height=(r=e==null?void 0:e.height)!=null?r:190,this.config={dragEnabled:(e==null?void 0:e.dragEnabled)||!1,autoFixPCPosition:(e==null?void 0:e.autoFixPCPosition)||!1,initialPosition:(e==null?void 0:e.initialPosition)||{left:"0",top:"0"}};const i=this.canvas.getContext("2d");if(!i)throw new Error("CANNOT CREATE CONTEXT2D");this.context=i,this.config.dragEnabled&&(this.hammer=new ls(this.canvas),this.hammer.on("pan",this.onPan),this.hammer.on("panstart",this.onPanstart),this.hammer.on("panend",this.onPanend)),this.initStyle()}dispose(){var t;this.clear(),this.disable(),(t=this.hammer)==null||t.destroy()}enable(){if(!this.state.enabled)return this.state.enabled=!0,this.containerDom&&this._appendTo(this.containerDom),this}disable(){if(this.state.enabled)return this.state.enabled=!1,this.canvas.remove(),this}appendTo(t){return this.containerDom=t,this.state.enabled&&this._appendTo(t),this}clear(){return this.context.clearRect(0,0,this.canvas.width,this.canvas.height),this}renderWithPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}renderWithScreenPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}resetOffset(){this.offset={x:0,y:0},this.canvas.style.transform="translate3d(0px, 0px, 100px)"}getCurrentState(){return{enabled:this.state.enabled}}getRenderCenter(){return this.renderCenter}_appendTo(t){if(this.resetOffset(),t.appendChild(this.canvas),!this.offsetRange){const e=this.canvas.getBoundingClientRect(),i=t.getBoundingClientRect(),s=i.right-e.right,o=i.bottom-e.bottom,r=i.left-e.left,a=i.top-e.top;this.offsetRange={min:{x:r,y:a},max:{x:s,y:o}}}}autoFixPCPosition(){if(!this.containerDom)return;const{width:t,height:e}=this,[i,s,o]=(()=>{if(this.renderCenter instanceof E.Vector3){const r=this.renderCenter.clone().project(this.five.camera);return[(r.x+1)/2*this.containerDom.clientWidth,-(r.x-1)/2*this.containerDom.clientWidth,-(r.y-1)/2*this.containerDom.clientHeight]}else return[this.renderCenter.x,this.containerDom.clientWidth-this.renderCenter.x,this.renderCenter.y]})();i<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left="90px"):o<183?(this.canvas.style.top="90px",this.canvas.style.left=-t/2+"px"):s<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=-t-90+"px"):(this.canvas.style.left=-t/2+"px",this.canvas.style.top=-e-90+"px"),this.canvas.style.transform=`translate3d(${i}px, ${o}px, 10px)`,this.offset={x:i,y:o}}render(){if(!this.five.renderer||!this.containerDom)return;const{scale:t,context:e,width:i,height:s}=this,o=this.five.renderer.getSize(new E.Vector2),[r,a]=(()=>{if(this.renderCenter instanceof E.Vector3){const g=this.renderCenter.clone().project(this.five.camera);return[(g.x+1)/2*o.x,(g.y+1)/2*o.y]}else return[this.renderCenter.x,o.y-this.renderCenter.y]})(),l=1,c=i/t,d=s/t,h=l*t,u=this.five.getPixels(r-c/2,a-c/2,c,d,h),m=Math.floor(i*l),A=Math.floor(s*l);x0(u,m,A);const p=new ImageData(m,A);p.data.set(u),e.putImageData(p,0,0)}initStyle(){const t=this.canvas;t.classList.add("five-plugin__magnifier"),t.style.position="absolute",t.style.pointerEvents="all",t.style.borderRadius="50%",t.style.zIndex="99";const e=1;t.setAttribute("width",(this.width*e).toString()),t.setAttribute("height",(this.height*e).toString()),t.style.border="2px solid rgba(255,255,255,0.20)",t.style.width=this.width+"px",t.style.height=this.height+"px",t.style.top=this.config.initialPosition.top,t.style.left=this.config.initialPosition.left,t.style.transform="translate(0,0,100px)",this.config.dragEnabled&&(this.canvas.style.cursor="pointer")}getPanOffset(t,e){const{min:{x:i,y:s},max:{x:o,y:r}}=e,a=this.offset.x+t.deltaX,l=this.offset.y+t.deltaY,c=Math.min(Math.max(a,i),o),d=Math.min(Math.max(l,s),r);return{translateX:c,translateY:d}}}const S0=function(t,e){return new k0(t,e)},bu=Da(null);function T0(n){ue(n,"svelte-19zi46m",".PanoSpatialTagPlugin__tag-origin.svelte-19zi46m{position:absolute;width:0.5rem;height:0.5rem;border-radius:50%;background:#fff;box-shadow:0 0 .6rem #fff;transform:translate(-50%, -50%) scale(1);transform-origin:center center;animation:svelte-19zi46m-PanoSpatialTagPlugin__tag-origin 1.2s forwards;pointer-events:auto}.PanoSpatialTagPlugin__tag-origin.svelte-19zi46m:after{content:'';position:absolute;top:50%;height:50%;width:2rem;height:2rem;transform:translate(-50%, -50%)}.PanoSpatialTagPlugin__tag-origin-destroy.svelte-19zi46m{transform:translate(-50%, -50%) scale(0.6);animation:svelte-19zi46m-PanoSpatialTagPlugin__tag-origin-destroy 1.2s forwards .7s}@keyframes svelte-19zi46m-PanoSpatialTagPlugin__tag-origin{0%{transform:translate(-50%, -50%) scale(1);opacity:0}100%{transform:translate(-50%, -50%) scale(0.6);opacity:1 }}@keyframes svelte-19zi46m-PanoSpatialTagPlugin__tag-origin-destroy{0%{transform:translate(-50%, -50%) scale(0.6);opacity:1}10%{transform:translate(-50%, -50%) scale(1);opacity:0.9}100%{transform:translate(-50%, -50%) scale(1);opacity:0}}")}function Cc(n,t,e){const i=n.slice();return i[3]=t[e],i}function Ic(n){let t,e=`${n[3].top}%`,i=`${n[3].left}%`,s,o;function r(){return n[2](n[3])}return{c(){t=S("i"),w(t,"class","svelte-19zi46m"),K(t,"PanoSpatialTagPlugin__tag-origin",!0),K(t,"PanoSpatialTagPlugin__tag-origin-destroy",n[3].destroying),z(t,"top",e),z(t,"left",i),z(t,"visibility",n[3].front?"visible":"hidden")},m(a,l){B(a,t,l),s||(o=be(t,"click",r),s=!0)},p(a,l){n=a,l&1&&K(t,"PanoSpatialTagPlugin__tag-origin-destroy",n[3].destroying),l&1&&e!==(e=`${n[3].top}%`)&&z(t,"top",e),l&1&&i!==(i=`${n[3].left}%`)&&z(t,"left",i),l&1&&z(t,"visibility",n[3].front?"visible":"hidden")},d(a){a&&O(t),s=!1,o()}}}function L0(n){let t,e=Pe(n[0]),i=[];for(let s=0;s<e.length;s+=1)i[s]=Ic(Cc(n,e,s));return{c(){for(let s=0;s<i.length;s+=1)i[s].c();t=Ee()},m(s,o){for(let r=0;r<i.length;r+=1)i[r]&&i[r].m(s,o);B(s,t,o)},p(s,[o]){if(o&3){e=Pe(s[0]);let r;for(r=0;r<e.length;r+=1){const a=Cc(s,e,r);i[r]?i[r].p(a,o):(i[r]=Ic(a),i[r].c(),i[r].m(t.parentNode,t))}for(;r<i.length;r+=1)i[r].d(1);i.length=e.length}},i:q,o:q,d(s){s&&O(t),jt(i,s)}}}function j0(n,t,e){let{origins:i}=t;const s=r=>{bu.update(()=>`${r}-PanoSpatialTagPlugin-${Date.now()}`)},o=r=>s(r.id);return n.$$set=r=>{"origins"in r&&e(0,i=r.origins)},[i,s,o]}class z0 extends le{constructor(t){super(),ae(this,t,j0,L0,oe,{origins:0},T0)}}function O0(n){ue(n,"svelte-9m6drd",`.PanoSpatialTagPlugin__tag-x.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0;display:block;white-space:nowrap;box-sizing:border-box;width:25rem;height:14rem;color:#fff;transform:translate(0, -100%);transition:height 0.5s linear}.PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd.svelte-9m6drd{content:'';position:absolute;width:30rem;height:30rem;top:-15rem;left:-15rem;z-index:-1;opacity:0;transition:opacity 0.8s 0.6s;background:url('https://vrlab-image4.ljcdn.com/release/web/PanoSpatialTagPlugin__blur.png');background-size:30rem 30rem}.PanoSpatialTagPlugin__tag-line.svelte-9m6drd.svelte-9m6drd{position:absolute;left:-1rem;width:2rem;height:100%;overflow:hidden}.PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:1rem;height:calc(100% - 1.5rem);width:0.15rem;background:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.1));box-shadow:0 0.1rem 0.5rem rgba(0, 0, 0, 0.2);opacity:0;transform:translate(-50%, 60%) scaleY(0);transition:transform 0.4s cubic-bezier(0.44, 0.44, 0.74, 0.98), opacity 0.4s cubic-bezier(0.44, 0.44, 0.74, 0.98), width 0.5s linear,
516
- height 0.5s linear;transform-origin:center bottom}.PanoSpatialTagPlugin__tag-line1.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0.3rem;height:1.8rem;width:0.1rem;background:#fff;opacity:0;transform:translate(-50%, 200%) scaleY(0);transform-origin:center top}.PanoSpatialTagPlugin__tag-line2.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0.5rem;height:1.8rem;width:0.1rem;background:#fff;opacity:0;transform:translate(-50%, 200%) scaleY(0);transform-origin:center top}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-line1.svelte-9m6drd{animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line1 linear 0.5s forwards 0.45s}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-line2.svelte-9m6drd{animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line2 linear 0.5s forwards 0.65s}.PanoSpatialTagPlugin__tag-x.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd.svelte-9m6drd{transform:translate(0, 0)}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-line.svelte-9m6drd{transform:scaleY(-1)}.PanoSpatialTagPlugin__tag-animate.svelte-9m6drd.svelte-9m6drd{position:relative;height:100%;overflow:hidden;transform-origin:left top;transition:transform 0.5s linear}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-animate.svelte-9m6drd{transform-origin:left bottom}.PanoSpatialTagPlugin__tag-content.svelte-9m6drd.svelte-9m6drd{position:absolute;display:inline-block;transform:translate(-100%, 0);transition:transform 0.9s cubic-bezier(0, 0.65, 0.16, 1.08) 0.6s;padding-left:0.5rem;font-size:1rem}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{bottom:0}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd{opacity:1;transform:translate(-50%, 0) scaleY(1)}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{top:unset;bottom:-15rem}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{opacity:0.32}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{transform:translate(0, 0)}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd{opacity:0;transform:translate(-50%, 60%) scaleY(0);transition:transform 0.5s 0.55s, opacity 0.4s 0.55s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{opacity:0;transition:opacity 0.8s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{transform:translate(-100%, 0);transition:transform 0.6s cubic-bezier(0.53, 0.06, 0.88, 0.59)}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-content .svelte-9m6drd{pointer-events:none}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-line1.svelte-9m6drd{opacity:0.5;transform:translate(-50%, 10%) scaleY(0);animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line1-hide linear 0.28s forwards 0.3s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-line2.svelte-9m6drd{opacity:0.5;transform:translate(-50%, 0) scaleY(0);animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line2-hide linear 0.28s forwards 0.45s}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line1{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 135%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 20%) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line2{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 125%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line1-hide{0%{opacity:0.5;transform:translate(-50%, 10%) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 105%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line2-hide{0%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 100%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}`)}function B0(n){let t,e,i,s,o,r,a,l,c,d,h,u,m,A,p;return{c(){t=S("div"),e=S("div"),i=$(),s=S("div"),o=S("i"),r=$(),a=S("i"),l=$(),c=S("i"),d=$(),h=S("div"),u=S("div"),w(e,"class","PanoSpatialTagPlugin__tag-shadow svelte-9m6drd"),z(e,"transform","translate("+n[7]/2*n[3]*3+"px, "+n[8]/2*(n[1]?-1:1)*n[3]*3+"px) scale("+1/n[3]+")"),w(o,"class","PanoSpatialTagPlugin__tag-flagpole svelte-9m6drd"),z(o,"width",n[4]+"rem"),w(a,"class","PanoSpatialTagPlugin__tag-line1 svelte-9m6drd"),w(c,"class","PanoSpatialTagPlugin__tag-line2 svelte-9m6drd"),w(s,"class","PanoSpatialTagPlugin__tag-line svelte-9m6drd"),w(u,"class","PanoSpatialTagPlugin__tag-content svelte-9m6drd"),w(h,"class","PanoSpatialTagPlugin__tag-animate svelte-9m6drd"),z(h,"transform","scale("+n[3]*3+")"),w(t,"id",m="PanoSpatialTagPlugin__"+n[0]),z(t,"height",20*n[5]+"rem"),w(t,"class","svelte-9m6drd"),K(t,"PanoSpatialTagPlugin__tag-x",!0),K(t,"PanoSpatialTagPlugin__tag-upside-down",n[1]),K(t,"PanoSpatialTagPlugin__tag-show",n[10]),K(t,"PanoSpatialTagPlugin__tag-hide",n[10]===!1||n[6])},m(g,v){B(g,t,v),x(t,e),x(t,i),x(t,s),x(s,o),x(s,r),x(s,a),x(s,l),x(s,c),x(t,d),x(t,h),x(h,u),u.innerHTML=n[2],n[16](u),A||(p=be(u,"click",n[11]),A=!0)},p(g,[v]){v&394&&z(e,"transform","translate("+g[7]/2*g[3]*3+"px, "+g[8]/2*(g[1]?-1:1)*g[3]*3+"px) scale("+1/g[3]+")"),v&16&&z(o,"width",g[4]+"rem"),v&4&&(u.innerHTML=g[2]),v&8&&z(h,"transform","scale("+g[3]*3+")"),v&1&&m!==(m="PanoSpatialTagPlugin__"+g[0])&&w(t,"id",m),v&32&&z(t,"height",20*g[5]+"rem"),v&2&&K(t,"PanoSpatialTagPlugin__tag-upside-down",g[1]),v&1024&&K(t,"PanoSpatialTagPlugin__tag-show",g[10]),v&1088&&K(t,"PanoSpatialTagPlugin__tag-hide",g[10]===!1||g[6])},i:q,o:q,d(g){g&&O(t),n[16](null),A=!1,p()}}}function V0(n,t,e){let{id:i}=t,{upsideDown:s}=t,{content:o}=t,{contentZoom:r}=t,{lineWidthZoom:a}=t,{lineHeightZoom:l}=t,{destroying:c=!1}=t,{folded:d}=t,{dispose:h}=t,{events:u}=t,{hooks:m}=t,A=0,p=0,g,v,y=setTimeout(()=>{d||e(10,v=!0),y=void 0},100);const I=P=>{const V=Object.keys(u);let L=P.target;for(;L;){const X=L.getAttribute("class");if(!X){L=L.parentNode;continue}if(X.includes("PanoSpatialTagPlugin__tag-content")){L=null;break}V.forEach(U=>{X.includes(U)&&u[U](i)}),L=L.parentNode}};bt(()=>{m.emit("initTag",{id:i})});const M=bu.subscribe(P=>{if(P===null)return;const[V,L]=P.split("-PanoSpatialTagPlugin-");i===V&&(m.emit("clickOrigin",{id:i,show:v}),y||(e(10,v=d),e(12,d=!d),y=setTimeout(()=>{y=void 0},1500)))});Rh(()=>{e(7,A=g.offsetWidth),e(8,p=g.offsetHeight),!y&&e(10,v=!d)}),zt(()=>{m.emit("destroyTag",{id:i}),M(),h()});function D(P){Ge[P?"unshift":"push"](()=>{g=P,e(9,g)})}return n.$$set=P=>{"id"in P&&e(0,i=P.id),"upsideDown"in P&&e(1,s=P.upsideDown),"content"in P&&e(2,o=P.content),"contentZoom"in P&&e(3,r=P.contentZoom),"lineWidthZoom"in P&&e(4,a=P.lineWidthZoom),"lineHeightZoom"in P&&e(5,l=P.lineHeightZoom),"destroying"in P&&e(6,c=P.destroying),"folded"in P&&e(12,d=P.folded),"dispose"in P&&e(13,h=P.dispose),"events"in P&&e(14,u=P.events),"hooks"in P&&e(15,m=P.hooks)},[i,s,o,r,a,l,c,A,p,g,v,I,d,h,u,m,D]}let R0=class extends le{constructor(t){super(),ae(this,t,V0,B0,oe,{id:0,upsideDown:1,content:2,contentZoom:3,lineWidthZoom:4,lineHeightZoom:5,destroying:6,folded:12,dispose:13,events:14,hooks:15},O0)}};const Q0={position:"absolute",top:"0px",left:"0px",width:"100%",height:"100%",pointerEvents:"none"},Pc="<",Ec=">",Mc="%",kc="locals",G0="(<%%|%%>|<%=|<%-|<%_|<%#|<%|%>|-%>|_%>)",N0={"&":"&amp","<":"&lt",">":"&gt",'"':"&#34","'":"&#39"},ut={EVAL:"eval",ESCAPED:"escaped",RAW:"raw",COMMENT:"comment",LITERAL:"literal"};function xc(n){return n.replace(/;(\s*$)/,"$1")}function H0(n,t){return new _0(n).compileFunction()(t)}class _0{constructor(t){f(this,"templateText");f(this,"mode",null);f(this,"truncate",!1);f(this,"currentLine",1);f(this,"source","");f(this,"regex",new RegExp(G0));this.templateText=t}compileFunction(){let t;const e=` var __output = "";
515
+ `,Qv={display:"none",position:"absolute",top:"0",left:"0",width:"100%",height:"100%",opacity:"0",transform:"translate(0, 10px)",transition:"opacity 500ms ease-in-out, transform 500ms ease-in-out"},Gv={position:"absolute",left:"50%",bottom:"32px",transform:"translateX(-50%)",height:"89px",display:"flex",justifyContent:"space-between",alignItems:"center",fontSize:"14px",pointerEvents:"all",color:"#fff",zIndex:"10"},Nv={position:"absolute",bottom:"0",left:"0",opacity:"0.5",width:"100%",height:"184px",background:"linear-gradient(180deg, rgba(0,0,0,0.00) 0%, #000000 100%)",zIndex:"0"},fu={margin:"0 64px"},Hv={opacity:"0.85"},mu={width:"72px",height:"72px",backgroundSize:"100%",cursor:"pointer",transition:"all 200ms ease-in-out"},_v={width:"24px",height:"24px",marginRight:"4px",backgroundSize:"100%",cursor:"pointer"},Fv={userSelect:"none",pointerEvents:"none"};class Wv{constructor(t,e,i){f(this,"container");f(this,"measureController");f(this,"mainElement");f(this,"_params");f(this,"_btnTexts",{start:"开始",end:"结束",revoke:"撤销",exit:"退出"});f(this,"onMouseEnter",()=>{const{mainItem:t}=this.mainElement;t.style.opacity="1"});f(this,"onMouseLeave",()=>{const{mainItem:t}=this.mainElement;t.style.opacity="0.85"});f(this,"onClick",()=>{this.measureController.getCurrentMode()!=="Edit"?this.measureController.changeMode("Edit"):this.measureController.save().changeMode("Watch")});f(this,"modeChangeHandler",t=>{t==="Edit"?this.change2Done():this.change2Add()});var r,a,l,c;this._params=i,this._btnTexts={start:(r=this._params.startButtonText)!=null?r:this._btnTexts.start,end:(a=this._params.endButtonText)!=null?a:this._btnTexts.end,revoke:(l=this._params.revokeButtonText)!=null?l:this._btnTexts.revoke,exit:(c=this._params.exitButtonText)!=null?c:this._btnTexts.exit},this.measureController=t,this.container=e,this.mainElement=this.getMainElement(),Object.assign(this.mainElement.mainIcon.style,mu),Object.assign(this.mainElement.mainItem.style,fu);const{revokeTextDom:s,exitTextDom:o}=this._getTextElement();s&&(s.innerText=this._btnTexts.revoke),o&&(o.innerText=this._btnTexts.exit),this.change2Add(),this.measureController.hook.on("modeChange",this.modeChangeHandler),this.mainElement.mainItem.addEventListener("click",this.onClick),this.mainElement.mainItem.addEventListener("mouseenter",this.onMouseEnter),this.mainElement.mainItem.addEventListener("mouseleave",this.onMouseLeave)}dispose(){this.measureController.hook.off("modeChange",this.modeChangeHandler),this.mainElement.mainItem.removeEventListener("click",this.onClick),this.mainElement.mainItem.removeEventListener("mouseenter",this.onMouseEnter),this.mainElement.mainItem.removeEventListener("mouseleave",this.onMouseLeave)}getMainElement(){const t=this.container.querySelector(".fpm__main-text"),e=this.container.querySelector(".fpm__main"),i=this.container.querySelector(".fpm__main-icon");if(!e||!t||!i)throw new Error("cannot find dom");return{mainTextDom:t,mainItem:e,mainIcon:i}}_getTextElement(){const t=this.container.querySelector(".fpm__revoke-text"),e=this.container.querySelector(".fpm__exit-text");return{revokeTextDom:t,exitTextDom:e}}change2Add(){const{mainIcon:t,mainTextDom:e}=this.mainElement;if(t.className.includes("fpm__main__start")){e.innerText=this._btnTexts.start;return}t.className.includes("fpm__main__end")&&(t.style.transform="scale(0.8)",e.className.includes("fpm__main-text__show")?e.classList.replace("fpm__main-text__show","fpm__main-text__hide"):e.classList.add("fpm__main-text__hide"),setTimeout(()=>{t.classList.replace("fpm__main__end","fpm__main__start"),t.style.transform="scale(1)",e.innerText=this._btnTexts.start,e.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200))}change2Done(){const{mainTextDom:t,mainIcon:e}=this.getMainElement();t.innerText!==this._btnTexts.end&&(e.className.includes("fpm__main__end")||e.className.includes("fpm__main__start")&&(e.style.transform="scale(0.8)",t.className.includes("fpm__main-text__show")?t.classList.replace("fpm__main-text__show","fpm__main-text__hide"):t.classList.add("fpm__main-text__hide"),setTimeout(()=>{e.classList.replace("fpm__main__start","fpm__main__end"),e.style.transform="scale(1)",t.innerText=this._btnTexts.end,t.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200)))}}class Yv{constructor(t,e,i){f(this,"container");f(this,"measureController");f(this,"mainElement");f(this,"_params");f(this,"_btnTexts",{start:"开始",end:"结束"});f(this,"onClick",()=>{var t;this.mainElement.mainTextDom.innerText===((t=this._params.startButtonText)!=null?t:"开始")?(this.measureController.hook.emit("willChangeState","watching","editing"),this.change2Done()):(this.measureController.hook.emit("willChangeState","editing","watching"),this.change2Add())});var s,o;this._params=i,this._btnTexts={start:(s=this._params.startButtonText)!=null?s:this._btnTexts.start,end:(o=this._params.endButtonText)!=null?o:this._btnTexts.end},this.measureController=t,this.container=e,this.mainElement=this.getMainElement(),this.mainElement.mainIcon.setAttribute("style","-webkit-tap-highlight-color: rgba(0,0,0,0);"),Object.assign(this.mainElement.mainIcon.style,mu),Object.assign(this.mainElement.mainItem.style,fu),this.change2Add(),this.mainElement.mainItem.addEventListener("click",this.onClick)}dispose(){this.mainElement.mainItem.removeEventListener("click",this.onClick)}getMainElement(){const t=this.container.querySelector(".fpm__main-text"),e=this.container.querySelector(".fpm__main"),i=this.container.querySelector(".fpm__main-icon");if(!e||!t||!i)throw new Error("cannot find dom");return{mainTextDom:t,mainItem:e,mainIcon:i}}change2Add(){const{mainIcon:t,mainTextDom:e}=this.mainElement;if(t.className.includes("fpm__main__start")){e.innerText=this._btnTexts.start;return}t.className.includes("fpm__main__end")&&(t.style.transform="scale(0.8)",e.className.includes("fpm__main-text__show")?e.classList.replace("fpm__main-text__show","fpm__main-text__hide"):e.classList.add("fpm__main-text__hide"),setTimeout(()=>{t.classList.replace("fpm__main__end","fpm__main__start"),t.style.transform="scale(1)",e.innerText=this._btnTexts.start,e.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200))}change2Done(){const{mainTextDom:t,mainIcon:e}=this.mainElement;t.innerText!==this._btnTexts.end&&(e.className.includes("fpm__main__end")||e.className.includes("fpm__main__start")&&(e.style.transform="scale(0.8)",t.className.includes("fpm__main-text__show")?t.classList.replace("fpm__main-text__show","fpm__main-text__hide"):t.classList.add("fpm__main-text__hide"),setTimeout(()=>{e.classList.replace("fpm__main__start","fpm__main__end"),e.style.transform="scale(1)",t.innerText=this._btnTexts.end,t.classList.replace("fpm__main-text__hide","fpm__main-text__show")},200)))}}class Uv{constructor(t,e){f(this,"container");f(this,"revokeIcon");f(this,"revokeItem");f(this,"measureController");f(this,"onClick",()=>{this.measureController.revoke()});f(this,"onModeChange",t=>{if(t!=="Edit"&&this.revokeItem.className.includes("enabled")){this.revokeItem.classList.remove("enabled"),this.measureController.hook.off("anchorChange",this.onAnchorChange);return}this.measureController.hook.on("anchorChange",this.onAnchorChange)});f(this,"onAnchorChange",t=>{t&&this.revokeItem.classList.add("enabled")});this.measureController=t,this.container=e;const i=this.container.querySelector(".fpm__revoke-icon"),s=this.container.querySelector(".fpm__revoke");if(!i||!s)throw new Error("不正确的选择器");this.revokeIcon=i,this.revokeItem=s,this.revokeItem.addEventListener("click",this.onClick),t.hook.on("modeChange",this.onModeChange)}dispose(){this.revokeItem.removeEventListener("click",this.onClick),this.measureController.hook.off("modeChange",this.onModeChange)}}function Xv(n){ue(n,"svelte-1v1ixi2",'.Switcher.svelte-1v1ixi2.svelte-1v1ixi2{position:relative;box-sizing:border-box;width:-moz-max-content;width:max-content}.Switcher.svelte-1v1ixi2 .content.svelte-1v1ixi2,.Switcher.svelte-1v1ixi2 .active-slider.svelte-1v1ixi2{transition-property:transform, width, opacity;transition-duration:300ms;transition-timing-function:ease-out}.Switcher-bg.svelte-1v1ixi2.svelte-1v1ixi2{content:"";position:absolute;box-sizing:border-box;top:50%;left:0;width:100%;height:3.75rem;transform:translateY(-50%);border-style:solid;border-width:0rem 1.875rem;-o-border-image:url("data:image/png;base64,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");border-image:url("data:image/png;base64,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");border-image-slice:0 90 fill}.Switcher-buttons.svelte-1v1ixi2.svelte-1v1ixi2{display:flex;align-items:center;box-sizing:border-box;padding:0 0.1875rem;height:100%}.Switcher-buttons.has-divider.svelte-1v1ixi2 .button.svelte-1v1ixi2:not(:last-child)::after{content:"";position:absolute;right:0;top:10%;height:80%;width:0.0625rem;background-image:linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.3), transparent);background-size:100%;background-repeat:no-repeat;background-position:center}.active-slider.svelte-1v1ixi2.svelte-1v1ixi2{box-sizing:border-box;position:absolute;height:3.25rem;top:50%;transform:translate(0, -50%);border-style:solid;border-width:0rem 1.875rem;-o-border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXQAAACcCAMAAABY3aA6AAAAhFBMVEX///////8AAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////88i7DIAAAALHRSTlNmawBvc3d6BAcZDid8NwyFja/XEhYkHTErIS41gpajnUyRVEE7XKpiRczDuH1q6FcAAA1mSURBVHja7Ndtk5owFAXg2KKtiiUdlTdBYH1Z//8vbC4SjkmuDlpmOht7AWfdLyaPZw4ovo06PzydcZX+Eh3QP99gXvsCRkbvsX91s/B29A41/rch9mOjq09twUl6TbNRM/d4aH9rmsWVfkDmx0XX4ORN1HGcZdlWzdLbod2pTcYx8St5Dc/7jIiOjGtw4lbSaZ4nSbJTs/J0aG9qi3meKn+i1/AM+/joWlyBk3eaJ7tj/RlEsiyr/fm3t3PeV2Upo+CzPu6SPFXyBM+4j4oO8k6cwI+nUFbdihopI49HyqbLVSXD05HgO3ejZsZDR5OrkHfiCnxWns9VKaNQzczzCa+vaiJZVudzOVPwnbuKO9RHRidyCnkrLqQCb6I73FNvhtsdyTcKXorWneIO9jHRf1zJ5/F2ma9O0X5fEriXzvfHgi/3++i0ypfbeA72EdF78jS5TKtW/J20efvWvZpekvRJdjH49rneEHld7CsZhhx44Pm48OQuq31RE/tmPfhJRgwzBzlC7mhPA2/hsTXYI+5gH/YgI4aWebZM6qhqil4c4P5ac/o0lntRVlGdLLOhHSMGxnyZH6Y9Od8n3z0fvm069qaaHvLlwLCLQTfQbbr7LEuD3NUOPD9c+1v2qCw/d+n2GvbX0RFzahbd5ZZ4z+190G/xLXfd7apjdNhfQof5PEtXk1K65AB3ZmJfX2bshbP47TDsspys0mwO9RfQ1YPiYh1v80PRFA656327dPui40uczsIxVurhDnYFdci38XqBh8cn0anOqVo+JMXcJg8c7W7V7sq/UNCZvOjDtmfYKezygyoGxf4celvnVC1N1Mdci2M099eSfWVu8cGu3fuwRw1VTFvsT6Kjzo+hLBBzM+Tv4+3g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");border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAXQAAACcCAMAAABY3aA6AAAAhFBMVEX///////8AAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////88i7DIAAAALHRSTlNmawBvc3d6BAcZDid8NwyFja/XEhYkHTErIS41gpajnUyRVEE7XKpiRczDuH1q6FcAAA1mSURBVHja7Ndtk5owFAXg2KKtiiUdlTdBYH1Z//8vbC4SjkmuDlpmOht7AWfdLyaPZw4ovo06PzydcZX+Eh3QP99gXvsCRkbvsX91s/B29A41/rch9mOjq09twUl6TbNRM/d4aH9rmsWVfkDmx0XX4ORN1HGcZdlWzdLbod2pTcYx8St5Dc/7jIiOjGtw4lbSaZ4nSbJTs/J0aG9qi3meKn+i1/AM+/joWlyBk3eaJ7tj/RlEsiyr/fm3t3PeV2Upo+CzPu6SPFXyBM+4j4oO8k6cwI+nUFbdihopI49HyqbLVSXD05HgO3ejZsZDR5OrkHfiCnxWns9VKaNQzczzCa+vaiJZVudzOVPwnbuKO9RHRidyCnkrLqQCb6I73FNvhtsdyTcKXorWneIO9jHRf1zJ5/F2ma9O0X5fEriXzvfHgi/3++i0ypfbeA72EdF78jS5TKtW/J20efvWvZpekvRJdjH49rneEHld7CsZhhx44Pm48OQuq31RE/tmPfhJRgwzBzlC7mhPA2/hsTXYI+5gH/YgI4aWebZM6qhqil4c4P5ac/o0lntRVlGdLLOhHSMGxnyZH6Y9Od8n3z0fvm069qaaHvLlwLCLQTfQbbr7LEuD3NUOPD9c+1v2qCw/d+n2GvbX0RFzahbd5ZZ4z+190G/xLXfd7apjdNhfQof5PEtXk1K65AB3ZmJfX2bshbP47TDsspys0mwO9RfQ1YPiYh1v80PRFA656327dPui40uczsIxVurhDnYFdci38XqBh8cn0anOqVo+JMXcJg8c7W7V7sq/UNCZvOjDtmfYKezygyoGxf4celvnVC1N1Mdci2M099eSfWVu8cGu3fuwRw1VTFvsT6Kjzo+hLBBzM+Tv4+3g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");border-image-slice:0 90 fill}.button.svelte-1v1ixi2.svelte-1v1ixi2{height:3.5rem;display:flex;position:relative;cursor:pointer;align-items:center;justify-content:center;pointer-events:all;width:7.25rem}.button.svelte-1v1ixi2 .content.svelte-1v1ixi2{position:absolute;display:flex;align-items:center;font-size:1rem;color:#fff;text-shadow:0 0.125rem 0.5rem rgba(0, 0, 0, 0.5);font-weight:bold}.button.svelte-1v1ixi2 .content .icon.svelte-1v1ixi2{display:inline-block;width:1.15625rem;height:1.15625rem;background-repeat:no-repeat;background-size:100%;margin-right:0.125rem}.button.svelte-1v1ixi2:not(.active) .content.svelte-1v1ixi2{opacity:0.65;transform:scale(0.875)}.button.svelte-1v1ixi2:not(.active) .content.svelte-1v1ixi2:hover{opacity:0.85}.button.active.svelte-1v1ixi2 .content.svelte-1v1ixi2{opacity:1;transform:scale(1)}')}function oc(n,t,e){const i=n.slice();return i[13]=t[e],i[14]=t,i[15]=e,i}function rc(n){let t;return{c(){t=D("div"),w(t,"class","active-slider svelte-1v1ixi2"),j(t,"width",n[6]+"px"),j(t,"transform",`translate(${n[7]}px, -50%)`)},m(e,i){O(e,t,i)},p(e,i){i&64&&j(t,"width",e[6]+"px"),i&128&&j(t,"transform",`translate(${e[7]}px, -50%)`)},d(e){e&&z(t)}}}function ac(n){let t;return{c(){t=D("span"),w(t,"class","icon svelte-1v1ixi2"),j(t,"background-image",`url(${n[13].icon})`)},m(e,i){O(e,t,i)},p(e,i){i&1&&j(t,"background-image",`url(${e[13].icon})`)},d(e){e&&z(t)}}}function lc(n){let t,e,i,s=n[13].value+"",o,r,a=n[15],l,c,d=n[13].icon&&ac(n);const h=()=>n[10](t,a),u=()=>n[10](null,a);function m(){return n[11](n[13],n[15])}return{c(){t=D("div"),e=D("div"),d&&d.c(),i=$(),o=xe(s),r=$(),w(e,"class","content svelte-1v1ixi2"),w(t,"class","button svelte-1v1ixi2"),K(t,"active",n[4]===n[15])},m(A,p){O(A,t,p),x(t,e),d&&d.m(e,null),x(e,i),x(e,o),x(t,r),h(),l||(c=be(t,"click",m),l=!0)},p(A,p){n=A,n[13].icon?d?d.p(n,p):(d=ac(n),d.c(),d.m(e,i)):d&&(d.d(1),d=null),p&1&&s!==(s=n[13].value+"")&&Se(o,s),a!==n[15]&&(u(),a=n[15],h()),p&16&&K(t,"active",n[4]===n[15])},d(A){A&&z(t),d&&d.d(),u(),l=!1,c()}}}function Zv(n){let t,e,i,s,o,r=n[5]&&rc(n),a=Pe(n[0]),l=[];for(let c=0;c<a.length;c+=1)l[c]=lc(oc(n,a,c));return{c(){t=D("div"),e=D("div"),i=$(),r&&r.c(),s=$(),o=D("div");for(let c=0;c<l.length;c+=1)l[c].c();w(e,"class","Switcher-bg svelte-1v1ixi2"),w(o,"class","Switcher-buttons svelte-1v1ixi2"),K(o,"has-divider",!n[5]),w(t,"class","Switcher svelte-1v1ixi2")},m(c,d){O(c,t,d),x(t,e),x(t,i),r&&r.m(t,null),x(t,s),x(t,o);for(let h=0;h<l.length;h+=1)l[h]&&l[h].m(o,null);n[12](t)},p(c,[d]){if(c[5]?r?r.p(c,d):(r=rc(c),r.c(),r.m(t,s)):r&&(r.d(1),r=null),d&23){a=Pe(c[0]);let h;for(h=0;h<a.length;h+=1){const u=oc(c,a,h);l[h]?l[h].p(u,d):(l[h]=lc(u),l[h].c(),l[h].m(o,null))}for(;h<l.length;h+=1)l[h].d(1);l.length=a.length}d&32&&K(o,"has-divider",!c[5])},i:q,o:q,d(c){c&&z(t),r&&r.d(),jt(l,c),n[12](null)}}}function Jv(n,t,e){let i;const o=g=>{e(4,d=g)};let{options:r}=t,{onChange:a}=t;const l=[];let c,d=null,h,u;function m(g,v){Ge[g?"unshift":"push"](()=>{l[v]=g,e(2,l)})}const A=(g,v)=>{a(g.key),e(4,d=v)};function p(g){Ge[g?"unshift":"push"](()=>{c=g,e(3,c)})}return n.$$set=g=>{"options"in g&&e(0,r=g.options),"onChange"in g&&e(1,a=g.onChange)},n.$$.update=()=>{n.$$.dirty&20&&e(5,i=l[d]),n.$$.dirty&40&&i&&c&&setTimeout(()=>{e(6,h=i.clientWidth),e(7,u=i.getBoundingClientRect().left-c.getBoundingClientRect().left)},0)},[r,a,l,c,d,i,h,u,null,o,m,A,p]}class qv extends le{constructor(t){super(),ae(this,t,Jv,Zv,oe,{defaultIndex:8,setIndex:9,options:0,onChange:1},Xv)}get defaultIndex(){return this.$$.ctx[8]}get setIndex(){return this.$$.ctx[9]}}function Kv(n){ue(n,"svelte-1m0stw",".exit.svelte-1m0stw{position:relative;pointer-events:all;cursor:pointer;left:1.5rem;top:1.5rem;width:1.5rem;height:1.5rem;background-image:url(data:image/png;base64,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);background-repeat:no-repeat;background-size:100% 100%}")}function $v(n){let t,e,i;return{c(){t=D("div"),w(t,"class","exit svelte-1m0stw")},m(s,o){O(s,t,o),e||(i=be(t,"click",function(){si(n[0])&&n[0].apply(this,arguments)}),e=!0)},p(s,[o]){n=s},i:q,o:q,d(s){s&&z(t),e=!1,i()}}}function e0(n,t,e){let{onClick:i=null}=t;return n.$$set=s=>{"onClick"in s&&e(0,i=s.onClick)},[i]}class gu extends le{constructor(t){super(),ae(this,t,e0,$v,oe,{onClick:0},Kv)}}const pu="data:image/png;base64,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",Au="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAASKADAAQAAAABAAAASAAAAACQMUbvAAAFO0lEQVR4Ae2YWYgdRRSG78SFOG6Ju4MxIRnRgCCKBlSC24P64IO4h7wI6oMPCioqAX1TfFIQRFFBETQmIioqGhDBh3GJiMSAZnABNSIuUQTFbcz4fZcup297b9+t7525wznwU11d1aervj6nurprtbAgEASCQBAIAkEgCASBIBAEgkAQCAJBIAgEgSAQBIJAEMgIzM7OLkHL0STaJ8DMgRkDyDK0CX2MptEUOrMbSGPddB6VvkAwUo5Hd6OzCuP+hfr5Y2NjvxbON60uaXp2hE8CZ3+GfzJ6ABXhOLND0VoPOrF9O+k0Kn2AM85Y16M70UTJuL8taWtoWjSAgHMYM7sQ3YyWN8yysbKZ9NrdeKp1bVGsQcBxvbkUXYsOaD3d2jbabgXQ3yV9GppGPoKA43pyDboclb3G36T9rm7g0L82soAAY/S7CG9E56GybHiLduH4BuvKRhIQcIyUi5BwTmsz47dpvwftadOvafPIAQLOUmZiSl2JVjed1dzJ7Rzei74iembnTnd+NFKAgHMIU7seXYKObTPN92kXzue9wtH/yAACjkBuQecgN3tltoNGN4rTwNlb1rFd20gAAs4JTOR2dAYqe407351IOB/2C0dnlQBiAm7vZ6oYkIPKG77XUd+E1iDvU2bTND6I3qtqLH0BYvDuWP3uORHNUHeAOxlcRx+C9C01/F1MhzvQUahsj6OfT9HDaKoqODot2zvY3tIYvOuAi+W5SD++Xf5BU+h1BvklZc+G/+u4+AbkwtxunF/QRzivcl/HUJn1E0GTjMKNmtGin7+QKeD30AQTfI1ye7dPk+uMFFPqMtRuvaFLzQfxOKocjs57ApRNwrfKDPKJ+YSV9Z/RKcj2lfR9BUi/cdzW6GsU3o98U3Uytq/p9wR6serIwWfdevoflA3mh8yHGzBfpYJK5U8cuz5dhW5k4isoS40+ptJDaD3qBM439HsKbR0UHHzXegLkhdhnaBcyrfJwhKSMGtPuAnQbAM6mbGq0HU3DI+h01Akc/+c8owYJB/9tFz/7NDUmZUqtRFegVehP5OSU64jlfpkOp/wRbUNbmNQflHXDzyoO7kMnIX16rWr18L6nbTN6FD+m9EDNAfVsGaRJHAjpOGTEJDgJViqX0WakvYu2ot3oVHQT0odRJxT7C1Y/RUtwHgNOx/90ik66qfcFyBvlIG2gOoGMjgTFMg/sQOoHo++QQFynjC7BJjjpWq/LQ3LNM62GBod79Z5iXpwsg7SWul/YQiqmW4qINPmD6OM5zUU+QbQs9vUhzgsc7tsyz23r2Ah3J/kJegE5mXFkOjVbvNMC7v7JaHMd8ZzST/4a6/MGh3vXU8GybxMS9hGOfOJG0jFIAGnylk7edpXOm1qpzWPb7Ge0mYrPoaGmFff7zxxEZZZB2oFD00RIRyAhJSh5MHkoAhFOeit5vQvyFvTksBZk7vU/qxSQ3jNIH2R3cqPoh+bvKEVMiqJ8tKSo8TLXIdPqWfT0fMLh/tWlmM6SMam9pFsRkgt3ihRhGS3FiHLT6X7JfY475KG8yrlXS6s8gtKdCpCu5ryR5Os8H0H5NDNyhGNaPc/1Kd2ozp8NDJBTKkDawKkjkZFkeuVBOY49yMh5eaHAYSyDSTEdJytAcuF2n2TqmF5pD5Tg+B9pQUQOY6ubgxyKsSYZNf4GEdJqJJylyA/Pl9AbCw0OY6o/RcuhGJB8IMJZh1Ygf4u8g3YBx5QLk4DRhMaRC3NYEAgCQSAIBIEgEASCQBAIAkEgCASBIBAEgkAQCAJBYJEQ+BdpRqKi3IjqNwAAAABJRU5ErkJggg==",cc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAABi0lEQVRoBe2Yu20DMRBEdW7EuVLX4NQVuAEVoUhFuAFV4FQ1OHWuRkzNABRwMLhDfbhcBhyA0IEjnvYNjjxoN5upmcBMYCYQmcCifjyl9AL/E+Md4xXjjHHCOC7L8ofPcJkAufgvVPhWqPIHc7sRIJiwJSZfKp7f5zz9cCkAPjZKNV+tbeYpAD7zSjVfrW3mKQBuWKWar9Y28xQATxsl7PNkHgJqYUtPARzxQzxtLG1h7KMhZIL5KP3/HkgonMVf9Y2LA45UzneXBChVkxPfw/tY+WEQdwOw6JEgHgIYCeJhgFEgngIYAeJpgGiIJgCREM0AoiCaAkRANAfoDeEC0BPCDaAXhCtADwh3AG+ILgCeEN0AvCC6AnhAdAdoDRECICB+4bEmtmzOGNU2ZhgAirP+2dFaS7YxVVdifROX69wIOODmTN6SbGOGArDiDFF7Esw2ZjhAjr3WpjT9UQC4YZVMfxSAWhvT9EcBUG1MnkL0i6ptnuIij0mjjVl9D3jUMu85E5gJzARuT+ACS7KuMQ7rOEcAAAAASUVORK5CYII=",dc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAMKADAAQAAAABAAAAMAAAAADbN2wMAAAByElEQVRoBe1ZMU4DMRC8Q7yCJjVNKCh4ARVfAPo0PCYNPeQLVLyAggIa6jQ8g2NGsiJjeUfHrdGd0K60Sm7t3R3P+hx503UhwUAwEAzMyUCvkg/DcITxa+gldAXdQ5+hu77vv/DZTKbmMheQAt4D4XkF5Stsm1aL8OQiw5aQ+Rp4zqed461kci5VgUegO22F0BnnA9W+qcVQFeCeX4qYWNQC+MIuRUwsxwIhTxu1hV4w/ib8fzN0hskXwoFYqqIqsIMHT5uafML4XhuYaGMsxqwJMRBLVcyXmLOzs/ku8ybzTDhkthZfiWUNzSuxxbP8zVEV6HjOQx8KdNw2rcEzBWP+2JLMTQwctEQuwHJakj0WMHc1ogJRAScDsYWcBLrdowJuCp0BogJOAt3uUQE3hc4AUQEngW73/10BXimhtwVNvIDLq2gxf+wjYzL2QZg7XWsPtvKLCSQ5Wq1FXsCfoK2ulsRxBT2BliLbmGoLqXYfE/EC3koYqwae8WUbU1UgWoutyoM4KyuW2kJ7y2kGu4nF01rcVnpGk9aWTrq8eVbGad5alO2+MvuIZ9XGlLnMl5hJ01HK02ixfzGNICemBAPBQDDwhwx8A43PdoQvgLfYAAAAAElFTkSuQmCC";function t0(n){ue(n,"svelte-468fdd",'*.forbid.svelte-468fdd.svelte-468fdd{pointer-events:none !important;opacity:0.5}.Measure-Controller.svelte-468fdd.svelte-468fdd{pointer-events:none;position:relative;width:100%;height:100%;z-index:2}.Measure-Controller.svelte-468fdd .mode-switcher.svelte-468fdd{margin-top:2.25rem}.Measure-Controller.svelte-468fdd .bottom.svelte-468fdd{position:absolute;width:100%;bottom:0}.Measure-Controller.svelte-468fdd .bottom .mask.svelte-468fdd{position:absolute;bottom:0;width:100%;height:11.5rem;background-size:100%;background-image:linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.3))}.Measure-Controller.svelte-468fdd .bottom .center.svelte-468fdd{display:flex;flex-direction:column;align-items:center;margin-bottom:2.5rem}.Measure-Controller.svelte-468fdd .buttons.svelte-468fdd{pointer-events:all;display:flex;align-items:center;height:2.5rem;background:rgba(0, 0, 0, 0.2);color:rgba(255, 255, 255, 0.85);width:-moz-max-content;width:max-content;border-radius:624.9375rem;overflow:hidden}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd{cursor:pointer;display:flex;align-items:center;position:relative;font-size:0.875rem;padding:0rem 1rem}.Measure-Controller.svelte-468fdd .buttons .button .icon.svelte-468fdd{width:1.5rem;height:1.5rem;background-repeat:no-repeat;background-size:100%;margin-right:0.25rem}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd::after{content:"";position:absolute;display:block;right:-0.03125rem;height:1.5rem;width:0.0625rem;background-image:linear-gradient(to bottom, transparent, rgba(255, 255, 255, 0.3), transparent);background-size:100%;background-repeat:no-repeat;background-position:center}.Measure-Controller.svelte-468fdd .buttons .button.svelte-468fdd:last-child::after{display:none}')}function hc(n){let t,e;return t=new gu({props:{onClick:n[0].disable}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.onClick=i[0].disable),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function uc(n){let t,e,i,s,o=n[2]("撤销")+"",r,a,l,c,d,h=n[2]("结束")+"",u,m,A;return{c(){t=D("div"),e=D("div"),i=D("div"),s=$(),r=xe(o),a=$(),l=D("div"),c=D("div"),d=$(),u=xe(h),w(i,"class","icon svelte-468fdd"),j(i,"background-image",`url(${pu})`),w(e,"class","button svelte-468fdd"),K(e,"forbid",!n[3]),w(c,"class","icon svelte-468fdd"),j(c,"background-image",`url(${Au})`),w(l,"class","button svelte-468fdd"),w(t,"class","buttons svelte-468fdd")},m(p,g){O(p,t,g),x(t,e),x(e,i),x(e,s),x(e,r),x(t,a),x(t,l),x(l,c),x(l,d),x(l,u),m||(A=[be(e,"click",n[7]),be(l,"click",n[6])],m=!0)},p(p,g){g&4&&o!==(o=p[2]("撤销")+"")&&Se(r,o),g&8&&K(e,"forbid",!p[3]),g&4&&h!==(h=p[2]("结束")+"")&&Se(u,h)},d(p){p&&z(t),m=!1,qe(A)}}}function i0(n){let t,e,i,s,o,r,a,l,c,d,h,u=n[1]&&hc(n),m=n[5]&&uc(n);function A(g){n[9](g)}let p={options:[{key:"line",value:n[2]("测距离"),icon:cc},{key:"area",value:n[2]("测面积"),icon:dc}],onChange:n[8]};return n[4]!==void 0&&(p.setIndex=n[4]),c=new qv({props:p}),Ge.push(()=>ka(c,"setIndex",A)),{c(){t=D("div"),u&&u.c(),e=$(),i=D("div"),s=D("div"),o=$(),r=D("div"),m&&m.c(),a=$(),l=D("div"),ne(c.$$.fragment),w(s,"class","mask svelte-468fdd"),w(l,"class","mode-switcher svelte-468fdd"),w(r,"class","center svelte-468fdd"),w(i,"class","bottom svelte-468fdd"),w(t,"class","Measure-Controller svelte-468fdd")},m(g,v){O(g,t,v),u&&u.m(t,null),x(t,e),x(t,i),x(i,s),x(i,o),x(i,r),m&&m.m(r,null),x(r,a),x(r,l),te(c,l,null),h=!0},p(g,[v]){g[1]?u?(u.p(g,v),v&2&&k(u,1)):(u=hc(g),u.c(),k(u,1),u.m(t,e)):u&&(de(),T(u,1,1,()=>{u=null}),he()),g[5]?m?m.p(g,v):(m=uc(g),m.c(),m.m(r,a)):m&&(m.d(1),m=null);const y={};v&4&&(y.options=[{key:"line",value:g[2]("测距离"),icon:cc},{key:"area",value:g[2]("测面积"),icon:dc}]),v&1&&(y.onChange=g[8]),!d&&v&16&&(d=!0,y.setIndex=g[4],Ca(()=>d=!1)),c.$set(y)},i(g){h||(k(u),k(c.$$.fragment,g),h=!0)},o(g){T(u),T(c.$$.fragment,g),h=!1},d(g){g&&z(t),u&&u.d(),m&&m.d(),ie(c)}}}function n0(n,t,e){let{measureController:i}=t,{showExit:s=!1}=t,{i18n:o=g=>g}=t,r=!1,a;function l(g){g==="Edit"?e(5,u=!0):(a(null),e(5,u=!1))}function c(){i.controller instanceof di&&i.controller.complete(),i.save({mode:"Watch"})}function d(g){e(3,r=g.length>0)}function h(){e(3,r=!1)}bt(()=>{i.hook.on("modeChange",l),i.hook.on("complete",h),i.hook.on("pointsChange",d)}),zt(()=>{i.hook.off("modeChange",l),i.hook.off("complete",h),i.hook.off("pointsChange",d)});let u=!1;const m=()=>i.revoke(),A=g=>{i.save().changeMode("Edit"),i.changeMeasureType(g)};function p(g){a=g,e(4,a)}return n.$$set=g=>{"measureController"in g&&e(0,i=g.measureController),"showExit"in g&&e(1,s=g.showExit),"i18n"in g&&e(2,o=g.i18n)},[i,s,o,r,a,u,c,m,A,p]}class s0 extends le{constructor(t){super(),ae(this,t,n0,i0,oe,{measureController:0,showExit:1,i18n:2},t0)}}function o0(n){ue(n,"svelte-1mfj5mk",'.Switcher.svelte-1mfj5mk.svelte-1mfj5mk{pointer-events:all;position:relative;margin-bottom:1.5rem;box-sizing:border-box;width:-moz-max-content;width:max-content}.Switcher.svelte-1mfj5mk .svelte-1mfj5mk{transition-duration:300ms;transition-timing-function:ease-out}.Switcher.svelte-1mfj5mk .content.svelte-1mfj5mk{transition-property:opacity}.Switcher.svelte-1mfj5mk .highlight.svelte-1mfj5mk{transition-property:width}.Switcher.svelte-1mfj5mk .Switcher-buttons.svelte-1mfj5mk{transition-property:transform}.Switcher.svelte-1mfj5mk .Switcher-buttons.svelte-1mfj5mk{position:absolute;top:50%;left:0;transform:translate(0, -50%);width:-moz-max-content;width:max-content}.Switcher.svelte-1mfj5mk .Switcher-buttons .button.svelte-1mfj5mk{display:inline-block;margin:0 0.5625rem}.Switcher.svelte-1mfj5mk .highlight.svelte-1mfj5mk{height:2rem;background:rgba(0, 0, 0, 0.3);border-radius:624.9375rem}.Switcher.svelte-1mfj5mk .content.svelte-1mfj5mk{position:relative;padding:0 0.75rem}.Switcher.svelte-1mfj5mk .button:not(.active) .content.svelte-1mfj5mk::before{content:"";position:absolute;top:50%;left:10%;width:80%;transform:translateY(-50%);height:0;box-shadow:0 0 0.9375rem 0.3125rem rgba(0, 0, 0, 0.3)}')}function fc(n,t,e){const i=n.slice();return i[13]=t[e],i[14]=t,i[15]=e,i}function mc(n){let t;return{c(){t=D("span"),w(t,"class","icon svelte-1mfj5mk"),j(t,"background-image",n[13].icon)},m(e,i){O(e,t,i)},p(e,i){i&1&&j(t,"background-image",e[13].icon)},d(e){e&&z(t)}}}function gc(n){let t,e,i,s=n[13].value+"",o,r,a=n[15],l,c,d=n[13].icon&&mc(n);const h=()=>n[9](t,a),u=()=>n[9](null,a);function m(){return n[10](n[13],n[15])}return{c(){t=D("div"),e=D("div"),d&&d.c(),i=$(),o=xe(s),r=$(),w(e,"class","content svelte-1mfj5mk"),w(t,"class","button svelte-1mfj5mk"),K(t,"active",n[4]===n[15])},m(A,p){O(A,t,p),x(t,e),d&&d.m(e,null),x(e,i),x(e,o),x(t,r),h(),l||(c=be(t,"click",m),l=!0)},p(A,p){n=A,n[13].icon?d?d.p(n,p):(d=mc(n),d.c(),d.m(e,i)):d&&(d.d(1),d=null),p&1&&s!==(s=n[13].value+"")&&Se(o,s),a!==n[15]&&(u(),a=n[15],h()),p&16&&K(t,"active",n[4]===n[15])},d(A){A&&z(t),d&&d.d(),u(),l=!1,c()}}}function r0(n){let t,e,i,s,o=Pe(n[0]),r=[];for(let a=0;a<o.length;a+=1)r[a]=gc(fc(n,o,a));return{c(){t=D("div"),e=D("div"),i=$(),s=D("div");for(let a=0;a<r.length;a+=1)r[a].c();w(e,"class","highlight svelte-1mfj5mk"),j(e,"width",n[5]?`${n[5]}px`:void 0),w(s,"class","Switcher-buttons svelte-1mfj5mk"),j(s,"transform",`translate(${n[6]}px, -50%)`),w(t,"class","Switcher svelte-1mfj5mk")},m(a,l){O(a,t,l),x(t,e),x(t,i),x(t,s);for(let c=0;c<r.length;c+=1)r[c]&&r[c].m(s,null);n[11](t)},p(a,[l]){if(l&32&&j(e,"width",a[5]?`${a[5]}px`:void 0),l&23){o=Pe(a[0]);let c;for(c=0;c<o.length;c+=1){const d=fc(a,o,c);r[c]?r[c].p(d,l):(r[c]=gc(d),r[c].c(),r[c].m(s,null))}for(;c<r.length;c+=1)r[c].d(1);r.length=o.length}l&64&&j(s,"transform",`translate(${a[6]}px, -50%)`)},i:q,o:q,d(a){a&&z(t),jt(r,a),n[11](null)}}}function a0(n,t,e){let i,s,{options:o}=t,{defaultKey:r=null}=t,{onChange:a}=t;const l=[];let c,d,h=0;function u(){if(s&&c){e(5,d=s.clientWidth);const g=h+c.getBoundingClientRect().left-s.getBoundingClientRect().left;e(6,h=g)}}function m(g,v){Ge[g?"unshift":"push"](()=>{l[v]=g,e(2,l)})}const A=(g,v)=>{a(g.key),e(4,i=v)};function p(g){Ge[g?"unshift":"push"](()=>{c=g,e(3,c)})}return n.$$set=g=>{"options"in g&&e(0,o=g.options),"defaultKey"in g&&e(7,r=g.defaultKey),"onChange"in g&&e(1,a=g.onChange)},n.$$.update=()=>{n.$$.dirty&129&&e(4,i=r?o.findIndex(g=>g.key===r):0),n.$$.dirty&20&&e(8,s=l[i]),n.$$.dirty&264&&s&&c&&setTimeout(()=>u(),0)},[o,a,l,c,i,d,h,r,s,m,A,p]}class l0 extends le{constructor(t){super(),ae(this,t,a0,r0,oe,{options:0,defaultKey:7,onChange:1},o0)}}function c0(n){ue(n,"svelte-82ysdl",".CircleButton.svelte-82ysdl.svelte-82ysdl{position:relative;display:flex;justify-content:center;align-items:center;width:4.5rem;height:4.5rem;background-image:inherit;background-size:100% auto;background-repeat:no-repeat;transition:transform 200ms ease-in-out}.CircleButton.svelte-82ysdl.svelte-82ysdl:active{transform:scale(0.8)}.CircleButton.svelte-82ysdl .text.svelte-82ysdl{position:absolute}")}function pc(n){let t,e,i,s;return{c(){t=D("div"),e=xe(n[0]),w(t,"class","text svelte-82ysdl")},m(o,r){O(o,t,r),x(t,e),s=!0},p(o,r){(!s||r&1)&&Se(e,o[0])},i(o){s||(o&&He(()=>{s&&(i||(i=Ft(t,it,{duration:300},!0)),i.run(1))}),s=!0)},o(o){o&&(i||(i=Ft(t,it,{duration:300},!1)),i.run(0)),s=!1},d(o){o&&z(t),o&&i&&i.end()}}}function d0(n){let t,e=n[0],i,s,o=pc(n);return{c(){t=D("div"),o.c(),w(t,"class","CircleButton svelte-82ysdl"),j(t,"background-image",`url(${n[2]})`)},m(r,a){O(r,t,a),o.m(t,null),i||(s=be(t,"click",function(){si(n[1])&&n[1].apply(this,arguments)}),i=!0)},p(r,[a]){n=r,a&1&&oe(e,e=n[0])?(de(),T(o,1,1,q),he(),o=pc(n),o.c(),k(o,1),o.m(t,null)):o.p(n,a),a&4&&j(t,"background-image",`url(${n[2]})`)},i(r){k(o)},o(r){T(o)},d(r){r&&z(t),o.d(r),i=!1,s()}}}function h0(n,t,e){let i,{text:s}=t,{onClick:o=null}=t,{color:r="white"}=t;return n.$$set=a=>{"text"in a&&e(0,s=a.text),"onClick"in a&&e(1,o=a.onClick),"color"in a&&e(3,r=a.color)},n.$$.update=()=>{n.$$.dirty&8&&e(2,i=(()=>r==="white"?ho:r==="blue"?Qa:ho)())},[s,o,i,r]}class u0 extends le{constructor(t){super(),ae(this,t,h0,d0,oe,{text:0,onClick:1,color:3},c0)}}function f0(n){ue(n,"svelte-ldjbp8","*.forbid.svelte-ldjbp8.svelte-ldjbp8{pointer-events:none !important;opacity:0.5}.Measure-Controller.svelte-ldjbp8.svelte-ldjbp8{pointer-events:none;position:relative;width:100%;height:100%;z-index:2;color:white}.Measure-Controller.svelte-ldjbp8 .mode-switcher.svelte-ldjbp8{margin-top:2.25rem}.Measure-Controller.svelte-ldjbp8 .bottom.svelte-ldjbp8{position:absolute;width:100%;bottom:0}.Measure-Controller.svelte-ldjbp8 .bottom .mask.svelte-ldjbp8{position:absolute;bottom:0;width:100%;height:12.5rem;background-size:100%;z-index:-1;background-image:linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.5))}.Measure-Controller.svelte-ldjbp8 .bottom .center.svelte-ldjbp8{display:flex;flex-direction:column;align-items:center;margin-bottom:2.5rem}.Measure-Controller.svelte-ldjbp8 .controller.svelte-ldjbp8{pointer-events:all;display:flex;align-items:center}.Measure-Controller.svelte-ldjbp8 .controller .button.svelte-ldjbp8{cursor:pointer;display:flex;align-items:center;height:2.5rem;padding-left:1rem;padding-right:1rem;border-radius:624.9375rem;font-size:0.875rem;color:#fff;background-color:rgba(0, 0, 0, 0.2)}.Measure-Controller.svelte-ldjbp8 .controller .button .icon.svelte-ldjbp8{width:1.5rem;height:1.5rem;background-repeat:no-repeat;background-size:100%;margin:0 0.25rem}.Measure-Controller.svelte-ldjbp8 .controller .main-button.svelte-ldjbp8{margin-left:1.75rem;margin-right:1.75rem;font-size:0.875rem;font-weight:bold}")}function Ac(n){let t,e;return t=new gu({props:{onClick:n[0].disable}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.onClick=i[0].disable),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function vc(n){let t,e,i,s;return e=new l0({props:{options:[{key:"line",value:n[2]("测距离")},{key:"area",value:n[2]("测面积")}],defaultKey:n[0].currentMeasureType,onChange:n[0].changeMeasureType}}),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","mode-switcher svelte-ldjbp8")},m(o,r){O(o,t,r),te(e,t,null),s=!0},p(o,r){n=o;const a={};r&4&&(a.options=[{key:"line",value:n[2]("测距离")},{key:"area",value:n[2]("测面积")}]),r&1&&(a.defaultKey=n[0].currentMeasureType),r&1&&(a.onChange=n[0].changeMeasureType),e.$set(a)},i(o){s||(k(e.$$.fragment,o),o&&He(()=>{s&&(i||(i=Ft(t,it,{duration:bn},!0)),i.run(1))}),s=!0)},o(o){T(e.$$.fragment,o),o&&(i||(i=Ft(t,it,{duration:bn},!1)),i.run(0)),s=!1},d(o){o&&z(t),ie(e),o&&i&&i.end()}}}function bc(n){let t,e,i,s=n[2]("撤销")+"",o,r,a,l,c;return{c(){t=D("div"),e=D("div"),i=$(),o=xe(s),w(e,"class","icon svelte-ldjbp8"),j(e,"background-image",`url(${pu})`),w(t,"class","button svelte-ldjbp8"),K(t,"forbid",n[3]==="start")},m(d,h){O(d,t,h),x(t,e),x(t,i),x(t,o),a=!0,l||(c=be(t,"click",n[13]),l=!0)},p(d,h){n=d,(!a||h&4)&&s!==(s=n[2]("撤销")+"")&&Se(o,s),(!a||h&8)&&K(t,"forbid",n[3]==="start")},i(d){a||(d&&He(()=>{a&&(r||(r=Ft(t,it,{duration:bn},!0)),r.run(1))}),a=!0)},o(d){d&&(r||(r=Ft(t,it,{duration:bn},!1)),r.run(0)),a=!1},d(d){d&&z(t),d&&r&&r.end(),l=!1,c()}}}function yc(n){let t,e,i,s=n[2]("结束")+"",o,r,a,l,c;return{c(){t=D("div"),e=D("div"),i=$(),o=xe(s),w(e,"class","icon svelte-ldjbp8"),j(e,"background-image",`url(${Au})`),w(t,"class","button svelte-ldjbp8")},m(d,h){O(d,t,h),x(t,e),x(t,i),x(t,o),a=!0,l||(c=be(t,"click",n[10]),l=!0)},p(d,h){n=d,(!a||h&4)&&s!==(s=n[2]("结束")+"")&&Se(o,s)},i(d){a||(d&&He(()=>{a&&(r||(r=Ft(t,it,{duration:bn},!0)),r.run(1))}),a=!0)},o(d){d&&(r||(r=Ft(t,it,{duration:bn},!1)),r.run(0)),a=!1},d(d){d&&z(t),d&&r&&r.end(),l=!1,c()}}}function m0(n){let t,e,i,s,o,r,a,l,c,d,h,u,m,A=n[1]&&Ac(n),p=n[0].allowMeasureType.length>=2&&n[3]==="start"&&vc(n),g=n[4]&&bc(n);h=new u0({props:{onClick:n[14],text:n[6][n[3]],color:n[7][n[3]]}});let v=n[4]&&yc(n);return{c(){t=D("div"),A&&A.c(),e=$(),i=D("div"),s=D("div"),o=$(),r=D("div"),p&&p.c(),a=$(),l=D("div"),g&&g.c(),c=$(),d=D("div"),ne(h.$$.fragment),u=$(),v&&v.c(),w(s,"class","mask svelte-ldjbp8"),w(d,"class","main-button svelte-ldjbp8"),K(d,"forbid",!n[5]),w(l,"class","controller svelte-ldjbp8"),w(r,"class","center svelte-ldjbp8"),w(i,"class","bottom svelte-ldjbp8"),w(t,"class","Measure-Controller svelte-ldjbp8")},m(y,I){O(y,t,I),A&&A.m(t,null),x(t,e),x(t,i),x(i,s),x(i,o),x(i,r),p&&p.m(r,null),x(r,a),x(r,l),g&&g.m(l,null),x(l,c),x(l,d),te(h,d,null),x(l,u),v&&v.m(l,null),m=!0},p(y,[I]){y[1]?A?(A.p(y,I),I&2&&k(A,1)):(A=Ac(y),A.c(),k(A,1),A.m(t,e)):A&&(de(),T(A,1,1,()=>{A=null}),he()),y[0].allowMeasureType.length>=2&&y[3]==="start"?p?(p.p(y,I),I&9&&k(p,1)):(p=vc(y),p.c(),k(p,1),p.m(r,a)):p&&(de(),T(p,1,1,()=>{p=null}),he()),y[4]?g?(g.p(y,I),I&16&&k(g,1)):(g=bc(y),g.c(),k(g,1),g.m(l,c)):g&&(de(),T(g,1,1,()=>{g=null}),he());const M={};I&8&&(M.onClick=y[14]),I&8&&(M.text=y[6][y[3]]),I&8&&(M.color=y[7][y[3]]),h.$set(M),(!m||I&32)&&K(d,"forbid",!y[5]),y[4]?v?(v.p(y,I),I&16&&k(v,1)):(v=yc(y),v.c(),k(v,1),v.m(l,null)):v&&(de(),T(v,1,1,()=>{v=null}),he())},i(y){m||(k(A),k(p),k(g),k(h.$$.fragment,y),k(v),m=!0)},o(y){T(A),T(p),T(g),T(h.$$.fragment,y),T(v),m=!1},d(y){y&&z(t),A&&A.d(),p&&p.d(),g&&g.d(),ie(h),v&&v.d()}}}const bn=100;function g0(n,t,e){let{measureController:i}=t,{showExit:s=!1}=t,{i18n:o=Y=>Y}=t;const r={start:o("开始"),add:o("添加"),end:o("结束"),complete:o("完成")},a={start:"white",add:"white",end:"blue",complete:"blue"};let l=!1,c=!0,d="start",h=i.currentMeasureType;const u=()=>{i.getCurrentMode()!=="Edit"?i.changeMode("Edit"):(p("add"),m())},m=()=>{i.controller instanceof di&&i.controller.selectPoint()},A=()=>{i.controller instanceof di&&i.controller.complete()},p=Y=>{e(3,d=Y)},g=()=>{m(),B("allow")},v=()=>{p("complete")},y=()=>{i.currentMeasureType==="area"&&d==="complete"&&p("add")},I=Y=>{Y.length},M=()=>{p("start"),B("allow")},B=Y=>{e(5,c=Y==="allow")},P=Y=>{e(12,h=Y)},V=Y=>{Y.isEmpty&&p("start")};bt(()=>{i.hook.on("revoke",V),i.hook.on("measureTypeChange",P),i.hook.on("modeChange",M),i.hook.on("pointsChange",I),i.hook.on("allowAddPointStateChange",B),i.hook.on("readyComplete",v),i.hook.on("notReadyComplete",y),i.hook.on("complete",M)}),zt(()=>{i.hook.off("measureTypeChange",P),i.hook.off("modeChange",M),i.hook.off("allowAddPointStateChange",B),i.hook.off("readyComplete",v),i.hook.off("pointsChange",I),i.hook.off("notReadyComplete",y),i.hook.off("complete",M)});const L=()=>i.revoke(),X=()=>{d==="start"?u():d==="add"?m():(d==="end"||d==="complete")&&g()};return n.$$set=Y=>{"measureController"in Y&&e(0,i=Y.measureController),"showExit"in Y&&e(1,s=Y.showExit),"i18n"in Y&&e(2,o=Y.i18n)},n.$$.update=()=>{n.$$.dirty&4104&&e(4,l=h==="area"&&d!=="start")},[i,s,o,d,l,c,r,a,u,m,A,g,h,L,X]}class p0 extends le{constructor(t){super(),ae(this,t,g0,m0,oe,{measureController:0,showExit:1,i18n:2},f0)}}class A0{constructor(t,e){f(this,"revoke");f(this,"container");f(this,"mainController");f(this,"disposers",[]);f(this,"measureController");f(this,"mode");f(this,"svelteDom");f(this,"_params");f(this,"handleExit",()=>{const t=this.container.querySelector(".fpm__exit-icon"),e=this.container.querySelector(".fpm__exit");if(!e||!t)throw new Error("cannot find dom");this.mode==="pc"&&(Object.assign(e.style,Hv),Object.assign(t==null?void 0:t.style,_v));const i=()=>{e.style.opacity="1"},s=()=>{e.style.opacity="0.85"},o=()=>{this.measureController.disable()};return e.addEventListener("click",o),e.addEventListener("mouseenter",i),e.addEventListener("mouseleave",s),()=>{e.removeEventListener("click",o),e.removeEventListener("mouseenter",i),e.removeEventListener("mouseleave",s)}});var s,o;this._params=e,this.measureController=t,this.mode=(s=e.mode)!=null?s:"pc",this.container=document.createElement("div"),this.container.innerHTML=this.mode==="mobile"?Ov:Rv,this.container.classList.add("fpm__ui-controller",this.mode),this.container.style.background="rgba(0, 0, 0, 0.15)";const i=(o=e.useNewUI)!=null?o:!1;if(i&&(e.pointSelectorMode==="cursor"?this.svelteDom=new s0({target:e.container,props:{measureController:this.measureController,i18n:e.i18n,showExit:e.showExit}}):e.pointSelectorMode==="fixed"&&(this.svelteDom=new p0({target:e.container,props:{measureController:this.measureController,i18n:e.i18n,showExit:e.showExit}}))),!i){e.container.appendChild(this.container);const r=this.container.querySelectorAll(".fpm__text"),a=this.container.querySelector(".fpm_ui-bg"),l=this.container.querySelector(".fpm_operating-space");Object.assign(a==null?void 0:a.style,Nv),Object.assign(l==null?void 0:l.style,Gv),Object.assign(this.container.style,Qv),r.forEach(c=>Object.assign(c.style,Fv))}}dispose(){var t;this.hide(),(t=this.svelteDom)==null||t.$destroy(),this.container.remove()}show(){return this.container.style.display="block",this.container.style.opacity="1",this.container.style.transform="translate(0, 0)",this.mode==="pc"?(this.revoke=new Uv(this.measureController,this.container),this.mainController=new Wv(this.measureController,this.container,this._params)):this.mainController=new Yv(this.measureController,this.container,this._params),this.disposers.push(this.handleExit()),this}hide(){var t,e;return this.container.style.display="none",this.container.style.opacity="0",this.container.style.transform="translate(0, 10px)",this.mode==="pc"&&((t=this.revoke)==null||t.dispose()),(e=this.mainController)==null||e.dispose(),this.disposers.forEach(i=>i()),this.disposers=[],this}}var Mt=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{},Fe={},v0={get exports(){return Fe},set exports(n){Fe=n}};function uo(n){return n===null?"null":typeof n=="undefined"?"undefined":typeof n=="object"?Array.isArray(n)?"array":"object":typeof n}function vu(n){return uo(n)==="object"?na(n):uo(n)==="array"?ia(n):n}function ia(n){return n.map(vu)}function na(n){const t={};for(const e in n)n.hasOwnProperty(e)&&(t[e]=vu(n[e]));return t}function xo(n,t=[],e={}){const i={arrayBehaviour:e.arrayBehaviour||"replace"},s=t.map(r=>r||{}),o=n||{};for(let r=0;r<s.length;r++){const a=s[r],l=Object.keys(a);for(let c=0;c<l.length;c++){const d=l[c],h=a[d],u=uo(h),m=uo(o[d]);if(u==="object")if(m!=="undefined"){const A=m==="object"?o[d]:{};o[d]=xo({},[A,na(h)],i)}else o[d]=na(h);else if(u==="array")if(m==="array"){const A=ia(h);o[d]=i.arrayBehaviour==="merge"?o[d].concat(A):A}else o[d]=ia(h);else o[d]=h}}return o}v0.exports=function(t,...e){return xo(t,e)};Fe.noMutate=function(...t){return xo({},t)};Fe.withOptions=function(t,e,i){return xo(t,e,i)};function b0(n){ue(n,"svelte-1q8gtp4",".Measure-Tips.svelte-1q8gtp4.svelte-1q8gtp4{box-sizing:border-box;position:absolute;pointer-events:none;top:0;width:100%;padding:0 2.5rem}.Measure-Tips.svelte-1q8gtp4 .text.svelte-1q8gtp4{text-align:center;position:relative;max-width:100%;top:3.125rem;color:#fff;word-break:break-all;word-wrap:break-word;text-shadow:0 0.0625rem 0.375rem rgba(0, 0, 0, 0.5);font-size:1.25rem;font-weight:bold}")}function wc(n){let t,e,i,s,o;return{c(){t=D("div"),e=D("div"),i=xe(n[2]),w(e,"class","text svelte-1q8gtp4"),w(t,"class","Measure-Tips svelte-1q8gtp4")},m(r,a){O(r,t,a),x(t,e),x(e,i),n[7](e),o=!0},p(r,a){(!o||a&4)&&Se(i,r[2])},i(r){o||(r&&He(()=>{o&&(s||(s=Ft(t,it,{},!0)),s.run(1))}),o=!0)},o(r){r&&(s||(s=Ft(t,it,{},!1)),s.run(0)),o=!1},d(r){r&&z(t),n[7](null),r&&s&&s.end()}}}function y0(n){let t,e=n[0]&&wc(n);return{c(){e&&e.c(),t=Ee()},m(i,s){e&&e.m(i,s),O(i,t,s)},p(i,[s]){i[0]?e?(e.p(i,s),s&1&&k(e,1)):(e=wc(i),e.c(),k(e,1),e.m(t.parentNode,t)):e&&(de(),T(e,1,1,()=>{e=null}),he())},i(i){k(e)},o(i){T(e)},d(i){i&&z(t),e&&e.d(i)}}}function w0(n,t,e){let{measureController:i}=t,{i18n:s=y=>y}=t,{tips:o}=t,{tipStyle:r={}}=t,{visible:a=!0}=t,l=null;const c=y=>{const I=i.currentMeasureType;let M="";return M=o[y],M===void 0&&(M=o[I][y]),M},d=y=>{e(2,u=s(c(y)))},h=()=>{e(2,u="")};let u="";const m=y=>{y==="Edit"&&i.changeMeasureType?d("start"):h()},A=()=>{i.getCurrentMode()==="Watch"&&h()},p=()=>{i.getCurrentMode()==="Edit"&&d("start")},g=y=>{i.currentMeasureType==="area"&&(y.length>=2?d("close"):y.length===0?d("start"):h())};bt(()=>{m(i.getCurrentMode()),i.hook.on("modeChange",m),i.hook.on("complete",A),i.hook.on("pointsChange",g),i.hook.on("measureTypeChange",p)}),zt(()=>{i.hook.off("modeChange",m),i.hook.off("complete",A),i.hook.off("pointsChange",g),i.hook.off("measureTypeChange",p),h()});function v(y){Ge[y?"unshift":"push"](()=>{l=y,e(1,l),e(6,r)})}return n.$$set=y=>{"measureController"in y&&e(3,i=y.measureController),"i18n"in y&&e(4,s=y.i18n),"tips"in y&&e(5,o=y.tips),"tipStyle"in y&&e(6,r=y.tipStyle),"visible"in y&&e(0,a=y.visible)},n.$$.update=()=>{if(n.$$.dirty&66&&l)for(const y in r)r.hasOwnProperty(y)&&e(1,l.style[y]=r[y],l)},[a,l,u,i,s,o,r,v]}class C0 extends le{constructor(t){super(),ae(this,t,w0,y0,oe,{measureController:3,i18n:4,tips:5,tipStyle:6,visible:0},b0)}}const I0={line:{start:"选择一个合适的位置开始测量,点击【结束】或【鼠标右键】结束测量"},area:{start:"选择一个合适的位置开始绘制平面",close:"选择3个点后将闭合平面,点击【结束】或【鼠标右键】将自动闭合"}},P0={line:{start:""},area:{start:"",close:"选择3个点后将闭合平面,点击结束自动闭合"}};class E0{constructor(t,e){f(this,"tipSvelteDom");this.tipSvelteDom=new C0({target:e.container,props:{measureController:t,tips:Fe({},e.pointSelectorMode==="fixed"?P0:I0,e.tips),i18n:e.i18n,visible:!0,tipStyle:e.tipStyle}})}dispose(){var t;(t=this.tipSvelteDom)==null||t.$destroy()}show(){var t;return(t=this.tipSvelteDom)==null||t.$set({visible:!0}),this}hide(){var t;return(t=this.tipSvelteDom)==null||t.$set({visible:!1}),this}}class M0{constructor(t,e){f(this,"five");f(this,"measureController");f(this,"onKeyDown",t=>{if(t.metaKey&&t.code==="KeyS"){this.measureController.save().changeMode("Watch"),t.preventDefault();return}if(t.code==="Escape")return this.escape()});f(this,"onMouseDown",t=>{t.button===2&&(t.preventDefault(),this.escape())});this.five=e,this.measureController=t;const i=this.five.getElement();i&&(document.body.addEventListener("keydown",this.onKeyDown),i.addEventListener("mousedown",this.onMouseDown))}dispose(){const t=this.five.getElement();t&&(document.body.removeEventListener("keydown",this.onKeyDown),t.removeEventListener("mousedown",this.onMouseDown))}escape(){return this.measureController.getCurrentMode()==="Watch"?this.measureController.disable():this.measureController.save().changeMode("Watch")}}function fo(n){return typeof n=="object"?n===null?{}:n:{}}class k0{constructor(t,e){f(this,"hasOpen",!1);f(this,"hook",new je.Subscribe);f(this,"magnifier");f(this,"controller",null);f(this,"allowMeasureType");f(this,"currentMeasureType");f(this,"five");f(this,"model");f(this,"group");f(this,"config");f(this,"isMobile");f(this,"useUIController");f(this,"params");f(this,"useGuideController");f(this,"container",document.createElement("div"));f(this,"shortcutKeyController");f(this,"disable",()=>{var t,e,i,s;this.hasOpen=!1,this.container.style.opacity="0",(t=this.controller)==null||t.dispose(),(e=this.useUIController)==null||e.hide(),(i=this.useGuideController)==null||i.hide(),(s=this.shortcutKeyController)==null||s.dispose(),this.controller=null,this.five.helperVisible=!0,this.five.scene.remove(this.group),this.five.needsRender=!0,this.hook.emit("disable",!0)});f(this,"getCurrentMode",()=>this.controller instanceof di?"Edit":this.controller instanceof sc?"Watch":this.controller instanceof Xn?"Mixed":this.controller instanceof ic?"View":null);f(this,"changeMode",t=>{var s;if(!this.hasOpen||this.getCurrentMode()===t)return;(s=this.controller)==null||s.dispose();const e={View:ic,Watch:sc,Edit:di,Mixed:Xn};if(!e[t])throw new Error("不存在的 Mode");const i=this.createControllerParams();this.controller=new e[t](i),this.hook.emit("modeChange",t)});f(this,"changeMeasureType",t=>{this.currentMeasureType=t,this.hook.emit("measureTypeChange",t)});var o,r,a,l,c,d,h,u,m;this.five=t,this.params=e,this.config=Mo(e,["openParams","magnifierParams"]),this.model=new Ra(this.config),this.isMobile=(r=(o=e==null?void 0:e.openParams)==null?void 0:o.isMobile)!=null?r:!1,this.magnifier=new ga(t,(a=e.magnifierParams)!=null?a:{width:190,height:190,scale:2}),this.allowMeasureType=Array.from(new Set((c=(l=e.editParams)==null?void 0:l.allowMeasureType)!=null?c:["line"])),this.currentMeasureType=(d=this.allowMeasureType[0])!=null?d:"line",this.group=new R.Group,this.group.name="plugin-measure-group",this.container.classList.add("five-plugin-measure-container"),this.container.style.position="absolute",this.container.style.left="0",this.container.style.top="0",this.container.style.pointerEvents="none",this.container.style.width="100%",this.container.style.height="100%",this.container.style.opacity="0";const i=(u=(h=e.editParams)==null?void 0:h.pointSelectorMode)!=null?u:hu?"fixed":"cursor",s=(m=this.params.openParams)!=null?m:{};if(this.params.useUIController!==!1){const A=G({container:this.container,openParams:s,i18n:e.i18n,pointSelectorMode:i,useNewUI:this.allowMeasureType.length>1},fo(this.params.useUIController));this.useUIController=new A0(this,A)}if(this.params.useGuideController!==!1){const A=G({container:this.container,pointSelectorMode:i,i18n:e.i18n},fo(this.params.useGuideController));this.useGuideController=new E0(this,A)}}appendTo(t){t.append(this.container)}clear(){this.model.clear()}dispose(){var t,e;this.disable(),this.clear(),(t=this.useUIController)==null||t.dispose(),(e=this.magnifier)==null||e.dispose(),this.five.needsRender=!0}load(t){this.model.parse(t),this.save()}enable(t){var e;this.hasOpen||(this.hasOpen=!0,this.five.scene.add(this.group),this.container.style.opacity="1",t!=null&&t.mode?this.changeMode(t.mode):this.isMobile?this.changeMode("Mixed"):this.changeMode("Watch"),(e=this.useUIController)==null||e.show(),this.shortcutKeyController=new M0(this,this.five),this.hook.emit("enable",!0))}edit(t){t&&this.changeMeasureType(t);const e=this.isMobile?"Mixed":"Edit";this.changeMode(e)}revoke(){this.controller instanceof di&&this.controller.revoke()}removePolyline(t){this.model.removePolyline(t)}removeArea(t){this.model.removeArea(t)}removePolylineByID(t){const e=this.model.getPolylineByID(t);e&&this.model.removePolyline(e)}getPolylineByID(t){return this.model.getPolylineByID(t)}getEditedPolyline(){}highlightLine(t){if(this.getCurrentMode()!=="Watch")return!1;const e=this.model.getLineByID(t);return e?(this.controller.highlightLine(e),!0):!1}clearHighlightLines(){return this.getCurrentMode()!=="Watch"?!1:(this.controller.clearHighlightLines(),!0)}save(t){var s;if(!(this.controller instanceof di)&&!(this.controller instanceof Xn))return this;const e=(s=t==null?void 0:t.mode)!=null?s:"View",i=this.controller.model.areas;return this.controller instanceof di?this.controller.complete():i.forEach(o=>{o.showArea(),this.model.addArea(o)}),this.changeMode(e),this}addStartPoint(){this.controller instanceof Xn&&this.hook.emit("willChangeState","watching","editing")}addEndPoint(){this.controller instanceof Xn&&this.hook.emit("willChangeState","editing","watching")}toJson(){return this.model.toJson()}changeIsMobile(t){}changeConfigs(t){var e,i;Object.assign(this.config,t),(e=this.controller)==null||e.updateDistanceUI(),(i=this.controller)==null||i.updateAreaUI()}setCustomText(t,e){var s;const i=this.model.getLineByID(t);if(!i)throw new Error("不存在的线段");i.setText(e),(s=this.controller)==null||s.updateDistanceUI()}createControllerParams(){var i,s;const t=(i=this.params.openParams)!=null?i:{},e=(s=this.params.editParams)!=null?s:{};return t.isMobile=this.isMobile,{five:this.five,hook:this.hook,group:this.group,model:this.model,config:this.config,magnifier:this.magnifier,container:this.container,openParams:t,editParams:e,magnifierParams:this.params.magnifierParams,getMeasureType:()=>this.currentMeasureType,mouseGroup:uu(G({},t.crossHairParameter)),userDistanceItemCreator:this.params.userDistanceItemCreator}}}function Qs(n,t,e){const i=n[t],s=n[e];i===void 0||s===void 0||(n[t]=s,n[e]=i)}function x0(n,t,e){const i=e/2;for(let s=1;s<=i;s++){const o=e-(s-1);for(let r=1;r<=t;r++){const a=(s-1)*t+r-1,l=(o-1)*t+r-1;Qs(n,a*4+0,l*4+0),Qs(n,a*4+1,l*4+1),Qs(n,a*4+2,l*4+2),Qs(n,a*4+3,l*4+3)}}}class D0{constructor(t,e){f(this,"width");f(this,"height");f(this,"containerDom");f(this,"hooks",new je.Subscribe);f(this,"canvas",document.createElement("canvas"));f(this,"five");f(this,"scale");f(this,"config");f(this,"offset",{x:0,y:0});f(this,"context");f(this,"renderCenter",new E.Vector3);f(this,"hammer");f(this,"state",{enabled:!1});f(this,"offsetRange");f(this,"isPanning",!1);f(this,"onPanstart",()=>{this.isPanning=!0,this.canvas.style.boxShadow="0 2px 30px 0 rgba(0,0,0,0.20)"});f(this,"onPan",t=>{if(!this.isPanning||!this.offsetRange||this.hooks.emit("wantsPanGesture",t))return;const{translateX:i,translateY:s}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${i}px, ${s}px, 100px)`});f(this,"onPanend",t=>{if(this.isPanning=!1,this.canvas.style.boxShadow="none",!this.offsetRange)return;const{translateX:e,translateY:i}=this.getPanOffset(t,this.offsetRange);this.canvas.style.transform=`translate3d(${e}px, ${i}px, 100px)`,this.offset={x:e,y:i}});var s,o,r;if(!t.renderer)throw new Error("Five Render 未初始化");this.five=t,this.scale=(s=e==null?void 0:e.scale)!=null?s:2,this.width=(o=e==null?void 0:e.width)!=null?o:190,this.height=(r=e==null?void 0:e.height)!=null?r:190,this.config={dragEnabled:(e==null?void 0:e.dragEnabled)||!1,autoFixPCPosition:(e==null?void 0:e.autoFixPCPosition)||!1,initialPosition:(e==null?void 0:e.initialPosition)||{left:"0",top:"0"}};const i=this.canvas.getContext("2d");if(!i)throw new Error("CANNOT CREATE CONTEXT2D");this.context=i,this.config.dragEnabled&&(this.hammer=new ls(this.canvas),this.hammer.on("pan",this.onPan),this.hammer.on("panstart",this.onPanstart),this.hammer.on("panend",this.onPanend)),this.initStyle()}dispose(){var t;this.clear(),this.disable(),(t=this.hammer)==null||t.destroy()}enable(){if(!this.state.enabled)return this.state.enabled=!0,this.containerDom&&this._appendTo(this.containerDom),this}disable(){if(this.state.enabled)return this.state.enabled=!1,this.canvas.remove(),this}appendTo(t){return this.containerDom=t,this.state.enabled&&this._appendTo(t),this}clear(){return this.context.clearRect(0,0,this.canvas.width,this.canvas.height),this}renderWithPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}renderWithScreenPoint(t){this.containerDom&&this.state.enabled&&(this.renderCenter=t,this.render(),this.config.autoFixPCPosition&&this.autoFixPCPosition())}resetOffset(){this.offset={x:0,y:0},this.canvas.style.transform="translate3d(0px, 0px, 100px)"}getCurrentState(){return{enabled:this.state.enabled}}getRenderCenter(){return this.renderCenter}_appendTo(t){if(this.resetOffset(),t.appendChild(this.canvas),!this.offsetRange){const e=this.canvas.getBoundingClientRect(),i=t.getBoundingClientRect(),s=i.right-e.right,o=i.bottom-e.bottom,r=i.left-e.left,a=i.top-e.top;this.offsetRange={min:{x:r,y:a},max:{x:s,y:o}}}}autoFixPCPosition(){if(!this.containerDom)return;const{width:t,height:e}=this,[i,s,o]=(()=>{if(this.renderCenter instanceof E.Vector3){const r=this.renderCenter.clone().project(this.five.camera);return[(r.x+1)/2*this.containerDom.clientWidth,-(r.x-1)/2*this.containerDom.clientWidth,-(r.y-1)/2*this.containerDom.clientHeight]}else return[this.renderCenter.x,this.containerDom.clientWidth-this.renderCenter.x,this.renderCenter.y]})();i<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left="90px"):o<183?(this.canvas.style.top="90px",this.canvas.style.left=-t/2+"px"):s<183?(this.canvas.style.top=-e/2+"px",this.canvas.style.left=-t-90+"px"):(this.canvas.style.left=-t/2+"px",this.canvas.style.top=-e-90+"px"),this.canvas.style.transform=`translate3d(${i}px, ${o}px, 10px)`,this.offset={x:i,y:o}}render(){if(!this.five.renderer||!this.containerDom)return;const{scale:t,context:e,width:i,height:s}=this,o=this.five.renderer.getSize(new E.Vector2),[r,a]=(()=>{if(this.renderCenter instanceof E.Vector3){const g=this.renderCenter.clone().project(this.five.camera);return[(g.x+1)/2*o.x,(g.y+1)/2*o.y]}else return[this.renderCenter.x,o.y-this.renderCenter.y]})(),l=1,c=i/t,d=s/t,h=l*t,u=this.five.getPixels(r-c/2,a-c/2,c,d,h),m=Math.floor(i*l),A=Math.floor(s*l);x0(u,m,A);const p=new ImageData(m,A);p.data.set(u),e.putImageData(p,0,0)}initStyle(){const t=this.canvas;t.classList.add("five-plugin__magnifier"),t.style.position="absolute",t.style.pointerEvents="all",t.style.borderRadius="50%",t.style.zIndex="99";const e=1;t.setAttribute("width",(this.width*e).toString()),t.setAttribute("height",(this.height*e).toString()),t.style.border="2px solid rgba(255,255,255,0.20)",t.style.width=this.width+"px",t.style.height=this.height+"px",t.style.top=this.config.initialPosition.top,t.style.left=this.config.initialPosition.left,t.style.transform="translate(0,0,100px)",this.config.dragEnabled&&(this.canvas.style.cursor="pointer")}getPanOffset(t,e){const{min:{x:i,y:s},max:{x:o,y:r}}=e,a=this.offset.x+t.deltaX,l=this.offset.y+t.deltaY,c=Math.min(Math.max(a,i),o),d=Math.min(Math.max(l,s),r);return{translateX:c,translateY:d}}}const S0=function(t,e){return new k0(t,e)},bu=Da(null);function T0(n){ue(n,"svelte-19zi46m",".PanoSpatialTagPlugin__tag-origin.svelte-19zi46m{position:absolute;width:0.5rem;height:0.5rem;border-radius:50%;background:#fff;box-shadow:0 0 .6rem #fff;transform:translate(-50%, -50%) scale(1);transform-origin:center center;animation:svelte-19zi46m-PanoSpatialTagPlugin__tag-origin 1.2s forwards;pointer-events:auto}.PanoSpatialTagPlugin__tag-origin.svelte-19zi46m:after{content:'';position:absolute;top:50%;height:50%;width:2rem;height:2rem;transform:translate(-50%, -50%)}.PanoSpatialTagPlugin__tag-origin-destroy.svelte-19zi46m{transform:translate(-50%, -50%) scale(0.6);animation:svelte-19zi46m-PanoSpatialTagPlugin__tag-origin-destroy 1.2s forwards .7s}@keyframes svelte-19zi46m-PanoSpatialTagPlugin__tag-origin{0%{transform:translate(-50%, -50%) scale(1);opacity:0}100%{transform:translate(-50%, -50%) scale(0.6);opacity:1 }}@keyframes svelte-19zi46m-PanoSpatialTagPlugin__tag-origin-destroy{0%{transform:translate(-50%, -50%) scale(0.6);opacity:1}10%{transform:translate(-50%, -50%) scale(1);opacity:0.9}100%{transform:translate(-50%, -50%) scale(1);opacity:0}}")}function Cc(n,t,e){const i=n.slice();return i[3]=t[e],i}function Ic(n){let t,e=`${n[3].top}%`,i=`${n[3].left}%`,s,o;function r(){return n[2](n[3])}return{c(){t=D("i"),w(t,"class","svelte-19zi46m"),K(t,"PanoSpatialTagPlugin__tag-origin",!0),K(t,"PanoSpatialTagPlugin__tag-origin-destroy",n[3].destroying),j(t,"top",e),j(t,"left",i),j(t,"visibility",n[3].front?"visible":"hidden")},m(a,l){O(a,t,l),s||(o=be(t,"click",r),s=!0)},p(a,l){n=a,l&1&&K(t,"PanoSpatialTagPlugin__tag-origin-destroy",n[3].destroying),l&1&&e!==(e=`${n[3].top}%`)&&j(t,"top",e),l&1&&i!==(i=`${n[3].left}%`)&&j(t,"left",i),l&1&&j(t,"visibility",n[3].front?"visible":"hidden")},d(a){a&&z(t),s=!1,o()}}}function L0(n){let t,e=Pe(n[0]),i=[];for(let s=0;s<e.length;s+=1)i[s]=Ic(Cc(n,e,s));return{c(){for(let s=0;s<i.length;s+=1)i[s].c();t=Ee()},m(s,o){for(let r=0;r<i.length;r+=1)i[r]&&i[r].m(s,o);O(s,t,o)},p(s,[o]){if(o&3){e=Pe(s[0]);let r;for(r=0;r<e.length;r+=1){const a=Cc(s,e,r);i[r]?i[r].p(a,o):(i[r]=Ic(a),i[r].c(),i[r].m(t.parentNode,t))}for(;r<i.length;r+=1)i[r].d(1);i.length=e.length}},i:q,o:q,d(s){s&&z(t),jt(i,s)}}}function j0(n,t,e){let{origins:i}=t;const s=r=>{bu.update(()=>`${r}-PanoSpatialTagPlugin-${Date.now()}`)},o=r=>s(r.id);return n.$$set=r=>{"origins"in r&&e(0,i=r.origins)},[i,s,o]}class z0 extends le{constructor(t){super(),ae(this,t,j0,L0,oe,{origins:0},T0)}}function O0(n){ue(n,"svelte-9m6drd",`.PanoSpatialTagPlugin__tag-x.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0;display:block;white-space:nowrap;box-sizing:border-box;width:25rem;height:14rem;color:#fff;transform:translate(0, -100%);transition:height 0.5s linear}.PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd.svelte-9m6drd{content:'';position:absolute;width:30rem;height:30rem;top:-15rem;left:-15rem;z-index:-1;opacity:0;transition:opacity 0.8s 0.6s;background:url('https://vrlab-image4.ljcdn.com/release/web/PanoSpatialTagPlugin__blur.png');background-size:30rem 30rem}.PanoSpatialTagPlugin__tag-line.svelte-9m6drd.svelte-9m6drd{position:absolute;left:-1rem;width:2rem;height:100%;overflow:hidden}.PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:1rem;height:calc(100% - 1.5rem);width:0.15rem;background:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.1));box-shadow:0 0.1rem 0.5rem rgba(0, 0, 0, 0.2);opacity:0;transform:translate(-50%, 60%) scaleY(0);transition:transform 0.4s cubic-bezier(0.44, 0.44, 0.74, 0.98), opacity 0.4s cubic-bezier(0.44, 0.44, 0.74, 0.98), width 0.5s linear,
516
+ height 0.5s linear;transform-origin:center bottom}.PanoSpatialTagPlugin__tag-line1.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0.3rem;height:1.8rem;width:0.1rem;background:#fff;opacity:0;transform:translate(-50%, 200%) scaleY(0);transform-origin:center top}.PanoSpatialTagPlugin__tag-line2.svelte-9m6drd.svelte-9m6drd{position:absolute;top:0;left:0.5rem;height:1.8rem;width:0.1rem;background:#fff;opacity:0;transform:translate(-50%, 200%) scaleY(0);transform-origin:center top}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-line1.svelte-9m6drd{animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line1 linear 0.5s forwards 0.45s}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-line2.svelte-9m6drd{animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line2 linear 0.5s forwards 0.65s}.PanoSpatialTagPlugin__tag-x.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd.svelte-9m6drd{transform:translate(0, 0)}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-line.svelte-9m6drd{transform:scaleY(-1)}.PanoSpatialTagPlugin__tag-animate.svelte-9m6drd.svelte-9m6drd{position:relative;height:100%;overflow:hidden;transform-origin:left top;transition:transform 0.5s linear}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-animate.svelte-9m6drd{transform-origin:left bottom}.PanoSpatialTagPlugin__tag-content.svelte-9m6drd.svelte-9m6drd{position:absolute;display:inline-block;transform:translate(-100%, 0);transition:transform 0.9s cubic-bezier(0, 0.65, 0.16, 1.08) 0.6s;padding-left:0.5rem;font-size:1rem}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{bottom:0}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd{opacity:1;transform:translate(-50%, 0) scaleY(1)}.PanoSpatialTagPlugin__tag-upside-down.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{top:unset;bottom:-15rem}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{opacity:0.32}.PanoSpatialTagPlugin__tag-show.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{transform:translate(0, 0)}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-flagpole.svelte-9m6drd{opacity:0;transform:translate(-50%, 60%) scaleY(0);transition:transform 0.5s 0.55s, opacity 0.4s 0.55s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-shadow.svelte-9m6drd{opacity:0;transition:opacity 0.8s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-content.svelte-9m6drd{transform:translate(-100%, 0);transition:transform 0.6s cubic-bezier(0.53, 0.06, 0.88, 0.59)}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-content .svelte-9m6drd{pointer-events:none}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-line1.svelte-9m6drd{opacity:0.5;transform:translate(-50%, 10%) scaleY(0);animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line1-hide linear 0.28s forwards 0.3s}.PanoSpatialTagPlugin__tag-hide.svelte-9m6drd .PanoSpatialTagPlugin__tag-line2.svelte-9m6drd{opacity:0.5;transform:translate(-50%, 0) scaleY(0);animation:svelte-9m6drd-PanoSpatialTagPlugin__tag-line2-hide linear 0.28s forwards 0.45s}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line1{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 135%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 20%) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line2{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 125%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line1-hide{0%{opacity:0.5;transform:translate(-50%, 10%) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 105%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}@keyframes svelte-9m6drd-PanoSpatialTagPlugin__tag-line2-hide{0%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 100%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}`)}function B0(n){let t,e,i,s,o,r,a,l,c,d,h,u,m,A,p;return{c(){t=D("div"),e=D("div"),i=$(),s=D("div"),o=D("i"),r=$(),a=D("i"),l=$(),c=D("i"),d=$(),h=D("div"),u=D("div"),w(e,"class","PanoSpatialTagPlugin__tag-shadow svelte-9m6drd"),j(e,"transform","translate("+n[7]/2*n[3]*3+"px, "+n[8]/2*(n[1]?-1:1)*n[3]*3+"px) scale("+1/n[3]+")"),w(o,"class","PanoSpatialTagPlugin__tag-flagpole svelte-9m6drd"),j(o,"width",n[4]+"rem"),w(a,"class","PanoSpatialTagPlugin__tag-line1 svelte-9m6drd"),w(c,"class","PanoSpatialTagPlugin__tag-line2 svelte-9m6drd"),w(s,"class","PanoSpatialTagPlugin__tag-line svelte-9m6drd"),w(u,"class","PanoSpatialTagPlugin__tag-content svelte-9m6drd"),w(h,"class","PanoSpatialTagPlugin__tag-animate svelte-9m6drd"),j(h,"transform","scale("+n[3]*3+")"),w(t,"id",m="PanoSpatialTagPlugin__"+n[0]),j(t,"height",20*n[5]+"rem"),w(t,"class","svelte-9m6drd"),K(t,"PanoSpatialTagPlugin__tag-x",!0),K(t,"PanoSpatialTagPlugin__tag-upside-down",n[1]),K(t,"PanoSpatialTagPlugin__tag-show",n[10]),K(t,"PanoSpatialTagPlugin__tag-hide",n[10]===!1||n[6])},m(g,v){O(g,t,v),x(t,e),x(t,i),x(t,s),x(s,o),x(s,r),x(s,a),x(s,l),x(s,c),x(t,d),x(t,h),x(h,u),u.innerHTML=n[2],n[16](u),A||(p=be(u,"click",n[11]),A=!0)},p(g,[v]){v&394&&j(e,"transform","translate("+g[7]/2*g[3]*3+"px, "+g[8]/2*(g[1]?-1:1)*g[3]*3+"px) scale("+1/g[3]+")"),v&16&&j(o,"width",g[4]+"rem"),v&4&&(u.innerHTML=g[2]),v&8&&j(h,"transform","scale("+g[3]*3+")"),v&1&&m!==(m="PanoSpatialTagPlugin__"+g[0])&&w(t,"id",m),v&32&&j(t,"height",20*g[5]+"rem"),v&2&&K(t,"PanoSpatialTagPlugin__tag-upside-down",g[1]),v&1024&&K(t,"PanoSpatialTagPlugin__tag-show",g[10]),v&1088&&K(t,"PanoSpatialTagPlugin__tag-hide",g[10]===!1||g[6])},i:q,o:q,d(g){g&&z(t),n[16](null),A=!1,p()}}}function V0(n,t,e){let{id:i}=t,{upsideDown:s}=t,{content:o}=t,{contentZoom:r}=t,{lineWidthZoom:a}=t,{lineHeightZoom:l}=t,{destroying:c=!1}=t,{folded:d}=t,{dispose:h}=t,{events:u}=t,{hooks:m}=t,A=0,p=0,g,v,y=setTimeout(()=>{d||e(10,v=!0),y=void 0},100);const I=P=>{const V=Object.keys(u);let L=P.target;for(;L;){const X=L.getAttribute("class");if(!X){L=L.parentNode;continue}if(X.includes("PanoSpatialTagPlugin__tag-content")){L=null;break}V.forEach(Y=>{X.includes(Y)&&u[Y](i)}),L=L.parentNode}};bt(()=>{m.emit("initTag",{id:i})});const M=bu.subscribe(P=>{if(P===null)return;const[V,L]=P.split("-PanoSpatialTagPlugin-");i===V&&(m.emit("clickOrigin",{id:i,show:v}),y||(e(10,v=d),e(12,d=!d),y=setTimeout(()=>{y=void 0},1500)))});Rh(()=>{e(7,A=g.offsetWidth),e(8,p=g.offsetHeight),!y&&e(10,v=!d)}),zt(()=>{m.emit("destroyTag",{id:i}),M(),h()});function B(P){Ge[P?"unshift":"push"](()=>{g=P,e(9,g)})}return n.$$set=P=>{"id"in P&&e(0,i=P.id),"upsideDown"in P&&e(1,s=P.upsideDown),"content"in P&&e(2,o=P.content),"contentZoom"in P&&e(3,r=P.contentZoom),"lineWidthZoom"in P&&e(4,a=P.lineWidthZoom),"lineHeightZoom"in P&&e(5,l=P.lineHeightZoom),"destroying"in P&&e(6,c=P.destroying),"folded"in P&&e(12,d=P.folded),"dispose"in P&&e(13,h=P.dispose),"events"in P&&e(14,u=P.events),"hooks"in P&&e(15,m=P.hooks)},[i,s,o,r,a,l,c,A,p,g,v,I,d,h,u,m,B]}let R0=class extends le{constructor(t){super(),ae(this,t,V0,B0,oe,{id:0,upsideDown:1,content:2,contentZoom:3,lineWidthZoom:4,lineHeightZoom:5,destroying:6,folded:12,dispose:13,events:14,hooks:15},O0)}};const Q0={position:"absolute",top:"0px",left:"0px",width:"100%",height:"100%",pointerEvents:"none"},Pc="<",Ec=">",Mc="%",kc="locals",G0="(<%%|%%>|<%=|<%-|<%_|<%#|<%|%>|-%>|_%>)",N0={"&":"&amp","<":"&lt",">":"&gt",'"':"&#34","'":"&#39"},ut={EVAL:"eval",ESCAPED:"escaped",RAW:"raw",COMMENT:"comment",LITERAL:"literal"};function xc(n){return n.replace(/;(\s*$)/,"$1")}function H0(n,t){return new _0(n).compileFunction()(t)}class _0{constructor(t){f(this,"templateText");f(this,"mode",null);f(this,"truncate",!1);f(this,"currentLine",1);f(this,"source","");f(this,"regex",new RegExp(G0));this.templateText=t}compileFunction(){let t;const e=` var __output = "";
517
517
  function __append(s) { if (s !== undefined && s !== null) __output += s }
518
518
  with (`+kc+` || {}) {
519
519
  `,i=` }
@@ -528,27 +528,27 @@ void main() {
528
528
  `)}switch(this.mode){case ut.EVAL:this.source+=" ; "+t+`
529
529
  `;break;case ut.ESCAPED:this.source+=" ; __append(escapeFn("+xc(t)+`))
530
530
  `;break;case ut.RAW:this.source+=" ; __append("+xc(t)+`)
531
- `;break;case ut.COMMENT:break;case ut.LITERAL:this._addOutput(t);break}}else this._addOutput(t)}}}const xr=.001,Dc=.01,F0="https://vrlab-image4.ljcdn.com/release/web/PanoSpatialTagPlugin__blur.png",W0=(n,t)=>{var ce,se,we,Ce,pe,Ve,Ae,Ye;let e=t==null?void 0:t.container,i=1.4;const s=(ce=t==null?void 0:t.wait)!=null?ce:200,o=(se=t==null?void 0:t.maxNumberOnScreen)!=null?se:3,r=(we=t==null?void 0:t.minRad)!=null?we:Math.PI/4,a=(Ce=t==null?void 0:t.nearTolerance)!=null?Ce:100,l=(pe=t==null?void 0:t.upsideHeight)!=null?pe:1.6,c=(Ve=t==null?void 0:t.minDistance)!=null?Ve:1.2,d=(Ae=t==null?void 0:t.maxDistance)!=null?Ae:3.5,h=bo(n),u=document.createElement("div");u.classList.add("PanoSpatialTagPlugin"),Object.assign(u.style,Q0);const m=new je.Subscribe;let A=new Image;A.src=F0;const p={points:[],origins:[],tags:[],template:"",events:{},render:H0,folded:!1,enabled:!0,forbidden:!0},g=new z0({target:u,props:{origins:p.origins}}),v=(fe,ye)=>{D(),ye&&P()},y=()=>{p.forbidden&&(p.forbidden=!1,P())},I=(fe,ye)=>{if(p.tags.length===0)return;const ze=ye.longitude-n.state.longitude,me=n.camera.clone();me.position.copy(ye.offset),me.rotateOnWorldAxis(new E.Vector3(0,1,0),ze),me.updateProjectionMatrix(),me.updateMatrixWorld(!0);const Ke=new E.Frustum,dt=new E.Matrix4;dt.multiplyMatrices(me.projectionMatrix,me.matrixWorldInverse),Ke.setFromProjectionMatrix(dt),p.tags.forEach(ke=>{const nt=me.position.clone().setY(i).distanceTo(ke.position);if(nt<c||nt>d||!Ke.containsPoint(ke.position))return ke.destroying=!0;const re=ke.position.clone().sub(me.position).setY(0);if(re.angleTo(ke.normal)>Math.PI/2-r&&re.angleTo(ke.normal)<Math.PI/2+r)return ke.destroying=!0}),p.tags.forEach(ke=>{ke.destroying?ke.app.$set({contentZoom:.1+me.position.distanceTo(ke.position)/d,lineWidthZoom:.38*(.01+me.position.distanceTo(ke.position)/d),destroying:ke.destroying}):ke.app.$set({lineWidthZoom:.38*(.01+me.position.distanceTo(ke.position)/d),lineHeightZoom:.4+(me.position.distanceTo(ke.position)-c)/d*.6,contentZoom:.1+me.position.distanceTo(ke.position)/d})}),setTimeout(()=>{p.tags.forEach(ke=>{ke.destroying&&(ke.app.$destroy(),ke=null)}),p.tags=p.tags.filter(ke=>!ke.destroying),D()},1900)},M=fe=>{fe!==je.Five.Mode.Panorama&&!p.forbidden&&(g.$set({origins:[]}),p.tags.forEach(ye=>{ye.app.$destroy(),ye=null}),p.origins=[],p.tags=[],p.forbidden=!0)},D=()=>{if(p.forbidden||!p.enabled)return;const fe=n.camera,ye=fe.getWorldDirection(new E.Vector3);p.origins=p.tags.map(ze=>{const me=ze.position.clone().project(fe),Ke=ze.position.clone().sub(fe.position).setY(0).angleTo(ye.setY(0))<Math.PI/2;return{id:ze.id,front:Ke,left:(me.x+1)/2*100,top:(-me.y+1)/2*100,destroying:ze.destroying}}),g.$set({origins:p.origins})},P=()=>{p.forbidden||!p.enabled||(p.timeoutId&&clearTimeout(p.timeoutId),p.timeoutId=setTimeout(()=>{p.timeoutId=void 0;const fe=V();fe.length&&(p.tags=p.tags.concat(fe),D())},s))},V=()=>{const{clientWidth:fe,clientHeight:ye}=n.getElement(),ze=[],me=n.camera,Ke=new E.Frustum,dt=new E.Matrix4,ke=me.getWorldDirection(new E.Vector3);dt.multiplyMatrices(me.projectionMatrix,me.matrixWorldInverse),Ke.setFromProjectionMatrix(dt);const nt=p.tags.filter(Me=>Ke.containsPoint(Me.position)&&!Me.destroying).length,re=p.points.reduce((Me,_e)=>{if(p.tags.find(Ne=>_e.id===Ne.id&&!Ne.destroying))return Me;const mt=me.position.clone().setY(i).distanceTo(_e.position);if(mt<c||mt>d||!Ke.containsPoint(_e.position))return Me;const Yt=_e.position.clone().sub(me.position).setY(0);if(Yt.angleTo(_e.normal)>Math.PI/2-r&&Yt.angleTo(_e.normal)<Math.PI/2+r)return Me;const yt=_e.position.clone().project(me);if(!p.tags.every(Ne=>{if(Ne.position.clone().sub(me.position).setY(0).angleTo(ke.setY(0))>Math.PI/2)return!0;const Je=Ne.position.clone().project(me);return Math.sqrt(Math.pow((yt.x-Je.x)/2*fe,2)+Math.pow((yt.y-Je.y)/2*ye,2))>a}))return Me;const wt={id:_e.id,position:_e.position,normal:_e.normal,replacement:_e.replacement,weight:_e.weight,distance:mt};let Re;for(let Ne=0,Je=Me.length;Ne<Je;Ne++){const xt=Me[Ne];if(wt.weight>xt.weight){Re=Ne;break}if(wt.distance<xt.distance){Re=Ne;break}}return Re!==void 0?Me.splice(Re,0,wt):Me.push(wt),Me},[]);for(let Me=0,_e=re.length;Me<_e&&!(nt+ze.length>=o);Me++){const mt=re[Me];if(ze.find(Re=>mt.id===Re.id))continue;const Yt=mt.position.clone().project(me);if(!p.tags.concat(ze).every(Re=>{if(Re.position.clone().sub(me.position).setY(0).angleTo(ke.setY(0))>Math.PI/2)return!0;const Ne=Re.position.clone().project(me);return Math.sqrt(Math.pow((Yt.x-Ne.x)/2*fe,2)+Math.pow((Yt.y-Ne.y)/2*ye,2))>a}))continue;const yt=new E.Raycaster(me.position.clone().setY(i),mt.position.clone().sub(me.position.clone().setY(i)).normalize(),0,mt.distance+Dc),[wt]=p.intersectObjects?yt.intersectObjects(p.intersectObjects,!0):n.model.bvhs.loaded?n.model.intersectRaycaster(yt):yt.intersectObjects(n.model.children,!0);if(wt&&mt.distance-wt.distance<Dc){const{position:Re,normal:Ne,id:Je,replacement:xt}=mt,Ln=new E.Plane().setFromNormalAndCoplanarPoint(Ne,Re),Bt=Re.clone().sub(me.position).cross(new E.Vector3(0,1,0)).setLength(xr),oi=[Re.clone(),Re.clone().add(Bt),Re.clone().add(new E.Vector3(0,xr,0)).add(Bt),Re.clone().add(new E.Vector3(0,xr,0))].map(Gi=>Ln.projectPoint(Gi,new E.Vector3)),{container:wi,dispose:gt}=h.create3DDomContainer(oi)||{},Qi=new R0({target:wi,props:{id:Je,content:p.render(p.template,xt),lineWidthZoom:.38*(.01+me.position.distanceTo(Re)/d),lineHeightZoom:.4+(me.position.distanceTo(Re)-c)/d*.6,contentZoom:.1+me.position.distanceTo(Re)/d,upsideDown:Re.y>l,folded:p.folded,events:p.events,hooks:m,dispose:gt}});ze.push({position:Re,normal:Ne,id:Je,app:Qi})}}return ze},L=fe=>{p.points=fe.points.map(ye=>{var ze,me;return{id:ye.id,position:new E.Vector3().fromArray(ye.position),normal:new E.Vector3().fromArray(ye.normal),replacement:(ze=ye.replacement)!=null?ze:{},weight:(me=ye.weight)!=null?me:-1}}),fe.render&&(p.render=fe.render),fe.template&&(p.template=fe.template),fe.events&&(p.events=fe.events),fe.enabled===!1&&(p.enabled=fe.enabled),fe.folded===!0&&(p.folded=fe.folded)},X=fe=>{p.intersectObjects=fe,P()},U=()=>{p.enabled=!0,P()},N=()=>{p.enabled=!1,g.$set({origins:[]}),p.tags.forEach(fe=>{fe.app.$destroy(),fe=null}),p.origins=[],p.tags=[]},H=()=>{p.folded=!1,p.tags.forEach(fe=>{fe.app.$set({folded:p.folded})})},_=()=>{p.folded=!0,p.tags.forEach(fe=>{fe.app.$set({folded:p.folded})})},Q=fe=>{p.tags.forEach(ye=>{ye.id===fe&&ye.app.$set({folded:!1})})},F=fe=>{p.tags.forEach(ye=>{ye.id===fe&&ye.app.$set({folded:!0})})},J=()=>{n.once("renderFrame",D)},Z=()=>{e||(e=n.getElement().parentElement),e&&e.appendChild(u),p.forbidden=!1,i=n.model.bounding.getCenter(new E.Vector3).y,P(),n.on("panoWillArrive",I),n.on("panoArrived",y),n.on("modeChange",M),n.on("cameraUpdate",v)},ee=()=>{A=null,h.disposeAll(),g.$destroy(),p.tags.forEach(fe=>{fe.app.$destroy(),fe=null}),p.origins=[],p.tags=[],n.off("modelLoaded",Z),n.off("renderFrame",D),n.off("panoWillArrive",I),n.off("panoArrived",y),n.off("modeChange",M),n.off("cameraUpdate",v),n.off("dispose",ee),window.removeEventListener("resize",J,!1)};return window.addEventListener("resize",J,!1),(Ye=n==null?void 0:n.model)!=null&&Ye.loaded?Z():n.once("modelLoaded",Z),n.on("dispose",ee),{load:L,setIntersectObjects:X,unfoldAll:H,foldAll:_,unfold:Q,fold:F,enable:U,disable:N,hooks:m,dispose:ee}};var Si=(n=>(n.SMALL="small",n.MIDLLE="middle",n.LARGE="large",n.EXTRA_LARGE="x-large",n))(Si||{}),sa={},Y0={get exports(){return sa},set exports(n){sa=n}};/*!
531
+ `;break;case ut.COMMENT:break;case ut.LITERAL:this._addOutput(t);break}}else this._addOutput(t)}}}const Dr=.001,Dc=.01,F0="https://vrlab-image4.ljcdn.com/release/web/PanoSpatialTagPlugin__blur.png",W0=(n,t)=>{var ce,se,we,Ce,pe,Ve,Ae,Ye;let e=t==null?void 0:t.container,i=1.4;const s=(ce=t==null?void 0:t.wait)!=null?ce:200,o=(se=t==null?void 0:t.maxNumberOnScreen)!=null?se:3,r=(we=t==null?void 0:t.minRad)!=null?we:Math.PI/4,a=(Ce=t==null?void 0:t.nearTolerance)!=null?Ce:100,l=(pe=t==null?void 0:t.upsideHeight)!=null?pe:1.6,c=(Ve=t==null?void 0:t.minDistance)!=null?Ve:1.2,d=(Ae=t==null?void 0:t.maxDistance)!=null?Ae:3.5,h=yo(n),u=document.createElement("div");u.classList.add("PanoSpatialTagPlugin"),Object.assign(u.style,Q0);const m=new je.Subscribe;let A=new Image;A.src=F0;const p={points:[],origins:[],tags:[],template:"",events:{},render:H0,folded:!1,enabled:!0,forbidden:!0},g=new z0({target:u,props:{origins:p.origins}}),v=(fe,ye)=>{B(),ye&&P()},y=()=>{p.forbidden&&(p.forbidden=!1,P())},I=(fe,ye)=>{if(p.tags.length===0)return;const ze=ye.longitude-n.state.longitude,me=n.camera.clone();me.position.copy(ye.offset),me.rotateOnWorldAxis(new E.Vector3(0,1,0),ze),me.updateProjectionMatrix(),me.updateMatrixWorld(!0);const Ke=new E.Frustum,dt=new E.Matrix4;dt.multiplyMatrices(me.projectionMatrix,me.matrixWorldInverse),Ke.setFromProjectionMatrix(dt),p.tags.forEach(ke=>{const nt=me.position.clone().setY(i).distanceTo(ke.position);if(nt<c||nt>d||!Ke.containsPoint(ke.position))return ke.destroying=!0;const re=ke.position.clone().sub(me.position).setY(0);if(re.angleTo(ke.normal)>Math.PI/2-r&&re.angleTo(ke.normal)<Math.PI/2+r)return ke.destroying=!0}),p.tags.forEach(ke=>{ke.destroying?ke.app.$set({contentZoom:.1+me.position.distanceTo(ke.position)/d,lineWidthZoom:.38*(.01+me.position.distanceTo(ke.position)/d),destroying:ke.destroying}):ke.app.$set({lineWidthZoom:.38*(.01+me.position.distanceTo(ke.position)/d),lineHeightZoom:.4+(me.position.distanceTo(ke.position)-c)/d*.6,contentZoom:.1+me.position.distanceTo(ke.position)/d})}),setTimeout(()=>{p.tags.forEach(ke=>{ke.destroying&&(ke.app.$destroy(),ke=null)}),p.tags=p.tags.filter(ke=>!ke.destroying),B()},1900)},M=fe=>{fe!==je.Five.Mode.Panorama&&!p.forbidden&&(g.$set({origins:[]}),p.tags.forEach(ye=>{ye.app.$destroy(),ye=null}),p.origins=[],p.tags=[],p.forbidden=!0)},B=()=>{if(p.forbidden||!p.enabled)return;const fe=n.camera,ye=fe.getWorldDirection(new E.Vector3);p.origins=p.tags.map(ze=>{const me=ze.position.clone().project(fe),Ke=ze.position.clone().sub(fe.position).setY(0).angleTo(ye.setY(0))<Math.PI/2;return{id:ze.id,front:Ke,left:(me.x+1)/2*100,top:(-me.y+1)/2*100,destroying:ze.destroying}}),g.$set({origins:p.origins})},P=()=>{p.forbidden||!p.enabled||(p.timeoutId&&clearTimeout(p.timeoutId),p.timeoutId=setTimeout(()=>{p.timeoutId=void 0;const fe=V();fe.length&&(p.tags=p.tags.concat(fe),B())},s))},V=()=>{const{clientWidth:fe,clientHeight:ye}=n.getElement(),ze=[],me=n.camera,Ke=new E.Frustum,dt=new E.Matrix4,ke=me.getWorldDirection(new E.Vector3);dt.multiplyMatrices(me.projectionMatrix,me.matrixWorldInverse),Ke.setFromProjectionMatrix(dt);const nt=p.tags.filter(Me=>Ke.containsPoint(Me.position)&&!Me.destroying).length,re=p.points.reduce((Me,_e)=>{if(p.tags.find(Ne=>_e.id===Ne.id&&!Ne.destroying))return Me;const mt=me.position.clone().setY(i).distanceTo(_e.position);if(mt<c||mt>d||!Ke.containsPoint(_e.position))return Me;const Yt=_e.position.clone().sub(me.position).setY(0);if(Yt.angleTo(_e.normal)>Math.PI/2-r&&Yt.angleTo(_e.normal)<Math.PI/2+r)return Me;const yt=_e.position.clone().project(me);if(!p.tags.every(Ne=>{if(Ne.position.clone().sub(me.position).setY(0).angleTo(ke.setY(0))>Math.PI/2)return!0;const Je=Ne.position.clone().project(me);return Math.sqrt(Math.pow((yt.x-Je.x)/2*fe,2)+Math.pow((yt.y-Je.y)/2*ye,2))>a}))return Me;const wt={id:_e.id,position:_e.position,normal:_e.normal,replacement:_e.replacement,weight:_e.weight,distance:mt};let Re;for(let Ne=0,Je=Me.length;Ne<Je;Ne++){const xt=Me[Ne];if(wt.weight>xt.weight){Re=Ne;break}if(wt.distance<xt.distance){Re=Ne;break}}return Re!==void 0?Me.splice(Re,0,wt):Me.push(wt),Me},[]);for(let Me=0,_e=re.length;Me<_e&&!(nt+ze.length>=o);Me++){const mt=re[Me];if(ze.find(Re=>mt.id===Re.id))continue;const Yt=mt.position.clone().project(me);if(!p.tags.concat(ze).every(Re=>{if(Re.position.clone().sub(me.position).setY(0).angleTo(ke.setY(0))>Math.PI/2)return!0;const Ne=Re.position.clone().project(me);return Math.sqrt(Math.pow((Yt.x-Ne.x)/2*fe,2)+Math.pow((Yt.y-Ne.y)/2*ye,2))>a}))continue;const yt=new E.Raycaster(me.position.clone().setY(i),mt.position.clone().sub(me.position.clone().setY(i)).normalize(),0,mt.distance+Dc),[wt]=p.intersectObjects?yt.intersectObjects(p.intersectObjects,!0):n.model.bvhs.loaded?n.model.intersectRaycaster(yt):yt.intersectObjects(n.model.children,!0);if(wt&&mt.distance-wt.distance<Dc){const{position:Re,normal:Ne,id:Je,replacement:xt}=mt,Ln=new E.Plane().setFromNormalAndCoplanarPoint(Ne,Re),Bt=Re.clone().sub(me.position).cross(new E.Vector3(0,1,0)).setLength(Dr),oi=[Re.clone(),Re.clone().add(Bt),Re.clone().add(new E.Vector3(0,Dr,0)).add(Bt),Re.clone().add(new E.Vector3(0,Dr,0))].map(Gi=>Ln.projectPoint(Gi,new E.Vector3)),{container:wi,dispose:gt}=h.create3DDomContainer(oi)||{},Qi=new R0({target:wi,props:{id:Je,content:p.render(p.template,xt),lineWidthZoom:.38*(.01+me.position.distanceTo(Re)/d),lineHeightZoom:.4+(me.position.distanceTo(Re)-c)/d*.6,contentZoom:.1+me.position.distanceTo(Re)/d,upsideDown:Re.y>l,folded:p.folded,events:p.events,hooks:m,dispose:gt}});ze.push({position:Re,normal:Ne,id:Je,app:Qi})}}return ze},L=fe=>{p.points=fe.points.map(ye=>{var ze,me;return{id:ye.id,position:new E.Vector3().fromArray(ye.position),normal:new E.Vector3().fromArray(ye.normal),replacement:(ze=ye.replacement)!=null?ze:{},weight:(me=ye.weight)!=null?me:-1}}),fe.render&&(p.render=fe.render),fe.template&&(p.template=fe.template),fe.events&&(p.events=fe.events),fe.enabled===!1&&(p.enabled=fe.enabled),fe.folded===!0&&(p.folded=fe.folded)},X=fe=>{p.intersectObjects=fe,P()},Y=()=>{p.enabled=!0,P()},N=()=>{p.enabled=!1,g.$set({origins:[]}),p.tags.forEach(fe=>{fe.app.$destroy(),fe=null}),p.origins=[],p.tags=[]},H=()=>{p.folded=!1,p.tags.forEach(fe=>{fe.app.$set({folded:p.folded})})},_=()=>{p.folded=!0,p.tags.forEach(fe=>{fe.app.$set({folded:p.folded})})},Q=fe=>{p.tags.forEach(ye=>{ye.id===fe&&ye.app.$set({folded:!1})})},F=fe=>{p.tags.forEach(ye=>{ye.id===fe&&ye.app.$set({folded:!0})})},J=()=>{n.once("renderFrame",B)},Z=()=>{e||(e=n.getElement().parentElement),e&&e.appendChild(u),p.forbidden=!1,i=n.model.bounding.getCenter(new E.Vector3).y,P(),n.on("panoWillArrive",I),n.on("panoArrived",y),n.on("modeChange",M),n.on("cameraUpdate",v)},ee=()=>{A=null,h.disposeAll(),g.$destroy(),p.tags.forEach(fe=>{fe.app.$destroy(),fe=null}),p.origins=[],p.tags=[],n.off("modelLoaded",Z),n.off("renderFrame",B),n.off("panoWillArrive",I),n.off("panoArrived",y),n.off("modeChange",M),n.off("cameraUpdate",v),n.off("dispose",ee),window.removeEventListener("resize",J,!1)};return window.addEventListener("resize",J,!1),(Ye=n==null?void 0:n.model)!=null&&Ye.loaded?Z():n.once("modelLoaded",Z),n.on("dispose",ee),{load:L,setIntersectObjects:X,unfoldAll:H,foldAll:_,unfold:Q,fold:F,enable:Y,disable:N,hooks:m,dispose:ee}};var Si=(n=>(n.SMALL="small",n.MIDLLE="middle",n.LARGE="large",n.EXTRA_LARGE="x-large",n))(Si||{}),sa={},Y0={get exports(){return sa},set exports(n){sa=n}};/*!
532
532
  Copyright (c) 2018 Jed Watson.
533
533
  Licensed under the MIT License (MIT), see
534
534
  http://jedwatson.github.io/classnames
535
- */(function(n){(function(){var t={}.hasOwnProperty;function e(){for(var i=[],s=0;s<arguments.length;s++){var o=arguments[s];if(o){var r=typeof o;if(r==="string"||r==="number")i.push(o);else if(Array.isArray(o)){if(o.length){var a=e.apply(null,o);a&&i.push(a)}}else if(r==="object"){if(o.toString!==Object.prototype.toString&&!o.toString.toString().includes("[native code]")){i.push(o.toString());continue}for(var l in o)t.call(o,l)&&o[l]&&i.push(l)}}}return i.join(" ")}n.exports?(e.default=e,n.exports=e):window.classNames=e})()})(Y0);const at=sa;function U0(n){ue(n,"svelte-1wufped",".item-label-item.svelte-1wufped{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:0}.item-label-item.visible.svelte-1wufped{opacity:1;animation:svelte-1wufped-fadeIn 0.3s ease-in}.item-label-item__text-wrap.svelte-1wufped::before{content:'';position:absolute;width:100%;height:100%;background-color:rgba(0, 0, 0, 0.3);filter:blur(1rem);z-index:-1}.item-label-item__text-wrap.svelte-1wufped{padding:0.375rem 0.375rem 0;position:absolute;height:1.25rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap;line-height:0.625rem;font-size:0.6875rem;font-weight:bold;color:#ffeac0;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center}.item-label-item__text.svelte-1wufped{padding-bottom:0.25rem;border-top:0 solid;border-left:0 solid;border-right:0 solid;border-bottom:0.0625rem solid;-o-border-image:linear-gradient(to right, rgba(234, 208, 154, 0), rgba(234, 208, 154, 100), rgba(234, 208, 154, 0)) 4.5 1 4.5;border-image:linear-gradient(to right, rgba(234, 208, 154, 0), rgba(234, 208, 154, 100), rgba(234, 208, 154, 0)) 4.5 1 4.5}.item-label-item__bar.svelte-1wufped{position:absolute;bottom:0;width:0.0625rem;background-image:linear-gradient(to bottom, rgba(234, 208, 154, 0), rgba(234, 208, 154, 1))}@keyframes svelte-1wufped-fadeIn{from{opacity:0}to{opacity:1}}")}function X0(n){let t,e,i,s=(n[0].name.length>6?`${n[0].name.slice(0,6)}...`:n[0].name)+"",o,r,a,l,c,d;return{c(){t=S("div"),e=S("div"),i=S("span"),o=xe(s),r=$(),a=S("div"),w(i,"class","item-label-item__text svelte-1wufped"),w(e,"class","item-label-item__text-wrap svelte-1wufped"),z(e,"top",`-${n[0].strokeLength+26}px`),w(a,"class","item-label-item__bar svelte-1wufped"),z(a,"height",`${n[0].strokeLength}px`),w(t,"class",l=Qe(at("item-label-item",{visible:n[0].visible}))+" svelte-1wufped"),z(t,"z-index",n[0].zIndex),z(t,"transform",n[0].transform)},m(h,u){B(h,t,u),x(t,e),x(e,i),x(i,o),x(t,r),x(t,a),c||(d=be(i,"click",n[1]),c=!0)},p(h,[u]){u&1&&s!==(s=(h[0].name.length>6?`${h[0].name.slice(0,6)}...`:h[0].name)+"")&&Se(o,s),u&1&&z(e,"top",`-${h[0].strokeLength+26}px`),u&1&&z(a,"height",`${h[0].strokeLength}px`),u&1&&l!==(l=Qe(at("item-label-item",{visible:h[0].visible}))+" svelte-1wufped")&&w(t,"class",l),u&1&&z(t,"z-index",h[0].zIndex),u&1&&z(t,"transform",h[0].transform)},i:q,o:q,d(h){h&&O(t),c=!1,d()}}}function Z0(n,t,e){let{itemLabel:i}=t,{hooks:s}=t;function o(){s.emit("onLabelClick",i)}return n.$$set=r=>{"itemLabel"in r&&e(0,i=r.itemLabel),"hooks"in r&&e(2,s=r.hooks)},[i,o,s]}let J0=class extends le{constructor(t){super(),ae(this,t,Z0,X0,oe,{itemLabel:0,hooks:2},U0)}};function yu(n,t=200){let e;return function(...i){clearTimeout(e),e=setTimeout(()=>{n(...i)},t)}}function q0(n){ue(n,"svelte-f82itz",".item-labels-container.svelte-f82itz{width:100%;height:100%;position:relative}")}function Sc(n,t,e){const i=n.slice();return i[26]=t[e],i}function Tc(n,t){let e,i,s;return i=new J0({props:{itemLabel:t[26],hooks:t[0]}}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(o,r){B(o,e,r),te(i,o,r),s=!0},p(o,r){t=o;const a={};r&2&&(a.itemLabel=t[26]),r&1&&(a.hooks=t[0]),i.$set(a)},i(o){s||(k(i.$$.fragment,o),s=!0)},o(o){j(i.$$.fragment,o),s=!1},d(o){o&&O(e),ie(i,o)}}}function K0(n){let t,e=[],i=new Map,s,o,r=Pe(n[1]);const a=l=>l[26].id;for(let l=0;l<r.length;l+=1){let c=Sc(n,r,l),d=a(c);i.set(d,e[l]=Tc(d,c))}return{c(){t=S("div");for(let l=0;l<e.length;l+=1)e[l].c();w(t,"class","item-labels-container svelte-f82itz"),He(()=>n[9].call(t)),z(t,"opacity",n[4]?1:0)},m(l,c){B(l,t,c);for(let d=0;d<e.length;d+=1)e[d]&&e[d].m(t,null);s=yo(t,n[9].bind(t)),o=!0},p(l,[c]){c&3&&(r=Pe(l[1]),de(),e=Ot(e,c,a,1,l,r,i,t,bi,Tc,null,Sc),he()),c&16&&z(t,"opacity",l[4]?1:0)},i(l){if(!o){for(let c=0;c<r.length;c+=1)k(e[c]);o=!0}},o(l){for(let c=0;c<e.length;c+=1)j(e[c]);o=!1},d(l){l&&O(t);for(let c=0;c<e.length;c+=1)e[c].d();s()}}}let Lc=26,$0=11;function eb(n,t,e){const{Raycaster:i,Vector3:s}=E;let{five:o}=t,{modelOcclusionEnable:r}=t,{itemLabels:a}=t,{hooks:l}=t,{displayStrategyType:c}=t,d=null,h=null,u,m,A=[],p=!0;const g=(_,Q)=>{const F=new i,J=_.camera.position.clone(),Z=new s().fromArray(Q.modelPosition),ee=Z.distanceTo(J);F.set(J.clone(),Z.clone().sub(J).normalize());const[ce]=_.model.intersectRaycaster(F);return!(ce&&ce.distance+1<ee)},v=(_,Q)=>{const F=new s(Q.modelPosition[0],Q.modelPosition[1],Q.modelPosition[2]),J=_.project2d(F),Z=J==null?void 0:J.x,ee=J==null?void 0:J.y;return[Z,ee]},y=_=>`translate(${_[0]}px, ${_[1]}px)`,I=(_,Q)=>A.length===0?!1:!!A.find(J=>_[0]>=J[0]-Q&&_[0]<=J[0]+Q||_[1]>=J[1]-Lc&&_[1]<=J[1]+Lc);function M(_,Q){switch(Q){case Si.SMALL:return Math.ceil(-27.78*_+85);case Si.MIDLLE:return Math.ceil(-38.9*_+130);case Si.LARGE:return Math.ceil(-44.44*_+140);case Si.EXTRA_LARGE:return Math.ceil(-92.59*_+300)}}const D=(_,Q)=>{const F=Q.map(Z=>{const ee=v(_,Z),ce=Z.name.length*$0,se=M(Z.modelPosition[1],c),Ce=(r?g(_,Z):!0)&&!I([ee[0],ee[1]+se],ce);if(!Ce)return ve(G({},Z),{visible:Ce});A.push(ee);const pe=y(ee);return ve(G({},Z),{visible:Ce,transform:pe,strokeLength:se})}),J=F.filter(({visible:Z})=>Z).map(Z=>({itemLabelItem:Z,distance:new s(Z.modelPosition[0],Z.modelPosition[1],Z.modelPosition[2]).clone().distanceTo(_.camera.position)})).sort((Z,ee)=>Z.distance-ee.distance);return F.map(Z=>{const ee=J.findIndex(ce=>ce.itemLabelItem.id===Z.id);return ee!==void 0?ve(G({},Z),{zIndex:ee*10}):Z})},P=()=>{A=[],e(1,h=D(o,h))};Vh(()=>{U()});const V=()=>{e(4,p=!1),L()};bt(()=>{e(1,h=a),d=a,P(),X(),o.on("cameraUpdate",V)});const L=yu(()=>{e(4,p=!0),P()},300),X=()=>{window.addEventListener("resize",N,!1)},U=()=>{d!==a&&(e(1,h=a),d=a,P())},N=()=>{o.once("renderFrame",P)};zt(()=>{o.off("cameraUpdate",V),window.removeEventListener("resize",N,!1)});function H(){u=this.clientWidth,m=this.clientHeight,e(2,u),e(3,m)}return n.$$set=_=>{"five"in _&&e(5,o=_.five),"modelOcclusionEnable"in _&&e(6,r=_.modelOcclusionEnable),"itemLabels"in _&&e(7,a=_.itemLabels),"hooks"in _&&e(0,l=_.hooks),"displayStrategyType"in _&&e(8,c=_.displayStrategyType)},[l,h,u,m,p,o,r,a,c,H]}let tb=class extends le{constructor(t){super(),ae(this,t,eb,K0,oe,{five:5,modelOcclusionEnable:6,itemLabels:7,hooks:0,displayStrategyType:8},q0)}};function ib(n){return n.model_item_labels.map(t=>G({modelPosition:[t.position[0],t.position[1]+t.size[1],t.position[2]]},t))}const nb=(n,t)=>{var u,m;const e={container:document.createElement("div"),data:null,enabled:!0,fiveModeEnabled:void 0,itemLabels:[],wrapper:null,app:void 0,hooks:new je.Subscribe,modelOcclusionEnable:(u=t==null?void 0:t.modelOcclusionEnable)!=null?u:!0,displayStrategyType:(m=t==null?void 0:t.displayStrategyType)!=null?m:Si.SMALL};e.container.setAttribute("class","model-item-label-plugin-container"),e.container.style.cssText=`
535
+ */(function(n){(function(){var t={}.hasOwnProperty;function e(){for(var i=[],s=0;s<arguments.length;s++){var o=arguments[s];if(o){var r=typeof o;if(r==="string"||r==="number")i.push(o);else if(Array.isArray(o)){if(o.length){var a=e.apply(null,o);a&&i.push(a)}}else if(r==="object"){if(o.toString!==Object.prototype.toString&&!o.toString.toString().includes("[native code]")){i.push(o.toString());continue}for(var l in o)t.call(o,l)&&o[l]&&i.push(l)}}}return i.join(" ")}n.exports?(e.default=e,n.exports=e):window.classNames=e})()})(Y0);const at=sa;function U0(n){ue(n,"svelte-1wufped",".item-label-item.svelte-1wufped{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:0}.item-label-item.visible.svelte-1wufped{opacity:1;animation:svelte-1wufped-fadeIn 0.3s ease-in}.item-label-item__text-wrap.svelte-1wufped::before{content:'';position:absolute;width:100%;height:100%;background-color:rgba(0, 0, 0, 0.3);filter:blur(1rem);z-index:-1}.item-label-item__text-wrap.svelte-1wufped{padding:0.375rem 0.375rem 0;position:absolute;height:1.25rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap;line-height:0.625rem;font-size:0.6875rem;font-weight:bold;color:#ffeac0;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center}.item-label-item__text.svelte-1wufped{padding-bottom:0.25rem;border-top:0 solid;border-left:0 solid;border-right:0 solid;border-bottom:0.0625rem solid;-o-border-image:linear-gradient(to right, rgba(234, 208, 154, 0), rgba(234, 208, 154, 100), rgba(234, 208, 154, 0)) 4.5 1 4.5;border-image:linear-gradient(to right, rgba(234, 208, 154, 0), rgba(234, 208, 154, 100), rgba(234, 208, 154, 0)) 4.5 1 4.5}.item-label-item__bar.svelte-1wufped{position:absolute;bottom:0;width:0.0625rem;background-image:linear-gradient(to bottom, rgba(234, 208, 154, 0), rgba(234, 208, 154, 1))}@keyframes svelte-1wufped-fadeIn{from{opacity:0}to{opacity:1}}")}function X0(n){let t,e,i,s=(n[0].name.length>6?`${n[0].name.slice(0,6)}...`:n[0].name)+"",o,r,a,l,c,d;return{c(){t=D("div"),e=D("div"),i=D("span"),o=xe(s),r=$(),a=D("div"),w(i,"class","item-label-item__text svelte-1wufped"),w(e,"class","item-label-item__text-wrap svelte-1wufped"),j(e,"top",`-${n[0].strokeLength+26}px`),w(a,"class","item-label-item__bar svelte-1wufped"),j(a,"height",`${n[0].strokeLength}px`),w(t,"class",l=Qe(at("item-label-item",{visible:n[0].visible}))+" svelte-1wufped"),j(t,"z-index",n[0].zIndex),j(t,"transform",n[0].transform)},m(h,u){O(h,t,u),x(t,e),x(e,i),x(i,o),x(t,r),x(t,a),c||(d=be(i,"click",n[1]),c=!0)},p(h,[u]){u&1&&s!==(s=(h[0].name.length>6?`${h[0].name.slice(0,6)}...`:h[0].name)+"")&&Se(o,s),u&1&&j(e,"top",`-${h[0].strokeLength+26}px`),u&1&&j(a,"height",`${h[0].strokeLength}px`),u&1&&l!==(l=Qe(at("item-label-item",{visible:h[0].visible}))+" svelte-1wufped")&&w(t,"class",l),u&1&&j(t,"z-index",h[0].zIndex),u&1&&j(t,"transform",h[0].transform)},i:q,o:q,d(h){h&&z(t),c=!1,d()}}}function Z0(n,t,e){let{itemLabel:i}=t,{hooks:s}=t;function o(){s.emit("onLabelClick",i)}return n.$$set=r=>{"itemLabel"in r&&e(0,i=r.itemLabel),"hooks"in r&&e(2,s=r.hooks)},[i,o,s]}let J0=class extends le{constructor(t){super(),ae(this,t,Z0,X0,oe,{itemLabel:0,hooks:2},U0)}};function yu(n,t=200){let e;return function(...i){clearTimeout(e),e=setTimeout(()=>{n(...i)},t)}}function q0(n){ue(n,"svelte-f82itz",".item-labels-container.svelte-f82itz{width:100%;height:100%;position:relative}")}function Sc(n,t,e){const i=n.slice();return i[26]=t[e],i}function Tc(n,t){let e,i,s;return i=new J0({props:{itemLabel:t[26],hooks:t[0]}}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(o,r){O(o,e,r),te(i,o,r),s=!0},p(o,r){t=o;const a={};r&2&&(a.itemLabel=t[26]),r&1&&(a.hooks=t[0]),i.$set(a)},i(o){s||(k(i.$$.fragment,o),s=!0)},o(o){T(i.$$.fragment,o),s=!1},d(o){o&&z(e),ie(i,o)}}}function K0(n){let t,e=[],i=new Map,s,o,r=Pe(n[1]);const a=l=>l[26].id;for(let l=0;l<r.length;l+=1){let c=Sc(n,r,l),d=a(c);i.set(d,e[l]=Tc(d,c))}return{c(){t=D("div");for(let l=0;l<e.length;l+=1)e[l].c();w(t,"class","item-labels-container svelte-f82itz"),He(()=>n[9].call(t)),j(t,"opacity",n[4]?1:0)},m(l,c){O(l,t,c);for(let d=0;d<e.length;d+=1)e[d]&&e[d].m(t,null);s=wo(t,n[9].bind(t)),o=!0},p(l,[c]){c&3&&(r=Pe(l[1]),de(),e=Ot(e,c,a,1,l,r,i,t,bi,Tc,null,Sc),he()),c&16&&j(t,"opacity",l[4]?1:0)},i(l){if(!o){for(let c=0;c<r.length;c+=1)k(e[c]);o=!0}},o(l){for(let c=0;c<e.length;c+=1)T(e[c]);o=!1},d(l){l&&z(t);for(let c=0;c<e.length;c+=1)e[c].d();s()}}}let Lc=26,$0=11;function eb(n,t,e){const{Raycaster:i,Vector3:s}=E;let{five:o}=t,{modelOcclusionEnable:r}=t,{itemLabels:a}=t,{hooks:l}=t,{displayStrategyType:c}=t,d=null,h=null,u,m,A=[],p=!0;const g=(_,Q)=>{const F=new i,J=_.camera.position.clone(),Z=new s().fromArray(Q.modelPosition),ee=Z.distanceTo(J);F.set(J.clone(),Z.clone().sub(J).normalize());const[ce]=_.model.intersectRaycaster(F);return!(ce&&ce.distance+1<ee)},v=(_,Q)=>{const F=new s(Q.modelPosition[0],Q.modelPosition[1],Q.modelPosition[2]),J=_.project2d(F),Z=J==null?void 0:J.x,ee=J==null?void 0:J.y;return[Z,ee]},y=_=>`translate(${_[0]}px, ${_[1]}px)`,I=(_,Q)=>A.length===0?!1:!!A.find(J=>_[0]>=J[0]-Q&&_[0]<=J[0]+Q||_[1]>=J[1]-Lc&&_[1]<=J[1]+Lc);function M(_,Q){switch(Q){case Si.SMALL:return Math.ceil(-27.78*_+85);case Si.MIDLLE:return Math.ceil(-38.9*_+130);case Si.LARGE:return Math.ceil(-44.44*_+140);case Si.EXTRA_LARGE:return Math.ceil(-92.59*_+300)}}const B=(_,Q)=>{const F=Q.map(Z=>{const ee=v(_,Z),ce=Z.name.length*$0,se=M(Z.modelPosition[1],c),Ce=(r?g(_,Z):!0)&&!I([ee[0],ee[1]+se],ce);if(!Ce)return ve(G({},Z),{visible:Ce});A.push(ee);const pe=y(ee);return ve(G({},Z),{visible:Ce,transform:pe,strokeLength:se})}),J=F.filter(({visible:Z})=>Z).map(Z=>({itemLabelItem:Z,distance:new s(Z.modelPosition[0],Z.modelPosition[1],Z.modelPosition[2]).clone().distanceTo(_.camera.position)})).sort((Z,ee)=>Z.distance-ee.distance);return F.map(Z=>{const ee=J.findIndex(ce=>ce.itemLabelItem.id===Z.id);return ee!==void 0?ve(G({},Z),{zIndex:ee*10}):Z})},P=()=>{A=[],e(1,h=B(o,h))};Vh(()=>{Y()});const V=()=>{e(4,p=!1),L()};bt(()=>{e(1,h=a),d=a,P(),X(),o.on("cameraUpdate",V)});const L=yu(()=>{e(4,p=!0),P()},300),X=()=>{window.addEventListener("resize",N,!1)},Y=()=>{d!==a&&(e(1,h=a),d=a,P())},N=()=>{o.once("renderFrame",P)};zt(()=>{o.off("cameraUpdate",V),window.removeEventListener("resize",N,!1)});function H(){u=this.clientWidth,m=this.clientHeight,e(2,u),e(3,m)}return n.$$set=_=>{"five"in _&&e(5,o=_.five),"modelOcclusionEnable"in _&&e(6,r=_.modelOcclusionEnable),"itemLabels"in _&&e(7,a=_.itemLabels),"hooks"in _&&e(0,l=_.hooks),"displayStrategyType"in _&&e(8,c=_.displayStrategyType)},[l,h,u,m,p,o,r,a,c,H]}let tb=class extends le{constructor(t){super(),ae(this,t,eb,K0,oe,{five:5,modelOcclusionEnable:6,itemLabels:7,hooks:0,displayStrategyType:8},q0)}};function ib(n){return n.model_item_labels.map(t=>G({modelPosition:[t.position[0],t.position[1]+t.size[1],t.position[2]]},t))}const nb=(n,t)=>{var u,m;const e={container:document.createElement("div"),data:null,enabled:!0,fiveModeEnabled:void 0,itemLabels:[],wrapper:null,app:void 0,hooks:new je.Subscribe,modelOcclusionEnable:(u=t==null?void 0:t.modelOcclusionEnable)!=null?u:!0,displayStrategyType:(m=t==null?void 0:t.displayStrategyType)!=null?m:Si.SMALL};e.container.setAttribute("class","model-item-label-plugin-container"),e.container.style.cssText=`
536
536
  position: absolute;
537
537
  left: 0;
538
538
  top: 0;
539
539
  width: 100%;
540
540
  height: 100%;
541
541
  z-index: 5;
542
- `,e.container.style.pointerEvents="none";const i=A=>(e.wrapper=A,A.appendChild(e.container),l(),!0),s=A=>{e.itemLabels=ib(A),l()},o=()=>(e.enabled||(e.enabled=!0,l()),!0),r=()=>(e.enabled&&(e.enabled=!1,l()),!0),a=()=>{d(),e.container.remove()},l=()=>{var A;if(e.wrapper){if(!e.enabled||!e.fiveModeEnabled){(A=e.app)==null||A.$destroy(),e.app=void 0;return}e.app?e.app.$set({five:n,itemLabels:e.itemLabels}):e.app=new tb({target:e.container,props:{five:n,modelOcclusionEnable:e.modelOcclusionEnable,itemLabels:e.itemLabels,hooks:e.hooks,displayStrategyType:e.displayStrategyType}})}},c=()=>{n.on("modeChange",h),n.once("dispose",a)},d=()=>{n.off("modeChange",h)},h=A=>{if(e.enabled){if(A!==je.Five.Mode.Floorplan){e.fiveModeEnabled=!1,l();return}n.once("initAnimationEnded",()=>{e.fiveModeEnabled=n.currentMode===je.Five.Mode.Floorplan,l()})}};return c(),{appendTo:i,load:s,enable:o,disable:r,dispose:a,hooks:e.hooks}},sb={name:"ModelItemLabelPlugin",version:0};var sn=(n=>(n.TOP_LEFT="topLeft",n.TOP_RIGHT="topRight",n.BOTTOM_LEFT="bottomLeft",n.BOTTOM_RIGHT="bottomRight",n))(sn||{});function ob(n){if(n.length===0)return[];if(Array.isArray(n[0]))return n;let t=[];return n.forEach(e=>{const i=[e[sn.TOP_LEFT],e[sn.BOTTOM_LEFT],e[sn.BOTTOM_RIGHT],e[sn.TOP_RIGHT]];t.push(i)}),t}const rb="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAYAAADFw8lbAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAKqADAAQAAAABAAAAKgAAAADUGqULAAAB0ElEQVRYCe2WSUoEQRBFLVHEiVZU1I03cKW38SSewRt4A5fiTty5cQIFR9pZQWkcUNSe2/Z9yISiSGxRkUAy4BGZSVX168gistraYsQKxArECsQKxApYqkDyU5lmsznMM+ZgAGpQhaUkSRbINgLJCXiCBtSgAkVYtGGIBTKj8AgKSVahDNvQa0IUkUG4Bx91BpLdBTOS/cgUIB3a+gMwI9mFzE3a0I3z5B4r292JzGVA8tSSZILMcUDyzIykthOZvYDk+V9Ktmz4yGzhOhV4/+5YU4N/hzqo0StX3Fg5TcnNlYvgs8bPsM4hkScHoyO46haRnGEYktQVI+4ypUYKyXtxyUu27JCceAMJvjo0HoM5CEZ7cPX7i013q3IWVV5r2aw/2TK+svWbPGU68KQCa6pYeus1V0X99quSfvtVSc39lmfz2mdbz32tg1dAJ0421AVs9E7/FxBSezrMmjI/gm5/nYmMkBq+TqBs7LNgTlZH6EnWlPmORdk+pHQipUNfTxtg7p3NIXWRMvXfoqusmXsNhpC6crIS1Zf9C6yAOdlxpK5BW18CiT7A/G93gE+P0FY/RoO+RWqS62YhB2r4YhlixArECsQKxArECvzjCnwAOr0wF44ggHAAAAAASUVORK5CYII=",Ga="data:image/png;base64,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",oa="data:image/png;base64,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",ab="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAABcVBMVEUAAAAAAAD////////+/v45OTn////////39/fp6enPz8/7+/vw8PD+/v7x8fHc3NzHx8f////////+/v77+/vr6+v////7+/v5+fn////z8/P////////q6uqgoKD+/v79/f3m5ub+/v7////////////////39/f39/f////z8/P////t7e3s7Oz29vb////5+fn////h4eH////g4ODV1dX////////BwcH///////////+Ojo5zc3MlJSX////////////////////////7+/v////////////v7+/u7u7n5+f////39/f////09PT6+vr09PT+/v76+vr////5+fnv7+/09PTk5OT////////////////Jycn///++vr7///////+0tLT///9TU1P///8SEhL////////+/v76+vr////8/Pz39/ft7e3t7e36+vr////////X19fV1dX///+xsbF9fX1iYmL///////+K8mOEAAAAenRSTlMaAIDy8CD41cWRX9uk7Kl1VVEw6dWT/M/NvKyVkY475eWIgx0Z39rHv7axnZyZmIuKhn56emZjX1FEPTU0Kx4PCAX69fTgxcKkopWL7crJuri2sa6rnIyHhX54bVtZVU9NSUcsJSIcFROno6Hcwp+ekHVxbWhnRC8nDLc9s8oAAAOGSURBVEjHpdd3X9pAGAfwkBBDAoQmBJmWvUWWiIDIHoJb66x7a4d78Op7pBQ1J5DY33987vnyXEIu3CGy/0hvnDthM+l0hj3JScSudDKOdhNPpl1i8Ut624Gi6+trI3zW1tcdqGM7/SIC5/ZRR2SNJEm7JkHt7FAJjR18WIs40P3cAFxIOaIRna6ZOHxGunk+TDR1ukjUkSr0w86bcKShiz1OI4JMP8YAD9+4emM2Gm407IfIhzm0NxrhKNsLH4SvQ+RktyvUfZIMXYcPPsSFCcvY6EYW6ZPsxuiYZaLwAW5bDY70Da5paxjvm8d+UcjAUL/GzPtCnDF/mwFWhJ75Zs68x05gxxFRGQfa+RYXokHVCC4O4yOqYLTwBjNB+ncWEZnsbzrIvOLz4CW9g4jODn0ZPO/iZN0UmhaPp0Omq+Q/nLu6NO0hErJnurjKdTBzEdAhkqILXDAdbFkJ7EnDe4EVy198srpiwhE4X1RKDFOqviBwcNPK6gmPmeWlGDz+VdHqRPEVHo0tLTM8RpcX4G+flLe6kU/Cs1pYRnm8uriQhfoC+0ZDvbMLi6ttfO5fDCDCKFrvooAKAov+c4BZvy8EzaolCHRdIZ+fBThl9G0Ih1RCrBJWbPiMKYAZ409oMSqFWAktzJ9GBuDvRoVGOIQJMSas0CiM39u45v0M9tbaeLc6F5M+7dhcbRfgg+pcU/oNa85VDwDOzBtmpP9UKsN8BuCzeb1P+kPi08+fASyr6fVPUh/PJ72+xj/bZk5PSV0YlJ4z83iC4EipS5LkiAkeHxGcQerLwMARRzyW+QklhUgKpST8nXfYg+fHkjS89MPz0MFnhKdCSWpc8RBnPAZB3RUvLt7i3oob7f5juDzuikY81tjcHlcHg9xabdyUWDvF2ay3slecr1ptimNx9lhhs1bzXQxy5NZa6VMx9pS2Wt1H77cVjFartYvBdlDICDc0cbVa3Twd2NcOyuLwVqo+K1ebjgdcr0k+O1uXwThfl8vlhqm+99kASup5GINsYhhmG8d7UXzcBgo2e21cd9WlUll5/7G958ql8uxu7y0zS5SGSkOGBA51TRiGQAi232Y9v4kVQZGavpt6c6l3tLpNsc38gGOC01IeLg4Xi8NaLz1KkqO0VzvcTrFscYo4oLjiRAsKEXeJPRqxW0bsFWLGLVbiocyZSm5vbW0nU9BsIfyp/AGqAvfOkBaFawAAAABJRU5ErkJggg==",lb=(n,{videoElement:t})=>{const e={videoMeshes:[],videoTextureEnabled:!1,videoSource:"",rectPoints:[],enabled:!1,videoElement:t},i=bo(n),s=new Map,o=v=>{e.videoTexture&&(e.videoTexture.image.muted=v)},r=()=>e.videoTexture?e.videoTexture.image.muted:!0,a=()=>{if(e.enabled||!e.videoTexture)return;e.enabled=!0,e.videoMeshes=c(),e.videoMeshes.forEach(y=>n.scene.add(y));const v=()=>{if(!e.videoTexture)return;const y=()=>{var I;e.videoTexture&&((I=e.videoTexture)==null||I.image.removeEventListener("timeupdate",y),e.videoTextureEnabled=!0,e.videoMeshes.forEach(M=>{M.material.map!==e.videoTexture&&(M.material.map=e.videoTexture)}),n.needsRender=!0)};e.videoTexture.image.addEventListener("timeupdate",y),e.videoTexture&&e.videoMeshes.length&&(e.videoTexture.image.play(),e.videoTexture.image.onplay=()=>{i.hide()},e.videoTexture.image.onpause=()=>{i.show()},e.videoTexture.image.onclick=()=>{e.videoTexture.image.muted=!1,e.videoTexture.image.play()})};if(n.model.loaded)v();else return n.once("modelLoaded",()=>v())},l=()=>{e.enabled&&(e.enabled=!1,e.videoMeshes.forEach(v=>{v.geometry.dispose(),v.material.dispose(),n.scene.remove(v),e.videoTexture&&e.videoTexture.image.pause()}),e.videoMeshes=[],n.needsRender=!0)},c=()=>e.rectPoints.map((v,y)=>{const I=new E.BufferGeometry,M=128,D=[];D.push(...v[0].toArray());for(let H=1;H<M;H++)D.push(v[0].x+(v[1].x-v[0].x)*H/M,v[0].y+(v[1].y-v[0].y)*H/M,v[0].z+(v[1].z-v[0].z)*H/M);D.push(...v[1].toArray()),D.push(...v[2].toArray());for(let H=1;H<M;H++)D.push(v[2].x+(v[3].x-v[2].x)*H/M,v[2].y+(v[3].y-v[2].y)*H/M,v[2].z+(v[3].z-v[2].z)*H/M);D.push(...v[3].toArray());const P=[];P.push(0,1);for(let H=1;H<M;H++)P.push(0,1-H/M);P.push(0,0),P.push(1,0);for(let H=1;H<M;H++)P.push(1,H/M);P.push(1,1);const V=[];for(let H=0;H<M;H++)V.push(H,H+1,M*2-H,H,M*2-H,M*2+1-H);I.setAttribute("position",new E.BufferAttribute(new Float32Array(D),3)),I.setAttribute("uv",new E.BufferAttribute(new Float32Array(P),2)),I.setIndex(new E.BufferAttribute(new Uint32Array(V),1));const L=new E.MeshBasicMaterial({map:e.videoTextureEnabled?e.videoTexture:e.imageTexture,side:E.DoubleSide}),X=new E.Mesh(I,L);X.renderOrder=1,X.name=`ModelTVVideoPlugin-${y}-${performance.now()}`;const U=[v[1],v[2],v[3],v[0]],N=i.create3DDomContainer(U);if(N!=null&&N.container){const H=document.createElement("div");H.classList.add("play-icon"),H.style.width="100%",H.style.height="100%",H.style.display="flex",H.style.justifyContent="center",H.style.alignItems="center",H.style.pointerEvents="none",N.container.appendChild(H);const _=document.createElement("img");_.src=Ga,_.style.width="200px",_.style.pointerEvents="auto",_.onclick=()=>{e.videoTexture.image.muted=!1,e.videoTexture.image.play()},H.appendChild(_),s.set(X,N)}return X}),d=v=>{const y=new E.TextureLoader().load(v);return y.minFilter=E.LinearFilter,y.magFilter=E.LinearFilter,y.format=E.RGBFormat,y},h=(v,y)=>{let I=y;return new Promise((M,D)=>{const P=new XMLHttpRequest;P.onreadystatechange=()=>{if(P.readyState===4)if(P.status===200){const V=window.URL||window.webkitURL;I=I||document.createElement("video"),I.crossOrigin="anonymous",I.muted=!0,I.loop=!0,I.playsInline=!0,I.src=V.createObjectURL(P.response);const L=new E.VideoTexture(I);L.minFilter=E.LinearFilter,L.magFilter=E.LinearFilter,L.format=E.RGBFormat,M(Object.assign(L,{videoSource:v}))}else D(new Error("Video download Error: "+P.status))},P.onerror=V=>D(V),P.open("GET",v),P.responseType="blob",P.send()})},u=(v,y)=>W(exports,null,function*(){const{video_src:I,video_poster_src:M,points:D}=v;e.videoSource=I,e.rectPoints=ob(D).map(P=>P.map(({x:V,y:L,z:X})=>new E.Vector3(V,L,X))),e.imageTexture=d(M),y&&(e.videoElement=y),e.videoTexture=yield h(e.videoSource,e.videoElement),e.enabled=!!v.enable,e.enabled&&a()}),m=v=>{if(!e.enabled)return;const y=e.videoMeshes;if(!(!y||v.intersectObjects(y).length===0))return e.videoTexture&&(e.videoTexture.image.paused||e.videoTexture.image.pause()),!1},A=v=>{v==="Floorplan"?i.hide():i.show()},p=()=>{if(!e.enabled)return;const v=n.camera.position;if(s.forEach((y,I)=>{const M=y.css3DObject.position.clone(),D=M.clone().sub(v).normalize(),P=new E.Raycaster(v,D),V=n.model.intersectRaycaster(P)[0],L=M.distanceTo(v),X=.01;V&&V.distance+X<L?y.hide():y.show()}),!r()){const y=e.rectPoints.find(I=>{const M=I[0].clone().add(I[1]).add(I[2]).add(I[3]).divideScalar(4);return I.map(D=>D.clone().add(M).divideScalar(2)).filter(D=>{const P=D.distanceTo(v),V=new E.Raycaster(v,D.clone().sub(v).normalize()),L=n.model.intersectRaycaster(V)[0],X=.01;return!(L&&L.distance+X<P)}).length>=2});(!y||y.length===0)&&o(!0)}},g=()=>{l(),e.videoTexture=void 0,n.off("modeChange",A),n.off("wantsTapGesture",m),n.off("panoArrived",p),n.off("renderFrame",()=>{e.videoMeshes.forEach(v=>{v&&(v.needsRender=!0)})})};return n.on("modeChange",A),n.on("wantsTapGesture",m),n.on("panoArrived",p),n.on("renderFrame",()=>{e.videoMeshes.forEach(v=>{v&&(v.needsRender=!0)})}),{enable:a,disable:l,load:u,dispose:g,state:e,css3DRenderPlugin:i}};var Ti=(n=>(n.SMALL="small",n.MIDLLE="middle",n.LARGE="large",n.EXTRA_LARGE="x-large",n))(Ti||{});function cb(n){ue(n,"svelte-1jhufeh",`.item-label-item.svelte-1jhufeh.svelte-1jhufeh{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:svelte-1jhufeh-fadeIn .3s ease-in}.item-label-item.fold.svelte-1jhufeh>.item-label-item__text-wrap.svelte-1jhufeh{visibility:hidden}.item-label-item.fold.svelte-1jhufeh>.item-label-item__bar.anchor.svelte-1jhufeh{visibility:hidden}.item-label-item.fold.svelte-1jhufeh>.item-label-item__bar.anchor.svelte-1jhufeh:after{visibility:visible}.item-label-item__text-wrap.svelte-1jhufeh.svelte-1jhufeh{height:-moz-fit-content;height:fit-content;padding:0.75rem 1.25rem 0.75rem 0.75rem;position:absolute;width:-moz-max-content;width:max-content;max-width:29.5625rem;min-height:5.75rem;background-image:linear-gradient(269deg, rgba(0, 0, 0, 0.50) 0%, rgba(0, 0, 0, 0.60) 49%, rgba(31, 38, 46, 0.70) 100%);border:0.09375rem solid rgba(255, 255, 255, .65);border-radius:0.1875rem;color:white;transform:translate(-50%, 0);display:flex;justify-content:flex-start;align-items:center;box-sizing:border-box;overflow:hidden;pointer-events:all}.item-label-item__custom.svelte-1jhufeh.svelte-1jhufeh{padding:0;max-width:unset;min-height:unset;background-image:unset;border:0;border-radius:0}.icon-wrap.svelte-1jhufeh.svelte-1jhufeh{width:4.25rem;height:100%;display:flex;justify-content:center;align-content:center}.icon.svelte-1jhufeh.svelte-1jhufeh{width:4.25rem;height:4.25rem;background-repeat:no-repeat;background-size:contain;background-position:center}.item-label-text.svelte-1jhufeh.svelte-1jhufeh{margin-left:0.75rem;padding-left:0.75rem;min-height:4.25rem;height:auto;display:flex;flex-flow:column;justify-content:space-around;align-content:flex-start;border-left:solid rgba(255, 255, 255, .2) 0.0625rem;border-top:solid rgba(255, 255, 255, .2) 0;border-right:solid rgba(255, 255, 255, .2) 0;border-bottom:solid rgba(255, 255, 255, .2) 0;pointer-events:auto}.item-model.svelte-1jhufeh.svelte-1jhufeh{white-space:nowrap;font-size:1.375rem;font-weight:bold;line-height:1.875rem}.item-name.svelte-1jhufeh.svelte-1jhufeh{height:auto;word-wrap:break-word;word-break:break-all;font-size:1.25rem;line-height:1.75rem}.item-label-item__bar.svelte-1jhufeh.svelte-1jhufeh{position:absolute;bottom:0;width:0.1875rem;background-image:linear-gradient(to bottom, white, rgba(255, 255, 255, 0));box-shadow:0 0.125rem 0.5rem 0 rgba(0, 0, 0, 0.20);pointer-events:none}.item-label-item__bar.anchor.svelte-1jhufeh.svelte-1jhufeh:after{content:'';position:absolute;bottom:0;width:1.5rem;height:1.5rem;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAABcVBMVEUAAAAAAAD////////+/v45OTn////////39/fp6enPz8/7+/vw8PD+/v7x8fHc3NzHx8f////////+/v77+/vr6+v////7+/v5+fn////z8/P////////q6uqgoKD+/v79/f3m5ub+/v7////////////////39/f39/f////z8/P////t7e3s7Oz29vb////5+fn////h4eH////g4ODV1dX////////BwcH///////////+Ojo5zc3MlJSX////////////////////////7+/v////////////v7+/u7u7n5+f////39/f////09PT6+vr09PT+/v76+vr////5+fnv7+/09PTk5OT////////////////Jycn///++vr7///////+0tLT///9TU1P///8SEhL////////+/v76+vr////8/Pz39/ft7e3t7e36+vr////////X19fV1dX///+xsbF9fX1iYmL///////+K8mOEAAAAenRSTlMaAIDy8CD41cWRX9uk7Kl1VVEw6dWT/M/NvKyVkY475eWIgx0Z39rHv7axnZyZmIuKhn56emZjX1FEPTU0Kx4PCAX69fTgxcKkopWL7crJuri2sa6rnIyHhX54bVtZVU9NSUcsJSIcFROno6Hcwp+ekHVxbWhnRC8nDLc9s8oAAAOGSURBVEjHpdd3X9pAGAfwkBBDAoQmBJmWvUWWiIDIHoJb66x7a4d78Op7pBQ1J5DY33987vnyXEIu3CGy/0hvnDthM+l0hj3JScSudDKOdhNPpl1i8Ut624Gi6+trI3zW1tcdqGM7/SIC5/ZRR2SNJEm7JkHt7FAJjR18WIs40P3cAFxIOaIRna6ZOHxGunk+TDR1ukjUkSr0w86bcKShiz1OI4JMP8YAD9+4emM2Gm407IfIhzm0NxrhKNsLH4SvQ+RktyvUfZIMXYcPPsSFCcvY6EYW6ZPsxuiYZaLwAW5bDY70Da5paxjvm8d+UcjAUL/GzPtCnDF/mwFWhJ75Zs68x05gxxFRGQfa+RYXokHVCC4O4yOqYLTwBjNB+ncWEZnsbzrIvOLz4CW9g4jODn0ZPO/iZN0UmhaPp0Omq+Q/nLu6NO0hErJnurjKdTBzEdAhkqILXDAdbFkJ7EnDe4EVy198srpiwhE4X1RKDFOqviBwcNPK6gmPmeWlGDz+VdHqRPEVHo0tLTM8RpcX4G+flLe6kU/Cs1pYRnm8uriQhfoC+0ZDvbMLi6ttfO5fDCDCKFrvooAKAov+c4BZvy8EzaolCHRdIZ+fBThl9G0Ih1RCrBJWbPiMKYAZ409oMSqFWAktzJ9GBuDvRoVGOIQJMSas0CiM39u45v0M9tbaeLc6F5M+7dhcbRfgg+pcU/oNa85VDwDOzBtmpP9UKsN8BuCzeb1P+kPi08+fASyr6fVPUh/PJ72+xj/bZk5PSV0YlJ4z83iC4EipS5LkiAkeHxGcQerLwMARRzyW+QklhUgKpST8nXfYg+fHkjS89MPz0MFnhKdCSWpc8RBnPAZB3RUvLt7i3oob7f5juDzuikY81tjcHlcHg9xabdyUWDvF2ay3slecr1ptimNx9lhhs1bzXQxy5NZa6VMx9pS2Wt1H77cVjFartYvBdlDICDc0cbVa3Twd2NcOyuLwVqo+K1ebjgdcr0k+O1uXwThfl8vlhqm+99kASup5GINsYhhmG8d7UXzcBgo2e21cd9WlUll5/7G958ql8uxu7y0zS5SGSkOGBA51TRiGQAi232Y9v4kVQZGavpt6c6l3tLpNsc38gGOC01IeLg4Xi8NaLz1KkqO0VzvcTrFscYo4oLjiRAsKEXeJPRqxW0bsFWLGLVbiocyZSm5vbW0nU9BsIfyp/AGqAvfOkBaFawAAAABJRU5ErkJggg==');background-position:center;background-size:contain;transform:translate(-0.65625rem, 50%)}@keyframes svelte-1jhufeh-fadeIn{from{opacity:0
542
+ `,e.container.style.pointerEvents="none";const i=A=>(e.wrapper=A,A.appendChild(e.container),l(),!0),s=A=>{e.itemLabels=ib(A),l()},o=()=>(e.enabled||(e.enabled=!0,l()),!0),r=()=>(e.enabled&&(e.enabled=!1,l()),!0),a=()=>{d(),e.container.remove()},l=()=>{var A;if(e.wrapper){if(!e.enabled||!e.fiveModeEnabled){(A=e.app)==null||A.$destroy(),e.app=void 0;return}e.app?e.app.$set({five:n,itemLabels:e.itemLabels}):e.app=new tb({target:e.container,props:{five:n,modelOcclusionEnable:e.modelOcclusionEnable,itemLabels:e.itemLabels,hooks:e.hooks,displayStrategyType:e.displayStrategyType}})}},c=()=>{n.on("modeChange",h),n.once("dispose",a)},d=()=>{n.off("modeChange",h)},h=A=>{if(e.enabled){if(A!==je.Five.Mode.Floorplan){e.fiveModeEnabled=!1,l();return}n.once("initAnimationEnded",()=>{e.fiveModeEnabled=n.currentMode===je.Five.Mode.Floorplan,l()})}};return c(),{appendTo:i,load:s,enable:o,disable:r,dispose:a,hooks:e.hooks}},sb={name:"ModelItemLabelPlugin",version:0};var sn=(n=>(n.TOP_LEFT="topLeft",n.TOP_RIGHT="topRight",n.BOTTOM_LEFT="bottomLeft",n.BOTTOM_RIGHT="bottomRight",n))(sn||{});function ob(n){if(n.length===0)return[];if(Array.isArray(n[0]))return n;let t=[];return n.forEach(e=>{const i=[e[sn.TOP_LEFT],e[sn.BOTTOM_LEFT],e[sn.BOTTOM_RIGHT],e[sn.TOP_RIGHT]];t.push(i)}),t}const rb="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAYAAADFw8lbAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAKqADAAQAAAABAAAAKgAAAADUGqULAAAB0ElEQVRYCe2WSUoEQRBFLVHEiVZU1I03cKW38SSewRt4A5fiTty5cQIFR9pZQWkcUNSe2/Z9yISiSGxRkUAy4BGZSVX168gistraYsQKxArECsQKxApYqkDyU5lmsznMM+ZgAGpQhaUkSRbINgLJCXiCBtSgAkVYtGGIBTKj8AgKSVahDNvQa0IUkUG4Bx91BpLdBTOS/cgUIB3a+gMwI9mFzE3a0I3z5B4r292JzGVA8tSSZILMcUDyzIykthOZvYDk+V9Ktmz4yGzhOhV4/+5YU4N/hzqo0StX3Fg5TcnNlYvgs8bPsM4hkScHoyO46haRnGEYktQVI+4ypUYKyXtxyUu27JCceAMJvjo0HoM5CEZ7cPX7i013q3IWVV5r2aw/2TK+svWbPGU68KQCa6pYeus1V0X99quSfvtVSc39lmfz2mdbz32tg1dAJ0421AVs9E7/FxBSezrMmjI/gm5/nYmMkBq+TqBs7LNgTlZH6EnWlPmORdk+pHQipUNfTxtg7p3NIXWRMvXfoqusmXsNhpC6crIS1Zf9C6yAOdlxpK5BW18CiT7A/G93gE+P0FY/RoO+RWqS62YhB2r4YhlixArECsQKxArECvzjCnwAOr0wF44ggHAAAAAASUVORK5CYII=",Ga="data:image/png;base64,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",oa="data:image/png;base64,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",ab="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAABcVBMVEUAAAAAAAD////////+/v45OTn////////39/fp6enPz8/7+/vw8PD+/v7x8fHc3NzHx8f////////+/v77+/vr6+v////7+/v5+fn////z8/P////////q6uqgoKD+/v79/f3m5ub+/v7////////////////39/f39/f////z8/P////t7e3s7Oz29vb////5+fn////h4eH////g4ODV1dX////////BwcH///////////+Ojo5zc3MlJSX////////////////////////7+/v////////////v7+/u7u7n5+f////39/f////09PT6+vr09PT+/v76+vr////5+fnv7+/09PTk5OT////////////////Jycn///++vr7///////+0tLT///9TU1P///8SEhL////////+/v76+vr////8/Pz39/ft7e3t7e36+vr////////X19fV1dX///+xsbF9fX1iYmL///////+K8mOEAAAAenRSTlMaAIDy8CD41cWRX9uk7Kl1VVEw6dWT/M/NvKyVkY475eWIgx0Z39rHv7axnZyZmIuKhn56emZjX1FEPTU0Kx4PCAX69fTgxcKkopWL7crJuri2sa6rnIyHhX54bVtZVU9NSUcsJSIcFROno6Hcwp+ekHVxbWhnRC8nDLc9s8oAAAOGSURBVEjHpdd3X9pAGAfwkBBDAoQmBJmWvUWWiIDIHoJb66x7a4d78Op7pBQ1J5DY33987vnyXEIu3CGy/0hvnDthM+l0hj3JScSudDKOdhNPpl1i8Ut624Gi6+trI3zW1tcdqGM7/SIC5/ZRR2SNJEm7JkHt7FAJjR18WIs40P3cAFxIOaIRna6ZOHxGunk+TDR1ukjUkSr0w86bcKShiz1OI4JMP8YAD9+4emM2Gm407IfIhzm0NxrhKNsLH4SvQ+RktyvUfZIMXYcPPsSFCcvY6EYW6ZPsxuiYZaLwAW5bDY70Da5paxjvm8d+UcjAUL/GzPtCnDF/mwFWhJ75Zs68x05gxxFRGQfa+RYXokHVCC4O4yOqYLTwBjNB+ncWEZnsbzrIvOLz4CW9g4jODn0ZPO/iZN0UmhaPp0Omq+Q/nLu6NO0hErJnurjKdTBzEdAhkqILXDAdbFkJ7EnDe4EVy198srpiwhE4X1RKDFOqviBwcNPK6gmPmeWlGDz+VdHqRPEVHo0tLTM8RpcX4G+flLe6kU/Cs1pYRnm8uriQhfoC+0ZDvbMLi6ttfO5fDCDCKFrvooAKAov+c4BZvy8EzaolCHRdIZ+fBThl9G0Ih1RCrBJWbPiMKYAZ409oMSqFWAktzJ9GBuDvRoVGOIQJMSas0CiM39u45v0M9tbaeLc6F5M+7dhcbRfgg+pcU/oNa85VDwDOzBtmpP9UKsN8BuCzeb1P+kPi08+fASyr6fVPUh/PJ72+xj/bZk5PSV0YlJ4z83iC4EipS5LkiAkeHxGcQerLwMARRzyW+QklhUgKpST8nXfYg+fHkjS89MPz0MFnhKdCSWpc8RBnPAZB3RUvLt7i3oob7f5juDzuikY81tjcHlcHg9xabdyUWDvF2ay3slecr1ptimNx9lhhs1bzXQxy5NZa6VMx9pS2Wt1H77cVjFartYvBdlDICDc0cbVa3Twd2NcOyuLwVqo+K1ebjgdcr0k+O1uXwThfl8vlhqm+99kASup5GINsYhhmG8d7UXzcBgo2e21cd9WlUll5/7G958ql8uxu7y0zS5SGSkOGBA51TRiGQAi232Y9v4kVQZGavpt6c6l3tLpNsc38gGOC01IeLg4Xi8NaLz1KkqO0VzvcTrFscYo4oLjiRAsKEXeJPRqxW0bsFWLGLVbiocyZSm5vbW0nU9BsIfyp/AGqAvfOkBaFawAAAABJRU5ErkJggg==",lb=(n,{videoElement:t})=>{const e={videoMeshes:[],videoTextureEnabled:!1,videoSource:"",rectPoints:[],enabled:!1,videoElement:t},i=yo(n),s=new Map,o=v=>{e.videoTexture&&(e.videoTexture.image.muted=v)},r=()=>e.videoTexture?e.videoTexture.image.muted:!0,a=()=>{if(e.enabled||!e.videoTexture)return;e.enabled=!0,e.videoMeshes=c(),e.videoMeshes.forEach(y=>n.scene.add(y));const v=()=>{if(!e.videoTexture)return;const y=()=>{var I;e.videoTexture&&((I=e.videoTexture)==null||I.image.removeEventListener("timeupdate",y),e.videoTextureEnabled=!0,e.videoMeshes.forEach(M=>{M.material.map!==e.videoTexture&&(M.material.map=e.videoTexture)}),n.needsRender=!0)};e.videoTexture.image.addEventListener("timeupdate",y),e.videoTexture&&e.videoMeshes.length&&(e.videoTexture.image.play(),e.videoTexture.image.onplay=()=>{i.hide()},e.videoTexture.image.onpause=()=>{i.show()},e.videoTexture.image.onclick=()=>{e.videoTexture.image.muted=!1,e.videoTexture.image.play()})};if(n.model.loaded)v();else return n.once("modelLoaded",()=>v())},l=()=>{e.enabled&&(e.enabled=!1,e.videoMeshes.forEach(v=>{v.geometry.dispose(),v.material.dispose(),n.scene.remove(v),e.videoTexture&&e.videoTexture.image.pause()}),e.videoMeshes=[],n.needsRender=!0)},c=()=>e.rectPoints.map((v,y)=>{const I=new E.BufferGeometry,M=128,B=[];B.push(...v[0].toArray());for(let H=1;H<M;H++)B.push(v[0].x+(v[1].x-v[0].x)*H/M,v[0].y+(v[1].y-v[0].y)*H/M,v[0].z+(v[1].z-v[0].z)*H/M);B.push(...v[1].toArray()),B.push(...v[2].toArray());for(let H=1;H<M;H++)B.push(v[2].x+(v[3].x-v[2].x)*H/M,v[2].y+(v[3].y-v[2].y)*H/M,v[2].z+(v[3].z-v[2].z)*H/M);B.push(...v[3].toArray());const P=[];P.push(0,1);for(let H=1;H<M;H++)P.push(0,1-H/M);P.push(0,0),P.push(1,0);for(let H=1;H<M;H++)P.push(1,H/M);P.push(1,1);const V=[];for(let H=0;H<M;H++)V.push(H,H+1,M*2-H,H,M*2-H,M*2+1-H);I.setAttribute("position",new E.BufferAttribute(new Float32Array(B),3)),I.setAttribute("uv",new E.BufferAttribute(new Float32Array(P),2)),I.setIndex(new E.BufferAttribute(new Uint32Array(V),1));const L=new E.MeshBasicMaterial({map:e.videoTextureEnabled?e.videoTexture:e.imageTexture,side:E.DoubleSide}),X=new E.Mesh(I,L);X.renderOrder=1,X.name=`ModelTVVideoPlugin-${y}-${performance.now()}`;const Y=[v[1],v[2],v[3],v[0]],N=i.create3DDomContainer(Y);if(N!=null&&N.container){const H=document.createElement("div");H.classList.add("play-icon"),H.style.width="100%",H.style.height="100%",H.style.display="flex",H.style.justifyContent="center",H.style.alignItems="center",H.style.pointerEvents="none",N.container.appendChild(H);const _=document.createElement("img");_.src=Ga,_.style.width="200px",_.style.pointerEvents="auto",_.onclick=()=>{e.videoTexture.image.muted=!1,e.videoTexture.image.play()},H.appendChild(_),s.set(X,N)}return X}),d=v=>{const y=new E.TextureLoader().load(v);return y.minFilter=E.LinearFilter,y.magFilter=E.LinearFilter,y.format=E.RGBFormat,y},h=(v,y)=>{let I=y;return new Promise((M,B)=>{const P=new XMLHttpRequest;P.onreadystatechange=()=>{if(P.readyState===4)if(P.status===200){const V=window.URL||window.webkitURL;I=I||document.createElement("video"),I.crossOrigin="anonymous",I.muted=!0,I.loop=!0,I.playsInline=!0,I.src=V.createObjectURL(P.response);const L=new E.VideoTexture(I);L.minFilter=E.LinearFilter,L.magFilter=E.LinearFilter,L.format=E.RGBFormat,M(Object.assign(L,{videoSource:v}))}else B(new Error("Video download Error: "+P.status))},P.onerror=V=>B(V),P.open("GET",v),P.responseType="blob",P.send()})},u=(v,y)=>W(exports,null,function*(){const{video_src:I,video_poster_src:M,points:B}=v;e.videoSource=I,e.rectPoints=ob(B).map(P=>P.map(({x:V,y:L,z:X})=>new E.Vector3(V,L,X))),e.imageTexture=d(M),y&&(e.videoElement=y),e.videoTexture=yield h(e.videoSource,e.videoElement),e.enabled=!!v.enable,e.enabled&&a()}),m=v=>{if(!e.enabled)return;const y=e.videoMeshes;if(!(!y||v.intersectObjects(y).length===0))return e.videoTexture&&(e.videoTexture.image.paused||e.videoTexture.image.pause()),!1},A=v=>{v==="Floorplan"?i.hide():i.show()},p=()=>{if(!e.enabled)return;const v=n.camera.position;if(s.forEach((y,I)=>{const M=y.css3DObject.position.clone(),B=M.clone().sub(v).normalize(),P=new E.Raycaster(v,B),V=n.model.intersectRaycaster(P)[0],L=M.distanceTo(v),X=.01;V&&V.distance+X<L?y.hide():y.show()}),!r()){const y=e.rectPoints.find(I=>{const M=I[0].clone().add(I[1]).add(I[2]).add(I[3]).divideScalar(4);return I.map(B=>B.clone().add(M).divideScalar(2)).filter(B=>{const P=B.distanceTo(v),V=new E.Raycaster(v,B.clone().sub(v).normalize()),L=n.model.intersectRaycaster(V)[0],X=.01;return!(L&&L.distance+X<P)}).length>=2});(!y||y.length===0)&&o(!0)}},g=()=>{l(),e.videoTexture=void 0,n.off("modeChange",A),n.off("wantsTapGesture",m),n.off("panoArrived",p),n.off("renderFrame",()=>{e.videoMeshes.forEach(v=>{v&&(v.needsRender=!0)})})};return n.on("modeChange",A),n.on("wantsTapGesture",m),n.on("panoArrived",p),n.on("renderFrame",()=>{e.videoMeshes.forEach(v=>{v&&(v.needsRender=!0)})}),{enable:a,disable:l,load:u,dispose:g,state:e,css3DRenderPlugin:i}};var Ti=(n=>(n.SMALL="small",n.MIDLLE="middle",n.LARGE="large",n.EXTRA_LARGE="x-large",n))(Ti||{});function cb(n){ue(n,"svelte-1jhufeh",`.item-label-item.svelte-1jhufeh.svelte-1jhufeh{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:svelte-1jhufeh-fadeIn .3s ease-in}.item-label-item.fold.svelte-1jhufeh>.item-label-item__text-wrap.svelte-1jhufeh{visibility:hidden}.item-label-item.fold.svelte-1jhufeh>.item-label-item__bar.anchor.svelte-1jhufeh{visibility:hidden}.item-label-item.fold.svelte-1jhufeh>.item-label-item__bar.anchor.svelte-1jhufeh:after{visibility:visible}.item-label-item__text-wrap.svelte-1jhufeh.svelte-1jhufeh{height:-moz-fit-content;height:fit-content;padding:0.75rem 1.25rem 0.75rem 0.75rem;position:absolute;width:-moz-max-content;width:max-content;max-width:29.5625rem;min-height:5.75rem;background-image:linear-gradient(269deg, rgba(0, 0, 0, 0.50) 0%, rgba(0, 0, 0, 0.60) 49%, rgba(31, 38, 46, 0.70) 100%);border:0.09375rem solid rgba(255, 255, 255, .65);border-radius:0.1875rem;color:white;transform:translate(-50%, 0);display:flex;justify-content:flex-start;align-items:center;box-sizing:border-box;overflow:hidden;pointer-events:all}.item-label-item__custom.svelte-1jhufeh.svelte-1jhufeh{padding:0;max-width:unset;min-height:unset;background-image:unset;border:0;border-radius:0}.icon-wrap.svelte-1jhufeh.svelte-1jhufeh{width:4.25rem;height:100%;display:flex;justify-content:center;align-content:center}.icon.svelte-1jhufeh.svelte-1jhufeh{width:4.25rem;height:4.25rem;background-repeat:no-repeat;background-size:contain;background-position:center}.item-label-text.svelte-1jhufeh.svelte-1jhufeh{margin-left:0.75rem;padding-left:0.75rem;min-height:4.25rem;height:auto;display:flex;flex-flow:column;justify-content:space-around;align-content:flex-start;border-left:solid rgba(255, 255, 255, .2) 0.0625rem;border-top:solid rgba(255, 255, 255, .2) 0;border-right:solid rgba(255, 255, 255, .2) 0;border-bottom:solid rgba(255, 255, 255, .2) 0;pointer-events:auto}.item-model.svelte-1jhufeh.svelte-1jhufeh{white-space:nowrap;font-size:1.375rem;font-weight:bold;line-height:1.875rem}.item-name.svelte-1jhufeh.svelte-1jhufeh{height:auto;word-wrap:break-word;word-break:break-all;font-size:1.25rem;line-height:1.75rem}.item-label-item__bar.svelte-1jhufeh.svelte-1jhufeh{position:absolute;bottom:0;width:0.1875rem;background-image:linear-gradient(to bottom, white, rgba(255, 255, 255, 0));box-shadow:0 0.125rem 0.5rem 0 rgba(0, 0, 0, 0.20);pointer-events:none}.item-label-item__bar.anchor.svelte-1jhufeh.svelte-1jhufeh:after{content:'';position:absolute;bottom:0;width:1.5rem;height:1.5rem;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAABcVBMVEUAAAAAAAD////////+/v45OTn////////39/fp6enPz8/7+/vw8PD+/v7x8fHc3NzHx8f////////+/v77+/vr6+v////7+/v5+fn////z8/P////////q6uqgoKD+/v79/f3m5ub+/v7////////////////39/f39/f////z8/P////t7e3s7Oz29vb////5+fn////h4eH////g4ODV1dX////////BwcH///////////+Ojo5zc3MlJSX////////////////////////7+/v////////////v7+/u7u7n5+f////39/f////09PT6+vr09PT+/v76+vr////5+fnv7+/09PTk5OT////////////////Jycn///++vr7///////+0tLT///9TU1P///8SEhL////////+/v76+vr////8/Pz39/ft7e3t7e36+vr////////X19fV1dX///+xsbF9fX1iYmL///////+K8mOEAAAAenRSTlMaAIDy8CD41cWRX9uk7Kl1VVEw6dWT/M/NvKyVkY475eWIgx0Z39rHv7axnZyZmIuKhn56emZjX1FEPTU0Kx4PCAX69fTgxcKkopWL7crJuri2sa6rnIyHhX54bVtZVU9NSUcsJSIcFROno6Hcwp+ekHVxbWhnRC8nDLc9s8oAAAOGSURBVEjHpdd3X9pAGAfwkBBDAoQmBJmWvUWWiIDIHoJb66x7a4d78Op7pBQ1J5DY33987vnyXEIu3CGy/0hvnDthM+l0hj3JScSudDKOdhNPpl1i8Ut624Gi6+trI3zW1tcdqGM7/SIC5/ZRR2SNJEm7JkHt7FAJjR18WIs40P3cAFxIOaIRna6ZOHxGunk+TDR1ukjUkSr0w86bcKShiz1OI4JMP8YAD9+4emM2Gm407IfIhzm0NxrhKNsLH4SvQ+RktyvUfZIMXYcPPsSFCcvY6EYW6ZPsxuiYZaLwAW5bDY70Da5paxjvm8d+UcjAUL/GzPtCnDF/mwFWhJ75Zs68x05gxxFRGQfa+RYXokHVCC4O4yOqYLTwBjNB+ncWEZnsbzrIvOLz4CW9g4jODn0ZPO/iZN0UmhaPp0Omq+Q/nLu6NO0hErJnurjKdTBzEdAhkqILXDAdbFkJ7EnDe4EVy198srpiwhE4X1RKDFOqviBwcNPK6gmPmeWlGDz+VdHqRPEVHo0tLTM8RpcX4G+flLe6kU/Cs1pYRnm8uriQhfoC+0ZDvbMLi6ttfO5fDCDCKFrvooAKAov+c4BZvy8EzaolCHRdIZ+fBThl9G0Ih1RCrBJWbPiMKYAZ409oMSqFWAktzJ9GBuDvRoVGOIQJMSas0CiM39u45v0M9tbaeLc6F5M+7dhcbRfgg+pcU/oNa85VDwDOzBtmpP9UKsN8BuCzeb1P+kPi08+fASyr6fVPUh/PJ72+xj/bZk5PSV0YlJ4z83iC4EipS5LkiAkeHxGcQerLwMARRzyW+QklhUgKpST8nXfYg+fHkjS89MPz0MFnhKdCSWpc8RBnPAZB3RUvLt7i3oob7f5juDzuikY81tjcHlcHg9xabdyUWDvF2ay3slecr1ptimNx9lhhs1bzXQxy5NZa6VMx9pS2Wt1H77cVjFartYvBdlDICDc0cbVa3Twd2NcOyuLwVqo+K1ebjgdcr0k+O1uXwThfl8vlhqm+99kASup5GINsYhhmG8d7UXzcBgo2e21cd9WlUll5/7G958ql8uxu7y0zS5SGSkOGBA51TRiGQAi232Y9v4kVQZGavpt6c6l3tLpNsc38gGOC01IeLg4Xi8NaLz1KkqO0VzvcTrFscYo4oLjiRAsKEXeJPRqxW0bsFWLGLVbiocyZSm5vbW0nU9BsIfyp/AGqAvfOkBaFawAAAABJRU5ErkJggg==');background-position:center;background-size:contain;transform:translate(-0.65625rem, 50%)}@keyframes svelte-1jhufeh-fadeIn{from{opacity:0
543
543
  }to{opacity:1
544
- }}`)}function db(n){let t,e,i,s=(n[0].code||n[0].id)+"",o,r,a,l=n[0].name+"",c,d=n[0].icon&&jc(n);return{c(){d&&d.c(),t=$(),e=S("div"),i=S("span"),o=xe(s),r=$(),a=S("span"),c=xe(l),w(i,"class","item-model svelte-1jhufeh"),w(a,"class","item-name svelte-1jhufeh"),w(e,"class","item-label-text svelte-1jhufeh")},m(h,u){d&&d.m(h,u),B(h,t,u),B(h,e,u),x(e,i),x(i,o),x(e,r),x(e,a),x(a,c)},p(h,u){h[0].icon?d?d.p(h,u):(d=jc(h),d.c(),d.m(t.parentNode,t)):d&&(d.d(1),d=null),u&1&&s!==(s=(h[0].code||h[0].id)+"")&&Se(o,s),u&1&&l!==(l=h[0].name+"")&&Se(c,l)},d(h){h&&(O(t),O(e)),d&&d.d(h)}}}function hb(n){let t;return{c(){t=S("div")},m(e,i){B(e,t,i),n[6](t)},p:q,d(e){e&&O(t),n[6](null)}}}function jc(n){let t,e,i,s,o;return{c(){t=S("div"),e=S("div"),w(e,"class","icon svelte-1jhufeh"),w(e,"style",i=`background-image: url(${n[0].icon})`),w(t,"class","icon-wrap svelte-1jhufeh")},m(r,a){B(r,t,a),x(t,e),s||(o=be(t,"click",n[7]),s=!0)},p(r,a){a&1&&i!==(i=`background-image: url(${r[0].icon})`)&&w(e,"style",i)},d(r){r&&O(t),s=!1,o()}}}function ub(n){let t,e,i,s,o,r,a,l,c,d;function h(A,p){return p&1&&(i=null),i==null&&(i=typeof A[0].render=="function"),i?hb:db}let u=h(n,-1),m=u(n);return{c(){t=S("div"),e=S("div"),m.c(),o=$(),r=S("div"),w(e,"class",s=Qe(at("item-label-item__text-wrap",{"item-label-item__custom":typeof n[0].render=="function"}))+" svelte-1jhufeh"),z(e,"bottom",`${n[0].strokeLength}px`),w(r,"class",a=Qe(at("item-label-item__bar",{anchor:n[1]}))+" svelte-1jhufeh"),z(r,"height",`${n[0].strokeLength}px`),w(t,"class",l=Qe(at("item-label-item",{fold:n[0].isFold}))+" svelte-1jhufeh"),z(t,"z-index",n[0].zIndex),z(t,"transform",n[0].transform)},m(A,p){B(A,t,p),x(t,e),m.m(e,null),x(t,o),x(t,r),c||(d=be(e,"click",n[4]),c=!0)},p(A,[p]){u===(u=h(A,p))&&m?m.p(A,p):(m.d(1),m=u(A),m&&(m.c(),m.m(e,null))),p&1&&s!==(s=Qe(at("item-label-item__text-wrap",{"item-label-item__custom":typeof A[0].render=="function"}))+" svelte-1jhufeh")&&w(e,"class",s),p&1&&z(e,"bottom",`${A[0].strokeLength}px`),p&2&&a!==(a=Qe(at("item-label-item__bar",{anchor:A[1]}))+" svelte-1jhufeh")&&w(r,"class",a),p&1&&z(r,"height",`${A[0].strokeLength}px`),p&1&&l!==(l=Qe(at("item-label-item",{fold:A[0].isFold}))+" svelte-1jhufeh")&&w(t,"class",l),p&1&&z(t,"z-index",A[0].zIndex),p&1&&z(t,"transform",A[0].transform)},i:q,o:q,d(A){A&&O(t),m.d(),c=!1,d()}}}function fb(n,t,e){let{itemLabel:i}=t,{hooks:s}=t,{anchorEnabled:o}=t,{onIconClick:r}=t;function a(){s.emit("onLabelClick",i)}let l;function c(h){Ge[h?"unshift":"push"](()=>{l=h,e(3,l)})}const d=h=>r(i);return n.$$set=h=>{"itemLabel"in h&&e(0,i=h.itemLabel),"hooks"in h&&e(5,s=h.hooks),"anchorEnabled"in h&&e(1,o=h.anchorEnabled),"onIconClick"in h&&e(2,r=h.onIconClick)},n.$$.update=()=>{if(n.$$.dirty&9&&typeof i.render=="function"&&l&&l.children.length===0){const h=i.render(i);h&&l.appendChild(h)}},[i,o,r,l,a,s,c,d]}class mb extends le{constructor(t){super(),ae(this,t,fb,ub,oe,{itemLabel:0,hooks:5,anchorEnabled:1,onIconClick:2},cb)}}const{Raycaster:gb,Vector3:PE}=E,zc=(n,t,e,i)=>{const s=t.clone().sub(e).normalize(),o=new gb;o.set(e,s);const[r]=n.model.intersectRaycaster(o);return r&&r.distance+.01<i},pb=(n,t)=>{switch(t){case Ti.SMALL:return Math.ceil(-27.78*n+85);case Ti.MIDLLE:return Math.ceil(-38.9*n+130);case Ti.LARGE:return Math.ceil(-44.44*n+140);case Ti.EXTRA_LARGE:return Math.ceil(-92.59*n+300)}},Ab=n=>`translate(${n[0]}px, ${n[1]}px)`;function Oc(n){return n.map(t=>G({observerIndex:void 0,visible:!1,isFold:!1},t))}function vb(n){ue(n,"svelte-f82itz",".item-labels-container.svelte-f82itz{width:100%;height:100%;position:relative}")}function Bc(n,t,e){const i=n.slice();return i[29]=t[e],i}function Vc(n){let t,e;return t=new mb({props:{itemLabel:n[29],hooks:n[0],anchorEnabled:n[2],onIconClick:n[6]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s[0]&2&&(o.itemLabel=i[29]),s[0]&1&&(o.hooks=i[0]),s[0]&4&&(o.anchorEnabled=i[2]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function Rc(n,t){let e,i,s,o=t[29].visible&&Vc(t);return{key:n,first:null,c(){e=Ee(),o&&o.c(),i=Ee(),this.first=e},m(r,a){B(r,e,a),o&&o.m(r,a),B(r,i,a),s=!0},p(r,a){t=r,t[29].visible?o?(o.p(t,a),a[0]&2&&k(o,1)):(o=Vc(t),o.c(),k(o,1),o.m(i.parentNode,i)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){s||(k(o),s=!0)},o(r){j(o),s=!1},d(r){r&&(O(e),O(i)),o&&o.d(r)}}}function bb(n){let t,e=[],i=new Map,s,o,r=Pe(n[1]);const a=l=>l[29].id;for(let l=0;l<r.length;l+=1){let c=Bc(n,r,l),d=a(c);i.set(d,e[l]=Rc(d,c))}return{c(){t=S("div");for(let l=0;l<e.length;l+=1)e[l].c();w(t,"class","item-labels-container svelte-f82itz"),He(()=>n[12].call(t)),z(t,"opacity",n[5]?1:0)},m(l,c){B(l,t,c);for(let d=0;d<e.length;d+=1)e[d]&&e[d].m(t,null);s=yo(t,n[12].bind(t)),o=!0},p(l,c){c[0]&71&&(r=Pe(l[1]),de(),e=Ot(e,c,a,1,l,r,i,t,bi,Rc,null,Bc),he()),c[0]&32&&z(t,"opacity",l[5]?1:0)},i(l){if(!o){for(let c=0;c<r.length;c+=1)k(e[c]);o=!0}},o(l){for(let c=0;c<e.length;c+=1)j(e[c]);o=!1},d(l){l&&O(t);for(let c=0;c<e.length;c+=1)e[c].d();s()}}}let yb=11;function wb(n,t,e){const{Vector3:i}=E;let{five:s}=t,{modelOcclusionEnable:o}=t,{itemLabels:r}=t,{hooks:a}=t,{displayStrategyType:l}=t,{maxVisibleDistance:c}=t,d=null,h=null,u=(s==null?void 0:s.currentMode)===je.Five.Mode.Panorama,m,A,p=[],g=!0;const v=(Q,F)=>{const J=Q.camera.position.clone(),Z=new i(F.modelPosition[0],F.modelPosition[1],F.modelPosition[2]),ee=Z.distanceTo(J);return c!==void 0&&Q.state.mode===je.Five.Mode.Panorama&&ee>c?!1:zc(Q,Z.clone().sub(J).normalize(),J,ee)},y=Q=>{const{camera:F,model:J}=s,{x:Z,y:ee,z:ce}=Q.clone().project(F),se=(Z+1)/2,we=(2-(ee+1))/2;return!!(Math.abs(ce)<1&&[se,we].every(Ae=>Ae<1&&Ae>=0))},I=(Q,F)=>{const J=new i(F.modelPosition[0],F.modelPosition[1],F.modelPosition[2]),Z=Q.project2d(J),ee=Z==null?void 0:Z.x,ce=Z==null?void 0:Z.y;return[ee,ce]},M=(Q,F)=>{const J=F.map(ee=>{if(Q.state.panoIndex!==ee.panoIndex)return ve(G({},ee),{visible:!1});const ce=I(Q,ee);ee.name.length*yb;const se=pb(ee.modelPosition[1],l),we=Q.currentMode===je.Five.Mode.Panorama?y(new i(ee.position[0],ee.position[1],ee.position[2])):!0,Ce=o?v(Q,ee):!1,pe=we&&!Ce;if(!pe)return ve(G({},ee),{visible:pe});p.push(ce);const Ve=Ab(ce);return ve(G({},ee),{visible:pe,transform:Ve,strokeLength:se})}),Z=J.filter(({visible:ee})=>ee).map(ee=>({itemLabelItem:ee,distance:new i(ee.modelPosition[0],ee.modelPosition[1],ee.modelPosition[2]).clone().distanceTo(Q.camera.position)})).sort((ee,ce)=>ee.distance-ce.distance);return J.map(ee=>{const ce=Z.findIndex(se=>se.itemLabelItem.id===ee.id);return ce!==void 0?ve(G({},ee),{zIndex:ce*10}):ee})},D=()=>{p=[],e(1,h=M(s,h))},P=()=>{e(5,g=!1),V()},V=yu(()=>{e(5,g=!0),D()},300),L=()=>{s.once("renderFrame",D)},X=()=>{window.addEventListener("resize",L,!1)},U=()=>{d!==r&&(e(1,h=Oc(r)),d=r,D())},N=(Q,F)=>{let J=[];for(const{position:ee,panoIndex:ce}of F){const se=Q.distanceTo(ee);(c===void 0||se<=c||s.state.mode!==je.Five.Mode.Panorama)&&J.push({panoIndex:ce,obVector:ee,distance:se})}J=J.sort((ee,ce)=>ee.distance-ce.distance);let Z;for(const ee of J){const{obVector:ce,distance:se,panoIndex:we}=ee;if(!zc(s,Q,ce,se)){Z=we;break}}return typeof Z=="number"?F[Z]:void 0},H=Q=>{if(s.state.mode===je.Five.Mode.Panorama)return;const F=s.work.observers,J=new i().fromArray(Q.position),Z=N(J,F);if(Z&&(Q.observerIndex=Z.panoIndex),typeof Q.observerIndex=="number"){const ee=F[Q.observerIndex],ce=J.clone().sub(ee.position).normalize(),se={longitude:Math.PI+Math.atan2(ce.x,ce.z),latitude:Math.acos(ce.y/ce.length())-Math.PI/2};s.setState(ve(G({},se),{mode:je.Five.Mode.Panorama,panoIndex:Q.observerIndex})),s.once("initAnimationEnded",()=>{e(1,h=h.map(we=>ve(G({},we),{isFold:we.id!==Q.id}))),s.once("cameraUpdate",()=>{e(1,h=h.map(we=>ve(G({},we),{isFold:!1})))})})}};Vh(()=>{U()}),bt(()=>{e(1,h=Oc(r)),d=r,D(),X(),s.on("cameraUpdate",P)}),zt(()=>{s.off("cameraUpdate",P),window.removeEventListener("resize",L,!1)});function _(){m=this.clientWidth,A=this.clientHeight,e(3,m),e(4,A)}return n.$$set=Q=>{"five"in Q&&e(7,s=Q.five),"modelOcclusionEnable"in Q&&e(8,o=Q.modelOcclusionEnable),"itemLabels"in Q&&e(9,r=Q.itemLabels),"hooks"in Q&&e(0,a=Q.hooks),"displayStrategyType"in Q&&e(10,l=Q.displayStrategyType),"maxVisibleDistance"in Q&&e(11,c=Q.maxVisibleDistance)},[a,h,u,m,A,g,H,s,o,r,l,c,_]}class Cb extends le{constructor(t){super(),ae(this,t,wb,bb,oe,{five:7,modelOcclusionEnable:8,itemLabels:9,hooks:0,displayStrategyType:10,maxVisibleDistance:11},vb,[-1,-1])}}function Ib(n){return n.item_labels.map(t=>ve(G({},t),{modelPosition:[t.position[0],t.position[1],t.position[2]],observerIndex:void 0}))}const Pb=void 0,Eb=(n,t)=>{var u,m,A,p;const e={container:document.createElement("div"),data:null,enabled:!0,fiveModeEnabled:!0,itemLabels:[],wrapper:null,app:void 0,hooks:new je.Subscribe,modelOcclusionEnable:(u=t==null?void 0:t.modelOcclusionEnable)!=null?u:!0,onlyVisibleInPanorama:(m=t==null?void 0:t.onlyVisibleInPanorama)!=null?m:!0,displayStrategyType:(A=t==null?void 0:t.displayStrategyType)!=null?A:Ti.SMALL,maxVisibleDistance:(p=t==null?void 0:t.maxVisibleDistance)!=null?p:Pb};e.container.setAttribute("class","item-label-plugin-container"),e.container.style.cssText=`
544
+ }}`)}function db(n){let t,e,i,s=(n[0].code||n[0].id)+"",o,r,a,l=n[0].name+"",c,d=n[0].icon&&jc(n);return{c(){d&&d.c(),t=$(),e=D("div"),i=D("span"),o=xe(s),r=$(),a=D("span"),c=xe(l),w(i,"class","item-model svelte-1jhufeh"),w(a,"class","item-name svelte-1jhufeh"),w(e,"class","item-label-text svelte-1jhufeh")},m(h,u){d&&d.m(h,u),O(h,t,u),O(h,e,u),x(e,i),x(i,o),x(e,r),x(e,a),x(a,c)},p(h,u){h[0].icon?d?d.p(h,u):(d=jc(h),d.c(),d.m(t.parentNode,t)):d&&(d.d(1),d=null),u&1&&s!==(s=(h[0].code||h[0].id)+"")&&Se(o,s),u&1&&l!==(l=h[0].name+"")&&Se(c,l)},d(h){h&&(z(t),z(e)),d&&d.d(h)}}}function hb(n){let t;return{c(){t=D("div")},m(e,i){O(e,t,i),n[6](t)},p:q,d(e){e&&z(t),n[6](null)}}}function jc(n){let t,e,i,s,o;return{c(){t=D("div"),e=D("div"),w(e,"class","icon svelte-1jhufeh"),w(e,"style",i=`background-image: url(${n[0].icon})`),w(t,"class","icon-wrap svelte-1jhufeh")},m(r,a){O(r,t,a),x(t,e),s||(o=be(t,"click",n[7]),s=!0)},p(r,a){a&1&&i!==(i=`background-image: url(${r[0].icon})`)&&w(e,"style",i)},d(r){r&&z(t),s=!1,o()}}}function ub(n){let t,e,i,s,o,r,a,l,c,d;function h(A,p){return p&1&&(i=null),i==null&&(i=typeof A[0].render=="function"),i?hb:db}let u=h(n,-1),m=u(n);return{c(){t=D("div"),e=D("div"),m.c(),o=$(),r=D("div"),w(e,"class",s=Qe(at("item-label-item__text-wrap",{"item-label-item__custom":typeof n[0].render=="function"}))+" svelte-1jhufeh"),j(e,"bottom",`${n[0].strokeLength}px`),w(r,"class",a=Qe(at("item-label-item__bar",{anchor:n[1]}))+" svelte-1jhufeh"),j(r,"height",`${n[0].strokeLength}px`),w(t,"class",l=Qe(at("item-label-item",{fold:n[0].isFold}))+" svelte-1jhufeh"),j(t,"z-index",n[0].zIndex),j(t,"transform",n[0].transform)},m(A,p){O(A,t,p),x(t,e),m.m(e,null),x(t,o),x(t,r),c||(d=be(e,"click",n[4]),c=!0)},p(A,[p]){u===(u=h(A,p))&&m?m.p(A,p):(m.d(1),m=u(A),m&&(m.c(),m.m(e,null))),p&1&&s!==(s=Qe(at("item-label-item__text-wrap",{"item-label-item__custom":typeof A[0].render=="function"}))+" svelte-1jhufeh")&&w(e,"class",s),p&1&&j(e,"bottom",`${A[0].strokeLength}px`),p&2&&a!==(a=Qe(at("item-label-item__bar",{anchor:A[1]}))+" svelte-1jhufeh")&&w(r,"class",a),p&1&&j(r,"height",`${A[0].strokeLength}px`),p&1&&l!==(l=Qe(at("item-label-item",{fold:A[0].isFold}))+" svelte-1jhufeh")&&w(t,"class",l),p&1&&j(t,"z-index",A[0].zIndex),p&1&&j(t,"transform",A[0].transform)},i:q,o:q,d(A){A&&z(t),m.d(),c=!1,d()}}}function fb(n,t,e){let{itemLabel:i}=t,{hooks:s}=t,{anchorEnabled:o}=t,{onIconClick:r}=t;function a(){s.emit("onLabelClick",i)}let l;function c(h){Ge[h?"unshift":"push"](()=>{l=h,e(3,l)})}const d=h=>r(i);return n.$$set=h=>{"itemLabel"in h&&e(0,i=h.itemLabel),"hooks"in h&&e(5,s=h.hooks),"anchorEnabled"in h&&e(1,o=h.anchorEnabled),"onIconClick"in h&&e(2,r=h.onIconClick)},n.$$.update=()=>{if(n.$$.dirty&9&&typeof i.render=="function"&&l&&l.children.length===0){const h=i.render(i);h&&l.appendChild(h)}},[i,o,r,l,a,s,c,d]}class mb extends le{constructor(t){super(),ae(this,t,fb,ub,oe,{itemLabel:0,hooks:5,anchorEnabled:1,onIconClick:2},cb)}}const{Raycaster:gb,Vector3:EE}=E,zc=(n,t,e,i)=>{const s=t.clone().sub(e).normalize(),o=new gb;o.set(e,s);const[r]=n.model.intersectRaycaster(o);return r&&r.distance+.01<i},pb=(n,t)=>{switch(t){case Ti.SMALL:return Math.ceil(-27.78*n+85);case Ti.MIDLLE:return Math.ceil(-38.9*n+130);case Ti.LARGE:return Math.ceil(-44.44*n+140);case Ti.EXTRA_LARGE:return Math.ceil(-92.59*n+300)}},Ab=n=>`translate(${n[0]}px, ${n[1]}px)`;function Oc(n){return n.map(t=>G({observerIndex:void 0,visible:!1,isFold:!1},t))}function vb(n){ue(n,"svelte-f82itz",".item-labels-container.svelte-f82itz{width:100%;height:100%;position:relative}")}function Bc(n,t,e){const i=n.slice();return i[29]=t[e],i}function Vc(n){let t,e;return t=new mb({props:{itemLabel:n[29],hooks:n[0],anchorEnabled:n[2],onIconClick:n[6]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s[0]&2&&(o.itemLabel=i[29]),s[0]&1&&(o.hooks=i[0]),s[0]&4&&(o.anchorEnabled=i[2]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function Rc(n,t){let e,i,s,o=t[29].visible&&Vc(t);return{key:n,first:null,c(){e=Ee(),o&&o.c(),i=Ee(),this.first=e},m(r,a){O(r,e,a),o&&o.m(r,a),O(r,i,a),s=!0},p(r,a){t=r,t[29].visible?o?(o.p(t,a),a[0]&2&&k(o,1)):(o=Vc(t),o.c(),k(o,1),o.m(i.parentNode,i)):o&&(de(),T(o,1,1,()=>{o=null}),he())},i(r){s||(k(o),s=!0)},o(r){T(o),s=!1},d(r){r&&(z(e),z(i)),o&&o.d(r)}}}function bb(n){let t,e=[],i=new Map,s,o,r=Pe(n[1]);const a=l=>l[29].id;for(let l=0;l<r.length;l+=1){let c=Bc(n,r,l),d=a(c);i.set(d,e[l]=Rc(d,c))}return{c(){t=D("div");for(let l=0;l<e.length;l+=1)e[l].c();w(t,"class","item-labels-container svelte-f82itz"),He(()=>n[12].call(t)),j(t,"opacity",n[5]?1:0)},m(l,c){O(l,t,c);for(let d=0;d<e.length;d+=1)e[d]&&e[d].m(t,null);s=wo(t,n[12].bind(t)),o=!0},p(l,c){c[0]&71&&(r=Pe(l[1]),de(),e=Ot(e,c,a,1,l,r,i,t,bi,Rc,null,Bc),he()),c[0]&32&&j(t,"opacity",l[5]?1:0)},i(l){if(!o){for(let c=0;c<r.length;c+=1)k(e[c]);o=!0}},o(l){for(let c=0;c<e.length;c+=1)T(e[c]);o=!1},d(l){l&&z(t);for(let c=0;c<e.length;c+=1)e[c].d();s()}}}let yb=11;function wb(n,t,e){const{Vector3:i}=E;let{five:s}=t,{modelOcclusionEnable:o}=t,{itemLabels:r}=t,{hooks:a}=t,{displayStrategyType:l}=t,{maxVisibleDistance:c}=t,d=null,h=null,u=(s==null?void 0:s.currentMode)===je.Five.Mode.Panorama,m,A,p=[],g=!0;const v=(Q,F)=>{const J=Q.camera.position.clone(),Z=new i(F.modelPosition[0],F.modelPosition[1],F.modelPosition[2]),ee=Z.distanceTo(J);return c!==void 0&&Q.state.mode===je.Five.Mode.Panorama&&ee>c?!1:zc(Q,Z.clone().sub(J).normalize(),J,ee)},y=Q=>{const{camera:F,model:J}=s,{x:Z,y:ee,z:ce}=Q.clone().project(F),se=(Z+1)/2,we=(2-(ee+1))/2;return!!(Math.abs(ce)<1&&[se,we].every(Ae=>Ae<1&&Ae>=0))},I=(Q,F)=>{const J=new i(F.modelPosition[0],F.modelPosition[1],F.modelPosition[2]),Z=Q.project2d(J),ee=Z==null?void 0:Z.x,ce=Z==null?void 0:Z.y;return[ee,ce]},M=(Q,F)=>{const J=F.map(ee=>{if(Q.state.panoIndex!==ee.panoIndex)return ve(G({},ee),{visible:!1});const ce=I(Q,ee);ee.name.length*yb;const se=pb(ee.modelPosition[1],l),we=Q.currentMode===je.Five.Mode.Panorama?y(new i(ee.position[0],ee.position[1],ee.position[2])):!0,Ce=o?v(Q,ee):!1,pe=we&&!Ce;if(!pe)return ve(G({},ee),{visible:pe});p.push(ce);const Ve=Ab(ce);return ve(G({},ee),{visible:pe,transform:Ve,strokeLength:se})}),Z=J.filter(({visible:ee})=>ee).map(ee=>({itemLabelItem:ee,distance:new i(ee.modelPosition[0],ee.modelPosition[1],ee.modelPosition[2]).clone().distanceTo(Q.camera.position)})).sort((ee,ce)=>ee.distance-ce.distance);return J.map(ee=>{const ce=Z.findIndex(se=>se.itemLabelItem.id===ee.id);return ce!==void 0?ve(G({},ee),{zIndex:ce*10}):ee})},B=()=>{p=[],e(1,h=M(s,h))},P=()=>{e(5,g=!1),V()},V=yu(()=>{e(5,g=!0),B()},300),L=()=>{s.once("renderFrame",B)},X=()=>{window.addEventListener("resize",L,!1)},Y=()=>{d!==r&&(e(1,h=Oc(r)),d=r,B())},N=(Q,F)=>{let J=[];for(const{position:ee,panoIndex:ce}of F){const se=Q.distanceTo(ee);(c===void 0||se<=c||s.state.mode!==je.Five.Mode.Panorama)&&J.push({panoIndex:ce,obVector:ee,distance:se})}J=J.sort((ee,ce)=>ee.distance-ce.distance);let Z;for(const ee of J){const{obVector:ce,distance:se,panoIndex:we}=ee;if(!zc(s,Q,ce,se)){Z=we;break}}return typeof Z=="number"?F[Z]:void 0},H=Q=>{if(s.state.mode===je.Five.Mode.Panorama)return;const F=s.work.observers,J=new i().fromArray(Q.position),Z=N(J,F);if(Z&&(Q.observerIndex=Z.panoIndex),typeof Q.observerIndex=="number"){const ee=F[Q.observerIndex],ce=J.clone().sub(ee.position).normalize(),se={longitude:Math.PI+Math.atan2(ce.x,ce.z),latitude:Math.acos(ce.y/ce.length())-Math.PI/2};s.setState(ve(G({},se),{mode:je.Five.Mode.Panorama,panoIndex:Q.observerIndex})),s.once("initAnimationEnded",()=>{e(1,h=h.map(we=>ve(G({},we),{isFold:we.id!==Q.id}))),s.once("cameraUpdate",()=>{e(1,h=h.map(we=>ve(G({},we),{isFold:!1})))})})}};Vh(()=>{Y()}),bt(()=>{e(1,h=Oc(r)),d=r,B(),X(),s.on("cameraUpdate",P)}),zt(()=>{s.off("cameraUpdate",P),window.removeEventListener("resize",L,!1)});function _(){m=this.clientWidth,A=this.clientHeight,e(3,m),e(4,A)}return n.$$set=Q=>{"five"in Q&&e(7,s=Q.five),"modelOcclusionEnable"in Q&&e(8,o=Q.modelOcclusionEnable),"itemLabels"in Q&&e(9,r=Q.itemLabels),"hooks"in Q&&e(0,a=Q.hooks),"displayStrategyType"in Q&&e(10,l=Q.displayStrategyType),"maxVisibleDistance"in Q&&e(11,c=Q.maxVisibleDistance)},[a,h,u,m,A,g,H,s,o,r,l,c,_]}class Cb extends le{constructor(t){super(),ae(this,t,wb,bb,oe,{five:7,modelOcclusionEnable:8,itemLabels:9,hooks:0,displayStrategyType:10,maxVisibleDistance:11},vb,[-1,-1])}}function Ib(n){return n.item_labels.map(t=>ve(G({},t),{modelPosition:[t.position[0],t.position[1],t.position[2]],observerIndex:void 0}))}const Pb=void 0,Eb=(n,t)=>{var u,m,A,p;const e={container:document.createElement("div"),data:null,enabled:!0,fiveModeEnabled:!0,itemLabels:[],wrapper:null,app:void 0,hooks:new je.Subscribe,modelOcclusionEnable:(u=t==null?void 0:t.modelOcclusionEnable)!=null?u:!0,onlyVisibleInPanorama:(m=t==null?void 0:t.onlyVisibleInPanorama)!=null?m:!0,displayStrategyType:(A=t==null?void 0:t.displayStrategyType)!=null?A:Ti.SMALL,maxVisibleDistance:(p=t==null?void 0:t.maxVisibleDistance)!=null?p:Pb};e.container.setAttribute("class","item-label-plugin-container"),e.container.style.cssText=`
545
545
  position: absolute;
546
546
  left: 0;
547
547
  top: 0;
548
548
  width: 100%;
549
549
  height: 100%;
550
550
  z-index: 5;
551
- `,e.container.style.pointerEvents="none";const i=g=>(e.wrapper=g,g.appendChild(e.container),l(),!0),s=g=>{e.itemLabels=Ib(g),l()},o=()=>(e.enabled||(e.enabled=!0,l()),!0),r=()=>(e.enabled&&(e.enabled=!1,l()),!0),a=()=>{d(),e.container.remove()},l=()=>{var g;if(e.wrapper){if(!e.enabled||!e.fiveModeEnabled){(g=e.app)==null||g.$destroy(),e.app=void 0;return}e.app?e.app.$set({five:n,itemLabels:e.itemLabels}):e.app=new Cb({target:e.container,props:{five:n,modelOcclusionEnable:e.modelOcclusionEnable,itemLabels:e.itemLabels,hooks:e.hooks,displayStrategyType:e.displayStrategyType,maxVisibleDistance:e.maxVisibleDistance}})}},c=()=>{n.on("modeChange",h),n.once("dispose",a)},d=()=>{n.off("modeChange",h)},h=g=>{if(g!==je.Five.Mode.Panorama){e.fiveModeEnabled=!1,r();return}n.once("initAnimationEnded",()=>{e.fiveModeEnabled=!0,o()})};return c(),{appendTo:i,load:s,enable:o,disable:r,dispose:a,hooks:e.hooks}},Mb={name:"ItemLabelPlugin",version:0};class kb extends cs{constructor(e){super(e);f(this,"state");f(this,"container");f(this,"enabled");this.five=e,this.five.once("dispose",this.dispose),this.enabled=!0,this.state=this.initState()}enable(e){this.enabled=!0,this.updateState(ve(G({},e),{userAction:!0}))}disable(e){this.enabled=!1,this.updateState(ve(G({},e),{userAction:!0}))}show(e){if(this.state.enabled)return this.setState(ve(G({},this.state),{visible:!0}),e),Promise.resolve()}hide(e){if(this.state.enabled)return this.setState(ve(G({},this.state),{visible:!1}),e),Promise.resolve()}dispose(){this.container.remove()}setState(e,i){if(!this.enabled)return;const s=G({},this.state);this.state=G(G(G({},this.state),e),i),this.stateChangedCallback(s,i)}get visible(){return this.five.state.mode===je.Five.Mode.Panorama}appendTo(e){this.enabled&&(this.container=e,this.render())}updateState(e){this.setState(ve(G({},this.state),{enabled:this.enabled,visible:this.visible}),e)}}function xb(n){ue(n,"svelte-1irjijd",'.plugin-DoorLabelPlugin-item.svelte-1irjijd.svelte-1irjijd{position:absolute;left:0;top:0;width:0;height:0;pointer-events:none;transition:opacity 0.3s ease}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd{position:absolute;top:50%;left:50%;border-radius:0.125rem;background:rgba(0, 0, 0, 0.35);line-height:0.75rem;padding:0.375rem;white-space:nowrap;font-size:0.75rem;font-style:normal;color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform ease 1s, background ease 0.3s, color ease 0.3s}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd::after{content:"";display:block;position:absolute;top:-0.0625rem;left:-0.0625rem;bottom:-0.0625rem;right:-0.0625rem;border-radius:0.125rem;border:0.0625rem solid rgba(0, 0, 0, 0);-o-border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAABlBMVEUAAAD///+l2Z/dAAAAAnRSTlMAIE397fAAAAAVSURBVAjXY2BjgCMQ+PABhIAASRwARxwD8fgzCQAAAAAASUVORK5CYII=") 4;border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAABlBMVEUAAAD///+l2Z/dAAAAAnRSTlMAIE397fAAAAAVSURBVAjXY2BjgCMQ+PABhIAASRwARxwD8fgzCQAAAAAASUVORK5CYII=") 4;transition:opacity ease 0.3s}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd:active,.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd:focus{background:rgba(0, 0, 0, 0.5);color:rgba(255, 255, 255, 0.5)}.plugin-DoorLabelPlugin-icon.svelte-1irjijd.svelte-1irjijd{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSIxMHB4IiB2aWV3Qm94PSIwIDAgMTAgMTAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+aW1hZ2Ut566t5aS0PC90aXRsZT4KICAgIDxkZWZzPgogICAgICAgIDxyZWN0IGlkPSJwYXRoLTEiIHg9IjAiIHk9IjAiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCI+PC9yZWN0PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iNjYuMDYyMTk3NSUiIHkxPSI1MCUiIHgyPSItMS4xMzY4NjgzOGUtMTElIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMyI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0ZGRkZGRiIgc3RvcC1vcGFjaXR5PSIwLjg1IiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iODQuMzM5NzMxJSIgeTE9IjUwJSIgeDI9IjIzLjQyODMzNzclIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtNCI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIHN0b3Atb3BhY2l0eT0iMCIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRkZGRkZGIiBzdG9wLW9wYWNpdHk9IjAuOCIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSLpobXpnaItMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IlZSLeWIhumXtOW8leWvvOagh+etvuWkh+S7vS0zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzM5LjAwMDAwMCwgLTU0My4wMDAwMDApIj4KICAgICAgICAgICAgPGcgaWQ9Iue8lue7hC0y5aSH5Lu9LTEyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMDUuMDAwMDAwLCA1MzYuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0iaW1hZ2Ut566t5aS0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzNC4wMDAwMDAsIDcuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPG1hc2sgaWQ9Im1hc2stMiIgZmlsbD0id2hpdGUiPgogICAgICAgICAgICAgICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPgogICAgICAgICAgICAgICAgICAgIDwvbWFzaz4KICAgICAgICAgICAgICAgICAgICA8dXNlIGlkPSJCRyIgZmlsbC1vcGFjaXR5PSIwIiBmaWxsPSIjRDhEOEQ4IiBvcGFjaXR5PSIwLjUxMTQ2Mjk4NCIgeGxpbms6aHJlZj0iI3BhdGgtMSI+PC91c2U+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTcuOTM4ODY5OCwxLjE0Mzc2MTI5IEM4LjI1NDY1NDA0LDEuMjU3NTgwMzUgOC4zMTc4Mjg0LDEuMzAyMTY5OTggOC4zMTc3ODUyMSwxLjM1ODE1MjIzIEM4LjMxNzc1MDcyLDEuNDAyODQzMzUgOC4zMDU3NDkwNywxLjQ0NzUyNTI0IDguMjgxNzg0MTEsMS40ODcyMDUyMSBMOC4yODE3ODQxMSwxLjQ4NzIwNTIxIEw2LjIwOTg5MDQxLDQuOTE3NzQyNDUgQzYuMTM3ODg4MDgsNS4wMzY5NjAyOSA2LjEwMTg4NjkxLDUuMTcxMjIwMiA2LjEwMTg4NjkxLDUuMzA1NDgwMTEgQzYuMTAxODg2OTEsNS40Mzk3NDAwMiA2LjEzNzg4ODA4LDUuNTczOTk5OTQgNi4yMDk4OTA0MSw1LjY5MzIxNzc4IEw2LjIwOTg5MDQxLDUuNjkzMjE3NzggTDguMjgxNzg0MTEsOS4xMjM3NTUwMSBDOC4zMTc0NzQzOCw5LjE4Mjg0OTE2IDguMzI1ODMzMjIsOS4yNTA4MTUyIDguMzEwNDk1OTUsOS4zMTI5MzAyOCBDOC4yOTUxNTg2OCw5LjM3NTA0NTM2IDguMjU2MTI1MzEsOS40MzEzMDk0NyA4LjE5NzAzMTE3LDkuNDY2OTk5NzMgQzguMTU3MzUxMTksOS40OTA5NjQ2OSA4LjExMjY2OTMxLDkuNTAyOTY2MzQgOC4wNjc5NzgxOCw5LjUwMzAwMDgzIEM4LjAyMzI4NzA2LDkuNTAzMDM1MzEgNy45Nzg1ODY3MSw5LjQ5MTEwMjYzIDcuOTM4ODY5OCw5LjQ2NzE5ODkzIEw3LjkzODg2OTgsOS40NjcxOTg5MyBMMS4zNzk5MTIxOCw1LjUxOTY3ODE1IEMxLjMyMDc2MzAyLDUuNDg0MDc5MTIgMS4yODE2NDI4Nyw1LjQyNzg3NTMyIDEuMjY2MjA5NzcsNS4zNjU3ODM5OCBDMS4yNTQ2OTI1Niw1LjMxOTQ0NzMyIDEuMjU2MzY2OTgsNS4yNjk4MzE4MiAxLjI3Mjc1MzMzLDUuMjIzMDU0MDUgTDEuMjcyNzUzMzMsNS4yMjMwNTQwNSBaIiBpZD0i566t5aS0IiBzdHJva2U9InVybCgjbGluZWFyR3JhZGllbnQtNCkiIHN0cm9rZS13aWR0aD0iMC41IiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTMpIiBtYXNrPSJ1cmwoI21hc2stMikiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUuMDM5MjAwLCA1LjMwNTQ4MCkgc2NhbGUoMSwgLTEpIHJvdGF0ZSgtOTAuMDAwMDAwKSB0cmFuc2xhdGUoLTUuMDM5MjAwLCAtNS4zMDU0ODApICI+PC9wYXRoPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=") no-repeat;background-size:100%;display:inline-block;width:0.625rem;height:0.625rem;margin-left:0.25rem;transform-origin:center}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].left.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].right.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].right.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].forward.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].back.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].back.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].back.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].forward.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].forward.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].right.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].left.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].left.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd{color:#f9eac1}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSI4cHgiIHZpZXdCb3g9IjAgMCAxMCA4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPueureWktDwvdGl0bGU+CiAgICA8ZGVmcz4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjEwLjYzODU4ODQlIiB5MT0iMCUiIHgyPSI5Ni41MTYxNDc0JSIgeTI9IjEyOS43MzEzNTQlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkYyQ0MiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0VBRDA5QSIgb2Zmc2V0PSI0OC43MTQ0NDc4JSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRDFCMTdFIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPC9kZWZzPgogICAgPGcgaWQ9Iumhtemdoi0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0i5pyq5p2l5a625aSH5Lu9LTI1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzA1LjAwMDAwMCwgLTU0NS4wMDAwMDApIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTEpIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8ZyBpZD0i57yW57uELTLlpIfku70tMTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI0NS4wMDAwMDAsIDUzNy4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJpbWFnZS3nrq3lpLQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYwLjAwMDAwMCwgNy4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOC40OTU3ODI5NCwxLjYxNjQ1MTEgTDYuNDIzODg5MjUsNS4wNDY5ODgzMyBDNi4zMjc4ODYxMyw1LjIwNTk0NTQ1IDYuMzI3ODg2MTMsNS40MDUwMTQ3NyA2LjQyMzg4OTI1LDUuNTYzOTcxODkgTDguNDk1NzgyOTQsOC45OTQ1MDkxMiBDOC42Mzg1NDQwMSw5LjIzMDg4NTcxIDguNTYyNjUzNjQsOS41MzgyMzc1IDguMzI2Mjc3MDYsOS42ODA5OTg1NiBDOC4xNjc1NTcxNiw5Ljc3Njg1ODQgNy45Njg4MjE5NSw5Ljc3NzAxMTc1IDcuODA5OTU0MzEsOS42ODEzOTY5NyBMMS4yNTA5OTY2OSw1LjczMzg3NjE4IEMxLjAxNDQwMDA4LDUuNTkxNDgwMDcgMC45MzgwMzU0ODEsNS4yODQyNDU3NiAxLjA4MDQzMTU5LDUuMDQ3NjQ5MTQgQzEuMTIyNTE0OCw0Ljk3NzcyNjI4IDEuMTgxMDczODMsNC45MTkxNjcyNSAxLjI1MDk5NjY5LDQuODc3MDg0MDQgTDcuODA5OTU0MzEsMC45Mjk1NjMyNTMgQzguMDQ2NTUwOTMsMC43ODcxNjcxNDIgOC4zNTM3ODUyNCwwLjg2MzUzMTczOSA4LjQ5NjE4MTM1LDEuMTAwMTI4MzUgQzguNTkxNzk2MTMsMS4yNTg5OTYgOC41OTE2NDI3OCwxLjQ1NzczMTIgOC40OTU3ODI5NCwxLjYxNjQ1MTEgWiIgaWQ9IueureWktCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNS4wMzkyMDAsIDUuMzA1NDgwKSBzY2FsZSgxLCAtMSkgcm90YXRlKC05MC4wMDAwMDApIHRyYW5zbGF0ZSgtNS4wMzkyMDAsIC01LjMwNTQ4MCkgIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==") no-repeat}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd:active,.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd:focus{background:rgba(0, 0, 0, 0.5);color:rgba(249, 234, 193, 0.5)}')}function Db(n){let t,e,i,s,o,r,a,l;return{c(){t=S("div"),e=S("div"),i=S("span"),i.textContent=`${n[8]}`,s=$(),o=S("i"),w(i,"class","plugin-DoorLabelPlugin-txt svelte-1irjijd"),w(o,"class","plugin-DoorLabelPlugin-icon svelte-1irjijd"),w(e,"class",r=Qe(at("plugin-DoorLabelPlugin-cnt",n[0].toward))+" svelte-1irjijd"),w(e,"style",`transform: ${n[6]||"initial"};pointer-events: ${n[5]?"auto":"none"};opacity: ${n[5]?1:0}`),w(e,"data-camera-toward",n[7]),w(t,"style",`left: ${n[3]||0}%;top: ${n[4]||0}%;opacity: ${n[5]?1:0}`),w(t,"class","plugin-DoorLabelPlugin-item svelte-1irjijd")},m(c,d){B(c,t,d),x(t,e),x(e,i),x(e,s),x(e,o),n[10](t),a||(l=be(e,"click",n[9]),a=!0)},p(c,[d]){d&1&&r!==(r=Qe(at("plugin-DoorLabelPlugin-cnt",c[0].toward))+" svelte-1irjijd")&&w(e,"class",r)},i:q,o:q,d(c){c&&O(t),n[10](null),a=!1,l()}}}function Sb(n,t,e){let{props:i}=t,{onClick:s}=t,o,{left:r,top:a,inSight:l,transform:c,panoIndex:d,cameraToward:h,name:u}=i;const m=()=>{if(!r||!a||!l||!o)return;const g=o.current.clientWidth/window.innerWidth*100,v=o.current.clientHeight/window.innerHeight*100;r<=g/2||r>=100-g/2||a<=v/2||a>=100-v/2},A=g=>{s&&s()};function p(g){Ge[g?"unshift":"push"](()=>{o=g,e(2,o)})}return n.$$set=g=>{"props"in g&&e(0,i=g.props),"onClick"in g&&e(1,s=g.onClick)},m(),[i,s,o,r,a,l,c,h,u,A,p]}class Tb extends le{constructor(t){super(),ae(this,t,Sb,Db,oe,{props:0,onClick:1},xb)}}function Lb(n,t){const e=Math.abs(n.top+n.height/2-t.top-t.height/2),i=Math.abs(n.left+n.width/2-t.left-t.width/2),s=(n.height+t.height)/2,o=(n.width+t.width)/2;return!(e>s&&i>o)}function jb(n){const{camera:t}=n,e=t.getWorldDirection(new R.Vector3);let i=Math.atan(e.z/e.x)*180/Math.PI,s="";return e.x<0&&(i+=180),i<0&&(i+=360),i>315||i<=45?s="right":i>45&&i<=135?s="back":i>135&&i<=225?s="left":i>225&&i<=315&&(s="forward"),s}function zb(n,t){return Math.sqrt(Math.pow(n.z-t.z,2)+Math.pow(n.x-t.x,2))}function Ob(n){const t=Math.PI/4;return n>-t&&n<=t?"left":n>t*3||n<=-t*3?"right":n>-t*3&&n<=-t?"forward":n>t&&n<=t*3?"back":""}const Bb={userAction:!0};class Vb extends kb{constructor(e){super(e);f(this,"MinVisibledistance",1.8);f(this,"MaxVisibledistance",5);f(this,"OffsetHeight",-1.3);f(this,"rooms");f(this,"floorplanServerData");f(this,"doorLabelItems");f(this,"visibleLabelMap",new Map);f(this,"labelItems",[]);f(this,"doorLabels");f(this,"roomObservers");f(this,"loadData",(e,i)=>{i&&(this.MaxVisibledistance=i.MaxVisibledistance,this.MinVisibledistance=i.MinVisibledistance,this.OffsetHeight=i.OffsetHeight),this.doorLabelItems&&this.doorLabelItems.length>0&&this.doorLabelItems.forEach(s=>{s.$destroy()}),this.labelItems=[],this.doorLabels=[],this.doorLabelItems=[],this.floorplanServerData=e,typeof this.five.ready=="function"?this.five.ready().then(()=>this.initData()):this.five.once("panoArrived",()=>{this.initData()})});f(this,"initRoomObservers",()=>{var o,r;const e=this.floorplanServerData.computed_data.floor_datas||[],s=(((r=(o=this.five)==null?void 0:o.work)==null?void 0:r.observers)||[]).map(a=>{const l=a.panoIndex,c=a.floorIndex,d=e==null?void 0:e.find(h=>h.floor_index===c);if(d){const h=d.rooms.find(u=>u.observer_indexs.includes(l));if(h)return{panoIndex:l,floorIndex:c,name:h.name}}}).filter(Boolean);this.roomObservers=s});f(this,"hideAllLabels",()=>{this.labelItems.forEach(e=>{e.visible=!1,e.inSight=!1}),this.render()});f(this,"fixDoorVisibleAndPosition",()=>{this.initRoomObservers();const{panoIndex:e}=this.five;if(!this.visible||this.five.model.empty||e===null||!this.roomObservers.find(a=>a.panoIndex===e))return;const i=this.roomObservers.find(a=>a.panoIndex===e),o=this.five.work.observers.find(a=>a.panoIndex===e).position.clone(),r=(()=>{if(this.visibleLabelMap.has(e))return this.visibleLabelMap.get(e);{const a=[];return this.doorLabels.forEach((l,c)=>{if(l.roomName===i.name)return;const d=l.position.clone(),h=d.distanceTo(o);if(h<this.MinVisibledistance||h>this.MaxVisibledistance)return;const u=new R.Raycaster,m=d.clone().sub(o).normalize();u.set(o,m);const[A]=this.five.model.intersectRaycaster(u);A&&A.distance+.1<h||a.push(c)}),this.visibleLabelMap.set(e,a),a}})();this.labelItems.forEach((a,l)=>{a.visible=r.includes(l)}),this.fixDoorPosition()});f(this,"fixDoorPosition",()=>{var d,h,u,m,A,p,g,v,y,I,M,D;const{panoIndex:e,camera:i}=this.five;if(e===null)return;if(this.five.currentMode!=="Panorama")return this.hideAllLabels();const s=this.five.getElement(),o=s.clientWidth,r=s.clientHeight,a=i.getWorldDirection(new R.Vector3),l=[],c=[...this.labelItems];if(c.forEach((P,V)=>{if(P.visible){const L=i.position.distanceTo(P.position),X=P.position.clone().add(new R.Vector3(0,this.OffsetHeight,0)),N=X.clone().sub(i.position).normalize().angleTo(a),H=X.clone().project(i),_=(H.x+1)/2.2*100,Q=(-H.y+1)/2.2*100,F=_>=0&&_<=100&&Q>=0&&Q<=100&&L>this.MinVisibledistance&&L<=this.MaxVisibledistance;P.left=_,P.top=Q,P.inSight=F&&N<Math.PI/2,P.cameraToward=jb(this.five),F?l.push({disFromCameraToLabel:L,left:_,top:Q,index:V}):P.transform="translate(-50%, -50%)"}else P.inSight=!1}),l.length>1){let P=0;l.sort((V,L)=>L.disFromCameraToLabel-V.disFromCameraToLabel);for(let V=1;V<l.length;V++){const{index:L,left:X,top:U}=l[V-1],{index:N,left:H,top:_}=l[V],Q=this.container.children[L],F=this.container.children[N];if(!Q||!F)return;const J={left:o*X/100,top:r*U/100,width:(u=(h=(d=Q.children)==null?void 0:d[0])==null?void 0:h.clientWidth)!=null?u:0,height:(p=(A=(m=Q.children)==null?void 0:m[0])==null?void 0:A.clientHeight)!=null?p:0},Z={left:o*H/100,top:r*_/100,width:(y=(v=(g=F.children)==null?void 0:g[0])==null?void 0:v.clientWidth)!=null?y:0,height:(D=(M=(I=F.children)==null?void 0:I[0])==null?void 0:M.clientHeight)!=null?D:0};Lb(J,Z)&&(P++,c[L].transform=`translate(-50%, ${(P-1)*100-50}%)`,c[N].transform=`translate(-50%, ${P*100-50}%)`)}}this.labelItems=c,this.render()});f(this,"onClick",(e,i)=>{if(!this.roomObservers)return;const{work:s}=this.five;let o,r,a=1/0;for(const l of s.observers)if(this.roomObservers.find(d=>d.panoIndex===l.panoIndex&&d.name===e)){const d=l.standingPosition,h=i.distanceTo(d);h<a&&(o=l.panoIndex,r=d.clone().sub(i).normalize(),a=h)}if(r!==null&&o!==null){const l={};if(a>0){const d=new R.Vector3(0,0,-1),h=r.clone(),u=new R.Quaternion;u.setFromUnitVectors(d,h);const m=new R.Euler;m.setFromQuaternion(u,"YXZ"),l.longitude=m.y}this.five.emit("wantsToMoveToPano",o,{},!0)||this.five.moveToPano(o,{longitude:l.longitude})}});f(this,"initData",()=>{var o;this.doorLabels=[];const e=this.five.panoIndex,i=this.floorplanServerData.computed_data.observers[e].floor_index,s=i!==void 0&&((o=this.floorplanServerData.computed_data.floor_datas[i])==null?void 0:o.rooms);this.rooms=s,this.rooms&&this.rooms.length>0&&this.rooms.forEach(r=>{var c;const a=(c=this.floorplanServerData.computed_data.doors)==null?void 0:c.filter(d=>!!(d&&d.name===r.name)),l=this.five.work.observers.filter((d,h)=>!!r.observer_indexs.find(u=>u===h));a&&a.forEach(d=>{const h=d.position;let u=1/0,m;l.forEach(p=>{const g=p.standingPosition,v={x:g.x,y:g.y,z:g.z},y=zb(h,v);y<u&&(u=y,m=v)}),m&&(h.y=m.y+.01);const A=new R.Vector3(h.x,h.y,h.z);A.add(new R.Vector3(-.2,1.8,0).applyEuler(new R.Euler(0,d.rad,0))),this.doorLabels.push({roomName:r.name,name:d.name,position:A,toward:Ob(d.rad)})})}),this.labelItems=this.doorLabels.map(r=>ve(G({},r),{left:0,top:0,visible:!1,inSight:!1,transform:"",cameraToward:""})),this.five.on("wantsToMoveToPano",this.hideAllLabels),this.five.on("modelLoaded",this.fixDoorVisibleAndPosition),this.five.on("panoArrived",this.fixDoorVisibleAndPosition),this.five.on("initAnimationEnded",this.fixDoorPosition),this.five.on("cameraUpdate",this.fixDoorPosition),this.five.on("mouseWheel",this.fixDoorPosition),this.five.on("pinchGesture",this.fixDoorPosition),this.fixDoorVisibleAndPosition()})}stateChangedCallback(e,i){if(this.hooks.hasListener("stateChange")){const s={state:this.state,prevState:e,userAction:i?i.userAction:Bb.userAction};this.hooks.emit("stateChange",s)}}render(){if(!this.enabled){this.doorLabelItems&&this.doorLabelItems.length>0&&this.doorLabelItems.forEach(e=>{e==null||e.$destroy()}),this.doorLabels=void 0;return}this.doorLabelItems&&this.doorLabelItems.forEach(e=>{e.$destroy()}),this.doorLabelItems=[],this.labelItems.forEach(e=>{this.doorLabelItems.push(new Tb({target:this.container,props:{props:e,onClick:()=>{this.onClick(e.name,e.position)}}}))})}initState(){return{enabled:!0,visible:!0}}dispose(){this&&this.five&&(this.five.off("wantsToMoveToPano",this.hideAllLabels),this.five.off("modelLoaded",this.fixDoorVisibleAndPosition),this.five.off("panoArrived",this.fixDoorVisibleAndPosition),this.five.off("initAnimationEnded",this.fixDoorPosition),this.five.off("cameraUpdate",this.fixDoorPosition),this.five.off("mouseWheel",this.fixDoorPosition),this.five.off("pinchGesture",this.fixDoorPosition),super.dispose())}}const Rb=n=>new Vb(n);function Qb(n,t){console.warn(`⛔ ==> [${n}]: ${t}`)}function wu(n,t){console.warn(`🚫 ==> [${n}]: ${t}`)}var xo={},Gb=Nb;function Nb(n,t,e){return n[0]=t[0]+e[0],n[1]=t[1]+e[1],n}var Hb=_b;function _b(n,t,e){return n[0]=t,n[1]=e,n}var Fb=Wb;function Wb(n,t){var e=t[0],i=t[1],s=e*e+i*i;return s>0&&(s=1/Math.sqrt(s),n[0]=t[0]*s,n[1]=t[1]*s),n}var Yb=Ub;function Ub(n,t,e){return n[0]=t[0]-e[0],n[1]=t[1]-e[1],n}var Xb=Zb;function Zb(n,t){return n[0]*t[0]+n[1]*t[1]}var Jb=Gb,ra=Hb,Cu=Fb,qb=Yb,Kb=Xb,Qc=[0,0];xo.computeMiter=function(t,e,i,s,o){return Jb(t,i,s),Cu(t,t),ra(e,-t[1],t[0]),ra(Qc,-i[1],i[0]),o/Kb(e,Qc)};xo.normal=function(t,e){return ra(t,-e[1],e[0]),t};xo.direction=function(t,e,i){return qb(t,e,i),Cu(t,t),t};var qt=xo,xi=[0,0],Gs=[0,0],Gc=[0,0],Zn=[0,0],$b=function(n,t){var e=null,i=[];t&&(n=n.slice(),n.push(n[0]));for(var s=n.length,o=1;o<s;o++){var r=n[o-1],a=n[o],l=o<n.length-1?n[o+1]:null;if(qt.direction(xi,a,r),e||(e=[0,0],qt.normal(e,xi)),o===1&&Dr(i,e,1),!l)qt.normal(e,xi),Dr(i,e,1);else{qt.direction(Gs,l,a);var c=qt.computeMiter(Gc,Zn,xi,Gs,1);Dr(i,Zn,c)}}if(n.length>2&&t){var d=n[s-2],h=n[0],u=n[1];qt.direction(xi,h,d),qt.direction(Gs,u,h),qt.normal(e,xi);var m=qt.computeMiter(Gc,Zn,xi,Gs,1);i[0][0]=Zn.slice(),i[s-1][0]=Zn.slice(),i[0][1]=m,i[s-1][1]=m,i.pop()}return i};function Dr(n,t,e){n.push([[t[0],t[1]],e])}const e1=2,t1=3,i1=3,n1=2;function s1(n){const t=n.width,i=n.unitLength/t,s=t/2,o=n.path;if(o.length===0)return{geometry:new E.BufferGeometry,maxU:0};const r=new E.CurvePath;o.forEach(P=>{const V=o1(P);V&&r.add(V)});const a=Math.ceil(r.getLength()*100);r.arcLengthDivisions=a;const l=r.getPoints(a),c=l.length,d=$b(l.map(P=>[P.x,P.z])),u=(c-1)*e1*t1,m=2*c,A=m*i1,p=m*n1,g=new Uint32Array(u),v=new Float32Array(A),y=new Float32Array(p);let I=0,M=0;for(let P=0;P<l.length;P++){const[V,L]=d[P][0],X=l[P],{x:U,y:N,z:H}=X,_=new R.Vector3(U+V*s,N+.05,H+L*s);v[P*6+0]=_.x,v[P*6+1]=_.y,v[P*6+2]=_.z;const Q=new R.Vector3(U-V*s,N+.05,H-L*s);v[P*6+3]=Q.x,v[P*6+4]=Q.y,v[P*6+5]=Q.z,I+=P>0?l[P-1].clone().sub(l[P]).length():0;const F=I/t/i;if(M=F,y[P*4+0]=0,y[P*4+1]=F,y[P*4+2]=1,y[P*4+3]=F,n.skipPositions){const J=new E.Vector3().lerpVectors(_,Q,.5);if(n.skipPositions.some(ee=>ee.distanceTo(J)<.26))continue}P!==l.length-1&&(g[P*6+0]=P*2+0,g[P*6+1]=P*2+2,g[P*6+2]=P*2+1,g[P*6+3]=P*2+2,g[P*6+4]=P*2+3,g[P*6+5]=P*2+1)}const D=new E.BufferGeometry;return D.setAttribute("position",new E.BufferAttribute(v,3)),D.setAttribute("uv",new E.BufferAttribute(y,2)),D.setIndex(new E.BufferAttribute(g,1)),{geometry:D,maxU:M,curvePath:r,curvePoints:l}}function o1(n){if(r1(n)){const t=[n.closed,n.curve_type,n.tension],e=n.points.map(s=>new E.Vector3().fromArray(s));return new E.CatmullRomCurve3(e,...t)}}function r1(n){return n.type==="CatmullRomCurve3"}function a1(n,t){t.forEach(e=>{const i=new E.SphereGeometry(.02,16,16),s=[],o=[new E.MeshBasicMaterial({color:16776960}),new E.MeshBasicMaterial({color:16711935}),new E.MeshBasicMaterial({color:16711680}),new E.MeshBasicMaterial({color:65535})];if(e.position.length===4)e.position.forEach((r,a)=>{const l=o[a],c=new E.Mesh(i,l);c.position.copy(Et(r)),s.push(c)});else{const r=o[0],a=new E.Mesh(i,r);a.position.copy(Et(e.position)),s.push(a)}s.forEach(r=>{r.material.depthTest=!1,n.scene.add(r)})})}const We=n=>n;function Sr(n){if(!n||n.length<3)return;const t=n.map(an),e=t[1].clone().sub(t[0]),i=t[2].clone().sub(t[1]);return e.cross(i)}function l1(n){return n.stickType==="Plane"}function c1(n){return n.stickType==="3DPoint"}function d1(n){return n.stickType==="3DPoint"||n.stickType==="Plane"}function vt(n){return n.stickType==="Model"&&n.contentType==="MediaModel"}function h1(n){return n.stickType==="Model"&&n.contentType==="Model"}function u1(n){return n.stickType==="Model"}function f1(n){return n.stickType==="Plane"&&n.contentType==="MediaPlane"}function Iu(n){const t=(()=>{if(vt(n)&&n.matrix){const e=new R.Matrix4().fromArray(n.matrix);return n.data.mediaPosition.map(i=>new R.Vector3().fromArray(i).applyMatrix4(e))}else return n.position})();return Vf(t)}function is(n){const t=Iu(n);return Ai(...Array.isArray(t)?t:[t])}function Jn(n,t){if(n===void 0)return;const{min:e,max:i}=t!=null?t:{};if(!(e===void 0&&i===void 0))return!(typeof i=="number"&&i<n||typeof e=="number"&&e>n)}function m1(n){return new Promise(t=>{g1(n)?t():n.once("modelLoaded",()=>t())})}function g1(n){return n.model.name===n.work.model.file&&n.model.loaded}function p1(n,t,e){const s=new E.Plane().setFromNormalAndCoplanarPoint(e,t),o=t.clone().sub(n).cross(new E.Vector3(0,1,0)).setLength(.01),r=new E.Vector3(0,.01,0);return[t.clone().sub(o).sub(r),t.clone().add(o).sub(r),t.clone().add(o).add(r),t.clone().sub(o).add(r)].map(l=>s.projectPoint(l,new E.Vector3))}const Nc=(n,t=1e3/60)=>{let e=null;const i=n;return(...o)=>{e&&clearTimeout(e),e=setTimeout(()=>{i==null||i(...o),e&&clearTimeout(e),e=null},t)}};function A1(n,t=200){let e;return function(...i){e||(n.apply(this,i),e=setTimeout(function(){e=null},t))}}function v1(n,t){const[e,i]=t;if(e>=i||i<=1||e<=1)return-1;const s={},o=r=>(s[r]||(s[r]=n(r)),s[r]);for(let r=e;r<i;r++){const a=o(r),l=o(r-1);if(a<l)return r}return-1}function Hc(n,t){if(!t||typeof ResizeObserver=="undefined"||!ResizeObserver)return{observe:()=>window.addEventListener("resize",n),unobserve:()=>window.removeEventListener("resize",n)};{const e=new ResizeObserver(n);return{observe:()=>e.observe(t),unobserve:()=>e.unobserve(t)}}}function b1(n){var t,e,i,s;if(!n.stickType){const o=(()=>n.pointType==="PointTag"&&n.dimensionType==="3D"?"3DPoint":n.pointType==="PlaneTag"?"Plane":"2DPoint")();n.stickType=o}if(n.contentType==="VRLink"||n.contentType==="PanoLink"||n.contentType==="Link"){const o=n;!((e=(t=o.data)==null?void 0:t.icon)!=null&&e.url)&&!((s=(i=o.style)==null?void 0:i.point)!=null&&s.url)&&(o.data.icon={url:"//vrlab-static.ljcdn.com/release/web/test.09dee741.png",steps:28})}return n}const yn="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=",ns={};var Na=(n=>(n.Default="default",n.GetAudioDuration="getAudioDuration",n.PlayAudio="playAudio",n))(Na||{});function y1(n,t){const e=(t==null?void 0:t.namespace)||"default",i=ns[e]||(ns[e]=[]);let s=i.find(o=>!o.realSrc||o.realSrc===yn);return s||(console.warn("未找到缓存音频,已新建",ns),s=new Pu(yn),i.push(s)),n&&(s.src=n),s}function w1(n,t){const e=(t==null?void 0:t.namespace)||"default",i=ns[e]||(ns[e]=[]),s=n-i.length;if(!(s<=0))for(let o=0;o<s;o++)i.push(new Pu(yn))}class Pu extends Audio{constructor(e){super(e);f(this,"preload","auto");f(this,"crossOrigin","anonymous");f(this,"realSrc","");f(this,"inited",!1);f(this,"removeDocumentEventListener");this.realSrc=e!=null?e:"",this.muted=!0,super.autoplay=!0,super.addEventListener("ended",()=>{this.src=""});const i=()=>C1(this);document.addEventListener("click",i),document.addEventListener("touchend",i),this.removeDocumentEventListener=()=>{document.removeEventListener("click",i),document.removeEventListener("touchend",i)}}get isBlankAudio(){return this.realSrc===yn||!this.realSrc}get src(){return super.src}set src(e){super.src=e,this.realSrc=e,this.removeDocumentEventListener()}get muted(){return super.muted}set muted(e){super.muted=e}clear(){this.currentTime=0,this.src=yn}}function C1(n){n&&(n.inited||(n.src&&(n.inited=!0,n.removeDocumentEventListener()),n.src===yn&&n.play()))}const Eu={visibleConfig:{intersectRaycaster:{enabled:!0,distanceAccuracy:.01,checkPoints:"corner",needPassed:1}}};var Mu=(n=>(n.PointTag="PointTag",n.PlaneTag="PlaneTag",n))(Mu||{}),ku=(n=>(n.Audio="Audio",n.Text="Text",n.ImageText="ImageText",n.Image="Image",n.Video="Video",n.Link="Link",n.Sticker="Sticker",n.VRLink="VRLink",n.PanoLink="PanoLink",n.Marketing="Marketing",n.MediaPlane="MediaPlane",n.MediaModel="MediaModel",n.Model="Model",n.Custom="Custom",n.Unknown="Unknown",n))(ku||{}),xu=(n=>(n.Two="2D",n.Three="3D",n))(xu||{});const I1={globalConfig:{visibleConfig:{followModelVisibility:!0},unfoldedConfig:{autoUnfold:{strategy:"MinimumDistance",distance:{max:5}}},tag3DConfig:{ratio:.0035}},contentTypeConfig:{"Any-Audio-plane":{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},Link:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},VRLink:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},PanoLink:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},MediaPlane:{unfoldedConfig:{keep:"unfolded"},visibleConfig:{alwaysShowWhenMovePano:!0},initialData:{autoplayConfig:{autoplayCarousel:!0,autoplayVideo:!1,autoplayVideoInCarousel:!1}}},MediaModel:{unfoldedConfig:{keep:"unfolded"},visibleConfig:{keep:"visible",visibleFiveMode:["Panorama","Floorplan","Model","Mapview"],alwaysShowWhenMovePano:!0}}}};class P1 extends cs{constructor(e){super(e);f(this,"tagCacheByPanoIndex",{})}getCache(e){var d,h,u;const{five:i}=this,{panoIndex:s,id:o,key:r}=e!=null?e:{},a=s!=null?s:i.getCurrentState().panoIndex;if(a===void 0)throw new Error(`TagCacheController getCache(): fivePanoIndex is ${a}`);const l=`${(h=(d=i.work)==null?void 0:d.workCode)!=null?h:i.model.uuid}-${a}`;let c=this.tagCacheByPanoIndex[l];if(c||(c=new Map,this.tagCacheByPanoIndex[l]=c),o===void 0)return c;if(r===void 0){const m=c.get(o);return m||(c.set(o,{}),c.get(o))}return(u=c.get(o))==null?void 0:u[r]}clearCache(){this.tagCacheByPanoIndex={}}removeCache(){}}const Du=navigator.userAgent.toLowerCase().indexOf("iphone")!==-1;navigator.userAgent.toLowerCase().indexOf("android");const Zs=navigator.userAgent.toLowerCase().indexOf("micromessenger")!==-1,E1=Du&&Zs;function M1(n){if(n.length!==4)return!1;const[t,e,i,s]=n,o=t.distanceTo(e),r=e.distanceTo(i),a=i.distanceTo(s),l=s.distanceTo(t),c=t.distanceTo(i),d=e.distanceTo(s);return o===a&&r===l&&c===d}class Tr extends E.Mesh{constructor(e,i,s){if(e.length!==4)throw new Error("QuadrangleMesh: Invalid number of points, it's not a quadrangle");const[o,r,a,l]=e,c=Ai(...e),d=[o.clone().sub(c),r.clone().sub(c),a.clone().sub(c),l.clone().sub(c)],h=new Su(d,s);super(h,i);f(this,"name","QuadrangleMesh");this.position.copy(c)}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}}class Su extends E.BufferGeometry{constructor(e,i){super();f(this,"name","QuadrangleGeometry");f(this,"points");this.points=e;const s=i!=null?i:M1(e)?64:1;if(e.length!==4){console.error("Invalid number of points, it's not a quadrangle");return}const[o,r,a,l]=e,[c,d,h,u]=[new E.Vector2(0,0),new E.Vector2(1,0),new E.Vector2(1,1),new E.Vector2(0,1)],m=[],A=[];m.push(...o.toArray()),A.push(...c.toArray());for(let g=1;g<s;g++)m.push(o.x+(r.x-o.x)*g/s,o.y+(r.y-o.y)*g/s,o.z+(r.z-o.z)*g/s),A.push(c.x+(d.x-c.x)*g/s,c.y+(d.y-c.y)*g/s);m.push(...r.toArray()),A.push(...d.toArray()),m.push(...a.toArray()),A.push(...h.toArray());for(let g=1;g<s;g++)m.push(a.x+(l.x-a.x)*g/s,a.y+(l.y-a.y)*g/s,a.z+(l.z-a.z)*g/s),A.push(h.x+(u.x-h.x)*g/s,h.y+(u.y-h.y)*g/s);m.push(...l.toArray()),A.push(...u.toArray());const p=[];for(let g=0;g<s;g++)p.push(g,g+1,s*2-g,g,s*2-g,s*2+1-g);this.setAttribute("position",new E.BufferAttribute(new Float32Array(m),3)),this.setAttribute("uv",new E.BufferAttribute(new Float32Array(A),2)),this.setIndex(new E.BufferAttribute(new Uint32Array(p),1))}}function k1(n,t){let e=!Zs;const i=t!=null?t:document.createElement("video");i.preload="metadata",i.crossOrigin="anonymous",i.muted=!0,i.loop=!0,i.playsInline=!0,i.autoplay=!0;const s=new E.VideoTexture(i);s.minFilter=E.LinearFilter,s.magFilter=E.LinearFilter,s.encoding=E.sRGBEncoding,s.metadataLoaded=!1,i.src=n;const o=()=>{s.metadataLoaded||(s.dispatchEvent({type:"videoLoaded"}),s.metadataLoaded=!0)};if(Zs||(i.onloadedmetadata=()=>{o()}),Zs){const r=()=>{if(!e){if(!i.paused){o();return}e=!0,i.muted=!0,i.play().then(()=>{i.pause(),i.currentTime=0,o()})}};document.addEventListener("click",r,{once:!0}),Du&&document.addEventListener("touchstart",r,{once:!0})}return s}function $n(n,t,e){if(n==="fill")return t;if(n==="contain"){const[i,s,o,r]=t,a=i.distanceTo(s),l=o.distanceTo(r),c=i.distanceTo(r),d=s.distanceTo(o),h=a,u=c,m=h/u;if(m>e){const p=u*e,g=new E.Vector3().subVectors(s,i).multiplyScalar((a-p)/2/a),v=new E.Vector3().subVectors(o,r).multiplyScalar((l-p)/2/l);return[i.clone().add(g),s.clone().sub(g),o.clone().sub(v),r.clone().add(v)]}else if(m<e){const p=h/e,g=new E.Vector3().subVectors(r,i).multiplyScalar((c-p)/2/c),v=new E.Vector3().subVectors(o,s).multiplyScalar((d-p)/2/d);return[i.clone().add(g),s.clone().add(v),o.clone().sub(v),r.clone().sub(g)]}else return t}else return console.warn(`objectFit: ${n} is not supported yet`),t}class x1 extends E.ShaderMaterial{constructor(e){super();f(this,"transparent",!1);f(this,"blending",E.CustomBlending);f(this,"blendSrc",E.SrcAlphaFactor);f(this,"blendDst",E.OneMinusSrcAlphaFactor);f(this,"blendSrcAlpha",E.OneFactor);f(this,"blendDstAlpha",E.OneMinusSrcAlphaFactor);f(this,"vertexShader",`
551
+ `,e.container.style.pointerEvents="none";const i=g=>(e.wrapper=g,g.appendChild(e.container),l(),!0),s=g=>{e.itemLabels=Ib(g),l()},o=()=>(e.enabled||(e.enabled=!0,l()),!0),r=()=>(e.enabled&&(e.enabled=!1,l()),!0),a=()=>{d(),e.container.remove()},l=()=>{var g;if(e.wrapper){if(!e.enabled||!e.fiveModeEnabled){(g=e.app)==null||g.$destroy(),e.app=void 0;return}e.app?e.app.$set({five:n,itemLabels:e.itemLabels}):e.app=new Cb({target:e.container,props:{five:n,modelOcclusionEnable:e.modelOcclusionEnable,itemLabels:e.itemLabels,hooks:e.hooks,displayStrategyType:e.displayStrategyType,maxVisibleDistance:e.maxVisibleDistance}})}},c=()=>{n.on("modeChange",h),n.once("dispose",a)},d=()=>{n.off("modeChange",h)},h=g=>{if(g!==je.Five.Mode.Panorama){e.fiveModeEnabled=!1,r();return}n.once("initAnimationEnded",()=>{e.fiveModeEnabled=!0,o()})};return c(),{appendTo:i,load:s,enable:o,disable:r,dispose:a,hooks:e.hooks}},Mb={name:"ItemLabelPlugin",version:0};class kb extends cs{constructor(e){super(e);f(this,"state");f(this,"container");f(this,"enabled");this.five=e,this.five.once("dispose",this.dispose),this.enabled=!0,this.state=this.initState()}enable(e){this.enabled=!0,this.updateState(ve(G({},e),{userAction:!0}))}disable(e){this.enabled=!1,this.updateState(ve(G({},e),{userAction:!0}))}show(e){if(this.state.enabled)return this.setState(ve(G({},this.state),{visible:!0}),e),Promise.resolve()}hide(e){if(this.state.enabled)return this.setState(ve(G({},this.state),{visible:!1}),e),Promise.resolve()}dispose(){this.container.remove()}setState(e,i){if(!this.enabled)return;const s=G({},this.state);this.state=G(G(G({},this.state),e),i),this.stateChangedCallback(s,i)}get visible(){return this.five.state.mode===je.Five.Mode.Panorama}appendTo(e){this.enabled&&(this.container=e,this.render())}updateState(e){this.setState(ve(G({},this.state),{enabled:this.enabled,visible:this.visible}),e)}}function xb(n){ue(n,"svelte-1irjijd",'.plugin-DoorLabelPlugin-item.svelte-1irjijd.svelte-1irjijd{position:absolute;left:0;top:0;width:0;height:0;pointer-events:none;transition:opacity 0.3s ease}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd{position:absolute;top:50%;left:50%;border-radius:0.125rem;background:rgba(0, 0, 0, 0.35);line-height:0.75rem;padding:0.375rem;white-space:nowrap;font-size:0.75rem;font-style:normal;color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform ease 1s, background ease 0.3s, color ease 0.3s}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd::after{content:"";display:block;position:absolute;top:-0.0625rem;left:-0.0625rem;bottom:-0.0625rem;right:-0.0625rem;border-radius:0.125rem;border:0.0625rem solid rgba(0, 0, 0, 0);-o-border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAABlBMVEUAAAD///+l2Z/dAAAAAnRSTlMAIE397fAAAAAVSURBVAjXY2BjgCMQ+PABhIAASRwARxwD8fgzCQAAAAAASUVORK5CYII=") 4;border-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAABlBMVEUAAAD///+l2Z/dAAAAAnRSTlMAIE397fAAAAAVSURBVAjXY2BjgCMQ+PABhIAASRwARxwD8fgzCQAAAAAASUVORK5CYII=") 4;transition:opacity ease 0.3s}.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd:active,.plugin-DoorLabelPlugin-cnt.svelte-1irjijd.svelte-1irjijd:focus{background:rgba(0, 0, 0, 0.5);color:rgba(255, 255, 255, 0.5)}.plugin-DoorLabelPlugin-icon.svelte-1irjijd.svelte-1irjijd{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSIxMHB4IiB2aWV3Qm94PSIwIDAgMTAgMTAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+aW1hZ2Ut566t5aS0PC90aXRsZT4KICAgIDxkZWZzPgogICAgICAgIDxyZWN0IGlkPSJwYXRoLTEiIHg9IjAiIHk9IjAiIHdpZHRoPSIxMCIgaGVpZ2h0PSIxMCI+PC9yZWN0PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iNjYuMDYyMTk3NSUiIHkxPSI1MCUiIHgyPSItMS4xMzY4NjgzOGUtMTElIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtMyI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0ZGRkZGRiIgc3RvcC1vcGFjaXR5PSIwLjg1IiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgICAgIDxsaW5lYXJHcmFkaWVudCB4MT0iODQuMzM5NzMxJSIgeTE9IjUwJSIgeDI9IjIzLjQyODMzNzclIiB5Mj0iNTAlIiBpZD0ibGluZWFyR3JhZGllbnQtNCI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIHN0b3Atb3BhY2l0eT0iMCIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRkZGRkZGIiBzdG9wLW9wYWNpdHk9IjAuOCIgb2Zmc2V0PSIxMDAlIj48L3N0b3A+CiAgICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSLpobXpnaItMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IlZSLeWIhumXtOW8leWvvOagh+etvuWkh+S7vS0zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzM5LjAwMDAwMCwgLTU0My4wMDAwMDApIj4KICAgICAgICAgICAgPGcgaWQ9Iue8lue7hC0y5aSH5Lu9LTEyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzMDUuMDAwMDAwLCA1MzYuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICA8ZyBpZD0iaW1hZ2Ut566t5aS0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzNC4wMDAwMDAsIDcuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPG1hc2sgaWQ9Im1hc2stMiIgZmlsbD0id2hpdGUiPgogICAgICAgICAgICAgICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPgogICAgICAgICAgICAgICAgICAgIDwvbWFzaz4KICAgICAgICAgICAgICAgICAgICA8dXNlIGlkPSJCRyIgZmlsbC1vcGFjaXR5PSIwIiBmaWxsPSIjRDhEOEQ4IiBvcGFjaXR5PSIwLjUxMTQ2Mjk4NCIgeGxpbms6aHJlZj0iI3BhdGgtMSI+PC91c2U+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTcuOTM4ODY5OCwxLjE0Mzc2MTI5IEM4LjI1NDY1NDA0LDEuMjU3NTgwMzUgOC4zMTc4Mjg0LDEuMzAyMTY5OTggOC4zMTc3ODUyMSwxLjM1ODE1MjIzIEM4LjMxNzc1MDcyLDEuNDAyODQzMzUgOC4zMDU3NDkwNywxLjQ0NzUyNTI0IDguMjgxNzg0MTEsMS40ODcyMDUyMSBMOC4yODE3ODQxMSwxLjQ4NzIwNTIxIEw2LjIwOTg5MDQxLDQuOTE3NzQyNDUgQzYuMTM3ODg4MDgsNS4wMzY5NjAyOSA2LjEwMTg4NjkxLDUuMTcxMjIwMiA2LjEwMTg4NjkxLDUuMzA1NDgwMTEgQzYuMTAxODg2OTEsNS40Mzk3NDAwMiA2LjEzNzg4ODA4LDUuNTczOTk5OTQgNi4yMDk4OTA0MSw1LjY5MzIxNzc4IEw2LjIwOTg5MDQxLDUuNjkzMjE3NzggTDguMjgxNzg0MTEsOS4xMjM3NTUwMSBDOC4zMTc0NzQzOCw5LjE4Mjg0OTE2IDguMzI1ODMzMjIsOS4yNTA4MTUyIDguMzEwNDk1OTUsOS4zMTI5MzAyOCBDOC4yOTUxNTg2OCw5LjM3NTA0NTM2IDguMjU2MTI1MzEsOS40MzEzMDk0NyA4LjE5NzAzMTE3LDkuNDY2OTk5NzMgQzguMTU3MzUxMTksOS40OTA5NjQ2OSA4LjExMjY2OTMxLDkuNTAyOTY2MzQgOC4wNjc5NzgxOCw5LjUwMzAwMDgzIEM4LjAyMzI4NzA2LDkuNTAzMDM1MzEgNy45Nzg1ODY3MSw5LjQ5MTEwMjYzIDcuOTM4ODY5OCw5LjQ2NzE5ODkzIEw3LjkzODg2OTgsOS40NjcxOTg5MyBMMS4zNzk5MTIxOCw1LjUxOTY3ODE1IEMxLjMyMDc2MzAyLDUuNDg0MDc5MTIgMS4yODE2NDI4Nyw1LjQyNzg3NTMyIDEuMjY2MjA5NzcsNS4zNjU3ODM5OCBDMS4yNTQ2OTI1Niw1LjMxOTQ0NzMyIDEuMjU2MzY2OTgsNS4yNjk4MzE4MiAxLjI3Mjc1MzMzLDUuMjIzMDU0MDUgTDEuMjcyNzUzMzMsNS4yMjMwNTQwNSBaIiBpZD0i566t5aS0IiBzdHJva2U9InVybCgjbGluZWFyR3JhZGllbnQtNCkiIHN0cm9rZS13aWR0aD0iMC41IiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTMpIiBtYXNrPSJ1cmwoI21hc2stMikiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUuMDM5MjAwLCA1LjMwNTQ4MCkgc2NhbGUoMSwgLTEpIHJvdGF0ZSgtOTAuMDAwMDAwKSB0cmFuc2xhdGUoLTUuMDM5MjAwLCAtNS4zMDU0ODApICI+PC9wYXRoPgogICAgICAgICAgICAgICAgPC9nPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=") no-repeat;background-size:100%;display:inline-block;width:0.625rem;height:0.625rem;margin-left:0.25rem;transform-origin:center}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].left.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].right.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].right.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].forward.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].back.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].back.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].back.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].forward.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].forward.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].right.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].left.svelte-1irjijd .plugin-DoorLabelPlugin-txt.svelte-1irjijd{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].left.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{transform:rotate(-90deg);margin-left:0;margin-right:0.25rem;order:0}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd{color:#f9eac1}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd .plugin-DoorLabelPlugin-icon.svelte-1irjijd{background:url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTBweCIgaGVpZ2h0PSI4cHgiIHZpZXdCb3g9IjAgMCAxMCA4IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgogICAgPHRpdGxlPueureWktDwvdGl0bGU+CiAgICA8ZGVmcz4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjEwLjYzODU4ODQlIiB5MT0iMCUiIHgyPSI5Ni41MTYxNDc0JSIgeTI9IjEyOS43MzEzNTQlIiBpZD0ibGluZWFyR3JhZGllbnQtMSI+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGRkYyQ0MiIG9mZnNldD0iMCUiPjwvc3RvcD4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0VBRDA5QSIgb2Zmc2V0PSI0OC43MTQ0NDc4JSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRDFCMTdFIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPC9kZWZzPgogICAgPGcgaWQ9Iumhtemdoi0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0i5pyq5p2l5a625aSH5Lu9LTI1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzA1LjAwMDAwMCwgLTU0NS4wMDAwMDApIiBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTEpIiBmaWxsLXJ1bGU9Im5vbnplcm8iPgogICAgICAgICAgICA8ZyBpZD0i57yW57uELTLlpIfku70tMTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI0NS4wMDAwMDAsIDUzNy4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSJpbWFnZS3nrq3lpLQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYwLjAwMDAwMCwgNy4wMDAwMDApIj4KICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPSJNOC40OTU3ODI5NCwxLjYxNjQ1MTEgTDYuNDIzODg5MjUsNS4wNDY5ODgzMyBDNi4zMjc4ODYxMyw1LjIwNTk0NTQ1IDYuMzI3ODg2MTMsNS40MDUwMTQ3NyA2LjQyMzg4OTI1LDUuNTYzOTcxODkgTDguNDk1NzgyOTQsOC45OTQ1MDkxMiBDOC42Mzg1NDQwMSw5LjIzMDg4NTcxIDguNTYyNjUzNjQsOS41MzgyMzc1IDguMzI2Mjc3MDYsOS42ODA5OTg1NiBDOC4xNjc1NTcxNiw5Ljc3Njg1ODQgNy45Njg4MjE5NSw5Ljc3NzAxMTc1IDcuODA5OTU0MzEsOS42ODEzOTY5NyBMMS4yNTA5OTY2OSw1LjczMzg3NjE4IEMxLjAxNDQwMDA4LDUuNTkxNDgwMDcgMC45MzgwMzU0ODEsNS4yODQyNDU3NiAxLjA4MDQzMTU5LDUuMDQ3NjQ5MTQgQzEuMTIyNTE0OCw0Ljk3NzcyNjI4IDEuMTgxMDczODMsNC45MTkxNjcyNSAxLjI1MDk5NjY5LDQuODc3MDg0MDQgTDcuODA5OTU0MzEsMC45Mjk1NjMyNTMgQzguMDQ2NTUwOTMsMC43ODcxNjcxNDIgOC4zNTM3ODUyNCwwLjg2MzUzMTczOSA4LjQ5NjE4MTM1LDEuMTAwMTI4MzUgQzguNTkxNzk2MTMsMS4yNTg5OTYgOC41OTE2NDI3OCwxLjQ1NzczMTIgOC40OTU3ODI5NCwxLjYxNjQ1MTEgWiIgaWQ9IueureWktCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNS4wMzkyMDAsIDUuMzA1NDgwKSBzY2FsZSgxLCAtMSkgcm90YXRlKC05MC4wMDAwMDApIHRyYW5zbGF0ZSgtNS4wMzkyMDAsIC01LjMwNTQ4MCkgIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==") no-repeat}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd:active,.plugin-DoorLabelPlugin-cnt--customBrand.svelte-1irjijd.svelte-1irjijd:focus{background:rgba(0, 0, 0, 0.5);color:rgba(249, 234, 193, 0.5)}')}function Db(n){let t,e,i,s,o,r,a,l;return{c(){t=D("div"),e=D("div"),i=D("span"),i.textContent=`${n[8]}`,s=$(),o=D("i"),w(i,"class","plugin-DoorLabelPlugin-txt svelte-1irjijd"),w(o,"class","plugin-DoorLabelPlugin-icon svelte-1irjijd"),w(e,"class",r=Qe(at("plugin-DoorLabelPlugin-cnt",n[0].toward))+" svelte-1irjijd"),w(e,"style",`transform: ${n[6]||"initial"};pointer-events: ${n[5]?"auto":"none"};opacity: ${n[5]?1:0}`),w(e,"data-camera-toward",n[7]),w(t,"style",`left: ${n[3]||0}%;top: ${n[4]||0}%;opacity: ${n[5]?1:0}`),w(t,"class","plugin-DoorLabelPlugin-item svelte-1irjijd")},m(c,d){O(c,t,d),x(t,e),x(e,i),x(e,s),x(e,o),n[10](t),a||(l=be(e,"click",n[9]),a=!0)},p(c,[d]){d&1&&r!==(r=Qe(at("plugin-DoorLabelPlugin-cnt",c[0].toward))+" svelte-1irjijd")&&w(e,"class",r)},i:q,o:q,d(c){c&&z(t),n[10](null),a=!1,l()}}}function Sb(n,t,e){let{props:i}=t,{onClick:s}=t,o,{left:r,top:a,inSight:l,transform:c,panoIndex:d,cameraToward:h,name:u}=i;const m=()=>{if(!r||!a||!l||!o)return;const g=o.current.clientWidth/window.innerWidth*100,v=o.current.clientHeight/window.innerHeight*100;r<=g/2||r>=100-g/2||a<=v/2||a>=100-v/2},A=g=>{s&&s()};function p(g){Ge[g?"unshift":"push"](()=>{o=g,e(2,o)})}return n.$$set=g=>{"props"in g&&e(0,i=g.props),"onClick"in g&&e(1,s=g.onClick)},m(),[i,s,o,r,a,l,c,h,u,A,p]}class Tb extends le{constructor(t){super(),ae(this,t,Sb,Db,oe,{props:0,onClick:1},xb)}}function Lb(n,t){const e=Math.abs(n.top+n.height/2-t.top-t.height/2),i=Math.abs(n.left+n.width/2-t.left-t.width/2),s=(n.height+t.height)/2,o=(n.width+t.width)/2;return!(e>s&&i>o)}function jb(n){const{camera:t}=n,e=t.getWorldDirection(new R.Vector3);let i=Math.atan(e.z/e.x)*180/Math.PI,s="";return e.x<0&&(i+=180),i<0&&(i+=360),i>315||i<=45?s="right":i>45&&i<=135?s="back":i>135&&i<=225?s="left":i>225&&i<=315&&(s="forward"),s}function zb(n,t){return Math.sqrt(Math.pow(n.z-t.z,2)+Math.pow(n.x-t.x,2))}function Ob(n){const t=Math.PI/4;return n>-t&&n<=t?"left":n>t*3||n<=-t*3?"right":n>-t*3&&n<=-t?"forward":n>t&&n<=t*3?"back":""}const Bb={userAction:!0};class Vb extends kb{constructor(e){super(e);f(this,"MinVisibledistance",1.8);f(this,"MaxVisibledistance",5);f(this,"OffsetHeight",-1.3);f(this,"rooms");f(this,"floorplanServerData");f(this,"doorLabelItems");f(this,"visibleLabelMap",new Map);f(this,"labelItems",[]);f(this,"doorLabels");f(this,"roomObservers");f(this,"loadData",(e,i)=>{i&&(this.MaxVisibledistance=i.MaxVisibledistance,this.MinVisibledistance=i.MinVisibledistance,this.OffsetHeight=i.OffsetHeight),this.doorLabelItems&&this.doorLabelItems.length>0&&this.doorLabelItems.forEach(s=>{s.$destroy()}),this.labelItems=[],this.doorLabels=[],this.doorLabelItems=[],this.floorplanServerData=e,typeof this.five.ready=="function"?this.five.ready().then(()=>this.initData()):this.five.once("panoArrived",()=>{this.initData()})});f(this,"initRoomObservers",()=>{var o,r;const e=this.floorplanServerData.computed_data.floor_datas||[],s=(((r=(o=this.five)==null?void 0:o.work)==null?void 0:r.observers)||[]).map(a=>{const l=a.panoIndex,c=a.floorIndex,d=e==null?void 0:e.find(h=>h.floor_index===c);if(d){const h=d.rooms.find(u=>u.observer_indexs.includes(l));if(h)return{panoIndex:l,floorIndex:c,name:h.name}}}).filter(Boolean);this.roomObservers=s});f(this,"hideAllLabels",()=>{this.labelItems.forEach(e=>{e.visible=!1,e.inSight=!1}),this.render()});f(this,"fixDoorVisibleAndPosition",()=>{this.initRoomObservers();const{panoIndex:e}=this.five;if(!this.visible||this.five.model.empty||e===null||!this.roomObservers.find(a=>a.panoIndex===e))return;const i=this.roomObservers.find(a=>a.panoIndex===e),o=this.five.work.observers.find(a=>a.panoIndex===e).position.clone(),r=(()=>{if(this.visibleLabelMap.has(e))return this.visibleLabelMap.get(e);{const a=[];return this.doorLabels.forEach((l,c)=>{if(l.roomName===i.name)return;const d=l.position.clone(),h=d.distanceTo(o);if(h<this.MinVisibledistance||h>this.MaxVisibledistance)return;const u=new R.Raycaster,m=d.clone().sub(o).normalize();u.set(o,m);const[A]=this.five.model.intersectRaycaster(u);A&&A.distance+.1<h||a.push(c)}),this.visibleLabelMap.set(e,a),a}})();this.labelItems.forEach((a,l)=>{a.visible=r.includes(l)}),this.fixDoorPosition()});f(this,"fixDoorPosition",()=>{var d,h,u,m,A,p,g,v,y,I,M,B;const{panoIndex:e,camera:i}=this.five;if(e===null)return;if(this.five.currentMode!=="Panorama")return this.hideAllLabels();const s=this.five.getElement(),o=s.clientWidth,r=s.clientHeight,a=i.getWorldDirection(new R.Vector3),l=[],c=[...this.labelItems];if(c.forEach((P,V)=>{if(P.visible){const L=i.position.distanceTo(P.position),X=P.position.clone().add(new R.Vector3(0,this.OffsetHeight,0)),N=X.clone().sub(i.position).normalize().angleTo(a),H=X.clone().project(i),_=(H.x+1)/2.2*100,Q=(-H.y+1)/2.2*100,F=_>=0&&_<=100&&Q>=0&&Q<=100&&L>this.MinVisibledistance&&L<=this.MaxVisibledistance;P.left=_,P.top=Q,P.inSight=F&&N<Math.PI/2,P.cameraToward=jb(this.five),F?l.push({disFromCameraToLabel:L,left:_,top:Q,index:V}):P.transform="translate(-50%, -50%)"}else P.inSight=!1}),l.length>1){let P=0;l.sort((V,L)=>L.disFromCameraToLabel-V.disFromCameraToLabel);for(let V=1;V<l.length;V++){const{index:L,left:X,top:Y}=l[V-1],{index:N,left:H,top:_}=l[V],Q=this.container.children[L],F=this.container.children[N];if(!Q||!F)return;const J={left:o*X/100,top:r*Y/100,width:(u=(h=(d=Q.children)==null?void 0:d[0])==null?void 0:h.clientWidth)!=null?u:0,height:(p=(A=(m=Q.children)==null?void 0:m[0])==null?void 0:A.clientHeight)!=null?p:0},Z={left:o*H/100,top:r*_/100,width:(y=(v=(g=F.children)==null?void 0:g[0])==null?void 0:v.clientWidth)!=null?y:0,height:(B=(M=(I=F.children)==null?void 0:I[0])==null?void 0:M.clientHeight)!=null?B:0};Lb(J,Z)&&(P++,c[L].transform=`translate(-50%, ${(P-1)*100-50}%)`,c[N].transform=`translate(-50%, ${P*100-50}%)`)}}this.labelItems=c,this.render()});f(this,"onClick",(e,i)=>{if(!this.roomObservers)return;const{work:s}=this.five;let o,r,a=1/0;for(const l of s.observers)if(this.roomObservers.find(d=>d.panoIndex===l.panoIndex&&d.name===e)){const d=l.standingPosition,h=i.distanceTo(d);h<a&&(o=l.panoIndex,r=d.clone().sub(i).normalize(),a=h)}if(r!==null&&o!==null){const l={};if(a>0){const d=new R.Vector3(0,0,-1),h=r.clone(),u=new R.Quaternion;u.setFromUnitVectors(d,h);const m=new R.Euler;m.setFromQuaternion(u,"YXZ"),l.longitude=m.y}this.five.emit("wantsToMoveToPano",o,{},!0)||this.five.moveToPano(o,{longitude:l.longitude})}});f(this,"initData",()=>{var o;this.doorLabels=[];const e=this.five.panoIndex,i=this.floorplanServerData.computed_data.observers[e].floor_index,s=i!==void 0&&((o=this.floorplanServerData.computed_data.floor_datas[i])==null?void 0:o.rooms);this.rooms=s,this.rooms&&this.rooms.length>0&&this.rooms.forEach(r=>{var c;const a=(c=this.floorplanServerData.computed_data.doors)==null?void 0:c.filter(d=>!!(d&&d.name===r.name)),l=this.five.work.observers.filter((d,h)=>!!r.observer_indexs.find(u=>u===h));a&&a.forEach(d=>{const h=d.position;let u=1/0,m;l.forEach(p=>{const g=p.standingPosition,v={x:g.x,y:g.y,z:g.z},y=zb(h,v);y<u&&(u=y,m=v)}),m&&(h.y=m.y+.01);const A=new R.Vector3(h.x,h.y,h.z);A.add(new R.Vector3(-.2,1.8,0).applyEuler(new R.Euler(0,d.rad,0))),this.doorLabels.push({roomName:r.name,name:d.name,position:A,toward:Ob(d.rad)})})}),this.labelItems=this.doorLabels.map(r=>ve(G({},r),{left:0,top:0,visible:!1,inSight:!1,transform:"",cameraToward:""})),this.five.on("wantsToMoveToPano",this.hideAllLabels),this.five.on("modelLoaded",this.fixDoorVisibleAndPosition),this.five.on("panoArrived",this.fixDoorVisibleAndPosition),this.five.on("initAnimationEnded",this.fixDoorPosition),this.five.on("cameraUpdate",this.fixDoorPosition),this.five.on("mouseWheel",this.fixDoorPosition),this.five.on("pinchGesture",this.fixDoorPosition),this.fixDoorVisibleAndPosition()})}stateChangedCallback(e,i){if(this.hooks.hasListener("stateChange")){const s={state:this.state,prevState:e,userAction:i?i.userAction:Bb.userAction};this.hooks.emit("stateChange",s)}}render(){if(!this.enabled){this.doorLabelItems&&this.doorLabelItems.length>0&&this.doorLabelItems.forEach(e=>{e==null||e.$destroy()}),this.doorLabels=void 0;return}this.doorLabelItems&&this.doorLabelItems.forEach(e=>{e.$destroy()}),this.doorLabelItems=[],this.labelItems.forEach(e=>{this.doorLabelItems.push(new Tb({target:this.container,props:{props:e,onClick:()=>{this.onClick(e.name,e.position)}}}))})}initState(){return{enabled:!0,visible:!0}}dispose(){this&&this.five&&(this.five.off("wantsToMoveToPano",this.hideAllLabels),this.five.off("modelLoaded",this.fixDoorVisibleAndPosition),this.five.off("panoArrived",this.fixDoorVisibleAndPosition),this.five.off("initAnimationEnded",this.fixDoorPosition),this.five.off("cameraUpdate",this.fixDoorPosition),this.five.off("mouseWheel",this.fixDoorPosition),this.five.off("pinchGesture",this.fixDoorPosition),super.dispose())}}const Rb=n=>new Vb(n);function Qb(n,t){console.warn(`⛔ ==> [${n}]: ${t}`)}function wu(n,t){console.warn(`🚫 ==> [${n}]: ${t}`)}var Do={},Gb=Nb;function Nb(n,t,e){return n[0]=t[0]+e[0],n[1]=t[1]+e[1],n}var Hb=_b;function _b(n,t,e){return n[0]=t,n[1]=e,n}var Fb=Wb;function Wb(n,t){var e=t[0],i=t[1],s=e*e+i*i;return s>0&&(s=1/Math.sqrt(s),n[0]=t[0]*s,n[1]=t[1]*s),n}var Yb=Ub;function Ub(n,t,e){return n[0]=t[0]-e[0],n[1]=t[1]-e[1],n}var Xb=Zb;function Zb(n,t){return n[0]*t[0]+n[1]*t[1]}var Jb=Gb,ra=Hb,Cu=Fb,qb=Yb,Kb=Xb,Qc=[0,0];Do.computeMiter=function(t,e,i,s,o){return Jb(t,i,s),Cu(t,t),ra(e,-t[1],t[0]),ra(Qc,-i[1],i[0]),o/Kb(e,Qc)};Do.normal=function(t,e){return ra(t,-e[1],e[0]),t};Do.direction=function(t,e,i){return qb(t,e,i),Cu(t,t),t};var qt=Do,xi=[0,0],Gs=[0,0],Gc=[0,0],Zn=[0,0],$b=function(n,t){var e=null,i=[];t&&(n=n.slice(),n.push(n[0]));for(var s=n.length,o=1;o<s;o++){var r=n[o-1],a=n[o],l=o<n.length-1?n[o+1]:null;if(qt.direction(xi,a,r),e||(e=[0,0],qt.normal(e,xi)),o===1&&Sr(i,e,1),!l)qt.normal(e,xi),Sr(i,e,1);else{qt.direction(Gs,l,a);var c=qt.computeMiter(Gc,Zn,xi,Gs,1);Sr(i,Zn,c)}}if(n.length>2&&t){var d=n[s-2],h=n[0],u=n[1];qt.direction(xi,h,d),qt.direction(Gs,u,h),qt.normal(e,xi);var m=qt.computeMiter(Gc,Zn,xi,Gs,1);i[0][0]=Zn.slice(),i[s-1][0]=Zn.slice(),i[0][1]=m,i[s-1][1]=m,i.pop()}return i};function Sr(n,t,e){n.push([[t[0],t[1]],e])}const e1=2,t1=3,i1=3,n1=2;function s1(n){const t=n.width,i=n.unitLength/t,s=t/2,o=n.path;if(o.length===0)return{geometry:new E.BufferGeometry,maxU:0};const r=new E.CurvePath;o.forEach(P=>{const V=o1(P);V&&r.add(V)});const a=Math.ceil(r.getLength()*100);r.arcLengthDivisions=a;const l=r.getPoints(a),c=l.length,d=$b(l.map(P=>[P.x,P.z])),u=(c-1)*e1*t1,m=2*c,A=m*i1,p=m*n1,g=new Uint32Array(u),v=new Float32Array(A),y=new Float32Array(p);let I=0,M=0;for(let P=0;P<l.length;P++){const[V,L]=d[P][0],X=l[P],{x:Y,y:N,z:H}=X,_=new R.Vector3(Y+V*s,N+.05,H+L*s);v[P*6+0]=_.x,v[P*6+1]=_.y,v[P*6+2]=_.z;const Q=new R.Vector3(Y-V*s,N+.05,H-L*s);v[P*6+3]=Q.x,v[P*6+4]=Q.y,v[P*6+5]=Q.z,I+=P>0?l[P-1].clone().sub(l[P]).length():0;const F=I/t/i;if(M=F,y[P*4+0]=0,y[P*4+1]=F,y[P*4+2]=1,y[P*4+3]=F,n.skipPositions){const J=new E.Vector3().lerpVectors(_,Q,.5);if(n.skipPositions.some(ee=>ee.distanceTo(J)<.26))continue}P!==l.length-1&&(g[P*6+0]=P*2+0,g[P*6+1]=P*2+2,g[P*6+2]=P*2+1,g[P*6+3]=P*2+2,g[P*6+4]=P*2+3,g[P*6+5]=P*2+1)}const B=new E.BufferGeometry;return B.setAttribute("position",new E.BufferAttribute(v,3)),B.setAttribute("uv",new E.BufferAttribute(y,2)),B.setIndex(new E.BufferAttribute(g,1)),{geometry:B,maxU:M,curvePath:r,curvePoints:l}}function o1(n){if(r1(n)){const t=[n.closed,n.curve_type,n.tension],e=n.points.map(s=>new E.Vector3().fromArray(s));return new E.CatmullRomCurve3(e,...t)}}function r1(n){return n.type==="CatmullRomCurve3"}function a1(n,t){t.forEach(e=>{const i=new E.SphereGeometry(.02,16,16),s=[],o=[new E.MeshBasicMaterial({color:16776960}),new E.MeshBasicMaterial({color:16711935}),new E.MeshBasicMaterial({color:16711680}),new E.MeshBasicMaterial({color:65535})];if(e.position.length===4)e.position.forEach((r,a)=>{const l=o[a],c=new E.Mesh(i,l);c.position.copy(Et(r)),s.push(c)});else{const r=o[0],a=new E.Mesh(i,r);a.position.copy(Et(e.position)),s.push(a)}s.forEach(r=>{r.material.depthTest=!1,n.scene.add(r)})})}const We=n=>n;function Tr(n){if(!n||n.length<3)return;const t=n.map(an),e=t[1].clone().sub(t[0]),i=t[2].clone().sub(t[1]);return e.cross(i)}function l1(n){return n.stickType==="Plane"}function c1(n){return n.stickType==="3DPoint"}function d1(n){return n.stickType==="3DPoint"||n.stickType==="Plane"}function vt(n){return n.stickType==="Model"&&n.contentType==="MediaModel"}function h1(n){return n.stickType==="Model"&&n.contentType==="Model"}function u1(n){return n.stickType==="Model"}function f1(n){return n.stickType==="Plane"&&n.contentType==="MediaPlane"}function Iu(n){const t=(()=>{if(vt(n)&&n.matrix){const e=new R.Matrix4().fromArray(n.matrix);return n.data.mediaPosition.map(i=>new R.Vector3().fromArray(i).applyMatrix4(e))}else return n.position})();return Vf(t)}function is(n){const t=Iu(n);return Ai(...Array.isArray(t)?t:[t])}function Jn(n,t){if(n===void 0)return;const{min:e,max:i}=t!=null?t:{};if(!(e===void 0&&i===void 0))return!(typeof i=="number"&&i<n||typeof e=="number"&&e>n)}function m1(n){return new Promise(t=>{g1(n)?t():n.once("modelLoaded",()=>t())})}function g1(n){return n.model.name===n.work.model.file&&n.model.loaded}function p1(n,t,e){const s=new E.Plane().setFromNormalAndCoplanarPoint(e,t),o=t.clone().sub(n).cross(new E.Vector3(0,1,0)).setLength(.01),r=new E.Vector3(0,.01,0);return[t.clone().sub(o).sub(r),t.clone().add(o).sub(r),t.clone().add(o).add(r),t.clone().sub(o).add(r)].map(l=>s.projectPoint(l,new E.Vector3))}const Nc=(n,t=1e3/60)=>{let e=null;const i=n;return(...o)=>{e&&clearTimeout(e),e=setTimeout(()=>{i==null||i(...o),e&&clearTimeout(e),e=null},t)}};function A1(n,t=200){let e;return function(...i){e||(n.apply(this,i),e=setTimeout(function(){e=null},t))}}function v1(n,t){const[e,i]=t;if(e>=i||i<=1||e<=1)return-1;const s={},o=r=>(s[r]||(s[r]=n(r)),s[r]);for(let r=e;r<i;r++){const a=o(r),l=o(r-1);if(a<l)return r}return-1}function Hc(n,t){if(!t||typeof ResizeObserver=="undefined"||!ResizeObserver)return{observe:()=>window.addEventListener("resize",n),unobserve:()=>window.removeEventListener("resize",n)};{const e=new ResizeObserver(n);return{observe:()=>e.observe(t),unobserve:()=>e.unobserve(t)}}}function b1(n){var t,e,i,s;if(!n.stickType){const o=(()=>n.pointType==="PointTag"&&n.dimensionType==="3D"?"3DPoint":n.pointType==="PlaneTag"?"Plane":"2DPoint")();n.stickType=o}if(n.contentType==="VRLink"||n.contentType==="PanoLink"||n.contentType==="Link"){const o=n;!((e=(t=o.data)==null?void 0:t.icon)!=null&&e.url)&&!((s=(i=o.style)==null?void 0:i.point)!=null&&s.url)&&(o.data.icon={url:"//vrlab-static.ljcdn.com/release/web/test.09dee741.png",steps:28})}return n}const yn="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=",ns={};var Na=(n=>(n.Default="default",n.GetAudioDuration="getAudioDuration",n.PlayAudio="playAudio",n))(Na||{});function y1(n,t){const e=(t==null?void 0:t.namespace)||"default",i=ns[e]||(ns[e]=[]);let s=i.find(o=>!o.realSrc||o.realSrc===yn);return s||(console.warn("未找到缓存音频,已新建",ns),s=new Pu(yn),i.push(s)),n&&(s.src=n),s}function w1(n,t){const e=(t==null?void 0:t.namespace)||"default",i=ns[e]||(ns[e]=[]),s=n-i.length;if(!(s<=0))for(let o=0;o<s;o++)i.push(new Pu(yn))}class Pu extends Audio{constructor(e){super(e);f(this,"preload","auto");f(this,"crossOrigin","anonymous");f(this,"realSrc","");f(this,"inited",!1);f(this,"removeDocumentEventListener");this.realSrc=e!=null?e:"",this.muted=!0,super.autoplay=!0,super.addEventListener("ended",()=>{this.src=""});const i=()=>C1(this);document.addEventListener("click",i),document.addEventListener("touchend",i),this.removeDocumentEventListener=()=>{document.removeEventListener("click",i),document.removeEventListener("touchend",i)}}get isBlankAudio(){return this.realSrc===yn||!this.realSrc}get src(){return super.src}set src(e){super.src=e,this.realSrc=e,this.removeDocumentEventListener()}get muted(){return super.muted}set muted(e){super.muted=e}clear(){this.currentTime=0,this.src=yn}}function C1(n){n&&(n.inited||(n.src&&(n.inited=!0,n.removeDocumentEventListener()),n.src===yn&&n.play()))}const Eu={visibleConfig:{intersectRaycaster:{enabled:!0,distanceAccuracy:.01,checkPoints:"corner",needPassed:1}}};var Mu=(n=>(n.PointTag="PointTag",n.PlaneTag="PlaneTag",n))(Mu||{}),ku=(n=>(n.Audio="Audio",n.Text="Text",n.ImageText="ImageText",n.Image="Image",n.Video="Video",n.Link="Link",n.Sticker="Sticker",n.VRLink="VRLink",n.PanoLink="PanoLink",n.Marketing="Marketing",n.MediaPlane="MediaPlane",n.MediaModel="MediaModel",n.Model="Model",n.Custom="Custom",n.Unknown="Unknown",n))(ku||{}),xu=(n=>(n.Two="2D",n.Three="3D",n))(xu||{});const I1={globalConfig:{visibleConfig:{followModelVisibility:!0},unfoldedConfig:{autoUnfold:{strategy:"MinimumDistance",distance:{max:5}}},tag3DConfig:{ratio:.0035}},contentTypeConfig:{"Any-Audio-plane":{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},Link:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},VRLink:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},PanoLink:{unfoldedConfig:{keep:"unfolded"},initialState:{unfolded:!0}},MediaPlane:{unfoldedConfig:{keep:"unfolded"},visibleConfig:{alwaysShowWhenMovePano:!0},initialData:{autoplayConfig:{autoplayCarousel:!0,autoplayVideo:!1,autoplayVideoInCarousel:!1}}},MediaModel:{unfoldedConfig:{keep:"unfolded"},visibleConfig:{keep:"visible",visibleFiveMode:["Panorama","Floorplan","Model","Mapview"],alwaysShowWhenMovePano:!0}}}};class P1 extends cs{constructor(e){super(e);f(this,"tagCacheByPanoIndex",{})}getCache(e){var d,h,u;const{five:i}=this,{panoIndex:s,id:o,key:r}=e!=null?e:{},a=s!=null?s:i.getCurrentState().panoIndex;if(a===void 0)throw new Error(`TagCacheController getCache(): fivePanoIndex is ${a}`);const l=`${(h=(d=i.work)==null?void 0:d.workCode)!=null?h:i.model.uuid}-${a}`;let c=this.tagCacheByPanoIndex[l];if(c||(c=new Map,this.tagCacheByPanoIndex[l]=c),o===void 0)return c;if(r===void 0){const m=c.get(o);return m||(c.set(o,{}),c.get(o))}return(u=c.get(o))==null?void 0:u[r]}clearCache(){this.tagCacheByPanoIndex={}}removeCache(){}}const Du=navigator.userAgent.toLowerCase().indexOf("iphone")!==-1;navigator.userAgent.toLowerCase().indexOf("android");const Js=navigator.userAgent.toLowerCase().indexOf("micromessenger")!==-1,E1=Du&&Js;function M1(n){if(n.length!==4)return!1;const[t,e,i,s]=n,o=t.distanceTo(e),r=e.distanceTo(i),a=i.distanceTo(s),l=s.distanceTo(t),c=t.distanceTo(i),d=e.distanceTo(s);return o===a&&r===l&&c===d}class Lr extends E.Mesh{constructor(e,i,s){if(e.length!==4)throw new Error("QuadrangleMesh: Invalid number of points, it's not a quadrangle");const[o,r,a,l]=e,c=Ai(...e),d=[o.clone().sub(c),r.clone().sub(c),a.clone().sub(c),l.clone().sub(c)],h=new Su(d,s);super(h,i);f(this,"name","QuadrangleMesh");this.position.copy(c)}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}}class Su extends E.BufferGeometry{constructor(e,i){super();f(this,"name","QuadrangleGeometry");f(this,"points");this.points=e;const s=i!=null?i:M1(e)?64:1;if(e.length!==4){console.error("Invalid number of points, it's not a quadrangle");return}const[o,r,a,l]=e,[c,d,h,u]=[new E.Vector2(0,0),new E.Vector2(1,0),new E.Vector2(1,1),new E.Vector2(0,1)],m=[],A=[];m.push(...o.toArray()),A.push(...c.toArray());for(let g=1;g<s;g++)m.push(o.x+(r.x-o.x)*g/s,o.y+(r.y-o.y)*g/s,o.z+(r.z-o.z)*g/s),A.push(c.x+(d.x-c.x)*g/s,c.y+(d.y-c.y)*g/s);m.push(...r.toArray()),A.push(...d.toArray()),m.push(...a.toArray()),A.push(...h.toArray());for(let g=1;g<s;g++)m.push(a.x+(l.x-a.x)*g/s,a.y+(l.y-a.y)*g/s,a.z+(l.z-a.z)*g/s),A.push(h.x+(u.x-h.x)*g/s,h.y+(u.y-h.y)*g/s);m.push(...l.toArray()),A.push(...u.toArray());const p=[];for(let g=0;g<s;g++)p.push(g,g+1,s*2-g,g,s*2-g,s*2+1-g);this.setAttribute("position",new E.BufferAttribute(new Float32Array(m),3)),this.setAttribute("uv",new E.BufferAttribute(new Float32Array(A),2)),this.setIndex(new E.BufferAttribute(new Uint32Array(p),1))}}function k1(n,t){let e=!Js;const i=t!=null?t:document.createElement("video");i.preload="metadata",i.crossOrigin="anonymous",i.muted=!0,i.loop=!0,i.playsInline=!0,i.autoplay=!0;const s=new E.VideoTexture(i);s.minFilter=E.LinearFilter,s.magFilter=E.LinearFilter,s.encoding=E.sRGBEncoding,s.metadataLoaded=!1,i.src=n;const o=()=>{s.metadataLoaded||(s.dispatchEvent({type:"videoLoaded"}),s.metadataLoaded=!0)};if(Js||(i.onloadedmetadata=()=>{o()}),Js){const r=()=>{if(!e){if(!i.paused){o();return}e=!0,i.muted=!0,i.play().then(()=>{i.pause(),i.currentTime=0,o()})}};document.addEventListener("click",r,{once:!0}),Du&&document.addEventListener("touchstart",r,{once:!0})}return s}function $n(n,t,e){if(n==="fill")return t;if(n==="contain"){const[i,s,o,r]=t,a=i.distanceTo(s),l=o.distanceTo(r),c=i.distanceTo(r),d=s.distanceTo(o),h=a,u=c,m=h/u;if(m>e){const p=u*e,g=new E.Vector3().subVectors(s,i).multiplyScalar((a-p)/2/a),v=new E.Vector3().subVectors(o,r).multiplyScalar((l-p)/2/l);return[i.clone().add(g),s.clone().sub(g),o.clone().sub(v),r.clone().add(v)]}else if(m<e){const p=h/e,g=new E.Vector3().subVectors(r,i).multiplyScalar((c-p)/2/c),v=new E.Vector3().subVectors(o,s).multiplyScalar((d-p)/2/d);return[i.clone().add(g),s.clone().add(v),o.clone().sub(v),r.clone().sub(g)]}else return t}else return console.warn(`objectFit: ${n} is not supported yet`),t}class x1 extends E.ShaderMaterial{constructor(e){super();f(this,"transparent",!1);f(this,"blending",E.CustomBlending);f(this,"blendSrc",E.SrcAlphaFactor);f(this,"blendDst",E.OneMinusSrcAlphaFactor);f(this,"blendSrcAlpha",E.OneFactor);f(this,"blendDstAlpha",E.OneMinusSrcAlphaFactor);f(this,"vertexShader",`
552
552
  varying vec2 vUv;
553
553
  void main() {
554
554
  vUv = uv;
@@ -561,30 +561,32 @@ void main() {
561
561
  void main() {
562
562
  gl_FragColor = texture2D(map, vUv);
563
563
  }
564
- `);this.uniforms={map:{value:e}}}}let Tu=class extends E.Mesh{constructor(){super(...arguments);f(this,"name","MediaPlane");f(this,"src")}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}dispose(){this.traverse(e=>{if(e.isMesh){const i=e;i.geometry.dispose(),(i.material instanceof Array?i.material:[i.material]).forEach(o=>{o.dispose()})}})}};class _c extends Tu{constructor(e,i,s){var a;super();f(this,"name","PanoTagPluginImagePlane");this.src=e;const o=(a=s==null?void 0:s.resolveZFighting)!=null?a:!0;let r=i;if(o){const l=new E.Vector3().crossVectors(new E.Vector3().subVectors(i[0],i[1]),new E.Vector3().subVectors(i[0],i[3])).normalize().multiplyScalar(5e-4);r=i.map(c=>c.clone().add(l))}vn(e).then(l=>{var p;const c=new URL(e,location.href).pathname.endsWith(".png"),d=new E.MeshBasicMaterial({map:l,transparent:c}),h=$n((p=s==null?void 0:s.objectFit)!=null?p:"contain",r,l.image.width/l.image.height),u=Ai(...h),m=h.map(g=>g.clone().sub(u)),A=new Su(m);this.position.copy(u),this.geometry=A,this.material=d}).catch(l=>{console.error(`Imageplane error ${l}`)})}}class aa extends Tu{constructor(e,i,s){const{videoCoverSrc:o,objectFit:r="contain",playButton:a="withText",paused:l=!0,videoTextureMap:c,ImageTextureMap:d,domEvents:h}=s!=null?s:{};super();f(this,"isVideoPlane",!0);f(this,"name","PanoTagPluginImagePlane");f(this,"videoInstance");f(this,"onVideoReady");f(this,"objectFit");f(this,"buttonSrc");f(this,"videoCoverSrc");f(this,"domEvents");f(this,"disposers",[]);f(this,"cornerPoints");f(this,"videoMesh");f(this,"coverMesh");f(this,"buttonMesh");f(this,"videoTextureMap");f(this,"ImageTextureMap");this.cornerPoints=i,this.src=e,this.buttonSrc=(()=>a==="withText"?Ga:a==="withoutText"?oa:typeof a=="string"?a:oa)(),this.videoCoverSrc=o,this.objectFit=r,this.videoTextureMap=c,this.ImageTextureMap=d,this.domEvents=h,this.position.copy(Ai(...i)),this.videoCoverSrc&&l?this.addCoverMesh().then(()=>this.addButtonMesh()):this.addVideoMesh().then(()=>{l?this.addButtonMesh():this.play(!0)}),this.addEventListener("removed",()=>{this.remove(...this.children)}),this.addEventListener("dispose",()=>{var u;(u=this.disposers)==null||u.forEach(m=>m==null?void 0:m())})}play(e=!1){return W(this,null,function*(){this.videoMesh||(yield this.addVideoMesh()),this.showPlayUI(),this.videoInstance.paused&&this.videoInstance.play().then(()=>this.showPlayUI()).catch(i=>{this.pause(),console.error("play error",i)}),this.videoInstance.muted=e,this.render()})}pause(){this.videoInstance&&(this.videoInstance.pause(),this.showPauseUI().then(()=>this.render()))}initialRenderHooks(e){const s=e(()=>{var o;this.videoMesh&&((o=this.videoInstance)==null?void 0:o.paused)===!1&&(this.videoMesh.needsRender=!0)});this.disposers.push(()=>s)}showPlayUI(){this.coverMesh&&(this.coverMesh.visible=!1),this.remove(this.buttonMesh),this.videoMesh.visible=!0}showPauseUI(){return W(this,null,function*(){this.coverMesh?(this.coverMesh.visible=!0,this.videoMesh&&(this.videoMesh.visible=!1)):(yield this.addCoverMesh(),this.coverMesh&&(this.videoMesh.visible=!1)),this.addButtonMesh().then(()=>this.render())})}render(){var e;this.videoMesh&&(this.videoMesh.needsRender=!0),this.coverMesh&&(this.coverMesh.needsRender=!0),this.buttonMesh&&(this.buttonMesh.needsRender=!0),this.videoMesh&&((e=this.videoInstance)==null?void 0:e.paused)===!1&&(this.videoMesh.needsRender=!0)}addCoverMesh(){return W(this,null,function*(){if(this.children.includes(this.coverMesh))return;const e=yield(()=>W(this,null,function*(){if(this.coverMesh)return this.coverMesh;if(!this.videoCoverSrc)return;const i=yield this.getImageTexture(this.videoCoverSrc);if(!i)return;const s=new E.MeshBasicMaterial({transparent:!1,map:i}),o=$n(this.objectFit,this.cornerPoints,i.image.width/i.image.height),r=new Tr(o,s);return r.position.copy(new R.Vector3(0,0,0)),r.name="videoCoverMesh",r}))();return e&&(this.children.includes(this.coverMesh)||(this.add(e),this.coverMesh=e)),e})}addVideoMesh(){return W(this,null,function*(){if(this.children.includes(this.videoMesh))return;const e=yield(()=>W(this,null,function*(){if(this.videoMesh)return this.videoMesh;if(!this.src)return;const s=this.getVideoTexture(this.src),o=new E.MeshBasicMaterial({transparent:!1,map:s}),r=yield new Promise(l=>{s.metadataLoaded?l($n(this.objectFit,this.cornerPoints,s.image.videoWidth/s.image.videoHeight)):s.addEventListener("videoLoaded",()=>l($n(this.objectFit,this.cornerPoints,s.image.videoWidth/s.image.videoHeight)))}),a=new Tr(r,o);return a.name="videoMesh",a.position.copy(new R.Vector3(0,0,0)),a}))();if(!e)return;this.domEvents.addAutoBindEventListener(e,"click",()=>{!this.videoInstance.paused&&this.videoInstance.muted?this.videoInstance.muted=!1:this.pause()});const i=e.material.map.image;return i.addEventListener("playing",()=>{this.coverMesh||this.remove(this.buttonMesh),this.render()}),i.addEventListener("pause",()=>{this.showPauseUI(),this.render()}),this.children.includes(this.videoMesh)||(this.add(e),this.videoMesh=e,this.videoInstance=i),e})}addButtonMesh(){return W(this,null,function*(){if(this.children.includes(this.buttonMesh))return;const e=yield(()=>W(this,null,function*(){var u,m,A,p;if(this.buttonMesh)return this.buttonMesh;const i=(m=(u=this.videoMesh)==null?void 0:u.geometry.points[0].distanceTo(this.videoMesh.geometry.points[3]))!=null?m:1/0,s=(p=(A=this.coverMesh)==null?void 0:A.geometry.points[0].distanceTo(this.coverMesh.geometry.points[3]))!=null?p:1/0,o=this.cornerPoints[0].distanceTo(this.cornerPoints[3]),a=Math.min(i,s,o)/o*.3,l=yield this.getImageTexture(this.buttonSrc),c=$n("contain",this.cornerPoints,l.image.width/l.image.height),d=new Tr(c,new x1(l));d.position.copy(new R.Vector3(0,0,0)),d.name="buttonMesh",d.scale.set(a,a,a),this.domEvents.addAutoBindEventListener(d,"click",()=>this.play());const h=new E.Vector3().crossVectors(new E.Vector3().subVectors(c[0],c[1]),new E.Vector3().subVectors(c[0],c[3])).normalize().multiplyScalar(1e-4);return d.position.add(h),d}))();return this.children.includes(this.buttonMesh)||(this.add(e),this.buttonMesh=e),e})}getImageTexture(e){return W(this,null,function*(){var s,o;if((s=this.ImageTextureMap)!=null&&s.has(e))return this.ImageTextureMap.get(e);const i=yield vn(e);return(o=this.ImageTextureMap)==null||o.set(e,i),i})}getVideoTexture(e){var s,o;if((s=this.videoTextureMap)!=null&&s.has(e))return this.videoTextureMap.get(e);const i=k1(e);return(o=this.videoTextureMap)==null||o.set(e,i),i}}function Le(n,t){this._camera=n||null,this._domElement=t||document,this._raycaster=new E.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)}Le.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)};Le.eventNames=["click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","contextmenu","touchstart","touchend"];Le.prototype._getRelativeMouseXY=function(n){var t=n.target||n.srcElement;t.nodeType===3&&(t=t.parentNode);var e={x:0,y:0},i=t,s=getComputedStyle(i,null);e.y+=parseInt(s.getPropertyValue("padding-top"),10),e.x+=parseInt(s.getPropertyValue("padding-left"),10);do e.x+=i.offsetLeft,e.y+=i.offsetTop,s=getComputedStyle(i,null),e.x+=parseInt(s.getPropertyValue("border-left-width"),10),e.y+=parseInt(s.getPropertyValue("border-top-width"),10);while(i=i.offsetParent);var o={width:t===window?window.innerWidth:t.offsetWidth,height:t===window?window.innerHeight:t.offsetHeight};return{x:Number((n.pageX-e.x)/o.width)*2-1,y:-((n.pageY-e.y)/o.height)*2+1}};Le.prototype._objectCtxInit=function(n){n._3xDomEvent={}};Le.prototype._objectCtxDeinit=function(n){delete n._3xDomEvent};Le.prototype._objectCtxIsInit=function(n){return!!n._3xDomEvent};Le.prototype._objectCtxGet=function(n){return n._3xDomEvent};Le.prototype.camera=function(n){return n&&(this._camera=n),this._camera};Le.prototype.bind=function(n,t,e,i){console.assert(Le.eventNames.indexOf(t)!==-1,"not available events:"+t),this._objectCtxIsInit(n)||this._objectCtxInit(n);var s=this._objectCtxGet(n);s[t+"Handlers"]||(s[t+"Handlers"]=[]),s[t+"Handlers"].push({callback:e,useCapture:i}),this._boundObjs[t]===void 0&&(this._boundObjs[t]=[]),this._boundObjs[t].push(n)};Le.prototype.addEventListener=Le.prototype.bind;Le.prototype.unbind=function(n,t,e,i){console.assert(Le.eventNames.indexOf(t)!==-1,"not available events:"+t),this._objectCtxIsInit(n)||this._objectCtxInit(n);var s=this._objectCtxGet(n);s[t+"Handlers"]||(s[t+"Handlers"]=[]);for(var o=s[t+"Handlers"],r=0;r<o.length;r++){var a=o[r];if(e==a.callback&&i==a.useCapture){o.splice(r,1);break}}var l=this._boundObjs[t].indexOf(n);this._boundObjs[t].splice(l,1)};Le.prototype.removeEventListener=Le.prototype.unbind;Le.prototype._bound=function(n,t){var e=this._objectCtxGet(t);return e?!!e[n+"Handlers"]:!1};Le.prototype._onMove=function(n,t,e,i){var s=this._boundObjs[n];if(!(s===void 0||s.length===0)){var o=new E.Vector2;o.set(t,e),this._raycaster.setFromCamera(o,this._camera);var r=this._raycaster.intersectObjects(s),a=this._selected;if(r.length>0){var l,c,d,h=r[0],u=h.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,i,h),l&&this._notify("mouseover",u,i,h),c&&this._notify("mouseout",a,i,h)}};Le.prototype._onEvent=function(n,t,e,i){var s=this._boundObjs[n];if(!(s===void 0||s.length===0)){var o=new E.Vector2;o.set(t,e),this._raycaster.setFromCamera(o,this._camera);var r=this._raycaster.intersectObjects(s,!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(n,l,i,a)}}};Le.prototype._notify=function(n,t,e,i){var s=this._objectCtxGet(t),o=s?s[n+"Handlers"]:null;if(!s||!o||o.length===0){t.parent&&this._notify(n,t.parent,e,i);return}for(var o=s[n+"Handlers"],r=0;r<o.length;r++){var a=o[r],l=!0;a.callback({type:n,target:t,origDomEvent:e,intersect:i,stopPropagation:function(){l=!1}}),l&&a.useCapture===!1&&t.parent&&this._notify(n,t.parent,e,i)}};Le.prototype._onMouseDown=function(n){return this._onMouseEvent("mousedown",n)};Le.prototype._onMouseUp=function(n){return this._onMouseEvent("mouseup",n)};Le.prototype._onMouseEvent=function(n,t){var e=this._getRelativeMouseXY(t);this._onEvent(n,e.x,e.y,t)};Le.prototype._onMouseMove=function(n){var t=this._getRelativeMouseXY(n);this._onMove("mousemove",t.x,t.y,n),this._onMove("mouseover",t.x,t.y,n),this._onMove("mouseout",t.x,t.y,n)};Le.prototype._onClick=function(n){this._onMouseEvent("click",n)};Le.prototype._onDblClick=function(n){this._onMouseEvent("dblclick",n)};Le.prototype._onContextmenu=function(n){this._onMouseEvent("contextmenu",n)};Le.prototype._onTouchStart=function(n){return this._onTouchEvent("touchstart",n)};Le.prototype._onTouchEnd=function(n){return this._onTouchEvent("touchend",n)};Le.prototype._onTouchMove=function(n){if(n.touches.length==1){var t=Number(n.touches[0].pageX/window.innerWidth)*2-1,e=-(n.touches[0].pageY/window.innerHeight)*2+1;this._onMove("mousemove",t,e,n),this._onMove("mouseover",t,e,n),this._onMove("mouseout",t,e,n)}};Le.prototype._onTouchEvent=function(n,t){var e=t.touches;if(e.length==0&&(e=t.changedTouches),e.length==1){var i=Number(e[0].pageX/window.innerWidth)*2-1,s=-(e[0].pageY/window.innerHeight)*2+1;this._onEvent(n,i,s,t)}};class D1 extends Le{constructor(e){super(e.camera,e.getElement());f(this,"five");f(this,"mouseInfo");f(this,"clickHandlerMap",new Map);f(this,"getObjectVisible",e=>e?e.visible===!1?!1:this.getObjectVisible(e.parent):!0);f(this,"preventWhenMouseDown",()=>{var e;if((e=this.mouseInfo)!=null&&e.isDown)return console.debug("preventWhenMouseDown 1"),!1});this.five=e,e.on("wantsMoveToPano",this.preventWhenMouseDown),e.on("wantsTapGesture",this.preventWhenMouseDown)}dispose(){this.five.off("wantsMoveToPano",this.preventWhenMouseDown),this.five.off("wantsTapGesture",this.preventWhenMouseDown),this.clickHandlerMap.clear(),this.mouseInfo=void 0}addAutoBindEventListener(...e){const i=e[0];i.addEventListener("added",()=>{this.addEventListener(...e)}),i.addEventListener("removed",()=>{this.removeEventListener(...e)}),i.addEventListener("dispose",()=>{this.removeEventListener(...e)})}addEventListener(e,i,s,o){const r=d=>{if(this.getObjectVisible(e)===!1){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo={x:h.clientX,y:h.clientY,isDown:!0,mouseDownTimestamp:Date.now()}},a=d=>{if(this.getObjectVisible(e)===!1){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo&&(this.mouseInfo.isDown&&this.mouseInfo.x===h.clientX&&this.mouseInfo.y===h.clientY&&Date.now()-this.mouseInfo.mouseDownTimestamp<400&&s(h),this.mouseInfo=void 0)},l=d=>{if(this.getObjectVisible(e)===!1){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo={x:Math.floor(h.touches[0].clientX),y:Math.floor(h.touches[0].clientY),isDown:!0,mouseDownTimestamp:Date.now()}},c=d=>{if(this.getObjectVisible(e)===!1){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo&&(this.mouseInfo.isDown&&this.mouseInfo.x===Math.floor(h.changedTouches[h.changedTouches.length-1].clientX)&&this.mouseInfo.y===Math.floor(h.changedTouches[h.changedTouches.length-1].clientY)&&Date.now()-this.mouseInfo.mouseDownTimestamp<400&&s(h),this.mouseInfo=void 0)};i==="click"?(super.addEventListener(e,"mousedown",r,o),super.addEventListener(e,"mouseup",a,o),super.addEventListener(e,"touchstart",l,o),super.addEventListener(e,"touchend",c,o),this.clickHandlerMap.set(s,{mousedown:r,mouseup:a,touchstart:l,touchend:c})):super.addEventListener(e,i,s,o)}removeEventListener(e,i,s,o){if(i==="click"){const r=this.clickHandlerMap.get(s);r&&(super.removeEventListener(e,"mousedown",r.mousedown,o),super.removeEventListener(e,"mouseup",r.mouseup,o),super.removeEventListener(e,"touchstart",r.touchstart,o),super.removeEventListener(e,"touchend",r.touchend,o),this.clickHandlerMap.delete(s))}else super.removeEventListener(e,i,s,o);this.mouseInfo=void 0}}class S1 extends P1{constructor(e){super(e);f(this,"tags",[]);f(this,"config",I1);f(this,"mediaStore",Da({currentMediaElement:null}));f(this,"css3DRenderPlugin");f(this,"store",{disposers:[],disposed:!1,resizeObserverDisposerAdding:!1,css3DRenderDisposer:new Map});f(this,"domEvents",new D1(this.five));f(this,"mouseInfo");f(this,"preventWhenMouseDown",()=>{var e;if((e=this.mouseInfo)!=null&&e.isDown)return console.debug("preventWhenMouseDown 2"),!1});this.five.on("wantsMoveToPano",this.preventWhenMouseDown),this.five.on("wantsTapGesture",this.preventWhenMouseDown),this.mediaStore.subscribe(({currentMediaElement:i})=>{this.tags.forEach(s=>{var o;if(s.mediaPlane instanceof aa&&i!==s.mediaPlane.videoInstance){if(!((o=s.mediaPlane.videoInstance)!=null&&o.src)||i===s.mediaPlane.videoInstance)return;s.mediaPlane.pause()}})}),this.store.disposers.push(()=>{this.five.off("wantsMoveToPano",this.preventWhenMouseDown),this.five.off("wantsTapGesture",this.preventWhenMouseDown)})}get isPanorama(){return this.five.currentMode==="Panorama"}getTagById(e){const i=this.tags.find(s=>s.id===e);if(!i){console.warn(`getTagById Error: can't find tag id: ${e}`);return}return i}pauseCurrentMedia(){this.mediaStore.set({currentMediaElement:null})}getTagConfig(e,i={useCache:!0}){var r,a,l;if(!e)return(r=this.config.globalConfig)!=null?r:{};if(i.useCache&&((a=e.config)!=null&&a.isMerged))return e.config;const s={};this.config.contentTypeConfig&&Object.keys(this.config.contentTypeConfig).forEach(c=>{const d=c;if(s[d])return;const h=d.split("-");if(h.length===1){const[u]=h;e.contentType===u&&(s[d]=this.config.contentTypeConfig[d])}if(h.length===2){const[u="Any",m="Any"]=h;u==="Mixin"&&e.contentType===m&&(s[d]=this.config.contentTypeConfig[d]),(e.stickType===u||u==="Any")&&(e.contentType===m||m==="Any")&&(s[d]=this.config.contentTypeConfig[d])}if(h.length===3){const[u="Any",m,A]=h;if(m==="Audio"&&e.contentType==="Audio"){const p=e;(p.stickType===u||u==="Any")&&p.data.appearance===A&&(s[d]=this.config.contentTypeConfig[d])}}});const o=Fe({},Eu,this.config.globalConfig,...Object.values(s),e.config);return typeof o.visibleConfig=="object"&&o.visibleConfig.keep&&(o.visibleConfig={keep:o.visibleConfig.keep,visibleFiveMode:(l=o.visibleConfig)==null?void 0:l.visibleFiveMode}),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})),o.isMerged=!0,o}getCurrentVisibleState(e){return!(!this.state.enabled||!this.state.visible||!e.enabled||!e.state.visible)}loadVideoFirstFrame(){E1&&this.hooks.emit("loadVideoFirstFrame")}updateTagConfig(){this.clearCache(),this.tags.forEach(e=>{var o;const i=this.getTagConfig(e,{useCache:!1});e.config=i;const s=JSON.parse(JSON.stringify(e.data));e.data=(o=i.initialData)!=null&&o.important?Fe(e.data,s,i.initialData):Fe(e.data,i.initialData,s)})}can(e,i){const s=i,o=this.getTagConfig(s);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}getRenderType(e){const i=(()=>{if(e.stickType==="3DPoint")return"Dom";const s=this.getTagConfig(e);if(!s||typeof s!="object"||!s.renderType)return;const o=e.data.mediaData;if(!(!o||o.length===0)&&s.renderType==="Mesh"){if(f1(e)){if(o.length===1&&(o[0].type==="Image"||o[0].type==="Video"))return"Mesh"}else if(vt(e))return o.length===1&&o[0].type==="Image"?"Mesh":"BehindDom"}})();return i!=null?i:"Dom"}getAngle(e,i){var r,a;const s=i!=null?i:this.five.getCurrentState().panoIndex;if(s===void 0)throw new Error(`getDistance(): fivePanoIndex is ${s}`);const o=this.getCache({panoIndex:i,id:e.id});if(o.angle!==void 0)return o.angle;{const l=(a=(r=this.five.work)==null?void 0:r.observers[s])==null?void 0:a.position;if(l===void 0)throw new Error(`getAngleRange(): observerPosition is ${l}`);const c=(()=>e.stickType==="3DPoint"?an(e.normal):Sr(e.position))();if(!c)return;const d=is(e);if(!d)return;const h=new E.Vector3().copy(l).sub(d),u=c.angleTo(h)*180/Math.PI;return o.angle=u,o.angle}}getDistance(e,i){var r,a;const s=i!=null?i:this.five.getCurrentState().panoIndex;if(s===void 0)throw new Error(`getDistance(): fivePanoIndex is ${s}`);const o=this.getCache({panoIndex:i,id:e.id});if(o.distance!==void 0)return o.distance;{const l=(a=(r=this.five.work)==null?void 0:r.observers[s])==null?void 0:a.position;if(l===void 0)throw new Error(`getDistance(): observerPosition is ${l}`);const c=is(e);if(!c)return-1;const d=l.distanceTo(c);return o.distance=d,d}}getPositions(e){if(l1(e))return e.position;if(vt(e))return e.data.mediaPosition;if(c1(e))return p1(this.five.camera.position,Et(e.position),Et(e.normal))}addObjectClickHandler(e,i,s){if(!i||!this.domEvents)return()=>{};const o=()=>!(!this.getCurrentVisibleState(e)||vt(e)&&!e.mediaVisible),r=d=>{if(!o()){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo={x:h.clientX,y:h.clientY,isDown:!0,mouseDownTimestamp:Date.now()}},a=d=>{if(!o()){this.mouseInfo=void 0;return}if(!this.mouseInfo)return;const h=d.origDomEvent;this.mouseInfo.isDown&&this.mouseInfo.x===h.clientX&&this.mouseInfo.y===h.clientY&&Date.now()-this.mouseInfo.mouseDownTimestamp<400&&s(h),this.mouseInfo=void 0},l=d=>{if(!o()){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo={x:Math.floor(h.touches[0].clientX),y:Math.floor(h.touches[0].clientY),isDown:!0,mouseDownTimestamp:Date.now()}},c=d=>{if(!o()){this.mouseInfo=void 0;return}if(!this.mouseInfo)return;const h=d.origDomEvent;this.mouseInfo.isDown&&this.mouseInfo.x===Math.floor(h.changedTouches[h.changedTouches.length-1].clientX)&&this.mouseInfo.y===Math.floor(h.changedTouches[h.changedTouches.length-1].clientY)&&Date.now()-this.mouseInfo.mouseDownTimestamp<400&&s(h),this.mouseInfo=void 0};return this.domEvents.addEventListener(i,"mousedown",r,!1),this.domEvents.addEventListener(i,"mouseup",a,!1),this.domEvents.addEventListener(i,"touchstart",l,!1),this.domEvents.addEventListener(i,"touchend",c,!1),()=>{var d,h,u,m;this.mouseInfo=void 0,(d=this.domEvents)==null||d.removeEventListener(i,"mousedown",r),(h=this.domEvents)==null||h.removeEventListener(i,"mouseup",a),(u=this.domEvents)==null||u.removeEventListener(i,"touchstart",l),(m=this.domEvents)==null||m.removeEventListener(i,"touchend",c)}}getTagNormal(e){if(e.normal)return Et(e.normal);if(e.stickType==="Plane")return Sr(e.position);if(e.stickType==="Model")return Sr(this.getPositions(e))}get filterPointTag(){return this.tags.filter(e=>e.stickType==="2DPoint"||e.stickType==="3DPoint").filter(e=>e.position)}get filter2DPointTag(){return this.tags.filter(e=>e.stickType==="2DPoint").filter(e=>e.position)}get filterImagePlane(){return this.tags.filter(e=>e.contentType==="MediaPlane"&&e.stickType==="Plane"&&this.getRenderType(e)==="Mesh")}get filterMediaModel(){return this.tags.filter(e=>e.stickType==="Model"&&e.contentType==="MediaModel")}get filterCSS3DTag(){return this.tags.filter(i=>i.stickType==="3DPoint"||i.stickType==="Plane"||i.stickType==="Model"&&i.contentType==="MediaModel").filter(i=>{const s=this.getRenderType(i);return s==="BehindDom"||s==="Dom"})}checkDisposed(){return this.store.disposed?(console.error("PanoTagPluginController has been disposed"),!0):!1}}function T1(n,t){if(!t||!n)return console.error("getFloorIndex: invalid arguments: ",{point:t,observer:n}),0;const e=[];n.forEach(s=>{var r,a;const o=(a=(r=s.floorIndex)!=null?r:s.floor_index)!=null?a:0;e[o]||(e[o]=[]),e[o].push(s.position.y)});const i=e.map(s=>s.reduce((o,r)=>o+r,0)/s.length);for(let s=i.length-1;s>0;s--)if(t.y>=i[s])return s;return 0}function L1(n){return arguments.length===0?[]:Array.isArray(n)?n:[n]}const Lr=new E.Raycaster;class j1 extends S1{constructor(t){super(t)}getVisibleByPanoIndex(t,e){const i=this.getCache({panoIndex:e,id:t.id}),s=e!=null?e:this.five.getCurrentState().panoIndex;if(t.stickType==="Model")return!0;if(i.visible!==void 0)return i.visible;{const o=(()=>{var l,c,d;const r=(l=t.config.visibleConfig)!=null?l:{},a=this.getDistance(t);if(typeof r=="function")return{value:r(this.five,{tag:t,distance:a}),reason:"config function result"};if(r.keep==="hidden")return{value:!1,reason:"config.keep is hidden"};if(r.keep==="visible")return{value:!0,reason:"config.keep is visible"};if(r.visiblePanoIndex!==void 0&&r.visiblePanoIndex!=="all"&&s!==void 0){if(Array.isArray(r.visiblePanoIndex)&&!r.visiblePanoIndex.includes(s))return{value:!1,reason:`current panoIndex is not included in visiblePano. currentPanoIndex: ${s}, visiblePanoIndex: ${r.visiblePanoIndex}`};if(r.visiblePanoIndex==="current"&&s!==((c=t.fiveState)==null?void 0:c.panoIndex))return{value:!1,reason:`current panoIndex is not equal to tag.panoIndex. currentPanoIndex: ${s}, tag.panoIndex: ${(d=t.fiveState)==null?void 0:d.panoIndex}`}}if(r.visibleDistance!==void 0&&r.visibleDistance!=="unLimited"&&Jn(a,r.visibleDistance)===!1)return{value:!1,reason:`distance is not in visibleDistance. distance: ${a}, visibleDistance: ${r.visibleDistance}`};if(r.intersectRaycaster!==!1&&(typeof r.intersectRaycaster!="object"||r.intersectRaycaster.enabled!==!1)){if(s===void 0)return{value:!1,reason:`intersectRaycaster check failed: fivePanoIndex is ${s}`};const h=this.getTagEnableByIntersect(t,s);if(h.value===!1)return h}if(r.angleRange&&d1(t)){const h=this.getAngle(t);if(Jn(h,r.angleRange)===!1)return{value:!1,reason:`angle is not in angleRange. angle: ${h}, angleRange: ${r.angleRange}`}}return{value:!0,reason:"all check passed"}})();return i.visible=o.value,i.__debug_visible_reason__=o,i.visible}}getVisibleByFiveMode(t,e){const i=e!=null?e:this.five.getCurrentState().mode,s=this.getTagConfig(t).visibleConfig;if(s){if(typeof s=="object"){const o=s==null?void 0:s.visibleFiveMode;return o?o!=null&&o.includes(i)?s.followModelVisibility===!0&&(i==="Floorplan"||i==="Mapview")?this.getVisibleByFloorIndex(t):!0:!1:i==="Panorama"}else if(typeof s=="function")return e==="Panorama"}else return i==="Panorama"}getVisible(t,e){var a,l;const i=(a=e==null?void 0:e.panoIndex)!=null?a:this.five.getCurrentState().panoIndex,s=(l=e==null?void 0:e.mode)!=null?l:this.five.getCurrentState().mode,o=this.getVisibleByFiveMode(t),r=s==="Panorama"?this.getVisibleByPanoIndex(t,i):!0;return o&&r}getModelMedialVisibleByPanoIndex(t,e){if(!this.getCurrentVisibleState(t))return!1;const i=this.getCache({panoIndex:e,id:t.id});if(i.modelMedialVisible!==void 0)return i.modelMedialVisible;const s=this.getTagEnableByIntersect(t,e);return i.modelMedialVisible=s.value,i.__debug_visible_reason__=s,s.value!==!1}getUnfoldedByPanoIndex(t,e){if(!this.getVisibleByPanoIndex(t))return;const s=this.getCache({panoIndex:e,id:t.id});if(s.unfolded!==void 0)return s.unfolded;{const o=this.getTagConfig(t).unfoldedConfig;if(!o)return;const r=(()=>{const l=this.getDistance(t);if(typeof o=="function")return o(this.five,{tag:t,distance:l});if(o.keep==="folded")return!1;if(o.keep==="unfolded")return!0;if(o.unfoldDistance&&Jn(l,o.unfoldDistance)===!1)return!1})();s.unfolded=r;const a=this.getUnfoldedByCamera(t);return a!==void 0?a:s.unfolded}}getUnfoldedByCamera(t){return this.getVisible(t)?(()=>{var r;const s=this.getDistance(t),o=this.getTagConfig(t).unfoldedConfig;if(o){if(typeof o=="function")return o(this.five,{tag:t,distance:s});if(o.keep==="folded")return!1;if(o.keep==="unfolded")return!0;if(o.autoUnfold===void 0||o.autoUnfold===!1||o.autoUnfold.enable===!1||!o.autoUnfold.strategy)return;if(o.autoUnfold.strategy==="ScreenPostion"){const a=this.getTagProject(t);if(a&&Jn(a.x,o.autoUnfold.autoUnfoldProjectX)===!1)return!1}if(o.autoUnfold.strategy==="MinimumDistance"){const c=this.filterPointTag.filter(h=>this.getVisible(h)).filter(h=>{const u=this.getTagProject(h);if(!u)return!1;const{x:m,y:A,z:p}=u;return!(Math.abs(p)>1||Math.abs(m)>1||Math.abs(A)>1)}).map(h=>({tag:h,id:h.id,tagConfig:this.getTagConfig(h).unfoldedConfig})).filter(({tag:h,tagConfig:u})=>{var m,A;return!(typeof u!="object"||u.keep||u.autoUnfold===!1||((m=u.autoUnfold)==null?void 0:m.enable)===!1||((A=u.autoUnfold)==null?void 0:A.strategy)!=="MinimumDistance")}).map(h=>ve(G({},h),{distance:this.getDistance(h.tag)})).filter(({distance:h,tagConfig:u})=>{var m,A;return!(h===void 0||typeof u!="object"||u.autoUnfold===!1||((m=u.autoUnfold)==null?void 0:m.enable)===!1||((A=u.autoUnfold)==null?void 0:A.strategy)!=="MinimumDistance"||u.autoUnfold.distance&&Jn(h,u.autoUnfold.distance)===!1)}).sort((h,u)=>h.distance-u.distance).findIndex(h=>h.id===t.id);if(c===-1||c<=((r=o.autoUnfold.maxNumber)!=null?r:1)-1===!1)return!1}return!0}})():void 0}sort(t){return t.sort((e,i)=>{const s=this.getDistance(e),o=this.getDistance(i);return s===void 0||o===void 0?0:o-s})}setTagZIndex(t){return t.forEach(e=>{const i=this.getDistance(e);e.zIndex=Math.round((i!=null?i:0)*100)})}setPointTagPosition(){const t=this.filterPointTag;t.length!==0&&t.forEach(e=>{var s;if(!((s=e.state)!=null&&s.visible)){e.screenPosition=null;return}const i=this.getTagProject(e);if(!i){e.screenPosition=null;return}e.screenPosition={leftPercent:(i.x+1)/2*100,topPercent:(-i.y+1)/2*100}})}setVisible(){this.tags.forEach(t=>{const e=this.getVisible(t);t.state&&(t.state.visible=e)})}setVisibleByPanoIndex(){this.tags.forEach(t=>{const e=this.getVisibleByPanoIndex(t);t.state&&(t.state.visible=e)})}setModelMedialVisible(){const t=this.five.getCurrentState().mode;this.tags.forEach(e=>{var s;if(!vt(e))return;if(!((s=e.model)!=null&&s.object)){e.mediaVisible=!1;return}const i=t==="Panorama"?this.getModelMedialVisibleByPanoIndex(e):!0;e.mediaVisible=i})}setUnfoldedByPanoIndex(){this.tags.forEach(t=>{const e=this.getUnfoldedByPanoIndex(t);if(t.state&&(e!==void 0&&(t.state.unfolded=e),e&&!t.state.visible)){const i=this.getTagConfig(t);typeof i.unfoldedConfig=="object"&&i.unfoldedConfig.autoFoldWhenHide!==!1&&(t.state.unfolded=!1)}})}getTagProject(t){if(!this.getVisible(t))return;const i=is(t);if(!i)return;const{x:s,y:o,z:r}=i.project(this.five.camera);if(!(r>1))return{x:s,y:o,z:r}}getTagEnableByIntersect(t,e){var c,d,h,u,m,A;const i=uo(uo((c=this.getTagConfig(t).visibleConfig)!=null?c:{}).intersectRaycaster),s=e!=null?e:this.five.getCurrentState().panoIndex,o=(d=this.five.work.observers[s])==null?void 0:d.position;if(o===void 0)return{value:!1,reason:{type:"observerPosition is undefined",fivePanoIndex:s}};const r=L1((()=>{var g;const p=(g=i.checkPoints)!=null?g:"center";return p==="center"?is(t):p==="corner"?Iu(t):Array.isArray(p)?p:[]})());let a=0,l=0;for(const p of r){const g=new E.Vector3().subVectors(p,o).normalize();Lr.set(o,g);const v=o.distanceTo(p),[y]=this.five.model.intersectRaycaster(Lr),I=(()=>{if(!vt(t))return;const L=this.tags.filter(vt).map(U=>{var N;return(N=U.model)==null?void 0:N.object}).filter(ni),[X]=Lr.intersectObjects(L,!0);return X})(),M=(h=i.distanceAccuracy)!=null?h:.01;Math.min((u=y==null?void 0:y.distance)!=null?u:1/0,(m=I==null?void 0:I.distance)!=null?m:1/0)+M>=v?a++:l++;const V=(A=i.needPassed)!=null?A:1;if(a>=V)return{value:!0}}return l===0?{value:!0}:{value:!1,reason:{type:"intersectRaycaster check failed",passedCount:a,needPassed:i.needPassed}}}getVisibleByFloorIndex(t){var o,r,a,l,c,d,h;let e=0;const i=(o=t.fiveState)==null?void 0:o.panoIndex;i!==void 0?e=(r=this.five.work.observers[i])==null?void 0:r.floorIndex:e=T1(this.five.work.observers,(h=(d=(l=(a=t.model)==null?void 0:a.object)==null?void 0:l.position)!=null?d:(c=t.mediaPlane)==null?void 0:c.position)!=null?h:is(t));const s=this.five.model.shownFloor;return s===null||s===e}}function z1(n){ue(n,"svelte-xuejcm",".line.svelte-xuejcm{position:absolute;pointer-events:none}.line.vertical.svelte-xuejcm{transform:rotate(-90deg) translate3d(0.03125rem, 0, 0.625rem);transform-origin:0 0}.line.horizontal.svelte-xuejcm{transform:translate3d(0, -0.03125rem, 0.625rem)}.straight-line.svelte-xuejcm{display:block;width:100%;height:100%;overflow:visible}")}function Fc(n){let t,e,i,s,o,r,a,l=n[3]&&Wc(n);return{c(){t=S("div"),e=Be("svg"),i=Be("defs"),s=Be("linearGradient"),o=Be("stop"),r=Be("stop"),l&&l.c(),w(o,"offset","25%"),w(o,"stop-color",n[5]),w(o,"stop-opacity","1"),w(r,"offset","100%"),w(r,"stop-color",n[5]),w(r,"stop-opacity","0.5"),w(s,"x1",.5),w(s,"y1",.5),w(s,"x2",n[8]),w(s,"y2",.5),w(s,"id",n[10]),w(s,"gradientUnits","userSpaceOnUse"),w(e,"class","straight-line svelte-xuejcm"),w(e,"viewBox",a="0 0 "+n[8]+" "+n[7]),w(e,"preserveAspectRatio","none"),w(t,"class","line svelte-xuejcm"),K(t,"vertical",n[9]),K(t,"horizontal",!n[9]),z(t,"width",n[8]+"px"),z(t,"height",n[7]+"px")},m(c,d){B(c,t,d),x(t,e),x(e,i),x(i,s),x(s,o),x(s,r),l&&l.m(e,null)},p(c,d){d&32&&w(o,"stop-color",c[5]),d&32&&w(r,"stop-color",c[5]),d&256&&w(s,"x2",c[8]),c[3]?l?(l.p(c,d),d&8&&k(l,1)):(l=Wc(c),l.c(),k(l,1),l.m(e,null)):l&&(de(),j(l,1,1,()=>{l=null}),he()),d&384&&a!==(a="0 0 "+c[8]+" "+c[7])&&w(e,"viewBox",a),d&512&&K(t,"vertical",c[9]),d&512&&K(t,"horizontal",!c[9]),d&256&&z(t,"width",c[8]+"px"),d&128&&z(t,"height",c[7]+"px")},d(c){c&&O(t),l&&l.d()}}}function Wc(n){let t,e,i,s,o;return{c(){t=Be("path"),w(t,"fill","none"),w(t,"stroke",e=n[4]?`url(#${n[10]})`:n[5]),w(t,"stroke-width",1),w(t,"d",n[6])},m(r,a){B(r,t,a),o=!0},p(r,a){n=r,(!o||a&48&&e!==(e=n[4]?`url(#${n[10]})`:n[5]))&&w(t,"stroke",e),(!o||a&64)&&w(t,"d",n[6])},i(r){o||(r&&He(()=>{o&&(s&&s.end(1),i=Vi(t,ao,{duration:n[2],delay:n[0],easing:ti}),i.start())}),o=!0)},o(r){i&&i.invalidate(),r&&(s=Dn(t,ao,{duration:n[2],delay:n[1],easing:ti})),o=!1},d(r){r&&O(t),r&&s&&s.end()}}}function O1(n){let t,e=n[8]&&Fc(n);return{c(){e&&e.c(),t=Ee()},m(i,s){e&&e.m(i,s),B(i,t,s)},p(i,[s]){i[8]?e?e.p(i,s):(e=Fc(i),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},i:q,o:q,d(i){i&&O(t),e&&e.d(i)}}}function B1(n,t,e){let i,s,o,r,{inDelay:a=0}=t,{outDelay:l=0}=t,{duration:c=1e3}=t,{unfolded:d}=t,{length:h}=t,{direction:u="horizontal"}=t,{useLinearColor:m=!1}=t,{color:A="white"}=t;const p=lt();return n.$$set=g=>{"inDelay"in g&&e(0,a=g.inDelay),"outDelay"in g&&e(1,l=g.outDelay),"duration"in g&&e(2,c=g.duration),"unfolded"in g&&e(3,d=g.unfolded),"length"in g&&e(11,h=g.length),"direction"in g&&e(12,u=g.direction),"useLinearColor"in g&&e(4,m=g.useLinearColor),"color"in g&&e(5,A=g.color)},n.$$.update=()=>{n.$$.dirty&4096&&e(9,i=u==="vertical"),n.$$.dirty&2048&&e(8,s=h),n.$$.dirty&2048&&e(6,r=`M0.5 0.5 H ${h}`)},e(7,o=1),[a,l,c,d,m,A,r,o,s,i,p,h,u]}class Ha extends le{constructor(t){super(),ae(this,t,B1,O1,oe,{inDelay:0,outDelay:1,duration:2,unfolded:3,length:11,direction:12,useLinearColor:4,color:5},z1)}}function V1(n){ue(n,"svelte-faoauy",".shadow.svelte-faoauy{position:absolute}")}function Yc(n){let t,e,i,s,o;return{c(){t=S("div"),w(t,"class","shadow svelte-faoauy"),w(t,"style",e=`
564
+ `);this.uniforms={map:{value:e}}}}let Tu=class extends E.Mesh{constructor(){super(...arguments);f(this,"name","MediaPlane");f(this,"src")}removeFromParent(){const e=this.parent;return e!==null&&e.remove(this),this}dispose(){this.traverse(e=>{if(e.isMesh){const i=e;i.geometry.dispose(),(i.material instanceof Array?i.material:[i.material]).forEach(o=>{o.dispose()})}})}};class _c extends Tu{constructor(e,i,s){var a;super();f(this,"name","PanoTagPluginImagePlane");this.src=e;const o=(a=s==null?void 0:s.resolveZFighting)!=null?a:!0;let r=i;if(o){const l=new E.Vector3().crossVectors(new E.Vector3().subVectors(i[0],i[1]),new E.Vector3().subVectors(i[0],i[3])).normalize().multiplyScalar(5e-4);r=i.map(c=>c.clone().add(l))}vn(e).then(l=>{var p;const c=new URL(e,location.href).pathname.endsWith(".png"),d=new E.MeshBasicMaterial({map:l,transparent:c}),h=$n((p=s==null?void 0:s.objectFit)!=null?p:"contain",r,l.image.width/l.image.height),u=Ai(...h),m=h.map(g=>g.clone().sub(u)),A=new Su(m);this.position.copy(u),this.geometry=A,this.material=d}).catch(l=>{console.error(`Imageplane error ${l}`)})}}class aa extends Tu{constructor(e,i,s){const{videoCoverSrc:o,objectFit:r="contain",playButton:a="withText",paused:l=!0,videoTextureMap:c,ImageTextureMap:d,domEvents:h}=s!=null?s:{};super();f(this,"isVideoPlane",!0);f(this,"name","PanoTagPluginImagePlane");f(this,"videoInstance");f(this,"onVideoReady");f(this,"objectFit");f(this,"buttonSrc");f(this,"videoCoverSrc");f(this,"domEvents");f(this,"disposers",[]);f(this,"cornerPoints");f(this,"videoMesh");f(this,"coverMesh");f(this,"buttonMesh");f(this,"videoTextureMap");f(this,"ImageTextureMap");this.cornerPoints=i,this.src=e,this.buttonSrc=(()=>a==="withText"?Ga:a==="withoutText"?oa:typeof a=="string"?a:oa)(),this.videoCoverSrc=o,this.objectFit=r,this.videoTextureMap=c,this.ImageTextureMap=d,this.domEvents=h,this.position.copy(Ai(...i)),this.videoCoverSrc&&l?this.addCoverMesh().then(()=>this.addButtonMesh()):this.addVideoMesh().then(()=>{l?this.addButtonMesh():this.play(!0)}),this.addEventListener("removed",()=>{this.remove(...this.children)}),this.addEventListener("dispose",()=>{var u;(u=this.disposers)==null||u.forEach(m=>m==null?void 0:m())})}play(e=!1){return W(this,null,function*(){this.videoMesh||(yield this.addVideoMesh()),this.showPlayUI(),this.videoInstance.paused&&this.videoInstance.play().then(()=>this.showPlayUI()).catch(i=>{this.pause(),console.error("play error",i)}),this.videoInstance.muted=e,this.render()})}pause(){this.videoInstance&&(this.videoInstance.pause(),this.showPauseUI().then(()=>this.render()))}initialRenderHooks(e){const s=e(()=>{var o;this.videoMesh&&((o=this.videoInstance)==null?void 0:o.paused)===!1&&(this.videoMesh.needsRender=!0)});this.disposers.push(()=>s)}showPlayUI(){this.coverMesh&&(this.coverMesh.visible=!1),this.remove(this.buttonMesh),this.videoMesh.visible=!0}showPauseUI(){return W(this,null,function*(){this.coverMesh?(this.coverMesh.visible=!0,this.videoMesh&&(this.videoMesh.visible=!1)):(yield this.addCoverMesh(),this.coverMesh&&(this.videoMesh.visible=!1)),this.addButtonMesh().then(()=>this.render())})}render(){var e;this.videoMesh&&(this.videoMesh.needsRender=!0),this.coverMesh&&(this.coverMesh.needsRender=!0),this.buttonMesh&&(this.buttonMesh.needsRender=!0),this.videoMesh&&((e=this.videoInstance)==null?void 0:e.paused)===!1&&(this.videoMesh.needsRender=!0)}addCoverMesh(){return W(this,null,function*(){if(this.children.includes(this.coverMesh))return;const e=yield(()=>W(this,null,function*(){if(this.coverMesh)return this.coverMesh;if(!this.videoCoverSrc)return;const i=yield this.getImageTexture(this.videoCoverSrc);if(!i)return;const s=new E.MeshBasicMaterial({transparent:!1,map:i}),o=$n(this.objectFit,this.cornerPoints,i.image.width/i.image.height),r=new Lr(o,s);return r.position.copy(new R.Vector3(0,0,0)),r.name="videoCoverMesh",r}))();return e&&(this.children.includes(this.coverMesh)||(this.add(e),this.coverMesh=e)),e})}addVideoMesh(){return W(this,null,function*(){if(this.children.includes(this.videoMesh))return;const e=yield(()=>W(this,null,function*(){if(this.videoMesh)return this.videoMesh;if(!this.src)return;const s=this.getVideoTexture(this.src),o=new E.MeshBasicMaterial({transparent:!1,map:s}),r=yield new Promise(l=>{s.metadataLoaded?l($n(this.objectFit,this.cornerPoints,s.image.videoWidth/s.image.videoHeight)):s.addEventListener("videoLoaded",()=>l($n(this.objectFit,this.cornerPoints,s.image.videoWidth/s.image.videoHeight)))}),a=new Lr(r,o);return a.name="videoMesh",a.position.copy(new R.Vector3(0,0,0)),a}))();if(!e)return;this.domEvents.addAutoBindEventListener(e,"click",()=>{!this.videoInstance.paused&&this.videoInstance.muted?this.videoInstance.muted=!1:this.pause()});const i=e.material.map.image;return i.addEventListener("playing",()=>{this.coverMesh||this.remove(this.buttonMesh),this.render()}),i.addEventListener("pause",()=>{this.showPauseUI(),this.render()}),this.children.includes(this.videoMesh)||(this.add(e),this.videoMesh=e,this.videoInstance=i),e})}addButtonMesh(){return W(this,null,function*(){if(this.children.includes(this.buttonMesh))return;const e=yield(()=>W(this,null,function*(){var u,m,A,p;if(this.buttonMesh)return this.buttonMesh;const i=(m=(u=this.videoMesh)==null?void 0:u.geometry.points[0].distanceTo(this.videoMesh.geometry.points[3]))!=null?m:1/0,s=(p=(A=this.coverMesh)==null?void 0:A.geometry.points[0].distanceTo(this.coverMesh.geometry.points[3]))!=null?p:1/0,o=this.cornerPoints[0].distanceTo(this.cornerPoints[3]),a=Math.min(i,s,o)/o*.3,l=yield this.getImageTexture(this.buttonSrc),c=$n("contain",this.cornerPoints,l.image.width/l.image.height),d=new Lr(c,new x1(l));d.position.copy(new R.Vector3(0,0,0)),d.name="buttonMesh",d.scale.set(a,a,a),this.domEvents.addAutoBindEventListener(d,"click",()=>this.play());const h=new E.Vector3().crossVectors(new E.Vector3().subVectors(c[0],c[1]),new E.Vector3().subVectors(c[0],c[3])).normalize().multiplyScalar(1e-4);return d.position.add(h),d}))();return this.children.includes(this.buttonMesh)||(this.add(e),this.buttonMesh=e),e})}getImageTexture(e){return W(this,null,function*(){var s,o;if((s=this.ImageTextureMap)!=null&&s.has(e))return this.ImageTextureMap.get(e);const i=yield vn(e);return(o=this.ImageTextureMap)==null||o.set(e,i),i})}getVideoTexture(e){var s,o;if((s=this.videoTextureMap)!=null&&s.has(e))return this.videoTextureMap.get(e);const i=k1(e);return(o=this.videoTextureMap)==null||o.set(e,i),i}}function Le(n,t){this._camera=n||null,this._domElement=t||document,this._raycaster=new E.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)}Le.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)};Le.eventNames=["click","dblclick","mouseover","mouseout","mousemove","mousedown","mouseup","contextmenu","touchstart","touchend"];Le.prototype._getRelativeMouseXY=function(n){var t=n.target||n.srcElement;t.nodeType===3&&(t=t.parentNode);var e={x:0,y:0},i=t,s=getComputedStyle(i,null);e.y+=parseInt(s.getPropertyValue("padding-top"),10),e.x+=parseInt(s.getPropertyValue("padding-left"),10);do e.x+=i.offsetLeft,e.y+=i.offsetTop,s=getComputedStyle(i,null),e.x+=parseInt(s.getPropertyValue("border-left-width"),10),e.y+=parseInt(s.getPropertyValue("border-top-width"),10);while(i=i.offsetParent);var o={width:t===window?window.innerWidth:t.offsetWidth,height:t===window?window.innerHeight:t.offsetHeight};return{x:Number((n.pageX-e.x)/o.width)*2-1,y:-((n.pageY-e.y)/o.height)*2+1}};Le.prototype._objectCtxInit=function(n){n._3xDomEvent={}};Le.prototype._objectCtxDeinit=function(n){delete n._3xDomEvent};Le.prototype._objectCtxIsInit=function(n){return!!n._3xDomEvent};Le.prototype._objectCtxGet=function(n){return n._3xDomEvent};Le.prototype.camera=function(n){return n&&(this._camera=n),this._camera};Le.prototype.bind=function(n,t,e,i){console.assert(Le.eventNames.indexOf(t)!==-1,"not available events:"+t),this._objectCtxIsInit(n)||this._objectCtxInit(n);var s=this._objectCtxGet(n);s[t+"Handlers"]||(s[t+"Handlers"]=[]),s[t+"Handlers"].push({callback:e,useCapture:i}),this._boundObjs[t]===void 0&&(this._boundObjs[t]=[]),this._boundObjs[t].push(n)};Le.prototype.addEventListener=Le.prototype.bind;Le.prototype.unbind=function(n,t,e,i){console.assert(Le.eventNames.indexOf(t)!==-1,"not available events:"+t),this._objectCtxIsInit(n)||this._objectCtxInit(n);var s=this._objectCtxGet(n);s[t+"Handlers"]||(s[t+"Handlers"]=[]);for(var o=s[t+"Handlers"],r=0;r<o.length;r++){var a=o[r];if(e==a.callback&&i==a.useCapture){o.splice(r,1);break}}var l=this._boundObjs[t].indexOf(n);this._boundObjs[t].splice(l,1)};Le.prototype.removeEventListener=Le.prototype.unbind;Le.prototype._bound=function(n,t){var e=this._objectCtxGet(t);return e?!!e[n+"Handlers"]:!1};Le.prototype._onMove=function(n,t,e,i){var s=this._boundObjs[n];if(!(s===void 0||s.length===0)){var o=new E.Vector2;o.set(t,e),this._raycaster.setFromCamera(o,this._camera);var r=this._raycaster.intersectObjects(s),a=this._selected;if(r.length>0){var l,c,d,h=r[0],u=h.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,i,h),l&&this._notify("mouseover",u,i,h),c&&this._notify("mouseout",a,i,h)}};Le.prototype._onEvent=function(n,t,e,i){var s=this._boundObjs[n];if(!(s===void 0||s.length===0)){var o=new E.Vector2;o.set(t,e),this._raycaster.setFromCamera(o,this._camera);var r=this._raycaster.intersectObjects(s,!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(n,l,i,a)}}};Le.prototype._notify=function(n,t,e,i){var s=this._objectCtxGet(t),o=s?s[n+"Handlers"]:null;if(!s||!o||o.length===0){t.parent&&this._notify(n,t.parent,e,i);return}for(var o=s[n+"Handlers"],r=0;r<o.length;r++){var a=o[r],l=!0;a.callback({type:n,target:t,origDomEvent:e,intersect:i,stopPropagation:function(){l=!1}}),l&&a.useCapture===!1&&t.parent&&this._notify(n,t.parent,e,i)}};Le.prototype._onMouseDown=function(n){return this._onMouseEvent("mousedown",n)};Le.prototype._onMouseUp=function(n){return this._onMouseEvent("mouseup",n)};Le.prototype._onMouseEvent=function(n,t){var e=this._getRelativeMouseXY(t);this._onEvent(n,e.x,e.y,t)};Le.prototype._onMouseMove=function(n){var t=this._getRelativeMouseXY(n);this._onMove("mousemove",t.x,t.y,n),this._onMove("mouseover",t.x,t.y,n),this._onMove("mouseout",t.x,t.y,n)};Le.prototype._onClick=function(n){this._onMouseEvent("click",n)};Le.prototype._onDblClick=function(n){this._onMouseEvent("dblclick",n)};Le.prototype._onContextmenu=function(n){this._onMouseEvent("contextmenu",n)};Le.prototype._onTouchStart=function(n){return this._onTouchEvent("touchstart",n)};Le.prototype._onTouchEnd=function(n){return this._onTouchEvent("touchend",n)};Le.prototype._onTouchMove=function(n){if(n.touches.length==1){var t=Number(n.touches[0].pageX/window.innerWidth)*2-1,e=-(n.touches[0].pageY/window.innerHeight)*2+1;this._onMove("mousemove",t,e,n),this._onMove("mouseover",t,e,n),this._onMove("mouseout",t,e,n)}};Le.prototype._onTouchEvent=function(n,t){var e=t.touches;if(e.length==0&&(e=t.changedTouches),e.length==1){var i=Number(e[0].pageX/window.innerWidth)*2-1,s=-(e[0].pageY/window.innerHeight)*2+1;this._onEvent(n,i,s,t)}};class D1 extends Le{constructor(e){super(e.camera,e.getElement());f(this,"five");f(this,"mouseInfo");f(this,"clickHandlerMap",new Map);f(this,"getObjectVisible",e=>e?e.visible===!1?!1:this.getObjectVisible(e.parent):!0);f(this,"preventWhenMouseDown",()=>{var e;if((e=this.mouseInfo)!=null&&e.isDown)return console.debug("preventWhenMouseDown 1"),!1});this.five=e,e.on("wantsMoveToPano",this.preventWhenMouseDown),e.on("wantsTapGesture",this.preventWhenMouseDown)}dispose(){this.five.off("wantsMoveToPano",this.preventWhenMouseDown),this.five.off("wantsTapGesture",this.preventWhenMouseDown),this.clickHandlerMap.clear(),this.mouseInfo=void 0}addAutoBindEventListener(...e){const i=e[0];i.addEventListener("added",()=>{this.addEventListener(...e)}),i.addEventListener("removed",()=>{this.removeEventListener(...e)}),i.addEventListener("dispose",()=>{this.removeEventListener(...e)})}addEventListener(e,i,s,o){const r=d=>{if(this.getObjectVisible(e)===!1){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo={x:h.clientX,y:h.clientY,isDown:!0,mouseDownTimestamp:Date.now()}},a=d=>{if(this.getObjectVisible(e)===!1){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo&&(this.mouseInfo.isDown&&this.mouseInfo.x===h.clientX&&this.mouseInfo.y===h.clientY&&Date.now()-this.mouseInfo.mouseDownTimestamp<400&&s(h),this.mouseInfo=void 0)},l=d=>{if(this.getObjectVisible(e)===!1){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo={x:Math.floor(h.touches[0].clientX),y:Math.floor(h.touches[0].clientY),isDown:!0,mouseDownTimestamp:Date.now()}},c=d=>{if(this.getObjectVisible(e)===!1){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo&&(this.mouseInfo.isDown&&this.mouseInfo.x===Math.floor(h.changedTouches[h.changedTouches.length-1].clientX)&&this.mouseInfo.y===Math.floor(h.changedTouches[h.changedTouches.length-1].clientY)&&Date.now()-this.mouseInfo.mouseDownTimestamp<400&&s(h),this.mouseInfo=void 0)};i==="click"?(super.addEventListener(e,"mousedown",r,o),super.addEventListener(e,"mouseup",a,o),super.addEventListener(e,"touchstart",l,o),super.addEventListener(e,"touchend",c,o),this.clickHandlerMap.set(s,{mousedown:r,mouseup:a,touchstart:l,touchend:c})):super.addEventListener(e,i,s,o)}removeEventListener(e,i,s,o){if(i==="click"){const r=this.clickHandlerMap.get(s);r&&(super.removeEventListener(e,"mousedown",r.mousedown,o),super.removeEventListener(e,"mouseup",r.mouseup,o),super.removeEventListener(e,"touchstart",r.touchstart,o),super.removeEventListener(e,"touchend",r.touchend,o),this.clickHandlerMap.delete(s))}else super.removeEventListener(e,i,s,o);this.mouseInfo=void 0}}class S1 extends P1{constructor(e){super(e);f(this,"tags",[]);f(this,"config",I1);f(this,"mediaStore",Da({currentMediaElement:null}));f(this,"css3DRenderPlugin");f(this,"store",{disposers:[],disposed:!1,resizeObserverDisposerAdding:!1,css3DRenderDisposer:new Map});f(this,"domEvents",new D1(this.five));f(this,"mouseInfo");f(this,"preventWhenMouseDown",()=>{var e;if((e=this.mouseInfo)!=null&&e.isDown)return console.debug("preventWhenMouseDown 2"),!1});this.five.on("wantsMoveToPano",this.preventWhenMouseDown),this.five.on("wantsTapGesture",this.preventWhenMouseDown),this.mediaStore.subscribe(({currentMediaElement:i})=>{this.tags.forEach(s=>{var o;if(s.mediaPlane instanceof aa&&i!==s.mediaPlane.videoInstance){if(!((o=s.mediaPlane.videoInstance)!=null&&o.src)||i===s.mediaPlane.videoInstance)return;s.mediaPlane.pause()}})}),this.store.disposers.push(()=>{this.five.off("wantsMoveToPano",this.preventWhenMouseDown),this.five.off("wantsTapGesture",this.preventWhenMouseDown)})}get isPanorama(){return this.five.currentMode==="Panorama"}getTagById(e){const i=this.tags.find(s=>s.id===e);if(!i){console.warn(`getTagById Error: can't find tag id: ${e}`);return}return i}pauseCurrentMedia(){this.mediaStore.set({currentMediaElement:null})}getTagConfig(e,i={useCache:!0}){var r,a,l;if(!e)return(r=this.config.globalConfig)!=null?r:{};if(i.useCache&&((a=e.config)!=null&&a.isMerged))return e.config;const s={};this.config.contentTypeConfig&&Object.keys(this.config.contentTypeConfig).forEach(c=>{const d=c;if(s[d])return;const h=d.split("-");if(h.length===1){const[u]=h;e.contentType===u&&(s[d]=this.config.contentTypeConfig[d])}if(h.length===2){const[u="Any",m="Any"]=h;u==="Mixin"&&e.contentType===m&&(s[d]=this.config.contentTypeConfig[d]),(e.stickType===u||u==="Any")&&(e.contentType===m||m==="Any")&&(s[d]=this.config.contentTypeConfig[d])}if(h.length===3){const[u="Any",m,A]=h;if(m==="Audio"&&e.contentType==="Audio"){const p=e;(p.stickType===u||u==="Any")&&p.data.appearance===A&&(s[d]=this.config.contentTypeConfig[d])}}});const o=Fe({},Eu,this.config.globalConfig,...Object.values(s),e.config);return typeof o.visibleConfig=="object"&&o.visibleConfig.keep&&(o.visibleConfig={keep:o.visibleConfig.keep,visibleFiveMode:(l=o.visibleConfig)==null?void 0:l.visibleFiveMode}),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})),o.isMerged=!0,o}getCurrentVisibleState(e){return!(!this.state.enabled||!this.state.visible||!e.enabled||!e.state.visible)}loadVideoFirstFrame(){E1&&this.hooks.emit("loadVideoFirstFrame")}updateTagConfig(){this.clearCache(),this.tags.forEach(e=>{var o;const i=this.getTagConfig(e,{useCache:!1});e.config=i;const s=JSON.parse(JSON.stringify(e.data));e.data=(o=i.initialData)!=null&&o.important?Fe(e.data,s,i.initialData):Fe(e.data,i.initialData,s)})}can(e,i){const s=i,o=this.getTagConfig(s);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}getRenderType(e){const i=(()=>{if(e.stickType==="3DPoint")return"Dom";const s=this.getTagConfig(e);if(!s||typeof s!="object"||!s.renderType)return;const o=e.data.mediaData;if(!(!o||o.length===0)&&s.renderType==="Mesh"){if(f1(e)){if(o.length===1&&(o[0].type==="Image"||o[0].type==="Video"))return"Mesh"}else if(vt(e))return o.length===1&&o[0].type==="Image"?"Mesh":"BehindDom"}})();return i!=null?i:"Dom"}getAngle(e,i){var r,a;const s=i!=null?i:this.five.getCurrentState().panoIndex;if(s===void 0)throw new Error(`getDistance(): fivePanoIndex is ${s}`);const o=this.getCache({panoIndex:i,id:e.id});if(o.angle!==void 0)return o.angle;{const l=(a=(r=this.five.work)==null?void 0:r.observers[s])==null?void 0:a.position;if(l===void 0)throw new Error(`getAngleRange(): observerPosition is ${l}`);const c=(()=>e.stickType==="3DPoint"?an(e.normal):Tr(e.position))();if(!c)return;const d=is(e);if(!d)return;const h=new E.Vector3().copy(l).sub(d),u=c.angleTo(h)*180/Math.PI;return o.angle=u,o.angle}}getDistance(e,i){var r,a;const s=i!=null?i:this.five.getCurrentState().panoIndex;if(s===void 0)throw new Error(`getDistance(): fivePanoIndex is ${s}`);const o=this.getCache({panoIndex:i,id:e.id});if(o.distance!==void 0)return o.distance;{const l=(a=(r=this.five.work)==null?void 0:r.observers[s])==null?void 0:a.position;if(l===void 0)throw new Error(`getDistance(): observerPosition is ${l}`);const c=is(e);if(!c)return-1;const d=l.distanceTo(c);return o.distance=d,d}}getPositions(e){if(l1(e))return e.position;if(vt(e))return e.data.mediaPosition;if(c1(e))return p1(this.five.camera.position,Et(e.position),Et(e.normal))}addObjectClickHandler(e,i,s){if(!i||!this.domEvents)return()=>{};const o=()=>!(!this.getCurrentVisibleState(e)||vt(e)&&!e.mediaVisible),r=d=>{if(!o()){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo={x:h.clientX,y:h.clientY,isDown:!0,mouseDownTimestamp:Date.now()}},a=d=>{if(!o()){this.mouseInfo=void 0;return}if(!this.mouseInfo)return;const h=d.origDomEvent;this.mouseInfo.isDown&&this.mouseInfo.x===h.clientX&&this.mouseInfo.y===h.clientY&&Date.now()-this.mouseInfo.mouseDownTimestamp<400&&s(h),this.mouseInfo=void 0},l=d=>{if(!o()){this.mouseInfo=void 0;return}const h=d.origDomEvent;this.mouseInfo={x:Math.floor(h.touches[0].clientX),y:Math.floor(h.touches[0].clientY),isDown:!0,mouseDownTimestamp:Date.now()}},c=d=>{if(!o()){this.mouseInfo=void 0;return}if(!this.mouseInfo)return;const h=d.origDomEvent;this.mouseInfo.isDown&&this.mouseInfo.x===Math.floor(h.changedTouches[h.changedTouches.length-1].clientX)&&this.mouseInfo.y===Math.floor(h.changedTouches[h.changedTouches.length-1].clientY)&&Date.now()-this.mouseInfo.mouseDownTimestamp<400&&s(h),this.mouseInfo=void 0};return this.domEvents.addEventListener(i,"mousedown",r,!1),this.domEvents.addEventListener(i,"mouseup",a,!1),this.domEvents.addEventListener(i,"touchstart",l,!1),this.domEvents.addEventListener(i,"touchend",c,!1),()=>{var d,h,u,m;this.mouseInfo=void 0,(d=this.domEvents)==null||d.removeEventListener(i,"mousedown",r),(h=this.domEvents)==null||h.removeEventListener(i,"mouseup",a),(u=this.domEvents)==null||u.removeEventListener(i,"touchstart",l),(m=this.domEvents)==null||m.removeEventListener(i,"touchend",c)}}getTagNormal(e){if(e.normal)return Et(e.normal);if(e.stickType==="Plane")return Tr(e.position);if(e.stickType==="Model")return Tr(this.getPositions(e))}get filterPointTag(){return this.tags.filter(e=>e.stickType==="2DPoint"||e.stickType==="3DPoint").filter(e=>e.position)}get filter2DPointTag(){return this.tags.filter(e=>e.stickType==="2DPoint").filter(e=>e.position)}get filterImagePlane(){return this.tags.filter(e=>e.contentType==="MediaPlane"&&e.stickType==="Plane"&&this.getRenderType(e)==="Mesh")}get filterMediaModel(){return this.tags.filter(e=>e.stickType==="Model"&&e.contentType==="MediaModel")}get filterCSS3DTag(){return this.tags.filter(i=>i.stickType==="3DPoint"||i.stickType==="Plane"||i.stickType==="Model"&&i.contentType==="MediaModel").filter(i=>{const s=this.getRenderType(i);return s==="BehindDom"||s==="Dom"})}checkDisposed(){return this.store.disposed?(console.error("PanoTagPluginController has been disposed"),!0):!1}}function T1(n,t){if(!t||!n)return console.error("getFloorIndex: invalid arguments: ",{point:t,observer:n}),0;const e=[];n.forEach(s=>{var r,a;const o=(a=(r=s.floorIndex)!=null?r:s.floor_index)!=null?a:0;e[o]||(e[o]=[]),e[o].push(s.position.y)});const i=e.map(s=>s.reduce((o,r)=>o+r,0)/s.length);for(let s=i.length-1;s>0;s--)if(t.y>=i[s])return s;return 0}function L1(n){return arguments.length===0?[]:Array.isArray(n)?n:[n]}const jr=new E.Raycaster;class j1 extends S1{constructor(t){super(t)}getVisibleByPanoIndex(t,e){const i=this.getCache({panoIndex:e,id:t.id}),s=e!=null?e:this.five.getCurrentState().panoIndex;if(t.stickType==="Model")return!0;if(i.visible!==void 0)return i.visible;{const o=(()=>{var l,c,d;const r=(l=t.config.visibleConfig)!=null?l:{},a=this.getDistance(t);if(typeof r=="function")return{value:r(this.five,{tag:t,distance:a}),reason:"config function result"};if(r.keep==="hidden")return{value:!1,reason:"config.keep is hidden"};if(r.keep==="visible")return{value:!0,reason:"config.keep is visible"};if(r.visiblePanoIndex!==void 0&&r.visiblePanoIndex!=="all"&&s!==void 0){if(Array.isArray(r.visiblePanoIndex)&&!r.visiblePanoIndex.includes(s))return{value:!1,reason:`current panoIndex is not included in visiblePano. currentPanoIndex: ${s}, visiblePanoIndex: ${r.visiblePanoIndex}`};if(r.visiblePanoIndex==="current"&&s!==((c=t.fiveState)==null?void 0:c.panoIndex))return{value:!1,reason:`current panoIndex is not equal to tag.panoIndex. currentPanoIndex: ${s}, tag.panoIndex: ${(d=t.fiveState)==null?void 0:d.panoIndex}`}}if(r.visibleDistance!==void 0&&r.visibleDistance!=="unLimited"&&Jn(a,r.visibleDistance)===!1)return{value:!1,reason:`distance is not in visibleDistance. distance: ${a}, visibleDistance: ${r.visibleDistance}`};if(r.intersectRaycaster!==!1&&(typeof r.intersectRaycaster!="object"||r.intersectRaycaster.enabled!==!1)){if(s===void 0)return{value:!1,reason:`intersectRaycaster check failed: fivePanoIndex is ${s}`};const h=this.getTagEnableByIntersect(t,s);if(h.value===!1)return h}if(r.angleRange&&d1(t)){const h=this.getAngle(t);if(Jn(h,r.angleRange)===!1)return{value:!1,reason:`angle is not in angleRange. angle: ${h}, angleRange: ${r.angleRange}`}}return{value:!0,reason:"all check passed"}})();return i.visible=o.value,i.__debug_visible_reason__=o,i.visible}}getVisibleByFiveMode(t,e){const i=e!=null?e:this.five.getCurrentState().mode,s=this.getTagConfig(t).visibleConfig;if(s){if(typeof s=="object"){const o=s==null?void 0:s.visibleFiveMode;return o?o!=null&&o.includes(i)?s.followModelVisibility===!0&&(i==="Floorplan"||i==="Mapview")?this.getVisibleByFloorIndex(t):!0:!1:i==="Panorama"}else if(typeof s=="function")return e==="Panorama"}else return i==="Panorama"}getVisible(t,e){var a,l;const i=(a=e==null?void 0:e.panoIndex)!=null?a:this.five.getCurrentState().panoIndex,s=(l=e==null?void 0:e.mode)!=null?l:this.five.getCurrentState().mode,o=this.getVisibleByFiveMode(t),r=s==="Panorama"?this.getVisibleByPanoIndex(t,i):!0;return o&&r}getModelMedialVisibleByPanoIndex(t,e){if(!this.getCurrentVisibleState(t))return!1;const i=this.getCache({panoIndex:e,id:t.id});if(i.modelMedialVisible!==void 0)return i.modelMedialVisible;const s=this.getTagEnableByIntersect(t,e);return i.modelMedialVisible=s.value,i.__debug_visible_reason__=s,s.value!==!1}getUnfoldedByPanoIndex(t,e){if(!this.getVisibleByPanoIndex(t))return;const s=this.getCache({panoIndex:e,id:t.id});if(s.unfolded!==void 0)return s.unfolded;{const o=this.getTagConfig(t).unfoldedConfig;if(!o)return;const r=(()=>{const l=this.getDistance(t);if(typeof o=="function")return o(this.five,{tag:t,distance:l});if(o.keep==="folded")return!1;if(o.keep==="unfolded")return!0;if(o.unfoldDistance&&Jn(l,o.unfoldDistance)===!1)return!1})();s.unfolded=r;const a=this.getUnfoldedByCamera(t);return a!==void 0?a:s.unfolded}}getUnfoldedByCamera(t){return this.getVisible(t)?(()=>{var r;const s=this.getDistance(t),o=this.getTagConfig(t).unfoldedConfig;if(o){if(typeof o=="function")return o(this.five,{tag:t,distance:s});if(o.keep==="folded")return!1;if(o.keep==="unfolded")return!0;if(o.autoUnfold===void 0||o.autoUnfold===!1||o.autoUnfold.enable===!1||!o.autoUnfold.strategy)return;if(o.autoUnfold.strategy==="ScreenPostion"){const a=this.getTagProject(t);if(a&&Jn(a.x,o.autoUnfold.autoUnfoldProjectX)===!1)return!1}if(o.autoUnfold.strategy==="MinimumDistance"){const c=this.filterPointTag.filter(h=>this.getVisible(h)).filter(h=>{const u=this.getTagProject(h);if(!u)return!1;const{x:m,y:A,z:p}=u;return!(Math.abs(p)>1||Math.abs(m)>1||Math.abs(A)>1)}).map(h=>({tag:h,id:h.id,tagConfig:this.getTagConfig(h).unfoldedConfig})).filter(({tag:h,tagConfig:u})=>{var m,A;return!(typeof u!="object"||u.keep||u.autoUnfold===!1||((m=u.autoUnfold)==null?void 0:m.enable)===!1||((A=u.autoUnfold)==null?void 0:A.strategy)!=="MinimumDistance")}).map(h=>ve(G({},h),{distance:this.getDistance(h.tag)})).filter(({distance:h,tagConfig:u})=>{var m,A;return!(h===void 0||typeof u!="object"||u.autoUnfold===!1||((m=u.autoUnfold)==null?void 0:m.enable)===!1||((A=u.autoUnfold)==null?void 0:A.strategy)!=="MinimumDistance"||u.autoUnfold.distance&&Jn(h,u.autoUnfold.distance)===!1)}).sort((h,u)=>h.distance-u.distance).findIndex(h=>h.id===t.id);if(c===-1||c<=((r=o.autoUnfold.maxNumber)!=null?r:1)-1===!1)return!1}return!0}})():void 0}sort(t){return t.sort((e,i)=>{const s=this.getDistance(e),o=this.getDistance(i);return s===void 0||o===void 0?0:o-s})}setTagZIndex(t){return t.forEach(e=>{const i=this.getDistance(e);e.zIndex=Math.round((i!=null?i:0)*100)})}setPointTagPosition(){const t=this.filterPointTag;t.length!==0&&t.forEach(e=>{var s;if(!((s=e.state)!=null&&s.visible)){e.screenPosition=null;return}const i=this.getTagProject(e);if(!i){e.screenPosition=null;return}e.screenPosition={leftPercent:(i.x+1)/2*100,topPercent:(-i.y+1)/2*100}})}setVisible(){this.tags.forEach(t=>{const e=this.getVisible(t);t.state&&(t.state.visible=e)})}setVisibleByPanoIndex(){this.tags.forEach(t=>{const e=this.getVisibleByPanoIndex(t);t.state&&(t.state.visible=e)})}setModelMedialVisible(){const t=this.five.getCurrentState().mode;this.tags.forEach(e=>{var s;if(!vt(e))return;if(!((s=e.model)!=null&&s.object)){e.mediaVisible=!1;return}const i=t==="Panorama"?this.getModelMedialVisibleByPanoIndex(e):!0;e.mediaVisible=i})}setUnfoldedByPanoIndex(){this.tags.forEach(t=>{const e=this.getUnfoldedByPanoIndex(t);if(t.state&&(e!==void 0&&(t.state.unfolded=e),e&&!t.state.visible)){const i=this.getTagConfig(t);typeof i.unfoldedConfig=="object"&&i.unfoldedConfig.autoFoldWhenHide!==!1&&(t.state.unfolded=!1)}})}getTagProject(t){if(!this.getVisible(t))return;const i=is(t);if(!i)return;const{x:s,y:o,z:r}=i.project(this.five.camera);if(!(r>1))return{x:s,y:o,z:r}}getTagEnableByIntersect(t,e){var c,d,h,u,m,A;const i=fo(fo((c=this.getTagConfig(t).visibleConfig)!=null?c:{}).intersectRaycaster),s=e!=null?e:this.five.getCurrentState().panoIndex,o=(d=this.five.work.observers[s])==null?void 0:d.position;if(o===void 0)return{value:!1,reason:{type:"observerPosition is undefined",fivePanoIndex:s}};const r=L1((()=>{var g;const p=(g=i.checkPoints)!=null?g:"center";return p==="center"?is(t):p==="corner"?Iu(t):Array.isArray(p)?p:[]})());let a=0,l=0;for(const p of r){const g=new E.Vector3().subVectors(p,o).normalize();jr.set(o,g);const v=o.distanceTo(p),[y]=this.five.model.intersectRaycaster(jr),I=(()=>{if(!vt(t))return;const L=this.tags.filter(vt).map(Y=>{var N;return(N=Y.model)==null?void 0:N.object}).filter(ni),[X]=jr.intersectObjects(L,!0);return X})(),M=(h=i.distanceAccuracy)!=null?h:.01;Math.min((u=y==null?void 0:y.distance)!=null?u:1/0,(m=I==null?void 0:I.distance)!=null?m:1/0)+M>=v?a++:l++;const V=(A=i.needPassed)!=null?A:1;if(a>=V)return{value:!0}}return l===0?{value:!0}:{value:!1,reason:{type:"intersectRaycaster check failed",passedCount:a,needPassed:i.needPassed}}}getVisibleByFloorIndex(t){var o,r,a,l,c,d,h;let e=0;const i=(o=t.fiveState)==null?void 0:o.panoIndex;i!==void 0?e=(r=this.five.work.observers[i])==null?void 0:r.floorIndex:e=T1(this.five.work.observers,(h=(d=(l=(a=t.model)==null?void 0:a.object)==null?void 0:l.position)!=null?d:(c=t.mediaPlane)==null?void 0:c.position)!=null?h:is(t));const s=this.five.model.shownFloor;return s===null||s===e}}function z1(n){ue(n,"svelte-xuejcm",".line.svelte-xuejcm{position:absolute;pointer-events:none}.line.vertical.svelte-xuejcm{transform:rotate(-90deg) translate3d(0.03125rem, 0, 0.625rem);transform-origin:0 0}.line.horizontal.svelte-xuejcm{transform:translate3d(0, -0.03125rem, 0.625rem)}.straight-line.svelte-xuejcm{display:block;width:100%;height:100%;overflow:visible}")}function Fc(n){let t,e,i,s,o,r,a,l=n[3]&&Wc(n);return{c(){t=D("div"),e=Be("svg"),i=Be("defs"),s=Be("linearGradient"),o=Be("stop"),r=Be("stop"),l&&l.c(),w(o,"offset","25%"),w(o,"stop-color",n[5]),w(o,"stop-opacity","1"),w(r,"offset","100%"),w(r,"stop-color",n[5]),w(r,"stop-opacity","0.5"),w(s,"x1",.5),w(s,"y1",.5),w(s,"x2",n[8]),w(s,"y2",.5),w(s,"id",n[10]),w(s,"gradientUnits","userSpaceOnUse"),w(e,"class","straight-line svelte-xuejcm"),w(e,"viewBox",a="0 0 "+n[8]+" "+n[7]),w(e,"preserveAspectRatio","none"),w(t,"class","line svelte-xuejcm"),K(t,"vertical",n[9]),K(t,"horizontal",!n[9]),j(t,"width",n[8]+"px"),j(t,"height",n[7]+"px")},m(c,d){O(c,t,d),x(t,e),x(e,i),x(i,s),x(s,o),x(s,r),l&&l.m(e,null)},p(c,d){d&32&&w(o,"stop-color",c[5]),d&32&&w(r,"stop-color",c[5]),d&256&&w(s,"x2",c[8]),c[3]?l?(l.p(c,d),d&8&&k(l,1)):(l=Wc(c),l.c(),k(l,1),l.m(e,null)):l&&(de(),T(l,1,1,()=>{l=null}),he()),d&384&&a!==(a="0 0 "+c[8]+" "+c[7])&&w(e,"viewBox",a),d&512&&K(t,"vertical",c[9]),d&512&&K(t,"horizontal",!c[9]),d&256&&j(t,"width",c[8]+"px"),d&128&&j(t,"height",c[7]+"px")},d(c){c&&z(t),l&&l.d()}}}function Wc(n){let t,e,i,s,o;return{c(){t=Be("path"),w(t,"fill","none"),w(t,"stroke",e=n[4]?`url(#${n[10]})`:n[5]),w(t,"stroke-width",1),w(t,"d",n[6])},m(r,a){O(r,t,a),o=!0},p(r,a){n=r,(!o||a&48&&e!==(e=n[4]?`url(#${n[10]})`:n[5]))&&w(t,"stroke",e),(!o||a&64)&&w(t,"d",n[6])},i(r){o||(r&&He(()=>{o&&(s&&s.end(1),i=Vi(t,lo,{duration:n[2],delay:n[0],easing:ti}),i.start())}),o=!0)},o(r){i&&i.invalidate(),r&&(s=Dn(t,lo,{duration:n[2],delay:n[1],easing:ti})),o=!1},d(r){r&&z(t),r&&s&&s.end()}}}function O1(n){let t,e=n[8]&&Fc(n);return{c(){e&&e.c(),t=Ee()},m(i,s){e&&e.m(i,s),O(i,t,s)},p(i,[s]){i[8]?e?e.p(i,s):(e=Fc(i),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},i:q,o:q,d(i){i&&z(t),e&&e.d(i)}}}function B1(n,t,e){let i,s,o,r,{inDelay:a=0}=t,{outDelay:l=0}=t,{duration:c=1e3}=t,{unfolded:d}=t,{length:h}=t,{direction:u="horizontal"}=t,{useLinearColor:m=!1}=t,{color:A="white"}=t;const p=lt();return n.$$set=g=>{"inDelay"in g&&e(0,a=g.inDelay),"outDelay"in g&&e(1,l=g.outDelay),"duration"in g&&e(2,c=g.duration),"unfolded"in g&&e(3,d=g.unfolded),"length"in g&&e(11,h=g.length),"direction"in g&&e(12,u=g.direction),"useLinearColor"in g&&e(4,m=g.useLinearColor),"color"in g&&e(5,A=g.color)},n.$$.update=()=>{n.$$.dirty&4096&&e(9,i=u==="vertical"),n.$$.dirty&2048&&e(8,s=h),n.$$.dirty&2048&&e(6,r=`M0.5 0.5 H ${h}`)},e(7,o=1),[a,l,c,d,m,A,r,o,s,i,p,h,u]}class Ha extends le{constructor(t){super(),ae(this,t,B1,O1,oe,{inDelay:0,outDelay:1,duration:2,unfolded:3,length:11,direction:12,useLinearColor:4,color:5},z1)}}function V1(n){ue(n,"svelte-faoauy",".shadow.svelte-faoauy{position:absolute}")}function Yc(n){let t,e,i,s,o;return{c(){t=D("div"),w(t,"class","shadow svelte-faoauy"),w(t,"style",e=`
565
565
  left:${Pt(n[5])};
566
566
  bottom:${Pt(n[6])};
567
567
  box-shadow: 0 0 ${Pt(n[10])} ${Pt(n[11])} rgba(0, 0, 0, ${n[12]});
568
568
  ${n[8]?"transform: translateX(-50%); left: 50%":""}
569
569
  ${n[9]?"transform: translateX(-50%); top: 50%":""}
570
570
  ${n[7]?"transform: translate(-50%, -50%); left: 50%; top: 50%;":""}
571
- `),z(t,"width",Pt(n[3])),z(t,"height",Pt(n[4])),z(t,"z-index",n[13])},m(r,a){B(r,t,a),o=!0},p(r,a){n=r,(!o||a&8160&&e!==(e=`
571
+ `),j(t,"width",Pt(n[3])),j(t,"height",Pt(n[4])),j(t,"z-index",n[13])},m(r,a){O(r,t,a),o=!0},p(r,a){n=r,(!o||a&8160&&e!==(e=`
572
572
  left:${Pt(n[5])};
573
573
  bottom:${Pt(n[6])};
574
574
  box-shadow: 0 0 ${Pt(n[10])} ${Pt(n[11])} rgba(0, 0, 0, ${n[12]});
575
575
  ${n[8]?"transform: translateX(-50%); left: 50%":""}
576
576
  ${n[9]?"transform: translateX(-50%); top: 50%":""}
577
577
  ${n[7]?"transform: translate(-50%, -50%); left: 50%; top: 50%;":""}
578
- `))&&w(t,"style",e);const l=a&8160;(l||a&8168)&&z(t,"width",Pt(n[3])),(l||a&8176)&&z(t,"height",Pt(n[4])),(l||a&16352)&&z(t,"z-index",n[13])},i(r){o||(r&&He(()=>{o&&(s&&s.end(1),i=Vi(t,it,{duration:n[0]}),i.start())}),o=!0)},o(r){i&&i.invalidate(),r&&(s=Dn(t,it,{duration:n[1]})),o=!1},d(r){r&&O(t),r&&s&&s.end()}}}function R1(n){let t,e=n[2]&&Yc(n);return{c(){e&&e.c(),t=Ee()},m(i,s){e&&e.m(i,s),B(i,t,s)},p(i,[s]){i[2]?e?(e.p(i,s),s&4&&k(e,1)):(e=Yc(i),e.c(),k(e,1),e.m(t.parentNode,t)):e&&(de(),j(e,1,1,()=>{e=null}),he())},i(i){k(e)},o(i){j(e)},d(i){i&&O(t),e&&e.d(i)}}}function Pt(n){return typeof n=="number"?n/16+"rem":n}function Q1(n,t,e){let{inDelay:i=1e3}=t,{outDelay:s=1e3}=t,{visible:o=!0}=t,{width:r=0}=t,{height:a=0}=t,{left:l=0}=t,{bottom:c=0}=t,{center:d=!1}=t,{horizontalCenter:h=!1}=t,{verticalCenter:u=!1}=t,{blurRadius:m}=t,{spreadRadius:A}=t,{opacity:p=.15}=t,{zIndex:g=-1}=t;return n.$$set=v=>{"inDelay"in v&&e(0,i=v.inDelay),"outDelay"in v&&e(1,s=v.outDelay),"visible"in v&&e(2,o=v.visible),"width"in v&&e(3,r=v.width),"height"in v&&e(4,a=v.height),"left"in v&&e(5,l=v.left),"bottom"in v&&e(6,c=v.bottom),"center"in v&&e(7,d=v.center),"horizontalCenter"in v&&e(8,h=v.horizontalCenter),"verticalCenter"in v&&e(9,u=v.verticalCenter),"blurRadius"in v&&e(10,m=v.blurRadius),"spreadRadius"in v&&e(11,A=v.spreadRadius),"opacity"in v&&e(12,p=v.opacity),"zIndex"in v&&e(13,g=v.zIndex)},[i,s,o,r,a,l,c,d,h,u,m,A,p,g]}class Wt extends le{constructor(t){super(),ae(this,t,Q1,R1,oe,{inDelay:0,outDelay:1,visible:2,width:3,height:4,left:5,bottom:6,center:7,horizontalCenter:8,verticalCenter:9,blurRadius:10,spreadRadius:11,opacity:12,zIndex:13},V1)}}function G1(){return Math.random().toString(36).slice(-6)}const jr=G1();function N1(n){ue(n,"svelte-1b2n9wi",".text-char.svelte-1b2n9wi{display:inline-block;text-shadow:0.125rem 0rem 0.5rem rgba(0, 0, 0, 0.15)}")}function Uc(n,t,e){const i=n.slice();return i[18]=t[e].id,i[0]=t[e].content,i[19]=t,i[20]=e,i}function H1(n){let t,e=n[0]+"",i,s=n[20];const o=()=>n[9](t,s),r=()=>n[9](null,s);return{c(){t=S("span"),i=xe(e),w(t,"class","text-char svelte-1b2n9wi")},m(a,l){B(a,t,l),x(t,i),o()},p(a,l){n=a,l&4&&e!==(e=n[0]+"")&&Se(i,e),s!==n[20]&&(r(),s=n[20],o())},d(a){a&&O(t),r()}}}function _1(n){let t,e=n[20];const i=()=>n[8](t,e),s=()=>n[8](null,e);return{c(){t=S("span"),t.textContent=" ",w(t,"class","text-char svelte-1b2n9wi")},m(o,r){B(o,t,r),i()},p(o,r){n=o,e!==n[20]&&(s(),e=n[20],i())},d(o){o&&O(t),s()}}}function Xc(n,t){let e,i;function s(a,l){return a[0]===a[3]?_1:H1}let o=s(t),r=o(t);return{key:n,first:null,c(){e=Ee(),r.c(),i=Ee(),this.first=e},m(a,l){B(a,e,l),r.m(a,l),B(a,i,l)},p(a,l){t=a,o===(o=s(t))&&r?r.p(t,l):(r.d(1),r=o(t),r&&(r.c(),r.m(i.parentNode,i)))},d(a){a&&(O(e),O(i)),r.d(a)}}}function F1(n){let t=[],e=new Map,i,s=Pe(n[2]);const o=r=>r[18];for(let r=0;r<s.length;r+=1){let a=Uc(n,s,r),l=o(a);e.set(l,t[r]=Xc(l,a))}return{c(){for(let r=0;r<t.length;r+=1)t[r].c();i=Ee()},m(r,a){for(let l=0;l<t.length;l+=1)t[l]&&t[l].m(r,a);B(r,i,a)},p(r,[a]){a&14&&(s=Pe(r[2]),t=Ot(t,a,o,1,r,s,e,i.parentNode,Ma,Xc,i,Uc))},i:q,o:q,d(r){r&&O(i);for(let a=0;a<t.length;a+=1)t[a].d(r)}}}function W1(n,t,e){let i,{inDelay:s=0}=t,{outDelay:o=0}=t,{content:r}=t,{unfolded:a}=t,{isFistUnfoldedUpdate:l=!0}=t;const c=`__EMOJI_SPLIT_${jr}__`,d=`__EMOJI_${jr}__`,h=`__SPACE_${jr}__`;let u,m,A=[];function p(D){const P=[],V=new RegExp(new RegExp("\\p{Regional_Indicator}\\p{Regional_Indicator}|\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?(\\u200D\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?)+|\\p{Emoji_Presentation}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?|\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)","gu"));return D.slice().replace(V,L=>`${c}${d}${L}${c}`).split(c).forEach(L=>L.startsWith(d)?P.push({id:lt(),content:L.slice(d.length)}):P.push(...L.split("").map(X=>X===" "?h:X).map(X=>({id:lt(),content:X})))),P}function g(){if(!m)return;const D=!a;m.reversed!==D&&m.reverse(),m.play()}function v(D){if(l){e(4,l=!1);return}clearTimeout(u),u=setTimeout(g,D?s:o)}function y(D){const P=function(){const V=v1(L=>D[L].getBoundingClientRect().x,[Math.min(D.length-1,10),Math.min(D.length-1,30)]);if(V>0)return V}();m=el({targets:D.slice(0,P).filter(ni),autoplay:!1,duration:400,scale:[.7,1],rotate:[20,0],opacity:[0,1],translateX:[4,0],translateY:[10,0],delay:el.stagger(50),easing:"easeInOutCubic"}),a&&m.seek(m.duration)}function I(D,P){Ge[D?"unshift":"push"](()=>{A[P]=D,e(1,A)})}function M(D,P){Ge[D?"unshift":"push"](()=>{A[P]=D,e(1,A)})}return n.$$set=D=>{"inDelay"in D&&e(5,s=D.inDelay),"outDelay"in D&&e(6,o=D.outDelay),"content"in D&&e(0,r=D.content),"unfolded"in D&&e(7,a=D.unfolded),"isFistUnfoldedUpdate"in D&&e(4,l=D.isFistUnfoldedUpdate)},n.$$.update=()=>{n.$$.dirty&1&&e(2,i=p(r)),n.$$.dirty&128&&v(a),n.$$.dirty&2&&y(A.filter(D=>!!D))},[r,A,i,h,l,s,o,a,I,M]}class Lu extends le{constructor(t){super(),ae(this,t,W1,F1,oe,{inDelay:5,outDelay:6,content:0,unfolded:7,isFistUnfoldedUpdate:4},N1)}}function Y1(n){ue(n,"svelte-1ogmlqq",".arrow.svelte-1ogmlqq{width:100%;height:100%;background-size:100%;transition:transform 400ms ease-in-out;cursor:pointer;pointer-events:auto}.arrow-wrapper.svelte-1ogmlqq{position:relative;width:100%;height:100%}.arrow.left.svelte-1ogmlqq{transform:rotate(0deg)}.arrow.right.svelte-1ogmlqq{transform:rotate(-180deg)}.arrow.top.svelte-1ogmlqq{transform:rotate(90deg)}.arrow.bottom.svelte-1ogmlqq{transform:rotate(-90deg)}")}function Zc(n){let t,e,i,s,o,r,a,l,c,d;return e=new Wt({props:{center:!0,blurRadius:9,spreadRadius:3}}),{c(){t=S("div"),ne(e.$$.fragment),i=$(),s=S("div"),w(s,"class",o="arrow "+n[0]+" svelte-1ogmlqq"),z(s,"background-image","url("+rb+")"),w(t,"class","arrow-wrapper svelte-1ogmlqq")},m(h,u){B(h,t,u),te(e,t,null),x(t,i),x(t,s),l=!0,c||(d=be(s,"click",n[5]),c=!0)},p(h,u){n=h,(!l||u&1&&o!==(o="arrow "+n[0]+" svelte-1ogmlqq"))&&w(s,"class",o)},i(h){l||(k(e.$$.fragment,h),h&&He(()=>{l&&(a&&a.end(1),r=Vi(s,it,{duration:n[2],delay:n[3],easing:pn}),r.start())}),l=!0)},o(h){j(e.$$.fragment,h),r&&r.invalidate(),h&&(a=Dn(s,it,{duration:n[2],delay:n[4],easing:pn})),l=!1},d(h){h&&O(t),ie(e),h&&a&&a.end(),c=!1,d()}}}function U1(n){let t,e,i=n[1]&&Zc(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[1]?i?(i.p(s,o),o&2&&k(i,1)):(i=Zc(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function X1(n,t,e){let{direction:i="right"}=t,{visible:s=!0}=t,{duration:o=0}=t,{inDelay:r=0}=t,{outDelay:a=0}=t;function l(c){xn.call(this,n,c)}return n.$$set=c=>{"direction"in c&&e(0,i=c.direction),"visible"in c&&e(1,s=c.visible),"duration"in c&&e(2,o=c.duration),"inDelay"in c&&e(3,r=c.inDelay),"outDelay"in c&&e(4,a=c.outDelay)},[i,s,o,r,a,l]}let Z1=class extends le{constructor(t){super(),ae(this,t,X1,U1,oe,{direction:0,visible:1,duration:2,inDelay:3,outDelay:4},Y1)}};function J1(n,t,e=20,i=5){return new Promise((s,o)=>{let r=0;const a=setInterval(()=>{const l=n();t(l)?(clearInterval(a),s(l)):r>=i&&(clearInterval(a),o(l)),r++},e)})}function q1(n){ue(n,"svelte-1fuzm7v",".text.svelte-1fuzm7v{pointer-events:auto;box-sizing:border-box;display:inline-block;max-width:7.5rem;transition:transform 400ms ease-in-out;font-size:0.75rem;line-height:1.125rem;white-space:initial;cursor:pointer}.arrow.svelte-1fuzm7v{pointer-events:auto;display:inline-block;vertical-align:top;width:0.875rem;height:0.875rem;margin-left:0.125rem;margin-top:0.125rem}")}function Jc(n){let t,e,i;return e=new Lu({props:{unfolded:n[0],content:n[1],inDelay:500,outDelay:n[5]}}),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","text svelte-1fuzm7v"),z(t,"transform",n[7])},m(s,o){B(s,t,o),te(e,t,null),n[10](t),i=!0},p(s,o){const r={};o&1&&(r.unfolded=s[0]),o&2&&(r.content=s[1]),o&32&&(r.outDelay=s[5]),e.$set(r),o&128&&z(t,"transform",s[7])},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){j(e.$$.fragment,s),i=!1},d(s){s&&O(t),ie(e),n[10](null)}}}function qc(n){let t,e,i;return e=new Z1({props:{direction:n[6],visible:n[0],inDelay:600,duration:1e3}}),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","arrow svelte-1fuzm7v")},m(s,o){B(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o&64&&(r.direction=s[6]),o&1&&(r.visible=s[0]),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){j(e.$$.fragment,s),i=!1},d(s){s&&O(t),ie(e)}}}function K1(n){let t,e,i,s=n[1]&&Jc(n),o=n[3]<n[4]&&qc(n);return{c(){s&&s.c(),t=$(),o&&o.c(),e=Ee()},m(r,a){s&&s.m(r,a),B(r,t,a),o&&o.m(r,a),B(r,e,a),i=!0},p(r,[a]){r[1]?s?(s.p(r,a),a&2&&k(s,1)):(s=Jc(r),s.c(),k(s,1),s.m(t.parentNode,t)):s&&(de(),j(s,1,1,()=>{s=null}),he()),r[3]<r[4]?o?(o.p(r,a),a&24&&k(o,1)):(o=qc(r),o.c(),k(o,1),o.m(e.parentNode,e)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){i||(k(s),k(o),i=!0)},o(r){j(s),j(o),i=!1},d(r){r&&(O(t),O(e)),s&&s.d(r),o&&o.d(r)}}}function $1(n,t,e){let i,s,o,{visible:r=!1}=t,{textUnfolded:a=!1}=t,{content:l}=t,c,d=0,h=0,u=0;function m(A){Ge[A?"unshift":"push"](()=>{c=A,e(2,c)})}return n.$$set=A=>{"visible"in A&&e(0,r=A.visible),"textUnfolded"in A&&e(8,a=A.textUnfolded),"content"in A&&e(1,l=A.content)},n.$$.update=()=>{if(n.$$.dirty&7&&c&&r&&l){const{lineHeight:A}=getComputedStyle(c);e(4,u=c.offsetHeight),J1(()=>c==null?void 0:c.offsetHeight,Boolean).then(()=>{e(4,u=c.offsetHeight)}),e(3,h=Number(A.replace("px","")))}n.$$.dirty&280&&e(9,d=a?h-u:0),n.$$.dirty&512&&e(7,i=`translateY(${d}px)`),n.$$.dirty&256&&e(6,s=a?"left":"right"),n.$$.dirty&256&&e(5,o=a?450:0)},[r,l,c,h,u,o,s,i,a,d,m]}class ju extends le{constructor(t){super(),ae(this,t,$1,K1,oe,{visible:0,textUnfolded:8,content:1},q1)}}function ey(n){ue(n,"svelte-nlvd3x",".content.svelte-nlvd3x{width:-moz-max-content;width:max-content;height:3.375rem;padding:2.25rem 0.25rem 0 1rem;position:absolute;left:0;bottom:0;overflow:hidden;box-sizing:border-box;font-size:0;pointer-events:none;white-space:nowrap;font-weight:600}")}function Kc(n){var d,h;let t,e,i,s,o,r,a,l,c;return t=new Wt({props:{visible:n[2],left:n[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}}),i=new Ha({props:{unfolded:n[2],length:n[3],outDelay:n[4]+40*Math.min((h=(d=n[6][0])==null?void 0:d.content.length)!=null?h:10,15),useLinearColor:!0}}),r=new ju({props:{visible:n[2],textUnfolded:n[1],content:n[5]}}),{c(){ne(t.$$.fragment),e=$(),ne(i.$$.fragment),s=$(),o=S("div"),ne(r.$$.fragment),w(o,"class","content svelte-nlvd3x")},m(u,m){te(t,u,m),B(u,e,m),te(i,u,m),B(u,s,m),B(u,o,m),te(r,o,null),a=!0,l||(c=[ei(Sn.call(null,o)),be(o,"clientWidth",n[8]),be(o,"click",n[7])],l=!0)},p(u,m){var v,y;const A={};m&4&&(A.visible=u[2]),m&8&&(A.left=u[3]/2+"px"),t.$set(A);const p={};m&4&&(p.unfolded=u[2]),m&8&&(p.length=u[3]),m&16&&(p.outDelay=u[4]+40*Math.min((y=(v=u[6][0])==null?void 0:v.content.length)!=null?y:10,15)),i.$set(p);const g={};m&4&&(g.visible=u[2]),m&2&&(g.textUnfolded=u[1]),m&32&&(g.content=u[5]),r.$set(g)},i(u){a||(k(t.$$.fragment,u),k(i.$$.fragment,u),k(r.$$.fragment,u),a=!0)},o(u){j(t.$$.fragment,u),j(i.$$.fragment,u),j(r.$$.fragment,u),a=!1},d(u){u&&(O(e),O(s),O(o)),ie(t,u),ie(i,u),ie(r),l=!1,qe(c)}}}function ty(n){let t,e,i=n[0].state&&Kc(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?i?(i.p(s,o),o&1&&k(i,1)):(i=Kc(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function iy(n,t,e){let i,s,o,{tag:r}=t,a,l=!1,c=[];function d(){e(1,l=!l)}const h=u=>{e(3,a=u.detail)};return n.$$set=u=>{"tag"in u&&e(0,r=u.tag)},n.$$.update=()=>{var u,m,A;n.$$.dirty&1&&e(2,i=!!((u=r.state)!=null&&u.unfolded)),n.$$.dirty&1&&e(5,s=(A=(m=r.data.title)!=null?m:r.data.text)!=null?A:""),n.$$.dirty&4&&(i||setTimeout(()=>{e(1,l=!1)},20)),n.$$.dirty&2&&e(4,o=l?450:0)},[r,l,i,a,o,s,c,d,h]}class ny extends le{constructor(t){super(),ae(this,t,iy,ty,oe,{tag:0},ey)}}function Ht(n){return typeof n=="number"?n/16+"rem":n}function sy(n){ue(n,"svelte-1j0cz4o",'.text.svelte-1j0cz4o{display:-webkit-box;display:-ms-box;display:-moz-box;position:relative;width:-moz-max-content;width:max-content;max-width:100%;-webkit-box-orient:vertical;-ms-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}@keyframes svelte-1j0cz4o-blink{0%{opacity:1}50%{opacity:0}100%{opacity:1}}.caret.svelte-1j0cz4o{position:absolute;width:0.0625rem;height:100%;background-color:#fff;animation:svelte-1j0cz4o-blink 1.2s infinite}.placeholder.svelte-1j0cz4o{opacity:0.5}.placeholder.svelte-1j0cz4o:empty::after{content:" "}')}function oy(n){let t;const e=n[6].default,i=Pn(e,n,n[5],null);return{c(){i&&i.c()},m(s,o){i&&i.m(s,o),t=!0},p(s,o){i&&i.p&&(!t||o&32)&&Mn(i,e,s,s[5],t?En(e,s[5],o,null):kn(s[5]),null)},i(s){t||(k(i,s),t=!0)},o(s){j(i,s),t=!1},d(s){i&&i.d(s)}}}function ry(n){var o,r;let t,e,i=((o=n[3])==null?void 0:o.inputting)&&$c(),s=typeof((r=n[3])==null?void 0:r.placeholder)=="string"&&ed(n);return{c(){i&&i.c(),t=$(),s&&s.c(),e=Ee()},m(a,l){i&&i.m(a,l),B(a,t,l),s&&s.m(a,l),B(a,e,l)},p(a,l){var c,d;(c=a[3])!=null&&c.inputting?i||(i=$c(),i.c(),i.m(t.parentNode,t)):i&&(i.d(1),i=null),typeof((d=a[3])==null?void 0:d.placeholder)=="string"?s?s.p(a,l):(s=ed(a),s.c(),s.m(e.parentNode,e)):s&&(s.d(1),s=null)},i:q,o:q,d(a){a&&(O(t),O(e)),i&&i.d(a),s&&s.d(a)}}}function ay(n){let t;return{c(){t=xe(n[2])},m(e,i){B(e,t,i)},p(e,i){i&4&&Se(t,e[2])},i:q,o:q,d(e){e&&O(t)}}}function $c(n){let t;return{c(){t=S("div"),w(t,"class","caret svelte-1j0cz4o")},m(e,i){B(e,t,i)},d(e){e&&O(t)}}}function ed(n){let t,e=n[3].placeholder+"",i;return{c(){t=S("span"),i=xe(e),w(t,"class","placeholder svelte-1j0cz4o")},m(s,o){B(s,t,o),x(t,i)},p(s,o){o&8&&e!==(e=s[3].placeholder+"")&&Se(i,e)},d(s){s&&O(t)}}}function ly(n){let t,e,i,s;const o=[ay,ry,oy],r=[];function a(l,c){return l[2]?0:l[4]?1:2}return e=a(n),i=r[e]=o[e](n),{c(){t=S("div"),i.c(),w(t,"class","text svelte-1j0cz4o"),z(t,"max-width",typeof n[1]=="number"?Ht(n[1]):n[1]),z(t,"-webkit-line-clamp",n[0])},m(l,c){B(l,t,c),r[e].m(t,null),s=!0},p(l,[c]){let d=e;e=a(l),e===d?r[e].p(l,c):(de(),j(r[d],1,1,()=>{r[d]=null}),he(),i=r[e],i?i.p(l,c):(i=r[e]=o[e](l),i.c()),k(i,1),i.m(t,null)),c&2&&z(t,"max-width",typeof l[1]=="number"?Ht(l[1]):l[1]),c&1&&z(t,"-webkit-line-clamp",l[0])},i(l){s||(k(i),s=!0)},o(l){j(i),s=!1},d(l){l&&O(t),r[e].d()}}}function cy(n,t,e){let i,{$$slots:s={},$$scope:o}=t,{maxLine:r=null}=t,{maxWidth:a=null}=t,{text:l=null}=t,{edit:c=null}=t;return n.$$set=d=>{"maxLine"in d&&e(0,r=d.maxLine),"maxWidth"in d&&e(1,a=d.maxWidth),"text"in d&&e(2,l=d.text),"edit"in d&&e(3,c=d.edit),"$$scope"in d&&e(5,o=d.$$scope)},n.$$.update=()=>{n.$$.dirty&8&&e(4,i=typeof(c==null?void 0:c.placeholder)=="string"||(c==null?void 0:c.inputting))},[r,a,l,c,i,o,s]}class _a extends le{constructor(t){super(),ae(this,t,cy,ly,oe,{maxLine:0,maxWidth:1,text:2,edit:3},sy)}}function dy(n){ue(n,"svelte-1oxrkr1",".plane__container.svelte-1oxrkr1.svelte-1oxrkr1{position:absolute;left:50%;transform:translate(-50%, -100%);width:-moz-max-content;width:max-content}.plane__wrapper.svelte-1oxrkr1.svelte-1oxrkr1{transition:transform 500ms linear, opacity 200ms linear;padding:0.625rem;background-color:rgba(0, 0, 0, 0.5);border:0.03125rem solid rgba(255, 255, 255, 0.3);border-radius:0.25rem}.unfolded.svelte-1oxrkr1 .plane__wrapper.svelte-1oxrkr1{transition-delay:200ms, 500ms;opacity:1}.folded.svelte-1oxrkr1 .plane__wrapper.svelte-1oxrkr1{opacity:0}.plane.svelte-1oxrkr1.svelte-1oxrkr1{max-width:11.75rem}.title.svelte-1oxrkr1.svelte-1oxrkr1{white-space:pre-wrap;font-weight:bold;font-size:0.75rem;line-height:1.125rem}.description.svelte-1oxrkr1.svelte-1oxrkr1{margin-top:0.25rem;white-space:pre-wrap;font-size:0.6875rem;line-height:1rem}")}function td(n){var h,u;let t,e,i,s,o,r,a,l,c;t=new Ha({props:{unfolded:n[1],direction:"vertical",length:15,duration:500,inDelay:200,useLinearColor:!0}}),a=new _a({props:{text:n[4],edit:(h=n[0].data.edit)==null?void 0:h.title,maxLine:n[2]}});let d=(n[0].data.description||((u=n[0].data.edit)==null?void 0:u.description))&&id(n);return{c(){ne(t.$$.fragment),e=$(),i=S("div"),s=S("div"),o=S("div"),r=S("div"),ne(a.$$.fragment),l=$(),d&&d.c(),w(r,"class","title svelte-1oxrkr1"),w(o,"class","plane svelte-1oxrkr1"),w(s,"class","plane__wrapper svelte-1oxrkr1"),z(s,"transform",n[1]?"translateY(-15px)":"translateY(0)"),w(i,"class","plane__container svelte-1oxrkr1"),K(i,"unfolded",n[1]),K(i,"folded",n[5])},m(m,A){te(t,m,A),B(m,e,A),B(m,i,A),x(i,s),x(s,o),x(o,r),te(a,r,null),x(o,l),d&&d.m(o,null),c=!0},p(m,A){var v,y;const p={};A&2&&(p.unfolded=m[1]),t.$set(p);const g={};A&16&&(g.text=m[4]),A&1&&(g.edit=(v=m[0].data.edit)==null?void 0:v.title),A&4&&(g.maxLine=m[2]),a.$set(g),m[0].data.description||(y=m[0].data.edit)!=null&&y.description?d?(d.p(m,A),A&1&&k(d,1)):(d=id(m),d.c(),k(d,1),d.m(o,null)):d&&(de(),j(d,1,1,()=>{d=null}),he()),A&2&&z(s,"transform",m[1]?"translateY(-15px)":"translateY(0)"),(!c||A&2)&&K(i,"unfolded",m[1]),(!c||A&32)&&K(i,"folded",m[5])},i(m){c||(k(t.$$.fragment,m),k(a.$$.fragment,m),k(d),c=!0)},o(m){j(t.$$.fragment,m),j(a.$$.fragment,m),j(d),c=!1},d(m){m&&(O(e),O(i)),ie(t,m),ie(a),d&&d.d()}}}function id(n){var s;let t,e,i;return e=new _a({props:{text:n[0].data.description,edit:(s=n[0].data.edit)==null?void 0:s.description,maxLine:n[3]}}),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","description svelte-1oxrkr1")},m(o,r){B(o,t,r),te(e,t,null),i=!0},p(o,r){var l;const a={};r&1&&(a.text=o[0].data.description),r&1&&(a.edit=(l=o[0].data.edit)==null?void 0:l.description),r&8&&(a.maxLine=o[3]),e.$set(a)},i(o){i||(k(e.$$.fragment,o),i=!0)},o(o){j(e.$$.fragment,o),i=!1},d(o){o&&O(t),ie(e)}}}function hy(n){let t,e,i=n[0].state&&td(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?i?(i.p(s,o),o&1&&k(i,1)):(i=td(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function uy(n,t,e){let i,s,o,r,a,{tag:l}=t;return n.$$set=c=>{"tag"in c&&e(0,l=c.tag)},n.$$.update=()=>{var c,d,h,u,m;n.$$.dirty&1&&e(1,i=!!((c=l.state)!=null&&c.unfolded)),n.$$.dirty&2&&e(5,s=!i),n.$$.dirty&1&&e(4,o=(h=(d=l.data.title)!=null?d:l.data.text)!=null?h:""),n.$$.dirty&1&&e(3,r=(u=l.data.descriptionMaxRows)!=null?u:null),n.$$.dirty&1&&e(2,a=(m=l.data.titleMaxRows)!=null?m:null)},[l,i,a,r,o,s]}class fy extends le{constructor(t){super(),ae(this,t,uy,hy,oe,{tag:0},dy)}}function my(n){let t,e;return t=new fy({props:{tag:n[0]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.tag=i[0]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function gy(n){let t,e;return t=new ny({props:{tag:n[0]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.tag=i[0]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function py(n){let t,e,i,s;const o=[gy,my],r=[];function a(l,c){return l[1]==="line"?0:l[1]==="plane"?1:-1}return~(t=a(n))&&(e=r[t]=o[t](n)),{c(){e&&e.c(),i=Ee()},m(l,c){~t&&r[t].m(l,c),B(l,i,c),s=!0},p(l,[c]){let d=t;t=a(l),t===d?~t&&r[t].p(l,c):(e&&(de(),j(r[d],1,1,()=>{r[d]=null}),he()),~t?(e=r[t],e?e.p(l,c):(e=r[t]=o[t](l),e.c()),k(e,1),e.m(i.parentNode,i)):e=null)},i(l){s||(k(e),s=!0)},o(l){j(e),s=!1},d(l){l&&O(i),~t&&r[t].d(l)}}}function Ay(n,t,e){let i,{tag:s}=t;return n.$$set=o=>{"tag"in o&&e(0,s=o.tag)},n.$$.update=()=>{var o;n.$$.dirty&1&&e(1,i=(o=s.data.appearance)!=null?o:"line")},[s,i]}class vy extends le{constructor(t){super(),ae(this,t,Ay,py,oe,{tag:0})}}function by(n){ue(n,"svelte-blgtit",".line.svelte-blgtit{width:100%;height:100%;overflow:visible;pointer-events:none}")}function nd(n){let t,e,i,s;return{c(){t=Be("path"),w(t,"fill","none"),w(t,"stroke","url(#"+n[4]+")"),w(t,"stroke-width","1"),w(t,"d","M0 21 L14 0.5 L105 0.5")},m(o,r){B(o,t,r),s=!0},p(o,r){n=o},i(o){s||(o&&He(()=>{s&&(i&&i.end(1),e=Vi(t,ao,{duration:n[1],delay:n[0],easing:Xh}),e.start())}),s=!0)},o(o){e&&e.invalidate(),o&&(i=Dn(t,ao,{duration:n[1],delay:n[2],easing:pn})),s=!1},d(o){o&&O(t),o&&i&&i.end()}}}function yy(n){let t,e,i,s,o,r=n[3]&&nd(n);return{c(){t=Be("svg"),e=Be("defs"),i=Be("linearGradient"),s=Be("stop"),o=Be("stop"),r&&r.c(),w(s,"offset","25%"),w(s,"stop-color","white"),w(s,"stop-opacity","1"),w(o,"offset","100%"),w(o,"stop-color","white"),w(o,"stop-opacity","0.5"),w(i,"id",n[4]),w(i,"gradientUnits","userSpaceOnUse"),w(t,"class","line svelte-blgtit"),w(t,"viewBox","0 0 105 21")},m(a,l){B(a,t,l),x(t,e),x(e,i),x(i,s),x(i,o),r&&r.m(t,null)},p(a,[l]){a[3]?r?(r.p(a,l),l&8&&k(r,1)):(r=nd(a),r.c(),k(r,1),r.m(t,null)):r&&(de(),j(r,1,1,()=>{r=null}),he())},i(a){k(r)},o(a){j(r)},d(a){a&&O(t),r&&r.d()}}}function wy(n,t,e){let{inDelay:i=0}=t,{duration:s=1e3}=t,{outDelay:o=0}=t,{unfolded:r}=t;const a=lt();return n.$$set=l=>{"inDelay"in l&&e(0,i=l.inDelay),"duration"in l&&e(1,s=l.duration),"outDelay"in l&&e(2,o=l.outDelay),"unfolded"in l&&e(3,r=l.unfolded)},[i,s,o,r,a]}class Cy extends le{constructor(t){super(),ae(this,t,wy,yy,oe,{inDelay:0,duration:1,outDelay:2,unfolded:3},by)}}function Iy(n){ue(n,"svelte-1mgyhhn",`:root{--sc-dot-size:6px;--sc-active-dot-size:8px;--sc-dot-size-animation-time:250ms}.sc-carousel-dot__dot.svelte-1mgyhhn{background-color:var(--sc-color-rgb-light);border-radius:50%;display:inline-block;opacity:0.5;transition:opacity 100ms ease,\r
578
+ `))&&w(t,"style",e);const l=a&8160;(l||a&8168)&&j(t,"width",Pt(n[3])),(l||a&8176)&&j(t,"height",Pt(n[4])),(l||a&16352)&&j(t,"z-index",n[13])},i(r){o||(r&&He(()=>{o&&(s&&s.end(1),i=Vi(t,it,{duration:n[0]}),i.start())}),o=!0)},o(r){i&&i.invalidate(),r&&(s=Dn(t,it,{duration:n[1]})),o=!1},d(r){r&&z(t),r&&s&&s.end()}}}function R1(n){let t,e=n[2]&&Yc(n);return{c(){e&&e.c(),t=Ee()},m(i,s){e&&e.m(i,s),O(i,t,s)},p(i,[s]){i[2]?e?(e.p(i,s),s&4&&k(e,1)):(e=Yc(i),e.c(),k(e,1),e.m(t.parentNode,t)):e&&(de(),T(e,1,1,()=>{e=null}),he())},i(i){k(e)},o(i){T(e)},d(i){i&&z(t),e&&e.d(i)}}}function Pt(n){return typeof n=="number"?n/16+"rem":n}function Q1(n,t,e){let{inDelay:i=1e3}=t,{outDelay:s=1e3}=t,{visible:o=!0}=t,{width:r=0}=t,{height:a=0}=t,{left:l=0}=t,{bottom:c=0}=t,{center:d=!1}=t,{horizontalCenter:h=!1}=t,{verticalCenter:u=!1}=t,{blurRadius:m}=t,{spreadRadius:A}=t,{opacity:p=.15}=t,{zIndex:g=-1}=t;return n.$$set=v=>{"inDelay"in v&&e(0,i=v.inDelay),"outDelay"in v&&e(1,s=v.outDelay),"visible"in v&&e(2,o=v.visible),"width"in v&&e(3,r=v.width),"height"in v&&e(4,a=v.height),"left"in v&&e(5,l=v.left),"bottom"in v&&e(6,c=v.bottom),"center"in v&&e(7,d=v.center),"horizontalCenter"in v&&e(8,h=v.horizontalCenter),"verticalCenter"in v&&e(9,u=v.verticalCenter),"blurRadius"in v&&e(10,m=v.blurRadius),"spreadRadius"in v&&e(11,A=v.spreadRadius),"opacity"in v&&e(12,p=v.opacity),"zIndex"in v&&e(13,g=v.zIndex)},[i,s,o,r,a,l,c,d,h,u,m,A,p,g]}class Wt extends le{constructor(t){super(),ae(this,t,Q1,R1,oe,{inDelay:0,outDelay:1,visible:2,width:3,height:4,left:5,bottom:6,center:7,horizontalCenter:8,verticalCenter:9,blurRadius:10,spreadRadius:11,opacity:12,zIndex:13},V1)}}function G1(){return Math.random().toString(36).slice(-6)}const Ns=G1();function N1(n){ue(n,"svelte-1b2n9wi",".text-char.svelte-1b2n9wi{display:inline-block;text-shadow:0.125rem 0rem 0.5rem rgba(0, 0, 0, 0.15)}")}function Uc(n,t,e){const i=n.slice();return i[19]=t[e].id,i[0]=t[e].content,i[20]=t,i[21]=e,i}function H1(n){let t,e=n[0]+"",i,s=n[21];const o=()=>n[10](t,s),r=()=>n[10](null,s);return{c(){t=D("span"),i=xe(e),w(t,"class","text-char svelte-1b2n9wi")},m(a,l){O(a,t,l),x(t,i),o()},p(a,l){n=a,l&4&&e!==(e=n[0]+"")&&Se(i,e),s!==n[21]&&(r(),s=n[21],o())},d(a){a&&z(t),r()}}}function _1(n){let t;return{c(){t=D("br")},m(e,i){O(e,t,i)},p:q,d(e){e&&z(t)}}}function F1(n){let t,e=n[21];const i=()=>n[9](t,e),s=()=>n[9](null,e);return{c(){t=D("span"),t.textContent=" ",w(t,"class","text-char svelte-1b2n9wi")},m(o,r){O(o,t,r),i()},p(o,r){n=o,e!==n[21]&&(s(),e=n[21],i())},d(o){o&&z(t),s()}}}function Xc(n,t){let e,i;function s(a,l){return a[0]===a[3]?F1:a[0]===a[4]?_1:H1}let o=s(t),r=o(t);return{key:n,first:null,c(){e=Ee(),r.c(),i=Ee(),this.first=e},m(a,l){O(a,e,l),r.m(a,l),O(a,i,l)},p(a,l){t=a,o===(o=s(t))&&r?r.p(t,l):(r.d(1),r=o(t),r&&(r.c(),r.m(i.parentNode,i)))},d(a){a&&(z(e),z(i)),r.d(a)}}}function W1(n){let t=[],e=new Map,i,s=Pe(n[2]);const o=r=>r[19];for(let r=0;r<s.length;r+=1){let a=Uc(n,s,r),l=o(a);e.set(l,t[r]=Xc(l,a))}return{c(){for(let r=0;r<t.length;r+=1)t[r].c();i=Ee()},m(r,a){for(let l=0;l<t.length;l+=1)t[l]&&t[l].m(r,a);O(r,i,a)},p(r,[a]){a&30&&(s=Pe(r[2]),t=Ot(t,a,o,1,r,s,e,i.parentNode,Ma,Xc,i,Uc))},i:q,o:q,d(r){r&&z(i);for(let a=0;a<t.length;a+=1)t[a].d(r)}}}function Y1(n,t,e){let i,{inDelay:s=0}=t,{outDelay:o=0}=t,{content:r}=t,{unfolded:a}=t,{isFistUnfoldedUpdate:l=!0}=t;const c=`__EMOJI_SPLIT_${Ns}__`,d=`__EMOJI_${Ns}__`,h=`__SPACE_${Ns}__`,u=`__NEW_LINE_${Ns}__`;let m,A,p=[];function g(P){const V=[],L=new RegExp(new RegExp("\\p{Regional_Indicator}\\p{Regional_Indicator}|\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?(\\u200D\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?)+|\\p{Emoji_Presentation}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)?|\\p{Emoji}(\\p{Emoji_Modifier}+|\\uFE0F\\u20E3?)","gu"));return P.slice().replace(L,X=>`${c}${d}${X}${c}`).split(c).forEach(X=>X.startsWith(d)?V.push({id:lt(),content:X.slice(d.length)}):V.push(...X.split("").map(Y=>Y===" "?h:Y===`
579
+ `?u:Y).map(Y=>({id:lt(),content:Y})))),V}function v(){if(!A)return;const P=!a;A.reversed!==P&&A.reverse(),A.play()}function y(P){if(l){e(5,l=!1);return}clearTimeout(m),m=setTimeout(v,P?s:o)}function I(P){const V=function(){const L=v1(X=>P[X].getBoundingClientRect().x,[Math.min(P.length-1,10),Math.min(P.length-1,30)]);if(L>0)return L}();A=el({targets:P.slice(0,V).filter(ni),autoplay:!1,duration:400,scale:[.7,1],rotate:[20,0],opacity:[0,1],translateX:[4,0],translateY:[10,0],delay:el.stagger(50),easing:"easeInOutCubic"}),a&&A.seek(A.duration)}function M(P,V){Ge[P?"unshift":"push"](()=>{p[V]=P,e(1,p)})}function B(P,V){Ge[P?"unshift":"push"](()=>{p[V]=P,e(1,p)})}return n.$$set=P=>{"inDelay"in P&&e(6,s=P.inDelay),"outDelay"in P&&e(7,o=P.outDelay),"content"in P&&e(0,r=P.content),"unfolded"in P&&e(8,a=P.unfolded),"isFistUnfoldedUpdate"in P&&e(5,l=P.isFistUnfoldedUpdate)},n.$$.update=()=>{n.$$.dirty&1&&e(2,i=g(r)),n.$$.dirty&256&&y(a),n.$$.dirty&2&&I(p.filter(P=>!!P))},[r,p,i,h,u,l,s,o,a,M,B]}class Lu extends le{constructor(t){super(),ae(this,t,Y1,W1,oe,{inDelay:6,outDelay:7,content:0,unfolded:8,isFistUnfoldedUpdate:5},N1)}}function U1(n){ue(n,"svelte-1ogmlqq",".arrow.svelte-1ogmlqq{width:100%;height:100%;background-size:100%;transition:transform 400ms ease-in-out;cursor:pointer;pointer-events:auto}.arrow-wrapper.svelte-1ogmlqq{position:relative;width:100%;height:100%}.arrow.left.svelte-1ogmlqq{transform:rotate(0deg)}.arrow.right.svelte-1ogmlqq{transform:rotate(-180deg)}.arrow.top.svelte-1ogmlqq{transform:rotate(90deg)}.arrow.bottom.svelte-1ogmlqq{transform:rotate(-90deg)}")}function Zc(n){let t,e,i,s,o,r,a,l,c,d;return e=new Wt({props:{center:!0,blurRadius:9,spreadRadius:3}}),{c(){t=D("div"),ne(e.$$.fragment),i=$(),s=D("div"),w(s,"class",o="arrow "+n[0]+" svelte-1ogmlqq"),j(s,"background-image","url("+rb+")"),w(t,"class","arrow-wrapper svelte-1ogmlqq")},m(h,u){O(h,t,u),te(e,t,null),x(t,i),x(t,s),l=!0,c||(d=be(s,"click",n[5]),c=!0)},p(h,u){n=h,(!l||u&1&&o!==(o="arrow "+n[0]+" svelte-1ogmlqq"))&&w(s,"class",o)},i(h){l||(k(e.$$.fragment,h),h&&He(()=>{l&&(a&&a.end(1),r=Vi(s,it,{duration:n[2],delay:n[3],easing:pn}),r.start())}),l=!0)},o(h){T(e.$$.fragment,h),r&&r.invalidate(),h&&(a=Dn(s,it,{duration:n[2],delay:n[4],easing:pn})),l=!1},d(h){h&&z(t),ie(e),h&&a&&a.end(),c=!1,d()}}}function X1(n){let t,e,i=n[1]&&Zc(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[1]?i?(i.p(s,o),o&2&&k(i,1)):(i=Zc(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function Z1(n,t,e){let{direction:i="right"}=t,{visible:s=!0}=t,{duration:o=0}=t,{inDelay:r=0}=t,{outDelay:a=0}=t;function l(c){xn.call(this,n,c)}return n.$$set=c=>{"direction"in c&&e(0,i=c.direction),"visible"in c&&e(1,s=c.visible),"duration"in c&&e(2,o=c.duration),"inDelay"in c&&e(3,r=c.inDelay),"outDelay"in c&&e(4,a=c.outDelay)},[i,s,o,r,a,l]}let J1=class extends le{constructor(t){super(),ae(this,t,Z1,X1,oe,{direction:0,visible:1,duration:2,inDelay:3,outDelay:4},U1)}};function q1(n,t,e=20,i=5){return new Promise((s,o)=>{let r=0;const a=setInterval(()=>{const l=n();t(l)?(clearInterval(a),s(l)):r>=i&&(clearInterval(a),o(l)),r++},e)})}function K1(n){ue(n,"svelte-1fuzm7v",".text.svelte-1fuzm7v{pointer-events:auto;box-sizing:border-box;display:inline-block;max-width:7.5rem;transition:transform 400ms ease-in-out;font-size:0.75rem;line-height:1.125rem;white-space:initial;cursor:pointer}.arrow.svelte-1fuzm7v{pointer-events:auto;display:inline-block;vertical-align:top;width:0.875rem;height:0.875rem;margin-left:0.125rem;margin-top:0.125rem}")}function Jc(n){let t,e,i;return e=new Lu({props:{unfolded:n[0],content:n[1],inDelay:500,outDelay:n[5]}}),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","text svelte-1fuzm7v"),j(t,"transform",n[7])},m(s,o){O(s,t,o),te(e,t,null),n[10](t),i=!0},p(s,o){const r={};o&1&&(r.unfolded=s[0]),o&2&&(r.content=s[1]),o&32&&(r.outDelay=s[5]),e.$set(r),o&128&&j(t,"transform",s[7])},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){T(e.$$.fragment,s),i=!1},d(s){s&&z(t),ie(e),n[10](null)}}}function qc(n){let t,e,i;return e=new J1({props:{direction:n[6],visible:n[0],inDelay:600,duration:1e3}}),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","arrow svelte-1fuzm7v")},m(s,o){O(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o&64&&(r.direction=s[6]),o&1&&(r.visible=s[0]),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){T(e.$$.fragment,s),i=!1},d(s){s&&z(t),ie(e)}}}function $1(n){let t,e,i,s=n[1]&&Jc(n),o=n[3]<n[4]&&qc(n);return{c(){s&&s.c(),t=$(),o&&o.c(),e=Ee()},m(r,a){s&&s.m(r,a),O(r,t,a),o&&o.m(r,a),O(r,e,a),i=!0},p(r,[a]){r[1]?s?(s.p(r,a),a&2&&k(s,1)):(s=Jc(r),s.c(),k(s,1),s.m(t.parentNode,t)):s&&(de(),T(s,1,1,()=>{s=null}),he()),r[3]<r[4]?o?(o.p(r,a),a&24&&k(o,1)):(o=qc(r),o.c(),k(o,1),o.m(e.parentNode,e)):o&&(de(),T(o,1,1,()=>{o=null}),he())},i(r){i||(k(s),k(o),i=!0)},o(r){T(s),T(o),i=!1},d(r){r&&(z(t),z(e)),s&&s.d(r),o&&o.d(r)}}}function ey(n,t,e){let i,s,o,{visible:r=!1}=t,{textUnfolded:a=!1}=t,{content:l}=t,c,d=0,h=0,u=0;function m(A){Ge[A?"unshift":"push"](()=>{c=A,e(2,c)})}return n.$$set=A=>{"visible"in A&&e(0,r=A.visible),"textUnfolded"in A&&e(8,a=A.textUnfolded),"content"in A&&e(1,l=A.content)},n.$$.update=()=>{if(n.$$.dirty&7&&c&&r&&l){const{lineHeight:A}=getComputedStyle(c);e(4,u=c.offsetHeight),q1(()=>c==null?void 0:c.offsetHeight,Boolean).then(()=>{e(4,u=c.offsetHeight)}),e(3,h=Number(A.replace("px","")))}n.$$.dirty&280&&e(9,d=a?h-u:0),n.$$.dirty&512&&e(7,i=`translateY(${d}px)`),n.$$.dirty&256&&e(6,s=a?"left":"right"),n.$$.dirty&256&&e(5,o=a?450:0)},[r,l,c,h,u,o,s,i,a,d,m]}class ju extends le{constructor(t){super(),ae(this,t,ey,$1,oe,{visible:0,textUnfolded:8,content:1},K1)}}function ty(n){ue(n,"svelte-5hip41",".content.svelte-5hip41{--height:62.4375rem;width:-moz-max-content;width:max-content;height:var(--height);padding:calc(var(--height) - 1.125rem) 0.25rem 0 1rem;position:absolute;left:0;bottom:0;overflow:hidden;box-sizing:border-box;font-size:0;pointer-events:none;white-space:nowrap;font-weight:600}")}function Kc(n){var d,h;let t,e,i,s,o,r,a,l,c;return t=new Wt({props:{visible:n[2],left:n[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}}),i=new Ha({props:{unfolded:n[2],length:n[3],outDelay:n[4]+40*Math.min((h=(d=n[6][0])==null?void 0:d.content.length)!=null?h:10,15),useLinearColor:!0}}),r=new ju({props:{visible:n[2],textUnfolded:n[1],content:n[5]}}),{c(){ne(t.$$.fragment),e=$(),ne(i.$$.fragment),s=$(),o=D("div"),ne(r.$$.fragment),w(o,"class","content svelte-5hip41")},m(u,m){te(t,u,m),O(u,e,m),te(i,u,m),O(u,s,m),O(u,o,m),te(r,o,null),a=!0,l||(c=[ei(Sn.call(null,o)),be(o,"clientWidth",n[10]),be(o,"click",n[7])],l=!0)},p(u,m){var v,y;const A={};m&4&&(A.visible=u[2]),m&8&&(A.left=u[3]/2+"px"),t.$set(A);const p={};m&4&&(p.unfolded=u[2]),m&8&&(p.length=u[3]),m&16&&(p.outDelay=u[4]+40*Math.min((y=(v=u[6][0])==null?void 0:v.content.length)!=null?y:10,15)),i.$set(p);const g={};m&4&&(g.visible=u[2]),m&2&&(g.textUnfolded=u[1]),m&32&&(g.content=u[5]),r.$set(g)},i(u){a||(k(t.$$.fragment,u),k(i.$$.fragment,u),k(r.$$.fragment,u),a=!0)},o(u){T(t.$$.fragment,u),T(i.$$.fragment,u),T(r.$$.fragment,u),a=!1},d(u){u&&(z(e),z(s),z(o)),ie(t,u),ie(i,u),ie(r),l=!1,qe(c)}}}function iy(n){let t,e,i=n[0].state&&Kc(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[0].state?i?(i.p(s,o),o&1&&k(i,1)):(i=Kc(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function ny(n,t,e){let i,s,o,r,a,{tag:l}=t,c,d=!1,h=[];function u(){e(1,d=!d)}const m=A=>{e(3,c=A.detail)};return n.$$set=A=>{"tag"in A&&e(0,l=A.tag)},n.$$.update=()=>{var A,p,g,v;n.$$.dirty&1&&e(2,i=!!((A=l.state)!=null&&A.unfolded)),n.$$.dirty&1&&e(9,s=(g=(p=l.data.title)!=null?p:l.data.text)!=null?g:""),n.$$.dirty&1&&e(8,o=(v=l.data.description)!=null?v:""),n.$$.dirty&768&&e(5,r=(()=>{if(s&&o)return s+`
580
+ `+o;if(s)return s;if(o)return o})()),n.$$.dirty&4&&(i||setTimeout(()=>{e(1,d=!1)},20)),n.$$.dirty&2&&e(4,a=d?450:0)},[l,d,i,c,a,r,h,u,o,s,m]}class sy extends le{constructor(t){super(),ae(this,t,ny,iy,oe,{tag:0},ty)}}function Ht(n){return typeof n=="number"?n/16+"rem":n}function oy(n){ue(n,"svelte-1j0cz4o",'.text.svelte-1j0cz4o{display:-webkit-box;display:-ms-box;display:-moz-box;position:relative;width:-moz-max-content;width:max-content;max-width:100%;-webkit-box-orient:vertical;-ms-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}@keyframes svelte-1j0cz4o-blink{0%{opacity:1}50%{opacity:0}100%{opacity:1}}.caret.svelte-1j0cz4o{position:absolute;width:0.0625rem;height:100%;background-color:#fff;animation:svelte-1j0cz4o-blink 1.2s infinite}.placeholder.svelte-1j0cz4o{opacity:0.5}.placeholder.svelte-1j0cz4o:empty::after{content:" "}')}function ry(n){let t;const e=n[6].default,i=Pn(e,n,n[5],null);return{c(){i&&i.c()},m(s,o){i&&i.m(s,o),t=!0},p(s,o){i&&i.p&&(!t||o&32)&&Mn(i,e,s,s[5],t?En(e,s[5],o,null):kn(s[5]),null)},i(s){t||(k(i,s),t=!0)},o(s){T(i,s),t=!1},d(s){i&&i.d(s)}}}function ay(n){var o,r;let t,e,i=((o=n[3])==null?void 0:o.inputting)&&$c(),s=typeof((r=n[3])==null?void 0:r.placeholder)=="string"&&ed(n);return{c(){i&&i.c(),t=$(),s&&s.c(),e=Ee()},m(a,l){i&&i.m(a,l),O(a,t,l),s&&s.m(a,l),O(a,e,l)},p(a,l){var c,d;(c=a[3])!=null&&c.inputting?i||(i=$c(),i.c(),i.m(t.parentNode,t)):i&&(i.d(1),i=null),typeof((d=a[3])==null?void 0:d.placeholder)=="string"?s?s.p(a,l):(s=ed(a),s.c(),s.m(e.parentNode,e)):s&&(s.d(1),s=null)},i:q,o:q,d(a){a&&(z(t),z(e)),i&&i.d(a),s&&s.d(a)}}}function ly(n){let t;return{c(){t=xe(n[2])},m(e,i){O(e,t,i)},p(e,i){i&4&&Se(t,e[2])},i:q,o:q,d(e){e&&z(t)}}}function $c(n){let t;return{c(){t=D("div"),w(t,"class","caret svelte-1j0cz4o")},m(e,i){O(e,t,i)},d(e){e&&z(t)}}}function ed(n){let t,e=n[3].placeholder+"",i;return{c(){t=D("span"),i=xe(e),w(t,"class","placeholder svelte-1j0cz4o")},m(s,o){O(s,t,o),x(t,i)},p(s,o){o&8&&e!==(e=s[3].placeholder+"")&&Se(i,e)},d(s){s&&z(t)}}}function cy(n){let t,e,i,s;const o=[ly,ay,ry],r=[];function a(l,c){return l[2]?0:l[4]?1:2}return e=a(n),i=r[e]=o[e](n),{c(){t=D("div"),i.c(),w(t,"class","text svelte-1j0cz4o"),j(t,"max-width",typeof n[1]=="number"?Ht(n[1]):n[1]),j(t,"-webkit-line-clamp",n[0])},m(l,c){O(l,t,c),r[e].m(t,null),s=!0},p(l,[c]){let d=e;e=a(l),e===d?r[e].p(l,c):(de(),T(r[d],1,1,()=>{r[d]=null}),he(),i=r[e],i?i.p(l,c):(i=r[e]=o[e](l),i.c()),k(i,1),i.m(t,null)),c&2&&j(t,"max-width",typeof l[1]=="number"?Ht(l[1]):l[1]),c&1&&j(t,"-webkit-line-clamp",l[0])},i(l){s||(k(i),s=!0)},o(l){T(i),s=!1},d(l){l&&z(t),r[e].d()}}}function dy(n,t,e){let i,{$$slots:s={},$$scope:o}=t,{maxLine:r=null}=t,{maxWidth:a=null}=t,{text:l=null}=t,{edit:c=null}=t;return n.$$set=d=>{"maxLine"in d&&e(0,r=d.maxLine),"maxWidth"in d&&e(1,a=d.maxWidth),"text"in d&&e(2,l=d.text),"edit"in d&&e(3,c=d.edit),"$$scope"in d&&e(5,o=d.$$scope)},n.$$.update=()=>{n.$$.dirty&8&&e(4,i=typeof(c==null?void 0:c.placeholder)=="string"||(c==null?void 0:c.inputting))},[r,a,l,c,i,o,s]}class _a extends le{constructor(t){super(),ae(this,t,dy,cy,oe,{maxLine:0,maxWidth:1,text:2,edit:3},oy)}}function hy(n){ue(n,"svelte-1oxrkr1",".plane__container.svelte-1oxrkr1.svelte-1oxrkr1{position:absolute;left:50%;transform:translate(-50%, -100%);width:-moz-max-content;width:max-content}.plane__wrapper.svelte-1oxrkr1.svelte-1oxrkr1{transition:transform 500ms linear, opacity 200ms linear;padding:0.625rem;background-color:rgba(0, 0, 0, 0.5);border:0.03125rem solid rgba(255, 255, 255, 0.3);border-radius:0.25rem}.unfolded.svelte-1oxrkr1 .plane__wrapper.svelte-1oxrkr1{transition-delay:200ms, 500ms;opacity:1}.folded.svelte-1oxrkr1 .plane__wrapper.svelte-1oxrkr1{opacity:0}.plane.svelte-1oxrkr1.svelte-1oxrkr1{max-width:11.75rem}.title.svelte-1oxrkr1.svelte-1oxrkr1{white-space:pre-wrap;font-weight:bold;font-size:0.75rem;line-height:1.125rem}.description.svelte-1oxrkr1.svelte-1oxrkr1{margin-top:0.25rem;white-space:pre-wrap;font-size:0.6875rem;line-height:1rem}")}function td(n){var h,u;let t,e,i,s,o,r,a,l,c;t=new Ha({props:{unfolded:n[1],direction:"vertical",length:15,duration:500,inDelay:200,useLinearColor:!0}}),a=new _a({props:{text:n[4],edit:(h=n[0].data.edit)==null?void 0:h.title,maxLine:n[2]}});let d=(n[0].data.description||((u=n[0].data.edit)==null?void 0:u.description))&&id(n);return{c(){ne(t.$$.fragment),e=$(),i=D("div"),s=D("div"),o=D("div"),r=D("div"),ne(a.$$.fragment),l=$(),d&&d.c(),w(r,"class","title svelte-1oxrkr1"),w(o,"class","plane svelte-1oxrkr1"),w(s,"class","plane__wrapper svelte-1oxrkr1"),j(s,"transform",n[1]?"translateY(-15px)":"translateY(0)"),w(i,"class","plane__container svelte-1oxrkr1"),K(i,"unfolded",n[1]),K(i,"folded",n[5])},m(m,A){te(t,m,A),O(m,e,A),O(m,i,A),x(i,s),x(s,o),x(o,r),te(a,r,null),x(o,l),d&&d.m(o,null),c=!0},p(m,A){var v,y;const p={};A&2&&(p.unfolded=m[1]),t.$set(p);const g={};A&16&&(g.text=m[4]),A&1&&(g.edit=(v=m[0].data.edit)==null?void 0:v.title),A&4&&(g.maxLine=m[2]),a.$set(g),m[0].data.description||(y=m[0].data.edit)!=null&&y.description?d?(d.p(m,A),A&1&&k(d,1)):(d=id(m),d.c(),k(d,1),d.m(o,null)):d&&(de(),T(d,1,1,()=>{d=null}),he()),A&2&&j(s,"transform",m[1]?"translateY(-15px)":"translateY(0)"),(!c||A&2)&&K(i,"unfolded",m[1]),(!c||A&32)&&K(i,"folded",m[5])},i(m){c||(k(t.$$.fragment,m),k(a.$$.fragment,m),k(d),c=!0)},o(m){T(t.$$.fragment,m),T(a.$$.fragment,m),T(d),c=!1},d(m){m&&(z(e),z(i)),ie(t,m),ie(a),d&&d.d()}}}function id(n){var s;let t,e,i;return e=new _a({props:{text:n[0].data.description,edit:(s=n[0].data.edit)==null?void 0:s.description,maxLine:n[3]}}),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","description svelte-1oxrkr1")},m(o,r){O(o,t,r),te(e,t,null),i=!0},p(o,r){var l;const a={};r&1&&(a.text=o[0].data.description),r&1&&(a.edit=(l=o[0].data.edit)==null?void 0:l.description),r&8&&(a.maxLine=o[3]),e.$set(a)},i(o){i||(k(e.$$.fragment,o),i=!0)},o(o){T(e.$$.fragment,o),i=!1},d(o){o&&z(t),ie(e)}}}function uy(n){let t,e,i=n[0].state&&td(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[0].state?i?(i.p(s,o),o&1&&k(i,1)):(i=td(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function fy(n,t,e){let i,s,o,r,a,{tag:l}=t;return n.$$set=c=>{"tag"in c&&e(0,l=c.tag)},n.$$.update=()=>{var c,d,h,u,m;n.$$.dirty&1&&e(1,i=!!((c=l.state)!=null&&c.unfolded)),n.$$.dirty&2&&e(5,s=!i),n.$$.dirty&1&&e(4,o=(h=(d=l.data.title)!=null?d:l.data.text)!=null?h:""),n.$$.dirty&1&&e(3,r=(u=l.data.descriptionMaxRows)!=null?u:null),n.$$.dirty&1&&e(2,a=(m=l.data.titleMaxRows)!=null?m:null)},[l,i,a,r,o,s]}class my extends le{constructor(t){super(),ae(this,t,fy,uy,oe,{tag:0},hy)}}function gy(n){let t,e;return t=new my({props:{tag:n[0]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.tag=i[0]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function py(n){let t,e;return t=new sy({props:{tag:n[0]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.tag=i[0]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function Ay(n){let t,e,i,s;const o=[py,gy],r=[];function a(l,c){return l[1]==="line"?0:l[1]==="plane"?1:-1}return~(t=a(n))&&(e=r[t]=o[t](n)),{c(){e&&e.c(),i=Ee()},m(l,c){~t&&r[t].m(l,c),O(l,i,c),s=!0},p(l,[c]){let d=t;t=a(l),t===d?~t&&r[t].p(l,c):(e&&(de(),T(r[d],1,1,()=>{r[d]=null}),he()),~t?(e=r[t],e?e.p(l,c):(e=r[t]=o[t](l),e.c()),k(e,1),e.m(i.parentNode,i)):e=null)},i(l){s||(k(e),s=!0)},o(l){T(e),s=!1},d(l){l&&z(i),~t&&r[t].d(l)}}}function vy(n,t,e){let i,{tag:s}=t;return n.$$set=o=>{"tag"in o&&e(0,s=o.tag)},n.$$.update=()=>{var o;n.$$.dirty&1&&e(1,i=(o=s.data.appearance)!=null?o:"line")},[s,i]}class by extends le{constructor(t){super(),ae(this,t,vy,Ay,oe,{tag:0})}}function yy(n){ue(n,"svelte-blgtit",".line.svelte-blgtit{width:100%;height:100%;overflow:visible;pointer-events:none}")}function nd(n){let t,e,i,s;return{c(){t=Be("path"),w(t,"fill","none"),w(t,"stroke","url(#"+n[4]+")"),w(t,"stroke-width","1"),w(t,"d","M0 21 L14 0.5 L105 0.5")},m(o,r){O(o,t,r),s=!0},p(o,r){n=o},i(o){s||(o&&He(()=>{s&&(i&&i.end(1),e=Vi(t,lo,{duration:n[1],delay:n[0],easing:Xh}),e.start())}),s=!0)},o(o){e&&e.invalidate(),o&&(i=Dn(t,lo,{duration:n[1],delay:n[2],easing:pn})),s=!1},d(o){o&&z(t),o&&i&&i.end()}}}function wy(n){let t,e,i,s,o,r=n[3]&&nd(n);return{c(){t=Be("svg"),e=Be("defs"),i=Be("linearGradient"),s=Be("stop"),o=Be("stop"),r&&r.c(),w(s,"offset","25%"),w(s,"stop-color","white"),w(s,"stop-opacity","1"),w(o,"offset","100%"),w(o,"stop-color","white"),w(o,"stop-opacity","0.5"),w(i,"id",n[4]),w(i,"gradientUnits","userSpaceOnUse"),w(t,"class","line svelte-blgtit"),w(t,"viewBox","0 0 105 21")},m(a,l){O(a,t,l),x(t,e),x(e,i),x(i,s),x(i,o),r&&r.m(t,null)},p(a,[l]){a[3]?r?(r.p(a,l),l&8&&k(r,1)):(r=nd(a),r.c(),k(r,1),r.m(t,null)):r&&(de(),T(r,1,1,()=>{r=null}),he())},i(a){k(r)},o(a){T(r)},d(a){a&&z(t),r&&r.d()}}}function Cy(n,t,e){let{inDelay:i=0}=t,{duration:s=1e3}=t,{outDelay:o=0}=t,{unfolded:r}=t;const a=lt();return n.$$set=l=>{"inDelay"in l&&e(0,i=l.inDelay),"duration"in l&&e(1,s=l.duration),"outDelay"in l&&e(2,o=l.outDelay),"unfolded"in l&&e(3,r=l.unfolded)},[i,s,o,r,a]}class Iy extends le{constructor(t){super(),ae(this,t,Cy,wy,oe,{inDelay:0,duration:1,outDelay:2,unfolded:3},yy)}}function Py(n){ue(n,"svelte-1mgyhhn",`:root{--sc-dot-size:6px;--sc-active-dot-size:8px;--sc-dot-size-animation-time:250ms}.sc-carousel-dot__dot.svelte-1mgyhhn{background-color:var(--sc-color-rgb-light);border-radius:50%;display:inline-block;opacity:0.5;transition:opacity 100ms ease,\r
579
581
  height var(--sc-dot-size-animation-time) ease,\r
580
- width var(--sc-dot-size-animation-time) ease;cursor:pointer;-webkit-tap-highlight-color:transparent;height:var(--sc-dot-size);width:var(--sc-dot-size)}.sc-carousel-dot__dot.svelte-1mgyhhn:hover{opacity:0.9}.sc-carousel-dot__dot_active.svelte-1mgyhhn{opacity:0.7;height:var(--sc-active-dot-size);width:var(--sc-active-dot-size)}`)}function Py(n){let t,e,i;return{c(){t=S("button"),w(t,"class","sc-carousel-button sc-carousel-dot__dot svelte-1mgyhhn"),K(t,"sc-carousel-dot__dot_active",n[0])},m(s,o){B(s,t,o),e||(i=be(t,"click",n[1]),e=!0)},p(s,[o]){o&1&&K(t,"sc-carousel-dot__dot_active",s[0])},i:q,o:q,d(s){s&&O(t),e=!1,i()}}}function Ey(n,t,e){let{active:i=!1}=t;function s(o){xn.call(this,n,o)}return n.$$set=o=>{"active"in o&&e(0,i=o.active)},[i,s]}class My extends le{constructor(t){super(),ae(this,t,Ey,Py,oe,{active:0},Iy)}}function ky(n){ue(n,"svelte-670fde",".sc-carousel-dots__container.svelte-670fde{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;padding:0 30px}.sc-carousel-dots__dot-container.svelte-670fde{height:calc(var(--sc-dot-size) + 14px);width:calc(var(--sc-dot-size) + 10px);display:flex;align-items:center;justify-content:center}")}function sd(n,t,e){const i=n.slice();return i[5]=t[e],i[7]=e,i}function od(n,t){let e,i,s,o;function r(){return t[3](t[7])}return i=new My({props:{active:t[1]===t[7]}}),i.$on("click",r),{key:n,first:null,c(){e=S("div"),ne(i.$$.fragment),s=$(),w(e,"class","sc-carousel-dots__dot-container svelte-670fde"),this.first=e},m(a,l){B(a,e,l),te(i,e,null),x(e,s),o=!0},p(a,l){t=a;const c={};l&3&&(c.active=t[1]===t[7]),i.$set(c)},i(a){o||(k(i.$$.fragment,a),o=!0)},o(a){j(i.$$.fragment,a),o=!1},d(a){a&&O(e),ie(i)}}}function xy(n){let t,e=[],i=new Map,s,o=Pe(Array(n[0]));const r=a=>a[7];for(let a=0;a<o.length;a+=1){let l=sd(n,o,a),c=r(l);i.set(c,e[a]=od(c,l))}return{c(){t=S("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","sc-carousel-dots__container svelte-670fde")},m(a,l){B(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,[l]){l&7&&(o=Pe(Array(a[0])),de(),e=Ot(e,l,r,1,a,o,i,t,bi,od,null,sd),he())},i(a){if(!s){for(let l=0;l<o.length;l+=1)k(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)j(e[l]);s=!1},d(a){a&&O(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function Dy(n,t,e){const i=wo();let{pagesCount:s=1}=t,{currentPageIndex:o=0}=t;function r(l){i("pageChange",l)}const a=l=>r(l);return n.$$set=l=>{"pagesCount"in l&&e(0,s=l.pagesCount),"currentPageIndex"in l&&e(1,o=l.currentPageIndex)},[s,o,r,a]}class Sy extends le{constructor(t){super(),ae(this,t,Dy,xy,oe,{pagesCount:0,currentPageIndex:1},ky)}}const wn="prev",pi="next";function Ty(n){ue(n,"svelte-1bftafx",":root{--sc-arrow-size:2px}.sc-carousel-arrow__circle.svelte-1bftafx{width:20px;height:20px;border-radius:50%;background-color:var(--sc-color-rgb-light-50p);display:flex;align-items:center;justify-content:center;transition:opacity 100ms ease;cursor:pointer;-webkit-tap-highlight-color:transparent}.sc-carousel-arrow__circle.svelte-1bftafx:hover{opacity:0.9}.sc-carousel-arrow__arrow.svelte-1bftafx{border:solid var(--sc-color-hex-dark);border-width:0 var(--sc-arrow-size) var(--sc-arrow-size) 0;padding:var(--sc-arrow-size);position:relative}.sc-carousel-arrow__arrow-next.svelte-1bftafx{transform:rotate(-45deg);left:calc(var(--sc-arrow-size) / -2)}.sc-carousel-arrow__arrow-prev.svelte-1bftafx{transform:rotate(135deg);right:calc(var(--sc-arrow-size) / -2)}.sc-carousel-arrow__circle_disabled.svelte-1bftafx,.sc-carousel-arrow__circle_disabled.svelte-1bftafx:hover{opacity:0.5}")}function Ly(n){let t,e,i,s;return{c(){t=S("button"),e=S("i"),w(e,"class","sc-carousel-arrow__arrow svelte-1bftafx"),K(e,"sc-carousel-arrow__arrow-next",n[0]===pi),K(e,"sc-carousel-arrow__arrow-prev",n[0]===wn),w(t,"class","sc-carousel-button sc-carousel-arrow__circle svelte-1bftafx"),K(t,"sc-carousel-arrow__circle_disabled",n[1])},m(o,r){B(o,t,r),x(t,e),i||(s=be(t,"click",n[2]),i=!0)},p(o,[r]){r&1&&K(e,"sc-carousel-arrow__arrow-next",o[0]===pi),r&1&&K(e,"sc-carousel-arrow__arrow-prev",o[0]===wn),r&2&&K(t,"sc-carousel-arrow__circle_disabled",o[1])},i:q,o:q,d(o){o&&O(t),i=!1,s()}}}function jy(n,t,e){let{direction:i=pi}=t,{disabled:s=!1}=t;function o(r){xn.call(this,n,r)}return n.$$set=r=>{"direction"in r&&e(0,i=r.direction),"disabled"in r&&e(1,s=r.disabled)},[i,s,o]}class zu extends le{constructor(t){super(),ae(this,t,jy,Ly,oe,{direction:0,disabled:1},Ty)}}function zy(n){ue(n,"svelte-i7yfid",".sc-carousel-progress__indicator.svelte-i7yfid{height:100%;background-color:var(--sc-color-hex-dark-50p)}")}function Oy(n){let t;return{c(){t=S("div"),w(t,"class","sc-carousel-progress__indicator svelte-i7yfid"),z(t,"width",n[0]+"%")},m(e,i){B(e,t,i)},p(e,[i]){i&1&&z(t,"width",e[0]+"%")},i:q,o:q,d(e){e&&O(t)}}}const rd=100;function By(n,t,e){let i,{value:s=0}=t;return n.$$set=o=>{"value"in o&&e(1,s=o.value)},n.$$.update=()=>{n.$$.dirty&2&&e(0,i=Math.min(Math.max(s*rd,0),rd))},[i,s]}class Vy extends le{constructor(t){super(),ae(this,t,By,Oy,oe,{value:1},zy)}}function Ry(n,t){n.addEventListener("mousedown",t),n.addEventListener("touchstart",t,{passive:!0})}function Qy(n,t){n.removeEventListener("mousedown",t),n.removeEventListener("touchstart",t)}function Gy(n,t){n.addEventListener("mouseup",t),n.addEventListener("touchend",t)}function ad(n,t){n.removeEventListener("mouseup",t),n.removeEventListener("touchend",t)}function Ny(n,t){n.addEventListener("mousemove",t),n.addEventListener("touchmove",t)}function ld(n,t){n.removeEventListener("mousemove",t),n.removeEventListener("touchmove",t)}function Fa(n){return function(t,e){n.dispatchEvent(new CustomEvent(t,{detail:e}))}}const Hy=110,_y=9,Fy=111,Wy=20;function zr(n){if("TouchEvent"in window&&n instanceof TouchEvent){const t=n.touches[0];return{x:t?t.clientX:0,y:t?t.clientY:0}}return{x:n.clientX,y:n.clientY}}function Yy(n,{thresholdProvider:t}){const e=Fa(n);let i,s,o=0,r,a=!1;function l(){return Date.now()-r>=Fy&&Math.abs(o)>=Wy}function c(u){r=Date.now(),o=0,a=!0;const m=zr(u);i=m.x,s=m.y,e("swipeStart",{x:i,y:s}),Ny(window,d),Gy(window,h)}function d(u){if(!a)return;const m=zr(u),A=m.x-i,p=m.y-s;i=m.x,s=m.y,e("swipeMove",{x:i,y:s,dx:A,dy:p}),A!==0&&Math.sign(A)!==Math.sign(o)&&(o=0),o+=A,Math.abs(o)>t()&&(e("swipeThresholdReached",{direction:o>0?wn:pi}),ad(window,h),ld(window,d))}function h(u){if(ad(window,h),ld(window,d),a=!1,!l()){e("swipeFailed");return}const m=zr(u);e("swipeEnd",{x:m.x,y:m.y})}return Ry(n,c),{destroy(){Qy(n,c)}}}function Uy(n,t){n.addEventListener("mouseenter",t)}function Xy(n,t){n.removeEventListener("mouseenter",t)}function Zy(n,t){n.addEventListener("mouseleave",t)}function cd(n,t){n.removeEventListener("mouseleave",t)}function Jy(n){const t=Fa(n);function e(){Zy(n,i),t("hovered",{value:!0})}function i(){t("hovered",{value:!1}),cd(n,i)}return Uy(n,e),{destroy(){Xy(n,e),cd(n,i)}}}const qy=(n,t)=>{const e=t.x-n.x,i=t.y-n.y;return Math.sqrt(e*e+i*i)};function dn(n,t,e){return Math.max(n,Math.min(t,e))}function Ky(n,t){n.addEventListener("touchstart",t,{passive:!0})}function $y(n,t){n.removeEventListener("touchstart",t)}function ew(n,t){n.addEventListener("touchend",t)}function dd(n,t){n.removeEventListener("touchend",t)}function tw(n){const t=Fa(n);let e=0,i={x:0,y:0};function s({tapEndedAt:a,tapEndedPos:l}){const c=a-e,d=qy(i,l);return c<=Hy&&d<=_y}function o(a){e=Date.now();const l=a.touches[0];i={x:l.clientX,y:l.clientY},ew(n,r)}function r(a){dd(n,r);const l=a.changedTouches[0];s({tapEndedAt:Date.now(),tapEndedPos:{x:l.clientX,y:l.clientY}})&&t("tapped")}return Ky(n,o),{destroy(){$y(n,o),dd(n,r)}}}function iw({currentParticleIndex:n,particlesCount:t,clonesCountHead:e,clonesCountTotal:i,particlesToScroll:s}){return n===t-e?0:n===0?Ou({particlesCountWithoutClones:t-i,particlesToScroll:s})-1:Math.floor((n-e)/s)}function nw({currentParticleIndex:n,particlesToScroll:t}){return Math.ceil(n/t)}function sw({currentParticleIndex:n,particlesCount:t,clonesCountHead:e,clonesCountTotal:i,infinite:s,particlesToScroll:o}){return s?iw({currentParticleIndex:n,particlesCount:t,clonesCountHead:e,clonesCountTotal:i,particlesToScroll:o}):nw({currentParticleIndex:n,particlesToScroll:o})}function Ou({particlesCountWithoutClones:n,particlesToScroll:t}){return Math.ceil(n/t)}function ow({particlesCountWithoutClones:n,particlesToScroll:t,particlesToShow:e}){const i=Bu({particlesCountWithoutClones:n,particlesToScroll:t,particlesToShow:e});return Math.ceil(n/t)-i}function rw({infinite:n,particlesCountWithoutClones:t,particlesToScroll:e,particlesToShow:i}){return n?Ou({particlesCountWithoutClones:t,particlesToScroll:e}):ow({particlesCountWithoutClones:t,particlesToScroll:e,particlesToShow:i})}function aw({pageIndex:n,clonesCountHead:t,clonesCountTail:e,particlesToScroll:i,particlesCount:s}){return dn(0,Math.min(t+n*i,s-e),s-1)}function lw({pageIndex:n,particlesToScroll:t,particlesCount:e,particlesToShow:i}){return dn(0,Math.min(n*t,e-i),e-1)}function Or({infinite:n,pageIndex:t,clonesCountHead:e,clonesCountTail:i,particlesToScroll:s,particlesCount:o,particlesToShow:r}){return n?aw({pageIndex:t,clonesCountHead:e,clonesCountTail:i,particlesToScroll:s,particlesCount:o}):lw({pageIndex:t,particlesToScroll:s,particlesCount:o,particlesToShow:r})}function cw({particlesContainerChildren:n,particleWidth:t}){for(let e=0;e<n.length;e++)n[e].style.minWidth=`${t}px`,n[e].style.maxWidth=`${t}px`}function Bu({particlesToScroll:n,particlesToShow:t,particlesCountWithoutClones:e}){const i=n-t;let s=t;for(;;){const o=e-s-i;if(o<t)return Math.max(o,0);s+=t+i}}function dw(n){return new ResizeObserver(t=>{n({width:t[0].contentRect.width})})}function hw({clonesCountHead:n,clonesCountTail:t,particlesContainerChildren:e}){const i=[];for(let r=0;r<t;r++)i.push(e[r].cloneNode(!0));const s=[],o=e.length;for(let r=o-1;r>o-1-n;r--)s.push(e[r].cloneNode(!0));return{clonesToAppend:i,clonesToPrepend:s}}function uw({particlesContainer:n,clonesToAppend:t,clonesToPrepend:e}){for(let i=0;i<t.length;i++)n.append(t[i]);for(let i=0;i<e.length;i++)n.prepend(e[i])}function fw({infinite:n,particlesToShow:t,partialPageSize:e}){const i=n?{head:Math.ceil(e||t),tail:Math.ceil(t)}:{head:0,tail:0};return ve(G({},i),{total:i.head+i.tail})}const ss=(n,t,e)=>{if(n&&n.hasOwnProperty(t))return n[t];if(e===void 0)throw new Error(`Required arg "${t}" was not provided`);return e},la=n=>t=>{n[t]&&n[t]()};var mw="Expected a function",Vu="__lodash_hash_undefined__",Ru=1/0,gw="[object Function]",pw="[object GeneratorFunction]",Aw="[object Symbol]",vw=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,bw=/^\w*$/,yw=/^\./,ww=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Cw=/[\\^$.*+?()[\]{}|]/g,Iw=/\\(\\)?/g,Pw=/^\[object .+?Constructor\]$/,Ew=typeof Mt=="object"&&Mt&&Mt.Object===Object&&Mt,Mw=typeof self=="object"&&self&&self.Object===Object&&self,Wa=Ew||Mw||Function("return this")();function kw(n,t){return n==null?void 0:n[t]}function xw(n){var t=!1;if(n!=null&&typeof n.toString!="function")try{t=!!(n+"")}catch(e){}return t}var Dw=Array.prototype,Sw=Function.prototype,Qu=Object.prototype,Br=Wa["__core-js_shared__"],hd=function(){var n=/[^.]+$/.exec(Br&&Br.keys&&Br.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),Gu=Sw.toString,Ya=Qu.hasOwnProperty,Nu=Qu.toString,Tw=RegExp("^"+Gu.call(Ya).replace(Cw,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ud=Wa.Symbol,Lw=Dw.splice,jw=Hu(Wa,"Map"),as=Hu(Object,"create"),fd=ud?ud.prototype:void 0,md=fd?fd.toString:void 0;function Bi(n){var t=-1,e=n?n.length:0;for(this.clear();++t<e;){var i=n[t];this.set(i[0],i[1])}}function zw(){this.__data__=as?as(null):{}}function Ow(n){return this.has(n)&&delete this.__data__[n]}function Bw(n){var t=this.__data__;if(as){var e=t[n];return e===Vu?void 0:e}return Ya.call(t,n)?t[n]:void 0}function Vw(n){var t=this.__data__;return as?t[n]!==void 0:Ya.call(t,n)}function Rw(n,t){var e=this.__data__;return e[n]=as&&t===void 0?Vu:t,this}Bi.prototype.clear=zw;Bi.prototype.delete=Ow;Bi.prototype.get=Bw;Bi.prototype.has=Vw;Bi.prototype.set=Rw;function Tn(n){var t=-1,e=n?n.length:0;for(this.clear();++t<e;){var i=n[t];this.set(i[0],i[1])}}function Qw(){this.__data__=[]}function Gw(n){var t=this.__data__,e=Do(t,n);if(e<0)return!1;var i=t.length-1;return e==i?t.pop():Lw.call(t,e,1),!0}function Nw(n){var t=this.__data__,e=Do(t,n);return e<0?void 0:t[e][1]}function Hw(n){return Do(this.__data__,n)>-1}function _w(n,t){var e=this.__data__,i=Do(e,n);return i<0?e.push([n,t]):e[i][1]=t,this}Tn.prototype.clear=Qw;Tn.prototype.delete=Gw;Tn.prototype.get=Nw;Tn.prototype.has=Hw;Tn.prototype.set=_w;function Ri(n){var t=-1,e=n?n.length:0;for(this.clear();++t<e;){var i=n[t];this.set(i[0],i[1])}}function Fw(){this.__data__={hash:new Bi,map:new(jw||Tn),string:new Bi}}function Ww(n){return So(this,n).delete(n)}function Yw(n){return So(this,n).get(n)}function Uw(n){return So(this,n).has(n)}function Xw(n,t){return So(this,n).set(n,t),this}Ri.prototype.clear=Fw;Ri.prototype.delete=Ww;Ri.prototype.get=Yw;Ri.prototype.has=Uw;Ri.prototype.set=Xw;function Do(n,t){for(var e=n.length;e--;)if(oC(n[e][0],t))return e;return-1}function Zw(n,t){t=$w(t,n)?[t]:Kw(t);for(var e=0,i=t.length;n!=null&&e<i;)n=n[nC(t[e++])];return e&&e==i?n:void 0}function Jw(n){if(!Fu(n)||tC(n))return!1;var t=rC(n)||xw(n)?Tw:Pw;return t.test(sC(n))}function qw(n){if(typeof n=="string")return n;if(Xa(n))return md?md.call(n):"";var t=n+"";return t=="0"&&1/n==-Ru?"-0":t}function Kw(n){return _u(n)?n:iC(n)}function So(n,t){var e=n.__data__;return eC(t)?e[typeof t=="string"?"string":"hash"]:e.map}function Hu(n,t){var e=kw(n,t);return Jw(e)?e:void 0}function $w(n,t){if(_u(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||Xa(n)?!0:bw.test(n)||!vw.test(n)||t!=null&&n in Object(t)}function eC(n){var t=typeof n;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?n!=="__proto__":n===null}function tC(n){return!!hd&&hd in n}var iC=Ua(function(n){n=lC(n);var t=[];return yw.test(n)&&t.push(""),n.replace(ww,function(e,i,s,o){t.push(s?o.replace(Iw,"$1"):i||e)}),t});function nC(n){if(typeof n=="string"||Xa(n))return n;var t=n+"";return t=="0"&&1/n==-Ru?"-0":t}function sC(n){if(n!=null){try{return Gu.call(n)}catch(t){}try{return n+""}catch(t){}}return""}function Ua(n,t){if(typeof n!="function"||t&&typeof t!="function")throw new TypeError(mw);var e=function(){var i=arguments,s=t?t.apply(this,i):i[0],o=e.cache;if(o.has(s))return o.get(s);var r=n.apply(this,i);return e.cache=o.set(s,r),r};return e.cache=new(Ua.Cache||Ri),e}Ua.Cache=Ri;function oC(n,t){return n===t||n!==n&&t!==t}var _u=Array.isArray;function rC(n){var t=Fu(n)?Nu.call(n):"";return t==gw||t==pw}function Fu(n){var t=typeof n;return!!n&&(t=="object"||t=="function")}function aC(n){return!!n&&typeof n=="object"}function Xa(n){return typeof n=="symbol"||aC(n)&&Nu.call(n)==Aw}function lC(n){return n==null?"":qw(n)}function cC(n,t,e){var i=n==null?void 0:Zw(n,t);return i===void 0?e:i}var Ns=cC,fo={},dC={get exports(){return fo},set exports(n){fo=n}};(function(n,t){var e=200,i="__lodash_hash_undefined__",s=9007199254740991,o="[object Arguments]",r="[object Array]",a="[object Boolean]",l="[object Date]",c="[object Error]",d="[object Function]",h="[object GeneratorFunction]",u="[object Map]",m="[object Number]",A="[object Object]",p="[object Promise]",g="[object RegExp]",v="[object Set]",y="[object String]",I="[object Symbol]",M="[object WeakMap]",D="[object ArrayBuffer]",P="[object DataView]",V="[object Float32Array]",L="[object Float64Array]",X="[object Int8Array]",U="[object Int16Array]",N="[object Int32Array]",H="[object Uint8Array]",_="[object Uint8ClampedArray]",Q="[object Uint16Array]",F="[object Uint32Array]",J=/[\\^$.*+?()[\]{}|]/g,Z=/\w*$/,ee=/^\[object .+?Constructor\]$/,ce=/^(?:0|[1-9]\d*)$/,se={};se[o]=se[r]=se[D]=se[P]=se[a]=se[l]=se[V]=se[L]=se[X]=se[U]=se[N]=se[u]=se[m]=se[A]=se[g]=se[v]=se[y]=se[I]=se[H]=se[_]=se[Q]=se[F]=!0,se[c]=se[d]=se[M]=!1;var we=typeof Mt=="object"&&Mt&&Mt.Object===Object&&Mt,Ce=typeof self=="object"&&self&&self.Object===Object&&self,pe=we||Ce||Function("return this")(),Ve=t&&!t.nodeType&&t,Ae=Ve&&!0&&n&&!n.nodeType&&n,Ye=Ae&&Ae.exports===Ve;function fe(b,C){return b.set(C[0],C[1]),b}function ye(b,C){return b.add(C),b}function ze(b,C){for(var T=-1,Y=b?b.length:0;++T<Y&&C(b[T],T,b)!==!1;);return b}function me(b,C){for(var T=-1,Y=C.length,Ie=b.length;++T<Y;)b[Ie+T]=C[T];return b}function Ke(b,C,T,Y){var Ie=-1,ge=b?b.length:0;for(Y&&ge&&(T=b[++Ie]);++Ie<ge;)T=C(T,b[Ie],Ie,b);return T}function dt(b,C){for(var T=-1,Y=Array(b);++T<b;)Y[T]=C(T);return Y}function ke(b,C){return b==null?void 0:b[C]}function nt(b){var C=!1;if(b!=null&&typeof b.toString!="function")try{C=!!(b+"")}catch(T){}return C}function re(b){var C=-1,T=Array(b.size);return b.forEach(function(Y,Ie){T[++C]=[Ie,Y]}),T}function Me(b,C){return function(T){return b(C(T))}}function _e(b){var C=-1,T=Array(b.size);return b.forEach(function(Y){T[++C]=Y}),T}var mt=Array.prototype,Yt=Function.prototype,yt=Object.prototype,wt=pe["__core-js_shared__"],Re=function(){var b=/[^.]+$/.exec(wt&&wt.keys&&wt.keys.IE_PROTO||"");return b?"Symbol(src)_1."+b:""}(),Ne=Yt.toString,Je=yt.hasOwnProperty,xt=yt.toString,Ln=RegExp("^"+Ne.call(Je).replace(J,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Bt=Ye?pe.Buffer:void 0,oi=pe.Symbol,wi=pe.Uint8Array,gt=Me(Object.getPrototypeOf,Object),Qi=Object.create,Gi=yt.propertyIsEnumerable,zo=mt.splice,jn=Object.getOwnPropertySymbols,Ni=Bt?Bt.isBuffer:void 0,us=Me(Object.keys,Object),Hi=St(pe,"DataView"),Ci=St(pe,"Map"),Dt=St(pe,"Promise"),_i=St(pe,"Set"),zn=St(pe,"WeakMap"),Ii=St(Object,"create"),On=ht(Hi),Pi=ht(Ci),Bn=ht(Dt),Vn=ht(_i),Rn=ht(zn),ri=oi?oi.prototype:void 0,fs=ri?ri.valueOf:void 0;function Ut(b){var C=-1,T=b?b.length:0;for(this.clear();++C<T;){var Y=b[C];this.set(Y[0],Y[1])}}function Oo(){this.__data__=Ii?Ii(null):{}}function Bo(b){return this.has(b)&&delete this.__data__[b]}function Vo(b){var C=this.__data__;if(Ii){var T=C[b];return T===i?void 0:T}return Je.call(C,b)?C[b]:void 0}function ms(b){var C=this.__data__;return Ii?C[b]!==void 0:Je.call(C,b)}function Qn(b,C){var T=this.__data__;return T[b]=Ii&&C===void 0?i:C,this}Ut.prototype.clear=Oo,Ut.prototype.delete=Bo,Ut.prototype.get=Vo,Ut.prototype.has=ms,Ut.prototype.set=Qn;function $e(b){var C=-1,T=b?b.length:0;for(this.clear();++C<T;){var Y=b[C];this.set(Y[0],Y[1])}}function Ro(){this.__data__=[]}function Qo(b){var C=this.__data__,T=Wi(C,b);if(T<0)return!1;var Y=C.length-1;return T==Y?C.pop():zo.call(C,T,1),!0}function Go(b){var C=this.__data__,T=Wi(C,b);return T<0?void 0:C[T][1]}function No(b){return Wi(this.__data__,b)>-1}function Ho(b,C){var T=this.__data__,Y=Wi(T,b);return Y<0?T.push([b,C]):T[Y][1]=C,this}$e.prototype.clear=Ro,$e.prototype.delete=Qo,$e.prototype.get=Go,$e.prototype.has=No,$e.prototype.set=Ho;function st(b){var C=-1,T=b?b.length:0;for(this.clear();++C<T;){var Y=b[C];this.set(Y[0],Y[1])}}function _o(){this.__data__={hash:new Ut,map:new(Ci||$e),string:new Ut}}function Fo(b){return Mi(this,b).delete(b)}function Wo(b){return Mi(this,b).get(b)}function Yo(b){return Mi(this,b).has(b)}function Uo(b,C){return Mi(this,b).set(b,C),this}st.prototype.clear=_o,st.prototype.delete=Fo,st.prototype.get=Wo,st.prototype.has=Yo,st.prototype.set=Uo;function pt(b){this.__data__=new $e(b)}function Xo(){this.__data__=new $e}function Zo(b){return this.__data__.delete(b)}function Jo(b){return this.__data__.get(b)}function qo(b){return this.__data__.has(b)}function Ko(b,C){var T=this.__data__;if(T instanceof $e){var Y=T.__data__;if(!Ci||Y.length<e-1)return Y.push([b,C]),this;T=this.__data__=new st(Y)}return T.set(b,C),this}pt.prototype.clear=Xo,pt.prototype.delete=Zo,pt.prototype.get=Jo,pt.prototype.has=qo,pt.prototype.set=Ko;function Fi(b,C){var T=_n(b)||Ui(b)?dt(b.length,String):[],Y=T.length,Ie=!!Y;for(var ge in b)(C||Je.call(b,ge))&&!(Ie&&(ge=="length"||ur(ge,Y)))&&T.push(ge);return T}function gs(b,C,T){var Y=b[C];(!(Je.call(b,C)&&ys(Y,T))||T===void 0&&!(C in b))&&(b[C]=T)}function Wi(b,C){for(var T=b.length;T--;)if(ys(b[T][0],C))return T;return-1}function Vt(b,C){return b&&Hn(C,Wn(C),b)}function Gn(b,C,T,Y,Ie,ge,De){var Te;if(Y&&(Te=ge?Y(b,Ie,ge,De):Y(b)),Te!==void 0)return Te;if(!Qt(b))return b;var Ue=_n(b);if(Ue){if(Te=dr(b),!C)return ar(b,Te)}else{var Oe=Zt(b),ot=Oe==d||Oe==h;if(ws(b))return Yi(b,C);if(Oe==A||Oe==o||ot&&!ge){if(nt(b))return ge?b:{};if(Te=Rt(ot?{}:b),!C)return lr(b,Vt(Te,b))}else{if(!se[Oe])return ge?b:{};Te=hr(b,Oe,Gn,C)}}De||(De=new pt);var At=De.get(b);if(At)return At;if(De.set(b,Te),!Ue)var Ze=T?cr(b):Wn(b);return ze(Ze||b,function(rt,et){Ze&&(et=rt,rt=b[et]),gs(Te,et,Gn(rt,C,T,Y,et,b,De))}),Te}function $o(b){return Qt(b)?Qi(b):{}}function er(b,C,T){var Y=C(b);return _n(b)?Y:me(Y,T(b))}function tr(b){return xt.call(b)}function ir(b){if(!Qt(b)||mr(b))return!1;var C=Fn(b)||nt(b)?Ln:ee;return C.test(ht(b))}function nr(b){if(!vs(b))return us(b);var C=[];for(var T in Object(b))Je.call(b,T)&&T!="constructor"&&C.push(T);return C}function Yi(b,C){if(C)return b.slice();var T=new b.constructor(b.length);return b.copy(T),T}function Nn(b){var C=new b.constructor(b.byteLength);return new wi(C).set(new wi(b)),C}function Ei(b,C){var T=C?Nn(b.buffer):b.buffer;return new b.constructor(T,b.byteOffset,b.byteLength)}function ps(b,C,T){var Y=C?T(re(b),!0):re(b);return Ke(Y,fe,new b.constructor)}function As(b){var C=new b.constructor(b.source,Z.exec(b));return C.lastIndex=b.lastIndex,C}function sr(b,C,T){var Y=C?T(_e(b),!0):_e(b);return Ke(Y,ye,new b.constructor)}function or(b){return fs?Object(fs.call(b)):{}}function rr(b,C){var T=C?Nn(b.buffer):b.buffer;return new b.constructor(T,b.byteOffset,b.length)}function ar(b,C){var T=-1,Y=b.length;for(C||(C=Array(Y));++T<Y;)C[T]=b[T];return C}function Hn(b,C,T,Y){T||(T={});for(var Ie=-1,ge=C.length;++Ie<ge;){var De=C[Ie],Te=Y?Y(T[De],b[De],De,T,b):void 0;gs(T,De,Te===void 0?b[De]:Te)}return T}function lr(b,C){return Hn(b,Xt(b),C)}function cr(b){return er(b,Wn,Xt)}function Mi(b,C){var T=b.__data__;return fr(C)?T[typeof C=="string"?"string":"hash"]:T.map}function St(b,C){var T=ke(b,C);return ir(T)?T:void 0}var Xt=jn?Me(jn,Object):pr,Zt=tr;(Hi&&Zt(new Hi(new ArrayBuffer(1)))!=P||Ci&&Zt(new Ci)!=u||Dt&&Zt(Dt.resolve())!=p||_i&&Zt(new _i)!=v||zn&&Zt(new zn)!=M)&&(Zt=function(b){var C=xt.call(b),T=C==A?b.constructor:void 0,Y=T?ht(T):void 0;if(Y)switch(Y){case On:return P;case Pi:return u;case Bn:return p;case Vn:return v;case Rn:return M}return C});function dr(b){var C=b.length,T=b.constructor(C);return C&&typeof b[0]=="string"&&Je.call(b,"index")&&(T.index=b.index,T.input=b.input),T}function Rt(b){return typeof b.constructor=="function"&&!vs(b)?$o(gt(b)):{}}function hr(b,C,T,Y){var Ie=b.constructor;switch(C){case D:return Nn(b);case a:case l:return new Ie(+b);case P:return Ei(b,Y);case V:case L:case X:case U:case N:case H:case _:case Q:case F:return rr(b,Y);case u:return ps(b,Y,T);case m:case y:return new Ie(b);case g:return As(b);case v:return sr(b,Y,T);case I:return or(b)}}function ur(b,C){return C=C==null?s:C,!!C&&(typeof b=="number"||ce.test(b))&&b>-1&&b%1==0&&b<C}function fr(b){var C=typeof b;return C=="string"||C=="number"||C=="symbol"||C=="boolean"?b!=="__proto__":b===null}function mr(b){return!!Re&&Re in b}function vs(b){var C=b&&b.constructor,T=typeof C=="function"&&C.prototype||yt;return b===T}function ht(b){if(b!=null){try{return Ne.call(b)}catch(C){}try{return b+""}catch(C){}}return""}function bs(b){return Gn(b,!0,!0)}function ys(b,C){return b===C||b!==b&&C!==C}function Ui(b){return gr(b)&&Je.call(b,"callee")&&(!Gi.call(b,"callee")||xt.call(b)==o)}var _n=Array.isArray;function Xi(b){return b!=null&&Cs(b.length)&&!Fn(b)}function gr(b){return Is(b)&&Xi(b)}var ws=Ni||Ar;function Fn(b){var C=Qt(b)?xt.call(b):"";return C==d||C==h}function Cs(b){return typeof b=="number"&&b>-1&&b%1==0&&b<=s}function Qt(b){var C=typeof b;return!!b&&(C=="object"||C=="function")}function Is(b){return!!b&&typeof b=="object"}function Wn(b){return Xi(b)?Fi(b):nr(b)}function pr(){return[]}function Ar(){return!1}n.exports=bs})(dC,fo);const hC=fo;var mo={},uC={get exports(){return mo},set exports(n){mo=n}};(function(n,t){var e=200,i="__lodash_hash_undefined__",s=1,o=2,r=9007199254740991,a="[object Arguments]",l="[object Array]",c="[object AsyncFunction]",d="[object Boolean]",h="[object Date]",u="[object Error]",m="[object Function]",A="[object GeneratorFunction]",p="[object Map]",g="[object Number]",v="[object Null]",y="[object Object]",I="[object Promise]",M="[object Proxy]",D="[object RegExp]",P="[object Set]",V="[object String]",L="[object Symbol]",X="[object Undefined]",U="[object WeakMap]",N="[object ArrayBuffer]",H="[object DataView]",_="[object Float32Array]",Q="[object Float64Array]",F="[object Int8Array]",J="[object Int16Array]",Z="[object Int32Array]",ee="[object Uint8Array]",ce="[object Uint8ClampedArray]",se="[object Uint16Array]",we="[object Uint32Array]",Ce=/[\\^$.*+?()[\]{}|]/g,pe=/^\[object .+?Constructor\]$/,Ve=/^(?:0|[1-9]\d*)$/,Ae={};Ae[_]=Ae[Q]=Ae[F]=Ae[J]=Ae[Z]=Ae[ee]=Ae[ce]=Ae[se]=Ae[we]=!0,Ae[a]=Ae[l]=Ae[N]=Ae[d]=Ae[H]=Ae[h]=Ae[u]=Ae[m]=Ae[p]=Ae[g]=Ae[y]=Ae[D]=Ae[P]=Ae[V]=Ae[U]=!1;var Ye=typeof Mt=="object"&&Mt&&Mt.Object===Object&&Mt,fe=typeof self=="object"&&self&&self.Object===Object&&self,ye=Ye||fe||Function("return this")(),ze=t&&!t.nodeType&&t,me=ze&&!0&&n&&!n.nodeType&&n,Ke=me&&me.exports===ze,dt=Ke&&Ye.process,ke=function(){try{return dt&&dt.binding&&dt.binding("util")}catch(b){}}(),nt=ke&&ke.isTypedArray;function re(b,C){for(var T=-1,Y=b==null?0:b.length,Ie=0,ge=[];++T<Y;){var De=b[T];C(De,T,b)&&(ge[Ie++]=De)}return ge}function Me(b,C){for(var T=-1,Y=C.length,Ie=b.length;++T<Y;)b[Ie+T]=C[T];return b}function _e(b,C){for(var T=-1,Y=b==null?0:b.length;++T<Y;)if(C(b[T],T,b))return!0;return!1}function mt(b,C){for(var T=-1,Y=Array(b);++T<b;)Y[T]=C(T);return Y}function Yt(b){return function(C){return b(C)}}function yt(b,C){return b.has(C)}function wt(b,C){return b==null?void 0:b[C]}function Re(b){var C=-1,T=Array(b.size);return b.forEach(function(Y,Ie){T[++C]=[Ie,Y]}),T}function Ne(b,C){return function(T){return b(C(T))}}function Je(b){var C=-1,T=Array(b.size);return b.forEach(function(Y){T[++C]=Y}),T}var xt=Array.prototype,Ln=Function.prototype,Bt=Object.prototype,oi=ye["__core-js_shared__"],wi=Ln.toString,gt=Bt.hasOwnProperty,Qi=function(){var b=/[^.]+$/.exec(oi&&oi.keys&&oi.keys.IE_PROTO||"");return b?"Symbol(src)_1."+b:""}(),Gi=Bt.toString,zo=RegExp("^"+wi.call(gt).replace(Ce,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),jn=Ke?ye.Buffer:void 0,Ni=ye.Symbol,us=ye.Uint8Array,Hi=Bt.propertyIsEnumerable,Ci=xt.splice,Dt=Ni?Ni.toStringTag:void 0,_i=Object.getOwnPropertySymbols,zn=jn?jn.isBuffer:void 0,Ii=Ne(Object.keys,Object),On=Xt(ye,"DataView"),Pi=Xt(ye,"Map"),Bn=Xt(ye,"Promise"),Vn=Xt(ye,"Set"),Rn=Xt(ye,"WeakMap"),ri=Xt(Object,"create"),fs=ht(On),Ut=ht(Pi),Oo=ht(Bn),Bo=ht(Vn),Vo=ht(Rn),ms=Ni?Ni.prototype:void 0,Qn=ms?ms.valueOf:void 0;function $e(b){var C=-1,T=b==null?0:b.length;for(this.clear();++C<T;){var Y=b[C];this.set(Y[0],Y[1])}}function Ro(){this.__data__=ri?ri(null):{},this.size=0}function Qo(b){var C=this.has(b)&&delete this.__data__[b];return this.size-=C?1:0,C}function Go(b){var C=this.__data__;if(ri){var T=C[b];return T===i?void 0:T}return gt.call(C,b)?C[b]:void 0}function No(b){var C=this.__data__;return ri?C[b]!==void 0:gt.call(C,b)}function Ho(b,C){var T=this.__data__;return this.size+=this.has(b)?0:1,T[b]=ri&&C===void 0?i:C,this}$e.prototype.clear=Ro,$e.prototype.delete=Qo,$e.prototype.get=Go,$e.prototype.has=No,$e.prototype.set=Ho;function st(b){var C=-1,T=b==null?0:b.length;for(this.clear();++C<T;){var Y=b[C];this.set(Y[0],Y[1])}}function _o(){this.__data__=[],this.size=0}function Fo(b){var C=this.__data__,T=Yi(C,b);if(T<0)return!1;var Y=C.length-1;return T==Y?C.pop():Ci.call(C,T,1),--this.size,!0}function Wo(b){var C=this.__data__,T=Yi(C,b);return T<0?void 0:C[T][1]}function Yo(b){return Yi(this.__data__,b)>-1}function Uo(b,C){var T=this.__data__,Y=Yi(T,b);return Y<0?(++this.size,T.push([b,C])):T[Y][1]=C,this}st.prototype.clear=_o,st.prototype.delete=Fo,st.prototype.get=Wo,st.prototype.has=Yo,st.prototype.set=Uo;function pt(b){var C=-1,T=b==null?0:b.length;for(this.clear();++C<T;){var Y=b[C];this.set(Y[0],Y[1])}}function Xo(){this.size=0,this.__data__={hash:new $e,map:new(Pi||st),string:new $e}}function Zo(b){var C=St(this,b).delete(b);return this.size-=C?1:0,C}function Jo(b){return St(this,b).get(b)}function qo(b){return St(this,b).has(b)}function Ko(b,C){var T=St(this,b),Y=T.size;return T.set(b,C),this.size+=T.size==Y?0:1,this}pt.prototype.clear=Xo,pt.prototype.delete=Zo,pt.prototype.get=Jo,pt.prototype.has=qo,pt.prototype.set=Ko;function Fi(b){var C=-1,T=b==null?0:b.length;for(this.__data__=new pt;++C<T;)this.add(b[C])}function gs(b){return this.__data__.set(b,i),this}function Wi(b){return this.__data__.has(b)}Fi.prototype.add=Fi.prototype.push=gs,Fi.prototype.has=Wi;function Vt(b){var C=this.__data__=new st(b);this.size=C.size}function Gn(){this.__data__=new st,this.size=0}function $o(b){var C=this.__data__,T=C.delete(b);return this.size=C.size,T}function er(b){return this.__data__.get(b)}function tr(b){return this.__data__.has(b)}function ir(b,C){var T=this.__data__;if(T instanceof st){var Y=T.__data__;if(!Pi||Y.length<e-1)return Y.push([b,C]),this.size=++T.size,this;T=this.__data__=new pt(Y)}return T.set(b,C),this.size=T.size,this}Vt.prototype.clear=Gn,Vt.prototype.delete=$o,Vt.prototype.get=er,Vt.prototype.has=tr,Vt.prototype.set=ir;function nr(b,C){var T=Ui(b),Y=!T&&ys(b),Ie=!T&&!Y&&Xi(b),ge=!T&&!Y&&!Ie&&Is(b),De=T||Y||Ie||ge,Te=De?mt(b.length,String):[],Ue=Te.length;for(var Oe in b)(C||gt.call(b,Oe))&&!(De&&(Oe=="length"||Ie&&(Oe=="offset"||Oe=="parent")||ge&&(Oe=="buffer"||Oe=="byteLength"||Oe=="byteOffset")||hr(Oe,Ue)))&&Te.push(Oe);return Te}function Yi(b,C){for(var T=b.length;T--;)if(bs(b[T][0],C))return T;return-1}function Nn(b,C,T){var Y=C(b);return Ui(b)?Y:Me(Y,T(b))}function Ei(b){return b==null?b===void 0?X:v:Dt&&Dt in Object(b)?Zt(b):vs(b)}function ps(b){return Qt(b)&&Ei(b)==a}function As(b,C,T,Y,Ie){return b===C?!0:b==null||C==null||!Qt(b)&&!Qt(C)?b!==b&&C!==C:sr(b,C,T,Y,As,Ie)}function sr(b,C,T,Y,Ie,ge){var De=Ui(b),Te=Ui(C),Ue=De?l:Rt(b),Oe=Te?l:Rt(C);Ue=Ue==a?y:Ue,Oe=Oe==a?y:Oe;var ot=Ue==y,At=Oe==y,Ze=Ue==Oe;if(Ze&&Xi(b)){if(!Xi(C))return!1;De=!0,ot=!1}if(Ze&&!ot)return ge||(ge=new Vt),De||Is(b)?Hn(b,C,T,Y,Ie,ge):lr(b,C,Ue,T,Y,Ie,ge);if(!(T&s)){var rt=ot&&gt.call(b,"__wrapped__"),et=At&&gt.call(C,"__wrapped__");if(rt||et){var ai=rt?b.value():b,Jt=et?C.value():C;return ge||(ge=new Vt),Ie(ai,Jt,T,Y,ge)}}return Ze?(ge||(ge=new Vt),cr(b,C,T,Y,Ie,ge)):!1}function or(b){if(!Cs(b)||fr(b))return!1;var C=ws(b)?zo:pe;return C.test(ht(b))}function rr(b){return Qt(b)&&Fn(b.length)&&!!Ae[Ei(b)]}function ar(b){if(!mr(b))return Ii(b);var C=[];for(var T in Object(b))gt.call(b,T)&&T!="constructor"&&C.push(T);return C}function Hn(b,C,T,Y,Ie,ge){var De=T&s,Te=b.length,Ue=C.length;if(Te!=Ue&&!(De&&Ue>Te))return!1;var Oe=ge.get(b);if(Oe&&ge.get(C))return Oe==C;var ot=-1,At=!0,Ze=T&o?new Fi:void 0;for(ge.set(b,C),ge.set(C,b);++ot<Te;){var rt=b[ot],et=C[ot];if(Y)var ai=De?Y(et,rt,ot,C,b,ge):Y(rt,et,ot,b,C,ge);if(ai!==void 0){if(ai)continue;At=!1;break}if(Ze){if(!_e(C,function(Jt,ki){if(!yt(Ze,ki)&&(rt===Jt||Ie(rt,Jt,T,Y,ge)))return Ze.push(ki)})){At=!1;break}}else if(!(rt===et||Ie(rt,et,T,Y,ge))){At=!1;break}}return ge.delete(b),ge.delete(C),At}function lr(b,C,T,Y,Ie,ge,De){switch(T){case H:if(b.byteLength!=C.byteLength||b.byteOffset!=C.byteOffset)return!1;b=b.buffer,C=C.buffer;case N:return!(b.byteLength!=C.byteLength||!ge(new us(b),new us(C)));case d:case h:case g:return bs(+b,+C);case u:return b.name==C.name&&b.message==C.message;case D:case V:return b==C+"";case p:var Te=Re;case P:var Ue=Y&s;if(Te||(Te=Je),b.size!=C.size&&!Ue)return!1;var Oe=De.get(b);if(Oe)return Oe==C;Y|=o,De.set(b,C);var ot=Hn(Te(b),Te(C),Y,Ie,ge,De);return De.delete(b),ot;case L:if(Qn)return Qn.call(b)==Qn.call(C)}return!1}function cr(b,C,T,Y,Ie,ge){var De=T&s,Te=Mi(b),Ue=Te.length,Oe=Mi(C),ot=Oe.length;if(Ue!=ot&&!De)return!1;for(var At=Ue;At--;){var Ze=Te[At];if(!(De?Ze in C:gt.call(C,Ze)))return!1}var rt=ge.get(b);if(rt&&ge.get(C))return rt==C;var et=!0;ge.set(b,C),ge.set(C,b);for(var ai=De;++At<Ue;){Ze=Te[At];var Jt=b[Ze],ki=C[Ze];if(Y)var Ka=De?Y(ki,Jt,Ze,C,b,ge):Y(Jt,ki,Ze,b,C,ge);if(!(Ka===void 0?Jt===ki||Ie(Jt,ki,T,Y,ge):Ka)){et=!1;break}ai||(ai=Ze=="constructor")}if(et&&!ai){var Ps=b.constructor,Es=C.constructor;Ps!=Es&&"constructor"in b&&"constructor"in C&&!(typeof Ps=="function"&&Ps instanceof Ps&&typeof Es=="function"&&Es instanceof Es)&&(et=!1)}return ge.delete(b),ge.delete(C),et}function Mi(b){return Nn(b,Wn,dr)}function St(b,C){var T=b.__data__;return ur(C)?T[typeof C=="string"?"string":"hash"]:T.map}function Xt(b,C){var T=wt(b,C);return or(T)?T:void 0}function Zt(b){var C=gt.call(b,Dt),T=b[Dt];try{b[Dt]=void 0;var Y=!0}catch(ge){}var Ie=Gi.call(b);return Y&&(C?b[Dt]=T:delete b[Dt]),Ie}var dr=_i?function(b){return b==null?[]:(b=Object(b),re(_i(b),function(C){return Hi.call(b,C)}))}:pr,Rt=Ei;(On&&Rt(new On(new ArrayBuffer(1)))!=H||Pi&&Rt(new Pi)!=p||Bn&&Rt(Bn.resolve())!=I||Vn&&Rt(new Vn)!=P||Rn&&Rt(new Rn)!=U)&&(Rt=function(b){var C=Ei(b),T=C==y?b.constructor:void 0,Y=T?ht(T):"";if(Y)switch(Y){case fs:return H;case Ut:return p;case Oo:return I;case Bo:return P;case Vo:return U}return C});function hr(b,C){return C=C==null?r:C,!!C&&(typeof b=="number"||Ve.test(b))&&b>-1&&b%1==0&&b<C}function ur(b){var C=typeof b;return C=="string"||C=="number"||C=="symbol"||C=="boolean"?b!=="__proto__":b===null}function fr(b){return!!Qi&&Qi in b}function mr(b){var C=b&&b.constructor,T=typeof C=="function"&&C.prototype||Bt;return b===T}function vs(b){return Gi.call(b)}function ht(b){if(b!=null){try{return wi.call(b)}catch(C){}try{return b+""}catch(C){}}return""}function bs(b,C){return b===C||b!==b&&C!==C}var ys=ps(function(){return arguments}())?ps:function(b){return Qt(b)&&gt.call(b,"callee")&&!Hi.call(b,"callee")},Ui=Array.isArray;function _n(b){return b!=null&&Fn(b.length)&&!ws(b)}var Xi=zn||Ar;function gr(b,C){return As(b,C)}function ws(b){if(!Cs(b))return!1;var C=Ei(b);return C==m||C==A||C==c||C==M}function Fn(b){return typeof b=="number"&&b>-1&&b%1==0&&b<=r}function Cs(b){var C=typeof b;return b!=null&&(C=="object"||C=="function")}function Qt(b){return b!=null&&typeof b=="object"}var Is=nt?Yt(nt):rr;function Wn(b){return _n(b)?nr(b):ar(b)}function pr(){return[]}function Ar(){return!1}n.exports=gr})(uC,mo);const fC=mo,mC=(n,t)=>fC(n,t),gC=n=>Object.keys(n||{}),pC=(n,t)=>{const e={};return n.forEach(i=>{e[i]=t[i]}),e},AC=()=>{const n={},t=(e,i)=>{const{watcherName:s,fn:o}=e,{prop:r,value:a}=i;n[s]||(n[s]={deps:{},fn:o}),n[s].deps[r]=a};return{subscribers:n,subscribe(e,i){e&&t(e,i)},notify(e,i){Object.entries(n).forEach(([s,{deps:o,fn:r}])=>{const a=gC(o);if(a.includes(i)){const l=pC(a,e);mC(o,l)||(n[s].deps=l,r())}})}}},vC=()=>{let n=null;return{targetWatcher(t,e){n={watcherName:t,fn:e},n.fn(),n=null},getTarget(){return n}}};function bC(n,t){const e=Ns(n,"data",{}),i=Ns(n,"watch",{}),s=Ns(n,"methods",{}),o=Ns(t,"onChange",()=>{}),{subscribe:r,notify:a,subscribers:l}=AC(),{targetWatcher:c,getTarget:d}=vC();let h;const u={},m=()=>({data:h,methods:u});let A=!1;const p=v=>(...y)=>{A=!0;const I=v(...y);return A=!1,I};Object.entries(s).forEach(([v,y])=>{u[v]=p((...I)=>y(m(),...I)),Object.defineProperty(u[v],"name",{value:v})}),h=new Proxy(hC(e),{get(v,y){return d()&&!A&&r(d(),{prop:y,value:v[y]}),Reflect.get(...arguments)},set(v,y,I){return v[y]===I||(Reflect.set(...arguments),d()||(o&&o(y,I),a(h,y))),!0}}),Object.entries(i).forEach(([v,y])=>{c(v,()=>{y(m())})});const g=[h,u];return g._internal={_getSubscribers(){return l}},g}function yC({pageIndex:n,particlesToShow:t,particlesToScroll:e,particlesCount:i}){const s=n===0?0:t-e,o=n*t-n*s,r=o+Math.max(t,e)-1,a=[];for(let l=o;l<=Math.min(i-1,r);l++)a.push(l);return a}function wC({infinite:n,pageIndex:t,pagesCount:e,particlesCount:i,particlesToShow:s,particlesToScroll:o}){const r=dn(0,t,e-1);let a=r-1,l=r+1;a=n?a<0?e-1:a:Math.max(0,a),l=n?l>e-1?0:l:Math.min(e-1,l);const c=[...new Set([a,r,l,0,e-1])].sort((h,u)=>h-u),d=c.flatMap(h=>yC({pageIndex:h,particlesToShow:s,particlesToScroll:o,particlesCount:i}));return{pageIndexes:c,particleIndexes:[...new Set(d)].sort((h,u)=>h-u)}}const CC=(n,t)=>(n(),setInterval(n,t)),IC=35,gd=1;class PC{constructor({onProgressValueChange:t}){this._onProgressValueChange=t,this._autoplayDuration,this._onProgressValueChange,this._interval,this._paused=!1}setAutoplayDuration(t){this._autoplayDuration=t}start(t){return new Promise(e=>{this.reset();const i=Math.min(IC,Math.max(this._autoplayDuration,1));let s=-i;this._interval=CC(()=>W(this,null,function*(){if(this._paused)return;s+=i;const o=s/this._autoplayDuration;this._onProgressValueChange(o),o>gd&&(this.reset(),yield t(),e())}),i)})}pause(){this._paused=!0}resume(){this._paused=!1}reset(){clearInterval(this._interval),this._onProgressValueChange(gd)}}function EC(n){const t=new PC({onProgressValueChange:r=>{n("progressValue",1-r)}}),e=bC({data:{particlesCountWithoutClones:0,particlesToShow:1,particlesToShowInit:1,particlesToScroll:1,particlesToScrollInit:1,particlesCount:1,currentParticleIndex:1,infinite:!1,autoplayDuration:1e3,clonesCountHead:0,clonesCountTail:0,clonesCountTotal:0,partialPageSize:1,currentPageIndex:1,pagesCount:1,pauseOnFocus:!1,focused:!1,autoplay:!1,autoplayDirection:"next",disabled:!1,durationMsInit:1e3,durationMs:1e3,offset:0,particleWidth:0,loaded:[]},watch:{setLoaded({data:r}){r.loaded=wC({infinite:r.infinite,pageIndex:r.currentPageIndex,pagesCount:r.pagesCount,particlesCount:r.particlesCountWithoutClones,particlesToShow:r.particlesToShow,particlesToScroll:r.particlesToScroll}).particleIndexes},setCurrentPageIndex({data:r}){r.currentPageIndex=sw({currentParticleIndex:r.currentParticleIndex,particlesCount:r.particlesCount,clonesCountHead:r.clonesCountHead,clonesCountTotal:r.clonesCountTotal,infinite:r.infinite,particlesToScroll:r.particlesToScroll})},setPartialPageSize({data:r}){r.partialPageSize=Bu({particlesToScroll:r.particlesToScroll,particlesToShow:r.particlesToShow,particlesCountWithoutClones:r.particlesCountWithoutClones})},setClonesCount({data:r}){const{head:a,tail:l}=fw({infinite:r.infinite,particlesToShow:r.particlesToShow,partialPageSize:r.partialPageSize});r.clonesCountHead=a,r.clonesCountTail=l,r.clonesCountTotal=a+l},setProgressManagerAutoplayDuration({data:r}){t.setAutoplayDuration(r.autoplayDuration)},toggleProgressManager({data:{pauseOnFocus:r,focused:a}}){r&&(a?t.pause():t.resume())},initDuration({data:r}){r.durationMs=r.durationMsInit},applyAutoplay({data:r,methods:{_applyAutoplayIfNeeded:a}}){r.autoplay&&a(r.autoplay)},setPagesCount({data:r}){r.pagesCount=rw({infinite:r.infinite,particlesCountWithoutClones:r.particlesCountWithoutClones,particlesToScroll:r.particlesToScroll,particlesToShow:r.particlesToShow})},setParticlesToShow({data:r}){r.particlesToShow=dn(1,r.particlesToShowInit,r.particlesCountWithoutClones)},setParticlesToScroll({data:r}){r.particlesToScroll=dn(1,r.particlesToScrollInit,r.particlesCountWithoutClones)}},methods:{_prev({data:r}){r.currentParticleIndex=Or({infinite:r.infinite,pageIndex:r.currentPageIndex-1,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},_next({data:r}){r.currentParticleIndex=Or({infinite:r.infinite,pageIndex:r.currentPageIndex+1,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},_moveToParticle({data:r},a){r.currentParticleIndex=dn(0,a,r.particlesCount-1)},toggleFocused({data:r}){r.focused=!r.focused},_applyAutoplayIfNeeded(l){return W(this,arguments,function*({data:r,methods:a}){if(!r.infinite&&(r.autoplayDirection===pi&&r.currentParticleIndex===r.particlesCount-1||r.autoplayDirection===wn&&r.currentParticleIndex===0)){t.reset();return}if(r.autoplay){const c=()=>la({[pi]:()=>W(this,null,function*(){return a.showNextPage()}),[wn]:()=>W(this,null,function*(){return a.showPrevPage()})})(r.autoplayDirection);yield t.start(c)}})},_jumpIfNeeded(l){return W(this,arguments,function*({data:r,methods:a}){let c=!1;return r.infinite&&(r.currentParticleIndex===0?(yield a.showParticle(r.particlesCount-r.clonesCountTotal,{animated:!1}),c=!0):r.currentParticleIndex===r.particlesCount-r.clonesCountTail&&(yield a.showParticle(r.clonesCountHead,{animated:!1}),c=!0)),c})},changePage(d,h,u){return W(this,arguments,function*({data:r,methods:a},l,c){if(t.reset(),r.disabled)return;r.disabled=!0,l(),yield a.offsetPage({animated:ss(c,"animated",!0)}),r.disabled=!1,!(yield a._jumpIfNeeded())&&a._applyAutoplayIfNeeded()})},showNextPage(c,d){return W(this,arguments,function*({data:r,methods:a},l){r.disabled||(yield a.changePage(a._next,l))})},showPrevPage(c,d){return W(this,arguments,function*({data:r,methods:a},l){r.disabled||(yield a.changePage(a._prev,l))})},showParticle(c,d,h){return W(this,arguments,function*({methods:r},a,l){yield r.changePage(()=>r._moveToParticle(a),l)})},_getParticleIndexByPageIndex({data:r},a){return Or({infinite:r.infinite,pageIndex:a,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},showPage(c,d,h){return W(this,arguments,function*({methods:r},a,l){const u=r._getParticleIndexByPageIndex(a);yield r.showParticle(u,l)})},offsetPage({data:r},a){const l=ss(a,"animated",!0);return new Promise(c=>{r.durationMs=l?r.durationMsInit:0,r.offset=-r.currentParticleIndex*r.particleWidth,setTimeout(()=>{c()},r.durationMs)})}}},{onChange:n}),[i,s]=e;return[{data:i,progressManager:t},s,e._internal]}function MC(n){ue(n,"svelte-sme1z4",":root{--sc-color-rgb-light-50p:rgba(93, 93, 93, 0.5);--sc-color-rgb-light:#5d5d5d;--sc-color-hex-dark-50p:rgba(30, 30, 30, 0.5);--sc-color-hex-dark:#1e1e1e}.sc-carousel__carousel-container.svelte-sme1z4{display:flex;width:100%;flex-direction:column;align-items:center}.sc-carousel__content-container.svelte-sme1z4{position:relative;display:flex;width:100%}.sc-carousel__pages-window.svelte-sme1z4{flex:1;display:flex;overflow:hidden;box-sizing:border-box;position:relative}.sc-carousel__pages-container.svelte-sme1z4{width:100%;display:flex;transition-property:transform}.sc-carousel__arrow-container.svelte-sme1z4{padding:5px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.sc-carousel-progress__container.svelte-sme1z4{width:100%;height:5px;background-color:var(--sc-color-rgb-light-50p);position:absolute;bottom:0}.sc-carousel-button{all:unset;cursor:pointer}.sc-carousel-button:focus{outline:5px auto}")}const kC=n=>({currentPageIndex:n[0]&32,pagesCount:n[0]&1024}),pd=n=>({currentPageIndex:n[5],pagesCount:n[10],showPage:n[15]}),xC=n=>({}),Ad=n=>({showNextPage:n[14].showNextPage}),DC=n=>({loaded:n[0]&64,currentPageIndex:n[0]&32}),vd=n=>({loaded:n[6],currentPageIndex:n[5]}),SC=n=>({}),bd=n=>({showPrevPage:n[14].showPrevPage});function yd(n){let t;const e=n[37].prev,i=Pn(e,n,n[36],bd),s=i||TC(n);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){i?i.p&&(!t||r[1]&32)&&Mn(i,e,o,o[36],t?En(e,o[36],r,SC):kn(o[36]),bd):s&&s.p&&(!t||r[0]&36)&&s.p(o,t?r:[-1,-1])},i(o){t||(k(s,o),t=!0)},o(o){j(s,o),t=!1},d(o){s&&s.d(o)}}}function TC(n){let t,e,i;return e=new zu({props:{direction:"prev",disabled:!n[2]&&n[5]===0}}),e.$on("click",n[23]),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","sc-carousel__arrow-container svelte-sme1z4")},m(s,o){B(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o[0]&36&&(r.disabled=!s[2]&&s[5]===0),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){j(e.$$.fragment,s),i=!1},d(s){s&&O(t),ie(e)}}}function wd(n){let t,e,i;return e=new Vy({props:{value:n[7]}}),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","sc-carousel-progress__container svelte-sme1z4")},m(s,o){B(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o[0]&128&&(r.value=s[7]),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){j(e.$$.fragment,s),i=!1},d(s){s&&O(t),ie(e)}}}function Cd(n){let t;const e=n[37].next,i=Pn(e,n,n[36],Ad),s=i||LC(n);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){i?i.p&&(!t||r[1]&32)&&Mn(i,e,o,o[36],t?En(e,o[36],r,xC):kn(o[36]),Ad):s&&s.p&&(!t||r[0]&1060)&&s.p(o,t?r:[-1,-1])},i(o){t||(k(s,o),t=!0)},o(o){j(s,o),t=!1},d(o){s&&s.d(o)}}}function LC(n){let t,e,i;return e=new zu({props:{direction:"next",disabled:!n[2]&&n[5]===n[10]-1}}),e.$on("click",n[14].showNextPage),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","sc-carousel__arrow-container svelte-sme1z4")},m(s,o){B(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o[0]&1060&&(r.disabled=!s[2]&&s[5]===s[10]-1),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){j(e.$$.fragment,s),i=!1},d(s){s&&O(t),ie(e)}}}function Id(n){let t;const e=n[37].dots,i=Pn(e,n,n[36],pd),s=i||jC(n);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){i?i.p&&(!t||r[0]&1056|r[1]&32)&&Mn(i,e,o,o[36],t?En(e,o[36],r,kC):kn(o[36]),pd):s&&s.p&&(!t||r[0]&1056)&&s.p(o,t?r:[-1,-1])},i(o){t||(k(s,o),t=!0)},o(o){j(s,o),t=!1},d(o){s&&s.d(o)}}}function jC(n){let t,e;return t=new Sy({props:{pagesCount:n[10],currentPageIndex:n[5]}}),t.$on("pageChange",n[41]),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s[0]&1024&&(o.pagesCount=i[10]),s[0]&32&&(o.currentPageIndex=i[5]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function zC(n){let t,e,i,s,o,r,a,l,c,d,h,u,m=n[1]&&yd(n);const A=n[37].default,p=Pn(A,n,n[36],vd);let g=n[3]&&wd(n),v=n[1]&&Cd(n),y=n[4]&&Id(n);return{c(){t=S("div"),e=S("div"),m&&m.c(),i=$(),s=S("div"),o=S("div"),p&&p.c(),a=$(),g&&g.c(),l=$(),v&&v.c(),c=$(),y&&y.c(),w(o,"class","sc-carousel__pages-container svelte-sme1z4"),z(o,"transform","translateX("+n[8]+"px)"),z(o,"transition-duration",n[9]+"ms"),z(o,"transition-timing-function",n[0]),w(s,"class","sc-carousel__pages-window svelte-sme1z4"),w(e,"class","sc-carousel__content-container svelte-sme1z4"),w(t,"class","sc-carousel__carousel-container svelte-sme1z4")},m(I,M){B(I,t,M),x(t,e),m&&m.m(e,null),x(e,i),x(e,s),x(s,o),p&&p.m(o,null),n[39](o),x(s,a),g&&g.m(s,null),n[40](s),x(e,l),v&&v.m(e,null),x(t,c),y&&y.m(t,null),d=!0,h||(u=[ei(r=Yy.call(null,o,{thresholdProvider:n[38]})),be(o,"swipeStart",n[16]),be(o,"swipeMove",n[18]),be(o,"swipeEnd",n[19]),be(o,"swipeFailed",n[20]),be(o,"swipeThresholdReached",n[17]),ei(Jy.call(null,s)),be(s,"hovered",n[21]),ei(tw.call(null,s)),be(s,"tapped",n[22])],h=!0)},p(I,M){I[1]?m?(m.p(I,M),M[0]&2&&k(m,1)):(m=yd(I),m.c(),k(m,1),m.m(e,i)):m&&(de(),j(m,1,1,()=>{m=null}),he()),p&&p.p&&(!d||M[0]&96|M[1]&32)&&Mn(p,A,I,I[36],d?En(A,I[36],M,DC):kn(I[36]),vd),(!d||M[0]&256)&&z(o,"transform","translateX("+I[8]+"px)"),(!d||M[0]&512)&&z(o,"transition-duration",I[9]+"ms"),(!d||M[0]&1)&&z(o,"transition-timing-function",I[0]),r&&si(r.update)&&M[0]&2048&&r.update.call(null,{thresholdProvider:I[38]}),I[3]?g?(g.p(I,M),M[0]&8&&k(g,1)):(g=wd(I),g.c(),k(g,1),g.m(s,null)):g&&(de(),j(g,1,1,()=>{g=null}),he()),I[1]?v?(v.p(I,M),M[0]&2&&k(v,1)):(v=Cd(I),v.c(),k(v,1),v.m(e,null)):v&&(de(),j(v,1,1,()=>{v=null}),he()),I[4]?y?(y.p(I,M),M[0]&16&&k(y,1)):(y=Id(I),y.c(),k(y,1),y.m(t,null)):y&&(de(),j(y,1,1,()=>{y=null}),he())},i(I){d||(k(m),k(p,I),k(g),k(v),k(y),d=!0)},o(I){j(m),j(p,I),j(g),j(v),j(y),d=!1},d(I){I&&O(t),m&&m.d(),p&&p.d(I),n[39](null),g&&g.d(),n[40](null),v&&v.d(),y&&y.d(),h=!1,qe(u)}}}function OC(n,t,e){let{$$slots:i={},$$scope:s}=t,o=[],r,a,l=0,c=0,d=1;const[{data:h,progressManager:u},m,A]=EC((re,Me)=>{la({currentPageIndex:()=>e(5,r=Me),progressValue:()=>e(7,a=Me),offset:()=>e(8,l=Me),durationMs:()=>e(9,c=Me),pagesCount:()=>e(10,d=Me),loaded:()=>e(6,o=Me)})(re)}),p=wo();let{timingFunction:g="ease-in-out"}=t,{arrows:v=!0}=t,{infinite:y=!0}=t,{initialPageIndex:I=0}=t,{duration:M=500}=t,{autoplay:D=!1}=t,{autoplayDuration:P=3e3}=t,{autoplayDirection:V=pi}=t,{pauseOnFocus:L=!1}=t,{autoplayProgressVisible:X=!1}=t,{dots:U=!0}=t,{swiping:N=!0}=t,{particlesToShow:H=1}=t,{particlesToScroll:_=1}=t;function Q(re,Me){return W(this,null,function*(){const _e=ss(Me,"animated",!0);if(typeof re!="number")throw new Error("pageIndex should be a number");yield m.showPage(re,{animated:_e})})}function F(re){return W(this,null,function*(){const Me=ss(re,"animated",!0);yield m.showPrevPage({animated:Me})})}function J(re){return W(this,null,function*(){const Me=ss(re,"animated",!0);yield m.showNextPage({animated:Me})})}let Z=0,ee,ce;const se=dw(({width:re})=>{e(11,Z=re),h.particleWidth=Z/h.particlesToShow,cw({particlesContainerChildren:ce.children,particleWidth:h.particleWidth}),m.offsetPage({animated:!1})});function we(){const{clonesToAppend:re,clonesToPrepend:Me}=hw({clonesCountHead:h.clonesCountHead,clonesCountTail:h.clonesCountTail,particlesContainerChildren:ce.children});uw({particlesContainer:ce,clonesToAppend:re,clonesToPrepend:Me})}bt(()=>{W(this,null,function*(){yield cl(),ce&&ee&&(h.particlesCountWithoutClones=ce.children.length,yield cl(),h.infinite&&we(),h.particlesCount=ce.children.length,m.showPage(I,{animated:!1}),se.observe(ee))})}),zt(()=>{se.disconnect(),u.reset()});function Ce(re){return W(this,null,function*(){yield m.showPage(re,{animated:!0})})}function pe(){N&&(h.durationMs=0)}function Ve(re){return W(this,null,function*(){N&&(yield la({[pi]:m.showNextPage,[wn]:m.showPrevPage})(re.detail.direction))})}function Ae(re){N&&(h.offset+=re.detail.dx)}function Ye(){N&&m.showParticle(h.currentParticleIndex)}function fe(){return W(this,null,function*(){N&&(yield m.offsetPage({animated:!0}))})}function ye(re){h.focused=re.detail.value}function ze(){m.toggleFocused()}function me(){m.showPrevPage()}const Ke=()=>Z/3;function dt(re){Ge[re?"unshift":"push"](()=>{ce=re,e(13,ce)})}function ke(re){Ge[re?"unshift":"push"](()=>{ee=re,e(12,ee)})}const nt=re=>Ce(re.detail);return n.$$set=re=>{"timingFunction"in re&&e(0,g=re.timingFunction),"arrows"in re&&e(1,v=re.arrows),"infinite"in re&&e(2,y=re.infinite),"initialPageIndex"in re&&e(24,I=re.initialPageIndex),"duration"in re&&e(25,M=re.duration),"autoplay"in re&&e(26,D=re.autoplay),"autoplayDuration"in re&&e(27,P=re.autoplayDuration),"autoplayDirection"in re&&e(28,V=re.autoplayDirection),"pauseOnFocus"in re&&e(29,L=re.pauseOnFocus),"autoplayProgressVisible"in re&&e(3,X=re.autoplayProgressVisible),"dots"in re&&e(4,U=re.dots),"swiping"in re&&e(30,N=re.swiping),"particlesToShow"in re&&e(31,H=re.particlesToShow),"particlesToScroll"in re&&e(32,_=re.particlesToScroll),"$$scope"in re&&e(36,s=re.$$scope)},n.$$.update=()=>{n.$$.dirty[0]&32&&p("pageChange",r),n.$$.dirty[0]&4&&(h.infinite=y),n.$$.dirty[0]&33554432&&(h.durationMsInit=M),n.$$.dirty[0]&67108864&&(h.autoplay=D),n.$$.dirty[0]&134217728&&(h.autoplayDuration=P),n.$$.dirty[0]&268435456&&(h.autoplayDirection=V),n.$$.dirty[0]&536870912&&(h.pauseOnFocus=L),n.$$.dirty[1]&1&&(h.particlesToShowInit=H),n.$$.dirty[1]&2&&(h.particlesToScrollInit=_)},[g,v,y,X,U,r,o,a,l,c,d,Z,ee,ce,m,Ce,pe,Ve,Ae,Ye,fe,ye,ze,me,I,M,D,P,V,L,N,H,_,Q,F,J,s,i,Ke,dt,ke,nt]}class BC extends le{constructor(t){super(),ae(this,t,OC,zC,oe,{timingFunction:0,arrows:1,infinite:2,initialPageIndex:24,duration:25,autoplay:26,autoplayDuration:27,autoplayDirection:28,pauseOnFocus:29,autoplayProgressVisible:3,dots:4,swiping:30,particlesToShow:31,particlesToScroll:32,goTo:33,goToPrev:34,goToNext:35},MC,[-1,-1])}get goTo(){return this.$$.ctx[33]}get goToPrev(){return this.$$.ctx[34]}get goToNext(){return this.$$.ctx[35]}}function VC(n){ue(n,"svelte-159ski6",".media-item.svelte-159ski6.svelte-159ski6{position:relative;height:100%}.media-content.svelte-159ski6.svelte-159ski6{position:relative;pointer-events:auto;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;-o-object-fit:inherit;object-fit:inherit}.media-content.showPlayButton.svelte-159ski6.svelte-159ski6{pointer-events:none}.video-icon.svelte-159ski6.svelte-159ski6{width:12.5rem;height:6.25rem;max-width:60%;max-height:60%;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.video-play-button-container.svelte-159ski6.svelte-159ski6{display:none;position:absolute;width:100%;height:100%;top:0;left:0;transform:translate3d(0, 0, 0)}.video-play-button-container.showPlayButton.svelte-159ski6.svelte-159ski6{pointer-events:none;display:block}.video-icon.svelte-159ski6.svelte-159ski6{pointer-events:auto}.video-icon.large.svelte-159ski6.svelte-159ski6{width:12.5rem;height:6.25rem}.video-icon.small.svelte-159ski6.svelte-159ski6{width:1.75rem;height:1.75rem}.video-icon.svelte-159ski6 .video-icon-img.svelte-159ski6{width:100%;height:100%;background-position:center center;background-size:contain;background-repeat:no-repeat}.video-icon.svelte-159ski6 .video-icon-img.canPlay.svelte-159ski6{cursor:pointer}")}function Pd(n){let t;function e(o,r){if(o[2].type==="Image")return QC;if(o[2].type==="Video")return RC}let i=e(n),s=i&&i(n);return{c(){t=S("div"),s&&s.c(),w(t,"class","media-item svelte-159ski6"),w(t,"draggable","false")},m(o,r){B(o,t,r),s&&s.m(t,null)},p(o,r){i===(i=e(o))&&s?s.p(o,r):(s&&s.d(1),s=i&&i(o),s&&(s.c(),s.m(t,null)))},d(o){o&&O(t),s&&s.d()}}}function RC(n){let t,e,i,s,o,r;function a(d,h){return d[7]&&d[2].videoCoverUrl?NC:GC}let l=a(n),c=l(n);return{c(){c.c(),t=$(),e=S("div"),i=S("div"),s=S("div"),w(s,"class","video-icon-img svelte-159ski6"),z(s,"background-image","url("+n[20]()+")"),K(s,"canPlay",n[5]),w(i,"class","video-icon svelte-159ski6"),K(i,"large",n[4]==="large"),K(i,"small",n[4]==="small"),w(e,"class","video-play-button-container svelte-159ski6"),K(e,"showPlayButton",n[10])},m(d,h){c.m(d,h),B(d,t,h),B(d,e,h),x(e,i),x(i,s),o||(r=be(s,"click",n[21]),o=!0)},p(d,h){l===(l=a(d))&&c?c.p(d,h):(c.d(1),c=l(d),c&&(c.c(),c.m(t.parentNode,t))),h&8&&z(s,"background-image","url("+d[20]()+")"),h&32&&K(s,"canPlay",d[5]),h&16&&K(i,"large",d[4]==="large"),h&16&&K(i,"small",d[4]==="small"),h&1024&&K(e,"showPlayButton",d[10])},d(d){d&&(O(t),O(e)),c.d(d),o=!1,r()}}}function QC(n){let t,e,i,s;return{c(){t=S("img"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${n[6]};`),kt(t.src,i=n[2].url)||w(t,"src",i),w(t,"alt",s=n[2].name),w(t,"draggable",!1)},m(o,r){B(o,t,r)},p(o,r){r&64&&e!==(e=`object-fit: ${o[6]};`)&&w(t,"style",e),r&4&&!kt(t.src,i=o[2].url)&&w(t,"src",i),r&4&&s!==(s=o[2].name)&&w(t,"alt",s)},d(o){o&&O(t)}}}function GC(n){let t,e,i,s,o,r,a;return{c(){t=S("video"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${n[6]};`),kt(t.src,i=n[2].videoCoverUrl?n[2].url:n[2].url+"#t=0.1")||w(t,"src",i),w(t,"poster",s=n[2].videoCoverUrl),w(t,"preload",o=n[2].videoCoverUrl?"none":"auto"),w(t,"disablepictureinpicture",""),t.playsInline=!0,w(t,"paused",""),t.muted=!0,w(t,"draggable",!1),t.loop=!1,w(t,"crossorigin",""),t.controls=!1,K(t,"showPlayButton",n[10])},m(l,c){B(l,t,c),n[19](t),r||(a=[be(t,"play",n[14]),be(t,"pause",n[15]),be(t,"error",n[16]),be(t,"ended",n[17]),be(t,"click",n[18])],r=!0)},p(l,c){c&64&&e!==(e=`object-fit: ${l[6]};`)&&w(t,"style",e),c&4&&!kt(t.src,i=l[2].videoCoverUrl?l[2].url:l[2].url+"#t=0.1")&&w(t,"src",i),c&4&&s!==(s=l[2].videoCoverUrl)&&w(t,"poster",s),c&4&&o!==(o=l[2].videoCoverUrl?"none":"auto")&&w(t,"preload",o),c&1024&&K(t,"showPlayButton",l[10])},d(l){l&&O(t),n[19](null),r=!1,qe(a)}}}function NC(n){let t,e,i,s;return{c(){t=S("img"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${n[6]};`),kt(t.src,i=n[2].videoCoverUrl)||w(t,"src",i),w(t,"alt",s=n[2].name),w(t,"draggable",!1)},m(o,r){B(o,t,r)},p(o,r){r&64&&e!==(e=`object-fit: ${o[6]};`)&&w(t,"style",e),r&4&&!kt(t.src,i=o[2].videoCoverUrl)&&w(t,"src",i),r&4&&s!==(s=o[2].name)&&w(t,"alt",s)},d(o){o&&O(t)}}}function HC(n){let t,e=n[2]&&Pd(n);return{c(){e&&e.c(),t=Ee()},m(i,s){e&&e.m(i,s),B(i,t,s)},p(i,[s]){i[2]?e?e.p(i,s):(e=Pd(i),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},i:q,o:q,d(i){i&&O(t),e&&e.d(i)}}}function _C(n,t,e){let i,s,{mediaInstance:o={videoInstance:void 0,paused:!0}}=t,{tag:r}=t,{media:a}=t,{playButtonIfNeed:l="withoutText"}=t,{playButtonSizeIfNeed:c="small"}=t,{canPlay:d=!0}=t,{objectFit:h="fill"}=t,{disableVideoIfHavePoster:u=!1}=t,m=!0,A=!1;function p(){e(8,A=(a==null?void 0:a.type)==="Video"&&!!a.videoCoverUrl)}const g=fi("mediaStore"),v=fi("hooks"),y=()=>{A||i&&(e(9,i.muted=!0,i),i.play(),i.pause(),e(9,i.muted=!1,i),e(8,A=!0))};v.on("loadVideoFirstFrame",y),bt(()=>{g.subscribe(({currentMediaElement:N})=>{N!==i&&(i==null||i.pause())})});const I=N=>{e(10,m=!1),e(0,o.paused=!1,o),e(8,A=!0),i&&g.set({currentMediaElement:i}),v.emit("playStateChange",{event:N,state:"playing",tag:r,mediaInstance:i})},M=N=>{e(10,m=!0),e(0,o.paused=!0,o),v.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:i})},D=N=>{e(10,m=!0),e(0,o.paused=!0,o),v.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:i})},P=N=>{e(10,m=!0),e(0,o.paused=!0,o),v.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:i})},V=N=>{i&&i.pause()};function L(N){Ge[N?"unshift":"push"](()=>{o.videoInstance=N,e(0,o)})}const X=()=>l==="withText"?Ga:l==="withoutText"?oa:l,U=N=>{d&&i&&(e(9,i.muted=!1,i),i.play())};return n.$$set=N=>{"mediaInstance"in N&&e(0,o=N.mediaInstance),"tag"in N&&e(1,r=N.tag),"media"in N&&e(2,a=N.media),"playButtonIfNeed"in N&&e(3,l=N.playButtonIfNeed),"playButtonSizeIfNeed"in N&&e(4,c=N.playButtonSizeIfNeed),"canPlay"in N&&e(5,d=N.canPlay),"objectFit"in N&&e(6,h=N.objectFit),"disableVideoIfHavePoster"in N&&e(7,u=N.disableVideoIfHavePoster)},n.$$.update=()=>{if(n.$$.dirty&1&&e(9,i=o.videoInstance),n.$$.dirty&4&&e(13,s=a==null?void 0:a.url),n.$$.dirty&8192&&s&&p(),n.$$.dirty&512&&i&&e(10,m=i.paused),n.$$.dirty&772&&(a==null?void 0:a.type)==="Video"&&!A){const N=navigator.userAgent.toLowerCase().indexOf("micromessenger")!==-1,_=navigator.userAgent.toLowerCase().indexOf("iphone")!==-1&&N;i&&_&&i.paused&&(document.removeEventListener("WeixinJSBridgeReady",y),document.removeEventListener("touchstart",y),document.removeEventListener("click",y),document.addEventListener("WeixinJSBridgeReady",y),document.addEventListener("touchstart",y),document.addEventListener("click",y))}},[o,r,a,l,c,d,h,u,A,i,m,g,v,s,I,M,D,P,V,L,X,U]}class Wu extends le{constructor(t){super(),ae(this,t,_C,HC,oe,{mediaInstance:0,tag:1,media:2,playButtonIfNeed:3,playButtonSizeIfNeed:4,canPlay:5,objectFit:6,disableVideoIfHavePoster:7},VC)}}function FC(n){ue(n,"svelte-1mrbqlg",".media-list-wrapper.svelte-1mrbqlg.svelte-1mrbqlg{width:100%;height:100%;position:relative;overflow:hidden;border-radius:0.125rem}.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg{position:relative;pointer-events:auto;height:100%;left:50%;top:50%;transform:translate(-50%, -50%)}.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg .sc-carousel__carousel-container,.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg .sc-carousel__content-container{height:100%}")}function Ed(n,t,e){const i=n.slice();return i[28]=t[e],i[29]=t,i[30]=e,i}function Md(n){let t,e,i,s,o,r,a;const l=[YC,WC],c=[];function d(h,u){return h[13]&&h[10].length>1?0:1}return i=d(n),s=c[i]=l[i](n),{c(){t=S("div"),e=S("div"),s.c(),w(e,"class","media-list svelte-1mrbqlg"),K(e,"carouselEnabled",n[13]),w(t,"class","media-list-wrapper svelte-1mrbqlg"),K(t,"unfolded",n[5])},m(h,u){B(h,t,u),x(t,e),c[i].m(e,null),a=!0},p(h,u){n=h;let m=i;i=d(n),i===m?c[i].p(n,u):(de(),j(c[m],1,1,()=>{c[m]=null}),he(),s=c[i],s?s.p(n,u):(s=c[i]=l[i](n),s.c()),k(s,1),s.m(e,null)),(!a||u[0]&8192)&&K(e,"carouselEnabled",n[13]),(!a||u[0]&32)&&K(t,"unfolded",n[5])},i(h){a||(k(s),h&&He(()=>{a&&(r&&r.end(1),o=Vi(t,fl,n[6]?{y:4,duration:n[4],delay:n[2],easing:ti}:void 0),o.start())}),a=!0)},o(h){j(s),o&&o.invalidate(),h&&(r=Dn(t,fl,n[6]?{y:4,duration:n[4],delay:n[3],easing:ti}:void 0)),a=!1},d(h){h&&O(t),c[i].d(),h&&r&&r.end()}}}function WC(n){let t,e,i;const s=[{media:n[1][0]},n[7],{tag:n[0]}];function o(a){n[20](a)}let r={};for(let a=0;a<s.length;a+=1)r=tt(r,s[a]);return n[8][0]!==void 0&&(r.mediaInstance=n[8][0]),t=new Wu({props:r}),Ge.push(()=>ka(t,"mediaInstance",o)),{c(){ne(t.$$.fragment)},m(a,l){te(t,a,l),i=!0},p(a,l){const c=l[0]&131?ct(s,[l[0]&2&&{media:a[1][0]},l[0]&128&&Hh(a[7]),l[0]&1&&{tag:a[0]}]):{};!e&&l[0]&256&&(e=!0,c.mediaInstance=a[8][0],Ca(()=>e=!1)),t.$set(c)},i(a){i||(k(t.$$.fragment,a),i=!0)},o(a){j(t.$$.fragment,a),i=!1},d(a){ie(t,a)}}}function YC(n){let t,e,i={dots:!1,arrows:!1,$$slots:{default:[UC]},$$scope:{ctx:n}};return t=new BC({props:i}),n[18](t),t.$on("pageChange",n[19]),{c(){ne(t.$$.fragment)},m(s,o){te(t,s,o),e=!0},p(s,o){const r={};o[0]&1409|o[1]&1&&(r.$$scope={dirty:o,ctx:s}),t.$set(r)},i(s){e||(k(t.$$.fragment,s),e=!0)},o(s){j(t.$$.fragment,s),e=!1},d(s){n[18](null),ie(t,s)}}}function kd(n){let t,e,i;const s=[n[7],{media:n[28]},{tag:n[0]}];function o(a){n[17](a,n[30])}let r={};for(let a=0;a<s.length;a+=1)r=tt(r,s[a]);return n[8][n[30]]!==void 0&&(r.mediaInstance=n[8][n[30]]),t=new Wu({props:r}),Ge.push(()=>ka(t,"mediaInstance",o)),{c(){ne(t.$$.fragment)},m(a,l){te(t,a,l),i=!0},p(a,l){n=a;const c=l[0]&1153?ct(s,[l[0]&128&&Hh(n[7]),l[0]&1024&&{media:n[28]},l[0]&1&&{tag:n[0]}]):{};!e&&l[0]&256&&(e=!0,c.mediaInstance=n[8][n[30]],Ca(()=>e=!1)),t.$set(c)},i(a){i||(k(t.$$.fragment,a),i=!0)},o(a){j(t.$$.fragment,a),i=!1},d(a){ie(t,a)}}}function UC(n){let t,e,i=Pe(n[10]),s=[];for(let r=0;r<i.length;r+=1)s[r]=kd(Ed(n,i,r));const o=r=>j(s[r],1,1,()=>{s[r]=null});return{c(){for(let r=0;r<s.length;r+=1)s[r].c();t=Ee()},m(r,a){for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(r,a);B(r,t,a),e=!0},p(r,a){if(a[0]&1409){i=Pe(r[10]);let l;for(l=0;l<i.length;l+=1){const c=Ed(r,i,l);s[l]?(s[l].p(c,a),k(s[l],1)):(s[l]=kd(c),s[l].c(),k(s[l],1),s[l].m(t.parentNode,t))}for(de(),l=i.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<i.length;a+=1)k(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)j(s[a]);e=!1},d(r){r&&O(t),jt(s,r)}}}function XC(n){let t,e,i=n[5]&&Md(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,o){s[5]?i?(i.p(s,o),o[0]&32&&k(i,1)):(i=Md(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function ZC(n,t,e){let i,s,o,r,{tag:a}=t,{mediaData:l}=t,{inDelay:c=0}=t,{outDelay:d=0}=t,{duration:h=0}=t,{unfolded:u=!0}=t,{animation:m=!0}=t,{mediaItemConfig:A}=t,{enableCarousel:p=!0}=t,{autoplayConfig:g={}}=t;const{autoplayVideo:v=!1,autoplayCarousel:y=!0,autoplayVideoInCarousel:I=!1}=g;let M=[],D=0,P,V=null;const L=fi("hooks"),X=fi("mediaStore");function U(){const F=M[D],J=F==null?void 0:F.videoInstance;J&&(J.paused?(J.muted=!1,J.play()):J.pause())}bt(()=>{L.on("click",F=>{var J,Z,ee;(ee=(Z=(J=a.tag3DContentSvelte)==null?void 0:J.css3DInstance)==null?void 0:Z.css3DObject)!=null&&ee.opacityMesh&&F.tag.id===a.id&&U()}),V=setInterval(()=>{r&&(P==null||P.goToNext())},3e3)}),zt(()=>{clearInterval(V),L.off("click",U)});function N(F,J){n.$$.not_equal(M[J],F)&&(M[J]=F,e(8,M))}function H(F){Ge[F?"unshift":"push"](()=>{P=F,e(12,P)})}const _=F=>{i||X.set({currentMediaElement:null}),e(11,D=F.detail)};function Q(F){n.$$.not_equal(M[0],F)&&(M[0]=F,e(8,M))}return n.$$set=F=>{"tag"in F&&e(0,a=F.tag),"mediaData"in F&&e(1,l=F.mediaData),"inDelay"in F&&e(2,c=F.inDelay),"outDelay"in F&&e(3,d=F.outDelay),"duration"in F&&e(4,h=F.duration),"unfolded"in F&&e(5,u=F.unfolded),"animation"in F&&e(6,m=F.animation),"mediaItemConfig"in F&&e(7,A=F.mediaItemConfig),"enableCarousel"in F&&e(15,p=F.enableCarousel),"autoplayConfig"in F&&e(16,g=F.autoplayConfig)},n.$$.update=()=>{n.$$.dirty[0]&256&&e(9,i=M.every(F=>F.paused)),n.$$.dirty[0]&32770&&e(13,s=p&&(l==null?void 0:l.length)>1),n.$$.dirty[0]&2&&e(10,o=l),n.$$.dirty[0]&1536&&(r=o.length>1&&y&&i)},[a,l,c,d,h,u,m,A,M,i,o,D,P,s,X,p,g,N,H,_,Q]}class Yu extends le{constructor(t){super(),ae(this,t,ZC,XC,oe,{tag:0,mediaData:1,inDelay:2,outDelay:3,duration:4,unfolded:5,animation:6,mediaItemConfig:7,enableCarousel:15,autoplayConfig:16},FC,[-1,-1])}}function JC(n){ue(n,"svelte-1f7m1lj",".line.svelte-1f7m1lj{position:absolute;width:6.5625rem;height:1.3125rem;transform:translateY(-100%)}.text.svelte-1f7m1lj{position:absolute;width:6.25rem;left:1rem;bottom:0.0625rem;font-weight:600}.media-wrapper.svelte-1f7m1lj{position:absolute;left:0.875rem;top:-5.3125rem;width:5.625rem;height:3.75rem;font-weight:600}")}function xd(n){let t,e,i,s,o,r,a,l;t=new Wt({props:{visible:n[3],left:61,bottom:57,width:2,blurRadius:150,spreadRadius:75}}),s=new Cy({props:{unfolded:n[3],outDelay:400}});let c=n[2]&&Dd(n),d=n[1]&&Sd(n);return{c(){ne(t.$$.fragment),e=$(),i=S("div"),ne(s.$$.fragment),o=$(),c&&c.c(),r=$(),d&&d.c(),a=Ee(),w(i,"class","line svelte-1f7m1lj")},m(h,u){te(t,h,u),B(h,e,u),B(h,i,u),te(s,i,null),B(h,o,u),c&&c.m(h,u),B(h,r,u),d&&d.m(h,u),B(h,a,u),l=!0},p(h,u){const m={};u&8&&(m.visible=h[3]),t.$set(m);const A={};u&8&&(A.unfolded=h[3]),s.$set(A),h[2]?c?(c.p(h,u),u&4&&k(c,1)):(c=Dd(h),c.c(),k(c,1),c.m(r.parentNode,r)):c&&(de(),j(c,1,1,()=>{c=null}),he()),h[1]?d?(d.p(h,u),u&2&&k(d,1)):(d=Sd(h),d.c(),k(d,1),d.m(a.parentNode,a)):d&&(de(),j(d,1,1,()=>{d=null}),he())},i(h){l||(k(t.$$.fragment,h),k(s.$$.fragment,h),k(c),k(d),l=!0)},o(h){j(t.$$.fragment,h),j(s.$$.fragment,h),j(c),j(d),l=!1},d(h){h&&(O(e),O(i),O(o),O(r),O(a)),ie(t,h),ie(s),c&&c.d(h),d&&d.d(h)}}}function Dd(n){let t,e,i;return e=new Lu({props:{unfolded:n[3],content:n[2],inDelay:500}}),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","text svelte-1f7m1lj")},m(s,o){B(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o&8&&(r.unfolded=s[3]),o&4&&(r.content=s[2]),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){j(e.$$.fragment,s),i=!1},d(s){s&&O(t),ie(e)}}}function Sd(n){let t,e,i;return e=new Yu({props:{autoplayConfig:{autoplayCarousel:!1},unfolded:n[3],mediaData:n[1],tag:n[0],enableCarousel:!1,mediaItemConfig:{canPlay:!1,playButtonSizeIfNeed:"small",disableVideoIfHavePoster:!0},inDelay:500,duration:500}}),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","media-wrapper svelte-1f7m1lj")},m(s,o){B(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o&8&&(r.unfolded=s[3]),o&2&&(r.mediaData=s[1]),o&1&&(r.tag=s[0]),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){j(e.$$.fragment,s),i=!1},d(s){s&&O(t),ie(e)}}}function qC(n){let t,e,i=n[0].state&&xd(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?i?(i.p(s,o),o&1&&k(i,1)):(i=xd(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function KC(n,t,e){let i,s,o,r,{tag:a}=t;return n.$$set=l=>{"tag"in l&&e(0,a=l.tag)},n.$$.update=()=>{var l,c,d;n.$$.dirty&1&&e(3,i=a.state?a.state.unfolded:!1),n.$$.dirty&1&&e(4,s=(c=(l=a.data.title)!=null?l:a.data.text)!=null?c:""),n.$$.dirty&16&&e(2,o=((d=s.length)!=null?d:0)>7?s.substring(0,6)+"...":s),n.$$.dirty&1&&e(1,r=a.data.mediaData)},[a,r,o,i,s]}class $C extends le{constructor(t){super(),ae(this,t,KC,qC,oe,{tag:0},JC)}}function eI(n){ue(n,"svelte-sezqcq",'@charset "UTF-8";.svelte-sezqcq.svelte-sezqcq{box-sizing:border-box}.marketing.svelte-sezqcq.svelte-sezqcq{transform:translateY(-100%)}.marketing.svelte-sezqcq .line.svelte-sezqcq{position:absolute;height:1.875rem;width:0.0625rem;left:50%;transform:translateX(-50%);background-color:white;bottom:0;transform-origin:bottom;transition:all 500ms}.marketing.svelte-sezqcq .content.svelte-sezqcq{position:relative;min-width:7.5rem;width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;border-radius:0.25rem;top:-1.875rem;left:-1rem;padding:0.5rem 0rem 0.5625rem;transition-property:opacity, transform;transition-duration:500ms}.marketing.svelte-sezqcq .content .headerImage.svelte-sezqcq{position:absolute;width:100%;top:0.25rem;transform:translateY(-100%);border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.title-wrapper.svelte-sezqcq.svelte-sezqcq{position:relative;width:100%;height:1.125rem}.title-wrapper.svelte-sezqcq .title.svelte-sezqcq{border-radius:0.25rem;width:100%;padding-left:0.625rem;padding-right:0.625rem}.title-wrapper.svelte-sezqcq .title .text.svelte-sezqcq{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.75rem;font-weight:bold;line-height:1.125rem}.footer.svelte-sezqcq.svelte-sezqcq{position:relative;padding:0.5rem 0.625rem 0 0;width:100%;display:flex;align-items:center}.footer.svelte-sezqcq .goto-button.svelte-sezqcq{display:flex;align-self:flex-end;flex-wrap:wrap;align-items:center;overflow:hidden;height:0.875rem}.footer.svelte-sezqcq .goto-button .gap.svelte-sezqcq{height:100%;width:0.625rem}.footer.svelte-sezqcq .goto-button .text.svelte-sezqcq{display:block;height:100%;font-size:0.625rem}.footer.svelte-sezqcq .arrow-wrapper.svelte-sezqcq{height:0.875rem;display:flex;align-self:flex-end;flex-grow:0;flex-shrink:0;align-items:center;margin-left:0.25rem}.footer.svelte-sezqcq .arrow-wrapper svg.arrow.svelte-sezqcq{width:0.375rem;height:0.625rem}.footer.svelte-sezqcq .price.svelte-sezqcq{flex-shrink:0;margin-right:auto;white-space:nowrap;display:flex;align-items:baseline;margin-left:0.625rem}.footer.svelte-sezqcq .price .value.svelte-sezqcq{position:relative;font-size:0.875rem;line-height:1rem;font-family:TG-TYPE, PingFangSC, Segoe UI, Rototo, sans-serif;letter-spacing:0rem}.footer.svelte-sezqcq .price .unit.svelte-sezqcq{padding-left:0.125rem;font-size:0.625rem}.tags-wrapper.svelte-sezqcq.svelte-sezqcq{position:relative;overflow:hidden;height:1rem;margin-top:0.25rem}.tags-wrapper.svelte-sezqcq .tags.svelte-sezqcq{position:relative;display:inline-flex;max-width:100%;flex-wrap:wrap;padding-left:0.625rem;padding-right:0.375rem}.tags-wrapper.svelte-sezqcq .tags .tag.svelte-sezqcq{display:flex;align-items:center;justify-content:center;flex-shrink:0;flex-grow:0;font-size:0.625rem;height:1rem;margin-right:0.25rem;margin-bottom:0.625rem;padding:0 0.25rem;border-radius:0.125rem;max-width:100%;text-overflow:ellipsis;overflow:hidden}.marketing.light.svelte-sezqcq .content.svelte-sezqcq{background-color:white}.marketing.light.svelte-sezqcq .content .title-wrapper .title .text.svelte-sezqcq{color:rgba(0, 0, 0, 0.8)}.marketing.light.svelte-sezqcq .content .tags-wrapper .tags .primary-tag.svelte-sezqcq{background:rgba(234, 208, 154, 0.5);color:#946700}.marketing.light.svelte-sezqcq .content .tags-wrapper .tags .secondary-tag.svelte-sezqcq{background:rgba(0, 0, 0, 0.06);color:rgba(0, 0, 0, 0.5)}.marketing.light.svelte-sezqcq .content .footer.svelte-sezqcq{color:#946700;fill:#946700}.marketing.dark.svelte-sezqcq .content.svelte-sezqcq{background-color:rgba(0, 0, 0, 0.5)}.marketing.dark.svelte-sezqcq .content .title-wrapper .title .text.svelte-sezqcq{color:white}.marketing.dark.svelte-sezqcq .content .tags-wrapper .tags .primary-tag.svelte-sezqcq{background:rgba(234, 208, 154, 0.5);color:white}.marketing.dark.svelte-sezqcq .content .tags-wrapper .tags .secondary-tag.svelte-sezqcq{background:rgba(255, 255, 255, 0.15);color:rgba(255, 255, 255, 0.85)}.marketing.dark.svelte-sezqcq .content .footer.svelte-sezqcq{color:#ead09a;fill:#ead09a}.marketing.unfolded.svelte-sezqcq .line.svelte-sezqcq{transform:translateX(-50%) scale(1, 1)}.marketing.folded.svelte-sezqcq .line.svelte-sezqcq{transform:translateX(-50%) scale(1, 0);transition-timing-function:ease-in}.marketing.unfolded.svelte-sezqcq .content.svelte-sezqcq{opacity:1}.marketing.folded.svelte-sezqcq .content.svelte-sezqcq{opacity:0;transform:translateY(0.425rem);transition-timing-function:ease-in}')}function Td(n,t,e){const i=n.slice();return i[0]=t[e],i}function Ld(n,t,e){const i=n.slice();return i[0]=t[e],i}function jd(n){let t,e;return{c(){t=S("img"),w(t,"class","headerImage svelte-sezqcq"),kt(t.src,e=n[3].headerPictureUrl)||w(t,"src",e),w(t,"alt","")},m(i,s){B(i,t,s)},p(i,s){s&8&&!kt(t.src,e=i[3].headerPictureUrl)&&w(t,"src",e)},d(i){i&&O(t)}}}function zd(n){let t,e,i,s,o=Pe(n[2]||[]),r=[];for(let c=0;c<o.length;c+=1)r[c]=Od(Ld(n,o,c));let a=Pe(n[5]||[]),l=[];for(let c=0;c<a.length;c+=1)l[c]=Bd(Td(n,a,c));return{c(){t=S("div"),e=S("div");for(let c=0;c<r.length;c+=1)r[c].c();i=$();for(let c=0;c<l.length;c+=1)l[c].c();w(e,"class","tags svelte-sezqcq"),He(()=>n[11].call(e)),w(t,"class","tags-wrapper svelte-sezqcq")},m(c,d){B(c,t,d),x(t,e);for(let h=0;h<r.length;h+=1)r[h]&&r[h].m(e,null);x(e,i);for(let h=0;h<l.length;h+=1)l[h]&&l[h].m(e,null);s=yo(e,n[11].bind(e))},p(c,d){if(d&4){o=Pe(c[2]||[]);let h;for(h=0;h<o.length;h+=1){const u=Ld(c,o,h);r[h]?r[h].p(u,d):(r[h]=Od(u),r[h].c(),r[h].m(e,i))}for(;h<r.length;h+=1)r[h].d(1);r.length=o.length}if(d&32){a=Pe(c[5]||[]);let h;for(h=0;h<a.length;h+=1){const u=Td(c,a,h);l[h]?l[h].p(u,d):(l[h]=Bd(u),l[h].c(),l[h].m(e,null))}for(;h<l.length;h+=1)l[h].d(1);l.length=a.length}},d(c){c&&O(t),jt(r,c),jt(l,c),s()}}}function Od(n){let t,e=n[0]+"",i;return{c(){t=S("div"),i=xe(e),w(t,"class","tag primary-tag svelte-sezqcq"),z(t,"min-width",Za)},m(s,o){B(s,t,o),x(t,i)},p(s,o){o&4&&e!==(e=s[0]+"")&&Se(i,e)},d(s){s&&O(t)}}}function Bd(n){let t,e=n[0]+"",i;return{c(){t=S("div"),i=xe(e),w(t,"class","tag secondary-tag svelte-sezqcq"),z(t,"min-width",Za)},m(s,o){B(s,t,o),x(t,i)},p(s,o){o&32&&e!==(e=s[0]+"")&&Se(i,e)},d(s){s&&O(t)}}}function Vd(n){let t,e,i=n[7]&&Rd(n),s=n[3].highlightText&&Gd(n);return{c(){t=S("div"),i&&i.c(),e=$(),s&&s.c(),w(t,"class","footer svelte-sezqcq")},m(o,r){B(o,t,r),i&&i.m(t,null),x(t,e),s&&s.m(t,null)},p(o,r){o[7]?i?i.p(o,r):(i=Rd(o),i.c(),i.m(t,e)):i&&(i.d(1),i=null),o[3].highlightText?s?s.p(o,r):(s=Gd(o),s.c(),s.m(t,null)):s&&(s.d(1),s=null)},d(o){o&&O(t),i&&i.d(),s&&s.d()}}}function Rd(n){let t,e,i=n[3].price.value+"",s,o,r=n[3].price.unit&&Qd(n);return{c(){t=S("div"),e=S("span"),s=xe(i),o=$(),r&&r.c(),w(e,"class","value svelte-sezqcq"),w(t,"class","price svelte-sezqcq")},m(a,l){B(a,t,l),x(t,e),x(e,s),x(t,o),r&&r.m(t,null)},p(a,l){l&8&&i!==(i=a[3].price.value+"")&&Se(s,i),a[3].price.unit?r?r.p(a,l):(r=Qd(a),r.c(),r.m(t,null)):r&&(r.d(1),r=null)},d(a){a&&O(t),r&&r.d()}}}function Qd(n){let t,e=n[3].price.unit+"",i;return{c(){t=S("span"),i=xe(e),w(t,"class","unit svelte-sezqcq")},m(s,o){B(s,t,o),x(t,i)},p(s,o){o&8&&e!==(e=s[3].price.unit+"")&&Se(i,e)},d(s){s&&O(t)}}}function Gd(n){let t,e,i,s,o=n[3].highlightText+"",r,a,l;return{c(){t=S("div"),e=S("div"),i=$(),s=S("span"),r=xe(o),a=$(),l=S("div"),l.innerHTML='<svg class="arrow svelte-sezqcq" viewBox="0 0 6 9"><g transform="translate(-3, -2)" fill-rule="nonzero" class="svelte-sezqcq"><path d="M4.43868724,2.12056563 C4.28121824,1.95989074 4.02582143,1.95979988 3.86824251,2.1203627 C3.72498894,2.26632889 3.71189225,2.49481723 3.82900374,2.65587166 L6.57092402,5.92894326 C6.72651763,6.11470411 6.72651763,6.38529589 6.57092402,6.57105674 L3.86804348,9.79798499 C3.72488984,9.94405307 3.71194952,10.1725507 3.8291712,10.3335217 L3.86824251,10.3796373 C4.01149607,10.5256035 4.23559087,10.5387981 4.39346025,10.4192733 L4.43868724,10.3794344 L8.1144599,6.5985342 C8.30312347,6.40447482 8.30312347,6.09552518 8.1144599,5.9014658 L4.43868724,2.12056563 Z" class="svelte-sezqcq"></path></g></svg>',w(e,"class","gap svelte-sezqcq"),w(s,"class","text svelte-sezqcq"),w(t,"class","goto-button goto-icon svelte-sezqcq"),w(l,"class","arrow-wrapper svelte-sezqcq")},m(c,d){B(c,t,d),x(t,e),x(t,i),x(t,s),x(s,r),B(c,a,d),B(c,l,d)},p(c,d){d&8&&o!==(o=c[3].highlightText+"")&&Se(r,o)},d(c){c&&(O(t),O(a),O(l))}}}function tI(n){var M,D;let t,e,i,s,o,r,a,l,c,d,h=n[3].title+"",u,m,A,p,g;e=new Wt({props:{visible:n[4],outDelay:500,left:61,bottom:87,blurRadius:150,spreadRadius:75}});let v=n[3].headerPictureUrl&&jd(n),y=((M=n[2].length)!=null?M:0)+((D=n[5].length)!=null?D:0)>0&&zd(n),I=(n[7]||n[3].highlightText)&&Vd(n);return{c(){t=S("div"),ne(e.$$.fragment),i=$(),s=S("div"),o=$(),r=S("div"),v&&v.c(),a=$(),l=S("div"),c=S("div"),d=S("div"),u=xe(h),m=$(),y&&y.c(),A=$(),I&&I.c(),w(s,"class","line svelte-sezqcq"),z(s,"transition-delay",n[4]?Hs+"ms":_s+Hd-Nd-40+"ms"),w(d,"class","text svelte-sezqcq"),w(c,"class","title svelte-sezqcq"),w(l,"class","title-wrapper svelte-sezqcq"),w(r,"class","content svelte-sezqcq"),z(r,"max-width",Ht(n[9])),z(r,"transition-delay",n[4]?Hs+_s+"ms":"0ms"),w(t,"class",p=Qe(`marketing ${n[6]}`)+" svelte-sezqcq"),K(t,"unfolded",n[4]),K(t,"folded",n[8])},m(P,V){B(P,t,V),te(e,t,null),x(t,i),x(t,s),x(t,o),x(t,r),v&&v.m(r,null),x(r,a),x(r,l),x(l,c),x(c,d),x(d,u),x(r,m),y&&y.m(r,null),x(r,A),I&&I.m(r,null),g=!0},p(P,[V]){var X,U;const L={};V&16&&(L.visible=P[4]),e.$set(L),V&16&&z(s,"transition-delay",P[4]?Hs+"ms":_s+Hd-Nd-40+"ms"),P[3].headerPictureUrl?v?v.p(P,V):(v=jd(P),v.c(),v.m(r,a)):v&&(v.d(1),v=null),(!g||V&8)&&h!==(h=P[3].title+"")&&Se(u,h),((X=P[2].length)!=null?X:0)+((U=P[5].length)!=null?U:0)>0?y?y.p(P,V):(y=zd(P),y.c(),y.m(r,A)):y&&(y.d(1),y=null),P[7]||P[3].highlightText?I?I.p(P,V):(I=Vd(P),I.c(),I.m(r,null)):I&&(I.d(1),I=null),V&16&&z(r,"transition-delay",P[4]?Hs+_s+"ms":"0ms"),(!g||V&64&&p!==(p=Qe(`marketing ${P[6]}`)+" svelte-sezqcq"))&&w(t,"class",p),(!g||V&80)&&K(t,"unfolded",P[4]),(!g||V&320)&&K(t,"folded",P[8])},i(P){g||(k(e.$$.fragment,P),g=!0)},o(P){j(e.$$.fragment,P),g=!1},d(P){P&&O(t),ie(e),v&&v.d(),y&&y.d(),I&&I.d()}}}const Za=40,Hs=400,Nd=500,_s=180,Hd=500;function iI(n,t,e){let i,s,o,r,a,l,c,d,{tag:h}=t,u,m=(()=>{var g;const p=(g=h.data.limitWidth)!=null?g:!0;if(typeof p=="number")return p;if(p===!0)return 172})();function A(){u=this.offsetHeight,e(1,u)}return n.$$set=p=>{"tag"in p&&e(0,h=p.tag)},n.$$.update=()=>{var p,g,v,y,I,M;n.$$.dirty&1&&e(4,i=(g=(p=h.state)==null?void 0:p.unfolded)!=null?g:!1),n.$$.dirty&16&&e(8,s=!i),n.$$.dirty&1&&e(3,o=h.data),n.$$.dirty&8&&e(7,r=ni((v=o.price)==null?void 0:v.value)&&((y=o.price)==null?void 0:y.value)!==""),n.$$.dirty&1&&e(6,a=h.data.theme||"light"),n.$$.dirty&1026&&u>40&&e(10,l=l-1),n.$$.dirty&1032&&e(2,c=((I=o.brandTags)==null?void 0:I.slice(0,l).filter(Boolean))||[]),n.$$.dirty&1036&&e(5,d=((M=o.tags)==null?void 0:M.slice(0,l-c.length).filter(Boolean))||[])},e(10,l=(m-20)/Za),[h,u,c,o,i,d,a,r,s,m,l,A]}class nI extends le{constructor(t){super(),ae(this,t,iI,tI,oe,{tag:0},eI)}}class sI extends Audio{constructor(e){super();f(this,"sharedAudioSrc");f(this,"sharedAudioPaused",!0);f(this,"sharedAudioCurrentTime",0);f(this,"tryplaying",!1);f(this,"audioInstance");f(this,"eventListenerDisposer");this.sharedAudioSrc=e}get paused(){var e;return(e=this.sharedAudioPaused)!=null?e:!0}get currentTime(){return this.sharedAudioCurrentTime}play(){return W(this,null,function*(){var i,s,o;if(this.tryplaying)return;this.tryplaying=!0,(!this.audioInstance||((i=this.audioInstance)==null?void 0:i.realSrc)!==this.sharedAudioSrc)&&(this.audioInstance=y1(this.sharedAudioSrc,{namespace:Na.PlayAudio})),(s=this.eventListenerDisposer)==null||s.call(this),this.eventListenerDisposer=this.addEventListeners(),this.audioInstance.currentTime=(o=this.currentTime)!=null?o:0;const e=this.audioInstance.currentTime!==this.currentTime;this.audioInstance.play().then(()=>{var r;this.audioInstance.muted=!1,e&&(this.audioInstance.currentTime=(r=this.currentTime)!=null?r:0),this.sharedAudioPaused=!1}).catch(r=>{var a;r.message==="The operation is not supported."?console.error("Error: 音频文件可能损坏或修改过文件后缀",r):console.error("Error: error playing media in Safari",r),this.endedHandler(),(a=this.onerror)==null||a.call(this,r)}).finally(()=>{this.tryplaying=!1})})}pause(e){var i;if(this.audioInstance&&!this.paused){if(this.sharedAudioPaused=!0,(i=this.eventListenerDisposer)==null||i.call(this),this.audioInstance.ended){this.endedHandler();return}this.audioInstance.paused||this.audioInstance.pause(),this.onpause(e!=null?e:new Event("pause")),this.clear()}}dispose(){var e;(e=this.eventListenerDisposer)==null||e.call(this),this.clear(),this.audioInstance=void 0}clear(){var e;(e=this.audioInstance)==null||e.clear()}endedHandler(e){var i,s;(i=this.onended)==null||i.call(this,e!=null?e:new Event("ended")),(s=this.eventListenerDisposer)==null||s.call(this),this.sharedAudioPaused=!0,this.sharedAudioCurrentTime=0,this.clear()}addEventListeners(){const e=this.audioInstance;if(!e)return;const i=u=>{var m;this.sharedAudioCurrentTime=e.currentTime,(m=this.ontimeupdate)==null||m.call(this,u)},s=u=>{var m;e.isBlankAudio||(this.sharedAudioPaused=!1,(m=this.onplay)==null||m.call(this,u))},o=u=>{this.pause(u)},r=u=>{this.endedHandler(u)},a=u=>{var m;this.sharedAudioPaused=!0,(m=this.onerror)==null||m.call(this,u)},l=u=>{var m;return(m=this.oncanplay)==null?void 0:m.call(this,u)},c=u=>{var m;return(m=this.oncanplaythrough)==null?void 0:m.call(this,u)},d=u=>{var m;return(m=this.onloadeddata)==null?void 0:m.call(this,u)},h=u=>{var m;return(m=this.onloadedmetadata)==null?void 0:m.call(this,u)};return e.addEventListener("timeupdate",i),e.addEventListener("play",s),e.addEventListener("pause",o),e.addEventListener("ended",r),e.addEventListener("error",a),e.addEventListener("canplay",l),e.addEventListener("canplaythrough",c),e.addEventListener("loadeddata",d),e.addEventListener("loadedmetadata",h),()=>{e.removeEventListener("timeupdate",i),e.removeEventListener("play",s),e.removeEventListener("pause",o),e.removeEventListener("ended",r),e.removeEventListener("error",a),e.removeEventListener("canplay",l),e.removeEventListener("canplaythrough",c),e.removeEventListener("loadeddata",d),e.removeEventListener("loadedmetadata",h)}}}function oI(n){ue(n,"svelte-13e7hxv",".audio.svelte-13e7hxv{pointer-events:auto;cursor:pointer;width:100%;height:100%}")}function rI(n){let t,e,i,s;const o=n[8].default,r=Pn(o,n,n[7],null);return{c(){t=S("div"),r&&r.c(),w(t,"class","audio svelte-13e7hxv"),w(t,"style",n[0])},m(a,l){B(a,t,l),r&&r.m(t,null),e=!0,i||(s=be(t,"click",Oh(n[1])),i=!0)},p(a,[l]){r&&r.p&&(!e||l&128)&&Mn(r,o,a,a[7],e?En(o,a[7],l,null):kn(a[7]),null),(!e||l&1)&&w(t,"style",a[0])},i(a){e||(k(r,a),e=!0)},o(a){j(r,a),e=!1},d(a){a&&O(t),r&&r.d(a),i=!1,s()}}}function aI(n,t,e){let{$$slots:i={},$$scope:s}=t,{url:o}=t,{enable:r=!0}=t,{style:a=""}=t,{hooksInfo:l}=t;const c=wo(),d=fi("hooks"),h=fi("mediaStore");let u,m=!0;function A(){e(5,u.onplay=g=>{d.emit("playStateChange",G({event:g,state:"playing",mediaInstance:u},l)),c("play"),e(6,m=!1)},u),e(5,u.onpause=g=>{d.emit("playStateChange",G({event:g,state:"paused",mediaInstance:u},l)),c("pause"),e(6,m=!0)},u),e(5,u.onended=g=>{d.emit("playStateChange",G({event:g,state:"paused",mediaInstance:u},l)),c("pause"),e(6,m=!0)},u),e(5,u.onloadedmetadata=g=>{typeof u.duration=="number"&&!Number.isNaN(u.duration)&&c("duration",u.duration)},u),e(5,u.onerror=g=>{c("pause"),e(6,m=!0)},u),e(5,u.ontimeupdate=g=>{c("timeupdate",u.currentTime)},u)}h.subscribe(({currentMediaElement:g})=>{g!==u&&(m||u==null||u.pause())});function p(g){u&&(d.emit("click",G({event:g,target:"AudioTagPlayIcon",audioInstance:u},l)),h.set({currentMediaElement:u}),d.emit("playStateChange",G({event:g,state:u.paused?"playing":"paused",mediaInstance:u},l)),u.paused?u.play():u.pause())}return n.$$set=g=>{"url"in g&&e(2,o=g.url),"enable"in g&&e(3,r=g.enable),"style"in g&&e(0,a=g.style),"hooksInfo"in g&&e(4,l=g.hooksInfo),"$$scope"in g&&e(7,s=g.$$scope)},n.$$.update=()=>{n.$$.dirty&4&&(o||c("duration",0)),n.$$.dirty&36&&(u==null||u.dispose(),e(5,u=new sI(o)),c("audioRef",u),setTimeout(()=>c("audioRef",u),200),A()),n.$$.dirty&40&&(r||u==null||u.pause()),n.$$.dirty&72&&c(r&&!m?"play":"pause")},[a,p,o,r,l,u,m,s,i]}let Uu=class extends le{constructor(t){super(),ae(this,t,aI,rI,oe,{url:2,enable:3,style:0,hooksInfo:4},oI)}};function lI(n){ue(n,"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 _d(n){let t,e;return t=new Wt({props:{center:!0,blurRadius:12,spreadRadius:5}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function cI(n){let t,e,i,s,o,r=n[1]&&_d();return{c(){t=S("div"),r&&r.c(),e=$(),i=S("div"),s=S("div"),s.innerHTML='<svg width="100%" height="100%" viewBox="0 0 128 128"><g transform="rotate(-45 12 64) translate(12 64)" fill="black" stroke="black" fill-opacity="0.6" stroke-opacity="0.6"><path stroke="none" class="sound-wave sound-wave-1 svelte-srt2pi" d="M0,23 A23,23 0 0,0 23,0 L0,0"></path><path fill="none" stroke-width="15" class="sound-wave sound-wave-2 svelte-srt2pi" d="M0,46 A46,46 0 0,0 46,0"></path><path fill="none" stroke-width="15" class="sound-wave sound-wave-3 svelte-srt2pi" d="M0,80 A80,80 0 0,0 80,0"></path></g></svg>',w(s,"class","sound-wave__container svelte-srt2pi"),w(i,"class","audio-icon svelte-srt2pi"),K(i,"playing",n[0]),w(t,"class","audio-icon__wrapper svelte-srt2pi"),w(t,"style",n[2]),z(t,"width",n[5]),z(t,"height",n[5])},m(a,l){B(a,t,l),r&&r.m(t,null),x(t,e),x(t,i),x(i,s),n[7](s),n[8](t),o=!0},p(a,[l]){a[1]?r?l&2&&k(r,1):(r=_d(),r.c(),k(r,1),r.m(t,e)):r&&(de(),j(r,1,1,()=>{r=null}),he()),(!o||l&1)&&K(i,"playing",a[0]),(!o||l&4)&&w(t,"style",a[2]);const c=l&4;(c||l&36)&&z(t,"width",a[5]),(c||l&36)&&z(t,"height",a[5])},i(a){o||(k(r),o=!0)},o(a){j(r),o=!1},d(a){a&&O(t),r&&r.d(),n[7](null),n[8](null)}}}function dI(n,t,e){let i,{playing:s}=t,{shadow:o=!1}=t,{style:r=null}=t,{width:a="100%"}=t,l,c;function d(u){Ge[u?"unshift":"push"](()=>{c=u,e(4,c)})}function h(u){Ge[u?"unshift":"push"](()=>{l=u,e(3,l)})}return n.$$set=u=>{"playing"in u&&e(0,s=u.playing),"shadow"in u&&e(1,o=u.shadow),"style"in u&&e(2,r=u.style),"width"in u&&e(6,a=u.width)},n.$$.update=()=>{n.$$.dirty&64&&e(5,i=typeof a=="number"?Ht(a):a)},[s,o,r,l,c,i,a,d,h]}class Xu extends le{constructor(t){super(),ae(this,t,dI,cI,oe,{playing:0,shadow:1,style:2,width:6},lI)}}function hI(n){ue(n,"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 Fd(n){var g,v;let t,e,i,s,o,r,a,l,c,d,h,u,m,A;e=new Wt({props:{visible:n[6],left:n[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}});let p=n[6]&&Wd(n);return c=new ju({props:{visible:n[6],textUnfolded:n[1],content:n[5]}}),h=new Ha({props:{unfolded:n[6],length:n[3],outDelay:n[4]+20*Math.min((v=(g=n[5])==null?void 0:g.length)!=null?v:10,15),useLinearColor:!0}}),{c(){t=S("div"),ne(e.$$.fragment),i=$(),s=S("div"),o=S("div"),r=S("div"),p&&p.c(),a=$(),l=S("div"),ne(c.$$.fragment),d=$(),ne(h.$$.fragment),w(r,"class","audio-icon svelte-1s6gk4a"),z(l,"display","inline-block"),w(o,"class","wrapper svelte-1s6gk4a"),w(s,"class","content svelte-1s6gk4a"),w(t,"class","audio-tag svelte-1s6gk4a"),K(t,"unfolded",n[6])},m(y,I){B(y,t,I),te(e,t,null),x(t,i),x(t,s),x(s,o),x(o,r),p&&p.m(r,null),x(o,a),x(o,l),te(c,l,null),x(t,d),te(h,t,null),u=!0,m||(A=[be(l,"click",n[7]),ei(Sn.call(null,l)),be(l,"clientWidth",n[12])],m=!0)},p(y,I){var V,L;const M={};I&64&&(M.visible=y[6]),I&8&&(M.left=y[3]/2+"px"),e.$set(M),y[6]?p?(p.p(y,I),I&64&&k(p,1)):(p=Wd(y),p.c(),k(p,1),p.m(r,null)):p&&(de(),j(p,1,1,()=>{p=null}),he());const D={};I&64&&(D.visible=y[6]),I&2&&(D.textUnfolded=y[1]),I&32&&(D.content=y[5]),c.$set(D);const P={};I&64&&(P.unfolded=y[6]),I&8&&(P.length=y[3]),I&48&&(P.outDelay=y[4]+20*Math.min((L=(V=y[5])==null?void 0:V.length)!=null?L:10,15)),h.$set(P),(!u||I&64)&&K(t,"unfolded",y[6])},i(y){u||(k(e.$$.fragment,y),k(p),k(c.$$.fragment,y),k(h.$$.fragment,y),u=!0)},o(y){j(e.$$.fragment,y),j(p),j(c.$$.fragment,y),j(h.$$.fragment,y),u=!1},d(y){y&&O(t),ie(e),p&&p.d(),ie(c),ie(h),m=!1,qe(A)}}}function Wd(n){let t,e,i,s,o,r,a;return e=new Wt({props:{center:!0,blurRadius:15,spreadRadius:6}}),s=new Uu({props:{enable:n[6],url:n[0].data.audioUrl,hooksInfo:{tag:n[0]},$$slots:{default:[uI]},$$scope:{ctx:n}}}),s.$on("play",n[8]),s.$on("pause",n[9]),s.$on("error",n[10]),s.$on("audioRef",n[11]),{c(){t=S("div"),ne(e.$$.fragment),i=$(),ne(s.$$.fragment),w(t,"class","audio svelte-1s6gk4a")},m(l,c){B(l,t,c),te(e,t,null),x(t,i),te(s,t,null),a=!0},p(l,c){n=l;const d={};c&64&&(d.enable=n[6]),c&1&&(d.url=n[0].data.audioUrl),c&1&&(d.hooksInfo={tag:n[0]}),c&8196&&(d.$$scope={dirty:c,ctx:n}),s.$set(d)},i(l){a||(k(e.$$.fragment,l),k(s.$$.fragment,l),l&&He(()=>{a&&(r&&r.end(1),o=Vi(t,it,{duration:1e3,delay:0,easing:pn}),o.start())}),a=!0)},o(l){var c,d;j(e.$$.fragment,l),j(s.$$.fragment,l),o&&o.invalidate(),l&&(r=Dn(t,it,{duration:1e3,delay:20*Math.min((d=(c=n[5])==null?void 0:c.length)!=null?d:10,15),easing:pn})),a=!1},d(l){l&&O(t),ie(e),ie(s),l&&r&&r.end()}}}function uI(n){let t,e,i;return e=new Xu({props:{playing:n[2]}}),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","audio-icon__wrapper svelte-1s6gk4a")},m(s,o){B(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o&4&&(r.playing=s[2]),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){j(e.$$.fragment,s),i=!1},d(s){s&&O(t),ie(e)}}}function fI(n){let t,e,i=n[0].state&&Fd(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?i?(i.p(s,o),o&1&&k(i,1)):(i=Fd(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function mI(n,t,e){let i,s,o,{tag:r}=t,a=!1,l=!1,c;function d(){e(1,a=!a)}const h=()=>{e(2,l=!0)},u=()=>{e(2,l=!1)},m=()=>{e(2,l=!1)};function A(g){xn.call(this,n,g)}const p=g=>{e(3,c=g.detail)};return n.$$set=g=>{"tag"in g&&e(0,r=g.tag)},n.$$.update=()=>{var g,v,y;n.$$.dirty&1&&e(6,i=!!((g=r.state)!=null&&g.unfolded)),n.$$.dirty&1&&e(5,s=(y=(v=r.data.title)!=null?v:r.data.text)!=null?y:""),n.$$.dirty&2&&e(4,o=a?450:0)},[r,a,l,c,o,s,i,d,h,u,m,A,p]}class gI extends le{constructor(t){super(),ae(this,t,mI,fI,oe,{tag:0},hI)}}function pI(n){ue(n,"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 Yd(n){let t,e,i,s;return i=new Uu({props:{style:"width: max-content; height: max-content;",enable:n[0].state.visible,url:n[0].data.audioUrl,hooksInfo:{tag:n[0]},$$slots:{default:[vI]},$$scope:{ctx:n}}}),i.$on("play",n[6]),i.$on("pause",n[7]),i.$on("error",n[8]),i.$on("timeupdate",n[9]),i.$on("duration",n[10]),i.$on("audioRef",n[11]),{c(){t=S("div"),e=S("div"),ne(i.$$.fragment),w(e,"class","audio-tag svelte-58hfjf"),z(e,"background-color",n[4].bgColor),z(e,"color",n[4].fontColor),w(t,"class","audio-tag__wrapper svelte-58hfjf")},m(o,r){B(o,t,r),x(t,e),te(i,e,null),s=!0},p(o,r){const a={};r&1&&(a.enable=o[0].state.visible),r&1&&(a.url=o[0].data.audioUrl),r&1&&(a.hooksInfo={tag:o[0]}),r&8232&&(a.$$scope={dirty:r,ctx:o}),i.$set(a),r&16&&z(e,"background-color",o[4].bgColor),r&16&&z(e,"color",o[4].fontColor)},i(o){s||(k(i.$$.fragment,o),s=!0)},o(o){j(i.$$.fragment,o),s=!1},d(o){o&&O(t),ie(i)}}}function AI(n){let t;return{c(){t=xe(n[5])},m(e,i){B(e,t,i)},p(e,i){i&32&&Se(t,e[5])},d(e){e&&O(t)}}}function vI(n){let t,e,i,s,o,r,a;return i=new Xu({props:{playing:n[3]}}),r=new _a({props:{maxWidth:72,maxLine:1,$$slots:{default:[AI]},$$scope:{ctx:n}}}),{c(){t=S("div"),e=S("div"),ne(i.$$.fragment),s=$(),o=S("div"),ne(r.$$.fragment),w(e,"class","audio-icon__wrapper svelte-58hfjf"),w(o,"class","text svelte-58hfjf"),w(t,"class","audio__inner svelte-58hfjf")},m(l,c){B(l,t,c),x(t,e),te(i,e,null),x(t,s),x(t,o),te(r,o,null),a=!0},p(l,c){const d={};c&8&&(d.playing=l[3]),i.$set(d);const h={};c&8224&&(h.$$scope={dirty:c,ctx:l}),r.$set(h)},i(l){a||(k(i.$$.fragment,l),k(r.$$.fragment,l),a=!0)},o(l){j(i.$$.fragment,l),j(r.$$.fragment,l),a=!1},d(l){l&&O(t),ie(i),ie(r)}}}function bI(n){let t,e,i=n[0].state&&Yd(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state?i?(i.p(s,o),o&1&&k(i,1)):(i=Yd(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function yI(n,t,e){let i,s,{tag:o}=t;const r={light:{bgColor:"rgba(255, 255, 255, 0.3)",fontColor:"rgba(0, 0, 0, 0.6)"},dark:{bgColor:"rgba(0, 0, 0, 0.3)",fontColor:"white"}};let a=0,l=0,c=!1;const d=()=>{e(3,c=!0)},h=()=>{e(3,c=!1)},u=()=>{e(3,c=!1)},m=g=>{e(1,a=g.detail)},A=g=>{e(2,l=g.detail)};function p(g){xn.call(this,n,g)}return n.$$set=g=>{"tag"in g&&e(0,o=g.tag)},n.$$.update=()=>{var g,v,y;n.$$.dirty&1&&e(5,i=(v=(g=o.data.title)!=null?g:o.data.text)!=null?v:""),n.$$.dirty&1&&e(4,s=(y=r[o.data.theme||"light"])!=null?y:r.light)},[o,a,l,c,s,i,d,h,u,m,A,p]}class wI extends le{constructor(t){super(),ae(this,t,yI,bI,oe,{tag:0},pI)}}function CI(n){let t,e;return t=new wI({props:{tag:n[0]}}),t.$on("audioRef",n[2]),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.tag=i[0]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function II(n){let t,e;return t=new gI({props:{tag:n[0]}}),t.$on("audioRef",n[2]),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.tag=i[0]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function PI(n){let t,e,i,s;const o=[II,CI],r=[];function a(l,c){return l[1]==="line"?0:l[1]==="plane"?1:-1}return~(t=a(n))&&(e=r[t]=o[t](n)),{c(){e&&e.c(),i=Ee()},m(l,c){~t&&r[t].m(l,c),B(l,i,c),s=!0},p(l,[c]){let d=t;t=a(l),t===d?~t&&r[t].p(l,c):(e&&(de(),j(r[d],1,1,()=>{r[d]=null}),he()),~t?(e=r[t],e?e.p(l,c):(e=r[t]=o[t](l),e.c()),k(e,1),e.m(i.parentNode,i)):e=null)},i(l){s||(k(e),s=!0)},o(l){j(e),s=!1},d(l){l&&O(i),~t&&r[t].d(l)}}}function EI(n,t,e){let i,{tag:s}=t,o;function r(a){o=a.detail}return s.play=()=>o.play(),s.pause=()=>o.pause(),n.$$set=a=>{"tag"in a&&e(0,s=a.tag)},n.$$.update=()=>{var a;n.$$.dirty&1&&e(1,i=(a=s.data.appearance)!=null?a:"line")},[s,i,r]}class MI extends le{constructor(t){super(),ae(this,t,EI,PI,oe,{tag:0})}}function kI(n){ue(n,"svelte-10cw0el",".media-wrapper.svelte-10cw0el{position:absolute;width:100%;height:100%}")}function Ud(n){var s;let t,e,i;return e=new Yu({props:{mediaItemConfig:{canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(s=n[4])!=null?s:"withText",disableVideoIfHavePoster:!1,objectFit:n[2]},unfolded:n[6],mediaData:n[5],enableCarousel:n[1],autoplayConfig:n[3],tag:n[0],inDelay:500,duration:500}}),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class","media-wrapper svelte-10cw0el")},m(o,r){B(o,t,r),te(e,t,null),i=!0},p(o,r){var l;const a={};r&20&&(a.mediaItemConfig={canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(l=o[4])!=null?l:"withText",disableVideoIfHavePoster:!1,objectFit:o[2]}),r&64&&(a.unfolded=o[6]),r&32&&(a.mediaData=o[5]),r&2&&(a.enableCarousel=o[1]),r&8&&(a.autoplayConfig=o[3]),r&1&&(a.tag=o[0]),e.$set(a)},i(o){i||(k(e.$$.fragment,o),i=!0)},o(o){j(e.$$.fragment,o),i=!1},d(o){o&&O(t),ie(e)}}}function xI(n){let t,e,i=n[0].state&&n[5]&&Ud(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[0].state&&s[5]?i?(i.p(s,o),o&33&&k(i,1)):(i=Ud(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function DI(n,t,e){let i,s,o,r,a,l,{tag:c}=t;return n.$$set=d=>{"tag"in d&&e(0,c=d.tag)},n.$$.update=()=>{var d,h;n.$$.dirty&1&&e(6,i=c.state?c.state.unfolded:!1),n.$$.dirty&1&&e(5,s=c.data.mediaData),n.$$.dirty&1&&e(1,o=c.data.enableCarousel),n.$$.dirty&1&&e(4,r=c.data.playIcon),n.$$.dirty&3&&e(3,a=(d=c.data.autoplayConfig)!=null?d:{autoplay:o!=null?o:!0,autoplayVideo:!0}),n.$$.dirty&1&&e(2,l=(h=c.data.objectFit)!=null?h:(()=>c.data.adaptationMode==="stretch"?"fill":c.data.adaptationMode==="proportional"?"contain":void 0)())},[c,o,l,a,r,s,i]}class SI extends le{constructor(t){super(),ae(this,t,DI,xI,oe,{tag:0},kI)}}function Zu(n){return W(this,null,function*(){return new Promise((t,e)=>{if(!n){e(Error("url is empty"));return}const i=new Image;i.src=n,i.onload=()=>t({width:i.width,height:i.height}),i.onerror=e})})}function TI(n){return W(this,null,function*(){const{url:t,ratio:e=3}=n;n.ratio||console.warn("Tag icon ratio is not set, default is 3");const{width:i,height:s}=yield Zu(t);return ve(G({},n),{width:i/e,height:s/e})})}function LI(n){return W(this,null,function*(){const{steps:t,url:e,ratio:i=3,fps:s=24}=n;if(!t)throw new Error("KeyframeIcon requires steps");const{width:o,height:r}=yield Zu(e),a=o/i,l=r/i,c=a/t,d=l,h=1/s*t+"s";return ve(G({},n),{width:c,height:d,duration:h})})}function jI(n){ue(n,"svelte-316sq3","@keyframes svelte-316sq3-sprites-animation{0%{background-position:0 0}100%{background-position:100% 0}}.icon-image.svelte-316sq3{display:block;width:auto}.icon-keyframe.svelte-316sq3{background-repeat:no-repeat;background-size:auto 100%;animation-direction:normal;animation-iteration-count:infinite;animation-name:svelte-316sq3-sprites-animation;animation-delay:0}")}function Xd(n){n[1]=n[19].width}function Zd(n){n[1]=n[19].width,n[16]=n[19].height,n[17]=n[19].steps,n[18]=n[19].duration}function Jd(n){let t,e,i,s=n[0]&&qd();function o(l,c){return l[8]?OI:zI}let r=o(n),a=r(n);return{c(){t=S("div"),s&&s.c(),e=$(),a.c(),w(t,"class","icon"),z(t,"width",n[1])},m(l,c){B(l,t,c),s&&s.m(t,null),x(t,e),a.m(t,null),i=!0},p(l,c){l[0]?s?c&1&&k(s,1):(s=qd(),s.c(),k(s,1),s.m(t,e)):s&&(de(),j(s,1,1,()=>{s=null}),he()),r===(r=o(l))&&a?a.p(l,c):(a.d(1),a=r(l),a&&(a.c(),a.m(t,null))),c&2&&z(t,"width",l[1])},i(l){i||(k(s),i=!0)},o(l){j(s),i=!1},d(l){l&&O(t),s&&s.d(),a.d()}}}function qd(n){let t,e;return t=new Wt({props:{center:!0,blurRadius:24,spreadRadius:16}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function zI(n){let t,e,i={ctx:n,current:null,token:null,hasCatch:!1,pending:RI,then:VI,catch:BI,value:19};return no(e=n[11](We({url:n[7],ratio:n[5]})),i),{c(){t=Ee(),i.block.c()},m(s,o){B(s,t,o),i.block.m(s,i.anchor=o),i.mount=()=>t.parentNode,i.anchor=t},p(s,o){n=s,i.ctx=n,o&160&&e!==(e=n[11](We({url:n[7],ratio:n[5]})))&&no(e,i)||Nh(i,n,o)},d(s){s&&O(t),i.block.d(s),i.token=null,i=null}}}function OI(n){let t,e,i={ctx:n,current:null,token:null,hasCatch:!1,pending:NI,then:GI,catch:QI,value:19};return no(e=n[10](We({url:n[7],steps:n[2],fps:n[6],ratio:n[5]})),i),{c(){t=Ee(),i.block.c()},m(s,o){B(s,t,o),i.block.m(s,i.anchor=o),i.mount=()=>t.parentNode,i.anchor=t},p(s,o){n=s,i.ctx=n,o&228&&e!==(e=n[10](We({url:n[7],steps:n[2],fps:n[6],ratio:n[5]})))&&no(e,i)||Nh(i,n,o)},d(s){s&&O(t),i.block.d(s),i.token=null,i=null}}}function BI(n){return{c:q,m:q,p:q,d:q}}function VI(n){Xd(n);let t,e;return{c(){t=S("img"),w(t,"alt","tag-icon"),w(t,"class","icon-image svelte-316sq3"),kt(t.src,e=n[7])||w(t,"src",e),z(t,"width",Ht(on({originWidth:n[1],scale:n[4],wantedWidth:n[3]}).width))},m(i,s){B(i,t,s)},p(i,s){Xd(i),s&128&&!kt(t.src,e=i[7])&&w(t,"src",e),s&184&&z(t,"width",Ht(on({originWidth:i[1],scale:i[4],wantedWidth:i[3]}).width))},d(i){i&&O(t)}}}function RI(n){return{c:q,m:q,p:q,d:q}}function QI(n){return{c:q,m:q,p:q,d:q}}function GI(n){Zd(n);let t,e=`url(${n[7]})`,i=`steps(${n[17]}, jump-none)`;return{c(){t=S("div"),w(t,"class","icon-keyframe svelte-316sq3"),z(t,"width",Ht(on({originWidth:n[1],originHeight:n[16],scale:n[4],wantedWidth:n[3]}).width)),z(t,"height",Ht(on({originWidth:n[1],originHeight:n[16],scale:n[4],wantedWidth:n[3]}).height)),z(t,"background-image",e),z(t,"animation-duration",n[18]),z(t,"animation-timing-function",i)},m(s,o){B(s,t,o)},p(s,o){Zd(s),o&252&&z(t,"width",Ht(on({originWidth:s[1],originHeight:s[16],scale:s[4],wantedWidth:s[3]}).width)),o&252&&z(t,"height",Ht(on({originWidth:s[1],originHeight:s[16],scale:s[4],wantedWidth:s[3]}).height)),o&128&&e!==(e=`url(${s[7]})`)&&z(t,"background-image",e),o&228&&z(t,"animation-duration",s[18]),o&228&&i!==(i=`steps(${s[17]}, jump-none)`)&&z(t,"animation-timing-function",i)},d(s){s&&O(t)}}}function NI(n){return{c:q,m:q,p:q,d:q}}function HI(n){let t,e,i=n[9]&&Jd(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[9]?i?(i.p(s,o),o&512&&k(i,1)):(i=Jd(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function on(n){const{originWidth:t,originHeight:e,scale:i=1,wantedWidth:s}=n,o=(s!=null?s:t)*i,r=typeof e=="number"?o*(e/t):void 0;return ve(G({},n),{width:o,height:r})}function _I(n,t,e){let i,s,o,r,a,l,c,d,h,{width:u=null}=t,{icon:m=null}=t,{shadow:A=!1}=t;const p=wo();function g(I){return W(this,null,function*(){const M=yield LI(I);return p("iconLoaded",M),M})}function v(I){return W(this,null,function*(){if(typeof h=="number")return ve(G({},I),{width:h});const M=yield TI(I);return p("iconLoaded",M),M})}function y(){d||p("iconLoaded")}return bt(()=>{y()}),n.$$set=I=>{"width"in I&&e(1,u=I.width),"icon"in I&&e(12,m=I.icon),"shadow"in I&&e(0,A=I.shadow)},n.$$.update=()=>{var I,M;n.$$.dirty&4096&&e(7,i=m==null?void 0:m.url),n.$$.dirty&4096&&e(2,s=(I=m==null?void 0:m.steps)!=null?I:1),n.$$.dirty&4096&&e(6,o=m==null?void 0:m.fps),n.$$.dirty&4096&&e(5,r=m==null?void 0:m.ratio),n.$$.dirty&4096&&e(4,a=(M=m==null?void 0:m.scale)!=null?M:1),n.$$.dirty&4096&&e(3,l=m==null?void 0:m.width),n.$$.dirty&252&&e(9,c=We({url:i,steps:s,fps:o,ratio:r,scale:a,width:l})),n.$$.dirty&4&&e(8,d=s>1),n.$$.dirty&2&&(h=u)},y(),[A,u,s,l,a,r,o,i,d,c,g,v,m]}class Ju extends le{constructor(t){super(),ae(this,t,_I,HI,oe,{width:1,icon:12,shadow:0},jI)}}function FI(n){ue(n,"svelte-e58ijk",".wrapper.svelte-e58ijk{font-weight:600;cursor:pointer;width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:auto}.text-wrapper.svelte-e58ijk{position:relative;display:flex;align-items:center;justify-content:center}.text.svelte-e58ijk{position:absolute;top:0;font-size:0.875rem;color:#ffffff;letter-spacing:0;text-align:center;max-width:8.75rem;width:-moz-max-content;width:max-content;line-height:1.125rem;text-shadow:0.125rem 0rem 0.5rem rgba(0, 0, 0, 0.15)}")}function Kd(n){let t,e,i,s,o,r;return e=new Wt({props:{outDelay:0,inDelay:0,center:!0,width:"80%",blurRadius:40,spreadRadius:16,opacity:.08}}),{c(){t=S("div"),ne(e.$$.fragment),i=$(),s=S("div"),o=xe(n[1]),w(s,"class","text svelte-e58ijk"),w(t,"class","text-wrapper svelte-e58ijk")},m(a,l){B(a,t,l),te(e,t,null),x(t,i),x(t,s),x(s,o),r=!0},p(a,l){(!r||l&2)&&Se(o,a[1])},i(a){r||(k(e.$$.fragment,a),r=!0)},o(a){j(e.$$.fragment,a),r=!1},d(a){a&&O(t),ie(e)}}}function WI(n){let t,e,i,s;e=new Ju({props:{icon:n[0],shadow:!0}}),e.$on("iconLoaded",n[4]);let o=n[1]&&n[2]&&Kd(n);return{c(){t=S("div"),ne(e.$$.fragment),i=$(),o&&o.c(),w(t,"class","wrapper svelte-e58ijk")},m(r,a){B(r,t,a),te(e,t,null),x(t,i),o&&o.m(t,null),s=!0},p(r,[a]){const l={};a&1&&(l.icon=r[0]),e.$set(l),r[1]&&r[2]?o?(o.p(r,a),a&6&&k(o,1)):(o=Kd(r),o.c(),k(o,1),o.m(t,null)):o&&(de(),j(o,1,1,()=>{o=null}),he())},i(r){s||(k(e.$$.fragment,r),k(o),s=!0)},o(r){j(e.$$.fragment,r),j(o),s=!1},d(r){r&&O(t),ie(e),o&&o.d()}}}function YI(n,t,e){let i,s,o,{tag:r}=t;const a=()=>{e(2,i=!0)};return n.$$set=l=>{"tag"in l&&e(3,r=l.tag)},n.$$.update=()=>{var l,c,d;n.$$.dirty&8&&e(1,s=(l=r.data.title)!=null?l:r.data.text),n.$$.dirty&8&&e(0,o=(d=r.data.icon)!=null?d:(c=r.style)==null?void 0:c.point)},e(2,i=!1),[o,s,i,r,a]}class UI extends le{constructor(t){super(),ae(this,t,YI,WI,oe,{tag:3},FI)}}function XI(n){ue(n,"svelte-kzl2aj",".customElement__container.svelte-kzl2aj{position:relative}")}function ZI(n){let t,e;return{c(){t=new Ks(!1),e=Ee(),t.a=e},m(i,s){t.m(n[2],i,s),B(i,e,s)},p:q,d(i){i&&(O(e),t.d())}}}function JI(n){let t,e=typeof n[2]=="string"&&ZI(n);return{c(){t=S("div"),e&&e.c(),w(t,"class","customElement__container svelte-kzl2aj"),K(t,"unfolded",n[1])},m(i,s){B(i,t,s),e&&e.m(t,null),n[5](t)},p(i,[s]){typeof i[2]=="string"&&e.p(i,s),s&2&&K(t,"unfolded",i[1])},i:q,o:q,d(i){i&&O(t),e&&e.d(),n[5](null)}}}function qI(n,t,e){var d,h;let i,{tag:s}=t,{renderMap:o=new Map}=t,r,a=(h=s.element)!=null?h:(d=o.get(s.contentType))==null?void 0:d.renderer,l;bt(()=>{r&&(a instanceof Element?(r.appendChild(a),l=()=>{a instanceof Element&&a.remove()}):typeof a=="function"&&(l=a(r,s)))}),zt(()=>{l==null||l()});function c(u){Ge[u?"unshift":"push"](()=>{r=u,e(0,r)})}return n.$$set=u=>{"tag"in u&&e(3,s=u.tag),"renderMap"in u&&e(4,o=u.renderMap)},n.$$.update=()=>{n.$$.dirty&8&&e(1,i=s.state.unfolded)},[r,i,a,s,o,c]}class KI extends le{constructor(t){super(),ae(this,t,qI,JI,oe,{tag:3,renderMap:4},XI)}}function $I(n){ue(n,"svelte-1r4fqvg",'@font-face{font-family:"TG-TYPE";font-style:normal;font-weight:400;src:local("TG-TYPE-Bold"), url(data:application/font-woff2;charset=utf-8;base64,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) format("woff2")}*{-webkit-tap-highlight-color:transparent}.content__container.svelte-1r4fqvg{position:relative;left:50%;top:50%;transform:translate(-50%, -50%);font-family:PingFangSC, Segoe UI, Rototo, sans-serif}.content__container.withAnimation.svelte-1r4fqvg{transition:opacity 0.3s linear}.content__container.unClickable.svelte-1r4fqvg{pointer-events:none !important}.content__container.unClickable.svelte-1r4fqvg *{pointer-events:none !important}.content__wrapper.svelte-1r4fqvg{pointer-events:none;width:100%;height:100%}.content__container.hide.svelte-1r4fqvg{opacity:0;pointer-events:none}.content__container.hide.svelte-1r4fqvg *{pointer-events:none !important}.content__container.disable.svelte-1r4fqvg{display:none}.content.svelte-1r4fqvg{position:relative;width:100%;height:100%;font-size:0.75rem;color:#fff}.content.svelte-1r4fqvg:not(.unfolded){pointer-events:none}.content.svelte-1r4fqvg:not(.unfolded) *{pointer-events:none !important}.content.unfolded.svelte-1r4fqvg{pointer-events:auto}')}function eP(n){let t,e;return{c(){t=S("div"),w(t,"data-info","tag content is keep folded"),w(t,"data-id",e=n[1].id)},m(i,s){B(i,t,s)},p(i,s){s&2&&e!==(e=i[1].id)&&w(t,"data-id",e)},i:q,o:q,d(i){i&&O(t)}}}function tP(n){let t,e,i,s,o,r,a,l,c,d;const h=[lP,aP,rP,oP,sP,nP],u=[];function m(A,p){return A[1].contentType==="Text"?0:A[1].contentType==="ImageText"||A[1].contentType==="Image"||A[1].contentType==="Video"?1:A[1].contentType==="Audio"?2:A[1].contentType==="Marketing"?3:A[1].contentType==="Link"||A[1].contentType==="VRLink"||A[1].contentType==="PanoLink"||A[1].contentType==="Sticker"?4:A[1].contentType==="MediaPlane"||A[1].contentType==="MediaModel"?5:-1}return~(s=m(n))&&(o=u[s]=h[s](n)),{c(){var A;t=S("div"),e=S("div"),i=S("div"),o&&o.c(),w(i,"class","content svelte-1r4fqvg"),K(i,"unfolded",(A=n[1].state)==null?void 0:A.unfolded),w(e,"class","content__wrapper svelte-1r4fqvg"),w(t,"class",r=Qe(at("content__container",n[1].className))+" svelte-1r4fqvg"),w(t,"data-id",a=n[1].id),K(t,"disable",n[1].enabled===!1),K(t,"hide",n[5]),K(t,"withAnimation",n[0]),K(t,"unClickable",n[1].config.clickable===!1),z(t,"width",n[1].stickType==="Plane"||n[1].contentType==="MediaModel"?"100%":0),z(t,"height",n[1].stickType==="Plane"||n[1].contentType==="MediaModel"?"100%":0)},m(A,p){B(A,t,p),x(t,e),x(e,i),~s&&u[s].m(i,null),l=!0,c||(d=be(t,"click",Oh(n[15])),c=!0)},p(A,p){var v;let g=s;s=m(A),s===g?~s&&u[s].p(A,p):(o&&(de(),j(u[g],1,1,()=>{u[g]=null}),he()),~s?(o=u[s],o?o.p(A,p):(o=u[s]=h[s](A),o.c()),k(o,1),o.m(i,null)):o=null),(!l||p&2)&&K(i,"unfolded",(v=A[1].state)==null?void 0:v.unfolded),(!l||p&2&&r!==(r=Qe(at("content__container",A[1].className))+" svelte-1r4fqvg"))&&w(t,"class",r),(!l||p&2&&a!==(a=A[1].id))&&w(t,"data-id",a),(!l||p&2)&&K(t,"disable",A[1].enabled===!1),(!l||p&34)&&K(t,"hide",A[5]),(!l||p&3)&&K(t,"withAnimation",A[0]),(!l||p&2)&&K(t,"unClickable",A[1].config.clickable===!1),p&2&&z(t,"width",A[1].stickType==="Plane"||A[1].contentType==="MediaModel"?"100%":0),p&2&&z(t,"height",A[1].stickType==="Plane"||A[1].contentType==="MediaModel"?"100%":0)},i(A){l||(k(o),l=!0)},o(A){j(o),l=!1},d(A){A&&O(t),~s&&u[s].d(),c=!1,d()}}}function iP(n){let t,e,i,s,o,r,a;return e=new KI({props:{tag:We(n[1]),renderMap:n[3]}}),{c(){t=S("div"),ne(e.$$.fragment),w(t,"class",i=Qe(at("content__container",n[1].className))+" svelte-1r4fqvg"),w(t,"data-id",s=n[1].id),K(t,"custom-tag-disable",n[1].enabled===!1),K(t,"custom-tag-hide",n[5])},m(l,c){B(l,t,c),te(e,t,null),o=!0,r||(a=be(t,"click",n[14]),r=!0)},p(l,c){const d={};c&2&&(d.tag=We(l[1])),c&8&&(d.renderMap=l[3]),e.$set(d),(!o||c&2&&i!==(i=Qe(at("content__container",l[1].className))+" svelte-1r4fqvg"))&&w(t,"class",i),(!o||c&2&&s!==(s=l[1].id))&&w(t,"data-id",s),(!o||c&2)&&K(t,"custom-tag-disable",l[1].enabled===!1),(!o||c&34)&&K(t,"custom-tag-hide",l[5])},i(l){o||(k(e.$$.fragment,l),o=!0)},o(l){j(e.$$.fragment,l),o=!1},d(l){l&&O(t),ie(e),r=!1,a()}}}function nP(n){let t,e;return t=new SI({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function sP(n){let t,e;return t=new UI({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function oP(n){let t,e;return t=new nI({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function rP(n){let t,e;return t=new MI({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function aP(n){let t,e;return t=new $C({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function lP(n){let t,e;return t=new vy({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function cP(n){let t,e,i,s,o;const r=[iP,tP,eP],a=[];function l(c,d){return d&10&&(t=null),t==null&&(t=!!(c[1].element||c[3].has(c[1].contentType))),t?0:c[4]?1:2}return e=l(n,-1),i=a[e]=r[e](n),{c(){i.c(),s=Ee()},m(c,d){a[e].m(c,d),B(c,s,d),o=!0},p(c,[d]){let h=e;e=l(c,d),e===h?a[e].p(c,d):(de(),j(a[h],1,1,()=>{a[h]=null}),he(),i=a[e],i?i.p(c,d):(i=a[e]=r[e](c),i.c()),k(i,1),i.m(s.parentNode,s))},i(c){o||(k(i),o=!0)},o(c){j(i),o=!1},d(c){c&&O(s),a[e].d(c)}}}function dP(n,t,e){let i,s,o,r,a,l,{withAnimation:c=!1}=t,{tag:d}=t,{hooks:h}=t,{renderMap:u=new Map}=t,{state:m}=t,{mediaStore:A}=t,{temporaryState:p}=t;Xr("hooks",h),Xr("mediaStore",A);let g,v;function y(P){P?h.emit("exposure",{id:r,type:"start"}):h.emit("exposure",{id:r,type:"end"})}function I(P,V,L){var X,U;return!(!V.visible||!V.enabled||!L.visible||!((X=P.state)!=null&&X.visible)||((U=P.temporaryState)==null?void 0:U.visible)===!1||vt(P)&&!P.mediaVisible)}const M=P=>h.emit("click",{event:P,target:"TagContent",tag:d}),D=P=>h.emit("click",{event:P,target:"TagContent",tag:d});return n.$$set=P=>{"withAnimation"in P&&e(0,c=P.withAnimation),"tag"in P&&e(1,d=P.tag),"hooks"in P&&e(2,h=P.hooks),"renderMap"in P&&e(3,u=P.renderMap),"state"in P&&e(6,m=P.state),"mediaStore"in P&&e(7,A=P.mediaStore),"temporaryState"in P&&e(8,p=P.temporaryState)},n.$$.update=()=>{var P,V,L,X,U,N,H,_,Q,F,J;n.$$.dirty&2&&e(12,i=(P=d.state)==null?void 0:P.unfolded),n.$$.dirty&2&&e(11,s=(V=d.state)==null?void 0:V.visible),n.$$.dirty&322&&e(13,o=m.visible&&p.visible&&((L=d.state)==null?void 0:L.visible)),n.$$.dirty&2&&(r=d.id),n.$$.dirty&322&&e(5,a=!I(d,m,p)),n.$$.dirty&8192&&y(o),n.$$.dirty&7682&&d.hooks&&(i!==void 0&&i!==v&&(e(10,v=i),i?(U=(X=d.hooks).emit)==null||U.call(X,"unfolded"):(H=d==null?void 0:(N=d.hooks).emit)==null||H.call(N,"folded")),s!==void 0&&s!==g&&(e(9,g=s),s?(Q=(_=d.hooks).emit)==null||Q.call(_,"show"):(J=(F=d.hooks).emit)==null||J.call(F,"hide"))),n.$$.dirty&2&&e(4,l=(()=>!(typeof d.config.unfoldedConfig=="object"&&d.config.unfoldedConfig.keep==="folded"))())},[c,d,h,u,l,a,m,A,p,g,v,s,i,o,M,D]}let qu=class extends le{constructor(t){super(),ae(this,t,dP,cP,oe,{withAnimation:0,tag:1,hooks:2,renderMap:3,state:6,mediaStore:7,temporaryState:8},$I)}};function hP(n){ue(n,"svelte-7aiuwz",'@charset "UTF-8";.tag-point-click-helper.svelte-7aiuwz.svelte-7aiuwz{position:absolute;pointer-events:auto;cursor:pointer;width:calc(100% + 0.75rem);height:calc(100% + 0.75rem);left:50%;top:50%;transform:translate(-50%, -50%)}.tag-point-wrapper.svelte-7aiuwz.svelte-7aiuwz{pointer-events:none;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.tag-folded-point.svelte-7aiuwz.svelte-7aiuwz,.tag-unfolded-point.svelte-7aiuwz.svelte-7aiuwz{transition:all 0.5s}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{display:flex;justify-content:center;align-items:center;position:absolute;width:100%;height:100%;border-radius:50%}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:0.3125rem;height:0.3125rem;border-radius:50%;background-color:white}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz:before{content:"";position:absolute;width:0.875rem;height:0.875rem;border-radius:50%;background-color:rgba(0, 0, 0, 0.2)}.tag-point-wrapper.folded.svelte-7aiuwz .tag-folded-point.svelte-7aiuwz{opacity:1;scale:1}.tag-point-wrapper.folded.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{opacity:0;scale:1}.tag-point-wrapper.unfolded.svelte-7aiuwz .tag-folded-point.svelte-7aiuwz{opacity:0;scale:0.2}.tag-point-wrapper.unfolded.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{opacity:1;scale:1}')}function uP(n){let t,e,i,s,o,r,a,l,c,d,h,u;return s=new Wt({props:{center:!0,blurRadius:15,spreadRadius:5,opacity:.3}}),c=new Ju({props:{icon:n[2],width:n[1]}}),c.$on("iconLoaded",n[7]),{c(){t=S("div"),e=S("div"),i=$(),ne(s.$$.fragment),o=$(),r=S("div"),a=$(),l=S("div"),ne(c.$$.fragment),w(e,"class","tag-point-click-helper svelte-7aiuwz"),w(r,"class","tag-unfolded-point svelte-7aiuwz"),z(r,"transition-delay",(n[3]?n[5]:0)+"ms"),w(l,"class","tag-folded-point svelte-7aiuwz"),z(l,"transition-delay",(n[3]?n[5]:0)+"ms"),w(t,"class","tag-point-wrapper svelte-7aiuwz"),K(t,"unfolded",n[0]),K(t,"folded",n[3])},m(m,A){B(m,t,A),x(t,e),x(t,i),te(s,t,null),x(t,o),x(t,r),x(t,a),x(t,l),te(c,l,null),d=!0,h||(u=be(e,"click",n[4]),h=!0)},p(m,[A]){A&8&&z(r,"transition-delay",(m[3]?m[5]:0)+"ms");const p={};A&4&&(p.icon=m[2]),A&2&&(p.width=m[1]),c.$set(p),A&8&&z(l,"transition-delay",(m[3]?m[5]:0)+"ms"),(!d||A&1)&&K(t,"unfolded",m[0]),(!d||A&8)&&K(t,"folded",m[3])},i(m){d||(k(s.$$.fragment,m),k(c.$$.fragment,m),d=!0)},o(m){j(s.$$.fragment,m),j(c.$$.fragment,m),d=!1},d(m){m&&O(t),ie(s),ie(c),h=!1,u()}}}function fP(n,t,e){let i,s,o,r;const a=fi("hooks");let{tag:l}=t,c,d=!1;const h=()=>{c!==void 0&&clearTimeout(c),d=!0,c=setTimeout(()=>{d=!1},800)},u=p=>{d||a.emit("click",{event:p,target:"TagPoint",tag:l})},m=(()=>l.contentType==="Text"&&l.data.appearance==="plane"?500:800)();function A(p){xn.call(this,n,p)}return n.$$set=p=>{"tag"in p&&e(6,l=p.tag)},n.$$.update=()=>{var p,g,v,y;n.$$.dirty&64&&e(0,i=(p=l.state)==null?void 0:p.unfolded),n.$$.dirty&1&&e(3,s=!i),n.$$.dirty&64&&e(2,o=(v=(g=l.style)==null?void 0:g.point)!=null&&v.url?(y=l.style)==null?void 0:y.point:{url:ab}),n.$$.dirty&64&&e(1,r=(()=>{var D,P,V,L;const I=(P=(D=l.style)==null?void 0:D.point)==null?void 0:P.width;if(typeof I=="number")return I;const M=(L=(V=l.style)==null?void 0:V.point)==null?void 0:L.size;if(typeof M=="number")return M;if(M==="S")return 18;if(M==="M")return 20;if(M==="L")return 24;if(M==="XL")return 28})())},h(),[i,r,o,s,u,m,l,A]}class mP extends le{constructor(t){super(),ae(this,t,fP,uP,oe,{tag:6},hP)}}function gP(n){ue(n,"svelte-pzwdws",".tag.withAnimation.svelte-pzwdws{transition:opacity 0.3s linear}.tag.hide.svelte-pzwdws{opacity:0;pointer-events:none}.tag.hide.svelte-pzwdws *{pointer-events:none !important}.tag.unClickable.svelte-pzwdws{pointer-events:none !important}.tag.unClickable.svelte-pzwdws *{pointer-events:none !important}.tag.disable.svelte-pzwdws{display:none}.wrapper.svelte-pzwdws{position:absolute;width:0rem;height:0rem;overflow:visible;pointer-events:auto}")}function pP(n){let t;return{c(){t=S("div"),w(t,"data-info","tag point is disable")},m(e,i){B(e,t,i)},p:q,i:q,o:q,d(e){e&&O(t)}}}function AP(n){let t,e;return t=new mP({props:{tag:n[1]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=i[1]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function vP(n){let t;return{c(){t=S("div"),w(t,"data-info","tag content is disable")},m(e,i){B(e,t,i)},p:q,i:q,o:q,d(e){e&&O(t)}}}function bP(n){let t,e;return t=new qu({props:{mediaStore:n[2],withAnimation:n[0],tag:We(n[1]),hooks:n[15],state:n[4],temporaryState:n[5],renderMap:n[3]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&4&&(o.mediaStore=i[2]),s&1&&(o.withAnimation=i[0]),s&2&&(o.tag=We(i[1])),s&16&&(o.state=i[4]),s&32&&(o.temporaryState=i[5]),s&8&&(o.renderMap=i[3]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){j(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function yP(n){let t,e,i,s,o,r,a,l,c,d;const h=[AP,pP],u=[];function m(v,y){return v[14]?0:1}i=m(n),s=u[i]=h[i](n);const A=[bP,vP],p=[];function g(v,y){return v[13]?0:1}return r=g(n),a=p[r]=A[r](n),{c(){t=S("div"),e=S("div"),s.c(),o=$(),a.c(),w(e,"class",l=Qe(at("wrapper",n[1].className?`${n[1].className}__wrapper`:void 0))+" svelte-pzwdws"),w(e,"data-tag-unfolded",n[6]),w(e,"data-tag-id",n[12]),w(e,"data-content-type",c=n[1].contentType),z(e,"left",n[9]),z(e,"top",n[8]),w(t,"class","tag svelte-pzwdws"),w(t,"data-tag-id",n[12]),K(t,"unClickable",n[1].config.clickable===!1),K(t,"disable",n[11]),K(t,"hide",n[10]),K(t,"withAnimation",n[0]),z(t,"z-index",n[7])},m(v,y){B(v,t,y),x(t,e),u[i].m(e,null),x(e,o),p[r].m(e,null),d=!0},p(v,[y]){let I=i;i=m(v),i===I?u[i].p(v,y):(de(),j(u[I],1,1,()=>{u[I]=null}),he(),s=u[i],s?s.p(v,y):(s=u[i]=h[i](v),s.c()),k(s,1),s.m(e,o));let M=r;r=g(v),r===M?p[r].p(v,y):(de(),j(p[M],1,1,()=>{p[M]=null}),he(),a=p[r],a?a.p(v,y):(a=p[r]=A[r](v),a.c()),k(a,1),a.m(e,null)),(!d||y&2&&l!==(l=Qe(at("wrapper",v[1].className?`${v[1].className}__wrapper`:void 0))+" svelte-pzwdws"))&&w(e,"class",l),(!d||y&64)&&w(e,"data-tag-unfolded",v[6]),(!d||y&4096)&&w(e,"data-tag-id",v[12]),(!d||y&2&&c!==(c=v[1].contentType))&&w(e,"data-content-type",c),y&512&&z(e,"left",v[9]),y&256&&z(e,"top",v[8]),(!d||y&4096)&&w(t,"data-tag-id",v[12]),(!d||y&2)&&K(t,"unClickable",v[1].config.clickable===!1),(!d||y&2048)&&K(t,"disable",v[11]),(!d||y&1024)&&K(t,"hide",v[10]),(!d||y&1)&&K(t,"withAnimation",v[0]),y&128&&z(t,"z-index",v[7])},i(v){d||(k(s),k(a),d=!0)},o(v){j(s),j(a),d=!1},d(v){v&&O(t),u[i].d(),p[r].d()}}}function wP(n,t,e){let i,s,o,r,a,l,c,d,h,{withAnimation:u=!1}=t,{tag:m}=t,{mediaStore:A}=t,{renderMap:p=new Map}=t,{state:g}=t,{temporaryState:v}=t;const y=fi("hooks");return n.$$set=I=>{"withAnimation"in I&&e(0,u=I.withAnimation),"tag"in I&&e(1,m=I.tag),"mediaStore"in I&&e(2,A=I.mediaStore),"renderMap"in I&&e(3,p=I.renderMap),"state"in I&&e(4,g=I.state),"temporaryState"in I&&e(5,v=I.temporaryState)},n.$$.update=()=>{var I,M,D,P,V,L,X,U;n.$$.dirty&2&&e(14,i=(()=>{var N,H;return!(((H=(N=m.style)==null?void 0:N.point)==null?void 0:H.enabled)===!1||m.contentType==="Sticker"||m.contentType==="Link"||m.contentType==="VRLink"||m.contentType==="PanoLink"||m.contentType==="Audio"&&m.data.appearance==="plane")})()),n.$$.dirty&2&&e(13,s=(()=>m.stickType==="2DPoint")()),n.$$.dirty&2&&e(12,o=m.id),n.$$.dirty&2&&e(11,r=!((I=m.screenPosition)!=null&&I.leftPercent)||!((M=m.screenPosition)!=null&&M.topPercent)||m.enabled===!1||!m.state),n.$$.dirty&2&&e(10,a=!((D=m.state)!=null&&D.visible)||((P=m.temporaryState)==null?void 0:P.visible)===!1),n.$$.dirty&2&&e(6,l=(V=m.state)==null?void 0:V.unfolded),n.$$.dirty&2&&e(9,c=((L=m.screenPosition)==null?void 0:L.leftPercent)+"%"),n.$$.dirty&2&&e(8,d=((X=m.screenPosition)==null?void 0:X.topPercent)+"%"),n.$$.dirty&66&&e(7,h=((U=m.zIndex)!=null?U:0)+(l?1e4:0))},[u,m,A,p,g,v,l,h,d,c,a,r,o,s,i,y]}class CP extends le{constructor(t){super(),ae(this,t,wP,yP,oe,{withAnimation:0,tag:1,mediaStore:2,renderMap:3,state:4,temporaryState:5},gP)}}function IP(n){ue(n,"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 $d(n,t,e){const i=n.slice();return i[7]=t[e],i}function eh(n){let t,e=[],i=new Map,s,o=Pe(n[1]);const r=a=>a[7].id;for(let a=0;a<o.length;a+=1){let l=$d(n,o,a),c=r(l);i.set(c,e[a]=th(c,l))}return{c(){t=S("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","tag--container svelte-uq11d5"),K(t,"hide",!n[4].visible||!n[5].visible),K(t,"withAnimation",n[0])},m(a,l){B(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,l){l&63&&(o=Pe(a[1]),de(),e=Ot(e,l,r,1,a,o,i,t,bi,th,null,$d),he()),(!s||l&48)&&K(t,"hide",!a[4].visible||!a[5].visible),(!s||l&1)&&K(t,"withAnimation",a[0])},i(a){if(!s){for(let l=0;l<o.length;l+=1)k(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)j(e[l]);s=!1},d(a){a&&O(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function th(n,t){let e,i,s;return i=new CP({props:{state:t[4],temporaryState:t[5],withAnimation:t[0],tag:t[7],mediaStore:t[2],renderMap:t[3]}}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(o,r){B(o,e,r),te(i,o,r),s=!0},p(o,r){t=o;const a={};r&16&&(a.state=t[4]),r&32&&(a.temporaryState=t[5]),r&1&&(a.withAnimation=t[0]),r&2&&(a.tag=t[7]),r&4&&(a.mediaStore=t[2]),r&8&&(a.renderMap=t[3]),i.$set(a)},i(o){s||(k(i.$$.fragment,o),s=!0)},o(o){j(i.$$.fragment,o),s=!1},d(o){o&&O(e),ie(i,o)}}}function PP(n){let t,e,i=n[4].enabled&&eh(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),B(s,t,o),e=!0},p(s,[o]){s[4].enabled?i?(i.p(s,o),o&16&&k(i,1)):(i=eh(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),j(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){j(i),e=!1},d(s){s&&O(t),i&&i.d(s)}}}function EP(n,t,e){let{withAnimation:i=!1}=t,{tags:s=[]}=t,{hooks:o}=t,{mediaStore:r}=t,{renderMap:a}=t,{state:l}=t,{temporaryState:c}=t;return Xr("hooks",o),n.$$set=d=>{"withAnimation"in d&&e(0,i=d.withAnimation),"tags"in d&&e(1,s=d.tags),"hooks"in d&&e(6,o=d.hooks),"mediaStore"in d&&e(2,r=d.mediaStore),"renderMap"in d&&e(3,a=d.renderMap),"state"in d&&e(4,l=d.state),"temporaryState"in d&&e(5,c=d.temporaryState)},[i,s,r,a,l,c,o]}class MP extends le{constructor(t){super(),ae(this,t,EP,PP,oe,{withAnimation:0,tags:1,hooks:6,mediaStore:2,renderMap:3,state:4,temporaryState:5},IP)}}const kP=new pf.GLTFLoader;function xP(n){return new Promise((t,e)=>{function i(o){t(o)}function s(o){e(o)}kP.load(n,i,void 0,s)})}const DP=new Map,SP=new Map;class TP extends j1{constructor(e){super(e);f(this,"group",new R.Group);f(this,"renderMap",new Map);f(this,"imagePlaneGroup",new R.Group);f(this,"gltfObjectGroup",new R.Group);f(this,"enabledModelTagSet",new Set);f(this,"temporaryState",{visible:!0});f(this,"TagContainerSvelte");f(this,"loadModel",e=>W(this,null,function*(){var a;const i=e.data.modelUrl;if(!i)return;const s=xP(i).then(l=>{var h,u,m,A,p;const c=Object.assign(l.scene,{customID:e.id,isTagModel:!0,removeEventListener:this.addObjectClickHandler(e,l.scene,g=>{this.hooks.emit("click",{target:"TagModel",tag:e,event:g})})});return c.visible=this.getCurrentVisibleState(e),new R.Matrix4().fromArray(e.matrix).decompose(c.position,c.quaternion,c.scale),c.updateWorldMatrix(!0,!0),c.visible=this.getVisibleByFiveMode(e),(m=(u=(h=this.config)==null?void 0:h.globalConfig)==null?void 0:u.modelConfig)!=null&&m.autoLookAtEnabled&&((p=(A=e.config)==null?void 0:A.modelConfig)!=null&&p.autoLookAtEnabled)&&c.lookAt(this.five.camera.position.clone().setY(c.position.y)),c});e.model={promise:s};const o=yield s;if(((a=e.model)==null?void 0:a.promise)!==s||!this.tags.includes(e))return;e.model.object=o;const r=this.gltfObjectGroup.children.find(l=>l.customID===e.id);if(r&&(this.gltfObjectGroup.remove(r),r.removeEventListener()),this.updateRender3DDomTag(),vt(e)){if(this.getRenderType(e)==="Mesh"&&!e.mediaPlane){const l=e.data.mediaPosition.map(Et);e.mediaPlane=new _c(e.data.mediaData[0].url,e.data.mediaPosition.map(Et),{objectFit:e.data.objectFit});const c=new R.Vector3().addVectors(l[0],l[2]).divideScalar(2);e.mediaPlane.position.copy(c),o.add(e.mediaPlane)}this.getRenderType(e)!=="Mesh"&&(o.updateTagCss3DObjectMatrix=()=>this.updateTagCss3DObjectMatrix(e,o),o.updateTagCss3DObjectMatrix())}return this.gltfObjectGroup.add(o),o}));this.group.name="PanoTagPluginModelGroup",this.gltfObjectGroup.name="PanoTagPluginGLTFObjectGroup",this.imagePlaneGroup.name="ImagePlaneGroup",this.group.add(this.gltfObjectGroup),this.group.add(this.imagePlaneGroup)}registerRenderer(e,i){this.renderMap.set(e,{renderer:i})}clearTags(){this.tags.forEach(e=>{var i,s;(s=(i=e.mediaPlane)==null?void 0:i.parent)==null||s.remove(e.mediaPlane)}),this.tags=[],this.enabledModelTagSet.clear(),this.clearCache(),this.disposeAllCSS3DContainer(),this.updateRenderAllTags()}updateRenderAllTags(){this.enabledModelTagSet.clear(),this.tags.forEach(e=>e.stickType==="Model"&&this.enabledModelTagSet.add(e.id)),this.updateRenderPointTag(),this.updateRender3DDomTag(),this.updateRenderModelTag(),this.updateRenderImagePlane(),this.updateRenderVideoPlane()}updateRenderVideoPlane(){this.sort(this.filterImagePlane).filter(i=>{var s,o;return((o=(s=i.data.mediaData)==null?void 0:s[0])==null?void 0:o.type)==="Video"}).forEach(i=>{var h,u,m,A,p;const s=i.data.mediaData[0];if(!s)return;const{url:o}=s;if(!o)return;i.mediaPlane&&!((u=(h=i.state)==null?void 0:h.visible)==null||u)&&i.mediaPlane instanceof aa&&i.mediaPlane.pause();const r=i.position.map(Et),a=this.getCurrentVisibleState(i),l=(()=>!!(i.mediaPlane&&!a))(),c=(()=>!!(!i.mediaPlane&&a))(),d=(()=>!!(i.mediaPlane&&i.mediaPlane.src!==o))();if((l||d)&&(i.mediaPlane&&this.imagePlaneGroup.remove(i.mediaPlane),(m=i.mediaPlane)==null||m.dispose(),(A=i.mediaPlane)==null||A.removeFromParent(),i.mediaPlane=void 0),c||d){const g=new aa(o,r,{videoCoverSrc:s.videoCoverUrl,playButton:i.data.playIcon,paused:!((p=i.data.autoplayConfig)!=null&&p.autoplayVideo),objectFit:i.data.objectFit,videoTextureMap:DP,ImageTextureMap:SP,domEvents:this.domEvents});g.onVideoReady=y=>{y.addEventListener("play",()=>this.mediaStore.set({currentMediaElement:g.videoInstance}))};const v=y=>(this.five.on("renderFrame",y),()=>this.five.off("renderFrame",y));g.initialRenderHooks(v),i.mediaPlane=g,this.imagePlaneGroup.add(i.mediaPlane)}})}updateRenderImagePlane(){this.sort(this.filterImagePlane).filter(i=>{var s,o;return((o=(s=i.data.mediaData)==null?void 0:s[0])==null?void 0:o.type)==="Image"}).forEach(i=>{var d,h;const{url:s}=i.data.mediaData[0];if(!s)return;const o=i.position.map(Et),r=this.getCurrentVisibleState(i),a=(()=>!!(i.mediaPlane&&!r))(),l=(()=>!!(!i.mediaPlane&&r))(),c=(()=>!!(i.mediaPlane&&i.mediaPlane.src!==s))();(a||c)&&(i.mediaPlane&&this.imagePlaneGroup.remove(i.mediaPlane),(d=i.mediaPlane)==null||d.dispose(),(h=i.mediaPlane)==null||h.removeFromParent(),i.mediaPlane=void 0),(l||c)&&(i.mediaPlane=new _c(s,o,{objectFit:i.data.objectFit}),i.config.clickable!==!1&&this.domEvents.addAutoBindEventListener(i.mediaPlane,"click",u=>{this.hooks.emit("click",{tag:i,target:"TagContent",event:u.origDomEvent})}),this.imagePlaneGroup.add(i.mediaPlane))})}updateRender3DDomTag(){this.sort([...this.filterCSS3DTag]).forEach(i=>{var s,o,r,a;if(i.tag3DContentSvelte){const{svelteApp:l,css3DInstance:c,initialNormal:d,currentNormal:h}=i.tag3DContentSvelte;if(l.$set({tag:i,hooks:this.hooks,state:this.state,temporaryState:this.temporaryState}),!d.equals(h)){const u=new R.Quaternion().setFromUnitVectors(d,h);c.css3DObject.setRotationFromQuaternion(u)}return}else{if(vt(i)&&!((s=i.model)!=null&&s.object)||((o=i.state)==null?void 0:o.visible)===!1||!this.state.visible||!this.state.enabled)return;if(this.css3DRenderPlugin||(this.css3DRenderPlugin=Aa(this.five)),i.stickType==="3DPoint"&&!i.normal)return console.error("updateRenderPlaneTag: 三维点标签缺少法向量!");const l=this.getPositions(i);if(!l)return;const c=this.getTagNormal(i);if(!c)return;const h=(r=this.getTagConfig(i).tag3DConfig)!=null?r:{};if(this.getRenderType(i)==="BehindDom"){h.mode="behind",h.container=document.createElement("div");const A="black";h.container.style.backgroundColor=A,h.container.style.border=`3px solid ${A}`,this.css3DRenderPlugin.hooks.on("render",()=>{var p;if(u.css3DObject.opacityMesh){const g=this.addObjectClickHandler(i,u.css3DObject.opacityMesh,v=>{this.hooks.emit("click",{event:v,target:"TagContent",tag:i})});(p=this.store.css3DRenderDisposer.get(i.id))==null||p.push(g)}})}const u=this.css3DRenderPlugin.create3DDomContainer(l,h);if(!u)return;this.store.css3DRenderDisposer.set(i.id,[u.dispose]);const m=new qu({target:u.container,props:{tag:i,hooks:this.hooks,state:this.state,mediaStore:this.mediaStore,temporaryState:this.temporaryState}});i.tag3DContentSvelte={svelteApp:m,domContainer:u,css3DInstance:u,initialNormal:c,currentNormal:c,dispose:()=>{m.$destroy(),u.dispose()}},vt(i)&&((a=i.model)!=null&&a.object)&&this.updateTagCss3DObjectMatrix(i,i.model.object)}}),this.clearUnusedPanelTag()}updateRenderModelTag(){const e=o=>!this.enabledModelTagSet.has(o.customID),i=this.gltfObjectGroup.children.filter(e);i.forEach(o=>o.removeEventListener()),this.gltfObjectGroup.remove(...i),this.tags.filter(o=>o.stickType==="Model").forEach(o=>{var r;(r=o.model)==null||r.promise.then(a=>{a.visible=this.getCurrentVisibleState(o)})}),this.five.needsRender=!0}updateTagModelVisible(){this.tags.forEach(e=>{var i;e.mediaPlane&&(e.mediaPlane.visible=this.getCurrentVisibleState(e)),(i=e.model)!=null&&i.object&&(e.model.object.visible=this.getCurrentVisibleState(e))})}updateTagCss3DObjectMatrix(e,i){var p,g,v;const s=(g=(p=e.config.tag3DConfig)==null?void 0:p.ratio)!=null?g:.00216,o=(v=e.tag3DContentSvelte)==null?void 0:v.css3DInstance.css3DObject;if(!o)return;const r=vt(e)?e.data.mediaPosition:e.position;if(!r||r.length!==4||!Array.isArray(r[0])||!Array.isArray(r[2]))return;i.updateWorldMatrix(!1,!1);const a=i.matrixWorld,l=new R.Vector3().fromArray(r[0]),c=new R.Vector3().fromArray(r[2]),d=Ai(l,c).add(new R.Vector3(0,0,5e-4)),h=new R.Matrix4().setPosition(d),u=new R.Matrix4().makeScale(s,s,s),m=new R.Matrix4().multiply(a).multiply(h).multiply(u);m.decompose(o.position,o.quaternion,o.scale);const A=o.opacityMesh;A&&m.decompose(A.position,A.quaternion,A.scale)}addMediaModelTag(e){return W(this,null,function*(){const i=e.filter(u1).map(s=>this.loadModel(s));yield Promise.all(i),this.setModelMedialVisible(),this.updateRenderAllTags()})}updateRenderPointTag(){var i;const e=this.filterPointTag;if(this.setTagZIndex(e),this.setPointTagPosition(),this.TagContainerSvelte)this.TagContainerSvelte.$set({tags:e,state:this.state,temporaryState:this.temporaryState});else{const s=(i=this.five.getElement())==null?void 0:i.parentElement;if(!s)return console.error("updateRenderPlaneTag: tag2DContainer not found");this.TagContainerSvelte=new MP({target:s,props:{hooks:this.hooks,tags:e,state:this.state,temporaryState:this.temporaryState,mediaStore:this.mediaStore,renderMap:this.renderMap}})}}updateTagContainerVisible(){var e;(e=this.TagContainerSvelte)==null||e.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation}),this.filterCSS3DTag.forEach(i=>{var s,o,r,a,l;(a=(o=(s=i.tag3DContentSvelte)==null?void 0:s.css3DInstance)==null?void 0:o.css3DObject)==null||a.setVisible((this.state.visible&&((r=i.state)==null?void 0:r.visible))!==!1),(l=i.tag3DContentSvelte)==null||l.svelteApp.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation})})}disposeAllCSS3DContainer(){for(const[,e]of this.store.css3DRenderDisposer)e==null||e.forEach(i=>i==null?void 0:i());this.store.css3DRenderDisposer=new Map}clearUnusedPanelTag(){this.filter2DPointTag.forEach(e=>{var i;(i=e.tag3DContentSvelte)==null||i.css3DInstance.dispose(),e.tag3DContentSvelte=void 0});for(const[e,i]of this.store.css3DRenderDisposer){const s=this.getTagById(e);(!s||s.stickType==="2DPoint")&&(i==null||i.forEach(o=>o==null?void 0:o()),this.store.css3DRenderDisposer.delete(e))}}}const Ku="Dnalogel-PanoTagPlugin",LP=n=>`${Ku}--${n}`;class go extends TP{constructor(e,i){super(e);f(this,"state",{enabled:!0,visible:!0});f(this,"params");f(this,"debug");f(this,"changeTagModel",(e,i)=>W(this,null,function*(){e.data=Fe({},e.data,i),yield this.loadModel(e),this.updateRenderAllTags()}));f(this,"handleFiveInitAnimationEnded",()=>{const e=this.five.getCurrentState().mode;this.tags.forEach(i=>{vt(i)&&e==="Panorama"&&this.changeTagMode(i,"front"),i.state.visible=this.getVisible(i)}),this.updateRenderAllTags()});f(this,"handleFiveModelShownFloorChange",()=>{this.tags.forEach(e=>{var s,o;const i=this.getTagConfig(e).visibleConfig;typeof i=="object"&&((s=i.visibleFiveMode)!=null&&s.includes("Floorplan")||(o=i.visibleFiveMode)!=null&&o.includes("Mapview"))&&(e.state.visible=this.getVisibleByFiveMode(e))}),this.updateRenderAllTags()});this.params=Fe({},{debug:!1,config:this.config},G({},i)),this.debug=this.params.debug,this.config=this.params.config,w1(1,{namespace:Na.PlayAudio});try{const s=window;Array.isArray(s.__PANOTAGPLUGIN_DEBUG_LIST__)||(s.__PANOTAGPLUGIN_DEBUG_LIST__=[]),s.__PANOTAGPLUGIN_DEBUG_LIST__.push(this),s.__PANOTAGPLUGIN_DEBUG__=this}catch(s){}}load(e,i){return W(this,null,function*(){var o,r;this.clearTags(),console.debug(Ku," load:",{data:JSON.parse(JSON.stringify(e))}),this.config=Fe({},this.config,{globalConfig:(o=e.globalConfig)!=null?o:{},contentTypeConfig:(r=e.contentTypeConfig)!=null?r:{}});const s=yield this.addTag(e.tagList,i);if(this.debug)try{a1(this.five,this.tags)}catch(a){console.error(a)}return s})}addTag(e,i){return W(this,null,function*(){const o=(Array.isArray(e)?e:[e]).map(r=>{var d,h,u;const a=this.getTagConfig(r),l=JSON.parse(JSON.stringify(r.data));return r.config=a,ve(G({},r),{enabled:(d=r.enabled)!=null?d:!0,id:(h=r.id)!=null?h:lt(),data:(u=a.initialData)!=null&&u.important?Fe(r.data,l,a.initialData):Fe(r.data,a.initialData,l),state:G({visible:void 0,unfolded:!this.can("fold",r)},a.initialState),hooks:new je.Subscribe,initialConfig:r.config,config:a,unfold:()=>this.changeUnfoldedById(r.id,!0),fold:()=>this.changeUnfoldedById(r.id,!1),enable:()=>this.changeEnabledById(r.id,!0),disable:()=>this.changeEnabledById(r.id,!1),destroy:()=>this.destroyTagById(r.id),changeData:m=>this.changeDataById(r.id,m)})}).filter(r=>r.position);return o.forEach(b1),this.tags.push(...o),m1(this.five).then(()=>W(this,null,function*(){var r,a,l;this.store.eventListenerDisposer&&((a=(r=this.store).eventListenerDisposer)==null||a.call(r)),this.state.enabled&&this.handleEnable(),this.addResizeListener(),this.clearUnusedPanelTag(),this.setVisibleAndUnfolded({withAnimation:(l=i==null?void 0:i.withAnimation)!=null?l:!0}).then(()=>this.updateRenderAllTags()),this.updateRenderAllTags(),yield this.addMediaModelTag(o)}))})}changeConfig(e,i=!0){i?this.config=Fe({},this.config,e):this.config=e,this.updateTagConfig(),this.updateRenderAllTags()}changeGlobalConfig(e,i=!0){i?this.config.globalConfig=Fe({},this.config.globalConfig,e):this.config.globalConfig=e,this.updateTagConfig(),this.updateRenderAllTags()}changeContentTypeConfig(e,i,s=!0){this.config.contentTypeConfig||(this.config.contentTypeConfig={}),s?this.config.contentTypeConfig[e]=Fe({},this.config.contentTypeConfig[e],i):this.config.contentTypeConfig[e]=i,this.updateTagConfig(),this.updateRenderAllTags()}show(e){return W(this,null,function*(){if(this.checkDisposed())return;const{userAction:i=!0,withAnimation:s=!1}=e!=null?e:{};this.setState({visible:!0},{userAction:i,visibleWithAnimation:s}),this.hooks.emit("show",{userAction:i,withAnimation:s})})}hide(e){return W(this,null,function*(){if(this.checkDisposed())return;const{userAction:i=!0,withAnimation:s=!1}=e!=null?e:{};this.setState({visible:!1},{userAction:i,visibleWithAnimation:s}),this.hooks.emit("hide",{userAction:i,withAnimation:s})})}enable(e){if(this.checkDisposed())return;const{userAction:i=!0}=e!=null?e:{};this.setState({enabled:!0},{userAction:i}),this.hooks.emit("enable",{userAction:i})}disable(e){if(this.checkDisposed())return;const{userAction:i=!0}=e!=null?e:{};this.setState({enabled:!1},{userAction:i}),this.hooks.emit("disable",{userAction:i})}setState(e,i){if(this.checkDisposed())return;const{userAction:s=!0,visibleWithAnimation:o=!1}=i,r=G({},this.state);this.state=Object.assign(this.state,e),this.store.visibleWithAnimation=o,r.visible!==this.state.visible&&(e.visible?this.handleShow():this.handleHide()),r.enabled!==this.state.enabled&&(e.enabled?this.handleEnable():this.handleDisable()),this.hooks.emit("stateChange",{state:this.state,prevState:r,userAction:s})}dispose(){var e,i,s,o,r,a;this.pauseCurrentMedia(),this.disposeAllCSS3DContainer(),(e=this.TagContainerSvelte)==null||e.$destroy(),this.filterCSS3DTag.forEach(l=>{var c;return(c=l.tag3DContentSvelte)==null?void 0:c.svelteApp.$destroy()}),this.tags=[],(i=this.store.disposers)==null||i.forEach(l=>l==null?void 0:l()),this.store.disposers=[],(o=(s=this.store).eventListenerDisposer)==null||o.call(s),this.store.eventListenerDisposer=void 0,(a=(r=this.store).resizeObserverDisposer)==null||a.call(r),this.store.resizeObserverDisposer=void 0,this.store.resizeObserverDisposerAdding=!1,this.five.scene.remove(this.group),this.group.remove(...this.group.children),this.gltfObjectGroup.remove(...this.gltfObjectGroup.children),this.imagePlaneGroup.remove(...this.imagePlaneGroup.children),this.clearCache(),this.five.needsRender=!0,this.store.disposed=!0,this.hooks.emit("dispose")}changeUnfoldedById(e,i){var a;const s=this.getTagById(e);if(!s)return;const o=this.can("fold",s),r=this.can("unfold",s);if(o&&r){s.state.unfolded=i;const l=this.filterPointTag;(a=this.TagContainerSvelte)==null||a.$set({tags:l})}else console.warn(`tag ${e} cannot be ${i?"unfolded":"folded"}`)}changeEnabledById(e,i){const s=this.getTagById(e);s&&(s.enabled=i,this.updateRenderAllTags())}changeTagNormalById(e,i){const s=this.getTagById(e);s&&s.tag3DContentSvelte&&(s.tag3DContentSvelte.currentNormal=Et(i))}changeDataById(e,i,s=!0){const o=this.getTagById(e);let r=!1;o&&(o.data&&(r=!0),s?o.data=Fe(o.data,i):o.data=G(G({},o.data),i),this.clearUnusedPanelTag(),this.updateRenderAllTags(),r&&o.hooks.emit("dataChanged",o.data))}changeStickTypeById(e,i,s=!0){this.changeTagById(e,i,s)}changeTagById(e,i,s=!0){const o=this.getTagById(e);let r=!1;i&&(i.data&&(r=!0),s?Fe(o,i):Object.assign(o,i),o!=null&&o.tag3DContentSvelte&&(i!=null&&i.normal)&&(o.tag3DContentSvelte.currentNormal=Et(i.normal)),this.updateRenderAllTags(),this.clearUnusedPanelTag(),r&&o.hooks.emit("dataChanged",o.data))}destroyTagById(e){(Array.isArray(e)?e:[e]).forEach(s=>{const o=this.tags.findIndex(r=>r.id===s);o!==-1&&this.tags.splice(o,1)}),this.updateRenderAllTags()}setVisibleAndUnfolded(){return W(this,arguments,function*({withAnimation:e}={withAnimation:!1}){if(this.isPanorama)return this.setVisible(),e?new Promise(i=>{setTimeout(()=>{this.setUnfoldedByPanoIndex(),i()},10)}):(this.setUnfoldedByPanoIndex(),Promise.resolve())})}handleShow(){this.state.visible=!0,this.group.visible=!0,this.updateTagContainerVisible(),this.updateTagModelVisible(),this.five.needsRender=!0}handleHide(){this.pauseCurrentMedia(),this.state.visible=!1,this.group.visible=!1,this.updateTagContainerVisible(),this.updateTagModelVisible(),this.five.needsRender=!0}handleEnable(){this.state.enabled=!0,this.store.eventListenerDisposer=this.addEventListener(),this.five.scene.children.includes(this.group)||this.five.scene.add(this.group),this.group.traverse(e=>{var i;(i=e==null?void 0:e.updateTagCss3DObjectMatrix)==null||i.call(e)}),this.updateRenderAllTags(),this.five.needsRender=!0}handleDisable(){var e,i,s;this.pauseCurrentMedia(),this.state.enabled=!1,(i=(e=this.store).eventListenerDisposer)==null||i.call(e),this.five.scene.remove(this.group),(s=this.TagContainerSvelte)==null||s.$set({tags:[]}),this.filterCSS3DTag.forEach(o=>{var r;(r=o.tag3DContentSvelte)==null||r.dispose(),o.tag3DContentSvelte=void 0}),this.five.needsRender=!0}addEventListener(){const{five:e,hooks:i}=this,s=this.handleFiveWantsMoveToPano.bind(this),o=this.handleFiveModeChange.bind(this),r=this.handleFiveCameraUpdate.bind(this),a=this.handleFiveCameraUpdateDebounce(),l=this.handleFivePanoArrived.bind(this),c=this.loadVideoFirstFrame.bind(this),d=this.clickhandler.bind(this),h=this.five.currentMode;return h&&this.handleFiveModeChange(h),this.handleFivePanoArrived(),e.on("wantsMoveToPano",s),e.on("modeChange",o),e.on("initAnimationEnded",this.handleFiveInitAnimationEnded),e.on("modelShownFloorChange",this.handleFiveModelShownFloorChange),e.on("cameraUpdate",r),e.on("cameraUpdate",a),e.on("panoArrived",l),e.on("panoArrived",c),i.on("click",d),()=>{e.off("wantsMoveToPano",s),e.off("modeChange",o),e.off("initAnimationEnded",this.handleFiveInitAnimationEnded),e.off("modelShownFloorChange",this.handleFiveModelShownFloorChange),e.off("cameraUpdate",r),e.off("cameraUpdate",a),e.off("panoArrived",l),e.off("panoArrived",c),i.off("click",d),this.store.eventListenerDisposer=void 0}}addResizeListener(){if(!this.store.resizeObserverDisposer&&!this.store.resizeObserverDisposerAdding){const e=this.addResizeObserver();this.store.resizeObserverDisposerAdding=!0,setTimeout(()=>{this.store.resizeObserverDisposer=e,this.store.resizeObserverDisposerAdding=!1},200)}}addResizeObserver(){if(!this.store.disposed)return;const e=this.five.getElement(),i=()=>{this.state.enabled&&(this.show(),this.updateRenderAllTags())},s=()=>{this.state.enabled&&this.hide()},{observe:o,unobserve:r}=Hc(A1(()=>{this.store.resizeObserverDisposer&&s()},500),e),{observe:a,unobserve:l}=Hc(Nc(()=>i(),400),e);return o(),a(),()=>{r(),l()}}handleFiveModeChange(e){this.setModelMedialVisible(),this.tags.forEach(i=>{vt(i)&&e!=="Panorama"&&this.changeTagMode(i,"behind"),i.state.visible=this.getVisible(i)}),this.updateRenderAllTags()}handleFiveWantsMoveToPano(e){this.tags.forEach(i=>{this.getVisible(i,{panoIndex:e})&&(i.state.visible=!0);const o=this.getTagConfig(i);typeof o.visibleConfig=="object"&&(o.visibleConfig.keep?i.temporaryState.visible=o.visibleConfig.keep==="visible":i.temporaryState.visible=!!o.visibleConfig.alwaysShowWhenMovePano)}),this.updateTagContainerVisible(),this.updateRenderImagePlane(),this.updateRenderVideoPlane()}clickhandler(e){if(e.target!=="TagPoint")return;if(!e.tag.state)return console.warn("Clickhandler: params.tag.state is undefined");const i=this.can("fold",e.tag),s=this.can("unfold",e.tag);i&&s&&(e.tag.state.unfolded=!e.tag.state.unfolded,e.tag.state.unfolded&&this.tags.forEach(o=>{o.id!==e.tag.id&&o.state&&this.can("fold",o)&&(o.state.unfolded=!1)}),this.updateRenderAllTags())}handleFiveCameraUpdateDebounce(){return Nc(()=>{this.setUnfoldedByCamera(),this.updateRenderAllTags()},100)}handleFiveCameraUpdate(){this.updateRenderPointTag()}handleFivePanoArrived(){return W(this,null,function*(){var e,i,s;this.setModelMedialVisible(),yield this.setVisibleAndUnfolded(),this.tags.forEach(o=>{o.temporaryState=ve(G({},o.temporaryState),{visible:!0})}),(s=(i=(e=this.config)==null?void 0:e.globalConfig)==null?void 0:i.modelConfig)!=null&&s.autoLookAtEnabled&&this.tags.filter(h1).filter(o=>{var r,a;return(a=(r=o.config)==null?void 0:r.modelConfig)==null?void 0:a.autoLookAtEnabled}).forEach(o=>{var u;const r=new E.Mesh(new E.BoxGeometry,new E.MeshBasicMaterial),a=(u=o.model)==null?void 0:u.object;if(!a)return;r.position.copy(a.position),r.quaternion.copy(a.quaternion);const l=this.five.camera.position;r.lookAt(l.clone().setY(r.position.y));const c=a.quaternion.clone(),d=r.quaternion.clone(),h=Ao();h.onUpdate(({progress:m})=>{a.quaternion.copy(c.clone().slerp(d,m))}),h.play()}),this.store.visibleWithAnimation=!0,this.updateTagContainerVisible(),this.updateRenderAllTags()})}setUnfoldedByCamera(){let e=!1;this.tags.forEach(i=>{const s=this.getUnfoldedByCamera(i);i.state&&s!==void 0&&(s===!0&&(e=!0),i.state.unfolded=s)}),e&&this.tags.forEach(i=>{const s=this.getTagConfig(i).unfoldedConfig;typeof s=="object"&&(s.autoUnfold||s.keep)||i.state&&(i.state.unfolded=!1)})}changeTagMode(e,i){var s,o,r,a,l,c;((s=e.config)==null?void 0:s.renderType)!=="Mesh"&&((a=(r=(o=e.tag3DContentSvelte)==null?void 0:o.css3DInstance)==null?void 0:r.css3DObject)==null?void 0:a.mode)!==i&&((l=e.config)!=null&&l.tag3DConfig?e.config.tag3DConfig.mode=i:e.config?e.config.tag3DConfig={mode:i}:e.config={tag3DConfig:{mode:i}},(c=this.store.css3DRenderDisposer.get(e.id))==null||c.forEach(d=>d==null?void 0:d()),e.tag3DContentSvelte=void 0)}}const jP=(n,t)=>new go(n,t);function zP(n){ue(n,"svelte-4qjwer",".guide-line__tag.svelte-4qjwer.svelte-4qjwer{position:relative}.text-with-distance.svelte-4qjwer.svelte-4qjwer{display:flex;flex-direction:column;position:relative;padding:0.125rem 0.25rem;border-radius:0.125rem;background:linear-gradient(to top, rgba(147, 147, 147, 0.3), rgba(74, 74, 74, 0.3));box-shadow:0 0.125rem 0.5rem 0 rgba(0, 0, 0, 0.2)}.text-with-distance.svelte-4qjwer .border.svelte-4qjwer{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;padding:0.0625rem;border-radius:0.25rem;background:linear-gradient(to right, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.2));-webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:xor;transform:scale(0.5)}.distance-and-name.svelte-4qjwer.svelte-4qjwer{display:flex;gap:0.1875rem}.distance.svelte-4qjwer.svelte-4qjwer{white-space:nowrap;font-size:0.625rem;line-height:0.875rem;color:#66afff}.name.svelte-4qjwer.svelte-4qjwer{opacity:0.6;font-size:0.625rem;line-height:0.875rem;white-space:nowrap;color:#ffffff}.line-name.svelte-4qjwer.svelte-4qjwer{color:#fff;white-space:nowrap;font-size:0.625rem;line-height:0.875rem}.guide-line__tag-point.svelte-4qjwer.svelte-4qjwer{position:absolute;left:50%;bottom:0.0625rem;width:0.4375rem;height:0.125rem;transform:translateX(-50%);background:#fff;border-radius:50%;opacity:0.5}.guide-line__tag-line.svelte-4qjwer.svelte-4qjwer{position:absolute;left:50%;bottom:0.0625rem;width:0.0625rem;height:1.875rem;transform:translateX(-50%);background:linear-gradient(to top, #fff, rgba(255, 255, 255, 0))}.guide-line__tag-content.svelte-4qjwer.svelte-4qjwer{position:absolute;left:-0.9375rem;bottom:1.9375rem;display:flex}.guide-line__tag-icon.svelte-4qjwer.svelte-4qjwer{width:1.875rem;height:1.875rem;background-size:100%}.guide-line__tag-text.svelte-4qjwer.svelte-4qjwer{box-sizing:content-box;height:0.875rem;width:-moz-max-content;width:max-content;margin-top:0.3125rem;transform:translateX(-0.1875rem);white-space:nowrap;font-size:0.625rem;line-height:0.875rem;border:solid transparent;border-width:0.125rem 0.5rem 0.125rem 0.375rem;border-image-slice:6 25 6 18 fill;color:#fff}")}function ih(n){let t,e;return{c(){t=S("div"),e=xe(n[0]),w(t,"class","guide-line__tag-text svelte-4qjwer"),z(t,"border-image-source",`url(${n[6]})`)},m(i,s){B(i,t,s),x(t,e)},p(i,s){s&1&&Se(e,i[0])},d(i){i&&O(t)}}}function nh(n){let t,e,i,s,o=n[5]("全程")+"",r,a,l=n[5]("米")+"",c,d,h,u,m,A,p=n[4]&&sh(n);return{c(){t=S("div"),p&&p.c(),e=$(),i=S("div"),s=S("span"),r=xe(o),a=xe(n[2]),c=xe(l),d=$(),h=S("span"),u=xe(n[0]),m=$(),A=S("div"),w(s,"class","distance svelte-4qjwer"),w(h,"class","name svelte-4qjwer"),w(i,"class","distance-and-name svelte-4qjwer"),w(A,"class","border svelte-4qjwer"),w(t,"class","text-with-distance svelte-4qjwer")},m(g,v){B(g,t,v),p&&p.m(t,null),x(t,e),x(t,i),x(i,s),x(s,r),x(s,a),x(s,c),x(i,d),x(i,h),x(h,u),x(t,m),x(t,A)},p(g,v){g[4]?p?p.p(g,v):(p=sh(g),p.c(),p.m(t,e)):p&&(p.d(1),p=null),v&32&&o!==(o=g[5]("全程")+"")&&Se(r,o),v&4&&Se(a,g[2]),v&32&&l!==(l=g[5]("米")+"")&&Se(c,l),v&1&&Se(u,g[0])},d(g){g&&O(t),p&&p.d()}}}function sh(n){let t,e;return{c(){t=S("span"),e=xe(n[4]),w(t,"class","line-name svelte-4qjwer")},m(i,s){B(i,t,s),x(t,e)},p(i,s){s&16&&Se(e,i[4])},d(i){i&&O(t)}}}function OP(n){let t,e,i,s,o,r,a,l,c,d=n[0]&&!n[2]&&ih(n),h=n[2]&&nh(n);return{c(){t=S("div"),e=S("div"),i=$(),s=S("div"),o=$(),r=S("div"),a=S("div"),l=$(),d&&d.c(),c=$(),h&&h.c(),w(e,"class","guide-line__tag-point svelte-4qjwer"),w(s,"class","guide-line__tag-line svelte-4qjwer"),w(a,"class","guide-line__tag-icon svelte-4qjwer"),z(a,"background-image",`url(${n[1]})`),w(r,"class","guide-line__tag-content svelte-4qjwer"),w(t,"class","guide-line__tag svelte-4qjwer"),z(t,"opacity",n[3])},m(u,m){B(u,t,m),x(t,e),x(t,i),x(t,s),x(t,o),x(t,r),x(r,a),x(r,l),d&&d.m(r,null),x(r,c),h&&h.m(r,null)},p(u,[m]){m&2&&z(a,"background-image",`url(${u[1]})`),u[0]&&!u[2]?d?d.p(u,m):(d=ih(u),d.c(),d.m(r,c)):d&&(d.d(1),d=null),u[2]?h?h.p(u,m):(h=nh(u),h.c(),h.m(r,null)):h&&(h.d(1),h=null),m&8&&z(t,"opacity",u[3])},i:q,o:q,d(u){u&&O(t),d&&d.d(),h&&h.d()}}}function BP(n,t,e){let{text:i=""}=t,{icon_url:s=""}=t,{distance:o=0}=t,{opacity:r=1}=t,{name:a=""}=t,{i18n:l=d=>d}=t;const c="data:image/png;base64,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";return n.$$set=d=>{"text"in d&&e(0,i=d.text),"icon_url"in d&&e(1,s=d.icon_url),"distance"in d&&e(2,o=d.distance),"opacity"in d&&e(3,r=d.opacity),"name"in d&&e(4,a=d.name),"i18n"in d&&e(5,l=d.i18n)},[i,s,o,r,a,l,c]}class VP extends le{constructor(t){super(),ae(this,t,BP,OP,oe,{text:0,icon_url:1,distance:2,opacity:3,name:4,i18n:5},zP)}}function RP(n){return n.length===0?[]:n.filter((t,e)=>t!==n[e-1])}const QP=`
582
+ width var(--sc-dot-size-animation-time) ease;cursor:pointer;-webkit-tap-highlight-color:transparent;height:var(--sc-dot-size);width:var(--sc-dot-size)}.sc-carousel-dot__dot.svelte-1mgyhhn:hover{opacity:0.9}.sc-carousel-dot__dot_active.svelte-1mgyhhn{opacity:0.7;height:var(--sc-active-dot-size);width:var(--sc-active-dot-size)}`)}function Ey(n){let t,e,i;return{c(){t=D("button"),w(t,"class","sc-carousel-button sc-carousel-dot__dot svelte-1mgyhhn"),K(t,"sc-carousel-dot__dot_active",n[0])},m(s,o){O(s,t,o),e||(i=be(t,"click",n[1]),e=!0)},p(s,[o]){o&1&&K(t,"sc-carousel-dot__dot_active",s[0])},i:q,o:q,d(s){s&&z(t),e=!1,i()}}}function My(n,t,e){let{active:i=!1}=t;function s(o){xn.call(this,n,o)}return n.$$set=o=>{"active"in o&&e(0,i=o.active)},[i,s]}class ky extends le{constructor(t){super(),ae(this,t,My,Ey,oe,{active:0},Py)}}function xy(n){ue(n,"svelte-670fde",".sc-carousel-dots__container.svelte-670fde{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;padding:0 30px}.sc-carousel-dots__dot-container.svelte-670fde{height:calc(var(--sc-dot-size) + 14px);width:calc(var(--sc-dot-size) + 10px);display:flex;align-items:center;justify-content:center}")}function sd(n,t,e){const i=n.slice();return i[5]=t[e],i[7]=e,i}function od(n,t){let e,i,s,o;function r(){return t[3](t[7])}return i=new ky({props:{active:t[1]===t[7]}}),i.$on("click",r),{key:n,first:null,c(){e=D("div"),ne(i.$$.fragment),s=$(),w(e,"class","sc-carousel-dots__dot-container svelte-670fde"),this.first=e},m(a,l){O(a,e,l),te(i,e,null),x(e,s),o=!0},p(a,l){t=a;const c={};l&3&&(c.active=t[1]===t[7]),i.$set(c)},i(a){o||(k(i.$$.fragment,a),o=!0)},o(a){T(i.$$.fragment,a),o=!1},d(a){a&&z(e),ie(i)}}}function Dy(n){let t,e=[],i=new Map,s,o=Pe(Array(n[0]));const r=a=>a[7];for(let a=0;a<o.length;a+=1){let l=sd(n,o,a),c=r(l);i.set(c,e[a]=od(c,l))}return{c(){t=D("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","sc-carousel-dots__container svelte-670fde")},m(a,l){O(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,[l]){l&7&&(o=Pe(Array(a[0])),de(),e=Ot(e,l,r,1,a,o,i,t,bi,od,null,sd),he())},i(a){if(!s){for(let l=0;l<o.length;l+=1)k(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)T(e[l]);s=!1},d(a){a&&z(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function Sy(n,t,e){const i=Co();let{pagesCount:s=1}=t,{currentPageIndex:o=0}=t;function r(l){i("pageChange",l)}const a=l=>r(l);return n.$$set=l=>{"pagesCount"in l&&e(0,s=l.pagesCount),"currentPageIndex"in l&&e(1,o=l.currentPageIndex)},[s,o,r,a]}class Ty extends le{constructor(t){super(),ae(this,t,Sy,Dy,oe,{pagesCount:0,currentPageIndex:1},xy)}}const wn="prev",pi="next";function Ly(n){ue(n,"svelte-1bftafx",":root{--sc-arrow-size:2px}.sc-carousel-arrow__circle.svelte-1bftafx{width:20px;height:20px;border-radius:50%;background-color:var(--sc-color-rgb-light-50p);display:flex;align-items:center;justify-content:center;transition:opacity 100ms ease;cursor:pointer;-webkit-tap-highlight-color:transparent}.sc-carousel-arrow__circle.svelte-1bftafx:hover{opacity:0.9}.sc-carousel-arrow__arrow.svelte-1bftafx{border:solid var(--sc-color-hex-dark);border-width:0 var(--sc-arrow-size) var(--sc-arrow-size) 0;padding:var(--sc-arrow-size);position:relative}.sc-carousel-arrow__arrow-next.svelte-1bftafx{transform:rotate(-45deg);left:calc(var(--sc-arrow-size) / -2)}.sc-carousel-arrow__arrow-prev.svelte-1bftafx{transform:rotate(135deg);right:calc(var(--sc-arrow-size) / -2)}.sc-carousel-arrow__circle_disabled.svelte-1bftafx,.sc-carousel-arrow__circle_disabled.svelte-1bftafx:hover{opacity:0.5}")}function jy(n){let t,e,i,s;return{c(){t=D("button"),e=D("i"),w(e,"class","sc-carousel-arrow__arrow svelte-1bftafx"),K(e,"sc-carousel-arrow__arrow-next",n[0]===pi),K(e,"sc-carousel-arrow__arrow-prev",n[0]===wn),w(t,"class","sc-carousel-button sc-carousel-arrow__circle svelte-1bftafx"),K(t,"sc-carousel-arrow__circle_disabled",n[1])},m(o,r){O(o,t,r),x(t,e),i||(s=be(t,"click",n[2]),i=!0)},p(o,[r]){r&1&&K(e,"sc-carousel-arrow__arrow-next",o[0]===pi),r&1&&K(e,"sc-carousel-arrow__arrow-prev",o[0]===wn),r&2&&K(t,"sc-carousel-arrow__circle_disabled",o[1])},i:q,o:q,d(o){o&&z(t),i=!1,s()}}}function zy(n,t,e){let{direction:i=pi}=t,{disabled:s=!1}=t;function o(r){xn.call(this,n,r)}return n.$$set=r=>{"direction"in r&&e(0,i=r.direction),"disabled"in r&&e(1,s=r.disabled)},[i,s,o]}class zu extends le{constructor(t){super(),ae(this,t,zy,jy,oe,{direction:0,disabled:1},Ly)}}function Oy(n){ue(n,"svelte-i7yfid",".sc-carousel-progress__indicator.svelte-i7yfid{height:100%;background-color:var(--sc-color-hex-dark-50p)}")}function By(n){let t;return{c(){t=D("div"),w(t,"class","sc-carousel-progress__indicator svelte-i7yfid"),j(t,"width",n[0]+"%")},m(e,i){O(e,t,i)},p(e,[i]){i&1&&j(t,"width",e[0]+"%")},i:q,o:q,d(e){e&&z(t)}}}const rd=100;function Vy(n,t,e){let i,{value:s=0}=t;return n.$$set=o=>{"value"in o&&e(1,s=o.value)},n.$$.update=()=>{n.$$.dirty&2&&e(0,i=Math.min(Math.max(s*rd,0),rd))},[i,s]}class Ry extends le{constructor(t){super(),ae(this,t,Vy,By,oe,{value:1},Oy)}}function Qy(n,t){n.addEventListener("mousedown",t),n.addEventListener("touchstart",t,{passive:!0})}function Gy(n,t){n.removeEventListener("mousedown",t),n.removeEventListener("touchstart",t)}function Ny(n,t){n.addEventListener("mouseup",t),n.addEventListener("touchend",t)}function ad(n,t){n.removeEventListener("mouseup",t),n.removeEventListener("touchend",t)}function Hy(n,t){n.addEventListener("mousemove",t),n.addEventListener("touchmove",t)}function ld(n,t){n.removeEventListener("mousemove",t),n.removeEventListener("touchmove",t)}function Fa(n){return function(t,e){n.dispatchEvent(new CustomEvent(t,{detail:e}))}}const _y=110,Fy=9,Wy=111,Yy=20;function zr(n){if("TouchEvent"in window&&n instanceof TouchEvent){const t=n.touches[0];return{x:t?t.clientX:0,y:t?t.clientY:0}}return{x:n.clientX,y:n.clientY}}function Uy(n,{thresholdProvider:t}){const e=Fa(n);let i,s,o=0,r,a=!1;function l(){return Date.now()-r>=Wy&&Math.abs(o)>=Yy}function c(u){r=Date.now(),o=0,a=!0;const m=zr(u);i=m.x,s=m.y,e("swipeStart",{x:i,y:s}),Hy(window,d),Ny(window,h)}function d(u){if(!a)return;const m=zr(u),A=m.x-i,p=m.y-s;i=m.x,s=m.y,e("swipeMove",{x:i,y:s,dx:A,dy:p}),A!==0&&Math.sign(A)!==Math.sign(o)&&(o=0),o+=A,Math.abs(o)>t()&&(e("swipeThresholdReached",{direction:o>0?wn:pi}),ad(window,h),ld(window,d))}function h(u){if(ad(window,h),ld(window,d),a=!1,!l()){e("swipeFailed");return}const m=zr(u);e("swipeEnd",{x:m.x,y:m.y})}return Qy(n,c),{destroy(){Gy(n,c)}}}function Xy(n,t){n.addEventListener("mouseenter",t)}function Zy(n,t){n.removeEventListener("mouseenter",t)}function Jy(n,t){n.addEventListener("mouseleave",t)}function cd(n,t){n.removeEventListener("mouseleave",t)}function qy(n){const t=Fa(n);function e(){Jy(n,i),t("hovered",{value:!0})}function i(){t("hovered",{value:!1}),cd(n,i)}return Xy(n,e),{destroy(){Zy(n,e),cd(n,i)}}}const Ky=(n,t)=>{const e=t.x-n.x,i=t.y-n.y;return Math.sqrt(e*e+i*i)};function dn(n,t,e){return Math.max(n,Math.min(t,e))}function $y(n,t){n.addEventListener("touchstart",t,{passive:!0})}function ew(n,t){n.removeEventListener("touchstart",t)}function tw(n,t){n.addEventListener("touchend",t)}function dd(n,t){n.removeEventListener("touchend",t)}function iw(n){const t=Fa(n);let e=0,i={x:0,y:0};function s({tapEndedAt:a,tapEndedPos:l}){const c=a-e,d=Ky(i,l);return c<=_y&&d<=Fy}function o(a){e=Date.now();const l=a.touches[0];i={x:l.clientX,y:l.clientY},tw(n,r)}function r(a){dd(n,r);const l=a.changedTouches[0];s({tapEndedAt:Date.now(),tapEndedPos:{x:l.clientX,y:l.clientY}})&&t("tapped")}return $y(n,o),{destroy(){ew(n,o),dd(n,r)}}}function nw({currentParticleIndex:n,particlesCount:t,clonesCountHead:e,clonesCountTotal:i,particlesToScroll:s}){return n===t-e?0:n===0?Ou({particlesCountWithoutClones:t-i,particlesToScroll:s})-1:Math.floor((n-e)/s)}function sw({currentParticleIndex:n,particlesToScroll:t}){return Math.ceil(n/t)}function ow({currentParticleIndex:n,particlesCount:t,clonesCountHead:e,clonesCountTotal:i,infinite:s,particlesToScroll:o}){return s?nw({currentParticleIndex:n,particlesCount:t,clonesCountHead:e,clonesCountTotal:i,particlesToScroll:o}):sw({currentParticleIndex:n,particlesToScroll:o})}function Ou({particlesCountWithoutClones:n,particlesToScroll:t}){return Math.ceil(n/t)}function rw({particlesCountWithoutClones:n,particlesToScroll:t,particlesToShow:e}){const i=Bu({particlesCountWithoutClones:n,particlesToScroll:t,particlesToShow:e});return Math.ceil(n/t)-i}function aw({infinite:n,particlesCountWithoutClones:t,particlesToScroll:e,particlesToShow:i}){return n?Ou({particlesCountWithoutClones:t,particlesToScroll:e}):rw({particlesCountWithoutClones:t,particlesToScroll:e,particlesToShow:i})}function lw({pageIndex:n,clonesCountHead:t,clonesCountTail:e,particlesToScroll:i,particlesCount:s}){return dn(0,Math.min(t+n*i,s-e),s-1)}function cw({pageIndex:n,particlesToScroll:t,particlesCount:e,particlesToShow:i}){return dn(0,Math.min(n*t,e-i),e-1)}function Or({infinite:n,pageIndex:t,clonesCountHead:e,clonesCountTail:i,particlesToScroll:s,particlesCount:o,particlesToShow:r}){return n?lw({pageIndex:t,clonesCountHead:e,clonesCountTail:i,particlesToScroll:s,particlesCount:o}):cw({pageIndex:t,particlesToScroll:s,particlesCount:o,particlesToShow:r})}function dw({particlesContainerChildren:n,particleWidth:t}){for(let e=0;e<n.length;e++)n[e].style.minWidth=`${t}px`,n[e].style.maxWidth=`${t}px`}function Bu({particlesToScroll:n,particlesToShow:t,particlesCountWithoutClones:e}){const i=n-t;let s=t;for(;;){const o=e-s-i;if(o<t)return Math.max(o,0);s+=t+i}}function hw(n){return new ResizeObserver(t=>{n({width:t[0].contentRect.width})})}function uw({clonesCountHead:n,clonesCountTail:t,particlesContainerChildren:e}){const i=[];for(let r=0;r<t;r++)i.push(e[r].cloneNode(!0));const s=[],o=e.length;for(let r=o-1;r>o-1-n;r--)s.push(e[r].cloneNode(!0));return{clonesToAppend:i,clonesToPrepend:s}}function fw({particlesContainer:n,clonesToAppend:t,clonesToPrepend:e}){for(let i=0;i<t.length;i++)n.append(t[i]);for(let i=0;i<e.length;i++)n.prepend(e[i])}function mw({infinite:n,particlesToShow:t,partialPageSize:e}){const i=n?{head:Math.ceil(e||t),tail:Math.ceil(t)}:{head:0,tail:0};return ve(G({},i),{total:i.head+i.tail})}const ss=(n,t,e)=>{if(n&&n.hasOwnProperty(t))return n[t];if(e===void 0)throw new Error(`Required arg "${t}" was not provided`);return e},la=n=>t=>{n[t]&&n[t]()};var gw="Expected a function",Vu="__lodash_hash_undefined__",Ru=1/0,pw="[object Function]",Aw="[object GeneratorFunction]",vw="[object Symbol]",bw=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,yw=/^\w*$/,ww=/^\./,Cw=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Iw=/[\\^$.*+?()[\]{}|]/g,Pw=/\\(\\)?/g,Ew=/^\[object .+?Constructor\]$/,Mw=typeof Mt=="object"&&Mt&&Mt.Object===Object&&Mt,kw=typeof self=="object"&&self&&self.Object===Object&&self,Wa=Mw||kw||Function("return this")();function xw(n,t){return n==null?void 0:n[t]}function Dw(n){var t=!1;if(n!=null&&typeof n.toString!="function")try{t=!!(n+"")}catch(e){}return t}var Sw=Array.prototype,Tw=Function.prototype,Qu=Object.prototype,Br=Wa["__core-js_shared__"],hd=function(){var n=/[^.]+$/.exec(Br&&Br.keys&&Br.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),Gu=Tw.toString,Ya=Qu.hasOwnProperty,Nu=Qu.toString,Lw=RegExp("^"+Gu.call(Ya).replace(Iw,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ud=Wa.Symbol,jw=Sw.splice,zw=Hu(Wa,"Map"),as=Hu(Object,"create"),fd=ud?ud.prototype:void 0,md=fd?fd.toString:void 0;function Bi(n){var t=-1,e=n?n.length:0;for(this.clear();++t<e;){var i=n[t];this.set(i[0],i[1])}}function Ow(){this.__data__=as?as(null):{}}function Bw(n){return this.has(n)&&delete this.__data__[n]}function Vw(n){var t=this.__data__;if(as){var e=t[n];return e===Vu?void 0:e}return Ya.call(t,n)?t[n]:void 0}function Rw(n){var t=this.__data__;return as?t[n]!==void 0:Ya.call(t,n)}function Qw(n,t){var e=this.__data__;return e[n]=as&&t===void 0?Vu:t,this}Bi.prototype.clear=Ow;Bi.prototype.delete=Bw;Bi.prototype.get=Vw;Bi.prototype.has=Rw;Bi.prototype.set=Qw;function Tn(n){var t=-1,e=n?n.length:0;for(this.clear();++t<e;){var i=n[t];this.set(i[0],i[1])}}function Gw(){this.__data__=[]}function Nw(n){var t=this.__data__,e=So(t,n);if(e<0)return!1;var i=t.length-1;return e==i?t.pop():jw.call(t,e,1),!0}function Hw(n){var t=this.__data__,e=So(t,n);return e<0?void 0:t[e][1]}function _w(n){return So(this.__data__,n)>-1}function Fw(n,t){var e=this.__data__,i=So(e,n);return i<0?e.push([n,t]):e[i][1]=t,this}Tn.prototype.clear=Gw;Tn.prototype.delete=Nw;Tn.prototype.get=Hw;Tn.prototype.has=_w;Tn.prototype.set=Fw;function Ri(n){var t=-1,e=n?n.length:0;for(this.clear();++t<e;){var i=n[t];this.set(i[0],i[1])}}function Ww(){this.__data__={hash:new Bi,map:new(zw||Tn),string:new Bi}}function Yw(n){return To(this,n).delete(n)}function Uw(n){return To(this,n).get(n)}function Xw(n){return To(this,n).has(n)}function Zw(n,t){return To(this,n).set(n,t),this}Ri.prototype.clear=Ww;Ri.prototype.delete=Yw;Ri.prototype.get=Uw;Ri.prototype.has=Xw;Ri.prototype.set=Zw;function So(n,t){for(var e=n.length;e--;)if(rC(n[e][0],t))return e;return-1}function Jw(n,t){t=eC(t,n)?[t]:$w(t);for(var e=0,i=t.length;n!=null&&e<i;)n=n[sC(t[e++])];return e&&e==i?n:void 0}function qw(n){if(!Fu(n)||iC(n))return!1;var t=aC(n)||Dw(n)?Lw:Ew;return t.test(oC(n))}function Kw(n){if(typeof n=="string")return n;if(Xa(n))return md?md.call(n):"";var t=n+"";return t=="0"&&1/n==-Ru?"-0":t}function $w(n){return _u(n)?n:nC(n)}function To(n,t){var e=n.__data__;return tC(t)?e[typeof t=="string"?"string":"hash"]:e.map}function Hu(n,t){var e=xw(n,t);return qw(e)?e:void 0}function eC(n,t){if(_u(n))return!1;var e=typeof n;return e=="number"||e=="symbol"||e=="boolean"||n==null||Xa(n)?!0:yw.test(n)||!bw.test(n)||t!=null&&n in Object(t)}function tC(n){var t=typeof n;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?n!=="__proto__":n===null}function iC(n){return!!hd&&hd in n}var nC=Ua(function(n){n=cC(n);var t=[];return ww.test(n)&&t.push(""),n.replace(Cw,function(e,i,s,o){t.push(s?o.replace(Pw,"$1"):i||e)}),t});function sC(n){if(typeof n=="string"||Xa(n))return n;var t=n+"";return t=="0"&&1/n==-Ru?"-0":t}function oC(n){if(n!=null){try{return Gu.call(n)}catch(t){}try{return n+""}catch(t){}}return""}function Ua(n,t){if(typeof n!="function"||t&&typeof t!="function")throw new TypeError(gw);var e=function(){var i=arguments,s=t?t.apply(this,i):i[0],o=e.cache;if(o.has(s))return o.get(s);var r=n.apply(this,i);return e.cache=o.set(s,r),r};return e.cache=new(Ua.Cache||Ri),e}Ua.Cache=Ri;function rC(n,t){return n===t||n!==n&&t!==t}var _u=Array.isArray;function aC(n){var t=Fu(n)?Nu.call(n):"";return t==pw||t==Aw}function Fu(n){var t=typeof n;return!!n&&(t=="object"||t=="function")}function lC(n){return!!n&&typeof n=="object"}function Xa(n){return typeof n=="symbol"||lC(n)&&Nu.call(n)==vw}function cC(n){return n==null?"":Kw(n)}function dC(n,t,e){var i=n==null?void 0:Jw(n,t);return i===void 0?e:i}var Hs=dC,mo={},hC={get exports(){return mo},set exports(n){mo=n}};(function(n,t){var e=200,i="__lodash_hash_undefined__",s=9007199254740991,o="[object Arguments]",r="[object Array]",a="[object Boolean]",l="[object Date]",c="[object Error]",d="[object Function]",h="[object GeneratorFunction]",u="[object Map]",m="[object Number]",A="[object Object]",p="[object Promise]",g="[object RegExp]",v="[object Set]",y="[object String]",I="[object Symbol]",M="[object WeakMap]",B="[object ArrayBuffer]",P="[object DataView]",V="[object Float32Array]",L="[object Float64Array]",X="[object Int8Array]",Y="[object Int16Array]",N="[object Int32Array]",H="[object Uint8Array]",_="[object Uint8ClampedArray]",Q="[object Uint16Array]",F="[object Uint32Array]",J=/[\\^$.*+?()[\]{}|]/g,Z=/\w*$/,ee=/^\[object .+?Constructor\]$/,ce=/^(?:0|[1-9]\d*)$/,se={};se[o]=se[r]=se[B]=se[P]=se[a]=se[l]=se[V]=se[L]=se[X]=se[Y]=se[N]=se[u]=se[m]=se[A]=se[g]=se[v]=se[y]=se[I]=se[H]=se[_]=se[Q]=se[F]=!0,se[c]=se[d]=se[M]=!1;var we=typeof Mt=="object"&&Mt&&Mt.Object===Object&&Mt,Ce=typeof self=="object"&&self&&self.Object===Object&&self,pe=we||Ce||Function("return this")(),Ve=t&&!t.nodeType&&t,Ae=Ve&&!0&&n&&!n.nodeType&&n,Ye=Ae&&Ae.exports===Ve;function fe(b,C){return b.set(C[0],C[1]),b}function ye(b,C){return b.add(C),b}function ze(b,C){for(var S=-1,U=b?b.length:0;++S<U&&C(b[S],S,b)!==!1;);return b}function me(b,C){for(var S=-1,U=C.length,Ie=b.length;++S<U;)b[Ie+S]=C[S];return b}function Ke(b,C,S,U){var Ie=-1,ge=b?b.length:0;for(U&&ge&&(S=b[++Ie]);++Ie<ge;)S=C(S,b[Ie],Ie,b);return S}function dt(b,C){for(var S=-1,U=Array(b);++S<b;)U[S]=C(S);return U}function ke(b,C){return b==null?void 0:b[C]}function nt(b){var C=!1;if(b!=null&&typeof b.toString!="function")try{C=!!(b+"")}catch(S){}return C}function re(b){var C=-1,S=Array(b.size);return b.forEach(function(U,Ie){S[++C]=[Ie,U]}),S}function Me(b,C){return function(S){return b(C(S))}}function _e(b){var C=-1,S=Array(b.size);return b.forEach(function(U){S[++C]=U}),S}var mt=Array.prototype,Yt=Function.prototype,yt=Object.prototype,wt=pe["__core-js_shared__"],Re=function(){var b=/[^.]+$/.exec(wt&&wt.keys&&wt.keys.IE_PROTO||"");return b?"Symbol(src)_1."+b:""}(),Ne=Yt.toString,Je=yt.hasOwnProperty,xt=yt.toString,Ln=RegExp("^"+Ne.call(Je).replace(J,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Bt=Ye?pe.Buffer:void 0,oi=pe.Symbol,wi=pe.Uint8Array,gt=Me(Object.getPrototypeOf,Object),Qi=Object.create,Gi=yt.propertyIsEnumerable,Oo=mt.splice,jn=Object.getOwnPropertySymbols,Ni=Bt?Bt.isBuffer:void 0,us=Me(Object.keys,Object),Hi=St(pe,"DataView"),Ci=St(pe,"Map"),Dt=St(pe,"Promise"),_i=St(pe,"Set"),zn=St(pe,"WeakMap"),Ii=St(Object,"create"),On=ht(Hi),Pi=ht(Ci),Bn=ht(Dt),Vn=ht(_i),Rn=ht(zn),ri=oi?oi.prototype:void 0,fs=ri?ri.valueOf:void 0;function Ut(b){var C=-1,S=b?b.length:0;for(this.clear();++C<S;){var U=b[C];this.set(U[0],U[1])}}function Bo(){this.__data__=Ii?Ii(null):{}}function Vo(b){return this.has(b)&&delete this.__data__[b]}function Ro(b){var C=this.__data__;if(Ii){var S=C[b];return S===i?void 0:S}return Je.call(C,b)?C[b]:void 0}function ms(b){var C=this.__data__;return Ii?C[b]!==void 0:Je.call(C,b)}function Qn(b,C){var S=this.__data__;return S[b]=Ii&&C===void 0?i:C,this}Ut.prototype.clear=Bo,Ut.prototype.delete=Vo,Ut.prototype.get=Ro,Ut.prototype.has=ms,Ut.prototype.set=Qn;function $e(b){var C=-1,S=b?b.length:0;for(this.clear();++C<S;){var U=b[C];this.set(U[0],U[1])}}function Qo(){this.__data__=[]}function Go(b){var C=this.__data__,S=Wi(C,b);if(S<0)return!1;var U=C.length-1;return S==U?C.pop():Oo.call(C,S,1),!0}function No(b){var C=this.__data__,S=Wi(C,b);return S<0?void 0:C[S][1]}function Ho(b){return Wi(this.__data__,b)>-1}function _o(b,C){var S=this.__data__,U=Wi(S,b);return U<0?S.push([b,C]):S[U][1]=C,this}$e.prototype.clear=Qo,$e.prototype.delete=Go,$e.prototype.get=No,$e.prototype.has=Ho,$e.prototype.set=_o;function st(b){var C=-1,S=b?b.length:0;for(this.clear();++C<S;){var U=b[C];this.set(U[0],U[1])}}function Fo(){this.__data__={hash:new Ut,map:new(Ci||$e),string:new Ut}}function Wo(b){return Mi(this,b).delete(b)}function Yo(b){return Mi(this,b).get(b)}function Uo(b){return Mi(this,b).has(b)}function Xo(b,C){return Mi(this,b).set(b,C),this}st.prototype.clear=Fo,st.prototype.delete=Wo,st.prototype.get=Yo,st.prototype.has=Uo,st.prototype.set=Xo;function pt(b){this.__data__=new $e(b)}function Zo(){this.__data__=new $e}function Jo(b){return this.__data__.delete(b)}function qo(b){return this.__data__.get(b)}function Ko(b){return this.__data__.has(b)}function $o(b,C){var S=this.__data__;if(S instanceof $e){var U=S.__data__;if(!Ci||U.length<e-1)return U.push([b,C]),this;S=this.__data__=new st(U)}return S.set(b,C),this}pt.prototype.clear=Zo,pt.prototype.delete=Jo,pt.prototype.get=qo,pt.prototype.has=Ko,pt.prototype.set=$o;function Fi(b,C){var S=_n(b)||Ui(b)?dt(b.length,String):[],U=S.length,Ie=!!U;for(var ge in b)(C||Je.call(b,ge))&&!(Ie&&(ge=="length"||fr(ge,U)))&&S.push(ge);return S}function gs(b,C,S){var U=b[C];(!(Je.call(b,C)&&ys(U,S))||S===void 0&&!(C in b))&&(b[C]=S)}function Wi(b,C){for(var S=b.length;S--;)if(ys(b[S][0],C))return S;return-1}function Vt(b,C){return b&&Hn(C,Wn(C),b)}function Gn(b,C,S,U,Ie,ge,De){var Te;if(U&&(Te=ge?U(b,Ie,ge,De):U(b)),Te!==void 0)return Te;if(!Qt(b))return b;var Ue=_n(b);if(Ue){if(Te=hr(b),!C)return lr(b,Te)}else{var Oe=Zt(b),ot=Oe==d||Oe==h;if(ws(b))return Yi(b,C);if(Oe==A||Oe==o||ot&&!ge){if(nt(b))return ge?b:{};if(Te=Rt(ot?{}:b),!C)return cr(b,Vt(Te,b))}else{if(!se[Oe])return ge?b:{};Te=ur(b,Oe,Gn,C)}}De||(De=new pt);var At=De.get(b);if(At)return At;if(De.set(b,Te),!Ue)var Ze=S?dr(b):Wn(b);return ze(Ze||b,function(rt,et){Ze&&(et=rt,rt=b[et]),gs(Te,et,Gn(rt,C,S,U,et,b,De))}),Te}function er(b){return Qt(b)?Qi(b):{}}function tr(b,C,S){var U=C(b);return _n(b)?U:me(U,S(b))}function ir(b){return xt.call(b)}function nr(b){if(!Qt(b)||gr(b))return!1;var C=Fn(b)||nt(b)?Ln:ee;return C.test(ht(b))}function sr(b){if(!vs(b))return us(b);var C=[];for(var S in Object(b))Je.call(b,S)&&S!="constructor"&&C.push(S);return C}function Yi(b,C){if(C)return b.slice();var S=new b.constructor(b.length);return b.copy(S),S}function Nn(b){var C=new b.constructor(b.byteLength);return new wi(C).set(new wi(b)),C}function Ei(b,C){var S=C?Nn(b.buffer):b.buffer;return new b.constructor(S,b.byteOffset,b.byteLength)}function ps(b,C,S){var U=C?S(re(b),!0):re(b);return Ke(U,fe,new b.constructor)}function As(b){var C=new b.constructor(b.source,Z.exec(b));return C.lastIndex=b.lastIndex,C}function or(b,C,S){var U=C?S(_e(b),!0):_e(b);return Ke(U,ye,new b.constructor)}function rr(b){return fs?Object(fs.call(b)):{}}function ar(b,C){var S=C?Nn(b.buffer):b.buffer;return new b.constructor(S,b.byteOffset,b.length)}function lr(b,C){var S=-1,U=b.length;for(C||(C=Array(U));++S<U;)C[S]=b[S];return C}function Hn(b,C,S,U){S||(S={});for(var Ie=-1,ge=C.length;++Ie<ge;){var De=C[Ie],Te=U?U(S[De],b[De],De,S,b):void 0;gs(S,De,Te===void 0?b[De]:Te)}return S}function cr(b,C){return Hn(b,Xt(b),C)}function dr(b){return tr(b,Wn,Xt)}function Mi(b,C){var S=b.__data__;return mr(C)?S[typeof C=="string"?"string":"hash"]:S.map}function St(b,C){var S=ke(b,C);return nr(S)?S:void 0}var Xt=jn?Me(jn,Object):Ar,Zt=ir;(Hi&&Zt(new Hi(new ArrayBuffer(1)))!=P||Ci&&Zt(new Ci)!=u||Dt&&Zt(Dt.resolve())!=p||_i&&Zt(new _i)!=v||zn&&Zt(new zn)!=M)&&(Zt=function(b){var C=xt.call(b),S=C==A?b.constructor:void 0,U=S?ht(S):void 0;if(U)switch(U){case On:return P;case Pi:return u;case Bn:return p;case Vn:return v;case Rn:return M}return C});function hr(b){var C=b.length,S=b.constructor(C);return C&&typeof b[0]=="string"&&Je.call(b,"index")&&(S.index=b.index,S.input=b.input),S}function Rt(b){return typeof b.constructor=="function"&&!vs(b)?er(gt(b)):{}}function ur(b,C,S,U){var Ie=b.constructor;switch(C){case B:return Nn(b);case a:case l:return new Ie(+b);case P:return Ei(b,U);case V:case L:case X:case Y:case N:case H:case _:case Q:case F:return ar(b,U);case u:return ps(b,U,S);case m:case y:return new Ie(b);case g:return As(b);case v:return or(b,U,S);case I:return rr(b)}}function fr(b,C){return C=C==null?s:C,!!C&&(typeof b=="number"||ce.test(b))&&b>-1&&b%1==0&&b<C}function mr(b){var C=typeof b;return C=="string"||C=="number"||C=="symbol"||C=="boolean"?b!=="__proto__":b===null}function gr(b){return!!Re&&Re in b}function vs(b){var C=b&&b.constructor,S=typeof C=="function"&&C.prototype||yt;return b===S}function ht(b){if(b!=null){try{return Ne.call(b)}catch(C){}try{return b+""}catch(C){}}return""}function bs(b){return Gn(b,!0,!0)}function ys(b,C){return b===C||b!==b&&C!==C}function Ui(b){return pr(b)&&Je.call(b,"callee")&&(!Gi.call(b,"callee")||xt.call(b)==o)}var _n=Array.isArray;function Xi(b){return b!=null&&Cs(b.length)&&!Fn(b)}function pr(b){return Is(b)&&Xi(b)}var ws=Ni||vr;function Fn(b){var C=Qt(b)?xt.call(b):"";return C==d||C==h}function Cs(b){return typeof b=="number"&&b>-1&&b%1==0&&b<=s}function Qt(b){var C=typeof b;return!!b&&(C=="object"||C=="function")}function Is(b){return!!b&&typeof b=="object"}function Wn(b){return Xi(b)?Fi(b):sr(b)}function Ar(){return[]}function vr(){return!1}n.exports=bs})(hC,mo);const uC=mo;var go={},fC={get exports(){return go},set exports(n){go=n}};(function(n,t){var e=200,i="__lodash_hash_undefined__",s=1,o=2,r=9007199254740991,a="[object Arguments]",l="[object Array]",c="[object AsyncFunction]",d="[object Boolean]",h="[object Date]",u="[object Error]",m="[object Function]",A="[object GeneratorFunction]",p="[object Map]",g="[object Number]",v="[object Null]",y="[object Object]",I="[object Promise]",M="[object Proxy]",B="[object RegExp]",P="[object Set]",V="[object String]",L="[object Symbol]",X="[object Undefined]",Y="[object WeakMap]",N="[object ArrayBuffer]",H="[object DataView]",_="[object Float32Array]",Q="[object Float64Array]",F="[object Int8Array]",J="[object Int16Array]",Z="[object Int32Array]",ee="[object Uint8Array]",ce="[object Uint8ClampedArray]",se="[object Uint16Array]",we="[object Uint32Array]",Ce=/[\\^$.*+?()[\]{}|]/g,pe=/^\[object .+?Constructor\]$/,Ve=/^(?:0|[1-9]\d*)$/,Ae={};Ae[_]=Ae[Q]=Ae[F]=Ae[J]=Ae[Z]=Ae[ee]=Ae[ce]=Ae[se]=Ae[we]=!0,Ae[a]=Ae[l]=Ae[N]=Ae[d]=Ae[H]=Ae[h]=Ae[u]=Ae[m]=Ae[p]=Ae[g]=Ae[y]=Ae[B]=Ae[P]=Ae[V]=Ae[Y]=!1;var Ye=typeof Mt=="object"&&Mt&&Mt.Object===Object&&Mt,fe=typeof self=="object"&&self&&self.Object===Object&&self,ye=Ye||fe||Function("return this")(),ze=t&&!t.nodeType&&t,me=ze&&!0&&n&&!n.nodeType&&n,Ke=me&&me.exports===ze,dt=Ke&&Ye.process,ke=function(){try{return dt&&dt.binding&&dt.binding("util")}catch(b){}}(),nt=ke&&ke.isTypedArray;function re(b,C){for(var S=-1,U=b==null?0:b.length,Ie=0,ge=[];++S<U;){var De=b[S];C(De,S,b)&&(ge[Ie++]=De)}return ge}function Me(b,C){for(var S=-1,U=C.length,Ie=b.length;++S<U;)b[Ie+S]=C[S];return b}function _e(b,C){for(var S=-1,U=b==null?0:b.length;++S<U;)if(C(b[S],S,b))return!0;return!1}function mt(b,C){for(var S=-1,U=Array(b);++S<b;)U[S]=C(S);return U}function Yt(b){return function(C){return b(C)}}function yt(b,C){return b.has(C)}function wt(b,C){return b==null?void 0:b[C]}function Re(b){var C=-1,S=Array(b.size);return b.forEach(function(U,Ie){S[++C]=[Ie,U]}),S}function Ne(b,C){return function(S){return b(C(S))}}function Je(b){var C=-1,S=Array(b.size);return b.forEach(function(U){S[++C]=U}),S}var xt=Array.prototype,Ln=Function.prototype,Bt=Object.prototype,oi=ye["__core-js_shared__"],wi=Ln.toString,gt=Bt.hasOwnProperty,Qi=function(){var b=/[^.]+$/.exec(oi&&oi.keys&&oi.keys.IE_PROTO||"");return b?"Symbol(src)_1."+b:""}(),Gi=Bt.toString,Oo=RegExp("^"+wi.call(gt).replace(Ce,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),jn=Ke?ye.Buffer:void 0,Ni=ye.Symbol,us=ye.Uint8Array,Hi=Bt.propertyIsEnumerable,Ci=xt.splice,Dt=Ni?Ni.toStringTag:void 0,_i=Object.getOwnPropertySymbols,zn=jn?jn.isBuffer:void 0,Ii=Ne(Object.keys,Object),On=Xt(ye,"DataView"),Pi=Xt(ye,"Map"),Bn=Xt(ye,"Promise"),Vn=Xt(ye,"Set"),Rn=Xt(ye,"WeakMap"),ri=Xt(Object,"create"),fs=ht(On),Ut=ht(Pi),Bo=ht(Bn),Vo=ht(Vn),Ro=ht(Rn),ms=Ni?Ni.prototype:void 0,Qn=ms?ms.valueOf:void 0;function $e(b){var C=-1,S=b==null?0:b.length;for(this.clear();++C<S;){var U=b[C];this.set(U[0],U[1])}}function Qo(){this.__data__=ri?ri(null):{},this.size=0}function Go(b){var C=this.has(b)&&delete this.__data__[b];return this.size-=C?1:0,C}function No(b){var C=this.__data__;if(ri){var S=C[b];return S===i?void 0:S}return gt.call(C,b)?C[b]:void 0}function Ho(b){var C=this.__data__;return ri?C[b]!==void 0:gt.call(C,b)}function _o(b,C){var S=this.__data__;return this.size+=this.has(b)?0:1,S[b]=ri&&C===void 0?i:C,this}$e.prototype.clear=Qo,$e.prototype.delete=Go,$e.prototype.get=No,$e.prototype.has=Ho,$e.prototype.set=_o;function st(b){var C=-1,S=b==null?0:b.length;for(this.clear();++C<S;){var U=b[C];this.set(U[0],U[1])}}function Fo(){this.__data__=[],this.size=0}function Wo(b){var C=this.__data__,S=Yi(C,b);if(S<0)return!1;var U=C.length-1;return S==U?C.pop():Ci.call(C,S,1),--this.size,!0}function Yo(b){var C=this.__data__,S=Yi(C,b);return S<0?void 0:C[S][1]}function Uo(b){return Yi(this.__data__,b)>-1}function Xo(b,C){var S=this.__data__,U=Yi(S,b);return U<0?(++this.size,S.push([b,C])):S[U][1]=C,this}st.prototype.clear=Fo,st.prototype.delete=Wo,st.prototype.get=Yo,st.prototype.has=Uo,st.prototype.set=Xo;function pt(b){var C=-1,S=b==null?0:b.length;for(this.clear();++C<S;){var U=b[C];this.set(U[0],U[1])}}function Zo(){this.size=0,this.__data__={hash:new $e,map:new(Pi||st),string:new $e}}function Jo(b){var C=St(this,b).delete(b);return this.size-=C?1:0,C}function qo(b){return St(this,b).get(b)}function Ko(b){return St(this,b).has(b)}function $o(b,C){var S=St(this,b),U=S.size;return S.set(b,C),this.size+=S.size==U?0:1,this}pt.prototype.clear=Zo,pt.prototype.delete=Jo,pt.prototype.get=qo,pt.prototype.has=Ko,pt.prototype.set=$o;function Fi(b){var C=-1,S=b==null?0:b.length;for(this.__data__=new pt;++C<S;)this.add(b[C])}function gs(b){return this.__data__.set(b,i),this}function Wi(b){return this.__data__.has(b)}Fi.prototype.add=Fi.prototype.push=gs,Fi.prototype.has=Wi;function Vt(b){var C=this.__data__=new st(b);this.size=C.size}function Gn(){this.__data__=new st,this.size=0}function er(b){var C=this.__data__,S=C.delete(b);return this.size=C.size,S}function tr(b){return this.__data__.get(b)}function ir(b){return this.__data__.has(b)}function nr(b,C){var S=this.__data__;if(S instanceof st){var U=S.__data__;if(!Pi||U.length<e-1)return U.push([b,C]),this.size=++S.size,this;S=this.__data__=new pt(U)}return S.set(b,C),this.size=S.size,this}Vt.prototype.clear=Gn,Vt.prototype.delete=er,Vt.prototype.get=tr,Vt.prototype.has=ir,Vt.prototype.set=nr;function sr(b,C){var S=Ui(b),U=!S&&ys(b),Ie=!S&&!U&&Xi(b),ge=!S&&!U&&!Ie&&Is(b),De=S||U||Ie||ge,Te=De?mt(b.length,String):[],Ue=Te.length;for(var Oe in b)(C||gt.call(b,Oe))&&!(De&&(Oe=="length"||Ie&&(Oe=="offset"||Oe=="parent")||ge&&(Oe=="buffer"||Oe=="byteLength"||Oe=="byteOffset")||ur(Oe,Ue)))&&Te.push(Oe);return Te}function Yi(b,C){for(var S=b.length;S--;)if(bs(b[S][0],C))return S;return-1}function Nn(b,C,S){var U=C(b);return Ui(b)?U:Me(U,S(b))}function Ei(b){return b==null?b===void 0?X:v:Dt&&Dt in Object(b)?Zt(b):vs(b)}function ps(b){return Qt(b)&&Ei(b)==a}function As(b,C,S,U,Ie){return b===C?!0:b==null||C==null||!Qt(b)&&!Qt(C)?b!==b&&C!==C:or(b,C,S,U,As,Ie)}function or(b,C,S,U,Ie,ge){var De=Ui(b),Te=Ui(C),Ue=De?l:Rt(b),Oe=Te?l:Rt(C);Ue=Ue==a?y:Ue,Oe=Oe==a?y:Oe;var ot=Ue==y,At=Oe==y,Ze=Ue==Oe;if(Ze&&Xi(b)){if(!Xi(C))return!1;De=!0,ot=!1}if(Ze&&!ot)return ge||(ge=new Vt),De||Is(b)?Hn(b,C,S,U,Ie,ge):cr(b,C,Ue,S,U,Ie,ge);if(!(S&s)){var rt=ot&&gt.call(b,"__wrapped__"),et=At&&gt.call(C,"__wrapped__");if(rt||et){var ai=rt?b.value():b,Jt=et?C.value():C;return ge||(ge=new Vt),Ie(ai,Jt,S,U,ge)}}return Ze?(ge||(ge=new Vt),dr(b,C,S,U,Ie,ge)):!1}function rr(b){if(!Cs(b)||mr(b))return!1;var C=ws(b)?Oo:pe;return C.test(ht(b))}function ar(b){return Qt(b)&&Fn(b.length)&&!!Ae[Ei(b)]}function lr(b){if(!gr(b))return Ii(b);var C=[];for(var S in Object(b))gt.call(b,S)&&S!="constructor"&&C.push(S);return C}function Hn(b,C,S,U,Ie,ge){var De=S&s,Te=b.length,Ue=C.length;if(Te!=Ue&&!(De&&Ue>Te))return!1;var Oe=ge.get(b);if(Oe&&ge.get(C))return Oe==C;var ot=-1,At=!0,Ze=S&o?new Fi:void 0;for(ge.set(b,C),ge.set(C,b);++ot<Te;){var rt=b[ot],et=C[ot];if(U)var ai=De?U(et,rt,ot,C,b,ge):U(rt,et,ot,b,C,ge);if(ai!==void 0){if(ai)continue;At=!1;break}if(Ze){if(!_e(C,function(Jt,ki){if(!yt(Ze,ki)&&(rt===Jt||Ie(rt,Jt,S,U,ge)))return Ze.push(ki)})){At=!1;break}}else if(!(rt===et||Ie(rt,et,S,U,ge))){At=!1;break}}return ge.delete(b),ge.delete(C),At}function cr(b,C,S,U,Ie,ge,De){switch(S){case H:if(b.byteLength!=C.byteLength||b.byteOffset!=C.byteOffset)return!1;b=b.buffer,C=C.buffer;case N:return!(b.byteLength!=C.byteLength||!ge(new us(b),new us(C)));case d:case h:case g:return bs(+b,+C);case u:return b.name==C.name&&b.message==C.message;case B:case V:return b==C+"";case p:var Te=Re;case P:var Ue=U&s;if(Te||(Te=Je),b.size!=C.size&&!Ue)return!1;var Oe=De.get(b);if(Oe)return Oe==C;U|=o,De.set(b,C);var ot=Hn(Te(b),Te(C),U,Ie,ge,De);return De.delete(b),ot;case L:if(Qn)return Qn.call(b)==Qn.call(C)}return!1}function dr(b,C,S,U,Ie,ge){var De=S&s,Te=Mi(b),Ue=Te.length,Oe=Mi(C),ot=Oe.length;if(Ue!=ot&&!De)return!1;for(var At=Ue;At--;){var Ze=Te[At];if(!(De?Ze in C:gt.call(C,Ze)))return!1}var rt=ge.get(b);if(rt&&ge.get(C))return rt==C;var et=!0;ge.set(b,C),ge.set(C,b);for(var ai=De;++At<Ue;){Ze=Te[At];var Jt=b[Ze],ki=C[Ze];if(U)var Ka=De?U(ki,Jt,Ze,C,b,ge):U(Jt,ki,Ze,b,C,ge);if(!(Ka===void 0?Jt===ki||Ie(Jt,ki,S,U,ge):Ka)){et=!1;break}ai||(ai=Ze=="constructor")}if(et&&!ai){var Ps=b.constructor,Es=C.constructor;Ps!=Es&&"constructor"in b&&"constructor"in C&&!(typeof Ps=="function"&&Ps instanceof Ps&&typeof Es=="function"&&Es instanceof Es)&&(et=!1)}return ge.delete(b),ge.delete(C),et}function Mi(b){return Nn(b,Wn,hr)}function St(b,C){var S=b.__data__;return fr(C)?S[typeof C=="string"?"string":"hash"]:S.map}function Xt(b,C){var S=wt(b,C);return rr(S)?S:void 0}function Zt(b){var C=gt.call(b,Dt),S=b[Dt];try{b[Dt]=void 0;var U=!0}catch(ge){}var Ie=Gi.call(b);return U&&(C?b[Dt]=S:delete b[Dt]),Ie}var hr=_i?function(b){return b==null?[]:(b=Object(b),re(_i(b),function(C){return Hi.call(b,C)}))}:Ar,Rt=Ei;(On&&Rt(new On(new ArrayBuffer(1)))!=H||Pi&&Rt(new Pi)!=p||Bn&&Rt(Bn.resolve())!=I||Vn&&Rt(new Vn)!=P||Rn&&Rt(new Rn)!=Y)&&(Rt=function(b){var C=Ei(b),S=C==y?b.constructor:void 0,U=S?ht(S):"";if(U)switch(U){case fs:return H;case Ut:return p;case Bo:return I;case Vo:return P;case Ro:return Y}return C});function ur(b,C){return C=C==null?r:C,!!C&&(typeof b=="number"||Ve.test(b))&&b>-1&&b%1==0&&b<C}function fr(b){var C=typeof b;return C=="string"||C=="number"||C=="symbol"||C=="boolean"?b!=="__proto__":b===null}function mr(b){return!!Qi&&Qi in b}function gr(b){var C=b&&b.constructor,S=typeof C=="function"&&C.prototype||Bt;return b===S}function vs(b){return Gi.call(b)}function ht(b){if(b!=null){try{return wi.call(b)}catch(C){}try{return b+""}catch(C){}}return""}function bs(b,C){return b===C||b!==b&&C!==C}var ys=ps(function(){return arguments}())?ps:function(b){return Qt(b)&&gt.call(b,"callee")&&!Hi.call(b,"callee")},Ui=Array.isArray;function _n(b){return b!=null&&Fn(b.length)&&!ws(b)}var Xi=zn||vr;function pr(b,C){return As(b,C)}function ws(b){if(!Cs(b))return!1;var C=Ei(b);return C==m||C==A||C==c||C==M}function Fn(b){return typeof b=="number"&&b>-1&&b%1==0&&b<=r}function Cs(b){var C=typeof b;return b!=null&&(C=="object"||C=="function")}function Qt(b){return b!=null&&typeof b=="object"}var Is=nt?Yt(nt):ar;function Wn(b){return _n(b)?sr(b):lr(b)}function Ar(){return[]}function vr(){return!1}n.exports=pr})(fC,go);const mC=go,gC=(n,t)=>mC(n,t),pC=n=>Object.keys(n||{}),AC=(n,t)=>{const e={};return n.forEach(i=>{e[i]=t[i]}),e},vC=()=>{const n={},t=(e,i)=>{const{watcherName:s,fn:o}=e,{prop:r,value:a}=i;n[s]||(n[s]={deps:{},fn:o}),n[s].deps[r]=a};return{subscribers:n,subscribe(e,i){e&&t(e,i)},notify(e,i){Object.entries(n).forEach(([s,{deps:o,fn:r}])=>{const a=pC(o);if(a.includes(i)){const l=AC(a,e);gC(o,l)||(n[s].deps=l,r())}})}}},bC=()=>{let n=null;return{targetWatcher(t,e){n={watcherName:t,fn:e},n.fn(),n=null},getTarget(){return n}}};function yC(n,t){const e=Hs(n,"data",{}),i=Hs(n,"watch",{}),s=Hs(n,"methods",{}),o=Hs(t,"onChange",()=>{}),{subscribe:r,notify:a,subscribers:l}=vC(),{targetWatcher:c,getTarget:d}=bC();let h;const u={},m=()=>({data:h,methods:u});let A=!1;const p=v=>(...y)=>{A=!0;const I=v(...y);return A=!1,I};Object.entries(s).forEach(([v,y])=>{u[v]=p((...I)=>y(m(),...I)),Object.defineProperty(u[v],"name",{value:v})}),h=new Proxy(uC(e),{get(v,y){return d()&&!A&&r(d(),{prop:y,value:v[y]}),Reflect.get(...arguments)},set(v,y,I){return v[y]===I||(Reflect.set(...arguments),d()||(o&&o(y,I),a(h,y))),!0}}),Object.entries(i).forEach(([v,y])=>{c(v,()=>{y(m())})});const g=[h,u];return g._internal={_getSubscribers(){return l}},g}function wC({pageIndex:n,particlesToShow:t,particlesToScroll:e,particlesCount:i}){const s=n===0?0:t-e,o=n*t-n*s,r=o+Math.max(t,e)-1,a=[];for(let l=o;l<=Math.min(i-1,r);l++)a.push(l);return a}function CC({infinite:n,pageIndex:t,pagesCount:e,particlesCount:i,particlesToShow:s,particlesToScroll:o}){const r=dn(0,t,e-1);let a=r-1,l=r+1;a=n?a<0?e-1:a:Math.max(0,a),l=n?l>e-1?0:l:Math.min(e-1,l);const c=[...new Set([a,r,l,0,e-1])].sort((h,u)=>h-u),d=c.flatMap(h=>wC({pageIndex:h,particlesToShow:s,particlesToScroll:o,particlesCount:i}));return{pageIndexes:c,particleIndexes:[...new Set(d)].sort((h,u)=>h-u)}}const IC=(n,t)=>(n(),setInterval(n,t)),PC=35,gd=1;class EC{constructor({onProgressValueChange:t}){this._onProgressValueChange=t,this._autoplayDuration,this._onProgressValueChange,this._interval,this._paused=!1}setAutoplayDuration(t){this._autoplayDuration=t}start(t){return new Promise(e=>{this.reset();const i=Math.min(PC,Math.max(this._autoplayDuration,1));let s=-i;this._interval=IC(()=>W(this,null,function*(){if(this._paused)return;s+=i;const o=s/this._autoplayDuration;this._onProgressValueChange(o),o>gd&&(this.reset(),yield t(),e())}),i)})}pause(){this._paused=!0}resume(){this._paused=!1}reset(){clearInterval(this._interval),this._onProgressValueChange(gd)}}function MC(n){const t=new EC({onProgressValueChange:r=>{n("progressValue",1-r)}}),e=yC({data:{particlesCountWithoutClones:0,particlesToShow:1,particlesToShowInit:1,particlesToScroll:1,particlesToScrollInit:1,particlesCount:1,currentParticleIndex:1,infinite:!1,autoplayDuration:1e3,clonesCountHead:0,clonesCountTail:0,clonesCountTotal:0,partialPageSize:1,currentPageIndex:1,pagesCount:1,pauseOnFocus:!1,focused:!1,autoplay:!1,autoplayDirection:"next",disabled:!1,durationMsInit:1e3,durationMs:1e3,offset:0,particleWidth:0,loaded:[]},watch:{setLoaded({data:r}){r.loaded=CC({infinite:r.infinite,pageIndex:r.currentPageIndex,pagesCount:r.pagesCount,particlesCount:r.particlesCountWithoutClones,particlesToShow:r.particlesToShow,particlesToScroll:r.particlesToScroll}).particleIndexes},setCurrentPageIndex({data:r}){r.currentPageIndex=ow({currentParticleIndex:r.currentParticleIndex,particlesCount:r.particlesCount,clonesCountHead:r.clonesCountHead,clonesCountTotal:r.clonesCountTotal,infinite:r.infinite,particlesToScroll:r.particlesToScroll})},setPartialPageSize({data:r}){r.partialPageSize=Bu({particlesToScroll:r.particlesToScroll,particlesToShow:r.particlesToShow,particlesCountWithoutClones:r.particlesCountWithoutClones})},setClonesCount({data:r}){const{head:a,tail:l}=mw({infinite:r.infinite,particlesToShow:r.particlesToShow,partialPageSize:r.partialPageSize});r.clonesCountHead=a,r.clonesCountTail=l,r.clonesCountTotal=a+l},setProgressManagerAutoplayDuration({data:r}){t.setAutoplayDuration(r.autoplayDuration)},toggleProgressManager({data:{pauseOnFocus:r,focused:a}}){r&&(a?t.pause():t.resume())},initDuration({data:r}){r.durationMs=r.durationMsInit},applyAutoplay({data:r,methods:{_applyAutoplayIfNeeded:a}}){r.autoplay&&a(r.autoplay)},setPagesCount({data:r}){r.pagesCount=aw({infinite:r.infinite,particlesCountWithoutClones:r.particlesCountWithoutClones,particlesToScroll:r.particlesToScroll,particlesToShow:r.particlesToShow})},setParticlesToShow({data:r}){r.particlesToShow=dn(1,r.particlesToShowInit,r.particlesCountWithoutClones)},setParticlesToScroll({data:r}){r.particlesToScroll=dn(1,r.particlesToScrollInit,r.particlesCountWithoutClones)}},methods:{_prev({data:r}){r.currentParticleIndex=Or({infinite:r.infinite,pageIndex:r.currentPageIndex-1,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},_next({data:r}){r.currentParticleIndex=Or({infinite:r.infinite,pageIndex:r.currentPageIndex+1,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},_moveToParticle({data:r},a){r.currentParticleIndex=dn(0,a,r.particlesCount-1)},toggleFocused({data:r}){r.focused=!r.focused},_applyAutoplayIfNeeded(l){return W(this,arguments,function*({data:r,methods:a}){if(!r.infinite&&(r.autoplayDirection===pi&&r.currentParticleIndex===r.particlesCount-1||r.autoplayDirection===wn&&r.currentParticleIndex===0)){t.reset();return}if(r.autoplay){const c=()=>la({[pi]:()=>W(this,null,function*(){return a.showNextPage()}),[wn]:()=>W(this,null,function*(){return a.showPrevPage()})})(r.autoplayDirection);yield t.start(c)}})},_jumpIfNeeded(l){return W(this,arguments,function*({data:r,methods:a}){let c=!1;return r.infinite&&(r.currentParticleIndex===0?(yield a.showParticle(r.particlesCount-r.clonesCountTotal,{animated:!1}),c=!0):r.currentParticleIndex===r.particlesCount-r.clonesCountTail&&(yield a.showParticle(r.clonesCountHead,{animated:!1}),c=!0)),c})},changePage(d,h,u){return W(this,arguments,function*({data:r,methods:a},l,c){if(t.reset(),r.disabled)return;r.disabled=!0,l(),yield a.offsetPage({animated:ss(c,"animated",!0)}),r.disabled=!1,!(yield a._jumpIfNeeded())&&a._applyAutoplayIfNeeded()})},showNextPage(c,d){return W(this,arguments,function*({data:r,methods:a},l){r.disabled||(yield a.changePage(a._next,l))})},showPrevPage(c,d){return W(this,arguments,function*({data:r,methods:a},l){r.disabled||(yield a.changePage(a._prev,l))})},showParticle(c,d,h){return W(this,arguments,function*({methods:r},a,l){yield r.changePage(()=>r._moveToParticle(a),l)})},_getParticleIndexByPageIndex({data:r},a){return Or({infinite:r.infinite,pageIndex:a,clonesCountHead:r.clonesCountHead,clonesCountTail:r.clonesCountTail,particlesToScroll:r.particlesToScroll,particlesCount:r.particlesCount,particlesToShow:r.particlesToShow})},showPage(c,d,h){return W(this,arguments,function*({methods:r},a,l){const u=r._getParticleIndexByPageIndex(a);yield r.showParticle(u,l)})},offsetPage({data:r},a){const l=ss(a,"animated",!0);return new Promise(c=>{r.durationMs=l?r.durationMsInit:0,r.offset=-r.currentParticleIndex*r.particleWidth,setTimeout(()=>{c()},r.durationMs)})}}},{onChange:n}),[i,s]=e;return[{data:i,progressManager:t},s,e._internal]}function kC(n){ue(n,"svelte-sme1z4",":root{--sc-color-rgb-light-50p:rgba(93, 93, 93, 0.5);--sc-color-rgb-light:#5d5d5d;--sc-color-hex-dark-50p:rgba(30, 30, 30, 0.5);--sc-color-hex-dark:#1e1e1e}.sc-carousel__carousel-container.svelte-sme1z4{display:flex;width:100%;flex-direction:column;align-items:center}.sc-carousel__content-container.svelte-sme1z4{position:relative;display:flex;width:100%}.sc-carousel__pages-window.svelte-sme1z4{flex:1;display:flex;overflow:hidden;box-sizing:border-box;position:relative}.sc-carousel__pages-container.svelte-sme1z4{width:100%;display:flex;transition-property:transform}.sc-carousel__arrow-container.svelte-sme1z4{padding:5px;box-sizing:border-box;display:flex;align-items:center;justify-content:center}.sc-carousel-progress__container.svelte-sme1z4{width:100%;height:5px;background-color:var(--sc-color-rgb-light-50p);position:absolute;bottom:0}.sc-carousel-button{all:unset;cursor:pointer}.sc-carousel-button:focus{outline:5px auto}")}const xC=n=>({currentPageIndex:n[0]&32,pagesCount:n[0]&1024}),pd=n=>({currentPageIndex:n[5],pagesCount:n[10],showPage:n[15]}),DC=n=>({}),Ad=n=>({showNextPage:n[14].showNextPage}),SC=n=>({loaded:n[0]&64,currentPageIndex:n[0]&32}),vd=n=>({loaded:n[6],currentPageIndex:n[5]}),TC=n=>({}),bd=n=>({showPrevPage:n[14].showPrevPage});function yd(n){let t;const e=n[37].prev,i=Pn(e,n,n[36],bd),s=i||LC(n);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){i?i.p&&(!t||r[1]&32)&&Mn(i,e,o,o[36],t?En(e,o[36],r,TC):kn(o[36]),bd):s&&s.p&&(!t||r[0]&36)&&s.p(o,t?r:[-1,-1])},i(o){t||(k(s,o),t=!0)},o(o){T(s,o),t=!1},d(o){s&&s.d(o)}}}function LC(n){let t,e,i;return e=new zu({props:{direction:"prev",disabled:!n[2]&&n[5]===0}}),e.$on("click",n[23]),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","sc-carousel__arrow-container svelte-sme1z4")},m(s,o){O(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o[0]&36&&(r.disabled=!s[2]&&s[5]===0),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){T(e.$$.fragment,s),i=!1},d(s){s&&z(t),ie(e)}}}function wd(n){let t,e,i;return e=new Ry({props:{value:n[7]}}),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","sc-carousel-progress__container svelte-sme1z4")},m(s,o){O(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o[0]&128&&(r.value=s[7]),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){T(e.$$.fragment,s),i=!1},d(s){s&&z(t),ie(e)}}}function Cd(n){let t;const e=n[37].next,i=Pn(e,n,n[36],Ad),s=i||jC(n);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){i?i.p&&(!t||r[1]&32)&&Mn(i,e,o,o[36],t?En(e,o[36],r,DC):kn(o[36]),Ad):s&&s.p&&(!t||r[0]&1060)&&s.p(o,t?r:[-1,-1])},i(o){t||(k(s,o),t=!0)},o(o){T(s,o),t=!1},d(o){s&&s.d(o)}}}function jC(n){let t,e,i;return e=new zu({props:{direction:"next",disabled:!n[2]&&n[5]===n[10]-1}}),e.$on("click",n[14].showNextPage),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","sc-carousel__arrow-container svelte-sme1z4")},m(s,o){O(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o[0]&1060&&(r.disabled=!s[2]&&s[5]===s[10]-1),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){T(e.$$.fragment,s),i=!1},d(s){s&&z(t),ie(e)}}}function Id(n){let t;const e=n[37].dots,i=Pn(e,n,n[36],pd),s=i||zC(n);return{c(){s&&s.c()},m(o,r){s&&s.m(o,r),t=!0},p(o,r){i?i.p&&(!t||r[0]&1056|r[1]&32)&&Mn(i,e,o,o[36],t?En(e,o[36],r,xC):kn(o[36]),pd):s&&s.p&&(!t||r[0]&1056)&&s.p(o,t?r:[-1,-1])},i(o){t||(k(s,o),t=!0)},o(o){T(s,o),t=!1},d(o){s&&s.d(o)}}}function zC(n){let t,e;return t=new Ty({props:{pagesCount:n[10],currentPageIndex:n[5]}}),t.$on("pageChange",n[41]),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s[0]&1024&&(o.pagesCount=i[10]),s[0]&32&&(o.currentPageIndex=i[5]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function OC(n){let t,e,i,s,o,r,a,l,c,d,h,u,m=n[1]&&yd(n);const A=n[37].default,p=Pn(A,n,n[36],vd);let g=n[3]&&wd(n),v=n[1]&&Cd(n),y=n[4]&&Id(n);return{c(){t=D("div"),e=D("div"),m&&m.c(),i=$(),s=D("div"),o=D("div"),p&&p.c(),a=$(),g&&g.c(),l=$(),v&&v.c(),c=$(),y&&y.c(),w(o,"class","sc-carousel__pages-container svelte-sme1z4"),j(o,"transform","translateX("+n[8]+"px)"),j(o,"transition-duration",n[9]+"ms"),j(o,"transition-timing-function",n[0]),w(s,"class","sc-carousel__pages-window svelte-sme1z4"),w(e,"class","sc-carousel__content-container svelte-sme1z4"),w(t,"class","sc-carousel__carousel-container svelte-sme1z4")},m(I,M){O(I,t,M),x(t,e),m&&m.m(e,null),x(e,i),x(e,s),x(s,o),p&&p.m(o,null),n[39](o),x(s,a),g&&g.m(s,null),n[40](s),x(e,l),v&&v.m(e,null),x(t,c),y&&y.m(t,null),d=!0,h||(u=[ei(r=Uy.call(null,o,{thresholdProvider:n[38]})),be(o,"swipeStart",n[16]),be(o,"swipeMove",n[18]),be(o,"swipeEnd",n[19]),be(o,"swipeFailed",n[20]),be(o,"swipeThresholdReached",n[17]),ei(qy.call(null,s)),be(s,"hovered",n[21]),ei(iw.call(null,s)),be(s,"tapped",n[22])],h=!0)},p(I,M){I[1]?m?(m.p(I,M),M[0]&2&&k(m,1)):(m=yd(I),m.c(),k(m,1),m.m(e,i)):m&&(de(),T(m,1,1,()=>{m=null}),he()),p&&p.p&&(!d||M[0]&96|M[1]&32)&&Mn(p,A,I,I[36],d?En(A,I[36],M,SC):kn(I[36]),vd),(!d||M[0]&256)&&j(o,"transform","translateX("+I[8]+"px)"),(!d||M[0]&512)&&j(o,"transition-duration",I[9]+"ms"),(!d||M[0]&1)&&j(o,"transition-timing-function",I[0]),r&&si(r.update)&&M[0]&2048&&r.update.call(null,{thresholdProvider:I[38]}),I[3]?g?(g.p(I,M),M[0]&8&&k(g,1)):(g=wd(I),g.c(),k(g,1),g.m(s,null)):g&&(de(),T(g,1,1,()=>{g=null}),he()),I[1]?v?(v.p(I,M),M[0]&2&&k(v,1)):(v=Cd(I),v.c(),k(v,1),v.m(e,null)):v&&(de(),T(v,1,1,()=>{v=null}),he()),I[4]?y?(y.p(I,M),M[0]&16&&k(y,1)):(y=Id(I),y.c(),k(y,1),y.m(t,null)):y&&(de(),T(y,1,1,()=>{y=null}),he())},i(I){d||(k(m),k(p,I),k(g),k(v),k(y),d=!0)},o(I){T(m),T(p,I),T(g),T(v),T(y),d=!1},d(I){I&&z(t),m&&m.d(),p&&p.d(I),n[39](null),g&&g.d(),n[40](null),v&&v.d(),y&&y.d(),h=!1,qe(u)}}}function BC(n,t,e){let{$$slots:i={},$$scope:s}=t,o=[],r,a,l=0,c=0,d=1;const[{data:h,progressManager:u},m,A]=MC((re,Me)=>{la({currentPageIndex:()=>e(5,r=Me),progressValue:()=>e(7,a=Me),offset:()=>e(8,l=Me),durationMs:()=>e(9,c=Me),pagesCount:()=>e(10,d=Me),loaded:()=>e(6,o=Me)})(re)}),p=Co();let{timingFunction:g="ease-in-out"}=t,{arrows:v=!0}=t,{infinite:y=!0}=t,{initialPageIndex:I=0}=t,{duration:M=500}=t,{autoplay:B=!1}=t,{autoplayDuration:P=3e3}=t,{autoplayDirection:V=pi}=t,{pauseOnFocus:L=!1}=t,{autoplayProgressVisible:X=!1}=t,{dots:Y=!0}=t,{swiping:N=!0}=t,{particlesToShow:H=1}=t,{particlesToScroll:_=1}=t;function Q(re,Me){return W(this,null,function*(){const _e=ss(Me,"animated",!0);if(typeof re!="number")throw new Error("pageIndex should be a number");yield m.showPage(re,{animated:_e})})}function F(re){return W(this,null,function*(){const Me=ss(re,"animated",!0);yield m.showPrevPage({animated:Me})})}function J(re){return W(this,null,function*(){const Me=ss(re,"animated",!0);yield m.showNextPage({animated:Me})})}let Z=0,ee,ce;const se=hw(({width:re})=>{e(11,Z=re),h.particleWidth=Z/h.particlesToShow,dw({particlesContainerChildren:ce.children,particleWidth:h.particleWidth}),m.offsetPage({animated:!1})});function we(){const{clonesToAppend:re,clonesToPrepend:Me}=uw({clonesCountHead:h.clonesCountHead,clonesCountTail:h.clonesCountTail,particlesContainerChildren:ce.children});fw({particlesContainer:ce,clonesToAppend:re,clonesToPrepend:Me})}bt(()=>{W(this,null,function*(){yield cl(),ce&&ee&&(h.particlesCountWithoutClones=ce.children.length,yield cl(),h.infinite&&we(),h.particlesCount=ce.children.length,m.showPage(I,{animated:!1}),se.observe(ee))})}),zt(()=>{se.disconnect(),u.reset()});function Ce(re){return W(this,null,function*(){yield m.showPage(re,{animated:!0})})}function pe(){N&&(h.durationMs=0)}function Ve(re){return W(this,null,function*(){N&&(yield la({[pi]:m.showNextPage,[wn]:m.showPrevPage})(re.detail.direction))})}function Ae(re){N&&(h.offset+=re.detail.dx)}function Ye(){N&&m.showParticle(h.currentParticleIndex)}function fe(){return W(this,null,function*(){N&&(yield m.offsetPage({animated:!0}))})}function ye(re){h.focused=re.detail.value}function ze(){m.toggleFocused()}function me(){m.showPrevPage()}const Ke=()=>Z/3;function dt(re){Ge[re?"unshift":"push"](()=>{ce=re,e(13,ce)})}function ke(re){Ge[re?"unshift":"push"](()=>{ee=re,e(12,ee)})}const nt=re=>Ce(re.detail);return n.$$set=re=>{"timingFunction"in re&&e(0,g=re.timingFunction),"arrows"in re&&e(1,v=re.arrows),"infinite"in re&&e(2,y=re.infinite),"initialPageIndex"in re&&e(24,I=re.initialPageIndex),"duration"in re&&e(25,M=re.duration),"autoplay"in re&&e(26,B=re.autoplay),"autoplayDuration"in re&&e(27,P=re.autoplayDuration),"autoplayDirection"in re&&e(28,V=re.autoplayDirection),"pauseOnFocus"in re&&e(29,L=re.pauseOnFocus),"autoplayProgressVisible"in re&&e(3,X=re.autoplayProgressVisible),"dots"in re&&e(4,Y=re.dots),"swiping"in re&&e(30,N=re.swiping),"particlesToShow"in re&&e(31,H=re.particlesToShow),"particlesToScroll"in re&&e(32,_=re.particlesToScroll),"$$scope"in re&&e(36,s=re.$$scope)},n.$$.update=()=>{n.$$.dirty[0]&32&&p("pageChange",r),n.$$.dirty[0]&4&&(h.infinite=y),n.$$.dirty[0]&33554432&&(h.durationMsInit=M),n.$$.dirty[0]&67108864&&(h.autoplay=B),n.$$.dirty[0]&134217728&&(h.autoplayDuration=P),n.$$.dirty[0]&268435456&&(h.autoplayDirection=V),n.$$.dirty[0]&536870912&&(h.pauseOnFocus=L),n.$$.dirty[1]&1&&(h.particlesToShowInit=H),n.$$.dirty[1]&2&&(h.particlesToScrollInit=_)},[g,v,y,X,Y,r,o,a,l,c,d,Z,ee,ce,m,Ce,pe,Ve,Ae,Ye,fe,ye,ze,me,I,M,B,P,V,L,N,H,_,Q,F,J,s,i,Ke,dt,ke,nt]}class VC extends le{constructor(t){super(),ae(this,t,BC,OC,oe,{timingFunction:0,arrows:1,infinite:2,initialPageIndex:24,duration:25,autoplay:26,autoplayDuration:27,autoplayDirection:28,pauseOnFocus:29,autoplayProgressVisible:3,dots:4,swiping:30,particlesToShow:31,particlesToScroll:32,goTo:33,goToPrev:34,goToNext:35},kC,[-1,-1])}get goTo(){return this.$$.ctx[33]}get goToPrev(){return this.$$.ctx[34]}get goToNext(){return this.$$.ctx[35]}}function RC(n){ue(n,"svelte-159ski6",".media-item.svelte-159ski6.svelte-159ski6{position:relative;height:100%}.media-content.svelte-159ski6.svelte-159ski6{position:relative;pointer-events:auto;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;-o-object-fit:inherit;object-fit:inherit}.media-content.showPlayButton.svelte-159ski6.svelte-159ski6{pointer-events:none}.video-icon.svelte-159ski6.svelte-159ski6{width:12.5rem;height:6.25rem;max-width:60%;max-height:60%;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.video-play-button-container.svelte-159ski6.svelte-159ski6{display:none;position:absolute;width:100%;height:100%;top:0;left:0;transform:translate3d(0, 0, 0)}.video-play-button-container.showPlayButton.svelte-159ski6.svelte-159ski6{pointer-events:none;display:block}.video-icon.svelte-159ski6.svelte-159ski6{pointer-events:auto}.video-icon.large.svelte-159ski6.svelte-159ski6{width:12.5rem;height:6.25rem}.video-icon.small.svelte-159ski6.svelte-159ski6{width:1.75rem;height:1.75rem}.video-icon.svelte-159ski6 .video-icon-img.svelte-159ski6{width:100%;height:100%;background-position:center center;background-size:contain;background-repeat:no-repeat}.video-icon.svelte-159ski6 .video-icon-img.canPlay.svelte-159ski6{cursor:pointer}")}function Pd(n){let t;function e(o,r){if(o[2].type==="Image")return GC;if(o[2].type==="Video")return QC}let i=e(n),s=i&&i(n);return{c(){t=D("div"),s&&s.c(),w(t,"class","media-item svelte-159ski6"),w(t,"draggable","false")},m(o,r){O(o,t,r),s&&s.m(t,null)},p(o,r){i===(i=e(o))&&s?s.p(o,r):(s&&s.d(1),s=i&&i(o),s&&(s.c(),s.m(t,null)))},d(o){o&&z(t),s&&s.d()}}}function QC(n){let t,e,i,s,o,r;function a(d,h){return d[7]&&d[2].videoCoverUrl?HC:NC}let l=a(n),c=l(n);return{c(){c.c(),t=$(),e=D("div"),i=D("div"),s=D("div"),w(s,"class","video-icon-img svelte-159ski6"),j(s,"background-image","url("+n[20]()+")"),K(s,"canPlay",n[5]),w(i,"class","video-icon svelte-159ski6"),K(i,"large",n[4]==="large"),K(i,"small",n[4]==="small"),w(e,"class","video-play-button-container svelte-159ski6"),K(e,"showPlayButton",n[10])},m(d,h){c.m(d,h),O(d,t,h),O(d,e,h),x(e,i),x(i,s),o||(r=be(s,"click",n[21]),o=!0)},p(d,h){l===(l=a(d))&&c?c.p(d,h):(c.d(1),c=l(d),c&&(c.c(),c.m(t.parentNode,t))),h&8&&j(s,"background-image","url("+d[20]()+")"),h&32&&K(s,"canPlay",d[5]),h&16&&K(i,"large",d[4]==="large"),h&16&&K(i,"small",d[4]==="small"),h&1024&&K(e,"showPlayButton",d[10])},d(d){d&&(z(t),z(e)),c.d(d),o=!1,r()}}}function GC(n){let t,e,i,s;return{c(){t=D("img"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${n[6]};`),kt(t.src,i=n[2].url)||w(t,"src",i),w(t,"alt",s=n[2].name),w(t,"draggable",!1)},m(o,r){O(o,t,r)},p(o,r){r&64&&e!==(e=`object-fit: ${o[6]};`)&&w(t,"style",e),r&4&&!kt(t.src,i=o[2].url)&&w(t,"src",i),r&4&&s!==(s=o[2].name)&&w(t,"alt",s)},d(o){o&&z(t)}}}function NC(n){let t,e,i,s,o,r,a;return{c(){t=D("video"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${n[6]};`),kt(t.src,i=n[2].videoCoverUrl?n[2].url:n[2].url+"#t=0.1")||w(t,"src",i),w(t,"poster",s=n[2].videoCoverUrl),w(t,"preload",o=n[2].videoCoverUrl?"none":"auto"),w(t,"disablepictureinpicture",""),t.playsInline=!0,w(t,"paused",""),t.muted=!0,w(t,"draggable",!1),t.loop=!1,w(t,"crossorigin",""),t.controls=!1,K(t,"showPlayButton",n[10])},m(l,c){O(l,t,c),n[19](t),r||(a=[be(t,"play",n[14]),be(t,"pause",n[15]),be(t,"error",n[16]),be(t,"ended",n[17]),be(t,"click",n[18])],r=!0)},p(l,c){c&64&&e!==(e=`object-fit: ${l[6]};`)&&w(t,"style",e),c&4&&!kt(t.src,i=l[2].videoCoverUrl?l[2].url:l[2].url+"#t=0.1")&&w(t,"src",i),c&4&&s!==(s=l[2].videoCoverUrl)&&w(t,"poster",s),c&4&&o!==(o=l[2].videoCoverUrl?"none":"auto")&&w(t,"preload",o),c&1024&&K(t,"showPlayButton",l[10])},d(l){l&&z(t),n[19](null),r=!1,qe(a)}}}function HC(n){let t,e,i,s;return{c(){t=D("img"),w(t,"class","media-content svelte-159ski6"),w(t,"style",e=`object-fit: ${n[6]};`),kt(t.src,i=n[2].videoCoverUrl)||w(t,"src",i),w(t,"alt",s=n[2].name),w(t,"draggable",!1)},m(o,r){O(o,t,r)},p(o,r){r&64&&e!==(e=`object-fit: ${o[6]};`)&&w(t,"style",e),r&4&&!kt(t.src,i=o[2].videoCoverUrl)&&w(t,"src",i),r&4&&s!==(s=o[2].name)&&w(t,"alt",s)},d(o){o&&z(t)}}}function _C(n){let t,e=n[2]&&Pd(n);return{c(){e&&e.c(),t=Ee()},m(i,s){e&&e.m(i,s),O(i,t,s)},p(i,[s]){i[2]?e?e.p(i,s):(e=Pd(i),e.c(),e.m(t.parentNode,t)):e&&(e.d(1),e=null)},i:q,o:q,d(i){i&&z(t),e&&e.d(i)}}}function FC(n,t,e){let i,s,{mediaInstance:o={videoInstance:void 0,paused:!0}}=t,{tag:r}=t,{media:a}=t,{playButtonIfNeed:l="withoutText"}=t,{playButtonSizeIfNeed:c="small"}=t,{canPlay:d=!0}=t,{objectFit:h="fill"}=t,{disableVideoIfHavePoster:u=!1}=t,m=!0,A=!1;function p(){e(8,A=(a==null?void 0:a.type)==="Video"&&!!a.videoCoverUrl)}const g=fi("mediaStore"),v=fi("hooks"),y=()=>{A||i&&(e(9,i.muted=!0,i),i.play(),i.pause(),e(9,i.muted=!1,i),e(8,A=!0))};v.on("loadVideoFirstFrame",y),bt(()=>{g.subscribe(({currentMediaElement:N})=>{N!==i&&(i==null||i.pause())})});const I=N=>{e(10,m=!1),e(0,o.paused=!1,o),e(8,A=!0),i&&g.set({currentMediaElement:i}),v.emit("playStateChange",{event:N,state:"playing",tag:r,mediaInstance:i})},M=N=>{e(10,m=!0),e(0,o.paused=!0,o),v.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:i})},B=N=>{e(10,m=!0),e(0,o.paused=!0,o),v.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:i})},P=N=>{e(10,m=!0),e(0,o.paused=!0,o),v.emit("playStateChange",{event:N,state:"paused",tag:r,mediaInstance:i})},V=N=>{i&&i.pause()};function L(N){Ge[N?"unshift":"push"](()=>{o.videoInstance=N,e(0,o)})}const X=()=>l==="withText"?Ga:l==="withoutText"?oa:l,Y=N=>{d&&i&&(e(9,i.muted=!1,i),i.play())};return n.$$set=N=>{"mediaInstance"in N&&e(0,o=N.mediaInstance),"tag"in N&&e(1,r=N.tag),"media"in N&&e(2,a=N.media),"playButtonIfNeed"in N&&e(3,l=N.playButtonIfNeed),"playButtonSizeIfNeed"in N&&e(4,c=N.playButtonSizeIfNeed),"canPlay"in N&&e(5,d=N.canPlay),"objectFit"in N&&e(6,h=N.objectFit),"disableVideoIfHavePoster"in N&&e(7,u=N.disableVideoIfHavePoster)},n.$$.update=()=>{if(n.$$.dirty&1&&e(9,i=o.videoInstance),n.$$.dirty&4&&e(13,s=a==null?void 0:a.url),n.$$.dirty&8192&&s&&p(),n.$$.dirty&512&&i&&e(10,m=i.paused),n.$$.dirty&772&&(a==null?void 0:a.type)==="Video"&&!A){const N=navigator.userAgent.toLowerCase().indexOf("micromessenger")!==-1,_=navigator.userAgent.toLowerCase().indexOf("iphone")!==-1&&N;i&&_&&i.paused&&(document.removeEventListener("WeixinJSBridgeReady",y),document.removeEventListener("touchstart",y),document.removeEventListener("click",y),document.addEventListener("WeixinJSBridgeReady",y),document.addEventListener("touchstart",y),document.addEventListener("click",y))}},[o,r,a,l,c,d,h,u,A,i,m,g,v,s,I,M,B,P,V,L,X,Y]}class Wu extends le{constructor(t){super(),ae(this,t,FC,_C,oe,{mediaInstance:0,tag:1,media:2,playButtonIfNeed:3,playButtonSizeIfNeed:4,canPlay:5,objectFit:6,disableVideoIfHavePoster:7},RC)}}function WC(n){ue(n,"svelte-1mrbqlg",".media-list-wrapper.svelte-1mrbqlg.svelte-1mrbqlg{width:100%;height:100%;position:relative;overflow:hidden;border-radius:0.125rem}.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg{position:relative;pointer-events:auto;height:100%;left:50%;top:50%;transform:translate(-50%, -50%)}.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg .sc-carousel__carousel-container,.media-list-wrapper.svelte-1mrbqlg .media-list.svelte-1mrbqlg .sc-carousel__content-container{height:100%}")}function Ed(n,t,e){const i=n.slice();return i[28]=t[e],i[29]=t,i[30]=e,i}function Md(n){let t,e,i,s,o,r,a;const l=[UC,YC],c=[];function d(h,u){return h[13]&&h[10].length>1?0:1}return i=d(n),s=c[i]=l[i](n),{c(){t=D("div"),e=D("div"),s.c(),w(e,"class","media-list svelte-1mrbqlg"),K(e,"carouselEnabled",n[13]),w(t,"class","media-list-wrapper svelte-1mrbqlg"),K(t,"unfolded",n[5])},m(h,u){O(h,t,u),x(t,e),c[i].m(e,null),a=!0},p(h,u){n=h;let m=i;i=d(n),i===m?c[i].p(n,u):(de(),T(c[m],1,1,()=>{c[m]=null}),he(),s=c[i],s?s.p(n,u):(s=c[i]=l[i](n),s.c()),k(s,1),s.m(e,null)),(!a||u[0]&8192)&&K(e,"carouselEnabled",n[13]),(!a||u[0]&32)&&K(t,"unfolded",n[5])},i(h){a||(k(s),h&&He(()=>{a&&(r&&r.end(1),o=Vi(t,fl,n[6]?{y:4,duration:n[4],delay:n[2],easing:ti}:void 0),o.start())}),a=!0)},o(h){T(s),o&&o.invalidate(),h&&(r=Dn(t,fl,n[6]?{y:4,duration:n[4],delay:n[3],easing:ti}:void 0)),a=!1},d(h){h&&z(t),c[i].d(),h&&r&&r.end()}}}function YC(n){let t,e,i;const s=[{media:n[1][0]},n[7],{tag:n[0]}];function o(a){n[20](a)}let r={};for(let a=0;a<s.length;a+=1)r=tt(r,s[a]);return n[8][0]!==void 0&&(r.mediaInstance=n[8][0]),t=new Wu({props:r}),Ge.push(()=>ka(t,"mediaInstance",o)),{c(){ne(t.$$.fragment)},m(a,l){te(t,a,l),i=!0},p(a,l){const c=l[0]&131?ct(s,[l[0]&2&&{media:a[1][0]},l[0]&128&&Hh(a[7]),l[0]&1&&{tag:a[0]}]):{};!e&&l[0]&256&&(e=!0,c.mediaInstance=a[8][0],Ca(()=>e=!1)),t.$set(c)},i(a){i||(k(t.$$.fragment,a),i=!0)},o(a){T(t.$$.fragment,a),i=!1},d(a){ie(t,a)}}}function UC(n){let t,e,i={dots:!1,arrows:!1,$$slots:{default:[XC]},$$scope:{ctx:n}};return t=new VC({props:i}),n[18](t),t.$on("pageChange",n[19]),{c(){ne(t.$$.fragment)},m(s,o){te(t,s,o),e=!0},p(s,o){const r={};o[0]&1409|o[1]&1&&(r.$$scope={dirty:o,ctx:s}),t.$set(r)},i(s){e||(k(t.$$.fragment,s),e=!0)},o(s){T(t.$$.fragment,s),e=!1},d(s){n[18](null),ie(t,s)}}}function kd(n){let t,e,i;const s=[n[7],{media:n[28]},{tag:n[0]}];function o(a){n[17](a,n[30])}let r={};for(let a=0;a<s.length;a+=1)r=tt(r,s[a]);return n[8][n[30]]!==void 0&&(r.mediaInstance=n[8][n[30]]),t=new Wu({props:r}),Ge.push(()=>ka(t,"mediaInstance",o)),{c(){ne(t.$$.fragment)},m(a,l){te(t,a,l),i=!0},p(a,l){n=a;const c=l[0]&1153?ct(s,[l[0]&128&&Hh(n[7]),l[0]&1024&&{media:n[28]},l[0]&1&&{tag:n[0]}]):{};!e&&l[0]&256&&(e=!0,c.mediaInstance=n[8][n[30]],Ca(()=>e=!1)),t.$set(c)},i(a){i||(k(t.$$.fragment,a),i=!0)},o(a){T(t.$$.fragment,a),i=!1},d(a){ie(t,a)}}}function XC(n){let t,e,i=Pe(n[10]),s=[];for(let r=0;r<i.length;r+=1)s[r]=kd(Ed(n,i,r));const o=r=>T(s[r],1,1,()=>{s[r]=null});return{c(){for(let r=0;r<s.length;r+=1)s[r].c();t=Ee()},m(r,a){for(let l=0;l<s.length;l+=1)s[l]&&s[l].m(r,a);O(r,t,a),e=!0},p(r,a){if(a[0]&1409){i=Pe(r[10]);let l;for(l=0;l<i.length;l+=1){const c=Ed(r,i,l);s[l]?(s[l].p(c,a),k(s[l],1)):(s[l]=kd(c),s[l].c(),k(s[l],1),s[l].m(t.parentNode,t))}for(de(),l=i.length;l<s.length;l+=1)o(l);he()}},i(r){if(!e){for(let a=0;a<i.length;a+=1)k(s[a]);e=!0}},o(r){s=s.filter(Boolean);for(let a=0;a<s.length;a+=1)T(s[a]);e=!1},d(r){r&&z(t),jt(s,r)}}}function ZC(n){let t,e,i=n[5]&&Md(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,o){s[5]?i?(i.p(s,o),o[0]&32&&k(i,1)):(i=Md(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function JC(n,t,e){let i,s,o,r,{tag:a}=t,{mediaData:l}=t,{inDelay:c=0}=t,{outDelay:d=0}=t,{duration:h=0}=t,{unfolded:u=!0}=t,{animation:m=!0}=t,{mediaItemConfig:A}=t,{enableCarousel:p=!0}=t,{autoplayConfig:g={}}=t;const{autoplayVideo:v=!1,autoplayCarousel:y=!0,autoplayVideoInCarousel:I=!1}=g;let M=[],B=0,P,V=null;const L=fi("hooks"),X=fi("mediaStore");function Y(){const F=M[B],J=F==null?void 0:F.videoInstance;J&&(J.paused?(J.muted=!1,J.play()):J.pause())}bt(()=>{L.on("click",F=>{var J,Z,ee;(ee=(Z=(J=a.tag3DContentSvelte)==null?void 0:J.css3DInstance)==null?void 0:Z.css3DObject)!=null&&ee.opacityMesh&&F.tag.id===a.id&&Y()}),V=setInterval(()=>{r&&(P==null||P.goToNext())},3e3)}),zt(()=>{clearInterval(V),L.off("click",Y)});function N(F,J){n.$$.not_equal(M[J],F)&&(M[J]=F,e(8,M))}function H(F){Ge[F?"unshift":"push"](()=>{P=F,e(12,P)})}const _=F=>{i||X.set({currentMediaElement:null}),e(11,B=F.detail)};function Q(F){n.$$.not_equal(M[0],F)&&(M[0]=F,e(8,M))}return n.$$set=F=>{"tag"in F&&e(0,a=F.tag),"mediaData"in F&&e(1,l=F.mediaData),"inDelay"in F&&e(2,c=F.inDelay),"outDelay"in F&&e(3,d=F.outDelay),"duration"in F&&e(4,h=F.duration),"unfolded"in F&&e(5,u=F.unfolded),"animation"in F&&e(6,m=F.animation),"mediaItemConfig"in F&&e(7,A=F.mediaItemConfig),"enableCarousel"in F&&e(15,p=F.enableCarousel),"autoplayConfig"in F&&e(16,g=F.autoplayConfig)},n.$$.update=()=>{n.$$.dirty[0]&256&&e(9,i=M.every(F=>F.paused)),n.$$.dirty[0]&32770&&e(13,s=p&&(l==null?void 0:l.length)>1),n.$$.dirty[0]&2&&e(10,o=l),n.$$.dirty[0]&1536&&(r=o.length>1&&y&&i)},[a,l,c,d,h,u,m,A,M,i,o,B,P,s,X,p,g,N,H,_,Q]}class Yu extends le{constructor(t){super(),ae(this,t,JC,ZC,oe,{tag:0,mediaData:1,inDelay:2,outDelay:3,duration:4,unfolded:5,animation:6,mediaItemConfig:7,enableCarousel:15,autoplayConfig:16},WC,[-1,-1])}}function qC(n){ue(n,"svelte-1f7m1lj",".line.svelte-1f7m1lj{position:absolute;width:6.5625rem;height:1.3125rem;transform:translateY(-100%)}.text.svelte-1f7m1lj{position:absolute;width:6.25rem;left:1rem;bottom:0.0625rem;font-weight:600}.media-wrapper.svelte-1f7m1lj{position:absolute;left:0.875rem;top:-5.3125rem;width:5.625rem;height:3.75rem;font-weight:600}")}function xd(n){let t,e,i,s,o,r,a,l;t=new Wt({props:{visible:n[3],left:61,bottom:57,width:2,blurRadius:150,spreadRadius:75}}),s=new Iy({props:{unfolded:n[3],outDelay:400}});let c=n[2]&&Dd(n),d=n[1]&&Sd(n);return{c(){ne(t.$$.fragment),e=$(),i=D("div"),ne(s.$$.fragment),o=$(),c&&c.c(),r=$(),d&&d.c(),a=Ee(),w(i,"class","line svelte-1f7m1lj")},m(h,u){te(t,h,u),O(h,e,u),O(h,i,u),te(s,i,null),O(h,o,u),c&&c.m(h,u),O(h,r,u),d&&d.m(h,u),O(h,a,u),l=!0},p(h,u){const m={};u&8&&(m.visible=h[3]),t.$set(m);const A={};u&8&&(A.unfolded=h[3]),s.$set(A),h[2]?c?(c.p(h,u),u&4&&k(c,1)):(c=Dd(h),c.c(),k(c,1),c.m(r.parentNode,r)):c&&(de(),T(c,1,1,()=>{c=null}),he()),h[1]?d?(d.p(h,u),u&2&&k(d,1)):(d=Sd(h),d.c(),k(d,1),d.m(a.parentNode,a)):d&&(de(),T(d,1,1,()=>{d=null}),he())},i(h){l||(k(t.$$.fragment,h),k(s.$$.fragment,h),k(c),k(d),l=!0)},o(h){T(t.$$.fragment,h),T(s.$$.fragment,h),T(c),T(d),l=!1},d(h){h&&(z(e),z(i),z(o),z(r),z(a)),ie(t,h),ie(s),c&&c.d(h),d&&d.d(h)}}}function Dd(n){let t,e,i;return e=new Lu({props:{unfolded:n[3],content:n[2],inDelay:500}}),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","text svelte-1f7m1lj")},m(s,o){O(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o&8&&(r.unfolded=s[3]),o&4&&(r.content=s[2]),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){T(e.$$.fragment,s),i=!1},d(s){s&&z(t),ie(e)}}}function Sd(n){let t,e,i;return e=new Yu({props:{autoplayConfig:{autoplayCarousel:!1},unfolded:n[3],mediaData:n[1],tag:n[0],enableCarousel:!1,mediaItemConfig:{canPlay:!1,playButtonSizeIfNeed:"small",disableVideoIfHavePoster:!0},inDelay:500,duration:500}}),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","media-wrapper svelte-1f7m1lj")},m(s,o){O(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o&8&&(r.unfolded=s[3]),o&2&&(r.mediaData=s[1]),o&1&&(r.tag=s[0]),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){T(e.$$.fragment,s),i=!1},d(s){s&&z(t),ie(e)}}}function KC(n){let t,e,i=n[0].state&&xd(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[0].state?i?(i.p(s,o),o&1&&k(i,1)):(i=xd(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function $C(n,t,e){let i,s,o,r,{tag:a}=t;return n.$$set=l=>{"tag"in l&&e(0,a=l.tag)},n.$$.update=()=>{var l,c,d;n.$$.dirty&1&&e(3,i=a.state?a.state.unfolded:!1),n.$$.dirty&1&&e(4,s=(c=(l=a.data.title)!=null?l:a.data.text)!=null?c:""),n.$$.dirty&16&&e(2,o=((d=s.length)!=null?d:0)>7?s.substring(0,6)+"...":s),n.$$.dirty&1&&e(1,r=a.data.mediaData)},[a,r,o,i,s]}class eI extends le{constructor(t){super(),ae(this,t,$C,KC,oe,{tag:0},qC)}}function tI(n){ue(n,"svelte-sezqcq",'@charset "UTF-8";.svelte-sezqcq.svelte-sezqcq{box-sizing:border-box}.marketing.svelte-sezqcq.svelte-sezqcq{transform:translateY(-100%)}.marketing.svelte-sezqcq .line.svelte-sezqcq{position:absolute;height:1.875rem;width:0.0625rem;left:50%;transform:translateX(-50%);background-color:white;bottom:0;transform-origin:bottom;transition:all 500ms}.marketing.svelte-sezqcq .content.svelte-sezqcq{position:relative;min-width:7.5rem;width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;border-radius:0.25rem;top:-1.875rem;left:-1rem;padding:0.5rem 0rem 0.5625rem;transition-property:opacity, transform;transition-duration:500ms}.marketing.svelte-sezqcq .content .headerImage.svelte-sezqcq{position:absolute;width:100%;top:0.25rem;transform:translateY(-100%);border-top-left-radius:0.25rem;border-top-right-radius:0.25rem}.title-wrapper.svelte-sezqcq.svelte-sezqcq{position:relative;width:100%;height:1.125rem}.title-wrapper.svelte-sezqcq .title.svelte-sezqcq{border-radius:0.25rem;width:100%;padding-left:0.625rem;padding-right:0.625rem}.title-wrapper.svelte-sezqcq .title .text.svelte-sezqcq{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:0.75rem;font-weight:bold;line-height:1.125rem}.footer.svelte-sezqcq.svelte-sezqcq{position:relative;padding:0.5rem 0.625rem 0 0;width:100%;display:flex;align-items:center}.footer.svelte-sezqcq .goto-button.svelte-sezqcq{display:flex;align-self:flex-end;flex-wrap:wrap;align-items:center;overflow:hidden;height:0.875rem}.footer.svelte-sezqcq .goto-button .gap.svelte-sezqcq{height:100%;width:0.625rem}.footer.svelte-sezqcq .goto-button .text.svelte-sezqcq{display:block;height:100%;font-size:0.625rem}.footer.svelte-sezqcq .arrow-wrapper.svelte-sezqcq{height:0.875rem;display:flex;align-self:flex-end;flex-grow:0;flex-shrink:0;align-items:center;margin-left:0.25rem}.footer.svelte-sezqcq .arrow-wrapper svg.arrow.svelte-sezqcq{width:0.375rem;height:0.625rem}.footer.svelte-sezqcq .price.svelte-sezqcq{flex-shrink:0;margin-right:auto;white-space:nowrap;display:flex;align-items:baseline;margin-left:0.625rem}.footer.svelte-sezqcq .price .value.svelte-sezqcq{position:relative;font-size:0.875rem;line-height:1rem;font-family:TG-TYPE, PingFangSC, Segoe UI, Rototo, sans-serif;letter-spacing:0rem}.footer.svelte-sezqcq .price .unit.svelte-sezqcq{padding-left:0.125rem;font-size:0.625rem}.tags-wrapper.svelte-sezqcq.svelte-sezqcq{position:relative;overflow:hidden;height:1rem;margin-top:0.25rem}.tags-wrapper.svelte-sezqcq .tags.svelte-sezqcq{position:relative;display:inline-flex;max-width:100%;flex-wrap:wrap;padding-left:0.625rem;padding-right:0.375rem}.tags-wrapper.svelte-sezqcq .tags .tag.svelte-sezqcq{display:flex;align-items:center;justify-content:center;flex-shrink:0;flex-grow:0;font-size:0.625rem;height:1rem;margin-right:0.25rem;margin-bottom:0.625rem;padding:0 0.25rem;border-radius:0.125rem;max-width:100%;text-overflow:ellipsis;overflow:hidden}.marketing.light.svelte-sezqcq .content.svelte-sezqcq{background-color:white}.marketing.light.svelte-sezqcq .content .title-wrapper .title .text.svelte-sezqcq{color:rgba(0, 0, 0, 0.8)}.marketing.light.svelte-sezqcq .content .tags-wrapper .tags .primary-tag.svelte-sezqcq{background:rgba(234, 208, 154, 0.5);color:#946700}.marketing.light.svelte-sezqcq .content .tags-wrapper .tags .secondary-tag.svelte-sezqcq{background:rgba(0, 0, 0, 0.06);color:rgba(0, 0, 0, 0.5)}.marketing.light.svelte-sezqcq .content .footer.svelte-sezqcq{color:#946700;fill:#946700}.marketing.dark.svelte-sezqcq .content.svelte-sezqcq{background-color:rgba(0, 0, 0, 0.5)}.marketing.dark.svelte-sezqcq .content .title-wrapper .title .text.svelte-sezqcq{color:white}.marketing.dark.svelte-sezqcq .content .tags-wrapper .tags .primary-tag.svelte-sezqcq{background:rgba(234, 208, 154, 0.5);color:white}.marketing.dark.svelte-sezqcq .content .tags-wrapper .tags .secondary-tag.svelte-sezqcq{background:rgba(255, 255, 255, 0.15);color:rgba(255, 255, 255, 0.85)}.marketing.dark.svelte-sezqcq .content .footer.svelte-sezqcq{color:#ead09a;fill:#ead09a}.marketing.unfolded.svelte-sezqcq .line.svelte-sezqcq{transform:translateX(-50%) scale(1, 1)}.marketing.folded.svelte-sezqcq .line.svelte-sezqcq{transform:translateX(-50%) scale(1, 0);transition-timing-function:ease-in}.marketing.unfolded.svelte-sezqcq .content.svelte-sezqcq{opacity:1}.marketing.folded.svelte-sezqcq .content.svelte-sezqcq{opacity:0;transform:translateY(0.425rem);transition-timing-function:ease-in}')}function Td(n,t,e){const i=n.slice();return i[0]=t[e],i}function Ld(n,t,e){const i=n.slice();return i[0]=t[e],i}function jd(n){let t,e;return{c(){t=D("img"),w(t,"class","headerImage svelte-sezqcq"),kt(t.src,e=n[3].headerPictureUrl)||w(t,"src",e),w(t,"alt","")},m(i,s){O(i,t,s)},p(i,s){s&8&&!kt(t.src,e=i[3].headerPictureUrl)&&w(t,"src",e)},d(i){i&&z(t)}}}function zd(n){let t,e,i,s,o=Pe(n[2]||[]),r=[];for(let c=0;c<o.length;c+=1)r[c]=Od(Ld(n,o,c));let a=Pe(n[5]||[]),l=[];for(let c=0;c<a.length;c+=1)l[c]=Bd(Td(n,a,c));return{c(){t=D("div"),e=D("div");for(let c=0;c<r.length;c+=1)r[c].c();i=$();for(let c=0;c<l.length;c+=1)l[c].c();w(e,"class","tags svelte-sezqcq"),He(()=>n[11].call(e)),w(t,"class","tags-wrapper svelte-sezqcq")},m(c,d){O(c,t,d),x(t,e);for(let h=0;h<r.length;h+=1)r[h]&&r[h].m(e,null);x(e,i);for(let h=0;h<l.length;h+=1)l[h]&&l[h].m(e,null);s=wo(e,n[11].bind(e))},p(c,d){if(d&4){o=Pe(c[2]||[]);let h;for(h=0;h<o.length;h+=1){const u=Ld(c,o,h);r[h]?r[h].p(u,d):(r[h]=Od(u),r[h].c(),r[h].m(e,i))}for(;h<r.length;h+=1)r[h].d(1);r.length=o.length}if(d&32){a=Pe(c[5]||[]);let h;for(h=0;h<a.length;h+=1){const u=Td(c,a,h);l[h]?l[h].p(u,d):(l[h]=Bd(u),l[h].c(),l[h].m(e,null))}for(;h<l.length;h+=1)l[h].d(1);l.length=a.length}},d(c){c&&z(t),jt(r,c),jt(l,c),s()}}}function Od(n){let t,e=n[0]+"",i;return{c(){t=D("div"),i=xe(e),w(t,"class","tag primary-tag svelte-sezqcq"),j(t,"min-width",Za)},m(s,o){O(s,t,o),x(t,i)},p(s,o){o&4&&e!==(e=s[0]+"")&&Se(i,e)},d(s){s&&z(t)}}}function Bd(n){let t,e=n[0]+"",i;return{c(){t=D("div"),i=xe(e),w(t,"class","tag secondary-tag svelte-sezqcq"),j(t,"min-width",Za)},m(s,o){O(s,t,o),x(t,i)},p(s,o){o&32&&e!==(e=s[0]+"")&&Se(i,e)},d(s){s&&z(t)}}}function Vd(n){let t,e,i=n[7]&&Rd(n),s=n[3].highlightText&&Gd(n);return{c(){t=D("div"),i&&i.c(),e=$(),s&&s.c(),w(t,"class","footer svelte-sezqcq")},m(o,r){O(o,t,r),i&&i.m(t,null),x(t,e),s&&s.m(t,null)},p(o,r){o[7]?i?i.p(o,r):(i=Rd(o),i.c(),i.m(t,e)):i&&(i.d(1),i=null),o[3].highlightText?s?s.p(o,r):(s=Gd(o),s.c(),s.m(t,null)):s&&(s.d(1),s=null)},d(o){o&&z(t),i&&i.d(),s&&s.d()}}}function Rd(n){let t,e,i=n[3].price.value+"",s,o,r=n[3].price.unit&&Qd(n);return{c(){t=D("div"),e=D("span"),s=xe(i),o=$(),r&&r.c(),w(e,"class","value svelte-sezqcq"),w(t,"class","price svelte-sezqcq")},m(a,l){O(a,t,l),x(t,e),x(e,s),x(t,o),r&&r.m(t,null)},p(a,l){l&8&&i!==(i=a[3].price.value+"")&&Se(s,i),a[3].price.unit?r?r.p(a,l):(r=Qd(a),r.c(),r.m(t,null)):r&&(r.d(1),r=null)},d(a){a&&z(t),r&&r.d()}}}function Qd(n){let t,e=n[3].price.unit+"",i;return{c(){t=D("span"),i=xe(e),w(t,"class","unit svelte-sezqcq")},m(s,o){O(s,t,o),x(t,i)},p(s,o){o&8&&e!==(e=s[3].price.unit+"")&&Se(i,e)},d(s){s&&z(t)}}}function Gd(n){let t,e,i,s,o=n[3].highlightText+"",r,a,l;return{c(){t=D("div"),e=D("div"),i=$(),s=D("span"),r=xe(o),a=$(),l=D("div"),l.innerHTML='<svg class="arrow svelte-sezqcq" viewBox="0 0 6 9"><g transform="translate(-3, -2)" fill-rule="nonzero" class="svelte-sezqcq"><path d="M4.43868724,2.12056563 C4.28121824,1.95989074 4.02582143,1.95979988 3.86824251,2.1203627 C3.72498894,2.26632889 3.71189225,2.49481723 3.82900374,2.65587166 L6.57092402,5.92894326 C6.72651763,6.11470411 6.72651763,6.38529589 6.57092402,6.57105674 L3.86804348,9.79798499 C3.72488984,9.94405307 3.71194952,10.1725507 3.8291712,10.3335217 L3.86824251,10.3796373 C4.01149607,10.5256035 4.23559087,10.5387981 4.39346025,10.4192733 L4.43868724,10.3794344 L8.1144599,6.5985342 C8.30312347,6.40447482 8.30312347,6.09552518 8.1144599,5.9014658 L4.43868724,2.12056563 Z" class="svelte-sezqcq"></path></g></svg>',w(e,"class","gap svelte-sezqcq"),w(s,"class","text svelte-sezqcq"),w(t,"class","goto-button goto-icon svelte-sezqcq"),w(l,"class","arrow-wrapper svelte-sezqcq")},m(c,d){O(c,t,d),x(t,e),x(t,i),x(t,s),x(s,r),O(c,a,d),O(c,l,d)},p(c,d){d&8&&o!==(o=c[3].highlightText+"")&&Se(r,o)},d(c){c&&(z(t),z(a),z(l))}}}function iI(n){var M,B;let t,e,i,s,o,r,a,l,c,d,h=n[3].title+"",u,m,A,p,g;e=new Wt({props:{visible:n[4],outDelay:500,left:61,bottom:87,blurRadius:150,spreadRadius:75}});let v=n[3].headerPictureUrl&&jd(n),y=((M=n[2].length)!=null?M:0)+((B=n[5].length)!=null?B:0)>0&&zd(n),I=(n[7]||n[3].highlightText)&&Vd(n);return{c(){t=D("div"),ne(e.$$.fragment),i=$(),s=D("div"),o=$(),r=D("div"),v&&v.c(),a=$(),l=D("div"),c=D("div"),d=D("div"),u=xe(h),m=$(),y&&y.c(),A=$(),I&&I.c(),w(s,"class","line svelte-sezqcq"),j(s,"transition-delay",n[4]?_s+"ms":Fs+Hd-Nd-40+"ms"),w(d,"class","text svelte-sezqcq"),w(c,"class","title svelte-sezqcq"),w(l,"class","title-wrapper svelte-sezqcq"),w(r,"class","content svelte-sezqcq"),j(r,"max-width",Ht(n[9])),j(r,"transition-delay",n[4]?_s+Fs+"ms":"0ms"),w(t,"class",p=Qe(`marketing ${n[6]}`)+" svelte-sezqcq"),K(t,"unfolded",n[4]),K(t,"folded",n[8])},m(P,V){O(P,t,V),te(e,t,null),x(t,i),x(t,s),x(t,o),x(t,r),v&&v.m(r,null),x(r,a),x(r,l),x(l,c),x(c,d),x(d,u),x(r,m),y&&y.m(r,null),x(r,A),I&&I.m(r,null),g=!0},p(P,[V]){var X,Y;const L={};V&16&&(L.visible=P[4]),e.$set(L),V&16&&j(s,"transition-delay",P[4]?_s+"ms":Fs+Hd-Nd-40+"ms"),P[3].headerPictureUrl?v?v.p(P,V):(v=jd(P),v.c(),v.m(r,a)):v&&(v.d(1),v=null),(!g||V&8)&&h!==(h=P[3].title+"")&&Se(u,h),((X=P[2].length)!=null?X:0)+((Y=P[5].length)!=null?Y:0)>0?y?y.p(P,V):(y=zd(P),y.c(),y.m(r,A)):y&&(y.d(1),y=null),P[7]||P[3].highlightText?I?I.p(P,V):(I=Vd(P),I.c(),I.m(r,null)):I&&(I.d(1),I=null),V&16&&j(r,"transition-delay",P[4]?_s+Fs+"ms":"0ms"),(!g||V&64&&p!==(p=Qe(`marketing ${P[6]}`)+" svelte-sezqcq"))&&w(t,"class",p),(!g||V&80)&&K(t,"unfolded",P[4]),(!g||V&320)&&K(t,"folded",P[8])},i(P){g||(k(e.$$.fragment,P),g=!0)},o(P){T(e.$$.fragment,P),g=!1},d(P){P&&z(t),ie(e),v&&v.d(),y&&y.d(),I&&I.d()}}}const Za=40,_s=400,Nd=500,Fs=180,Hd=500;function nI(n,t,e){let i,s,o,r,a,l,c,d,{tag:h}=t,u,m=(()=>{var g;const p=(g=h.data.limitWidth)!=null?g:!0;if(typeof p=="number")return p;if(p===!0)return 172})();function A(){u=this.offsetHeight,e(1,u)}return n.$$set=p=>{"tag"in p&&e(0,h=p.tag)},n.$$.update=()=>{var p,g,v,y,I,M;n.$$.dirty&1&&e(4,i=(g=(p=h.state)==null?void 0:p.unfolded)!=null?g:!1),n.$$.dirty&16&&e(8,s=!i),n.$$.dirty&1&&e(3,o=h.data),n.$$.dirty&8&&e(7,r=ni((v=o.price)==null?void 0:v.value)&&((y=o.price)==null?void 0:y.value)!==""),n.$$.dirty&1&&e(6,a=h.data.theme||"light"),n.$$.dirty&1026&&u>40&&e(10,l=l-1),n.$$.dirty&1032&&e(2,c=((I=o.brandTags)==null?void 0:I.slice(0,l).filter(Boolean))||[]),n.$$.dirty&1036&&e(5,d=((M=o.tags)==null?void 0:M.slice(0,l-c.length).filter(Boolean))||[])},e(10,l=(m-20)/Za),[h,u,c,o,i,d,a,r,s,m,l,A]}class sI extends le{constructor(t){super(),ae(this,t,nI,iI,oe,{tag:0},tI)}}class oI extends Audio{constructor(e){super();f(this,"sharedAudioSrc");f(this,"sharedAudioPaused",!0);f(this,"sharedAudioCurrentTime",0);f(this,"tryplaying",!1);f(this,"audioInstance");f(this,"eventListenerDisposer");this.sharedAudioSrc=e}get paused(){var e;return(e=this.sharedAudioPaused)!=null?e:!0}get currentTime(){return this.sharedAudioCurrentTime}play(){return W(this,null,function*(){var i,s,o;if(this.tryplaying)return;this.tryplaying=!0,(!this.audioInstance||((i=this.audioInstance)==null?void 0:i.realSrc)!==this.sharedAudioSrc)&&(this.audioInstance=y1(this.sharedAudioSrc,{namespace:Na.PlayAudio})),(s=this.eventListenerDisposer)==null||s.call(this),this.eventListenerDisposer=this.addEventListeners(),this.audioInstance.currentTime=(o=this.currentTime)!=null?o:0;const e=this.audioInstance.currentTime!==this.currentTime;this.audioInstance.play().then(()=>{var r;this.audioInstance.muted=!1,e&&(this.audioInstance.currentTime=(r=this.currentTime)!=null?r:0),this.sharedAudioPaused=!1}).catch(r=>{var a;r.message==="The operation is not supported."?console.error("Error: 音频文件可能损坏或修改过文件后缀",r):console.error("Error: error playing media in Safari",r),this.endedHandler(),(a=this.onerror)==null||a.call(this,r)}).finally(()=>{this.tryplaying=!1})})}pause(e){var i;if(this.audioInstance&&!this.paused){if(this.sharedAudioPaused=!0,(i=this.eventListenerDisposer)==null||i.call(this),this.audioInstance.ended){this.endedHandler();return}this.audioInstance.paused||this.audioInstance.pause(),this.onpause(e!=null?e:new Event("pause")),this.clear()}}dispose(){var e;(e=this.eventListenerDisposer)==null||e.call(this),this.clear(),this.audioInstance=void 0}clear(){var e;(e=this.audioInstance)==null||e.clear()}endedHandler(e){var i,s;(i=this.onended)==null||i.call(this,e!=null?e:new Event("ended")),(s=this.eventListenerDisposer)==null||s.call(this),this.sharedAudioPaused=!0,this.sharedAudioCurrentTime=0,this.clear()}addEventListeners(){const e=this.audioInstance;if(!e)return;const i=u=>{var m;this.sharedAudioCurrentTime=e.currentTime,(m=this.ontimeupdate)==null||m.call(this,u)},s=u=>{var m;e.isBlankAudio||(this.sharedAudioPaused=!1,(m=this.onplay)==null||m.call(this,u))},o=u=>{this.pause(u)},r=u=>{this.endedHandler(u)},a=u=>{var m;this.sharedAudioPaused=!0,(m=this.onerror)==null||m.call(this,u)},l=u=>{var m;return(m=this.oncanplay)==null?void 0:m.call(this,u)},c=u=>{var m;return(m=this.oncanplaythrough)==null?void 0:m.call(this,u)},d=u=>{var m;return(m=this.onloadeddata)==null?void 0:m.call(this,u)},h=u=>{var m;return(m=this.onloadedmetadata)==null?void 0:m.call(this,u)};return e.addEventListener("timeupdate",i),e.addEventListener("play",s),e.addEventListener("pause",o),e.addEventListener("ended",r),e.addEventListener("error",a),e.addEventListener("canplay",l),e.addEventListener("canplaythrough",c),e.addEventListener("loadeddata",d),e.addEventListener("loadedmetadata",h),()=>{e.removeEventListener("timeupdate",i),e.removeEventListener("play",s),e.removeEventListener("pause",o),e.removeEventListener("ended",r),e.removeEventListener("error",a),e.removeEventListener("canplay",l),e.removeEventListener("canplaythrough",c),e.removeEventListener("loadeddata",d),e.removeEventListener("loadedmetadata",h)}}}function rI(n){ue(n,"svelte-13e7hxv",".audio.svelte-13e7hxv{pointer-events:auto;cursor:pointer;width:100%;height:100%}")}function aI(n){let t,e,i,s;const o=n[8].default,r=Pn(o,n,n[7],null);return{c(){t=D("div"),r&&r.c(),w(t,"class","audio svelte-13e7hxv"),w(t,"style",n[0])},m(a,l){O(a,t,l),r&&r.m(t,null),e=!0,i||(s=be(t,"click",Oh(n[1])),i=!0)},p(a,[l]){r&&r.p&&(!e||l&128)&&Mn(r,o,a,a[7],e?En(o,a[7],l,null):kn(a[7]),null),(!e||l&1)&&w(t,"style",a[0])},i(a){e||(k(r,a),e=!0)},o(a){T(r,a),e=!1},d(a){a&&z(t),r&&r.d(a),i=!1,s()}}}function lI(n,t,e){let{$$slots:i={},$$scope:s}=t,{url:o}=t,{enable:r=!0}=t,{style:a=""}=t,{hooksInfo:l}=t;const c=Co(),d=fi("hooks"),h=fi("mediaStore");let u,m=!0;function A(){e(5,u.onplay=g=>{d.emit("playStateChange",G({event:g,state:"playing",mediaInstance:u},l)),c("play"),e(6,m=!1)},u),e(5,u.onpause=g=>{d.emit("playStateChange",G({event:g,state:"paused",mediaInstance:u},l)),c("pause"),e(6,m=!0)},u),e(5,u.onended=g=>{d.emit("playStateChange",G({event:g,state:"paused",mediaInstance:u},l)),c("pause"),e(6,m=!0)},u),e(5,u.onloadedmetadata=g=>{typeof u.duration=="number"&&!Number.isNaN(u.duration)&&c("duration",u.duration)},u),e(5,u.onerror=g=>{c("pause"),e(6,m=!0)},u),e(5,u.ontimeupdate=g=>{c("timeupdate",u.currentTime)},u)}h.subscribe(({currentMediaElement:g})=>{g!==u&&(m||u==null||u.pause())});function p(g){u&&(d.emit("click",G({event:g,target:"AudioTagPlayIcon",audioInstance:u},l)),h.set({currentMediaElement:u}),d.emit("playStateChange",G({event:g,state:u.paused?"playing":"paused",mediaInstance:u},l)),u.paused?u.play():u.pause())}return n.$$set=g=>{"url"in g&&e(2,o=g.url),"enable"in g&&e(3,r=g.enable),"style"in g&&e(0,a=g.style),"hooksInfo"in g&&e(4,l=g.hooksInfo),"$$scope"in g&&e(7,s=g.$$scope)},n.$$.update=()=>{n.$$.dirty&4&&(o||c("duration",0)),n.$$.dirty&36&&(u==null||u.dispose(),e(5,u=new oI(o)),c("audioRef",u),setTimeout(()=>c("audioRef",u),200),A()),n.$$.dirty&40&&(r||u==null||u.pause()),n.$$.dirty&72&&c(r&&!m?"play":"pause")},[a,p,o,r,l,u,m,s,i]}let Uu=class extends le{constructor(t){super(),ae(this,t,lI,aI,oe,{url:2,enable:3,style:0,hooksInfo:4},rI)}};function cI(n){ue(n,"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 _d(n){let t,e;return t=new Wt({props:{center:!0,blurRadius:12,spreadRadius:5}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function dI(n){let t,e,i,s,o,r=n[1]&&_d();return{c(){t=D("div"),r&&r.c(),e=$(),i=D("div"),s=D("div"),s.innerHTML='<svg width="100%" height="100%" viewBox="0 0 128 128"><g transform="rotate(-45 12 64) translate(12 64)" fill="black" stroke="black" fill-opacity="0.6" stroke-opacity="0.6"><path stroke="none" class="sound-wave sound-wave-1 svelte-srt2pi" d="M0,23 A23,23 0 0,0 23,0 L0,0"></path><path fill="none" stroke-width="15" class="sound-wave sound-wave-2 svelte-srt2pi" d="M0,46 A46,46 0 0,0 46,0"></path><path fill="none" stroke-width="15" class="sound-wave sound-wave-3 svelte-srt2pi" d="M0,80 A80,80 0 0,0 80,0"></path></g></svg>',w(s,"class","sound-wave__container svelte-srt2pi"),w(i,"class","audio-icon svelte-srt2pi"),K(i,"playing",n[0]),w(t,"class","audio-icon__wrapper svelte-srt2pi"),w(t,"style",n[2]),j(t,"width",n[5]),j(t,"height",n[5])},m(a,l){O(a,t,l),r&&r.m(t,null),x(t,e),x(t,i),x(i,s),n[7](s),n[8](t),o=!0},p(a,[l]){a[1]?r?l&2&&k(r,1):(r=_d(),r.c(),k(r,1),r.m(t,e)):r&&(de(),T(r,1,1,()=>{r=null}),he()),(!o||l&1)&&K(i,"playing",a[0]),(!o||l&4)&&w(t,"style",a[2]);const c=l&4;(c||l&36)&&j(t,"width",a[5]),(c||l&36)&&j(t,"height",a[5])},i(a){o||(k(r),o=!0)},o(a){T(r),o=!1},d(a){a&&z(t),r&&r.d(),n[7](null),n[8](null)}}}function hI(n,t,e){let i,{playing:s}=t,{shadow:o=!1}=t,{style:r=null}=t,{width:a="100%"}=t,l,c;function d(u){Ge[u?"unshift":"push"](()=>{c=u,e(4,c)})}function h(u){Ge[u?"unshift":"push"](()=>{l=u,e(3,l)})}return n.$$set=u=>{"playing"in u&&e(0,s=u.playing),"shadow"in u&&e(1,o=u.shadow),"style"in u&&e(2,r=u.style),"width"in u&&e(6,a=u.width)},n.$$.update=()=>{n.$$.dirty&64&&e(5,i=typeof a=="number"?Ht(a):a)},[s,o,r,l,c,i,a,d,h]}class Xu extends le{constructor(t){super(),ae(this,t,hI,dI,oe,{playing:0,shadow:1,style:2,width:6},cI)}}function uI(n){ue(n,"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 Fd(n){var g,v;let t,e,i,s,o,r,a,l,c,d,h,u,m,A;e=new Wt({props:{visible:n[6],left:n[3]/2+"px",bottom:12,width:2,blurRadius:120,spreadRadius:60}});let p=n[6]&&Wd(n);return c=new ju({props:{visible:n[6],textUnfolded:n[1],content:n[5]}}),h=new Ha({props:{unfolded:n[6],length:n[3],outDelay:n[4]+20*Math.min((v=(g=n[5])==null?void 0:g.length)!=null?v:10,15),useLinearColor:!0}}),{c(){t=D("div"),ne(e.$$.fragment),i=$(),s=D("div"),o=D("div"),r=D("div"),p&&p.c(),a=$(),l=D("div"),ne(c.$$.fragment),d=$(),ne(h.$$.fragment),w(r,"class","audio-icon svelte-1s6gk4a"),j(l,"display","inline-block"),w(o,"class","wrapper svelte-1s6gk4a"),w(s,"class","content svelte-1s6gk4a"),w(t,"class","audio-tag svelte-1s6gk4a"),K(t,"unfolded",n[6])},m(y,I){O(y,t,I),te(e,t,null),x(t,i),x(t,s),x(s,o),x(o,r),p&&p.m(r,null),x(o,a),x(o,l),te(c,l,null),x(t,d),te(h,t,null),u=!0,m||(A=[be(l,"click",n[7]),ei(Sn.call(null,l)),be(l,"clientWidth",n[12])],m=!0)},p(y,I){var V,L;const M={};I&64&&(M.visible=y[6]),I&8&&(M.left=y[3]/2+"px"),e.$set(M),y[6]?p?(p.p(y,I),I&64&&k(p,1)):(p=Wd(y),p.c(),k(p,1),p.m(r,null)):p&&(de(),T(p,1,1,()=>{p=null}),he());const B={};I&64&&(B.visible=y[6]),I&2&&(B.textUnfolded=y[1]),I&32&&(B.content=y[5]),c.$set(B);const P={};I&64&&(P.unfolded=y[6]),I&8&&(P.length=y[3]),I&48&&(P.outDelay=y[4]+20*Math.min((L=(V=y[5])==null?void 0:V.length)!=null?L:10,15)),h.$set(P),(!u||I&64)&&K(t,"unfolded",y[6])},i(y){u||(k(e.$$.fragment,y),k(p),k(c.$$.fragment,y),k(h.$$.fragment,y),u=!0)},o(y){T(e.$$.fragment,y),T(p),T(c.$$.fragment,y),T(h.$$.fragment,y),u=!1},d(y){y&&z(t),ie(e),p&&p.d(),ie(c),ie(h),m=!1,qe(A)}}}function Wd(n){let t,e,i,s,o,r,a;return e=new Wt({props:{center:!0,blurRadius:15,spreadRadius:6}}),s=new Uu({props:{enable:n[6],url:n[0].data.audioUrl,hooksInfo:{tag:n[0]},$$slots:{default:[fI]},$$scope:{ctx:n}}}),s.$on("play",n[8]),s.$on("pause",n[9]),s.$on("error",n[10]),s.$on("audioRef",n[11]),{c(){t=D("div"),ne(e.$$.fragment),i=$(),ne(s.$$.fragment),w(t,"class","audio svelte-1s6gk4a")},m(l,c){O(l,t,c),te(e,t,null),x(t,i),te(s,t,null),a=!0},p(l,c){n=l;const d={};c&64&&(d.enable=n[6]),c&1&&(d.url=n[0].data.audioUrl),c&1&&(d.hooksInfo={tag:n[0]}),c&8196&&(d.$$scope={dirty:c,ctx:n}),s.$set(d)},i(l){a||(k(e.$$.fragment,l),k(s.$$.fragment,l),l&&He(()=>{a&&(r&&r.end(1),o=Vi(t,it,{duration:1e3,delay:0,easing:pn}),o.start())}),a=!0)},o(l){var c,d;T(e.$$.fragment,l),T(s.$$.fragment,l),o&&o.invalidate(),l&&(r=Dn(t,it,{duration:1e3,delay:20*Math.min((d=(c=n[5])==null?void 0:c.length)!=null?d:10,15),easing:pn})),a=!1},d(l){l&&z(t),ie(e),ie(s),l&&r&&r.end()}}}function fI(n){let t,e,i;return e=new Xu({props:{playing:n[2]}}),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","audio-icon__wrapper svelte-1s6gk4a")},m(s,o){O(s,t,o),te(e,t,null),i=!0},p(s,o){const r={};o&4&&(r.playing=s[2]),e.$set(r)},i(s){i||(k(e.$$.fragment,s),i=!0)},o(s){T(e.$$.fragment,s),i=!1},d(s){s&&z(t),ie(e)}}}function mI(n){let t,e,i=n[0].state&&Fd(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[0].state?i?(i.p(s,o),o&1&&k(i,1)):(i=Fd(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function gI(n,t,e){let i,s,o,{tag:r}=t,a=!1,l=!1,c;function d(){e(1,a=!a)}const h=()=>{e(2,l=!0)},u=()=>{e(2,l=!1)},m=()=>{e(2,l=!1)};function A(g){xn.call(this,n,g)}const p=g=>{e(3,c=g.detail)};return n.$$set=g=>{"tag"in g&&e(0,r=g.tag)},n.$$.update=()=>{var g,v,y;n.$$.dirty&1&&e(6,i=!!((g=r.state)!=null&&g.unfolded)),n.$$.dirty&1&&e(5,s=(y=(v=r.data.title)!=null?v:r.data.text)!=null?y:""),n.$$.dirty&2&&e(4,o=a?450:0)},[r,a,l,c,o,s,i,d,h,u,m,A,p]}class pI extends le{constructor(t){super(),ae(this,t,gI,mI,oe,{tag:0},uI)}}function AI(n){ue(n,"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 Yd(n){let t,e,i,s;return i=new Uu({props:{style:"width: max-content; height: max-content;",enable:n[0].state.visible,url:n[0].data.audioUrl,hooksInfo:{tag:n[0]},$$slots:{default:[bI]},$$scope:{ctx:n}}}),i.$on("play",n[6]),i.$on("pause",n[7]),i.$on("error",n[8]),i.$on("timeupdate",n[9]),i.$on("duration",n[10]),i.$on("audioRef",n[11]),{c(){t=D("div"),e=D("div"),ne(i.$$.fragment),w(e,"class","audio-tag svelte-58hfjf"),j(e,"background-color",n[4].bgColor),j(e,"color",n[4].fontColor),w(t,"class","audio-tag__wrapper svelte-58hfjf")},m(o,r){O(o,t,r),x(t,e),te(i,e,null),s=!0},p(o,r){const a={};r&1&&(a.enable=o[0].state.visible),r&1&&(a.url=o[0].data.audioUrl),r&1&&(a.hooksInfo={tag:o[0]}),r&8232&&(a.$$scope={dirty:r,ctx:o}),i.$set(a),r&16&&j(e,"background-color",o[4].bgColor),r&16&&j(e,"color",o[4].fontColor)},i(o){s||(k(i.$$.fragment,o),s=!0)},o(o){T(i.$$.fragment,o),s=!1},d(o){o&&z(t),ie(i)}}}function vI(n){let t;return{c(){t=xe(n[5])},m(e,i){O(e,t,i)},p(e,i){i&32&&Se(t,e[5])},d(e){e&&z(t)}}}function bI(n){let t,e,i,s,o,r,a;return i=new Xu({props:{playing:n[3]}}),r=new _a({props:{maxWidth:72,maxLine:1,$$slots:{default:[vI]},$$scope:{ctx:n}}}),{c(){t=D("div"),e=D("div"),ne(i.$$.fragment),s=$(),o=D("div"),ne(r.$$.fragment),w(e,"class","audio-icon__wrapper svelte-58hfjf"),w(o,"class","text svelte-58hfjf"),w(t,"class","audio__inner svelte-58hfjf")},m(l,c){O(l,t,c),x(t,e),te(i,e,null),x(t,s),x(t,o),te(r,o,null),a=!0},p(l,c){const d={};c&8&&(d.playing=l[3]),i.$set(d);const h={};c&8224&&(h.$$scope={dirty:c,ctx:l}),r.$set(h)},i(l){a||(k(i.$$.fragment,l),k(r.$$.fragment,l),a=!0)},o(l){T(i.$$.fragment,l),T(r.$$.fragment,l),a=!1},d(l){l&&z(t),ie(i),ie(r)}}}function yI(n){let t,e,i=n[0].state&&Yd(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[0].state?i?(i.p(s,o),o&1&&k(i,1)):(i=Yd(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function wI(n,t,e){let i,s,{tag:o}=t;const r={light:{bgColor:"rgba(255, 255, 255, 0.3)",fontColor:"rgba(0, 0, 0, 0.6)"},dark:{bgColor:"rgba(0, 0, 0, 0.3)",fontColor:"white"}};let a=0,l=0,c=!1;const d=()=>{e(3,c=!0)},h=()=>{e(3,c=!1)},u=()=>{e(3,c=!1)},m=g=>{e(1,a=g.detail)},A=g=>{e(2,l=g.detail)};function p(g){xn.call(this,n,g)}return n.$$set=g=>{"tag"in g&&e(0,o=g.tag)},n.$$.update=()=>{var g,v,y;n.$$.dirty&1&&e(5,i=(v=(g=o.data.title)!=null?g:o.data.text)!=null?v:""),n.$$.dirty&1&&e(4,s=(y=r[o.data.theme||"light"])!=null?y:r.light)},[o,a,l,c,s,i,d,h,u,m,A,p]}class CI extends le{constructor(t){super(),ae(this,t,wI,yI,oe,{tag:0},AI)}}function II(n){let t,e;return t=new CI({props:{tag:n[0]}}),t.$on("audioRef",n[2]),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.tag=i[0]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function PI(n){let t,e;return t=new pI({props:{tag:n[0]}}),t.$on("audioRef",n[2]),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&1&&(o.tag=i[0]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function EI(n){let t,e,i,s;const o=[PI,II],r=[];function a(l,c){return l[1]==="line"?0:l[1]==="plane"?1:-1}return~(t=a(n))&&(e=r[t]=o[t](n)),{c(){e&&e.c(),i=Ee()},m(l,c){~t&&r[t].m(l,c),O(l,i,c),s=!0},p(l,[c]){let d=t;t=a(l),t===d?~t&&r[t].p(l,c):(e&&(de(),T(r[d],1,1,()=>{r[d]=null}),he()),~t?(e=r[t],e?e.p(l,c):(e=r[t]=o[t](l),e.c()),k(e,1),e.m(i.parentNode,i)):e=null)},i(l){s||(k(e),s=!0)},o(l){T(e),s=!1},d(l){l&&z(i),~t&&r[t].d(l)}}}function MI(n,t,e){let i,{tag:s}=t,o;function r(a){o=a.detail}return s.play=()=>o.play(),s.pause=()=>o.pause(),n.$$set=a=>{"tag"in a&&e(0,s=a.tag)},n.$$.update=()=>{var a;n.$$.dirty&1&&e(1,i=(a=s.data.appearance)!=null?a:"line")},[s,i,r]}class kI extends le{constructor(t){super(),ae(this,t,MI,EI,oe,{tag:0})}}function xI(n){ue(n,"svelte-10cw0el",".media-wrapper.svelte-10cw0el{position:absolute;width:100%;height:100%}")}function Ud(n){var s;let t,e,i;return e=new Yu({props:{mediaItemConfig:{canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(s=n[4])!=null?s:"withText",disableVideoIfHavePoster:!1,objectFit:n[2]},unfolded:n[6],mediaData:n[5],enableCarousel:n[1],autoplayConfig:n[3],tag:n[0],inDelay:500,duration:500}}),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class","media-wrapper svelte-10cw0el")},m(o,r){O(o,t,r),te(e,t,null),i=!0},p(o,r){var l;const a={};r&20&&(a.mediaItemConfig={canPlay:!0,playButtonSizeIfNeed:"large",playButtonIfNeed:(l=o[4])!=null?l:"withText",disableVideoIfHavePoster:!1,objectFit:o[2]}),r&64&&(a.unfolded=o[6]),r&32&&(a.mediaData=o[5]),r&2&&(a.enableCarousel=o[1]),r&8&&(a.autoplayConfig=o[3]),r&1&&(a.tag=o[0]),e.$set(a)},i(o){i||(k(e.$$.fragment,o),i=!0)},o(o){T(e.$$.fragment,o),i=!1},d(o){o&&z(t),ie(e)}}}function DI(n){let t,e,i=n[0].state&&n[5]&&Ud(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[0].state&&s[5]?i?(i.p(s,o),o&33&&k(i,1)):(i=Ud(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function SI(n,t,e){let i,s,o,r,a,l,{tag:c}=t;return n.$$set=d=>{"tag"in d&&e(0,c=d.tag)},n.$$.update=()=>{var d,h;n.$$.dirty&1&&e(6,i=c.state?c.state.unfolded:!1),n.$$.dirty&1&&e(5,s=c.data.mediaData),n.$$.dirty&1&&e(1,o=c.data.enableCarousel),n.$$.dirty&1&&e(4,r=c.data.playIcon),n.$$.dirty&3&&e(3,a=(d=c.data.autoplayConfig)!=null?d:{autoplay:o!=null?o:!0,autoplayVideo:!0}),n.$$.dirty&1&&e(2,l=(h=c.data.objectFit)!=null?h:(()=>c.data.adaptationMode==="stretch"?"fill":c.data.adaptationMode==="proportional"?"contain":void 0)())},[c,o,l,a,r,s,i]}class TI extends le{constructor(t){super(),ae(this,t,SI,DI,oe,{tag:0},xI)}}function Zu(n){return W(this,null,function*(){return new Promise((t,e)=>{if(!n){e(Error("url is empty"));return}const i=new Image;i.src=n,i.onload=()=>t({width:i.width,height:i.height}),i.onerror=e})})}function LI(n){return W(this,null,function*(){const{url:t,ratio:e=3}=n;n.ratio||console.warn("Tag icon ratio is not set, default is 3");const{width:i,height:s}=yield Zu(t);return ve(G({},n),{width:i/e,height:s/e})})}function jI(n){return W(this,null,function*(){const{steps:t,url:e,ratio:i=3,fps:s=24}=n;if(!t)throw new Error("KeyframeIcon requires steps");const{width:o,height:r}=yield Zu(e),a=o/i,l=r/i,c=a/t,d=l,h=1/s*t+"s";return ve(G({},n),{width:c,height:d,duration:h})})}function zI(n){ue(n,"svelte-316sq3","@keyframes svelte-316sq3-sprites-animation{0%{background-position:0 0}100%{background-position:100% 0}}.icon-image.svelte-316sq3{display:block;width:auto}.icon-keyframe.svelte-316sq3{background-repeat:no-repeat;background-size:auto 100%;animation-direction:normal;animation-iteration-count:infinite;animation-name:svelte-316sq3-sprites-animation;animation-delay:0}")}function Xd(n){n[1]=n[19].width}function Zd(n){n[1]=n[19].width,n[16]=n[19].height,n[17]=n[19].steps,n[18]=n[19].duration}function Jd(n){let t,e,i,s=n[0]&&qd();function o(l,c){return l[8]?BI:OI}let r=o(n),a=r(n);return{c(){t=D("div"),s&&s.c(),e=$(),a.c(),w(t,"class","icon"),j(t,"width",n[1])},m(l,c){O(l,t,c),s&&s.m(t,null),x(t,e),a.m(t,null),i=!0},p(l,c){l[0]?s?c&1&&k(s,1):(s=qd(),s.c(),k(s,1),s.m(t,e)):s&&(de(),T(s,1,1,()=>{s=null}),he()),r===(r=o(l))&&a?a.p(l,c):(a.d(1),a=r(l),a&&(a.c(),a.m(t,null))),c&2&&j(t,"width",l[1])},i(l){i||(k(s),i=!0)},o(l){T(s),i=!1},d(l){l&&z(t),s&&s.d(),a.d()}}}function qd(n){let t,e;return t=new Wt({props:{center:!0,blurRadius:24,spreadRadius:16}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function OI(n){let t,e,i={ctx:n,current:null,token:null,hasCatch:!1,pending:QI,then:RI,catch:VI,value:19};return so(e=n[11](We({url:n[7],ratio:n[5]})),i),{c(){t=Ee(),i.block.c()},m(s,o){O(s,t,o),i.block.m(s,i.anchor=o),i.mount=()=>t.parentNode,i.anchor=t},p(s,o){n=s,i.ctx=n,o&160&&e!==(e=n[11](We({url:n[7],ratio:n[5]})))&&so(e,i)||Nh(i,n,o)},d(s){s&&z(t),i.block.d(s),i.token=null,i=null}}}function BI(n){let t,e,i={ctx:n,current:null,token:null,hasCatch:!1,pending:HI,then:NI,catch:GI,value:19};return so(e=n[10](We({url:n[7],steps:n[2],fps:n[6],ratio:n[5]})),i),{c(){t=Ee(),i.block.c()},m(s,o){O(s,t,o),i.block.m(s,i.anchor=o),i.mount=()=>t.parentNode,i.anchor=t},p(s,o){n=s,i.ctx=n,o&228&&e!==(e=n[10](We({url:n[7],steps:n[2],fps:n[6],ratio:n[5]})))&&so(e,i)||Nh(i,n,o)},d(s){s&&z(t),i.block.d(s),i.token=null,i=null}}}function VI(n){return{c:q,m:q,p:q,d:q}}function RI(n){Xd(n);let t,e;return{c(){t=D("img"),w(t,"alt","tag-icon"),w(t,"class","icon-image svelte-316sq3"),kt(t.src,e=n[7])||w(t,"src",e),j(t,"width",Ht(on({originWidth:n[1],scale:n[4],wantedWidth:n[3]}).width))},m(i,s){O(i,t,s)},p(i,s){Xd(i),s&128&&!kt(t.src,e=i[7])&&w(t,"src",e),s&184&&j(t,"width",Ht(on({originWidth:i[1],scale:i[4],wantedWidth:i[3]}).width))},d(i){i&&z(t)}}}function QI(n){return{c:q,m:q,p:q,d:q}}function GI(n){return{c:q,m:q,p:q,d:q}}function NI(n){Zd(n);let t,e=`url(${n[7]})`,i=`steps(${n[17]}, jump-none)`;return{c(){t=D("div"),w(t,"class","icon-keyframe svelte-316sq3"),j(t,"width",Ht(on({originWidth:n[1],originHeight:n[16],scale:n[4],wantedWidth:n[3]}).width)),j(t,"height",Ht(on({originWidth:n[1],originHeight:n[16],scale:n[4],wantedWidth:n[3]}).height)),j(t,"background-image",e),j(t,"animation-duration",n[18]),j(t,"animation-timing-function",i)},m(s,o){O(s,t,o)},p(s,o){Zd(s),o&252&&j(t,"width",Ht(on({originWidth:s[1],originHeight:s[16],scale:s[4],wantedWidth:s[3]}).width)),o&252&&j(t,"height",Ht(on({originWidth:s[1],originHeight:s[16],scale:s[4],wantedWidth:s[3]}).height)),o&128&&e!==(e=`url(${s[7]})`)&&j(t,"background-image",e),o&228&&j(t,"animation-duration",s[18]),o&228&&i!==(i=`steps(${s[17]}, jump-none)`)&&j(t,"animation-timing-function",i)},d(s){s&&z(t)}}}function HI(n){return{c:q,m:q,p:q,d:q}}function _I(n){let t,e,i=n[9]&&Jd(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[9]?i?(i.p(s,o),o&512&&k(i,1)):(i=Jd(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function on(n){const{originWidth:t,originHeight:e,scale:i=1,wantedWidth:s}=n,o=(s!=null?s:t)*i,r=typeof e=="number"?o*(e/t):void 0;return ve(G({},n),{width:o,height:r})}function FI(n,t,e){let i,s,o,r,a,l,c,d,h,{width:u=null}=t,{icon:m=null}=t,{shadow:A=!1}=t;const p=Co();function g(I){return W(this,null,function*(){const M=yield jI(I);return p("iconLoaded",M),M})}function v(I){return W(this,null,function*(){if(typeof h=="number")return ve(G({},I),{width:h});const M=yield LI(I);return p("iconLoaded",M),M})}function y(){d||p("iconLoaded")}return bt(()=>{y()}),n.$$set=I=>{"width"in I&&e(1,u=I.width),"icon"in I&&e(12,m=I.icon),"shadow"in I&&e(0,A=I.shadow)},n.$$.update=()=>{var I,M;n.$$.dirty&4096&&e(7,i=m==null?void 0:m.url),n.$$.dirty&4096&&e(2,s=(I=m==null?void 0:m.steps)!=null?I:1),n.$$.dirty&4096&&e(6,o=m==null?void 0:m.fps),n.$$.dirty&4096&&e(5,r=m==null?void 0:m.ratio),n.$$.dirty&4096&&e(4,a=(M=m==null?void 0:m.scale)!=null?M:1),n.$$.dirty&4096&&e(3,l=m==null?void 0:m.width),n.$$.dirty&252&&e(9,c=We({url:i,steps:s,fps:o,ratio:r,scale:a,width:l})),n.$$.dirty&4&&e(8,d=s>1),n.$$.dirty&2&&(h=u)},y(),[A,u,s,l,a,r,o,i,d,c,g,v,m]}class Ju extends le{constructor(t){super(),ae(this,t,FI,_I,oe,{width:1,icon:12,shadow:0},zI)}}function WI(n){ue(n,"svelte-e58ijk",".wrapper.svelte-e58ijk{font-weight:600;cursor:pointer;width:-moz-max-content;width:max-content;height:-moz-max-content;height:max-content;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);display:flex;align-items:center;justify-content:center;flex-direction:column;pointer-events:auto}.text-wrapper.svelte-e58ijk{position:relative;display:flex;align-items:center;justify-content:center}.text.svelte-e58ijk{position:absolute;top:0;font-size:0.875rem;color:#ffffff;letter-spacing:0;text-align:center;max-width:8.75rem;width:-moz-max-content;width:max-content;line-height:1.125rem;text-shadow:0.125rem 0rem 0.5rem rgba(0, 0, 0, 0.15)}")}function Kd(n){let t,e,i,s,o,r;return e=new Wt({props:{outDelay:0,inDelay:0,center:!0,width:"80%",blurRadius:40,spreadRadius:16,opacity:.08}}),{c(){t=D("div"),ne(e.$$.fragment),i=$(),s=D("div"),o=xe(n[1]),w(s,"class","text svelte-e58ijk"),w(t,"class","text-wrapper svelte-e58ijk")},m(a,l){O(a,t,l),te(e,t,null),x(t,i),x(t,s),x(s,o),r=!0},p(a,l){(!r||l&2)&&Se(o,a[1])},i(a){r||(k(e.$$.fragment,a),r=!0)},o(a){T(e.$$.fragment,a),r=!1},d(a){a&&z(t),ie(e)}}}function YI(n){let t,e,i,s;e=new Ju({props:{icon:n[0],shadow:!0}}),e.$on("iconLoaded",n[4]);let o=n[1]&&n[2]&&Kd(n);return{c(){t=D("div"),ne(e.$$.fragment),i=$(),o&&o.c(),w(t,"class","wrapper svelte-e58ijk")},m(r,a){O(r,t,a),te(e,t,null),x(t,i),o&&o.m(t,null),s=!0},p(r,[a]){const l={};a&1&&(l.icon=r[0]),e.$set(l),r[1]&&r[2]?o?(o.p(r,a),a&6&&k(o,1)):(o=Kd(r),o.c(),k(o,1),o.m(t,null)):o&&(de(),T(o,1,1,()=>{o=null}),he())},i(r){s||(k(e.$$.fragment,r),k(o),s=!0)},o(r){T(e.$$.fragment,r),T(o),s=!1},d(r){r&&z(t),ie(e),o&&o.d()}}}function UI(n,t,e){let i,s,o,{tag:r}=t;const a=()=>{e(2,i=!0)};return n.$$set=l=>{"tag"in l&&e(3,r=l.tag)},n.$$.update=()=>{var l,c,d;n.$$.dirty&8&&e(1,s=(l=r.data.title)!=null?l:r.data.text),n.$$.dirty&8&&e(0,o=(d=r.data.icon)!=null?d:(c=r.style)==null?void 0:c.point)},e(2,i=!1),[o,s,i,r,a]}class XI extends le{constructor(t){super(),ae(this,t,UI,YI,oe,{tag:3},WI)}}function ZI(n){ue(n,"svelte-kzl2aj",".customElement__container.svelte-kzl2aj{position:relative}")}function JI(n){let t,e;return{c(){t=new $s(!1),e=Ee(),t.a=e},m(i,s){t.m(n[2],i,s),O(i,e,s)},p:q,d(i){i&&(z(e),t.d())}}}function qI(n){let t,e=typeof n[2]=="string"&&JI(n);return{c(){t=D("div"),e&&e.c(),w(t,"class","customElement__container svelte-kzl2aj"),K(t,"unfolded",n[1])},m(i,s){O(i,t,s),e&&e.m(t,null),n[5](t)},p(i,[s]){typeof i[2]=="string"&&e.p(i,s),s&2&&K(t,"unfolded",i[1])},i:q,o:q,d(i){i&&z(t),e&&e.d(),n[5](null)}}}function KI(n,t,e){var d,h;let i,{tag:s}=t,{renderMap:o=new Map}=t,r,a=(h=s.element)!=null?h:(d=o.get(s.contentType))==null?void 0:d.renderer,l;bt(()=>{r&&(a instanceof Element?(r.appendChild(a),l=()=>{a instanceof Element&&a.remove()}):typeof a=="function"&&(l=a(r,s)))}),zt(()=>{l==null||l()});function c(u){Ge[u?"unshift":"push"](()=>{r=u,e(0,r)})}return n.$$set=u=>{"tag"in u&&e(3,s=u.tag),"renderMap"in u&&e(4,o=u.renderMap)},n.$$.update=()=>{n.$$.dirty&8&&e(1,i=s.state.unfolded)},[r,i,a,s,o,c]}class $I extends le{constructor(t){super(),ae(this,t,KI,qI,oe,{tag:3,renderMap:4},ZI)}}function eP(n){ue(n,"svelte-1r4fqvg",'@font-face{font-family:"TG-TYPE";font-style:normal;font-weight:400;src:local("TG-TYPE-Bold"), url(data:application/font-woff2;charset=utf-8;base64,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) format("woff2")}*{-webkit-tap-highlight-color:transparent}.content__container.svelte-1r4fqvg{position:relative;left:50%;top:50%;transform:translate(-50%, -50%);font-family:PingFangSC, Segoe UI, Rototo, sans-serif}.content__container.withAnimation.svelte-1r4fqvg{transition:opacity 0.3s linear}.content__container.unClickable.svelte-1r4fqvg{pointer-events:none !important}.content__container.unClickable.svelte-1r4fqvg *{pointer-events:none !important}.content__wrapper.svelte-1r4fqvg{pointer-events:none;width:100%;height:100%}.content__container.hide.svelte-1r4fqvg{opacity:0;pointer-events:none}.content__container.hide.svelte-1r4fqvg *{pointer-events:none !important}.content__container.disable.svelte-1r4fqvg{display:none}.content.svelte-1r4fqvg{position:relative;width:100%;height:100%;font-size:0.75rem;color:#fff}.content.svelte-1r4fqvg:not(.unfolded){pointer-events:none}.content.svelte-1r4fqvg:not(.unfolded) *{pointer-events:none !important}.content.unfolded.svelte-1r4fqvg{pointer-events:auto}')}function tP(n){let t,e;return{c(){t=D("div"),w(t,"data-info","tag content is keep folded"),w(t,"data-id",e=n[1].id)},m(i,s){O(i,t,s)},p(i,s){s&2&&e!==(e=i[1].id)&&w(t,"data-id",e)},i:q,o:q,d(i){i&&z(t)}}}function iP(n){let t,e,i,s,o,r,a,l,c,d;const h=[cP,lP,aP,rP,oP,sP],u=[];function m(A,p){return A[1].contentType==="Text"?0:A[1].contentType==="ImageText"||A[1].contentType==="Image"||A[1].contentType==="Video"?1:A[1].contentType==="Audio"?2:A[1].contentType==="Marketing"?3:A[1].contentType==="Link"||A[1].contentType==="VRLink"||A[1].contentType==="PanoLink"||A[1].contentType==="Sticker"?4:A[1].contentType==="MediaPlane"||A[1].contentType==="MediaModel"?5:-1}return~(s=m(n))&&(o=u[s]=h[s](n)),{c(){var A;t=D("div"),e=D("div"),i=D("div"),o&&o.c(),w(i,"class","content svelte-1r4fqvg"),K(i,"unfolded",(A=n[1].state)==null?void 0:A.unfolded),w(e,"class","content__wrapper svelte-1r4fqvg"),w(t,"class",r=Qe(at("content__container",n[1].className))+" svelte-1r4fqvg"),w(t,"data-id",a=n[1].id),K(t,"disable",n[1].enabled===!1),K(t,"hide",n[5]),K(t,"withAnimation",n[0]),K(t,"unClickable",n[1].config.clickable===!1),j(t,"width",n[1].stickType==="Plane"||n[1].contentType==="MediaModel"?"100%":0),j(t,"height",n[1].stickType==="Plane"||n[1].contentType==="MediaModel"?"100%":0)},m(A,p){O(A,t,p),x(t,e),x(e,i),~s&&u[s].m(i,null),l=!0,c||(d=be(t,"click",Oh(n[15])),c=!0)},p(A,p){var v;let g=s;s=m(A),s===g?~s&&u[s].p(A,p):(o&&(de(),T(u[g],1,1,()=>{u[g]=null}),he()),~s?(o=u[s],o?o.p(A,p):(o=u[s]=h[s](A),o.c()),k(o,1),o.m(i,null)):o=null),(!l||p&2)&&K(i,"unfolded",(v=A[1].state)==null?void 0:v.unfolded),(!l||p&2&&r!==(r=Qe(at("content__container",A[1].className))+" svelte-1r4fqvg"))&&w(t,"class",r),(!l||p&2&&a!==(a=A[1].id))&&w(t,"data-id",a),(!l||p&2)&&K(t,"disable",A[1].enabled===!1),(!l||p&34)&&K(t,"hide",A[5]),(!l||p&3)&&K(t,"withAnimation",A[0]),(!l||p&2)&&K(t,"unClickable",A[1].config.clickable===!1),p&2&&j(t,"width",A[1].stickType==="Plane"||A[1].contentType==="MediaModel"?"100%":0),p&2&&j(t,"height",A[1].stickType==="Plane"||A[1].contentType==="MediaModel"?"100%":0)},i(A){l||(k(o),l=!0)},o(A){T(o),l=!1},d(A){A&&z(t),~s&&u[s].d(),c=!1,d()}}}function nP(n){let t,e,i,s,o,r,a;return e=new $I({props:{tag:We(n[1]),renderMap:n[3]}}),{c(){t=D("div"),ne(e.$$.fragment),w(t,"class",i=Qe(at("content__container",n[1].className))+" svelte-1r4fqvg"),w(t,"data-id",s=n[1].id),K(t,"custom-tag-disable",n[1].enabled===!1),K(t,"custom-tag-hide",n[5])},m(l,c){O(l,t,c),te(e,t,null),o=!0,r||(a=be(t,"click",n[14]),r=!0)},p(l,c){const d={};c&2&&(d.tag=We(l[1])),c&8&&(d.renderMap=l[3]),e.$set(d),(!o||c&2&&i!==(i=Qe(at("content__container",l[1].className))+" svelte-1r4fqvg"))&&w(t,"class",i),(!o||c&2&&s!==(s=l[1].id))&&w(t,"data-id",s),(!o||c&2)&&K(t,"custom-tag-disable",l[1].enabled===!1),(!o||c&34)&&K(t,"custom-tag-hide",l[5])},i(l){o||(k(e.$$.fragment,l),o=!0)},o(l){T(e.$$.fragment,l),o=!1},d(l){l&&z(t),ie(e),r=!1,a()}}}function sP(n){let t,e;return t=new TI({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function oP(n){let t,e;return t=new XI({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function rP(n){let t,e;return t=new sI({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function aP(n){let t,e;return t=new kI({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function lP(n){let t,e;return t=new eI({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function cP(n){let t,e;return t=new by({props:{tag:We(n[1])}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=We(i[1])),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function dP(n){let t,e,i,s,o;const r=[nP,iP,tP],a=[];function l(c,d){return d&10&&(t=null),t==null&&(t=!!(c[1].element||c[3].has(c[1].contentType))),t?0:c[4]?1:2}return e=l(n,-1),i=a[e]=r[e](n),{c(){i.c(),s=Ee()},m(c,d){a[e].m(c,d),O(c,s,d),o=!0},p(c,[d]){let h=e;e=l(c,d),e===h?a[e].p(c,d):(de(),T(a[h],1,1,()=>{a[h]=null}),he(),i=a[e],i?i.p(c,d):(i=a[e]=r[e](c),i.c()),k(i,1),i.m(s.parentNode,s))},i(c){o||(k(i),o=!0)},o(c){T(i),o=!1},d(c){c&&z(s),a[e].d(c)}}}function hP(n,t,e){let i,s,o,r,a,l,{withAnimation:c=!1}=t,{tag:d}=t,{hooks:h}=t,{renderMap:u=new Map}=t,{state:m}=t,{mediaStore:A}=t,{temporaryState:p}=t;Xr("hooks",h),Xr("mediaStore",A);let g,v;function y(P){P?h.emit("exposure",{id:r,type:"start"}):h.emit("exposure",{id:r,type:"end"})}function I(P,V,L){var X,Y;return!(!V.visible||!V.enabled||!L.visible||!((X=P.state)!=null&&X.visible)||((Y=P.temporaryState)==null?void 0:Y.visible)===!1||vt(P)&&!P.mediaVisible)}const M=P=>h.emit("click",{event:P,target:"TagContent",tag:d}),B=P=>h.emit("click",{event:P,target:"TagContent",tag:d});return n.$$set=P=>{"withAnimation"in P&&e(0,c=P.withAnimation),"tag"in P&&e(1,d=P.tag),"hooks"in P&&e(2,h=P.hooks),"renderMap"in P&&e(3,u=P.renderMap),"state"in P&&e(6,m=P.state),"mediaStore"in P&&e(7,A=P.mediaStore),"temporaryState"in P&&e(8,p=P.temporaryState)},n.$$.update=()=>{var P,V,L,X,Y,N,H,_,Q,F,J;n.$$.dirty&2&&e(12,i=(P=d.state)==null?void 0:P.unfolded),n.$$.dirty&2&&e(11,s=(V=d.state)==null?void 0:V.visible),n.$$.dirty&322&&e(13,o=m.visible&&p.visible&&((L=d.state)==null?void 0:L.visible)),n.$$.dirty&2&&(r=d.id),n.$$.dirty&322&&e(5,a=!I(d,m,p)),n.$$.dirty&8192&&y(o),n.$$.dirty&7682&&d.hooks&&(i!==void 0&&i!==v&&(e(10,v=i),i?(Y=(X=d.hooks).emit)==null||Y.call(X,"unfolded"):(H=d==null?void 0:(N=d.hooks).emit)==null||H.call(N,"folded")),s!==void 0&&s!==g&&(e(9,g=s),s?(Q=(_=d.hooks).emit)==null||Q.call(_,"show"):(J=(F=d.hooks).emit)==null||J.call(F,"hide"))),n.$$.dirty&2&&e(4,l=(()=>!(typeof d.config.unfoldedConfig=="object"&&d.config.unfoldedConfig.keep==="folded"))())},[c,d,h,u,l,a,m,A,p,g,v,s,i,o,M,B]}let qu=class extends le{constructor(t){super(),ae(this,t,hP,dP,oe,{withAnimation:0,tag:1,hooks:2,renderMap:3,state:6,mediaStore:7,temporaryState:8},eP)}};function uP(n){ue(n,"svelte-7aiuwz",'@charset "UTF-8";.tag-point-click-helper.svelte-7aiuwz.svelte-7aiuwz{position:absolute;pointer-events:auto;cursor:pointer;width:calc(100% + 0.75rem);height:calc(100% + 0.75rem);left:50%;top:50%;transform:translate(-50%, -50%)}.tag-point-wrapper.svelte-7aiuwz.svelte-7aiuwz{pointer-events:none;position:absolute;left:50%;top:50%;transform:translate(-50%, -50%)}.tag-folded-point.svelte-7aiuwz.svelte-7aiuwz,.tag-unfolded-point.svelte-7aiuwz.svelte-7aiuwz{transition:all 0.5s}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{display:flex;justify-content:center;align-items:center;position:absolute;width:100%;height:100%;border-radius:50%}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:0.3125rem;height:0.3125rem;border-radius:50%;background-color:white}.tag-point-wrapper.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz:before{content:"";position:absolute;width:0.875rem;height:0.875rem;border-radius:50%;background-color:rgba(0, 0, 0, 0.2)}.tag-point-wrapper.folded.svelte-7aiuwz .tag-folded-point.svelte-7aiuwz{opacity:1;scale:1}.tag-point-wrapper.folded.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{opacity:0;scale:1}.tag-point-wrapper.unfolded.svelte-7aiuwz .tag-folded-point.svelte-7aiuwz{opacity:0;scale:0.2}.tag-point-wrapper.unfolded.svelte-7aiuwz .tag-unfolded-point.svelte-7aiuwz{opacity:1;scale:1}')}function fP(n){let t,e,i,s,o,r,a,l,c,d,h,u;return s=new Wt({props:{center:!0,blurRadius:15,spreadRadius:5,opacity:.3}}),c=new Ju({props:{icon:n[2],width:n[1]}}),c.$on("iconLoaded",n[7]),{c(){t=D("div"),e=D("div"),i=$(),ne(s.$$.fragment),o=$(),r=D("div"),a=$(),l=D("div"),ne(c.$$.fragment),w(e,"class","tag-point-click-helper svelte-7aiuwz"),w(r,"class","tag-unfolded-point svelte-7aiuwz"),j(r,"transition-delay",(n[3]?n[5]:0)+"ms"),w(l,"class","tag-folded-point svelte-7aiuwz"),j(l,"transition-delay",(n[3]?n[5]:0)+"ms"),w(t,"class","tag-point-wrapper svelte-7aiuwz"),K(t,"unfolded",n[0]),K(t,"folded",n[3])},m(m,A){O(m,t,A),x(t,e),x(t,i),te(s,t,null),x(t,o),x(t,r),x(t,a),x(t,l),te(c,l,null),d=!0,h||(u=be(e,"click",n[4]),h=!0)},p(m,[A]){A&8&&j(r,"transition-delay",(m[3]?m[5]:0)+"ms");const p={};A&4&&(p.icon=m[2]),A&2&&(p.width=m[1]),c.$set(p),A&8&&j(l,"transition-delay",(m[3]?m[5]:0)+"ms"),(!d||A&1)&&K(t,"unfolded",m[0]),(!d||A&8)&&K(t,"folded",m[3])},i(m){d||(k(s.$$.fragment,m),k(c.$$.fragment,m),d=!0)},o(m){T(s.$$.fragment,m),T(c.$$.fragment,m),d=!1},d(m){m&&z(t),ie(s),ie(c),h=!1,u()}}}function mP(n,t,e){let i,s,o,r;const a=fi("hooks");let{tag:l}=t,c,d=!1;const h=()=>{c!==void 0&&clearTimeout(c),d=!0,c=setTimeout(()=>{d=!1},800)},u=p=>{d||a.emit("click",{event:p,target:"TagPoint",tag:l})},m=(()=>l.contentType==="Text"&&l.data.appearance==="plane"?500:800)();function A(p){xn.call(this,n,p)}return n.$$set=p=>{"tag"in p&&e(6,l=p.tag)},n.$$.update=()=>{var p,g,v,y;n.$$.dirty&64&&e(0,i=(p=l.state)==null?void 0:p.unfolded),n.$$.dirty&1&&e(3,s=!i),n.$$.dirty&64&&e(2,o=(v=(g=l.style)==null?void 0:g.point)!=null&&v.url?(y=l.style)==null?void 0:y.point:{url:ab}),n.$$.dirty&64&&e(1,r=(()=>{var B,P,V,L;const I=(P=(B=l.style)==null?void 0:B.point)==null?void 0:P.width;if(typeof I=="number")return I;const M=(L=(V=l.style)==null?void 0:V.point)==null?void 0:L.size;if(typeof M=="number")return M;if(M==="S")return 18;if(M==="M")return 20;if(M==="L")return 24;if(M==="XL")return 28})())},h(),[i,r,o,s,u,m,l,A]}class gP extends le{constructor(t){super(),ae(this,t,mP,fP,oe,{tag:6},uP)}}function pP(n){ue(n,"svelte-pzwdws",".tag.withAnimation.svelte-pzwdws{transition:opacity 0.3s linear}.tag.hide.svelte-pzwdws{opacity:0;pointer-events:none}.tag.hide.svelte-pzwdws *{pointer-events:none !important}.tag.unClickable.svelte-pzwdws{pointer-events:none !important}.tag.unClickable.svelte-pzwdws *{pointer-events:none !important}.tag.disable.svelte-pzwdws{display:none}.wrapper.svelte-pzwdws{position:absolute;width:0rem;height:0rem;overflow:visible;pointer-events:auto}")}function AP(n){let t;return{c(){t=D("div"),w(t,"data-info","tag point is disable")},m(e,i){O(e,t,i)},p:q,i:q,o:q,d(e){e&&z(t)}}}function vP(n){let t,e;return t=new gP({props:{tag:n[1]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&2&&(o.tag=i[1]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function bP(n){let t;return{c(){t=D("div"),w(t,"data-info","tag content is disable")},m(e,i){O(e,t,i)},p:q,i:q,o:q,d(e){e&&z(t)}}}function yP(n){let t,e;return t=new qu({props:{mediaStore:n[2],withAnimation:n[0],tag:We(n[1]),hooks:n[15],state:n[4],temporaryState:n[5],renderMap:n[3]}}),{c(){ne(t.$$.fragment)},m(i,s){te(t,i,s),e=!0},p(i,s){const o={};s&4&&(o.mediaStore=i[2]),s&1&&(o.withAnimation=i[0]),s&2&&(o.tag=We(i[1])),s&16&&(o.state=i[4]),s&32&&(o.temporaryState=i[5]),s&8&&(o.renderMap=i[3]),t.$set(o)},i(i){e||(k(t.$$.fragment,i),e=!0)},o(i){T(t.$$.fragment,i),e=!1},d(i){ie(t,i)}}}function wP(n){let t,e,i,s,o,r,a,l,c,d;const h=[vP,AP],u=[];function m(v,y){return v[14]?0:1}i=m(n),s=u[i]=h[i](n);const A=[yP,bP],p=[];function g(v,y){return v[13]?0:1}return r=g(n),a=p[r]=A[r](n),{c(){t=D("div"),e=D("div"),s.c(),o=$(),a.c(),w(e,"class",l=Qe(at("wrapper",n[1].className?`${n[1].className}__wrapper`:void 0))+" svelte-pzwdws"),w(e,"data-tag-unfolded",n[6]),w(e,"data-tag-id",n[12]),w(e,"data-content-type",c=n[1].contentType),j(e,"left",n[9]),j(e,"top",n[8]),w(t,"class","tag svelte-pzwdws"),w(t,"data-tag-id",n[12]),K(t,"unClickable",n[1].config.clickable===!1),K(t,"disable",n[11]),K(t,"hide",n[10]),K(t,"withAnimation",n[0]),j(t,"z-index",n[7])},m(v,y){O(v,t,y),x(t,e),u[i].m(e,null),x(e,o),p[r].m(e,null),d=!0},p(v,[y]){let I=i;i=m(v),i===I?u[i].p(v,y):(de(),T(u[I],1,1,()=>{u[I]=null}),he(),s=u[i],s?s.p(v,y):(s=u[i]=h[i](v),s.c()),k(s,1),s.m(e,o));let M=r;r=g(v),r===M?p[r].p(v,y):(de(),T(p[M],1,1,()=>{p[M]=null}),he(),a=p[r],a?a.p(v,y):(a=p[r]=A[r](v),a.c()),k(a,1),a.m(e,null)),(!d||y&2&&l!==(l=Qe(at("wrapper",v[1].className?`${v[1].className}__wrapper`:void 0))+" svelte-pzwdws"))&&w(e,"class",l),(!d||y&64)&&w(e,"data-tag-unfolded",v[6]),(!d||y&4096)&&w(e,"data-tag-id",v[12]),(!d||y&2&&c!==(c=v[1].contentType))&&w(e,"data-content-type",c),y&512&&j(e,"left",v[9]),y&256&&j(e,"top",v[8]),(!d||y&4096)&&w(t,"data-tag-id",v[12]),(!d||y&2)&&K(t,"unClickable",v[1].config.clickable===!1),(!d||y&2048)&&K(t,"disable",v[11]),(!d||y&1024)&&K(t,"hide",v[10]),(!d||y&1)&&K(t,"withAnimation",v[0]),y&128&&j(t,"z-index",v[7])},i(v){d||(k(s),k(a),d=!0)},o(v){T(s),T(a),d=!1},d(v){v&&z(t),u[i].d(),p[r].d()}}}function CP(n,t,e){let i,s,o,r,a,l,c,d,h,{withAnimation:u=!1}=t,{tag:m}=t,{mediaStore:A}=t,{renderMap:p=new Map}=t,{state:g}=t,{temporaryState:v}=t;const y=fi("hooks");return n.$$set=I=>{"withAnimation"in I&&e(0,u=I.withAnimation),"tag"in I&&e(1,m=I.tag),"mediaStore"in I&&e(2,A=I.mediaStore),"renderMap"in I&&e(3,p=I.renderMap),"state"in I&&e(4,g=I.state),"temporaryState"in I&&e(5,v=I.temporaryState)},n.$$.update=()=>{var I,M,B,P,V,L,X,Y;n.$$.dirty&2&&e(14,i=(()=>{var N,H;return!(((H=(N=m.style)==null?void 0:N.point)==null?void 0:H.enabled)===!1||m.contentType==="Sticker"||m.contentType==="Link"||m.contentType==="VRLink"||m.contentType==="PanoLink"||m.contentType==="Audio"&&m.data.appearance==="plane")})()),n.$$.dirty&2&&e(13,s=(()=>m.stickType==="2DPoint")()),n.$$.dirty&2&&e(12,o=m.id),n.$$.dirty&2&&e(11,r=!((I=m.screenPosition)!=null&&I.leftPercent)||!((M=m.screenPosition)!=null&&M.topPercent)||m.enabled===!1||!m.state),n.$$.dirty&2&&e(10,a=!((B=m.state)!=null&&B.visible)||((P=m.temporaryState)==null?void 0:P.visible)===!1),n.$$.dirty&2&&e(6,l=(V=m.state)==null?void 0:V.unfolded),n.$$.dirty&2&&e(9,c=((L=m.screenPosition)==null?void 0:L.leftPercent)+"%"),n.$$.dirty&2&&e(8,d=((X=m.screenPosition)==null?void 0:X.topPercent)+"%"),n.$$.dirty&66&&e(7,h=((Y=m.zIndex)!=null?Y:0)+(l?1e4:0))},[u,m,A,p,g,v,l,h,d,c,a,r,o,s,i,y]}class IP extends le{constructor(t){super(),ae(this,t,CP,wP,oe,{withAnimation:0,tag:1,mediaStore:2,renderMap:3,state:4,temporaryState:5},pP)}}function PP(n){ue(n,"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 $d(n,t,e){const i=n.slice();return i[7]=t[e],i}function eh(n){let t,e=[],i=new Map,s,o=Pe(n[1]);const r=a=>a[7].id;for(let a=0;a<o.length;a+=1){let l=$d(n,o,a),c=r(l);i.set(c,e[a]=th(c,l))}return{c(){t=D("div");for(let a=0;a<e.length;a+=1)e[a].c();w(t,"class","tag--container svelte-uq11d5"),K(t,"hide",!n[4].visible||!n[5].visible),K(t,"withAnimation",n[0])},m(a,l){O(a,t,l);for(let c=0;c<e.length;c+=1)e[c]&&e[c].m(t,null);s=!0},p(a,l){l&63&&(o=Pe(a[1]),de(),e=Ot(e,l,r,1,a,o,i,t,bi,th,null,$d),he()),(!s||l&48)&&K(t,"hide",!a[4].visible||!a[5].visible),(!s||l&1)&&K(t,"withAnimation",a[0])},i(a){if(!s){for(let l=0;l<o.length;l+=1)k(e[l]);s=!0}},o(a){for(let l=0;l<e.length;l+=1)T(e[l]);s=!1},d(a){a&&z(t);for(let l=0;l<e.length;l+=1)e[l].d()}}}function th(n,t){let e,i,s;return i=new IP({props:{state:t[4],temporaryState:t[5],withAnimation:t[0],tag:t[7],mediaStore:t[2],renderMap:t[3]}}),{key:n,first:null,c(){e=Ee(),ne(i.$$.fragment),this.first=e},m(o,r){O(o,e,r),te(i,o,r),s=!0},p(o,r){t=o;const a={};r&16&&(a.state=t[4]),r&32&&(a.temporaryState=t[5]),r&1&&(a.withAnimation=t[0]),r&2&&(a.tag=t[7]),r&4&&(a.mediaStore=t[2]),r&8&&(a.renderMap=t[3]),i.$set(a)},i(o){s||(k(i.$$.fragment,o),s=!0)},o(o){T(i.$$.fragment,o),s=!1},d(o){o&&z(e),ie(i,o)}}}function EP(n){let t,e,i=n[4].enabled&&eh(n);return{c(){i&&i.c(),t=Ee()},m(s,o){i&&i.m(s,o),O(s,t,o),e=!0},p(s,[o]){s[4].enabled?i?(i.p(s,o),o&16&&k(i,1)):(i=eh(s),i.c(),k(i,1),i.m(t.parentNode,t)):i&&(de(),T(i,1,1,()=>{i=null}),he())},i(s){e||(k(i),e=!0)},o(s){T(i),e=!1},d(s){s&&z(t),i&&i.d(s)}}}function MP(n,t,e){let{withAnimation:i=!1}=t,{tags:s=[]}=t,{hooks:o}=t,{mediaStore:r}=t,{renderMap:a}=t,{state:l}=t,{temporaryState:c}=t;return Xr("hooks",o),n.$$set=d=>{"withAnimation"in d&&e(0,i=d.withAnimation),"tags"in d&&e(1,s=d.tags),"hooks"in d&&e(6,o=d.hooks),"mediaStore"in d&&e(2,r=d.mediaStore),"renderMap"in d&&e(3,a=d.renderMap),"state"in d&&e(4,l=d.state),"temporaryState"in d&&e(5,c=d.temporaryState)},[i,s,r,a,l,c,o]}class kP extends le{constructor(t){super(),ae(this,t,MP,EP,oe,{withAnimation:0,tags:1,hooks:6,mediaStore:2,renderMap:3,state:4,temporaryState:5},PP)}}const xP=new pf.GLTFLoader;function DP(n){return new Promise((t,e)=>{function i(o){t(o)}function s(o){e(o)}xP.load(n,i,void 0,s)})}const SP=new Map,TP=new Map;class LP extends j1{constructor(e){super(e);f(this,"group",new R.Group);f(this,"renderMap",new Map);f(this,"imagePlaneGroup",new R.Group);f(this,"gltfObjectGroup",new R.Group);f(this,"enabledModelTagSet",new Set);f(this,"temporaryState",{visible:!0});f(this,"TagContainerSvelte");f(this,"loadModel",e=>W(this,null,function*(){var a;const i=e.data.modelUrl;if(!i)return;const s=DP(i).then(l=>{var h,u,m,A,p;const c=Object.assign(l.scene,{customID:e.id,isTagModel:!0,removeEventListener:this.addObjectClickHandler(e,l.scene,g=>{this.hooks.emit("click",{target:"TagModel",tag:e,event:g})})});return c.visible=this.getCurrentVisibleState(e),new R.Matrix4().fromArray(e.matrix).decompose(c.position,c.quaternion,c.scale),c.updateWorldMatrix(!0,!0),c.visible=this.getVisibleByFiveMode(e),(m=(u=(h=this.config)==null?void 0:h.globalConfig)==null?void 0:u.modelConfig)!=null&&m.autoLookAtEnabled&&((p=(A=e.config)==null?void 0:A.modelConfig)!=null&&p.autoLookAtEnabled)&&c.lookAt(this.five.camera.position.clone().setY(c.position.y)),c});e.model={promise:s};const o=yield s;if(((a=e.model)==null?void 0:a.promise)!==s||!this.tags.includes(e))return;e.model.object=o;const r=this.gltfObjectGroup.children.find(l=>l.customID===e.id);if(r&&(this.gltfObjectGroup.remove(r),r.removeEventListener()),this.updateRender3DDomTag(),vt(e)){if(this.getRenderType(e)==="Mesh"&&!e.mediaPlane){const l=e.data.mediaPosition.map(Et);e.mediaPlane=new _c(e.data.mediaData[0].url,e.data.mediaPosition.map(Et),{objectFit:e.data.objectFit});const c=new R.Vector3().addVectors(l[0],l[2]).divideScalar(2);e.mediaPlane.position.copy(c),o.add(e.mediaPlane)}this.getRenderType(e)!=="Mesh"&&(o.updateTagCss3DObjectMatrix=()=>this.updateTagCss3DObjectMatrix(e,o),o.updateTagCss3DObjectMatrix())}return this.gltfObjectGroup.add(o),o}));this.group.name="PanoTagPluginModelGroup",this.gltfObjectGroup.name="PanoTagPluginGLTFObjectGroup",this.imagePlaneGroup.name="ImagePlaneGroup",this.group.add(this.gltfObjectGroup),this.group.add(this.imagePlaneGroup)}registerRenderer(e,i){this.renderMap.set(e,{renderer:i})}clearTags(){this.tags.forEach(e=>{var i,s;(s=(i=e.mediaPlane)==null?void 0:i.parent)==null||s.remove(e.mediaPlane)}),this.tags=[],this.enabledModelTagSet.clear(),this.clearCache(),this.disposeAllCSS3DContainer(),this.updateRenderAllTags()}updateRenderAllTags(){this.enabledModelTagSet.clear(),this.tags.forEach(e=>e.stickType==="Model"&&this.enabledModelTagSet.add(e.id)),this.updateRenderPointTag(),this.updateRender3DDomTag(),this.updateRenderModelTag(),this.updateRenderImagePlane(),this.updateRenderVideoPlane()}updateRenderVideoPlane(){this.sort(this.filterImagePlane).filter(i=>{var s,o;return((o=(s=i.data.mediaData)==null?void 0:s[0])==null?void 0:o.type)==="Video"}).forEach(i=>{var h,u,m,A,p;const s=i.data.mediaData[0];if(!s)return;const{url:o}=s;if(!o)return;i.mediaPlane&&!((u=(h=i.state)==null?void 0:h.visible)==null||u)&&i.mediaPlane instanceof aa&&i.mediaPlane.pause();const r=i.position.map(Et),a=this.getCurrentVisibleState(i),l=(()=>!!(i.mediaPlane&&!a))(),c=(()=>!!(!i.mediaPlane&&a))(),d=(()=>!!(i.mediaPlane&&i.mediaPlane.src!==o))();if((l||d)&&(i.mediaPlane&&this.imagePlaneGroup.remove(i.mediaPlane),(m=i.mediaPlane)==null||m.dispose(),(A=i.mediaPlane)==null||A.removeFromParent(),i.mediaPlane=void 0),c||d){const g=new aa(o,r,{videoCoverSrc:s.videoCoverUrl,playButton:i.data.playIcon,paused:!((p=i.data.autoplayConfig)!=null&&p.autoplayVideo),objectFit:i.data.objectFit,videoTextureMap:SP,ImageTextureMap:TP,domEvents:this.domEvents});g.onVideoReady=y=>{y.addEventListener("play",()=>this.mediaStore.set({currentMediaElement:g.videoInstance}))};const v=y=>(this.five.on("renderFrame",y),()=>this.five.off("renderFrame",y));g.initialRenderHooks(v),i.mediaPlane=g,this.imagePlaneGroup.add(i.mediaPlane)}})}updateRenderImagePlane(){this.sort(this.filterImagePlane).filter(i=>{var s,o;return((o=(s=i.data.mediaData)==null?void 0:s[0])==null?void 0:o.type)==="Image"}).forEach(i=>{var d,h;const{url:s}=i.data.mediaData[0];if(!s)return;const o=i.position.map(Et),r=this.getCurrentVisibleState(i),a=(()=>!!(i.mediaPlane&&!r))(),l=(()=>!!(!i.mediaPlane&&r))(),c=(()=>!!(i.mediaPlane&&i.mediaPlane.src!==s))();(a||c)&&(i.mediaPlane&&this.imagePlaneGroup.remove(i.mediaPlane),(d=i.mediaPlane)==null||d.dispose(),(h=i.mediaPlane)==null||h.removeFromParent(),i.mediaPlane=void 0),(l||c)&&(i.mediaPlane=new _c(s,o,{objectFit:i.data.objectFit}),i.config.clickable!==!1&&this.domEvents.addAutoBindEventListener(i.mediaPlane,"click",u=>{this.hooks.emit("click",{tag:i,target:"TagContent",event:u.origDomEvent})}),this.imagePlaneGroup.add(i.mediaPlane))})}updateRender3DDomTag(){this.sort([...this.filterCSS3DTag]).forEach(i=>{var s,o,r,a;if(i.tag3DContentSvelte){const{svelteApp:l,css3DInstance:c,initialNormal:d,currentNormal:h}=i.tag3DContentSvelte;if(l.$set({tag:i,hooks:this.hooks,state:this.state,temporaryState:this.temporaryState}),!d.equals(h)){const u=new R.Quaternion().setFromUnitVectors(d,h);c.css3DObject.setRotationFromQuaternion(u)}return}else{if(vt(i)&&!((s=i.model)!=null&&s.object)||((o=i.state)==null?void 0:o.visible)===!1||!this.state.visible||!this.state.enabled)return;if(this.css3DRenderPlugin||(this.css3DRenderPlugin=Aa(this.five)),i.stickType==="3DPoint"&&!i.normal)return console.error("updateRenderPlaneTag: 三维点标签缺少法向量!");const l=this.getPositions(i);if(!l)return;const c=this.getTagNormal(i);if(!c)return;const h=(r=this.getTagConfig(i).tag3DConfig)!=null?r:{};if(this.getRenderType(i)==="BehindDom"){h.mode="behind",h.container=document.createElement("div");const A="black";h.container.style.backgroundColor=A,h.container.style.border=`3px solid ${A}`,this.css3DRenderPlugin.hooks.on("render",()=>{var p;if(u.css3DObject.opacityMesh){const g=this.addObjectClickHandler(i,u.css3DObject.opacityMesh,v=>{this.hooks.emit("click",{event:v,target:"TagContent",tag:i})});(p=this.store.css3DRenderDisposer.get(i.id))==null||p.push(g)}})}const u=this.css3DRenderPlugin.create3DDomContainer(l,h);if(!u)return;this.store.css3DRenderDisposer.set(i.id,[u.dispose]);const m=new qu({target:u.container,props:{tag:i,hooks:this.hooks,state:this.state,mediaStore:this.mediaStore,temporaryState:this.temporaryState}});i.tag3DContentSvelte={svelteApp:m,domContainer:u,css3DInstance:u,initialNormal:c,currentNormal:c,dispose:()=>{m.$destroy(),u.dispose()}},vt(i)&&((a=i.model)!=null&&a.object)&&this.updateTagCss3DObjectMatrix(i,i.model.object)}}),this.clearUnusedPanelTag()}updateRenderModelTag(){const e=o=>!this.enabledModelTagSet.has(o.customID),i=this.gltfObjectGroup.children.filter(e);i.forEach(o=>o.removeEventListener()),this.gltfObjectGroup.remove(...i),this.tags.filter(o=>o.stickType==="Model").forEach(o=>{var r;(r=o.model)==null||r.promise.then(a=>{a.visible=this.getCurrentVisibleState(o)})}),this.five.needsRender=!0}updateTagModelVisible(){this.tags.forEach(e=>{var i;e.mediaPlane&&(e.mediaPlane.visible=this.getCurrentVisibleState(e)),(i=e.model)!=null&&i.object&&(e.model.object.visible=this.getCurrentVisibleState(e))})}updateTagCss3DObjectMatrix(e,i){var p,g,v;const s=(g=(p=e.config.tag3DConfig)==null?void 0:p.ratio)!=null?g:.00216,o=(v=e.tag3DContentSvelte)==null?void 0:v.css3DInstance.css3DObject;if(!o)return;const r=vt(e)?e.data.mediaPosition:e.position;if(!r||r.length!==4||!Array.isArray(r[0])||!Array.isArray(r[2]))return;i.updateWorldMatrix(!1,!1);const a=i.matrixWorld,l=new R.Vector3().fromArray(r[0]),c=new R.Vector3().fromArray(r[2]),d=Ai(l,c).add(new R.Vector3(0,0,5e-4)),h=new R.Matrix4().setPosition(d),u=new R.Matrix4().makeScale(s,s,s),m=new R.Matrix4().multiply(a).multiply(h).multiply(u);m.decompose(o.position,o.quaternion,o.scale);const A=o.opacityMesh;A&&m.decompose(A.position,A.quaternion,A.scale)}addMediaModelTag(e){return W(this,null,function*(){const i=e.filter(u1).map(s=>this.loadModel(s));yield Promise.all(i),this.setModelMedialVisible(),this.updateRenderAllTags()})}updateRenderPointTag(){var i;const e=this.filterPointTag;if(this.setTagZIndex(e),this.setPointTagPosition(),this.TagContainerSvelte)this.TagContainerSvelte.$set({tags:e,state:this.state,temporaryState:this.temporaryState});else{const s=(i=this.five.getElement())==null?void 0:i.parentElement;if(!s)return console.error("updateRenderPlaneTag: tag2DContainer not found");this.TagContainerSvelte=new kP({target:s,props:{hooks:this.hooks,tags:e,state:this.state,temporaryState:this.temporaryState,mediaStore:this.mediaStore,renderMap:this.renderMap}})}}updateTagContainerVisible(){var e;(e=this.TagContainerSvelte)==null||e.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation}),this.filterCSS3DTag.forEach(i=>{var s,o,r,a,l;(a=(o=(s=i.tag3DContentSvelte)==null?void 0:s.css3DInstance)==null?void 0:o.css3DObject)==null||a.setVisible((this.state.visible&&((r=i.state)==null?void 0:r.visible))!==!1),(l=i.tag3DContentSvelte)==null||l.svelteApp.$set({state:this.state,temporaryState:this.temporaryState,withAnimation:this.store.visibleWithAnimation})})}disposeAllCSS3DContainer(){for(const[,e]of this.store.css3DRenderDisposer)e==null||e.forEach(i=>i==null?void 0:i());this.store.css3DRenderDisposer=new Map}clearUnusedPanelTag(){this.filter2DPointTag.forEach(e=>{var i;(i=e.tag3DContentSvelte)==null||i.css3DInstance.dispose(),e.tag3DContentSvelte=void 0});for(const[e,i]of this.store.css3DRenderDisposer){const s=this.getTagById(e);(!s||s.stickType==="2DPoint")&&(i==null||i.forEach(o=>o==null?void 0:o()),this.store.css3DRenderDisposer.delete(e))}}}const Ku="Dnalogel-PanoTagPlugin",jP=n=>`${Ku}--${n}`;class po extends LP{constructor(e,i){super(e);f(this,"state",{enabled:!0,visible:!0});f(this,"params");f(this,"debug");f(this,"changeTagModel",(e,i)=>W(this,null,function*(){e.data=Fe({},e.data,i),yield this.loadModel(e),this.updateRenderAllTags()}));f(this,"handleFiveInitAnimationEnded",()=>{const e=this.five.getCurrentState().mode;this.tags.forEach(i=>{vt(i)&&e==="Panorama"&&this.changeTagMode(i,"front"),i.state.visible=this.getVisible(i)}),this.updateRenderAllTags()});f(this,"handleFiveModelShownFloorChange",()=>{this.tags.forEach(e=>{var s,o;const i=this.getTagConfig(e).visibleConfig;typeof i=="object"&&((s=i.visibleFiveMode)!=null&&s.includes("Floorplan")||(o=i.visibleFiveMode)!=null&&o.includes("Mapview"))&&(e.state.visible=this.getVisibleByFiveMode(e))}),this.updateRenderAllTags()});this.params=Fe({},{debug:!1,config:this.config},G({},i)),this.debug=this.params.debug,this.config=this.params.config,w1(1,{namespace:Na.PlayAudio});try{const s=window;Array.isArray(s.__PANOTAGPLUGIN_DEBUG_LIST__)||(s.__PANOTAGPLUGIN_DEBUG_LIST__=[]),s.__PANOTAGPLUGIN_DEBUG_LIST__.push(this),s.__PANOTAGPLUGIN_DEBUG__=this}catch(s){}}load(e,i){return W(this,null,function*(){var o,r;this.clearTags(),console.debug(Ku," load:",{data:JSON.parse(JSON.stringify(e))}),this.config=Fe({},this.config,{globalConfig:(o=e.globalConfig)!=null?o:{},contentTypeConfig:(r=e.contentTypeConfig)!=null?r:{}});const s=yield this.addTag(e.tagList,i);if(this.debug)try{a1(this.five,this.tags)}catch(a){console.error(a)}return s})}addTag(e,i){return W(this,null,function*(){const o=(Array.isArray(e)?e:[e]).map(r=>{var d,h,u;const a=this.getTagConfig(r),l=JSON.parse(JSON.stringify(r.data));return r.config=a,ve(G({},r),{enabled:(d=r.enabled)!=null?d:!0,id:(h=r.id)!=null?h:lt(),data:(u=a.initialData)!=null&&u.important?Fe(r.data,l,a.initialData):Fe(r.data,a.initialData,l),state:G({visible:void 0,unfolded:!this.can("fold",r)},a.initialState),hooks:new je.Subscribe,initialConfig:r.config,config:a,unfold:()=>this.changeUnfoldedById(r.id,!0),fold:()=>this.changeUnfoldedById(r.id,!1),enable:()=>this.changeEnabledById(r.id,!0),disable:()=>this.changeEnabledById(r.id,!1),destroy:()=>this.destroyTagById(r.id),changeData:m=>this.changeDataById(r.id,m)})}).filter(r=>r.position);return o.forEach(b1),this.tags.push(...o),m1(this.five).then(()=>W(this,null,function*(){var r,a,l;this.store.eventListenerDisposer&&((a=(r=this.store).eventListenerDisposer)==null||a.call(r)),this.state.enabled&&this.handleEnable(),this.addResizeListener(),this.clearUnusedPanelTag(),this.setVisibleAndUnfolded({withAnimation:(l=i==null?void 0:i.withAnimation)!=null?l:!0}).then(()=>this.updateRenderAllTags()),this.updateRenderAllTags(),yield this.addMediaModelTag(o)}))})}changeConfig(e,i=!0){i?this.config=Fe({},this.config,e):this.config=e,this.updateTagConfig(),this.updateRenderAllTags()}changeGlobalConfig(e,i=!0){i?this.config.globalConfig=Fe({},this.config.globalConfig,e):this.config.globalConfig=e,this.updateTagConfig(),this.updateRenderAllTags()}changeContentTypeConfig(e,i,s=!0){this.config.contentTypeConfig||(this.config.contentTypeConfig={}),s?this.config.contentTypeConfig[e]=Fe({},this.config.contentTypeConfig[e],i):this.config.contentTypeConfig[e]=i,this.updateTagConfig(),this.updateRenderAllTags()}show(e){return W(this,null,function*(){if(this.checkDisposed())return;const{userAction:i=!0,withAnimation:s=!1}=e!=null?e:{};this.setState({visible:!0},{userAction:i,visibleWithAnimation:s}),this.hooks.emit("show",{userAction:i,withAnimation:s})})}hide(e){return W(this,null,function*(){if(this.checkDisposed())return;const{userAction:i=!0,withAnimation:s=!1}=e!=null?e:{};this.setState({visible:!1},{userAction:i,visibleWithAnimation:s}),this.hooks.emit("hide",{userAction:i,withAnimation:s})})}enable(e){if(this.checkDisposed())return;const{userAction:i=!0}=e!=null?e:{};this.setState({enabled:!0},{userAction:i}),this.hooks.emit("enable",{userAction:i})}disable(e){if(this.checkDisposed())return;const{userAction:i=!0}=e!=null?e:{};this.setState({enabled:!1},{userAction:i}),this.hooks.emit("disable",{userAction:i})}setState(e,i){if(this.checkDisposed())return;const{userAction:s=!0,visibleWithAnimation:o=!1}=i,r=G({},this.state);this.state=Object.assign(this.state,e),this.store.visibleWithAnimation=o,r.visible!==this.state.visible&&(e.visible?this.handleShow():this.handleHide()),r.enabled!==this.state.enabled&&(e.enabled?this.handleEnable():this.handleDisable()),this.hooks.emit("stateChange",{state:this.state,prevState:r,userAction:s})}dispose(){var e,i,s,o,r,a;this.pauseCurrentMedia(),this.disposeAllCSS3DContainer(),(e=this.TagContainerSvelte)==null||e.$destroy(),this.filterCSS3DTag.forEach(l=>{var c;return(c=l.tag3DContentSvelte)==null?void 0:c.svelteApp.$destroy()}),this.tags=[],(i=this.store.disposers)==null||i.forEach(l=>l==null?void 0:l()),this.store.disposers=[],(o=(s=this.store).eventListenerDisposer)==null||o.call(s),this.store.eventListenerDisposer=void 0,(a=(r=this.store).resizeObserverDisposer)==null||a.call(r),this.store.resizeObserverDisposer=void 0,this.store.resizeObserverDisposerAdding=!1,this.five.scene.remove(this.group),this.group.remove(...this.group.children),this.gltfObjectGroup.remove(...this.gltfObjectGroup.children),this.imagePlaneGroup.remove(...this.imagePlaneGroup.children),this.clearCache(),this.five.needsRender=!0,this.store.disposed=!0,this.hooks.emit("dispose")}changeUnfoldedById(e,i){var a;const s=this.getTagById(e);if(!s)return;const o=this.can("fold",s),r=this.can("unfold",s);if(o&&r){s.state.unfolded=i;const l=this.filterPointTag;(a=this.TagContainerSvelte)==null||a.$set({tags:l})}else console.warn(`tag ${e} cannot be ${i?"unfolded":"folded"}`)}changeEnabledById(e,i){const s=this.getTagById(e);s&&(s.enabled=i,this.updateRenderAllTags())}changeTagNormalById(e,i){const s=this.getTagById(e);s&&s.tag3DContentSvelte&&(s.tag3DContentSvelte.currentNormal=Et(i))}changeDataById(e,i,s=!0){const o=this.getTagById(e);let r=!1;o&&(o.data&&(r=!0),s?o.data=Fe(o.data,i):o.data=G(G({},o.data),i),this.clearUnusedPanelTag(),this.updateRenderAllTags(),r&&o.hooks.emit("dataChanged",o.data))}changeStickTypeById(e,i,s=!0){this.changeTagById(e,i,s)}changeTagById(e,i,s=!0){const o=this.getTagById(e);let r=!1;i&&(i.data&&(r=!0),s?Fe(o,i):Object.assign(o,i),o!=null&&o.tag3DContentSvelte&&(i!=null&&i.normal)&&(o.tag3DContentSvelte.currentNormal=Et(i.normal)),this.updateRenderAllTags(),this.clearUnusedPanelTag(),r&&o.hooks.emit("dataChanged",o.data))}destroyTagById(e){(Array.isArray(e)?e:[e]).forEach(s=>{const o=this.tags.findIndex(r=>r.id===s);o!==-1&&this.tags.splice(o,1)}),this.updateRenderAllTags()}setVisibleAndUnfolded(){return W(this,arguments,function*({withAnimation:e}={withAnimation:!1}){if(this.isPanorama)return this.setVisible(),e?new Promise(i=>{setTimeout(()=>{this.setUnfoldedByPanoIndex(),i()},10)}):(this.setUnfoldedByPanoIndex(),Promise.resolve())})}handleShow(){this.state.visible=!0,this.group.visible=!0,this.updateTagContainerVisible(),this.updateTagModelVisible(),this.five.needsRender=!0}handleHide(){this.pauseCurrentMedia(),this.state.visible=!1,this.group.visible=!1,this.updateTagContainerVisible(),this.updateTagModelVisible(),this.five.needsRender=!0}handleEnable(){this.state.enabled=!0,this.store.eventListenerDisposer=this.addEventListener(),this.five.scene.children.includes(this.group)||this.five.scene.add(this.group),this.group.traverse(e=>{var i;(i=e==null?void 0:e.updateTagCss3DObjectMatrix)==null||i.call(e)}),this.updateRenderAllTags(),this.five.needsRender=!0}handleDisable(){var e,i,s;this.pauseCurrentMedia(),this.state.enabled=!1,(i=(e=this.store).eventListenerDisposer)==null||i.call(e),this.five.scene.remove(this.group),(s=this.TagContainerSvelte)==null||s.$set({tags:[]}),this.filterCSS3DTag.forEach(o=>{var r;(r=o.tag3DContentSvelte)==null||r.dispose(),o.tag3DContentSvelte=void 0}),this.five.needsRender=!0}addEventListener(){const{five:e,hooks:i}=this,s=this.handleFiveWantsMoveToPano.bind(this),o=this.handleFiveModeChange.bind(this),r=this.handleFiveCameraUpdate.bind(this),a=this.handleFiveCameraUpdateDebounce(),l=this.handleFivePanoArrived.bind(this),c=this.loadVideoFirstFrame.bind(this),d=this.clickhandler.bind(this),h=this.five.currentMode;return h&&this.handleFiveModeChange(h),this.handleFivePanoArrived(),e.on("wantsMoveToPano",s),e.on("modeChange",o),e.on("initAnimationEnded",this.handleFiveInitAnimationEnded),e.on("modelShownFloorChange",this.handleFiveModelShownFloorChange),e.on("cameraUpdate",r),e.on("cameraUpdate",a),e.on("panoArrived",l),e.on("panoArrived",c),i.on("click",d),()=>{e.off("wantsMoveToPano",s),e.off("modeChange",o),e.off("initAnimationEnded",this.handleFiveInitAnimationEnded),e.off("modelShownFloorChange",this.handleFiveModelShownFloorChange),e.off("cameraUpdate",r),e.off("cameraUpdate",a),e.off("panoArrived",l),e.off("panoArrived",c),i.off("click",d),this.store.eventListenerDisposer=void 0}}addResizeListener(){if(!this.store.resizeObserverDisposer&&!this.store.resizeObserverDisposerAdding){const e=this.addResizeObserver();this.store.resizeObserverDisposerAdding=!0,setTimeout(()=>{this.store.resizeObserverDisposer=e,this.store.resizeObserverDisposerAdding=!1},200)}}addResizeObserver(){if(!this.store.disposed)return;const e=this.five.getElement(),i=()=>{this.state.enabled&&(this.show(),this.updateRenderAllTags())},s=()=>{this.state.enabled&&this.hide()},{observe:o,unobserve:r}=Hc(A1(()=>{this.store.resizeObserverDisposer&&s()},500),e),{observe:a,unobserve:l}=Hc(Nc(()=>i(),400),e);return o(),a(),()=>{r(),l()}}handleFiveModeChange(e){this.setModelMedialVisible(),this.tags.forEach(i=>{vt(i)&&e!=="Panorama"&&this.changeTagMode(i,"behind"),i.state.visible=this.getVisible(i)}),this.updateRenderAllTags()}handleFiveWantsMoveToPano(e){this.tags.forEach(i=>{this.getVisible(i,{panoIndex:e})&&(i.state.visible=!0);const o=this.getTagConfig(i);typeof o.visibleConfig=="object"&&(o.visibleConfig.keep?i.temporaryState.visible=o.visibleConfig.keep==="visible":i.temporaryState.visible=!!o.visibleConfig.alwaysShowWhenMovePano)}),this.updateTagContainerVisible(),this.updateRenderImagePlane(),this.updateRenderVideoPlane()}clickhandler(e){if(e.target!=="TagPoint")return;if(!e.tag.state)return console.warn("Clickhandler: params.tag.state is undefined");const i=this.can("fold",e.tag),s=this.can("unfold",e.tag);i&&s&&(e.tag.state.unfolded=!e.tag.state.unfolded,e.tag.state.unfolded&&this.tags.forEach(o=>{o.id!==e.tag.id&&o.state&&this.can("fold",o)&&(o.state.unfolded=!1)}),this.updateRenderAllTags())}handleFiveCameraUpdateDebounce(){return Nc(()=>{this.setUnfoldedByCamera(),this.updateRenderAllTags()},100)}handleFiveCameraUpdate(){this.updateRenderPointTag()}handleFivePanoArrived(){return W(this,null,function*(){var e,i,s;this.setModelMedialVisible(),yield this.setVisibleAndUnfolded(),this.tags.forEach(o=>{o.temporaryState=ve(G({},o.temporaryState),{visible:!0})}),(s=(i=(e=this.config)==null?void 0:e.globalConfig)==null?void 0:i.modelConfig)!=null&&s.autoLookAtEnabled&&this.tags.filter(h1).filter(o=>{var r,a;return(a=(r=o.config)==null?void 0:r.modelConfig)==null?void 0:a.autoLookAtEnabled}).forEach(o=>{var u;const r=new E.Mesh(new E.BoxGeometry,new E.MeshBasicMaterial),a=(u=o.model)==null?void 0:u.object;if(!a)return;r.position.copy(a.position),r.quaternion.copy(a.quaternion);const l=this.five.camera.position;r.lookAt(l.clone().setY(r.position.y));const c=a.quaternion.clone(),d=r.quaternion.clone(),h=vo();h.onUpdate(({progress:m})=>{a.quaternion.copy(c.clone().slerp(d,m))}),h.play()}),this.store.visibleWithAnimation=!0,this.updateTagContainerVisible(),this.updateRenderAllTags()})}setUnfoldedByCamera(){let e=!1;this.tags.forEach(i=>{const s=this.getUnfoldedByCamera(i);i.state&&s!==void 0&&(s===!0&&(e=!0),i.state.unfolded=s)}),e&&this.tags.forEach(i=>{const s=this.getTagConfig(i).unfoldedConfig;typeof s=="object"&&(s.autoUnfold||s.keep)||i.state&&(i.state.unfolded=!1)})}changeTagMode(e,i){var s,o,r,a,l,c;((s=e.config)==null?void 0:s.renderType)!=="Mesh"&&((a=(r=(o=e.tag3DContentSvelte)==null?void 0:o.css3DInstance)==null?void 0:r.css3DObject)==null?void 0:a.mode)!==i&&((l=e.config)!=null&&l.tag3DConfig?e.config.tag3DConfig.mode=i:e.config?e.config.tag3DConfig={mode:i}:e.config={tag3DConfig:{mode:i}},(c=this.store.css3DRenderDisposer.get(e.id))==null||c.forEach(d=>d==null?void 0:d()),e.tag3DContentSvelte=void 0)}}const zP=(n,t)=>new po(n,t);function OP(n){ue(n,"svelte-4qjwer",".guide-line__tag.svelte-4qjwer.svelte-4qjwer{position:relative}.text-with-distance.svelte-4qjwer.svelte-4qjwer{display:flex;flex-direction:column;position:relative;padding:0.125rem 0.25rem;border-radius:0.125rem;background:linear-gradient(to top, rgba(147, 147, 147, 0.3), rgba(74, 74, 74, 0.3));box-shadow:0 0.125rem 0.5rem 0 rgba(0, 0, 0, 0.2)}.text-with-distance.svelte-4qjwer .border.svelte-4qjwer{position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;padding:0.0625rem;border-radius:0.25rem;background:linear-gradient(to right, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.2));-webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);mask-composite:exclude;-webkit-mask-composite:xor;transform:scale(0.5)}.distance-and-name.svelte-4qjwer.svelte-4qjwer{display:flex;gap:0.1875rem}.distance.svelte-4qjwer.svelte-4qjwer{white-space:nowrap;font-size:0.625rem;line-height:0.875rem;color:#66afff}.name.svelte-4qjwer.svelte-4qjwer{opacity:0.6;font-size:0.625rem;line-height:0.875rem;white-space:nowrap;color:#ffffff}.line-name.svelte-4qjwer.svelte-4qjwer{color:#fff;white-space:nowrap;font-size:0.625rem;line-height:0.875rem}.guide-line__tag-point.svelte-4qjwer.svelte-4qjwer{position:absolute;left:50%;bottom:0.0625rem;width:0.4375rem;height:0.125rem;transform:translateX(-50%);background:#fff;border-radius:50%;opacity:0.5}.guide-line__tag-line.svelte-4qjwer.svelte-4qjwer{position:absolute;left:50%;bottom:0.0625rem;width:0.0625rem;height:1.875rem;transform:translateX(-50%);background:linear-gradient(to top, #fff, rgba(255, 255, 255, 0))}.guide-line__tag-content.svelte-4qjwer.svelte-4qjwer{position:absolute;left:-0.9375rem;bottom:1.9375rem;display:flex}.guide-line__tag-icon.svelte-4qjwer.svelte-4qjwer{width:1.875rem;height:1.875rem;background-size:100%}.guide-line__tag-text.svelte-4qjwer.svelte-4qjwer{box-sizing:content-box;height:0.875rem;width:-moz-max-content;width:max-content;margin-top:0.3125rem;transform:translateX(-0.1875rem);white-space:nowrap;font-size:0.625rem;line-height:0.875rem;border:solid transparent;border-width:0.125rem 0.5rem 0.125rem 0.375rem;border-image-slice:6 25 6 18 fill;color:#fff}")}function ih(n){let t,e;return{c(){t=D("div"),e=xe(n[0]),w(t,"class","guide-line__tag-text svelte-4qjwer"),j(t,"border-image-source",`url(${n[6]})`)},m(i,s){O(i,t,s),x(t,e)},p(i,s){s&1&&Se(e,i[0])},d(i){i&&z(t)}}}function nh(n){let t,e,i,s,o=n[5]("全程")+"",r,a,l=n[5]("米")+"",c,d,h,u,m,A,p=n[4]&&sh(n);return{c(){t=D("div"),p&&p.c(),e=$(),i=D("div"),s=D("span"),r=xe(o),a=xe(n[2]),c=xe(l),d=$(),h=D("span"),u=xe(n[0]),m=$(),A=D("div"),w(s,"class","distance svelte-4qjwer"),w(h,"class","name svelte-4qjwer"),w(i,"class","distance-and-name svelte-4qjwer"),w(A,"class","border svelte-4qjwer"),w(t,"class","text-with-distance svelte-4qjwer")},m(g,v){O(g,t,v),p&&p.m(t,null),x(t,e),x(t,i),x(i,s),x(s,r),x(s,a),x(s,c),x(i,d),x(i,h),x(h,u),x(t,m),x(t,A)},p(g,v){g[4]?p?p.p(g,v):(p=sh(g),p.c(),p.m(t,e)):p&&(p.d(1),p=null),v&32&&o!==(o=g[5]("全程")+"")&&Se(r,o),v&4&&Se(a,g[2]),v&32&&l!==(l=g[5]("米")+"")&&Se(c,l),v&1&&Se(u,g[0])},d(g){g&&z(t),p&&p.d()}}}function sh(n){let t,e;return{c(){t=D("span"),e=xe(n[4]),w(t,"class","line-name svelte-4qjwer")},m(i,s){O(i,t,s),x(t,e)},p(i,s){s&16&&Se(e,i[4])},d(i){i&&z(t)}}}function BP(n){let t,e,i,s,o,r,a,l,c,d=n[0]&&!n[2]&&ih(n),h=n[2]&&nh(n);return{c(){t=D("div"),e=D("div"),i=$(),s=D("div"),o=$(),r=D("div"),a=D("div"),l=$(),d&&d.c(),c=$(),h&&h.c(),w(e,"class","guide-line__tag-point svelte-4qjwer"),w(s,"class","guide-line__tag-line svelte-4qjwer"),w(a,"class","guide-line__tag-icon svelte-4qjwer"),j(a,"background-image",`url(${n[1]})`),w(r,"class","guide-line__tag-content svelte-4qjwer"),w(t,"class","guide-line__tag svelte-4qjwer"),j(t,"opacity",n[3])},m(u,m){O(u,t,m),x(t,e),x(t,i),x(t,s),x(t,o),x(t,r),x(r,a),x(r,l),d&&d.m(r,null),x(r,c),h&&h.m(r,null)},p(u,[m]){m&2&&j(a,"background-image",`url(${u[1]})`),u[0]&&!u[2]?d?d.p(u,m):(d=ih(u),d.c(),d.m(r,c)):d&&(d.d(1),d=null),u[2]?h?h.p(u,m):(h=nh(u),h.c(),h.m(r,null)):h&&(h.d(1),h=null),m&8&&j(t,"opacity",u[3])},i:q,o:q,d(u){u&&z(t),d&&d.d(),h&&h.d()}}}function VP(n,t,e){let{text:i=""}=t,{icon_url:s=""}=t,{distance:o=0}=t,{opacity:r=1}=t,{name:a=""}=t,{i18n:l=d=>d}=t;const c="data:image/png;base64,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";return n.$$set=d=>{"text"in d&&e(0,i=d.text),"icon_url"in d&&e(1,s=d.icon_url),"distance"in d&&e(2,o=d.distance),"opacity"in d&&e(3,r=d.opacity),"name"in d&&e(4,a=d.name),"i18n"in d&&e(5,l=d.i18n)},[i,s,o,r,a,l,c]}class RP extends le{constructor(t){super(),ae(this,t,VP,BP,oe,{text:0,icon_url:1,distance:2,opacity:3,name:4,i18n:5},OP)}}function QP(n){return n.length===0?[]:n.filter((t,e)=>t!==n[e-1])}const GP=`
581
583
  varying vec2 vUv;
582
584
 
583
585
  void main() {
584
586
  vUv = uv;
585
587
  gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
586
588
  }
587
- `,GP=`
589
+ `,NP=`
588
590
  // 是否使用颜色
589
591
  uniform int useMapColor;
590
592
  // 贴图
@@ -664,14 +666,14 @@ void main() {
664
666
  gl_FragColor.a = gl_FragColor.a * linearGradientOpacity();
665
667
  gl_FragColor.a = gl_FragColor.a * flicker;
666
668
  }
667
- `;class ca{constructor(t,e){f(this,"name","");f(this,"startTagContainer");f(this,"endTagContainer");f(this,"mesh");f(this,"five");f(this,"mode");f(this,"path",[]);f(this,"_curvePath",null);f(this,"_curvePoints",null);f(this,"_panoGroup",[]);f(this,"skippedPositions",null);f(this,"textureUrl","");f(this,"scale",1);f(this,"width",.5);f(this,"unitLength",.5);f(this,"_visibleFloorIndexes",null);f(this,"visible",null);f(this,"modeVisible",!1);f(this,"floorVisible",!0);f(this,"defaultVisible",!1);f(this,"inWalkAnimation",!1);f(this,"customVisible",null);f(this,"parent");f(this,"plugin");f(this,"textureHasLoaded",!1);f(this,"disposed",!1);f(this,"flowAnime",new fn({progress:0}).to({progress:1}).duration(1500).repeat(1/0));f(this,"flickerAnime",Ao(300).yoyo(!0).repeat(5));f(this,"cacheLengths",[]);f(this,"dispose",()=>{var t,e;this.disposed||(this.disposed=!0,this.parent.hooks.off("show",this.updateVisible),this.parent.hooks.off("hide",this.updateVisible),this.plugin.hooks.off("show",this.updateVisible),this.plugin.hooks.off("hide",this.updateVisible),this.plugin.hooks.off("enable",this.updateVisible),this.plugin.hooks.off("disable",this.updateVisible),this.five.off("modeChange",this.onFiveModeChange),this.five.off("modelShownFloorChange",this.onFiveModelShownFloorChange),this.doHide(),(t=this.startTagContainer)==null||t.plugin.dispose(),(e=this.endTagContainer)==null||e.plugin.dispose())});f(this,"onWalkAnimationStart",()=>{this.inWalkAnimation=!0,this.updateVisible()});f(this,"onWalkAnimationEnd",()=>{this.inWalkAnimation=!1,this.updateVisible()});f(this,"onFiveModeChange",t=>{this.modeVisible=this.mode==="panorama"?ma(t):yh(t),this.updateVisible()});f(this,"onFiveModelShownFloorChange",t=>{this.floorVisible=t===null||this.visibleFloorIndexes===null||this.visibleFloorIndexes.includes(t),this.updateVisible()});f(this,"updateVisible",()=>{const t=(()=>!this.parent.visible||!this.plugin.state.enabled||!this.plugin.state.visible?!1:this.customVisible!==null?this.customVisible:this.inWalkAnimation?!0:this.modeVisible&&this.textureHasLoaded&&this.defaultVisible&&this.floorVisible)();this.visible!==t&&(this.visible=t,t?this.doShow():this.doHide())});f(this,"onFlowAnimeUpdate",t=>{const{progress:e}=t;this.mesh.material.uniforms.vOffset.value=e,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0});f(this,"onFlickerAnimeUpdate",t=>{var s,o;const{progress:e}=t,i=1-e;this.mesh.material.uniforms.flicker.value=i,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0,this.startTagContainer.tag&&Vr(this.startTagContainer.tag)&&((s=this.startTagContainer.app)==null||s.$set(ve(G({},this.startTagContainer.tag.data),{opacity:i,name:this.name,distance:Math.round(this.curvePath.getLength())}))),this.endTagContainer.tag&&Vr(this.endTagContainer.tag)&&((o=this.endTagContainer.app)==null||o.$set(ve(G({},this.endTagContainer.tag.data),{opacity:i})))});f(this,"logWarning",t=>Qb("GuideLineModeItem: ",t));f(this,"logError",t=>wu("GuideLineModeItem: ",t));var o,r;this.five=t,this.mode=e.mode,this.plugin=e.plugin,this.parent=e.parent,this.startTagContainer={tag:null,plugin:new go(this.five)},this.endTagContainer={tag:null,plugin:new go(this.five)};const i=new E.BufferGeometry,s=new E.ShaderMaterial({vertexShader:QP,fragmentShader:GP,transparent:!0,uniforms:{map:{value:null},useMapColor:{value:0},mapColor:{value:new E.Color},mapOpacity:{value:1},backgroundColor:{value:new E.Color},backgroundOpacity:{value:0},borderColor:{value:new E.Color},borderOpacity:{value:0},opacity:{value:1},flicker:{value:1},maxU:{value:0},vOffset:{value:0}}});this.mesh=new E.Mesh(i,s),this.mesh.name="GuideLineModeItem",this.mode==="panorama"&&(this.parent.hooks.on("walkStart",this.onWalkAnimationStart),this.parent.hooks.on("walkEnded",this.onWalkAnimationEnd)),this.updateVisible(),this.onFiveModeChange(this.five.getCurrentState().mode),this.onFiveModelShownFloorChange((r=(o=this.five.model)==null?void 0:o.shownFloor)!=null?r:null),this.flowAnime.onUpdate(this.onFlowAnimeUpdate),this.flickerAnime.onUpdate(this.onFlickerAnimeUpdate),this.parent.hooks.on("show",this.updateVisible),this.parent.hooks.on("hide",this.updateVisible),this.plugin.hooks.on("show",this.updateVisible),this.plugin.hooks.on("hide",this.updateVisible),this.plugin.hooks.on("enable",this.updateVisible),this.plugin.hooks.on("disable",this.updateVisible),this.plugin.hooks.on("dispose",this.dispose),this.five.on("modeChange",this.onFiveModeChange),this.five.on("modelShownFloorChange",this.onFiveModelShownFloorChange)}get panoGroup(){return this._panoGroup}get visibleFloorIndexes(){return this._visibleFloorIndexes}get curvePath(){return this._curvePath}get curvePoints(){return this._curvePoints}setCustomVisible(t){if(this.disposed)return this.logError("disposed");this.customVisible!==t&&(this.customVisible=t,this.updateVisible())}setDefaultVisible(t){if(this.disposed)return this.logError("disposed");this.defaultVisible!==t&&(this.defaultVisible=t,this.updateVisible())}setUnitSize(t,e){if(this.disposed)return this.logError("disposed");this.width=t,this.unitLength=e,this.setGeometryByPath(this.path,{width:t,unit_length:e})}setScale(t){if(this.disposed)return this.logError("disposed");this.scale=t,this.setGeometryByPath(this.path,{scale:t})}setGeometryByPanoGroup(t,e){if(this.disposed)return this.logError("disposed");if(!this.five.work)return this.logError("setPathByPanoGroup: work is not ready");const i=RP(t);if(this._panoGroup=i,(e==null?void 0:e.skipPanoGroup)!==void 0){const o=e.skipPanoGroup?i.map(r=>this.five.work.observers[r]).map(r=>r.standingPosition.clone()):null;this.skippedPositions=o}const s=this.getPathFromPanoGroup(i,this.five.work,e);this.path=s,this.setGeometryByPath(s,e)}setGeometryByPath(t,e){var d,h,u;if(this.disposed)return this.logError("disposed");const i=(d=e==null?void 0:e.scale)!=null?d:this.scale,s=(h=e==null?void 0:e.width)!=null?h:this.width,o=(u=e==null?void 0:e.unit_length)!=null?u:this.unitLength;this.path=t,this.scale=i,this.width=s,this.unitLength=o;const{geometry:r,maxU:a,curvePath:l,curvePoints:c}=s1({path:t,width:s*i,unitLength:o*i,skipPositions:this.skippedPositions});this._curvePath=l,this._curvePoints=c,this.mesh.geometry=r,this.mesh.material.needsUpdate=!0,this.mesh.material.uniforms.maxU.value=a,this.five.needsRender=!0}setMartial(t){var e;if(this.disposed)return this.logError("disposed");(t==null?void 0:t.visible)!==void 0&&this.setDefaultVisible(t.visible),(t==null?void 0:t.color)!==void 0&&this.setColor(t.color),(t==null?void 0:t.opacity)!==void 0&&this.setOpacity(t.opacity),((e=t==null?void 0:t.texture)==null?void 0:e.url)!==void 0&&this.setTextureUrl(t.texture.url),(t==null?void 0:t.background_color)!==void 0&&this.setBackgroundColor(t.background_color),(t==null?void 0:t.background_opacity)!==void 0&&this.setBackgroundOpacity(t.background_opacity),(t==null?void 0:t.border_color)!==void 0&&this.setBorderColor(t.border_color),(t==null?void 0:t.border_opacity)!==void 0&&this.setBorderOpacity(t.border_opacity)}setColor(t){if(this.disposed)return this.logError("disposed");t&&(this.mesh.material.uniforms.mapColor.value=new E.Color().set(t)),this.mesh.material.uniforms.useMapColor.value=t?1:0,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBorderColor(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.borderColor.value=new E.Color().set(t),this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBorderOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.borderOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBackgroundColor(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.backgroundColor.value=new E.Color().set(t),this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBackgroundOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.backgroundOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.opacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setMapOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.mapOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setTextureUrl(t){if(this.disposed)return this.logError("disposed");this.textureUrl=t,vn(t).then(e=>{this.disposed||this.textureUrl===t&&(e.wrapT=E.RepeatWrapping,this.textureHasLoaded=!0,this.mesh.material.uniforms.map.value=e,this.mesh.material.uniformsNeedUpdate=!0,this.mesh.material.needsUpdate=!0,this.five.needsRender=!0,this.updateVisible())})}setVisibleFloorIndexes(t){var e,i;if(this.disposed)return this.logError("disposed");this._visibleFloorIndexes=t,this.onFiveModelShownFloorChange((i=(e=this.five.model)==null?void 0:e.shownFloor)!=null?i:null)}setStartTag(t){this.setTag("start",t)}setEndTag(t){this.setTag("end",t)}flicker(){if(this.disposed)return this.logError("disposed");this.flickerAnime.play()}getLengthByPanoGroupIndex(t){return this.disposed?this.logError("disposed"):this.cacheLengths.length!==0?this.cacheLengths[t]:(this.cacheLengths=this.getPanoGroupLengths(),this.cacheLengths[t])}getPanoGroupLengths(){const t=this.panoGroup.map(c=>this.five.work.observers[c]),e=this.curvePoints.length,i=this.curvePath.getLength(),s=e-1,o=i/s,r=this.curvePath.getLengths(s),a=[];let l=0;for(let c=0;c<e;c++){const d=this.curvePoints[c],h=t[l];if(!h)break;h.standingPosition.clone().setY(0).distanceTo(d.clone().setY(0))<o&&(a.push(r[c]),l+=1)}return a}setTag(t,e){const i=t==="start"?this.startTagContainer:this.endTagContainer;e||i.plugin.clearTags();const o=Fe({},{contentType:"Custom",stickType:"2DPoint",config:{visibleConfig:{visibleFiveMode:["Floorplan","Mapview"],followModelVisibility:!1}},style:{point:{enabled:!1}},data:{}},e);i.tag=o,Vr(o)&&(i.tag.element=r=>{var c;(c=i.app)==null||c.$destroy();const a=t==="start"?ve(G({},o.data),{name:this.name,distance:Math.round(this.curvePath.getLength()),i18n:this.plugin.config.i18n}):o.data,l=new VP({target:r,intro:!0,props:a});return i.app=l,()=>l.$destroy()}),i.plugin.load({tagList:[i.tag]})}doShow(){this.mode==="model"&&this.flowAnime.play(),this.five.scene.add(this.mesh),this.startTagContainer.plugin.show(),this.endTagContainer.plugin.show(),this.five.needsRender=!0}doHide(){this.mode==="model"&&this.flowAnime.stop(),this.five.scene.remove(this.mesh),this.startTagContainer.plugin.hide(),this.endTagContainer.plugin.hide(),this.five.needsRender=!0}getPathFromPanoGroup(t,e,i){if(t.length<2)return[];const o=t.map(r=>e.observers[r]).map(r=>r.standingPosition.toArray());return[G({type:"CatmullRomCurve3",points:o},i)]}}function Vr(n){return n.contentType==="Custom"}const NP=Object.freeze(Object.defineProperty({__proto__:null,GuideLineModeItem:ca},Symbol.toStringTag,{value:"Module"}));function oh(n){const t=Math.abs(Math.cos(n.latitude));return new E.Vector3(-Math.sin(n.longitude)*t,-Math.sin(n.latitude),-Math.cos(n.longitude)*t)}function HP(n,t){const e=oh(n),i=oh(t);return e.angleTo(i)}const _P=n=>W(exports,null,function*(){try{n().then(()=>{},()=>{}).catch(()=>{})}catch(t){}}),Fs=Math.PI*2;function FP(n){return n>=0&&n<Fs?n:(n%Fs+Fs)%Fs}function WP(n){return{longitude:FP(-Math.atan2(n.x,-n.z)),latitude:-Math.asin(n.y/1)}}function YP(n,t,e,i){const s=-n/e,o=n;return s*i+o}function UP(n){return new Promise(t=>{setTimeout(()=>{t()},n)})}const $u="v1.0.6",ef="CruisePlugin",To=`${ef}@${$u}`,rh=()=>{console.error(`${To} is disposed`)},XP=()=>{console.warn(`${To} is disabled`)},ZP=()=>{console.error(`${To} is disabled`)},Rr=new Map;class ds extends yi{constructor(e,i){super(e,i);f(this,"state",{visible:!0,enabled:!0,disposed:!1,playing:!1,speed:1,config:{speedConfig:{rotateSpeed:.001,rotateSpeedUnit:"rad/ms",moveSpeed:.002,moveSpeedUnit:"m/ms"}}});f(this,"data");f(this,"config");f(this,"privateState",{playing:!1,currentPlayQueue:[],currentPlayKeyframe:null,broke:!1,disposers:[],modeChanging:!1});f(this,"GuideLine");this.config=i,Object.assign(window,{[`__${ef}_DEBUG__`]:this});const s=this.setFiveLinearUpdateCamera.bind(this),o=this.setFiveOriginUpdateCamera.bind(this);this.hooks.on("play",s),this.hooks.on("broke",o),this.hooks.on("end",o),this.hooks.on("pause",o),this.privateState.disposers.push(()=>{this.hooks.off("play",s),this.hooks.off("broke",o),this.hooks.off("end",o),this.hooks.off("pause",o)})}load(e,i,s){return W(this,null,function*(){var d,h,u,m,A,p;if(this.state.disposed)return rh();this.privateState.fiveOriginGetProgress||(h=(d=this.five.controller)==null?void 0:d.cameraMotion)!=null&&h.getProgress||(yield this.waitFiveLoaded(),this.privateState.fiveOriginGetProgress=(m=(u=this.five.controller)==null?void 0:u.cameraMotion)==null?void 0:m.getProgress),this.clear();const o=this.data?JSON.parse(JSON.stringify(this.data)):void 0,r=yield this.formatData(e);this.data=r,this.hooks.emit("dataChange",r,o);let a=[],l;const c=this.data.keyframes.filter(g=>g.data.panoIndex!==void 0);c.filter((g,v)=>{var y;return g.data.panoIndex!==((y=c[v-1])==null?void 0:y.data.panoIndex)}).map(g=>g.data.panoIndex).forEach(g=>{var y,I;const v=(y=this.five.work.observers[g])==null?void 0:y.floorIndex;if(v!==void 0)if(l===v){const M=a.length-1;a[M]=[...(I=a[M])!=null?I:[],g]}else{l=v;const M=a.length;a[M]=[g]}}),!this.GuideLine&&((A=this.config)==null?void 0:A.useGuideLine)!==!1&&r.useGuildLine!==!1&&(this.GuideLine=sf(this.five,this.config)),(p=this.GuideLine)==null||p.load({routes:a.map(g=>({panoIndexList:g})),config:r.guildPluginOptions}),this.setState({playing:!1}),this.handleVisible(this.state.visible),this.handleEnable(this.state.enabled),this.changePlayState(this.state.playing),this.changeSpeed(this.state.speed),i&&this.setState(i,{userAction:s}),console.debug(`${To} loaded`,r),this.hooks.emit("dataLoaded",r)})}play(e){this.setState({playing:!0},e)}playFrom(e){const{index:i,id:s,userAction:o}=e;this.state.playing&&this.setState({playing:!1},{userAction:o}),this.setState({playing:!0},{userAction:o,playFromIndex:i,playFromId:s})}playFromStart(e){return this.playFrom(ve(G({},e),{index:0}))}pause(e){this.setState({playing:!1},e)}show(e){return W(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return W(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,i){var o;if(this.state.disposed)return rh();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return ZP();const s=G({},this.state);this.state=G(G({},this.state),e),e.disposed!==void 0&&e.disposed!==s.disposed&&e.disposed&&this.handleDispose(),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible,i==null?void 0:i.userAction),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled,i==null?void 0:i.userAction),e.playing!==void 0&&e.playing!==s.playing&&this.changePlayState(e.playing,i),e.speed!==void 0&&e.speed!==s.speed&&this.changeSpeed(e.speed,i==null?void 0:i.userAction),It(s,this.state,{deep:!0})||this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:(o=i==null?void 0:i.userAction)!=null?o:!0})}formatData(e){return W(this,null,function*(){this.five.work||(yield this.waitFiveLoaded());const i=this.five.work.observers,s=(()=>{const o=e;return typeof o=="object"&&o!==null&&o.version&&o.data?o.data:o})();if(s.keyframes)return{keyframesId:lt(),keyframes:s.keyframes.map((o,r)=>{var c;const a=s.keyframes[r+1],l=(()=>!a||a.start===void 0||o.end===void 0?0:a.start-o.end)();return ve(G({id:(c=o.uuid)!=null?c:lt(),moveIndex:r,stay:l,index:r},o),{guildPluginOptions:s.guildPluginOptions})})};if(s.panoIndexList){let o=[];const{moveEffect:r,moveToFirstPanoEffect:a,moveToFirstPanoDuration:l}=s;return this.privateState.moveToFirstPanoEffect=a,this.privateState.moveToFirstPanoDuration=l,s.panoIndexList.forEach((c,d)=>{const h=(()=>{var g,v,y,I;const u=s.panoIndexList.slice(d).find(M=>M!==c);if(u===void 0)return;const m=(g=i[c])==null?void 0:g.position,A=(v=i[u])==null?void 0:v.position;if(!A||!m||((y=i[c])==null?void 0:y.floorIndex)!==((I=i[u])==null?void 0:I.floorIndex))return;const p=new E.Vector3().subVectors(A,m);return WP(p.normalize())})();s.moveType===void 0||s.moveType==="justMove"?o.push({moveIndex:d,stay:s.stay,data:G({effect:"Move",panoIndex:c,moveEffect:r},h!=null?h:{})}):s.moveType==="moveAndRotate"&&(o.push({moveIndex:d,stay:s.stay,data:{effect:"Move",panoIndex:c,moveEffect:r}}),h&&o.push({moveIndex:d,stay:s.stay,data:G({effect:"Rotate",panoIndex:c},h)}))}),{keyframesId:lt(),keyframes:o.map((c,d)=>G({id:lt(),index:d},c)),guildPluginOptions:s.guildPluginOptions,useGuildLine:s.useGuildLine}}else throw new Error("format error: data no keyframes or no panoIndexList")})}handleEnable(e,i=!0){var s,o;e?((s=this.GuideLine)==null||s.enable(),this.hooks.emit("enable",{userAction:i})):((o=this.GuideLine)==null||o.disable(),this.changePlayState(!1,{userAction:i}),this.hooks.emit("disable",{userAction:i})),this.state.enabled=e}handleVisible(e,i=!0){var s,o;e?((s=this.GuideLine)==null||s.show(),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:i}))):((o=this.GuideLine)==null||o.hide(),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:i}))),this.state.visible=e}changePlayState(e,i){this.actionIfStateIsEnabled(()=>{var s;return this.hooks.emit("playStateChange",e?"playing":"pause",{userAction:(s=i==null?void 0:i.userAction)!=null?s:!0})}),e?this.handlePlay(i):this.handlePause(i),this.state.playing=e}handlePlay(e){return W(this,null,function*(){var m;const{data:i,state:s,privateState:o,hooks:r}=this;if(o.playing||!(i!=null&&i.keyframes)||(i==null?void 0:i.keyframes.length)===0)return;const a=lt();o.playId=a,o.playing=!0,o.broke=!1;const l=i.keyframes,c=this.getPauseData();(e==null?void 0:e.notEmitEvent)!==!0&&r.emit("play",{userAction:(m=e==null?void 0:e.userAction)!=null?m:!0});let d=!1;const u=yield(()=>W(this,null,function*(){var A,p;if((e==null?void 0:e.playFromIndex)!==void 0)return e.playFromIndex;if((e==null?void 0:e.playFromId)!==void 0)return(A=this.data)==null?void 0:A.keyframes.findIndex(g=>g.id===e.playFromId);if(c!=null&&c.keyframeId){const g=(p=this.data)==null?void 0:p.keyframes.find(v=>v.id===c.keyframeId);if(c!=null&&c.fiveState&&(yield this.move(c.fiveState,{moveEffect:o.moveToFirstPanoEffect,duration:o.moveToFirstPanoDuration})),g){if(g.data.effect==="Move")return g.index;if(g.data.effect==="Rotate"){const v=c.duration!==void 0?c.duration*(1-c.playedProgress):void 0;return yield this.playKeyframe(g,{duration:v}),d=!0,g.index+1}}}}))();this.clearPauseData();for(const A of l){if(o.broke||!s.playing||!o.playing||a!==o.playId)return;if(!(u!==void 0&&A.index<u))try{r.emit("playIndexChange",A.index,A),yield this.playKeyframe(A,{moveEffect:d===!1?o.moveToFirstPanoEffect:void 0,duration:d===!1&&typeof o.moveToFirstPanoDuration=="number"?o.moveToFirstPanoDuration:void 0}),A.stay&&(yield UP(A.stay)),d===!1&&(d=!0)}catch(p){return Promise.resolve("broke")}}s.playing&&a===o.playId&&(this.setState({playing:!1},{userAction:!1}),r.emit("end"),this.clearPauseData())})}handlePause(e){var r;const{state:i,privateState:s,hooks:o}=this;i.playing=!1,s.playing!==!1&&(s.playing=!1,this.setPauseData(),s.broke||this.forceInteruptUpdateCamera(),(e==null?void 0:e.notEmitEvent)!==!0&&o.emit("pause",{userAction:(r=e==null?void 0:e.userAction)!=null?r:!0}))}playKeyframe(e,i){return W(this,null,function*(){var o;const{privateState:s}=this;return((o=this.privateState.currentPlayKeyframe)==null?void 0:o.keyframe.id)!==e.id&&(this.privateState.currentPlayKeyframe={keyframe:e}),s.currentPlayQueue.push(this.getPlayPromise(e,i)),this.actionPromiseQueue()})}addInterruptListener(e){const i=()=>{this.privateState.modeChanging||e()},s=e;return this.five.once("gesture",s),this.five.once("wantsChangeMode",i),()=>{this.five.off("gesture",s),this.five.once("wantsChangeMode",i)}}getPlayPromise(s){return W(this,arguments,function*(e,i={}){var r;const o=e.data;if(i.duration=(r=i.duration)!=null?r:e.start!==void 0&&e.end!==void 0?e.end-e.start:void 0,!!o)return new Promise((a,l)=>{let c=!1;this.addInterruptListener(()=>{if(!c)return this.hooks.emit("broke"),this.privateState.broke=!0,this.setState({playing:!1}),c=!0,l(new Error("play is interupted"))});try{if(c)return;const d=()=>{a(),c=!0};switch(o.effect){case"Move":this.move(o,i).then(d);break;case"Rotate":this.rotate(o,i).then(d);break;default:this.rotate(o,i).then(d)}}catch(d){}})})}actionPromiseQueue(){return W(this,null,function*(){const{privateState:e}=this;return new Promise((i,s)=>{if(e.currentPlayQueue.length===0){i();return}const o=e.currentPlayQueue.shift();if(!o){i();return}o.then(i,s)}).then(()=>e.currentPlayQueue.length===0?Promise.resolve():this.actionPromiseQueue())})}move(e,i){return W(this,null,function*(){if(e.mode&&e.mode!==this.five.currentMode)yield this.changeMode(e);else if(e.panoIndex!==this.five.panoIndex)yield this.changePano(e,i);else return Promise.resolve()})}rotate(e,i){return W(this,null,function*(){if(e.mode&&e.mode!==this.five.currentMode)yield this.changeMode({mode:e.mode,panoIndex:e.panoIndex});else if(e.panoIndex&&e.panoIndex!==this.five.panoIndex)return yield this.changePano(e,i);yield this.updateCamera(e,i)})}updateCamera(s){return W(this,arguments,function*(e,i={}){const{five:o,privateState:r,state:a}=this,l=(()=>{var m,A;const h=(m=a.config)==null?void 0:m.speedConfig,u=(A=e.rotateSpeed)!=null?A:h==null?void 0:h.rotateSpeed;if((h==null?void 0:h.rotateSpeedUnit)===void 0)return u;if(u!==void 0)return h.rotateSpeedUnit==="rad/ms"?u:u/1e3})(),c=(()=>{if(i.duration)return i.duration;if(l){const h=this.five.getCurrentState();return HP(h,e)/l}return 800})();r.currentPlayKeyframe&&(r.currentPlayKeyframe.originDuration=c);const d=this.getSpeededDuration(c);return new Promise(h=>{_P(()=>o.updateCamera(e,d)),setTimeout(()=>h(),d)})})}changePano(e,i){return W(this,null,function*(){const{five:s,privateState:o,state:r}=this;if(typeof e.panoIndex!="number"||e.panoIndex===s.panoIndex)return;const a=s.getCurrentState().mode!=="Panorama";a&&(this.privateState.modeChanging=!0);const l=(()=>{var u,m;const d=(u=r.config)==null?void 0:u.speedConfig,h=(m=e.moveSpeed)!=null?m:d==null?void 0:d.moveSpeed;if((d==null?void 0:d.moveSpeedUnit)===void 0)return h;if(h!==void 0)return d.moveSpeedUnit==="m/ms"?h:h/1e3})(),c=(()=>{if(i!=null&&i.duration)return i.duration;if(l&&typeof s.panoIndex=="number"&&typeof e.panoIndex=="number"){const d=s.work.observers[s.panoIndex].position,h=s.work.observers[e.panoIndex].position;return d.distanceTo(h)/l}return 800})();o.currentPlayKeyframe&&(o.currentPlayKeyframe.originDuration=c),yield new Promise(d=>{var h,u,m;s.moveToPano(e.panoIndex,{latitude:e.latitude,longitude:e.longitude,fov:e.fov,duration:this.getSpeededDuration(c),effect:(m=(u=i==null?void 0:i.moveEffect)!=null?u:(h=this.state.config)==null?void 0:h.moveEffect)!=null?m:e.moveEffect,moveCancelCallback:()=>d(),moveEndCallback:()=>d()}),a&&s.once("panoArrived",()=>d())}),a&&(this.privateState.modeChanging=!1)})}changeSpeed(e,i=!0){const{state:s,privateState:o,hooks:r}=this,{currentPlayKeyframe:a}=o;if(r.emit("speedChange",e,{userAction:i}),s.playing&&a)try{const l=a.originDuration!==void 0?a.originDuration*(1-this.getProgress()):void 0,c=this.playKeyframe(a.keyframe,{duration:l});o.currentPlayQueue.push(c)}catch(l){}}getSpeededDuration(e){return e/this.state.speed}getProgress(){return this.five.controller.cameraMotion.progress}changeMode(e,i){return W(this,null,function*(){e.mode&&e.mode!==this.five.currentMode&&(this.privateState.modeChanging=!0,yield this.five.changeMode(e.mode,e,i),this.privateState.modeChanging=!1)})}forceInteruptUpdateCamera(){this.five.updateCamera({},0)}getPauseData(){var e,i;if((e=this.data)!=null&&e.keyframesId)return Rr.get((i=this.data)==null?void 0:i.keyframesId)}setPauseData(){var e,i,s,o;if((e=this.data)!=null&&e.keyframesId)return Rr.set((i=this.data)==null?void 0:i.keyframesId,{keyframeId:(s=this.privateState.currentPlayKeyframe)==null?void 0:s.keyframe.id,fiveState:this.five.getCurrentState(),duration:(o=this.privateState.currentPlayKeyframe)==null?void 0:o.originDuration,playedProgress:this.getProgress()})}clearPauseData(){var e,i;if((e=this.data)!=null&&e.keyframesId)return Rr.delete((i=this.data)==null?void 0:i.keyframesId)}clear(){this.clearPauseData(),this.privateState.currentPlayKeyframe=null}handleDispose(){var e,i;this.setState({playing:!1}),this.clearPauseData(),this.clear(),(e=this.GuideLine)==null||e.dispose(),this.GuideLine=void 0,(i=this.privateState.disposers)==null||i.forEach(s=>s==null?void 0:s())}actionIfStateIsEnabled(e,i){if(this.state.enabled)return e();i!=null&&i.warnLog&&XP()}waitFiveLoaded(){return W(this,null,function*(){return new Promise(e=>{if(this.five.work){e();return}this.five.once("loaded",()=>{e()})})})}setFiveLinearUpdateCamera(){this.privateState.fiveOriginGetProgress&&(this.five.controller.cameraMotion.getProgress=e=>{const i=this.five.controller.cameraMotion,s=e-i.startTime;return s<0?0:s>=i.duration?1:1-YP(1,i.startVelocity,i.duration,s)})}setFiveOriginUpdateCamera(){this.privateState.fiveOriginGetProgress&&(this.five.controller.cameraMotion.getProgress=this.privateState.fiveOriginGetProgress)}}f(ds,"PluginVersion",$u);const JP=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),qP=n=>new ds(n);class tf{constructor(t){f(this,"id");f(this,"renderID");f(this,"isGuideLine",!0);f(this,"panoramaItem");f(this,"modelItem");f(this,"hooks",new je.Subscribe);f(this,"_visible",!0);f(this,"plugin");f(this,"five");f(this,"logError",t=>wu("GuideLineItem: ",t));this.id=t.id,this.five=t.five,this.plugin=t.plugin,this.panoramaItem=new ca(this.five,{mode:"panorama",plugin:this.plugin,parent:this}),this.modelItem=new ca(this.five,{mode:"model",plugin:this.plugin,parent:this})}get visible(){return this._visible}setData(t){this.setDataByMode("panorama",t),this.setDataByMode("model",t)}setHeightOffset(t){this.modelItem.mesh.position.y=t,this.panoramaItem.mesh.position.y=t}setDataByMode(t,e){var l;const i=t==="panorama"?this.panoramaItem:this.modelItem,s=t==="panorama"?e.panorama_style:e.model_style,o=e.path,r=s,a=s;if(e.pano_group){const c=t==="panorama";i.setGeometryByPanoGroup(e.pano_group,G({skipPanoGroup:c},r))}else e.path&&i.setGeometryByPath(o,r);i.name=e.name,i.setMartial(a),i.setVisibleFloorIndexes((l=e.visible_floor_indexes)!=null?l:null),i.setStartTag(s==null?void 0:s.start_tag),i.setEndTag(s==null?void 0:s.end_tag)}show(){this._visible=!0,this.hooks.emit("show",{userAction:!0})}hide(){this._visible=!1,this.hooks.emit("hide",{userAction:!0})}dispose(){this.panoramaItem.dispose(),this.modelItem.dispose()}walk(t){return W(this,null,function*(){if(!this.panoramaItem.panoGroup)return;const e=G({panoIndexList:this.panoramaItem.panoGroup},t);this.hooks.emit("walkStart",{userAction:!0});const[i]=yield gn(KP(this.five,e));if(this.hooks.emit("walkEnded",{userAction:!0}),i)return this.logError(i.message)})}}function KP(n,t){return W(this,null,function*(){if(t.panoIndexList.length===0)return;const e=n.getCurrentState();e.mode!=="Panorama"&&(yield ja(n,["Panorama",{longitude:e.longitude,latitude:0,panoIndex:t.panoIndexList[0]}]));const i=new ds(n,{useGuideLine:!1});yield i.load(t),yield new Promise((s,o)=>{const r=n.getCurrentState();let a=t.panoIndexList.slice();r.panoIndex===a[0]&&c(r.panoIndex),i.playFromStart();function l(m){if(m!=="Panorama")return h(new Error("mode not match"))}function c(m){const A=a[0];if(a=a.slice(1),m!==A)return h(new Error("panoIndex not match, wanted: "+A+", got: "+m));if(a.length===0)return u()}function d(){n.off("modeChange",l),n.off("panoArrived",c)}function h(m){d(),o(m)}function u(){d(),s()}n.on("modeChange",l),n.on("panoArrived",c)})})}const $P=Object.freeze(Object.defineProperty({__proto__:null,GuideLineItem:tf},Symbol.toStringTag,{value:"Module"})),nf="v1.1.0",da="GuideLinePlugin",ah=`${da}@${nf}`;let e2=class extends yi{constructor(e,i){super(e,i);f(this,"version",nf);f(this,"name",da);f(this,"cruisePlugin");f(this,"itemMap",new Map);f(this,"state",{visible:!1,enabled:!0});f(this,"data");f(this,"heightOffset",0);f(this,"_config");f(this,"_disposed",!1);f(this,"disposedErrorLog",()=>{console.error(`${ah} is disposed`)});this._config=i!=null?i:{},this.cruisePlugin=new ds(e,{useGuideLine:!1}),Object.assign(window,{[`__${da}_DEBUG__`]:this})}get config(){return this._config}get disposed(){return this._disposed}load(e,i,s=!0){return W(this,null,function*(){var m,A,p,g,v,y,I;if(this.disposed)return;const o=this.data?JSON.parse(JSON.stringify(this.data)):void 0,r=yield this.formatData(e);this.hooks.emit("dataChange",r,o),this.data=r;const a=r.config,c={panorama_style:{visible:!!(!r.lines&&r.routes),unit_length:(m=a==null?void 0:a.unitHeight)!=null?m:.4,width:(A=a==null?void 0:a.unitWidth)!=null?A:.6,texture:{url:(p=a==null?void 0:a.arrowTextureUrl)!=null?p:this.staticPrefix+"/release/web/arrow6.b6ce0c62.png"}}},d=(v=(g=r.routes)==null?void 0:g.map(M=>{var D;return Fe({},c,{id:(D=M.id)!=null?D:Date.now(),pano_group:M.panoIndexList})}))!=null?v:[],h=(I=(y=r.lines)==null?void 0:y.map(M=>Fe({},c,M)))!=null?I:[],u=[...d,...h];yield this.waitFiveLoaded(),this.clear(),u.forEach(M=>{this.addGuideLineItem(M)}),this.updateTagsEnable(),this.handleVisible(this.state.visible),this.handleEnable(this.state.enabled),i&&this.setState(i,{userAction:s}),this.hooks.emit("dataLoaded",r),console.debug(`${ah} loaded`,r)})}formatData(e){return W(this,null,function*(){return this.getDataWithoutVersion(e)})}show(e){return W(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return W(this,null,function*(){this.setState({visible:!1},e)})}enable(e){this.setState({enabled:!0},e)}disable(e){this.setState({enabled:!1},e)}dispose(){this.disposed||(this.clear(),this.hooks.emit("dispose"))}setState(e,i){var o;if(this.disposed)return this.disposedErrorLog();const s=G({},this.state);this.state=G(G({},this.state),e),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible,i==null?void 0:i.userAction),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled,i==null?void 0:i.userAction),It(s,this.state,{deep:!0})||(this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:(o=i==null?void 0:i.userAction)!=null?o:!0}),this.five.needsRender=!0)}addGuideLineItem(e){const i=e.render_id||e.id,s=this.itemMap.get(i);s&&this.removeGuideLineItem(s);const o=new tf({five:this.five,id:i,plugin:this});return this.itemMap.set(i,o),e&&o.setData(e),this.heightOffset+=1e-4,o.setHeightOffset(this.heightOffset),o}getGuideLineItemByID(e){return this.itemMap.get(e)}removeGuideLineItem(e){this.itemMap.delete(e.id),e.panoramaItem.dispose(),e.modelItem.dispose()}updateTagsEnable(){const e=[];function i(r){return Array.isArray(r)&&r.every(a=>typeof a=="number")}function s(r,a){return new E.Vector3().fromArray(r).distanceTo(new E.Vector3().fromArray(a))<.01}function o(r){var l;const a=(l=r.tag)==null?void 0:l.position;return i(a)?e.every(c=>{var d;return i((d=c.tag)==null?void 0:d.position)?!s(a,c.tag.position):!0}):!1}this.itemMap.forEach(r=>{const a=r.modelItem.startTagContainer,l=r.modelItem.endTagContainer,c=o(a);c&&e.push(a),a.plugin.setState({enabled:c},{});const d=o(l);d&&e.push(l),l.plugin.setState({enabled:d},{})})}clear(){this.itemMap.forEach(e=>{this.removeGuideLineItem(e)})}handleEnable(e,i=!0){this.hooks.emit(e?"enable":"disable",{userAction:i})}handleVisible(e,i=!0){this.state.enabled&&this.hooks.emit(e?"show":"hide",{userAction:i})}waitFiveLoaded(){return W(this,null,function*(){return new Promise(e=>{if(this.five.work){e();return}this.five.once("loaded",()=>{e()})})})}getDataWithoutVersion(e){return typeof e=="object"&&e!==null&&e.version&&e.data?e.data:e}};const sf=(n,t)=>new e2(n,t);function of(n,t,e){if(e){const s=new E.Vector3().subVectors(n.position,e).applyQuaternion(n.quaternion.clone().inverse()).applyQuaternion(t).add(e);n.position.copy(s)}n.quaternion.copy(t)}class Lo extends lu{constructor(e,i){var s;super();f(this,"originObject3D");f(this,"onRender");this.originObject3D=e,this.onRender=(s=i==null?void 0:i.onRender)!=null?s:()=>{}}get helperObject(){return this}render(){this.onRender()}enable(){this.parent.children.includes(this)||this.parent.add(this)}disable(){this.removeFromParent()}show(){this.visible=!0,this.render()}hide(){this.visible=!1,this.render()}raycasterIntersectObject(e,i=[]){return e.intersectObject(this,!0,i)}initialPosition(){this.position.add(this.originObject3D.position)}initQuaternion(){this.quaternion.copy(this.originObject3D.quaternion)}applyHelperScaleMatrix4(e,i){this.scale.applyMatrix4(e)}setHelperQuaternion(e,i){of(this,e,i)}applyHelperQuaternion(e,i){if(i){const s=new R.Vector3().subVectors(this.position,i).applyQuaternion(e).add(i);this.position.copy(s)}this.applyQuaternion(e)}dispose(){this.removeFromParent()}}class t2 extends Lo{}class i2 extends Lo{}class n2 extends Lo{}class rf extends Lo{}class s2 extends rf{}class o2 extends E.Group{constructor(e){super();f(this,"direction");this.direction=e||"x"}}class lh extends E.Mesh{constructor(e,i,s){super(e,i);f(this,"direction");this.direction=s||"x"}}function r2(n,t){const{offsetWidth:e,offsetHeight:i}=t,{top:s,left:o}=t.getBoundingClientRect();return Object.assign(new E.Vector2,{x:(n.x-o)/e*2-1,y:-(n.y-s)/i*2+1})}function Ja(n,t,e){if(!t||!e||!n)return;const i=r2(t,e);if(Math.abs(i.x)===1||Math.abs(i.y)===1)return;const s=new E.Raycaster;return s.setFromCamera(i,n),s}function a2(n,t){return!(Math.abs(n.x-t.x)>1e-5||Math.abs(n.y-t.y)>1e-5||Math.abs(n.z-t.z)>1e-5)}class Qr extends o2{constructor(e){var d;super(e.direction);f(this,"line");f(this,"arrow");f(this,"lineHeight",.4);f(this,"arrowHeight",.1);this.name="ArrowGroup";const i=new E.Color((d=e.color)!=null?d:16214315),s=new E.MeshBasicMaterial({color:i,depthTest:!1,opacity:1,transparent:!0,side:E.DoubleSide}),o=new E.ConeGeometry(.04,.1,32),r=new lh(o,s.clone(),e.direction);r.name=`arrow-${e.direction}`,this.arrow=r;const a=.004,l=new E.CylinderGeometry(a,a,.4,32),c=new lh(l,s.clone(),e.direction);c.name=`line-${e.direction}`,this.line=c,this.formatArrow(),this.formatLine(),this.add(this.arrow,this.line)}formatArrow(){this.arrow.geometry.translate(0,this.lineHeight+this.arrowHeight/2,0),this.direction==="x"?(this.arrow.geometry.rotateX(Math.PI/2),this.arrow.geometry.rotateY(Math.PI/2)):this.direction==="z"&&this.arrow.geometry.rotateX(Math.PI/2)}formatLine(){this.line.geometry.translate(0,this.lineHeight/2,0),this.direction==="x"?(this.line.geometry.rotateX(Math.PI/2),this.line.geometry.rotateY(Math.PI/2)):this.direction==="z"&&this.line.geometry.rotateX(Math.PI/2)}}const Gr={X:15618642,Y:4765519,Z:4227839};class hn{static get X(){return new E.Color(Gr.X).convertSRGBToLinear().clone()}static get Y(){return new E.Color(Gr.Y).convertSRGBToLinear().clone()}static get Z(){return new E.Color(Gr.Z).convertSRGBToLinear().clone()}}class l2 extends t2{constructor(e){super(e);f(this,"xArrow",new Qr({direction:"x",color:hn.X}));f(this,"yArrow",new Qr({direction:"y",color:hn.Y}));f(this,"zArrow",new Qr({direction:"z",color:hn.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 ji(n,t){return c2(document.createElement(t!=null?t:"div"),n)}function c2(n,t){if(!t)return n;for(const e in t)e&&t[e]&&(n.style[e]=t[e]);return n}function d2(n){const t=ji(G({position:"absolute",display:"block",borderRadius:"4px",paddingTop:"1px",paddingBottom:"1px",paddingLeft:"4px",paddingRight:"4px",pointerEvents:"none",userSelect:"none",zIndex:"99999",backgroundColor:"rgba(0,0,0,0.7)",fontSize:"12px",color:"#fff",letterSpacing:"0",lineHeight:"18px"},n)),e=()=>{t.style.display!=="block"&&t.style.top&&t.style.left&&(t.style.display="block")};return{element:t,show:e,hide:()=>{t.style.display="none",t.style.top="",t.style.left=""},setLeftTop:(o,r)=>{t.style.left=o,t.style.top=r,e()}}}class h2 extends n2{constructor(e,i){super(e);f(this,"xCircle");f(this,"yCircle");f(this,"zCircle");f(this,"children",[]);f(this,"angleTips");f(this,"container");(i==null?void 0:i.yzCircleEnable)!==!1&&(this.xCircle=new Nr({direction:"x",color:hn.X})),(i==null?void 0:i.xzCircleEnable)!==!1&&(this.yCircle=new Nr({direction:"y",color:hn.Y})),(i==null?void 0:i.xyCircleEnable)!==!1&&(this.zCircle=new Nr({direction:"z",color:hn.Z})),i!=null&&i.container&&(i==null?void 0:i.angleTipsEnable)!==!1&&(this.container=i==null?void 0:i.container,this.angleTips=d2({display:"none"}),this.container.appendChild(this.angleTips.element)),this.add(...[this.xCircle,this.yCircle,this.zCircle].filter(Boolean)),this.show()}hide(){this.children.forEach(e=>e.hide())}show(){var e;this.children.forEach(i=>i.showCircle()),(e=this.angleTips)==null||e.hide()}showDraggingHelper(e){var i;this.hide(),this.children.filter(s=>e.includes(s.direction)).forEach(s=>s.showRing()),(i=this.angleTips)==null||i.show()}dispose(){var e,i;this.removeFromParent(),(i=(e=this.angleTips)==null?void 0:e.element)==null||i.remove()}}class Nr extends E.Group{constructor(e){super();f(this,"direction");f(this,"circle");f(this,"ring");f(this,"angleSector");this.direction=e.direction,this.circle=new u2(e),this.ring=new f2(e),this.angleSector=new m2(e),this.add(this.circle,this.ring,this.angleSector),this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}showCircle(){this.add(this.circle),this.remove(this.ring,this.angleSector)}showRing(){this.add(this.ring,this.angleSector),this.remove(this.circle)}hide(){this.remove(this.ring,this.angleSector,this.circle)}}class u2 extends E.Mesh{constructor(e){var i;super();f(this,"direction");f(this,"gapAngle",.02);f(this,"geometry",new E.RingGeometry(.25,.3,20,8,this.gapAngle,Math.PI/2-this.gapAngle*2));this.material=new E.MeshBasicMaterial({opacity:.6,color:(i=e.color)!=null?i:16777215,transparent:!0,side:E.DoubleSide,depthTest:!1}),this.direction=e.direction,this.geometry.name=`RotateHelperCircleGeometry-${this.direction}`}}class f2 extends E.Group{constructor(e){super();f(this,"direction");this.direction=e.direction;const i=.015,s=new Array(8).fill(null).map((o,r)=>{const a=new E.RingGeometry(.25,.3,20,8,Math.PI/4*r+i,Math.PI/4-i*2),l=new E.MeshBasicMaterial({opacity:1,color:16777215,depthTest:!1,transparent:!0,side:E.DoubleSide}),c=new E.Mesh(a,l);return c.name=`AxesDashedRing-${this.direction}-${r}`,c});this.add(...s)}}class m2 extends E.Mesh{constructor(e){var s;super();f(this,"direction");f(this,"baseAxes");f(this,"angleDirection");switch(e.direction){case"x":this.baseAxes=new E.Vector3(0,0,1);break;case"y":this.baseAxes=new E.Vector3(1,0,0);break;case"z":this.baseAxes=new E.Vector3(1,0,0);break}const i=.3+5e-4;this.geometry=new E.CircleGeometry(i,48,0,1e-4),this.material=new E.MeshBasicMaterial({opacity:.4,color:(s=e.color)!=null?s:16777215,depthTest:!1,transparent:!0,side:E.DoubleSide}),this.direction=e.direction,this.angleDirection=this.direction==="z"?1:-1}}function g2(){const n=ji({width:"100%",height:"100%",left:"0",top:"0",position:"absolute",pointerEvents:"none"}),t=ji({boxSizing:"border-box",width:"100%",height:"100%",left:"0",top:"0",position:"relative",display:"flex",alignItems:"center",justifyContent:"center"}),e=ji({boxSizing:"border-box",width:"100%",height:"100%",left:"0",top:"0",position:"absolute",border:"1px solid rgba(255,255,255,0.4)"});n.appendChild(t),t.appendChild(e);const i="-4px",s={direction:"nesw",element:ci({cursor:"nesw-resize",left:i,bottom:i})},o={direction:"ns",element:ci({cursor:"ns-resize",bottom:i})},r={direction:"nwse",element:ci({cursor:"nwse-resize",right:i,bottom:i})},a={direction:"ew",element:ci({cursor:"ew-resize",right:i})},l={direction:"nesw",element:ci({cursor:"nesw-resize",right:i,top:i})},c={direction:"ns",element:ci({cursor:"ns-resize",top:i})},d={direction:"nwse",element:ci({cursor:"nwse-resize",left:i,top:i})},h={direction:"ew",element:ci({cursor:"ew-resize",left:i})};return new Array(o,a,c,h,s,r,l,d).forEach(m=>t.appendChild(m.element)),{container:n,squares:[s,o,r,a,l,c,d,h]}}function ci(n){const t=ji(G({background:"#FFFFFF",width:"9px",height:"9px",position:"absolute",pointerEvents:"none"},n)),e=ji({width:"15px",height:"15px",position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",pointerEvents:"none"}),i=ji({width:"15px",height:"15px",cursor:n==null?void 0:n.cursor,pointerEvents:"auto",background:"transparent"});return i.draggable=!0,e.appendChild(i),t.appendChild(e),t}class p2 extends s2{constructor(e,i,s,o){super(e);f(this,"points",[]);f(this,"cornerPositions",[]);f(this,"css3DInstance");f(this,"plane");f(this,"css3DRenderer",new un);f(this,"camera");f(this,"scene");f(this,"container");f(this,"enabled",!1);this.camera=s,this.scene=o,this.container=i,this.initRectangleScaleHelper()}get helperObject(){var e;if(!((e=this.css3DInstance)!=null&&e.css3DObject))throw new Error("css3DInstance is not initialized");return this.css3DInstance.css3DObject}applyMatrix4(e){var i;super.applyMatrix4(e),this.helperObject.applyMatrix4(e),(i=this.plane)==null||i.applyMatrix4(e),this.cornerPositions.forEach(s=>s.applyMatrix4(e))}showDraggingHelper(){}applyHelperScaleMatrix4(e,i){var s;(s=this.plane)==null||s.scale.applyMatrix4(e),this.helperObject.applyScaleMatrix4(e)}updatePoints(){const e=this.calculatePointPosition(this.cornerPositions);this.points.forEach((i,s)=>{i.position.copy(e[s])})}applyHelperQuaternion(e,i){var o;const s=(o=this.css3DInstance)==null?void 0:o.css3DObject;if(s){const r=new E.Vector3().subVectors(s.position,i).applyQuaternion(e).add(i);s.position.copy(r),s.applyQuaternion(e)}if(this.plane){const r=new E.Vector3().subVectors(this.plane.position,i).applyQuaternion(e).add(i);this.plane.position.copy(r),this.plane.applyQuaternion(e)}this.cornerPositions.forEach(r=>{const a=new E.Vector3().subVectors(r,i).applyQuaternion(e).add(i);r.copy(a)})}enable(){var e;this.enabled||(this.enabled=!0,(e=this.css3DInstance)==null||e.enable(),this.plane&&this.scene.add(this.plane))}disable(){var e;this.enabled&&(this.enabled=!1,(e=this.css3DInstance)==null||e.disable(),this.plane&&this.scene.remove(this.plane))}show(){var e;(e=this.css3DInstance)==null||e.show(),this.plane&&(this.plane.visible=!0)}hide(){var e;(e=this.css3DInstance)==null||e.hide(),this.plane&&(this.plane.visible=!1)}dispose(){this.disable(),this.css3DRenderer.dispose()}initRectangleScaleHelper(){var a,l;const e=this.getCornerPositions();if(!e)return;this.cornerPositions=e;const i=this.css3DRenderer.create3DElement(this.camera,e,{ratio:.003});if(!i)return;this.css3DInstance=i,i.appendToElement(this.container);const s=i.css3DObject.container,{container:o,squares:r}=g2();this.points=r.map((c,d)=>({direction:c.direction,point:c.element,position:this.calculatePointPosition(e)[d]})),s.insertBefore(o,(a=s.children[0])!=null?a:null),this.helperObject.position.copy(this.originObject3D.position),(l=this.plane)==null||l.position.copy(this.originObject3D.position)}getCornerPositions(){const{originObject3D:e}=this;if(e.isCSS3DObjectPlus)return e.cornerPoints;console.error("当前物体暂时不支持 ScaleHelper")}calculatePointPosition(e){return[e[0].clone(),e[0].clone().add(e[1]).divideScalar(2),e[1].clone(),e[1].clone().add(e[2]).divideScalar(2),e[2].clone(),e[2].clone().add(e[3]).divideScalar(2),e[3].clone(),e[3].clone().add(e[0]).divideScalar(2)]}}function af(n){const t=new E.Box3,e=new E.Vector3;if(n.traverse(i=>{var o;if(i.name==="shadow")return;const s=i.geometry;if(s!==void 0)if((o=s==null?void 0:s.attributes)!=null&&o.position){const r=s.attributes.position;for(let a=0,l=r.count;a<l;a++)e.fromBufferAttribute(r,a).applyMatrix4(i.matrix),t.expandByPoint(e)}else s.vertices.forEach(r=>{const a=r.clone().applyMatrix4(i.matrix);t.expandByPoint(a)})}),!t.isEmpty())return t}class A2 extends i2{constructor(e){super(e);f(this,"box");f(this,"outline");f(this,"originObject");f(this,"positionAttribute");this.originObject=e,this.positionAttribute=new E.BufferAttribute(new Float32Array(8*3),3),this.box=this.createBox(),this.outline=this.createOutline(),this.add(this.box,this.outline),this.update()}raycasterIntersectObject(e,i){return e.intersectObject(this,!1,i)}raycast(e,i){this.box.raycast(e,i)}update(){const e=af(this.originObject);if(!e)return;const{min:i,max:s}=e;this.positionAttribute.setXYZ(0,s.x,s.y,s.z),this.positionAttribute.setXYZ(1,i.x,s.y,s.z),this.positionAttribute.setXYZ(2,i.x,i.y,s.z),this.positionAttribute.setXYZ(3,s.x,i.y,s.z),this.positionAttribute.setXYZ(4,s.x,s.y,i.z),this.positionAttribute.setXYZ(5,i.x,s.y,i.z),this.positionAttribute.setXYZ(6,i.x,i.y,i.z),this.positionAttribute.setXYZ(7,s.x,i.y,i.z),this.positionAttribute.needsUpdate=!0}createOutline(){const e=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),i=new E.BufferGeometry;i.setIndex(new E.BufferAttribute(e,1)),i.setAttribute("position",this.positionAttribute);const s=new E.LineBasicMaterial({color:64767,linewidth:1,opacity:1,depthTest:!1,transparent:!0,toneMapped:!1}),o=new E.LineSegments(i,s);return o.matrixAutoUpdate=!1,o}createBox(){const e=new Uint16Array([0,1,2,0,2,3,0,3,7,0,7,4,0,4,5,0,5,1,6,1,5,6,2,1,6,5,4,6,4,7,6,3,2,6,7,3]),i=new E.BufferGeometry;i.setIndex(new E.BufferAttribute(e,1)),i.setAttribute("position",this.positionAttribute);const s=new E.MeshBasicMaterial({color:64767,opacity:.1,depthTest:!1,transparent:!0});return new E.Mesh(i,s)}}class hs{constructor(t,e){f(this,"originObject3D");f(this,"hooks");f(this,"disposers",[]);f(this,"helperObject3D");f(this,"camera");f(this,"model");f(this,"scene");f(this,"container");f(this,"domEvents");f(this,"isDragging",!1);f(this,"enabled",!1);f(this,"name","BaseController");f(this,"boundingBox");f(this,"offset");f(this,"onRender");f(this,"onWantsTapGesture",t=>{if(this.getIntersectObject(t))return!1});var c,d;this.hooks=(c=t.sharedHooks)!=null?c:new Cn,this.camera=t.camera,this.model=t.model,this.originObject3D=t.originObject3D,this.helperObject3D=t.helperObject3D,this.container=t.container,this.scene=t.scene,this.domEvents=new Le(t.camera,t.container),this.onRender=(d=t.onRender)!=null?d:()=>{},this.offset=e==null?void 0:e.offset,this.initialHelperPosition(),this.initialHelperQuaternion(),this.enable();const i=(...h)=>this.onSetOriginObjectScale(...h),s=(...h)=>this.onSetOriginObjectRotate(...h),o=(...h)=>this.onSetOriginObjectPosition(...h),r=(...h)=>this.onApplyOriginObjectScale(...h),a=(...h)=>this.onApplyOriginObjectRotate(...h),l=(...h)=>this.onApplyOriginObjectPosition(...h);this.hooks.on("setObjectScale",i),this.hooks.on("setObjectRotate",s),this.hooks.on("setObjectPosition",o),this.hooks.on("applyObjectPosition",l),this.hooks.on("applyObjectRotate",a),this.hooks.on("applyObjectScale",r),this.disposers.push(()=>{this.hooks.off("setObjectScale",i),this.hooks.off("setObjectRotate",s),this.hooks.off("setObjectPosition",o),this.hooks.off("applyObjectPosition",l),this.hooks.off("applyObjectRotate",a),this.hooks.off("applyObjectScale",r)})}initialHelperPosition(){this.helperObject3D.position.add(this.calculateOffset(this.offset)),this.helperObject3D.initialPosition()}initialHelperQuaternion(){this.helperObject3D.initQuaternion()}enable(){this.enabled||(this.enabled=!0,this.scene.add(this.helperObject3D),this.helperObject3D.enable(),this.render())}disable(){this.enabled&&(this.enabled=!1,this.helperObject3D.disable(),this.render())}show(){this.helperObject3D.show(),this.render()}hide(){this.helperObject3D.hide(),this.render()}dispose(){var t;(t=this.disposers)==null||t.forEach(e=>e==null?void 0:e()),this.helperObject3D.dispose(),this.render()}applyHelperMatrix4(t){this.helperObject3D.applyMatrix4(t)}applyHelperQuaternion(t,e){this.helperObject3D.applyHelperQuaternion(t,e)}applyHelperScaleMatrix4(t,e){this.helperObject3D.applyHelperScaleMatrix4(t,e)}onWantsGesture(t,e,i){if(this.isDragging)return!1}onIntersectionOnModelUpdate(t){}onApplyOriginObjectScale(t){this.applyHelperScaleMatrix4(t.matrix,t.origin)}onApplyOriginObjectRotate(t){this.applyHelperQuaternion(t.quaternion,t.origin)}onApplyOriginObjectPosition(t){this.applyHelperMatrix4(t.matrix)}onSetOriginObjectScale(t){this.helperObject3D.scale.copy(t),this.updateOffsetByScale(t)}onSetOriginObjectRotate(t,e){this.helperObject3D.setHelperQuaternion(t,e)}onSetOriginObjectPosition(t){this.helperObject3D.position.copy(t.clone().add(this.calculateOffset(this.offset)))}render(){this.onRender()}updateOffsetByScale(t){if(this.boundingBox&&this.offset){const e=this.originObject3D.position,i=new E.Vector3().subVectors(this.boundingBox.max,e).multiply(t).add(e),s=new E.Vector3().subVectors(this.boundingBox.min,e).multiply(t).add(e),o=this.calculateOffset(this.offset,{min:s,max:i});this.helperObject3D.position.copy(o),this.helperObject3D.initialPosition()}}hoverListener(t,e=16777215,i=1){const s=(Array.isArray(t)?t:[t]).filter(ni),o=[];for(const r of s)if(r instanceof E.Mesh||r instanceof E.Group){const a=r instanceof E.Group?r.children.filter(u=>u instanceof E.Mesh):[r];a.forEach(u=>{u.__originalColor__=u.material.color.clone(),u.__originalOpacity__=u.material.opacity});const l=()=>{a.forEach(u=>{u.material.color.set(e),u.material.opacity=i}),this.render()},c=()=>{a.forEach(u=>{u.material.color.copy(u.__originalColor__),u.material.opacity=u.__originalOpacity__}),this.render()},d=()=>{this.isDragging||l()},h=()=>{this.isDragging||c()};for(const u of a)this.domEvents.addEventListener(u,"mouseover",d),this.domEvents.addEventListener(u,"mouseout",h),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",c),this.hooks.on("rotateEnd",c),o.push(()=>{this.domEvents.removeEventListener(u,"mouseover",d),this.domEvents.removeEventListener(u,"mouseout",h),this.hooks.off("moveStart",l),this.hooks.off("moveEnd",c),this.hooks.off("rotateEnd",c)})}return()=>o.forEach(r=>r==null?void 0:r())}getIntersectObject(t){const e=this.camera.position,i=this.helperObject3D;if(!i)return;const s=this.helperObject3D.raycasterIntersectObject(t)[0];if(!s)return;const o=s;if(o.object=i,this.model.intersectRaycaster){const r=this.model.intersectRaycaster(t)[0];if(r&&r.point.distanceTo(e)<o.point.distanceTo(e))return}return o.object}calculateOffset(t,e){const i=this.originObject3D,s=new E.Vector3(0,0,0);if(!t)return s;const o=()=>e||(this.boundingBox?this.boundingBox:(this.boundingBox=af(i),this.boundingBox));if(typeof t.x=="number")s.setX(t.x);else if(typeof t.x=="object"){const r=o();s.setX((r.max.x-r.min.x)*t.x.percents)}if(typeof t.y=="number")s.setY(t.y);else if(typeof t.y=="object"){const r=o();s.setY((r.max.y-r.min.y)*t.y.percents)}if(typeof t.z=="number")s.setZ(t.z);else if(typeof t.z=="object"){const r=o();s.setZ((r.max.z-r.min.z)*t.z.percents)}return s}}class v2 extends hs{constructor(...e){super(...e);f(this,"name","MoveController");f(this,"startInfo");f(this,"_moveByMouseEnable",!1);f(this,"mouseInfo");f(this,"mousedownEventListenerDisposer");const i=this.helperObject3D;this.hoverListener([i.xArrow,i.yArrow,i.zArrow]);const s=this.dragStart.bind(this),o=this.dragging.bind(this),r=this.dragEnd.bind(this),a=this.show.bind(this),l=this.hide.bind(this);this.domEvents.addEventListener(this.helperObject3D,"mousedown",s),document.addEventListener("mousemove",o),document.addEventListener("mouseup",r),this.hooks.on("rotateStart",l),this.hooks.on("rotateEnd",a),this.hooks.on("moveByMouseEnable",l),this.hooks.on("moveByMouseDisable",a),this.disposers.push(()=>{this.domEvents.removeEventListener(this.helperObject3D,"mousedown",s),document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",r),this.hooks.off("rotateStart",l),this.hooks.off("rotateEnd",a),this.hooks.off("moveByMouseEnable",l),this.hooks.off("moveByMouseDisable",a)}),this.moveByMouseEnable&&this.moveByMouse()}get moveByMouseEnable(){return this._moveByMouseEnable}dispose(){var e;super.dispose(),(e=this.disposers)==null||e.forEach(i=>i==null?void 0:i())}moveByMouse(){this._moveByMouseEnable=!0;const e=this.handleMouseDown.bind(this),i=this.handleMouseUp.bind(this);this.hooks.emit("moveByMouseEnable"),setTimeout(()=>{this.container.addEventListener("mousedown",e),this.container.addEventListener("mouseup",i)}),this.mousedownEventListenerDisposer=()=>{this.container.removeEventListener("mousedown",e),this.container.removeEventListener("mouseup",i)}}disableMoveByMouse(){var e;this._moveByMouseEnable=!1,this.hooks.emit("moveByMouseDisable"),(e=this.mousedownEventListenerDisposer)==null||e.call(this)}onIntersectionOnModelUpdate(e){!this.moveByMouseEnable||this.hooks.emit("wantToMove",e.point)||(this.originObject3D.position.copy(e.point),this.hooks.emit("setObjectPosition",e.point),this.hooks.emit("move",e.point))}onApplyOriginObjectScale(e){}handleMouseDown(e){const{x:i,y:s}=e;this.mouseInfo={x:i,y:s,mouseDownTimestamp:Date.now()}}handleMouseUp(e){if(!this.mouseInfo)return;const{x:i,y:s}=e;this.mouseInfo.x===i&&this.mouseInfo.y===s&&Date.now()-this.mouseInfo.mouseDownTimestamp<500&&(this.disableMoveByMouse(),this.mouseInfo=void 0)}dragStart(e){if(this._moveByMouseEnable||this.isDragging)return;const i=e==null?void 0:e.intersect;if(!i)return this.dragEnd();const s=(i==null?void 0:i.object).direction;if(!s)return this.dragEnd();const o=new E.Vector3(1,0,0).applyQuaternion(this.helperObject3D.quaternion),r=new E.Vector3(0,1,0).applyQuaternion(this.helperObject3D.quaternion),a=new E.Vector3(0,0,1).applyQuaternion(this.helperObject3D.quaternion),l=(()=>{switch(s){case"x":return o;case"y":return r;case"z":return a}})(),c=(()=>{switch(s){case"x":case"y":return a;case"z":return o}})(),d=i.point.clone(),h=new E.Plane;h.setFromNormalAndCoplanarPoint(c,d),this.startInfo={startVectorProject:d.clone().projectOnVector(l),directionVector:l,plane:h},this.helperObject3D.showDraggingHelper([s]),this.hooks.emit("moveStart"),this.isDragging=!0}dragging(e){if(!this.isDragging||!this.startInfo)return;const i=Ja(this.camera,e,this.container);return i?(this.move(i),!1):this.dragEnd()}move(e){if(!this.startInfo)return this.dragEnd();const{plane:i,directionVector:s,startVectorProject:o}=this.startInfo,r=this.originObject3D,a=e.ray.intersectPlane(i,new E.Vector3);if(!a)return;const l=a.clone().projectOnVector(s),c=l.clone().sub(o),d=new E.Matrix4;d.setPosition(c);const h=r.position.clone().applyMatrix4(d);this.hooks.emit("wantToMove",h)||(r.applyMatrix4(d),o.copy(l),this.hooks.emit("applyObjectPosition",{matrix:d}),this.hooks.emit("move",h))}dragEnd(){this.isDragging&&(this.startInfo=void 0,this.isDragging=!1,this.helperObject3D.show(),this.hooks.emit("moveEnd"))}}class qn{constructor(t,e,i,s,o,r){f(this,"helperController");f(this,"five");f(this,"onFiveWantsTapGesture",t=>{if(!this.helperController)return;const e=this.helperController.onWantsTapGesture(t);return this.five.needsRender=!0,e});f(this,"onFiveWantsGesture",(...t)=>{if(!this.helperController)return;const e=this.helperController.onWantsGesture(...t);return this.five.needsRender=!0,e});f(this,"onFiveIntersectionOnModelUpdate",(...t)=>{this.helperController&&this.helperController.onIntersectionOnModelUpdate(...t)});const{camera:a,model:l,scene:c}=t,d=t.getElement();if(this.five=t,!a||!l||!d||!c)return;const h=()=>{t.needsRender=!0};this.helperController=new e({camera:a,model:l,originObject3D:i,helperObject3D:s,container:d,scene:c,onRender:h,sharedHooks:r},o),t.on("wantsTapGesture",this.onFiveWantsTapGesture),t.on("wantsGesture",this.onFiveWantsGesture),t.on("intersectionOnModelUpdate",this.onFiveIntersectionOnModelUpdate)}dispose(){var t;this.five.off("wantsTapGesture",this.onFiveWantsTapGesture),this.five.off("wantsGesture",this.onFiveWantsGesture),this.five.off("intersectionOnModelUpdate",this.onFiveIntersectionOnModelUpdate),(t=this.helperController)==null||t.dispose()}}const b2="v1.0.1",y2="Object3DHelper",qa=`${y2}@${b2}`,w2=()=>{console.error(`${qa} is disposed`)},C2=()=>{console.warn(`${qa} is disabled`)},I2=()=>{console.error(`${qa} is disabled`)};class P2{constructor(t){f(this,"controllers",{});f(this,"state",{visible:!0,enabled:!0,disposed:!1});f(this,"hooks",new Cn);f(this,"eventListener",{});t&&this.addControllers(t),this.setState(this.state)}show(t){return W(this,null,function*(){this.setState({visible:!0},t)})}hide(t){return W(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 w2();if(!this.state.enabled&&t.enabled!==!0&&t.disposed!==!0)return I2();const i=G({},this.state);this.state=G(G({},this.state),t),t.disposed!==void 0&&t.disposed!==i.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:i})}addControllers(t){this.controllers=G(G({},this.controllers),t),this.setState(this.state)}getCurrentState(){return this.state}handleEnable(t,e=!0){t?(this.everyControllerDo(i=>{i.enable()}),this.hooks.emit("enable",{userAction:e})):(this.everyControllerDo(i=>{i.disable()}),this.hooks.emit("disable",{userAction:e})),this.state.enabled=t}handleVisible(t,e=!0){t?(this.everyControllerDo(i=>{i.show()}),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:e}))):(this.everyControllerDo(i=>{i.hide()}),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:e}))),this.state.visible=t}everyControllerDo(t){Object.values(this.controllers).forEach(e=>{e&&t(e)})}handleDispose(){var t,e;Object.values(this.controllers).forEach(i=>{i==null||i.dispose()});for(const i in this.controllers){if(!i)continue;const s=i;(e=(t=this.eventListener)[s])==null||e.call(t)}}actionIfStateIsEnabled(t,e){if(this.state.enabled)return t();e!=null&&e.warnLog&&C2()}}function Hr(n){return n*Math.PI/180}class E2 extends hs{constructor(...e){var c,d,h;super(...e);f(this,"name","RotateController");f(this,"startInfo");f(this,"removeListener");const i=this.helperObject3D;this.hoverListener([(c=i.xCircle)==null?void 0:c.circle,(d=i.yCircle)==null?void 0:d.circle,(h=i.zCircle)==null?void 0:h.circle].filter(Boolean));const s=this.dragStart.bind(this),o=this.dragging.bind(this),r=this.dragEnd.bind(this),a=this.show.bind(this),l=this.hide.bind(this);this.domEvents.addEventListener(this.helperObject3D,"mousedown",s),document.addEventListener("mousemove",o),document.addEventListener("mouseup",r),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",a),this.hooks.on("moveByMouseEnable",l),this.hooks.on("moveByMouseDisable",a),this.removeListener=()=>{this.domEvents.removeEventListener(this.helperObject3D,"mousedown",s),document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",r),this.hooks.off("moveStart",l),this.hooks.off("moveEnd",a),this.hooks.off("moveByMouseEnable",l),this.hooks.off("moveByMouseDisable",a)}}get rotateCenter(){return this.helperObject3D.position.clone()}initialHelperQuaternion(){this.helperObject3D.applyHelperQuaternion(this.originObject3D.quaternion)}setRotateAngle(e){const{x:i=0,y:s=0,z:o=0}=e,r=new E.Euler(Hr(i),Hr(s),Hr(o)),a=new E.Quaternion().setFromEuler(r);if(this.hooks.emit("wantToRotate",a))return;const{originObject3D:c,rotateCenter:d}=this;of(c,a,d),this.hooks.emit("setObjectRotate",a,d),this.hooks.emit("rotate",a),this.render()}dispose(){this.removeListener(),super.dispose()}onApplyOriginObjectRotate(e){this.isDragging||super.onApplyOriginObjectRotate(e)}onApplyOriginObjectScale(e){}dragStart(e){if(this.isDragging)return;const i=e==null?void 0:e.intersect;if(!i)return this.dragEnd();const s=(i==null?void 0:i.object).direction;if(!s)return this.dragEnd();const o=i.point,r=this.getAngleHelper(s);this.setTipsAngle(0);const a=o.clone();a.y+=.2,this.setTipsPosition(a);const l=(()=>{if(s==="x")return new E.Vector3(1,0,0).applyQuaternion(this.originObject3D.quaternion);if(s==="y")return new E.Vector3(0,1,0).applyQuaternion(this.originObject3D.quaternion);if(s==="z")return new E.Vector3(0,0,1).applyQuaternion(this.originObject3D.quaternion)})(),c=new E.Plane().setFromNormalAndCoplanarPoint(l,o),h=c.projectPoint(o.clone(),new E.Vector3).clone().sub(this.rotateCenter),u=h.angleTo(r.baseAxes.clone().applyQuaternion(this.originObject3D.quaternion));this.setAngleHelperStart(s,u),this.setAngleHelperLength(s,0),this.startInfo={direction:s,startVector:h,plane:c,angleHelper:r,angle:0,objectQuaternion:this.originObject3D.quaternion.clone()},this.helperObject3D.showDraggingHelper([s]),this.hooks.emit("rotateStart"),this.isDragging=!0}dragging(e){if(!this.isDragging)return;const i=Ja(this.camera,e,this.container);return i?(this.rotate(i),!1):this.dragEnd()}rotate(e){if(!this.startInfo)return this.dragEnd();const{startVector:i,plane:s,angleHelper:o,direction:r,objectQuaternion:a}=this.startInfo,{originObject3D:l}=this,c=e.ray.intersectPlane(s,new E.Vector3);if(!c)return;const d=this.rotateCenter.clone(),u=s.projectPoint(c.clone(),new E.Vector3).clone().sub(d);if(i.angleTo(u)===0)return;const m=new E.Quaternion().setFromUnitVectors(i.clone().normalize(),u.clone().normalize()),A=l.quaternion.clone().premultiply(m);if(this.hooks.emit("wantToRotate",A))return;const v=new E.Euler().setFromQuaternion(new E.Quaternion().setFromUnitVectors(i.clone().normalize().applyQuaternion(a.clone().inverse()),u.clone().normalize().applyQuaternion(a.clone().inverse())),`${r.toUpperCase()}${"XZY".replace(r.toUpperCase(),"")}`)[r]*o.angleDirection;if(this.startInfo.angle+=v,this.setAngleHelperLength(r,this.startInfo.angle),this.setTipsAngle(Zh(this.startInfo.angle)),d){const y=new E.Vector3().subVectors(l.position,d).applyQuaternion(m).add(d);l.position.copy(y)}l.applyQuaternion(m),this.hooks.emit("applyObjectRotate",{quaternion:m,origin:d}),this.hooks.emit("rotate",l.quaternion),this.startInfo.startVector=u}dragEnd(){this.isDragging&&(this.hooks.emit("setObjectRotate",this.originObject3D.quaternion,this.rotateCenter),this.startInfo=void 0,this.isDragging=!1,this.helperObject3D.show(),this.hooks.emit("rotateEnd"))}getAngleHelper(e){var i,s,o;switch(e){case"x":return(i=this.helperObject3D.xCircle)==null?void 0:i.angleSector;case"y":return(s=this.helperObject3D.yCircle)==null?void 0:s.angleSector;case"z":return(o=this.helperObject3D.zCircle)==null?void 0:o.angleSector}}setAngleHelperStart(e,i){const s=this.getAngleHelper(e);if(!s){console.warn("angleHelper is undefined");return}if(s instanceof E.Mesh&&s.geometry instanceof E.CircleGeometry){const{radius:o,segments:r,thetaLength:a}=s.geometry.parameters;s.geometry=new E.CircleGeometry(o,r,i,a)}else console.warn("only support THREE.CircleGeometry")}setAngleHelperLength(e,i){const o=i>=0?Math.max(i,.001):Math.min(i,-.001),r=this.getAngleHelper(e);if(r instanceof E.Mesh&&r.geometry instanceof E.CircleGeometry){const{radius:a,thetaStart:l}=r.geometry.parameters,c=Math.ceil(Math.abs(o)*(40/(2*Math.PI)));r.geometry=new E.CircleGeometry(a,c,l,o)}else console.warn("only support THREE.CircleGeometry")}setTipsAngle(e){var s;const i=(s=this.helperObject3D.angleTips)==null?void 0:s.element;i&&(i.innerText=`${e.toFixed(0)}°`)}setTipsPosition(e){const i=this.helperObject3D.angleTips;if(!i)return;const s=e.project(this.camera),{x:o,y:r,z:a}=s;if(a>1)return;const l=(o+1)/2*100+"%",c=(-r+1)/2*100+"%";i.setLeftTop(l,c)}}class M2 extends hs{constructor(...e){super(...e);f(this,"startInfo");f(this,"name","RectangleScaleController")}enable(){this.helperObject3D.enable(),super.enable()}disable(){this.helperObject3D.disable(),super.disable()}show(){this.helperObject3D.show(),super.show()}hide(){this.helperObject3D.hide(),super.hide()}onApplyOriginObjectPosition(e){this.isDragging||super.onApplyOriginObjectPosition(e)}onApplyOriginObjectScale(e){this.helperObject3D.applyHelperScaleMatrix4(e.matrix,e.origin)}getDragPlane(){const e=new E.Plane,i=this.helperObject3D.cornerPositions;if(i.length!==0)return i.length<3?e.setFromNormalAndCoplanarPoint(this.originObject3D.getWorldDirection(new R.Vector3),i[0]):e.setFromCoplanarPoints(i[0],i[1],i[2]),e}dragStart(e,i){var o,r;(r=(o=this.helperObject3D).updatePoints)==null||r.call(o);const s=this.getDragPlane();if(!s)return this.dragEnd();this.startInfo={startPoint:{position:i.position.clone(),direction:i.direction},plane:s},this.hooks.emit("scaleStart"),this.render(),this.isDragging=!0}dragging(e){if(!this.isDragging)return;const i=Ja(this.camera,e,this.container);if(!i)return this.dragEnd();this.scale(i)}scale(e){var X,U;if(!this.startInfo)return;const i=this.originObject3D,{startPoint:s,plane:o}=this.startInfo,r=this.helperObject3D.cornerPositions;if(r.length<4)return this.dragEnd();const a=e.ray.intersectPlane(o,new R.Vector3);if(!a||a2(a,this.camera.position))return;const l=new R.Vector3().addVectors(r[0],r[2]).divideScalar(2),{position:c,direction:d}=s,h=new R.Vector3().subVectors(r[1],r[0]),u=new R.Vector3().subVectors(r[3],r[0]),m=N=>{const H=new R.Vector3(0,0,0);if(!this.startInfo)return H;const _=(N==="ew"?h:u).clone(),Q=c.clone().projectOnVector(_),F=a.clone().projectOnVector(_),J=l.clone().projectOnVector(_);if(F.equals(Q))return H;if(N==="ns"&&typeof this.startInfo.dragPointInCenterBottom!="boolean"){const ce=new R.Vector3().subVectors(F,J),se=ce.x<0&&_.x>=0,we=ce.y<0&&_.y>=0,Ce=ce.z<0&&_.z>=0;this.startInfo.dragPointInCenterBottom=se||we||Ce}if(N==="ew"&&typeof this.startInfo.dragPointInCenterLeft!="boolean"){const ce=new R.Vector3().subVectors(F,J),se=ce.x<0&&_.x>=0,we=ce.y<0&&_.y>=0,Ce=ce.z<0&&_.z>=0;this.startInfo.dragPointInCenterLeft=se||we||Ce}const Z=new R.Vector3().subVectors(F,Q),ee=Z.length();return ee>.3?(console.warn("offset.length() > 0.3, skipped",ee),H):Z},A=m("ew"),p=m("ns"),g=()=>{const N=A;this.helperObject3D.cornerPositions.forEach((H,_)=>{var Q;(Q=this.startInfo)!=null&&Q.dragPointInCenterLeft?(_===0||_===3)&&H.add(N):(_===1||_===2)&&H.add(N)})},v=()=>{const N=p;this.helperObject3D.cornerPositions.forEach((H,_)=>{var Q;(Q=this.startInfo)!=null&&Q.dragPointInCenterBottom?(_===0||_===1)&&H.add(N):(_===2||_===3)&&H.add(N)})};switch(d){case"ew":g();break;case"ns":v();break;case"nesw":case"nwse":g(),v()}const y=new R.Vector3().subVectors(r[1],r[0]).length()/h.length(),I=new R.Vector3().subVectors(r[3],r[0]).length()/u.length(),M=new R.Vector3(y,I,1),D=new E.Matrix4().scale(M);i.isCSS3DObjectPlus?i.applyScaleMatrix4(D):i.scale.applyMatrix4(D),s.position.copy(a);const P=new R.Vector3().addVectors(r[0],r[2]).divideScalar(2),V=new R.Vector3().subVectors(P,l),L=new E.Matrix4().setPosition(V);i.applyMatrix4(L),(X=this.helperObject3D.css3DInstance)==null||X.css3DObject.applyMatrix4(L),(U=this.helperObject3D.plane)==null||U.applyMatrix4(L),this.hooks.emit("applyObjectScale",{matrix:D}),this.hooks.emit("applyObjectPosition",{matrix:L}),this.render()}dragEnd(){this.isDragging&&(this.startInfo=void 0,this.isDragging=!1,this.hooks.emit("scaleEnd"),this.render())}}class k2 extends M2{constructor(...e){super(...e);f(this,"name","CSS3DScaleController");this.addHTMLEventListener()}addHTMLEventListener(){this.helperObject3D.points.forEach(e=>{if(!e)return;const i=e.point,s=a=>this.dragStart(a,e),o=this.dragging.bind(this),r=this.dragEnd.bind(this);i.addEventListener("dragstart",s),i.addEventListener("drag",o),i.addEventListener("dragend",r)})}}class x2 extends hs{constructor(...e){super(...e);f(this,"name","BoundingBoxController")}}class D2 extends rf{constructor(t){super(t)}}class S2 extends hs{constructor(...e){super(...e);f(this,"name","ScaleController")}setScale(e){var l,c,d;let i=1,s=1,o=1;typeof e=="number"?(i=e,s=e,o=e):typeof e=="object"&&(i=(l=e.x)!=null?l:1,s=(c=e.y)!=null?c:1,o=(d=e.z)!=null?d:1);const r=new E.Vector3(i,s,o);this.hooks.emit("wantToScale",r)||(this.originObject3D.scale.copy(r),this.hooks.emit("setObjectScale",r),this.hooks.emit("scale",r),this.render())}}const ha="Object3DHelperPlugin",jo=ha,T2=()=>{console.error(`${jo} is disposed`)},L2=()=>{console.warn(`${jo} is disabled`)},j2=()=>{console.error(`${jo} is disabled`)};class lf extends cs{constructor(e){super(e);f(this,"name",ha);f(this,"state",{visible:!0,enabled:!0,disposed:!1});f(this,"objectHelperMap",new Map);f(this,"css3DObjectParentMap",new Map);f(this,"css3DRender");this.five=e,this.css3DRender=new un(this.five.scene),console.warn("Object3DHelper: 使用此插件,需要在初始化five时,设置five参数: { backgroundAlpha: 0, backgroundColor: 0x000000 }"),Object.assign(window,{[`__${ha.toUpperCase()}_DEBUG__`]:this})}show(e){return W(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return W(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,i){if(this.state.disposed)return T2();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return j2();const s=G({},this.state);this.state=G(G({},this.state),e),e.disposed!==void 0&&e.disposed!==s.disposed&&e.disposed&&this.handleDispose(),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled),this.hooks.emit("stateChange",{state:this.state,prevState:s})}getObject3DHelper(e){return this.objectHelperMap.get(e)}addObject3DHelper(e,i={}){var m;if(!e)return console.error("Object3D is undefined");if(this.objectHelperMap.has(e)){console.warn(`Object3DHelperPlugin: object3D ${e.name} is already has helper`);return}const s=new P2,o=[],r=(m=this.five.getElement())==null?void 0:m.parentElement,a=this.five.camera,{moveHelper:l=!0,rotateHelper:c=!0,scaleHelper:d=!0,boundingBoxHelper:h=!1}=i,u=new je.Subscribe;if(l){const A=new l2(e),p=this.getConfig(i.moveHelper),g=new qn(this.five,v2,e,A,p,u);s.addControllers({moveController:g.helperController}),o.push(()=>g.dispose())}if(c){const A=this.getConfig(i.rotateHelper),p=new h2(e,G({container:r},A)),g=new qn(this.five,E2,e,p,A,u);s.addControllers({rotateController:g.helperController}),o.push(()=>g.dispose())}if(h){const A=new A2(e),p=new qn(this.five,x2,e,A,void 0,u);s.addControllers({boundingBoxController:p.helperController})}if(d)if(e.isCSS3DObjectPlus&&r){const A=new p2(e,r,a,this.five.scene),p=new qn(this.five,k2,e,A,void 0,u);s.addControllers({scaleController:p.helperController}),o.push(()=>p.dispose()),vh(this.five).then(()=>{var g,v;if(e.isCSS3DObjectPlus){const y=e;if(!y||y.mode!=="front")return;const I=(g=this.css3DRender.behindModeCSS3DRenderer.wrapper)!=null?g:bh(this.five);I&&(this.css3DObjectParentMap.set(y,y.parent),y.removeFromParent(),this.css3DRender.behindModeCSS3DRenderer.setWrapper(I),(v=this.css3DRender.getBehindCSS3DObjectGroup())==null||v.add(y),this.css3DRender.render(this.five.camera))}})}else{const A=new D2(e),p=new qn(this.five,S2,e,A,void 0,u);s.addControllers({scaleController:p.helperController}),o.push(()=>p.dispose())}return this.objectHelperMap.set(e,{helper:s,disposers:o}),s.controllers}removeObject3DHelper(e){if(!this.objectHelperMap.has(e))return;const{helper:i,disposers:s}=this.objectHelperMap.get(e);if(i){if(e.isCSS3DObjectPlus){const o=e,r=this.css3DObjectParentMap.get(o);r&&r.add(o),this.css3DRender.render(this.five.camera)}this.objectHelperMap.delete(e),i.dispose(),s==null||s.forEach(o=>o==null?void 0:o())}}handleEnable(e,i=!0){e?(this.everyHelperDo(s=>s.enable()),this.hooks.emit("enable",{userAction:i})):(this.everyHelperDo(s=>s.disable()),this.hooks.emit("disable",{userAction:i})),this.state.enabled=e}handleVisible(e,i=!0){e?(this.everyHelperDo(s=>s.show()),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:i}))):(this.everyHelperDo(s=>s.hide()),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:i}))),this.state.visible=e}handleDispose(){this.objectHelperMap.forEach(({helper:e,disposers:i})=>{e.dispose(),i==null||i.forEach(s=>s==null?void 0:s())})}everyHelperDo(e){this.objectHelperMap.forEach(({helper:i,disposers:s})=>{i&&e(i)})}actionIfStateIsEnabled(e,i){if(this.state.enabled)return e();i!=null&&i.warnLog&&L2()}getConfig(e){if(e&&typeof e!="boolean"&&e.enable)return e}}const z2=n=>new lf(n),O2=`
669
+ `;class ca{constructor(t,e){f(this,"name","");f(this,"startTagContainer");f(this,"endTagContainer");f(this,"mesh");f(this,"five");f(this,"mode");f(this,"path",[]);f(this,"_curvePath",null);f(this,"_curvePoints",null);f(this,"_panoGroup",[]);f(this,"skippedPositions",null);f(this,"textureUrl","");f(this,"scale",1);f(this,"width",.5);f(this,"unitLength",.5);f(this,"_visibleFloorIndexes",null);f(this,"visible",null);f(this,"modeVisible",!1);f(this,"floorVisible",!0);f(this,"defaultVisible",!1);f(this,"inWalkAnimation",!1);f(this,"customVisible",null);f(this,"parent");f(this,"plugin");f(this,"textureHasLoaded",!1);f(this,"disposed",!1);f(this,"flowAnime",new fn({progress:0}).to({progress:1}).duration(1500).repeat(1/0));f(this,"flickerAnime",vo(300).yoyo(!0).repeat(5));f(this,"cacheLengths",[]);f(this,"dispose",()=>{var t,e;this.disposed||(this.disposed=!0,this.parent.hooks.off("show",this.updateVisible),this.parent.hooks.off("hide",this.updateVisible),this.plugin.hooks.off("show",this.updateVisible),this.plugin.hooks.off("hide",this.updateVisible),this.plugin.hooks.off("enable",this.updateVisible),this.plugin.hooks.off("disable",this.updateVisible),this.five.off("modeChange",this.onFiveModeChange),this.five.off("modelShownFloorChange",this.onFiveModelShownFloorChange),this.doHide(),(t=this.startTagContainer)==null||t.plugin.dispose(),(e=this.endTagContainer)==null||e.plugin.dispose())});f(this,"onWalkAnimationStart",()=>{this.inWalkAnimation=!0,this.updateVisible()});f(this,"onWalkAnimationEnd",()=>{this.inWalkAnimation=!1,this.updateVisible()});f(this,"onFiveModeChange",t=>{this.modeVisible=this.mode==="panorama"?ma(t):yh(t),this.updateVisible()});f(this,"onFiveModelShownFloorChange",t=>{this.floorVisible=t===null||this.visibleFloorIndexes===null||this.visibleFloorIndexes.includes(t),this.updateVisible()});f(this,"updateVisible",()=>{const t=(()=>!this.parent.visible||!this.plugin.state.enabled||!this.plugin.state.visible?!1:this.customVisible!==null?this.customVisible:this.inWalkAnimation?!0:this.modeVisible&&this.textureHasLoaded&&this.defaultVisible&&this.floorVisible)();this.visible!==t&&(this.visible=t,t?this.doShow():this.doHide())});f(this,"onFlowAnimeUpdate",t=>{const{progress:e}=t;this.mesh.material.uniforms.vOffset.value=e,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0});f(this,"onFlickerAnimeUpdate",t=>{var s,o;const{progress:e}=t,i=1-e;this.mesh.material.uniforms.flicker.value=i,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0,this.startTagContainer.tag&&Vr(this.startTagContainer.tag)&&((s=this.startTagContainer.app)==null||s.$set(ve(G({},this.startTagContainer.tag.data),{opacity:i,name:this.name,distance:Math.round(this.curvePath.getLength())}))),this.endTagContainer.tag&&Vr(this.endTagContainer.tag)&&((o=this.endTagContainer.app)==null||o.$set(ve(G({},this.endTagContainer.tag.data),{opacity:i})))});f(this,"logWarning",t=>Qb("GuideLineModeItem: ",t));f(this,"logError",t=>wu("GuideLineModeItem: ",t));var o,r;this.five=t,this.mode=e.mode,this.plugin=e.plugin,this.parent=e.parent,this.startTagContainer={tag:null,plugin:new po(this.five)},this.endTagContainer={tag:null,plugin:new po(this.five)};const i=new E.BufferGeometry,s=new E.ShaderMaterial({vertexShader:GP,fragmentShader:NP,transparent:!0,uniforms:{map:{value:null},useMapColor:{value:0},mapColor:{value:new E.Color},mapOpacity:{value:1},backgroundColor:{value:new E.Color},backgroundOpacity:{value:0},borderColor:{value:new E.Color},borderOpacity:{value:0},opacity:{value:1},flicker:{value:1},maxU:{value:0},vOffset:{value:0}}});this.mesh=new E.Mesh(i,s),this.mesh.name="GuideLineModeItem",this.mode==="panorama"&&(this.parent.hooks.on("walkStart",this.onWalkAnimationStart),this.parent.hooks.on("walkEnded",this.onWalkAnimationEnd)),this.updateVisible(),this.onFiveModeChange(this.five.getCurrentState().mode),this.onFiveModelShownFloorChange((r=(o=this.five.model)==null?void 0:o.shownFloor)!=null?r:null),this.flowAnime.onUpdate(this.onFlowAnimeUpdate),this.flickerAnime.onUpdate(this.onFlickerAnimeUpdate),this.parent.hooks.on("show",this.updateVisible),this.parent.hooks.on("hide",this.updateVisible),this.plugin.hooks.on("show",this.updateVisible),this.plugin.hooks.on("hide",this.updateVisible),this.plugin.hooks.on("enable",this.updateVisible),this.plugin.hooks.on("disable",this.updateVisible),this.plugin.hooks.on("dispose",this.dispose),this.five.on("modeChange",this.onFiveModeChange),this.five.on("modelShownFloorChange",this.onFiveModelShownFloorChange)}get panoGroup(){return this._panoGroup}get visibleFloorIndexes(){return this._visibleFloorIndexes}get curvePath(){return this._curvePath}get curvePoints(){return this._curvePoints}setCustomVisible(t){if(this.disposed)return this.logError("disposed");this.customVisible!==t&&(this.customVisible=t,this.updateVisible())}setDefaultVisible(t){if(this.disposed)return this.logError("disposed");this.defaultVisible!==t&&(this.defaultVisible=t,this.updateVisible())}setUnitSize(t,e){if(this.disposed)return this.logError("disposed");this.width=t,this.unitLength=e,this.setGeometryByPath(this.path,{width:t,unit_length:e})}setScale(t){if(this.disposed)return this.logError("disposed");this.scale=t,this.setGeometryByPath(this.path,{scale:t})}setGeometryByPanoGroup(t,e){if(this.disposed)return this.logError("disposed");if(!this.five.work)return this.logError("setPathByPanoGroup: work is not ready");const i=QP(t);if(this._panoGroup=i,(e==null?void 0:e.skipPanoGroup)!==void 0){const o=e.skipPanoGroup?i.map(r=>this.five.work.observers[r]).map(r=>r.standingPosition.clone()):null;this.skippedPositions=o}const s=this.getPathFromPanoGroup(i,this.five.work,e);this.path=s,this.setGeometryByPath(s,e)}setGeometryByPath(t,e){var d,h,u;if(this.disposed)return this.logError("disposed");const i=(d=e==null?void 0:e.scale)!=null?d:this.scale,s=(h=e==null?void 0:e.width)!=null?h:this.width,o=(u=e==null?void 0:e.unit_length)!=null?u:this.unitLength;this.path=t,this.scale=i,this.width=s,this.unitLength=o;const{geometry:r,maxU:a,curvePath:l,curvePoints:c}=s1({path:t,width:s*i,unitLength:o*i,skipPositions:this.skippedPositions});this._curvePath=l,this._curvePoints=c,this.mesh.geometry=r,this.mesh.material.needsUpdate=!0,this.mesh.material.uniforms.maxU.value=a,this.five.needsRender=!0}setMartial(t){var e;if(this.disposed)return this.logError("disposed");(t==null?void 0:t.visible)!==void 0&&this.setDefaultVisible(t.visible),(t==null?void 0:t.color)!==void 0&&this.setColor(t.color),(t==null?void 0:t.opacity)!==void 0&&this.setOpacity(t.opacity),((e=t==null?void 0:t.texture)==null?void 0:e.url)!==void 0&&this.setTextureUrl(t.texture.url),(t==null?void 0:t.background_color)!==void 0&&this.setBackgroundColor(t.background_color),(t==null?void 0:t.background_opacity)!==void 0&&this.setBackgroundOpacity(t.background_opacity),(t==null?void 0:t.border_color)!==void 0&&this.setBorderColor(t.border_color),(t==null?void 0:t.border_opacity)!==void 0&&this.setBorderOpacity(t.border_opacity)}setColor(t){if(this.disposed)return this.logError("disposed");t&&(this.mesh.material.uniforms.mapColor.value=new E.Color().set(t)),this.mesh.material.uniforms.useMapColor.value=t?1:0,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBorderColor(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.borderColor.value=new E.Color().set(t),this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBorderOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.borderOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBackgroundColor(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.backgroundColor.value=new E.Color().set(t),this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setBackgroundOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.backgroundOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.opacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setMapOpacity(t){if(this.disposed)return this.logError("disposed");this.mesh.material.uniforms.mapOpacity.value=t,this.mesh.material.uniformsNeedUpdate=!0,this.five.needsRender=!0}setTextureUrl(t){if(this.disposed)return this.logError("disposed");this.textureUrl=t,vn(t).then(e=>{this.disposed||this.textureUrl===t&&(e.wrapT=E.RepeatWrapping,this.textureHasLoaded=!0,this.mesh.material.uniforms.map.value=e,this.mesh.material.uniformsNeedUpdate=!0,this.mesh.material.needsUpdate=!0,this.five.needsRender=!0,this.updateVisible())})}setVisibleFloorIndexes(t){var e,i;if(this.disposed)return this.logError("disposed");this._visibleFloorIndexes=t,this.onFiveModelShownFloorChange((i=(e=this.five.model)==null?void 0:e.shownFloor)!=null?i:null)}setStartTag(t){this.setTag("start",t)}setEndTag(t){this.setTag("end",t)}flicker(){if(this.disposed)return this.logError("disposed");this.flickerAnime.play()}getLengthByPanoGroupIndex(t){return this.disposed?this.logError("disposed"):this.cacheLengths.length!==0?this.cacheLengths[t]:(this.cacheLengths=this.getPanoGroupLengths(),this.cacheLengths[t])}getPanoGroupLengths(){const t=this.panoGroup.map(c=>this.five.work.observers[c]),e=this.curvePoints.length,i=this.curvePath.getLength(),s=e-1,o=i/s,r=this.curvePath.getLengths(s),a=[];let l=0;for(let c=0;c<e;c++){const d=this.curvePoints[c],h=t[l];if(!h)break;h.standingPosition.clone().setY(0).distanceTo(d.clone().setY(0))<o&&(a.push(r[c]),l+=1)}return a}setTag(t,e){const i=t==="start"?this.startTagContainer:this.endTagContainer;e||i.plugin.clearTags();const o=Fe({},{contentType:"Custom",stickType:"2DPoint",config:{visibleConfig:{visibleFiveMode:["Floorplan","Mapview"],followModelVisibility:!1}},style:{point:{enabled:!1}},data:{}},e);i.tag=o,Vr(o)&&(i.tag.element=r=>{var c;(c=i.app)==null||c.$destroy();const a=t==="start"?ve(G({},o.data),{name:this.name,distance:Math.round(this.curvePath.getLength()),i18n:this.plugin.config.i18n}):o.data,l=new RP({target:r,intro:!0,props:a});return i.app=l,()=>l.$destroy()}),i.plugin.load({tagList:[i.tag]})}doShow(){this.mode==="model"&&this.flowAnime.play(),this.five.scene.add(this.mesh),this.startTagContainer.plugin.show(),this.endTagContainer.plugin.show(),this.five.needsRender=!0}doHide(){this.mode==="model"&&this.flowAnime.stop(),this.five.scene.remove(this.mesh),this.startTagContainer.plugin.hide(),this.endTagContainer.plugin.hide(),this.five.needsRender=!0}getPathFromPanoGroup(t,e,i){if(t.length<2)return[];const o=t.map(r=>e.observers[r]).map(r=>r.standingPosition.toArray());return[G({type:"CatmullRomCurve3",points:o},i)]}}function Vr(n){return n.contentType==="Custom"}const HP=Object.freeze(Object.defineProperty({__proto__:null,GuideLineModeItem:ca},Symbol.toStringTag,{value:"Module"}));function oh(n){const t=Math.abs(Math.cos(n.latitude));return new E.Vector3(-Math.sin(n.longitude)*t,-Math.sin(n.latitude),-Math.cos(n.longitude)*t)}function _P(n,t){const e=oh(n),i=oh(t);return e.angleTo(i)}const FP=n=>W(exports,null,function*(){try{n().then(()=>{},()=>{}).catch(()=>{})}catch(t){}}),Ws=Math.PI*2;function WP(n){return n>=0&&n<Ws?n:(n%Ws+Ws)%Ws}function YP(n){return{longitude:WP(-Math.atan2(n.x,-n.z)),latitude:-Math.asin(n.y/1)}}function UP(n,t,e,i){const s=-n/e,o=n;return s*i+o}function XP(n){return new Promise(t=>{setTimeout(()=>{t()},n)})}const $u="v1.0.6",ef="CruisePlugin",Lo=`${ef}@${$u}`,rh=()=>{console.error(`${Lo} is disposed`)},ZP=()=>{console.warn(`${Lo} is disabled`)},JP=()=>{console.error(`${Lo} is disabled`)},Rr=new Map;class ds extends yi{constructor(e,i){super(e,i);f(this,"state",{visible:!0,enabled:!0,disposed:!1,playing:!1,speed:1,config:{speedConfig:{rotateSpeed:.001,rotateSpeedUnit:"rad/ms",moveSpeed:.002,moveSpeedUnit:"m/ms"}}});f(this,"data");f(this,"config");f(this,"privateState",{playing:!1,currentPlayQueue:[],currentPlayKeyframe:null,broke:!1,disposers:[],modeChanging:!1});f(this,"GuideLine");this.config=i,Object.assign(window,{[`__${ef}_DEBUG__`]:this});const s=this.setFiveLinearUpdateCamera.bind(this),o=this.setFiveOriginUpdateCamera.bind(this);this.hooks.on("play",s),this.hooks.on("broke",o),this.hooks.on("end",o),this.hooks.on("pause",o),this.privateState.disposers.push(()=>{this.hooks.off("play",s),this.hooks.off("broke",o),this.hooks.off("end",o),this.hooks.off("pause",o)})}load(e,i,s){return W(this,null,function*(){var d,h,u,m,A,p;if(this.state.disposed)return rh();this.privateState.fiveOriginGetProgress||(h=(d=this.five.controller)==null?void 0:d.cameraMotion)!=null&&h.getProgress||(yield this.waitFiveLoaded(),this.privateState.fiveOriginGetProgress=(m=(u=this.five.controller)==null?void 0:u.cameraMotion)==null?void 0:m.getProgress),this.clear();const o=this.data?JSON.parse(JSON.stringify(this.data)):void 0,r=yield this.formatData(e);this.data=r,this.hooks.emit("dataChange",r,o);let a=[],l;const c=this.data.keyframes.filter(g=>g.data.panoIndex!==void 0);c.filter((g,v)=>{var y;return g.data.panoIndex!==((y=c[v-1])==null?void 0:y.data.panoIndex)}).map(g=>g.data.panoIndex).forEach(g=>{var y,I;const v=(y=this.five.work.observers[g])==null?void 0:y.floorIndex;if(v!==void 0)if(l===v){const M=a.length-1;a[M]=[...(I=a[M])!=null?I:[],g]}else{l=v;const M=a.length;a[M]=[g]}}),!this.GuideLine&&((A=this.config)==null?void 0:A.useGuideLine)!==!1&&r.useGuildLine!==!1&&(this.GuideLine=sf(this.five,this.config)),(p=this.GuideLine)==null||p.load({routes:a.map(g=>({panoIndexList:g})),config:r.guildPluginOptions}),this.setState({playing:!1}),this.handleVisible(this.state.visible),this.handleEnable(this.state.enabled),this.changePlayState(this.state.playing),this.changeSpeed(this.state.speed),i&&this.setState(i,{userAction:s}),console.debug(`${Lo} loaded`,r),this.hooks.emit("dataLoaded",r)})}play(e){this.setState({playing:!0},e)}playFrom(e){const{index:i,id:s,userAction:o}=e;this.state.playing&&this.setState({playing:!1},{userAction:o}),this.setState({playing:!0},{userAction:o,playFromIndex:i,playFromId:s})}playFromStart(e){return this.playFrom(ve(G({},e),{index:0}))}pause(e){this.setState({playing:!1},e)}show(e){return W(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return W(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,i){var o;if(this.state.disposed)return rh();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return JP();const s=G({},this.state);this.state=G(G({},this.state),e),e.disposed!==void 0&&e.disposed!==s.disposed&&e.disposed&&this.handleDispose(),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible,i==null?void 0:i.userAction),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled,i==null?void 0:i.userAction),e.playing!==void 0&&e.playing!==s.playing&&this.changePlayState(e.playing,i),e.speed!==void 0&&e.speed!==s.speed&&this.changeSpeed(e.speed,i==null?void 0:i.userAction),It(s,this.state,{deep:!0})||this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:(o=i==null?void 0:i.userAction)!=null?o:!0})}formatData(e){return W(this,null,function*(){this.five.work||(yield this.waitFiveLoaded());const i=this.five.work.observers,s=(()=>{const o=e;return typeof o=="object"&&o!==null&&o.version&&o.data?o.data:o})();if(s.keyframes)return{keyframesId:lt(),keyframes:s.keyframes.map((o,r)=>{var c;const a=s.keyframes[r+1],l=(()=>!a||a.start===void 0||o.end===void 0?0:a.start-o.end)();return ve(G({id:(c=o.uuid)!=null?c:lt(),moveIndex:r,stay:l,index:r},o),{guildPluginOptions:s.guildPluginOptions})})};if(s.panoIndexList){let o=[];const{moveEffect:r,moveToFirstPanoEffect:a,moveToFirstPanoDuration:l}=s;return this.privateState.moveToFirstPanoEffect=a,this.privateState.moveToFirstPanoDuration=l,s.panoIndexList.forEach((c,d)=>{const h=(()=>{var g,v,y,I;const u=s.panoIndexList.slice(d).find(M=>M!==c);if(u===void 0)return;const m=(g=i[c])==null?void 0:g.position,A=(v=i[u])==null?void 0:v.position;if(!A||!m||((y=i[c])==null?void 0:y.floorIndex)!==((I=i[u])==null?void 0:I.floorIndex))return;const p=new E.Vector3().subVectors(A,m);return YP(p.normalize())})();s.moveType===void 0||s.moveType==="justMove"?o.push({moveIndex:d,stay:s.stay,data:G({effect:"Move",panoIndex:c,moveEffect:r},h!=null?h:{})}):s.moveType==="moveAndRotate"&&(o.push({moveIndex:d,stay:s.stay,data:{effect:"Move",panoIndex:c,moveEffect:r}}),h&&o.push({moveIndex:d,stay:s.stay,data:G({effect:"Rotate",panoIndex:c},h)}))}),{keyframesId:lt(),keyframes:o.map((c,d)=>G({id:lt(),index:d},c)),guildPluginOptions:s.guildPluginOptions,useGuildLine:s.useGuildLine}}else throw new Error("format error: data no keyframes or no panoIndexList")})}handleEnable(e,i=!0){var s,o;e?((s=this.GuideLine)==null||s.enable(),this.hooks.emit("enable",{userAction:i})):((o=this.GuideLine)==null||o.disable(),this.changePlayState(!1,{userAction:i}),this.hooks.emit("disable",{userAction:i})),this.state.enabled=e}handleVisible(e,i=!0){var s,o;e?((s=this.GuideLine)==null||s.show(),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:i}))):((o=this.GuideLine)==null||o.hide(),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:i}))),this.state.visible=e}changePlayState(e,i){this.actionIfStateIsEnabled(()=>{var s;return this.hooks.emit("playStateChange",e?"playing":"pause",{userAction:(s=i==null?void 0:i.userAction)!=null?s:!0})}),e?this.handlePlay(i):this.handlePause(i),this.state.playing=e}handlePlay(e){return W(this,null,function*(){var m;const{data:i,state:s,privateState:o,hooks:r}=this;if(o.playing||!(i!=null&&i.keyframes)||(i==null?void 0:i.keyframes.length)===0)return;const a=lt();o.playId=a,o.playing=!0,o.broke=!1;const l=i.keyframes,c=this.getPauseData();(e==null?void 0:e.notEmitEvent)!==!0&&r.emit("play",{userAction:(m=e==null?void 0:e.userAction)!=null?m:!0});let d=!1;const u=yield(()=>W(this,null,function*(){var A,p;if((e==null?void 0:e.playFromIndex)!==void 0)return e.playFromIndex;if((e==null?void 0:e.playFromId)!==void 0)return(A=this.data)==null?void 0:A.keyframes.findIndex(g=>g.id===e.playFromId);if(c!=null&&c.keyframeId){const g=(p=this.data)==null?void 0:p.keyframes.find(v=>v.id===c.keyframeId);if(c!=null&&c.fiveState&&(yield this.move(c.fiveState,{moveEffect:o.moveToFirstPanoEffect,duration:o.moveToFirstPanoDuration})),g){if(g.data.effect==="Move")return g.index;if(g.data.effect==="Rotate"){const v=c.duration!==void 0?c.duration*(1-c.playedProgress):void 0;return yield this.playKeyframe(g,{duration:v}),d=!0,g.index+1}}}}))();this.clearPauseData();for(const A of l){if(o.broke||!s.playing||!o.playing||a!==o.playId)return;if(!(u!==void 0&&A.index<u))try{r.emit("playIndexChange",A.index,A),yield this.playKeyframe(A,{moveEffect:d===!1?o.moveToFirstPanoEffect:void 0,duration:d===!1&&typeof o.moveToFirstPanoDuration=="number"?o.moveToFirstPanoDuration:void 0}),A.stay&&(yield XP(A.stay)),d===!1&&(d=!0)}catch(p){return Promise.resolve("broke")}}s.playing&&a===o.playId&&(this.setState({playing:!1},{userAction:!1}),r.emit("end"),this.clearPauseData())})}handlePause(e){var r;const{state:i,privateState:s,hooks:o}=this;i.playing=!1,s.playing!==!1&&(s.playing=!1,this.setPauseData(),s.broke||this.forceInteruptUpdateCamera(),(e==null?void 0:e.notEmitEvent)!==!0&&o.emit("pause",{userAction:(r=e==null?void 0:e.userAction)!=null?r:!0}))}playKeyframe(e,i){return W(this,null,function*(){var o;const{privateState:s}=this;return((o=this.privateState.currentPlayKeyframe)==null?void 0:o.keyframe.id)!==e.id&&(this.privateState.currentPlayKeyframe={keyframe:e}),s.currentPlayQueue.push(this.getPlayPromise(e,i)),this.actionPromiseQueue()})}addInterruptListener(e){const i=()=>{this.privateState.modeChanging||e()},s=e;return this.five.once("gesture",s),this.five.once("wantsChangeMode",i),()=>{this.five.off("gesture",s),this.five.once("wantsChangeMode",i)}}getPlayPromise(s){return W(this,arguments,function*(e,i={}){var r;const o=e.data;if(i.duration=(r=i.duration)!=null?r:e.start!==void 0&&e.end!==void 0?e.end-e.start:void 0,!!o)return new Promise((a,l)=>{let c=!1;this.addInterruptListener(()=>{if(!c)return this.hooks.emit("broke"),this.privateState.broke=!0,this.setState({playing:!1}),c=!0,l(new Error("play is interupted"))});try{if(c)return;const d=()=>{a(),c=!0};switch(o.effect){case"Move":this.move(o,i).then(d);break;case"Rotate":this.rotate(o,i).then(d);break;default:this.rotate(o,i).then(d)}}catch(d){}})})}actionPromiseQueue(){return W(this,null,function*(){const{privateState:e}=this;return new Promise((i,s)=>{if(e.currentPlayQueue.length===0){i();return}const o=e.currentPlayQueue.shift();if(!o){i();return}o.then(i,s)}).then(()=>e.currentPlayQueue.length===0?Promise.resolve():this.actionPromiseQueue())})}move(e,i){return W(this,null,function*(){if(e.mode&&e.mode!==this.five.currentMode)yield this.changeMode(e);else if(e.panoIndex!==this.five.panoIndex)yield this.changePano(e,i);else return Promise.resolve()})}rotate(e,i){return W(this,null,function*(){if(e.mode&&e.mode!==this.five.currentMode)yield this.changeMode({mode:e.mode,panoIndex:e.panoIndex});else if(e.panoIndex&&e.panoIndex!==this.five.panoIndex)return yield this.changePano(e,i);yield this.updateCamera(e,i)})}updateCamera(s){return W(this,arguments,function*(e,i={}){const{five:o,privateState:r,state:a}=this,l=(()=>{var m,A;const h=(m=a.config)==null?void 0:m.speedConfig,u=(A=e.rotateSpeed)!=null?A:h==null?void 0:h.rotateSpeed;if((h==null?void 0:h.rotateSpeedUnit)===void 0)return u;if(u!==void 0)return h.rotateSpeedUnit==="rad/ms"?u:u/1e3})(),c=(()=>{if(i.duration)return i.duration;if(l){const h=this.five.getCurrentState();return _P(h,e)/l}return 800})();r.currentPlayKeyframe&&(r.currentPlayKeyframe.originDuration=c);const d=this.getSpeededDuration(c);return new Promise(h=>{FP(()=>o.updateCamera(e,d)),setTimeout(()=>h(),d)})})}changePano(e,i){return W(this,null,function*(){const{five:s,privateState:o,state:r}=this;if(typeof e.panoIndex!="number"||e.panoIndex===s.panoIndex)return;const a=s.getCurrentState().mode!=="Panorama";a&&(this.privateState.modeChanging=!0);const l=(()=>{var u,m;const d=(u=r.config)==null?void 0:u.speedConfig,h=(m=e.moveSpeed)!=null?m:d==null?void 0:d.moveSpeed;if((d==null?void 0:d.moveSpeedUnit)===void 0)return h;if(h!==void 0)return d.moveSpeedUnit==="m/ms"?h:h/1e3})(),c=(()=>{if(i!=null&&i.duration)return i.duration;if(l&&typeof s.panoIndex=="number"&&typeof e.panoIndex=="number"){const d=s.work.observers[s.panoIndex].position,h=s.work.observers[e.panoIndex].position;return d.distanceTo(h)/l}return 800})();o.currentPlayKeyframe&&(o.currentPlayKeyframe.originDuration=c),yield new Promise(d=>{var h,u,m;s.moveToPano(e.panoIndex,{latitude:e.latitude,longitude:e.longitude,fov:e.fov,duration:this.getSpeededDuration(c),effect:(m=(u=i==null?void 0:i.moveEffect)!=null?u:(h=this.state.config)==null?void 0:h.moveEffect)!=null?m:e.moveEffect,moveCancelCallback:()=>d(),moveEndCallback:()=>d()}),a&&s.once("panoArrived",()=>d())}),a&&(this.privateState.modeChanging=!1)})}changeSpeed(e,i=!0){const{state:s,privateState:o,hooks:r}=this,{currentPlayKeyframe:a}=o;if(r.emit("speedChange",e,{userAction:i}),s.playing&&a)try{const l=a.originDuration!==void 0?a.originDuration*(1-this.getProgress()):void 0,c=this.playKeyframe(a.keyframe,{duration:l});o.currentPlayQueue.push(c)}catch(l){}}getSpeededDuration(e){return e/this.state.speed}getProgress(){return this.five.controller.cameraMotion.progress}changeMode(e,i){return W(this,null,function*(){e.mode&&e.mode!==this.five.currentMode&&(this.privateState.modeChanging=!0,yield this.five.changeMode(e.mode,e,i),this.privateState.modeChanging=!1)})}forceInteruptUpdateCamera(){this.five.updateCamera({},0)}getPauseData(){var e,i;if((e=this.data)!=null&&e.keyframesId)return Rr.get((i=this.data)==null?void 0:i.keyframesId)}setPauseData(){var e,i,s,o;if((e=this.data)!=null&&e.keyframesId)return Rr.set((i=this.data)==null?void 0:i.keyframesId,{keyframeId:(s=this.privateState.currentPlayKeyframe)==null?void 0:s.keyframe.id,fiveState:this.five.getCurrentState(),duration:(o=this.privateState.currentPlayKeyframe)==null?void 0:o.originDuration,playedProgress:this.getProgress()})}clearPauseData(){var e,i;if((e=this.data)!=null&&e.keyframesId)return Rr.delete((i=this.data)==null?void 0:i.keyframesId)}clear(){this.clearPauseData(),this.privateState.currentPlayKeyframe=null}handleDispose(){var e,i;this.setState({playing:!1}),this.clearPauseData(),this.clear(),(e=this.GuideLine)==null||e.dispose(),this.GuideLine=void 0,(i=this.privateState.disposers)==null||i.forEach(s=>s==null?void 0:s())}actionIfStateIsEnabled(e,i){if(this.state.enabled)return e();i!=null&&i.warnLog&&ZP()}waitFiveLoaded(){return W(this,null,function*(){return new Promise(e=>{if(this.five.work){e();return}this.five.once("loaded",()=>{e()})})})}setFiveLinearUpdateCamera(){this.privateState.fiveOriginGetProgress&&(this.five.controller.cameraMotion.getProgress=e=>{const i=this.five.controller.cameraMotion,s=e-i.startTime;return s<0?0:s>=i.duration?1:1-UP(1,i.startVelocity,i.duration,s)})}setFiveOriginUpdateCamera(){this.privateState.fiveOriginGetProgress&&(this.five.controller.cameraMotion.getProgress=this.privateState.fiveOriginGetProgress)}}f(ds,"PluginVersion",$u);const qP=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),KP=n=>new ds(n);class tf{constructor(t){f(this,"id");f(this,"renderID");f(this,"isGuideLine",!0);f(this,"panoramaItem");f(this,"modelItem");f(this,"hooks",new je.Subscribe);f(this,"_visible",!0);f(this,"plugin");f(this,"five");f(this,"logError",t=>wu("GuideLineItem: ",t));this.id=t.id,this.five=t.five,this.plugin=t.plugin,this.panoramaItem=new ca(this.five,{mode:"panorama",plugin:this.plugin,parent:this}),this.modelItem=new ca(this.five,{mode:"model",plugin:this.plugin,parent:this})}get visible(){return this._visible}setData(t){this.setDataByMode("panorama",t),this.setDataByMode("model",t)}setHeightOffset(t){this.modelItem.mesh.position.y=t,this.panoramaItem.mesh.position.y=t}setDataByMode(t,e){var l;const i=t==="panorama"?this.panoramaItem:this.modelItem,s=t==="panorama"?e.panorama_style:e.model_style,o=e.path,r=s,a=s;if(e.pano_group){const c=t==="panorama";i.setGeometryByPanoGroup(e.pano_group,G({skipPanoGroup:c},r))}else e.path&&i.setGeometryByPath(o,r);i.name=e.name,i.setMartial(a),i.setVisibleFloorIndexes((l=e.visible_floor_indexes)!=null?l:null),i.setStartTag(s==null?void 0:s.start_tag),i.setEndTag(s==null?void 0:s.end_tag)}show(){this._visible=!0,this.hooks.emit("show",{userAction:!0})}hide(){this._visible=!1,this.hooks.emit("hide",{userAction:!0})}dispose(){this.panoramaItem.dispose(),this.modelItem.dispose()}walk(t){return W(this,null,function*(){if(!this.panoramaItem.panoGroup)return;const e=G({panoIndexList:this.panoramaItem.panoGroup},t);this.hooks.emit("walkStart",{userAction:!0});const[i]=yield gn($P(this.five,e));if(this.hooks.emit("walkEnded",{userAction:!0}),i)return this.logError(i.message)})}}function $P(n,t){return W(this,null,function*(){if(t.panoIndexList.length===0)return;const e=n.getCurrentState();e.mode!=="Panorama"&&(yield ja(n,["Panorama",{longitude:e.longitude,latitude:0,panoIndex:t.panoIndexList[0]}]));const i=new ds(n,{useGuideLine:!1});yield i.load(t),yield new Promise((s,o)=>{const r=n.getCurrentState();let a=t.panoIndexList.slice();r.panoIndex===a[0]&&c(r.panoIndex),i.playFromStart();function l(m){if(m!=="Panorama")return h(new Error("mode not match"))}function c(m){const A=a[0];if(a=a.slice(1),m!==A)return h(new Error("panoIndex not match, wanted: "+A+", got: "+m));if(a.length===0)return u()}function d(){n.off("modeChange",l),n.off("panoArrived",c)}function h(m){d(),o(m)}function u(){d(),s()}n.on("modeChange",l),n.on("panoArrived",c)})})}const e2=Object.freeze(Object.defineProperty({__proto__:null,GuideLineItem:tf},Symbol.toStringTag,{value:"Module"})),nf="v1.1.0",da="GuideLinePlugin",ah=`${da}@${nf}`;let t2=class extends yi{constructor(e,i){super(e,i);f(this,"version",nf);f(this,"name",da);f(this,"cruisePlugin");f(this,"itemMap",new Map);f(this,"state",{visible:!1,enabled:!0});f(this,"data");f(this,"heightOffset",0);f(this,"_config");f(this,"_disposed",!1);f(this,"disposedErrorLog",()=>{console.error(`${ah} is disposed`)});this._config=i!=null?i:{},this.cruisePlugin=new ds(e,{useGuideLine:!1}),Object.assign(window,{[`__${da}_DEBUG__`]:this})}get config(){return this._config}get disposed(){return this._disposed}load(e,i,s=!0){return W(this,null,function*(){var m,A,p,g,v,y,I;if(this.disposed)return;const o=this.data?JSON.parse(JSON.stringify(this.data)):void 0,r=yield this.formatData(e);this.hooks.emit("dataChange",r,o),this.data=r;const a=r.config,c={panorama_style:{visible:!!(!r.lines&&r.routes),unit_length:(m=a==null?void 0:a.unitHeight)!=null?m:.4,width:(A=a==null?void 0:a.unitWidth)!=null?A:.6,texture:{url:(p=a==null?void 0:a.arrowTextureUrl)!=null?p:this.staticPrefix+"/release/web/arrow6.b6ce0c62.png"}}},d=(v=(g=r.routes)==null?void 0:g.map(M=>{var B;return Fe({},c,{id:(B=M.id)!=null?B:Date.now(),pano_group:M.panoIndexList})}))!=null?v:[],h=(I=(y=r.lines)==null?void 0:y.map(M=>Fe({},c,M)))!=null?I:[],u=[...d,...h];yield this.waitFiveLoaded(),this.clear(),u.forEach(M=>{this.addGuideLineItem(M)}),this.updateTagsEnable(),this.handleVisible(this.state.visible),this.handleEnable(this.state.enabled),i&&this.setState(i,{userAction:s}),this.hooks.emit("dataLoaded",r),console.debug(`${ah} loaded`,r)})}formatData(e){return W(this,null,function*(){return this.getDataWithoutVersion(e)})}show(e){return W(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return W(this,null,function*(){this.setState({visible:!1},e)})}enable(e){this.setState({enabled:!0},e)}disable(e){this.setState({enabled:!1},e)}dispose(){this.disposed||(this.clear(),this.hooks.emit("dispose"))}setState(e,i){var o;if(this.disposed)return this.disposedErrorLog();const s=G({},this.state);this.state=G(G({},this.state),e),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible,i==null?void 0:i.userAction),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled,i==null?void 0:i.userAction),It(s,this.state,{deep:!0})||(this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:(o=i==null?void 0:i.userAction)!=null?o:!0}),this.five.needsRender=!0)}addGuideLineItem(e){const i=e.render_id||e.id,s=this.itemMap.get(i);s&&this.removeGuideLineItem(s);const o=new tf({five:this.five,id:i,plugin:this});return this.itemMap.set(i,o),e&&o.setData(e),this.heightOffset+=1e-4,o.setHeightOffset(this.heightOffset),o}getGuideLineItemByID(e){return this.itemMap.get(e)}removeGuideLineItem(e){this.itemMap.delete(e.id),e.panoramaItem.dispose(),e.modelItem.dispose()}updateTagsEnable(){const e=[];function i(r){return Array.isArray(r)&&r.every(a=>typeof a=="number")}function s(r,a){return new E.Vector3().fromArray(r).distanceTo(new E.Vector3().fromArray(a))<.01}function o(r){var l;const a=(l=r.tag)==null?void 0:l.position;return i(a)?e.every(c=>{var d;return i((d=c.tag)==null?void 0:d.position)?!s(a,c.tag.position):!0}):!1}this.itemMap.forEach(r=>{const a=r.modelItem.startTagContainer,l=r.modelItem.endTagContainer,c=o(a);c&&e.push(a),a.plugin.setState({enabled:c},{});const d=o(l);d&&e.push(l),l.plugin.setState({enabled:d},{})})}clear(){this.itemMap.forEach(e=>{this.removeGuideLineItem(e)})}handleEnable(e,i=!0){this.hooks.emit(e?"enable":"disable",{userAction:i})}handleVisible(e,i=!0){this.state.enabled&&this.hooks.emit(e?"show":"hide",{userAction:i})}waitFiveLoaded(){return W(this,null,function*(){return new Promise(e=>{if(this.five.work){e();return}this.five.once("loaded",()=>{e()})})})}getDataWithoutVersion(e){return typeof e=="object"&&e!==null&&e.version&&e.data?e.data:e}};const sf=(n,t)=>new t2(n,t);function of(n,t,e){if(e){const s=new E.Vector3().subVectors(n.position,e).applyQuaternion(n.quaternion.clone().inverse()).applyQuaternion(t).add(e);n.position.copy(s)}n.quaternion.copy(t)}class jo extends lu{constructor(e,i){var s;super();f(this,"originObject3D");f(this,"onRender");this.originObject3D=e,this.onRender=(s=i==null?void 0:i.onRender)!=null?s:()=>{}}get helperObject(){return this}render(){this.onRender()}enable(){this.parent.children.includes(this)||this.parent.add(this)}disable(){this.removeFromParent()}show(){this.visible=!0,this.render()}hide(){this.visible=!1,this.render()}raycasterIntersectObject(e,i=[]){return e.intersectObject(this,!0,i)}initialPosition(){this.position.add(this.originObject3D.position)}initQuaternion(){this.quaternion.copy(this.originObject3D.quaternion)}applyHelperScaleMatrix4(e,i){this.scale.applyMatrix4(e)}setHelperQuaternion(e,i){of(this,e,i)}applyHelperQuaternion(e,i){if(i){const s=new R.Vector3().subVectors(this.position,i).applyQuaternion(e).add(i);this.position.copy(s)}this.applyQuaternion(e)}dispose(){this.removeFromParent()}}class i2 extends jo{}class n2 extends jo{}class s2 extends jo{}class rf extends jo{}class o2 extends rf{}class r2 extends E.Group{constructor(e){super();f(this,"direction");this.direction=e||"x"}}class lh extends E.Mesh{constructor(e,i,s){super(e,i);f(this,"direction");this.direction=s||"x"}}function a2(n,t){const{offsetWidth:e,offsetHeight:i}=t,{top:s,left:o}=t.getBoundingClientRect();return Object.assign(new E.Vector2,{x:(n.x-o)/e*2-1,y:-(n.y-s)/i*2+1})}function Ja(n,t,e){if(!t||!e||!n)return;const i=a2(t,e);if(Math.abs(i.x)===1||Math.abs(i.y)===1)return;const s=new E.Raycaster;return s.setFromCamera(i,n),s}function l2(n,t){return!(Math.abs(n.x-t.x)>1e-5||Math.abs(n.y-t.y)>1e-5||Math.abs(n.z-t.z)>1e-5)}class Qr extends r2{constructor(e){var d;super(e.direction);f(this,"line");f(this,"arrow");f(this,"lineHeight",.4);f(this,"arrowHeight",.1);this.name="ArrowGroup";const i=new E.Color((d=e.color)!=null?d:16214315),s=new E.MeshBasicMaterial({color:i,depthTest:!1,opacity:1,transparent:!0,side:E.DoubleSide}),o=new E.ConeGeometry(.04,.1,32),r=new lh(o,s.clone(),e.direction);r.name=`arrow-${e.direction}`,this.arrow=r;const a=.004,l=new E.CylinderGeometry(a,a,.4,32),c=new lh(l,s.clone(),e.direction);c.name=`line-${e.direction}`,this.line=c,this.formatArrow(),this.formatLine(),this.add(this.arrow,this.line)}formatArrow(){this.arrow.geometry.translate(0,this.lineHeight+this.arrowHeight/2,0),this.direction==="x"?(this.arrow.geometry.rotateX(Math.PI/2),this.arrow.geometry.rotateY(Math.PI/2)):this.direction==="z"&&this.arrow.geometry.rotateX(Math.PI/2)}formatLine(){this.line.geometry.translate(0,this.lineHeight/2,0),this.direction==="x"?(this.line.geometry.rotateX(Math.PI/2),this.line.geometry.rotateY(Math.PI/2)):this.direction==="z"&&this.line.geometry.rotateX(Math.PI/2)}}const Gr={X:15618642,Y:4765519,Z:4227839};class hn{static get X(){return new E.Color(Gr.X).convertSRGBToLinear().clone()}static get Y(){return new E.Color(Gr.Y).convertSRGBToLinear().clone()}static get Z(){return new E.Color(Gr.Z).convertSRGBToLinear().clone()}}class c2 extends i2{constructor(e){super(e);f(this,"xArrow",new Qr({direction:"x",color:hn.X}));f(this,"yArrow",new Qr({direction:"y",color:hn.Y}));f(this,"zArrow",new Qr({direction:"z",color:hn.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 ji(n,t){return d2(document.createElement(t!=null?t:"div"),n)}function d2(n,t){if(!t)return n;for(const e in t)e&&t[e]&&(n.style[e]=t[e]);return n}function h2(n){const t=ji(G({position:"absolute",display:"block",borderRadius:"4px",paddingTop:"1px",paddingBottom:"1px",paddingLeft:"4px",paddingRight:"4px",pointerEvents:"none",userSelect:"none",zIndex:"99999",backgroundColor:"rgba(0,0,0,0.7)",fontSize:"12px",color:"#fff",letterSpacing:"0",lineHeight:"18px"},n)),e=()=>{t.style.display!=="block"&&t.style.top&&t.style.left&&(t.style.display="block")};return{element:t,show:e,hide:()=>{t.style.display="none",t.style.top="",t.style.left=""},setLeftTop:(o,r)=>{t.style.left=o,t.style.top=r,e()}}}class u2 extends s2{constructor(e,i){super(e);f(this,"xCircle");f(this,"yCircle");f(this,"zCircle");f(this,"children",[]);f(this,"angleTips");f(this,"container");(i==null?void 0:i.yzCircleEnable)!==!1&&(this.xCircle=new Nr({direction:"x",color:hn.X})),(i==null?void 0:i.xzCircleEnable)!==!1&&(this.yCircle=new Nr({direction:"y",color:hn.Y})),(i==null?void 0:i.xyCircleEnable)!==!1&&(this.zCircle=new Nr({direction:"z",color:hn.Z})),i!=null&&i.container&&(i==null?void 0:i.angleTipsEnable)!==!1&&(this.container=i==null?void 0:i.container,this.angleTips=h2({display:"none"}),this.container.appendChild(this.angleTips.element)),this.add(...[this.xCircle,this.yCircle,this.zCircle].filter(Boolean)),this.show()}hide(){this.children.forEach(e=>e.hide())}show(){var e;this.children.forEach(i=>i.showCircle()),(e=this.angleTips)==null||e.hide()}showDraggingHelper(e){var i;this.hide(),this.children.filter(s=>e.includes(s.direction)).forEach(s=>s.showRing()),(i=this.angleTips)==null||i.show()}dispose(){var e,i;this.removeFromParent(),(i=(e=this.angleTips)==null?void 0:e.element)==null||i.remove()}}class Nr extends E.Group{constructor(e){super();f(this,"direction");f(this,"circle");f(this,"ring");f(this,"angleSector");this.direction=e.direction,this.circle=new f2(e),this.ring=new m2(e),this.angleSector=new g2(e),this.add(this.circle,this.ring,this.angleSector),this.direction==="y"?this.rotateX(Math.PI/2):this.direction==="x"&&this.rotateY(-Math.PI/2)}showCircle(){this.add(this.circle),this.remove(this.ring,this.angleSector)}showRing(){this.add(this.ring,this.angleSector),this.remove(this.circle)}hide(){this.remove(this.ring,this.angleSector,this.circle)}}class f2 extends E.Mesh{constructor(e){var i;super();f(this,"direction");f(this,"gapAngle",.02);f(this,"geometry",new E.RingGeometry(.25,.3,20,8,this.gapAngle,Math.PI/2-this.gapAngle*2));this.material=new E.MeshBasicMaterial({opacity:.6,color:(i=e.color)!=null?i:16777215,transparent:!0,side:E.DoubleSide,depthTest:!1}),this.direction=e.direction,this.geometry.name=`RotateHelperCircleGeometry-${this.direction}`}}class m2 extends E.Group{constructor(e){super();f(this,"direction");this.direction=e.direction;const i=.015,s=new Array(8).fill(null).map((o,r)=>{const a=new E.RingGeometry(.25,.3,20,8,Math.PI/4*r+i,Math.PI/4-i*2),l=new E.MeshBasicMaterial({opacity:1,color:16777215,depthTest:!1,transparent:!0,side:E.DoubleSide}),c=new E.Mesh(a,l);return c.name=`AxesDashedRing-${this.direction}-${r}`,c});this.add(...s)}}class g2 extends E.Mesh{constructor(e){var s;super();f(this,"direction");f(this,"baseAxes");f(this,"angleDirection");switch(e.direction){case"x":this.baseAxes=new E.Vector3(0,0,1);break;case"y":this.baseAxes=new E.Vector3(1,0,0);break;case"z":this.baseAxes=new E.Vector3(1,0,0);break}const i=.3+5e-4;this.geometry=new E.CircleGeometry(i,48,0,1e-4),this.material=new E.MeshBasicMaterial({opacity:.4,color:(s=e.color)!=null?s:16777215,depthTest:!1,transparent:!0,side:E.DoubleSide}),this.direction=e.direction,this.angleDirection=this.direction==="z"?1:-1}}function p2(){const n=ji({width:"100%",height:"100%",left:"0",top:"0",position:"absolute",pointerEvents:"none"}),t=ji({boxSizing:"border-box",width:"100%",height:"100%",left:"0",top:"0",position:"relative",display:"flex",alignItems:"center",justifyContent:"center"}),e=ji({boxSizing:"border-box",width:"100%",height:"100%",left:"0",top:"0",position:"absolute",border:"1px solid rgba(255,255,255,0.4)"});n.appendChild(t),t.appendChild(e);const i="-4px",s={direction:"nesw",element:ci({cursor:"nesw-resize",left:i,bottom:i})},o={direction:"ns",element:ci({cursor:"ns-resize",bottom:i})},r={direction:"nwse",element:ci({cursor:"nwse-resize",right:i,bottom:i})},a={direction:"ew",element:ci({cursor:"ew-resize",right:i})},l={direction:"nesw",element:ci({cursor:"nesw-resize",right:i,top:i})},c={direction:"ns",element:ci({cursor:"ns-resize",top:i})},d={direction:"nwse",element:ci({cursor:"nwse-resize",left:i,top:i})},h={direction:"ew",element:ci({cursor:"ew-resize",left:i})};return new Array(o,a,c,h,s,r,l,d).forEach(m=>t.appendChild(m.element)),{container:n,squares:[s,o,r,a,l,c,d,h]}}function ci(n){const t=ji(G({background:"#FFFFFF",width:"9px",height:"9px",position:"absolute",pointerEvents:"none"},n)),e=ji({width:"15px",height:"15px",position:"absolute",left:"50%",top:"50%",transform:"translate(-50%, -50%)",pointerEvents:"none"}),i=ji({width:"15px",height:"15px",cursor:n==null?void 0:n.cursor,pointerEvents:"auto",background:"transparent"});return i.draggable=!0,e.appendChild(i),t.appendChild(e),t}class A2 extends o2{constructor(e,i,s,o){super(e);f(this,"points",[]);f(this,"cornerPositions",[]);f(this,"css3DInstance");f(this,"plane");f(this,"css3DRenderer",new un);f(this,"camera");f(this,"scene");f(this,"container");f(this,"enabled",!1);this.camera=s,this.scene=o,this.container=i,this.initRectangleScaleHelper()}get helperObject(){var e;if(!((e=this.css3DInstance)!=null&&e.css3DObject))throw new Error("css3DInstance is not initialized");return this.css3DInstance.css3DObject}applyMatrix4(e){var i;super.applyMatrix4(e),this.helperObject.applyMatrix4(e),(i=this.plane)==null||i.applyMatrix4(e),this.cornerPositions.forEach(s=>s.applyMatrix4(e))}showDraggingHelper(){}applyHelperScaleMatrix4(e,i){var s;(s=this.plane)==null||s.scale.applyMatrix4(e),this.helperObject.applyScaleMatrix4(e)}updatePoints(){const e=this.calculatePointPosition(this.cornerPositions);this.points.forEach((i,s)=>{i.position.copy(e[s])})}applyHelperQuaternion(e,i){var o;const s=(o=this.css3DInstance)==null?void 0:o.css3DObject;if(s){const r=new E.Vector3().subVectors(s.position,i).applyQuaternion(e).add(i);s.position.copy(r),s.applyQuaternion(e)}if(this.plane){const r=new E.Vector3().subVectors(this.plane.position,i).applyQuaternion(e).add(i);this.plane.position.copy(r),this.plane.applyQuaternion(e)}this.cornerPositions.forEach(r=>{const a=new E.Vector3().subVectors(r,i).applyQuaternion(e).add(i);r.copy(a)})}enable(){var e;this.enabled||(this.enabled=!0,(e=this.css3DInstance)==null||e.enable(),this.plane&&this.scene.add(this.plane))}disable(){var e;this.enabled&&(this.enabled=!1,(e=this.css3DInstance)==null||e.disable(),this.plane&&this.scene.remove(this.plane))}show(){var e;(e=this.css3DInstance)==null||e.show(),this.plane&&(this.plane.visible=!0)}hide(){var e;(e=this.css3DInstance)==null||e.hide(),this.plane&&(this.plane.visible=!1)}dispose(){this.disable(),this.css3DRenderer.dispose()}initRectangleScaleHelper(){var a,l;const e=this.getCornerPositions();if(!e)return;this.cornerPositions=e;const i=this.css3DRenderer.create3DElement(this.camera,e,{ratio:.003});if(!i)return;this.css3DInstance=i,i.appendToElement(this.container);const s=i.css3DObject.container,{container:o,squares:r}=p2();this.points=r.map((c,d)=>({direction:c.direction,point:c.element,position:this.calculatePointPosition(e)[d]})),s.insertBefore(o,(a=s.children[0])!=null?a:null),this.helperObject.position.copy(this.originObject3D.position),(l=this.plane)==null||l.position.copy(this.originObject3D.position)}getCornerPositions(){const{originObject3D:e}=this;if(e.isCSS3DObjectPlus)return e.cornerPoints;console.error("当前物体暂时不支持 ScaleHelper")}calculatePointPosition(e){return[e[0].clone(),e[0].clone().add(e[1]).divideScalar(2),e[1].clone(),e[1].clone().add(e[2]).divideScalar(2),e[2].clone(),e[2].clone().add(e[3]).divideScalar(2),e[3].clone(),e[3].clone().add(e[0]).divideScalar(2)]}}function af(n){const t=new E.Box3,e=new E.Vector3;if(n.traverse(i=>{var o;if(i.name==="shadow")return;const s=i.geometry;if(s!==void 0)if((o=s==null?void 0:s.attributes)!=null&&o.position){const r=s.attributes.position;for(let a=0,l=r.count;a<l;a++)e.fromBufferAttribute(r,a).applyMatrix4(i.matrix),t.expandByPoint(e)}else s.vertices.forEach(r=>{const a=r.clone().applyMatrix4(i.matrix);t.expandByPoint(a)})}),!t.isEmpty())return t}class v2 extends n2{constructor(e){super(e);f(this,"box");f(this,"outline");f(this,"originObject");f(this,"positionAttribute");this.originObject=e,this.positionAttribute=new E.BufferAttribute(new Float32Array(8*3),3),this.box=this.createBox(),this.outline=this.createOutline(),this.add(this.box,this.outline),this.update()}raycasterIntersectObject(e,i){return e.intersectObject(this,!1,i)}raycast(e,i){this.box.raycast(e,i)}update(){const e=af(this.originObject);if(!e)return;const{min:i,max:s}=e;this.positionAttribute.setXYZ(0,s.x,s.y,s.z),this.positionAttribute.setXYZ(1,i.x,s.y,s.z),this.positionAttribute.setXYZ(2,i.x,i.y,s.z),this.positionAttribute.setXYZ(3,s.x,i.y,s.z),this.positionAttribute.setXYZ(4,s.x,s.y,i.z),this.positionAttribute.setXYZ(5,i.x,s.y,i.z),this.positionAttribute.setXYZ(6,i.x,i.y,i.z),this.positionAttribute.setXYZ(7,s.x,i.y,i.z),this.positionAttribute.needsUpdate=!0}createOutline(){const e=new Uint16Array([0,1,1,2,2,3,3,0,4,5,5,6,6,7,7,4,0,4,1,5,2,6,3,7]),i=new E.BufferGeometry;i.setIndex(new E.BufferAttribute(e,1)),i.setAttribute("position",this.positionAttribute);const s=new E.LineBasicMaterial({color:64767,linewidth:1,opacity:1,depthTest:!1,transparent:!0,toneMapped:!1}),o=new E.LineSegments(i,s);return o.matrixAutoUpdate=!1,o}createBox(){const e=new Uint16Array([0,1,2,0,2,3,0,3,7,0,7,4,0,4,5,0,5,1,6,1,5,6,2,1,6,5,4,6,4,7,6,3,2,6,7,3]),i=new E.BufferGeometry;i.setIndex(new E.BufferAttribute(e,1)),i.setAttribute("position",this.positionAttribute);const s=new E.MeshBasicMaterial({color:64767,opacity:.1,depthTest:!1,transparent:!0});return new E.Mesh(i,s)}}class hs{constructor(t,e){f(this,"originObject3D");f(this,"hooks");f(this,"disposers",[]);f(this,"helperObject3D");f(this,"camera");f(this,"model");f(this,"scene");f(this,"container");f(this,"domEvents");f(this,"isDragging",!1);f(this,"enabled",!1);f(this,"name","BaseController");f(this,"boundingBox");f(this,"offset");f(this,"onRender");f(this,"onWantsTapGesture",t=>{if(this.getIntersectObject(t))return!1});var c,d;this.hooks=(c=t.sharedHooks)!=null?c:new Cn,this.camera=t.camera,this.model=t.model,this.originObject3D=t.originObject3D,this.helperObject3D=t.helperObject3D,this.container=t.container,this.scene=t.scene,this.domEvents=new Le(t.camera,t.container),this.onRender=(d=t.onRender)!=null?d:()=>{},this.offset=e==null?void 0:e.offset,this.initialHelperPosition(),this.initialHelperQuaternion(),this.enable();const i=(...h)=>this.onSetOriginObjectScale(...h),s=(...h)=>this.onSetOriginObjectRotate(...h),o=(...h)=>this.onSetOriginObjectPosition(...h),r=(...h)=>this.onApplyOriginObjectScale(...h),a=(...h)=>this.onApplyOriginObjectRotate(...h),l=(...h)=>this.onApplyOriginObjectPosition(...h);this.hooks.on("setObjectScale",i),this.hooks.on("setObjectRotate",s),this.hooks.on("setObjectPosition",o),this.hooks.on("applyObjectPosition",l),this.hooks.on("applyObjectRotate",a),this.hooks.on("applyObjectScale",r),this.disposers.push(()=>{this.hooks.off("setObjectScale",i),this.hooks.off("setObjectRotate",s),this.hooks.off("setObjectPosition",o),this.hooks.off("applyObjectPosition",l),this.hooks.off("applyObjectRotate",a),this.hooks.off("applyObjectScale",r)})}initialHelperPosition(){this.helperObject3D.position.add(this.calculateOffset(this.offset)),this.helperObject3D.initialPosition()}initialHelperQuaternion(){this.helperObject3D.initQuaternion()}enable(){this.enabled||(this.enabled=!0,this.scene.add(this.helperObject3D),this.helperObject3D.enable(),this.render())}disable(){this.enabled&&(this.enabled=!1,this.helperObject3D.disable(),this.render())}show(){this.helperObject3D.show(),this.render()}hide(){this.helperObject3D.hide(),this.render()}dispose(){var t;(t=this.disposers)==null||t.forEach(e=>e==null?void 0:e()),this.helperObject3D.dispose(),this.render()}applyHelperMatrix4(t){this.helperObject3D.applyMatrix4(t)}applyHelperQuaternion(t,e){this.helperObject3D.applyHelperQuaternion(t,e)}applyHelperScaleMatrix4(t,e){this.helperObject3D.applyHelperScaleMatrix4(t,e)}onWantsGesture(t,e,i){if(this.isDragging)return!1}onIntersectionOnModelUpdate(t){}onApplyOriginObjectScale(t){this.applyHelperScaleMatrix4(t.matrix,t.origin)}onApplyOriginObjectRotate(t){this.applyHelperQuaternion(t.quaternion,t.origin)}onApplyOriginObjectPosition(t){this.applyHelperMatrix4(t.matrix)}onSetOriginObjectScale(t){this.helperObject3D.scale.copy(t),this.updateOffsetByScale(t)}onSetOriginObjectRotate(t,e){this.helperObject3D.setHelperQuaternion(t,e)}onSetOriginObjectPosition(t){this.helperObject3D.position.copy(t.clone().add(this.calculateOffset(this.offset)))}render(){this.onRender()}updateOffsetByScale(t){if(this.boundingBox&&this.offset){const e=this.originObject3D.position,i=new E.Vector3().subVectors(this.boundingBox.max,e).multiply(t).add(e),s=new E.Vector3().subVectors(this.boundingBox.min,e).multiply(t).add(e),o=this.calculateOffset(this.offset,{min:s,max:i});this.helperObject3D.position.copy(o),this.helperObject3D.initialPosition()}}hoverListener(t,e=16777215,i=1){const s=(Array.isArray(t)?t:[t]).filter(ni),o=[];for(const r of s)if(r instanceof E.Mesh||r instanceof E.Group){const a=r instanceof E.Group?r.children.filter(u=>u instanceof E.Mesh):[r];a.forEach(u=>{u.__originalColor__=u.material.color.clone(),u.__originalOpacity__=u.material.opacity});const l=()=>{a.forEach(u=>{u.material.color.set(e),u.material.opacity=i}),this.render()},c=()=>{a.forEach(u=>{u.material.color.copy(u.__originalColor__),u.material.opacity=u.__originalOpacity__}),this.render()},d=()=>{this.isDragging||l()},h=()=>{this.isDragging||c()};for(const u of a)this.domEvents.addEventListener(u,"mouseover",d),this.domEvents.addEventListener(u,"mouseout",h),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",c),this.hooks.on("rotateEnd",c),o.push(()=>{this.domEvents.removeEventListener(u,"mouseover",d),this.domEvents.removeEventListener(u,"mouseout",h),this.hooks.off("moveStart",l),this.hooks.off("moveEnd",c),this.hooks.off("rotateEnd",c)})}return()=>o.forEach(r=>r==null?void 0:r())}getIntersectObject(t){const e=this.camera.position,i=this.helperObject3D;if(!i)return;const s=this.helperObject3D.raycasterIntersectObject(t)[0];if(!s)return;const o=s;if(o.object=i,this.model.intersectRaycaster){const r=this.model.intersectRaycaster(t)[0];if(r&&r.point.distanceTo(e)<o.point.distanceTo(e))return}return o.object}calculateOffset(t,e){const i=this.originObject3D,s=new E.Vector3(0,0,0);if(!t)return s;const o=()=>e||(this.boundingBox?this.boundingBox:(this.boundingBox=af(i),this.boundingBox));if(typeof t.x=="number")s.setX(t.x);else if(typeof t.x=="object"){const r=o();s.setX((r.max.x-r.min.x)*t.x.percents)}if(typeof t.y=="number")s.setY(t.y);else if(typeof t.y=="object"){const r=o();s.setY((r.max.y-r.min.y)*t.y.percents)}if(typeof t.z=="number")s.setZ(t.z);else if(typeof t.z=="object"){const r=o();s.setZ((r.max.z-r.min.z)*t.z.percents)}return s}}class b2 extends hs{constructor(...e){super(...e);f(this,"name","MoveController");f(this,"startInfo");f(this,"_moveByMouseEnable",!1);f(this,"mouseInfo");f(this,"mousedownEventListenerDisposer");const i=this.helperObject3D;this.hoverListener([i.xArrow,i.yArrow,i.zArrow]);const s=this.dragStart.bind(this),o=this.dragging.bind(this),r=this.dragEnd.bind(this),a=this.show.bind(this),l=this.hide.bind(this);this.domEvents.addEventListener(this.helperObject3D,"mousedown",s),document.addEventListener("mousemove",o),document.addEventListener("mouseup",r),this.hooks.on("rotateStart",l),this.hooks.on("rotateEnd",a),this.hooks.on("moveByMouseEnable",l),this.hooks.on("moveByMouseDisable",a),this.disposers.push(()=>{this.domEvents.removeEventListener(this.helperObject3D,"mousedown",s),document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",r),this.hooks.off("rotateStart",l),this.hooks.off("rotateEnd",a),this.hooks.off("moveByMouseEnable",l),this.hooks.off("moveByMouseDisable",a)}),this.moveByMouseEnable&&this.moveByMouse()}get moveByMouseEnable(){return this._moveByMouseEnable}dispose(){var e;super.dispose(),(e=this.disposers)==null||e.forEach(i=>i==null?void 0:i())}moveByMouse(){this._moveByMouseEnable=!0;const e=this.handleMouseDown.bind(this),i=this.handleMouseUp.bind(this);this.hooks.emit("moveByMouseEnable"),setTimeout(()=>{this.container.addEventListener("mousedown",e),this.container.addEventListener("mouseup",i)}),this.mousedownEventListenerDisposer=()=>{this.container.removeEventListener("mousedown",e),this.container.removeEventListener("mouseup",i)}}disableMoveByMouse(){var e;this._moveByMouseEnable=!1,this.hooks.emit("moveByMouseDisable"),(e=this.mousedownEventListenerDisposer)==null||e.call(this)}onIntersectionOnModelUpdate(e){!this.moveByMouseEnable||this.hooks.emit("wantToMove",e.point)||(this.originObject3D.position.copy(e.point),this.hooks.emit("setObjectPosition",e.point),this.hooks.emit("move",e.point))}onApplyOriginObjectScale(e){}handleMouseDown(e){const{x:i,y:s}=e;this.mouseInfo={x:i,y:s,mouseDownTimestamp:Date.now()}}handleMouseUp(e){if(!this.mouseInfo)return;const{x:i,y:s}=e;this.mouseInfo.x===i&&this.mouseInfo.y===s&&Date.now()-this.mouseInfo.mouseDownTimestamp<500&&(this.disableMoveByMouse(),this.mouseInfo=void 0)}dragStart(e){if(this._moveByMouseEnable||this.isDragging)return;const i=e==null?void 0:e.intersect;if(!i)return this.dragEnd();const s=(i==null?void 0:i.object).direction;if(!s)return this.dragEnd();const o=new E.Vector3(1,0,0).applyQuaternion(this.helperObject3D.quaternion),r=new E.Vector3(0,1,0).applyQuaternion(this.helperObject3D.quaternion),a=new E.Vector3(0,0,1).applyQuaternion(this.helperObject3D.quaternion),l=(()=>{switch(s){case"x":return o;case"y":return r;case"z":return a}})(),c=(()=>{switch(s){case"x":case"y":return a;case"z":return o}})(),d=i.point.clone(),h=new E.Plane;h.setFromNormalAndCoplanarPoint(c,d),this.startInfo={startVectorProject:d.clone().projectOnVector(l),directionVector:l,plane:h},this.helperObject3D.showDraggingHelper([s]),this.hooks.emit("moveStart"),this.isDragging=!0}dragging(e){if(!this.isDragging||!this.startInfo)return;const i=Ja(this.camera,e,this.container);return i?(this.move(i),!1):this.dragEnd()}move(e){if(!this.startInfo)return this.dragEnd();const{plane:i,directionVector:s,startVectorProject:o}=this.startInfo,r=this.originObject3D,a=e.ray.intersectPlane(i,new E.Vector3);if(!a)return;const l=a.clone().projectOnVector(s),c=l.clone().sub(o),d=new E.Matrix4;d.setPosition(c);const h=r.position.clone().applyMatrix4(d);this.hooks.emit("wantToMove",h)||(r.applyMatrix4(d),o.copy(l),this.hooks.emit("applyObjectPosition",{matrix:d}),this.hooks.emit("move",h))}dragEnd(){this.isDragging&&(this.startInfo=void 0,this.isDragging=!1,this.helperObject3D.show(),this.hooks.emit("moveEnd"))}}class qn{constructor(t,e,i,s,o,r){f(this,"helperController");f(this,"five");f(this,"onFiveWantsTapGesture",t=>{if(!this.helperController)return;const e=this.helperController.onWantsTapGesture(t);return this.five.needsRender=!0,e});f(this,"onFiveWantsGesture",(...t)=>{if(!this.helperController)return;const e=this.helperController.onWantsGesture(...t);return this.five.needsRender=!0,e});f(this,"onFiveIntersectionOnModelUpdate",(...t)=>{this.helperController&&this.helperController.onIntersectionOnModelUpdate(...t)});const{camera:a,model:l,scene:c}=t,d=t.getElement();if(this.five=t,!a||!l||!d||!c)return;const h=()=>{t.needsRender=!0};this.helperController=new e({camera:a,model:l,originObject3D:i,helperObject3D:s,container:d,scene:c,onRender:h,sharedHooks:r},o),t.on("wantsTapGesture",this.onFiveWantsTapGesture),t.on("wantsGesture",this.onFiveWantsGesture),t.on("intersectionOnModelUpdate",this.onFiveIntersectionOnModelUpdate)}dispose(){var t;this.five.off("wantsTapGesture",this.onFiveWantsTapGesture),this.five.off("wantsGesture",this.onFiveWantsGesture),this.five.off("intersectionOnModelUpdate",this.onFiveIntersectionOnModelUpdate),(t=this.helperController)==null||t.dispose()}}const y2="v1.0.1",w2="Object3DHelper",qa=`${w2}@${y2}`,C2=()=>{console.error(`${qa} is disposed`)},I2=()=>{console.warn(`${qa} is disabled`)},P2=()=>{console.error(`${qa} is disabled`)};class E2{constructor(t){f(this,"controllers",{});f(this,"state",{visible:!0,enabled:!0,disposed:!1});f(this,"hooks",new Cn);f(this,"eventListener",{});t&&this.addControllers(t),this.setState(this.state)}show(t){return W(this,null,function*(){this.setState({visible:!0},t)})}hide(t){return W(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 C2();if(!this.state.enabled&&t.enabled!==!0&&t.disposed!==!0)return P2();const i=G({},this.state);this.state=G(G({},this.state),t),t.disposed!==void 0&&t.disposed!==i.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:i})}addControllers(t){this.controllers=G(G({},this.controllers),t),this.setState(this.state)}getCurrentState(){return this.state}handleEnable(t,e=!0){t?(this.everyControllerDo(i=>{i.enable()}),this.hooks.emit("enable",{userAction:e})):(this.everyControllerDo(i=>{i.disable()}),this.hooks.emit("disable",{userAction:e})),this.state.enabled=t}handleVisible(t,e=!0){t?(this.everyControllerDo(i=>{i.show()}),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:e}))):(this.everyControllerDo(i=>{i.hide()}),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:e}))),this.state.visible=t}everyControllerDo(t){Object.values(this.controllers).forEach(e=>{e&&t(e)})}handleDispose(){var t,e;Object.values(this.controllers).forEach(i=>{i==null||i.dispose()});for(const i in this.controllers){if(!i)continue;const s=i;(e=(t=this.eventListener)[s])==null||e.call(t)}}actionIfStateIsEnabled(t,e){if(this.state.enabled)return t();e!=null&&e.warnLog&&I2()}}function Hr(n){return n*Math.PI/180}class M2 extends hs{constructor(...e){var c,d,h;super(...e);f(this,"name","RotateController");f(this,"startInfo");f(this,"removeListener");const i=this.helperObject3D;this.hoverListener([(c=i.xCircle)==null?void 0:c.circle,(d=i.yCircle)==null?void 0:d.circle,(h=i.zCircle)==null?void 0:h.circle].filter(Boolean));const s=this.dragStart.bind(this),o=this.dragging.bind(this),r=this.dragEnd.bind(this),a=this.show.bind(this),l=this.hide.bind(this);this.domEvents.addEventListener(this.helperObject3D,"mousedown",s),document.addEventListener("mousemove",o),document.addEventListener("mouseup",r),this.hooks.on("moveStart",l),this.hooks.on("moveEnd",a),this.hooks.on("moveByMouseEnable",l),this.hooks.on("moveByMouseDisable",a),this.removeListener=()=>{this.domEvents.removeEventListener(this.helperObject3D,"mousedown",s),document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",r),this.hooks.off("moveStart",l),this.hooks.off("moveEnd",a),this.hooks.off("moveByMouseEnable",l),this.hooks.off("moveByMouseDisable",a)}}get rotateCenter(){return this.helperObject3D.position.clone()}initialHelperQuaternion(){this.helperObject3D.applyHelperQuaternion(this.originObject3D.quaternion)}setRotateAngle(e){const{x:i=0,y:s=0,z:o=0}=e,r=new E.Euler(Hr(i),Hr(s),Hr(o)),a=new E.Quaternion().setFromEuler(r);if(this.hooks.emit("wantToRotate",a))return;const{originObject3D:c,rotateCenter:d}=this;of(c,a,d),this.hooks.emit("setObjectRotate",a,d),this.hooks.emit("rotate",a),this.render()}dispose(){this.removeListener(),super.dispose()}onApplyOriginObjectRotate(e){this.isDragging||super.onApplyOriginObjectRotate(e)}onApplyOriginObjectScale(e){}dragStart(e){if(this.isDragging)return;const i=e==null?void 0:e.intersect;if(!i)return this.dragEnd();const s=(i==null?void 0:i.object).direction;if(!s)return this.dragEnd();const o=i.point,r=this.getAngleHelper(s);this.setTipsAngle(0);const a=o.clone();a.y+=.2,this.setTipsPosition(a);const l=(()=>{if(s==="x")return new E.Vector3(1,0,0).applyQuaternion(this.originObject3D.quaternion);if(s==="y")return new E.Vector3(0,1,0).applyQuaternion(this.originObject3D.quaternion);if(s==="z")return new E.Vector3(0,0,1).applyQuaternion(this.originObject3D.quaternion)})(),c=new E.Plane().setFromNormalAndCoplanarPoint(l,o),h=c.projectPoint(o.clone(),new E.Vector3).clone().sub(this.rotateCenter),u=h.angleTo(r.baseAxes.clone().applyQuaternion(this.originObject3D.quaternion));this.setAngleHelperStart(s,u),this.setAngleHelperLength(s,0),this.startInfo={direction:s,startVector:h,plane:c,angleHelper:r,angle:0,objectQuaternion:this.originObject3D.quaternion.clone()},this.helperObject3D.showDraggingHelper([s]),this.hooks.emit("rotateStart"),this.isDragging=!0}dragging(e){if(!this.isDragging)return;const i=Ja(this.camera,e,this.container);return i?(this.rotate(i),!1):this.dragEnd()}rotate(e){if(!this.startInfo)return this.dragEnd();const{startVector:i,plane:s,angleHelper:o,direction:r,objectQuaternion:a}=this.startInfo,{originObject3D:l}=this,c=e.ray.intersectPlane(s,new E.Vector3);if(!c)return;const d=this.rotateCenter.clone(),u=s.projectPoint(c.clone(),new E.Vector3).clone().sub(d);if(i.angleTo(u)===0)return;const m=new E.Quaternion().setFromUnitVectors(i.clone().normalize(),u.clone().normalize()),A=l.quaternion.clone().premultiply(m);if(this.hooks.emit("wantToRotate",A))return;const v=new E.Euler().setFromQuaternion(new E.Quaternion().setFromUnitVectors(i.clone().normalize().applyQuaternion(a.clone().inverse()),u.clone().normalize().applyQuaternion(a.clone().inverse())),`${r.toUpperCase()}${"XZY".replace(r.toUpperCase(),"")}`)[r]*o.angleDirection;if(this.startInfo.angle+=v,this.setAngleHelperLength(r,this.startInfo.angle),this.setTipsAngle(Zh(this.startInfo.angle)),d){const y=new E.Vector3().subVectors(l.position,d).applyQuaternion(m).add(d);l.position.copy(y)}l.applyQuaternion(m),this.hooks.emit("applyObjectRotate",{quaternion:m,origin:d}),this.hooks.emit("rotate",l.quaternion),this.startInfo.startVector=u}dragEnd(){this.isDragging&&(this.hooks.emit("setObjectRotate",this.originObject3D.quaternion,this.rotateCenter),this.startInfo=void 0,this.isDragging=!1,this.helperObject3D.show(),this.hooks.emit("rotateEnd"))}getAngleHelper(e){var i,s,o;switch(e){case"x":return(i=this.helperObject3D.xCircle)==null?void 0:i.angleSector;case"y":return(s=this.helperObject3D.yCircle)==null?void 0:s.angleSector;case"z":return(o=this.helperObject3D.zCircle)==null?void 0:o.angleSector}}setAngleHelperStart(e,i){const s=this.getAngleHelper(e);if(!s){console.warn("angleHelper is undefined");return}if(s instanceof E.Mesh&&s.geometry instanceof E.CircleGeometry){const{radius:o,segments:r,thetaLength:a}=s.geometry.parameters;s.geometry=new E.CircleGeometry(o,r,i,a)}else console.warn("only support THREE.CircleGeometry")}setAngleHelperLength(e,i){const o=i>=0?Math.max(i,.001):Math.min(i,-.001),r=this.getAngleHelper(e);if(r instanceof E.Mesh&&r.geometry instanceof E.CircleGeometry){const{radius:a,thetaStart:l}=r.geometry.parameters,c=Math.ceil(Math.abs(o)*(40/(2*Math.PI)));r.geometry=new E.CircleGeometry(a,c,l,o)}else console.warn("only support THREE.CircleGeometry")}setTipsAngle(e){var s;const i=(s=this.helperObject3D.angleTips)==null?void 0:s.element;i&&(i.innerText=`${e.toFixed(0)}°`)}setTipsPosition(e){const i=this.helperObject3D.angleTips;if(!i)return;const s=e.project(this.camera),{x:o,y:r,z:a}=s;if(a>1)return;const l=(o+1)/2*100+"%",c=(-r+1)/2*100+"%";i.setLeftTop(l,c)}}class k2 extends hs{constructor(...e){super(...e);f(this,"startInfo");f(this,"name","RectangleScaleController")}enable(){this.helperObject3D.enable(),super.enable()}disable(){this.helperObject3D.disable(),super.disable()}show(){this.helperObject3D.show(),super.show()}hide(){this.helperObject3D.hide(),super.hide()}onApplyOriginObjectPosition(e){this.isDragging||super.onApplyOriginObjectPosition(e)}onApplyOriginObjectScale(e){this.helperObject3D.applyHelperScaleMatrix4(e.matrix,e.origin)}getDragPlane(){const e=new E.Plane,i=this.helperObject3D.cornerPositions;if(i.length!==0)return i.length<3?e.setFromNormalAndCoplanarPoint(this.originObject3D.getWorldDirection(new R.Vector3),i[0]):e.setFromCoplanarPoints(i[0],i[1],i[2]),e}dragStart(e,i){var o,r;(r=(o=this.helperObject3D).updatePoints)==null||r.call(o);const s=this.getDragPlane();if(!s)return this.dragEnd();this.startInfo={startPoint:{position:i.position.clone(),direction:i.direction},plane:s},this.hooks.emit("scaleStart"),this.render(),this.isDragging=!0}dragging(e){if(!this.isDragging)return;const i=Ja(this.camera,e,this.container);if(!i)return this.dragEnd();this.scale(i)}scale(e){var X,Y;if(!this.startInfo)return;const i=this.originObject3D,{startPoint:s,plane:o}=this.startInfo,r=this.helperObject3D.cornerPositions;if(r.length<4)return this.dragEnd();const a=e.ray.intersectPlane(o,new R.Vector3);if(!a||l2(a,this.camera.position))return;const l=new R.Vector3().addVectors(r[0],r[2]).divideScalar(2),{position:c,direction:d}=s,h=new R.Vector3().subVectors(r[1],r[0]),u=new R.Vector3().subVectors(r[3],r[0]),m=N=>{const H=new R.Vector3(0,0,0);if(!this.startInfo)return H;const _=(N==="ew"?h:u).clone(),Q=c.clone().projectOnVector(_),F=a.clone().projectOnVector(_),J=l.clone().projectOnVector(_);if(F.equals(Q))return H;if(N==="ns"&&typeof this.startInfo.dragPointInCenterBottom!="boolean"){const ce=new R.Vector3().subVectors(F,J),se=ce.x<0&&_.x>=0,we=ce.y<0&&_.y>=0,Ce=ce.z<0&&_.z>=0;this.startInfo.dragPointInCenterBottom=se||we||Ce}if(N==="ew"&&typeof this.startInfo.dragPointInCenterLeft!="boolean"){const ce=new R.Vector3().subVectors(F,J),se=ce.x<0&&_.x>=0,we=ce.y<0&&_.y>=0,Ce=ce.z<0&&_.z>=0;this.startInfo.dragPointInCenterLeft=se||we||Ce}const Z=new R.Vector3().subVectors(F,Q),ee=Z.length();return ee>.3?(console.warn("offset.length() > 0.3, skipped",ee),H):Z},A=m("ew"),p=m("ns"),g=()=>{const N=A;this.helperObject3D.cornerPositions.forEach((H,_)=>{var Q;(Q=this.startInfo)!=null&&Q.dragPointInCenterLeft?(_===0||_===3)&&H.add(N):(_===1||_===2)&&H.add(N)})},v=()=>{const N=p;this.helperObject3D.cornerPositions.forEach((H,_)=>{var Q;(Q=this.startInfo)!=null&&Q.dragPointInCenterBottom?(_===0||_===1)&&H.add(N):(_===2||_===3)&&H.add(N)})};switch(d){case"ew":g();break;case"ns":v();break;case"nesw":case"nwse":g(),v()}const y=new R.Vector3().subVectors(r[1],r[0]).length()/h.length(),I=new R.Vector3().subVectors(r[3],r[0]).length()/u.length(),M=new R.Vector3(y,I,1),B=new E.Matrix4().scale(M);i.isCSS3DObjectPlus?i.applyScaleMatrix4(B):i.scale.applyMatrix4(B),s.position.copy(a);const P=new R.Vector3().addVectors(r[0],r[2]).divideScalar(2),V=new R.Vector3().subVectors(P,l),L=new E.Matrix4().setPosition(V);i.applyMatrix4(L),(X=this.helperObject3D.css3DInstance)==null||X.css3DObject.applyMatrix4(L),(Y=this.helperObject3D.plane)==null||Y.applyMatrix4(L),this.hooks.emit("applyObjectScale",{matrix:B}),this.hooks.emit("applyObjectPosition",{matrix:L}),this.render()}dragEnd(){this.isDragging&&(this.startInfo=void 0,this.isDragging=!1,this.hooks.emit("scaleEnd"),this.render())}}class x2 extends k2{constructor(...e){super(...e);f(this,"name","CSS3DScaleController");this.addHTMLEventListener()}addHTMLEventListener(){this.helperObject3D.points.forEach(e=>{if(!e)return;const i=e.point,s=a=>this.dragStart(a,e),o=this.dragging.bind(this),r=this.dragEnd.bind(this);i.addEventListener("dragstart",s),i.addEventListener("drag",o),i.addEventListener("dragend",r)})}}class D2 extends hs{constructor(...e){super(...e);f(this,"name","BoundingBoxController")}}class S2 extends rf{constructor(t){super(t)}}class T2 extends hs{constructor(...e){super(...e);f(this,"name","ScaleController")}setScale(e){var l,c,d;let i=1,s=1,o=1;typeof e=="number"?(i=e,s=e,o=e):typeof e=="object"&&(i=(l=e.x)!=null?l:1,s=(c=e.y)!=null?c:1,o=(d=e.z)!=null?d:1);const r=new E.Vector3(i,s,o);this.hooks.emit("wantToScale",r)||(this.originObject3D.scale.copy(r),this.hooks.emit("setObjectScale",r),this.hooks.emit("scale",r),this.render())}}const ha="Object3DHelperPlugin",zo=ha,L2=()=>{console.error(`${zo} is disposed`)},j2=()=>{console.warn(`${zo} is disabled`)},z2=()=>{console.error(`${zo} is disabled`)};class lf extends cs{constructor(e){super(e);f(this,"name",ha);f(this,"state",{visible:!0,enabled:!0,disposed:!1});f(this,"objectHelperMap",new Map);f(this,"css3DObjectParentMap",new Map);f(this,"css3DRender");this.five=e,this.css3DRender=new un(this.five.scene),console.warn("Object3DHelper: 使用此插件,需要在初始化five时,设置five参数: { backgroundAlpha: 0, backgroundColor: 0x000000 }"),Object.assign(window,{[`__${ha.toUpperCase()}_DEBUG__`]:this})}show(e){return W(this,null,function*(){this.setState({visible:!0},e)})}hide(e){return W(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,i){if(this.state.disposed)return L2();if(!this.state.enabled&&e.enabled!==!0&&e.disposed!==!0)return z2();const s=G({},this.state);this.state=G(G({},this.state),e),e.disposed!==void 0&&e.disposed!==s.disposed&&e.disposed&&this.handleDispose(),e.visible!==void 0&&e.visible!==s.visible&&this.handleVisible(e.visible),e.enabled!==void 0&&e.enabled!==s.enabled&&this.handleEnable(e.enabled),this.hooks.emit("stateChange",{state:this.state,prevState:s})}getObject3DHelper(e){return this.objectHelperMap.get(e)}addObject3DHelper(e,i={}){var m;if(!e)return console.error("Object3D is undefined");if(this.objectHelperMap.has(e)){console.warn(`Object3DHelperPlugin: object3D ${e.name} is already has helper`);return}const s=new E2,o=[],r=(m=this.five.getElement())==null?void 0:m.parentElement,a=this.five.camera,{moveHelper:l=!0,rotateHelper:c=!0,scaleHelper:d=!0,boundingBoxHelper:h=!1}=i,u=new je.Subscribe;if(l){const A=new c2(e),p=this.getConfig(i.moveHelper),g=new qn(this.five,b2,e,A,p,u);s.addControllers({moveController:g.helperController}),o.push(()=>g.dispose())}if(c){const A=this.getConfig(i.rotateHelper),p=new u2(e,G({container:r},A)),g=new qn(this.five,M2,e,p,A,u);s.addControllers({rotateController:g.helperController}),o.push(()=>g.dispose())}if(h){const A=new v2(e),p=new qn(this.five,D2,e,A,void 0,u);s.addControllers({boundingBoxController:p.helperController})}if(d)if(e.isCSS3DObjectPlus&&r){const A=new A2(e,r,a,this.five.scene),p=new qn(this.five,x2,e,A,void 0,u);s.addControllers({scaleController:p.helperController}),o.push(()=>p.dispose()),vh(this.five).then(()=>{var g,v;if(e.isCSS3DObjectPlus){const y=e;if(!y||y.mode!=="front")return;const I=(g=this.css3DRender.behindModeCSS3DRenderer.wrapper)!=null?g:bh(this.five);I&&(this.css3DObjectParentMap.set(y,y.parent),y.removeFromParent(),this.css3DRender.behindModeCSS3DRenderer.setWrapper(I),(v=this.css3DRender.getBehindCSS3DObjectGroup())==null||v.add(y),this.css3DRender.render(this.five.camera))}})}else{const A=new S2(e),p=new qn(this.five,T2,e,A,void 0,u);s.addControllers({scaleController:p.helperController}),o.push(()=>p.dispose())}return this.objectHelperMap.set(e,{helper:s,disposers:o}),s.controllers}removeObject3DHelper(e){if(!this.objectHelperMap.has(e))return;const{helper:i,disposers:s}=this.objectHelperMap.get(e);if(i){if(e.isCSS3DObjectPlus){const o=e,r=this.css3DObjectParentMap.get(o);r&&r.add(o),this.css3DRender.render(this.five.camera)}this.objectHelperMap.delete(e),i.dispose(),s==null||s.forEach(o=>o==null?void 0:o())}}handleEnable(e,i=!0){e?(this.everyHelperDo(s=>s.enable()),this.hooks.emit("enable",{userAction:i})):(this.everyHelperDo(s=>s.disable()),this.hooks.emit("disable",{userAction:i})),this.state.enabled=e}handleVisible(e,i=!0){e?(this.everyHelperDo(s=>s.show()),this.actionIfStateIsEnabled(()=>this.hooks.emit("show",{userAction:i}))):(this.everyHelperDo(s=>s.hide()),this.actionIfStateIsEnabled(()=>this.hooks.emit("hide",{userAction:i}))),this.state.visible=e}handleDispose(){this.objectHelperMap.forEach(({helper:e,disposers:i})=>{e.dispose(),i==null||i.forEach(s=>s==null?void 0:s())})}everyHelperDo(e){this.objectHelperMap.forEach(({helper:i,disposers:s})=>{i&&e(i)})}actionIfStateIsEnabled(e,i){if(this.state.enabled)return e();i!=null&&i.warnLog&&j2()}getConfig(e){if(e&&typeof e!="boolean"&&e.enable)return e}}const O2=n=>new lf(n),B2=`
668
670
  varying vec2 vUv;
669
671
  void main() {
670
672
  vUv = uv;
671
673
  vec4 mvPosition = modelViewMatrix * vec4(position, 1);
672
674
  gl_Position = projectionMatrix * mvPosition;
673
675
  }
674
- `,B2=`
676
+ `,V2=`
675
677
  uniform sampler2D map;
676
678
  uniform vec4 size;
677
679
  varying vec2 vUv;
@@ -684,13 +686,13 @@ void main() {
684
686
  float match = (1.0 - step(0.5, abs(uv.x - 0.5))) * (1.0 - step(0.5, abs(uv.y - 0.5))) * (transX < transY ? transX : transY);
685
687
  gl_FragColor = vec4(texture2D(map, uv).xyz, match);
686
688
  }
687
- `;function V2(n){const t=Math.PI*2;let e=-Math.atan2(n.x,-n.z);e=(e%t+t)%t;const i=-Math.asin(n.y/1);return{longitude:e,latitude:i}}class ch{constructor(t,e){f(this,"_id");f(this,"url");f(this,"five");f(this,"panoIndex");f(this,"observer");f(this,"origin");f(this,"video");f(this,"videoMesh");f(this,"_enabled",!0);f(this,"_disposed",!1);f(this,"videoDataLoaded",!1);f(this,"hasVideoEverPlayed",!1);f(this,"renderFiveDisposer");f(this,"uv2Position",(t,e)=>{var m;const s=Math.PI,o=Math.PI*2,r=t,a=1-e,l=new R.Vector3(-1*Math.cos(o*r)*Math.sin(s*a),1*Math.cos(s*a),1*Math.sin(o*r)*Math.sin(s*a));l.setX(-l.x);const c=(m=this.five.work)==null?void 0:m.observers[this.panoIndex];if(!c)return this.logWarning(`点位 ${this.panoIndex} 不存在,请检查 Five 数据是否正常。`);const d=c.position.clone(),h=c.quaternion.clone(),u=l.clone();return u.applyAxisAngle(new R.Vector3(0,1,0),Math.PI/2),u.applyQuaternion(h),u.add(d),u});f(this,"onFiveDataLoaded",()=>{var l;const t=(l=this.five.work)==null?void 0:l.observers[this.panoIndex];if(!t)return this.logWarning(`点位 ${this.panoIndex} 不存在,请检查 Five 数据是否正常。`);this.observer=t;const{x:e,y:i,z:s,w:o}=t.quaternion,r=new R.Quaternion(e,i,s,o),a=t.position;this.videoMesh.position.fromArray([a.x,a.y,a.z]),this.videoMesh.quaternion.set(0,0,0,1),this.videoMesh.rotateOnAxis(new R.Vector3(0,1,0),Math.PI/2),this.videoMesh.applyQuaternion(r)});f(this,"onFiveWantsMoveToPano",t=>{t===this.panoIndex&&(this.hasVideoEverPlayed||this.video.play().catch(()=>{}))});f(this,"onFivePanoArrived",t=>{if(this.disposed)return this.logWarning("实例已被销毁");this.enabled&&this.panoIndex===t&&this.mount()});f(this,"onFivePanoWillArrive",t=>{if(t!==this.panoIndex)return this.unmount();this.panoIndex!==t&&this.unmount()});f(this,"onFiveModeChange",t=>{t!=="Panorama"&&this.hide()});f(this,"onFiveInitAnimationEnded",()=>{const t=this.five.getCurrentState();t.mode==="Panorama"&&t.panoIndex===this.panoIndex&&this.mount()});f(this,"onFiveWantsTapGesture",t=>{if(!this.five.scene.children.includes(this.videoMesh))return;if(this.disposed)return this.logWarning("实例已被销毁");if(!this.enabled)return this.logWarning("实例已被禁用");const[e]=t.intersectObject(this.videoMesh);if(!e)return;if(this.checkIntersectionInBounding(this.origin,e))return this.video.muted=!this.video.muted,!1});f(this,"onVideoDataLoaded",()=>{this.videoDataLoaded=!0,this.video.paused===!1&&this.video.src!==""&&this.onVideoPlayingAndLoaded()});f(this,"onVideoPlaying",()=>{this.hasVideoEverPlayed=!0,this.video.src!==""&&this.videoDataLoaded&&this.onVideoPlayingAndLoaded()});f(this,"onVideoPlayingAndLoaded",()=>{if(!this.videoDataLoaded)return this.logWarning("视频数据未加载");if(this.video.paused===!0)return this.logWarning("视频已暂停");this.video.addEventListener("timeupdate",()=>{this.video.src!==""&&this.panoIndex===this.five.getCurrentState().panoIndex&&this.five.getCurrentState().mode==="Panorama"&&(this.renderFiveDisposer||(this.renderFiveDisposer=In(()=>{this.five.needsRender=!0},30)),this.five.scene.add(this.videoMesh))},{once:!0})});f(this,"onVideoPaused",()=>{var t;(t=this.renderFiveDisposer)==null||t.call(this),this.renderFiveDisposer=void 0});var l,c;this.five=t,this.panoIndex=e.panoIndex,this._id=e.renderID,this.url=e.url,this.origin=e.origin.slice(),this._enabled=(c=(l=e.initialState)==null?void 0:l.enabled)!=null?c:!0;const i=document.createElement("video");i.crossOrigin="anonymous",i.autoplay=!1,i.muted=!0,i.loop=!0,i.playsInline=!0,this.video=i;const s=new R.VideoTexture(this.video);s.minFilter=R.LinearFilter,s.magFilter=R.LinearFilter;const o=new R.ShaderMaterial({vertexShader:O2,fragmentShader:B2,uniforms:{map:{value:s},size:{value:new R.Vector4(this.origin[0],1-this.origin[1]-this.origin[3],this.origin[2],this.origin[3])}},depthTest:!0,transparent:!0}),r=new R.SphereBufferGeometry(1,64,64);r.scale(-1,1,1);const a=new R.Mesh(r,o);a.name="pano-video",this.videoMesh=a,this.five.work&&this.onFiveDataLoaded(),this.enabled&&this.addEventListeners(),this.mountIfNeeded()}get renderID(){return this._id}get disposed(){return this._disposed}get enabled(){return this._enabled}dispose(){this.disposed||(this.disable(),this._disposed=!0)}enable(){this.disposed||this.enabled||(this._enabled=!0,this.addEventListeners(),this.mountIfNeeded())}disable(){this.disposed||this.enabled&&(this._enabled=!1,this.removeEventListeners(),this.unmount())}lookAtVideo(){if(!this.observer)return;const t=this.getUVCenter();if(!t)return;const e=this.uv2Position(t[0],t[1]);if(!e)return;const i=new R.Vector3().subVectors(e,this.observer.position).normalize(),{longitude:s,latitude:o}=V2(i);this.five.setState({panoIndex:this.panoIndex,longitude:s,latitude:o}),this.onFiveWantsMoveToPano(this.panoIndex)}getUVCenter(){if(!this.origin)return;const t=this.origin[0]+this.origin[2]/2,e=this.origin[1]+this.origin[3]/2;return[t,e]}addEventListeners(){this.five.on("loaded",this.onFiveDataLoaded),this.five.on("modeChange",this.onFiveModeChange),this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive),this.five.on("wantsMoveToPano",this.onFiveWantsMoveToPano),this.five.on("wantsTapGesture",this.onFiveWantsTapGesture),this.five.on("initAnimationEnded",this.onFiveInitAnimationEnded),this.video.addEventListener("canplaythrough",this.onVideoDataLoaded),this.video.addEventListener("playing",this.onVideoPlaying),this.video.addEventListener("pause",this.onVideoPaused)}removeEventListeners(){this.five.off("loaded",this.onFiveDataLoaded),this.five.off("modeChange",this.onFiveModeChange),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("wantsMoveToPano",this.onFiveWantsMoveToPano),this.five.off("wantsTapGesture",this.onFiveWantsTapGesture),this.five.off("initAnimationEnded",this.onFiveInitAnimationEnded),this.video.removeEventListener("canplaythrough",this.onVideoDataLoaded),this.video.removeEventListener("playing",this.onVideoPlaying),this.video.removeEventListener("pause",this.onVideoPaused)}mountIfNeeded(){const t=this.five.getCurrentState();t.mode==="Panorama"&&t.panoIndex===this.panoIndex&&this.enabled&&this.mount()}mount(){if(this.disposed)return this.logWarning("插件已经销毁,无法挂载。");if(this.url==="")return this.logWarning("视频资源不存在。");this.video.src!==this.url&&(this.video.src=this.url),this.video.paused&&this.video.play().catch(t=>{this.logWarning(t instanceof Error?t.message:"视频播放失败。"),this.five.once("gesture",()=>{this.video.play().catch(e=>{this.logWarning(e instanceof Error?e.message:"自动播放视频失败。")})})})}unmount(){this.video.pause(),this.video.src!==""&&(this.video.src=""),this.five.scene.remove(this.videoMesh)}hide(){this.video.pause(),this.five.scene.remove(this.videoMesh)}logWarning(t){console.warn("⛔ ==> [VideoMeshController]:",t)}checkIntersectionInBounding(t,e){if(!e.uv)return!1;const[i,s]=e.uv.toArray(),[o,r,a,l]=t,c=1-r-l,d=o+a,h=c+l;return i>=o&&i<=d&&s>=c&&s<=h}}class R2 extends cs{constructor(e){super(e);f(this,"enabled",!0);f(this,"controllerMap",new Map);f(this,"_disposed",!1);this.five=e}get state(){return{enabled:this.enabled}}get disposed(){return this._disposed}load(e,i){var s;if(this.disposed)return this.logWarning("插件已被销毁");typeof((s=i==null?void 0:i.initialState)==null?void 0:s.enabled)!="undefined"&&i.initialState.enabled!==this.enabled&&(i.initialState.enabled?this.enable():this.disable()),e.list.forEach(o=>{const r=o.pano_index,a=o.render_id;o.video_list.forEach(l=>{this.controllerMap.set(l.render_id,new ch(this.five,ve(G({},l),{panoIndex:r,renderID:a,initialState:{enabled:this.enabled}})))})})}enable(e){var s;if(this.disposed)return this.logWarning("插件已被销毁");if(this.enabled)return;this.enabled=!0,Array.from(this.controllerMap.values()).forEach(o=>o.enable());const i=(s=e==null?void 0:e.userAction)!=null?s:!0;this.hooks.emit("enable",{userAction:i})}disable(e){var s;if(this.disposed)return this.logWarning("插件已被销毁");if(!this.enabled)return;this.enabled=!1,Array.from(this.controllerMap.values()).forEach(o=>o.disable());const i=(s=e==null?void 0:e.userAction)!=null?s:!0;this.hooks.emit("disable",{userAction:i})}lookAtVideoItemByRenderID(e){if(this.disposed)return this.logWarning("插件已被销毁");const i=this.controllerMap.get(e);if(!i)return this.logWarning(`ID 为 ${e} 的点位视频不存在`);i.lookAtVideo()}add(e,i){if(this.disposed)return this.logWarning("插件已被销毁");i.forEach(s=>{if(this.controllerMap.get(s.render_id))return this.logWarning(`ID 为 ${s.render_id} 的点位视频已存在`);const o=s.render_id;this.controllerMap.set(s.render_id,new ch(this.five,ve(G({},s),{panoIndex:e,renderID:o,initialState:{enabled:this.enabled}})))})}removeByRenderID(e){if(this.disposed)return this.logWarning("插件已被销毁");const i=this.controllerMap.get(e);if(!i)return this.logWarning(`ID 为 ${e} 的点位视频不存在`);i.dispose(),this.controllerMap.delete(e)}clear(){if(this.disposed)return this.logWarning("插件已被销毁");Array.from(this.controllerMap.values()).forEach(e=>e.dispose()),this.controllerMap.clear()}dispose(){if(this.disposed)return this.logWarning("插件已被销毁");this._disposed=!0,Array.from(this.controllerMap.values()).forEach(e=>e.dispose()),this.controllerMap.clear()}logWarning(e){console.warn("⛔ ==> [PanoVideoPluginController]:",e)}}const Q2=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),G2=n=>new R2(n);function cf(n){const t=new Map;return n.forEach(e=>e.pipes.forEach(i=>t.set(i.id,i))),Array.from(t.values())}function N2(n){const t=n.target.map(({startLibraryID:e,endLibraryID:i})=>{const s=n.data.pipelines.find(o=>o.startLibraryID===e&&o.endLibraryID===i);return s||console.warn(`Cannot find pipeline with startLibraryID ${e} and endLibraryID ${i}`),s}).filter(ni);return cf(t)}function H2(n){if(n.quality===0)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/1.png";if(n.quality===1)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/2.png";if(n.quality===2)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/3.png";if(n.quality===3)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/4.png";if(n.quality===4)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/5.png";if(n.isHot)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/6.png"}function _2(n,t){const e=n.ConnectsDataset.map(s=>{const o=s.data,r=s.start,a=s.end,l={isHot:s.waterType===5,quality:s.waterType},c=o.map(d=>{const h=n.LinesDataset.find(p=>p.id===d);if(!h)return null;const u=h.data,m=t!=null&&t.getPipeRadius?t.getPipeRadius(h):1.6/100,A=t!=null&&t.getPipeUrl?t.getPipeUrl(l):H2(l);return{id:h.id,radius:m,water:l,path:u,texture:A}}).filter(ni);return{startLibraryID:r,endLibraryID:a,pipes:c}});return{pipes:cf(e),pipelines:e}}function F2(n,t){const e=1-n;return e*e*t}function W2(n,t){return 2*(1-n)*n*t}function Y2(n,t){return n*n*t}function _r(n,t,e,i){return F2(n,t)+W2(n,e)+Y2(n,i)}function U2(n,t){const e=1-n;return e*e*e*t}function X2(n,t){const e=1-n;return 3*e*e*n*t}function Z2(n,t){return 3*(1-n)*n*n*t}function J2(n,t){return n*n*n*t}function Fr(n,t,e,i,s){return U2(n,t)+X2(n,e)+Z2(n,i)+J2(n,s)}function ua(n,t){const e=t.length-1;if(e<1)throw new Error("length of points must greater than 2");if(e===2)return new E.Vector3(_r(n,t[0].x,t[1].x,t[2].x),_r(n,t[0].y,t[1].y,t[2].y),_r(n,t[0].z,t[1].z,t[2].z));if(e===3)return new E.Vector3(Fr(n,t[0].x,t[1].x,t[2].x,t[3].x),Fr(n,t[0].y,t[1].y,t[2].y,t[3].y),Fr(n,t[0].z,t[1].z,t[2].z,t[3].z));if(e===1){const[s,o]=t;return s.clone().add(o.clone().sub(s).multiplyScalar(n))}const i=[];return t.reduce((s,o)=>(i.push(ua(n,[s,o])),o)),ua(n,i)}class q2 extends E.Curve{constructor(e=[]){super();f(this,"type");f(this,"controlPoints");this.type="CustomBezierCurve3",this.controlPoints=e}getPoint(e,i=new E.Vector3){const s=i,o=ua(e,this.controlPoints);return s.copy(o),s}copy(e){return super.copy(e),this.controlPoints=e.controlPoints.map(i=>i.clone()),this}toJSON(){const e=super.toJSON(),i=this.controlPoints.map(o=>o.toArray());return Object.assign(e,{controlPoints:i})}fromJSON(e){return super.fromJSON(e),this.controlPoints=e.controlPoints.map(i=>new E.Vector3().fromArray(i)),this}}const K2=`
689
+ `;function R2(n){const t=Math.PI*2;let e=-Math.atan2(n.x,-n.z);e=(e%t+t)%t;const i=-Math.asin(n.y/1);return{longitude:e,latitude:i}}class ch{constructor(t,e){f(this,"_id");f(this,"url");f(this,"five");f(this,"panoIndex");f(this,"observer");f(this,"origin");f(this,"video");f(this,"videoMesh");f(this,"_enabled",!0);f(this,"_disposed",!1);f(this,"videoDataLoaded",!1);f(this,"hasVideoEverPlayed",!1);f(this,"renderFiveDisposer");f(this,"uv2Position",(t,e)=>{var m;const s=Math.PI,o=Math.PI*2,r=t,a=1-e,l=new R.Vector3(-1*Math.cos(o*r)*Math.sin(s*a),1*Math.cos(s*a),1*Math.sin(o*r)*Math.sin(s*a));l.setX(-l.x);const c=(m=this.five.work)==null?void 0:m.observers[this.panoIndex];if(!c)return this.logWarning(`点位 ${this.panoIndex} 不存在,请检查 Five 数据是否正常。`);const d=c.position.clone(),h=c.quaternion.clone(),u=l.clone();return u.applyAxisAngle(new R.Vector3(0,1,0),Math.PI/2),u.applyQuaternion(h),u.add(d),u});f(this,"onFiveDataLoaded",()=>{var l;const t=(l=this.five.work)==null?void 0:l.observers[this.panoIndex];if(!t)return this.logWarning(`点位 ${this.panoIndex} 不存在,请检查 Five 数据是否正常。`);this.observer=t;const{x:e,y:i,z:s,w:o}=t.quaternion,r=new R.Quaternion(e,i,s,o),a=t.position;this.videoMesh.position.fromArray([a.x,a.y,a.z]),this.videoMesh.quaternion.set(0,0,0,1),this.videoMesh.rotateOnAxis(new R.Vector3(0,1,0),Math.PI/2),this.videoMesh.applyQuaternion(r)});f(this,"onFiveWantsMoveToPano",t=>{t===this.panoIndex&&(this.hasVideoEverPlayed||this.video.play().catch(()=>{}))});f(this,"onFivePanoArrived",t=>{if(this.disposed)return this.logWarning("实例已被销毁");this.enabled&&this.panoIndex===t&&this.mount()});f(this,"onFivePanoWillArrive",t=>{if(t!==this.panoIndex)return this.unmount();this.panoIndex!==t&&this.unmount()});f(this,"onFiveModeChange",t=>{t!=="Panorama"&&this.hide()});f(this,"onFiveInitAnimationEnded",()=>{const t=this.five.getCurrentState();t.mode==="Panorama"&&t.panoIndex===this.panoIndex&&this.mount()});f(this,"onFiveWantsTapGesture",t=>{if(!this.five.scene.children.includes(this.videoMesh))return;if(this.disposed)return this.logWarning("实例已被销毁");if(!this.enabled)return this.logWarning("实例已被禁用");const[e]=t.intersectObject(this.videoMesh);if(!e)return;if(this.checkIntersectionInBounding(this.origin,e))return this.video.muted=!this.video.muted,!1});f(this,"onVideoDataLoaded",()=>{this.videoDataLoaded=!0,this.video.paused===!1&&this.video.src!==""&&this.onVideoPlayingAndLoaded()});f(this,"onVideoPlaying",()=>{this.hasVideoEverPlayed=!0,this.video.src!==""&&this.videoDataLoaded&&this.onVideoPlayingAndLoaded()});f(this,"onVideoPlayingAndLoaded",()=>{if(!this.videoDataLoaded)return this.logWarning("视频数据未加载");if(this.video.paused===!0)return this.logWarning("视频已暂停");this.video.addEventListener("timeupdate",()=>{this.video.src!==""&&this.panoIndex===this.five.getCurrentState().panoIndex&&this.five.getCurrentState().mode==="Panorama"&&(this.renderFiveDisposer||(this.renderFiveDisposer=In(()=>{this.five.needsRender=!0},30)),this.five.scene.add(this.videoMesh))},{once:!0})});f(this,"onVideoPaused",()=>{var t;(t=this.renderFiveDisposer)==null||t.call(this),this.renderFiveDisposer=void 0});var l,c;this.five=t,this.panoIndex=e.panoIndex,this._id=e.renderID,this.url=e.url,this.origin=e.origin.slice(),this._enabled=(c=(l=e.initialState)==null?void 0:l.enabled)!=null?c:!0;const i=document.createElement("video");i.crossOrigin="anonymous",i.autoplay=!1,i.muted=!0,i.loop=!0,i.playsInline=!0,this.video=i;const s=new R.VideoTexture(this.video);s.minFilter=R.LinearFilter,s.magFilter=R.LinearFilter;const o=new R.ShaderMaterial({vertexShader:B2,fragmentShader:V2,uniforms:{map:{value:s},size:{value:new R.Vector4(this.origin[0],1-this.origin[1]-this.origin[3],this.origin[2],this.origin[3])}},depthTest:!0,transparent:!0}),r=new R.SphereBufferGeometry(1,64,64);r.scale(-1,1,1);const a=new R.Mesh(r,o);a.name="pano-video",this.videoMesh=a,this.five.work&&this.onFiveDataLoaded(),this.enabled&&this.addEventListeners(),this.mountIfNeeded()}get renderID(){return this._id}get disposed(){return this._disposed}get enabled(){return this._enabled}dispose(){this.disposed||(this.disable(),this._disposed=!0)}enable(){this.disposed||this.enabled||(this._enabled=!0,this.addEventListeners(),this.mountIfNeeded())}disable(){this.disposed||this.enabled&&(this._enabled=!1,this.removeEventListeners(),this.unmount())}lookAtVideo(){if(!this.observer)return;const t=this.getUVCenter();if(!t)return;const e=this.uv2Position(t[0],t[1]);if(!e)return;const i=new R.Vector3().subVectors(e,this.observer.position).normalize(),{longitude:s,latitude:o}=R2(i);this.five.setState({panoIndex:this.panoIndex,longitude:s,latitude:o}),this.onFiveWantsMoveToPano(this.panoIndex)}getUVCenter(){if(!this.origin)return;const t=this.origin[0]+this.origin[2]/2,e=this.origin[1]+this.origin[3]/2;return[t,e]}addEventListeners(){this.five.on("loaded",this.onFiveDataLoaded),this.five.on("modeChange",this.onFiveModeChange),this.five.on("panoArrived",this.onFivePanoArrived),this.five.on("panoWillArrive",this.onFivePanoWillArrive),this.five.on("wantsMoveToPano",this.onFiveWantsMoveToPano),this.five.on("wantsTapGesture",this.onFiveWantsTapGesture),this.five.on("initAnimationEnded",this.onFiveInitAnimationEnded),this.video.addEventListener("canplaythrough",this.onVideoDataLoaded),this.video.addEventListener("playing",this.onVideoPlaying),this.video.addEventListener("pause",this.onVideoPaused)}removeEventListeners(){this.five.off("loaded",this.onFiveDataLoaded),this.five.off("modeChange",this.onFiveModeChange),this.five.off("panoArrived",this.onFivePanoArrived),this.five.off("panoWillArrive",this.onFivePanoWillArrive),this.five.off("wantsMoveToPano",this.onFiveWantsMoveToPano),this.five.off("wantsTapGesture",this.onFiveWantsTapGesture),this.five.off("initAnimationEnded",this.onFiveInitAnimationEnded),this.video.removeEventListener("canplaythrough",this.onVideoDataLoaded),this.video.removeEventListener("playing",this.onVideoPlaying),this.video.removeEventListener("pause",this.onVideoPaused)}mountIfNeeded(){const t=this.five.getCurrentState();t.mode==="Panorama"&&t.panoIndex===this.panoIndex&&this.enabled&&this.mount()}mount(){if(this.disposed)return this.logWarning("插件已经销毁,无法挂载。");if(this.url==="")return this.logWarning("视频资源不存在。");this.video.src!==this.url&&(this.video.src=this.url),this.video.paused&&this.video.play().catch(t=>{this.logWarning(t instanceof Error?t.message:"视频播放失败。"),this.five.once("gesture",()=>{this.video.play().catch(e=>{this.logWarning(e instanceof Error?e.message:"自动播放视频失败。")})})})}unmount(){this.video.pause(),this.video.src!==""&&(this.video.src=""),this.five.scene.remove(this.videoMesh)}hide(){this.video.pause(),this.five.scene.remove(this.videoMesh)}logWarning(t){console.warn("⛔ ==> [VideoMeshController]:",t)}checkIntersectionInBounding(t,e){if(!e.uv)return!1;const[i,s]=e.uv.toArray(),[o,r,a,l]=t,c=1-r-l,d=o+a,h=c+l;return i>=o&&i<=d&&s>=c&&s<=h}}class Q2 extends cs{constructor(e){super(e);f(this,"enabled",!0);f(this,"controllerMap",new Map);f(this,"_disposed",!1);this.five=e}get state(){return{enabled:this.enabled}}get disposed(){return this._disposed}load(e,i){var s;if(this.disposed)return this.logWarning("插件已被销毁");typeof((s=i==null?void 0:i.initialState)==null?void 0:s.enabled)!="undefined"&&i.initialState.enabled!==this.enabled&&(i.initialState.enabled?this.enable():this.disable()),e.list.forEach(o=>{const r=o.pano_index,a=o.render_id;o.video_list.forEach(l=>{this.controllerMap.set(l.render_id,new ch(this.five,ve(G({},l),{panoIndex:r,renderID:a,initialState:{enabled:this.enabled}})))})})}enable(e){var s;if(this.disposed)return this.logWarning("插件已被销毁");if(this.enabled)return;this.enabled=!0,Array.from(this.controllerMap.values()).forEach(o=>o.enable());const i=(s=e==null?void 0:e.userAction)!=null?s:!0;this.hooks.emit("enable",{userAction:i})}disable(e){var s;if(this.disposed)return this.logWarning("插件已被销毁");if(!this.enabled)return;this.enabled=!1,Array.from(this.controllerMap.values()).forEach(o=>o.disable());const i=(s=e==null?void 0:e.userAction)!=null?s:!0;this.hooks.emit("disable",{userAction:i})}lookAtVideoItemByRenderID(e){if(this.disposed)return this.logWarning("插件已被销毁");const i=this.controllerMap.get(e);if(!i)return this.logWarning(`ID 为 ${e} 的点位视频不存在`);i.lookAtVideo()}add(e,i){if(this.disposed)return this.logWarning("插件已被销毁");i.forEach(s=>{if(this.controllerMap.get(s.render_id))return this.logWarning(`ID 为 ${s.render_id} 的点位视频已存在`);const o=s.render_id;this.controllerMap.set(s.render_id,new ch(this.five,ve(G({},s),{panoIndex:e,renderID:o,initialState:{enabled:this.enabled}})))})}removeByRenderID(e){if(this.disposed)return this.logWarning("插件已被销毁");const i=this.controllerMap.get(e);if(!i)return this.logWarning(`ID 为 ${e} 的点位视频不存在`);i.dispose(),this.controllerMap.delete(e)}clear(){if(this.disposed)return this.logWarning("插件已被销毁");Array.from(this.controllerMap.values()).forEach(e=>e.dispose()),this.controllerMap.clear()}dispose(){if(this.disposed)return this.logWarning("插件已被销毁");this._disposed=!0,Array.from(this.controllerMap.values()).forEach(e=>e.dispose()),this.controllerMap.clear()}logWarning(e){console.warn("⛔ ==> [PanoVideoPluginController]:",e)}}const G2=Object.freeze(Object.defineProperty({__proto__:null},Symbol.toStringTag,{value:"Module"})),N2=n=>new Q2(n);function cf(n){const t=new Map;return n.forEach(e=>e.pipes.forEach(i=>t.set(i.id,i))),Array.from(t.values())}function H2(n){const t=n.target.map(({startLibraryID:e,endLibraryID:i})=>{const s=n.data.pipelines.find(o=>o.startLibraryID===e&&o.endLibraryID===i);return s||console.warn(`Cannot find pipeline with startLibraryID ${e} and endLibraryID ${i}`),s}).filter(ni);return cf(t)}function _2(n){if(n.quality===0)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/1.png";if(n.quality===1)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/2.png";if(n.quality===2)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/3.png";if(n.quality===3)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/4.png";if(n.quality===4)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/5.png";if(n.isHot)return"//vrlab-static.ljcdn.com/release/web/aqueous-system-demo/19/6.png"}function F2(n,t){const e=n.ConnectsDataset.map(s=>{const o=s.data,r=s.start,a=s.end,l={isHot:s.waterType===5,quality:s.waterType},c=o.map(d=>{const h=n.LinesDataset.find(p=>p.id===d);if(!h)return null;const u=h.data,m=t!=null&&t.getPipeRadius?t.getPipeRadius(h):1.6/100,A=t!=null&&t.getPipeUrl?t.getPipeUrl(l):_2(l);return{id:h.id,radius:m,water:l,path:u,texture:A}}).filter(ni);return{startLibraryID:r,endLibraryID:a,pipes:c}});return{pipes:cf(e),pipelines:e}}function W2(n,t){const e=1-n;return e*e*t}function Y2(n,t){return 2*(1-n)*n*t}function U2(n,t){return n*n*t}function _r(n,t,e,i){return W2(n,t)+Y2(n,e)+U2(n,i)}function X2(n,t){const e=1-n;return e*e*e*t}function Z2(n,t){const e=1-n;return 3*e*e*n*t}function J2(n,t){return 3*(1-n)*n*n*t}function q2(n,t){return n*n*n*t}function Fr(n,t,e,i,s){return X2(n,t)+Z2(n,e)+J2(n,i)+q2(n,s)}function ua(n,t){const e=t.length-1;if(e<1)throw new Error("length of points must greater than 2");if(e===2)return new E.Vector3(_r(n,t[0].x,t[1].x,t[2].x),_r(n,t[0].y,t[1].y,t[2].y),_r(n,t[0].z,t[1].z,t[2].z));if(e===3)return new E.Vector3(Fr(n,t[0].x,t[1].x,t[2].x,t[3].x),Fr(n,t[0].y,t[1].y,t[2].y,t[3].y),Fr(n,t[0].z,t[1].z,t[2].z,t[3].z));if(e===1){const[s,o]=t;return s.clone().add(o.clone().sub(s).multiplyScalar(n))}const i=[];return t.reduce((s,o)=>(i.push(ua(n,[s,o])),o)),ua(n,i)}class K2 extends E.Curve{constructor(e=[]){super();f(this,"type");f(this,"controlPoints");this.type="CustomBezierCurve3",this.controlPoints=e}getPoint(e,i=new E.Vector3){const s=i,o=ua(e,this.controlPoints);return s.copy(o),s}copy(e){return super.copy(e),this.controlPoints=e.controlPoints.map(i=>i.clone()),this}toJSON(){const e=super.toJSON(),i=this.controlPoints.map(o=>o.toArray());return Object.assign(e,{controlPoints:i})}fromJSON(e){return super.fromJSON(e),this.controlPoints=e.controlPoints.map(i=>new E.Vector3().fromArray(i)),this}}const $2=`
688
690
  varying vec2 vUv;
689
691
  void main() {
690
692
  vUv = uv;
691
693
  gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
692
694
  }
693
- `,$2=`
695
+ `,eE=`
694
696
  varying vec2 vUv;
695
697
  uniform float uOffset;
696
698
  uniform float vOffset;
@@ -704,7 +706,7 @@ void main() {
704
706
  gl_FragColor = texture2D(envMap, uv);
705
707
  gl_FragColor.a = gl_FragColor.a * opacity;
706
708
  }
707
- `;class rn extends E.Mesh{constructor(e,i=$2){super();f(this,"geometryConfig",{radius:1.5/100,tubularSegments:20,radialSegments:8});f(this,"customID");f(this,"path");f(this,"pathLength",0);f(this,"pathPoints");f(this,"texture");f(this,"opacityAnime");f(this,"uPreMeter",1);e.geometryConfig&&(this.geometryConfig=G(G({},this.geometryConfig),e.geometryConfig)),this.customID=e.id||this.uuid,this.pathPoints=e.path,this.path=rn.calculatePath(e.path.map(l=>new E.Vector3().fromArray(l))),this.pathLength=this.path.getLength(),this.texture=rn.formatTexture(e.texture);const{radius:s,tubularSegments:o,radialSegments:r}=this.geometryConfig,a=rn.formatTexture(e.texture);this.geometry=rn.formatGeometryUV(new E.TubeBufferGeometry(this.path,o,s,r),this.pathLength,this.uPreMeter),this.material=new E.ShaderMaterial({uniforms:{opacity:{value:1},uOffset:{value:0},vOffset:{value:0},envMap:{value:a}},transparent:!0,vertexShader:K2,fragmentShader:i})}static calculatePath(e){return e.length===2?new E.LineCurve3(e[0],e[1]):new q2(e)}static formatGeometryUV(e,i,s){const o=e.getAttribute("uv");for(let r=0;r<o.count;r++){const a=o.getX(r)*i*s;o.setX(r,a)}return e}static formatTexture(e){return e.wrapS=E.RepeatWrapping,e.wrapT=E.RepeatWrapping,e}hide(e){return W(this,null,function*(){var o;(o=this.opacityAnime)==null||o.dispose();const i=0;if(typeof(e==null?void 0:e.duration)!="number")return this.setOpacity(i);const s=this.material.uniforms.opacity.value;return s===i?!0:new Promise(r=>{this.opacityAnime=new fn({progress:s}).to({progress:i}).onUpdate(({progress:a})=>this.setOpacity(a)).onComplete(()=>r(!0)).onDispose(()=>{this.setOpacity(i),r(!1)}).play()})})}show(e){return W(this,null,function*(){var o;(o=this.opacityAnime)==null||o.dispose();const i=1;if(typeof(e==null?void 0:e.duration)!="number")return this.setOpacity(i);const s=this.material.uniforms.opacity.value;return new Promise(r=>{this.opacityAnime=new fn({progress:s}).to({progress:i}).onUpdate(({progress:a})=>this.setOpacity(a)).onComplete(()=>r(!0)).onDispose(()=>{this.setOpacity(i),r(!1)}).play()})})}setOpacity(e){return this.material.uniforms.opacity.value=e,this.material.needsUpdate=!0,this.needsRender=!0,!0}disposeAnime(){var e;(e=this.opacityAnime)==null||e.dispose(),this.opacityAnime=void 0}dispose(){this.disposeAnime(),this.geometry.dispose(),this.material.dispose()}}const eE=`
709
+ `;class rn extends E.Mesh{constructor(e,i=eE){super();f(this,"geometryConfig",{radius:1.5/100,tubularSegments:20,radialSegments:8});f(this,"customID");f(this,"path");f(this,"pathLength",0);f(this,"pathPoints");f(this,"texture");f(this,"opacityAnime");f(this,"uPreMeter",1);e.geometryConfig&&(this.geometryConfig=G(G({},this.geometryConfig),e.geometryConfig)),this.customID=e.id||this.uuid,this.pathPoints=e.path,this.path=rn.calculatePath(e.path.map(l=>new E.Vector3().fromArray(l))),this.pathLength=this.path.getLength(),this.texture=rn.formatTexture(e.texture);const{radius:s,tubularSegments:o,radialSegments:r}=this.geometryConfig,a=rn.formatTexture(e.texture);this.geometry=rn.formatGeometryUV(new E.TubeBufferGeometry(this.path,o,s,r),this.pathLength,this.uPreMeter),this.material=new E.ShaderMaterial({uniforms:{opacity:{value:1},uOffset:{value:0},vOffset:{value:0},envMap:{value:a}},transparent:!0,vertexShader:$2,fragmentShader:i})}static calculatePath(e){return e.length===2?new E.LineCurve3(e[0],e[1]):new K2(e)}static formatGeometryUV(e,i,s){const o=e.getAttribute("uv");for(let r=0;r<o.count;r++){const a=o.getX(r)*i*s;o.setX(r,a)}return e}static formatTexture(e){return e.wrapS=E.RepeatWrapping,e.wrapT=E.RepeatWrapping,e}hide(e){return W(this,null,function*(){var o;(o=this.opacityAnime)==null||o.dispose();const i=0;if(typeof(e==null?void 0:e.duration)!="number")return this.setOpacity(i);const s=this.material.uniforms.opacity.value;return s===i?!0:new Promise(r=>{this.opacityAnime=new fn({progress:s}).to({progress:i}).onUpdate(({progress:a})=>this.setOpacity(a)).onComplete(()=>r(!0)).onDispose(()=>{this.setOpacity(i),r(!1)}).play()})})}show(e){return W(this,null,function*(){var o;(o=this.opacityAnime)==null||o.dispose();const i=1;if(typeof(e==null?void 0:e.duration)!="number")return this.setOpacity(i);const s=this.material.uniforms.opacity.value;return new Promise(r=>{this.opacityAnime=new fn({progress:s}).to({progress:i}).onUpdate(({progress:a})=>this.setOpacity(a)).onComplete(()=>r(!0)).onDispose(()=>{this.setOpacity(i),r(!1)}).play()})})}setOpacity(e){return this.material.uniforms.opacity.value=e,this.material.needsUpdate=!0,this.needsRender=!0,!0}disposeAnime(){var e;(e=this.opacityAnime)==null||e.dispose(),this.opacityAnime=void 0}dispose(){this.disposeAnime(),this.geometry.dispose(),this.material.dispose()}}const tE=`
708
710
  varying vec2 vUv;
709
711
  uniform float uOffset;
710
712
  uniform float vOffset;
@@ -719,4 +721,4 @@ void main() {
719
721
  gl_FragColor = texture2D(envMap, uv);
720
722
  gl_FragColor.a = gl_FragColor.a * opacity;
721
723
  }
722
- `;class tE extends rn{constructor(e){super(e,eE);f(this,"initialDisplacement",0);f(this,"oldTime",new Date().getTime());f(this,"flowSpeed",.6);f(this,"rotateSpeed",0);f(this,"flowAnimationDisposer",()=>{})}setInitialDisplacement(e,i="backward"){this.initialDisplacement=Math.abs(e)*(i==="forward"?-1:1),this.moveFromOrigin(this.initialDisplacement)}moveFromOrigin(e){const i=e*this.uPreMeter;return this.material.uniforms.uOffset.value=i,this.material.needsUpdate=!0,this.needsRender=!0,!0}moveForwardFromInitialOffset(e){const i=e*-1,s=this.initialDisplacement+i;this.moveFromOrigin(s)}flow(){this.flowAnimationDisposer(),this.oldTime=new Date().getTime();let e=0,i=0;const s=In(()=>{const o=new Date().getTime(),r=o-this.oldTime,a=this.flowSpeed*(r/1e3),l=this.rotateSpeed*(r/1e3);e=e+a,i=i+l;const c=1/360,d=i*c;this.material.uniforms.vOffset.value=d,this.moveForwardFromInitialOffset(e),this.oldTime=o});this.flowAnimationDisposer=function(){s(),this.moveForwardFromInitialOffset(0)}}stopFlow(){this.flowAnimationDisposer()}setSpeed(e){typeof(e==null?void 0:e.flowSpeed)=="number"&&(this.flowSpeed=e.flowSpeed),typeof(e==null?void 0:e.rotateSpeed)=="number"&&(this.rotateSpeed=e.rotateSpeed)}disposeAnime(){super.disposeAnime(),this.flowAnimationDisposer()}}const dh={flowSpeed:.6,rotateSpeed:0};class iE extends yi{constructor(e){super(e);f(this,"data");f(this,"state");f(this,"group");f(this,"pipeObjects",[]);f(this,"texturePromiseCache",new Map);f(this,"dispose",()=>{this.disable(),this.five.scene.remove(this.group),this.texturePromiseCache.forEach(e=>e.then(i=>i.dispose())),this.texturePromiseCache.clear()});f(this,"onWantsFiveTapGesture",(...e)=>{const[i]=e,s=i.intersectObjects(this.pipeObjects,!1);if(s.length===0||!this.data)return;const a=s[0].object.customID,l=this.data.pipes.find(({id:d})=>d===a),c=this.data.pipelines.find(d=>l&&d.pipes.includes(l));if(!(!l||!c))return this.hooks.emit("tap",{intersectObjects:s,pipe:l,pipeline:c,wantsFiveTapGestureParams:e}),!1});this.state={target:null,visible:!0,enabled:!0,isFlowing:!1,speed:dh},this.five=e,this.group=new E.Group,this.group.name="water-pipe-group",this.five.scene.add(this.group),this.five.once("dispose",this.dispose),this.five.on("wantsTapGesture",this.onWantsFiveTapGesture)}load(e,i,s,o){return W(this,null,function*(){const r=this.data;this.data=yield this.formatData(e,o),this.removeAllPipes(),this.hooks.emit("dataChange",this.data,r),this.pipeObjects=yield Promise.all(this.data.pipes.filter(a=>!!(a!=null&&a.texture)).map(h=>W(this,[h],function*({id:a,texture:l,path:c,radius:d}){const u=yield this.loadPipeTexture(l),m={id:a,path:c,textureURL:l,texture:u,geometryConfig:{radius:d}};return new tE(m)}))),this.data.pipelines.forEach(a=>{a.pipes.reduce((l,c)=>{const d=this.findPipeObjectWithID(c.id);return d==null||d.setInitialDisplacement(l),l+((d==null?void 0:d.pathLength)||0)},0)}),this.hooks.emit("dataLoaded",this.data),this.state.visible===!1&&this.pipeObjects.forEach(a=>a.setOpacity(0)),this.state.enabled&&(this.group.add(...this.pipeObjects),this.five.needsRender=!0),i&&this.setState(i,{userAction:s})})}setState(e,i={}){const s=this.state;if(It(e,s,{deep:!0}))return;const o=i.userAction!==void 0?i.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled&&(e.enabled?this._enable({userAction:o}):this._disable({userAction:o})),e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o,anime:{duration:500}};e.visible?this._show(r):this._hide(r)}if(e.isFlowing!==void 0&&s.isFlowing!==e.isFlowing&&(e.isFlowing?this._flow():this._stopFlow()),e.speed!==void 0&&!It(s.speed,this.state.speed,{deep:!0})&&this._setSpeed(e.speed),e.target!==void 0&&!It(s.target,this.state.target,{deep:!0})){const r={target:e.target,showAnime:{duration:500},hideAnime:{duration:500}};this._switchPipelines(r)}}enable(e={}){var s;if(this.state.enabled)return;const i=(s=e.userAction)!=null?s:!0;this.updateState({enabled:!0},i),this._enable({userAction:i})}disable(e={}){var s;if(this.state.enabled===!1)return;const i=(s=e.userAction)!=null?s:!0;this.updateState({enabled:!1,isFlowing:!1},i),this._disable({userAction:i})}show(){return W(this,arguments,function*(e={}){if(this.state.visible)return;const i=G({userAction:!0,anime:{duration:500}},e);this.updateState({visible:!0},i.userAction),yield this._show(i)})}hide(){return W(this,arguments,function*(e={}){if(this.state.visible===!1)return;const i=G({userAction:!0,anime:{duration:500}},e);this.updateState({visible:!1},i.userAction),yield this._hide(i)})}switchPipelines(e){return W(this,null,function*(){var c,d,h,u,m,A;if(!this.data)return;const i=(c=e==null?void 0:e.target)!=null?c:null,s=(d=e==null?void 0:e.userAction)!=null?d:!0;this.updateState({target:i},s);const o={duration:500},r=(u=(h=e==null?void 0:e.hideAnime)!=null?h:e==null?void 0:e.anime)!=null?u:o,a=(A=(m=e==null?void 0:e.showAnime)!=null?m:e==null?void 0:e.anime)!=null?A:o,l={target:i,showAnime:a,hideAnime:r};this._switchPipelines(l)})}flow(e={}){var s;if(this.state.isFlowing)return;const i=(s=e.userAction)!=null?s:!0;this.updateState({isFlowing:!0},i),this._flow()}stopFlow(e={}){var s;if(this.state.isFlowing===!1)return;const i=(s=e.userAction)!=null?s:!0;this.updateState({isFlowing:!1},i),this._stopFlow()}setSpeed(e){var o,r;const i=(o=e==null?void 0:e.speed)!=null?o:dh,s=(r=e.userAction)!=null?r:!0;this.updateState({speed:i},s),this._setSpeed(i)}formatData(e,i){return W(this,null,function*(){return _2(e,i)})}_enable(e){this.hooks.emit("enable",{userAction:e.userAction}),this.five.scene.add(this.group),this.five.needsRender=!0,this.five.on("wantsTapGesture",this.onWantsFiveTapGesture)}_disable(e){this.hooks.emit("disable",{userAction:e.userAction}),this.disposeAnime(),this.five.scene.remove(this.group),this.five.needsRender=!0,this.five.off("wantsTapGesture",this.onWantsFiveTapGesture)}_show(e){return W(this,null,function*(){var o;this.hooks.emit("show",{userAction:e.userAction});const i=(o=e==null?void 0:e.anime)!=null?o:{duration:500},s=this.findPipeObjectWithTarget(this.state.target);yield Promise.all(s.map(r=>r==null?void 0:r.show(i))),this.five.needsRender=!0})}_hide(e){return W(this,null,function*(){var s;this.hooks.emit("hide",{userAction:e.userAction});const i=(s=e==null?void 0:e.anime)!=null?s:{duration:500};yield Promise.all(this.pipeObjects.map(o=>o.hide(i))),this.five.needsRender=!0})}_switchPipelines(e){return W(this,null,function*(){if(!this.data)return;const i=this.findPipeObjectWithTarget(e.target),s=e.hideAnime;yield Promise.all(this.pipeObjects.map(r=>r.hide(s)));const o=e.showAnime;yield Promise.all(i.map(r=>r.show(o)))})}_flow(){this.pipeObjects.forEach(e=>e.flow())}_stopFlow(){this.pipeObjects.forEach(e=>e.stopFlow())}_setSpeed(e){this.pipeObjects.forEach(i=>i.setSpeed(e))}updateState(e,i){const s=this.state;this.state=G(G({},this.state),e),this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i})}loadPipeTexture(e){return W(this,null,function*(){const i=this.texturePromiseCache.get(e);if(i)return i;const s=vn(e);return this.texturePromiseCache.set(e,s),s})}disposeAnime(){this.pipeObjects.forEach(e=>e.disposeAnime()),this.five.needsRender=!0}removeAllPipes(){this.disposeAnime(),this.group.remove(...this.pipeObjects),this.pipeObjects.forEach(e=>e.dispose()),this.pipeObjects=[],this.five.needsRender=!0}findPipeObjectWithID(e){return this.pipeObjects.find(({customID:i})=>i===e)}findPipeObjectWithTarget(e){return e?N2({data:this.data,target:e}).map(({id:s})=>this.findPipeObjectWithID(s)).filter(ni):this.pipeObjects}}const nE=n=>new iE(n);bf();vf();exports.CSS3DRender=un;exports.CSS3DRenderPlugin=Aa;exports.CameraMovementEffect=iu;exports.CameraMovementPlugin=DA;exports.ContentType=ku;exports.CruisePlugin=qP;exports.CruisePluginController=ds;exports.CruisePluginTypes=JP;exports.DIRECTION=sn;exports.DISPLAY_STRATEGY_TYPE=Si;exports.DimensionType=xu;exports.FLOOR_PLAN_ATTACHED_TO=hi;exports.FLOOR_TYPE_MAP=bA;exports.GuideLineItem=$P;exports.GuideLineModeItem=NP;exports.GuideLinePlugin=sf;exports.ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE=Ti;exports.ItemLabelPlugin=Eb;exports.Magnifier=D0;exports.MapviewFloorplanPlugin=qp;exports.ModelChassisCompassPlugin=CA;exports.ModelEntryDoorGuidePlugin=EA;exports.ModelFloorplanPlugin=Up;exports.ModelItemLabelPlugin=nb;exports.ModelRoomLabelPlugin=og;exports.ModelTVVideoPlugin=lb;exports.ModelViewPlugin=Of;exports.Object3DHelperController=lf;exports.Object3DHelperPlugin=z2;exports.PLUGIN=jo;exports.PaintBrush=zf;exports.PaintBrushTypeEnum=Kt;exports.PanoCompassPlugin=JA;exports.PanoCursorRaycasterPlugin=gm;exports.PanoDoorLabelPlugin=Rb;exports.PanoFloorplanRadarPlugin=AA;exports.PanoMeasurePlugin=S0;exports.PanoMeasurePluginLine=ii;exports.PanoMeasurePluginModel=Ra;exports.PanoMeasurePluginPoint=ft;exports.PanoMeasurePluginPolyline=Oi;exports.PanoRulerPlugin=zA;exports.PanoRulerProPlugin=WA;exports.PanoSpatialTagPlugin=W0;exports.PanoTagPlugin=jP;exports.PanoTagPluginController=go;exports.PanoVideoPlugin=G2;exports.PanoVideoPluginType=Q2;exports.PipelinePlugin=nE;exports.PointType=Mu;exports.ROOM_FETILE_TYPE_MAP=vA;exports.ROOM_TYPE_MAP=yA;exports.Rotation=Gt;exports.TopviewFloorplanPlugin=$p;exports.Util=fm;exports.defaultGlobalConfig=Eu;exports.itemLabelPluginServerParams=Mb;exports.modelItemLabelPluginServerParams=sb;exports.modelRoomLabelPluginServerParams=rg;exports.pluginFlag=LP;
724
+ `;class iE extends rn{constructor(e){super(e,tE);f(this,"initialDisplacement",0);f(this,"oldTime",new Date().getTime());f(this,"flowSpeed",.6);f(this,"rotateSpeed",0);f(this,"flowAnimationDisposer",()=>{})}setInitialDisplacement(e,i="backward"){this.initialDisplacement=Math.abs(e)*(i==="forward"?-1:1),this.moveFromOrigin(this.initialDisplacement)}moveFromOrigin(e){const i=e*this.uPreMeter;return this.material.uniforms.uOffset.value=i,this.material.needsUpdate=!0,this.needsRender=!0,!0}moveForwardFromInitialOffset(e){const i=e*-1,s=this.initialDisplacement+i;this.moveFromOrigin(s)}flow(){this.flowAnimationDisposer(),this.oldTime=new Date().getTime();let e=0,i=0;const s=In(()=>{const o=new Date().getTime(),r=o-this.oldTime,a=this.flowSpeed*(r/1e3),l=this.rotateSpeed*(r/1e3);e=e+a,i=i+l;const c=1/360,d=i*c;this.material.uniforms.vOffset.value=d,this.moveForwardFromInitialOffset(e),this.oldTime=o});this.flowAnimationDisposer=function(){s(),this.moveForwardFromInitialOffset(0)}}stopFlow(){this.flowAnimationDisposer()}setSpeed(e){typeof(e==null?void 0:e.flowSpeed)=="number"&&(this.flowSpeed=e.flowSpeed),typeof(e==null?void 0:e.rotateSpeed)=="number"&&(this.rotateSpeed=e.rotateSpeed)}disposeAnime(){super.disposeAnime(),this.flowAnimationDisposer()}}const dh={flowSpeed:.6,rotateSpeed:0};class nE extends yi{constructor(e){super(e);f(this,"data");f(this,"state");f(this,"group");f(this,"pipeObjects",[]);f(this,"texturePromiseCache",new Map);f(this,"dispose",()=>{this.disable(),this.five.scene.remove(this.group),this.texturePromiseCache.forEach(e=>e.then(i=>i.dispose())),this.texturePromiseCache.clear()});f(this,"onWantsFiveTapGesture",(...e)=>{const[i]=e,s=i.intersectObjects(this.pipeObjects,!1);if(s.length===0||!this.data)return;const a=s[0].object.customID,l=this.data.pipes.find(({id:d})=>d===a),c=this.data.pipelines.find(d=>l&&d.pipes.includes(l));if(!(!l||!c))return this.hooks.emit("tap",{intersectObjects:s,pipe:l,pipeline:c,wantsFiveTapGestureParams:e}),!1});this.state={target:null,visible:!0,enabled:!0,isFlowing:!1,speed:dh},this.five=e,this.group=new E.Group,this.group.name="water-pipe-group",this.five.scene.add(this.group),this.five.once("dispose",this.dispose),this.five.on("wantsTapGesture",this.onWantsFiveTapGesture)}load(e,i,s,o){return W(this,null,function*(){const r=this.data;this.data=yield this.formatData(e,o),this.removeAllPipes(),this.hooks.emit("dataChange",this.data,r),this.pipeObjects=yield Promise.all(this.data.pipes.filter(a=>!!(a!=null&&a.texture)).map(h=>W(this,[h],function*({id:a,texture:l,path:c,radius:d}){const u=yield this.loadPipeTexture(l),m={id:a,path:c,textureURL:l,texture:u,geometryConfig:{radius:d}};return new iE(m)}))),this.data.pipelines.forEach(a=>{a.pipes.reduce((l,c)=>{const d=this.findPipeObjectWithID(c.id);return d==null||d.setInitialDisplacement(l),l+((d==null?void 0:d.pathLength)||0)},0)}),this.hooks.emit("dataLoaded",this.data),this.state.visible===!1&&this.pipeObjects.forEach(a=>a.setOpacity(0)),this.state.enabled&&(this.group.add(...this.pipeObjects),this.five.needsRender=!0),i&&this.setState(i,{userAction:s})})}setState(e,i={}){const s=this.state;if(It(e,s,{deep:!0}))return;const o=i.userAction!==void 0?i.userAction:!0;if(this.updateState(e,o),e.enabled!==void 0&&s.enabled!==e.enabled&&(e.enabled?this._enable({userAction:o}):this._disable({userAction:o})),e.visible!==void 0&&s.visible!==e.visible){const r={userAction:o,anime:{duration:500}};e.visible?this._show(r):this._hide(r)}if(e.isFlowing!==void 0&&s.isFlowing!==e.isFlowing&&(e.isFlowing?this._flow():this._stopFlow()),e.speed!==void 0&&!It(s.speed,this.state.speed,{deep:!0})&&this._setSpeed(e.speed),e.target!==void 0&&!It(s.target,this.state.target,{deep:!0})){const r={target:e.target,showAnime:{duration:500},hideAnime:{duration:500}};this._switchPipelines(r)}}enable(e={}){var s;if(this.state.enabled)return;const i=(s=e.userAction)!=null?s:!0;this.updateState({enabled:!0},i),this._enable({userAction:i})}disable(e={}){var s;if(this.state.enabled===!1)return;const i=(s=e.userAction)!=null?s:!0;this.updateState({enabled:!1,isFlowing:!1},i),this._disable({userAction:i})}show(){return W(this,arguments,function*(e={}){if(this.state.visible)return;const i=G({userAction:!0,anime:{duration:500}},e);this.updateState({visible:!0},i.userAction),yield this._show(i)})}hide(){return W(this,arguments,function*(e={}){if(this.state.visible===!1)return;const i=G({userAction:!0,anime:{duration:500}},e);this.updateState({visible:!1},i.userAction),yield this._hide(i)})}switchPipelines(e){return W(this,null,function*(){var c,d,h,u,m,A;if(!this.data)return;const i=(c=e==null?void 0:e.target)!=null?c:null,s=(d=e==null?void 0:e.userAction)!=null?d:!0;this.updateState({target:i},s);const o={duration:500},r=(u=(h=e==null?void 0:e.hideAnime)!=null?h:e==null?void 0:e.anime)!=null?u:o,a=(A=(m=e==null?void 0:e.showAnime)!=null?m:e==null?void 0:e.anime)!=null?A:o,l={target:i,showAnime:a,hideAnime:r};this._switchPipelines(l)})}flow(e={}){var s;if(this.state.isFlowing)return;const i=(s=e.userAction)!=null?s:!0;this.updateState({isFlowing:!0},i),this._flow()}stopFlow(e={}){var s;if(this.state.isFlowing===!1)return;const i=(s=e.userAction)!=null?s:!0;this.updateState({isFlowing:!1},i),this._stopFlow()}setSpeed(e){var o,r;const i=(o=e==null?void 0:e.speed)!=null?o:dh,s=(r=e.userAction)!=null?r:!0;this.updateState({speed:i},s),this._setSpeed(i)}formatData(e,i){return W(this,null,function*(){return F2(e,i)})}_enable(e){this.hooks.emit("enable",{userAction:e.userAction}),this.five.scene.add(this.group),this.five.needsRender=!0,this.five.on("wantsTapGesture",this.onWantsFiveTapGesture)}_disable(e){this.hooks.emit("disable",{userAction:e.userAction}),this.disposeAnime(),this.five.scene.remove(this.group),this.five.needsRender=!0,this.five.off("wantsTapGesture",this.onWantsFiveTapGesture)}_show(e){return W(this,null,function*(){var o;this.hooks.emit("show",{userAction:e.userAction});const i=(o=e==null?void 0:e.anime)!=null?o:{duration:500},s=this.findPipeObjectWithTarget(this.state.target);yield Promise.all(s.map(r=>r==null?void 0:r.show(i))),this.five.needsRender=!0})}_hide(e){return W(this,null,function*(){var s;this.hooks.emit("hide",{userAction:e.userAction});const i=(s=e==null?void 0:e.anime)!=null?s:{duration:500};yield Promise.all(this.pipeObjects.map(o=>o.hide(i))),this.five.needsRender=!0})}_switchPipelines(e){return W(this,null,function*(){if(!this.data)return;const i=this.findPipeObjectWithTarget(e.target),s=e.hideAnime;yield Promise.all(this.pipeObjects.map(r=>r.hide(s)));const o=e.showAnime;yield Promise.all(i.map(r=>r.show(o)))})}_flow(){this.pipeObjects.forEach(e=>e.flow())}_stopFlow(){this.pipeObjects.forEach(e=>e.stopFlow())}_setSpeed(e){this.pipeObjects.forEach(i=>i.setSpeed(e))}updateState(e,i){const s=this.state;this.state=G(G({},this.state),e),this.hooks.emit("stateChange",{state:this.state,prevState:s,userAction:i})}loadPipeTexture(e){return W(this,null,function*(){const i=this.texturePromiseCache.get(e);if(i)return i;const s=vn(e);return this.texturePromiseCache.set(e,s),s})}disposeAnime(){this.pipeObjects.forEach(e=>e.disposeAnime()),this.five.needsRender=!0}removeAllPipes(){this.disposeAnime(),this.group.remove(...this.pipeObjects),this.pipeObjects.forEach(e=>e.dispose()),this.pipeObjects=[],this.five.needsRender=!0}findPipeObjectWithID(e){return this.pipeObjects.find(({customID:i})=>i===e)}findPipeObjectWithTarget(e){return e?H2({data:this.data,target:e}).map(({id:s})=>this.findPipeObjectWithID(s)).filter(ni):this.pipeObjects}}const sE=n=>new nE(n);bf();vf();exports.CSS3DRender=un;exports.CSS3DRenderPlugin=Aa;exports.CameraMovementEffect=iu;exports.CameraMovementPlugin=DA;exports.ContentType=ku;exports.CruisePlugin=KP;exports.CruisePluginController=ds;exports.CruisePluginTypes=qP;exports.DIRECTION=sn;exports.DISPLAY_STRATEGY_TYPE=Si;exports.DimensionType=xu;exports.FLOOR_PLAN_ATTACHED_TO=hi;exports.FLOOR_TYPE_MAP=bA;exports.GuideLineItem=e2;exports.GuideLineModeItem=HP;exports.GuideLinePlugin=sf;exports.ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE=Ti;exports.ItemLabelPlugin=Eb;exports.Magnifier=D0;exports.MapviewFloorplanPlugin=qp;exports.ModelChassisCompassPlugin=CA;exports.ModelEntryDoorGuidePlugin=EA;exports.ModelFloorplanPlugin=Up;exports.ModelItemLabelPlugin=nb;exports.ModelRoomLabelPlugin=og;exports.ModelTVVideoPlugin=lb;exports.ModelViewPlugin=Of;exports.Object3DHelperController=lf;exports.Object3DHelperPlugin=O2;exports.PLUGIN=zo;exports.PaintBrush=zf;exports.PaintBrushTypeEnum=Kt;exports.PanoCompassPlugin=JA;exports.PanoCursorRaycasterPlugin=gm;exports.PanoDoorLabelPlugin=Rb;exports.PanoFloorplanRadarPlugin=AA;exports.PanoMeasurePlugin=S0;exports.PanoMeasurePluginLine=ii;exports.PanoMeasurePluginModel=Ra;exports.PanoMeasurePluginPoint=ft;exports.PanoMeasurePluginPolyline=Oi;exports.PanoRulerPlugin=zA;exports.PanoRulerProPlugin=WA;exports.PanoSpatialTagPlugin=W0;exports.PanoTagPlugin=zP;exports.PanoTagPluginController=po;exports.PanoVideoPlugin=N2;exports.PanoVideoPluginType=G2;exports.PipelinePlugin=sE;exports.PointType=Mu;exports.ROOM_FETILE_TYPE_MAP=vA;exports.ROOM_TYPE_MAP=yA;exports.Rotation=Gt;exports.TopviewFloorplanPlugin=$p;exports.Util=fm;exports.defaultGlobalConfig=Eu;exports.itemLabelPluginServerParams=Mb;exports.modelItemLabelPluginServerParams=sb;exports.modelRoomLabelPluginServerParams=rg;exports.pluginFlag=jP;