@realsee/dnalogel 2.11.0-alpha.1 → 2.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (278) hide show
  1. package/dist/PanoTagPlugin/utils/audio/SharedAudio.d.ts +4 -3
  2. package/dist/PanoVideoPlugin/VideoMeshController.d.ts +7 -0
  3. package/dist/index.cjs.js +45 -45
  4. package/dist/index.js +1972 -1926
  5. package/dist/index.umd.js +38 -38
  6. package/dist/shared-utils/audio.d.ts +3 -0
  7. package/docs/classes/CSS3DRender.html +31 -31
  8. package/docs/classes/CruisePluginController.html +25 -25
  9. package/docs/classes/Magnifier.html +20 -20
  10. package/docs/classes/ModelRoomLabelController.html +11 -11
  11. package/docs/classes/Object3DHelperController.html +25 -25
  12. package/docs/classes/PaintBrush.html +15 -15
  13. package/docs/classes/PanoMeasurePluginLine.html +23 -23
  14. package/docs/classes/PanoMeasurePluginModel.html +22 -22
  15. package/docs/classes/PanoMeasurePluginPoint.html +14 -14
  16. package/docs/classes/PanoMeasurePluginPolyline.html +26 -26
  17. package/docs/classes/PanoTagPluginController.html +47 -47
  18. package/docs/classes/Util.BetterTween.html +8 -8
  19. package/docs/classes/Util.FivePointSelector.html +12 -12
  20. package/docs/classes/Util.Interval.html +12 -12
  21. package/docs/classes/Util.Magnifier.html +17 -17
  22. package/docs/classes/Util.PointDomHelper.html +11 -11
  23. package/docs/classes/Util.PointHelper.html +11 -11
  24. package/docs/classes/Util.Rectangle.html +13 -13
  25. package/docs/enums/CameraMovementEffect.html +7 -7
  26. package/docs/enums/ContentType.html +19 -19
  27. package/docs/enums/DIRECTION.html +9 -9
  28. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
  29. package/docs/enums/DimensionType.html +7 -7
  30. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
  31. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
  32. package/docs/enums/PaintBrushTypeEnum.html +8 -8
  33. package/docs/enums/PointType.html +7 -7
  34. package/docs/enums/Rotation.html +8 -8
  35. package/docs/functions/CSS3DRenderPlugin.html +4 -4
  36. package/docs/functions/CameraMovementPlugin.html +4 -4
  37. package/docs/functions/CruisePlugin.html +4 -4
  38. package/docs/functions/GuideLinePlugin.html +5 -5
  39. package/docs/functions/ItemLabelPlugin.html +4 -4
  40. package/docs/functions/MapviewFloorplanPlugin.html +4 -4
  41. package/docs/functions/ModelChassisCompassPlugin.html +4 -4
  42. package/docs/functions/ModelEntryDoorGuidePlugin.html +4 -4
  43. package/docs/functions/ModelFloorplanPlugin.html +4 -4
  44. package/docs/functions/ModelItemLabelPlugin.html +4 -4
  45. package/docs/functions/ModelRoomLabelPlugin.html +4 -4
  46. package/docs/functions/ModelTVVideoPlugin.html +4 -4
  47. package/docs/functions/ModelViewPlugin.html +4 -4
  48. package/docs/functions/Object3DHelperPlugin.html +4 -4
  49. package/docs/functions/PanoCompassPlugin.html +4 -4
  50. package/docs/functions/PanoCursorRaycasterPlugin.html +4 -4
  51. package/docs/functions/PanoDoorLabelPlugin.html +4 -4
  52. package/docs/functions/PanoFloorplanRadarPlugin.html +4 -4
  53. package/docs/functions/PanoMeasurePlugin.html +4 -4
  54. package/docs/functions/PanoRulerPlugin.html +4 -4
  55. package/docs/functions/PanoRulerProPlugin.html +4 -4
  56. package/docs/functions/PanoSpatialTagPlugin.html +4 -4
  57. package/docs/functions/PanoTagPlugin.html +4 -4
  58. package/docs/functions/PanoVideoPlugin.html +4 -4
  59. package/docs/functions/TopviewFloorplanPlugin.html +4 -4
  60. package/docs/functions/Util.getCoordsFromClient.html +5 -5
  61. package/docs/functions/Util.getCoordsFromElement.html +5 -5
  62. package/docs/functions/Util.getFrameTime.html +5 -5
  63. package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
  64. package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
  65. package/docs/functions/Util.isNil.html +5 -5
  66. package/docs/functions/Util.nextFrame.html +5 -5
  67. package/docs/functions/Util.notNil.html +5 -5
  68. package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
  69. package/docs/functions/Util.tweenProgress.html +5 -5
  70. package/docs/functions/pluginFlag.html +5 -5
  71. package/docs/index.html +4 -4
  72. package/docs/interfaces/AddTagConfig.html +6 -6
  73. package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
  74. package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
  75. package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
  76. package/docs/interfaces/EventMap.html +15 -15
  77. package/docs/interfaces/FloorplanBounding.html +8 -8
  78. package/docs/interfaces/FloorplanData.html +10 -10
  79. package/docs/interfaces/FloorplanEntrance.html +11 -11
  80. package/docs/interfaces/FloorplanExtraObject.html +10 -10
  81. package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
  82. package/docs/interfaces/FloorplanFloorData.html +9 -9
  83. package/docs/interfaces/FloorplanImagePosition.html +7 -7
  84. package/docs/interfaces/FloorplanObserver.html +9 -9
  85. package/docs/interfaces/FloorplanOutlineItem.html +9 -9
  86. package/docs/interfaces/FloorplanPosition.html +7 -7
  87. package/docs/interfaces/FloorplanRoomItem.html +13 -13
  88. package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
  89. package/docs/interfaces/FloorplanServerBounding.html +8 -8
  90. package/docs/interfaces/FloorplanServerComputedData.html +10 -10
  91. package/docs/interfaces/FloorplanServerData.html +7 -7
  92. package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
  93. package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
  94. package/docs/interfaces/FloorplanServerEntrance.html +11 -11
  95. package/docs/interfaces/FloorplanServerFloorData.html +9 -9
  96. package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
  97. package/docs/interfaces/FloorplanServerObserver.html +9 -9
  98. package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
  99. package/docs/interfaces/FloorplanServerPosition.html +7 -7
  100. package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
  101. package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
  102. package/docs/interfaces/HelperOffset.html +8 -8
  103. package/docs/interfaces/ItemLabelPluginData.html +6 -6
  104. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
  105. package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
  106. package/docs/interfaces/MinMax.html +7 -7
  107. package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
  108. package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
  109. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
  110. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
  111. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
  112. package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
  113. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
  114. package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
  115. package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
  116. package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
  117. package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
  118. package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
  119. package/docs/interfaces/ModelViewPluginExportType.html +11 -11
  120. package/docs/interfaces/Object3DHelperState.html +8 -8
  121. package/docs/interfaces/ObjectHelperControllers.html +9 -9
  122. package/docs/interfaces/PaintBrushAction.html +12 -12
  123. package/docs/interfaces/PaintBrushConfigs.html +12 -12
  124. package/docs/interfaces/PaintBrushState.html +10 -10
  125. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
  126. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +5 -5
  127. package/docs/interfaces/PanoMeasureParameterType.html +12 -12
  128. package/docs/interfaces/PanoMeasurePluginLineJson.html +8 -8
  129. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +7 -7
  130. package/docs/interfaces/PanoMeasurePluginPointJson.html +7 -7
  131. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +8 -8
  132. package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
  133. package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
  134. package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
  135. package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
  136. package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
  137. package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
  138. package/docs/interfaces/PanoRulerProPluginState.html +8 -8
  139. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +5 -5
  140. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +5 -5
  141. package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
  142. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
  143. package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
  144. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
  145. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
  146. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
  147. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
  148. package/docs/interfaces/PanoVideoPluginType.LoadParams.html +6 -6
  149. package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +8 -8
  150. package/docs/interfaces/PanoVideoPluginType.PluginData.html +6 -6
  151. package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +9 -9
  152. package/docs/interfaces/PanoVideoPluginType.PluginState.html +6 -6
  153. package/docs/interfaces/PanoVideoPluginType.VideoItem.html +8 -8
  154. package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +10 -10
  155. package/docs/interfaces/Point.html +8 -8
  156. package/docs/interfaces/Room.html +9 -9
  157. package/docs/interfaces/RoomInfo.html +7 -7
  158. package/docs/interfaces/RoomLabel.html +14 -14
  159. package/docs/interfaces/RoomRules.html +5 -5
  160. package/docs/interfaces/Rooms.html +5 -5
  161. package/docs/interfaces/Scissor.html +9 -9
  162. package/docs/interfaces/State.html +8 -8
  163. package/docs/interfaces/TagCache.html +12 -12
  164. package/docs/interfaces/TagConfig.html +10 -10
  165. package/docs/interfaces/TagIconUrl.html +11 -11
  166. package/docs/interfaces/TagStyle.html +6 -6
  167. package/docs/interfaces/Tags.html +9 -9
  168. package/docs/interfaces/TemporaryState.html +6 -6
  169. package/docs/interfaces/Util.MagnifierParameter.html +11 -11
  170. package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
  171. package/docs/modules/PanoVideoPluginType.html +5 -5
  172. package/docs/modules/Util.html +5 -5
  173. package/docs/modules.html +4 -4
  174. package/docs/types/ArrayPosition.html +5 -5
  175. package/docs/types/AudioAppearance.html +5 -5
  176. package/docs/types/AudioTagTypeConfigKey.html +5 -5
  177. package/docs/types/CSS3DRenderExportType.html +5 -5
  178. package/docs/types/CSS3DRenderPluginExportType.html +5 -5
  179. package/docs/types/CSS3DRenderPluginParameterType.html +5 -5
  180. package/docs/types/ClassFunctionParameters.html +5 -5
  181. package/docs/types/Color.html +5 -5
  182. package/docs/types/ContentTypeConfigKey.html +5 -5
  183. package/docs/types/ContentTypeConfigKeySplit.html +5 -5
  184. package/docs/types/ContentTypeMap.html +5 -5
  185. package/docs/types/Create3DDomContainerReturnType.html +5 -5
  186. package/docs/types/Create3DElementReturnType.html +5 -5
  187. package/docs/types/CruisePluginExportType.html +5 -5
  188. package/docs/types/Direction-1.html +5 -5
  189. package/docs/types/Direction4.html +5 -5
  190. package/docs/types/FloorplanRuleLabels.html +5 -5
  191. package/docs/types/FloorplanServerRuleLabels.html +5 -5
  192. package/docs/types/GuideLinePluginExportType.html +5 -5
  193. package/docs/types/HelperEventMap.html +5 -5
  194. package/docs/types/LoadTagConfig.html +5 -5
  195. package/docs/types/MapviewFloorplanPluginParameterType.html +5 -5
  196. package/docs/types/MapviewFloorplanPluginReturnType.html +5 -5
  197. package/docs/types/MediaData.html +5 -5
  198. package/docs/types/MediaStore.html +5 -5
  199. package/docs/types/ModelElement.html +5 -5
  200. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +5 -5
  201. package/docs/types/ModelFloorplanPluginParameterType.html +5 -5
  202. package/docs/types/ModelFloorplanPluginReturnType.html +5 -5
  203. package/docs/types/ModelRoomLabelPluginParameters.html +5 -5
  204. package/docs/types/ModelRoomLabelPluginReturnType.html +5 -5
  205. package/docs/types/MoveArgs.html +5 -5
  206. package/docs/types/MoveOpts.html +5 -5
  207. package/docs/types/Object3DHelperEventMap.html +5 -5
  208. package/docs/types/ObjectFit.html +5 -5
  209. package/docs/types/PaintBrushEventMap.html +5 -5
  210. package/docs/types/PanoCompassPluginData.html +5 -5
  211. package/docs/types/PanoCompassPluginExportType.html +5 -5
  212. package/docs/types/PanoCompassPluginParameterType.html +5 -5
  213. package/docs/types/PanoFloorplanRadarPluginParameterType.html +5 -5
  214. package/docs/types/PanoFloorplanRadarPluginReturnType.html +5 -5
  215. package/docs/types/PanoIndex.html +5 -5
  216. package/docs/types/PanoMeasurePluginEvent.html +5 -5
  217. package/docs/types/PanoMeasureReturnType.html +5 -5
  218. package/docs/types/PanoSpatialTagPluginId.html +5 -5
  219. package/docs/types/PanoTagPluginExportInterface.html +5 -5
  220. package/docs/types/PanoTagPluginParamsInterface.html +5 -5
  221. package/docs/types/PanoVideoPluginParameterType.html +5 -5
  222. package/docs/types/PanoVideoPluginReturnType.html +5 -5
  223. package/docs/types/PlaneTag.html +5 -5
  224. package/docs/types/PlaneTagElement.html +5 -5
  225. package/docs/types/Point2DElement.html +5 -5
  226. package/docs/types/Point2DTag.html +5 -5
  227. package/docs/types/Point3DElement.html +5 -5
  228. package/docs/types/Point3DTag.html +5 -5
  229. package/docs/types/PointTag.html +5 -5
  230. package/docs/types/PointTagElement.html +5 -5
  231. package/docs/types/Position.html +5 -5
  232. package/docs/types/RotateArgs.html +5 -5
  233. package/docs/types/RotateOpts.html +5 -5
  234. package/docs/types/RuleLabelsKey.html +5 -5
  235. package/docs/types/RuleLabelsValue.html +5 -5
  236. package/docs/types/StickType.html +5 -5
  237. package/docs/types/Tag.html +5 -5
  238. package/docs/types/Tag2D.html +5 -5
  239. package/docs/types/Tag3D.html +5 -5
  240. package/docs/types/TagContentType.html +5 -5
  241. package/docs/types/TagDimensionType.html +5 -5
  242. package/docs/types/TagElement.html +5 -5
  243. package/docs/types/TagEvents.html +5 -5
  244. package/docs/types/TagGLTFObject.html +5 -5
  245. package/docs/types/TagHooks.html +5 -5
  246. package/docs/types/TagIconSize.html +5 -5
  247. package/docs/types/TagId.html +5 -5
  248. package/docs/types/TagPointType.html +5 -5
  249. package/docs/types/TopviewFloorplanPluginParameterType.html +5 -5
  250. package/docs/types/TopviewFloorplanPluginReturnType.html +5 -5
  251. package/docs/types/WorkCode.html +5 -5
  252. package/docs/variables/FLOOR_TYPE_MAP.html +5 -5
  253. package/docs/variables/PLUGIN.html +5 -5
  254. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +5 -5
  255. package/docs/variables/ROOM_TYPE_MAP.html +5 -5
  256. package/docs/variables/VERSION.html +5 -5
  257. package/docs/variables/itemLabelPluginServerParams.html +5 -5
  258. package/docs/variables/modelItemLabelPluginServerParams.html +5 -5
  259. package/docs/variables/modelRoomLabelPluginServerParams.html +5 -5
  260. package/libs/CSS3DRenderPlugin/utils/three/CSS3DRenderer.js +10 -10
  261. package/libs/PanoTagPlugin/Components/Common/Audio.js +61 -42
  262. package/libs/PanoTagPlugin/Components/Tag/AudioTag/AudioPlaneTag.js +67 -64
  263. package/libs/PanoTagPlugin/Components/Tag/AudioTag/AudioTag.js +53 -50
  264. package/libs/PanoTagPlugin/Components/Tag/AudioTag/index.js +1 -1
  265. package/libs/PanoTagPlugin/Components/Tag/index.js +1 -1
  266. package/libs/PanoTagPlugin/Components/TagContainer.js +1 -1
  267. package/libs/PanoTagPlugin/Components/TagItem.js +1 -1
  268. package/libs/PanoTagPlugin/controller/index.js +61 -66
  269. package/libs/PanoTagPlugin/index.js +1 -1
  270. package/libs/PanoTagPlugin/utils/audio/SharedAudio.d.ts +4 -3
  271. package/libs/PanoTagPlugin/utils/audio/SharedAudio.js +69 -61
  272. package/libs/PanoVideoPlugin/VideoMeshController.d.ts +7 -0
  273. package/libs/PanoVideoPlugin/VideoMeshController.js +62 -39
  274. package/libs/base/BasePlugin.js +3 -3
  275. package/libs/index.js +1 -1
  276. package/libs/shared-utils/audio.d.ts +3 -0
  277. package/libs/shared-utils/audio.js +38 -60
  278. package/package.json +1 -1
@@ -1,15 +1,15 @@
1
- var F = Object.defineProperty;
2
- var I = (d, e, i) => e in d ? F(d, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : d[e] = i;
3
- var t = (d, e, i) => (I(d, typeof e != "symbol" ? e + "" : e, i), i);
4
- import { vertexShader as E, fragmentShader as M } from "./utils/shader.js";
1
+ var g = Object.defineProperty;
2
+ var F = (h, e, i) => e in h ? g(h, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : h[e] = i;
3
+ var t = (h, e, i) => (F(h, typeof e != "symbol" ? e + "" : e, i), i);
4
+ import { vertexShader as E, fragmentShader as I } from "./utils/shader.js";
5
5
  import "hammerjs";
6
- import { VideoTexture as P, LinearFilter as m, ShaderMaterial as A, Vector4 as x, SphereBufferGeometry as D, Mesh as b, Vector3 as f, Quaternion as C } from "three";
6
+ import { VideoTexture as D, LinearFilter as m, ShaderMaterial as P, Vector4 as A, SphereBufferGeometry as M, Mesh as x, Vector3 as f, Quaternion as C } from "three";
7
7
  import "@realsee/five";
8
8
  import "@tweenjs/tween.js";
9
9
  import "../CSS3DRenderPlugin/CSS3DRender.js";
10
10
  import "../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
11
- import { requestAnimationFrameInterval as y } from "../shared-utils/animationFrame/index.js";
12
- import B from "./utils/index.js";
11
+ import { requestAnimationFrameInterval as L } from "../shared-utils/animationFrame/index.js";
12
+ import V from "./utils/index.js";
13
13
  import "../CSS3DRenderPlugin/utils/three/CSS3DRenderer.js";
14
14
  import "three/examples/jsm/renderers/CSS3DRenderer";
15
15
  import "../CSS3DRenderPlugin/utils/getAllCSS3DObject.js";
@@ -23,7 +23,7 @@ import "../CSS3DRenderPlugin/utils/three/OpacityMesh.js";
23
23
  import "../CSS3DRenderPlugin/utils/three/CSS3DScene.js";
24
24
  import "../CSS3DRenderPlugin/utils/three/CSS3DGroup.js";
25
25
  import "../shared-utils/animationFrame/BetterTween.js";
26
- class Z {
26
+ class Y {
27
27
  constructor(e, i) {
28
28
  t(this, "_id");
29
29
  t(this, "url");
@@ -35,28 +35,35 @@ class Z {
35
35
  t(this, "videoMesh");
36
36
  t(this, "_enabled", !0);
37
37
  t(this, "_disposed", !1);
38
+ t(this, "videoDataLoaded", !1);
38
39
  t(this, "hasVideoEverPlayed", !1);
39
40
  t(this, "renderFiveDisposer");
40
41
  t(this, "uv2Position", (e, i) => {
41
- var p;
42
- const o = Math.PI, s = Math.PI * 2, u = -1 * Math.cos(s * e) * Math.sin(o * i), r = 1 * Math.cos(o * i), a = 1 * Math.sin(s * e) * Math.sin(o * i), h = new f(u, r, a), v = (p = this.five.work) == null ? void 0 : p.observers[this.panoIndex];
43
- if (!v)
42
+ var c;
43
+ const o = Math.PI, a = Math.PI * 2, d = e, s = 1 - i, r = new f(
44
+ -1 * Math.cos(a * d) * Math.sin(o * s),
45
+ 1 * Math.cos(o * s),
46
+ 1 * Math.sin(a * d) * Math.sin(o * s)
47
+ );
48
+ r.setX(-r.x);
49
+ const u = (c = this.five.work) == null ? void 0 : c.observers[this.panoIndex];
50
+ if (!u)
44
51
  return this.logWarning(`\u70B9\u4F4D ${this.panoIndex} \u4E0D\u5B58\u5728\uFF0C\u8BF7\u68C0\u67E5 Five \u6570\u636E\u662F\u5426\u6B63\u5E38\u3002`);
45
- const c = v.position.clone(), g = v.quaternion.clone(), l = h.clone();
46
- return l.add(c), l.applyAxisAngle(new f(0, 1, 0), -Math.PI / 2), l.applyQuaternion(g), l;
52
+ const l = u.position.clone(), p = u.quaternion.clone(), v = r.clone();
53
+ return v.applyAxisAngle(new f(0, 1, 0), Math.PI / 2), v.applyQuaternion(p), v.add(l), v;
47
54
  });
48
55
  t(this, "onFiveDataLoaded", () => {
49
- var a;
50
- const e = (a = this.five.work) == null ? void 0 : a.observers[this.panoIndex];
56
+ var r;
57
+ const e = (r = this.five.work) == null ? void 0 : r.observers[this.panoIndex];
51
58
  if (!e)
52
59
  return this.logWarning(`\u70B9\u4F4D ${this.panoIndex} \u4E0D\u5B58\u5728\uFF0C\u8BF7\u68C0\u67E5 Five \u6570\u636E\u662F\u5426\u6B63\u5E38\u3002`);
53
60
  this.observer = e;
54
- const { x: i, y: n, z: o, w: s } = e.quaternion, u = new C(i, n, o, s), r = e.position;
55
- this.videoMesh.position.fromArray([r.x, r.y, r.z]), this.videoMesh.quaternion.set(0, 0, 0, 1), this.videoMesh.rotateOnAxis(new f(0, 1, 0), Math.PI / 2), this.videoMesh.applyQuaternion(u);
61
+ const { x: i, y: n, z: o, w: a } = e.quaternion, d = new C(i, n, o, a), s = e.position;
62
+ this.videoMesh.position.fromArray([s.x, s.y, s.z]), this.videoMesh.quaternion.set(0, 0, 0, 1), this.videoMesh.rotateOnAxis(new f(0, 1, 0), Math.PI / 2), this.videoMesh.applyQuaternion(d);
56
63
  });
57
64
  t(this, "onFiveWantsMoveToPano", (e) => {
58
65
  e === this.panoIndex && (this.hasVideoEverPlayed || this.video.play().catch((i) => {
59
- console.log("\u{1F436} ==> error:", i);
66
+ console.error("\u{1F436} ==> error:", i);
60
67
  }));
61
68
  });
62
69
  t(this, "onFivePanoArrived", (e) => {
@@ -89,36 +96,52 @@ class Z {
89
96
  if (this.checkIntersectionInBounding(this.origin, i))
90
97
  return this.video.muted = !this.video.muted, !1;
91
98
  });
99
+ t(this, "onVideoDataLoaded", () => {
100
+ this.videoDataLoaded = !0, this.video.paused === !1 && this.video.src !== "" && this.onVideoPlayingAndLoaded();
101
+ });
92
102
  t(this, "onVideoPlaying", () => {
93
- this.hasVideoEverPlayed = !0, this.video.src !== "" && (this.renderFiveDisposer = y(() => {
94
- this.five.needsRender = !0;
95
- }), this.five.scene.add(this.videoMesh));
103
+ this.hasVideoEverPlayed = !0, this.video.src !== "" && this.videoDataLoaded && this.onVideoPlayingAndLoaded();
104
+ });
105
+ t(this, "onVideoPlayingAndLoaded", () => {
106
+ if (!this.videoDataLoaded)
107
+ return this.logWarning("\u89C6\u9891\u6570\u636E\u672A\u52A0\u8F7D");
108
+ if (this.video.paused === !0)
109
+ return this.logWarning("\u89C6\u9891\u5DF2\u6682\u505C");
110
+ this.video.addEventListener(
111
+ "timeupdate",
112
+ () => {
113
+ this.video.src !== "" && this.panoIndex === this.five.getCurrentState().panoIndex && this.five.getCurrentState().mode === "Panorama" && (this.renderFiveDisposer || (this.renderFiveDisposer = L(() => {
114
+ this.five.needsRender = !0;
115
+ }, 30)), this.five.scene.add(this.videoMesh));
116
+ },
117
+ { once: !0 }
118
+ );
96
119
  });
97
120
  t(this, "onVideoPaused", () => {
98
121
  var e;
99
- (e = this.renderFiveDisposer) == null || e.call(this);
122
+ (e = this.renderFiveDisposer) == null || e.call(this), this.renderFiveDisposer = void 0;
100
123
  });
101
- var a, h;
102
- this.five = e, this.panoIndex = i.panoIndex, this._id = i.renderID, this.url = i.url, this.origin = i.origin.slice(), this._enabled = (h = (a = i.initialState) == null ? void 0 : a.enabled) != null ? h : !0;
124
+ var r, u;
125
+ this.five = e, this.panoIndex = i.panoIndex, this._id = i.renderID, this.url = i.url, this.origin = i.origin.slice(), this._enabled = (u = (r = i.initialState) == null ? void 0 : r.enabled) != null ? u : !0;
103
126
  const n = document.createElement("video");
104
127
  n.crossOrigin = "anonymous", n.autoplay = !1, n.muted = !0, n.loop = !0, n.playsInline = !0, this.video = n;
105
- const o = new P(this.video);
128
+ const o = new D(this.video);
106
129
  o.minFilter = m, o.magFilter = m;
107
- const s = new A({
130
+ const a = new P({
108
131
  vertexShader: E,
109
- fragmentShader: M,
132
+ fragmentShader: I,
110
133
  uniforms: {
111
134
  map: { value: o },
112
135
  size: {
113
- value: new x(this.origin[0], 1 - this.origin[1] - this.origin[3], this.origin[2], this.origin[3])
136
+ value: new A(this.origin[0], 1 - this.origin[1] - this.origin[3], this.origin[2], this.origin[3])
114
137
  }
115
138
  },
116
139
  depthTest: !0,
117
140
  transparent: !0
118
- }), u = new D(1, 64, 64);
119
- u.scale(-1, 1, 1);
120
- const r = new b(u, s);
121
- r.name = "pano-video", this.videoMesh = r, this.five.work && this.onFiveDataLoaded(), this.enabled && this.addEventListeners(), this.mountIfNeeded();
141
+ }), d = new M(1, 64, 64);
142
+ d.scale(-1, 1, 1);
143
+ const s = new x(d, a);
144
+ s.name = "pano-video", this.videoMesh = s, this.five.work && this.onFiveDataLoaded(), this.enabled && this.addEventListeners(), this.mountIfNeeded();
122
145
  }
123
146
  get renderID() {
124
147
  return this._id;
@@ -147,8 +170,8 @@ class Z {
147
170
  const i = this.uv2Position(e[0], e[1]);
148
171
  if (!i)
149
172
  return;
150
- const n = new f().subVectors(i, this.observer.position).normalize(), { longitude: o, latitude: s } = B(n);
151
- this.five.setState({ panoIndex: this.panoIndex, longitude: o, latitude: s }), this.onFiveWantsMoveToPano(this.panoIndex);
173
+ const n = new f().subVectors(i, this.observer.position).normalize(), { longitude: o, latitude: a } = V(n);
174
+ this.five.setState({ panoIndex: this.panoIndex, longitude: o, latitude: a }), this.onFiveWantsMoveToPano(this.panoIndex);
152
175
  }
153
176
  getUVCenter() {
154
177
  if (!this.origin)
@@ -157,10 +180,10 @@ class Z {
157
180
  return [e, i];
158
181
  }
159
182
  addEventListeners() {
160
- 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("playing", this.onVideoPlaying), this.video.addEventListener("pause", this.onVideoPaused);
183
+ 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);
161
184
  }
162
185
  removeEventListeners() {
163
- 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("playing", this.onVideoPlaying), this.video.removeEventListener("pause", this.onVideoPaused);
186
+ 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);
164
187
  }
165
188
  mountIfNeeded() {
166
189
  const e = this.five.getCurrentState();
@@ -191,10 +214,10 @@ class Z {
191
214
  checkIntersectionInBounding(e, i) {
192
215
  if (!i.uv)
193
216
  return !1;
194
- const [n, o] = i.uv.toArray(), [s, u, r, a] = e, h = 1 - u - a, v = s + r, c = h + a;
195
- return n >= s && n <= v && o >= h && o <= c;
217
+ const [n, o] = i.uv.toArray(), [a, d, s, r] = e, u = 1 - d - r, l = a + s, p = u + r;
218
+ return n >= a && n <= l && o >= u && o <= p;
196
219
  }
197
220
  }
198
221
  export {
199
- Z as VideoMeshController
222
+ Y as VideoMeshController
200
223
  };
@@ -2,9 +2,9 @@ var i = Object.defineProperty;
2
2
  var a = (e, r, t) => r in e ? i(e, r, { enumerable: !0, configurable: !0, writable: !0, value: t }) : e[r] = t;
3
3
  var s = (e, r, t) => (a(e, typeof r != "symbol" ? r + "" : r, t), t);
4
4
  import { Subscribe as c } from "../shared-utils/Subscribe.js";
5
- class o {
5
+ class x {
6
6
  constructor(r, t) {
7
- s(this, "VERSION", "2.11.0-alpha.1");
7
+ s(this, "VERSION", "2.11.0");
8
8
  s(this, "five");
9
9
  s(this, "hooks", new c());
10
10
  s(this, "staticPrefix", "//vrlab-static.ljcdn.com");
@@ -15,5 +15,5 @@ class o {
15
15
  }
16
16
  }
17
17
  export {
18
- o as Controller
18
+ x as Controller
19
19
  };
package/libs/index.js CHANGED
@@ -276,8 +276,8 @@ import "./PanoTagPlugin/utils/tag/tagCheck.js";
276
276
  import "./PanoTagPlugin/Components/Tag/AudioTag/index.js";
277
277
  import "./PanoTagPlugin/Components/Tag/AudioTag/AudioTag.js";
278
278
  import "./PanoTagPlugin/Components/Common/Audio.js";
279
- import "./shared-utils/audio.js";
280
279
  import "./PanoTagPlugin/utils/audio/SharedAudio.js";
280
+ import "./shared-utils/audio.js";
281
281
  import "./PanoTagPlugin/Components/Common/Icon/audioIcon.js";
282
282
  import "./PanoTagPlugin/Components/Tag/AudioTag/AudioPlaneTag.js";
283
283
  import "./PanoTagPlugin/Components/Tag/MediaPlane.js";
@@ -19,9 +19,12 @@ export declare function generateBlankAudio(length: number, params?: {
19
19
  }): void;
20
20
  export declare class IAudio extends Audio {
21
21
  preload: "auto";
22
+ crossOrigin: "anonymous";
22
23
  get isBlankAudio(): boolean;
23
24
  get src(): string;
24
25
  set src(paramsSrc: string);
26
+ get muted(): boolean;
27
+ set muted(muted: boolean);
25
28
  realSrc: string;
26
29
  inited: boolean;
27
30
  removeDocumentEventListener: () => void;
@@ -1,81 +1,59 @@
1
- var h = Object.defineProperty;
2
- var f = (V, A, e) => A in V ? h(V, A, { enumerable: !0, configurable: !0, writable: !0, value: e }) : V[A] = e;
3
- var o = (V, A, e) => (f(V, typeof A != "symbol" ? A + "" : A, e), e);
4
- var a = (V, A, e) => new Promise((t, n) => {
5
- var i = (r) => {
6
- try {
7
- c(e.next(r));
8
- } catch (d) {
9
- n(d);
10
- }
11
- }, l = (r) => {
12
- try {
13
- c(e.throw(r));
14
- } catch (d) {
15
- n(d);
16
- }
17
- }, c = (r) => r.done ? t(r.value) : Promise.resolve(r.value).then(i, l);
18
- c((e = e.apply(V, A)).next());
19
- });
20
- const u = "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=", s = {};
21
- var L = /* @__PURE__ */ ((V) => (V.Default = "default", V.GetAudioDuration = "getAudioDuration", V.PlayAudio = "playAudio", V))(L || {});
22
- function m(V, A) {
23
- const e = (A == null ? void 0 : A.namespace) || "default", t = s[e] || (s[e] = []);
24
- let n = t.find((i) => !i.realSrc || i.realSrc === u);
25
- return n || (console.warn("\u672A\u627E\u5230\u7F13\u5B58\u97F3\u9891\uFF0C\u5DF2\u65B0\u5EFA", s), n = new q(u), t.push(n)), V && (n.src = V), n;
1
+ var q = Object.defineProperty;
2
+ var c = (V, e, A) => e in V ? q(V, e, { enumerable: !0, configurable: !0, writable: !0, value: A }) : V[e] = A;
3
+ var i = (V, e, A) => (c(V, typeof e != "symbol" ? e + "" : e, A), A);
4
+ const r = "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=", o = {};
5
+ var d = /* @__PURE__ */ ((V) => (V.Default = "default", V.GetAudioDuration = "getAudioDuration", V.PlayAudio = "playAudio", V))(d || {});
6
+ function L(V, e) {
7
+ const A = (e == null ? void 0 : e.namespace) || "default", t = o[A] || (o[A] = []);
8
+ let n = t.find((u) => !u.realSrc || u.realSrc === r);
9
+ return n || (console.warn("\u672A\u627E\u5230\u7F13\u5B58\u97F3\u9891\uFF0C\u5DF2\u65B0\u5EFA", o), n = new s(r), t.push(n)), V && (n.src = V), n;
26
10
  }
27
- function K(V) {
28
- return a(this, null, function* () {
29
- const A = (() => V instanceof q ? V : m(V, { namespace: "getAudioDuration" }))(), e = yield new Promise((t) => {
30
- A.duration ? A.isBlankAudio ? t(0) : t(A.duration) : (A.addEventListener("loadedmetadata", () => {
31
- A.isBlankAudio ? t(0) : t(A.duration);
32
- }), A.addEventListener("canplaythrough", () => {
33
- A.isBlankAudio ? t(0) : t(A.duration);
34
- }));
35
- });
36
- return typeof V == "string" && A.clear(), e;
37
- });
38
- }
39
- function k(V, A) {
40
- const e = (A == null ? void 0 : A.namespace) || "default", t = s[e] || (s[e] = []), n = V - t.length;
11
+ function m(V, e) {
12
+ const A = (e == null ? void 0 : e.namespace) || "default", t = o[A] || (o[A] = []), n = V - t.length;
41
13
  if (!(n <= 0))
42
- for (let i = 0; i < n; i++)
43
- t.push(new q(u));
14
+ for (let u = 0; u < n; u++)
15
+ t.push(new s(r));
44
16
  }
45
- class q extends Audio {
46
- constructor(e) {
47
- super(e);
48
- o(this, "preload", "auto");
49
- o(this, "realSrc", "");
50
- o(this, "inited", !1);
51
- o(this, "removeDocumentEventListener");
52
- this.realSrc = e != null ? e : "", super.addEventListener("ended", () => {
17
+ class s extends Audio {
18
+ constructor(A) {
19
+ super(A);
20
+ i(this, "preload", "auto");
21
+ i(this, "crossOrigin", "anonymous");
22
+ i(this, "realSrc", "");
23
+ i(this, "inited", !1);
24
+ i(this, "removeDocumentEventListener");
25
+ this.realSrc = A != null ? A : "", this.muted = !0, super.autoplay = !0, super.addEventListener("ended", () => {
53
26
  this.src = "";
54
27
  });
55
- const t = () => E(this);
28
+ const t = () => h(this);
56
29
  document.addEventListener("click", t), document.addEventListener("touchend", t), this.removeDocumentEventListener = () => {
57
30
  document.removeEventListener("click", t), document.removeEventListener("touchend", t);
58
31
  };
59
32
  }
60
33
  get isBlankAudio() {
61
- return this.realSrc === u || !this.realSrc;
34
+ return this.realSrc === r || !this.realSrc;
62
35
  }
63
36
  get src() {
64
37
  return super.src;
65
38
  }
66
- set src(e) {
67
- super.src = e, this.realSrc = e;
39
+ set src(A) {
40
+ super.src = A, this.realSrc = A, this.removeDocumentEventListener();
41
+ }
42
+ get muted() {
43
+ return super.muted;
44
+ }
45
+ set muted(A) {
46
+ super.muted = A;
68
47
  }
69
48
  clear() {
70
- this.src = u, this.currentTime = 0;
49
+ this.currentTime = 0, this.src = r;
71
50
  }
72
51
  }
73
- function E(V) {
74
- !V || V.inited || (V.src && (V.inited = !0, V.removeDocumentEventListener()), V.src === u && V.play());
52
+ function h(V) {
53
+ !V || V.inited || (V.src && (V.inited = !0, V.removeDocumentEventListener()), V.src === r && V.play());
75
54
  }
76
55
  export {
77
- L as AudioNamespace,
78
- k as generateBlankAudio,
79
- m as getAudio,
80
- K as getAudioDuration
56
+ d as AudioNamespace,
57
+ m as generateBlankAudio,
58
+ L as getAudio
81
59
  };
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "repository": "https://github.com/realsee-developer/dnalogel.git",
8
8
  "description": "如视 VR 看房插件合集",
9
9
  "private": false,
10
- "version": "2.11.0-alpha.1",
10
+ "version": "2.11.0",
11
11
  "license": "SEE LICENSE IN TERMS.txt",
12
12
  "scripts": {
13
13
  "clean": "rm -rf components dist docs libs types ./vite.config.js.timestamp*",